adapted BASIC to CRT memory layout, updated binaries
This commit is contained in:
1 parent
222b72cf7e
commit
732ba36d87
54 files changed
+461
-91
No files matched your search
@@ -1,4 +1,5 @@
|
||||
;; #LAYOUT# STD * #TAKE
|
||||
;; #LAYOUT# CRT BASIC_1 #TAKE
|
||||
;; #LAYOUT# M65 BASIC_1 #TAKE
|
||||
;; #LAYOUT# * BASIC_0 #TAKE
|
||||
;; #LAYOUT# * * #IGNORE
|
||||
@@ -46,6 +47,8 @@ do_kernal_error: ; .A = KERNAL error code, also almost mat
|
||||
dex
|
||||
!ifdef SEGMENT_M65_BASIC_1 {
|
||||
jmp do_basic_error
|
||||
} else ifdef SEGMENT_CRT_BASIC_1 {
|
||||
jmp do_basic_error
|
||||
} else {
|
||||
bpl do_basic_error ; branch always
|
||||
}
|
||||
@@ -152,9 +155,9 @@ do_TO_MANY_FILES_error:
|
||||
!byte $EA
|
||||
|
||||
!ifdef SEGMENT_M65_BASIC_1 {
|
||||
|
||||
jmp do_error_fetch
|
||||
|
||||
} else ifdef SEGMENT_CRT_BASIC_1 {
|
||||
jmp do_error_fetch
|
||||
} else {
|
||||
|
||||
; FALLTROUGH
|
||||
@@ -185,8 +188,11 @@ do_error_fetch:
|
||||
|
||||
do_basic_error: ; error code in .X
|
||||
|
||||
!ifdef ROM_LAYOUT_M65 {
|
||||
; Make sure we are back with normal memory map
|
||||
|
||||
!ifdef ROM_LAYOUT_M65 {
|
||||
jsr map_NORMAL
|
||||
} else ifdef ROM_LAYOUT_CRT {
|
||||
jsr map_NORMAL
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
;; #LAYOUT# STD * #TAKE
|
||||
;; #LAYOUT# CRT BASIC_0 #TAKE
|
||||
;; #LAYOUT# M65 * #TAKE
|
||||
;; #LAYOUT# CRT BASIC_1 #TAKE
|
||||
;; #LAYOUT# M65 BASIC_0 #TAKE
|
||||
;; #LAYOUT# M65 BASIC_1 #TAKE
|
||||
;; #LAYOUT# X16 BASIC_0 #TAKE
|
||||
;; #LAYOUT# * * #IGNORE
|
||||
|
||||
@@ -33,6 +35,24 @@ do_restore_end:
|
||||
|
||||
jmp map_NORMAL
|
||||
|
||||
} else ifdef SEGMENT_CRT_BASIC_0 {
|
||||
|
||||
jsr map_BASIC_1
|
||||
jsr JB1__do_new
|
||||
jmp map_NORMAL
|
||||
|
||||
do_clr:
|
||||
|
||||
jsr map_BASIC_1
|
||||
jsr JB1__do_clr
|
||||
jmp map_NORMAL
|
||||
|
||||
do_restore:
|
||||
|
||||
jsr map_BASIC_1
|
||||
jsr JB1__do_restore
|
||||
jmp map_NORMAL
|
||||
|
||||
} else {
|
||||
|
||||
; See Computes Mapping the Commodore 64 - page 96
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
;; #LAYOUT# STD * #TAKE
|
||||
;; #LAYOUT# CRT BASIC_1 #TAKE
|
||||
;; #LAYOUT# M65 BASIC_1 #TAKE
|
||||
;; #LAYOUT# * BASIC_0 #TAKE
|
||||
;; #LAYOUT# * * #IGNORE
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
;; #LAYOUT# STD * #TAKE
|
||||
;; #LAYOUT# CRT BASIC_1 #TAKE
|
||||
;; #LAYOUT# M65 BASIC_1 #TAKE
|
||||
;; #LAYOUT# * BASIC_0 #TAKE
|
||||
;; #LAYOUT# * * #IGNORE
|
||||
@@ -15,6 +16,12 @@ prepare_direct_execution:
|
||||
jsr (VB1__prepare_direct_execution)
|
||||
jmp map_NORMAL
|
||||
|
||||
} else ifdef SEGMENT_CRT_BASIC_0 {
|
||||
|
||||
jsr map_BASIC_1
|
||||
jsr JB1__prepare_direct_execution
|
||||
jmp map_NORMAL
|
||||
|
||||
} else {
|
||||
|
||||
; Setup pointer to the statement
|
||||
|
||||
Reference in new issue
Block a user