mirror of
https://github.com/wwarthen/RomWBW.git
synced 2026-02-06 14:11:48 -06:00
Minor Cleanup
This commit is contained in:
@@ -460,6 +460,7 @@ ACIA_QUERY:
|
||||
ACIA_DEVICE:
|
||||
LD D,CIODEV_ACIA ; D := DEVICE TYPE
|
||||
LD E,(IY) ; E := PHYSICAL UNIT
|
||||
LD C,$00 ; C := DEVICE TYPE, 0x00 IS RS-232
|
||||
XOR A ; SIGNAL SUCCESS
|
||||
RET
|
||||
;
|
||||
|
||||
@@ -259,6 +259,7 @@ ASCI0_QUERY:
|
||||
ASCI0_DEVICE:
|
||||
LD D,CIODEV_ASCI ; D := DEVICE TYPE
|
||||
LD E,0 ; E := PHYSICAL UNIT
|
||||
LD C,$00 ; C := DEVICE TYPE, 0x00 IS RS-232
|
||||
XOR A ; SIGNAL SUCCESS
|
||||
RET
|
||||
;
|
||||
|
||||
@@ -124,7 +124,7 @@ MODCNT .SET MODCNT + 1
|
||||
RET
|
||||
.FILL (038H - $),0FFH ; RST 38 / IM1 INT
|
||||
#IF (INTMODE == 1)
|
||||
JP INT_IM1 ; JP TO INTERRUPT HANDLER IN HI MEM
|
||||
JP INT_IM1 ; JP TO INTERRUPT HANDLER IN HI MEM
|
||||
#ELSE
|
||||
RETI ; RETURN W/ INTS DISABLED
|
||||
#ENDIF
|
||||
@@ -237,12 +237,12 @@ HBX_INVOKE:
|
||||
LD A,BID_BIOS ; HBIOS BANK
|
||||
CALL HBX_BNKSEL ; SELECT IT
|
||||
LD SP,HB_STACK ; NOW USE FULL HBIOS STACK IN HBIOS BANK
|
||||
|
||||
|
||||
CALL HB_DISPATCH ; CALL HBIOS FUNCTION DISPATCHER
|
||||
|
||||
LD SP,HBX_TMPSTK ; USE SMALL TEMP STACK FRAME IN HI MEM FOR BANK SWITCH
|
||||
PUSH AF ; SAVE AF (FUNCTION RETURN)
|
||||
|
||||
|
||||
LD A,(HB_INVBNK) ; LOAD ORIGINAL BANK
|
||||
CALL HBX_BNKSEL ; SELECT IT
|
||||
POP AF ; RESTORE AF
|
||||
@@ -479,43 +479,66 @@ HBX_STACK .EQU $
|
||||
;
|
||||
; HBIOS INTERRUPT VECTOR TABLE (16 ENTRIES)
|
||||
;
|
||||
; # SBC N8,MK4 ZETA ZETA2
|
||||
; --- -------------- -------------- -------------- --------------
|
||||
; 0 CTC0A Z180/INT1 CTC0A/PRESCL
|
||||
; 1 CTC0B Z180/INT2 CTC0B/TIMER
|
||||
; 2 CTC0C Z180/TIM0 CTC0C/UART
|
||||
; 3 CTC0D Z180/TIM1 CTC0D/FDC
|
||||
; 4 Z180/DMA0
|
||||
; 5 Z180/DMA1
|
||||
; 6 Z180/CSIO
|
||||
; 7 SIO0 Z180/SER0
|
||||
; 8 SIO1 Z180/SER1
|
||||
; 9 PIO0A PIO0A
|
||||
; 10 PIO0B PIO0B
|
||||
; 11 PIO1A PIO1A
|
||||
; 12 PIO1B PIO1B
|
||||
; 13
|
||||
; 14
|
||||
; 15
|
||||
; 16
|
||||
;
|
||||
; # RC RC180 EZZ80
|
||||
; --- -------------- -------------- -------------
|
||||
; 0 CTC0A Z180/INT1 CTC0A/SIO0CLK
|
||||
; 1 CTC0B Z180/INT2 CTC0B/SIO1CLK
|
||||
; 2 CTC0C Z180/TIM0 CTC0C/PRESCL
|
||||
; 3 CTC0D Z180/TIM1 CTC0D/TIMER
|
||||
; 4 Z180/DMA0
|
||||
; 5 Z180/DMA1
|
||||
; 6 Z180/CSIO
|
||||
; 7 SIO0 Z180/SER0 SIO0
|
||||
; 8 SIO1 Z180/SER1 SIO1
|
||||
; 9 PIO0A PIO0A PIO0A
|
||||
; 10 PIO0B PIO0B PIO0B
|
||||
; 11 PIO1A PIO1A PIO1A
|
||||
; 12 PIO1B PIO1B PIO1B
|
||||
; 13
|
||||
; 14
|
||||
; 15
|
||||
; 16
|
||||
;
|
||||
HBX_IVT:
|
||||
.DW INT_BAD ; IVT_INT1
|
||||
.DW INT_BAD ; IVT_INT2
|
||||
.DW INT_BAD ; IVT_TIM0
|
||||
.DW INT_BAD ; IVT_TIM1
|
||||
.DW INT_BAD ; IVT_DMA0
|
||||
.DW INT_BAD ; IVT_DMA1
|
||||
.DW INT_BAD ; IVT_CSIO
|
||||
.DW INT_BAD ; IVT_SER0
|
||||
.DW INT_BAD ; IVT_SER1
|
||||
.DW INT_BAD ; IVT_PIO0
|
||||
.DW INT_BAD ; IVT_PIO1
|
||||
.DW INT_BAD ; IVT_PIO2
|
||||
.DW INT_BAD ; IVT_PIO3
|
||||
.DW INT_BAD ;
|
||||
.DW INT_BAD ;
|
||||
.DW INT_BAD ;
|
||||
.DW INT_BAD
|
||||
.DW INT_BAD
|
||||
.DW INT_BAD
|
||||
.DW INT_BAD
|
||||
.DW INT_BAD
|
||||
.DW INT_BAD
|
||||
.DW INT_BAD
|
||||
.DW INT_BAD
|
||||
.DW INT_BAD
|
||||
.DW INT_BAD
|
||||
.DW INT_BAD
|
||||
.DW INT_BAD
|
||||
.DW INT_BAD
|
||||
.DW INT_BAD
|
||||
.DW INT_BAD
|
||||
.DW INT_BAD
|
||||
;
|
||||
HBX_IVTCNT .EQU ($ - HBX_IVT) / 2
|
||||
;
|
||||
HBX_ITBL:
|
||||
.DW HB_BADINT
|
||||
.DW HB_BADINT
|
||||
.DW HB_BADINT
|
||||
.DW HB_BADINT
|
||||
.DW HB_BADINT
|
||||
.DW HB_BADINT
|
||||
.DW HB_BADINT
|
||||
.DW HB_BADINT
|
||||
.DW HB_BADINT
|
||||
.DW HB_BADINT
|
||||
.DW HB_BADINT
|
||||
.DW HB_BADINT
|
||||
.DW HB_BADINT
|
||||
.DW HB_BADINT
|
||||
.DW HB_BADINT
|
||||
.DW HB_BADINT
|
||||
#ENDIF
|
||||
;
|
||||
; INTERRUPT HANDLER STUBS
|
||||
@@ -592,7 +615,7 @@ HBX_INT: ; COMMON INTERRUPT ROUTING CODE
|
||||
PUSH BC ; SAVE BC
|
||||
PUSH DE ; SAVE DE
|
||||
PUSH IY ; SAVE IY
|
||||
|
||||
|
||||
LD A,BID_BIOS ; HBIOS BANK
|
||||
CALL HBX_BNKSEL_INT ; SELECT IT
|
||||
|
||||
@@ -600,7 +623,7 @@ HBX_INT: ; COMMON INTERRUPT ROUTING CODE
|
||||
|
||||
LD A,(HB_CURBNK) ; GET PRE-INT BANK
|
||||
CALL HBX_BNKSEL ; SELECT IT
|
||||
|
||||
|
||||
; RESTORE STATE
|
||||
POP IY ; RESTORE IY
|
||||
POP DE ; RESTORE DE
|
||||
@@ -679,12 +702,12 @@ HB_STACK .EQU $ ; TOP OF HBIOS STACK
|
||||
HB_START:
|
||||
DI ; NO INTERRUPTS
|
||||
IM 1 ; INTERRUPT MODE 1
|
||||
;
|
||||
;
|
||||
#IFDEF DIAGP
|
||||
LD A,%00000001
|
||||
OUT (DIAGP),A
|
||||
#ENDIF
|
||||
;
|
||||
;
|
||||
LD SP,HBX_LOC ; SETUP INITIAL STACK JUST BELOW HBIOS PROXY
|
||||
;
|
||||
#IF ((PLATFORM == PLT_N8) | (PLATFORM == PLT_MK4) | (PLATFORM == PLT_RC180))
|
||||
@@ -693,7 +716,7 @@ HB_START:
|
||||
OUT0 (Z180_ICR),A
|
||||
|
||||
DIAG(%00000010)
|
||||
|
||||
|
||||
; DISABLE REFRESH
|
||||
XOR A
|
||||
OUT0 (Z180_RCR),A
|
||||
@@ -912,7 +935,7 @@ HB_START1: ; BNKCALL ARRIVES HERE, BUT NOW RUNNING IN RAM BANK
|
||||
PRTX(STR_BANNER)
|
||||
;
|
||||
DIAG(%11111111)
|
||||
;
|
||||
;
|
||||
; IO PORT SCAN
|
||||
;
|
||||
#IF 0
|
||||
@@ -956,7 +979,7 @@ PSCNX .EQU $ + 1
|
||||
; SETUP Z80 IVT AND INT MODE 2
|
||||
LD A,HBX_IVT >> 8 ; SETUP HI BYTE OF IVT ADDRESS
|
||||
LD I,A ; ... AND PLACE IT IN I REGISTER
|
||||
|
||||
|
||||
#IF ((PLATFORM == PLT_N8) | (PLATFORM == PLT_MK4) | (PLATFORM == PLT_RC180))
|
||||
; SETUP Z180 IVT
|
||||
XOR A ; SETUP LO BYTE OF IVT ADDRESS
|
||||
@@ -1446,7 +1469,7 @@ CIO_DISPATCH:
|
||||
|
||||
LD IY,CIO_TBL ; POINT IY TO START OF DIO TABLE
|
||||
CALL HB_DISPCALL ; GO TO GENERIC API CALL CODE
|
||||
|
||||
|
||||
POP IY ; RESTORE IY
|
||||
RET ; AND DONE
|
||||
;
|
||||
@@ -1479,7 +1502,7 @@ CIO_ADDENT:
|
||||
CIO_FNCNT .EQU 7 ; NUMBER OF CIO FUNCS (FOR RANGE CHECK)
|
||||
CIO_MAX .EQU 32 ; UP TO 32 UNITS
|
||||
CIO_SIZ .EQU CIO_MAX * 4 ; EACH ENTRY IS 4 BYTES
|
||||
;
|
||||
;
|
||||
.DB CIO_FNCNT ; CIO FUNCTION COUNT (FOR RANGE CHECK)
|
||||
.DB CIO_MAX ; MAX ENTRY COUNT TABLE PREFIX
|
||||
CIO_CNT .DB 0 ; ENTRY COUNT PREFIX
|
||||
@@ -1518,7 +1541,7 @@ DIO_DISPCALL:
|
||||
|
||||
LD IY,DIO_TBL ; POINT IY TO START OF DIO TABLE
|
||||
CALL HB_DISPCALL ; GO TO GENERIC API CALL CODE
|
||||
|
||||
|
||||
POP IY ; RESTORE IY
|
||||
RET ; AND DONE
|
||||
;
|
||||
@@ -1542,7 +1565,7 @@ DIO_ADDENT:
|
||||
DIO_FNCNT .EQU 12 ; NUMBER OF DIO FUNCS (FOR RANGE CHECK)
|
||||
DIO_MAX .EQU 16 ; UP TO 16 UNITS
|
||||
DIO_SIZ .EQU DIO_MAX * 4 ; EACH ENTRY IS 4 BYTES
|
||||
;
|
||||
;
|
||||
.DB DIO_FNCNT ; DIO FUNCTION COUNT (FOR RANGE CHECK)
|
||||
.DB DIO_MAX ; MAX ENTRY COUNT TABLE PREFIX
|
||||
DIO_CNT .DB 0 ; ENTRY COUNT PREFIX
|
||||
@@ -1577,7 +1600,7 @@ VDA_DISPATCH:
|
||||
|
||||
LD IY,VDA_TBL ; POINT IY TO START OF DIO TABLE
|
||||
CALL HB_DISPCALL ; GO TO GENERIC API CALL CODE
|
||||
|
||||
|
||||
POP IY ; RESTORE IY
|
||||
RET ; AND DONE
|
||||
;
|
||||
@@ -1951,7 +1974,7 @@ SYS_INTINFO:
|
||||
; ROUTINE SHARED BY INT GET/SET. RETURNS ADDRESS OF VECTOR FOR SPECIFIED LIST / TABLE
|
||||
; POSITION. ZF SET ON RETURN FOR SUCCESS, ELSE ERROR.
|
||||
;
|
||||
SYS_INTVECADR:
|
||||
SYS_INTVECADR:
|
||||
#IF (INTMODE == 0)
|
||||
CALL PANIC ; INVALID FOR INT MODE 0
|
||||
OR $FF
|
||||
@@ -2965,10 +2988,10 @@ PS_SERIAL:
|
||||
PUSH BC ; SAVE UNIT INDEX FOR LATER
|
||||
;
|
||||
; UNIT COLUMN
|
||||
PRTS("Char $"
|
||||
PRTS("Char $")
|
||||
LD A,C ; MOVE UNIT NUM TO A
|
||||
CALL PRTDECB ; PRINT IT, ASSUME SINGLE DIGIT
|
||||
PRTS(" $") ; PAD TO NEXT COLUMN
|
||||
PRTS(" $") ; PAD TO NEXT COLUMN
|
||||
;
|
||||
; DEVICE COLUMN
|
||||
LD B,BF_CIODEVICE ; FUNC=GET DEVICE INFO, UNIT NUM STILL IN C
|
||||
|
||||
@@ -353,7 +353,7 @@ PPPCON_QUERY:
|
||||
PPPCON_DEVICE:
|
||||
LD D,CIODEV_PPPCON ; D := DEVICE TYPE
|
||||
LD E,0 ; E := DEVICE NUM, ALWAYS 0
|
||||
LD C,$FF ; $FF MEANS TERM W/ NO ATTACHED VDA
|
||||
LD C,$80 ; C := DEVICE TYPE, 0x80 IS TERMINAL
|
||||
XOR A ; SIGNAL SUCCESS
|
||||
RET
|
||||
;
|
||||
|
||||
@@ -226,7 +226,7 @@ PRPCON_QUERY:
|
||||
PRPCON_DEVICE:
|
||||
LD D,CIODEV_PRPCON ; D := DEVICE TYPE
|
||||
LD E,0 ; E := DEVICE NUM, ALWAYS 0
|
||||
LD C,$FF ; $FF MEANS TERM W/ NO ATTACHED VDA
|
||||
LD C,$80 ; C := DEVICE TYPE, 0x80 IS TERMINAL
|
||||
XOR A ; SIGNAL SUCCESS
|
||||
RET
|
||||
;
|
||||
|
||||
@@ -642,6 +642,7 @@ SIO_QUERY:
|
||||
SIO_DEVICE:
|
||||
LD D,CIODEV_SIO ; D := DEVICE TYPE
|
||||
LD E,(IY) ; E := PHYSICAL UNIT
|
||||
LD C,$00 ; C := DEVICE TYPE, 0x00 IS RS-232
|
||||
XOR A ; SIGNAL SUCCESS
|
||||
RET
|
||||
;
|
||||
|
||||
@@ -326,6 +326,7 @@ UART_QUERY:
|
||||
UART_DEVICE:
|
||||
LD D,CIODEV_UART ; D := DEVICE TYPE
|
||||
LD E,(IY) ; E := PHYSICAL UNIT
|
||||
LD C,$00 ; C := DEVICE TYPE, 0x00 IS RS-232
|
||||
XOR A ; SIGNAL SUCCESS
|
||||
RET
|
||||
;
|
||||
|
||||
Reference in New Issue
Block a user