From cbd75bcf8a14a647469e6e89c9c8a816fff9bc10 Mon Sep 17 00:00:00 2001 From: Ash Ketchum Date: Wed, 15 Jul 2026 00:37:04 +0200 Subject: warp: SELECT opens quick-warp (B1) + relocate intro-skip to PlayIntro - home/overworld.asm: SELECT in the overworld farcalls WarpMenu, then restarts the overworld loop so the fly-warp flags get processed. - engine/warp_menu.asm (new): WarpMenu reuses the fly-warp machinery (wDestinationMap + BIT_FLY_WARP/BIT_USED_FLY). B1 warps to Pallet unconditionally to validate the hook; the real destination menu is next. - Moved the fastboot intro-skip out of home/init.asm into PlayIntro (bank 10) to reclaim ~10 bytes of home ROM0 for the overworld hook. Net boot behavior is unchanged; new-game path still shows the intro. --- home/init.asm | 4 ---- home/overworld.asm | 5 +++++ 2 files changed, 5 insertions(+), 4 deletions(-) (limited to 'home') diff --git a/home/init.asm b/home/init.asm index fc426e29..bef73b7e 100644 --- a/home/init.asm +++ b/home/init.asm @@ -98,11 +98,7 @@ Init:: dec a ld [wUpdateSpritesEnabled], a -; FASTBOOT: skip the GameFreak/Pikachu intro if a save file exists - farcall CheckForPlayerNameInSRAM - jr c, .fastbootSkipIntro predef PlayIntro -.fastbootSkipIntro call DisableLCD call ClearVram diff --git a/home/overworld.asm b/home/overworld.asm index 4586e5c0..a2626089 100644 --- a/home/overworld.asm +++ b/home/overworld.asm @@ -73,6 +73,11 @@ OverworldLoopLessDelay:: .notSimulating ldh a, [hJoyPressed] .checkIfStartIsPressed + bit B_PAD_SELECT, a ; WARP MENU hotkey + jr z, .notWarpHotkey + farcall WarpMenu + jp OverworldLoop +.notWarpHotkey bit B_PAD_START, a jr z, .startButtonNotPressed ; if START is pressed -- cgit v1.3.1-sl0p