;======= Hard Disk Parameter Blocks ======= ; The B/P BIOS DPB's contain prefix information that provide data on the ; logical format. This table contains only DPB Data on Hard Disk Partitions. ; See DPB.LIB for definitions of bit equates used in all DPB files. ; NOTE: For simplicity, the code always assumes a logical 16 512-byte sectors ; per track for SCSI interface. Translate the actual 17 or 18 sectors ; to an increased track count of 16 sector tracks. ;..... ; Format Type Byte 0 (Fixed Disk Subset) ; ------------------ ; D D D D D D D D ; 7 6 5 4 3 2 1 0 ; | | | | | +-+-+----- Disk Size 000 = Fixed Disk, remainder unused ; +-+-+-+-+----------- (unused) ; All DPBs use the equate: FIXDSK EQU 00000000B from DPB.LIB ; Format Type Byte 1 (Fixed Disk Subset) ; ------------------ ; D D D D D D D D ; 7 6 5 4 3 2 1 0 ; | | | | | +-+-+----- Sector Size: 010 = 512 bytes assumed in driver ; | | +-+-+----------- Allocation Size: 000=1K, 001=2K, 010=4K, 011=8K, 100=16K ; | +----------------- (reserved) ; +------------------- 1 = High Speed. (0 Not Used) ; Information in this byte is not used in the SCSI driver, but is simply ; maintained for future use and compatibility with other DPB access routines. ; NOTE: No Skew Table is needed since Hard Disk Format is locked ;..... ; Partition A. HBIOS Disk 0, Slice 0 IF DRV_E DEFB 'HBDSK0:0 ','A'+80H ; Id - 10 bytes DEFB FIXDSK ; Format type byte 0 DEFB SPEED8+SEC512+ALC4K ; Format type byte 1 DEFB -2 ; Skew factor (== Only the +/- sign used) DEFB 1 ; Starting sector number DEFB 16 ; Logical Sectors per track DEFB 0 ; Physical tracks/side (No Meaning in HD) HSIZ0 EQU 2048 ; # of blocks in first Partition (1024 trks) ; ; DPB50: DEFW 64 ; Sctrs/Trk DEFB 5 ; Blk Shf Fctr DEFB 31 ; Block Mask DEFB 1 ; Extent Mask DEFW HSIZ0-1 ; Disk Size-1 DEFW 511 ; Dir Max DEFB 0F0H,0 ; Alloc 0,1 DEFW 0 ; Check Size DEFW 16 ; Trk Offset ENDIF ;..... ; Partition B. HBIOS Disk 0, Slice 1 IF DRV_F DEFB 'HBDSK0:1 ','B'+80H ; Id - 10 bytes DEFB FIXDSK ; Format type byte 0 DEFB SPEED8+SEC512+ALC4K ; Format type byte 1 DEFB -2 ; Skew factor DEFB 1 ; Starting sector number DEFB 16 ; Logical Sectors per track DEFB 0 ; Physical tracks/side (No Meaning in HD) HSIZ1 EQU 2048 ; # of blocks in Second Partition (1024 trks) ; ; DPB51: DEFW 64 ; Scts/Trk DEFB 5 ; Blk Shf Fctr DEFB 31 ; Block Mask DEFB 1 ; Extent Mask DEFW HSIZ1-1 ; Disk Size-1 DEFW 511 ; Dir Max DEFB 0F0H,0 ; Alloc 0,1 DEFW 0 ; Check size DEFW 1056 ; Track offset ENDIF ;..... ; Partition C. HBIOS Disk 0, Slice 2 IF DRV_G DEFB 'HBDSK0:2 ','C'+80H ; Id - 10 bytes DEFB FIXDSK ; Format type byte 0 DEFB SPEED8+SEC512+ALC4K ; Format type byte 1 DEFB -2 ; Skew factor DEFB 1 ; Starting sector number DEFB 16 ; Logical Sectors per track DEFB 0 ; Physical tracks/side (No Meaning in HD) HSIZ2 EQU 2048 ; # of blocks in third Partition (1024 tracks) ; ; DPB52: DEFW 64 ; Scts/Trk DEFB 5 ; Blk Shf Fctr DEFB 31 ; Block Mask DEFB 1 ; Extent Mask DEFW HSIZ2-1 ; Disk Size-1 DEFW 511 ; Dir Max DEFB 0F0H,0 ; Alloc0,1 DEFW 0 ; Check size DEFW 2096 ; Track offset ENDIF ;..... ; Partition D. HBIOS Disk 0, Slice 3 IF DRV_H DEFB 'HBDSK0:3 ','D'+80H ; Id - 10 bytes DEFB FIXDSK ; Format type byte 0 DEFB SPEED8+SEC512+ALC4K ; Format type byte 1 DEFB -2 ; Skew factor DEFB 1 ; Starting sector number DEFB 16 ; Logical Sectors per track DEFB 0 ; Physical tracks/side (No Meaning in HD) HSIZ3 EQU 2048 ; # of blocks in Fourth Partition (1024 tracks) ; ; DPB53: DEFW 64 ; Scts/Trk DEFB 5 ; Blk Shf Fctr DEFB 31 ; Block Mask DEFB 1 ; Extent Mask DEFW HSIZ3-1 ; Disk Size-1 DEFW 511 ; Dir Max DEFB 0F0H,0 ; Alloc 0,1 DEFW 0 ; Check size DEFW 3136 ; Track offset ENDIF ;..... ; Partition A. HBIOS Disk 1, Slice 0 IF DRV_I DEFB 'HBDSK1:0 ','E'+80H ; Id - 10 bytes DEFB FIXDSK ; Format type byte 0 DEFB SPEED8+SEC512+ALC4K ; Format type byte 1 DEFB -2 ; Skew factor (== Only the +/- sign used) DEFB 1 ; Starting sector number DEFB 16 ; Logical Sectors per track DEFB 0 ; Physical tracks/side (No Meaning in HD) HSIZ4 EQU 2048 ; # of blocks in first Partition (1024 trks) ; ; DPB54: DEFW 64 ; Sctrs/Trk DEFB 5 ; Blk Shf Fctr DEFB 31 ; Block Mask DEFB 1 ; Extent Mask DEFW HSIZ4-1 ; Disk Size-1 DEFW 511 ; Dir Max DEFB 0F0H,0 ; Alloc 0,1 DEFW 0 ; Check Size DEFW 16 ; Trk Offset ENDIF ;..... ; Partition B. HBIOS Disk 1, Slice 1 IF DRV_J DEFB 'HBDSK1:1 ','F'+80H ; Id - 10 bytes DEFB FIXDSK ; Format type byte 0 DEFB SPEED8+SEC512+ALC4K ; Format type byte 1 DEFB -2 ; Skew factor DEFB 1 ; Starting sector number DEFB 16 ; Logical Sectors per track DEFB 0 ; Physical tracks/side (No Meaning in HD) HSIZ5 EQU 2048 ; # of blocks in Second Partition (1024 trks) ; ; DPB55: DEFW 64 ; Scts/Trk DEFB 5 ; Blk Shf Fctr DEFB 31 ; Block Mask DEFB 1 ; Extent Mask DEFW HSIZ5-1 ; Disk Size-1 DEFW 511 ; Dir Max DEFB 0F0H,0 ; Alloc 0,1 DEFW 0 ; Check size DEFW 1056 ; Track offset ENDIF ;..... ; Partition C. HBIOS Disk 1, Slice 2 IF DRV_K DEFB 'HBDSK1:2 ','G'+80H ; Id - 10 bytes DEFB FIXDSK ; Format type byte 0 DEFB SPEED8+SEC512+ALC4K ; Format type byte 1 DEFB -2 ; Skew factor DEFB 1 ; Starting sector number DEFB 16 ; Logical Sectors per track DEFB 0 ; Physical tracks/side (No Meaning in HD) HSIZ6 EQU 2048 ; # of blocks in third Partition (1024 tracks) ; ; DPB56: DEFW 64 ; Scts/Trk DEFB 5 ; Blk Shf Fctr DEFB 31 ; Block Mask DEFB 1 ; Extent Mask DEFW HSIZ6-1 ; Disk Size-1 DEFW 511 ; Dir Max DEFB 0F0H,0 ; Alloc0,1 DEFW 0 ; Check size DEFW 2096 ; Track offset ENDIF ;..... ; Partition D. HBIOS Disk 1, Slice 3 IF DRV_L DEFB 'HBDSK1:3 ','H'+80H ; Id - 10 bytes DEFB FIXDSK ; Format type byte 0 DEFB SPEED8+SEC512+ALC4K ; Format type byte 1 DEFB -2 ; Skew factor DEFB 1 ; Starting sector number DEFB 16 ; Logical Sectors per track DEFB 0 ; Physical tracks/side (No Meaning in HD) HSIZ7 EQU 2048 ; # of blocks in Fourth Partition (1024 tracks) ; ; DPB57: DEFW 64 ; Scts/Trk DEFB 5 ; Blk Shf Fctr DEFB 31 ; Block Mask DEFB 1 ; Extent Mask DEFW HSIZ7-1 ; Disk Size-1 DEFW 511 ; Dir Max DEFB 0F0H,0 ; Alloc 0,1 DEFW 0 ; Check size DEFW 3136 ; Track offset ENDIF ;<<< --- Drive M is used for RAM Drive --- >>> IF DRV_N DEFB 'ROM ',' '+80H ; Id - 10 bytes DEFB FIXDSK ; Format type byte 0 DEFB SPEED8+SEC512+ALC2K ; Format type byte 1 DEFB -2 ; Skew factor DEFB 1 ; Starting sector number DEFB 16 ; Logical Sectors per track DEFB 0 ; Physical tracks/side (No Meaning in HD) HSIZ8 EQU HB_ROMBLKS DPB58: DEFW 64 ; Scts/Trk DEFB 4 ; Blk Shf Fctr DEFB 15 ; Block Mask IF ((HSIZ8 - 1) < 256) DEFB 1 ; Extent Mask ELSE DEFB 0 ; Extent Mask ENDIF DEFW HSIZ8-1 ; Disk Size-1 DEFW 255 ; Dir Max DEFB 0F0H,0 ; Alloc 0,1 DEFW 0 ; Check size DEFW 0 ; Track offset ENDIF IF DRV_O DEFB 'RAM ',' '+80H ; Id - 10 bytes DEFB FIXDSK ; Format type byte 0 DEFB SPEED8+SEC512+ALC2K ; Format type byte 1 DEFB -2 ; Skew factor DEFB 1 ; Starting sector number DEFB 16 ; Logical Sectors per track DEFB 0 ; Physical tracks/side (No Meaning in HD) HSIZ9 EQU HB_RAMBLKS DPB59: DEFW 64 ; Scts/Trk DEFB 4 ; Blk Shf Fctr DEFB 15 ; Block Mask IF ((HSIZ9 - 1) < 256) DEFB 1 ; Extent Mask ELSE DEFB 0 ; Extent Mask ENDIF DEFW HSIZ9-1 ; Disk Size-1 DEFW 255 ; Dir Max DEFB 0F0H,0 ; Alloc 0,1 DEFW 0 ; Check size DEFW 0 ; Track offset ENDIF IF DRV_P DEFB ' ',' '+80H ; Id - 10 bytes DEFB FIXDSK ; Format type byte 0 DEFB SPEED8+SEC512+ALC4K ; Format type byte 1 DEFB -2 ; Skew factor DEFB 1 ; Starting sector number DEFB 16 ; Logical Sectors per track DEFB 0 ; Physical tracks/side (No Meaning in HD) HSIZ10 EQU 2762 ; Number of blocks in Fourth Logical Drive DPB60: DEFW 64 ; Scts/Trk DEFB 5 ; Blk Shf Fctr DEFB 31 ; Block Mask DEFB 1 ; Extent Mask DEFW HSIZ10-1 ; Disk Size-1 DEFW 1023 ; Dir Max DEFB 0FFH,0 ; Alloc 0,1 DEFW 0 ; Check size DEFW 2 ; Track offset ENDIF ;----------- End of Hard Disk DPBs -------------