diff options
Diffstat (limited to 'engine/predefs.asm')
-rwxr-xr-x | engine/predefs.asm | 252 |
1 files changed, 111 insertions, 141 deletions
diff --git a/engine/predefs.asm b/engine/predefs.asm index 4550a562..3ac99585 100755 --- a/engine/predefs.asm +++ b/engine/predefs.asm @@ -1,25 +1,20 @@ -GetPredefPointer: ; 4fe49 (13:7e49) -; stores hl in $CC4F,$CC50 -; stores de in $CC51,$CC52 -; stores bc in $CC53,$CC54 -; grabs a byte "n" from $CC4E, -; and gets the nth (3-byte) pointer in PredefPointers -; stores the bank of said pointer in [$D0B7] -; stores the pointer in hl and returns - ; ld $CC4F,hl +GetPredefPointer: +; Store the contents of the register +; pairs (hl, de, bc) at wPredefRegisters. +; Then put the bank and address of predef +; wPredefID in [wPredefBank] and hl. + ld a,h - ld [$CC4F],a + ld [wPredefRegisters],a ld a,l - ld [$CC50],a + ld [wPredefRegisters + 1],a - ; ld $CC51,de - ld hl,$CC51 + ld hl,wPredefRegisters + 2 ld a,d ld [hli],a ld a,e ld [hli],a - ; ld $CC53,bc ld a,b ld [hli],a ld [hl],c @@ -27,11 +22,10 @@ GetPredefPointer: ; 4fe49 (13:7e49) ld hl,PredefPointers ld de,0 - ; de = 3 * [$CC4E] - ld a,[$CC4E] + ld a,[wPredefID] ld e,a - add a,a - add a,e + add a + add e ld e,a jr nc,.next inc d @@ -43,7 +37,7 @@ GetPredefPointer: ; 4fe49 (13:7e49) ; get bank of predef routine ld a,[de] - ld [$D0B7],a + ld [wPredefBank],a ; get pointer inc de @@ -55,129 +49,105 @@ GetPredefPointer: ; 4fe49 (13:7e49) ret -PredefPointers: ; 4fe79 (13:7e79) +PredefPointers:: ; 4fe79 (13:7e79) ; these are pointers to ASM routines. ; they appear to be used in overworld map scripts. - dbw BANK(Func_3cd60),Func_3cd60 - dbw BANK(Func_3f0c6),Func_3f0c6 - dbw BANK(Func_3f073),Func_3f073 - dbw BANK(ScaleSpriteByTwo), ScaleSpriteByTwo - db BANK(LoadMonBackSprite) ; dbw macro gives an error for some reason - dw LoadMonBackSprite - dbw BANK(Func_79aba),Func_79aba - dbw BANK(Func_f132),Func_f132 -HealPartyPredef: ; 4fe8e (13:7e8e) - dbw BANK(HealParty),HealParty -MoveAnimationPredef: ; 4fe91 (13:7e91) - dbw BANK(MoveAnimation),MoveAnimation; 08 play move animation - dbw BANK(Func_f71e),Func_f71e - dbw BANK(Func_f71e),Func_f71e - dbw BANK(Func_f81d),Func_f81d - dbw BANK(Func_f836),Func_f836 - dbw BANK(Func_f71e),Func_f71e - dbw BANK(Func_f71e),Func_f71e - db BANK(InitializePlayerData) - dw InitializePlayerData - dbw BANK(HandleBitArray),HandleBitArray - db BANK(RemoveMissableObject) - dw RemoveMissableObject - db BANK(IsMissableObjectHidden) - dw IsMissableObjectHidden - dbw BANK(Func_c69c),Func_c69c - db BANK(AnyPlayerPokemonAliveCheck) - dw AnyPlayerPokemonAliveCheck - db BANK(AddMissableObject) - dw AddMissableObject - db BANK(AddMissableObject) - dw AddMissableObject - dbw BANK(Func_ee9e),Func_ee9e - db BANK(InitializePlayerData) - dw InitializePlayerData - dbw BANK(Func_c754),Func_c754 - dbw BANK(Func_3af5b),Func_3af5b - dbw BANK(LearnMove),LearnMove - dbw BANK(IsItemInBag_),IsItemInBag_; 1C, used in Pokémon Tower + add_predef Func_3cd60 + add_predef Func_3f0c6 + add_predef Func_3f073 + add_predef ScaleSpriteByTwo + add_predef LoadMonBackPic + add_predef Func_79aba + add_predef Func_f132 + add_predef HealParty + add_predef MoveAnimation; 08 play move animation + add_predef DivideBCDPredef + add_predef DivideBCDPredef2 + add_predef AddBCDPredef + add_predef SubBCDPredef + add_predef DivideBCDPredef3 + add_predef DivideBCDPredef4 + add_predef InitPlayerData + add_predef FlagActionPredef + add_predef HideObject + add_predef IsObjectHidden + add_predef Func_c69c + add_predef AnyPartyAlive + add_predef ShowObject + add_predef ShowObject2 + add_predef Func_ee9e + add_predef InitPlayerData2 + add_predef Func_c754 + add_predef Func_3af5b + add_predef LearnMove + add_predef IsItemInBag_ ; 1C, used in Pokémon Tower dbw $03,Func_3eb5 ; for these two, the bank number is actually 0 dbw $03,GiveItem - dbw BANK(Func_480eb),Func_480eb - dbw BANK(Func_f8ba),Func_f8ba - dbw BANK(Func_480ff),Func_480ff - dbw BANK(Func_f929),Func_f929 - dbw BANK(Func_f9a0),Func_f9a0 - dbw BANK(Func_48125),Func_48125 - dbw BANK(UpdateHPBar),UpdateHPBar - db BANK(UpdateHPBar_LoadRegisters) - dw UpdateHPBar_LoadRegisters - dbw BANK(Func_5ab0),Func_5ab0 - dbw BANK(Func_3ed02),Func_3ed02 - db BANK(DisplayPokedexMenu_) - dw DisplayPokedexMenu_ - dbw BANK(Func_3ad1c),Func_3ad1c - dbw BANK(SaveSAVtoSRAM0),SaveSAVtoSRAM0 - dbw BANK(InitOpponent),InitOpponent - dbw BANK(Func_5a5f),Func_5a5f - dbw BANK(DrawBadges), DrawBadges - dbw BANK(Func_410f3),Func_410f3 - dbw BANK(Func_7096d),Func_7096d - dbw BANK(Func_79dda),Func_79dda - dbw BANK(PlayIntro),PlayIntro - dbw BANK(Func_79869),Func_79869 - dbw BANK(Func_70b5d),Func_70b5d - dbw BANK(Func_c586),Func_c586 - dbw BANK(StatusScreen),StatusScreen ; 37 0x12953 - dbw BANK(StatusScreen2),StatusScreen2 ; 38 - dbw BANK(Func_410e2),Func_410e2 - db BANK(CheckEngagePlayer) - dw CheckEngagePlayer - dbw BANK(IndexToPokedex),IndexToPokedex - dbw BANK(Predef3B),Predef3B; 3B display pic? - dbw BANK(UsedCut),UsedCut - dbw BANK(ShowPokedexData),ShowPokedexData - dbw BANK(WriteMonMoves),WriteMonMoves - dbw BANK(SaveSAV),SaveSAV - db BANK(LoadSGBBorderAndPalettes) - dw LoadSGBBorderAndPalettes - dbw BANK(Func_f113),Func_f113 - dbw BANK(SetPartyMonTypes),SetPartyMonTypes - db BANK(TestMonMoveCompatibility) - dw TestMonMoveCompatibility - dbw BANK(TMToMove),TMToMove - dbw BANK(Func_71ddf),Func_71ddf - db BANK(DisplayStarterMonDex) - dw DisplayStarterMonDex; 46 load dex screen - db BANK(_AddPokemonToParty) - dw _AddPokemonToParty - dbw BANK(UpdateHPBar),UpdateHPBar - dbw BANK(Func_3cdec),Func_3cdec - dbw BANK(LoadTownMap_Nest),LoadTownMap_Nest - dbw BANK(Func_27d6b),Func_27d6b - db BANK(PrintEmotionBubble) - dw PrintEmotionBubble; 4C player exclamation - dbw BANK(Func_5aaf),Func_5aaf; return immediately - db BANK(AskForMonNickname) - dw AskForMonNickname - dbw BANK(PewterGuys),PewterGuys - dbw BANK(SaveSAVtoSRAM2),SaveSAVtoSRAM2 - dbw BANK(LoadSAVCheckSum2),LoadSAVCheckSum2 - dbw BANK(LoadSAV),LoadSAV - dbw BANK(SaveSAVtoSRAM1),SaveSAVtoSRAM1 - dbw BANK(Predef54),Predef54 ; 54 initiate trade - db BANK(HallOfFameComputer) - dw HallOfFameComputer - dbw BANK(DisplayDexRating),DisplayDexRating - db $1E ; uses wrong bank number - dw _DoFlyOrTeleportAwayGraphics - db $1E ; uses wrong bank number - dw Func_70510 - dbw BANK(Func_c5be),Func_c5be - dbw BANK(Func_c60b),Func_c60b - db BANK(PrintUsedStrengthText) - dw PrintUsedStrengthText - dbw BANK(PickupItem),PickupItem - dbw BANK(Func_27d98),Func_27d98 - dbw BANK(LoadMovePPs),LoadMovePPs -DrawHPBarPredef: ; 4ff96 (13:7f96) - dbw BANK(Func_128ef),Func_128ef ; 5F draw HP bar - dbw BANK(Func_128f6),Func_128f6 - dbw BANK(Func_1c9c6),Func_1c9c6 - dbw BANK(OaksAideScript),OaksAideScript + add_predef Func_480eb + add_predef Func_f8ba + add_predef Func_480ff + add_predef Func_f929 + add_predef Func_f9a0 + add_predef Func_48125 + add_predef UpdateHPBar + add_predef HPBarLength + add_predef Func_5ab0 + add_predef Func_3ed02 + add_predef ShowPokedexMenu + add_predef Func_3ad1c + add_predef SaveSAVtoSRAM0 + add_predef InitOpponent + add_predef Func_5a5f + add_predef DrawBadges + add_predef Func_410f3 + add_predef BattleTransition + add_predef Func_79dda + add_predef PlayIntro + add_predef Func_79869 + add_predef FlashScreen + add_predef Func_c586 + add_predef StatusScreen + add_predef StatusScreen2 + add_predef Func_410e2 + add_predef TrainerEngage + add_predef IndexToPokedex + add_predef Predef3B; 3B display pic? + add_predef UsedCut + add_predef ShowPokedexData + add_predef WriteMonMoves + add_predef SaveSAV + add_predef LoadSGB + add_predef Func_f113 + add_predef SetPartyMonTypes + add_predef CanLearnTM + add_predef TMToMove + add_predef Func_71ddf + add_predef StarterDex ; 46 + add_predef _AddPartyMon + add_predef UpdateHPBar2 + add_predef Func_3cdec + add_predef LoadTownMap_Nest + add_predef Func_27d6b + add_predef EmotionBubble; 4C player exclamation + add_predef Func_5aaf; return immediately + add_predef AskName + add_predef PewterGuys + add_predef SaveSAVtoSRAM2 + add_predef LoadSAVCheckSum2 + add_predef LoadSAV + add_predef SaveSAVtoSRAM1 + add_predef Predef54 ; 54 initiate trade + add_predef HallOfFamePC + add_predef DisplayDexRating + dbw $1E, _LeaveMapAnim ; wrong bank + dbw $1E, Func_70510 ; wrong bank + add_predef Func_c5be + add_predef Func_c60b + add_predef PrintStrengthTxt + add_predef PickupItem + add_predef Func_27d98 + add_predef LoadMovePPs + add_predef DrawHP ; 5F + add_predef Func_128f6 + add_predef Func_1c9c6 + add_predef OaksAideScript |