cpmtools diskdefs for RC2014 (Steve Cousins Firmware) and Alan Cox's Emulator (SC and RomWBW firmware)

105 views
Skip to first unread message

Nigel Kendrick

unread,
Jun 20, 2019, 4:08:49 PM6/20/19
to SBC-Z80
Hopefully useful for some:

diskdef rc2014boot
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  boottrk 1
  os 2.2
end

diskdef rc2014noboot
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  boottrk 0
  os 2.2
end

diskdef rc2014a
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  boottrk 1
  os 2.2
end

diskdef rc2014b
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  boottrk 0
  # Offset of next partition
  offset 512t
  os 2.2
end

diskdef rc2014c
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  boottrk 0
  # Offset of next partition
  offset 1024t
  os 2.2
end

diskdef rc2014d
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  boottrk 0
  # Offset of next partition
  offset 1536t
  os 2.2
end

diskdef rc2014e
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  boottrk 0
  # Offset of next partition
  offset 2048t
  os 2.2
end

diskdef rc2014f
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  boottrk 0
  # Offset of next partition
  offset 2560t
  os 2.2
end

diskdef rc2014g
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  boottrk 0
  # Offset of next partition
  offset 3072t
  os 2.2
end

diskdef rc2014h
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  boottrk 0
  # Offset of next partition
  offset 3584t
  os 2.2
end

diskdef rc2014i
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  boottrk 0
  # Offset of next partition
  offset 4096t
  os 2.2
end

diskdef rc2014j
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  boottrk 0
  # Offset of next partition
  offset 4608t
  os 2.2
end

diskdef rc2014k
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  boottrk 0
  # Offset of next partition
  offset 5120t
  os 2.2
end

diskdef rc2014l
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  boottrk 0
  # Offset of next partition
  offset 5632t
  os 2.2
end

diskdef rc2014m
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  boottrk 0
  # Offset of next partition
  offset 6144t
  os 2.2
end

diskdef rc2014n
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  boottrk 0
  # Offset of next partition
  offset 6656t
  os 2.2
end

diskdef rc2014o
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  boottrk 0
  # Offset of next partition
  offset 7168t
  os 2.2
end

diskdef rc2014p
  seclen 512
  tracks 128
  sectrk 32
  blocksize 4096
  maxdir 512
  boottrk 0
  # Offset of next partition
  offset 7680t
  os 2.2
end

diskdef rc2014em-a
#Alan Cox RC2014 emulator
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  skew 0
  boottrk 1
  offset 1K
  os 2.2
end

diskdef rc2014em-b
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  skew 0
  boottrk 0
  offset 8193k
  os 2.2
end

diskdef rc2014em-c
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  skew 0
  boottrk 0
  offset 16385k
  os 2.2
end

diskdef rc2014em-d
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  skew 0
  boottrk 0
  offset 24577k
  os 2.2
end

diskdef rc2014em-e
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  skew 0
  boottrk 0
  offset 32769k
  os 2.2
end

diskdef rc2014em-f
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  skew 0
  boottrk 0
  offset 40961k
  os 2.2
end

diskdef rc2014em-g
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  skew 0
  boottrk 0
  offset 49153k
  os 2.2
end

diskdef rc2014em-h
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  skew 0
  boottrk 0
  offset 57345k
  os 2.2
end

diskdef rc2014em-i
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  skew 0
  boottrk 0
  offset 65537k
  os 2.2
end

diskdef rc2014em-j
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  skew 0
  boottrk 0
  offset 73729k
  os 2.2
end

diskdef rc2014em-k
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  skew 0
  boottrk 0
  offset 81921k
  os 2.2
end

diskdef rc2014em-l
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  skew 0
  boottrk 0
  offset 90113k
  os 2.2
end

diskdef rc2014em-m
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  skew 0
  boottrk 0
  offset 98305k
  os 2.2
end

diskdef rc2014em-n
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  skew 0
  boottrk 0
  offset 106497k
  os 2.2
end

diskdef rc2014em-o
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  skew 0
  boottrk 0
  offset 114689k
  os 2.2
end

diskdef rc2014em-p
  seclen 512
  tracks 128
  sectrk 32
  blocksize 4096
  maxdir 512
  skew 0
  boottrk 0
  offset 122881k
  os 2.2
end

# RomWBW 8MB Hard Disk, LU 0-3
diskdef wbwem-c
  seclen 512
  tracks 65
  sectrk 256
  blocksize 4096
  maxdir 512
  skew 0
  boottrk 1
  os 2.2
  offset 1K
end

diskdef wbwem-d
  seclen 512
  tracks 130
  sectrk 256
  blocksize 4096
  maxdir 512
  skew 0
  boottrk 66
  os 2.2
  offset 1K
end

diskdef wbwem-e
  seclen 512
  tracks 195
  sectrk 256
  blocksize 4096
  maxdir 512
  skew 0
  boottrk 131
  os 2.2
  offset 1K
end

diskdef wbwem-f
  seclen 512
  tracks 260
  sectrk 256
  blocksize 4096
  maxdir 512
  skew 0
  boottrk 196
  offset 1K
  os 2.2
end




Phillip Stevens

unread,
Jun 20, 2019, 9:49:03 PM6/20/19
to SBC...@googlegroups.com

When using cpmtools with the CP/M-IDE firmware, the contents of the /etc/cpmtools/diskdefs file need to be augmented with disk information specific to the RC2014 before use. All the drives are orthogonal. Cold and warm boot is from Flash, so all the drive descriptors are identical.

An empty CP/M 16MB drive file is provided as a template. Unfortunately, the cpmtools package doesn't properly extend CP/M drive files out to the full size of 16777216 bytes when it creates them on FATFS. Using (unzipping) this template, and renaming it as desired, on a FATFS drive is all that is needed to create a new CP/M drive on any PATA hard drive or Compact Flash card.

FAT32 supports over 65,000 files in each directory. Using a 128GB drive it is possible to store more than that many "CP/M-IDE drives" as FAT files on one IDE drive, but this upper limit hasn't been tested. You are welcome to try.

The default is for 16MByte drives. 8MByte drives are supported, but there's no point. 32MByte drives are supported by the BIOS, but would require a recompile, and adjusting the BIOS (and hence CCP/BDOS) origin to accommodate the increased allocation vector sizes.

Just stick to the 16MByte default drive. There are up to 4 supported by CP/M-IDE, out of the box.


diskdef rc2014-32MB
  seclen 512
  tracks 2048
  sectrk 32
  blocksize 4096
  maxdir 512
  skew 0
  boottrk -
  os 2.2
end

diskdef rc2014-16MB
  seclen 512
  tracks 1024
  sectrk 32
  blocksize 4096
  maxdir 512
  skew 0
  boottrk -
  os 2.2
end

diskdef rc2014-8MB
  seclen 512
  tracks 512
  sectrk 32
  blocksize 4096
  maxdir 512
  skew 0
  boottrk -
  os 2.2
end
Reply all
Reply to author
Forward
0 new messages