Instructions for PP Spectrum hard disk ROM
Hard disk ROMs on site contains simple IDE disk operating
system, which main purpose is simple storage and usage of files, mostly
playing games.
Therefore no complicated file operations etc., only save and load
complete files. There is also snapshot function, more details later.
Keyboard input is changed and all commands & functions must
be entered letter by letter, unlike by original Spectrum 48K. This is
good because people need much time to adapt for Speccy's input system,
and I think that noone use regularly and exclusively only Spectrum
today. Most of commands can be shorted by typing only first 2
letters - try it, and you will see...
SAVE & LOAD
Usage of this commands is almost same as by original tape commands. So
SAVE goes: SAVE "name" [CODE] [start, length] . Max len of filename is
15 char (instead 10 original). LOAD has same syntax as by tape. But you
can't use LOAD "" - this is not possible by disks.
There is no support for arrays. If you want to save arrays, save
it like BASIC program (SAVE "name" ). It's rare used, and needs lot of
ROM space, so I dropped it out.
ERASE
Deleting of files : ERASE "name" - no need to type CODE for block. Only
last file on charea (equivalent of partition here) may be erased.
CAT a-z,0-9
CAT command will print on screen files in charea with main parameters
and remaining free space. Usage: CAT a , CAT F, cat
Y, CAT 7 etc. Because of faster typing no quoting is
required.
SNAPSHOT
Purpose is to save complete machine state to file, and making possible
to load it, and continue play (work ? ) at same point. You need
NMI button for this to work. See on my WEB-site more about button
(http://piters.tripod.com/zx.htm ).
When pressing NMI button, lines in Border appear. Then you have 3 choices:
Pressing C continues
Pressing B jumps into Basic - this is not always possible (some games destroy complete system (variables))
Pressing M is for snapshot store - it resets Speccy, and then user must
type MOVE "name" where name is desired filename. Block of 48 KB
will be saved on IDE drive.
Later you can load it with : LOAD "name" CODE.
Note: there must be special area on IDE drive for temporary storage, required size is 10KB - see source file ZXHDOS.
PARTITIONING
IDE drives are divided on 36 'charea' - letters A to Z and cyphers 0-9.
Files go to apropriate chareas by beginning character. You should bear
in mind by space allocation that there is much more name starting with
S, T than with Q,Y...
OTHER
There is also couple small improvement in ROM, like hex-input, conversion etc.
You can enter numbers in hex form by adding prefix &. So :
PRINT &ff (or &FF) will display 255. Max value is &FFFF.
For hex outprint you need prefix % by print: PRINT %100 will display &64 .
See programming reference about how customizing ROM for particular hard drive.
PP