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

Table of contents

The zx-state file format
Block types

ZXSTROM

A custom ROM has been installed for the current Spectrum model.

// Custom ROM for the current model
#define ZXSTRF_COMPRESSED   1

typedef struct _tagZXSTROM
{
  ZXSTBLOCK blk;
  WORD wFlags;
  DWORD dwUncompressedSize;
  BYTE chData[1];
} ZXSTROM, *LPZXSTROM;

Members

blk
The block header. The block id is ZXSTBID_ROM ('R', 'O', 'M', 0).
wFlags
If ZXSTRF_COMPRESSED is set, the ROM image at chData has been compressed with the Zlib compression library.
dwUncompressedSize
The size in bytes of the custom ROM. This will be one of:
SizeSpectrum model
16,38416k/48k Spectrum
32,768Spectrum 128/+2
65,536Spectrum +2A/+3
32,768Pentagon 128
65,536ZS Scorpion
16,384Timex Sinclair TS/TC2048
24,576Timex Sinclair TS2068
32,768Spectrum SE

NOTE: For models that have more than one ROM, the ROMs will be concatenated together in ascending order.

chData
Either a Zlib compressed or uncompressed ROM image depending on whether the ZXSTRF_COMPRESSED bit of wFlags is set.

Remarks

When a custom ROM is not installed, the standard UK ROMs should be used for all official ZX Spectrum models. For the Spectrum +2A/+3, this is the v4.0 ROM.

For unofficial models (clones), the appropriate standard ROM should be used if a custom ROM is not installed.

Revision history

Available since version 1.0


  Copyright © 2001 - 2011 Jonathan Needle Top