Availability

ROM cartridge available:
ROM cartridge released: 24th August 2008


Description

The ZXC2 combines the techniques employed in the standard, switched bank paging and software bank paging ROM cartridge configurations. It supports 8K (27C64), 16K (27C128), 32K (27C256), 64K (27C512), 128K (27C010/1001) and 256K (27C020/2001) EPROMs. It can also be fitted with a 128K (29F010) FLASH ROM, although it must be programmed using an EPROM programmer. The PCB can be seen below:

ZXC2 ROM Cartridge PCB - Front ZXC2 ROM Cartridge PCB - Back

When the cartridge is used in the software bank paging configuration, the top 64 bytes of the ROM address space is used for memory mapped I/O control of the bank paging mechanism and so cannot be used to store program code or data. When the cartridge used in the standard or switched bank paging configurations, the full address space is available to store program code or data. The switched bank paging configuration allows up to 4 switches be used to select any 16K bank from a maximum of 16 banks.

Full details on the supported configurations can be found in the following document:

Click here to download details about the ZXC2 ROM cartridge PCB.

I've also produced a number of new ROM cartridge programs that work with the ZXC2, and also the Windows based ZX ROM Cartridge Creator utility that allows cassette games in PC emulator snapshot files (.Z80, .SNA, .SZX) to be converted into ROM cartridge binary files. These binary files can be programmed directly into EPROMs using an EPROM programmer.

Although the edge connector of the ZXC2 is gold plated, it might still tarnish over time. This can be minimised by occasional application of a small amount of electrical lubricant or polish.

The ZXC2 is no longer available, but if you are interested in obtaining a ZXC4 ready assembled cartridge then please contact me for details.



Paging Control

The following information will be useful should you wish to write your own assembly language programs to control the ZXC2.

At power on the ZXC2 intercepts accesses to the top 64 ROM locations ($3FC0-$3FFF) and interprets them as follows:

ZXC2 PCB Memory Mapped Control
Bank Selects between the 16 banks available.
Page Out Set to 1 to page out the ROM cartridge, thereby allowing access to the Spectrum ROM (or Interface 1 ROM if paged in). Set to 0 to page the ROM cartridge back in.
Lock Set to 1 to prevent further paging. This can therefore be used to permanently make a bank of the ROM cartridge visible to the Spectrum, or to permanently page out the ROM cartridge.

Note that to use the paging control mechanism from your own assembly language programs, care should be taken to ensure the I and R registers do not contain values that would inadvertently invoke the paging mechanism. Setting the I register to a value between $80 and $BF ensures maximum compatibility on 48K and 128K Spectrums.



SPECTRA Compatibility

The ZXC2 is fully compatible with the ROM cartridge socket of the SPECTRA SCART interface.