more work towards Mega65 native mode, added NSYS command
This commit is contained in:
1 parent
ffdc67d5ca
commit
83cdf37c0d
23 files changed
+266
-21
No files matched your search
@@ -18,10 +18,11 @@
|
||||
.label VK1__load_tape_turbo = $4000 + 2 * 4
|
||||
.label VK1__load_tape_auto = $4000 + 2 * 5
|
||||
.label VK1__tape_head_align = $4000 + 2 * 6
|
||||
.label VK1__M65_MODE64 = $4000 + 2 * 7
|
||||
.label VK1__M65_MODE65 = $4000 + 2 * 8
|
||||
.label VK1__M65_SCRMODEGET = $4000 + 2 * 9
|
||||
.label VK1__M65_SCRMODESET = $4000 + 2 * 10
|
||||
.label VK1__m65_chrout_screen = $4000 + 2 * 7
|
||||
.label VK1__M65_MODE64 = $4000 + 2 * 8
|
||||
.label VK1__M65_MODE65 = $4000 + 2 * 9
|
||||
.label VK1__M65_SCRMODEGET = $4000 + 2 * 10
|
||||
.label VK1__M65_SCRMODESET = $4000 + 2 * 11
|
||||
|
||||
#else
|
||||
|
||||
@@ -55,6 +56,8 @@
|
||||
.word $0000
|
||||
#endif
|
||||
|
||||
.word m65_chrout_screen
|
||||
|
||||
.word M65_MODE64
|
||||
.word M65_MODE65
|
||||
.word M65_SCRMODEGET
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
// #LAYOUT# M65 KERNAL_0 #TAKE
|
||||
// #LAYOUT# * * #IGNORE
|
||||
|
||||
//
|
||||
// ROM routine call redirect for Mega65 screen routines
|
||||
//
|
||||
|
||||
|
||||
m65_chrout_screen:
|
||||
|
||||
jsr map_KERNAL_1
|
||||
jsr_ind VK1__m65_chrout_screen
|
||||
jsr map_NORMAL
|
||||
jmp chrout_done_success
|
||||
|
||||
@@ -22,6 +22,11 @@ M65_MODE64:
|
||||
lda #$03
|
||||
sta MISC_EMU
|
||||
|
||||
// Set misc VIC-IV flags
|
||||
|
||||
lda %00000000 // enable C64 character set
|
||||
sta VIC_CTRLA
|
||||
|
||||
// Switch to VIC-II mode
|
||||
|
||||
sta VIC_KEY
|
||||
|
||||
@@ -32,6 +32,11 @@ M65_MODE65:
|
||||
lda #$00
|
||||
sta MISC_EMU
|
||||
|
||||
// Set misc VIC-IV flags
|
||||
|
||||
lda %01000000 // enable C65 character set
|
||||
sta VIC_CTRLA
|
||||
|
||||
// XXX
|
||||
|
||||
// Set screen mode to 80x25
|
||||
|
||||
@@ -15,11 +15,30 @@ default_irq_handler:
|
||||
|
||||
#endif // CONFIG_RS232_UP9600
|
||||
|
||||
#if ROM_LAYOUT_M65
|
||||
|
||||
jsr M65_ISMODE65
|
||||
bne !+
|
||||
|
||||
jsr m65_cursor_blink
|
||||
|
||||
bra default_irq_handler_common
|
||||
!:
|
||||
jsr cursor_blink
|
||||
|
||||
default_irq_handler_common:
|
||||
|
||||
jsr JSCNKEY
|
||||
jsr JUDTIM // update jiffy clock
|
||||
|
||||
#else
|
||||
|
||||
jsr cursor_blink
|
||||
jsr JSCNKEY
|
||||
jsr JUDTIM // update jiffy clock
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
#if CONFIG_TAPE_NORMAL || CONFIG_TAPE_TURBO
|
||||
|
||||
|
||||
@@ -10,6 +10,13 @@
|
||||
|
||||
chrout_screen:
|
||||
|
||||
#if ROM_LAYOUT_M65
|
||||
|
||||
jsr M65_ISMODE65
|
||||
beq_16 m65_chrout_screen
|
||||
|
||||
#endif
|
||||
|
||||
jsr cursor_hide_if_visible
|
||||
|
||||
lda SCHAR
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
//
|
||||
|
||||
|
||||
#if ((CONFIG_TAPE_NORMAL || CONFIG_TAPE_TURBO) && !CONFIG_MB_MEGA_65) || (CONFIG_IEC_JIFFYDOS && !CONFIG_MEMORY_MODEL_60K)
|
||||
#if ((CONFIG_TAPE_NORMAL || CONFIG_TAPE_TURBO)) || (CONFIG_IEC_JIFFYDOS && !CONFIG_MEMORY_MODEL_60K)
|
||||
|
||||
|
||||
screen_off:
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
// #LAYOUT# M65 KERNAL_1 #TAKE
|
||||
// #LAYOUT# * * #IGNORE
|
||||
|
||||
|
||||
m65_chrout_screen:
|
||||
|
||||
// Provide implementation
|
||||
|
||||
rts
|
||||
@@ -0,0 +1,9 @@
|
||||
// #LAYOUT# M65 KERNAL_0 #TAKE
|
||||
// #LAYOUT# * * #IGNORE
|
||||
|
||||
|
||||
m65_cursor_blink:
|
||||
|
||||
// XXX provide implementation
|
||||
|
||||
rts
|
||||
@@ -0,0 +1,11 @@
|
||||
// #LAYOUT# M65 KERNAL_1 #TAKE
|
||||
// #LAYOUT# * * #IGNORE
|
||||
|
||||
|
||||
// Table of parameters for VIC control register B
|
||||
|
||||
m65_scrtab_vic_ctrlb:
|
||||
|
||||
.byte %00100000 // 40x25 + extended attributes
|
||||
.byte %10100000 // 80x25 + extended attributes
|
||||
.byte %10100100 // 80x50 + extended attributes
|
||||
@@ -60,7 +60,7 @@ m65_scrmodeset_internal: // entry point for M65_MODE65
|
||||
stx VIC_SCRNPTR+1
|
||||
stx M65_SCRTXTBASE+1
|
||||
|
||||
// Set flags/varaibles for 40/80 columns and 25/50 rows
|
||||
// Set flags/variables for 40/80 columns and 25/50 rows
|
||||
|
||||
tax
|
||||
|
||||
@@ -68,11 +68,3 @@ m65_scrmodeset_internal: // entry point for M65_MODE65
|
||||
sta VIC_CTRLB
|
||||
|
||||
rts
|
||||
|
||||
|
||||
|
||||
m65_scrtab_vic_ctrlb:
|
||||
|
||||
.byte %00000000 // 40x25
|
||||
.byte %10000000 // 80x25
|
||||
.byte %10000100 // 80x50
|
||||
Reference in new issue
Block a user