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,9 +1,10 @@
|
||||
#if ROM_LAYOUT_STD || (ROM_LAYOUT_M65 && SEGMENT_KERNAL_0)
|
||||
|
||||
//
|
||||
// Official Kernal routine, described in:
|
||||
//
|
||||
// - [RG64] C64 Programmer's Reference Guide - page 293 (RESTOR), 304 (VECTOR)
|
||||
// - [CM64] Compute's Mapping the Commodore 64 - page 237
|
||||
// - [RG64] C64 Programmers Reference Guide - page 293 (RESTOR), 304 (VECTOR)
|
||||
// - [CM64] Computes Mapping the Commodore 64 - page 237
|
||||
//
|
||||
// CPU registers that has to be preserved (see [RG64]): none
|
||||
//
|
||||
@@ -22,3 +23,6 @@ VECTOR:
|
||||
// placing it here would cause a collision with VECTOR defaults
|
||||
|
||||
jmp vector_real
|
||||
|
||||
|
||||
#endif // ROM layout
|
||||
@@ -1,9 +1,10 @@
|
||||
#if ROM_LAYOUT_STD || (ROM_LAYOUT_M65 && SEGMENT_KERNAL_0)
|
||||
|
||||
//
|
||||
// Official Kernal routine, described in:
|
||||
//
|
||||
// - [RG64] C64 Programmer's Reference Guide - page 288
|
||||
// - [CM64] Compute's Mapping the Commodore 64 - page 240
|
||||
// - [RG64] C64 Programmers Reference Guide - page 288
|
||||
// - [CM64] Computes Mapping the Commodore 64 - page 240
|
||||
//
|
||||
// CPU registers that has to be preserved (see [RG64]): .A
|
||||
//
|
||||
@@ -23,3 +24,6 @@ memtop_set: // for compatibility reasons this has to start at $FE2D
|
||||
stx MEMSIZK+0
|
||||
|
||||
rts
|
||||
|
||||
|
||||
#endif // ROM layout
|
||||
@@ -1,9 +1,10 @@
|
||||
#if ROM_LAYOUT_STD || (ROM_LAYOUT_M65 && SEGMENT_KERNAL_0)
|
||||
|
||||
//
|
||||
// Official Kernal routine, described in:
|
||||
//
|
||||
// - [RG64] C64 Programmer's Reference Guide - page 287/288
|
||||
// - [CM64] Compute's Mapping the Commodore 64 - page 240
|
||||
// - [RG64] C64 Programmers Reference Guide - page 287/288
|
||||
// - [CM64] Computes Mapping the Commodore 64 - page 240
|
||||
//
|
||||
// CPU registers that has to be preserved (see [RG64]): .A
|
||||
//
|
||||
@@ -23,3 +24,6 @@ membot_set:
|
||||
stx MEMSTR+0
|
||||
|
||||
rts
|
||||
|
||||
|
||||
#endif // ROM layout
|
||||
@@ -1,3 +1,5 @@
|
||||
#if ROM_LAYOUT_STD || (ROM_LAYOUT_M65 && SEGMENT_KERNAL_0)
|
||||
|
||||
// IMPORTANT:
|
||||
// These routines lengths cannot be changed without changing
|
||||
// the aliases for peek_under_roms, poke_under_roms etc
|
||||
@@ -66,3 +68,6 @@ memmap_allram_routine:
|
||||
__ram_routines_end:
|
||||
|
||||
#endif // CONFIG_MEMORY_MODEL_60K
|
||||
|
||||
|
||||
#endif // ROM layout
|
||||
@@ -1,3 +1,4 @@
|
||||
#if ROM_LAYOUT_STD || (ROM_LAYOUT_M65 && SEGMENT_KERNAL_0)
|
||||
|
||||
|
||||
vector_real:
|
||||
@@ -6,7 +7,7 @@ vector_real:
|
||||
// address originally used; after calling VECTOR and checking zero page
|
||||
// area afterwards, the address could be found there
|
||||
|
||||
// According to 'Compute's Mapping the Commodore 64' page 237,
|
||||
// According to 'Computes Mapping the Commodore 64' page 237,
|
||||
// the CBM implementation does not disable IRQs - yet, the
|
||||
// 'C64 Programmers Reference Guide' does not contain such
|
||||
// warning and does not mention any preparations needed.
|
||||
@@ -40,3 +41,6 @@ vector_end_loop:
|
||||
bpl vector_restore
|
||||
|
||||
rts
|
||||
|
||||
|
||||
#endif // ROM layout
|
||||
Reference in new issue
Block a user