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.
 
 
 
 
 
 

72 lines
2.9 KiB

;
;==================================================================================================
; IDE DISK DRIVER - DATA
;==================================================================================================
;
SD_SLICETRKS .EQU 65 ; TRACKS PER SLICE
SD_TRKSIZE .EQU 128 ; SIZE OF TRACK (IN KB)
SD_SLICESIZE .EQU ((SD_SLICETRKS * SD_TRKSIZE) + 1023) / 1024 ; SIZE OF EACH SLICE (IN MB)
SD_NUMSLICES .EQU SDCAPACITY / SD_SLICESIZE ; TOTAL SLICES IN DEVICE
SD0_UNITNUM .EQU DIODEV_SD + 0 ; DEFAULT UNIT FOR LOGICAL UNIT 0
SD0_SLICEDEF .EQU 0 ; DEFAULT SLICE FOR LOGICAL UNIT 0
SD1_UNITNUM .EQU DIODEV_SD + 0 ; DEFAULT UNIT FOR LOGICAL UNIT 1
SD1_SLICEDEF .EQU 1 ; DEFAULT SLICE FOR LOGICAL UNIT 1
#IF (SDMODE == SDMODE_DSD)
SD2_UNITNUM .EQU DIODEV_SD + 1 ; DEFAULT UNIT FOR LOGICAL UNIT 2
SD2_SLICEDEF .EQU 0 ; DEFAULT SLICE FOR LOGICAL UNIT 2
SD3_UNITNUM .EQU DIODEV_SD + 1 ; DEFAULT UNIT FOR LOGICAL UNIT 3
SD3_SLICEDEF .EQU 1 ; DEFAULT SLICE FOR LOGICAL UNIT 3
#ELSE
SD2_UNITNUM .EQU DIODEV_SD + 0 ; DEFAULT UNIT FOR LOGICAL UNIT 2
SD2_SLICEDEF .EQU 2 ; DEFAULT SLICE FOR LOGICAL UNIT 2
SD3_UNITNUM .EQU DIODEV_SD + 0 ; DEFAULT UNIT FOR LOGICAL UNIT 3
SD3_SLICEDEF .EQU 3 ; DEFAULT SLICE FOR LOGICAL UNIT 3
#ENDIF
;
.DB SD0_UNITNUM
SDDPH0 .DW 0000,0000
.DW 0000,0000
.DW DIRBF,DPB_HD
.DW SDCSV0,SDALV0
.DB "LU" ; LOGICAL UNIT ENHANCEMENT SIGNATURE
SD0_SLICE .DW SD0_SLICEDEF ; CURRENTLY ACTIVE SLICE
.DW SD_NUMSLICES ; NUMBER OF SLICES AVAILABLE
;
.DB SD1_UNITNUM
SDDPH1 .DW 0000,0000
.DW 0000,0000
.DW DIRBF,DPB_HD
.DW SDCSV1,SDALV1
.DB "LU" ; LOGICAL UNIT ENHANCEMENT SIGNATURE
SD1_SLICE .DW SD1_SLICEDEF ; CURRENTLY ACTIVE SLICE
.DW SD_NUMSLICES ; NUMBER OF SLICES AVAILABLE
;
.DB SD2_UNITNUM
SDDPH2 .DW 0000,0000
.DW 0000,0000
.DW DIRBF,DPB_HD
.DW SDCSV2,SDALV2
.DB "LU" ; LOGICAL UNIT ENHANCEMENT SIGNATURE
SD2_SLICE .DW SD2_SLICEDEF ; CURRENTLY ACTIVE SLICE
.DW SD_NUMSLICES ; NUMBER OF SLICES AVAILABLE
;
.DB SD3_UNITNUM
SDDPH3 .DW 0000,0000
.DW 0000,0000
.DW DIRBF,DPB_HD
.DW SDCSV3,SDALV3
.DB "LU" ; LOGICAL UNIT ENHANCEMENT SIGNATURE
SD3_SLICE .DW SD3_SLICEDEF ; CURRENTLY ACTIVE SLICE
.DW SD_NUMSLICES ; NUMBER OF SLICES AVAILABLE
;
SDCKS .EQU 0 ; CKS: 0 FOR NON-REMOVABLE MEDIA
SDALS .EQU 256 ; ALS: BLKS / 8 = 2048 / 8 = 256 (ROUNDED UP)
;
SDCSV0: .FILL SDCKS ; NO DIRECTORY CHECKSUM, NON-REMOVABLE DRIVE
SDALV0: .FILL SDALS ; MAX OF 2048 DATA BLOCKS
SDCSV1: .FILL SDCKS ; NO DIRECTORY CHECKSUM, NON-REMOVABLE DRIVE
SDALV1: .FILL SDALS ; MAX OF 2048 DATA BLOCKS
SDCSV2: .FILL SDCKS ; NO DIRECTORY CHECKSUM, NON-REMOVABLE DRIVE
SDALV2: .FILL SDALS ; MAX OF 2048 DATA BLOCKS
SDCSV3: .FILL SDCKS ; NO DIRECTORY CHECKSUM, NON-REMOVABLE DRIVE
SDALV3: .FILL SDALS ; MAX OF 2048 DATA BLOCKS