Decompile graph.c (#274)

* Decompiled, 1 non-matching, add some bss reordering helpers

* Document stuff

* Review suggestions

* graphutil.c -> graphalloc.c

* Try to fix fault callback warnings

* Remove extra comments in GfxMasterList

* char pad -> u32 pad

Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>

* Fix gameState

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

* Other suggestions

Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
This commit is contained in:
Tharo
2021-10-29 19:30:48 +01:00
committed by GitHub
parent 38fc110f99
commit b1b114e142
49 changed files with 908 additions and 454 deletions
+22 -22
View File
@@ -168,8 +168,8 @@ asm/non_matchings/code/z_effect_soft_sprite_old_init/EffectSsIceSmoke_Spawn.s,Ef
asm/non_matchings/code/z_effect_soft_sprite_old_init/EffectSsIceBlock_Spawn.s,EffectSsIceBlock_Spawn,0x800B326C,0x19
asm/non_matchings/code/flg_set/FlagSet_Update.s,FlagSet_Update,0x800B32D0,0xDD
asm/non_matchings/code/flg_set/FlagSet_Draw.s,FlagSet_Draw,0x800B3644,0x8F
asm/non_matchings/code/z_DLF/DLF_LoadGameState.s,DLF_LoadGameState,0x800B3880,0x49
asm/non_matchings/code/z_DLF/DLF_FreeGameState.s,DLF_FreeGameState,0x800B39A4,0x4B
asm/non_matchings/code/z_DLF/Overlay_LoadGameState.s,Overlay_LoadGameState,0x800B3880,0x49
asm/non_matchings/code/z_DLF/Overlay_FreeGameState.s,Overlay_FreeGameState,0x800B39A4,0x4B
asm/non_matchings/code/z_actor/Actor_PrintLists.s,Actor_PrintLists,0x800B3AD0,0x35
asm/non_matchings/code/z_actor/ActorShape_Init.s,ActorShape_Init,0x800B3BA4,0x9
asm/non_matchings/code/z_actor/ActorShadow_Draw.s,ActorShadow_Draw,0x800B3BC8,0xFE
@@ -2646,11 +2646,11 @@ asm/non_matchings/code/game/Game_Update.s,Game_Update,0x8017377C,0x1A
asm/non_matchings/code/game/Game_IncrementFrameCount.s,Game_IncrementFrameCount,0x801737E4,0xB
asm/non_matchings/code/game/Game_InitHeap.s,Game_InitHeap,0x80173810,0x1C
asm/non_matchings/code/game/Game_ResizeHeap.s,Game_ResizeHeap,0x80173880,0x34
asm/non_matchings/code/game/Game_StateInit.s,Game_StateInit,0x80173950,0x40
asm/non_matchings/code/game/Game_StateFini.s,Game_StateFini,0x80173A50,0x2C
asm/non_matchings/code/game/Game_GetNextStateInit.s,Game_GetNextStateInit,0x80173B00,0x3
asm/non_matchings/code/game/Game_GetNextStateSize.s,Game_GetNextStateSize,0x80173B0C,0x3
asm/non_matchings/code/game/Game_GetShouldContinue.s,Game_GetShouldContinue,0x80173B18,0x3
asm/non_matchings/code/game/GameState_Init.s,GameState_Init,0x80173950,0x40
asm/non_matchings/code/game/GameState_Destroy.s,GameState_Destroy,0x80173A50,0x2C
asm/non_matchings/code/game/GameState_GetNextStateInit.s,GameState_GetNextStateInit,0x80173B00,0x3
asm/non_matchings/code/game/GameState_GetNextStateSize.s,GameState_GetNextStateSize,0x80173B0C,0x3
asm/non_matchings/code/game/GameState_IsRunning.s,GameState_IsRunning,0x80173B18,0x3
asm/non_matchings/code/game/Game_GetHeapFreeSize.s,Game_GetHeapFreeSize,0x80173B24,0x9
asm/non_matchings/code/game/func_80173B48.s,func_80173B48,0x80173B48,0x2A
asm/non_matchings/code/gamealloc/func_80173BF0.s,func_80173BF0,0x80173BF0,0x8
@@ -2659,20 +2659,20 @@ asm/non_matchings/code/gamealloc/Gamealloc_Free.s,Gamealloc_Free,0x80173C7C,0x13
asm/non_matchings/code/gamealloc/Gamealloc_FreeAll.s,Gamealloc_FreeAll,0x80173CC8,0x14
asm/non_matchings/code/gamealloc/Gamealloc_Init.s,Gamealloc_Init,0x80173D18,0x6
asm/non_matchings/code/graph/Graph_FaultClient.s,Graph_FaultClient,0x80173D30,0x1F
asm/non_matchings/code/graph/Graph_DlAlloc.s,Graph_DlAlloc,0x80173DAC,0x8
asm/non_matchings/code/graph/Graph_InitTHGA.s,Graph_InitTHGA,0x80173DCC,0x73
asm/non_matchings/code/graph/Graph_InitTHGA.s,Graph_InitTHGA,0x80173DAC,0x8
asm/non_matchings/code/graph/Graph_SetNextGfxPool.s,Graph_SetNextGfxPool,0x80173DCC,0x73
asm/non_matchings/code/graph/Graph_GetNextGameState.s,Graph_GetNextGameState,0x80173F98,0x32
asm/non_matchings/code/graph/Graph_FaultAddrConvFunc.s,Graph_FaultAddrConvFunc,0x80174060,0x1C
asm/non_matchings/code/graph/Graph_Init.s,Graph_Init,0x801740D0,0x29
asm/non_matchings/code/graph/Graph_Destroy.s,Graph_Destroy,0x80174174,0xD
asm/non_matchings/code/graph/Graph_Render.s,Graph_Render,0x801741A8,0xC1
asm/non_matchings/code/graph/Graph_FrameSetup.s,Graph_FrameSetup,0x801744AC,0x13
asm/non_matchings/code/graph/Graph_RenderFrame.s,Graph_RenderFrame,0x801744F8,0xDC
asm/non_matchings/code/graph/Graph_DoFrame.s,Graph_DoFrame,0x80174868,0xE
asm/non_matchings/code/graph/Graph_TaskSet00.s,Graph_TaskSet00,0x801741A8,0xC1
asm/non_matchings/code/graph/Graph_UpdateGame.s,Graph_UpdateGame,0x801744AC,0x13
asm/non_matchings/code/graph/Graph_ExecuteAndDraw.s,Graph_ExecuteAndDraw,0x801744F8,0xDC
asm/non_matchings/code/graph/Graph_Update.s,Graph_Update,0x80174868,0xE
asm/non_matchings/code/graph/Graph_ThreadEntry.s,Graph_ThreadEntry,0x801748A0,0x68
asm/non_matchings/code/code_80174A40/Graph_GfxPlusOne.s,Graph_GfxPlusOne,0x80174A40,0x3
asm/non_matchings/code/code_80174A40/Graph_BranchDlist.s,Graph_BranchDlist,0x80174A4C,0x6
asm/non_matchings/code/code_80174A40/Graph_DlistAlloc.s,Graph_DlistAlloc,0x80174A64,0xF
asm/non_matchings/code/graphalloc/Graph_GfxPlusOne.s,Graph_GfxPlusOne,0x80174A40,0x3
asm/non_matchings/code/graphalloc/Graph_BranchDlist.s,Graph_BranchDlist,0x80174A4C,0x6
asm/non_matchings/code/graphalloc/Graph_DlistAlloc.s,Graph_DlistAlloc,0x80174A64,0xF
asm/non_matchings/code/listalloc/func_80174AA0.s,func_80174AA0,0x80174AA0,0x5
asm/non_matchings/code/listalloc/func_80174AB4.s,func_80174AB4,0x80174AB4,0x1B
asm/non_matchings/code/listalloc/func_80174B20.s,func_80174B20,0x80174B20,0x20
@@ -2743,8 +2743,8 @@ asm/non_matchings/code/sys_cmpdma/func_80178750.s,func_80178750,0x80178750,0x32
asm/non_matchings/code/sys_cmpdma/func_80178818.s,func_80178818,0x80178818,0x58
asm/non_matchings/code/sys_cmpdma/func_80178978.s,func_80178978,0x80178978,0x17
asm/non_matchings/code/sys_cmpdma/func_801789D4.s,func_801789D4,0x801789D4,0x6
asm/non_matchings/code/sys_cmpdma/get_framebuffer.s,get_framebuffer,0x801789EC,0xA
asm/non_matchings/code/sys_cmpdma/get_zbuffer.s,get_zbuffer,0x80178A14,0x4
asm/non_matchings/code/sys_cmpdma/SysCfb_GetFbPtr.s,SysCfb_GetFbPtr,0x801789EC,0xA
asm/non_matchings/code/sys_cmpdma/SysCfb_GetZBuffer.s,SysCfb_GetZBuffer,0x80178A14,0x4
asm/non_matchings/code/sys_cmpdma/func_80178A24.s,func_80178A24,0x80178A24,0x4
asm/non_matchings/code/sys_cmpdma/func_80178A34.s,func_80178A34,0x80178A34,0x18
asm/non_matchings/code/sys_cmpdma/func_80178A94.s,func_80178A94,0x80178A94,0xB
@@ -2907,10 +2907,10 @@ asm/non_matchings/code/sys_matrix/func_8018219C.s,func_8018219C,0x8018219C,0x4A
asm/non_matchings/code/sys_matrix/func_801822C4.s,func_801822C4,0x801822C4,0x4A
asm/non_matchings/code/sys_matrix/Matrix_InsertRotationAroundUnitVector_f.s,Matrix_InsertRotationAroundUnitVector_f,0x801823EC,0x118
asm/non_matchings/code/sys_matrix/Matrix_InsertRotationAroundUnitVector_s.s,Matrix_InsertRotationAroundUnitVector_s,0x8018284C,0x111
asm/non_matchings/code/sys_matrix/func_80182C90.s,func_80182C90,0x80182C90,0x4
asm/non_matchings/code/sys_matrix/func_80182CA0.s,func_80182CA0,0x80182CA0,0x7
asm/non_matchings/code/sys_matrix/func_80182CBC.s,func_80182CBC,0x80182CBC,0x4
asm/non_matchings/code/sys_matrix/func_80182CCC.s,func_80182CCC,0x80182CCC,0x5
asm/non_matchings/code/sys_matrix/SysUcode_GetUCodeBoot.s,SysUcode_GetUCodeBoot,0x80182C90,0x4
asm/non_matchings/code/sys_matrix/SysUcode_GetUCodeBootSize.s,SysUcode_GetUCodeBootSize,0x80182CA0,0x7
asm/non_matchings/code/sys_matrix/SysUcode_GetUCode.s,SysUcode_GetUCode,0x80182CBC,0x4
asm/non_matchings/code/sys_matrix/SysUcode_GetUCodeData.s,SysUcode_GetUCodeData,0x80182CCC,0x5
asm/non_matchings/code/sys_ucode/func_80182CE0.s,func_80182CE0,0x80182CE0,0xD0
asm/non_matchings/code/sys_ucode/func_80183020.s,func_80183020,0x80183020,0xE
asm/non_matchings/code/sys_ucode/func_80183058.s,func_80183058,0x80183058,0x6
1 asm/non_matchings/code/z_en_a_keep/EnAObj_Init.s EnAObj_Init 0x800A5AC0 0x2B
168 asm/non_matchings/code/z_effect_soft_sprite_old_init/EffectSsIceBlock_Spawn.s EffectSsIceBlock_Spawn 0x800B326C 0x19
169 asm/non_matchings/code/flg_set/FlagSet_Update.s FlagSet_Update 0x800B32D0 0xDD
170 asm/non_matchings/code/flg_set/FlagSet_Draw.s FlagSet_Draw 0x800B3644 0x8F
171 asm/non_matchings/code/z_DLF/DLF_LoadGameState.s asm/non_matchings/code/z_DLF/Overlay_LoadGameState.s DLF_LoadGameState Overlay_LoadGameState 0x800B3880 0x49
172 asm/non_matchings/code/z_DLF/DLF_FreeGameState.s asm/non_matchings/code/z_DLF/Overlay_FreeGameState.s DLF_FreeGameState Overlay_FreeGameState 0x800B39A4 0x4B
173 asm/non_matchings/code/z_actor/Actor_PrintLists.s Actor_PrintLists 0x800B3AD0 0x35
174 asm/non_matchings/code/z_actor/ActorShape_Init.s ActorShape_Init 0x800B3BA4 0x9
175 asm/non_matchings/code/z_actor/ActorShadow_Draw.s ActorShadow_Draw 0x800B3BC8 0xFE
2646 asm/non_matchings/code/game/Game_IncrementFrameCount.s Game_IncrementFrameCount 0x801737E4 0xB
2647 asm/non_matchings/code/game/Game_InitHeap.s Game_InitHeap 0x80173810 0x1C
2648 asm/non_matchings/code/game/Game_ResizeHeap.s Game_ResizeHeap 0x80173880 0x34
2649 asm/non_matchings/code/game/Game_StateInit.s asm/non_matchings/code/game/GameState_Init.s Game_StateInit GameState_Init 0x80173950 0x40
2650 asm/non_matchings/code/game/Game_StateFini.s asm/non_matchings/code/game/GameState_Destroy.s Game_StateFini GameState_Destroy 0x80173A50 0x2C
2651 asm/non_matchings/code/game/Game_GetNextStateInit.s asm/non_matchings/code/game/GameState_GetNextStateInit.s Game_GetNextStateInit GameState_GetNextStateInit 0x80173B00 0x3
2652 asm/non_matchings/code/game/Game_GetNextStateSize.s asm/non_matchings/code/game/GameState_GetNextStateSize.s Game_GetNextStateSize GameState_GetNextStateSize 0x80173B0C 0x3
2653 asm/non_matchings/code/game/Game_GetShouldContinue.s asm/non_matchings/code/game/GameState_IsRunning.s Game_GetShouldContinue GameState_IsRunning 0x80173B18 0x3
2654 asm/non_matchings/code/game/Game_GetHeapFreeSize.s Game_GetHeapFreeSize 0x80173B24 0x9
2655 asm/non_matchings/code/game/func_80173B48.s func_80173B48 0x80173B48 0x2A
2656 asm/non_matchings/code/gamealloc/func_80173BF0.s func_80173BF0 0x80173BF0 0x8
2659 asm/non_matchings/code/gamealloc/Gamealloc_FreeAll.s Gamealloc_FreeAll 0x80173CC8 0x14
2660 asm/non_matchings/code/gamealloc/Gamealloc_Init.s Gamealloc_Init 0x80173D18 0x6
2661 asm/non_matchings/code/graph/Graph_FaultClient.s Graph_FaultClient 0x80173D30 0x1F
2662 asm/non_matchings/code/graph/Graph_DlAlloc.s asm/non_matchings/code/graph/Graph_InitTHGA.s Graph_DlAlloc Graph_InitTHGA 0x80173DAC 0x8
2663 asm/non_matchings/code/graph/Graph_InitTHGA.s asm/non_matchings/code/graph/Graph_SetNextGfxPool.s Graph_InitTHGA Graph_SetNextGfxPool 0x80173DCC 0x73
2664 asm/non_matchings/code/graph/Graph_GetNextGameState.s Graph_GetNextGameState 0x80173F98 0x32
2665 asm/non_matchings/code/graph/Graph_FaultAddrConvFunc.s Graph_FaultAddrConvFunc 0x80174060 0x1C
2666 asm/non_matchings/code/graph/Graph_Init.s Graph_Init 0x801740D0 0x29
2667 asm/non_matchings/code/graph/Graph_Destroy.s Graph_Destroy 0x80174174 0xD
2668 asm/non_matchings/code/graph/Graph_Render.s asm/non_matchings/code/graph/Graph_TaskSet00.s Graph_Render Graph_TaskSet00 0x801741A8 0xC1
2669 asm/non_matchings/code/graph/Graph_FrameSetup.s asm/non_matchings/code/graph/Graph_UpdateGame.s Graph_FrameSetup Graph_UpdateGame 0x801744AC 0x13
2670 asm/non_matchings/code/graph/Graph_RenderFrame.s asm/non_matchings/code/graph/Graph_ExecuteAndDraw.s Graph_RenderFrame Graph_ExecuteAndDraw 0x801744F8 0xDC
2671 asm/non_matchings/code/graph/Graph_DoFrame.s asm/non_matchings/code/graph/Graph_Update.s Graph_DoFrame Graph_Update 0x80174868 0xE
2672 asm/non_matchings/code/graph/Graph_ThreadEntry.s Graph_ThreadEntry 0x801748A0 0x68
2673 asm/non_matchings/code/code_80174A40/Graph_GfxPlusOne.s asm/non_matchings/code/graphalloc/Graph_GfxPlusOne.s Graph_GfxPlusOne 0x80174A40 0x3
2674 asm/non_matchings/code/code_80174A40/Graph_BranchDlist.s asm/non_matchings/code/graphalloc/Graph_BranchDlist.s Graph_BranchDlist 0x80174A4C 0x6
2675 asm/non_matchings/code/code_80174A40/Graph_DlistAlloc.s asm/non_matchings/code/graphalloc/Graph_DlistAlloc.s Graph_DlistAlloc 0x80174A64 0xF
2676 asm/non_matchings/code/listalloc/func_80174AA0.s func_80174AA0 0x80174AA0 0x5
2677 asm/non_matchings/code/listalloc/func_80174AB4.s func_80174AB4 0x80174AB4 0x1B
2678 asm/non_matchings/code/listalloc/func_80174B20.s func_80174B20 0x80174B20 0x20
2743 asm/non_matchings/code/sys_cmpdma/func_80178818.s func_80178818 0x80178818 0x58
2744 asm/non_matchings/code/sys_cmpdma/func_80178978.s func_80178978 0x80178978 0x17
2745 asm/non_matchings/code/sys_cmpdma/func_801789D4.s func_801789D4 0x801789D4 0x6
2746 asm/non_matchings/code/sys_cmpdma/get_framebuffer.s asm/non_matchings/code/sys_cmpdma/SysCfb_GetFbPtr.s get_framebuffer SysCfb_GetFbPtr 0x801789EC 0xA
2747 asm/non_matchings/code/sys_cmpdma/get_zbuffer.s asm/non_matchings/code/sys_cmpdma/SysCfb_GetZBuffer.s get_zbuffer SysCfb_GetZBuffer 0x80178A14 0x4
2748 asm/non_matchings/code/sys_cmpdma/func_80178A24.s func_80178A24 0x80178A24 0x4
2749 asm/non_matchings/code/sys_cmpdma/func_80178A34.s func_80178A34 0x80178A34 0x18
2750 asm/non_matchings/code/sys_cmpdma/func_80178A94.s func_80178A94 0x80178A94 0xB
2907 asm/non_matchings/code/sys_matrix/func_801822C4.s func_801822C4 0x801822C4 0x4A
2908 asm/non_matchings/code/sys_matrix/Matrix_InsertRotationAroundUnitVector_f.s Matrix_InsertRotationAroundUnitVector_f 0x801823EC 0x118
2909 asm/non_matchings/code/sys_matrix/Matrix_InsertRotationAroundUnitVector_s.s Matrix_InsertRotationAroundUnitVector_s 0x8018284C 0x111
2910 asm/non_matchings/code/sys_matrix/func_80182C90.s asm/non_matchings/code/sys_matrix/SysUcode_GetUCodeBoot.s func_80182C90 SysUcode_GetUCodeBoot 0x80182C90 0x4
2911 asm/non_matchings/code/sys_matrix/func_80182CA0.s asm/non_matchings/code/sys_matrix/SysUcode_GetUCodeBootSize.s func_80182CA0 SysUcode_GetUCodeBootSize 0x80182CA0 0x7
2912 asm/non_matchings/code/sys_matrix/func_80182CBC.s asm/non_matchings/code/sys_matrix/SysUcode_GetUCode.s func_80182CBC SysUcode_GetUCode 0x80182CBC 0x4
2913 asm/non_matchings/code/sys_matrix/func_80182CCC.s asm/non_matchings/code/sys_matrix/SysUcode_GetUCodeData.s func_80182CCC SysUcode_GetUCodeData 0x80182CCC 0x5
2914 asm/non_matchings/code/sys_ucode/func_80182CE0.s func_80182CE0 0x80182CE0 0xD0
2915 asm/non_matchings/code/sys_ucode/func_80183020.s func_80183020 0x80183020 0xE
2916 asm/non_matchings/code/sys_ucode/func_80183058.s func_80183058 0x80183058 0x6