mirror of
https://github.com/bobbimanners/Applecorn.git
synced 2024-06-05 01:29:31 +00:00
Bug fix to Mockingboard ISR. Works now!
This commit is contained in:
parent
408f1ad9ea
commit
38cbb97a56
|
@ -85,6 +85,8 @@ CLR80VID EQU $C00C
|
|||
SET80VID EQU $C00D
|
||||
CLRALTCHAR EQU $C00E
|
||||
SETALTCHAR EQU $C00F
|
||||
RDRAMRD EQU $C013
|
||||
RDRAMWR EQU $C014
|
||||
|
||||
KBDSTRB EQU $C010
|
||||
RDVBL EQU $C019
|
||||
|
|
|
@ -290,7 +290,7 @@ BYTE00 BEQ BYTE00A ; OSBYTE 0,0 - generate error
|
|||
RTS ; %000x1xxx host type, 'A'pple
|
||||
BYTE00A BRK
|
||||
DB $F7
|
||||
HELLO ASC 'Applecorn MOS 2022-11-09'
|
||||
HELLO ASC 'Applecorn MOS 2022-11-20'
|
||||
DB $00 ; Unify MOS messages
|
||||
* TO DO: Move into RAM
|
||||
GSSPEED DB $00 ; $80 if GS is fast, $00 for slow
|
||||
|
|
|
@ -380,12 +380,17 @@ GSBRKAUX >>> IENTAUX ; IENTAUX does not do CLI
|
|||
IRQBRKHDLR PHA
|
||||
* Mustn't enable IRQs within the IRQ handler
|
||||
* Do not use WRTMAIN/WRTAUX macros
|
||||
LDA RDRAMRD ; Record softswitch state
|
||||
STA $90
|
||||
LDA RDRAMWR
|
||||
STA $91
|
||||
|
||||
STA WRMAINRAM ; Write to main memory
|
||||
STA $45 ; $45=A for ProDOS IRQ handlers
|
||||
STA WRCARDRAM ; Write to aux memory
|
||||
STA RDCARDRAM ; Read from aux memory
|
||||
|
||||
TXA
|
||||
PHA
|
||||
PHX
|
||||
CLD
|
||||
TSX
|
||||
LDA $103,X ; Get PSW from stack
|
||||
|
@ -405,17 +410,31 @@ IRQBRKHDLR PHA
|
|||
JSR SERVICEX
|
||||
LDX BYTEVARBASE+$FC ; Get current language
|
||||
JSR ROMSELECT ; Bring it into memory
|
||||
PLA
|
||||
TAX
|
||||
PLX
|
||||
PLA
|
||||
CLI
|
||||
JMP (BRKV) ; Pass on to BRK handler
|
||||
|
||||
:IRQ >>> XF2MAIN,A2IRQ ; Bounce to Apple IRQ handler
|
||||
:IRQ PHY
|
||||
>>> XF2MAIN,A2IRQ ; Bounce to Apple IRQ handler
|
||||
IRQBRKRET
|
||||
>>> IENTAUX ; IENTAUX does not do CLI
|
||||
PLA ; TODO: Pass on to IRQ1V
|
||||
TAX
|
||||
|
||||
PLY
|
||||
LDA $90 ; Restore state of RAMRD
|
||||
BMI :S1
|
||||
STA RDMAINRAM
|
||||
BRA :S2
|
||||
:S1 STA RDCARDRAM
|
||||
|
||||
:S2 LDA $91 ; Restore state of RAMWRT
|
||||
BMI :S3
|
||||
STA WRMAINRAM
|
||||
BRA :S4
|
||||
:S3 STA WRCARDRAM
|
||||
|
||||
:S4 ; TODO: Pass on to IRQ1V
|
||||
PLX
|
||||
PLA
|
||||
NULLRTI RTI
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user