ZXDS custom ROMs documentation
==============================

To replace the standard builtin ROMs with custom ones, simply place the ROM
file into /ZXDS/ROMs directory. Each model uses specific ROM file,
named 48.rom, 128.rom and pentagon.rom, respectively. Note that each ROM
has to have the right size - 16K for 48K model and 32K for 128K models.
Once you start ZXDS, you can check the log for the list of custom ROMs detected.

With custom ROMs installed, you can toggle between custom and standard ROM
simply by resetting the machine multiple times. You can also load other
custom ROMs from the load requester - but note that those will last only
until the machine is reset. Still pretty useful for testing multiple ROMs.

In either case the tape and disk autoload will automatically switch back to
the standard ROM set. If you would really want to load the tape with the
custom ROM installed, you'll have to start the tape loading manually
(i.e., by typing LOAD "" or using the Tape Loader, etc.). With disks it is
a bit easier - you can trigger native TR-DOS autoboot even with custom ROM set
enabled by loading the disk with R+A rather than A.

The Beta Disk interface itself uses the builtin TR-DOS 5.03 ROM for all
models by default. However, it is possible to replace it with specific
variant for each model as well. Simply put the appropriate ROM into
beta48.rom, beta128.rom or trdos.rom, respectively. Note that ZXDS supports
both Beta 128 and Beta 48 Disk Interface in 48K mode - simply use the ROM
file for either interface and ZXDS shall switch the hardware emulation accordingly.
The Beta 48 ROM files are detected by JP opcode at 0x3c00, which seems true 
for all the Beta 48 ROMs out there (TRDOS 3.0, CAS, CBI95, IDS91, Arcade).
Just make sure the ROM is always 16K large - simply concatenate any shorter
ROM several times to turn it into a 16K ROM.

The SZX snapshots will happily preserve whatever custom ROM set you have
installed, so you don't have to worry about that. Just note that Z80
snapshots are not capable of storing custom TR-DOS ROM, so don't try that.

To try it all out, you can find several custom ROM sets in this directory:

builtin - This is the standard ROM set which ZXDS has already built in.
          It's here just for the reference purposes. Installing it into
          /ZXDS/ROMs directory is just a waste of free space.
          
opense  - Neat replacement of 48K ROM by Andrew Owen. You can find most
          recent version and more info at http://sourceforge.net/projects/sebasic/ .

spanish - This is the official Amstrad ROM used for the Spanish market.

tk90x   - This is the ROM set for emulating TK90X, ZX Spectrum clone popular
          in Latin America. The Beta Disk ROM comes from the accompanying CBI95,
          one of the Beta 48 Disk Interface clones compatible with TK90X.
          While this creates quite faithful emulation of the real TK90X, 
          note that ZXDS still emulates the original Spectrum hardware only -
          it doesn't attempt to emulate the subtle TK90X extensions (b7 of #FE, b6 of #FC).
          


And that's all. Have fun emulating your own heavily customized Spectrum machines.
