mirror of https://github.com/wwarthen/RomWBW.git
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.
61 lines
2.3 KiB
61 lines
2.3 KiB
;
|
|
;==================================================================================================
|
|
; IDE DISK DRIVER - DATA
|
|
;==================================================================================================
|
|
;
|
|
IDE_SLICETRKS .EQU 65 ; TRACKS PER SLICE
|
|
IDE_TRKSIZE .EQU 128 ; SIZE OF TRACK (IN KB)
|
|
IDE_SLICESIZE .EQU ((IDE_SLICETRKS * IDE_TRKSIZE) + 1023) / 1024 ; SIZE OF EACH SLICE (IN MB)
|
|
IDE_NUMSLICES .EQU IDECAPACITY / IDE_SLICESIZE ; TOTAL SLICES IN DEVICE
|
|
IDE0_SLICEDEF .EQU 0 ; DEFAULT SLICE FOR UNIT 0
|
|
IDE1_SLICEDEF .EQU 1 ; DEFAULT SLICE FOR UNIT 1
|
|
IDE2_SLICEDEF .EQU 2 ; DEFAULT SLICE FOR UNIT 0
|
|
IDE3_SLICEDEF .EQU 3 ; DEFAULT SLICE FOR UNIT 1
|
|
;
|
|
.DB DIODEV_IDE + 0
|
|
IDEDPH0 .DW 0000,0000
|
|
.DW 0000,0000
|
|
.DW DIRBF,DPB_HD
|
|
.DW IDECSV0,IDEALV0
|
|
.DB "LU" ; LOGICAL UNIT ENHANCEMENT SIGNATURE
|
|
IDE0_SLICE .DW IDE0_SLICEDEF ; CURRENTLY ACTIVE SLICE
|
|
.DW IDE_NUMSLICES ; NUMBER OF SLICES AVAILABLE
|
|
;
|
|
.DB DIODEV_IDE + 0
|
|
IDEDPH1 .DW 0000,0000
|
|
.DW 0000,0000
|
|
.DW DIRBF,DPB_HD
|
|
.DW IDECSV1,IDEALV1
|
|
.DB "LU" ; LOGICAL UNIT ENHANCEMENT SIGNATURE
|
|
IDE1_SLICE .DW IDE1_SLICEDEF ; CURRENTLY ACTIVE SLICE
|
|
.DW IDE_NUMSLICES ; NUMBER OF SLICES AVAILABLE
|
|
;
|
|
.DB DIODEV_IDE + 0
|
|
IDEDPH2 .DW 0000,0000
|
|
.DW 0000,0000
|
|
.DW DIRBF,DPB_HD
|
|
.DW IDECSV2,IDEALV2
|
|
.DB "LU" ; LOGICAL UNIT ENHANCEMENT SIGNATURE
|
|
IDE2_SLICE .DW IDE2_SLICEDEF ; CURRENTLY ACTIVE SLICE
|
|
.DW IDE_NUMSLICES ; NUMBER OF SLICES AVAILABLE
|
|
;
|
|
.DB DIODEV_IDE + 0
|
|
IDEDPH3 .DW 0000,0000
|
|
.DW 0000,0000
|
|
.DW DIRBF,DPB_HD
|
|
.DW IDECSV3,IDEALV3
|
|
.DB "LU" ; LOGICAL UNIT ENHANCEMENT SIGNATURE
|
|
IDE3_SLICE .DW IDE3_SLICEDEF ; CURRENTLY ACTIVE SLICE
|
|
.DW IDE_NUMSLICES ; NUMBER OF SLICES AVAILABLE
|
|
;
|
|
IDECKS .EQU 0 ; CKS: 0 FOR NON-REMOVABLE MEDIA
|
|
IDEALS .EQU 256 ; ALS: BLKS / 8 = 2048 / 8 = 256 (ROUNDED UP)
|
|
;
|
|
IDECSV0: .FILL IDECKS ; NO DIRECTORY CHECKSUM, NON-REMOVABLE DRIVE
|
|
IDEALV0: .FILL IDEALS ; MAX OF 2048 DATA BLOCKS
|
|
IDECSV1: .FILL IDECKS ; NO DIRECTORY CHECKSUM, NON-REMOVABLE DRIVE
|
|
IDEALV1: .FILL IDEALS ; MAX OF 2048 DATA BLOCKS
|
|
IDECSV2: .FILL IDECKS ; NO DIRECTORY CHECKSUM, NON-REMOVABLE DRIVE
|
|
IDEALV2: .FILL IDEALS ; MAX OF 2048 DATA BLOCKS
|
|
IDECSV3: .FILL IDECKS ; NO DIRECTORY CHECKSUM, NON-REMOVABLE DRIVE
|
|
IDEALV3: .FILL IDEALS ; MAX OF 2048 DATA BLOCKS
|
|
|