mirror of https://github.com/pret/pokecrystal.git
413 lines
9.1 KiB
NASM
413 lines
9.1 KiB
NASM
SECTION "Scratch", SRAM
|
|
|
|
sScratch:: ds $600 ; a000
|
|
|
|
|
|
SECTION "SRAM Bank 0", SRAM
|
|
|
|
; a600
|
|
sPartyMail::
|
|
sPartyMon1Mail:: mailmsg sPartyMon1Mail
|
|
sPartyMon2Mail:: mailmsg sPartyMon2Mail
|
|
sPartyMon3Mail:: mailmsg sPartyMon3Mail
|
|
sPartyMon4Mail:: mailmsg sPartyMon4Mail
|
|
sPartyMon5Mail:: mailmsg sPartyMon5Mail
|
|
sPartyMon6Mail:: mailmsg sPartyMon6Mail
|
|
|
|
; a71a
|
|
sPartyMailBackup::
|
|
sPartyMon1MailBackup:: mailmsg sPartyMon1MailBackup
|
|
sPartyMon2MailBackup:: mailmsg sPartyMon2MailBackup
|
|
sPartyMon3MailBackup:: mailmsg sPartyMon3MailBackup
|
|
sPartyMon4MailBackup:: mailmsg sPartyMon4MailBackup
|
|
sPartyMon5MailBackup:: mailmsg sPartyMon5MailBackup
|
|
sPartyMon6MailBackup:: mailmsg sPartyMon6MailBackup
|
|
|
|
; a834
|
|
sMailboxCount:: db
|
|
sMailbox::
|
|
sMailbox1:: mailmsg sMailbox1
|
|
sMailbox2:: mailmsg sMailbox2
|
|
sMailbox3:: mailmsg sMailbox3
|
|
sMailbox4:: mailmsg sMailbox4
|
|
sMailbox5:: mailmsg sMailbox5
|
|
sMailbox6:: mailmsg sMailbox6
|
|
sMailbox7:: mailmsg sMailbox7
|
|
sMailbox8:: mailmsg sMailbox8
|
|
sMailbox9:: mailmsg sMailbox9
|
|
sMailbox10:: mailmsg sMailbox10
|
|
|
|
; aa0b
|
|
sMailboxCountBackup:: db
|
|
sMailboxBackup::
|
|
sMailbox1Backup:: mailmsg sMailbox1Backup
|
|
sMailbox2Backup:: mailmsg sMailbox2Backup
|
|
sMailbox3Backup:: mailmsg sMailbox3Backup
|
|
sMailbox4Backup:: mailmsg sMailbox4Backup
|
|
sMailbox5Backup:: mailmsg sMailbox5Backup
|
|
sMailbox6Backup:: mailmsg sMailbox6Backup
|
|
sMailbox7Backup:: mailmsg sMailbox7Backup
|
|
sMailbox8Backup:: mailmsg sMailbox8Backup
|
|
sMailbox9Backup:: mailmsg sMailbox9Backup
|
|
sMailbox10Backup:: mailmsg sMailbox10Backup
|
|
|
|
; abe2
|
|
sMysteryGiftItem:: db
|
|
sMysteryGiftUnlocked:: db
|
|
sBackupMysteryGiftItem:: db
|
|
sNumDailyMysteryGiftPartnerIDs:: db
|
|
sDailyMysteryGiftPartnerIDs:: ds 5 * 2 ; maximum 5 per day, 2 bytes per ID
|
|
sMysteryGiftDecorationsReceived:: flag_array NUM_NON_TROPHY_DECOS
|
|
ds 4
|
|
sMysteryGiftTimer:: db
|
|
sMysteryGiftTimerStartDay:: db
|
|
ds 1
|
|
sMysteryGiftTrainerHouseFlag:: db
|
|
sMysteryGiftPartnerName:: ds NAME_LENGTH
|
|
s0_ac09:: ds 1
|
|
sMysteryGiftTrainer:: ds (1 + 1 + NUM_MOVES) * PARTY_LENGTH + 2 ; ac0a
|
|
sBackupMysteryGiftItemEnd::
|
|
|
|
ds $30
|
|
|
|
sRTCStatusFlags:: ds 8
|
|
sLuckyNumberDay:: db
|
|
sLuckyIDNumber:: dw
|
|
|
|
|
|
SECTION "Backup Save", SRAM
|
|
|
|
sBackupOptions:: ds wOptionsEnd - wOptions
|
|
|
|
sBackupCheckValue1:: db ; loaded with SAVE_CHECK_VALUE_1, used to check save corruption
|
|
|
|
sBackupGameData:: ; b209
|
|
sBackupPlayerData:: ds wPlayerDataEnd - wPlayerData
|
|
sBackupCurMapData:: ds wCurMapDataEnd - wCurMapData
|
|
sBackupPokemonData:: ds wPokemonDataEnd - wPokemonData
|
|
sBackupGameDataEnd::
|
|
|
|
; bd83
|
|
ds $18a
|
|
; bf0d
|
|
|
|
sBackupChecksum:: dw
|
|
|
|
sBackupCheckValue2:: db ; loaded with SAVE_CHECK_VALUE_2, used to check save corruption
|
|
|
|
sStackTop:: dw
|
|
|
|
|
|
SECTION "Save", SRAM
|
|
|
|
sOptions:: ds wOptionsEnd - wOptions
|
|
|
|
sCheckValue1:: db ; loaded with SAVE_CHECK_VALUE_1, used to check save corruption
|
|
|
|
sGameData:: ; a009
|
|
sPlayerData:: ds wPlayerDataEnd - wPlayerData
|
|
sCurMapData:: ds wCurMapDataEnd - wCurMapData
|
|
sPokemonData:: ds wPokemonDataEnd - wPokemonData
|
|
sGameDataEnd::
|
|
|
|
; ab83
|
|
ds $18a
|
|
; ad0d
|
|
|
|
sChecksum:: dw
|
|
|
|
sCheckValue2:: db ; loaded with SAVE_CHECK_VALUE_2, used to check save corruption
|
|
|
|
|
|
SECTION "Active Box", SRAM
|
|
|
|
; ad10
|
|
sBox:: box sBox
|
|
; b160
|
|
|
|
ds $f4
|
|
|
|
|
|
SECTION "Link Battle Data", SRAM
|
|
|
|
sLinkBattleResults:: ds $c
|
|
|
|
sLinkBattleStats::
|
|
sLinkBattleWins:: dw ; b260
|
|
sLinkBattleLosses:: dw ; b262
|
|
sLinkBattleDraws:: dw ; b264
|
|
|
|
sLinkBattleRecord::
|
|
sLinkBattleRecord1:: link_battle_record sLinkBattleRecord1
|
|
sLinkBattleRecord2:: link_battle_record sLinkBattleRecord2
|
|
sLinkBattleRecord3:: link_battle_record sLinkBattleRecord3
|
|
sLinkBattleRecord4:: link_battle_record sLinkBattleRecord4
|
|
sLinkBattleRecord5:: link_battle_record sLinkBattleRecord5
|
|
sLinkBattleStatsEnd::
|
|
|
|
|
|
SECTION "SRAM Hall of Fame", SRAM
|
|
|
|
sHallOfFame:: ; b2c0
|
|
sHallOfFame01:: hall_of_fame sHallOfFame01
|
|
sHallOfFame02:: hall_of_fame sHallOfFame02
|
|
sHallOfFame03:: hall_of_fame sHallOfFame03
|
|
sHallOfFame04:: hall_of_fame sHallOfFame04
|
|
sHallOfFame05:: hall_of_fame sHallOfFame05
|
|
sHallOfFame06:: hall_of_fame sHallOfFame06
|
|
sHallOfFame07:: hall_of_fame sHallOfFame07
|
|
sHallOfFame08:: hall_of_fame sHallOfFame08
|
|
sHallOfFame09:: hall_of_fame sHallOfFame09
|
|
sHallOfFame10:: hall_of_fame sHallOfFame10
|
|
sHallOfFame11:: hall_of_fame sHallOfFame11
|
|
sHallOfFame12:: hall_of_fame sHallOfFame12
|
|
sHallOfFame13:: hall_of_fame sHallOfFame13
|
|
sHallOfFame14:: hall_of_fame sHallOfFame14
|
|
sHallOfFame15:: hall_of_fame sHallOfFame15
|
|
sHallOfFame16:: hall_of_fame sHallOfFame16
|
|
sHallOfFame17:: hall_of_fame sHallOfFame17
|
|
sHallOfFame18:: hall_of_fame sHallOfFame18
|
|
sHallOfFame19:: hall_of_fame sHallOfFame19
|
|
sHallOfFame20:: hall_of_fame sHallOfFame20
|
|
sHallOfFame21:: hall_of_fame sHallOfFame21
|
|
sHallOfFame22:: hall_of_fame sHallOfFame22
|
|
sHallOfFame23:: hall_of_fame sHallOfFame23
|
|
sHallOfFame24:: hall_of_fame sHallOfFame24
|
|
sHallOfFame25:: hall_of_fame sHallOfFame25
|
|
sHallOfFame26:: hall_of_fame sHallOfFame26
|
|
sHallOfFame27:: hall_of_fame sHallOfFame27
|
|
sHallOfFame28:: hall_of_fame sHallOfFame28
|
|
sHallOfFame29:: hall_of_fame sHallOfFame29
|
|
sHallOfFame30:: hall_of_fame sHallOfFame30
|
|
sHallOfFameEnd::
|
|
|
|
|
|
SECTION "SRAM Crystal Data", SRAM
|
|
|
|
sMobileEventIndex:: db ; be3c
|
|
|
|
sCrystalData:: ds wCrystalDataEnd - wCrystalData
|
|
|
|
sMobileEventIndexBackup:: db ; be44
|
|
|
|
|
|
SECTION "SRAM Battle Tower", SRAM
|
|
|
|
; Battle Tower data must be in SRAM because you can save and leave between battles
|
|
sBattleTowerChallengeState::
|
|
; 0: normal
|
|
; 2: battle tower
|
|
db
|
|
|
|
sBattleTower:: ; be46
|
|
sNrOfBeatenBattleTowerTrainers:: db
|
|
sBTChoiceOfLevelGroup:: db
|
|
; Battle Tower trainers are saved here, so nobody appears more than once
|
|
sBTTrainers:: ds BATTLETOWER_STREAK_LENGTH ; sbe48
|
|
sBattleTowerSaveFileFlags:: db
|
|
sBattleTowerReward:: db
|
|
|
|
; team of previous trainer
|
|
sBTMonOfTrainers:: ; be51
|
|
sBTMonPrevTrainer1:: db
|
|
sBTMonPrevTrainer2:: db
|
|
sBTMonPrevTrainer3:: db
|
|
; team of preprevious trainer
|
|
sBTMonPrevPrevTrainer1:: db
|
|
sBTMonPrevPrevTrainer2:: db
|
|
sBTMonPrevPrevTrainer3:: db
|
|
|
|
|
|
SECTION "Boxes 1-7", SRAM
|
|
|
|
sBox1:: box sBox1
|
|
sBox2:: box sBox2
|
|
sBox3:: box sBox3
|
|
sBox4:: box sBox4
|
|
sBox5:: box sBox5
|
|
sBox6:: box sBox6
|
|
sBox7:: box sBox7
|
|
|
|
|
|
SECTION "Boxes 8-14", SRAM
|
|
|
|
sBox8:: box sBox8
|
|
sBox9:: box sBox9
|
|
sBox10:: box sBox10
|
|
sBox11:: box sBox11
|
|
sBox12:: box sBox12
|
|
sBox13:: box sBox13
|
|
sBox14:: box sBox14
|
|
|
|
|
|
SECTION "SRAM Mobile 1", SRAM
|
|
|
|
ds $7
|
|
|
|
s4_a007:: ; struct size $30 ; a007
|
|
|
|
ds $c
|
|
|
|
s4_a013:: ds 36 ; a013
|
|
|
|
ds $5d5
|
|
|
|
s4_a60c:: db ; a60c
|
|
|
|
ds $1
|
|
|
|
s4_a60e:: dw ; a60e
|
|
|
|
ds $1f0
|
|
|
|
sMobileBattleTimer:: ds 3 ; a800
|
|
|
|
|
|
SECTION "SRAM Mobile 2", SRAM
|
|
|
|
ds 1 ; former location for sMobileEventIndex, moved to 1:BE3C in English
|
|
|
|
sTrainerRankings:: ; a001
|
|
sTrainerRankingGameTimeHOF:: ds 4
|
|
sTrainerRankingStepCountHOF:: ds 4
|
|
sTrainerRankingHealingsHOF:: ds 4
|
|
sTrainerRankingBattlesHOF:: ds 3
|
|
sTrainerRankingStepCount:: ds 4
|
|
sTrainerRankingBattleTowerWins:: ds 4
|
|
sTrainerRankingTMsHMsTaught:: ds 3
|
|
sTrainerRankingBattles:: ds 3
|
|
sTrainerRankingWildBattles:: ds 3
|
|
sTrainerRankingTrainerBattles:: ds 3
|
|
sTrainerRankingUnused1:: ds 3
|
|
sTrainerRankingHOFEntries:: ds 3
|
|
sTrainerRankingWildMonsCaught:: ds 3
|
|
sTrainerRankingHookedEncounters:: ds 3
|
|
sTrainerRankingEggsHatched:: ds 3
|
|
sTrainerRankingMonsEvolved:: ds 3
|
|
sTrainerRankingFruitPicked:: ds 3
|
|
sTrainerRankingHealings:: ds 3
|
|
sTrainerRankingMysteryGift:: ds 3
|
|
sTrainerRankingTrades:: ds 3
|
|
sTrainerRankingFly:: ds 3
|
|
sTrainerRankingSurf:: ds 3
|
|
sTrainerRankingWaterfall:: ds 3
|
|
sTrainerRankingWhiteOuts:: ds 3
|
|
sTrainerRankingLuckyNumberShow:: ds 3
|
|
sTrainerRankingPhoneCalls:: ds 3
|
|
sTrainerRankingUnused2:: ds 3
|
|
sTrainerRankingLinkBattles:: ds 3
|
|
sTrainerRankingSplash:: ds 3
|
|
sTrainerRankingTreeEncounters:: ds 3
|
|
sTrainerRankingUnused3:: ds 3
|
|
sTrainerRankingColosseumWins:: ds 3
|
|
sTrainerRankingColosseumLosses:: ds 3
|
|
sTrainerRankingColosseumDraws:: ds 3
|
|
sTrainerRankingSelfdestruct:: ds 3
|
|
sTrainerRankingCurrentSlotsStreak:: ds 2
|
|
sTrainerRankingLongestSlotsStreak:: ds 2
|
|
sTrainerRankingTotalSlotsPayouts:: ds 4
|
|
sTrainerRankingTotalBattlePayouts:: ds 4
|
|
sTrainerRankingLongestMagikarp:: ds 2
|
|
sTrainerRankingShortestMagikarp:: ds 2
|
|
sTrainerRankingBugContestScore:: ds 2
|
|
sTrainerRankingsChecksum:: ds 2
|
|
sTrainerRankingsEnd:: ; a083
|
|
|
|
ds 1 ; Former location for sMobileEventIndexBackup, moved to 1:BE44 in English
|
|
|
|
sTrainerRankingsBackup:: ds sTrainerRankingsEnd - sTrainerRankings ; a084
|
|
|
|
ds $6fa
|
|
|
|
s5_a800:: db ; a800
|
|
|
|
ds $24
|
|
|
|
s5_a825:: db ; a825
|
|
s5_a826:: db ; a826
|
|
|
|
ds $6d
|
|
|
|
s5_a894:: ds NAME_LENGTH_JAPANESE ; a894
|
|
|
|
ds $2
|
|
|
|
s5_a89c:: ds 22 ; a89c
|
|
s5_a8b2:: ds 150 ; a8b2
|
|
|
|
s5_a948:: ds 246 ; a948
|
|
|
|
ds $3
|
|
|
|
s5_aa41:: ds 4 ; aa41
|
|
|
|
ds $2
|
|
|
|
s5_aa47:: db ; aa47
|
|
s5_aa48:: db ; aa48
|
|
|
|
ds $1
|
|
|
|
s5_aa4a:: db ; aa4a
|
|
|
|
sMobileLoginPassword:: ds MOBILE_LOGIN_PASSWORD_LENGTH ; aa4b
|
|
|
|
ds $1
|
|
|
|
s5_aa5d:: ds MOBILE_LOGIN_PASSWORD_LENGTH ; aa5d
|
|
|
|
ds $4
|
|
|
|
s5_aa72:: db ; aa72
|
|
s5_aa73:: ds 12 ; aa73
|
|
s5_aa7f:: ds 12 ; aa7f
|
|
|
|
s5_aa8b:: db ; aa8b
|
|
s5_aa8c:: db ; aa8c
|
|
s5_aa8d:: db ; aa8d
|
|
s5_aa8e:: ds 7 * $cc ; aa8e
|
|
|
|
ds $1
|
|
|
|
s5_b023:: ds 105 ; b023
|
|
s5_b08c:: ds 4 ; b08c
|
|
s5_b090:: db ; b090
|
|
s5_b091:: db ; b091
|
|
s5_b092:: ds 31 ; b092
|
|
|
|
ds $100
|
|
|
|
s5_b1b1:: db ; b1b1
|
|
s5_b1b2:: db ; b1b2
|
|
s5_b1b3:: db ; b1b3
|
|
s5_b1b4:: db ; b1b4
|
|
|
|
ds $1e
|
|
|
|
s5_b1d3:: ; b1d3
|
|
|
|
ds $120
|
|
|
|
s5_b2f3:: db ; b2f3
|
|
s5_b2f4:: ds 4 ; b2f4
|
|
|
|
ds $1
|
|
|
|
s5_b2f9:: db ; b2f9
|
|
s5_b2fa:: db ; b2fa
|
|
s5_b2fb:: db ; b2fb
|
|
|
|
ds $b49
|
|
|
|
s5_be45:: db ; be45
|
|
s5_be46:: db ; be46
|
|
|
|
ds $1b8
|
|
|
|
s5_bfff:: db ; bfff
|
|
|
|
|
|
SECTION "SRAM Mobile 3", SRAM
|
|
|
|
s6_a000:: ; a000
|