DOS Wedge moved to Mega65 extra ROM memory
This commit is contained in:
1 parent
19cb0efa32
commit
dd642b908e
8 files changed
+98
-1
No files matched your search
@@ -11,4 +11,4 @@ cmd_cold:
|
||||
jsr JCLALL // for extra safety
|
||||
jmp (vector_reset) // hardware CPU vector
|
||||
!:
|
||||
rts
|
||||
rts
|
||||
@@ -1,4 +1,5 @@
|
||||
// #LAYOUT# STD * #TAKE
|
||||
// #LAYOUT# M65 BASIC_1 #TAKE
|
||||
// #LAYOUT# * BASIC_0 #TAKE
|
||||
// #LAYOUT# * * #IGNORE
|
||||
|
||||
@@ -10,6 +11,14 @@
|
||||
|
||||
helper_ask_if_sure:
|
||||
|
||||
#if (ROM_LAYOUT_M65 && SEGMENT_BASIC_0)
|
||||
|
||||
jsr map_BASIC_1
|
||||
jsr_ind VB1__helper_ask_if_sure
|
||||
jmp map_NORMAL
|
||||
|
||||
#else
|
||||
|
||||
// First check, if we are in direct mode,; if not, do not ask
|
||||
|
||||
ldx CURLIN+1
|
||||
@@ -63,3 +72,6 @@ helper_ask_if_sure_ok:
|
||||
|
||||
clc
|
||||
rts
|
||||
|
||||
|
||||
#endif // ROM layout
|
||||
@@ -9,6 +9,7 @@
|
||||
|
||||
#if SEGMENT_BASIC_0
|
||||
|
||||
|
||||
// Label definitions
|
||||
|
||||
.label VB1__INITMSG = $4000 + 2 * 0
|
||||
@@ -22,6 +23,11 @@
|
||||
.label VB1__do_restore = $4000 + 2 * 8
|
||||
.label VB1__cmd_mem_cont = $4000 + 2 * 9
|
||||
.label VB1__prepare_direct_execution = $4000 + 2 * 10
|
||||
.label VB1__helper_ask_if_sure = $4000 + 2 * 11
|
||||
|
||||
#if CONFIG_DOS_WEDGE
|
||||
.label VB1__wedge_dos = $4000 + 2 * 12
|
||||
#endif
|
||||
|
||||
#else
|
||||
|
||||
@@ -38,5 +44,11 @@
|
||||
.word do_restore
|
||||
.word cmd_mem_cont
|
||||
.word prepare_direct_execution
|
||||
.word helper_ask_if_sure
|
||||
|
||||
#if CONFIG_DOS_WEDGE
|
||||
.word wedge_dos
|
||||
#endif
|
||||
|
||||
|
||||
#endif
|
||||
@@ -12,7 +12,17 @@
|
||||
.label poke_via_OLDTXT = BASIC_0.proxy_B1_poke_via_OLDTXT
|
||||
.label JCHROUT = BASIC_0.proxy_B1_JCHROUT
|
||||
.label JCLALL = BASIC_0.proxy_B1_JCLALL
|
||||
#if CONFIG_DOS_WEDGE
|
||||
.label JCLOSE = BASIC_0.proxy_B1_JCLOSE
|
||||
.label JOPEN = BASIC_0.proxy_B1_JOPEN
|
||||
#endif
|
||||
.label JMEMTOP = KERNAL_0.JMEMTOP
|
||||
.label JSETFLS = KERNAL_0.JSETFLS
|
||||
.label JSETNAM = KERNAL_0.JSETNAM
|
||||
.label JGETIN = KERNAL_0.JGETIN
|
||||
.label JCHKIN = KERNAL_0.JCHKIN
|
||||
.label JCHRIN = KERNAL_0.JCHRIN
|
||||
.label JREADST = KERNAL_0.JREADST
|
||||
.label plot_set = KERNAL_0.plot_set
|
||||
.label init_oldtxt = BASIC_0.init_oldtxt
|
||||
.label rom_revision_basic_string = BASIC_0.rom_revision_basic_string
|
||||
@@ -25,3 +35,9 @@
|
||||
.label do_error_fetch = BASIC_0.do_error_fetch
|
||||
.label do_basic_error = BASIC_0.do_basic_error
|
||||
.label str_rev_question = BASIC_0.str_rev_question
|
||||
#if CONFIG_DOS_WEDGE
|
||||
.label fetch_character = BASIC_0.proxy_B1_fetch_character
|
||||
.label fetch_character_skip_spaces = BASIC_0.proxy_B1_fetch_character_skip_spaces
|
||||
.label fetch_uint8 = BASIC_0.proxy_B1_fetch_uint8
|
||||
.label shell_main_loop = BASIC_0.proxy_B1_shell_main_loop
|
||||
#endif
|
||||
@@ -36,6 +36,22 @@ proxy_B1_JCLALL:
|
||||
jsr JCLALL
|
||||
jmp map_BASIC_1
|
||||
|
||||
#if CONFIG_DOS_WEDGE
|
||||
|
||||
proxy_B1_JCLOSE:
|
||||
|
||||
jsr map_NORMAL
|
||||
jsr JCLOSE
|
||||
jmp map_BASIC_1
|
||||
|
||||
|
||||
proxy_B1_JOPEN:
|
||||
|
||||
jsr map_NORMAL
|
||||
jsr JOPEN
|
||||
jmp map_BASIC_1
|
||||
|
||||
#endif
|
||||
|
||||
proxy_B1_JCHROUT:
|
||||
|
||||
@@ -74,3 +90,30 @@ proxy_B1_print_features:
|
||||
jmp map_BASIC_1
|
||||
|
||||
#endif
|
||||
|
||||
#if CONFIG_DOS_WEDGE
|
||||
|
||||
proxy_B1_fetch_character:
|
||||
|
||||
jsr map_NORMAL
|
||||
jsr fetch_character
|
||||
jmp map_BASIC_1
|
||||
|
||||
proxy_B1_fetch_character_skip_spaces:
|
||||
|
||||
jsr map_NORMAL
|
||||
jsr fetch_character_skip_spaces
|
||||
jmp map_BASIC_1
|
||||
|
||||
proxy_B1_fetch_uint8:
|
||||
|
||||
jsr map_NORMAL
|
||||
jsr fetch_uint8
|
||||
jmp map_BASIC_1
|
||||
|
||||
proxy_B1_shell_main_loop:
|
||||
|
||||
jsr map_NORMAL
|
||||
jmp shell_main_loop
|
||||
|
||||
#endif
|
||||
@@ -1,4 +1,5 @@
|
||||
// #LAYOUT# STD * #TAKE
|
||||
// #LAYOUT# M65 BASIC_1 #TAKE
|
||||
// #LAYOUT# * BASIC_0 #TAKE
|
||||
// #LAYOUT# * * #IGNORE
|
||||
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
// #LAYOUT# STD * #TAKE
|
||||
// #LAYOUT# M65 BASIC_1 #TAKE
|
||||
// #LAYOUT# * BASIC_0 #TAKE
|
||||
// #LAYOUT# * * #IGNORE
|
||||
|
||||
// XXX for Mega65, it should be available in BASIC_1 segment only
|
||||
|
||||
select_device:
|
||||
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
// #LAYOUT# STD * #TAKE
|
||||
// #LAYOUT# M65 BASIC_1 #TAKE
|
||||
// #LAYOUT# * BASIC_0 #TAKE
|
||||
// #LAYOUT# * * #IGNORE
|
||||
|
||||
@@ -10,6 +11,14 @@
|
||||
|
||||
wedge_dos:
|
||||
|
||||
#if (ROM_LAYOUT_M65 && SEGMENT_BASIC_0)
|
||||
|
||||
jsr map_BASIC_1
|
||||
jsr_ind VB1__wedge_dos
|
||||
jmp map_NORMAL
|
||||
|
||||
#else
|
||||
|
||||
// Prepare buffer - finish it with '0'
|
||||
|
||||
lda #$00
|
||||
@@ -354,4 +363,6 @@ wedge_dos_setnam:
|
||||
jmp JSETNAM
|
||||
|
||||
|
||||
#endif // ROM layout
|
||||
|
||||
#endif // CONFIG_DOS_WEDGE
|
||||
Reference in new issue
Block a user