z4, z5: restart on quit

This commit is contained in:
Peter Ferrie 2018-03-08 11:57:20 -08:00
parent e1c7640c82
commit 0de10e18ff
2 changed files with 63 additions and 4 deletions

View File

@ -411,6 +411,21 @@ skipupper
sta $da87
+
ldy #quit_e-waitkey
- lda hookquit-1, y
sta waitkey-1, y
dey
bne -
lda #<waitkey
sta $f39f
lda #>waitkey
sta $f3a0
lda #<quit
sta $f3ae
lda #>quit
sta $f3af
ldy #save_end-saveme
- lda saveme-1, y
@ -1764,7 +1779,7 @@ readpart lda istree
save_end
hookkbd
!pseudopc $2cf {;;-(callback_e-callback1) {
!pseudopc $2c1 {;;-(callback_e-callback1) {
callback1
cpy #0
beq +
@ -1800,8 +1815,22 @@ xrestore
!byte $d2,$c5,$d3,$d4,$cf,$d2,$c5,$8d
callback_e
}
hookquit
!pseudopc $2f2 {;;-(quit_e-waitkey) {
waitkey
lda $c010
- lda $c000
bpl -
quit lda $c081
jmp $faa6
quit_e
}
!if verbose_info = 1 {
!warn "base=",$300-(callback_e-callback1)
!warn "base=",$300-((quit_e-waitkey)+(callback_e-callback1))
!warn "quit=",$300-(quit_e-waitkey)
}
unpack ;unpacker entrypoint

View File

@ -407,6 +407,22 @@ skipupper
+
ldy #quit_e-waitkey
- lda hookquit-1, y
sta waitkey-1, y
dey
bne -
lda #<waitkey
sta $f6a7
lda #>waitkey
sta $f6a8
lda #<quit
sta $f6b6
lda #>quit
sta $f6b7
ldy #save_end-saveme
- lda saveme-1, y
sta $2ff, y
@ -1765,7 +1781,7 @@ readpart lda istree
save_end
hookkbd
!pseudopc $2b5 {;;-(callback_e-callback1) {
!pseudopc $2a7 {;;-(callback_e-callback1) {
callback1
ldx #<callback2
lda #$8d
@ -1802,8 +1818,22 @@ xrestore
!byte $d2,$c5,$d3,$d4,$cf,$d2,$c5,$8d
callback_e
}
hookquit
!pseudopc $2d9 {;;-(quit_e-waitkey) {
waitkey
lda $c010
- lda $c000
bpl -
quit lda $c081
jmp $faa6
quit_e
}
!if verbose_info = 1 {
!warn "base=",casemap-(callback_e-callback1)
!warn "base=",casemap-((quit_e-waitkey)+(callback_e-callback1))
!warn "quit=",casemap-(quit_e-waitkey)
}
unpack ;unpacker entrypoint