common_includes/ports_sp.a80
2025-05-29 09:41:39 +03:00

144 lines
3.5 KiB
Plaintext
Raw Permalink Blame History

; LAST UPDATE: 30.04.2025 savelij
; <20><><EFBFBD><EFBFBD><EFBFBD> Z84
Z84
.CTC_0 EQU 0x10 ; STC0_C
.CTC_1 EQU 0x11 ; STC1_C
.CTC_2 EQU 0x12 ; STC2_C
.CTC_3 EQU 0x13 ; STC3_C
.SIO_ADATA EQU 0x18 ; DAT_A
.SIO_ACTRL EQU 0x19 ; COM_A
.SIO_BDATA EQU 0x1A ; DAT_B
.SIO_BCTRL EQU 0x1B ; COM_B
.PIO_ADATA EQU 0x1C ; LPT1_D
.PIO_ACMD EQU 0x1D ; LPT1_C
.PIO_BDATA EQU 0x1E ; LPT2_D
.PIO_BCMD EQU 0x1F ; LPT2_C
.PAL_SCP EQU .PIO_BDATA
.SCRP EQU 0xEE ; Systen Contorl Register Pointer
.SCDP EQU 0xEF ; Systen Control Data Port
.WDTMR EQU 0xF0 ; Watch-Dog Timer (Master Register)
.WDTCR EQU 0xF1 ; Watch-Dog Timer (Control Register)
.INTPRIREG EQU 0xF4 ; Interrupt Priority Register
.STC0_C EQU .CTC_0
.STC1_C EQU .CTC_1
.STC2_C EQU .CTC_2
.STC3_C EQU .CTC_3
.KBD_DAT EQU .SIO_BDATA
.KBD_COM EQU .SIO_BCTRL
.COM_A EQU .SIO_ACTRL
.DAT_A EQU .SIO_ADATA
.COM_B EQU .SIO_BCTRL
.DAT_B EQU .SIO_BDATA
.LPT1_D EQU .PIO_ADATA
.LPT1_C EQU .PIO_ACMD
.LPT2_D EQU .PIO_BDATA
.LPT2_C EQU .PIO_BCMD
; <20><><EFBFBD><EFBFBD><EFBFBD>
WINSP
.CPU0 EQU 0x82 ; <20><><EFBFBD><EFBFBD> <20><EFBFBD><E0AEA5><EFBFBD><E0AEA2><EFBFBD><EFBFBD> 0
.CPU1 EQU 0xA2 ; <20><><EFBFBD><EFBFBD> <20><EFBFBD><E0AEA5><EFBFBD><E0AEA2><EFBFBD><EFBFBD> 1
.CPU2 EQU 0xC2 ; <20><><EFBFBD><EFBFBD> <20><EFBFBD><E0AEA5><EFBFBD><E0AEA2><EFBFBD><EFBFBD> 2
.CPU3 EQU 0xE2 ; <20><><EFBFBD><EFBFBD> <20><EFBFBD><E0AEA5><EFBFBD><E0AEA2><EFBFBD><EFBFBD> 3
.SYS_OFF EQU 0x3C
.SYS_ON EQU 0x7C
.SYS_ROMS EQU 0x5C
.COVOX EQU 0x4F
.CBL_DIR EQU 0x4E ; <20><><EFBFBD><EFBFBD> <20><><EFBFBD><E0A0A2><EFBFBD><EFBFBD><EFBFBD> COVOX-Blaster
; bit 7 - 1 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> CBL
.MODES EQU 0x204E
.Y_PORT EQU 0x89
.RGADR EQU 0x89
.RGMOD EQU 0xC9
.RGSCR EQU 0xE9
P_KBD_OUT EQU 0xF8
P_KBD_IN EQU 0xFE
BORDER EQU 0xFE
PORT_JOI EQU 0xFF
CONF_128 EQU 0x7FFD ; <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> 128 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
SCORP_CONF EQU 0x1FFD ; <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> Scorpion
; <20><><EFBFBD><EFBFBD><EFBFBD> CMOS
PCMOS
.DATA_RD EQU 0xFFBD
.DATA_WR EQU 0xBFBD
.ADR_WR EQU 0xDFBD
ISA_PORT EQU 0x9FBD
PG_SP1 equ 0xEC
PG_SP2 equ 0xEE
PG_AY equ 0xEA
VSYNC
.PORT EQU 0xBD
.SELECT_320L EQU 0x41
.SELECT_312L EQU 0x61
; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E0A0A2><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
FastRAM:
.ON EQU 0xFB ; <20><><EFBFBD><EFBFBD><EFBFBD><E7A5AD> <20><><EFBFBD><EFBFBD> IN A,(FastRAM.ON) - <20><EFBFBD><E0A8A1><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><20> <20><><EFBFBD><EFBFBD><EFBFBD>
.OFF EQU 0x7B ; <20><EFBFBD><EFBFBD><E7A5AD> <20><><EFBFBD><EFBFBD> IN A,(FastRAM.OFF) - <20><EFBFBD><E0A8A1><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><20> <20><><EFBFBD><EFBFBD><EFBFBD>
.SLOT0 EQU 0x5C ; <20><><EFBFBD><E0A5AA><EFBFBD><E7A5AD> <20><><EFBFBD><E0A0AD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD> FastRAM.ON <20> <20><EFBFBD><E3ABA5><EFBFBD> <20><><EFBFBD><EFBFBD> (bit0..1) - <20><EFBFBD><E0A8A1><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><20> <20><><EFBFBD><EFBFBD><EFBFBD>
; <20><><EFBFBD><EFBFBD><EFBFBD> FDD
FDD
.COM EQU 0x0F
.TRK EQU 0x3F
.SEC EQU 0x5F
.DATA EQU 0x7F
.FF EQU 0xFF
.SELECT EQU 0xBD
.SEL_720 EQU 0x01
.SEL_1440 EQU 0x21
; <20><><EFBFBD><EFBFBD><EFBFBD> HDD
HDD
.P_1F7W EQU 0x4153 ; W ॣ<><E0A5A3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
.P_1F7R EQU 0x4053 ; R ॣ<><E0A5A3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
.P_1F6W EQU 0x4152 ; W CHS-<2D><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD>⢠/LBA <20><><EFBFBD><EFBFBD><EFBFBD> 24-27
.P_1F6R EQU 0x4052 ; R CHS-<2D><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD>⢠/LBA <20><><EFBFBD><EFBFBD><EFBFBD> 24-27
.P_1F5W EQU 0x0155 ; W CHS-樫<><E6A8AB><EFBFBD><EFBFBD> 8-15/LBA <20><><EFBFBD><EFBFBD><EFBFBD> 16-23
.P_1F5R EQU 0x0055 ; R CHS-樫<><E6A8AB><EFBFBD><EFBFBD> 8-15/LBA <20><><EFBFBD><EFBFBD><EFBFBD> 16-23
.P_1F4W EQU 0x0154 ; W CHS-樫<><E6A8AB><EFBFBD><EFBFBD> 0-7/LBA <20><><EFBFBD><EFBFBD><EFBFBD> 8-15
.P_1F4R EQU 0x0054 ; R CHS-樫<><E6A8AB><EFBFBD><EFBFBD> 0-7/LBA <20><><EFBFBD><EFBFBD><EFBFBD> 8-15
.P_1F3W EQU 0x0153 ; W CHS-<2D><><EFBFBD><EFBFBD><EFBFBD><><E1A5AA><EFBFBD><EFBFBD>/LBA <20><><EFBFBD><EFBFBD><EFBFBD> 0-7
.P_1F3R EQU 0x0053 ; R CHS-<2D><><EFBFBD><EFBFBD><EFBFBD><><E1A5AA><EFBFBD><EFBFBD>/LBA <20><><EFBFBD><EFBFBD><EFBFBD> 0-7
.P_1F2W EQU 0x0152 ; W <20><><EFBFBD><EFBFBD>稪 ᥪ<><E1A5AA>
.P_1F2R EQU 0x0052 ; R <20><><EFBFBD><EFBFBD>稪 ᥪ<><E1A5AA>
.P_1F1W EQU 0x0151 ; W <20><><EFBFBD><EFBFBD><><E1A2AE><EFBFBD><EFBFBD>
.P_1F1R EQU 0x0051 ; R <20><><EFBFBD><EFBFBD> <20><EFBFBD><E8A8A1>
.P_1F0W EQU 0x0150 ; W <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>訥 8 <20><><EFBFBD>
.P_1F0R EQU 0x0050 ; R <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>訥 8 <20><><EFBFBD>
.P_3F7W EQU 0x4155 ; W ॣ<><E0A5A3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
.P_3F6W EQU 0x4154 ; W
.SELECT EQU 0xBC ; <20><EFBFBD> IDE <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
.SECONDARY EQU 0x01
.PRIMARY EQU 0x21
; <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> HDD
BITMASK BSY, 7
BITMASK RDY, 6
BITMASK DRQ, 3
BITMASK ERR, 0
BITMASK LBA_CHS, 6 ; <20><><EFBFBD> <20><EFBFBD><EBA1AE> 1-LBA, 0-CHS
BITMASK MS_SL, 4 ; <20><><EFBFBD> <20><EFBFBD><EBA1AE> 0-MASTER, 1-SLAVE