111 lines
3.7 KiB
ArmAsm
111 lines
3.7 KiB
ArmAsm
;; #LAYOUT# M65 KERNAL_1 #TAKE
|
|
;; #LAYOUT# * * #IGNORE
|
|
|
|
|
|
m65_scrtab_vic_ctrlb: ; parameters for VIC control register B
|
|
|
|
!byte %01100000 ; 40x25 + extended attributes + VFAST
|
|
!byte %11100000 ; 80x25 + extended attributes + VFAST
|
|
!byte %11101000 ; 80x50 + extended attributes + VFAST
|
|
|
|
m65_scrtab_colviewmax_lo: ; maximum allowed color viewport start - low byte
|
|
|
|
!byte <((MEMCONF_SCRROWS - 25) * 80)
|
|
!byte <((MEMCONF_SCRROWS - 25) * 80)
|
|
!byte <((MEMCONF_SCRROWS - 50) * 80)
|
|
|
|
m65_scrtab_colviewmax_hi: ; maximum allowed color viewport start - high byte
|
|
|
|
!byte >((MEMCONF_SCRROWS - 25) * 80)
|
|
!byte >((MEMCONF_SCRROWS - 25) * 80)
|
|
!byte >((MEMCONF_SCRROWS - 50) * 80)
|
|
|
|
m65_scrtab_scrolx: ; values for VIC_SCROLX
|
|
|
|
!byte $C8
|
|
!byte $C9
|
|
!byte $C9
|
|
|
|
m65_scrtab_rowoffset_lo: ; row offsets - low bytes
|
|
|
|
!byte <(80 * 0), <(80 * 1), <(80 * 2), <(80 * 3), <(80 * 4), <(80 * 5), <(80 * 6), <(80 * 7), <(80 * 8), <(80 * 9)
|
|
!byte <(80 * 10), <(80 * 11), <(80 * 12), <(80 * 13), <(80 * 14), <(80 * 15), <(80 * 16), <(80 * 17), <(80 * 18), <(80 * 19)
|
|
!byte <(80 * 20), <(80 * 21), <(80 * 22), <(80 * 23), <(80 * 24), <(80 * 25), <(80 * 26), <(80 * 27), <(80 * 28), <(80 * 29)
|
|
!byte <(80 * 30), <(80 * 31), <(80 * 32), <(80 * 33), <(80 * 34), <(80 * 35), <(80 * 36), <(80 * 37), <(80 * 38), <(80 * 39)
|
|
!byte <(80 * 40), <(80 * 41), <(80 * 42), <(80 * 43), <(80 * 44), <(80 * 45), <(80 * 46), <(80 * 47), <(80 * 48), <(80 * 49)
|
|
|
|
m65_scrtab_rowoffset_hi: ; row offsets - high bytes
|
|
|
|
!byte >(80 * 0), >(80 * 1), >(80 * 2), >(80 * 3), >(80 * 4), >(80 * 5), >(80 * 6), >(80 * 7), >(80 * 8), >(80 * 9)
|
|
!byte >(80 * 10), >(80 * 11), >(80 * 12), >(80 * 13), >(80 * 14), >(80 * 15), >(80 * 16), >(80 * 17), >(80 * 18), >(80 * 19)
|
|
!byte >(80 * 20), >(80 * 21), >(80 * 22), >(80 * 23), >(80 * 24), >(80 * 25), >(80 * 26), >(80 * 27), >(80 * 28), >(80 * 29)
|
|
!byte >(80 * 30), >(80 * 31), >(80 * 32), >(80 * 33), >(80 * 34), >(80 * 35), >(80 * 36), >(80 * 37), >(80 * 38), >(80 * 39)
|
|
!byte >(80 * 40), >(80 * 41), >(80 * 42), >(80 * 43), >(80 * 44), >(80 * 45), >(80 * 46), >(80 * 47), >(80 * 48), >(80 * 49)
|
|
|
|
; 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_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_INS
|
|
!byte KEY_STOP
|
|
!byte KEY_DEL
|
|
!byte KEY_RETURN
|
|
|
|
__m65_chrout_screen_jumptable_codes_end:
|
|
|
|
|
|
m65_chrout_screen_jumptable:
|
|
|
|
; Note: 65C02 has the page boundary vector bug fixed!
|
|
|
|
!word m65_chrout_screen_CLR
|
|
!word m65_chrout_screen_HOME
|
|
!word m65_chrout_screen_SHIFT_OFF
|
|
!word m65_chrout_screen_SHIFT_ON
|
|
!word m65_chrout_screen_TXT
|
|
!word m65_chrout_screen_GFX
|
|
!word m65_chrout_screen_RVS_OFF
|
|
!word m65_chrout_screen_RVS_ON
|
|
!word m65_chrout_screen_CRSR_RIGHT
|
|
!word m65_chrout_screen_CRSR_LEFT
|
|
!word m65_chrout_screen_CRSR_DOWN
|
|
!word m65_chrout_screen_CRSR_UP
|
|
!word m65_chrout_screen_TAB
|
|
!word m65_chrout_screen_LINE_FEED
|
|
!word m65_chrout_screen_UNDERLINE_ON
|
|
!word m65_chrout_screen_UNDERLINE_OFF
|
|
!word m65_chrout_screen_FLASHING_ON
|
|
!word m65_chrout_screen_FLASHING_OFF
|
|
!word m65_chrout_screen_TAB_SET_CLR
|
|
!word m65_chrout_screen_ESC
|
|
!word m65_chrout_screen_BELL
|
|
!word m65_chrout_screen_INS
|
|
!word m65_chrout_screen_STOP
|
|
!word m65_chrout_screen_DEL
|
|
!word m65_chrout_screen_RETURN
|