CLREOL works properly in SHR 640 mode now.

This commit is contained in:
Bobbi Webber-Manners 2022-12-24 01:11:15 -05:00
parent 0e74697271
commit 1aa7330663
2 changed files with 11 additions and 9 deletions

Binary file not shown.

View File

@ -221,6 +221,7 @@ SHRCLREOL JSR SHRCHARADDR
STZ VDUADDR+0 ; Addr of start of line STZ VDUADDR+0 ; Addr of start of line
LDA #$08 ; Eight rows LDA #$08 ; Eight rows
STA :CTR STA :CTR
INC TXTWINRGT
:L0 LDA VDUTEXTX :L0 LDA VDUTEXTX
TAX TAX
ASL ; 2 bytes / char ASL ; 2 bytes / char
@ -237,6 +238,7 @@ SHRCLREOL JSR SHRCHARADDR
:S1 JSR SHRNEXTROW :S1 JSR SHRNEXTROW
DEC :CTR DEC :CTR
BNE :L0 BNE :L0
DEC TXTWINRGT
RTS RTS
:CTR DB $00 :CTR DB $00
@ -246,16 +248,16 @@ SHRCLEAR PHP ; Disable interrupts
SEI SEI
CLC ; 816 native mode CLC ; 816 native mode
XCE XCE
REP #$10 ; 16 bit index REP #$10 ; 16 bit index
MX %10 ; Tell Merlin MX %10 ; Tell Merlin
LDX #$0000 LDX #$0000
LDA #$00 LDA #$00
:L1 STAL $E12000,X ; SHR screen @ E1:2000 :L1 STAL $E12000,X ; SHR screen @ E1:2000
INX INX
CPX #$7D00 CPX #$7D00
BNE :L1 BNE :L1
SEP #$10 ; Back to 8 bit index SEP #$10 ; Back to 8 bit index
MX %11 ; Tell Merlin MX %11 ; Tell Merlin
SEC ; Back to 6502 emu mode SEC ; Back to 6502 emu mode
XCE XCE
PLP ; Normal service resumed PLP ; Normal service resumed