651
edits
m (remove excess newline) |
No edit summary |
||
Line 2: | Line 2: | ||
[[Category:ROMs]] | [[Category:ROMs]] | ||
The ''ZX Spectrum +3e'' is a replacement ROM for the [[ZX Spectrum +3]] which fixes several bugs, improves the BASIC, and introduces support for hard drives and compact flash cards. It was created by [http://www.garrylancaster.me.uk/ Garry Lancaster], and its homepage is [http://www.worldofspectrum.org/zxplus3e/]. | The ''ZX Spectrum +3e'' is a replacement ROM for the [[ZX Spectrum +3]] which fixes several bugs, improves the BASIC, and introduces support for hard drives and compact flash cards. It was created by [http://www.garrylancaster.me.uk/ Garry Lancaster], and its homepage is [http://www.worldofspectrum.org/zxplus3e/]. | ||
==Extended eXtended Disk Parameter Block== | |||
The +3e has an "extended XDPB" based on the [[+3DOS#XDPB|+3DOS XDPB]]. The data is ordered as follows | |||
<pre> | |||
0x0000 SPT SPT BSH BLM EXM DSM DSM DRM DRM AL0 AL1 CKS CKS OFF OFF PSH | |||
0x0010 PHM fl1 tps spt fsn ssz glr glf fl2 fzf fl3 drl fdu lac lac lac | |||
0x0020 nfo nfd lud lud cka aba | |||
key: | |||
SPT: Records Per Track | |||
BSH: Block Shift: 128 * 2^BSH | |||
BLM: Block Mask: 128 * (BLM + 1) | |||
EXM: Extent Mask | |||
DSM: Number of blocks - 1 | |||
DRM: Number of directory entries - 1 | |||
AL0: AL0 directory bitmap | |||
AL1: AL1 directory bitmap | |||
CKS: Size of checksum vector | |||
OFF: Reserved tracks | |||
PSH: Physical sector shift | |||
PHM: Sector size | |||
fl1: Flags relating to sidedness | |||
tps: Number of tracks per side | |||
spt: Number of sectors per track | |||
fst: First physical sector number | |||
ssz: Sector size | |||
glr: Gap length (read/write) | |||
glf: Gap length (format) | |||
fl2: Flags relating to multitrack/modulation/skip | |||
fzf: Freeze flag | |||
fl3: Flags relating to drives | |||
drl: Drive letter (ascii) | |||
fdu: FD unit number for drive B: | |||
lac: Last access (FRAMES) | |||
nfo: Number of files open on drive | |||
nfd: Number of free director entries | |||
lud: Last used directory entry number | |||
cka: Address of checksum vector | |||
aba: Address of allocation bitmap | |||
lda: Address of routine to login a disk | |||
sra: Address of routine to read a sector | |||
swa: Address of routine to write a sector | |||
</pre> | |||
== BASIC extensions == | == BASIC extensions == | ||
== Mass storage == | == Mass storage == |