diff options
Diffstat (limited to 'wram.asm')
-rw-r--r-- | wram.asm | 1627 |
1 files changed, 825 insertions, 802 deletions
@@ -251,7 +251,7 @@ wc312:: ds 1 wc313:: ds 1 wc314:: ds 152 wc3ac:: ds 8 -ENDU +ENDU ; c3b4 wSpriteAnimCount:: db wCurrSpriteOAMAddr:: db @@ -843,8 +843,8 @@ wc7d1:: ds 1 wc7d2:: ds 1 wc7d3:: ds 1 wc7d4:: ds 1 -ENDU -ENDU +ENDU ; c7e8 +ENDU ; c7e8 wc7e8:: ds 24 ; ???? @@ -901,12 +901,16 @@ wBillsPCPokemonList:: ; c800 ds 3 * 30 NEXTU ; c800 -; link data -wLinkData:: ; ds $514 +; raw link data +wLinkData:: ds $514 +wLinkDataEnd:: + +NEXTU ; c800 +; link data members wLinkPlayerName:: ds NAME_LENGTH wLinkPartyCount:: db wLinkPartySpecies:: ds PARTY_LENGTH -wLinkPartySpeciesEnd:: db +wLinkPartySpeciesEnd:: db ; legacy scripts don't check PartyCount UNION ; c813 ; time capsule party data @@ -933,9 +937,7 @@ wLinkPlayerPartyMon6:: party_struct wLinkPlayerPartyMon6 wLinkPlayerPartyMonOTNames:: ds PARTY_LENGTH * NAME_LENGTH wLinkPlayerPartyMonNicks:: ds PARTY_LENGTH * PKMN_NAME_LENGTH wLinkPlayerDataEnd:: -ENDU - ds 861 -wLinkDataEnd:: +ENDU ; c9b7 NEXTU ; c800 ; mystery gift data @@ -955,9 +957,7 @@ wc813:: ds 1 wc814:: ds 4 wc818:: ds 8 wc820:: ds 1 -wc821:: ds 15 -wc830:: ds 16 -wc840:: ds 16 +wc821:: ds 47 UNION ; c850 wMysteryGiftTrainerData:: ds (1 + 1 + NUM_MOVES) * PARTY_LENGTH + 2 @@ -975,62 +975,53 @@ wc8c0:: ds 16 wc8d0:: ds 16 wc8e0:: ds 16 wc8f0:: ds 16 -ENDU +ENDU ; c900 wMysteryGiftPartnerData:: -wc900:: ds 1 -wMysteryGiftPartnerID:: ds 2 +wc900:: db +wMysteryGiftPartnerID:: dw wMysteryGiftPartnerName:: ds NAME_LENGTH -wMysteryGiftPartnerDexCaught:: ds 1 +wMysteryGiftPartnerDexCaught:: db wc90f:: -wMysteryGiftPartnerSentDeco:: ds 1 -wMysteryGiftPartnerWhichItem:: ds 1 -wMysteryGiftPartnerWhichDeco:: ds 1 -wMysteryGiftPartnerBackupItem:: ds 2 +wMysteryGiftPartnerSentDeco:: db +wMysteryGiftPartnerWhichItem:: db +wMysteryGiftPartnerWhichDeco:: db +wMysteryGiftPartnerBackupItem:: db + ds 1 wMysteryGiftPartnerDataEnd:: - ds 12 -wc920:: ds 16 -wc930:: ds 16 -wc940:: ds 16 + + ds 60 + wMysteryGiftPlayerData:: -wc950:: ds 1 -wMysteryGiftPlayerID:: ds 2 + ds 1 +wMysteryGiftPlayerID:: dw wMysteryGiftPlayerName:: ds NAME_LENGTH -wMysteryGiftPlayerDexCaught:: ds 1 -wMysteryGiftPlayerSentDeco:: ds 1 -wMysteryGiftPlayerWhichItem:: ds 1 -wMysteryGiftPlayerWhichDeco:: ds 1 -wMysteryGiftPlayerBackupItem:: ds 2 +wMysteryGiftPlayerDexCaught:: db +wMysteryGiftPlayerSentDeco:: db +wMysteryGiftPlayerWhichItem:: db +wMysteryGiftPlayerWhichDeco:: db +wMysteryGiftPlayerBackupItem:: db + ds 1 wMysteryGiftPlayerDataEnd:: -wc964:: ds 12 -wc970:: ds 16 -wc980:: ds 16 -wc990:: ds 16 -wc9a0:: ds 16 -wc9b0:: ds 16 -wc9c0:: ds 16 -wc9d0:: ds 16 -wc9e0:: ds 16 -wc9f0:: ds 4 + ds 144 + wc9f4:: ds 5 wc9f9:: ds 7 -wCreditsFaux2bpp:: -wca00:: ds 1 -wca01:: ds 1 -wca02:: ds 14 -wca10:: ds 16 -wca20:: ds 16 -wca30:: ds 16 -wca40:: ds 16 -wca50:: ds 16 -wca60:: ds 16 -wca70:: ds 16 - - ds 35 - -wcaa3:: ds 2 ; caa3 +UNION ; ca00 +; blank credits tile buffer +wCreditsFaux2bpp:: ds 128 + +NEXTU ; ca00 +; mystery gift data +wca00:: db +wca01:: db +wca02:: db + ds 160 +ENDU ; caa3 + +wcaa3:: ds 2 wcaa5:: ds 16 wcab5:: ds 10 wcabf:: ds 10 @@ -1039,6 +1030,7 @@ wcb08:: ds 6 wcb0e:: ds 5 wcb13:: ds 9 wcb1c:: ds 14 + wBillsPC_ScrollPosition:: db wBillsPC_CursorPosition:: db wBillsPC_NumMonsInBox:: db @@ -1049,14 +1041,14 @@ wBillsPC_BackupCursorPosition:: db wBillsPC_BackupLoadedBox:: db wBillsPC_MonHasMail:: db ds 18 + wcb45:: ds 20 wcb59:: ds 20 wcb6d:: ds 1 wcb6e:: ds 22 wcb84:: ds 100 wcbe8:: dw -wLinkOTPartyMonTypes:: - ds 2 * PARTY_LENGTH +wLinkOTPartyMonTypes:: ds 2 * PARTY_LENGTH ds 84 wcc4a:: ds 22 @@ -1071,14 +1063,26 @@ wccb5:: ds 3 wccb8:: ds 1 wccb9:: ds 1 wccba:: ds 102 -ENDU +ENDU ; cd20 SECTION "Video", WRAM0 UNION ; cd20 -CreditsPos:: -BGMapBuffer:: +; BGMapBuffer +BGMapBuffer:: ds 40 ; cd20 +BGMapPalBuffer:: ds 40 ; cd48 +BGMapBufferPtrs:: ds 40 ; cd70 ; 20 bg map addresses (16x8 tiles) +BGMapBufferEnd:: + +NEXTU ; cd20 +; credits +CreditsPos:: db +CreditsUnusedCD21:: db +CreditsTimer:: db + +NEXTU ; cd20 +; mobile data wMobileMonSpeciesPointerBuffer:: dw wMobileMonStructurePointerBuffer:: dw wMobileMonOTNamePointerBuffer:: dw @@ -1086,12 +1090,10 @@ wMobileMonNicknamePointerBuffer:: dw wMobileMonMailPointerBuffer:: dw NEXTU ; cd20 +; more mobile data wcd20:: ds 1 wcd21:: ds 1 -wcd22:: -CreditsTimer:: ; cd22 - ds 1 - +wcd22:: ds 1 wcd23:: ds 1 wcd24:: ds 1 wMobileCommsJumptableIndex:: ds 1 ; cd25 @@ -1099,11 +1101,11 @@ wcd26:: ds 1 wcd27:: ds 1 wcd28:: ds 1 wcd29:: ds 1 -ENDU wMobileMonSpeciesBuffer:: -wcd2a:: ds 1 -wTempOddEggNickname:: +wcd2a:: db + +wTempOddEggNickname:: ; ds 11 wcd2b:: ds 1 wcd2c:: ds 1 wcd2d:: ds 1 @@ -1117,9 +1119,9 @@ wcd34:: ds 1 wcd35:: ds 1 ; current time for link/mobile? -wcd36:: ds 1 ; hours -wcd37:: ds 1 ; mins -wcd38:: ds 1 ; secs +wcd36:: db ; hours +wcd37:: db ; mins +wcd38:: db ; secs wcd39:: ds 1 wcd3a:: ds 1 @@ -1134,29 +1136,31 @@ wcd42:: ds 1 wcd43:: ds 1 ; some sort of timer in link battles -wMobileInactivityTimerMinutes:: ds 1 ; mins -wMobileInactivityTimerSeconds:: ds 1 ; secs -wMobileInactivityTimerFrames:: ds 1 ; frames - +wMobileInactivityTimerMinutes:: db ; mins +wMobileInactivityTimerSeconds:: db ; secs +wMobileInactivityTimerFrames:: db ; frames wcd47:: ds 1 -BGMapPalBuffer:: ; cd48 - ds 1 ; 40 + ds 1 wBTTempOTSprite:: -wcd49:: ds 1 +wcd49:: db + wcd4a:: ds 1 wcd4b:: ds 1 + wEZChatCursorXCoord:: -wcd4c:: ds 1 +wcd4c:: db wEZChatCursorYCoord:: -wcd4d:: ds 1 +wcd4d:: db + wcd4e:: ds 1 wcd4f:: ds 1 wcd50:: ds 1 wcd51:: ds 1 wcd52:: ds 1 -wMobileOpponentBattleMessage:: ; dc $c + +wMobileOpponentBattleMessage:: ; ds 12 wcd53:: ds 1 wcd54:: ds 1 wcd55:: ds 1 @@ -1184,18 +1188,15 @@ wcd6b:: ds 1 wcd6c:: ds 1 wcd6d:: ds 1 wcd6e:: ds 1 -wcd6f:: ds 1 - -BGMapBufferPtrs:: ; cd70 -; 20 bg map addresses (16x8 tiles) - ds 1 ; 40 - +wcd6f:: ds 2 wcd71:: ds 1 wcd72:: ds 1 wcd73:: ds 1 wcd74:: ds 1 + wOTMonSelection:: ds 2 ; ds 3 wcd77:: ds 1 + wcd78:: ds 1 wcd79:: ds 1 wcd7a:: ds 2 @@ -1212,17 +1213,18 @@ wcd8a:: ds 1 wcd8b:: ds 1 wcd8c:: ds 1 wcd8d:: ds 11 -BGMapBufferEnd:: +ENDU ; cd98 -SGBPredef:: ; cd98 - ds 1 -PlayerHPPal:: ; cd99 - ds 1 -EnemyHPPal:: ; cd9a - ds 1 +SGBPredef:: db ; cd98 + +PlayerHPPal:: db ; cd99 +EnemyHPPal:: db ; cd9a wHPPals:: ds PARTY_LENGTH -wcda1:: ds 8 +wCurHPPal:: db + + ds 7 + wSGBPals:: ds 48 ; cda9 AttrMap:: ; cdd9 @@ -1237,101 +1239,123 @@ AttrMap:: ; cdd9 ds SCREEN_WIDTH * SCREEN_HEIGHT AttrMapEnd:: -UNION +UNION ; cf41 +; addresses dealing with serial comms + ds 1 +wcf42:: db ds 1 -wcf42:: ds 2 -wcf44:: ds 1 -wcf45:: +wcf44:: db +wcf45:: db -NEXTU -wTileAnimBuffer:: - ds $10 -; addresses dealing with serial comms -ENDU +NEXTU ; cf41 +wTileAnimBuffer:: ds 1 tiles +ENDU ; cf51 -wOtherPlayerLinkMode:: ds 1 -wOtherPlayerLinkAction:: ds 4 -wPlayerLinkAction:: ds 1 -wcf57:: ds 4 +; link data +wOtherPlayerLinkMode:: db +wOtherPlayerLinkAction:: db + ds 3 +wPlayerLinkAction:: db +wcf57:: db + ds 3 wLinkTimeoutFrames:: dw ; cf5b -wcf5d:: ds 2 +wcf5d:: dw -MonType:: ; cf5f - ds 1 +MonType:: db ; cf5f -CurSpecies:: ; cf60 -CurMove:: - ds 1 +CurSpecies:: +CurMove:: db ; cf60 + +wNamedObjectTypeBuffer:: db -wNamedObjectTypeBuffer:: ds 1 ds 1 -wJumptableIndex:: + wBattleTowerBattleEnded:: -wcf63:: ds 1 -wNrOfBeatenBattleTowerTrainers:: -wMomBankDigitCursorPosition:: -wIntroSceneFrameCounter:: -wHoldingUnownPuzzlePiece:: -wCardFlipCursorY:: -wCreditsBorderFrame:: -wDexEntryPrevJumptableIndex:: -wcf64:: ds 1 +wJumptableIndex:: db + +UNION ; cf64 +; unidentified +wcf64:: db +wcf65:: db +wcf66:: db + +NEXTU ; cf64 +; intro and title data +wIntroSceneFrameCounter:: db +wTitleScreenTimer:: dw + +NEXTU ; cf64 +; credits data +wCreditsBorderFrame:: db +wCreditsBorderMon:: db +wCreditsLYOverride:: db + +NEXTU ; cf64 +; unown puzzle data +wHoldingUnownPuzzlePiece:: db +wUnownPuzzleCursorPosition:: db +wUnownPuzzleHeldPiece:: db + +NEXTU ; cf64 +; card flip data +wCardFlipCursorY:: db +wCardFlipCursorX:: db +wCardFlipWhichCard:: db + +NEXTU ; cf64 +; pokedex +wDexEntryPrevJumptableIndex:: db IF !DEF(CRYSTAL11) -wPokedexStatus:: +wPokedexStatus:: db ENDC -wCreditsBorderMon:: -wTitleScreenTimerLo:: -wUnownPuzzleCursorPosition:: -wCardFlipCursorX:: + +NEXTU ; cf64 +; miscellaneous +wNrOfBeatenBattleTowerTrainers:: +wMomBankDigitCursorPosition:: + db wCurrPocket:: wPrinterQueueLength:: -wcf65:: ds 1 -wCreditsLYOverride:: -wTitleScreenTimerHi:: -wUnownPuzzleHeldPiece:: -wCardFlipWhichCard:: -wcf66:: ds 1 - -Requested2bpp:: ; cf67 -Requested2bppSize:: - ds 1 -Requested2bppSource:: ; cf68 - ds 2 -Requested2bppDest:: ; cf6a - ds 2 + db +ENDU ; cf67 -Requested1bpp:: ; cf6c -Requested1bppSize:: - ds 1 -Requested1bppSource:: ; cf6d - ds 2 -Requested1bppDest:: ; cf6f - ds 2 +Requested2bpp:: +Requested2bppSize:: db ; cf67 +Requested2bppSource:: dw ; cf68 +Requested2bppDest:: dw ; cf6a + +Requested1bpp:: +Requested1bppSize:: db ; cf6c +Requested1bppSource:: dw ; cf6d +Requested1bppDest:: dw ; cf6f wWindowStackPointer:: dw ; cf71 -wMenuJoypad:: ds 1 ; cf73 -MenuSelection:: ds 1 ; cf74 -MenuSelectionQuantity:: ds 1 ; cf75 -wWhichIndexSet:: ds 1 ; cf76 -wScrollingMenuCursorPosition:: ds 1 ; cf77 -wWindowStackSize:: ds 9 ; cf78 +wMenuJoypad:: db ; cf73 +MenuSelection:: db ; cf74 +MenuSelectionQuantity:: db ; cf75 +wWhichIndexSet:: db ; cf76 +wScrollingMenuCursorPosition:: db ; cf77 +wWindowStackSize:: db ; cf78 + + ds 8 ; menu data header wMenuDataHeader:: ; cf81 -wMenuFlags:: ds 1 -wMenuBorderTopCoord:: ds 1 -wMenuBorderLeftCoord:: ds 1 -wMenuBorderBottomCoord:: ds 1 -wMenuBorderRightCoord:: ds 1 -wMenuData2Pointer:: ds 2 -wMenuCursorBuffer:: ds 2 -; end menu data header -wMenuDataBank:: ds 1 ; menu data bank? +wMenuFlags:: db +wMenuBorderTopCoord:: db +wMenuBorderLeftCoord:: db +wMenuBorderBottomCoord:: db +wMenuBorderRightCoord:: db +wMenuData2Pointer:: dw +wMenuCursorBuffer:: dw +wMenuDataBank:: db ds 6 wMenuDataHeaderEnd:: wMenuData2:: -wMenuData2Flags:: ds 1 ; cf91 +UNION ; cf91 +; MenuData2 +wMenuData2Flags:: ; cf91 ; bit 7: When set, start printing text one tile to the right of the border ; In scrolling menus, SELECT is functional ; bit 6: When set, start printing text one tile below the border @@ -1342,104 +1366,98 @@ wMenuData2Flags:: ds 1 ; cf91 ; bit 2: ???? ; bit 1: Enable Select button ; bit 0: Disable B button - -wMenuData2_ScrollingMenuHeight:: -wMenuData2Items:: - ds 1 ; cf92 -wMenuData2IndicesPointer:: -wMenuData2Spacing:: -wMenuData2_ScrollingMenuWidth:: - ds 1 ; cf93 -wMenuData2_2DMenuItemStringsBank:: -wMenuData2_ScrollingMenuSpacing:: - ds 1 ; cf94 -wMenuData2_2DMenuItemStringsAddr:: -wMenuData2DisplayFunctionPointer:: -wMenuData2_ItemsPointerBank:: - ds 1 ; cf95 -wMenuData2_ItemsPointerAddr:: - ds 1 ; cf96 -wMenuData2PointerTableAddr:: -wMenuData2_2DMenuFunctionBank:: - ds 1 ; cf97 -wMenuData2_2DMenuFunctionAddr:: -wMenuData2_ScrollingMenuFunction1:: - ds 3 ; cf98 -wMenuData2_ScrollingMenuFunction2:: - ds 3 ; cf9b -wMenuData2_ScrollingMenuFunction3:: - ds 3 ; cf9e + db +wMenuData2Items:: db ; cf92 +wMenuData2IndicesPointer:: dw ; cf94 +wMenuData2DisplayFunctionPointer:: dw ; cf96 +wMenuData2PointerTableAddr:: dw ; cf97 + +NEXTU ; cf91 +; 2D menu + ds 2 ; cf91 +wMenuData2Spacing:: db ; cf93 +wMenuData2_2DMenuItemStringsBank:: db ; cf94 +wMenuData2_2DMenuItemStringsAddr:: dw ; cf96 +wMenuData2_2DMenuFunctionBank:: db ; cf97 +wMenuData2_2DMenuFunctionAddr:: dw ; cf98 + +NEXTU ; cf91 +; scrolling menu + ds 1 ; cf91 +wMenuData2_ScrollingMenuHeight:: db ; cf92 +wMenuData2_ScrollingMenuWidth:: db ; cf93 +wMenuData2_ScrollingMenuSpacing:: db ; cf94 +wMenuData2_ItemsPointerBank:: db ; cf95 +wMenuData2_ItemsPointerAddr:: dw ; cf97 +wMenuData2_ScrollingMenuFunction1:: ds 3 ; cf98 +wMenuData2_ScrollingMenuFunction2:: ds 3 ; cf9b +wMenuData2_ScrollingMenuFunction3:: ds 3 ; cf9e +ENDU ; cfa1 wMenuData2End:: wMenuData3:: -w2DMenuCursorInitY:: ds 1 ; cfa1 -w2DMenuCursorInitX:: ds 1 ; cfa2 -w2DMenuNumRows:: ds 1 ; cfa3 -w2DMenuNumCols:: ds 1 ; cfa4 -w2DMenuFlags1:: ds 1 ; cfa5 -w2DMenuFlags2:: ds 1 ; cfa6 -w2DMenuCursorOffsets:: ds 1 ; cfa7 -wMenuJoypadFilter:: ds 1 ; cfa8 +w2DMenuCursorInitY:: db ; cfa1 +w2DMenuCursorInitX:: db ; cfa2 +w2DMenuNumRows:: db ; cfa3 +w2DMenuNumCols:: db ; cfa4 +w2DMenuFlags1:: db ; cfa5 +w2DMenuFlags2:: db ; cfa6 +w2DMenuCursorOffsets:: db ; cfa7 +wMenuJoypadFilter:: db ; cfa8 wMenuData3End:: -wMenuCursorY:: ds 1 ; cfa9 -wMenuCursorX:: ds 1 ; cfaa -wCursorOffCharacter:: ds 1 ; cfab -wCursorCurrentTile:: ds 2 ; cfac +wMenuCursorY:: db ; cfa9 +wMenuCursorX:: db ; cfaa +wCursorOffCharacter:: db ; cfab +wCursorCurrentTile:: dw ; cfac + ds 3 -OverworldDelay:: ; cfb1 - ds 1 -TextDelayFrames:: ; cfb2 - ds 1 -VBlankOccurred:: ; cfb3 - ds 1 +OverworldDelay:: db ; cfb1 +TextDelayFrames:: db ; cfb2 +VBlankOccurred:: db ; cfb3 -PredefID:: ; cfb4 - ds 1 -PredefTemp:: ; cfb5 - ds 2 -PredefAddress:: ; cfb7 - ds 2 -wFarCallBCBuffer:: ; cfb9 - ds 2 +PredefID:: db ; cfb4 +PredefTemp:: dw ; cfb5 +PredefAddress:: dw ; cfb7 +wFarCallBCBuffer:: dw ; cfb9 + +wcfbb:: db -wcfbb:: ds 1 GameTimerPause:: ; cfbc ; bit 0 - ds 1 + db ds 1 -wcfbe:: -; SGB flags? - ds 2 +wcfbe:: ; SGB flags? +; bit 7 + db + + ds 1 InBattleTowerBattle:: ; cfc0 ; 0 not in BattleTower-Battle ; 1 BattleTower-Battle - ds 1 + db ds 1 -FXAnimID:: -FXAnimIDLo:: ; cfc2 - ds 1 -FXAnimIDHi:: ; cfc3 - ds 1 -wPlaceBallsX:: ; cfc4 - ds 1 -wPlaceBallsY:: ; cfc5 - ds 1 -TileAnimationTimer:: ; cfc6 - ds 1 +FXAnimID:: dw ; cfc2 + +wPlaceBallsX:: db ; cfc4 +wPlaceBallsY:: db ; cfc5 + +TileAnimationTimer:: db ; cfc6 ; palette backups? -wBGP:: ds 1 -wOBP0:: ds 1 -wOBP1:: ds 1 +wBGP:: db +wOBP0:: db +wOBP1:: db -wNumHits:: ds 2 +wNumHits:: db + + ds 1 Options:: ; cfcc ; bit 0-2: number of frames to delay when printing text @@ -1449,16 +1467,12 @@ Options:: ; cfcc ; bit 5: stereo off/on ; bit 6: battle style shift/set ; bit 7: battle scene off/on - ds 1 - -wSaveFileExists:: ds 1 - + db +wSaveFileExists:: db TextBoxFrame:: ; cfce ; bits 0-2: textbox frame 0-7 - ds 1 -TextBoxFlags:: - ds 1 - + db +TextBoxFlags:: db GBPrinter:: ; cfd0 ; bit 0-6: brightness ; lightest: $00 @@ -1466,22 +1480,19 @@ GBPrinter:: ; cfd0 ; normal: $40 (default) ; darker: $60 ; darkest: $7F - ds 1 - + db Options2:: ; cfd1 ; bit 1: menu account off/on - ds 1 - + db ds 2 OptionsEnd:: ; Time buffer, for counting the amount of time since ; an event began. - -wSecondsSince:: ds 1 -wMinutesSince:: ds 1 -wHoursSince:: ds 1 -wDaysSince:: ds 1 +wSecondsSince:: db +wMinutesSince:: db +wHoursSince:: db +wDaysSince:: db SECTION "WRAM 1", WRAMX @@ -1492,21 +1503,24 @@ wd000:: ds 1 DefaultSpawnpoint:: db UNION ; d002 +; mail temp storage wTempMail:: mailmsg wTempMail NEXTU ; d002 -wSeerAction:: ds 1 +; poke seer +wSeerAction:: db wSeerNickname:: ds PKMN_NAME_LENGTH wSeerCaughtLocation:: ds 17 wSeerTimeOfDay:: ds NAME_LENGTH wSeerOTName:: ds NAME_LENGTH -wSeerOTNameGrammar:: ds 1 +wSeerOTNameGrammar:: db wSeerCaughtLevelString:: ds 4 -wSeerCaughtLevel:: ds 1 -wSeerCaughtData:: ds 1 -wSeerCaughtGender:: ds 1 +wSeerCaughtLevel:: db +wSeerCaughtData:: db +wSeerCaughtGender:: db NEXTU ; d002 +; mon buffer wBufferMonNick:: ds PKMN_NAME_LENGTH ; d002 wBufferMonOT:: ds NAME_LENGTH ; d00d wBufferMon:: party_struct wBufferMon ; d018 @@ -1514,6 +1528,7 @@ wBufferMon:: party_struct wBufferMon ; d018 wMonOrItemNameBuffer:: NEXTU ; d002 +; bug-catching contest wBugContestResults:: bugcontestwinner wBugContestFirstPlace bugcontestwinner wBugContestSecondPlace @@ -1524,88 +1539,120 @@ wBugContestWinnersEnd:: wBugContestWinnerName:: ds NAME_LENGTH NEXTU ; d002 -wd002:: -wTempDayOfWeek:: -wApricorns:: -PhoneScriptBank:: -LuckyNumberDigit1Buffer:: -wCurrentRadioLine:: -wMovementBufferCount:: -wMartItem1BCD:: -wWhichBoxMonToPrint:: - ds 1 -wd003:: -LuckyNumberDigit2Buffer:: -PhoneCallerLo:: -wNextRadioLine:: -wMovementBufferPerson:: -wPlaceBallsDirection:: -wFinishedPrintingBox:: - ds 1 -wd004:: -LuckyNumberDigit3Buffer:: -PhoneCallerHi:: -wRadioTextDelay:: -wTrainerHUDTiles:: -wAddrOfBoxToPrint:: - ds 1 -wd005:: -LuckyNumberDigit4Buffer:: -StartFlypoint:: ; d005 -wNumRadioLinesPrinted:: -wMartItem2BCD:: - ds 1 -wd006:: -wMobileParticipant1Nickname:: -LuckyNumberDigit5Buffer:: -EndFlypoint:: ; d006 -wOaksPkmnTalkSegmentCounter:: -wBankOfBoxToPrint:: - ds 1 +; mart items +wMartItem1BCD:: ds 3 +wMartItem2BCD:: ds 3 +wMartItem3BCD:: ds 3 +wMartItem4BCD:: ds 3 +wMartItem5BCD:: ds 3 +wMartItem6BCD:: ds 3 +wMartItem7BCD:: ds 3 +wMartItem8BCD:: ds 3 +wMartItem9BCD:: ds 3 +wMartItem10BCD:: ds 3 +wMartItemBCDEnd:: -wd007:: -wWhichBoxToPrint:: -MovementBuffer:: ; d007 - ds 1 +NEXTU ; d002 +; town map data +wTownMapPlayerIconLandmark:: ds 1 +UNION +wTownMapCursorLandmark:: ds 1 +wTownMapCursorObjectPointer:: ds 2 +NEXTU +wTownMapCursorCoordinates:: ds 2 +ENDU -wMartItem3BCD:: -wd008:: ds 2 -wd00a:: ds 1 -wMartItem4BCD:: -wd00b:: ds 1 +NEXTU ; d002 +; phone call data +PhoneScriptBank:: db +PhoneCallerLo:: db +PhoneCallerHi:: db -UNION ; d00c +NEXTU ; d002 +; radio data +wCurrentRadioLine:: db +wNextRadioLine:: db +wRadioTextDelay:: db +wNumRadioLinesPrinted:: db +wOaksPkmnTalkSegmentCounter:: db + ds 5 wRadioText:: ds 2 * SCREEN_WIDTH wRadioTextEnd:: -NEXTU ; d00c -wMobileParticipant2Nickname:: +NEXTU ; d002 +; lucky number show +LuckyNumberDigit1Buffer:: db +LuckyNumberDigit2Buffer:: db +LuckyNumberDigit3Buffer:: db +LuckyNumberDigit4Buffer:: db +LuckyNumberDigit5Buffer:: db + +NEXTU ; d002 +; movement buffer data +wMovementBufferCount:: db +wMovementBufferPerson:: db +wUnusedMovementBufferBank:: db +wUnusedMovementBufferPointer:: dw +MovementBuffer:: ds 55 + +NEXTU ; d002 +; box printing +wWhichBoxMonToPrint:: db +wFinishedPrintingBox:: db +wAddrOfBoxToPrint:: dw +wBankOfBoxToPrint:: db +wWhichBoxToPrint:: db + +NEXTU ; d002 +; trainer HUD data + ds 1 +wPlaceBallsDirection:: db +wTrainerHUDTiles:: db + +NEXTU ; d002 +; mobile participant nicknames + ds 4 +wMobileParticipant1Nickname:: ds 6 +wMobileParticipant2Nickname:: ds 6 +wMobileParticipant3Nickname:: ds 6 + +NEXTU ; d002 +; earthquake data buffer +wEarthquakeMovementDataBuffer:: ds 5 + +NEXTU ; d002 +; miscellaneous +wTempDayOfWeek:: +wApricorns:: db + ds 2 + +StartFlypoint:: db +EndFlypoint:: db + +NEXTU ; d002 +; unidentified +wd002:: db +wd003:: db +wd004:: db + +; mobile? + ds 3 +wd008:: ds 2 + ds 2 wd00c:: ds 1 wd00d:: ds 1 -wMartItem5BCD:: -wd00e:: ds 1 + ds 1 wd00f:: ds 1 wd010:: ds 1 -wMartItem6BCD:: wd011:: ds 1 -wMobileParticipant3Nickname:: wd012:: ds 1 wd013:: ds 1 -wMartItem7BCD:: wd014:: ds 2 -wd016:: ds 1 -wMartItem8BCD:: + ds 1 wd017:: ds 1 - wd018:: ds 1 wd019:: ds 1 -wMartItem9BCD:: -wd01a:: ds 3 -wMartItem10BCD:: ds 2 -wd01f:: ds 1 -wMartItemBCDEnd:: - ds 13 - + ds 19 wd02d:: ds 1 wd02e:: ds 1 wd02f:: ds 1 @@ -1615,80 +1662,104 @@ wd032:: ds 1 wd033:: ds 1 wd034:: ds 2 wd036:: ds 2 -wd038:: ds 3 -wd03b:: ds 3 -ENDU - -MenuItemsList:: -CurFruitTree:: -CurInput:: -wElevatorPointerBank:: -wCurCoordEventTriggerID:: -wCurSignpostYCoord:: -EngineBuffer1:: ; d03e - ds 1 + ds 6 -wd03f:: -wJumpStdScriptBuffer:: -CurFruit:: ; d03f -MartPointerBank:: -wElevatorPointerLo:: -wCurCoordEventMapY:: -wCurSignpostXCoord:: -EngineBuffer2:: - ds 1 +UNION ; d03e +; engine buffers +EngineBuffer1:: db +EngineBuffer2:: db +EngineBuffer3:: db +EngineBuffer4:: db +EngineBuffer5:: db + +NEXTU ; d03e +; menu items list +MenuItemsList:: ds 16 +MenuItemsListEnd:: -wd040:: -wElevatorPointerHi:: -MartPointer:: ; d040 -wCurCoordEventMapX:: -wCurSignpostType:: -EngineBuffer3:: - ds 1 +NEXTU ; d03e +; fruit tree data +CurFruitTree:: db +CurFruit:: db -wd041:: -wElevatorOriginFloor:: -wTempTrainerHeader:: -wTempTrainerEventFlagLo:: -wCurSignpostScriptAddr:: -EngineBuffer4:: +NEXTU ; d03e +; elevator data +wElevatorPointerBank:: db +wElevatorPointerLo:: db +wElevatorPointerHi:: db +wElevatorOriginFloor:: db + +NEXTU ; d03e +; coord event data +wCurCoordEventTriggerID:: db +wCurCoordEventMapY:: db +wCurCoordEventMapX:: db + ds 1 +wCurCoordEventScriptAddr:: dw + +NEXTU ; d03e +; signpost data +wCurSignpostYCoord:: db +wCurSignpostXCoord:: db +wCurSignpostType:: db +wCurSignpostScriptAddr:: dw + +NEXTU ; d03e +; mart data ds 1 - -wTempTrainerEventFlagHi:: -MovementAnimation:: ; d042 -wCurCoordEventScriptAddr:: -EngineBuffer5:: +MartPointerBank:: db +MartPointer:: dw ds 1 +wBargainShopFlags:: db -wTempTrainerClass:: -WalkingDirection:: ; d043 -wBargainShopFlags:: - ds 1 +NEXTU ; d03e +; trainer data + ds 3 +wTempTrainerHeader:: +wTempTrainerEventFlagLo:: db +wTempTrainerEventFlagHi:: db +wTempTrainerClass:: db +wTempTrainerID:: db +wSeenTextPointer:: dw +wWinTextPointer:: dw +wLossTextPointer:: dw +wScriptAfterPointer:: dw +wRunningTrainerBattleScript:: db +wTempTrainerHeaderEnd:: -wTempTrainerID:: -FacingDirection:: ; d044 - ds 1 +NEXTU ; d03e +; player movement data +CurInput:: db +wd03f:: db +wd040:: db +wd041:: db +MovementAnimation:: db +WalkingDirection:: db +FacingDirection:: db +WalkingX:: db +WalkingY:: db +WalkingTile:: db + ds 6 +wPlayerTurningDirection:: db -wSeenTextPointer:: -WalkingX:: -wd045:: ; d045 - ds 1 -WalkingY:: ; d046 +NEXTU ; d03e +; std script buffer ds 1 +wJumpStdScriptBuffer:: ds 3 -WalkingTile:: ; d047 -wWinTextPointer:: - ds 1 +NEXTU ; d03e +; phone script pointer + ds 10 +wPhoneScriptPointer:: dw -wPhoneScriptPointer:: ds 1 -wLossTextPointer:: ds 2 -wScriptAfterPointer:: ds 2 -wRunningTrainerBattleScript:: ds 1 -MenuItemsListEnd:: -wTempTrainerHeaderEnd:: -wPlayerTurningDirection:: ; d04e - ds 24 -ENDU +NEXTU ; d03e +; backup menu data + ds 7 +wMenuCursorBufferBackup:: db +wMenuScrollPositionBackup:: db + ds 31 +ENDU ; d066 +ENDU ; d066 wTMHMMoveNameBackup:: ds MOVE_NAME_LENGTH ; d066 @@ -1698,7 +1769,7 @@ StringBuffer3:: ds 19 ; d099 StringBuffer4:: ds 19 ; d0ac StringBuffer5:: ds 19 ; d0bf -wd0d2:: ds 2 +wBattleMenuCursorBuffer:: dw ; d0d2 CurBattleMon:: db ; d0d4 CurMoveNum:: db ; d0d5 @@ -1719,15 +1790,18 @@ wKeyItemsPocketScrollPosition:: db wBallsPocketScrollPosition:: db wTMHMPocketScrollPosition:: db -wMoveSwapBuffer:: wSwitchMon:: wSwitchItem:: +wMoveSwapBuffer:: wd0e3:: ds 1 + wMenuScrollPosition:: ds 4 -wQueuedScriptBank:: ds 1 -wQueuedScriptAddr:: ds 2 -wNumMoves:: -wd0eb:: ds 1 + +wQueuedScriptBank:: db +wQueuedScriptAddr:: dw + +wNumMoves:: db + wFieldMoveSucceeded:: wItemEffectSucceeded:: wPlayerAction:: @@ -1735,7 +1809,7 @@ wPlayerAction:: ; 1 - use item ; 2 - switch wSolvedUnownPuzzle:: - ds 1 ; d0ec + db ; d0ec VramState:: ; d0ed ; bit 0: overworld sprite updating on/off @@ -1764,7 +1838,7 @@ wCurMessageIndex:: db wMailboxCount:: db wMailboxItems:: ds MAILBOX_CAPACITY wMailboxEnd:: ds 1 ; d0fe -ENDU +ENDU ; d100 wListPointer:: dw ; d100 wUnusedD102:: dw ; d102 @@ -1845,8 +1919,8 @@ UsedSpritesEnd:: NEXTU ; d154 ds 31 -wd173:: ds 1 ; related to command queue type 3 -ENDU +wd173:: db ; related to command queue type 3 +ENDU ; d194 wOverworldMapAnchor:: dw ; d194 wMetatileStandingY:: db ; d196 @@ -1929,7 +2003,16 @@ EvolvableFlags:: flag_array PARTY_LENGTH ; d1e8 wForceEvolution:: db ; d1e9 -UNION +UNION ; d1ea +; general-purpose buffers +Buffer1:: db ; d1ea +Buffer2:: db ; d1eb +Buffer3:: db ; d1ec +Buffer4:: db ; d1ed +Buffer5:: db ; d1ee +Buffer6:: db ; d1ef + +NEXTU ; d1ea ; HP bar animations wCurHPAnimMaxHP:: dw ; d1ea wCurHPAnimOldHP:: dw ; d1ec @@ -1941,41 +2024,40 @@ wCurHPAnimDeltaHP:: dw ; d1f3 wCurHPAnimLowHP:: db ; d1f5 wCurHPAnimHighHP:: db ; d1f6 -NEXTU -MagikarpLength:: -wEvolutionOldSpecies:: -Buffer1:: ; d1ea - ds 1 -MovementType:: -wEvolutionNewSpecies:: -Buffer2:: ; d1eb - ds 1 -wEvolutionPicOffset:: -Buffer3:: +NEXTU ; d1ea +; evolution data +wEvolutionOldSpecies:: db ; d1ea +wEvolutionNewSpecies:: db ; d1eb +wEvolutionPicOffset:: db ; d1ec +wEvolutionCanceled:: db ; d1ed + +NEXTU ; d1ea +; mobile + ds 2 wd1ec:: ds 1 -wEvolutionCanceled:: -Buffer4:: wd1ed:: ds 1 -Buffer5:: wd1ee:: ds 1 -Buffer6:: wd1ef:: ds 1 wd1f0:: ds 1 -CurEnemyItem:: wd1f1:: ds 1 wd1f2:: ds 1 -wd1f3:: ds 1 -wd1f4:: ds 1 -wd1f5:: ds 1 -wd1f6:: - ds 4 -ENDU +wd1f3:: ds 4 -LinkBattleRNs:: ; d1fa - ds 10 +NEXTU ; d1ea +; miscellaneous +wMagikarpLength:: dw +wSelectedDecoration:: db +wOtherDecoration:: db + ds 3 +CurEnemyItem:: db +ENDU ; d1f7 + + ds 3 + +LinkBattleRNs:: ds 10 ; d1fa -TempEnemyMonSpecies:: ds 1 ; d204 -TempBattleMonSpecies:: ds 1 ; d205 +TempEnemyMonSpecies:: db ; d204 +TempBattleMonSpecies:: db ; d205 EnemyMon:: battle_struct EnemyMon ; d206 EnemyMonBaseStats:: ds 5 ; d226 @@ -2040,6 +2122,7 @@ BaseEggGroups:: db ; d24d BaseTMHM:: flag_array NUM_TM_HM_TUTOR ; d24e CurDamage:: dw ; d256 + ds 2 wMornEncounterRate:: db ; d25a @@ -2068,7 +2151,7 @@ TimeOfDay:: db ; d269 SECTION "Enemy Party", WRAMX -UNION +UNION ; d26b wPokedexShowPointerAddr:: wd26b:: ds 1 wd26c:: ds 1 @@ -2077,33 +2160,35 @@ wd26d:: ds 1 ds 3 wd271:: ds 5 -NEXTU +NEXTU ; d26b ; SECTION "Enemy Party", WRAMX OTPlayerName:: ds NAME_LENGTH ; d26b -ENDU +ENDU ; d276 OTPlayerID:: ds 2 ; d276 ds 8 OTPartyCount:: ds 1 ; d280 OTPartySpecies:: ds PARTY_LENGTH ; d281 -OTPartyEnd:: ds 1 +OTPartyEnd:: ds 1 ; legacy scripts don't check PartyCount -UNION -wDudeBag:: ; d288 -wDudeNumItems:: ds 1 +UNION ; d288 +; catch tutorial dude pack +wDudeBag:: +wDudeNumItems:: db wDudeItems:: ds 2 * 4 -wDudeItemsEnd:: ds 1 +wDudeItemsEnd:: db -wDudeNumKeyItems:: ds 1 ; d292 +wDudeNumKeyItems:: db ; d292 wDudeKeyItems:: ds 18 -wDudeKeyItemsEnd:: ds 1 +wDudeKeyItemsEnd:: db -wDudeNumBalls:: ds 1 ; d2a6 +wDudeNumBalls:: db ; d2a6 wDudeBalls:: ds 2 * 4 ; d2a7 -wDudeBallsEnd:: ds 1 ; d2af +wDudeBallsEnd:: db ; d2af wDudeBagEnd:: -NEXTU +NEXTU ; d288 +; ot party mons OTPartyMons:: OTPartyMon1:: party_struct OTPartyMon1 ; d288 OTPartyMon2:: party_struct OTPartyMon2 ; d2b8 @@ -2117,72 +2202,66 @@ OTPartyMonOT:: ds NAME_LENGTH * PARTY_LENGTH ; d3a8 OTPartyMonNicknames:: ds PKMN_NAME_LENGTH * PARTY_LENGTH ; d3ea OTPartyDataEnd:: ds 4 -ENDU +ENDU ; d430 wd430:: -wBattleAction:: ds 1 ; d430 +wBattleAction:: db ; d430 -wd431:: ds 1 -MapStatus:: ; d432 - ds 1 +wd431:: db +MapStatus:: db ; d432 MapEventStatus:: ; d433 ; 0: do map events ; 1: do background events - ds 1 + db ScriptFlags:: ; d434 ; bit 3: priority jump - ds 1 + db ScriptFlags2:: ; d435 - ds 1 + db ScriptFlags3:: ; d436 ; bit 0: count steps ; bit 1: xy triggers ; bit 2: warps and connections ; bit 4: wild encounters ; bit 5: unknown - ds 1 + db -ScriptMode:: ; d437 - ds 1 -ScriptRunning:: ; d438 - ds 1 -ScriptBank:: ; d439 - ds 1 -ScriptPos:: ; d43a - ds 2 +ScriptMode:: db ; d437 +ScriptRunning:: db ; d438 +ScriptBank:: db ; d439 +ScriptPos:: dw ; d43a -wScriptStackSize:: ds 1 +wScriptStackSize:: db wScriptStack:: ds 3 * 5 ds 1 -ScriptDelay:: ; d44d - ds 1 +ScriptDelay:: db ; d44d wPriorityScriptBank:: -wScriptTextBank:: - ds 1 ; d44e +wScriptTextBank:: db ; d44e wPriorityScriptAddr:: -wScriptTextAddr:: ds 2 ; d44f +wScriptTextAddr:: dw ; d44f ds 1 -wWildEncounterCooldown:: ds 1 ; d452 -wXYComparePointer:: ds 2 ; d453 +wWildEncounterCooldown:: db ; d452 +wXYComparePointer:: dw ; d453 ds 4 -wBattleScriptFlags:: ds 2 ; d459 -wPlayerSpriteSetupFlags:: ds 1 ; d45b +wBattleScriptFlags:: dw ; d459 +wPlayerSpriteSetupFlags:: ; d45b ; bit 7: if set, cancel PlayerAction ; bit 5: if set, set facing according to bits 0-1 ; bits 0-1: direction facing -wMapReentryScriptQueueFlag:: ds 1 ; d45c MemScriptFlag -wMapReentryScriptBank:: ds 1 ; d45d MemScriptBank -wMapReentryScriptAddress:: ds 2 ; d45e MemScriptAddr - ds 4 ; ????????????? -wTimeCyclesSinceLastCall:: ds 1 ; d464 -wReceiveCallDelay_MinsRemaining:: ds 1 ; d465 + db +wMapReentryScriptQueueFlag:: db ; d45c MemScriptFlag +wMapReentryScriptBank:: db ; d45d MemScriptBank +wMapReentryScriptAddress:: dw ; d45e MemScriptAddr + ds 4 +wTimeCyclesSinceLastCall:: db ; d464 +wReceiveCallDelay_MinsRemaining:: db ; d465 wReceiveCallDelay_StartTime:: ds 3 ; d466 ds 3 -wBugContestMinsRemaining:: ds 1 ; d46c -wBugContestSecsRemaining:: ds 1 ; d46d +wBugContestMinsRemaining:: db ; d46c +wBugContestSecsRemaining:: db ; d46d ds 2 wMapStatusEnd:: ds 2 ; d470 @@ -2191,7 +2270,7 @@ PlayerGender:: ; d472 ; bit 0: ; 0 male ; 1 female - ds 1 + db wd473:: ds 1 wd474:: ds 1 wd475:: ds 1 @@ -2205,7 +2284,7 @@ wd479:: ds 2 wGameData:: wPlayerData:: PlayerID:: ; d47b - ds 2 + dw PlayerName:: ds NAME_LENGTH ; d47d MomsName:: ds NAME_LENGTH ; d488 @@ -2213,45 +2292,34 @@ RivalName:: ds NAME_LENGTH ; d493 RedsName:: ds NAME_LENGTH ; d49e GreensName:: ds NAME_LENGTH ; d4a9 -wSavedAtLeastOnce:: ds 1 -wSpawnAfterChampion:: ds 1 +wSavedAtLeastOnce:: db +wSpawnAfterChampion:: db ; init time set at newgame -StartDay:: ; d4b6 - ds 1 -StartHour:: ; d4b7 - ds 1 -StartMinute:: ; d4b8 - ds 1 -StartSecond:: ; d4b9 - ds 1 +StartDay:: db ; d4b6 +StartHour:: db ; d4b7 +StartMinute:: db ; d4b8 +StartSecond:: db ; d4b9 -wRTC:: ; d4ba - ds 8 -wDST:: ; d4c2 - ds 1 +wRTC:: ds 8 ; d4ba +wDST:: db ; d4c2 -GameTimeCap:: ; d4c3 - ds 1 -GameTimeHours:: ; d4c4 - ds 2 -GameTimeMinutes:: ; d4c6 - ds 1 -GameTimeSeconds:: ; d4c7 - ds 1 -GameTimeFrames:: ; d4c8 - ds 1 +GameTimeCap:: db ; d4c3 +GameTimeHours:: dw ; d4c4 +GameTimeMinutes:: db ; d4c6 +GameTimeSeconds:: db ; d4c7 +GameTimeFrames:: db ; d4c8 ds 2 -CurDay:: ; d4cb - ds 1 +CurDay:: db ; d4cb ds 1 -wObjectFollow_Leader:: ds 1 -wObjectFollow_Follower:: ds 1 -wCenteredObject:: ds 1 -wFollowerMovementQueueLength:: ds 1 + +wObjectFollow_Leader:: db +wObjectFollow_Follower:: db +wCenteredObject:: db +wFollowerMovementQueueLength:: db wFollowMovementQueue:: ds 5 ObjectStructs:: ; d4d6 @@ -2271,7 +2339,8 @@ ObjectStructs:: ; d4d6 ObjectStructsEnd:: ; d6de wCmdQueue:: ds CMDQUEUE_CAPACITY * CMDQUEUE_ENTRY_SIZE - ds $28 + + ds 40 MapObjects:: ; d71e map_object Player @@ -2294,23 +2363,19 @@ MapObjectsEnd:: wObjectMasks:: ds NUM_OBJECTS ; d81e -VariableSprites:: ; d82e - ds $10 +VariableSprites:: ds 16; d82e -wEnteredMapFromContinue:: ds 1 ; d83e +wEnteredMapFromContinue:: db ; d83e ds 2 -TimeOfDayPal:: ; d841 - ds 1 +TimeOfDayPal:: db ; d841 ds 4 -; d846 -wTimeOfDayPalFlags:: ds 1 -wTimeOfDayPalset:: ds 1 -CurTimeOfDay:: ; d848 - ds 1 +wTimeOfDayPalFlags:: db ; d846 +wTimeOfDayPalset:: db +CurTimeOfDay:: db ; d848 ds 1 -wSecretID:: ds 2 +wSecretID:: dw StatusFlags:: ; d84c ; 0 - pokedex ; 1 - unown dex @@ -2320,7 +2385,7 @@ StatusFlags:: ; d84c ; 5 - wild encounters on/off ; 6 - hall of fame ; 7 - bug contest on - ds 1 + db StatusFlags2:: ; d84d ; 0 - rockets @@ -2331,356 +2396,323 @@ StatusFlags2:: ; d84d ; 5 - pokerus ; 6 - berry juice? ; 7 - rockets in mahogany - ds 1 - -Money:: ; d84e - ds 3 + db -wMomsMoney:: ; d851 - ds 3 -wMomSavingMoney:: ; d854 - ds 1 +Money:: ds 3 ; d84e +wMomsMoney:: ds 3 ; d851 +wMomSavingMoney:: db ; d854 -Coins:: ; d855 - ds 2 +Coins:: dw ; d855 Badges:: -JohtoBadges:: ; d857 - flag_array 8 -KantoBadges:: ; d858 - flag_array 8 +JohtoBadges:: flag_array NUM_JOHTO_BADGES ; d857 +KantoBadges:: flag_array NUM_KANTO_BADGES ; d858 -TMsHMs:: ; d859 - ds NUM_TMS + NUM_HMS +TMsHMs:: ds NUM_TMS + NUM_HMS ; d859 TMsHMsEnd:: -NumItems:: ; d892 - ds 1 -Items:: ; d893 - ds MAX_ITEMS * 2 + 1 +NumItems:: db ; d892 +Items:: ds MAX_ITEMS * 2 + 1 ; d893 ItemsEnd:: -NumKeyItems:: ; d8bc - ds 1 -KeyItems:: ; d8bd - ds MAX_KEY_ITEMS + 1 +NumKeyItems:: db ; d8bc +KeyItems:: ds MAX_KEY_ITEMS + 1 ; d8bd KeyItemsEnd:: -NumBalls:: ; d8d7 - ds 1 -Balls:: ; d8d8 - ds MAX_BALLS * 2 + 1 +NumBalls:: db ; d8d7 +Balls:: ds MAX_BALLS * 2 + 1 ; d8d8 BallsEnd:: -PCItems:: ; d8f1 - ds MAX_PC_ITEMS * 2 + 1 +PCItems:: ds MAX_PC_ITEMS * 2 + 1 ; d8f1 PCItemsEnd:: ds 1 -wPokegearFlags:: ds 1 +wPokegearFlags:: ; bit 0: map ; bit 1: radio ; bit 2: phone ; bit 3: expn ; bit 7: on/off -wRadioTuningKnob:: ds 1 -wLastDexMode:: ds 2 -WhichRegisteredItem:: ; d95b - ds 1 -RegisteredItem:: ; d95c + db +wRadioTuningKnob:: db +wLastDexMode:: db ds 1 +WhichRegisteredItem:: db ; d95b +RegisteredItem:: db ; d95c -PlayerState:: ; d95d - ds 1 +PlayerState:: db ; d95d -wHallOfFameCount:: ds 2 +wHallOfFameCount:: dw wTradeFlags:: flag_array 6 ; d960 ds 1 -MooMooBerries:: ; d962 - ds 1 ; how many berries fed to MooMoo -UndergroundSwitchPositions:: ; d963 - ds 1 ; which positions the switches are in -FarfetchdPosition:: ; d964 - ds 1 ; which position the ilex farfetch'd is in +MooMooBerries:: db ; d962 +UndergroundSwitchPositions:: db ; d963 +FarfetchdPosition:: db ; d964 ds 13 ;SECTION "Map Triggers", WRAMX -wPokecenter2FTrigger:: ds 1 ; d972 -wTradeCenterTrigger:: ds 1 ; d973 -wColosseumTrigger:: ds 1 ; d974 -wTimeCapsuleTrigger:: ds 1 ; d975 -wPowerPlantTrigger:: ds 1 ; d976 -wCeruleanGymTrigger:: ds 1 ; d977 -wRoute25Trigger:: ds 1 ; d978 -wTrainerHouseB1FTrigger:: ds 1 ; d979 -wVictoryRoadGateTrigger:: ds 1 ; d97a -wSaffronTrainStationTrigger:: ds 1 ; d97b -wRoute16GateTrigger:: ds 1 ; d97c -wRoute1718GateTrigger:: ds 1 ; d97d -wIndigoPlateauPokecenter1FTrigger:: ds 1 ; d97e -wWillsRoomTrigger:: ds 1 ; d97f -wKogasRoomTrigger:: ds 1 ; d980 -wBrunosRoomTrigger:: ds 1 ; d981 -wKarensRoomTrigger:: ds 1 ; d982 -wLancesRoomTrigger:: ds 1 ; d983 -wHallOfFameTrigger:: ds 1 ; d984 -wRoute27Trigger:: ds 1 ; d985 -wNewBarkTownTrigger:: ds 1 ; d986 -wElmsLabTrigger:: ds 1 ; d987 -wKrissHouse1FTrigger:: ds 1 ; d988 -wRoute29Trigger:: ds 1 ; d989 -wCherrygroveCityTrigger:: ds 1 ; d98a -wMrPokemonsHouseTrigger:: ds 1 ; d98b -wRoute32Trigger:: ds 1 ; d98c -wRoute35NationalParkGateTrigger:: ds 1 ; d98d -wRoute36Trigger:: ds 1 ; d98e -wRoute36NationalParkGateTrigger:: ds 1 ; d98f -wAzaleaTownTrigger:: ds 1 ; d990 -wGoldenrodGymTrigger:: ds 1 ; d991 -wGoldenrodMagnetTrainStationTrigger:: ds 1 ; d992 -wGoldenrodPokecenter1FTrigger:: ds 1 ; d993 -wOlivineCityTrigger:: ds 1 ; d994 -wRoute34Trigger:: ds 1 ; d995 -wRoute34IlexForestGateTrigger:: ds 1 ; d996 -wEcruteakHouseTrigger:: ds 1 ; d997 -wWiseTriosRoomTrigger:: ds 1 ; d998 -wEcruteakPokecenter1FTrigger:: ds 1 ; d999 -wEcruteakGymTrigger:: ds 1 ; d99a -wMahoganyTownTrigger:: ds 1 ; d99b -wRoute42Trigger:: ds 1 ; d99c -wCianwoodCityTrigger:: ds 1 ; d99d -wBattleTower1FTrigger:: ds 1 ; d99e -wBattleTowerBattleRoomTrigger:: ds 1 ; d99f -wBattleTowerElevatorTrigger:: ds 1 ; d9a0 -wBattleTowerHallwayTrigger:: ds 1 ; d9a1 -wBattleTowerOutsideTrigger:: ds 1 ; d9a2 -wRoute43GateTrigger:: ds 1 ; d9a3 -wMountMoonTrigger:: ds 1 ; d9a4 -wSproutTower3FTrigger:: ds 1 ; d9a5 -wTinTower1FTrigger:: ds 1 ; d9a6 -wBurnedTower1FTrigger:: ds 1 ; d9a7 -wBurnedTowerB1FTrigger:: ds 1 ; d9a8 -wRadioTower5FTrigger:: ds 1 ; d9a9 -wRuinsOfAlphOutsideTrigger:: ds 1 ; d9aa -wRuinsOfAlphResearchCenterTrigger:: ds 1 ; d9ab -wRuinsOfAlphHoOhChamberTrigger:: ds 1 ; d9ac -wRuinsOfAlphKabutoChamberTrigger:: ds 1 ; d9ad -wRuinsOfAlphOmanyteChamberTrigger:: ds 1 ; d9ae -wRuinsOfAlphAerodactylChamberTrigger:: ds 1 ; d9af -wRuinsOfAlphInnerChamberTrigger:: ds 1 ; d9b0 -wMahoganyMart1FTrigger:: ds 1 ; d9b1 -wTeamRocketBaseB1FTrigger:: ds 1 ; d9b2 -wTeamRocketBaseB2FTrigger:: ds 1 ; d9b3 -wTeamRocketBaseB3FTrigger:: ds 1 ; d9b4 -wUndergroundPathSwitchRoomEntrancesTrigger:: ds 1 ; d9b5 -wSilverCaveRoom3Trigger:: ds 1 ; d9b6 -wVictoryRoadTrigger:: ds 1 ; d9b7 -wDragonsDenB1FTrigger:: ds 1 ; d9b8 -wDragonShrineTrigger:: ds 1 ; d9b9 -wOlivinePortTrigger:: ds 1 ; d9ba -wVermilionPortTrigger:: ds 1 ; d9bb -wFastShip1FTrigger:: ds 1 ; d9bc -wFastShipB1FTrigger:: ds 1 ; d9bd -wMountMoonSquareTrigger:: ds 1 ; d9be -wMobileTradeRoomMobileTrigger:: ds 1 ; d9bf -wMobileBattleRoomTrigger:: ds 1 ; d9c0 +wPokecenter2FTrigger:: db ; d972 +wTradeCenterTrigger:: db ; d973 +wColosseumTrigger:: db ; d974 +wTimeCapsuleTrigger:: db ; d975 +wPowerPlantTrigger:: db ; d976 +wCeruleanGymTrigger:: db ; d977 +wRoute25Trigger:: db ; d978 +wTrainerHouseB1FTrigger:: db ; d979 +wVictoryRoadGateTrigger:: db ; d97a +wSaffronTrainStationTrigger:: db ; d97b +wRoute16GateTrigger:: db ; d97c +wRoute1718GateTrigger:: db ; d97d +wIndigoPlateauPokecenter1FTrigger:: db ; d97e +wWillsRoomTrigger:: db ; d97f +wKogasRoomTrigger:: db ; d980 +wBrunosRoomTrigger:: db ; d981 +wKarensRoomTrigger:: db ; d982 +wLancesRoomTrigger:: db ; d983 +wHallOfFameTrigger:: db ; d984 +wRoute27Trigger:: db ; d985 +wNewBarkTownTrigger:: db ; d986 +wElmsLabTrigger:: db ; d987 +wKrissHouse1FTrigger:: db ; d988 +wRoute29Trigger:: db ; d989 +wCherrygroveCityTrigger:: db ; d98a +wMrPokemonsHouseTrigger:: db ; d98b +wRoute32Trigger:: db ; d98c +wRoute35NationalParkGateTrigger:: db ; d98d +wRoute36Trigger:: db ; d98e +wRoute36NationalParkGateTrigger:: db ; d98f +wAzaleaTownTrigger:: db ; d990 +wGoldenrodGymTrigger:: db ; d991 +wGoldenrodMagnetTrainStationTrigger:: db ; d992 +wGoldenrodPokecenter1FTrigger:: db ; d993 +wOlivineCityTrigger:: db ; d994 +wRoute34Trigger:: db ; d995 +wRoute34IlexForestGateTrigger:: db ; d996 +wEcruteakHouseTrigger:: db ; d997 +wWiseTriosRoomTrigger:: db ; d998 +wEcruteakPokecenter1FTrigger:: db ; d999 +wEcruteakGymTrigger:: db ; d99a +wMahoganyTownTrigger:: db ; d99b +wRoute42Trigger:: db ; d99c +wCianwoodCityTrigger:: db ; d99d +wBattleTower1FTrigger:: db ; d99e +wBattleTowerBattleRoomTrigger:: db ; d99f +wBattleTowerElevatorTrigger:: db ; d9a0 +wBattleTowerHallwayTrigger:: db ; d9a1 +wBattleTowerOutsideTrigger:: db ; d9a2 +wRoute43GateTrigger:: db ; d9a3 +wMountMoonTrigger:: db ; d9a4 +wSproutTower3FTrigger:: db ; d9a5 +wTinTower1FTrigger:: db ; d9a6 +wBurnedTower1FTrigger:: db ; d9a7 +wBurnedTowerB1FTrigger:: db ; d9a8 +wRadioTower5FTrigger:: db ; d9a9 +wRuinsOfAlphOutsideTrigger:: db ; d9aa +wRuinsOfAlphResearchCenterTrigger:: db ; d9ab +wRuinsOfAlphHoOhChamberTrigger:: db ; d9ac +wRuinsOfAlphKabutoChamberTrigger:: db ; d9ad +wRuinsOfAlphOmanyteChamberTrigger:: db ; d9ae +wRuinsOfAlphAerodactylChamberTrigger:: db ; d9af +wRuinsOfAlphInnerChamberTrigger:: db ; d9b0 +wMahoganyMart1FTrigger:: db ; d9b1 +wTeamRocketBaseB1FTrigger:: db ; d9b2 +wTeamRocketBaseB2FTrigger:: db ; d9b3 +wTeamRocketBaseB3FTrigger:: db ; d9b4 +wUndergroundPathSwitchRoomEntrancesTrigger:: db ; d9b5 +wSilverCaveRoom3Trigger:: db ; d9b6 +wVictoryRoadTrigger:: db ; d9b7 +wDragonsDenB1FTrigger:: db ; d9b8 +wDragonShrineTrigger:: db ; d9b9 +wOlivinePortTrigger:: db ; d9ba +wVermilionPortTrigger:: db ; d9bb +wFastShip1FTrigger:: db ; d9bc +wFastShipB1FTrigger:: db ; d9bd +wMountMoonSquareTrigger:: db ; d9be +wMobileTradeRoomMobileTrigger:: db ; d9bf +wMobileBattleRoomTrigger:: db ; d9c0 ds 49 ;SECTION "Events", WRAMX -wJackFightCount:: ds 1 ; d9f2 -wBeverlyFightCount:: ds 1 ; unused -wHueyFightCount:: ds 1 -wGavenFightCount:: ds 1 -wBethFightCount:: ds 1 -wJoseFightCount:: ds 1 -wReenaFightCount:: ds 1 -wJoeyFightCount:: ds 1 -wWadeFightCount:: ds 1 -wRalphFightCount:: ds 1 -wLizFightCount:: ds 1 -wAnthonyFightCount:: ds 1 -wToddFightCount:: ds 1 -wGinaFightCount:: ds 1 -wIrwinFightCount:: ds 1 ; unused -wArnieFightCount:: ds 1 -wAlanFightCount:: ds 1 -wDanaFightCount:: ds 1 -wChadFightCount:: ds 1 -wDerekFightCount:: ds 1 ; unused -wTullyFightCount:: ds 1 -wBrentFightCount:: ds 1 -wTiffanyFightCount:: ds 1 -wVanceFightCount:: ds 1 -wWiltonFightCount:: ds 1 -wKenjiFightCount:: ds 1 ; unused -wParryFightCount:: ds 1 -wErinFightCount:: ds 1 +wJackFightCount:: db ; d9f2 +wBeverlyFightCount:: db ; unused +wHueyFightCount:: db +wGavenFightCount:: db +wBethFightCount:: db +wJoseFightCount:: db +wReenaFightCount:: db +wJoeyFightCount:: db +wWadeFightCount:: db +wRalphFightCount:: db +wLizFightCount:: db +wAnthonyFightCount:: db +wToddFightCount:: db +wGinaFightCount:: db +wIrwinFightCount:: db ; unused +wArnieFightCount:: db +wAlanFightCount:: db +wDanaFightCount:: db +wChadFightCount:: db +wDerekFightCount:: db ; unused +wTullyFightCount:: db +wBrentFightCount:: db +wTiffanyFightCount:: db +wVanceFightCount:: db +wWiltonFightCount:: db +wKenjiFightCount:: db ; unused +wParryFightCount:: db +wErinFightCount:: db ; da0e ds 100 -EventFlags:: ; da72 - flag_array NUM_EVENTS +EventFlags:: flag_array NUM_EVENTS ; da72 ; db6c ds 6 -wCurBox:: ; db72 - ds 1 +wCurBox:: db ; db72 ds 2 ; 8 chars + $50 wBoxNames:: ds BOX_NAME_LENGTH * NUM_BOXES ; db75 -wCelebiEvent:: ds 1 +wCelebiEvent:: db + ds 1 BikeFlags:: ; dbf5 ; bit 0: using strength ; bit 1: always on bike ; bit 2: downhill - ds 1 + db ds 1 -wCurrentMapTriggerPointer:: ds 2 ; dbf7 - -wCurrentCaller:: ds 2 ; dbf9 -wCurrMapWarpCount:: ds 1 ; dbfb -wCurrMapWarpHeaderPointer:: ds 2 ; dbfc -wCurrentMapXYTriggerCount:: ds 1 ; dbfe -wCurrentMapXYTriggerHeaderPointer:: ds 2 ; dbff -wCurrentMapSignpostCount:: ds 1 ; dc01 -wCurrentMapSignpostHeaderPointer:: ds 2 ; dc02 -wCurrentMapPersonEventCount:: ds 1 ; dc04 -wCurrentMapPersonEventHeaderPointer:: ds 2 ; dc05 -wCurrMapTriggerCount:: ds 1 ; dc07 -wCurrMapTriggerHeaderPointer:: ds 2 ; dc08 -wCurrMapCallbackCount:: ds 1 ; dc0a -wCurrMapCallbackHeaderPointer:: ds 2 ; dc0b + +wCurrentMapTriggerPointer:: dw ; dbf7 + +wCurrentCaller:: dw ; dbf9 +wCurrMapWarpCount:: db ; dbfb +wCurrMapWarpHeaderPointer:: dw ; dbfc +wCurrentMapXYTriggerCount:: db ; dbfe +wCurrentMapXYTriggerHeaderPointer:: dw ; dbff +wCurrentMapSignpostCount:: db ; dc01 +wCurrentMapSignpostHeaderPointer:: dw ; dc02 +wCurrentMapPersonEventCount:: db ; dc04 +wCurrentMapPersonEventHeaderPointer:: dw ; dc05 +wCurrMapTriggerCount:: db ; dc07 +wCurrMapTriggerHeaderPointer:: dw ; dc08 +wCurrMapCallbackCount:: db ; dc0a +wCurrMapCallbackHeaderPointer:: dw ; dc0b + ds 2 ; Sprite id of each decoration -Bed:: ; dc0f - ds 1 -Carpet:: ; dc10 - ds 1 -Plant:: ; dc11 - ds 1 -Poster:: ; dc12 - ds 1 -Console:: ; dc13 - ds 1 -LeftOrnament:: ; dc14 - ds 1 -RightOrnament:: ; dc15 - ds 1 -BigDoll:: ; dc16 - ds 1 +Bed:: db ; dc0f +Carpet:: db ; dc10 +Plant:: db ; dc11 +Poster:: db ; dc12 +Console:: db ; dc13 +LeftOrnament:: db ; dc14 +RightOrnament:: db ; dc15 +BigDoll:: db ; dc16 ; Items bought from Mom -wWhichMomItem:: ds 1 ; dc17 -wWhichMomItemSet:: ds 1 ; dc18 +wWhichMomItem:: db ; dc17 +wWhichMomItemSet:: db ; dc18 MomItemTriggerBalance:: ds 3 ; dc19 -wDailyResetTimer:: ds 2 ; dc1c -DailyFlags:: ds 1 -WeeklyFlags:: ds 1 -SwarmFlags:: ds 1 +wDailyResetTimer:: dw ; dc1c +DailyFlags:: db +WeeklyFlags:: db +SwarmFlags:: db ds 2 -wStartDay:: ds 1 +wStartDay:: db ds 3 FruitTreeFlags:: flag_array NUM_FRUIT_TREES ; dc27 ds 2 -wLuckyNumberDayBuffer:: ds 2 ; dc2d +wLuckyNumberDayBuffer:: dw ; dc2d ds 2 -wSpecialPhoneCallID:: ds 1 ; dc31 +wSpecialPhoneCallID:: db ; dc31 ds 3 wBugContestStartTime:: ds 4 ; day, hour, min, sec ; dc35 -wUnusedTwoDayTimerOn:: ds 1 ; dc39 -wUnusedTwoDayTimer:: ds 1 -wUnusedTwoDayTimerStartDate:: ds 1 +wUnusedTwoDayTimerOn:: db ; dc39 +wUnusedTwoDayTimer:: db +wUnusedTwoDayTimerStartDate:: db ds 4 -wMobileOrCable_LastSelection:: ds 1 +wMobileOrCable_LastSelection:: db wdc41:: ds 1 wdc42:: ds 8 -wBuenasPassword:: ds 1 -wBlueCardBalance:: ds 1 +wBuenasPassword:: db +wBlueCardBalance:: db wDailyRematchFlags:: ds 4 wDailyPhoneItemFlags:: ds 4 wDailyPhoneTimeOfDayFlags:: ds 4 wKenjiBreakTimer:: ds 2 ; Kenji -wYanmaMapGroup:: ds 1 ; dc5a -wYanmaMapNumber:: ds 1 +wYanmaMapGroup:: db ; dc5a +wYanmaMapNumber:: db wPlayerMonSelection:: ds 3 wdc5f:: ds 1 wdc60:: ds 19 -StepCount:: ; dc73 - ds 1 -PoisonStepCount:: ; dc74 - ds 1 - +StepCount:: db ; dc73 +PoisonStepCount:: db ; dc74 ds 2 -wHappinessStepCount:: ds 1 +wHappinessStepCount:: db ds 1 + wParkBallsRemaining:: -wSafariBallsRemaining:: ds 1 ; dc79 -wSafariTimeRemaining:: ds 2 ; dc7a +wSafariBallsRemaining:: db ; dc79 +wSafariTimeRemaining:: dw ; dc7a + wPhoneList:: ds CONTACT_LIST_SIZE ; dc7c ; dc86 ds 23 -wLuckyNumberShowFlag:: ds 2 ; dc9d -wLuckyIDNumber:: ds 2 ; dc9f -wRepelEffect:: ds 1 ; If a Repel is in use, it contains the nr of steps it's still active -wBikeStep:: ds 2 -wKurtApricornQuantity:: ds 1 + +wLuckyNumberShowFlag:: dw ; dc9d +wLuckyIDNumber:: dw ; dc9f + +wRepelEffect:: db ; If a Repel is in use, it contains the nr of steps it's still active +wBikeStep:: dw +wKurtApricornQuantity:: db wPlayerDataEnd:: wMapData:: -VisitedSpawns:: ; dca5 - flag_array NUM_SPAWNS +VisitedSpawns:: flag_array NUM_SPAWNS ; dca5 + +wDigWarpNumber:: db ; dcaa +wDigMapGroup:: db ; dcab +wDigMapNumber:: db ; dcac -wDigWarp:: ds 1 ; dcaa -wDigMapGroup:: ds 1 ; dcab -wDigMapNumber:: ds 1 ; dcac ; used on maps like second floor pokécenter, which are reused, so we know which ; map to return to -BackupWarpNumber:: ; dcad - ds 1 -BackupMapGroup:: ; dcae - ds 1 -BackupMapNumber:: ; dcaf - ds 1 +BackupWarpNumber:: db ; dcad +BackupMapGroup:: db ; dcae +BackupMapNumber:: db ; dcaf ds 3 -wLastSpawnMapGroup:: ds 1 -wLastSpawnMapNumber:: ds 1 +wLastSpawnMapGroup:: db +wLastSpawnMapNumber:: db -WarpNumber:: ; dcb4 - ds 1 -MapGroup:: ; dcb5 - ds 1 ; map group of current map -MapNumber:: ; dcb6 - ds 1 ; map number of current map -YCoord:: ; dcb7 - ds 1 ; current y coordinate relative to top-left corner of current map -XCoord:: ; dcb8 - ds 1 ; current x coordinate relative to top-left corner of current map +WarpNumber:: db ; dcb4 +MapGroup:: db ; dcb5 ; map group of current map +MapNumber:: db ; dcb6 ; map number of current map +YCoord:: db ; dcb7 ; current y coordinate relative to top-left corner of current map +XCoord:: db ; dcb8 ; current x coordinate relative to top-left corner of current map wScreenSave:: ds 6 * 5 wMapDataEnd:: @@ -2690,12 +2722,9 @@ SECTION "Party", WRAMX wPokemonData:: -PartyCount:: ; dcd7 - ds 1 ; number of Pokémon in party -PartySpecies:: ; dcd8 - ds PARTY_LENGTH ; species of each Pokémon in party -PartyEnd:: ; dcde - ds 1 ; legacy scripts don't check PartyCount +PartyCount:: db ; dcd7 ; number of Pokémon in party +PartySpecies:: ds PARTY_LENGTH ; dcd8 ; species of each Pokémon in party +PartyEnd:: db ; dcde ; legacy scripts don't check PartyCount PartyMons:: PartyMon1:: party_struct PartyMon1 ; dcdf @@ -2710,32 +2739,25 @@ PartyMonOT:: ds NAME_LENGTH * PARTY_LENGTH ; ddff PartyMonNicknames:: ds PKMN_NAME_LENGTH * PARTY_LENGTH ; de41 PartyMonNicknamesEnd:: - ds 22 -PokedexCaught:: ; de99 - flag_array NUM_POKEMON +PokedexCaught:: flag_array NUM_POKEMON ; de99 EndPokedexCaught:: -PokedexSeen:: ; deb9 - flag_array NUM_POKEMON +PokedexSeen:: flag_array NUM_POKEMON ; deb9 EndPokedexSeen:: -UnownDex:: ; ded9 - ds 26 -UnlockedUnowns:: ; def3 - ds 1 - -wFirstUnownSeen:: ds 1 - +UnownDex:: ds NUM_UNOWN ; ded9 +UnlockedUnowns:: db ; def3 +wFirstUnownSeen:: db wDaycareMan:: ; def5 ; bit 7: active ; bit 6: monsters are compatible ; bit 5: egg ready ; bit 0: monster 1 in daycare - ds 1 + db wBreedMon1:: wBreedMon1Nick:: ds PKMN_NAME_LENGTH ; def6 @@ -2745,14 +2767,14 @@ wBreedMon1Stats:: box_struct wBreedMon1 ; df0c wDaycareLady:: ; df2c ; bit 7: active ; bit 0: monster 2 in daycare - ds 1 + db wStepsToEgg:: ; df2d - ds 1 + db wBreedMotherOrNonDitto:: ; df2e ; z: yes ; nz: no - ds 1 + db wBreedMon2:: wBreedMon2Nick:: ds PKMN_NAME_LENGTH ; df2f @@ -2763,23 +2785,23 @@ wEggNick:: ds PKMN_NAME_LENGTH ; df65 wEggOT:: ds NAME_LENGTH ; df70 wEggMon:: box_struct wEggMon ; df7b -wBugContestSecondPartySpecies:: ds 1 +wBugContestSecondPartySpecies:: db wContestMon:: party_struct wContestMon ; df9c -wDunsparceMapGroup:: ds 1 -wDunsparceMapNumber:: ds 1 -wFishingSwarmFlag:: ds 1 +wDunsparceMapGroup:: db +wDunsparceMapNumber:: db +wFishingSwarmFlag:: db wRoamMon1:: roam_struct wRoamMon1 ; dfcf wRoamMon2:: roam_struct wRoamMon2 ; dfd6 wRoamMon3:: roam_struct wRoamMon3 ; dfdd -wRoamMons_CurrentMapNumber:: ds 1 -wRoamMons_CurrentMapGroup:: ds 1 -wRoamMons_LastMapNumber:: ds 1 -wRoamMons_LastMapGroup:: ds 1 -wBestMagikarpLengthFeet:: ds 1 -wBestMagikarpLengthInches:: ds 1 +wRoamMons_CurrentMapNumber:: db +wRoamMons_CurrentMapGroup:: db +wRoamMons_LastMapNumber:: db +wRoamMons_LastMapGroup:: db +wBestMagikarpLengthFeet:: db +wBestMagikarpLengthInches:: db wMagikarpRecordHoldersName:: ds NAME_LENGTH ; dff5 wPokemonDataEnd:: @@ -2849,17 +2871,17 @@ w3_d3c2:: battle_tower_struct w3_d3c2 w3_d4a2:: battle_tower_struct w3_d4a2 w3_d582:: battle_tower_struct w3_d582 w3_d662:: battle_tower_struct w3_d662 -UNION +UNION ; d742 w3_d742:: battle_tower_struct w3_d742 ; d822 -NEXTU +NEXTU ; d742 ds $be wBTChoiceOfLvlGroup:: w3_d800:: ; ds BG_MAP_WIDTH * SCREEN_HEIGHT ($240) ds $69 -ENDU +ENDU ; d869 w3_d869:: ds $17 w3_d880:: ds 1 w3_d881:: ds 1 @@ -2960,14 +2982,15 @@ wBattleAnimTemp7:: db wBattleAnimTempPalette:: wBattleAnimTemp8:: db -UNION +UNION ; d422 wSurfWaveBGEffect:: ds $40 wSurfWaveBGEffectEnd:: -NEXTU +NEXTU ; d422 ds $32 wBattleAnimEnd:: -ENDU +ENDU ; d462 + SECTION "WRAM 5 MOBILE", WRAMX @@ -2991,7 +3014,7 @@ wScratchAttrMap:: ds BG_MAP_WIDTH * BG_MAP_HEIGHT NEXTU ; d000 wDecompressScratch:: ds $80 tiles wDecompressEnemyFrontpic:: ds $80 tiles -ENDU +ENDU ; e000 SECTION "WRAM 7", WRAMX |