You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

168 lines
6.0 KiB

;======= Disk Parameter Blocks ======= ****************************
; - Generic 3/5" formats - ** Hardware Dependant for **
; The formats contained in this file will be ** Desired Disk Formats **
; scanned when logging Floppy Disks. Other ****************************
; formats may be added in other files.
;
; 1.0 - 9 Jun 96 - Initial Release for P112. HFB
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
; The B/P BIOS DPB's contain prefix information that provide data on the
; format. There is no "Native" format, so each disk MUST have these headers.
; Format Type Byte 0
; ------------------
; D D D D D D D D
; 7 6 5 4 3 2 1 0
; | | | | | +-+-+--- Disk Size: 000=Fixed Disk, 001=8", 010=5.25", 011=3.5"
; | | +-+-+--------- Track Type: 000 = Single Sided 001 = (reserved)
; | | 010 = Sel by Sctr, Cont. 011 = Sel by Sctr, Sctr # Same
; | | 100 = S0 All, S1 All 101 = S0 All, S1 All - Reverse
; | | 110 = Sel by Trk LSB 111 = (reserved)
; | +----------------- Track 0 Side 0: 0 = Double Dens, 1 = Single Dens
; +------------------- 0 = Double Density, 1 = Single Density
FIXDSK EQU 00000000B
DSK8 EQU 00000001B
DSK5 EQU 00000010B
DSK3 EQU 00000011B
SS EQU 00000000B
TSBSC EQU 00010000B ; Side Select by Sector Number, Cont Sect #
TSBSS EQU 00011000B ; Side Select by Sector Number, Same Sect #
TSBTM EQU 00100000B ; Side Select by Track - S0 All, S1 All
TSBTMR EQU 00101000B ; Side Select by Track - S0 All, S1 All Reverse
TSBTL EQU 00110000B ; Side Select by Track LSB
T0S0SD EQU 01000000B
DD EQU 00000000B
SD EQU 10000000B
; Format Type Byte 1
; ------------------
; D D D D D D D D
; 7 6 5 4 3 2 1 0
; | | | | | +-+-+----- Sector Size: 000=128, 001=256, 010=512, 011=1024 bytes
; | | +-+-+----------- Allocation Size: 000=1k, 001=2k, 010=4k, 011=8k, 100=16k
; | +----------------- (Reserved)
; +------------------- 0 = Normal 5.25" Speed, 1 = 8" or Hi-Density Floppy
SEC128 EQU 00000000B
SEC256 EQU 00000001B
SEC512 EQU 00000010B
SEC1K EQU 00000011B
ALC1K EQU 00000000B
ALC2K EQU 00001000B
ALC4K EQU 00010000B
ALC8K EQU 00011000B
ALC16K EQU 00100000B
SPEED5 EQU 00000000B
SPEED8 EQU 10000000B
; NOTES on Skew Factors: Sector skew may be calculated or may be looked
; up using a lookup table. This is an assembly time option. The format
; Routines, however, need to have a skew factor entry for the purpose of
; formatting. If this skew factor is negative, this indicates that the
; sector numbers on the disk are to be skewed by ABS(Skew) at format time.
; When calculating skew for Read/Write, a negative number indicates the
; sectors are to be read without skew translation.
;.....
; DS/QD AMPRO/SB180/ON
DEFB 'Ampro DSQ','D'+80H ; Id - 10 bytes
DEFB DSK5+DD+TSBTL ; Format type byte 0
DEFB SPEED5+SEC1K+ALC2K ; Format type byte 1
DEFB -2 ; Skew factor
DEFB 17 ; Starting sector number
DEFB 5 ; Physical sectors per track
DEFB 80 ; Physical tracks/side
DPB00: DEFW 40 ; Sectors per track
DEFB 4 ; Block shift factor
DEFB 15 ; Block mask
DEFB 0 ; Extent mask
DEFW 394 ; Disk size-1
DEFW 255 ; Directory max
DEFB 0F0H, 0 ; Alloc 0, 1
DEFW 64 ; Check size
DEFW 2 ; Track offset
IF NOT CALCSK
; NOTE: Sectors are Physical size, Not 128 Byte Record Size
; 00 01 02 03 04 05 06 07 ; Logical Sector
DEFB 17,18,19,20,21,00,00,00 ; Physical sector
; 08 09 10 11 12 13 14 15 ; Logical Sector
DEFB 00,00,00,00,00,00,00,00 ; Physical sector
; 16 17 18 19 20 21 22 23 ; Logical Sector
DEFB 00,00,00,00,00,00,00,00 ; Physical sector
; 24 25 ; Logical Sector
DEFB 00,00 ; Physical sector
ENDIF
DPBSIZ EQU $-DPB ; Total size of one DPB
DPHDSZ EQU DPB00-DPB ; DPB header size
;--- The following are NOT included in Boot Disk Images to save space. ---
IF NOT MOVCPM
;.....
; DS/DD AMPRO/SB180/ON
DEFB 'Ampro DSD','D'+80H ; Id - 10 bytes
DEFB DSK5+DD+TSBTL ; Format type byte 0
DEFB SPEED5+SEC512+ALC2K ; Format type byte 1
DEFB -2 ; Skew factor
DEFB 17 ; Starting sector number
DEFB 10 ; Physical sectors per track
DEFB 40 ; Physical tracks/side
DPB01: DEFW 40 ; Sectors per track
DEFB 4 ; Block shift factor
DEFB 15 ; Block mask
DEFB 1 ; Extent mask
DEFW 194 ; Disk size-1
DEFW 127 ; Directory max
DEFB 0C0H, 0 ; Alloc 0, 1
DEFW 32 ; Check size
DEFW 2 ; Track offset
IF NOT CALCSK
; NOTE: Sectors are Physical Size, Not 128 Byte record size
; 00 01 02 03 04 05 06 07 ; Logical Sector
DEFB 17,18,19,20,21,22,23,24 ; Physical sector
; 08 09 10 11 12 13 14 15 ; Logical Sector
DEFB 25,26,00,00,00,00,00,00 ; Physical sector
; 16 17 18 19 20 21 22 23 ; Logical Sector
DEFB 00,00,00,00,00,00,00,00 ; Physical sector
; 24 25 ; Logical Sector
DEFB 00,00 ; Physical sector
ENDIF
;.....
; D-X Designs Ptr Ltd, P112 Board, 5.25" DS/DD (IBM PC-compatible "360k")
DEFB 'D-X Desgn','0'+80H ; Id - 10 bytes
DEFB DSK5+DD+TSBTL ; Format type byte 0
DEFB SPEED5+SEC512+ALC2K ; Format type byte 1
DEFB -2 ; Skew factor
DEFB 1 ; Starting sector number
DEFB 9 ; Physical sectors per track
DEFB 40 ; Physical tracks/side
DEFW 36 ; Sectors per track
DEFB 4 ; Block shift factor
DEFB 15 ; Block mask
DEFB 1 ; Extent mask
DEFW 174 ; Disk size-1
DEFW 63 ; Directory max
DEFB 080H, 0 ; Alloc 0, 1
DEFW 16 ; Check size
DEFW 2 ; Track offset
IF NOT CALCSK
; NOTE: Sectors are Physical Size, Not 128 Byte record size
; 00 01 02 03 04 05 06 07 ; Logical Sector
DEFB 01,02,03,04,05,06,07,08 ; Physical sector
; 08 09 10 11 12 13 14 15 ; Logical Sector
DEFB 09,00,00,00,00,00,00,00 ; Physical sector
; 16 17 18 19 20 21 22 23 ; Logical Sector
DEFB 00,00,00,00,00,00,00,00 ; Physical sector
; 24 25 ; Logical Sector
DEFB 00,00 ; Physical sector
ENDIF
ENDIF ;~Movcpm
;======================= End of DPB.LIB ===========================