Difference between revisions of "+3e"

From SinclairFAQ
Jump to: navigation, search
m (remove excess newline)
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 ==

Revision as of 23:01, 12 November 2011

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 Garry Lancaster, and its homepage is [1].

Extended eXtended Disk Parameter Block

The +3e has an "extended XDPB" based on the +3DOS XDPB. The data is ordered as follows

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

BASIC extensions

Mass storage