moved Mega65 startup banner to extra ROM segment

This commit is contained in:
FeralChild64 committed 2020-02-26 20:55:01 +01:00
1 parent 11bf202c81
commit 540c1a6d7d
12 files changed
+114 -26

No files matched your search

+3
View File
@@ -1,5 +1,8 @@
// #LAYOUT# * BASIC_1 #IGNORE
// #LAYOUT# * * #TAKE
// Kernal jump table
.label JCINT = $FF81
.label JIOINIT = $FF84
.label JRAMTAS = $FF87
+5
View File
@@ -1,3 +1,8 @@
// #LAYOUT# STD * #TAKE
// #LAYOUT# M65 BASIC_0 #TAKE
// #LAYOUT# X16 BASIC_0 #TAKE-OFFSET 2000
// #LAYOUT# * * #IGNORE
// Routines imported from Kernal - our private API
+1
View File
@@ -1,6 +1,7 @@
// #LAYOUT# STD * #TAKE
// #LAYOUT# X16 BASIC_0 #TAKE-OFFSET 2000
// #LAYOUT# * BASIC_0 #TAKE
// #LAYOUT# M65 BASIC_1 #TAKE-FLOAT
// #LAYOUT# * * #IGNORE
// Print string at $YYAA
@@ -11,25 +11,12 @@
// Label definitions
.label VB1__TEST = $4000 + 2 * 0
TEST:
jsr map_BASIC_1
jmp (VB1__TEST)
.label VB1__INITMSG = $4000 + 2 * 0
#else
// Vector table (OpenROMs private!)
.word TEST
TEST:
inc 53280
inc 53281
jmp map_NORMAL
.word INITMSG
#endif
-7
View File
@@ -1,7 +0,0 @@
// #LAYOUT# M65 BASIC_1 #TAKE
// #LAYOUT# * * #IGNORE
// Dummy, just to have anything in segment 1
brk
+23
View File
@@ -0,0 +1,23 @@
// #LAYOUT# M65 BASIC_1 #TAKE
// #LAYOUT# * * #IGNORE
//
// Definitions for calling Mega65 segments BASIC_0 and KERNAL_0 routines from BASIC_1
//
#import "BASIC_0_combined.sym"
.label JCHROUT = BASIC_0.proxy_B1_JCHROUT
.label plot_set = KERNAL_0.plot_set
.label basic_do_new = BASIC_0.proxy_B1_basic_do_new
.label rom_revision_basic_string = BASIC_0.rom_revision_basic_string
.label print_integer = BASIC_0.proxy_B1_print_integer
.label print_packed_message = BASIC_0.proxy_B1_print_packed_message
#if CONFIG_SHOW_PAL_NTSC
.label print_pal_ntsc = BASIC_0.proxy_B1_print_pal_ntsc
#endif
#if CONFIG_SHOW_FEATURES
.label print_features = BASIC_0.proxy_B1_print_features
#endif
+54
View File
@@ -0,0 +1,54 @@
// #LAYOUT# M65 BASIC_0 #TAKE
// #LAYOUT# * * #IGNORE
//
// Proxies for calling Mega65 segment BASIC_0 and KERNAL_0 routines from BASIC_1
//
proxy_B1_JCHROUT:
jsr map_NORMAL
jsr JCHROUT
jmp map_BASIC_1
proxy_B1_basic_do_new:
jsr map_NORMAL
jsr basic_do_new
jmp map_BASIC_1
proxy_B1_print_integer:
jsr map_NORMAL
jsr print_integer
jmp map_BASIC_1
proxy_B1_print_packed_message:
jsr map_NORMAL
jsr print_packed_message
jmp map_BASIC_1
#if CONFIG_SHOW_PAL_NTSC
proxy_B1_print_pal_ntsc:
jsr map_NORMAL
jsr print_pal_ntsc
jmp map_BASIC_1
#endif
#if CONFIG_SHOW_FEATURES
proxy_B1_print_features:
jsr map_NORMAL
jsr print_features
jmp map_BASIC_1
#endif
+11
View File
@@ -11,4 +11,15 @@
//
INITMSG:
#if ROM_LAYOUT_M65
jsr map_BASIC_1
jsr_ind VB1__INITMSG
jmp map_NORMAL
#else
jmp initmsg_real
#endif
+2 -1
View File
@@ -1,5 +1,6 @@
// #LAYOUT# STD * #TAKE
// #LAYOUT# * BASIC_0 #TAKE
// #LAYOUT# M65 BASIC_1 #TAKE
// #LAYOUT# X16 BASIC_0 #TAKE
// #LAYOUT# * * #IGNORE
//
+10 -1
View File
@@ -1,13 +1,22 @@
// #LAYOUT# STD * #TAKE
// #LAYOUT# * BASIC_0 #TAKE
// #LAYOUT# M65 BASIC_1 #TAKE
// #LAYOUT# X16 BASIC_0 #TAKE
// #LAYOUT# * * #IGNORE
// Routine is too long to fit in the original location
#if ROM_LAYOUT_M65
INITMSG:
#else
initmsg_real:
#endif
// Clear the screen first, some cartridges (like IEEE-488) leeave a mess on the screen
lda #147
jsr JCHROUT
+2 -1
View File
@@ -1,5 +1,6 @@
// #LAYOUT# STD * #TAKE
// #LAYOUT# * BASIC_0 #TAKE
// #LAYOUT# M65 BASIC_1 #TAKE
// #LAYOUT# X16 BASIC_0 #TAKE
// #LAYOUT# * * #IGNORE
//
@@ -2,7 +2,7 @@
// #LAYOUT# * * #IGNORE
//
// Tape (normal) helper routine - byte storage when ban changing is needed
// Tape (normal) helper routine - byte storage when banking change is needed
//