mirror of
https://github.com/Xeeynamo/sotn-decomp.git
synced 2024-11-27 06:50:35 +00:00
81f85b195a
This took me a while. I used a [throw-away script](https://gist.github.com/Xeeynamo/58da1ff8f3831d0ba5d23da27cbca025) to help me with the quest, but I still had to manually check every single YAML subsegment. I transported over what we were able to decompile from main. For a few functions I added the signatures and documented existing DRA code, especially on the sound department (got inspired by the recent @sozud PRs). All the `.text` part from `main.exe` is now completely extracted as C/ASM where appropiate. Almost all the functions have their original PSY-Q names but 7 of them: `func_80012DBC`, `func_80012F84`, `func_80017008`, `func_80017078`, `func_8001929C`, `func_80021F0C` and `func_800286E0`. I did not feel confident enough to rename them, so I left them be. The rest of the functions I am 99% sure they are all accurate. I am now excluding the [asm/](https://github.com/Xeeynamo/sotn-decomp/tree/master/asm/us/main/psxsdk) folder from the repo. It was useless. This research confirms me the game uses the PSY-Q 3.5 libraries, with the exception of `LIBGPU.LIB`, which is from PSY-Q 3.0 for some unknown reason. EDIT: `make format` was not taking care of duplicated symbols in our symbol list. To speed-up my work, all the duplicate symbols (duplicates = name AND offset) are now removed.
75 lines
2.2 KiB
Plaintext
75 lines
2.2 KiB
Plaintext
g_SpriteBanks = 0x8018059C;
|
|
g_Cluts = 0x8018070C;
|
|
g_EntityGfxs = 0x80180760;
|
|
g_UnkMemcardPort = 0x801808DC;
|
|
g_saveIconPalette = 0x801808E4;
|
|
g_saveIcon0 = 0x80180AE4;
|
|
g_saveIcon1 = 0x80180C64;
|
|
g_saveIcon2 = 0x80180DE4;
|
|
g_saveIcon3 = 0x80180F64;
|
|
g_saveIcon4 = 0x801810E4;
|
|
g_saveIcon5 = 0x80181264;
|
|
g_saveIcon6 = 0x801813E4;
|
|
g_saveIcon7 = 0x80181564;
|
|
g_saveIcon8 = 0x801816E4;
|
|
g_saveIcon9 = 0x80181864;
|
|
g_saveIcon10 = 0x801819E4;
|
|
g_saveIcon11 = 0x80181B64;
|
|
g_saveIcon12 = 0x80181CE4;
|
|
g_saveIcon13 = 0x80181E64;
|
|
g_saveIcon14 = 0x80181FE4;
|
|
g_saveIcon15 = 0x80182164;
|
|
g_StreamWidth = 0x8018B2FC;
|
|
g_StreamHeight = 0x8018B300;
|
|
PrintFileSelectPlaceName = 0x801AD134;
|
|
Update = 0x801AEED8;
|
|
DrawString16x16 = 0x801B29C0;
|
|
DrawImages8x8 = 0x801B2AFC;
|
|
HydrateSaveSummaryEntry = 0x801B2F50;
|
|
MemcardInit = 0x801B84F0;
|
|
MemcardParse = 0x801B8518;
|
|
MemcardDetectSave = 0x801B873C;
|
|
IsMemcardBlockUsed = 0x801B881C;
|
|
MemcardReadFile = 0x801B884C;
|
|
MemcardWriteFile = 0x801B88F4;
|
|
MemcardClose = 0x801B8A10;
|
|
func_800E9880 = 0x801B8A8C;
|
|
MemcardFormat = 0x801B8D24;
|
|
StoreSaveData = 0x801B8E20;
|
|
LoadSaveData = 0x801B94BC;
|
|
MakeMemcardPath = 0x801B9698;
|
|
StreamNextVlc = 0x801B988C;
|
|
func_801BAB70 = 0x801BAB70;
|
|
DecDCTvlc = 0x801BABA4;
|
|
g_memCardRStep = 0x801BAFEC;
|
|
g_memCardRStepSub = 0x801BAFF0;
|
|
g_memCardRetryCount = 0x801BAFF8;
|
|
g_MemcardRetryCount = 0x801BC2F8;
|
|
g_MemcardFd = 0x801BC2FC;
|
|
g_Dialogue = 0x801BC354;
|
|
g_MemCardSelectorX = 0x801BC3D8;
|
|
g_MemCardSelectorY = 0x801BC3DC;
|
|
g_MemcardInfo = 0x801BC3F0;
|
|
g_SaveSummary = 0x801BC8E0;
|
|
g_SaveSummary_slot_0 = 0x801BC91C;
|
|
g_SaveSummary_place_0 = 0x801BC958;
|
|
g_SaveSummary_unk_1_0 = 0x801BC994;
|
|
g_SaveSummary_unk_2_0 = 0x801BC9D0;
|
|
g_SaveSummary_level_0 = 0x801BCA0C;
|
|
g_SaveSummary_money_0 = 0x801BCA48;
|
|
g_SaveSummary_percentage_0 = 0x801BCA84;
|
|
g_SaveSummary_playHours_0 = 0x801BCAC0;
|
|
g_SaveSummary_playSeconds_0 = 0x801BCAFC;
|
|
g_SaveSummary_playMinutes_0 = 0x801BCB38;
|
|
g_SaveSummary_kind_0 = 0x801BCB74;
|
|
g_SaveSummary_name_0 = 0x801BCBEC;
|
|
g_SaveSummary_0_padding = 0x801BCC84;
|
|
g_SaveSummary_1_padding = 0x801BD02C;
|
|
g_StreamEndFrame = 0x801BD034;
|
|
g_StreamIsRGB24 = 0x801BD038;
|
|
g_StreamRewindSwitch = 0x801BD044;
|
|
g_InputCursorPos = 0x801D6B08;
|
|
g_MemcardBlockRead = 0x801D6B10;
|
|
g_InputSaveName = 0x801D6B14;
|
|
g_MemcardStep = 0x801D6B20;
|