Browse Source

Merge pull request #443 from dinoboards/dean/fixes-for-int-handling-of-msx-keyboard

msx-keyboard: corrected implementation of msx-keyboard's tick hook
master
Wayne Warthen 1 year ago
committed by GitHub
parent
commit
9ba6627da8
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 4
      Source/HBIOS/hbios.asm
  2. 14
      Source/HBIOS/mky.asm
  3. 2
      Source/HBIOS/std.asm
  4. 4
      Source/HBIOS/tms.asm

4
Source/HBIOS/hbios.asm

@ -6710,10 +6710,6 @@ HB_TICK1:
; PULSE WATCHDOG
OUT (WDOGIO),A ; VALUE IS IRRELEVANT
#ENDIF
;
#IF MKYENABLE
CALL MKY_INT
#ENDIF
;
OR $FF ; NZ SET TO INDICATE INT HANDLED
RET

14
Source/HBIOS/mky.asm

@ -216,6 +216,14 @@ MKY_INIT:
LD A, 64 ; CAPS OFF
EZ80_IO
OUT (MKY_REGC), A
; INSTALL INTERRUPT HANDLER
LD HL, (VEC_TICK+1)
LD (VEC_TICK_MKY+1), HL
LD HL, MKY_INT
LD (VEC_TICK+1), HL
RET
;
;__________________________________________________________________________________________________
@ -739,7 +747,7 @@ MKY_INTSCAN1:
LD A, (MKY_SCNCNT) ; SCAN THE KEYBOARD EVERY 'SCAN_INT_PERIOD' INTERRUPTS.
DEC A
LD (MKY_SCNCNT), A
RET NZ
JR NZ, VEC_TICK_MKY
LD A, SCAN_INT_PERIOD
LD (MKY_SCNCNT), A
@ -765,7 +773,9 @@ MKY_SCAN_LP:
LD A, $FF ; NOTE THAT A SCAN HAS BEEN DONE
LD (MKY_SCANNED), A
RET
VEC_TICK_MKY:
JP HB_TICK
;
;__________________________________________________________________________________________________

2
Source/HBIOS/std.asm

@ -680,7 +680,7 @@ SYSTIM .SET TM_Z280
#ENDIF
;
#IF (CPUFAM == CPU_EZ80)
#IF (EZ80TIMER == EZ80TMR_INT))
#IF (EZ80TIMER == EZ80TMR_INT)
SYSTIM .SET TM_EZ80
SYSECHO " EZ80"
#ENDIF

4
Source/HBIOS/tms.asm

@ -1141,10 +1141,6 @@ TMS_TSTINT:
TMS_INTHNDL:
#IF (TMSKBD == TMSKBD_MKY)
CALL MKY_INT
#ENDIF
CALL HB_TIMINT ; RETURN NZ - HANDLED
OR $FF
RET

Loading…
Cancel
Save