sms/vdp: properly protect AF on PutC

This commit is contained in:
Virgil Dupras 2019-07-02 15:54:07 -04:00
parent f41508725d
commit 162e503291
1 changed files with 7 additions and 4 deletions

View File

@ -133,6 +133,8 @@ vdpPutC:
cp ASCII_BS cp ASCII_BS
jr z, vdpBS jr z, vdpBS
push af
; ... but first, let's convert it. ; ... but first, let's convert it.
call vdpConv call vdpConv
@ -140,20 +142,21 @@ vdpPutC:
call vdpSpitC call vdpSpitC
; Move cursor. The screen is 32x24 ; Move cursor. The screen is 32x24
ex af, af'
ld a, (VDP_ROW) ld a, (VDP_ROW)
cp 31 cp 31
jr z, .incline jr z, .incline
; We just need to increase row ; We just need to increase row
inc a inc a
ld (VDP_ROW), a ld (VDP_ROW), a
ex af, af' ; bring back orig A
pop af
ret ret
.incline: .incline:
; increase line and start anew ; increase line and start anew
ex af, af' ; bring back orig A
call vdpCR call vdpCR
jr vdpLF call vdpLF
pop af
ret
vdpCR: vdpCR:
call vdpClrPos call vdpClrPos