Polski English
Home Guide RSXes Files Functions Versions Releases Users Download
CP/M MEMDISK IDEDOS

IDEDOS - the access to harddisks

The IDEDOS means extra facilities of the +3e operating system, written by Garry Lancaster. For more details please consult his page at http://www.zxplus3e.plus.com/.

In ZXVGS and CPM22QED is implemented the IDEDOS partition table (also called IDEDOS system partition).

Searching for IDEDOS structures:

  1. Read the sector 1 on cylinder 0 and head 0.
  2. If sector length is 512B (full IDE), go to 5.
  3. (Simple IDE - sector length is 256B.) If "PLUSIDEDOS" signature found, go to 10.
  4. Don't mount the disk at all.
  5. If "PLUSIDEDOS" signature found, go to 10.
  6. If "P?L?U?S?I?D?E?D?O?S" signature found, switch disk access to 8-bit and go to 10.
  7. Read the sector 1 on cylinder 0 and head 1.
  8. If "PLUSIDEDOS" signature found, go to 10.
  9. Don't mount the disk. (Or try to analyse MS-DOS partition tables.)
  10. Analyse IDEDOS partition table.
The 64 bytes partition entry
OffsetLengthDescription
+016Partition name (case-insensitive, space-padded).
+1616Partition definition.

+161Partition type (0=free handle)
+172Starting cylinder.
+191Starting head.
+202Ending cylinder.
+221Ending head.
+234Largest logical sector number.
+275Type-specific information.
+3232Type-specific information.

Partition types
Partition
type
number
Description
#00 Unused partition/free handle.
#01 System partition. The first partition on a disk, starting at phisical sector 1 (cylinder 0, head 0 or 1), is always the system partition and contains a list of 64-byte partition entries that define all the partitions on the disk (including the system one). Only one partition of this type is permitted on a disk, and this is always the first partition. The name is always "PLUSIDEDOS" (followed by 6 spaces).
#02 Swap partition.
#03 +3DOS partition. The maximum theoretical size for a +3DOS partition is just under 32Mb. The XDPB has logical geometry.
#04 CP/M partition with XDPB that reflects phisical disk structure. So if the disk has 17 spt, the LSPT is 68. The partition uses always integer number of cylinders and uses whole cylinder (from head 0). Otherwise (when from not track 0) this is converted to reserved tracks (OFF in XDPB). This is required for my DSKHNDLR low level disk drivers.
#05 Boot partition. This is only one file, stored as a partition. Used to boot a hardware. Eg. Timex FDD 3000 extedend with YABUS.TF, will search the IDEDOS partiton table to find "YABUS.TF" partition. If found, the partition contents is loaded into RAM and started. The partition size is usually 8k to 64kB, what gives 1..2 tracks (or 1..8 track for disks with 17 spt). The number of sectors to load is in partition definition.
#06 TR-DOS diskimage partition. Usually 640kB. Sector offset.
#07 MB-02 diskimage partition. Usually 1804kB. Sector offset.
#08 SAMDOS diskimage partition (B-DOS record), 800kB. Sector offset.
#10 MS-DOS (FAT16) partition.
#20 UZI(X) partition.
#FE Bad disk space.
#FF Free disk space.


© 2003-06-24 12:48:59 Jarek Adamski zxvgs@yarek.com, http://zxvgs.yarek.com