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

@@ -822,7 +822,15 @@ gUnknown_0827EE09:: @ 27EE09
.incbin "baserom.gba", 0x27ee09, 0x2
gUnknown_0827EE0B:: @ 827EE0B
.incbin "baserom.gba", 0x27ee0b, 0x118fa
.incbin "baserom.gba", 0x27ee0b, 0x46a
.include "data/text/tv.inc"
.incbin "baserom.gba", 0x0028c7e9, 0x90f
.include "data/text/pokemon_news.inc"
.incbin "baserom.gba", 0x28e066, 0x269f
gUnknown_08290705:: @ 8290705
.incbin "baserom.gba", 0x290705, 0xeb

165
data/text/pokemon_news.inc Normal file
View File

@@ -0,0 +1,165 @@
gPokeNewsTextSlateport_Upcoming:: @ 0828D0F8
.string "Greetings!\n"
.string "Its time for POKéMON NEWS.\p"
.string "SLATEPORTs most popular kind of guy,\n"
.string "the ENERGY GURU, is in the news again!\p"
.string "He promises to, “Stupendously go for\n"
.string "it in just this many days: {STR_VAR_1}!”\p"
.string "While he refused to elaborate on what\n"
.string "he will stupendously go for, the\l"
.string "ENERGY GURU advised, “Save up your\l"
.string "money. Thatll be good…”\p"
.string "It sounds like a trip to SLATEPORT\n"
.string "would be well worth your while that day.\p"
.string "Thats the news on POKéMON NEWS.$"
gPokeNewsTextSlateport_Ongoing:: @ 0828D2A1
.string "Greetings!\n"
.string "Its time for POKéMON NEWS.\p"
.string "This is the news youve all been\n"
.string "waiting for!\p"
.string "SLATEPORTS ENERGY GURU is going\n"
.string "for it stupendously in the MARKET!\p"
.string "He promises unbeatable bargain\n"
.string "prices on CALCIUM and PROTEIN!\p"
.string "A trip to SLATEPORT CITY sounds\n"
.string "worthwhile. Why not visit and shop\l"
.string "to your hearts content?\p"
.string "Thats the news on POKéMON NEWS.$"
gPokeNewsTextSlateport_Ending:: @ 0828D3F5
.string "Greetings!\n"
.string "Its time for POKéMON NEWS.\p"
.string "This is the news youve all been\n"
.string "waiting for!\p"
.string "SLATEPORTS ENERGY GURU is going\n"
.string "for it stupendously in the MARKET!\p"
.string "He promises unbeatable bargain\n"
.string "prices on CALCIUM and PROTEIN!\p"
.string "According to the ENERGY GURU, he\n"
.string "still has ample merchandise left.\p"
.string "Why not visit SLATEPORT CITY for\n"
.string "a most enjoyable shopping trip?\p"
.string "Thats the news on POKéMON NEWS.$"
gPokeNewsTextGameCorner_Upcoming:: @ 0828D571
.string "Greetings!\n"
.string "Its time for POKéMON NEWS.\p"
.string "Its approaching!\n"
.string "Its finally coming!\p"
.string "The GAME CORNERs service day will be\n"
.string "here in just this many days: {STR_VAR_1}!\p"
.string "Even those who are usually unlucky\n"
.string "may be lucky on this particular day!\p"
.string "Thats the news on POKéMON NEWS.$"
gPokeNewsTextGameCorner_Ongoing:: @ 0828D66F
.string "Greetings!\n"
.string "Its time for POKéMON NEWS.\p"
.string "Its here!\n"
.string "Its finally arrived!\p"
.string "GAME CORNERs service day has finally\n"
.string "arrived!\p"
.string "Could you be lucky at the SLOTS \n"
.string "and ROULETTE?\p"
.string "The location is MAUVILLE CITY.\n"
.string "This is the place!\p"
.string "Thats the news on POKéMON NEWS.$"
gPokeNewsTextGameCorner_Ending:: @ 0828D768
.string "Greetings!\n"
.string "Its time for POKéMON NEWS.\p"
.string "Its here!\n"
.string "Its finally arrived!\p"
.string "GAME CORNERs service day has finally\n"
.string "arrived!\p"
.string "Could you be lucky at the SLOTS\n"
.string "and ROULETTE?\p"
.string "Time is limited and has almost run out.\n"
.string "The location is MAUVILLE CITY.\p"
.string "Thats the news on POKéMON NEWS.$"
gPokeNewsTextLilycove_Upcoming:: @ 0828D875
.string "Greetings!\n"
.string "Its time for POKéMON NEWS.\p"
.string "Weve just received wonderful news\n"
.string "from LILYCOVE DEPARTMENT STORE.\p"
.string "The DEPARTMENT STOREs clear-out sale\n"
.string "will be in just this many days: {STR_VAR_1}!\p"
.string "That thingamajig or that doodad that\n"
.string "youve always wanted could be yours!\p"
.string "Thats the news on POKéMON NEWS.$"
gPokeNewsTextLilycove_Ongoing:: @ 0828D994
.string "Greetings!\n"
.string "Its time for POKéMON NEWS.\p"
.string "This is the news youve all been\n"
.string "waiting for!\p"
.string "LILYCOVE DEPARTMENT STOREs clear-out\n"
.string "sale has finally arrived!\p"
.string "All the thingamajigs and doodads that\n"
.string "youve always dreamt about…\p"
.string "You may be in for fateful encounters\n"
.string "with them all!\p"
.string "Thats the news on POKéMON NEWS.$"
gPokeNewsTextLilycove_Ending:: @ 0828DAC0
.string "Greetings!\n"
.string "Its time for POKéMON NEWS.\p"
.string "This is the news youve all been\n"
.string "waiting for!\p"
.string "LILYCOVE DEPARTMENT STOREs clear-out\n"
.string "sale has finally arrived!\p"
.string "All the thingamajigs and doodads that\n"
.string "youve always dreamt about…\p"
.string "You may be in for fateful encounters\n"
.string "with them all!\p"
.string "Thats the news on POKéMON NEWS.$"
gPokeNewsTextBlendMaster_Upcoming:: @ 0828DBEC
.string "Greetings!\n"
.string "Its time for POKéMON NEWS.\p"
.string "We have big news for everyone\n"
.string "involved in the making of {POKEBLOCK}S.\p"
.string "The legendary BLEND MASTER will be\n"
.string "appearing in LILYCOVE CITY with just\l"
.string "a mere {STR_VAR_1}-day wait to go!\p"
.string "The BLEND MASTER is said to be\n"
.string "the best in all HOENN when it comes to\l"
.string "spinning a BERRY BLENDER.\p"
.string "Those people who want to make great\n"
.string "{POKEBLOCK}S or see the MASTER in action\l"
.string "are urged to save their BERRIES.\p"
.string "Thats the news on POKéMON NEWS.$"
gPokeNewsTextBlendMaster_Ongoing:: @ 0828DD9E
.string "Greetings!\n"
.string "Its time for POKéMON NEWS.\p"
.string "We have big news for everyone\n"
.string "involved in the making of {POKEBLOCK}S.\p"
.string "The legendary BLEND MASTER has\n"
.string "finally appeared!\p"
.string "The BLEND MASTER is spinning\n"
.string "the BERRY BLENDER at the LILYCOVE\l"
.string "CONTEST HALL.\p"
.string "Those people who want to make great\n"
.string "{POKEBLOCK}S or see the MASTER in action\l"
.string "should hurry to LILYCOVE.\p"
.string "Thats the news on POKéMON NEWS.$"
gPokeNewsTextBlendMaster_Ending:: @ 0828DF05
.string "Greetings!\n"
.string "Its time for POKéMON NEWS.\p"
.string "Its incredible!\n"
.string "Too incredible, even!\p"
.string "The BERRY BLENDER is spinning at\n"
.string "a dizzying pace!\p"
.string "The BLEND MASTER has lived up to\n"
.string "his reputation!\p"
.string "The BLEND MASTER will soon be\n"
.string "leaving LILYCOVE.\p"
.string "If you havent seen the MASTER in\n"
.string "action, dont waste this chance!\l"
.string "Head to LILYCOVE right now!\p"
.string "Thats the news on POKéMON NEWS.$"

2891
data/text/tv.inc Normal file

File diff suppressed because it is too large Load Diff

128
data/tv.s
View File

@@ -1,128 +0,0 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.section .rodata
.align 2, 0
gUnknown_0858D094:: @ 858D094
.incbin "baserom.gba", 0x58d094, 0x3c
gUnknown_0858D0D0:: @ 858D0D0
.incbin "baserom.gba", 0x58d0d0, 0xe
gUnknown_0858D0DE:: @ 858D0DE
.incbin "baserom.gba", 0x58d0de, 0xe
gUnknown_0858D0EC:: @ 858D0EC
.incbin "baserom.gba", 0x58d0ec, 0x1c
gUnknown_0858D108:: @ 858D108
.incbin "baserom.gba", 0x58d108, 0x14
gUnknown_0858D11C:: @ 858D11C
.incbin "baserom.gba", 0x58d11c, 0x14
gUnknown_0858D130:: @ 858D130
.incbin "baserom.gba", 0x58d130, 0x14
gUnknown_0858D144:: @ 858D144
.incbin "baserom.gba", 0x58d144, 0xc
gUnknown_0858D150:: @ 858D150
.incbin "baserom.gba", 0x58d150, 0x20
gUnknown_0858D170:: @ 858D170
.incbin "baserom.gba", 0x58d170, 0x18
gUnknown_0858D188:: @ 858D188
.incbin "baserom.gba", 0x58d188, 0x14
gUnknown_0858D19C:: @ 858D19C
.incbin "baserom.gba", 0x58d19c, 0x4
gUnknown_0858D1A0:: @ 858D1A0
.incbin "baserom.gba", 0x58d1a0, 0x30
gUnknown_0858D1D0:: @ 858D1D0
.incbin "baserom.gba", 0x58d1d0, 0x34
gUnknown_0858D204:: @ 858D204
.incbin "baserom.gba", 0x58d204, 0x24
gUnknown_0858D228:: @ 858D228
.incbin "baserom.gba", 0x58d228, 0x18
gUnknown_0858D240:: @ 858D240
.incbin "baserom.gba", 0x58d240, 0x3c
gUnknown_0858D27C:: @ 858D27C
.incbin "baserom.gba", 0x58d27c, 0x84
gUnknown_0858D300:: @ 858D300
.incbin "baserom.gba", 0x58d300, 0x20
gUnknown_0858D320:: @ 858D320
.incbin "baserom.gba", 0x58d320, 0x18
gUnknown_0858D338:: @ 858D338
.incbin "baserom.gba", 0x58d338, 0x4c
gUnknown_0858D384:: @ 858D384
.incbin "baserom.gba", 0x58d384, 0x10
gUnknown_0858D394:: @ 858D394
.incbin "baserom.gba", 0x58d394, 0x1c
gUnknown_0858D3B0:: @ 858D3B0
.incbin "baserom.gba", 0x58d3b0, 0x8
gUnknown_0858D3B8:: @ 858D3B8
.incbin "baserom.gba", 0x58d3b8, 0xc
gUnknown_0858D3C4:: @ 858D3C4
.incbin "baserom.gba", 0x58d3c4, 0x2c
gUnknown_0858D3F0:: @ 858D3F0
.incbin "baserom.gba", 0x58d3f0, 0x1c
gUnknown_0858D40C:: @ 858D40C
.incbin "baserom.gba", 0x58d40c, 0xc
gUnknown_0858D418:: @ 858D418
.incbin "baserom.gba", 0x58d418, 0x10
gUnknown_0858D428:: @ 858D428
.incbin "baserom.gba", 0x58d428, 0x34
gUnknown_0858D45C:: @ 858D45C
.incbin "baserom.gba", 0x58d45c, 0x38
gUnknown_0858D494:: @ 858D494
.incbin "baserom.gba", 0x58d494, 0x4
gUnknown_0858D498:: @ 858D498
.incbin "baserom.gba", 0x58d498, 0x1c
gUnknown_0858D4B4:: @ 858D4B4
.incbin "baserom.gba", 0x58d4b4, 0x30
gUnknown_0858D4E4:: @ 858D4E4
.incbin "baserom.gba", 0x58d4e4, 0x40
gUnknown_0858D524:: @ 858D524
.incbin "baserom.gba", 0x58d524, 0x4c
gUnknown_0858D570:: @ 858D570
.incbin "baserom.gba", 0x58d570, 0x24
gUnknown_0858D594:: @ 858D594
.incbin "baserom.gba", 0x58d594, 0xac
gUnknown_0858D640:: @ 858D640
.incbin "baserom.gba", 0x58d640, 0x2c
gUnknown_0858D66C:: @ 858D66C
.incbin "baserom.gba", 0x58d66c, 0x24
gUnknown_0858D690:: @ 858D690
.incbin "baserom.gba", 0x58d690, 0x20