started work on VIC-IV cursor

This commit is contained in:
FeralChild64 committed 2020-08-23 20:28:06 +02:00
1 parent ad22140617
commit 511a30715f
10 files changed
+175 -24

No files matched your search

@@ -0,0 +1,98 @@
// #LAYOUT# M65 KERNAL_1 #TAKE
// #LAYOUT# * * #IGNORE
m65_scrtab_vic_ctrlb: // parameters for VIC control register B
.byte %00100000 // 40x25 + extended attributes
.byte %10100000 // 80x25 + extended attributes
.byte %10100100 // 80x50 + extended attributes
m65_scrtab_viewmax_lo: // maximum allowed viewport start - low byte
.byte $B0
.byte $B0
.byte $E0
m65_scrtab_viewmax_hi: // maximum allowed viewport start - high byte
.byte $96
.byte $96
.byte $8E
m65_scrtab_scrolx: // values for VIC_SCROLX
.byte $C8
.byte $CA
.byte $CA
// Jumptable for screen control codes support. To improve performance, should be sorted
// starting from the least probable routine.
m65_chrout_screen_jumptable_codes:
.byte KEY_CLR
.byte KEY_HOME
.byte KEY_C65_SHIFT_OFF
.byte KEY_C65_SHIFT_ON
.byte KEY_TXT
.byte KEY_GFX
.byte KEY_RVS_OFF
.byte KEY_RVS_ON
.byte KEY_CRSR_RIGHT
.byte KEY_CRSR_LEFT
.byte KEY_CRSR_DOWN
.byte KEY_CRSR_UP
.byte KEY_INS
.byte KEY_TAB
.byte KEY_LINE_FEED
.byte KEY_UNDERLINE_ON
.byte KEY_UNDERLINE_OFF
.byte KEY_FLASHING_ON
.byte KEY_FLASHING_OFF
.byte KEY_TAB_SET_CLR
.byte KEY_ESC
.byte KEY_BELL
__m65_chrout_screen_jumptable_quote_guard:
.byte KEY_STOP
.byte KEY_DEL
.byte KEY_RETURN
__m65_chrout_screen_jumptable_codes_end:
.const m65_chrout_list = List().add(
m65_chrout_screen_CLR,
m65_chrout_screen_HOME,
m65_chrout_screen_SHIFT_OFF,
m65_chrout_screen_SHIFT_ON,
m65_chrout_screen_TXT,
m65_chrout_screen_GFX,
m65_chrout_screen_RVS_OFF,
m65_chrout_screen_RVS_ON,
m65_chrout_screen_CRSR_RIGHT,
m65_chrout_screen_CRSR_LEFT,
m65_chrout_screen_CRSR_DOWN,
m65_chrout_screen_CRSR_UP,
m65_chrout_screen_INS,
m65_chrout_screen_TAB,
m65_chrout_screen_LINE_FEED,
m65_chrout_screen_UNDERLINE_ON,
m65_chrout_screen_UNDERLINE_OFF,
m65_chrout_screen_FLASHING_ON,
m65_chrout_screen_FLASHING_OFF,
m65_chrout_screen_TAB_SET_CLR,
m65_chrout_screen_ESC,
m65_chrout_screen_BELL,
m65_chrout_screen_STOP,
m65_chrout_screen_DEL,
m65_chrout_screen_RETURN
)
m65_chrout_screen_jumptable:
// Note: 65C02 has the page boundary vector bug fixed!
put_jumptable(m65_chrout_list)