[ Spectaculator, ZX Spectrum Emulator ] Home | Downloads | Support [ ZX Spectrum Image ]

Table of contents

The zx-state file format
Block types

ZXSTAYBLOCK

The state of the AY chip found in all 128k Spectrums, Pentagons, Scorpions and Timex machines. This block may also be present for 16k/48k Spectrums if Fuller Box or Melodik emulation is enabled.

// AY Block flags
#define ZXSTAYF_FULLERBOX  1
#define ZXSTAYF_128AY      2

// AY Block. Contains the AY register values
typedef struct _tagZXSTAYBLOCK
{
  ZXSTBLOCK blk;
  BYTE chFlags;
  BYTE chCurrentRegister;
  BYTE chAyRegs[16];
} ZXSTAYBLOCK, *LPZXSTAYBLOCK;

Members

blk
The block header. The block id is ZXSTBID_AY ('A', 'Y', 0, 0).
chFlags
A set of flags that indicate an AY chip is available to the 16k/48k ZX Spectrum and Timex TC2048. This can be one of:
FlagMeaning
ZXSTAYF_FULLERBOXFuller Box emulation.
ZXSTAYF_128AYMelodik Soundbox emulation. This is essentially an AY chip for older Spectrums that uses the same ports as that found in 128k Spectrums.

Note: This member should be set to 0 (zero) for other machines which have a built-in AY chip.

chCurrentRegister
The currently selected AY register (0-15).
chAyRegs
The current values of the AY registers.

Note: The AY chip does not use all 8 bits for all registers. Where this is the case, the unused bits should be set to 0 (zero).

Revision history

Available since version 1.0


  Copyright © 2001 - 2011 Jonathan Needle Top