From 9168115679638165ff1b18f80e1048042a6c1e4a Mon Sep 17 00:00:00 2001 From: FeralChild64 Date: Sun, 31 May 2020 20:27:51 +0200 Subject: [PATCH] preparation for no-badline tape loading on Mega65 --- c64/kernal/assets/kernal_messages.s | 11 +++++++++++ c64/kernal/board_m65/mega65_imports.s | 1 + c64/kernal/tape/tape_common.s | 9 +++++++++ c64/kernal/tape/tape_common_screen.s | 3 +++ 4 files changed, 24 insertions(+) diff --git a/c64/kernal/assets/kernal_messages.s b/c64/kernal/assets/kernal_messages.s index 3808770d..6825712f 100644 --- a/c64/kernal/assets/kernal_messages.s +++ b/c64/kernal/assets/kernal_messages.s @@ -21,6 +21,9 @@ #if CONFIG_TAPE_NORMAL || CONFIG_TAPE_TURBO .label __MSG_KERNAL_PRESS_PLAY = __msg_kernalplay - __msg_kernal_first .label __MSG_KERNAL_FOUND = __msg_kernalfound - __msg_kernal_first +#if CONFIG_MB_MEGA_65 +.label __MSG_KERNAL_OK_SEARCHING = __msg_kernaloksearching - __msg_kernal_first +#endif #endif #if CONFIG_SHOW_PAL_NTSC @@ -78,6 +81,14 @@ __msg_kernalfound: .text "FOUND" .byte $80 + $20 // end of string mark + space +#if CONFIG_MB_MEGA_65 + +__msg_kernaloksearching: + .text "OK, SEARCHING" + .byte $80 + $0D // end of string mark + return + +#endif + #endif #if CONFIG_SHOW_PAL_NTSC diff --git a/c64/kernal/board_m65/mega65_imports.s b/c64/kernal/board_m65/mega65_imports.s index d06b0bdb..cd63f523 100644 --- a/c64/kernal/board_m65/mega65_imports.s +++ b/c64/kernal/board_m65/mega65_imports.s @@ -45,6 +45,7 @@ .label print_return = KERNAL_0.proxy_K1_print_return .label __MSG_KERNAL_PRESS_PLAY = KERNAL_0.__MSG_KERNAL_PRESS_PLAY +.label __MSG_KERNAL_OK_SEARCHING = KERNAL_0.__MSG_KERNAL_OK_SEARCHING .label __MSG_KERNAL_FOUND = KERNAL_0.__MSG_KERNAL_FOUND #endif diff --git a/c64/kernal/tape/tape_common.s b/c64/kernal/tape/tape_common.s index 94d125b0..851f0eeb 100644 --- a/c64/kernal/tape/tape_common.s +++ b/c64/kernal/tape/tape_common.s @@ -73,6 +73,15 @@ tape_wait_play_loop: bit CIA1_ICR // $DC0D beq !- +#endif + +#if CONFIG_MB_MEGA_65 + + // Display confirmation + + ldx #__MSG_KERNAL_OK_SEARCHING + jsr print_kernal_message + #endif // FALLTROUGH diff --git a/c64/kernal/tape/tape_common_screen.s b/c64/kernal/tape/tape_common_screen.s index aaf7a150..2d0ef177 100644 --- a/c64/kernal/tape/tape_common_screen.s +++ b/c64/kernal/tape/tape_common_screen.s @@ -11,6 +11,9 @@ #if CONFIG_TAPE_NORMAL || CONFIG_TAPE_TURBO +// XXX for Mega65 do not disable screen, just disable badline emulation + + tape_screen_on_motor_off: jsr tape_motor_off