initial support for Mega65 extra ROM
This commit is contained in:
1 parent
7539c6b072
commit
4d56864327
333 files changed
+1747
-289
No files matched your search
@@ -1,3 +1,6 @@
|
||||
#if ROM_LAYOUT_STD || (ROM_LAYOUT_M65 && SEGMENT_BASIC_0)
|
||||
|
||||
|
||||
cmd_stop:
|
||||
ldx #30 // "BREAK"
|
||||
jsr print_packed_message
|
||||
@@ -20,3 +23,6 @@ cmd_stop:
|
||||
|
||||
cmd_end:
|
||||
jmp basic_main_loop
|
||||
|
||||
|
||||
#endif // ROM layout
|
||||
@@ -1,5 +1,7 @@
|
||||
#if ROM_LAYOUT_STD || (ROM_LAYOUT_M65 && SEGMENT_BASIC_0)
|
||||
|
||||
// LIST basic text.
|
||||
// XXX - Doesn't currently support line number ranges
|
||||
// XXX - Does not currently support line number ranges
|
||||
|
||||
cmd_list:
|
||||
|
||||
@@ -148,3 +150,4 @@ list_end_of_line:
|
||||
jmp print_return
|
||||
|
||||
|
||||
#endif // ROM layout
|
||||
@@ -1,3 +1,6 @@
|
||||
#if ROM_LAYOUT_STD || (ROM_LAYOUT_M65 && SEGMENT_BASIC_0)
|
||||
|
||||
|
||||
cmd_load:
|
||||
|
||||
// Parse filename
|
||||
@@ -7,7 +10,7 @@ cmd_load:
|
||||
// Parse optional device #
|
||||
// Parse optional secondary address
|
||||
|
||||
// XXX - C64 BASIC apparently doesn't clear variables after a LOAD in the
|
||||
// XXX - C64 BASIC apparently does not clear variables after a LOAD in the
|
||||
// middle of a program. For safety, we do.
|
||||
jsr basic_do_clr
|
||||
|
||||
@@ -77,7 +80,7 @@ got_devicenumber:
|
||||
sta SA
|
||||
jmp cmd_load_got_secondaryaddress
|
||||
!:
|
||||
// Second parameter is above 255, this can't be a secondary address
|
||||
// Second parameter is above 255, this can not be a secondary address
|
||||
// Use it as load address instead
|
||||
// XXX temporary syntax, it would be better to use something
|
||||
// XXX like 'LOAD"FILE",8 TO 49152'
|
||||
@@ -126,3 +129,6 @@ load_no_error:
|
||||
|
||||
// XXX - should run program if LOAD was used in program mode
|
||||
jmp basic_main_loop
|
||||
|
||||
|
||||
#endif // ROM layout
|
||||
@@ -1,3 +1,5 @@
|
||||
#if ROM_LAYOUT_STD || (ROM_LAYOUT_M65 && SEGMENT_BASIC_0)
|
||||
|
||||
|
||||
cmd_new:
|
||||
jsr basic_do_new
|
||||
@@ -78,3 +80,6 @@ basic_do_clr:
|
||||
sta STREND+1
|
||||
|
||||
rts
|
||||
|
||||
|
||||
#endif // ROM layout
|
||||
@@ -1,4 +1,9 @@
|
||||
#if ROM_LAYOUT_STD || (ROM_LAYOUT_M65 && SEGMENT_BASIC_0)
|
||||
|
||||
// REM statement just skips to the next line
|
||||
|
||||
cmd_rem:
|
||||
jmp basic_end_of_line
|
||||
|
||||
|
||||
#endif // ROM layout
|
||||
@@ -1,3 +1,6 @@
|
||||
#if ROM_LAYOUT_STD || (ROM_LAYOUT_M65 && SEGMENT_BASIC_0)
|
||||
|
||||
|
||||
cmd_run:
|
||||
// RUN clears all variables
|
||||
jsr basic_do_clr
|
||||
@@ -15,8 +18,11 @@ cmd_goto:
|
||||
jsr basic_parse_line_number
|
||||
jsr basic_find_line
|
||||
bcc !+
|
||||
// Line doesn't exist, so report error
|
||||
// Line does not exist, so report error
|
||||
jmp do_UNDEFD_STATEMENT_error
|
||||
!:
|
||||
// Run it!
|
||||
jmp basic_execute_from_current_line
|
||||
|
||||
|
||||
#endif // ROM layout
|
||||
@@ -1,3 +1,6 @@
|
||||
#if ROM_LAYOUT_STD || (ROM_LAYOUT_M65 && SEGMENT_BASIC_0)
|
||||
|
||||
|
||||
cmd_sys:
|
||||
|
||||
jsr basic_end_of_statement_check
|
||||
@@ -66,3 +69,6 @@ cmd_sys_setup_call:
|
||||
|
||||
cmd_sys_hack_str:
|
||||
.byte $FF, $AC, $36, $35, $36, $00
|
||||
|
||||
|
||||
#endif // ROM layout
|
||||
@@ -1,3 +1,5 @@
|
||||
#if ROM_LAYOUT_STD || (ROM_LAYOUT_M65 && SEGMENT_BASIC_0)
|
||||
|
||||
//
|
||||
// Default handler for all not-yet-implemented commands
|
||||
//
|
||||
@@ -154,3 +156,6 @@ cmd_go:
|
||||
cmd_unimplemented:
|
||||
|
||||
jmp do_NOT_IMPLEMENTED_error
|
||||
|
||||
|
||||
#endif // ROM layout
|
||||
Reference in new issue
Block a user