Decompile TV (#80)

* ClearTVShowData

* special_0x44

* DoTVShow (nonmatching because align)

* DoTVShowBravoTrainerPokemonProfile

* Update field names

* DoTVShowBravoTrainerBattleTower

* Renaming of struct fields

* sub_80EBFF4 and UpdateTVScreensOnMap

* SetTVMetatilesOnMap

* Power buttons for the TV screens on the map

* special_0x45

* sub_80EC18C

* special_0x4a

* ResetGabbyAndTy

* GabbyAndTyBeforeInterview

* GabbyAndTyAfterInterview

* Through IsTVShowInSearchOfTrainersAiring

* GabbyAndTyGetLastQuote

* GabbyAndTyGetLastBattleTrivia

* GabbyAndTySetScriptVarsToFieldObjectLocalIds

* InterviewAfter; use TVShow as a precursor for making the individual show structs anonymous

* Make TV structs anonymous within the union

* Move the TV union to its own subheader

* Move TV show enums to the global.tv.h subheader

* Funcion renaming

* Apply static attributes where able

* PutPokemonTodayCaughtOnAir

* sub_80EC8A4

* PutPokemonTodayFailedOnTheAir

* sub_80EC9E8, sub_80ECA10

* sub_80ECA38

* sub_80ECB00

* Put3CheersForPokeblocksOnTheAir

* PutFanClubSpecialOnTheAir

* ContestLiveUpdates_BeforeInterview

* Other before-interview Contest Live Updates functions

* ContestLiveUpdates_BeforeInterview_5

* InterviewAfter_BravoTrainerPokemonProfile

* BravoTrainerPokemonProfile_BeforeInterview1

* BravoTrainerPokemonProfile_BeforeInterview2

* Disassemble TV data

* Decompile TV data

* InterviewAfter_BravoTrainerBattleTowerProfile

* SaveRecordedItemPurchasesForTVShow

* PutNameRaterShowOnTheAir

* StartMassOutbreak

* PutLilycoveContestLadyShowOnTheAir

* InterviewAfter_FanClubLetter

* Rip TV strings

* InterviewAfter_RecentHappenings

* InterviewAfter_PkmnFanClubOpinions

* sub_80ED718

* EndMassOutbreak

* sub_80ED888

* sub_80ED8B4

* UpdateMassOutbreakTimeLeft

* sub_80ED950

* PutFishingAdviceShowOnTheAir

* through sub_80EDA80

* ewram and common syms are now fetched from the object files

* BSS symbols are taken from the tv.o file

* through sub_80EDC60

* sub_80EDCE8

* sub_80EDD78

* through sub_80EDE84

* nomatching sub_80EDE98

* sub_80EDFB4

* sub_80EE104

* sub_80EE104

* sub_80EE184

* sub_80EE2CC

* sub_80EE35C

* sub_80EE44C

* sub_80EE4DC

* sub_80EE5A4

* sub_80EE69C

* sub_80EE72C

* sub_80EE7C0

* sub_80EE818

* sub_80EE8C8

* sub_80EEA70

* sub_80EEB98

* sub_80EEBF4

* through sub_80EED60

* Functions relating to Pokemon News

* sub_80EEF6C

* GetPriceReduction

* IsPriceDiscounted

* sub_80EF120

* through sub_80EF370

* sub_80EF40C

* HasMixableShowAlreadyBeenSpawnedWithPlayerID

* TV_SortPurchasesByQuantity

* FindActiveBroadcastByShowType_SetScriptResult

* InterviewBefore

* through sub_80EF88C

* through sub_80EF93C

* through sub_80EFA24

* through TV_BernoulliTrial

* sub_80EFB58

* sub_80EFBA4

* sub_80EFBDC

* through sub_80EFD98

* ChangePokemonNickname

* ChangeBoxPokemonNickname

* sub_80EFF9C

* through player_id_to_dword

* CheckForBigMovieOrEmergencyNewsOnTV

* GetMomOrDadStringForTVMessage

* sub_80F01E8

* sub_80F0358

* sub_80F049C

* TV record mixing functions

* sub_80F06D0

* sub_80F0708 nonmatching

* through sub_80F0B24

* sub_80F0B64

* through sub_80F0C04

* sub_80F0C7C

* sub_80F0D60

* sub_80F0E58

* sub_80F0E84

* through sub_80F0F24

* sub_80F0F64

* sub_80F1208

* sub_80F1254

* sub_80F1290

* sub_80F12A4

* sub_80F14F8

* DoTVShowTodaysSmartShopper

* DoTVShowTheNameRaterShow

* DoTVShowPokemonTodaySuccessfulCapture

* DoTVShowPokemonTodayFailedCapture

* DoTVShowPokemonFanClubLetter

* DoTVShowRecentHappenings

* DoTVShowPokemonFanClubOpinions

* DoTVShowPokemonNewsMassOutbreak

* DoTVShowPokemonContestLiveUpdates

* DoTVShowPokemonBattleUpdate

* DoTVShow3CheersForPokeblocks

* DoTVShowInSearchOfTrainers

* Label GabbyAndTyData fields; remove ddump comments from data/text/tv.inc

* DoTVShowPokemonAngler

* DoTVShowTheWorldOfMasters; update RAM symbols and field names

* Decorate static functions

* DoTVShowTodaysRivalTrainer; region map enums

* TVDewfordTrendWatcherNetworkTextGroup

* DoTVShowHoennTreasureInvestigators

* DoTVShowFindThatGamer

* DoTVShowBreakingNewsTV

* DoTVShowSecretBaseVisit

* DoTVShowPokemonLotterWinnerFlashReport

* DoTVShowThePokemonBattleSeminar

* DoTVShowTrainerFanClubSpecial, DoTVShowTrainerFanClub

* DoTVShowSpotTheCuties

* DoTVShowPokemonNewsBattleFrontier

* DoTVShowWhatsNo1InHoennToday

* Helpers for DoTVShowSecretBaseSecrets

* DoTVShowSecretBaseSecrets

* DoTVShowSafariFanClub

* Finish decompilation of tv.s

* Some renaming

* Rename text group pointers

* revoke statis; pokenews enums

* Labels are number one

* Label all TV struct fields

* Make data/text/tv.inc more readable

* Split data/text/tv.inc

* Rename pokenews text pointers

* Frontier Symbol constants; indicate static rodata objects with 's' prefix

* Fix leading spaces/tabs

F*** CLion sometimes

* Fix inconsequential warning
This commit is contained in:
PikalaxALT
2017-10-13 11:09:36 -04:00
committed by Diegoisawesome
parent 428dd0e0a8
commit 52db3ad5aa
76 changed files with 12689 additions and 17601 deletions

View File

@@ -78,6 +78,7 @@
#define BATTLE_PLAYER_TELEPORTED 0x5
#define BATTLE_POKE_FLED 0x6
#define BATTLE_CAUGHT 0x7
#define BATTLE_SAFARI_OUT_OF_BALLS 0x8
#define BATTLE_FORFEITED 0x9
#define BATTLE_OPPONENT_TELEPORTED 0xA
@@ -528,11 +529,11 @@ struct BattleResults
u8 playerSwitchesCounter; // 0x2
u8 unk3; // 0x3
u8 unk4; // 0x4
u8 unk5_0:1; // 0x5 , 0x1
u8 unk5_1:1; // 0x5 , 0x2
u8 caughtMonBall:4; // 0x5 , 0x4/0x8/0x10/0x20
u8 unk5_6:1; // 0x5 , 0x40
u8 unk5_7:1; // 0x5 , 0x80
u8 unk5_0:1; // 0x5
u8 usedMasterBall:1; // 0x5
u8 caughtMonBall:4; // 0x5
u8 unk5_6:1; // 0x5
u8 unk5_7:1; // 0x5
u16 playerMon1Species; // 0x6
u8 playerMon1Name[11]; // 0x8
u8 battleTurnCounter; // 0x13
@@ -545,7 +546,7 @@ struct BattleResults
u16 caughtMonSpecies; // 0x28
u8 caughtMonNick[10]; // 0x2A
u8 filler34[2];
u8 catchAttempts[12]; // 0x36
u8 catchAttempts[11]; // 0x36
};
extern struct BattleResults gBattleResults;
@@ -902,6 +903,10 @@ struct MonSpritesGfx
struct SpriteTemplate templates[4];
};
extern struct BattleSpritesGfx* gMonSpritesGfx;
extern u8 gBattleOutcome;
extern u16 gLastUsedItem;
extern u32 gBattleTypeFlags;
extern struct MonSpritesGfx* gMonSpritesGfxPtr;
#endif // GUARD_BATTLE_H