work towards quote mode in MEGA65 screen editor
This commit is contained in:
1 parent
c9d68d8586
commit
1cc254fa18
3 files changed
+32
-16
No files matched your search
@@ -75,8 +75,6 @@ m65_chrout_try_color_loop:
|
||||
|
||||
// XXX: implement screen routines below:
|
||||
|
||||
m65_chrout_screen_quote:
|
||||
nop
|
||||
m65_chrout_screen_CLR:
|
||||
nop
|
||||
m65_chrout_screen_HOME:
|
||||
@@ -101,9 +99,11 @@ m65_chrout_screen_ESC:
|
||||
nop
|
||||
m65_chrout_screen_BELL:
|
||||
nop
|
||||
m65_chrout_screen_STOP:
|
||||
nop
|
||||
m65_chrout_screen_DEL:
|
||||
nop
|
||||
m65_chrout_screen_GFX:
|
||||
nop
|
||||
m65_chrout_screen_TXT:
|
||||
nop
|
||||
|
||||
jmp m65_chrout_screen_done
|
||||
@@ -41,18 +41,11 @@ m65_chrout_screen_SHIFT_OFF:
|
||||
jmp_8 m65_chrout_screen_ctrl2_end
|
||||
|
||||
|
||||
// GFX/TXT switching support
|
||||
// STOP key support
|
||||
|
||||
m65_chrout_screen_GFX:
|
||||
m65_chrout_screen_STOP:
|
||||
|
||||
lda VIC_YMCSB
|
||||
and #$02 // to upper case
|
||||
!:
|
||||
sta VIC_YMCSB
|
||||
lda #$00
|
||||
sta QTSW
|
||||
sta INSRT
|
||||
jmp_8 m65_chrout_screen_ctrl2_end
|
||||
|
||||
m65_chrout_screen_TXT:
|
||||
|
||||
lda VIC_YMCSB
|
||||
ora #$02 // to lower case
|
||||
bne !- // branch always
|
||||
@@ -0,0 +1,23 @@
|
||||
|
||||
// #LAYOUT# M65 KERNAL_1 #TAKE
|
||||
// #LAYOUT# * * #IGNORE
|
||||
|
||||
//
|
||||
// CHROUT routine - screen support, control codes in quote mode, MEGA65 native mode version
|
||||
//
|
||||
|
||||
|
||||
m65_chrout_screen_quote:
|
||||
|
||||
// Low control codes are just +$80
|
||||
clc
|
||||
adc #$80
|
||||
|
||||
// If it overflowed, then it is a high control code,
|
||||
// so we need to make it be $80 + $40 + char
|
||||
// as we will have flipped back to just $00 + char, we should
|
||||
// now add $c0 if C is set from overflow
|
||||
bcc !+
|
||||
adc #$BF // C=1, so adding $BF + C = add $C0
|
||||
!:
|
||||
jmp m65_chrout_screen_literal
|
||||
Reference in new issue
Block a user