ref: c5527a02ae1423479af567acf7dc38708f50f9b3
parent: 10beeb3c0611b9114a8e5ff6ab0b8c5d7716defe
author: PikalaxALT <PikalaxALT@gmail.com>
date: Tue Nov 3 14:43:47 EST 2015
dbw BANK, addr replaced with dba
--- a/audio/cry_pointers.asm
+++ b/audio/cry_pointers.asm
@@ -1,70 +1,70 @@
; e91b0
- dbw BANK(Cry_00), Cry_00
- dbw BANK(Cry_01), Cry_01
- dbw BANK(Cry_02), Cry_02
- dbw BANK(Cry_03), Cry_03
- dbw BANK(Cry_04), Cry_04
- dbw BANK(Cry_05), Cry_05
- dbw BANK(Cry_06), Cry_06
- dbw BANK(Cry_07), Cry_07
- dbw BANK(Cry_08), Cry_08
- dbw BANK(Cry_09), Cry_09
- dbw BANK(Cry_0A), Cry_0A
- dbw BANK(Cry_0B), Cry_0B
- dbw BANK(Cry_0C), Cry_0C
- dbw BANK(Cry_0D), Cry_0D
- dbw BANK(Cry_0E), Cry_0E
- dbw BANK(Cry_0F), Cry_0F
- dbw BANK(Cry_10), Cry_10
- dbw BANK(Cry_11), Cry_11
- dbw BANK(Cry_12), Cry_12
- dbw BANK(Cry_13), Cry_13
- dbw BANK(Cry_14), Cry_14
- dbw BANK(Cry_15), Cry_15
- dbw BANK(Cry_16), Cry_16
- dbw BANK(Cry_17), Cry_17
- dbw BANK(Cry_18), Cry_18
- dbw BANK(Cry_19), Cry_19
- dbw BANK(Cry_1A), Cry_1A
- dbw BANK(Cry_1B), Cry_1B
- dbw BANK(Cry_1C), Cry_1C
- dbw BANK(Cry_1D), Cry_1D
- dbw BANK(Cry_1E), Cry_1E
- dbw BANK(Cry_1F), Cry_1F
- dbw BANK(Cry_20), Cry_20
- dbw BANK(Cry_21), Cry_21
- dbw BANK(Cry_22), Cry_22
- dbw BANK(Cry_23), Cry_23
- dbw BANK(Cry_24), Cry_24
- dbw BANK(Cry_25), Cry_25
- dbw BANK(Cry_26), Cry_26
- dbw BANK(Cry_27), Cry_27
- dbw BANK(Cry_28), Cry_28
- dbw BANK(Cry_29), Cry_29
- dbw BANK(Cry_2A), Cry_2A
- dbw BANK(Cry_2B), Cry_2B
- dbw BANK(Cry_2C), Cry_2C
- dbw BANK(Cry_2D), Cry_2D
- dbw BANK(Cry_2E), Cry_2E
- dbw BANK(Cry_2F), Cry_2F
- dbw BANK(Cry_30), Cry_30
- dbw BANK(Cry_31), Cry_31
- dbw BANK(Cry_32), Cry_32
- dbw BANK(Cry_33), Cry_33
- dbw BANK(Cry_34), Cry_34
- dbw BANK(Cry_35), Cry_35
- dbw BANK(Cry_36), Cry_36
- dbw BANK(Cry_37), Cry_37
- dbw BANK(Cry_38), Cry_38
- dbw BANK(Cry_39), Cry_39
- dbw BANK(Cry_3A), Cry_3A
- dbw BANK(Cry_3B), Cry_3B
- dbw BANK(Cry_3C), Cry_3C
- dbw BANK(Cry_3D), Cry_3D
- dbw BANK(Cry_3E), Cry_3E
- dbw BANK(Cry_3F), Cry_3F
- dbw BANK(Cry_40), Cry_40
- dbw BANK(Cry_41), Cry_41
- dbw BANK(Cry_42), Cry_42
- dbw BANK(Cry_43), Cry_43
+ dba Cry_00
+ dba Cry_01
+ dba Cry_02
+ dba Cry_03
+ dba Cry_04
+ dba Cry_05
+ dba Cry_06
+ dba Cry_07
+ dba Cry_08
+ dba Cry_09
+ dba Cry_0A
+ dba Cry_0B
+ dba Cry_0C
+ dba Cry_0D
+ dba Cry_0E
+ dba Cry_0F
+ dba Cry_10
+ dba Cry_11
+ dba Cry_12
+ dba Cry_13
+ dba Cry_14
+ dba Cry_15
+ dba Cry_16
+ dba Cry_17
+ dba Cry_18
+ dba Cry_19
+ dba Cry_1A
+ dba Cry_1B
+ dba Cry_1C
+ dba Cry_1D
+ dba Cry_1E
+ dba Cry_1F
+ dba Cry_20
+ dba Cry_21
+ dba Cry_22
+ dba Cry_23
+ dba Cry_24
+ dba Cry_25
+ dba Cry_26
+ dba Cry_27
+ dba Cry_28
+ dba Cry_29
+ dba Cry_2A
+ dba Cry_2B
+ dba Cry_2C
+ dba Cry_2D
+ dba Cry_2E
+ dba Cry_2F
+ dba Cry_30
+ dba Cry_31
+ dba Cry_32
+ dba Cry_33
+ dba Cry_34
+ dba Cry_35
+ dba Cry_36
+ dba Cry_37
+ dba Cry_38
+ dba Cry_39
+ dba Cry_3A
+ dba Cry_3B
+ dba Cry_3C
+ dba Cry_3D
+ dba Cry_3E
+ dba Cry_3F
+ dba Cry_40
+ dba Cry_41
+ dba Cry_42
+ dba Cry_43
; e927c
--- a/audio/music_pointers.asm
+++ b/audio/music_pointers.asm
@@ -9,110 +9,110 @@
; Songs V
; e906e
- dbw BANK(Music_Nothing), Music_Nothing ; 0xe91a3
- dbw BANK(Music_TitleScreen), Music_TitleScreen ; 0xeb808
- dbw BANK(Music_Route1), Music_Route1 ; 0xec000
- dbw BANK(Music_Route3), Music_Route3 ; 0xec2ca
- dbw BANK(Music_Route12), Music_Route12 ; 0xec506
- dbw BANK(Music_MagnetTrain), Music_MagnetTrain ; 0xef5f0
- dbw BANK(Music_KantoGymBattle), Music_KantoGymBattle ; 0xec720
- dbw BANK(Music_KantoTrainerBattle), Music_KantoTrainerBattle ; 0xec9fa
- dbw BANK(Music_KantoWildBattle), Music_KantoWildBattle ; 0xed06d
- dbw BANK(Music_PokemonCenter), Music_PokemonCenter ; 0xed5c6
- dbw BANK(Music_LookHiker), Music_LookHiker ; 0xf7411
- dbw BANK(Music_LookLass), Music_LookLass ; 0xed79b
- dbw BANK(Music_LookOfficer), Music_LookOfficer ; 0xed82d
- dbw BANK(Music_HealPokemon), Music_HealPokemon ; 0xf0697
- dbw BANK(Music_LavenderTown), Music_LavenderTown ; 0xef72f
- dbw BANK(Music_Route2), Music_Route2 ; 0xed8dd
- dbw BANK(Music_MtMoon), Music_MtMoon ; 0xedb29
- dbw BANK(Music_ShowMeAround), Music_ShowMeAround ; 0xedbd8
- dbw BANK(Music_GameCorner), Music_GameCorner ; 0xedd6d
- dbw BANK(Music_Bicycle), Music_Bicycle ; 0xee119
- dbw BANK(Music_HallOfFame), Music_HallOfFame ; 0xf05bf
- dbw BANK(Music_ViridianCity), Music_ViridianCity ; 0xf4000
- dbw BANK(Music_CeladonCity), Music_CeladonCity ; 0xf435b
- dbw BANK(Music_TrainerVictory), Music_TrainerVictory ; 0xebeab
- dbw BANK(Music_WildPokemonVictory), Music_WildPokemonVictory ; 0xf4518
- dbw BANK(Music_GymLeaderVictory), Music_GymLeaderVictory ; 0xf462c
- dbw BANK(Music_MtMoonSquare), Music_MtMoonSquare ; 0xf4815
- dbw BANK(Music_Gym), Music_Gym ; 0xf48ae
- dbw BANK(Music_PalletTown), Music_PalletTown ; 0xf4b0c
- dbw BANK(Music_ProfOaksPokemonTalk), Music_ProfOaksPokemonTalk ; 0xf4c9f
- dbw BANK(Music_ProfOak), Music_ProfOak ; 0xf4dea
- dbw BANK(Music_LookRival), Music_LookRival ; 0xf4f79
- dbw BANK(Music_AfterTheRivalFight), Music_AfterTheRivalFight ; 0xf5127
- dbw BANK(Music_Surf), Music_Surf ; 0xf518a
- dbw BANK(Music_Evolution), Music_Evolution ; 0xf06e1
- dbw BANK(Music_NationalPark), Music_NationalPark ; 0xf54e8
- dbw BANK(Music_Credits), Music_Credits ; 0x1f31c
- dbw BANK(Music_AzaleaTown), Music_AzaleaTown ; 0xf57e8
- dbw BANK(Music_CherrygroveCity), Music_CherrygroveCity ; 0xf5b03
- dbw BANK(Music_LookKimonoGirl), Music_LookKimonoGirl ; 0xf79b8
- dbw BANK(Music_UnionCave), Music_UnionCave ; 0xf5c60
- dbw BANK(Music_JohtoWildBattle), Music_JohtoWildBattle ; 0xf5dc5
- dbw BANK(Music_JohtoTrainerBattle), Music_JohtoTrainerBattle ; 0xf6096
- dbw BANK(Music_Route30), Music_Route30 ; 0xefc01
- dbw BANK(Music_EcruteakCity), Music_EcruteakCity ; 0xef2d0
- dbw BANK(Music_VioletCity), Music_VioletCity ; 0xf0000
- dbw BANK(Music_JohtoGymBattle), Music_JohtoGymBattle ; 0xea50d
- dbw BANK(Music_ChampionBattle), Music_ChampionBattle ; 0xea9c1
- dbw BANK(Music_RivalBattle), Music_RivalBattle ; 0xe974f
- dbw BANK(Music_RocketBattle), Music_RocketBattle ; 0xe9b6f
- dbw BANK(Music_ElmsLab), Music_ElmsLab ; 0xea040
- dbw BANK(Music_DarkCave), Music_DarkCave ; 0xea2be
- dbw BANK(Music_Route29), Music_Route29 ; 0xf0386
- dbw BANK(Music_Route36), Music_Route36 ; 0xe94e9
- dbw BANK(Music_SSAqua), Music_SSAqua ; 0xead99
- dbw BANK(Music_LookYoungster), Music_LookYoungster ; 0xf66c3
- dbw BANK(Music_LookBeauty), Music_LookBeauty ; 0xeee3e
- dbw BANK(Music_LookRocket), Music_LookRocket ; 0xf74a2
- dbw BANK(Music_LookPokemaniac), Music_LookPokemaniac ; 0xebde1
- dbw BANK(Music_LookSage), Music_LookSage ; 0xee35e
- dbw BANK(Music_NewBarkTown), Music_NewBarkTown ; 0xeb2d3
- dbw BANK(Music_GoldenrodCity), Music_GoldenrodCity ; 0xeb453
- dbw BANK(Music_VermilionCity), Music_VermilionCity ; 0xeb676
- dbw BANK(Music_PokemonChannel), Music_PokemonChannel ; 0xee45f
- dbw BANK(Music_PokeFluteChannel), Music_PokeFluteChannel ; 0xf7b13
- dbw BANK(Music_TinTower), Music_TinTower ; 0xf6811
- dbw BANK(Music_SproutTower), Music_SproutTower ; 0xf6974
- dbw BANK(Music_BurnedTower), Music_BurnedTower ; 0xf6a99
- dbw BANK(Music_Lighthouse), Music_Lighthouse ; 0xee569
- dbw BANK(Music_LakeOfRage), Music_LakeOfRage ; 0xee6c5
- dbw BANK(Music_IndigoPlateau), Music_IndigoPlateau ; 0xee852
- dbw BANK(Music_Route37), Music_Route37 ; 0xee94b
- dbw BANK(Music_RocketHideout), Music_RocketHideout ; 0xeeb75
- dbw BANK(Music_DragonsDen), Music_DragonsDen ; 0xeece8
- dbw BANK(Music_JohtoWildBattleNight), Music_JohtoWildBattleNight ; 0xf605c
- dbw BANK(Music_RuinsOfAlphRadio), Music_RuinsOfAlphRadio ; 0xeedcb
- dbw BANK(Music_SuccessfulCapture), Music_SuccessfulCapture ; 0xf4602
- dbw BANK(Music_Route26), Music_Route26 ; 0xeefb2
- dbw BANK(Music_Mom), Music_Mom ; 0xf6bf2
- dbw BANK(Music_VictoryRoad), Music_VictoryRoad ; 0xf6c72
- dbw BANK(Music_PokemonLullaby), Music_PokemonLullaby ; 0xf6d79
- dbw BANK(Music_PokemonMarch), Music_PokemonMarch ; 0xf6e23
- dbw BANK(Music_GoldSilverOpening), Music_GoldSilverOpening ; 0xf7055
- dbw BANK(Music_GoldSilverOpening2), Music_GoldSilverOpening2 ; 0xf7308
- dbw BANK(Music_MainMenu), Music_MainMenu ; 0xf78fd
- dbw BANK(Music_RuinsOfAlphInterior), Music_RuinsOfAlphInterior ; 0xebd9e
- dbw BANK(Music_RocketTheme), Music_RocketTheme ; 0xf766d
- dbw BANK(Music_DancingHall), Music_DancingHall ; 0xef9bc
- dbw BANK(Music_ContestResults), Music_ContestResults ; 0xefb3e
- dbw BANK(Music_BugCatchingContest), Music_BugCatchingContest ; 0xf7c16
- dbw BANK(Music_LakeOfRageRocketRadio), Music_LakeOfRageRocketRadio ; 0xef5b1
- dbw BANK(Music_Printer), Music_Printer ; 0xf07fd
- dbw BANK(Music_PostCredits), Music_PostCredits ; 0xcfd9e
+ dba Music_Nothing ; 0xe91a3
+ dba Music_TitleScreen ; 0xeb808
+ dba Music_Route1 ; 0xec000
+ dba Music_Route3 ; 0xec2ca
+ dba Music_Route12 ; 0xec506
+ dba Music_MagnetTrain ; 0xef5f0
+ dba Music_KantoGymBattle ; 0xec720
+ dba Music_KantoTrainerBattle ; 0xec9fa
+ dba Music_KantoWildBattle ; 0xed06d
+ dba Music_PokemonCenter ; 0xed5c6
+ dba Music_LookHiker ; 0xf7411
+ dba Music_LookLass ; 0xed79b
+ dba Music_LookOfficer ; 0xed82d
+ dba Music_HealPokemon ; 0xf0697
+ dba Music_LavenderTown ; 0xef72f
+ dba Music_Route2 ; 0xed8dd
+ dba Music_MtMoon ; 0xedb29
+ dba Music_ShowMeAround ; 0xedbd8
+ dba Music_GameCorner ; 0xedd6d
+ dba Music_Bicycle ; 0xee119
+ dba Music_HallOfFame ; 0xf05bf
+ dba Music_ViridianCity ; 0xf4000
+ dba Music_CeladonCity ; 0xf435b
+ dba Music_TrainerVictory ; 0xebeab
+ dba Music_WildPokemonVictory ; 0xf4518
+ dba Music_GymLeaderVictory ; 0xf462c
+ dba Music_MtMoonSquare ; 0xf4815
+ dba Music_Gym ; 0xf48ae
+ dba Music_PalletTown ; 0xf4b0c
+ dba Music_ProfOaksPokemonTalk ; 0xf4c9f
+ dba Music_ProfOak ; 0xf4dea
+ dba Music_LookRival ; 0xf4f79
+ dba Music_AfterTheRivalFight ; 0xf5127
+ dba Music_Surf ; 0xf518a
+ dba Music_Evolution ; 0xf06e1
+ dba Music_NationalPark ; 0xf54e8
+ dba Music_Credits ; 0x1f31c
+ dba Music_AzaleaTown ; 0xf57e8
+ dba Music_CherrygroveCity ; 0xf5b03
+ dba Music_LookKimonoGirl ; 0xf79b8
+ dba Music_UnionCave ; 0xf5c60
+ dba Music_JohtoWildBattle ; 0xf5dc5
+ dba Music_JohtoTrainerBattle ; 0xf6096
+ dba Music_Route30 ; 0xefc01
+ dba Music_EcruteakCity ; 0xef2d0
+ dba Music_VioletCity ; 0xf0000
+ dba Music_JohtoGymBattle ; 0xea50d
+ dba Music_ChampionBattle ; 0xea9c1
+ dba Music_RivalBattle ; 0xe974f
+ dba Music_RocketBattle ; 0xe9b6f
+ dba Music_ElmsLab ; 0xea040
+ dba Music_DarkCave ; 0xea2be
+ dba Music_Route29 ; 0xf0386
+ dba Music_Route36 ; 0xe94e9
+ dba Music_SSAqua ; 0xead99
+ dba Music_LookYoungster ; 0xf66c3
+ dba Music_LookBeauty ; 0xeee3e
+ dba Music_LookRocket ; 0xf74a2
+ dba Music_LookPokemaniac ; 0xebde1
+ dba Music_LookSage ; 0xee35e
+ dba Music_NewBarkTown ; 0xeb2d3
+ dba Music_GoldenrodCity ; 0xeb453
+ dba Music_VermilionCity ; 0xeb676
+ dba Music_PokemonChannel ; 0xee45f
+ dba Music_PokeFluteChannel ; 0xf7b13
+ dba Music_TinTower ; 0xf6811
+ dba Music_SproutTower ; 0xf6974
+ dba Music_BurnedTower ; 0xf6a99
+ dba Music_Lighthouse ; 0xee569
+ dba Music_LakeOfRage ; 0xee6c5
+ dba Music_IndigoPlateau ; 0xee852
+ dba Music_Route37 ; 0xee94b
+ dba Music_RocketHideout ; 0xeeb75
+ dba Music_DragonsDen ; 0xeece8
+ dba Music_JohtoWildBattleNight ; 0xf605c
+ dba Music_RuinsOfAlphRadio ; 0xeedcb
+ dba Music_SuccessfulCapture ; 0xf4602
+ dba Music_Route26 ; 0xeefb2
+ dba Music_Mom ; 0xf6bf2
+ dba Music_VictoryRoad ; 0xf6c72
+ dba Music_PokemonLullaby ; 0xf6d79
+ dba Music_PokemonMarch ; 0xf6e23
+ dba Music_GoldSilverOpening ; 0xf7055
+ dba Music_GoldSilverOpening2 ; 0xf7308
+ dba Music_MainMenu ; 0xf78fd
+ dba Music_RuinsOfAlphInterior ; 0xebd9e
+ dba Music_RocketTheme ; 0xf766d
+ dba Music_DancingHall ; 0xef9bc
+ dba Music_ContestResults ; 0xefb3e
+ dba Music_BugCatchingContest ; 0xf7c16
+ dba Music_LakeOfRageRocketRadio ; 0xef5b1
+ dba Music_Printer ; 0xf07fd
+ dba Music_PostCredits ; 0xcfd9e
; Crystal adds the following songs:
- dbw BANK(Music_Clair), Music_Clair ; 0x1fa8d
- dbw BANK(Music_MobileAdapterMenu), Music_MobileAdapterMenu ; 0x17801f
- dbw BANK(Music_MobileAdapter), Music_MobileAdapter ; 0x1fc87
- dbw BANK(Music_BuenasPassword), Music_BuenasPassword ; 0x178153
- dbw BANK(Music_LookMysticalMan), Music_LookMysticalMan ; 0x17843b
- dbw BANK(Music_CrystalOpening), Music_CrystalOpening ; 0x1786e8
- dbw BANK(Music_BattleTowerTheme), Music_BattleTowerTheme ; 0x178889
- dbw BANK(Music_SuicuneBattle), Music_SuicuneBattle ; 0x178b81
- dbw BANK(Music_BattleTowerLobby), Music_BattleTowerLobby ; 0x17948b
- dbw BANK(Music_MobileCenter), Music_MobileCenter ; 0x17961d
+ dba Music_Clair ; 0x1fa8d
+ dba Music_MobileAdapterMenu ; 0x17801f
+ dba Music_MobileAdapter ; 0x1fc87
+ dba Music_BuenasPassword ; 0x178153
+ dba Music_LookMysticalMan ; 0x17843b
+ dba Music_CrystalOpening ; 0x1786e8
+ dba Music_BattleTowerTheme ; 0x178889
+ dba Music_SuicuneBattle ; 0x178b81
+ dba Music_BattleTowerLobby ; 0x17948b
+ dba Music_MobileCenter ; 0x17961d
; e91a3
--- a/audio/sfx_pointers.asm
+++ b/audio/sfx_pointers.asm
@@ -1,212 +1,212 @@
; e927c
- dbw BANK(Sfx_DexFanfare5079), Sfx_DexFanfare5079
- dbw BANK(Sfx_Item), Sfx_Item
- dbw BANK(Sfx_CaughtMon), Sfx_CaughtMon
- dbw BANK(Sfx_PokeballsPlacedOnTable), Sfx_PokeballsPlacedOnTable
- dbw BANK(Sfx_Potion), Sfx_Potion
- dbw BANK(Sfx_FullHeal), Sfx_FullHeal
- dbw BANK(Sfx_Menu), Sfx_Menu
- dbw BANK(Sfx_ReadText), Sfx_ReadText
- dbw BANK(Sfx_ReadText2), Sfx_ReadText2
- dbw BANK(Sfx_DexFanfare2049), Sfx_DexFanfare2049
- dbw BANK(Sfx_DexFanfare80109), Sfx_DexFanfare80109
- dbw BANK(Sfx_Poison), Sfx_Poison
- dbw BANK(Sfx_GotSafariBalls), Sfx_GotSafariBalls
- dbw BANK(Sfx_BootPc), Sfx_BootPc
- dbw BANK(Sfx_ShutDownPc), Sfx_ShutDownPc
- dbw BANK(Sfx_ChoosePcOption), Sfx_ChoosePcOption
- dbw BANK(Sfx_EscapeRope), Sfx_EscapeRope
- dbw BANK(Sfx_PushButton), Sfx_PushButton
- dbw BANK(Sfx_SecondPartOfItemfinder), Sfx_SecondPartOfItemfinder
- dbw BANK(Sfx_WarpTo), Sfx_WarpTo
- dbw BANK(Sfx_WarpFrom), Sfx_WarpFrom
- dbw BANK(Sfx_ChangeDexMode), Sfx_ChangeDexMode
- dbw BANK(Sfx_JumpOverLedge), Sfx_JumpOverLedge
- dbw BANK(Sfx_GrassRustle), Sfx_GrassRustle
- dbw BANK(Sfx_Fly), Sfx_Fly
- dbw BANK(Sfx_Wrong), Sfx_Wrong
- dbw BANK(Sfx_Squeak), Sfx_Squeak
- dbw BANK(Sfx_Strength), Sfx_Strength
- dbw BANK(Sfx_Boat), Sfx_Boat
- dbw BANK(Sfx_WallOpen), Sfx_WallOpen
- dbw BANK(Sfx_PlacePuzzlePieceDown), Sfx_PlacePuzzlePieceDown
- dbw BANK(Sfx_EnterDoor), Sfx_EnterDoor
- dbw BANK(Sfx_SwitchPokemon), Sfx_SwitchPokemon
- dbw BANK(Sfx_Tally), Sfx_Tally
- dbw BANK(Sfx_Transaction), Sfx_Transaction
- dbw BANK(Sfx_ExitBuilding), Sfx_ExitBuilding
- dbw BANK(Sfx_Bump), Sfx_Bump
- dbw BANK(Sfx_Save), Sfx_Save
- dbw BANK(Sfx_Pokeflute), Sfx_Pokeflute
- dbw BANK(Sfx_ElevatorEnd), Sfx_ElevatorEnd
- dbw BANK(Sfx_ThrowBall), Sfx_ThrowBall
- dbw BANK(Sfx_BallPoof), Sfx_BallPoof
- dbw BANK(Sfx_Unknown3A), Sfx_Unknown3A
- dbw BANK(Sfx_Run), Sfx_Run
- dbw BANK(Sfx_SlotMachineStart), Sfx_SlotMachineStart
- dbw BANK(Sfx_Fanfare), Sfx_Fanfare
- dbw BANK(Sfx_Peck), Sfx_Peck
- dbw BANK(Sfx_Kinesis), Sfx_Kinesis
- dbw BANK(Sfx_Lick), Sfx_Lick
- dbw BANK(Sfx_Pound), Sfx_Pound
- dbw BANK(Sfx_MovePuzzlePiece), Sfx_MovePuzzlePiece
- dbw BANK(Sfx_CometPunch), Sfx_CometPunch
- dbw BANK(Sfx_MegaPunch), Sfx_MegaPunch
- dbw BANK(Sfx_Scratch), Sfx_Scratch
- dbw BANK(Sfx_Vicegrip), Sfx_Vicegrip
- dbw BANK(Sfx_RazorWind), Sfx_RazorWind
- dbw BANK(Sfx_Cut), Sfx_Cut
- dbw BANK(Sfx_WingAttack), Sfx_WingAttack
- dbw BANK(Sfx_Whirlwind), Sfx_Whirlwind
- dbw BANK(Sfx_Bind), Sfx_Bind
- dbw BANK(Sfx_VineWhip), Sfx_VineWhip
- dbw BANK(Sfx_DoubleKick), Sfx_DoubleKick
- dbw BANK(Sfx_MegaKick), Sfx_MegaKick
- dbw BANK(Sfx_Headbutt), Sfx_Headbutt
- dbw BANK(Sfx_HornAttack), Sfx_HornAttack
- dbw BANK(Sfx_Tackle), Sfx_Tackle
- dbw BANK(Sfx_PoisonSting), Sfx_PoisonSting
- dbw BANK(Sfx_Powder), Sfx_Powder
- dbw BANK(Sfx_Doubleslap), Sfx_Doubleslap
- dbw BANK(Sfx_Bite), Sfx_Bite
- dbw BANK(Sfx_JumpKick), Sfx_JumpKick
- dbw BANK(Sfx_Stomp), Sfx_Stomp
- dbw BANK(Sfx_TailWhip), Sfx_TailWhip
- dbw BANK(Sfx_KarateChop), Sfx_KarateChop
- dbw BANK(Sfx_Submission), Sfx_Submission
- dbw BANK(Sfx_WaterGun), Sfx_WaterGun
- dbw BANK(Sfx_SwordsDance), Sfx_SwordsDance
- dbw BANK(Sfx_Thunder), Sfx_Thunder
- dbw BANK(Sfx_Supersonic), Sfx_Supersonic
- dbw BANK(Sfx_Leer), Sfx_Leer
- dbw BANK(Sfx_Ember), Sfx_Ember
- dbw BANK(Sfx_Bubblebeam), Sfx_Bubblebeam
- dbw BANK(Sfx_HydroPump), Sfx_HydroPump
- dbw BANK(Sfx_Surf), Sfx_Surf
- dbw BANK(Sfx_Psybeam), Sfx_Psybeam
- dbw BANK(Sfx_Charge), Sfx_Charge
- dbw BANK(Sfx_Thundershock), Sfx_Thundershock
- dbw BANK(Sfx_Psychic), Sfx_Psychic
- dbw BANK(Sfx_Screech), Sfx_Screech
- dbw BANK(Sfx_BoneClub), Sfx_BoneClub
- dbw BANK(Sfx_Sharpen), Sfx_Sharpen
- dbw BANK(Sfx_EggBomb), Sfx_EggBomb
- dbw BANK(Sfx_Sing), Sfx_Sing
- dbw BANK(Sfx_HyperBeam), Sfx_HyperBeam
- dbw BANK(Sfx_Shine), Sfx_Shine
- dbw BANK(Sfx_Unknown5F), Sfx_Unknown5F
- dbw BANK(Sfx_Unknown60), Sfx_Unknown60
- dbw BANK(Sfx_Unknown61), Sfx_Unknown61
- dbw BANK(Sfx_Unknown62), Sfx_Unknown62
- dbw BANK(Sfx_Unknown63), Sfx_Unknown63
- dbw BANK(Sfx_Burn), Sfx_Burn
- dbw BANK(Sfx_TitleScreenEntrance), Sfx_TitleScreenEntrance
- dbw BANK(Sfx_Unknown66), Sfx_Unknown66
- dbw BANK(Sfx_GetCoinFromSlots), Sfx_GetCoinFromSlots
- dbw BANK(Sfx_PayDay), Sfx_PayDay
- dbw BANK(Sfx_Metronome), Sfx_Metronome
- dbw BANK(Sfx_Call), Sfx_Call
- dbw BANK(Sfx_HangUp), Sfx_HangUp
- dbw BANK(Sfx_NoSignal), Sfx_NoSignal
- dbw BANK(Sfx_Sandstorm), Sfx_Sandstorm
- dbw BANK(Sfx_Elevator), Sfx_Elevator
- dbw BANK(Sfx_Protect), Sfx_Protect
- dbw BANK(Sfx_Sketch), Sfx_Sketch
- dbw BANK(Sfx_RainDance), Sfx_RainDance
- dbw BANK(Sfx_Aeroblast), Sfx_Aeroblast
- dbw BANK(Sfx_Spark), Sfx_Spark
- dbw BANK(Sfx_Curse), Sfx_Curse
- dbw BANK(Sfx_Rage), Sfx_Rage
- dbw BANK(Sfx_Thief), Sfx_Thief
- dbw BANK(Sfx_Thief2), Sfx_Thief2
- dbw BANK(Sfx_SpiderWeb), Sfx_SpiderWeb
- dbw BANK(Sfx_MindReader), Sfx_MindReader
- dbw BANK(Sfx_Nightmare), Sfx_Nightmare
- dbw BANK(Sfx_Snore), Sfx_Snore
- dbw BANK(Sfx_SweetKiss), Sfx_SweetKiss
- dbw BANK(Sfx_SweetKiss2), Sfx_SweetKiss2
- dbw BANK(Sfx_BellyDrum), Sfx_BellyDrum
- dbw BANK(Sfx_Unknown7F), Sfx_Unknown7F
- dbw BANK(Sfx_SludgeBomb), Sfx_SludgeBomb
- dbw BANK(Sfx_Foresight), Sfx_Foresight
- dbw BANK(Sfx_Spite), Sfx_Spite
- dbw BANK(Sfx_Outrage), Sfx_Outrage
- dbw BANK(Sfx_PerishSong), Sfx_PerishSong
- dbw BANK(Sfx_GigaDrain), Sfx_GigaDrain
- dbw BANK(Sfx_Attract), Sfx_Attract
- dbw BANK(Sfx_Kinesis2), Sfx_Kinesis2
- dbw BANK(Sfx_ZapCannon), Sfx_ZapCannon
- dbw BANK(Sfx_MeanLook), Sfx_MeanLook
- dbw BANK(Sfx_HealBell), Sfx_HealBell
- dbw BANK(Sfx_Return), Sfx_Return
- dbw BANK(Sfx_ExpBar), Sfx_ExpBar
- dbw BANK(Sfx_MilkDrink), Sfx_MilkDrink
- dbw BANK(Sfx_Present), Sfx_Present
- dbw BANK(Sfx_MorningSun), Sfx_MorningSun
- dbw BANK(Sfx_LevelUp), Sfx_LevelUp
- dbw BANK(Sfx_KeyItem), Sfx_KeyItem
- dbw BANK(Sfx_Fanfare2), Sfx_Fanfare2
- dbw BANK(Sfx_RegisterPhoneNumber), Sfx_RegisterPhoneNumber
- dbw BANK(Sfx_3RdPlace), Sfx_3RdPlace
- dbw BANK(Sfx_GetEggFromDaycareMan), Sfx_GetEggFromDaycareMan
- dbw BANK(Sfx_GetEggFromDaycareLady), Sfx_GetEggFromDaycareLady
- dbw BANK(Sfx_MoveDeleted), Sfx_MoveDeleted
- dbw BANK(Sfx_2ndPlace), Sfx_2ndPlace
- dbw BANK(Sfx_1stPlace), Sfx_1stPlace
- dbw BANK(Sfx_ChooseACard), Sfx_ChooseACard
- dbw BANK(Sfx_GetTm), Sfx_GetTm
- dbw BANK(Sfx_GetBadge), Sfx_GetBadge
- dbw BANK(Sfx_QuitSlots), Sfx_QuitSlots
- dbw BANK(Sfx_EggCrack), Sfx_EggCrack
- dbw BANK(Sfx_DexFanfareLessThan20), Sfx_DexFanfareLessThan20
- dbw BANK(Sfx_DexFanfare140169), Sfx_DexFanfare140169
- dbw BANK(Sfx_DexFanfare170199), Sfx_DexFanfare170199
- dbw BANK(Sfx_DexFanfare200229), Sfx_DexFanfare200229
- dbw BANK(Sfx_DexFanfare230Plus), Sfx_DexFanfare230Plus
- dbw BANK(Sfx_Evolved), Sfx_Evolved
- dbw BANK(Sfx_MasterBall), Sfx_MasterBall
- dbw BANK(Sfx_EggHatch), Sfx_EggHatch
- dbw BANK(Sfx_GsIntroCharizardFireball), Sfx_GsIntroCharizardFireball
- dbw BANK(Sfx_GsIntroPokemonAppears), Sfx_GsIntroPokemonAppears
- dbw BANK(Sfx_Flash), Sfx_Flash
- dbw BANK(Sfx_GameFreakLogoGs), Sfx_GameFreakLogoGs
- dbw BANK(Sfx_NotVeryEffective), Sfx_NotVeryEffective
- dbw BANK(Sfx_Damage), Sfx_Damage
- dbw BANK(Sfx_SuperEffective), Sfx_SuperEffective
- dbw BANK(Sfx_BallBounce), Sfx_BallBounce
- dbw BANK(Sfx_Moonlight), Sfx_Moonlight
- dbw BANK(Sfx_Encore), Sfx_Encore
- dbw BANK(Sfx_BeatUp), Sfx_BeatUp
- dbw BANK(Sfx_BatonPass), Sfx_BatonPass
- dbw BANK(Sfx_BallWiggle), Sfx_BallWiggle
- dbw BANK(Sfx_SweetScent), Sfx_SweetScent
- dbw BANK(Sfx_SweetScent2), Sfx_SweetScent2
- dbw BANK(Sfx_HitEndOfExpBar), Sfx_HitEndOfExpBar
- dbw BANK(Sfx_GiveTrademon), Sfx_GiveTrademon
- dbw BANK(Sfx_GetTrademon), Sfx_GetTrademon
- dbw BANK(Sfx_TrainArrived), Sfx_TrainArrived
- dbw BANK(Sfx_StopSlot), Sfx_StopSlot
- dbw BANK(Sfx_2Boops), Sfx_2Boops
- dbw BANK(Sfx_GlassTing), Sfx_GlassTing
- dbw BANK(Sfx_GlassTing2), Sfx_GlassTing2
+ dba Sfx_DexFanfare5079
+ dba Sfx_Item
+ dba Sfx_CaughtMon
+ dba Sfx_PokeballsPlacedOnTable
+ dba Sfx_Potion
+ dba Sfx_FullHeal
+ dba Sfx_Menu
+ dba Sfx_ReadText
+ dba Sfx_ReadText2
+ dba Sfx_DexFanfare2049
+ dba Sfx_DexFanfare80109
+ dba Sfx_Poison
+ dba Sfx_GotSafariBalls
+ dba Sfx_BootPc
+ dba Sfx_ShutDownPc
+ dba Sfx_ChoosePcOption
+ dba Sfx_EscapeRope
+ dba Sfx_PushButton
+ dba Sfx_SecondPartOfItemfinder
+ dba Sfx_WarpTo
+ dba Sfx_WarpFrom
+ dba Sfx_ChangeDexMode
+ dba Sfx_JumpOverLedge
+ dba Sfx_GrassRustle
+ dba Sfx_Fly
+ dba Sfx_Wrong
+ dba Sfx_Squeak
+ dba Sfx_Strength
+ dba Sfx_Boat
+ dba Sfx_WallOpen
+ dba Sfx_PlacePuzzlePieceDown
+ dba Sfx_EnterDoor
+ dba Sfx_SwitchPokemon
+ dba Sfx_Tally
+ dba Sfx_Transaction
+ dba Sfx_ExitBuilding
+ dba Sfx_Bump
+ dba Sfx_Save
+ dba Sfx_Pokeflute
+ dba Sfx_ElevatorEnd
+ dba Sfx_ThrowBall
+ dba Sfx_BallPoof
+ dba Sfx_Unknown3A
+ dba Sfx_Run
+ dba Sfx_SlotMachineStart
+ dba Sfx_Fanfare
+ dba Sfx_Peck
+ dba Sfx_Kinesis
+ dba Sfx_Lick
+ dba Sfx_Pound
+ dba Sfx_MovePuzzlePiece
+ dba Sfx_CometPunch
+ dba Sfx_MegaPunch
+ dba Sfx_Scratch
+ dba Sfx_Vicegrip
+ dba Sfx_RazorWind
+ dba Sfx_Cut
+ dba Sfx_WingAttack
+ dba Sfx_Whirlwind
+ dba Sfx_Bind
+ dba Sfx_VineWhip
+ dba Sfx_DoubleKick
+ dba Sfx_MegaKick
+ dba Sfx_Headbutt
+ dba Sfx_HornAttack
+ dba Sfx_Tackle
+ dba Sfx_PoisonSting
+ dba Sfx_Powder
+ dba Sfx_Doubleslap
+ dba Sfx_Bite
+ dba Sfx_JumpKick
+ dba Sfx_Stomp
+ dba Sfx_TailWhip
+ dba Sfx_KarateChop
+ dba Sfx_Submission
+ dba Sfx_WaterGun
+ dba Sfx_SwordsDance
+ dba Sfx_Thunder
+ dba Sfx_Supersonic
+ dba Sfx_Leer
+ dba Sfx_Ember
+ dba Sfx_Bubblebeam
+ dba Sfx_HydroPump
+ dba Sfx_Surf
+ dba Sfx_Psybeam
+ dba Sfx_Charge
+ dba Sfx_Thundershock
+ dba Sfx_Psychic
+ dba Sfx_Screech
+ dba Sfx_BoneClub
+ dba Sfx_Sharpen
+ dba Sfx_EggBomb
+ dba Sfx_Sing
+ dba Sfx_HyperBeam
+ dba Sfx_Shine
+ dba Sfx_Unknown5F
+ dba Sfx_Unknown60
+ dba Sfx_Unknown61
+ dba Sfx_Unknown62
+ dba Sfx_Unknown63
+ dba Sfx_Burn
+ dba Sfx_TitleScreenEntrance
+ dba Sfx_Unknown66
+ dba Sfx_GetCoinFromSlots
+ dba Sfx_PayDay
+ dba Sfx_Metronome
+ dba Sfx_Call
+ dba Sfx_HangUp
+ dba Sfx_NoSignal
+ dba Sfx_Sandstorm
+ dba Sfx_Elevator
+ dba Sfx_Protect
+ dba Sfx_Sketch
+ dba Sfx_RainDance
+ dba Sfx_Aeroblast
+ dba Sfx_Spark
+ dba Sfx_Curse
+ dba Sfx_Rage
+ dba Sfx_Thief
+ dba Sfx_Thief2
+ dba Sfx_SpiderWeb
+ dba Sfx_MindReader
+ dba Sfx_Nightmare
+ dba Sfx_Snore
+ dba Sfx_SweetKiss
+ dba Sfx_SweetKiss2
+ dba Sfx_BellyDrum
+ dba Sfx_Unknown7F
+ dba Sfx_SludgeBomb
+ dba Sfx_Foresight
+ dba Sfx_Spite
+ dba Sfx_Outrage
+ dba Sfx_PerishSong
+ dba Sfx_GigaDrain
+ dba Sfx_Attract
+ dba Sfx_Kinesis2
+ dba Sfx_ZapCannon
+ dba Sfx_MeanLook
+ dba Sfx_HealBell
+ dba Sfx_Return
+ dba Sfx_ExpBar
+ dba Sfx_MilkDrink
+ dba Sfx_Present
+ dba Sfx_MorningSun
+ dba Sfx_LevelUp
+ dba Sfx_KeyItem
+ dba Sfx_Fanfare2
+ dba Sfx_RegisterPhoneNumber
+ dba Sfx_3RdPlace
+ dba Sfx_GetEggFromDaycareMan
+ dba Sfx_GetEggFromDaycareLady
+ dba Sfx_MoveDeleted
+ dba Sfx_2ndPlace
+ dba Sfx_1stPlace
+ dba Sfx_ChooseACard
+ dba Sfx_GetTm
+ dba Sfx_GetBadge
+ dba Sfx_QuitSlots
+ dba Sfx_EggCrack
+ dba Sfx_DexFanfareLessThan20
+ dba Sfx_DexFanfare140169
+ dba Sfx_DexFanfare170199
+ dba Sfx_DexFanfare200229
+ dba Sfx_DexFanfare230Plus
+ dba Sfx_Evolved
+ dba Sfx_MasterBall
+ dba Sfx_EggHatch
+ dba Sfx_GsIntroCharizardFireball
+ dba Sfx_GsIntroPokemonAppears
+ dba Sfx_Flash
+ dba Sfx_GameFreakLogoGs
+ dba Sfx_NotVeryEffective
+ dba Sfx_Damage
+ dba Sfx_SuperEffective
+ dba Sfx_BallBounce
+ dba Sfx_Moonlight
+ dba Sfx_Encore
+ dba Sfx_BeatUp
+ dba Sfx_BatonPass
+ dba Sfx_BallWiggle
+ dba Sfx_SweetScent
+ dba Sfx_SweetScent2
+ dba Sfx_HitEndOfExpBar
+ dba Sfx_GiveTrademon
+ dba Sfx_GetTrademon
+ dba Sfx_TrainArrived
+ dba Sfx_StopSlot
+ dba Sfx_2Boops
+ dba Sfx_GlassTing
+ dba Sfx_GlassTing2
; Crystal adds the following SFX:
- dbw BANK(Sfx_IntroUnown1), Sfx_IntroUnown1
- dbw BANK(Sfx_IntroUnown2), Sfx_IntroUnown2
- dbw BANK(Sfx_IntroUnown3), Sfx_IntroUnown3
- dbw BANK(Sfx_DittoPopUp), Sfx_DittoPopUp
- dbw BANK(Sfx_DittoTransform), Sfx_DittoTransform
- dbw BANK(Sfx_IntroSuicune1), Sfx_IntroSuicune1
- dbw BANK(Sfx_IntroPichu), Sfx_IntroPichu
- dbw BANK(Sfx_IntroSuicune2), Sfx_IntroSuicune2
- dbw BANK(Sfx_IntroSuicune3), Sfx_IntroSuicune3
- dbw BANK(Sfx_DittoBounce), Sfx_DittoBounce
- dbw BANK(Sfx_IntroSuicune4), Sfx_IntroSuicune4
- dbw BANK(Sfx_GameFreakPresents), Sfx_GameFreakPresents
- dbw BANK(Sfx_Tingle), Sfx_Tingle
- dbw BANK(Sfx_UnknownCB), Sfx_UnknownCB
- dbw BANK(Sfx_TwoPcBeeps), Sfx_TwoPcBeeps
- dbw BANK(Sfx_4NoteDitty), Sfx_4NoteDitty
- dbw BANK(Sfx_Twinkle), Sfx_Twinkle
+ dba Sfx_IntroUnown1
+ dba Sfx_IntroUnown2
+ dba Sfx_IntroUnown3
+ dba Sfx_DittoPopUp
+ dba Sfx_DittoTransform
+ dba Sfx_IntroSuicune1
+ dba Sfx_IntroPichu
+ dba Sfx_IntroSuicune2
+ dba Sfx_IntroSuicune3
+ dba Sfx_DittoBounce
+ dba Sfx_IntroSuicune4
+ dba Sfx_GameFreakPresents
+ dba Sfx_Tingle
+ dba Sfx_UnknownCB
+ dba Sfx_TwoPcBeeps
+ dba Sfx_4NoteDitty
+ dba Sfx_Twinkle
; e94e9
--- a/battle/anim_commands.asm
+++ b/battle/anim_commands.asm
@@ -168,8 +168,8 @@
ld [rSVBK], a
ld hl, UpdateBattleHuds
- ld a, $f
- rst FarCall
+ ld a, BANK(UpdatePlayerHUD)
+ rst FarCall ; Why the heck is this a callab?
pop af
ld [rSVBK], a
--- a/constants/misc_constants.asm
+++ b/constants/misc_constants.asm
@@ -117,6 +117,7 @@
NUM_WILDMONS_PER_AREA_TIME_OF_DAY EQU 7
WILDMON_GRASS_STRUCTURE_LENGTH EQU 2 + 3 * (1 + 2 * NUM_WILDMONS_PER_AREA_TIME_OF_DAY)
+MOBILE_EVENT_OBJECT_GS_BALL EQU $b
PRINTNUM_MONEY_F EQU 5
PRINTNUM_RIGHTALIGN_F EQU 6
--- a/engine/map_setup.asm
+++ b/engine/map_setup.asm
@@ -243,52 +243,52 @@
; 15440
MapSetupCommands: ; 15440
- dbw BANK(EnableLCD), EnableLCD ; 00
- dbw BANK(DisableLCD), DisableLCD ; 01
- dbw BANK(SoundRestart), SoundRestart ; 02
- dbw BANK(PlayMapMusic), PlayMapMusic ; 03
- dbw BANK(RestartMapMusic), RestartMapMusic ; 04
- dbw BANK(FadeToMapMusic), FadeToMapMusic ; 05
- dbw BANK(FadeOutMapAndMusic), FadeOutMapAndMusic ; 06
- dbw BANK(EnterMapMusic), EnterMapMusic ; 07
- dbw BANK(ForceMapMusic), ForceMapMusic ; 08
- dbw BANK(CrankUpTheVolume), CrankUpTheVolume ; 09
- dbw BANK(LoadBlockData), LoadBlockData ; 0a
- dbw BANK(LoadNeighboringBlockData), LoadNeighboringBlockData ; 0b
- dbw BANK(SaveScreen), SaveScreen ; 0c
- dbw BANK(BufferScreen), BufferScreen ; 0d
- dbw BANK(LoadGraphics), LoadGraphics ; 0e
- dbw BANK(LoadTilesetHeader), LoadTilesetHeader ; 0f
- dbw BANK(LoadMapTimeOfDay), LoadMapTimeOfDay ; 10
- dbw BANK(LoadMapPalettes), LoadMapPalettes ; 11
- dbw BANK(LoadWildMonData), LoadWildMonData ; 12
- dbw BANK(RefreshMapSprites), RefreshMapSprites ; 13
- dbw BANK(RunCallback_05_03), RunCallback_05_03 ; 14
- dbw BANK(RunCallback_03), RunCallback_03 ; 15
- dbw BANK(LoadObjectsRunCallback_02), LoadObjectsRunCallback_02 ; 16
- dbw BANK(LoadSpawnPoint), LoadSpawnPoint ; 17
- dbw BANK(EnterMapConnection), EnterMapConnection ; 18
- dbw BANK(LoadWarpData), LoadWarpData ; 19
- dbw BANK(LoadMapAttributes), LoadMapAttributes ; 1a
- dbw BANK(LoadMapAttributes_IgnoreHidden), LoadMapAttributes_IgnoreHidden ; 1b
- dbw BANK(WhiteBGMap), WhiteBGMap ; 1c
- dbw BANK(FadeBlackBGMap), FadeBlackBGMap ; 1d
- dbw BANK(FadeInBGMap), FadeInBGMap ; 1e
- dbw BANK(GetCoordOfUpperLeftCorner), GetCoordOfUpperLeftCorner ; 1f
- dbw BANK(RestoreFacingAfterWarp), RestoreFacingAfterWarp ; 20
- dbw BANK(SpawnInFacingDown), SpawnInFacingDown ; 21
- dbw BANK(GetSpawnCoord), GetSpawnCoord ; 22
- dbw BANK(RefreshPlayerCoords), RefreshPlayerCoords ; 23
- dbw BANK(DelayClearingOldSprites), DelayClearingOldSprites ; 24
- dbw BANK(DelayLoadingNewSprites), DelayLoadingNewSprites ; 25
- dbw BANK(UpdateRoamMons), UpdateRoamMons ; 26
- dbw BANK(JumpRoamMons), JumpRoamMons ; 27
- dbw BANK(FadeOldMapMusic), FadeOldMapMusic ; 28
- dbw BANK(ActivateMapAnims), ActivateMapAnims ; 29
- dbw BANK(SuspendMapAnims), SuspendMapAnims ; 2a
- dbw BANK(RetainOldPalettes), RetainOldPalettes ; 2b
- dbw BANK(DontScrollText), DontScrollText ; 2c
- dbw BANK(ReturnFromMapSetupScript), ReturnFromMapSetupScript ; 2d
+ dba EnableLCD ; 00
+ dba DisableLCD ; 01
+ dba SoundRestart ; 02
+ dba PlayMapMusic ; 03
+ dba RestartMapMusic ; 04
+ dba FadeToMapMusic ; 05
+ dba FadeOutMapAndMusic ; 06
+ dba EnterMapMusic ; 07
+ dba ForceMapMusic ; 08
+ dba CrankUpTheVolume ; 09
+ dba LoadBlockData ; 0a
+ dba LoadNeighboringBlockData ; 0b
+ dba SaveScreen ; 0c
+ dba BufferScreen ; 0d
+ dba LoadGraphics ; 0e
+ dba LoadTilesetHeader ; 0f
+ dba LoadMapTimeOfDay ; 10
+ dba LoadMapPalettes ; 11
+ dba LoadWildMonData ; 12
+ dba RefreshMapSprites ; 13
+ dba RunCallback_05_03 ; 14
+ dba RunCallback_03 ; 15
+ dba LoadObjectsRunCallback_02 ; 16
+ dba LoadSpawnPoint ; 17
+ dba EnterMapConnection ; 18
+ dba LoadWarpData ; 19
+ dba LoadMapAttributes ; 1a
+ dba LoadMapAttributes_IgnoreHidden ; 1b
+ dba WhiteBGMap ; 1c
+ dba FadeBlackBGMap ; 1d
+ dba FadeInBGMap ; 1e
+ dba GetCoordOfUpperLeftCorner ; 1f
+ dba RestoreFacingAfterWarp ; 20
+ dba SpawnInFacingDown ; 21
+ dba GetSpawnCoord ; 22
+ dba RefreshPlayerCoords ; 23
+ dba DelayClearingOldSprites ; 24
+ dba DelayLoadingNewSprites ; 25
+ dba UpdateRoamMons ; 26
+ dba JumpRoamMons ; 27
+ dba FadeOldMapMusic ; 28
+ dba ActivateMapAnims ; 29
+ dba SuspendMapAnims ; 2a
+ dba RetainOldPalettes ; 2b
+ dba DontScrollText ; 2c
+ dba ReturnFromMapSetupScript ; 2d
; 154ca
--- a/engine/pack.asm
+++ b/engine/pack.asm
@@ -1170,9 +1170,9 @@
db 5, 8 ; rows, columns
db 2 ; horizontal spacing
dbw 0, OTPartyMons
- dbw BANK(PlaceMenuItemName), PlaceMenuItemName
- dbw BANK(PlaceMenuItemQuantity), PlaceMenuItemQuantity
- dbw BANK(Function244c3), Function244c3
+ dba PlaceMenuItemName
+ dba PlaceMenuItemQuantity
+ dba Function244c3
; 10807
Function10807: ; 10807 (4:4807)
@@ -1194,9 +1194,9 @@
db 5, 8 ; rows, columns
db 1 ; horizontal spacing
dbw 0, OTPartyMon1Exp + 2
- dbw BANK(PlaceMenuItemName), PlaceMenuItemName
- dbw BANK(PlaceMenuItemQuantity), PlaceMenuItemQuantity
- dbw BANK(Function244c3), Function244c3
+ dba PlaceMenuItemName
+ dba PlaceMenuItemQuantity
+ dba Function244c3
; 10826
Function10826: ; 10826 (4:4826)
@@ -1227,9 +1227,9 @@
db 5, 8 ; rows, columns
db 2 ; horizontal spacing
dbw 0, OTPartyMon1CaughtGender
- dbw BANK(PlaceMenuItemName), PlaceMenuItemName
- dbw BANK(PlaceMenuItemQuantity), PlaceMenuItemQuantity
- dbw BANK(Function244c3), Function244c3
+ dba PlaceMenuItemName
+ dba PlaceMenuItemQuantity
+ dba Function244c3
; 1085a
Function1085a: ; 1085a (4:485a)
@@ -1538,9 +1538,9 @@
db 5, 8 ; rows, columns
db 2 ; horizontal spacing
dbw 0, NumItems
- dbw BANK(PlaceMenuItemName), PlaceMenuItemName
- dbw BANK(PlaceMenuItemQuantity), PlaceMenuItemQuantity
- dbw BANK(Function244c3), Function244c3
+ dba PlaceMenuItemName
+ dba PlaceMenuItemQuantity
+ dba Function244c3
; 10a67
MenuDataHeader_0x10a67: ; 0x10a67
@@ -1556,9 +1556,9 @@
db 5, 8 ; rows, columns
db 2 ; horizontal spacing
dbw 0, NumItems
- dbw BANK(PlaceMenuItemName), PlaceMenuItemName
- dbw BANK(PlaceMenuItemQuantity), PlaceMenuItemQuantity
- dbw BANK(Function244c3), Function244c3
+ dba PlaceMenuItemName
+ dba PlaceMenuItemQuantity
+ dba Function244c3
; 10a7f
MenuDataHeader_0x10a7f: ; 0x10a7f
@@ -1574,9 +1574,9 @@
db 5, 8 ; rows, columns
db 1 ; horizontal spacing
dbw 0, NumKeyItems
- dbw BANK(PlaceMenuItemName), PlaceMenuItemName
- dbw BANK(PlaceMenuItemQuantity), PlaceMenuItemQuantity
- dbw BANK(Function244c3), Function244c3
+ dba PlaceMenuItemName
+ dba PlaceMenuItemQuantity
+ dba Function244c3
; 10a97
MenuDataHeader_0x10a97: ; 0x10a97
@@ -1592,9 +1592,9 @@
db 5, 8 ; rows, columns
db 1 ; horizontal spacing
dbw 0, NumKeyItems
- dbw BANK(PlaceMenuItemName), PlaceMenuItemName
- dbw BANK(PlaceMenuItemQuantity), PlaceMenuItemQuantity
- dbw BANK(Function244c3), Function244c3
+ dba PlaceMenuItemName
+ dba PlaceMenuItemQuantity
+ dba Function244c3
; 10aaf
MenuDataHeader_0x10aaf: ; 0x10aaf
@@ -1610,9 +1610,9 @@
db 5, 8 ; rows, columns
db 2 ; horizontal spacing
dbw 0, NumBalls
- dbw BANK(PlaceMenuItemName), PlaceMenuItemName
- dbw BANK(PlaceMenuItemQuantity), PlaceMenuItemQuantity
- dbw BANK(Function244c3), Function244c3
+ dba PlaceMenuItemName
+ dba PlaceMenuItemQuantity
+ dba Function244c3
; 10ac7
MenuDataHeader_0x10ac7: ; 0x10ac7
@@ -1628,9 +1628,9 @@
db 5, 8 ; rows, columns
db 2 ; horizontal spacing
dbw 0, NumBalls
- dbw BANK(PlaceMenuItemName), PlaceMenuItemName
- dbw BANK(PlaceMenuItemQuantity), PlaceMenuItemQuantity
- dbw BANK(Function244c3), Function244c3
+ dba PlaceMenuItemName
+ dba PlaceMenuItemQuantity
+ dba Function244c3
; 10adf
UnknownText_0x10adf: ; 0x10adf
--- a/engine/std_scripts.asm
+++ b/engine/std_scripts.asm
@@ -1,56 +1,56 @@
StdScripts::
- dbw BANK(PokeCenterNurseScript), PokeCenterNurseScript
- dbw BANK(DifficultBookshelfScript), DifficultBookshelfScript
- dbw BANK(PictureBookshelfScript), PictureBookshelfScript
- dbw BANK(MagazineBookshelfScript), MagazineBookshelfScript
- dbw BANK(TeamRocketOathScript), TeamRocketOathScript
- dbw BANK(IncenseBurnerScript), IncenseBurnerScript
- dbw BANK(MerchandiseShelfScript), MerchandiseShelfScript
- dbw BANK(TownMapScript), TownMapScript
- dbw BANK(WindowScript), WindowScript
- dbw BANK(TVScript), TVScript
- dbw BANK(HomepageScript), HomepageScript
- dbw BANK(Radio1Script), Radio1Script
- dbw BANK(Radio2Script), Radio2Script
- dbw BANK(TrashCanScript), TrashCanScript
- dbw BANK(StrengthBoulderScript), StrengthBoulderScript
- dbw BANK(SmashRockScript), SmashRockScript
- dbw BANK(PokeCenterSignScript), PokeCenterSignScript
- dbw BANK(MartSignScript), MartSignScript
- dbw BANK(GoldenrodRocketsScript), GoldenrodRocketsScript
- dbw BANK(RadioTowerRocketsScript), RadioTowerRocketsScript
- dbw BANK(ElevatorButtonScript), ElevatorButtonScript
- dbw BANK(DayToTextScript), DayToTextScript
- dbw BANK(BugContestResultsWarpScript), BugContestResultsWarpScript
- dbw BANK(BugContestResultsScript), BugContestResultsScript
- dbw BANK(InitializeEventsScript), InitializeEventsScript
- dbw BANK(AskNumber1MScript), AskNumber1MScript
- dbw BANK(AskNumber2MScript), AskNumber2MScript
- dbw BANK(RegisteredNumberMScript), RegisteredNumberMScript
- dbw BANK(NumberAcceptedMScript), NumberAcceptedMScript
- dbw BANK(NumberDeclinedMScript), NumberDeclinedMScript
- dbw BANK(PhoneFullMScript), PhoneFullMScript
- dbw BANK(RematchMScript), RematchMScript
- dbw BANK(GiftMScript), GiftMScript
- dbw BANK(PackFullMScript), PackFullMScript
- dbw BANK(RematchGiftMScript), RematchGiftMScript
- dbw BANK(AskNumber1FScript), AskNumber1FScript
- dbw BANK(AskNumber2FScript), AskNumber2FScript
- dbw BANK(RegisteredNumberFScript), RegisteredNumberFScript
- dbw BANK(NumberAcceptedFScript), NumberAcceptedFScript
- dbw BANK(NumberDeclinedFScript), NumberDeclinedFScript
- dbw BANK(PhoneFullFScript), PhoneFullFScript
- dbw BANK(RematchFScript), RematchFScript
- dbw BANK(GiftFScript), GiftFScript
- dbw BANK(PackFullFScript), PackFullFScript
- dbw BANK(RematchGiftFScript), RematchGiftFScript
- dbw BANK(GymStatue1Script), GymStatue1Script
- dbw BANK(GymStatue2Script), GymStatue2Script
- dbw BANK(ReceiveItemScript), ReceiveItemScript
- dbw BANK(ReceiveTogepiEggScript), ReceiveTogepiEggScript
- dbw BANK(PCScript), PCScript
- dbw BANK(GameCornerCoinVendorScript), GameCornerCoinVendorScript
- dbw BANK(HappinessCheckScript), HappinessCheckScript
+ dba PokeCenterNurseScript
+ dba DifficultBookshelfScript
+ dba PictureBookshelfScript
+ dba MagazineBookshelfScript
+ dba TeamRocketOathScript
+ dba IncenseBurnerScript
+ dba MerchandiseShelfScript
+ dba TownMapScript
+ dba WindowScript
+ dba TVScript
+ dba HomepageScript
+ dba Radio1Script
+ dba Radio2Script
+ dba TrashCanScript
+ dba StrengthBoulderScript
+ dba SmashRockScript
+ dba PokeCenterSignScript
+ dba MartSignScript
+ dba GoldenrodRocketsScript
+ dba RadioTowerRocketsScript
+ dba ElevatorButtonScript
+ dba DayToTextScript
+ dba BugContestResultsWarpScript
+ dba BugContestResultsScript
+ dba InitializeEventsScript
+ dba AskNumber1MScript
+ dba AskNumber2MScript
+ dba RegisteredNumberMScript
+ dba NumberAcceptedMScript
+ dba NumberDeclinedMScript
+ dba PhoneFullMScript
+ dba RematchMScript
+ dba GiftMScript
+ dba PackFullMScript
+ dba RematchGiftMScript
+ dba AskNumber1FScript
+ dba AskNumber2FScript
+ dba RegisteredNumberFScript
+ dba NumberAcceptedFScript
+ dba NumberDeclinedFScript
+ dba PhoneFullFScript
+ dba RematchFScript
+ dba GiftFScript
+ dba PackFullFScript
+ dba RematchGiftFScript
+ dba GymStatue1Script
+ dba GymStatue2Script
+ dba ReceiveItemScript
+ dba ReceiveTogepiEggScript
+ dba PCScript
+ dba GameCornerCoinVendorScript
+ dba HappinessCheckScript
PokeCenterNurseScript:
; EVENT_WELCOMED_TO_POKECOM_CENTER is never set
--- a/event/kurt.asm
+++ b/event/kurt.asm
@@ -98,9 +98,9 @@
db 4, 7
db 1
dbw 0, Buffer1
- dbw BANK(.Name), .Name
- dbw BANK(.Quantity), .Quantity
- dbw BANK(NULL), NULL
+ dba .Name
+ dba .Quantity
+ dba NULL
.Name: ; 8809f
ld a, [MenuSelection]
--- a/home.asm
+++ b/home.asm
@@ -830,13 +830,13 @@
NamesPointers:: ; 33ab
- dbw BANK(PokemonNames), PokemonNames
- dbw BANK(MoveNames), MoveNames
+ dba PokemonNames
+ dba MoveNames
dbw 0, 0
- dbw BANK(ItemNames), ItemNames
+ dba ItemNames
dbw 0, PartyMonOT
dbw 0, OTPartyMonOT
- dbw BANK(TrainerClassNames), TrainerClassNames
+ dba TrainerClassNames
; 33c0
Function33c0:
--- a/maps/BattleTower1F.asm
+++ b/maps/BattleTower1F.asm
@@ -3,22 +3,22 @@
db 2
; triggers
- dw UnknownScript_0x9e39d, 0
- dw UnknownScript_0x9e3d3, 0
+ dw .Trigger0, 0
+ dw .Trigger1, 0
.MapCallbacks:
db 0
-UnknownScript_0x9e39d:
+.Trigger0:
writebyte BATTLE_TOWER_ACTION_09
special BattleTowerAction
- iffalse UnknownScript_0x9e3d1
+ iffalse .SkipEverything
writebyte BATTLE_TOWER_ACTION_02
special BattleTowerAction
- if_equal $0, UnknownScript_0x9e3d1
- if_equal $2, UnknownScript_0x9e3c4
- if_equal $3, UnknownScript_0x9e3d1
- if_equal $4, UnknownScript_0x9e3d1
+ if_equal $0, .SkipEverything
+ if_equal $2, .priorityjump1
+ if_equal $3, .SkipEverything
+ if_equal $4, .SkipEverything
loadfont
writetext UnknownText_0x9f037
closetext
@@ -26,17 +26,15 @@
priorityjump UnknownScript_0x9e44e
end
-UnknownScript_0x9e3c4:
+.priorityjump1:
priorityjump UnknownScript_0x9e555
-
-UnknownScript_0x9e3c7:
writebyte BATTLE_TOWER_ACTION_04
special BattleTowerAction
writebyte BATTLE_TOWER_ACTION_06
special BattleTowerAction
-UnknownScript_0x9e3d1:
+.SkipEverything:
dotrigger $1
-UnknownScript_0x9e3d3:
+.Trigger1:
end
MapBattleTower1FSignpost0Script:
--- a/maps/BattleTowerHallway.asm
+++ b/maps/BattleTowerHallway.asm
@@ -3,29 +3,29 @@
db 2
; triggers
- dw UnknownScript_0x9f5bb, 0
- dw UnknownScript_0x9f5c0, 0
+ dw .Trigger0, 0
+ dw .Trigger1, 0
.MapCallbacks:
db 0
-UnknownScript_0x9f5bb:
- priorityjump UnknownScript_0x9f5c1
+.Trigger0:
+ priorityjump .ChooseBattleRoom
dotrigger $1
-UnknownScript_0x9f5c0:
+.Trigger1:
end
-UnknownScript_0x9f5c1:
+.ChooseBattleRoom:
follow $2, PLAYER
- callasm Function_0x9f5cb
- jump Script_WalkToChosenBattleRoom
+ callasm .asm_load_battle_room
+ jump .WalkToChosenBattleRoom
-Function_0x9f5cb:
+.asm_load_battle_room:
ld a, [rSVBK]
push af
- ld a, 3
+ ld a, BANK(wBTChoiceOfLvlGroup)
ld [rSVBK], a
ld a, [wBTChoiceOfLvlGroup]
ld [ScriptVar], a
@@ -38,35 +38,35 @@
; enter different rooms for different levels to battle against
; at least it should look like that
; because all warps lead to the same room
-Script_WalkToChosenBattleRoom: ; 0x9f5dc
- if_equal 3, Script_WalkToBattleRoomL30L40
- if_equal 4, Script_WalkToBattleRoomL30L40
- if_equal 5, Script_WalkToBattleRoomL50L60
- if_equal 6, Script_WalkToBattleRoomL50L60
- if_equal 7, Script_WalkToBattleRoomL70L80
- if_equal 8, Script_WalkToBattleRoomL70L80
- if_equal 9, Script_WalkToBattleRoomL90L100
- if_equal 10, Script_WalkToBattleRoomL90L100
+.WalkToChosenBattleRoom: ; 0x9f5dc
+ if_equal 3, .L30L40
+ if_equal 4, .L30L40
+ if_equal 5, .L50L60
+ if_equal 6, .L50L60
+ if_equal 7, .L70L80
+ if_equal 8, .L70L80
+ if_equal 9, .L90L100
+ if_equal 10, .L90L100
applymovement $2, MovementData_0x9e57a
- jump Script_PlayerEntersBattleRoom
+ jump .EnterBattleRoom
-Script_WalkToBattleRoomL30L40: ; 0x9f603
+.L30L40: ; 0x9f603
applymovement $2, MovementData_0x9e57c
- jump Script_PlayerEntersBattleRoom
+ jump .EnterBattleRoom
-Script_WalkToBattleRoomL50L60: ; 0x9f60a
+.L50L60: ; 0x9f60a
applymovement $2, MovementData_0x9e586
- jump Script_PlayerEntersBattleRoom
+ jump .EnterBattleRoom
-Script_WalkToBattleRoomL70L80: ; 0x9f611
+.L70L80: ; 0x9f611
applymovement $2, MovementData_0x9e584
- jump Script_PlayerEntersBattleRoom
+ jump .EnterBattleRoom
-Script_WalkToBattleRoomL90L100: ; 0x9f618
+.L90L100: ; 0x9f618
applymovement $2, MovementData_0x9e582
- jump Script_PlayerEntersBattleRoom
+ jump .EnterBattleRoom
-Script_PlayerEntersBattleRoom: ; 0x9f61f
+.EnterBattleRoom: ; 0x9f61f
faceperson PLAYER, $2
loadfont
writetext Text_PleaseStepThisWay
--- a/maps/EarlsPokemonAcademy.asm
+++ b/maps/EarlsPokemonAcademy.asm
@@ -105,7 +105,7 @@
db $80 ; flags
dn 3, 2 ; rows, columns
db 5 ; spacing
- dbw BANK(.Text), .Text
+ dba .Text
dbw $1a, 0
.Text
--- a/maps/GoldenrodPokeCenter1F.asm
+++ b/maps/GoldenrodPokeCenter1F.asm
@@ -8,15 +8,15 @@
NurseScript_0x60f91:
jumpstd pokecenternurse
-UnknownScript_0x60f94:
+GoldenrodPokeCenter1F_GSBallTriggerLeft:
writebyte BATTLE_TOWER_ACTION_0B
special BattleTowerAction
- if_equal $b, UnknownScript_0x60f9e
+ if_equal MOBILE_EVENT_OBJECT_GS_BALL, .gsball
end
-UnknownScript_0x60f9e:
+.gsball:
checkevent EVENT_GOT_GS_BALL_FROM_POKECOM_CENTER
- iftrue UnknownScript_0x60fd8
+ iftrue .cancel
playsound SFX_EXIT_BUILDING
moveperson $3, $0, $7
disappear $3
@@ -37,18 +37,18 @@
special RestartMapMusic
disappear $3
playsound SFX_EXIT_BUILDING
-UnknownScript_0x60fd8:
+.cancel:
end
-UnknownScript_0x60fd9:
+GoldenrodPokeCenter1F_GSBallTriggerRight:
writebyte BATTLE_TOWER_ACTION_0B
special BattleTowerAction
- if_equal $b, UnknownScript_0x60fe3
+ if_equal MOBILE_EVENT_OBJECT_GS_BALL, .gsball
end
-UnknownScript_0x60fe3:
+.gsball:
checkevent EVENT_GOT_GS_BALL_FROM_POKECOM_CENTER
- iftrue UnknownScript_0x6101d
+ iftrue .cancel
playsound SFX_EXIT_BUILDING
moveperson $3, $0, $7
disappear $3
@@ -69,7 +69,7 @@
special RestartMapMusic
disappear $3
playsound SFX_EXIT_BUILDING
-UnknownScript_0x6101d:
+.cancel:
end
GameboyKidScript_0x6101e:
@@ -810,8 +810,8 @@
.XYTriggers:
db 2
- xy_trigger 0, $7, $3, $0, UnknownScript_0x60f94, $0, $0
- xy_trigger 0, $7, $4, $0, UnknownScript_0x60fd9, $0, $0
+ xy_trigger 0, $7, $3, $0, GoldenrodPokeCenter1F_GSBallTriggerLeft, $0, $0
+ xy_trigger 0, $7, $4, $0, GoldenrodPokeCenter1F_GSBallTriggerRight, $0, $0
.Signposts:
db 0
--- a/misc/battle_tower_45.asm
+++ b/misc/battle_tower_45.asm
@@ -1049,7 +1049,7 @@
call MaxVolume
ret
-Function1708b9: ; 1708b9 (5c:48b9)
+Function1708b9: ; 1708b9 (5c:48b9) something to do with GS Ball
ld a, BANK(s1_be3c)
call GetSRAMBank
ld a, [s1_be3c]
@@ -1129,21 +1129,21 @@
ld b, 0
ld c, a
ld hl, PartySpecies
-.asm_170955
+.loop
ld a, [hli]
cp EGG
- jr nz, .asm_17099f
+ jr nz, .not_egg
push hl
ld hl, PartyMonOT ; wddff (aliases: PartyMonOT)
ld de, $6
ld a, b
and a
- jr z, .asm_170969
-.asm_170965
+ jr z, .skip
+.loop2
add hl, de
dec a
- jr nz, .asm_170965
-.asm_170969
+ jr nz, .loop2
+.skip
ld de, String_1709a4
ld a, $6
.asm_17096e
@@ -1179,10 +1179,10 @@
.asm_17099d
pop af
pop hl
-.asm_17099f
+.not_egg
inc b
dec c
- jr nz, .asm_170955
+ jr nz, .loop
ret
; 1709a4 (5c:49a4)
@@ -1192,9 +1192,9 @@
Function1709aa: ; 1709aa (5c:49aa)
ld a, [rSVBK] ; $ff00+$70
push af
- ld a, $3
+ ld a, BANK(w3_d090)
ld [rSVBK], a ; $ff00+$70
- ld a, [StringBuffer2 + 10]
+ ld a, [w3_d090]
ld [ScriptVar], a
pop af
ld [rSVBK], a ; $ff00+$70
@@ -1208,7 +1208,7 @@
ld a, [$a800]
call CloseSRAM
cp 6
- jr nc, .asm_1709da
+ jr nc, .invalid
ld e, a
ld d, 0
ld hl, Jumptable_1709e7
@@ -1219,7 +1219,8 @@
ld h, [hl]
ld l, a
jp [hl]
-.asm_1709da
+
+.invalid
ld a, $5
call GetSRAMBank
xor a
--- a/misc/mobile_22_2.asm
+++ b/misc/mobile_22_2.asm
@@ -916,9 +916,9 @@
db 5 ; items
db 3, 1
dbw 0, wd002
- dbw BANK(Function8b880), Function8b880
- dbw BANK(Function8b88c), Function8b88c
- dbw BANK(Function8b8c8), Function8b8c8
+ dba Function8b880
+ dba Function8b88c
+ dba Function8b8c8
; 8b880
Function8b880: ; 8b880
--- a/sram.asm
+++ b/sram.asm
@@ -1,5 +1,9 @@
+SRAM_Begin EQU $a000
+SRAM_End EQU $c000
+GLOBAL SRAM_Begin, SRAM_End
+
+
SECTION "Scratch", SRAM, BANK [0]
-SRAM_Begin::
sScratch::
@@ -52,8 +56,6 @@
sBackupChecksum:: ds 2
s0_bf0f:: ds 1
sStackTop:: ds 2
- ds $ee
-SRAM_End::
SECTION "SRAM Bank 1", SRAM, BANK [1]
--- a/tilesets/tileset_headers.asm
+++ b/tilesets/tileset_headers.asm
@@ -1,7 +1,7 @@
tileset: macro
dbw BANK(\1GFX), \1GFX
- dbw BANK(\1Meta), \1Meta
- dbw BANK(\1Coll), \1Coll
+ dba \1Meta
+ dba \1Coll
dw \1Anim
dw NULL
dw \1PalMap
--- a/wram.asm
+++ b/wram.asm
@@ -2640,7 +2640,9 @@
SECTION "WRAM 3", WRAMX, BANK [3]
w3_d000:: ; d000
- ds $100
+ ds $90
+w3_d090::
+ ds $70
BT_OTrainer::
w3_d100:: ; BattleTower OpponentTrainer-Data (length = 0xe0 = $a + $1 + 3*$3b + $24)