Out of curiosity I downloaded the P2000C system disk images from Dave
Dunfield's archive and looked through them in Linux using the strings
command.
Turns out, in the 4th disk image (P2000_4.IMD) there appears to be the
assembler source for a format command that can handle multiple diskette
formats.
There are table entries for the P2000C's 160KB format as well. I haven't
had time to look through it all and figure out all the values but perhaps
that can be
a good starting point?
As an example, a couple of snippets of what I found:
;==============================================
;THIS FILE HAS THE DISK TABLES FOR UTILITY
;THE TABLE HAS FOLLOWING STRUCTURE:
;BYTES 00-01 LENGTH OF TH
B 0E5H ;FORMAT INFO
DEFB 10H ;
OF SECTORS ON SIDE-0
DEFB 1,02H,03H,04H,05H,06H,07H,08H ;SECTORS IN TRACK FORMAT
DEFB 9,0AH,0BH,0CH,0DH,0EH,0FH,10H
DEFB 10H ;
OF SECTORS ON SIDE-1
DEFB 1,02H,03H,04H,05H,06H,07H,08H ;SECTORS IN TRACK FORMAT
DEF
;DESCRIPTOR FOR 2000C 160K DISK
DT2: DEFB DT3-DT2 ;TABLE LENGTH
DEFT 'P2000C 160K - CP/M' ;NAME
FORMATTING INFO (E5, OR F6)
; 1 BYTE FOR THE
OF SECTORS ON SIDE-0
; BYTES FOR THE SECTOR NUMBERS ON SIDE-0
; 1 BYTE FOR THE
OF SECTORS ON SIDE-1
; BYTES FOR THE SECTOR NUMBERS ON SIDE-1
; SYSTEM IDENTIFIER 1=CP/M
; 3=MSDOS
; IF MSDOS: 1
DEFB 81H ;FLAG FOR SINGLE SIDED
DEFB 28H ;NUMBER OF TRACKS
DEFB 1 ;TR MULTIPLIER ACTIVE
SRL H
RET ;TRANSL SUBR FOR BIOS
DEFB 0 ;TO MAKE UP 4 BYTES
DEFB 1 ;1 SUBTABLE
DT21: DEFB DT22-DT21 ;LENGTH OF SUBTABLE
DEFT 'CP/M' ;SUBTABLE NAME
DEFB 1 ;SECT LGTH = 256 BYTES
DEFB 0E5H ;FORMAT INFO
DEFB 10H ;
OF SECTORS ON SIDE-0
DEFB 1,02H,03H,04H,05H,06H,07H,08H ;SECTORS IN TRACK FORMAT
DEFB 9,0AH,0BH,0CH,0DH,0EH,0FH,10H
DEFB 0 ;
OF SECTORS ON SIDE-1
DEFB 1 ;FOR CP/M
DEFB 20H,0,
7,08,11,12,15,16
DEFB 19,20,23,24,27,28,31,32
On Mon, Dec 9, 2024 at 8:44 AM Tony Duell <[email protected]> wrote:
> On Mon, Dec 9, 2024 at 1:02 PM Peter Ekstrom via cctalk
> <[email protected]> wrote:
> >
> > This one seems to have information on the diskette layout starting on
> page
> > 230:
> >
> >
> https://electrickery.nl/comp/p2000c/doc/P2000C-SystemRefServiceManual.pdf
>
> Unofortunately that doesn't go far enough. It doesn't give the number
> of sectors/track or their size (I think it's 16 sectors, each of 256
> bytes)
>
> It also doesn't give the 'skew. Under CP/M the sectors may not be used
> in numerical order, maybe it uses every third one until all are used
> then goes on to the next track. This is something that is very hard to
> determine by lookng at the disk but is obviously essential to know to
> make use of the diak image.
>
> -tony
>