mirror of
https://github.com/bobbimanners/Applecorn.git
synced 2024-09-27 16:55:31 +00:00
SHR: Optimized font drawing a bit
This commit is contained in:
parent
ca798e763a
commit
6440df6c03
BIN
applecorn.po
BIN
applecorn.po
Binary file not shown.
79
auxmem.shr.s
79
auxmem.shr.s
@ -160,39 +160,36 @@ SHRPRCHAR CMP CURSORED ; Edit cursor?
|
|||||||
* Write character to SHR screen in 320 pixel mode
|
* Write character to SHR screen in 320 pixel mode
|
||||||
SHRPRCH320 SEC
|
SHRPRCH320 SEC
|
||||||
SBC #32
|
SBC #32
|
||||||
STA VDUADDR2+0 ; A*32 -> VDUADDR2
|
|
||||||
STZ VDUADDR2+1
|
PHP ; Disable interrupts
|
||||||
ASL VDUADDR2+0
|
SEI
|
||||||
ROL VDUADDR2+1
|
CLC ; 65816 native mode
|
||||||
ASL VDUADDR2+0
|
XCE
|
||||||
ROL VDUADDR2+1
|
REP #$30 ; 16 bit M & X
|
||||||
ASL VDUADDR2+0
|
MX %00 ; Tell Merlin
|
||||||
ROL VDUADDR2+1
|
AND #$00FF
|
||||||
ASL VDUADDR2+0
|
STA VDUADDR2 ; A*32 -> VDUADDR2
|
||||||
ROL VDUADDR2+1
|
ASL VDUADDR2
|
||||||
ASL VDUADDR2+0
|
ASL VDUADDR2
|
||||||
ROL VDUADDR2+1
|
ASL VDUADDR2
|
||||||
|
ASL VDUADDR2
|
||||||
|
ASL VDUADDR2
|
||||||
CLC ; SHRFONTXPLD+A*32 -> VDUADDR2
|
CLC ; SHRFONTXPLD+A*32 -> VDUADDR2
|
||||||
LDA VDUADDR2+0
|
LDA VDUADDR2
|
||||||
ADC #<SHRFONTXPLD
|
ADC #SHRFONTXPLD
|
||||||
STA VDUADDR2+0
|
STA VDUADDR2
|
||||||
LDA VDUADDR2+1
|
SEP #$30 ; 8 bit M & X
|
||||||
ADC #>SHRFONTXPLD
|
MX %11 ; Tell Merlin
|
||||||
STA VDUADDR2+1
|
|
||||||
LDA #$E1
|
LDA #$E1
|
||||||
STA VDUBANK2
|
STA VDUBANK2
|
||||||
JSR SHRCHARADDR ; Screen addr in VDUADDR
|
JSR SHRCHARADDR ; Screen addr in VDUADDR
|
||||||
|
|
||||||
* 65816 code contributed by John Brooks follows ...
|
* 65816 code contributed by John Brooks follows ...
|
||||||
|
|
||||||
PHP ; Disable interrupts
|
|
||||||
SEI
|
|
||||||
PHB ; Save data bank
|
PHB ; Save data bank
|
||||||
LDA VDUBANK2 ; Push font Bank onto stack
|
LDA VDUBANK2 ; Push font Bank onto stack
|
||||||
PHA
|
PHA
|
||||||
PLB ; Set data bank to font bank
|
PLB ; Set data bank to font bank
|
||||||
CLC ; 65816 native mode
|
|
||||||
XCE
|
|
||||||
REP #$30 ; 16 bit M & X
|
REP #$30 ; 16 bit M & X
|
||||||
MX %00 ; Tell Merlin
|
MX %00 ; Tell Merlin
|
||||||
LDY VDUADDR2 ; Font src ptr
|
LDY VDUADDR2 ; Font src ptr
|
||||||
@ -256,37 +253,35 @@ SHRPRCH320 SEC
|
|||||||
* Write character to SHR screen in 640 pixel mode
|
* Write character to SHR screen in 640 pixel mode
|
||||||
SHRPRCH640 SEC
|
SHRPRCH640 SEC
|
||||||
SBC #32
|
SBC #32
|
||||||
STA VDUADDR2+0 ; A*16 -> VDUADDR2
|
|
||||||
STZ VDUADDR2+1
|
PHP ; Disable interrupts
|
||||||
ASL VDUADDR2+0
|
SEI
|
||||||
ROL VDUADDR2+1
|
CLC ; 65816 native mode
|
||||||
ASL VDUADDR2+0
|
XCE
|
||||||
ROL VDUADDR2+1
|
REP #$30 ; 16 bit M & X
|
||||||
ASL VDUADDR2+0
|
MX %00 ; Tell Merlin
|
||||||
ROL VDUADDR2+1
|
AND #$00FF
|
||||||
ASL VDUADDR2+0
|
STA VDUADDR2 ; A*16 -> VDUADDR2
|
||||||
ROL VDUADDR2+1
|
ASL VDUADDR2
|
||||||
|
ASL VDUADDR2
|
||||||
|
ASL VDUADDR2
|
||||||
|
ASL VDUADDR2
|
||||||
CLC ; SHRFONTXPLD+A*16 -> VDUADDR2
|
CLC ; SHRFONTXPLD+A*16 -> VDUADDR2
|
||||||
LDA VDUADDR2+0
|
LDA VDUADDR2
|
||||||
ADC #<SHRFONTXPLD
|
ADC #SHRFONTXPLD
|
||||||
STA VDUADDR2+0
|
STA VDUADDR2
|
||||||
LDA VDUADDR2+1
|
SEP #$30 ; 8 bit M & X
|
||||||
ADC #>SHRFONTXPLD
|
MX %11 ; Tell Merlin
|
||||||
STA VDUADDR2+1
|
|
||||||
LDA #$E1
|
LDA #$E1
|
||||||
STA VDUBANK2
|
STA VDUBANK2
|
||||||
JSR SHRCHARADDR ; Screen addr in VDUADDR
|
JSR SHRCHARADDR ; Screen addr in VDUADDR
|
||||||
|
|
||||||
* 65816 code contributed by John Brooks follows ...
|
* 65816 code contributed by John Brooks follows ...
|
||||||
|
|
||||||
PHP ; Disable interrupts
|
|
||||||
SEI
|
|
||||||
PHB ; Save data bank
|
PHB ; Save data bank
|
||||||
LDA VDUBANK2 ; Push font Bank onto stack
|
LDA VDUBANK2 ; Push font Bank onto stack
|
||||||
PHA
|
PHA
|
||||||
PLB ; Set data bank to font bank
|
PLB ; Set data bank to font bank
|
||||||
CLC ; 65816 native mode
|
|
||||||
XCE
|
|
||||||
REP #$30 ; 16 bit M & X
|
REP #$30 ; 16 bit M & X
|
||||||
MX %00 ; Tell Merlin
|
MX %00 ; Tell Merlin
|
||||||
LDY VDUADDR2 ; Font src ptr
|
LDY VDUADDR2 ; Font src ptr
|
||||||
|
Loading…
Reference in New Issue
Block a user