Anonymous

+3e: Difference between revisions

From Sinclair Wiki
1,441 bytes added ,  10 May 2020
m
Move categories to bottom
m (Move categories to bottom)
 
(2 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[Category:Spectrum]]
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 [https://www.worldofspectrum.org/zxplus3e/].
[[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/].


==Extended eXtended Disk Parameter Block==
==Extended eXtended Disk Parameter Block==
Line 45: Line 43:
swa: Address of routine to write a sector
swa: Address of routine to write a sector
</pre>
</pre>
When the +3e creates a [[IDEDOS#Partition Type 0x03 - +3DOS|+3DOS hard disk partition]] it stores the first 28 bytes of the eXDPB in the type specific data section of the partition table entry.
The values for the parameters are set as follows:
<pre>
SPT: always 0x0200
BSH: dependent upon the size of the partition
BLM: dependent upon the size of the partition
EXM: dependent upon the size of the partition
DRM: always 0x01FF
AL0: dependent upon the size of the partition
AL1: always 0x00
CKS: always 0x8000
OFF: always 0x0000
PSH: always 0x02
PHM: always 0x03
fl1: always 0x00
tps: dependent upon the size of the partition
spt: always 0x80
fst: always 0x00
ssz: always 0x0200
glr: always 0x00
glf: always 0x00
fl2: always 0x00
fzf: always 0x00
</pre>
The following table shows relationship between disk parameters and partition size:
{| class="wikitable" style="text-align: center;"
|-
!Partition size
!Block size
!BSH!!BLM!!EXM!!AL0
|-
|1-4 MB||2 kB||0x04||0x0F||0x00||0xFF
|-
|5-8 MB||4 kB||0x05||0x1F||0x01||0xF0
|-
|9-16 MB||8 kB||0x06||0x3F||0x03||0xC0
|}
The number of tracks per size (tps) is equal to the partition size in megabytes multiplied by sixteen, e.g. 0x30 for a 3 megabyte partition. The exception to this is the case of a 16 megabyte partition which sets the tps parameter to 0xFF; the maximum value it can store. This means that the filesystem is actually slightly less than 16 megabytes (64kB less to be precise).


== BASIC extensions ==
== BASIC extensions ==


== Mass storage ==
== Mass storage ==
[[Category:Spectrum]]
[[Category:ROMs]]