MEGA65 CHRIN variant now accepts commands
This commit is contained in:
1 parent
dee452d352
commit
179ddc2543
3 files changed
+28
-18
No files matched your search
@@ -38,13 +38,17 @@ cmd_sysinfo:
|
||||
jsr STROUT
|
||||
|
||||
jsr print_return
|
||||
|
||||
jsr M65_ISMODE65
|
||||
bcs print_sysinfo_video
|
||||
|
||||
jsr print_return
|
||||
|
||||
// FALLTROUGH
|
||||
|
||||
print_sysinfo_banner:
|
||||
|
||||
// Print board type
|
||||
// Print board type (information not accessible in native mode)
|
||||
|
||||
ldx #IDX__STR_SI_HDR_HW
|
||||
jsr print_packed_misc_str
|
||||
@@ -68,6 +72,11 @@ print_sysinfo_banner:
|
||||
lda MISC_BOARDID
|
||||
jsr print_hex_byte
|
||||
!:
|
||||
|
||||
// FALLTROUGH
|
||||
|
||||
print_sysinfo_video:
|
||||
|
||||
// Print video system information
|
||||
|
||||
ldx #IDX__STR_SI_HDR_VID
|
||||
|
||||
@@ -10,19 +10,18 @@
|
||||
|
||||
chrin_keyboard:
|
||||
|
||||
#if ROM_LAYOUT_M65
|
||||
|
||||
jsr M65_ISMODE65
|
||||
bcc_16 m65_chrin_keyboard
|
||||
|
||||
#endif
|
||||
|
||||
// Preserve .X and .Y registers
|
||||
|
||||
stx XSAV
|
||||
phy_trash_a
|
||||
|
||||
#if ROM_LAYOUT_M65
|
||||
|
||||
/* XXX does not work yet
|
||||
jsr M65_ISMODE65
|
||||
bcc_16 m65_chrin_keyboard
|
||||
*/
|
||||
#endif
|
||||
|
||||
// FALLTROUGH
|
||||
|
||||
chrin_keyboard_repeat:
|
||||
@@ -86,7 +85,7 @@ chrin_keyboard_read:
|
||||
|
||||
lda KEYD
|
||||
cmp #$0D
|
||||
bne chrkin_keyboard_not_enter
|
||||
bne chrkn_keyboard_not_enter
|
||||
|
||||
// FALLTROUGH
|
||||
|
||||
@@ -147,7 +146,7 @@ chrin_enter_loop:
|
||||
// Return first char of line
|
||||
beq chrin_keyboard_return_byte // branch always
|
||||
|
||||
chrkin_keyboard_not_enter:
|
||||
chrkn_keyboard_not_enter:
|
||||
|
||||
lda KEYD
|
||||
|
||||
|
||||
@@ -8,8 +8,10 @@
|
||||
|
||||
m65_chrin_keyboard: // XXX connnect this function to Kernal
|
||||
|
||||
// Preserve .Z register
|
||||
// Preserve .X, .Y and .Z register
|
||||
|
||||
phx
|
||||
phy
|
||||
phz
|
||||
|
||||
// FALLTROUGH
|
||||
@@ -46,9 +48,9 @@ m65_chrin_keyboard_empty_line:
|
||||
|
||||
m65_chrin_keyboard_end:
|
||||
|
||||
ldx XSAV
|
||||
plz
|
||||
ply
|
||||
plx
|
||||
clc
|
||||
rts
|
||||
|
||||
@@ -81,10 +83,9 @@ m65_chrin_keyboard_read:
|
||||
// Wait for a key
|
||||
lda NDX
|
||||
beq m65_chrin_keyboard_repeat
|
||||
|
||||
lda KEYD
|
||||
cmp #$0D
|
||||
bne m65_chrkin_keyboard_not_enter
|
||||
bne m65_chrin_keyboard_not_enter
|
||||
|
||||
// FALLTROUGH
|
||||
|
||||
@@ -152,14 +153,15 @@ m65_chrin_enter_loop:
|
||||
jmp_8 m65_chrin_keyboard_return_byte // branch always
|
||||
|
||||
|
||||
m65_chrkin_keyboard_not_enter:
|
||||
m65_chrin_keyboard_not_enter:
|
||||
|
||||
lda KEYD
|
||||
|
||||
#if CONFIG_PROGRAMMABLE_KEYS
|
||||
|
||||
jsr chrin_programmable_keys
|
||||
bcc m65_chrin_keyboard_enter
|
||||
// XXX do not work yet
|
||||
//jsr chrin_programmable_keys
|
||||
//bcc m65_chrin_keyboard_enter
|
||||
|
||||
#endif // CONFIG_PROGRAMMABLE_KEYS
|
||||
|
||||
|
||||
Reference in new issue
Block a user