From d48ea223eaad84af95e4f29043c279b56aa4ae88 Mon Sep 17 00:00:00 2001 From: "U-Daniel-PC\\Daniel" Date: Fri, 5 Jun 2015 14:01:18 -0500 Subject: Fix a lot of bugs --- engine/bank3c/main.asm | 116 +++++++++++++ engine/bank3c/overworld.asm | 242 +++++++++++++++++++++++++++ engine/bank3d/random.asm | 15 ++ engine/bank3f/data/map_header_banks.asm | 251 ++++++++++++++++++++++++++++ engine/bank3f/data/map_header_pointers.asm | 251 ++++++++++++++++++++++++++++ engine/bank3f/data/map_songs.asm | 252 +++++++++++++++++++++++++++++ engine/bank3f/main.asm | 217 +++++++++++++++++++++++++ home.asm | 2 +- home/copy2.asm | 12 +- home/overworld.asm | 4 +- macros.asm | 1 + main.asm | 14 +- wram.asm | 12 +- yellow/audio.asm | 2 + yellow/bank3c/main.asm | 116 ------------- yellow/bank3c/overworld.asm | 242 --------------------------- yellow/bank3d/random.asm | 15 -- yellow/bank3f/data/map_header_banks.asm | 251 ---------------------------- yellow/bank3f/data/map_header_pointers.asm | 251 ---------------------------- yellow/bank3f/data/map_songs.asm | 252 ----------------------------- yellow/bank3f/main.asm | 217 ------------------------- yellow/main.asm | 2 + yellow/text.asm | 2 + yellow/wram.asm | 2 + 24 files changed, 1378 insertions(+), 1363 deletions(-) create mode 100644 engine/bank3c/main.asm create mode 100644 engine/bank3c/overworld.asm create mode 100644 engine/bank3d/random.asm create mode 100644 engine/bank3f/data/map_header_banks.asm create mode 100644 engine/bank3f/data/map_header_pointers.asm create mode 100644 engine/bank3f/data/map_songs.asm create mode 100644 engine/bank3f/main.asm create mode 100755 yellow/audio.asm delete mode 100644 yellow/bank3c/main.asm delete mode 100644 yellow/bank3c/overworld.asm delete mode 100644 yellow/bank3d/random.asm delete mode 100644 yellow/bank3f/data/map_header_banks.asm delete mode 100644 yellow/bank3f/data/map_header_pointers.asm delete mode 100644 yellow/bank3f/data/map_songs.asm delete mode 100644 yellow/bank3f/main.asm create mode 100755 yellow/main.asm create mode 100755 yellow/text.asm create mode 100755 yellow/wram.asm diff --git a/engine/bank3c/main.asm b/engine/bank3c/main.asm new file mode 100644 index 00000000..92f5634c --- /dev/null +++ b/engine/bank3c/main.asm @@ -0,0 +1,116 @@ +INCLUDE "engine/bank3c/overworld.asm" + +ResetStatusAndHalveMoneyOnBlackout:: ; f0274 (3c:4274) +; Reset player status on blackout. + xor a + ld [wd435],a + xor a ; gamefreak copypasting functions (double xor a) + ld [wBattleResult], a + ld [wWalkBikeSurfState], a + ld [W_ISINBATTLE], a + ld [wMapPalOffset], a + ld [wNPCMovementScriptFunctionNum], a + ld [hJoyHeld], a + ld [wNPCMovementScriptPointerTableNum], a + ld [wFlags_0xcd60], a + + ld [$ff9f], a + ld [$ff9f + 1], a + ld [$ff9f + 2], a + call HasEnoughMoney + jr c, .lostmoney ; never happens + + ; Halve the player's money. + ld a, [wPlayerMoney] + ld [$ff9f], a + ld a, [wPlayerMoney + 1] + ld [$ff9f + 1], a + ld a, [wPlayerMoney + 2] + ld [$ff9f + 2], a + xor a + ld [$ffa2], a + ld [$ffa3], a + ld a, 2 + ld [$ffa4], a + predef DivideBCDPredef3 + ld a, [$ffa2] + ld [wPlayerMoney], a + ld a, [$ffa2 + 1] + ld [wPlayerMoney + 1], a + ld a, [$ffa2 + 2] + ld [wPlayerMoney + 2], a + +.lostmoney + ld hl, wd732 + set 2, [hl] + res 3, [hl] + set 6, [hl] + ld a, %11111111 + ld [wJoyIgnore], a + predef_jump HealParty + +Func_f02da:: ; f02da (3c:42da) + ld a,[W_CURMAP] + cp VERMILION_GYM ; ??? new thing about verm gym? + jr z,.asm_f02ee + ld c,a + ld hl,Pointer_f02fa +.asm_f02e5 + ld a,[hli] + cp c + jr z,.asm_f02f4 + cp a,$ff + jr nz,.asm_f02e5 + ret +.asm_f02ee + ld hl,wd126 + set 6,[hl] + ret +.asm_f02f4 + ld hl,wd126 + set 5,[hl] + ret + +Pointer_f02fa:: ; f02fa (3c:42fa) + db $cf,$d0,$d1,$d2,$d3,$d4 + db $d5,$e9,$ea,$eb,$d6,$d7 + db $d8,$a5,$a6,$87,$c7,$ca + db $c6,$6c,$c2,$71,$f5,$f6 + db $f7,$ff + +BeachHouse_GFX:: ; f0314 (3c:4314) + INCBIN "gfx/tilesets/beachhouse.2bpp" + +BeachHouse_Block:: ; f0914 (3c:4914) + INCBIN "gfx/blocksets/beachhouse.bst" + +Func_f0a55:: ; f0a55 (3c:4a55) + ld hl,Pointer_f0a76 ; 3c:4a76 +.loop + ld a,[hli] + cp a,$ff + ret z + ld b,a + ld a,[W_CURMAP] + cp b + jr z,.asm_f0a68 + inc hl + inc hl + inc hl + jr .loop + +.asm_f0a68 + ld a,[hli] + ld c,a + ld b,$0 + ld a,[hli] + ld h,[hl] + ld l,a + ld de,W_MISSABLEOBJECTLIST + call CopyData + ret + +Pointer_f0a76:: ; f0a76 (3c:4a76) + db $27,$07,$7b,$4a,$ff + db $01,$ec,$02,$ed,$03,$ee,$ff + diff --git a/engine/bank3c/overworld.asm b/engine/bank3c/overworld.asm new file mode 100644 index 00000000..778244d6 --- /dev/null +++ b/engine/bank3c/overworld.asm @@ -0,0 +1,242 @@ +_AdvancePlayerSprite:: ; f010c (3c:410c) + ld a,[wSpriteStateData1 + 3] ; delta Y + ld b,a + ld a,[wSpriteStateData1 + 5] ; delta X + ld c,a + ld hl,wWalkCounter ; walking animation counter + dec [hl] + jr nz,.afterUpdateMapCoords +; if it's the end of the animation, update the player's map coordinates + ld a,[W_YCOORD] + add b + ld [W_YCOORD],a + ld a,[W_XCOORD] + add c + ld [W_XCOORD],a +.afterUpdateMapCoords + ld a,[wWalkCounter] ; walking animation counter + cp a,$07 + jp nz,.scrollBackgroundAndSprites +; if this is the first iteration of the animation + ld a,c + cp a,$01 + jr nz,.checkIfMovingWest +; moving east + ld a,[wMapViewVRAMPointer] + ld e,a + and a,$e0 + ld d,a + ld a,e + add a,$02 + and a,$1f + or d + ld [wMapViewVRAMPointer],a + jr .adjustXCoordWithinBlock +.checkIfMovingWest + cp a,$ff + jr nz,.checkIfMovingSouth +; moving west + ld a,[wMapViewVRAMPointer] + ld e,a + and a,$e0 + ld d,a + ld a,e + sub a,$02 + and a,$1f + or d + ld [wMapViewVRAMPointer],a + jr .adjustXCoordWithinBlock +.checkIfMovingSouth + ld a,b + cp a,$01 + jr nz,.checkIfMovingNorth +; moving south + ld a,[wMapViewVRAMPointer] + add a,$40 + ld [wMapViewVRAMPointer],a + jr nc,.adjustXCoordWithinBlock + ld a,[wMapViewVRAMPointer + 1] + inc a + and a,$03 + or a,$98 + ld [wMapViewVRAMPointer + 1],a + jr .adjustXCoordWithinBlock +.checkIfMovingNorth + cp a,$ff + jr nz,.adjustXCoordWithinBlock +; moving north + ld a,[wMapViewVRAMPointer] + sub a,$40 + ld [wMapViewVRAMPointer],a + jr nc,.adjustXCoordWithinBlock + ld a,[wMapViewVRAMPointer + 1] + dec a + and a,$03 + or a,$98 + ld [wMapViewVRAMPointer + 1],a +.adjustXCoordWithinBlock + ld a,c + and a + jr z,.pointlessJump ; mistake? +.pointlessJump + ld hl,W_XBLOCKCOORD + ld a,[hl] + add c + ld [hl],a + cp a,$02 + jr nz,.checkForMoveToWestBlock +; moved into the tile block to the east + xor a + ld [hl],a + ld hl,wXOffsetSinceLastSpecialWarp + inc [hl] + ld de,wCurrentTileBlockMapViewPointer + call MoveTileBlockMapPointerEast + jr .updateMapView +.checkForMoveToWestBlock + cp a,$ff + jr nz,.adjustYCoordWithinBlock +; moved into the tile block to the west + ld a,$01 + ld [hl],a + ld hl,wXOffsetSinceLastSpecialWarp + dec [hl] + ld de,wCurrentTileBlockMapViewPointer + call MoveTileBlockMapPointerWest + jr .updateMapView +.adjustYCoordWithinBlock + ld hl,W_YBLOCKCOORD + ld a,[hl] + add b + ld [hl],a + cp a,$02 + jr nz,.checkForMoveToNorthBlock +; moved into the tile block to the south + xor a + ld [hl],a + ld hl,wYOffsetSinceLastSpecialWarp + inc [hl] + ld de,wCurrentTileBlockMapViewPointer + ld a,[W_CURMAPWIDTH] + call MoveTileBlockMapPointerSouth + jr .updateMapView +.checkForMoveToNorthBlock + cp a,$ff + jr nz,.updateMapView +; moved into the tile block to the north + ld a,$01 + ld [hl],a + ld hl,wYOffsetSinceLastSpecialWarp + dec [hl] + ld de,wCurrentTileBlockMapViewPointer + ld a,[W_CURMAPWIDTH] + call MoveTileBlockMapPointerNorth +.updateMapView + call LoadCurrentMapView + ld a,[wSpriteStateData1 + 3] ; delta Y + cp a,$01 + jr nz,.checkIfMovingNorth2 +; if moving south + call ScheduleSouthRowRedraw + jr .scrollBackgroundAndSprites +.checkIfMovingNorth2 + cp a,$ff + jr nz,.checkIfMovingEast2 +; if moving north + call ScheduleNorthRowRedraw + jr .scrollBackgroundAndSprites +.checkIfMovingEast2 + ld a,[wSpriteStateData1 + 5] ; delta X + cp a,$01 + jr nz,.checkIfMovingWest2 +; if moving east + call ScheduleEastColumnRedraw + jr .scrollBackgroundAndSprites +.checkIfMovingWest2 + cp a,$ff + jr nz,.scrollBackgroundAndSprites +; if moving west + call ScheduleWestColumnRedraw +.scrollBackgroundAndSprites + ld a,[wSpriteStateData1 + 3] ; delta Y + ld b,a + ld a,[wSpriteStateData1 + 5] ; delta X + ld c,a + sla b + sla c + ld a,[hSCY] + add b + ld [hSCY],a ; update background scroll Y + ld a,[hSCX] + add c + ld [hSCX],a ; update background scroll X +; shift all the sprites in the direction opposite of the player's motion +; so that the player appears to move relative to them + ld hl,wSpriteStateData1 + $14 + ld a,[W_NUMSPRITES] ; number of sprites + and a ; are there any sprites? + jr z,.done + ld e,a +.spriteShiftLoop + ld a,[hl] + sub b + ld [hli],a + inc l + ld a,[hl] + sub c + ld [hl],a + ld a,$0e + add l + ld l,a + dec e + jr nz,.spriteShiftLoop +.done + ret + +MoveTileBlockMapPointerEast:: ; 0e65 (0:0e65) + ld a,[de] + add a,$01 + ld [de],a + ret nc + inc de + ld a,[de] + inc a + ld [de],a + ret + +MoveTileBlockMapPointerWest:: ; 0e6f (0:0e6f) + ld a,[de] + sub a,$01 + ld [de],a + ret nc + inc de + ld a,[de] + dec a + ld [de],a + ret + +MoveTileBlockMapPointerSouth:: ; 0e79 (0:0e79) + add a,$06 + ld b,a + ld a,[de] + add b + ld [de],a + ret nc + inc de + ld a,[de] + inc a + ld [de],a + ret + +MoveTileBlockMapPointerNorth:: ; 0e85 (0:0e85) + add a,$06 + ld b,a + ld a,[de] + sub b + ld [de],a + ret nc + inc de + ld a,[de] + dec a + ld [de],a + ret \ No newline at end of file diff --git a/engine/bank3d/random.asm b/engine/bank3d/random.asm new file mode 100644 index 00000000..8c8ead4e --- /dev/null +++ b/engine/bank3d/random.asm @@ -0,0 +1,15 @@ +SECTION "bank3d Random",ROMX[$67DC],BANK[$3D] + +Random_:: +; Generate a random 16-bit value. + ld a, [rDIV] + ld b, a + ld a, [hRandomAdd] + adc b + ld [hRandomAdd], a + ld a, [rDIV] + ld b, a + ld a, [hRandomSub] + sbc b + ld [hRandomSub], a + ret diff --git a/engine/bank3f/data/map_header_banks.asm b/engine/bank3f/data/map_header_banks.asm new file mode 100644 index 00000000..94a13510 --- /dev/null +++ b/engine/bank3f/data/map_header_banks.asm @@ -0,0 +1,251 @@ +; see also MapHeaderPointers +MapHeaderBanks:: ; fc3e4 (3f:43e4) + db BANK(PalletTown_h) ;PALLET_TOWN + db BANK(ViridianCity_h) ; VIRIDIAN_CITY + db BANK(PewterCity_h) ; PEWTER_CITY + db BANK(CeruleanCity_h) ; CERULEAN_CITY + db BANK(LavenderTown_h) ; LAVENDER_TOWN + db BANK(VermilionCity_h) ; VERMILION_CITY + db BANK(CeladonCity_h) ; CELADON_CITY + db BANK(FuchsiaCity_h) ; FUCHSIA_CITY + db BANK(CinnabarIsland_h) ; CINNABAR_ISLAND + db BANK(IndigoPlateau_h) ; INDIGO_PLATEAU + db BANK(SaffronCity_h) ; SAFFRON_CITY + db $1 ; unused + db BANK(Route1_h) ; ROUTE_1 + db BANK(Route2_h) ; ROUTE_2 + db BANK(Route3_h) ; ROUTE_3 + db BANK(Route4_h) ; ROUTE_4 + db BANK(Route5_h) ; ROUTE_5 + db BANK(Route6_h) ; ROUTE_6 + db BANK(Route7_h) ; ROUTE_7 + db BANK(Route8_h) ; ROUTE_8 + db BANK(Route9_h) ; ROUTE_9 + db BANK(Route10_h) ; ROUTE_10 + db BANK(Route11_h) ; ROUTE_11 + db BANK(Route12_h) ; ROUTE_12 + db BANK(Route13_h) ; ROUTE_13 + db BANK(Route14_h) ; ROUTE_14 + db BANK(Route15_h) ; ROUTE_15 + db BANK(Route16_h) ; ROUTE_16 + db BANK(Route17_h) ; ROUTE_17 + db BANK(Route18_h) ; ROUTE_18 + db BANK(Route19_h) ; ROUTE_19 + db BANK(Route20_h) ; ROUTE_20 + db BANK(Route21_h) ; ROUTE_21 + db BANK(Route22_h) ; ROUTE_22 + db BANK(Route23_h) ; ROUTE_23 + db BANK(Route24_h) ; ROUTE_24 + db BANK(Route25_h) ; ROUTE_25 + db BANK(RedsHouse1F_h) + db BANK(RedsHouse2F_h) + db BANK(BluesHouse_h) + db BANK(OaksLab_h) + db BANK(ViridianPokecenter_h) + db BANK(ViridianMart_h) + db BANK(School_h) + db BANK(ViridianHouse_h) + db BANK(ViridianGym_h) + db BANK(DiglettsCaveRoute2_h) + db BANK(ViridianForestExit_h) + db BANK(Route2House_h) + db BANK(Route2Gate_h) + db BANK(ViridianForestEntrance_h) + db BANK(ViridianForest_h) + db BANK(Museum1F_h) + db BANK(Museum2F_h) + db BANK(PewterGym_h) + db BANK(PewterHouse1_h) + db BANK(PewterMart_h) + db BANK(PewterHouse2_h) + db BANK(PewterPokecenter_h) + db BANK(MtMoon1_h) + db BANK(MtMoon2_h) + db BANK(MtMoon3_h) + db BANK(CeruleanHouseTrashed_h) + db BANK(CeruleanHouse1_h) + db BANK(CeruleanPokecenter_h) + db BANK(CeruleanGym_h) + db BANK(BikeShop_h) + db BANK(CeruleanMart_h) + db BANK(MtMoonPokecenter_h) + db BANK(CeruleanHouseTrashed_h) + db BANK(Route5Gate_h) + db BANK(UndergroundPathEntranceRoute5_h) + db BANK(DayCareM_h) + db BANK(Route6Gate_h) + db BANK(UndergroundPathEntranceRoute6_h) + db BANK(UndergroundPathEntranceRoute6_h) ;FREEZE + db BANK(Route7Gate_h) + db BANK(UndergroundPathEntranceRoute7_h) + db BANK(UndergroundPathEntranceRoute7Copy_h) ;FREEZE + db BANK(Route8Gate_h) + db BANK(UndergroundPathEntranceRoute8_h) + db BANK(RockTunnelPokecenter_h) + db BANK(RockTunnel1_h) + db BANK(PowerPlant_h) + db BANK(Route11Gate_h) + db BANK(DiglettsCaveEntranceRoute11_h) + db BANK(Route11GateUpstairs_h) + db BANK(Route12Gate_h) + db BANK(BillsHouse_h) + db BANK(VermilionPokecenter_h) + db BANK(FanClub_h) + db BANK(VermilionMart_h) + db BANK(VermilionGym_h) + db BANK(VermilionHouse1_h) + db BANK(VermilionDock_h) + db BANK(SSAnne1_h) + db BANK(SSAnne2_h) + db BANK(SSAnne3_h) + db BANK(SSAnne4_h) + db BANK(SSAnne5_h) + db BANK(SSAnne6_h) + db BANK(SSAnne7_h) + db BANK(SSAnne8_h) + db BANK(SSAnne9_h) + db BANK(SSAnne10_h) + db $1D ;unused + db $1D ;unused + db $1D ;unused + db BANK(VictoryRoad1_h) + db $1D ;unused + db $1D ;unused + db $1D ;unused + db $1D ;unused + db BANK(Lance_h) + db $1D ;unused + db $1D ;unused + db $1D ;unused + db $1D ;unused + db BANK(HallofFameRoom_h) + db BANK(UndergroundPathNS_h) + db BANK(Gary_h) + db BANK(UndergroundPathWE_h) + db BANK(CeladonMart1_h) + db BANK(CeladonMart2_h) + db BANK(CeladonMart3_h) + db BANK(CeladonMart4_h) + db BANK(CeladonMartRoof_h) + db BANK(CeladonMartElevator_h) + db BANK(CeladonMansion1_h) + db BANK(CeladonMansion2_h) + db BANK(CeladonMansion3_h) + db BANK(CeladonMansion4_h) + db BANK(CeladonMansion5_h) + db BANK(CeladonPokecenter_h) + db BANK(CeladonGym_h) + db BANK(CeladonGameCorner_h) + db BANK(CeladonMart5_h) + db BANK(CeladonPrizeRoom_h) + db BANK(CeladonDiner_h) + db BANK(CeladonHouse_h) + db BANK(CeladonHotel_h) + db BANK(LavenderPokecenter_h) + db BANK(PokemonTower1_h) + db BANK(PokemonTower2_h) + db BANK(PokemonTower3_h) + db BANK(PokemonTower4_h) + db BANK(PokemonTower5_h) + db BANK(PokemonTower6_h) + db BANK(PokemonTower7_h) + db BANK(LavenderHouse1_h) + db BANK(LavenderMart_h) + db BANK(LavenderHouse2_h) + db BANK(FuchsiaMart_h) + db BANK(FuchsiaHouse1_h) + db BANK(FuchsiaPokecenter_h) + db BANK(FuchsiaHouse2_h) + db BANK(SafariZoneEntrance_h) + db BANK(FuchsiaGym_h) + db BANK(FuchsiaMeetingRoom_h) + db BANK(SeafoamIslands2_h) + db BANK(SeafoamIslands3_h) + db BANK(SeafoamIslands4_h) + db BANK(SeafoamIslands5_h) + db BANK(VermilionHouse2_h) + db BANK(FuchsiaHouse3_h) + db BANK(Mansion1_h) + db BANK(CinnabarGym_h) + db BANK(Lab1_h) + db BANK(Lab2_h) + db BANK(Lab3_h) + db BANK(Lab4_h) + db BANK(CinnabarPokecenter_h) + db BANK(CinnabarMart_h) + db BANK(CinnabarMart_h) + db BANK(IndigoPlateauLobby_h) + db BANK(CopycatsHouse1F_h) + db BANK(CopycatsHouse2F_h) + db BANK(FightingDojo_h) + db BANK(SaffronGym_h) + db BANK(SaffronHouse1_h) + db BANK(SaffronMart_h) + db BANK(SilphCo1_h) + db BANK(SaffronPokecenter_h) + db BANK(SaffronHouse2_h) + db BANK(Route15Gate_h) + db BANK(Route15GateUpstairs_h) + db BANK(Route16Gate_h) + db BANK(Route16GateUpstairs_h) + db BANK(Route16House_h) + db BANK(Route12House_h) + db BANK(Route18Gate_h) + db BANK(Route18GateUpstairs_h) + db BANK(SeafoamIslands1_h) + db BANK(Route22Gate_h) + db BANK(VictoryRoad2_h) + db BANK(Route12GateUpstairs_h) + db BANK(VermilionHouse3_h) + db BANK(DiglettsCave_h) + db BANK(VictoryRoad3_h) + db BANK(RocketHideout1_h) + db BANK(RocketHideout2_h) + db BANK(RocketHideout3_h) + db BANK(RocketHideout4_h) + db BANK(RocketHideoutElevator_h) + db $01 + db $01 + db $01 + db BANK(SilphCo2_h) + db BANK(SilphCo3_h) + db BANK(SilphCo4_h) + db BANK(SilphCo5_h) + db BANK(SilphCo6_h) + db BANK(SilphCo7_h) + db BANK(SilphCo8_h) + db BANK(Mansion2_h) + db BANK(Mansion3_h) + db BANK(Mansion4_h) + db BANK(SafariZoneEast_h) + db BANK(SafariZoneNorth_h) + db BANK(SafariZoneWest_h) + db BANK(SafariZoneCenter_h) + db BANK(SafariZoneRestHouse1_h) + db BANK(SafariZoneSecretHouse_h) + db BANK(SafariZoneRestHouse2_h) + db BANK(SafariZoneRestHouse3_h) + db BANK(SafariZoneRestHouse4_h) + db BANK(UnknownDungeon2_h) + db BANK(UnknownDungeon3_h) + db BANK(UnknownDungeon1_h) + db BANK(NameRater_h) + db BANK(CeruleanHouse2_h) + db $01 + db BANK(RockTunnel2_h) + db BANK(SilphCo9_h) + db BANK(SilphCo10_h) + db BANK(SilphCo11_h) + db BANK(SilphCoElevator_h) + db $11 + db $11 + db BANK(BattleCenterM_h) + db BANK(TradeCenterM_h) + db $11 + db $11 + db $11 + db $11 + db BANK(Lorelei_h) + db BANK(Bruno_h) + db BANK(Agatha_h) + db BANK(BeachHouse_h) diff --git a/engine/bank3f/data/map_header_pointers.asm b/engine/bank3f/data/map_header_pointers.asm new file mode 100644 index 00000000..5431727e --- /dev/null +++ b/engine/bank3f/data/map_header_pointers.asm @@ -0,0 +1,251 @@ +; see also MapHeaderBanks +MapHeaderPointers:: ; fc1f2 (3f:41f2) + dw PalletTown_h + dw ViridianCity_h + dw PewterCity_h + dw CeruleanCity_h + dw LavenderTown_h + dw VermilionCity_h + dw CeladonCity_h + dw FuchsiaCity_h + dw CinnabarIsland_h + dw IndigoPlateau_h + dw SaffronCity_h + dw SaffronCity_h + dw Route1_h + dw Route2_h + dw Route3_h + dw Route4_h + dw Route5_h + dw Route6_h + dw Route7_h + dw Route8_h + dw Route9_h + dw Route10_h + dw Route11_h + dw Route12_h + dw Route13_h + dw Route14_h + dw Route15_h + dw Route16_h + dw Route17_h + dw Route18_h + dw Route19_h + dw Route20_h + dw Route21_h + dw Route22_h + dw Route23_h + dw Route24_h + dw Route25_h + dw RedsHouse1F_h + dw RedsHouse2F_h + dw BluesHouse_h + dw OaksLab_h ;id=40 + dw ViridianPokecenter_h + dw ViridianMart_h + dw School_h + dw ViridianHouse_h + dw ViridianGym_h + dw DiglettsCaveRoute2_h + dw ViridianForestExit_h + dw Route2House_h + dw Route2Gate_h + dw ViridianForestEntrance_h ;id=50 + dw ViridianForest_h + dw Museum1F_h + dw Museum2F_h + dw PewterGym_h + dw PewterHouse1_h + dw PewterMart_h + dw PewterHouse2_h + dw PewterPokecenter_h + dw MtMoon1_h + dw MtMoon2_h ;id=60 + dw MtMoon3_h + dw CeruleanHouseTrashed_h + dw CeruleanHouse1_h + dw CeruleanPokecenter_h + dw CeruleanGym_h + dw BikeShop_h + dw CeruleanMart_h + dw MtMoonPokecenter_h + dw CeruleanHouseTrashed_h ; copy + dw Route5Gate_h + dw UndergroundPathEntranceRoute5_h + dw DayCareM_h + dw Route6Gate_h + dw UndergroundPathEntranceRoute6_h + dw UndergroundPathEntranceRoute6_h ; unused + dw Route7Gate_h + dw UndergroundPathEntranceRoute7_h + dw UndergroundPathEntranceRoute7Copy_h + dw Route8Gate_h + dw UndergroundPathEntranceRoute8_h ;id=80 + dw RockTunnelPokecenter_h + dw RockTunnel1_h + dw PowerPlant_h + dw Route11Gate_h + dw DiglettsCaveEntranceRoute11_h + dw Route11GateUpstairs_h + dw Route12Gate_h + dw BillsHouse_h + dw VermilionPokecenter_h + dw FanClub_h ;id=90 + dw VermilionMart_h + dw VermilionGym_h + dw VermilionHouse1_h + dw VermilionDock_h + dw SSAnne1_h + dw SSAnne2_h + dw SSAnne3_h + dw SSAnne4_h + dw SSAnne5_h + dw SSAnne6_h ;id=100 + dw SSAnne7_h + dw SSAnne8_h + dw SSAnne9_h + dw SSAnne10_h + dw Lance_h ; unused + dw Lance_h ; unused + dw Lance_h ; unused + dw VictoryRoad1_h + dw Lance_h ; unused + dw Lance_h ; unused ;id=110 + dw Lance_h ; unused + dw Lance_h ; unused + dw Lance_h + dw Lance_h ; unused + dw Lance_h ; unused + dw Lance_h ; unused + dw Lance_h ; unused + dw HallofFameRoom_h + dw UndergroundPathNS_h + dw Gary_h ;id=120 + dw UndergroundPathWE_h + dw CeladonMart1_h + dw CeladonMart2_h + dw CeladonMart3_h + dw CeladonMart4_h + dw CeladonMartRoof_h + dw CeladonMartElevator_h + dw CeladonMansion1_h + dw CeladonMansion2_h + dw CeladonMansion3_h ;id=130 + dw CeladonMansion4_h + dw CeladonMansion5_h + dw CeladonPokecenter_h + dw CeladonGym_h + dw CeladonGameCorner_h + dw CeladonMart5_h + dw CeladonPrizeRoom_h + dw CeladonDiner_h + dw CeladonHouse_h + dw CeladonHotel_h ;id=140 + dw LavenderPokecenter_h + dw PokemonTower1_h + dw PokemonTower2_h + dw PokemonTower3_h + dw PokemonTower4_h + dw PokemonTower5_h + dw PokemonTower6_h + dw PokemonTower7_h + dw LavenderHouse1_h + dw LavenderMart_h ;id=150 + dw LavenderHouse2_h + dw FuchsiaMart_h + dw FuchsiaHouse1_h + dw FuchsiaPokecenter_h + dw FuchsiaHouse2_h + dw SafariZoneEntrance_h + dw FuchsiaGym_h + dw FuchsiaMeetingRoom_h + dw SeafoamIslands2_h + dw SeafoamIslands3_h ;id=160 + dw SeafoamIslands4_h + dw SeafoamIslands5_h + dw VermilionHouse2_h + dw FuchsiaHouse3_h + dw Mansion1_h + dw CinnabarGym_h + dw Lab1_h + dw Lab2_h + dw Lab3_h + dw Lab4_h ;id=170 + dw CinnabarPokecenter_h + dw CinnabarMart_h + dw CinnabarMart_h ; unused + dw IndigoPlateauLobby_h + dw CopycatsHouse1F_h + dw CopycatsHouse2F_h + dw FightingDojo_h + dw SaffronGym_h + dw SaffronHouse1_h + dw SaffronMart_h ;id=180 + dw SilphCo1_h + dw SaffronPokecenter_h + dw SaffronHouse2_h + dw Route15Gate_h + dw Route15GateUpstairs_h + dw Route16Gate_h + dw Route16GateUpstairs_h + dw Route16House_h + dw Route12House_h + dw Route18Gate_h ;id=190 + dw Route18GateUpstairs_h + dw SeafoamIslands1_h + dw Route22Gate_h + dw VictoryRoad2_h + dw Route12GateUpstairs_h + dw VermilionHouse3_h + dw DiglettsCave_h + dw VictoryRoad3_h + dw RocketHideout1_h + dw RocketHideout2_h ;200 + dw RocketHideout3_h + dw RocketHideout4_h + dw RocketHideoutElevator_h + dw RocketHideoutElevator_h ; unused + dw RocketHideoutElevator_h ; unused + dw RocketHideoutElevator_h ; unused + dw SilphCo2_h + dw SilphCo3_h + dw SilphCo4_h + dw SilphCo5_h ;210 + dw SilphCo6_h + dw SilphCo7_h + dw SilphCo8_h + dw Mansion2_h + dw Mansion3_h + dw Mansion4_h + dw SafariZoneEast_h + dw SafariZoneNorth_h + dw SafariZoneWest_h + dw SafariZoneCenter_h ;220 + dw SafariZoneRestHouse1_h + dw SafariZoneSecretHouse_h + dw SafariZoneRestHouse2_h + dw SafariZoneRestHouse3_h + dw SafariZoneRestHouse4_h + dw UnknownDungeon2_h + dw UnknownDungeon3_h + dw UnknownDungeon1_h + dw NameRater_h + dw CeruleanHouse2_h + dw Route16Gate_h ; unused + dw RockTunnel2_h + dw SilphCo9_h + dw SilphCo10_h + dw SilphCo11_h + dw SilphCoElevator_h + dw SilphCo2_h ; unused + dw SilphCo2_h ; unused + dw BattleCenterM_h + dw TradeCenterM_h + dw SilphCo2_h ; unused + dw SilphCo2_h ; unused + dw SilphCo2_h ; unused + dw SilphCo2_h ; unused + dw Lorelei_h + dw Bruno_h + dw Agatha_h ;247 + dw BeachHouse_h diff --git a/engine/bank3f/data/map_songs.asm b/engine/bank3f/data/map_songs.asm new file mode 100644 index 00000000..4a84aebb --- /dev/null +++ b/engine/bank3f/data/map_songs.asm @@ -0,0 +1,252 @@ +MapSongBanks: ; fc000 (3f:4000) + db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ;PALLET_TOWN + db MUSIC_CITIES1, BANK(Music_Cities1) ; VIRIDIAN_CITY + db MUSIC_CITIES1, BANK(Music_Cities1) ; PEWTER_CITY + db MUSIC_CITIES2, BANK(Music_Cities2) ; CERULEAN_CITY + db MUSIC_LAVENDER, BANK(Music_Lavender) ; LAVENDER_TOWN + db MUSIC_VERMILION, BANK(Music_Vermilion) ; VERMILION_CITY + db MUSIC_CELADON, BANK(Music_Celadon) ; CELADON_CITY + db MUSIC_CITIES2, BANK(Music_Cities2) ; FUCHSIA_CITY + db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; CINNABAR_ISLAND + db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; INDIGO_PLATEAU + db MUSIC_CITIES1, BANK(Music_Cities1) ; SAFFRON_CITY + db MUSIC_CITIES1, BANK(Music_Cities1) ; unused + db MUSIC_ROUTES1, BANK(Music_Routes1) ; ROUTE_1 + db MUSIC_ROUTES1, BANK(Music_Routes1) ; ROUTE_2 + db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_3 + db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_4 + db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_5 + db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_6 + db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_7 + db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_8 + db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_9 + db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_10 + db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_11 + db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_12 + db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_13 + db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_14 + db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_15 + db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_16 + db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_17 + db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_18 + db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_19 + db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_20 + db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_21 + db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_22 + db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; ROUTE_23 + db MUSIC_ROUTES2, BANK(Music_Routes2) ; ROUTE_24 + db MUSIC_ROUTES2, BANK(Music_Routes2) ; ROUTE_25 + db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; RedsHouse1F + db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; RedsHouse2F + db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; BluesHouse + db MUSIC_OAKS_LAB, BANK(Music_OaksLab) ; OaksLab + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; ViridianPokecenter + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; ViridianMart + db MUSIC_CITIES1, BANK(Music_Cities1) ; School + db MUSIC_CITIES1, BANK(Music_Cities1) ; ViridianHouse + db MUSIC_GYM, BANK(Music_Gym) ; ViridianGym + db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; DiglettsCaveRoute2 + db MUSIC_CITIES1, BANK(Music_Cities1) ; ViridianForestExit + db MUSIC_CITIES1, BANK(Music_Cities1) ; Route2House + db MUSIC_CITIES1, BANK(Music_Cities1) ; Route2Gate + db MUSIC_CITIES1, BANK(Music_Cities1) ; ViridianForestEntrance + db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; ViridianForest + db MUSIC_CITIES1, BANK(Music_Cities1) ; Museum1F + db MUSIC_CITIES1, BANK(Music_Cities1) ; Museum2F + db MUSIC_GYM, BANK(Music_Gym) ; PewterGym + db MUSIC_CITIES1, BANK(Music_Cities1) ; PewterHouse1 + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; PewterMart + db MUSIC_CITIES1, BANK(Music_Cities1) ; PewterHouse2 + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; PewterPokecenter + db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; MtMoon1 + db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; MtMoon2 + db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; MtMoon3 + db MUSIC_CITIES2, BANK(Music_Cities2) ; CeruleanHouseTrashed + db MUSIC_CITIES2, BANK(Music_Cities2) ; CeruleanHouse1 + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeruleanPokecenter + db MUSIC_GYM, BANK(Music_Gym) ; CeruleanGym + db MUSIC_CITIES2, BANK(Music_Cities2) ; BikeShop + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeruleanMart + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; MtMoonPokecenter + db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; CeruleanHouseTrashed + db MUSIC_CITIES1, BANK(Music_Cities1) ; Route5Gate + db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundTunnelEntranceRoute5 + db MUSIC_CITIES1, BANK(Music_Cities1) ; DayCareM + db MUSIC_CITIES1, BANK(Music_Cities1) ; Route6Gate + db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundTunnelEntranceRoute6 + db MUSIC_VERMILION, BANK(Music_Vermilion) ; FREEZE + db MUSIC_CITIES1, BANK(Music_Cities1) ; Route7Gate + db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundPathEntranceRoute7 + db MUSIC_CELADON, BANK(Music_Celadon) ;FREEZE + db MUSIC_CITIES1, BANK(Music_Cities1) ; Route8Gate + db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundPathEntranceRoute8 + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; RockTunnelPokecenter + db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; RockTunnel1 + db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; PowerPlant + db MUSIC_VERMILION, BANK(Music_Vermilion) ; Route11Gate + db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; DiglettsCaveEntranceRoute11 + db MUSIC_VERMILION, BANK(Music_Vermilion) ; Route11GateUpstairs + db MUSIC_CITIES1, BANK(Music_Cities1) ; Route12Gate + db MUSIC_CITIES2, BANK(Music_Cities2) ; BillsHouse + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; VermilionPokecenter + db MUSIC_VERMILION, BANK(Music_Vermilion) ; FanClub + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; VermilionMart + db MUSIC_GYM, BANK(Music_Gym) ; VermilionGym + db MUSIC_VERMILION, BANK(Music_Vermilion) ; VermilionHouse1 + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; VermilionDock + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne1 + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne2 + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne3 + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne4 + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne5 + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne6 + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne7 + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne8 + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne9 + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne10 + db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ;unused + db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ;unused + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused + db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; VictoryRoad1 + db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ;unused + db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ;unused + db MUSIC_SILPH_CO, BANK(Music_SilphCo) ;unused + db MUSIC_SILPH_CO, BANK(Music_SilphCo) ;unused + db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; Lance + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused + db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; HallofFameRoom + db MUSIC_ROUTES1, BANK(Music_Routes1) ; UndergroundPathNS + db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; Gary + db MUSIC_ROUTES1, BANK(Music_Routes1) ; UndergroundPathWE + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart1 + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart2 + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart3 + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart4 + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMartRoof + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMartElevator + db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion1 + db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion2 + db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion3 + db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion4 + db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion5 + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonPokecenter + db MUSIC_GYM, BANK(Music_Gym) ; CeladonGym + db MUSIC_GAME_CORNER, BANK(Music_GameCorner) ; CeladonGameCorner + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart5 + db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonPrizeRoom + db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonDiner + db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonHouse + db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonHotel + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; LavenderPokecenter + db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower1 + db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower2 + db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower3 + db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower4 + db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower5 + db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower6 + db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower7 + db MUSIC_LAVENDER, BANK(Music_Lavender) ; LavenderHouse1 + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; LavenderMart + db MUSIC_LAVENDER, BANK(Music_Lavender) ; LavenderHouse2 + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; FuchsiaMart + db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaHouse1 + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; FuchsiaPokecenter + db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaHouse2 + db MUSIC_CITIES2, BANK(Music_Cities2) ; SafariZoneEntrance + db MUSIC_GYM, BANK(Music_Gym) ; FuchsiaGym + db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaMeetingRoom + db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands2 + db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands3 + db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands4 + db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands5 + db MUSIC_CITIES2, BANK(Music_Cities2) ; VermilionHouse2 + db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaHouse3 + db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion1 + db MUSIC_GYM, BANK(Music_Gym) ; CinnabarGym + db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab1 + db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab2 + db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab3 + db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab4 + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CinnabarPokecenter + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CinnabarMart + db MUSIC_CINNABAR, BANK(Music_Cinnabar) + db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; IndigoPlateauLobby + db MUSIC_CITIES1, BANK(Music_Cities1) ; CopycatsHouse1F + db MUSIC_CITIES1, BANK(Music_Cities1) ; CopycatsHouse2F + db MUSIC_CITIES1, BANK(Music_Cities1) ; FightingDojo + db MUSIC_GYM, BANK(Music_Gym) ; SaffronGym + db MUSIC_CITIES1, BANK(Music_Cities1) ; SaffronHouse1 + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; SaffronMart + db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo1 + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; SaffronPokecenter + db MUSIC_CITIES1, BANK(Music_Cities1) ; SaffronHouse2 + db MUSIC_CITIES1, BANK(Music_Cities1) ; Route15Gate + db MUSIC_CITIES1, BANK(Music_Cities1) ; Route15GateUpstairs + db MUSIC_CITIES1, BANK(Music_Cities1) ; Route16Gate + db MUSIC_CITIES1, BANK(Music_Cities1) ; Route16GateUpstairs + db MUSIC_CELADON, BANK(Music_Celadon) ; Route16House + db MUSIC_CELADON, BANK(Music_Celadon) ; Route12House + db MUSIC_CITIES1, BANK(Music_Cities1) ; Route18Gate + db MUSIC_CITIES1, BANK(Music_Cities1) ; Route18GateUpstairs + db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands1 + db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; Route22Gate + db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; VictoryRoad2 + db MUSIC_CITIES1, BANK(Music_Cities1) ; Route12GateUpstairs + db MUSIC_VERMILION, BANK(Music_Vermilion) ; VermilionHouse3 + db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; DiglettsCave + db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; VictoryRoad3 + db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout1 + db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout2 + db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout3 + db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout4 + db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideoutElevator + db MUSIC_DUNGEON1, BANK(Music_Dungeon1) + db MUSIC_DUNGEON1, BANK(Music_Dungeon1) + db MUSIC_DUNGEON1, BANK(Music_Dungeon1) + db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo2 + db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo3 + db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo4 + db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo5 + db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo6 + db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo7 + db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo8 + db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion2 + db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion3 + db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion4 + db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneEast + db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneNorth + db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneWest + db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneCenter + db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse1 + db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneSecretHouse + db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse2 + db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse3 + db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse4 + db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UnknownDungeon2 + db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UnknownDungeon3 + db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UnknownDungeon1 + db MUSIC_CITIES2, BANK(Music_Cities2) ; NameRater + db MUSIC_CITIES1, BANK(Music_Cities1) ; CeruleanHouse2 + db MUSIC_CINNABAR, BANK(Music_Cinnabar) + db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; RockTunnel2 + db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo9 + db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo10 + db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo11 + db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCoElevator + db MUSIC_SILPH_CO, BANK(Music_SilphCo) + db MUSIC_SILPH_CO, BANK(Music_SilphCo) + db MUSIC_CELADON, BANK(Music_Celadon) ; BattleCenterM + db MUSIC_CELADON, BANK(Music_Celadon) ; TradeCenterM + db MUSIC_SILPH_CO, BANK(Music_SilphCo) + db MUSIC_SILPH_CO, BANK(Music_SilphCo) + db MUSIC_SILPH_CO, BANK(Music_SilphCo) + db MUSIC_SILPH_CO, BANK(Music_SilphCo) + db MUSIC_GYM, BANK(Music_Gym) ; Lorelei + db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; Bruno + db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; Agatha +IF DEF(_OPTION_BEACH_HOUSE) + db MUSIC_ROUTES3, BANK(Music_Routes3) ; BeachHouse +ENDC diff --git a/engine/bank3f/main.asm b/engine/bank3f/main.asm new file mode 100644 index 00000000..38aa9878 --- /dev/null +++ b/engine/bank3f/main.asm @@ -0,0 +1,217 @@ +INCLUDE "engine/bank3f/data/map_songs.asm" +INCLUDE "engine/bank3f/data/map_header_pointers.asm" +INCLUDE "engine/bank3f/data/map_header_banks.asm" + +Func_fc4dd:: ; fc4dd (3f:44dd) +; possibly to test if pika should be out? + ld a,[wd430] + bit 5,a + jr nz,.asm_fc4f8 ; 3f:44f8 + ld a,[wd430] + bit 7,a + jr nz,.asm_fc4f8 + call Func_fcdb8 + jr nc,.asm_fc4f8 + ld a,[wWalkBikeSurfState] + and a + jr nz,.asm_fc4f8 + scf + ret +.asm_fc4f8 + and a + ret + +Func_fc4fa:: ; fc4fa (3f:44fa) + ld hl,wd430 + bit 4,[hl] + res 4,[hl] + jr nz,.asm_fc515 + call Func_1542 + call Func_fc523 + ld a,$ff + ld [wSpriteStateData1 + $f2],a + call Func_fcb84 + call Func_fc5bc + ret + +.asm_fc515 + call Func_fc53f + xor a + ld [wd431],a + ld a,[wSpriteStateData1 + $9] + ld [wSpriteStateData1 + $f9],a + ret + +Func_fc523:: ; fc523 (3f:4523) + ld hl,wSpriteStateData1 + $f0 + call Func_fc52c + ld hl,wSpriteStateData2 + $f0 +Func_fc52c:: ; fc52c (3f:4523) + ld bc,$10 + xor a + call FillMemory + ret + +Func_fc534:: ; fc534 (3f:4534) + call Func_fc53f + call Func_fc5bc + xor a + ld [wd431],a + ret + +Func_fc53f:: ; fc53f (3f:453f) + ld bc,wSpriteStateData1 + $10 + ld a,[W_YCOORD] + add $4 + ld e,a + ld a,[W_XCOORD] + add $4 + ld d,a + ld a,[wd431] + and a + jr z,.asm_fc5aa + cp $1 + jr z,.asm_fc59e + cp $2 + jr z,.asm_fc584 + cp $3 + jr z,.asm_fc5aa + cp $4 + jr z,.asm_fc5a4 + cp $5 + jr z,.asm_fc5a7 + cp $6 + jr z,.asm_fc5a1 + cp $7 + jr z,.asm_fc572 + jr .asm_fc59e + +.asm_fc572 + ld a,[wSpriteStateData1 + $9] + and a ; SPRITE_FACING_DOWN + jr z,.asm_fc5a4 + cp SPRITE_FACING_UP + jr z,.asm_fc5a7 + cp SPRITE_FACING_LEFT + jr z,.asm_fc5a1 + cp SPRITE_FACING_RIGHT + jr z,.asm_fc59e +.asm_fc584 + ld a,[wSpriteStateData1 + $9] + and a + jr nz,.asm_fc58d + dec e + jr .asm_fc5aa +.asm_fc58d + cp SPRITE_FACING_UP + jr nz,.asm_fc594 + inc e + jr .asm_fc5aa +.asm_fc594 + cp SPRITE_FACING_LEFT + jr nz,.asm_fc59b + inc d + jr .asm_fc5aa +.asm_fc59b + dec d + jr .asm_fc5aa +.asm_fc59e + inc d + jr .asm_fc5aa +.asm_fc5a1 + dec d + jr .asm_fc5aa +.asm_fc5a4 + inc e + jr .asm_fc5aa +.asm_fc5a7 + dec e + jr .asm_fc5aa ; useless jr +.asm_fc5aa + ld hl,$104 + add hl,bc + ld [hl],e + inc hl + ld [hl],d + inc hl +Func_fc4b2:: ; fc4b2 (3f:44b2) + ld [hl],$fe + push hl + ld hl,wd472 + set 5,[hl] + pop hl + ret + +Func_fc5bc:: ; fc5bc (3f:45bc) + ld a,$49 + ld [wSpriteStateData1 + $f0],a + ld a,$ff + ld [wSpriteStateData1 + $f2],a + ld a,[wd431] + and a + jr z,.asm_fc5e4 + cp $1 + jr z,.asm_fc5e4 + cp $3 + jr z,.asm_fc5eb + cp $4 + jr z,.asm_fc5e4 + cp $6 + jr z,.asm_fc5e4 + cp $7 + jr z,.asm_fc5f1 + call Func_fc4b2 + ret + +.asm_fc5e4 + ld a,[wSpriteStateData1 + $9] + ld [wSpriteStateData1 + $f9],a + ret +.asm_fc5eb + ld a,$0 + ld [wSpriteStateData1 + $f9],a + ret +.asm_fc5f1 + ld a,[wSpriteStateData1 + $9] + xor $4 + ld [wSpriteStateData1 + $f9],a + ret + +Func_fc5fa:: ; fc5fa (3f:45fa) + ld a,[W_CURMAP] + cp OAKS_LAB + jr z,.asm_fc63d + cp ROUTE_22_GATE + jr z,.asm_fc62d + cp MT_MOON_2 + jr z,.asm_fc635 + cp ROCK_TUNNEL_1 + jr z,.asm_fc645 + ld a,[W_CURMAP] + ld hl,Pointer_fc46b + call Func_1568 ; similar to IsInArray, but not the same + jr c,.asm_fc639 + ld a,[W_CURMAP] + ld hl,Pointer_fc653 + call Func_1568 + jr nc,.asm_fc641 + ld a,[wSpriteStateData1 + $9] + and a + jr nz,.asm_fc641 + ld a,$3 + jr .asm_fc647 + +.asm_fc62d + ld a,[wSpriteStateData1 + $9] + and a + jr z,.asm_fc645 + jr .asm_fc641 +.asm_fc635 + +Func_fc65b:: ; fc65b (3f:465b) + +Func_fc69a:: ; fc69a (3f:469a) + +Func_fcc08:: ; fcc08 (3f:4c08) + +Func_fcf0c:: ; fcf0c (3f:4f0c) diff --git a/home.asm b/home.asm index f66a098a..8a182831 100644 --- a/home.asm +++ b/home.asm @@ -165,7 +165,7 @@ Joypad:: ; 01b9 ReadJoypad:: ; 01c8 (0:01c8) homecall_jump ReadJoypad_ -INCLUDE "data/map_header_pointers.asm" +;INCLUDE "data/map_header_pointers.asm" INCLUDE "home/overworld.asm" diff --git a/home/copy2.asm b/home/copy2.asm index 318ed882..ad82260a 100644 --- a/home/copy2.asm +++ b/home/copy2.asm @@ -14,11 +14,11 @@ FarCopyDataDouble:: ; 15d4 (0:15d4) ld e,a ld a,b and a - jr z,.8bitcopyamount + jr z,.eightbitcopyamount ld a,c and a ; multiple of $100 jr z, .expandloop ; if so, do not increment b because the first instance of dec c results in underflow -.8bitcopyamount +.eightbitcopyamount inc b .expandloop ld a,[de] @@ -134,13 +134,13 @@ FillMemory:: ; 166e (0:166e) push af ld a,b and a - jr z, .8bitcopyamount + jr z, .eightbitcopyamount ld a,c and a - jr z, .mulitpleof$100 -.8bitcopyamount + jr z, .mulitpleof0x100 +.eightbitcopyamount inc b -.multipleof$100 +.mulitpleof0x100 pop af .loop ld [hli],a diff --git a/home/overworld.asm b/home/overworld.asm index b3008903..a0d52843 100644 --- a/home/overworld.asm +++ b/home/overworld.asm @@ -292,7 +292,7 @@ OverworldLoopLessDelay:: ; 0245 (0:0245) ld c,$0a call DelayFrames jp EnterMap -;.allPokemonFainted +.allPokemonFainted ; ld a,$ff ; ld [W_ISINBATTLE],a ; call RunMapScript @@ -638,7 +638,7 @@ CheckMapConnections:: ; 05db (0:05db) ld [wCurrentTileBlockMapViewPointer + 1],a .loadNewMap ; 06ce (0:06ce) ; load the connected map that was entered - ld hl,[wd430] + ld hl,wd430 set 4,[hl] ld a,$2 ld [wd431],a diff --git a/macros.asm b/macros.asm index 1a7aae56..a241672b 100644 --- a/macros.asm +++ b/macros.asm @@ -75,6 +75,7 @@ callsb: MACRO ld a, BANK(\1) call BankswitchCommon call \1 + ENDM callba: MACRO ld b, BANK(\1) diff --git a/main.asm b/main.asm index 96b22a64..b1e295e1 100755 --- a/main.asm +++ b/main.asm @@ -19,7 +19,7 @@ SECTION "bank1",ROMX,BANK[$1] INCLUDE "data/facing.asm" -ResetStatusAndHalveMoneyOnBlackout:: +;ResetStatusAndHalveMoneyOnBlackout:: ; Reset player status on blackout. xor a ld [wBattleResult], a @@ -2032,9 +2032,9 @@ SECTION "bank3",ROMX,BANK[$3] INCLUDE "engine/joypad.asm" -INCLUDE "data/map_songs.asm" +;INCLUDE "data/map_songs.asm" -INCLUDE "data/map_header_banks.asm" +;INCLUDE "data/map_header_banks.asm" ClearVariablesAfterLoadingMapData: ; c335 (3:4335) ld a, $90 @@ -4858,7 +4858,7 @@ INCLUDE "data/mapHeaders/fuchsiacity.asm" INCLUDE "data/mapObjects/fuchsiacity.asm" FuchsiaCityBlocks: INCBIN "maps/fuchsiacity.blk" -INCLUDE "engine/play_time.asm" +INCLUDE "home/play_time.asm" INCLUDE "scripts/pallettown.asm" INCLUDE "scripts/viridiancity.asm" @@ -6671,14 +6671,14 @@ INCLUDE "engine/items/tm_prices.asm" SECTION "bank3c",ROMX,BANK[$3C] -INCLUDE "yellow/bank3c/main.asm" +INCLUDE "engine/bank3c/main.asm" SECTION "bank3d",ROMX,BANK[$3D] -INCLUDE "yellow/bank3d/random.asm" +INCLUDE "engine/bank3d/random.asm" SECTION "bank3e",ROMX,BANK[$3E] SECTION "bank3f",ROMX,BANK[$3F] -INCLUDE "yellow/bank3f/main.asm" \ No newline at end of file +INCLUDE "engine/bank3f/main.asm" \ No newline at end of file diff --git a/wram.asm b/wram.asm index f498297a..9ceb454a 100755 --- a/wram.asm +++ b/wram.asm @@ -1634,13 +1634,19 @@ wDestinationWarpID:: ; d42f wd430:: ds 1 ; d430 wd431:: ds 1 ; d431 - ds 3 + ds 2 +wd434:: ds 1 wd435:: ds 1 wd436:: ds 1 - ds 60 - + ds 19 + +wd44a:: ds 1 +wd44b:: ds 1 + + ds 39 + wd472:: ds 1 wd473:: ds 1 diff --git a/yellow/audio.asm b/yellow/audio.asm new file mode 100755 index 00000000..e94c7db5 --- /dev/null +++ b/yellow/audio.asm @@ -0,0 +1,2 @@ +INCLUDE "yellow.asm" +INCLUDE "audio.asm" diff --git a/yellow/bank3c/main.asm b/yellow/bank3c/main.asm deleted file mode 100644 index c05f46f5..00000000 --- a/yellow/bank3c/main.asm +++ /dev/null @@ -1,116 +0,0 @@ -INCLUDE "yellow/bank3c/overworld.asm" - -ResetStatusAndHalveMoneyOnBlackout:: ; f0274 (3c:4274) -; Reset player status on blackout. - xor a - ld [wd435],a - xor a ; gamefreak copypasting functions (double xor a) - ld [wBattleResult], a - ld [wWalkBikeSurfState], a - ld [W_ISINBATTLE], a - ld [wMapPalOffset], a - ld [wNPCMovementScriptFunctionNum], a - ld [hJoyHeld], a - ld [wNPCMovementScriptPointerTableNum], a - ld [wFlags_0xcd60], a - - ld [$ff9f], a - ld [$ff9f + 1], a - ld [$ff9f + 2], a - call HasEnoughMoney - jr c, .lostmoney ; never happens - - ; Halve the player's money. - ld a, [wPlayerMoney] - ld [$ff9f], a - ld a, [wPlayerMoney + 1] - ld [$ff9f + 1], a - ld a, [wPlayerMoney + 2] - ld [$ff9f + 2], a - xor a - ld [$ffa2], a - ld [$ffa3], a - ld a, 2 - ld [$ffa4], a - predef DivideBCDPredef3 - ld a, [$ffa2] - ld [wPlayerMoney], a - ld a, [$ffa2 + 1] - ld [wPlayerMoney + 1], a - ld a, [$ffa2 + 2] - ld [wPlayerMoney + 2], a - -.lostmoney - ld hl, wd732 - set 2, [hl] - res 3, [hl] - set 6, [hl] - ld a, %11111111 - ld [wJoyIgnore], a - predef_jump HealParty - -Func_f02da:: ; f02da (3c:42da) - ld a,[W_CURMAP] - cp VERMILION_GYM ; ??? new thing about verm gym? - jr z,.asm_f02ee - ld c,a - ld hl,Pointer_f02fa -.asm_f02e5 - ld a,[hli] - cp c - jr z,.asm_f02f4 - cp a,$ff - jr nz,.asm_f02e5 - ret -.asm_f02ee - ld hl,wd126 - set 6,[hl] - ret -.asm_f02f4 - ld hl,wd126 - set 5,[hl] - ret - -Pointer_f02fa:: ; f02fa (3c:42fa) - db $cf,$d0,$d1,$d2,$d3,$d4 - db $d5,$e9,$ea,$eb,$d6,$d7 - db $d8,$a5,$a6,$87,$c7,$ca - db $c6,$6c,$c2,$71,$f5,$f6 - db $f7,$ff - -BeachHouse_GFX:: ; f0314 (3c:4314) - INCBIN "gfx/tilesets/beachhouse.2bpp" - -BeachHouse_Block:: ; f0914 (3c:4914) - INCBIN "gfx/blocksets/beachhouse.bst" - -Func_f0a55:: ; f0a55 (3c:4a55) - ld hl,Pointer_f0a76 ; 3c:4a76 -.loop - ld a,[hli] - cp a,$ff - ret z - ld b,a - ld a,[W_CURMAP] - cp b - jr z,.asm_f0a68 - inc hl - inc hl - inc hl - jr .loop - -.asm_f0a68 - ld a,[hli] - ld c,a - ld b,$0 - ld a,[hli] - ld h,[hl] - ld l,a - ld de,W_MISSABLEOBJECTLIST - call CopyData - ret - -Pointer_f0a76:: ; f0a76 (3c:4a76) - db $27,$07,$7b,$4a,$ff - db $01,$ec,$02,$ed,$03,$ee,$ff - diff --git a/yellow/bank3c/overworld.asm b/yellow/bank3c/overworld.asm deleted file mode 100644 index 778244d6..00000000 --- a/yellow/bank3c/overworld.asm +++ /dev/null @@ -1,242 +0,0 @@ -_AdvancePlayerSprite:: ; f010c (3c:410c) - ld a,[wSpriteStateData1 + 3] ; delta Y - ld b,a - ld a,[wSpriteStateData1 + 5] ; delta X - ld c,a - ld hl,wWalkCounter ; walking animation counter - dec [hl] - jr nz,.afterUpdateMapCoords -; if it's the end of the animation, update the player's map coordinates - ld a,[W_YCOORD] - add b - ld [W_YCOORD],a - ld a,[W_XCOORD] - add c - ld [W_XCOORD],a -.afterUpdateMapCoords - ld a,[wWalkCounter] ; walking animation counter - cp a,$07 - jp nz,.scrollBackgroundAndSprites -; if this is the first iteration of the animation - ld a,c - cp a,$01 - jr nz,.checkIfMovingWest -; moving east - ld a,[wMapViewVRAMPointer] - ld e,a - and a,$e0 - ld d,a - ld a,e - add a,$02 - and a,$1f - or d - ld [wMapViewVRAMPointer],a - jr .adjustXCoordWithinBlock -.checkIfMovingWest - cp a,$ff - jr nz,.checkIfMovingSouth -; moving west - ld a,[wMapViewVRAMPointer] - ld e,a - and a,$e0 - ld d,a - ld a,e - sub a,$02 - and a,$1f - or d - ld [wMapViewVRAMPointer],a - jr .adjustXCoordWithinBlock -.checkIfMovingSouth - ld a,b - cp a,$01 - jr nz,.checkIfMovingNorth -; moving south - ld a,[wMapViewVRAMPointer] - add a,$40 - ld [wMapViewVRAMPointer],a - jr nc,.adjustXCoordWithinBlock - ld a,[wMapViewVRAMPointer + 1] - inc a - and a,$03 - or a,$98 - ld [wMapViewVRAMPointer + 1],a - jr .adjustXCoordWithinBlock -.checkIfMovingNorth - cp a,$ff - jr nz,.adjustXCoordWithinBlock -; moving north - ld a,[wMapViewVRAMPointer] - sub a,$40 - ld [wMapViewVRAMPointer],a - jr nc,.adjustXCoordWithinBlock - ld a,[wMapViewVRAMPointer + 1] - dec a - and a,$03 - or a,$98 - ld [wMapViewVRAMPointer + 1],a -.adjustXCoordWithinBlock - ld a,c - and a - jr z,.pointlessJump ; mistake? -.pointlessJump - ld hl,W_XBLOCKCOORD - ld a,[hl] - add c - ld [hl],a - cp a,$02 - jr nz,.checkForMoveToWestBlock -; moved into the tile block to the east - xor a - ld [hl],a - ld hl,wXOffsetSinceLastSpecialWarp - inc [hl] - ld de,wCurrentTileBlockMapViewPointer - call MoveTileBlockMapPointerEast - jr .updateMapView -.checkForMoveToWestBlock - cp a,$ff - jr nz,.adjustYCoordWithinBlock -; moved into the tile block to the west - ld a,$01 - ld [hl],a - ld hl,wXOffsetSinceLastSpecialWarp - dec [hl] - ld de,wCurrentTileBlockMapViewPointer - call MoveTileBlockMapPointerWest - jr .updateMapView -.adjustYCoordWithinBlock - ld hl,W_YBLOCKCOORD - ld a,[hl] - add b - ld [hl],a - cp a,$02 - jr nz,.checkForMoveToNorthBlock -; moved into the tile block to the south - xor a - ld [hl],a - ld hl,wYOffsetSinceLastSpecialWarp - inc [hl] - ld de,wCurrentTileBlockMapViewPointer - ld a,[W_CURMAPWIDTH] - call MoveTileBlockMapPointerSouth - jr .updateMapView -.checkForMoveToNorthBlock - cp a,$ff - jr nz,.updateMapView -; moved into the tile block to the north - ld a,$01 - ld [hl],a - ld hl,wYOffsetSinceLastSpecialWarp - dec [hl] - ld de,wCurrentTileBlockMapViewPointer - ld a,[W_CURMAPWIDTH] - call MoveTileBlockMapPointerNorth -.updateMapView - call LoadCurrentMapView - ld a,[wSpriteStateData1 + 3] ; delta Y - cp a,$01 - jr nz,.checkIfMovingNorth2 -; if moving south - call ScheduleSouthRowRedraw - jr .scrollBackgroundAndSprites -.checkIfMovingNorth2 - cp a,$ff - jr nz,.checkIfMovingEast2 -; if moving north - call ScheduleNorthRowRedraw - jr .scrollBackgroundAndSprites -.checkIfMovingEast2 - ld a,[wSpriteStateData1 + 5] ; delta X - cp a,$01 - jr nz,.checkIfMovingWest2 -; if moving east - call ScheduleEastColumnRedraw - jr .scrollBackgroundAndSprites -.checkIfMovingWest2 - cp a,$ff - jr nz,.scrollBackgroundAndSprites -; if moving west - call ScheduleWestColumnRedraw -.scrollBackgroundAndSprites - ld a,[wSpriteStateData1 + 3] ; delta Y - ld b,a - ld a,[wSpriteStateData1 + 5] ; delta X - ld c,a - sla b - sla c - ld a,[hSCY] - add b - ld [hSCY],a ; update background scroll Y - ld a,[hSCX] - add c - ld [hSCX],a ; update background scroll X -; shift all the sprites in the direction opposite of the player's motion -; so that the player appears to move relative to them - ld hl,wSpriteStateData1 + $14 - ld a,[W_NUMSPRITES] ; number of sprites - and a ; are there any sprites? - jr z,.done - ld e,a -.spriteShiftLoop - ld a,[hl] - sub b - ld [hli],a - inc l - ld a,[hl] - sub c - ld [hl],a - ld a,$0e - add l - ld l,a - dec e - jr nz,.spriteShiftLoop -.done - ret - -MoveTileBlockMapPointerEast:: ; 0e65 (0:0e65) - ld a,[de] - add a,$01 - ld [de],a - ret nc - inc de - ld a,[de] - inc a - ld [de],a - ret - -MoveTileBlockMapPointerWest:: ; 0e6f (0:0e6f) - ld a,[de] - sub a,$01 - ld [de],a - ret nc - inc de - ld a,[de] - dec a - ld [de],a - ret - -MoveTileBlockMapPointerSouth:: ; 0e79 (0:0e79) - add a,$06 - ld b,a - ld a,[de] - add b - ld [de],a - ret nc - inc de - ld a,[de] - inc a - ld [de],a - ret - -MoveTileBlockMapPointerNorth:: ; 0e85 (0:0e85) - add a,$06 - ld b,a - ld a,[de] - sub b - ld [de],a - ret nc - inc de - ld a,[de] - dec a - ld [de],a - ret \ No newline at end of file diff --git a/yellow/bank3d/random.asm b/yellow/bank3d/random.asm deleted file mode 100644 index b7fb0edd..00000000 --- a/yellow/bank3d/random.asm +++ /dev/null @@ -1,15 +0,0 @@ -SECTION "bank3d",ROMX[$67DC],BANK[$3D] - -Random_:: -; Generate a random 16-bit value. - ld a, [rDIV] - ld b, a - ld a, [hRandomAdd] - adc b - ld [hRandomAdd], a - ld a, [rDIV] - ld b, a - ld a, [hRandomSub] - sbc b - ld [hRandomSub], a - ret diff --git a/yellow/bank3f/data/map_header_banks.asm b/yellow/bank3f/data/map_header_banks.asm deleted file mode 100644 index 94a13510..00000000 --- a/yellow/bank3f/data/map_header_banks.asm +++ /dev/null @@ -1,251 +0,0 @@ -; see also MapHeaderPointers -MapHeaderBanks:: ; fc3e4 (3f:43e4) - db BANK(PalletTown_h) ;PALLET_TOWN - db BANK(ViridianCity_h) ; VIRIDIAN_CITY - db BANK(PewterCity_h) ; PEWTER_CITY - db BANK(CeruleanCity_h) ; CERULEAN_CITY - db BANK(LavenderTown_h) ; LAVENDER_TOWN - db BANK(VermilionCity_h) ; VERMILION_CITY - db BANK(CeladonCity_h) ; CELADON_CITY - db BANK(FuchsiaCity_h) ; FUCHSIA_CITY - db BANK(CinnabarIsland_h) ; CINNABAR_ISLAND - db BANK(IndigoPlateau_h) ; INDIGO_PLATEAU - db BANK(SaffronCity_h) ; SAFFRON_CITY - db $1 ; unused - db BANK(Route1_h) ; ROUTE_1 - db BANK(Route2_h) ; ROUTE_2 - db BANK(Route3_h) ; ROUTE_3 - db BANK(Route4_h) ; ROUTE_4 - db BANK(Route5_h) ; ROUTE_5 - db BANK(Route6_h) ; ROUTE_6 - db BANK(Route7_h) ; ROUTE_7 - db BANK(Route8_h) ; ROUTE_8 - db BANK(Route9_h) ; ROUTE_9 - db BANK(Route10_h) ; ROUTE_10 - db BANK(Route11_h) ; ROUTE_11 - db BANK(Route12_h) ; ROUTE_12 - db BANK(Route13_h) ; ROUTE_13 - db BANK(Route14_h) ; ROUTE_14 - db BANK(Route15_h) ; ROUTE_15 - db BANK(Route16_h) ; ROUTE_16 - db BANK(Route17_h) ; ROUTE_17 - db BANK(Route18_h) ; ROUTE_18 - db BANK(Route19_h) ; ROUTE_19 - db BANK(Route20_h) ; ROUTE_20 - db BANK(Route21_h) ; ROUTE_21 - db BANK(Route22_h) ; ROUTE_22 - db BANK(Route23_h) ; ROUTE_23 - db BANK(Route24_h) ; ROUTE_24 - db BANK(Route25_h) ; ROUTE_25 - db BANK(RedsHouse1F_h) - db BANK(RedsHouse2F_h) - db BANK(BluesHouse_h) - db BANK(OaksLab_h) - db BANK(ViridianPokecenter_h) - db BANK(ViridianMart_h) - db BANK(School_h) - db BANK(ViridianHouse_h) - db BANK(ViridianGym_h) - db BANK(DiglettsCaveRoute2_h) - db BANK(ViridianForestExit_h) - db BANK(Route2House_h) - db BANK(Route2Gate_h) - db BANK(ViridianForestEntrance_h) - db BANK(ViridianForest_h) - db BANK(Museum1F_h) - db BANK(Museum2F_h) - db BANK(PewterGym_h) - db BANK(PewterHouse1_h) - db BANK(PewterMart_h) - db BANK(PewterHouse2_h) - db BANK(PewterPokecenter_h) - db BANK(MtMoon1_h) - db BANK(MtMoon2_h) - db BANK(MtMoon3_h) - db BANK(CeruleanHouseTrashed_h) - db BANK(CeruleanHouse1_h) - db BANK(CeruleanPokecenter_h) - db BANK(CeruleanGym_h) - db BANK(BikeShop_h) - db BANK(CeruleanMart_h) - db BANK(MtMoonPokecenter_h) - db BANK(CeruleanHouseTrashed_h) - db BANK(Route5Gate_h) - db BANK(UndergroundPathEntranceRoute5_h) - db BANK(DayCareM_h) - db BANK(Route6Gate_h) - db BANK(UndergroundPathEntranceRoute6_h) - db BANK(UndergroundPathEntranceRoute6_h) ;FREEZE - db BANK(Route7Gate_h) - db BANK(UndergroundPathEntranceRoute7_h) - db BANK(UndergroundPathEntranceRoute7Copy_h) ;FREEZE - db BANK(Route8Gate_h) - db BANK(UndergroundPathEntranceRoute8_h) - db BANK(RockTunnelPokecenter_h) - db BANK(RockTunnel1_h) - db BANK(PowerPlant_h) - db BANK(Route11Gate_h) - db BANK(DiglettsCaveEntranceRoute11_h) - db BANK(Route11GateUpstairs_h) - db BANK(Route12Gate_h) - db BANK(BillsHouse_h) - db BANK(VermilionPokecenter_h) - db BANK(FanClub_h) - db BANK(VermilionMart_h) - db BANK(VermilionGym_h) - db BANK(VermilionHouse1_h) - db BANK(VermilionDock_h) - db BANK(SSAnne1_h) - db BANK(SSAnne2_h) - db BANK(SSAnne3_h) - db BANK(SSAnne4_h) - db BANK(SSAnne5_h) - db BANK(SSAnne6_h) - db BANK(SSAnne7_h) - db BANK(SSAnne8_h) - db BANK(SSAnne9_h) - db BANK(SSAnne10_h) - db $1D ;unused - db $1D ;unused - db $1D ;unused - db BANK(VictoryRoad1_h) - db $1D ;unused - db $1D ;unused - db $1D ;unused - db $1D ;unused - db BANK(Lance_h) - db $1D ;unused - db $1D ;unused - db $1D ;unused - db $1D ;unused - db BANK(HallofFameRoom_h) - db BANK(UndergroundPathNS_h) - db BANK(Gary_h) - db BANK(UndergroundPathWE_h) - db BANK(CeladonMart1_h) - db BANK(CeladonMart2_h) - db BANK(CeladonMart3_h) - db BANK(CeladonMart4_h) - db BANK(CeladonMartRoof_h) - db BANK(CeladonMartElevator_h) - db BANK(CeladonMansion1_h) - db BANK(CeladonMansion2_h) - db BANK(CeladonMansion3_h) - db BANK(CeladonMansion4_h) - db BANK(CeladonMansion5_h) - db BANK(CeladonPokecenter_h) - db BANK(CeladonGym_h) - db BANK(CeladonGameCorner_h) - db BANK(CeladonMart5_h) - db BANK(CeladonPrizeRoom_h) - db BANK(CeladonDiner_h) - db BANK(CeladonHouse_h) - db BANK(CeladonHotel_h) - db BANK(LavenderPokecenter_h) - db BANK(PokemonTower1_h) - db BANK(PokemonTower2_h) - db BANK(PokemonTower3_h) - db BANK(PokemonTower4_h) - db BANK(PokemonTower5_h) - db BANK(PokemonTower6_h) - db BANK(PokemonTower7_h) - db BANK(LavenderHouse1_h) - db BANK(LavenderMart_h) - db BANK(LavenderHouse2_h) - db BANK(FuchsiaMart_h) - db BANK(FuchsiaHouse1_h) - db BANK(FuchsiaPokecenter_h) - db BANK(FuchsiaHouse2_h) - db BANK(SafariZoneEntrance_h) - db BANK(FuchsiaGym_h) - db BANK(FuchsiaMeetingRoom_h) - db BANK(SeafoamIslands2_h) - db BANK(SeafoamIslands3_h) - db BANK(SeafoamIslands4_h) - db BANK(SeafoamIslands5_h) - db BANK(VermilionHouse2_h) - db BANK(FuchsiaHouse3_h) - db BANK(Mansion1_h) - db BANK(CinnabarGym_h) - db BANK(Lab1_h) - db BANK(Lab2_h) - db BANK(Lab3_h) - db BANK(Lab4_h) - db BANK(CinnabarPokecenter_h) - db BANK(CinnabarMart_h) - db BANK(CinnabarMart_h) - db BANK(IndigoPlateauLobby_h) - db BANK(CopycatsHouse1F_h) - db BANK(CopycatsHouse2F_h) - db BANK(FightingDojo_h) - db BANK(SaffronGym_h) - db BANK(SaffronHouse1_h) - db BANK(SaffronMart_h) - db BANK(SilphCo1_h) - db BANK(SaffronPokecenter_h) - db BANK(SaffronHouse2_h) - db BANK(Route15Gate_h) - db BANK(Route15GateUpstairs_h) - db BANK(Route16Gate_h) - db BANK(Route16GateUpstairs_h) - db BANK(Route16House_h) - db BANK(Route12House_h) - db BANK(Route18Gate_h) - db BANK(Route18GateUpstairs_h) - db BANK(SeafoamIslands1_h) - db BANK(Route22Gate_h) - db BANK(VictoryRoad2_h) - db BANK(Route12GateUpstairs_h) - db BANK(VermilionHouse3_h) - db BANK(DiglettsCave_h) - db BANK(VictoryRoad3_h) - db BANK(RocketHideout1_h) - db BANK(RocketHideout2_h) - db BANK(RocketHideout3_h) - db BANK(RocketHideout4_h) - db BANK(RocketHideoutElevator_h) - db $01 - db $01 - db $01 - db BANK(SilphCo2_h) - db BANK(SilphCo3_h) - db BANK(SilphCo4_h) - db BANK(SilphCo5_h) - db BANK(SilphCo6_h) - db BANK(SilphCo7_h) - db BANK(SilphCo8_h) - db BANK(Mansion2_h) - db BANK(Mansion3_h) - db BANK(Mansion4_h) - db BANK(SafariZoneEast_h) - db BANK(SafariZoneNorth_h) - db BANK(SafariZoneWest_h) - db BANK(SafariZoneCenter_h) - db BANK(SafariZoneRestHouse1_h) - db BANK(SafariZoneSecretHouse_h) - db BANK(SafariZoneRestHouse2_h) - db BANK(SafariZoneRestHouse3_h) - db BANK(SafariZoneRestHouse4_h) - db BANK(UnknownDungeon2_h) - db BANK(UnknownDungeon3_h) - db BANK(UnknownDungeon1_h) - db BANK(NameRater_h) - db BANK(CeruleanHouse2_h) - db $01 - db BANK(RockTunnel2_h) - db BANK(SilphCo9_h) - db BANK(SilphCo10_h) - db BANK(SilphCo11_h) - db BANK(SilphCoElevator_h) - db $11 - db $11 - db BANK(BattleCenterM_h) - db BANK(TradeCenterM_h) - db $11 - db $11 - db $11 - db $11 - db BANK(Lorelei_h) - db BANK(Bruno_h) - db BANK(Agatha_h) - db BANK(BeachHouse_h) diff --git a/yellow/bank3f/data/map_header_pointers.asm b/yellow/bank3f/data/map_header_pointers.asm deleted file mode 100644 index 5431727e..00000000 --- a/yellow/bank3f/data/map_header_pointers.asm +++ /dev/null @@ -1,251 +0,0 @@ -; see also MapHeaderBanks -MapHeaderPointers:: ; fc1f2 (3f:41f2) - dw PalletTown_h - dw ViridianCity_h - dw PewterCity_h - dw CeruleanCity_h - dw LavenderTown_h - dw VermilionCity_h - dw CeladonCity_h - dw FuchsiaCity_h - dw CinnabarIsland_h - dw IndigoPlateau_h - dw SaffronCity_h - dw SaffronCity_h - dw Route1_h - dw Route2_h - dw Route3_h - dw Route4_h - dw Route5_h - dw Route6_h - dw Route7_h - dw Route8_h - dw Route9_h - dw Route10_h - dw Route11_h - dw Route12_h - dw Route13_h - dw Route14_h - dw Route15_h - dw Route16_h - dw Route17_h - dw Route18_h - dw Route19_h - dw Route20_h - dw Route21_h - dw Route22_h - dw Route23_h - dw Route24_h - dw Route25_h - dw RedsHouse1F_h - dw RedsHouse2F_h - dw BluesHouse_h - dw OaksLab_h ;id=40 - dw ViridianPokecenter_h - dw ViridianMart_h - dw School_h - dw ViridianHouse_h - dw ViridianGym_h - dw DiglettsCaveRoute2_h - dw ViridianForestExit_h - dw Route2House_h - dw Route2Gate_h - dw ViridianForestEntrance_h ;id=50 - dw ViridianForest_h - dw Museum1F_h - dw Museum2F_h - dw PewterGym_h - dw PewterHouse1_h - dw PewterMart_h - dw PewterHouse2_h - dw PewterPokecenter_h - dw MtMoon1_h - dw MtMoon2_h ;id=60 - dw MtMoon3_h - dw CeruleanHouseTrashed_h - dw CeruleanHouse1_h - dw CeruleanPokecenter_h - dw CeruleanGym_h - dw BikeShop_h - dw CeruleanMart_h - dw MtMoonPokecenter_h - dw CeruleanHouseTrashed_h ; copy - dw Route5Gate_h - dw UndergroundPathEntranceRoute5_h - dw DayCareM_h - dw Route6Gate_h - dw UndergroundPathEntranceRoute6_h - dw UndergroundPathEntranceRoute6_h ; unused - dw Route7Gate_h - dw UndergroundPathEntranceRoute7_h - dw UndergroundPathEntranceRoute7Copy_h - dw Route8Gate_h - dw UndergroundPathEntranceRoute8_h ;id=80 - dw RockTunnelPokecenter_h - dw RockTunnel1_h - dw PowerPlant_h - dw Route11Gate_h - dw DiglettsCaveEntranceRoute11_h - dw Route11GateUpstairs_h - dw Route12Gate_h - dw BillsHouse_h - dw VermilionPokecenter_h - dw FanClub_h ;id=90 - dw VermilionMart_h - dw VermilionGym_h - dw VermilionHouse1_h - dw VermilionDock_h - dw SSAnne1_h - dw SSAnne2_h - dw SSAnne3_h - dw SSAnne4_h - dw SSAnne5_h - dw SSAnne6_h ;id=100 - dw SSAnne7_h - dw SSAnne8_h - dw SSAnne9_h - dw SSAnne10_h - dw Lance_h ; unused - dw Lance_h ; unused - dw Lance_h ; unused - dw VictoryRoad1_h - dw Lance_h ; unused - dw Lance_h ; unused ;id=110 - dw Lance_h ; unused - dw Lance_h ; unused - dw Lance_h - dw Lance_h ; unused - dw Lance_h ; unused - dw Lance_h ; unused - dw Lance_h ; unused - dw HallofFameRoom_h - dw UndergroundPathNS_h - dw Gary_h ;id=120 - dw UndergroundPathWE_h - dw CeladonMart1_h - dw CeladonMart2_h - dw CeladonMart3_h - dw CeladonMart4_h - dw CeladonMartRoof_h - dw CeladonMartElevator_h - dw CeladonMansion1_h - dw CeladonMansion2_h - dw CeladonMansion3_h ;id=130 - dw CeladonMansion4_h - dw CeladonMansion5_h - dw CeladonPokecenter_h - dw CeladonGym_h - dw CeladonGameCorner_h - dw CeladonMart5_h - dw CeladonPrizeRoom_h - dw CeladonDiner_h - dw CeladonHouse_h - dw CeladonHotel_h ;id=140 - dw LavenderPokecenter_h - dw PokemonTower1_h - dw PokemonTower2_h - dw PokemonTower3_h - dw PokemonTower4_h - dw PokemonTower5_h - dw PokemonTower6_h - dw PokemonTower7_h - dw LavenderHouse1_h - dw LavenderMart_h ;id=150 - dw LavenderHouse2_h - dw FuchsiaMart_h - dw FuchsiaHouse1_h - dw FuchsiaPokecenter_h - dw FuchsiaHouse2_h - dw SafariZoneEntrance_h - dw FuchsiaGym_h - dw FuchsiaMeetingRoom_h - dw SeafoamIslands2_h - dw SeafoamIslands3_h ;id=160 - dw SeafoamIslands4_h - dw SeafoamIslands5_h - dw VermilionHouse2_h - dw FuchsiaHouse3_h - dw Mansion1_h - dw CinnabarGym_h - dw Lab1_h - dw Lab2_h - dw Lab3_h - dw Lab4_h ;id=170 - dw CinnabarPokecenter_h - dw CinnabarMart_h - dw CinnabarMart_h ; unused - dw IndigoPlateauLobby_h - dw CopycatsHouse1F_h - dw CopycatsHouse2F_h - dw FightingDojo_h - dw SaffronGym_h - dw SaffronHouse1_h - dw SaffronMart_h ;id=180 - dw SilphCo1_h - dw SaffronPokecenter_h - dw SaffronHouse2_h - dw Route15Gate_h - dw Route15GateUpstairs_h - dw Route16Gate_h - dw Route16GateUpstairs_h - dw Route16House_h - dw Route12House_h - dw Route18Gate_h ;id=190 - dw Route18GateUpstairs_h - dw SeafoamIslands1_h - dw Route22Gate_h - dw VictoryRoad2_h - dw Route12GateUpstairs_h - dw VermilionHouse3_h - dw DiglettsCave_h - dw VictoryRoad3_h - dw RocketHideout1_h - dw RocketHideout2_h ;200 - dw RocketHideout3_h - dw RocketHideout4_h - dw RocketHideoutElevator_h - dw RocketHideoutElevator_h ; unused - dw RocketHideoutElevator_h ; unused - dw RocketHideoutElevator_h ; unused - dw SilphCo2_h - dw SilphCo3_h - dw SilphCo4_h - dw SilphCo5_h ;210 - dw SilphCo6_h - dw SilphCo7_h - dw SilphCo8_h - dw Mansion2_h - dw Mansion3_h - dw Mansion4_h - dw SafariZoneEast_h - dw SafariZoneNorth_h - dw SafariZoneWest_h - dw SafariZoneCenter_h ;220 - dw SafariZoneRestHouse1_h - dw SafariZoneSecretHouse_h - dw SafariZoneRestHouse2_h - dw SafariZoneRestHouse3_h - dw SafariZoneRestHouse4_h - dw UnknownDungeon2_h - dw UnknownDungeon3_h - dw UnknownDungeon1_h - dw NameRater_h - dw CeruleanHouse2_h - dw Route16Gate_h ; unused - dw RockTunnel2_h - dw SilphCo9_h - dw SilphCo10_h - dw SilphCo11_h - dw SilphCoElevator_h - dw SilphCo2_h ; unused - dw SilphCo2_h ; unused - dw BattleCenterM_h - dw TradeCenterM_h - dw SilphCo2_h ; unused - dw SilphCo2_h ; unused - dw SilphCo2_h ; unused - dw SilphCo2_h ; unused - dw Lorelei_h - dw Bruno_h - dw Agatha_h ;247 - dw BeachHouse_h diff --git a/yellow/bank3f/data/map_songs.asm b/yellow/bank3f/data/map_songs.asm deleted file mode 100644 index 4a84aebb..00000000 --- a/yellow/bank3f/data/map_songs.asm +++ /dev/null @@ -1,252 +0,0 @@ -MapSongBanks: ; fc000 (3f:4000) - db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ;PALLET_TOWN - db MUSIC_CITIES1, BANK(Music_Cities1) ; VIRIDIAN_CITY - db MUSIC_CITIES1, BANK(Music_Cities1) ; PEWTER_CITY - db MUSIC_CITIES2, BANK(Music_Cities2) ; CERULEAN_CITY - db MUSIC_LAVENDER, BANK(Music_Lavender) ; LAVENDER_TOWN - db MUSIC_VERMILION, BANK(Music_Vermilion) ; VERMILION_CITY - db MUSIC_CELADON, BANK(Music_Celadon) ; CELADON_CITY - db MUSIC_CITIES2, BANK(Music_Cities2) ; FUCHSIA_CITY - db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; CINNABAR_ISLAND - db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; INDIGO_PLATEAU - db MUSIC_CITIES1, BANK(Music_Cities1) ; SAFFRON_CITY - db MUSIC_CITIES1, BANK(Music_Cities1) ; unused - db MUSIC_ROUTES1, BANK(Music_Routes1) ; ROUTE_1 - db MUSIC_ROUTES1, BANK(Music_Routes1) ; ROUTE_2 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_3 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_4 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_5 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_6 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_7 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_8 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_9 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_10 - db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_11 - db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_12 - db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_13 - db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_14 - db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_15 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_16 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_17 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_18 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_19 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_20 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_21 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_22 - db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; ROUTE_23 - db MUSIC_ROUTES2, BANK(Music_Routes2) ; ROUTE_24 - db MUSIC_ROUTES2, BANK(Music_Routes2) ; ROUTE_25 - db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; RedsHouse1F - db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; RedsHouse2F - db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; BluesHouse - db MUSIC_OAKS_LAB, BANK(Music_OaksLab) ; OaksLab - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; ViridianPokecenter - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; ViridianMart - db MUSIC_CITIES1, BANK(Music_Cities1) ; School - db MUSIC_CITIES1, BANK(Music_Cities1) ; ViridianHouse - db MUSIC_GYM, BANK(Music_Gym) ; ViridianGym - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; DiglettsCaveRoute2 - db MUSIC_CITIES1, BANK(Music_Cities1) ; ViridianForestExit - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route2House - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route2Gate - db MUSIC_CITIES1, BANK(Music_Cities1) ; ViridianForestEntrance - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; ViridianForest - db MUSIC_CITIES1, BANK(Music_Cities1) ; Museum1F - db MUSIC_CITIES1, BANK(Music_Cities1) ; Museum2F - db MUSIC_GYM, BANK(Music_Gym) ; PewterGym - db MUSIC_CITIES1, BANK(Music_Cities1) ; PewterHouse1 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; PewterMart - db MUSIC_CITIES1, BANK(Music_Cities1) ; PewterHouse2 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; PewterPokecenter - db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; MtMoon1 - db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; MtMoon2 - db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; MtMoon3 - db MUSIC_CITIES2, BANK(Music_Cities2) ; CeruleanHouseTrashed - db MUSIC_CITIES2, BANK(Music_Cities2) ; CeruleanHouse1 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeruleanPokecenter - db MUSIC_GYM, BANK(Music_Gym) ; CeruleanGym - db MUSIC_CITIES2, BANK(Music_Cities2) ; BikeShop - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeruleanMart - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; MtMoonPokecenter - db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; CeruleanHouseTrashed - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route5Gate - db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundTunnelEntranceRoute5 - db MUSIC_CITIES1, BANK(Music_Cities1) ; DayCareM - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route6Gate - db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundTunnelEntranceRoute6 - db MUSIC_VERMILION, BANK(Music_Vermilion) ; FREEZE - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route7Gate - db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundPathEntranceRoute7 - db MUSIC_CELADON, BANK(Music_Celadon) ;FREEZE - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route8Gate - db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundPathEntranceRoute8 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; RockTunnelPokecenter - db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; RockTunnel1 - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; PowerPlant - db MUSIC_VERMILION, BANK(Music_Vermilion) ; Route11Gate - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; DiglettsCaveEntranceRoute11 - db MUSIC_VERMILION, BANK(Music_Vermilion) ; Route11GateUpstairs - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route12Gate - db MUSIC_CITIES2, BANK(Music_Cities2) ; BillsHouse - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; VermilionPokecenter - db MUSIC_VERMILION, BANK(Music_Vermilion) ; FanClub - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; VermilionMart - db MUSIC_GYM, BANK(Music_Gym) ; VermilionGym - db MUSIC_VERMILION, BANK(Music_Vermilion) ; VermilionHouse1 - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; VermilionDock - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne1 - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne2 - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne3 - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne4 - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne5 - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne6 - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne7 - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne8 - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne9 - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne10 - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ;unused - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ;unused - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused - db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; VictoryRoad1 - db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ;unused - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ;unused - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ;unused - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ;unused - db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; Lance - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused - db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; HallofFameRoom - db MUSIC_ROUTES1, BANK(Music_Routes1) ; UndergroundPathNS - db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; Gary - db MUSIC_ROUTES1, BANK(Music_Routes1) ; UndergroundPathWE - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart1 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart2 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart3 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart4 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMartRoof - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMartElevator - db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion1 - db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion2 - db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion3 - db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion4 - db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion5 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonPokecenter - db MUSIC_GYM, BANK(Music_Gym) ; CeladonGym - db MUSIC_GAME_CORNER, BANK(Music_GameCorner) ; CeladonGameCorner - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart5 - db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonPrizeRoom - db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonDiner - db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonHouse - db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonHotel - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; LavenderPokecenter - db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower1 - db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower2 - db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower3 - db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower4 - db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower5 - db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower6 - db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower7 - db MUSIC_LAVENDER, BANK(Music_Lavender) ; LavenderHouse1 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; LavenderMart - db MUSIC_LAVENDER, BANK(Music_Lavender) ; LavenderHouse2 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; FuchsiaMart - db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaHouse1 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; FuchsiaPokecenter - db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaHouse2 - db MUSIC_CITIES2, BANK(Music_Cities2) ; SafariZoneEntrance - db MUSIC_GYM, BANK(Music_Gym) ; FuchsiaGym - db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaMeetingRoom - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands2 - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands3 - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands4 - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands5 - db MUSIC_CITIES2, BANK(Music_Cities2) ; VermilionHouse2 - db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaHouse3 - db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion1 - db MUSIC_GYM, BANK(Music_Gym) ; CinnabarGym - db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab1 - db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab2 - db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab3 - db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab4 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CinnabarPokecenter - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CinnabarMart - db MUSIC_CINNABAR, BANK(Music_Cinnabar) - db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; IndigoPlateauLobby - db MUSIC_CITIES1, BANK(Music_Cities1) ; CopycatsHouse1F - db MUSIC_CITIES1, BANK(Music_Cities1) ; CopycatsHouse2F - db MUSIC_CITIES1, BANK(Music_Cities1) ; FightingDojo - db MUSIC_GYM, BANK(Music_Gym) ; SaffronGym - db MUSIC_CITIES1, BANK(Music_Cities1) ; SaffronHouse1 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; SaffronMart - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo1 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; SaffronPokecenter - db MUSIC_CITIES1, BANK(Music_Cities1) ; SaffronHouse2 - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route15Gate - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route15GateUpstairs - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route16Gate - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route16GateUpstairs - db MUSIC_CELADON, BANK(Music_Celadon) ; Route16House - db MUSIC_CELADON, BANK(Music_Celadon) ; Route12House - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route18Gate - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route18GateUpstairs - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands1 - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; Route22Gate - db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; VictoryRoad2 - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route12GateUpstairs - db MUSIC_VERMILION, BANK(Music_Vermilion) ; VermilionHouse3 - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; DiglettsCave - db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; VictoryRoad3 - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout1 - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout2 - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout3 - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout4 - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideoutElevator - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo2 - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo3 - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo4 - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo5 - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo6 - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo7 - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo8 - db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion2 - db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion3 - db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion4 - db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneEast - db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneNorth - db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneWest - db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneCenter - db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse1 - db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneSecretHouse - db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse2 - db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse3 - db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse4 - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UnknownDungeon2 - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UnknownDungeon3 - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UnknownDungeon1 - db MUSIC_CITIES2, BANK(Music_Cities2) ; NameRater - db MUSIC_CITIES1, BANK(Music_Cities1) ; CeruleanHouse2 - db MUSIC_CINNABAR, BANK(Music_Cinnabar) - db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; RockTunnel2 - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo9 - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo10 - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo11 - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCoElevator - db MUSIC_SILPH_CO, BANK(Music_SilphCo) - db MUSIC_SILPH_CO, BANK(Music_SilphCo) - db MUSIC_CELADON, BANK(Music_Celadon) ; BattleCenterM - db MUSIC_CELADON, BANK(Music_Celadon) ; TradeCenterM - db MUSIC_SILPH_CO, BANK(Music_SilphCo) - db MUSIC_SILPH_CO, BANK(Music_SilphCo) - db MUSIC_SILPH_CO, BANK(Music_SilphCo) - db MUSIC_SILPH_CO, BANK(Music_SilphCo) - db MUSIC_GYM, BANK(Music_Gym) ; Lorelei - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; Bruno - db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; Agatha -IF DEF(_OPTION_BEACH_HOUSE) - db MUSIC_ROUTES3, BANK(Music_Routes3) ; BeachHouse -ENDC diff --git a/yellow/bank3f/main.asm b/yellow/bank3f/main.asm deleted file mode 100644 index b51d19b1..00000000 --- a/yellow/bank3f/main.asm +++ /dev/null @@ -1,217 +0,0 @@ -INCLUDE "yellow/bank3f/data/map_songs.asm" -INCLUDE "yellow/bank3f/data/map_header_pointers.asm" -INCLUDE "yellow/bank3f/data/map_header_banks.asm" - -Func_fc4dd:: ; fc4dd (3f:44dd) -; possibly to test if pika should be out? - ld a,[wd430] - bit 5,a - jr nz,.asm_fc4f8 ; 3f:44f8 - ld a,[wd430] - bit 7,a - jr nz,.asm_fc4f8 - call Func_fcdb8 - jr nc,.asm_fc4f8 - ld a,[wWalkBikeSurfState] - and a - jr nz,.asm_fc4f8 - scf - ret -.asm_fc4f8 - and a - ret - -Func_fc5fa:: ; fc5fa (3f:44fa) - ld hl,wd430 - bit 4,[hl] - res 4,[hl] - jr nz,.asm_fc515 - call Func_1542 - call Func_fc523 - ld a,$ff - ld [wSpriteStateData1 + $f2],a - call Func_fcb84 - call Func_fc5bc - ret - -.asm_fc515 - call Func_fc53f - xor a - ld [wd431],a - ld a,[wSpriteStateData1 + $9] - ld [wSpriteStateData1 + $f9],a - ret - -Func_fc523:: ; fc523 (3f:4523) - ld hl,wSpriteStateData1 + $f0 - call Func_fc52c - ld hl,wSpriteStateData2 + $f0 -Func_fc52c:: ; fc52c (3f:4523) - ld bc,$10 - xor a - call FillMemory - ret - -Func_fc534:: ; fc534 (3f:4534) - call Func_fc53f - call Func_fc5bc - xor a - ld [wd431],a - ret - -Func_fc53f:: ; fc53f (3f:453f) - ld bc,wSpriteStateData1 + $10 - ld a,[W_YCOORD] - add $4 - ld e,a - ld a,[W_XCOORD] - add $4 - ld d,a - ld a,[wd431] - and a - jr z,.asm_fc5aa - cp $1 - jr z,.asm_fc59e - cp $2 - jr z,.asm_fc584 - cp $3 - jr z,.asm_fc5aa - cp $4 - jr z,.asm_fc5a4 - cp $5 - jr z,.asm_fc5a7 - cp $6 - jr z,.asm_fc5a1 - cp $7 - jr z,.asm_fc572 - jr .asm_fc59e - -.asm_fc572 - ld a,[wSpriteStateData1 + $9] - and a ; SPRITE_FACING_DOWN - jr z,.asm_fc5a4 - cp SPRITE_FACING_UP - jr z,.asm_fc5a7 - cp SPRITE_FACING_LEFT - jr z,.asm_fc5a1 - cp SPRITE_FACING_RIGHT - jr z,.asm_fc59e -.asm_fc584 - ld a,[wSpriteStateData1 + $9] - and a - jr nz,.asm_fc58d - dec e - jr .asm_fc5aa -.asm_fc58d - cp SPRITE_FACING_UP - jr nz,.asm_fc594 - inc e - jr .asm_fc5aa -.asm_fc594 - cp SPRITE_FACING_LEFT - jr nz,.asm_fc59b - inc d - jr .asm_fc5aa -.asm_fc59b - dec d - jr .asm_fc5aa -.asm_fc59e - inc d - jr .asm_fc5aa -.asm_fc5a1 - dec d - jr .asm_fc5aa -.asm_fc5a4 - inc e - jr .asm_fc5aa -.asm_fc5a7 - dec e - jr .asm_fc5aa ; useless jr -.asm_fc5aa - ld hl,$104 - add hl,bc - ld [hl],e - inc hl - ld [hl],d - inc hl -Func_fc4b2:: ; fc4b2 (3f:44b2) - ld [hl],$fe - push hl - ld hl,wd472 - set 5,[hl] - pop hl - ret - -Func_fc5bc:: ; fc5bc (3f:45bc) - ld a,$49 - ld [wSpriteStateData1 + $f0],a - ld a,$ff - ld [wSpriteStateData1 + $f2],a - ld a,[wd431] - and a - jr z,.asm_fc5e4 - cp $1 - jr z,.asm_fc5e4 - cp $3 - jr z,.asm_fc5eb - cp $4 - jr z,.asm_fc5e4 - cp $6 - jr z,.asm_fc5e4 - cp $7 - jr z,.asm_fc5f1 - call Func_fc4b2 - ret - -.asm_fc5e4 - ld a,[wSpriteStateData1 + $9] - ld [wSpriteStateData1 + $f9],a - ret -.asm_fc5eb - ld a,$0 - ld [wSpriteStateData1 + $f9],a - ret -.asm_fc5f1 - ld a,[wSpriteStateData1 + $9] - xor $4 - ld [wSpriteStateData1 + $f9],a - ret - -Func_fc5fa:: ; fc5fa (3f:45fa) - ld a,[W_CURMAP] - cp OAKS_LAB - jr z,.asm_fc63d - cp ROUTE_22_GATE - jr z,.asm_fc62d - cp MT_MOON_2 - jr z,.asm_fc635 - cp ROCK_TUNNEL_1 - jr z,.asm_fc645 - ld a,[W_CURMAP] - ld hl,Pointer_fc46b - call Func_1568 ; similar to IsInArray, but not the same - jr c,.asm_fc639 - ld a,[W_CURMAP] - ld hl,Pointer_fc653 - call Func_1568 - jr nc,.asm_fc641 - ld a,[wSpriteStateData1 + $9] - and a - jr nz,.asm_fc641 - ld a,$3 - jr .asm_fc647 - -.asm_fc62d - ld a,[wSpriteStateData1 + $9] - and a - jr z,.asm_fc645 - jr .asm_fc641 -.asm_fc635 - -Func_fc65b:: ; fc65b (3f:465b) - -Func_fc69a:: ; fc69a (3f:469a) - -Func_fcc08:: ; fcc08 (3f:4c08) - -Func_fcf0c:: ; fcf0c (3f:4f0c) diff --git a/yellow/main.asm b/yellow/main.asm new file mode 100755 index 00000000..36c88720 --- /dev/null +++ b/yellow/main.asm @@ -0,0 +1,2 @@ +INCLUDE "yellow.asm" +INCLUDE "main.asm" diff --git a/yellow/text.asm b/yellow/text.asm new file mode 100755 index 00000000..a84a633d --- /dev/null +++ b/yellow/text.asm @@ -0,0 +1,2 @@ +INCLUDE "yellow.asm" +INCLUDE "text.asm" diff --git a/yellow/wram.asm b/yellow/wram.asm new file mode 100755 index 00000000..c0b7f781 --- /dev/null +++ b/yellow/wram.asm @@ -0,0 +1,2 @@ +INCLUDE "yellow.asm" +INCLUDE "wram.asm" -- cgit v1.3.1-sl0p