diff options
author | huderlem <huderlem@gmail.com> | 2019-08-13 17:23:23 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-08-13 17:23:23 -0500 |
commit | 5cbb66a6e5dd18d133e692a04e116aa3909d22ed (patch) | |
tree | c1ca88b5138d19eb5106f171c8ae77d4516e8b22 /src/main.c | |
parent | 4c8669a3aad601f1381ca9c67c78040ce80157df (diff) | |
parent | 0648ededb9161e9f5fc4e0a38ae91c7bf14e6c0b (diff) |
Merge pull request #8 from camthesaxman/decompile-options
decompile field_select.s and start decompiling options.s
Diffstat (limited to 'src/main.c')
-rwxr-xr-x | src/main.c | 50 |
1 files changed, 25 insertions, 25 deletions
@@ -3,7 +3,7 @@ #include "gbplayer.h" #include "m4a.h" -static void sub_B54(void); +static void InitGame(void); static void sub_B8C(void); static void InitIntrHandlers(void); static void ReadKeys(void); @@ -14,13 +14,13 @@ void AgbMain(void) InitIntrHandlers(); DmaCopy32(3, IntrMain, IntrMain_Buffer, sizeof(IntrMain_Buffer)); INTR_VECTOR = IntrMain_Buffer; - sub_B54(); + InitGame(); InitGameBoyPlayer(); while (1) { ReadKeys(); gMainFuncs[gMain.mainState](); - sub_D74(); + MainLoopIter(); } } @@ -40,12 +40,12 @@ void sub_9BC_Main(void) default: sub_2B4(); sub_D10(); - SetMainGameState(1); + SetMainGameState(STATE_TITLE); break; } } -void HBlankIntr(void) +void VBlankIntr(void) { m4aSoundVSync(); INTR_CHECK |= INTR_FLAG_VBLANK; @@ -55,7 +55,7 @@ void VCountIntr(void) { INTR_CHECK |= INTR_FLAG_VCOUNT; while (!(REG_DISPSTAT & DISPSTAT_HBLANK)); - if (gMain.mainState == 2) + if (gMain.mainState == STATE_GAME_MAIN) { REG_BG0HOFS = 0; if (gMain.unk28) @@ -122,7 +122,7 @@ void IntrDummy(void) { } -static void sub_B54(void) +static void InitGame(void) { REG_WAITCNT = WAITCNT_AGB | WAITCNT_PREFETCH_ENABLE @@ -139,24 +139,24 @@ static void sub_B54(void) sub_B8C(); m4aSoundInit(); m4aSoundVSyncOff(); - sub_52A18(); + SaveFile_LoadGameData(); } static void sub_B8C(void) { - gMain.mainState = 0; + gMain.mainState = STATE_INTRO; gMain.subState = 0; gMain.unk16 = 0; gMain.heldKeys = 0; gMain.newKeys = 0; gMain.unk20 = 0; gMain.rngValue = 0; - gMain.unk4C = 0; + gMain.frameCount = 0; gMain.unk30 = 0; gMain.vCount = 144; gMain.unk2C = 0; - sub_1090C(); - sub_438(); + ClearSomeArray(); + ResetSomeGraphicsRelatedStuff(); } static void InitIntrHandlers(void) @@ -166,11 +166,11 @@ static void InitIntrHandlers(void) for (i = 0; i < INTR_COUNT; i++) gIntrTable[i] = gIntrTableTemplate[i]; - gUnknown_0200FB98 = &gIntrTable[2]; - gUnknown_02019BE0 = &gIntrTable[4]; - sub_8BC(); - sub_8FC(); - sub_940(); + gVBlankIntrFuncPtr = &gIntrTable[2]; + gVCountIntrFuncPtr = &gIntrTable[4]; + ResetMainCallback(); + ResetVBlankIntrFunc(); + ResetVCountIntrFunc(); } // The number 1103515245 comes from the example implementation of rand and srand @@ -320,18 +320,18 @@ void sub_D10(void) m4aSoundVSyncOff(); } -void sub_D74(void) +void MainLoopIter(void) { - gUnknown_0200FB9C = gUnknown_02017BD4; - *gUnknown_0200FB98 = gUnknown_02017BD0; - *gUnknown_02019BE0 = gUnknown_0200FBA0; - if (gUnknown_0200FB9C) - gUnknown_0200FB9C(); + gMainCallback = gUnknown_02017BD4; + *gVBlankIntrFuncPtr = gUnknown_02017BD0; + *gVCountIntrFuncPtr = gUnknown_0200FBA0; + if (gMainCallback) + gMainCallback(); - gMain.unk4C++; + gMain.frameCount++; } -void sub_DC4(void) +void DefaultMainCallback(void) { if (REG_DISPSTAT & DISPSTAT_VBLANK_INTR) { |