This commit is contained in:
Anatoliy Belyanskiy 2023-08-30 03:13:17 +10:00
parent 1d5a2f8755
commit cc23cc96bb

View File

@ -737,10 +737,12 @@ CMOS.Cell.ScreenSET EQU #1A
.Mask.Int EQU %0011'0000 ; Frame Int (Default/Pentagon/Scorpion/Original)
.Mask.Sinc EQU %1100'0000 ; Screen V-Sinc (Default/312 lines 50 HZ/320 Lines 49 Hz)
;
CMOS.USED_MIN_ADDRESS EQU #0E
CMOS.USED_MAX_ADDRESS EQU #3F
CMOS.MAX_ADDRESS EQU #7F
CMOS.TEST_CELL EQU CMOS.MAX_ADDRESS
CMOS.Cell.CheckSum EQU CMOS.USED_MAX_ADDRESS
/*
MODULE CMOS_CELL
@ -1612,7 +1614,7 @@ SLOT3 EQU #F0 ; RAM page for 128/256 kb (
; %00110000 - IDE Primary MASTER AUTO / SETUP / DISABLED
; %11000000 - IDE Primary SLAVE -----//------
;------------[HDD PRIMARY]-------------
;-------------[HDD PRIMARY]-------------
;REGISTER #12 - CYLINDERS (MASTER) L
;REGISTER #13 - -----//------ H
;REGISTER #14 - HEADS (MASTER)
@ -1622,7 +1624,18 @@ SLOT3 EQU #F0 ; RAM page for 128/256 kb (
;REGISTER #17 - -----//------ H
;REGISTER #18 - HEADS (SLAVE)
;REGISTER #19 - SECTORS (SLAVE)
;---------------------------------------
;----------------------------------------
;------------[HDD Secondary]-------------
;REGISTER #37 - CYLINDERS (MASTER) L
;REGISTER #38 - -----//------ H
;REGISTER #39 - HEADS (MASTER)
;REGISTER #3A - SECTORS (MASTER)
;
;REGISTER #3B - CYLINDERS (SLAVE) L
;REGISTER #3C - -----//------ H
;REGISTER #3D - HEADS (SLAVE)
;REGISTER #3E - SECTORS (SLAVE)
;----------------------------------------
;REGISTER #1A
; %00001111 - COLOR STYLE
; %00110000 - Frame Int (Default/Pentagon/Scorpion/Original)
@ -1686,19 +1699,6 @@ SLOT3 EQU #F0 ; RAM page for 128/256 kb (
; 5 - ZX Spectrum 48
; 6 - ZX Spectrum 128
;-----------[HDD SECONDARY]------------
;REGISTER #37 - CYLINDERS (MASTER)
;REGISTER #38 - -----//------
;REGISTER #39 - HEADS (MASTER)
;REGISTER #3A - SECTORS (MASTER)
;
;REGISTER #3B - CYLINDERS (SLAVE)
;REGISTER #3 - -----//------
;REGISTER #3D - HEADS (SLAVE)
;REGISTER #3E - SECTORS (SLAVE)
;---------------------------------------
;REGISTER #3F - CHECKSUM SETTING
;=======================================
@ -1770,14 +1770,16 @@ ErrorByte:
ControlBit: ; 0000 0000 ; Bits for IDE.Read.Status
.Busy EQU 7;ÄÄÄÄÄÄÄÄÙ³³³ ³³³³ ; BSY
.Ready EQU 6;ÄÄÄÄÄÄÄÄÄÙ³³ ³³³³ ; RDY
.Fault EQU 5;ÄÄÄÄÄÄÄÄÄÄÙ³ ³³³³
.SeekComplete EQU 4;ÄÄÄÄÄÄÄÄÄÄÄÙ ³³³³ .DeferredWriteError
.Fault EQU 5;ÄÄÄÄÄÄÄÄÄÄÙ³ ³³³³ ; DMA ready for ATAPI
.SeekComplete EQU 4;ÄÄÄÄÄÄÄÄÄÄÄÙ ³³³³ ; Service for ATAPI
.DataRequest EQU 3;ÄÄÄÄÄÄÄÄÄÄÄÄÄÙ³³³ ; DRQ
.CorrectedData EQU 2;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ³³ obsolete
.Index EQU 1;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ³ obsolete .SenseDataAvailable
.Error EQU 0;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ; Indicates an error occurred. Send a new command to clear it (or nuke it with a Software Reset).
.CheckCondition EQU .Error
.StreamError EQU .Fault
.ATAPI_DMAReady EQU .Fault
.ATAPI_Service EQU .SeekComplete
ControlByte: ; Bytes for IDE.Read.Status
.Busy EQU #80 ; BSY
@ -1790,6 +1792,8 @@ ControlByte: ; Bytes for IDE.Read.Status
.Error EQU #01 ; Indicates an error occurred. Send a new command to clear it (or nuke it with a Software Reset).
.CheckCondition EQU .Error
.StreamErrror EQU .Fault
.ATAPI_DMAReady EQU .Fault
.ATAPI_Service EQU .SeekComplete
/*
Bit Abbreviation Function
0 ERR Indicates an error occurred. Send a new command to clear it (or nuke it with a Software Reset).
@ -1814,10 +1818,11 @@ Device:
.NONE EQU #FF
Drive:
.Master EQU #A0
.Slave EQU #B0
.Master EQU %1010'0000
.Slave EQU %1011'0000
ATAPI:
.Packet EQU #A0
.IdentifyPackedDevice EQU #A1
;
ATA:
@ -1853,6 +1858,8 @@ ATA:
.ReadMultiple EQU #c4
.Recalibrate EQU #10
.SetFeatures EQU #ef
.SetFeatures.Disable8bit EQU #81 ; Disable 8-bit data transfers (¯¨á âì ¢ .Features)
.SetFeatures.DisableWriteCache EQU #82 ; Disable write cache (¯¨á âì ¢ .Features)
.SetMultipleMode EQU #c6
.Sleep EQU #99
.Sleep2 EQU #e6