Merge pull request #69 from gamemasterplc/main

Label board/model.c
This commit is contained in:
gamemasterplc 2023-12-28 17:26:45 -06:00 committed by GitHub
commit 03567d3e56
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
11 changed files with 192 additions and 160 deletions

View file

@ -327,7 +327,7 @@ game/board/main.c:
.sdata2 start:0x801D5148 end:0x801D51F8 .sdata2 start:0x801D5148 end:0x801D51F8
game/board/board.c: game/board/board.c:
.text start:0x80061F44 end:0x8006D248 .text start:0x80061F44 end:0x8006D308
.rodata start:0x8011DD90 end:0x8011DE60 .rodata start:0x8011DD90 end:0x8011DE60
.data start:0x80139898 end:0x80139AA0 .data start:0x80139898 end:0x80139AA0
.bss start:0x8019D968 end:0x8019D998 .bss start:0x8019D968 end:0x8019D998
@ -336,7 +336,7 @@ game/board/board.c:
.sdata2 start:0x801D51F8 end:0x801D5300 .sdata2 start:0x801D51F8 end:0x801D5300
game/board/model.c: game/board/model.c:
.text start:0x8006D248 end:0x8006FD7C .text start:0x8006D308 end:0x8006FD7C
.sbss start:0x801D3F58 end:0x801D3F68 .sbss start:0x801D3F58 end:0x801D3F68
.sdata2 start:0x801D5300 end:0x801D5318 .sdata2 start:0x801D5300 end:0x801D5318

View file

@ -1004,7 +1004,7 @@ InitBoardFunc = .text:0x8005B430; // type:function size:0x64 scope:local
ExecBoardFunc = .text:0x8005B494; // type:function size:0x9C scope:local ExecBoardFunc = .text:0x8005B494; // type:function size:0x9C scope:local
KillBoardFunc = .text:0x8005B530; // type:function size:0xCC scope:local KillBoardFunc = .text:0x8005B530; // type:function size:0xCC scope:local
BoardKill = .text:0x8005B5FC; // type:function size:0xAC BoardKill = .text:0x8005B5FC; // type:function size:0xAC
fn_8005B6A8 = .text:0x8005B6A8; // type:function size:0x48 BoardIsKill = .text:0x8005B6A8; // type:function size:0x48
BoardSetPauseEnable = .text:0x8005B6F0; // type:function size:0x74 BoardSetPauseEnable = .text:0x8005B6F0; // type:function size:0x74
BoardGetPauseEnable = .text:0x8005B764; // type:function size:0x48 BoardGetPauseEnable = .text:0x8005B764; // type:function size:0x48
BoardSetSave = .text:0x8005B7AC; // type:function size:0x524 BoardSetSave = .text:0x8005B7AC; // type:function size:0x524
@ -1051,8 +1051,8 @@ BoardCameraStartMotion = .text:0x8005DB24; // type:function size:0x48
BoardCameraStartMotion2 = .text:0x8005DB6C; // type:function size:0x230 BoardCameraStartMotion2 = .text:0x8005DB6C; // type:function size:0x230
BoardCameraFovSet = .text:0x8005DD9C; // type:function size:0x20 BoardCameraFovSet = .text:0x8005DD9C; // type:function size:0x20
BoardCameraCullCheck = .text:0x8005DDBC; // type:function size:0x2BC BoardCameraCullCheck = .text:0x8005DDBC; // type:function size:0x2BC
fn_8005E078 = .text:0x8005E078; // type:function size:0x48 BoardCameraMotionIsDone = .text:0x8005E078; // type:function size:0x48
fn_8005E0C0 = .text:0x8005E0C0; // type:function size:0x58 BoardCameraMotionWait = .text:0x8005E0C0; // type:function size:0x58
BoardCameraInit = .text:0x8005E118; // type:function size:0x24C BoardCameraInit = .text:0x8005E118; // type:function size:0x24C
BoardCameraUpdate = .text:0x8005E364; // type:function size:0x350 BoardCameraUpdate = .text:0x8005E364; // type:function size:0x350
BoardCameraCalcTarget = .text:0x8005E6B4; // type:function size:0xE4 BoardCameraCalcTarget = .text:0x8005E6B4; // type:function size:0xE4
@ -1219,76 +1219,76 @@ fn_8006BC34 = .text:0x8006BC34; // type:function size:0x980
fn_8006C5B4 = .text:0x8006C5B4; // type:function size:0xA48 fn_8006C5B4 = .text:0x8006C5B4; // type:function size:0xA48
fn_8006CFFC = .text:0x8006CFFC; // type:function size:0x24C fn_8006CFFC = .text:0x8006CFFC; // type:function size:0x24C
fn_8006D248 = .text:0x8006D248; // type:function size:0xC0 fn_8006D248 = .text:0x8006D248; // type:function size:0xC0
fn_8006D308 = .text:0x8006D308; // type:function size:0xF0 BoardModelInit = .text:0x8006D308; // type:function size:0xF0
fn_8006D3F8 = .text:0x8006D3F8; // type:function size:0xA0 BoardModelKillAll = .text:0x8006D3F8; // type:function size:0xA0
fn_8006D498 = .text:0x8006D498; // type:function size:0x70 ModelMgrObjFunc = .text:0x8006D498; // type:function size:0x70 scope:local
fn_8006D508 = .text:0x8006D508; // type:function size:0x4 stubfn_8006D508 = .text:0x8006D508; // type:function size:0x4
fn_8006D50C = .text:0x8006D50C; // type:function size:0xCC BoardModelUpdateVisibility = .text:0x8006D50C; // type:function size:0xCC
fn_8006D5D8 = .text:0x8006D5D8; // type:function size:0x90 BoardModelShowSetAll = .text:0x8006D5D8; // type:function size:0x90
fn_8006D668 = .text:0x8006D668; // type:function size:0x70 BoardModelPosSetAll = .text:0x8006D668; // type:function size:0x70
fn_8006D6D8 = .text:0x8006D6D8; // type:function size:0x7C BoardModelCameraSetAll = .text:0x8006D6D8; // type:function size:0x7C
fn_8006D754 = .text:0x8006D754; // type:function size:0x250 BoardModelCreateInstance = .text:0x8006D754; // type:function size:0x250
fn_8006D9A4 = .text:0x8006D9A4; // type:function size:0x40 BoardModelCreate = .text:0x8006D9A4; // type:function size:0x40
fn_8006D9E4 = .text:0x8006D9E4; // type:function size:0x44 BoardModelCreateCharacter = .text:0x8006D9E4; // type:function size:0x44
fn_8006DA28 = .text:0x8006DA28; // type:function size:0x168 BoardModelCreateParam = .text:0x8006DA28; // type:function size:0x168
fn_8006DB90 = .text:0x8006DB90; // type:function size:0x44 BoardModelKill = .text:0x8006DB90; // type:function size:0x44
fn_8006DBD4 = .text:0x8006DBD4; // type:function size:0x48 BoardModelIDGet = .text:0x8006DBD4; // type:function size:0x48
fn_8006DC1C = .text:0x8006DC1C; // type:function size:0x60 fn_8006DC1C = .text:0x8006DC1C; // type:function size:0x60
fn_8006DC7C = .text:0x8006DC7C; // type:function size:0x74 BoardModelSetPass = .text:0x8006DC7C; // type:function size:0x74
fn_8006DCF0 = .text:0x8006DCF0; // type:function size:0x68 BoardModelAmbSet = .text:0x8006DCF0; // type:function size:0x68
fn_8006DD58 = .text:0x8006DD58; // type:function size:0x48 BoardModelExist = .text:0x8006DD58; // type:function size:0x48
fn_8006DDA0 = .text:0x8006DDA0; // type:function size:0x48 BoardModelExistDupe = .text:0x8006DDA0; // type:function size:0x48
fn_8006DDE8 = .text:0x8006DDE8; // type:function size:0x70 fn_8006DDE8 = .text:0x8006DDE8; // type:function size:0x70
fn_8006DE58 = .text:0x8006DE58; // type:function size:0x140 BoardModelMotionCreate = .text:0x8006DE58; // type:function size:0x140
fn_8006DF98 = .text:0x8006DF98; // type:function size:0x118 BoardModelMotionKill = .text:0x8006DF98; // type:function size:0x118
fn_8006E0B0 = .text:0x8006E0B0; // type:function size:0xE8 BoardModelMotionTimeRangeSet = .text:0x8006E0B0; // type:function size:0xE8
fn_8006E198 = .text:0x8006E198; // type:function size:0x7C BoardModelMotionUpdateSet = .text:0x8006E198; // type:function size:0x7C
fn_8006E214 = .text:0x8006E214; // type:function size:0xA4 fn_8006E214 = .text:0x8006E214; // type:function size:0xA4
fn_8006E2B8 = .text:0x8006E2B8; // type:function size:0x174 BoardModelMotionStart = .text:0x8006E2B8; // type:function size:0x174
fn_8006E42C = .text:0x8006E42C; // type:function size:0x50 BoardModelMotionShiftIDGet = .text:0x8006E42C; // type:function size:0x50
fn_8006E47C = .text:0x8006E47C; // type:function size:0x148 BoardModelMotionShiftSet = .text:0x8006E47C; // type:function size:0x148
fn_8006E5C4 = .text:0x8006E5C4; // type:function size:0x58 BoardModelAttrSet = .text:0x8006E5C4; // type:function size:0x58
fn_8006E61C = .text:0x8006E61C; // type:function size:0x58 BoardModelAttrReset = .text:0x8006E61C; // type:function size:0x58
fn_8006E674 = .text:0x8006E674; // type:function size:0x84 BoardModelMotionTimeReset = .text:0x8006E674; // type:function size:0x84
fn_8006E6F8 = .text:0x8006E6F8; // type:function size:0x94 BoardModelMotionTimeGet = .text:0x8006E6F8; // type:function size:0x94
fn_8006E78C = .text:0x8006E78C; // type:function size:0x88 BoardModelMotionMaxTimeGet = .text:0x8006E78C; // type:function size:0x88
fn_8006E814 = .text:0x8006E814; // type:function size:0x64 BoardModelMotionSpeedGet = .text:0x8006E814; // type:function size:0x64
fn_8006E878 = .text:0x8006E878; // type:function size:0xA4 BoardModelMotionSpeedSet = .text:0x8006E878; // type:function size:0xA4
fn_8006E91C = .text:0x8006E91C; // type:function size:0x80 BoardModelMotionEndCheck = .text:0x8006E91C; // type:function size:0x80
fn_8006E99C = .text:0x8006E99C; // type:function size:0x100 BoardModelMotionShapeSet = .text:0x8006E99C; // type:function size:0x100
fn_8006EA9C = .text:0x8006EA9C; // type:function size:0x7C BoardModelMotionShapeTimeSet = .text:0x8006EA9C; // type:function size:0x7C
fn_8006EB18 = .text:0x8006EB18; // type:function size:0xBC BoardModelMotionShapeMaxTimeGet = .text:0x8006EB18; // type:function size:0xBC
fn_8006EBD4 = .text:0x8006EBD4; // type:function size:0x88 BoardModelMotionShapeSpeedSet = .text:0x8006EBD4; // type:function size:0x88
fn_8006EC5C = .text:0x8006EC5C; // type:function size:0x64 BoardModelMotionShapeSpeedGet = .text:0x8006EC5C; // type:function size:0x64
fn_8006ECC0 = .text:0x8006ECC0; // type:function size:0x14C BoardModelMotionShapeEndCheck = .text:0x8006ECC0; // type:function size:0x14C
fn_8006EE0C = .text:0x8006EE0C; // type:function size:0x100 BoardModelMotionShapeStartEndSet = .text:0x8006EE0C; // type:function size:0x100
fn_8006EF0C = .text:0x8006EF0C; // type:function size:0xB0 BoardModelAlphaSet = .text:0x8006EF0C; // type:function size:0xB0
fn_8006EFBC = .text:0x8006EFBC; // type:function size:0x8C BoardModelMtxSet = .text:0x8006EFBC; // type:function size:0x8C
fn_8006F048 = .text:0x8006F048; // type:function size:0x8C BoardModelMtxGet = .text:0x8006F048; // type:function size:0x8C
fn_8006F0D4 = .text:0x8006F0D4; // type:function size:0x54 BoardModelRotYSet = .text:0x8006F0D4; // type:function size:0x54
fn_8006F128 = .text:0x8006F128; // type:function size:0x30 BoardModelRotYGet = .text:0x8006F128; // type:function size:0x30
fn_8006F158 = .text:0x8006F158; // type:function size:0x50 BoardModelPosSetV = .text:0x8006F158; // type:function size:0x50
fn_8006F1A8 = .text:0x8006F1A8; // type:function size:0x78 BoardModelPosSet = .text:0x8006F1A8; // type:function size:0x78
fn_8006F220 = .text:0x8006F220; // type:function size:0x50 BoardModelRotSetV = .text:0x8006F220; // type:function size:0x50
fn_8006F270 = .text:0x8006F270; // type:function size:0x78 BoardModelRotSet = .text:0x8006F270; // type:function size:0x78
fn_8006F2E8 = .text:0x8006F2E8; // type:function size:0x50 BoardModelScaleSetV = .text:0x8006F2E8; // type:function size:0x50
fn_8006F338 = .text:0x8006F338; // type:function size:0x78 BoardModelScaleSet = .text:0x8006F338; // type:function size:0x78
fn_8006F3B0 = .text:0x8006F3B0; // type:function size:0x74 BoardModelPosGet = .text:0x8006F3B0; // type:function size:0x74
fn_8006F424 = .text:0x8006F424; // type:function size:0x74 BoardModelRotGet = .text:0x8006F424; // type:function size:0x74
fn_8006F498 = .text:0x8006F498; // type:function size:0x74 BoardModelScaleGet = .text:0x8006F498; // type:function size:0x74
fn_8006F50C = .text:0x8006F50C; // type:function size:0x60 fn_8006F50C = .text:0x8006F50C; // type:function size:0x60
fn_8006F56C = .text:0x8006F56C; // type:function size:0x4C fn_8006F56C = .text:0x8006F56C; // type:function size:0x4C
fn_8006F5B8 = .text:0x8006F5B8; // type:function size:0x64 BoardModelCameraSet = .text:0x8006F5B8; // type:function size:0x64
fn_8006F61C = .text:0x8006F61C; // type:function size:0x64 BoardModelLayerSet = .text:0x8006F61C; // type:function size:0x64
fn_8006F680 = .text:0x8006F680; // type:function size:0x48 BoardModelLayerGet = .text:0x8006F680; // type:function size:0x48
fn_8006F6C8 = .text:0x8006F6C8; // type:function size:0x74 BoardModelLayerSetAll = .text:0x8006F6C8; // type:function size:0x74
fn_8006F73C = .text:0x8006F73C; // type:function size:0xC4 BoardModelHookSet = .text:0x8006F73C; // type:function size:0xC4
fn_8006F800 = .text:0x8006F800; // type:function size:0x50 BoardModelHookReset = .text:0x8006F800; // type:function size:0x50
fn_8006F850 = .text:0x8006F850; // type:function size:0x58 BoardModelHookObjReset = .text:0x8006F850; // type:function size:0x58
fn_8006F8A8 = .text:0x8006F8A8; // type:function size:0x9C SearchBoardModel = .text:0x8006F8A8; // type:function size:0x9C scope:local
fn_8006F944 = .text:0x8006F944; // type:function size:0x178 KillBoardModel = .text:0x8006F944; // type:function size:0x178 scope:local
fn_8006FABC = .text:0x8006FABC; // type:function size:0x194 CreateBoardModel = .text:0x8006FABC; // type:function size:0x194 scope:local
fn_8006FC50 = .text:0x8006FC50; // type:function size:0x12C CreateBoardModelMotion = .text:0x8006FC50; // type:function size:0x12C scope:local
BoardWinInit = .text:0x8006FD7C; // type:function size:0x24 BoardWinInit = .text:0x8006FD7C; // type:function size:0x24
lbl_8006FDA0 = .text:0x8006FDA0; // type:function size:0x34 lbl_8006FDA0 = .text:0x8006FDA0; // type:function size:0x34
BoardWinKillAll = .text:0x8006FDD4; // type:function size:0x24 BoardWinKillAll = .text:0x8006FDD4; // type:function size:0x24
@ -5942,7 +5942,7 @@ lbl_801D39E0 = .sdata:0x801D39E0; // type:object size:0x8
lbl_801D39E8 = .sdata:0x801D39E8; // type:object size:0x8 lbl_801D39E8 = .sdata:0x801D39E8; // type:object size:0x8
lbl_801D39F0 = .sdata:0x801D39F0; // type:object size:0x8 data:2byte lbl_801D39F0 = .sdata:0x801D39F0; // type:object size:0x8 data:2byte
lbl_801D39F8 = .sdata:0x801D39F8; // type:object size:0x1 data:byte lbl_801D39F8 = .sdata:0x801D39F8; // type:object size:0x1 data:byte
lbl_801D3A00 = .sbss:0x801D3A00; // type:object size:0x4 data:4byte SystemInitF = .sbss:0x801D3A00; // type:object size:0x4 data:4byte
HuDvdErrWait = .sbss:0x801D3A04; // type:object size:0x4 data:4byte HuDvdErrWait = .sbss:0x801D3A04; // type:object size:0x4 data:4byte
lbl_801D3A08 = .sbss:0x801D3A08; // type:object size:0x4 lbl_801D3A08 = .sbss:0x801D3A08; // type:object size:0x4
lbl_801D3A0C = .sbss:0x801D3A0C; // type:object size:0x4 lbl_801D3A0C = .sbss:0x801D3A0C; // type:object size:0x4
@ -5963,7 +5963,7 @@ lbl_801D3A44 = .sbss:0x801D3A44; // type:object size:0x4
lbl_801D3A48 = .sbss:0x801D3A48; // type:object size:0x4 lbl_801D3A48 = .sbss:0x801D3A48; // type:object size:0x4
lbl_801D3A4C = .sbss:0x801D3A4C; // type:object size:0x4 lbl_801D3A4C = .sbss:0x801D3A4C; // type:object size:0x4
lbl_801D3A50 = .sbss:0x801D3A50; // type:object size:0x4 lbl_801D3A50 = .sbss:0x801D3A50; // type:object size:0x4
lbl_801D3A54 = .sbss:0x801D3A54; // type:object size:0x4 data:4byte GlobalCounter = .sbss:0x801D3A54; // type:object size:0x4 data:4byte
VCounter = .sbss:0x801D3A58; // type:object size:0x4 data:4byte VCounter = .sbss:0x801D3A58; // type:object size:0x4 data:4byte
RumbleBit = .sbss:0x801D3A5C; // type:object size:0x4 scope:local data:4byte RumbleBit = .sbss:0x801D3A5C; // type:object size:0x4 scope:local data:4byte
_PadErr = .sbss:0x801D3A60; // type:object size:0x4 scope:local _PadErr = .sbss:0x801D3A60; // type:object size:0x4 scope:local
@ -6276,9 +6276,9 @@ lbl_801D3F40 = .sbss:0x801D3F40; // type:object size:0x1 data:byte
lbl_801D3F44 = .sbss:0x801D3F44; // type:object size:0x1 data:byte lbl_801D3F44 = .sbss:0x801D3F44; // type:object size:0x1 data:byte
lbl_801D3F46 = .sbss:0x801D3F46; // type:object size:0x8 lbl_801D3F46 = .sbss:0x801D3F46; // type:object size:0x8
lbl_801D3F4E = .sbss:0x801D3F4E; // type:object size:0xA lbl_801D3F4E = .sbss:0x801D3F4E; // type:object size:0xA
lbl_801D3F58 = .sbss:0x801D3F58; // type:object size:0x4 data:4byte modelDataList = .sbss:0x801D3F58; // type:object size:0x4 scope:local data:4byte
lbl_801D3F5C = .sbss:0x801D3F5C; // type:object size:0x4 data:4byte modelMgrObj = .sbss:0x801D3F5C; // type:object size:0x4 scope:local data:4byte
lbl_801D3F60 = .sbss:0x801D3F60; // type:object size:0x8 data:2byte modelDataNum = .sbss:0x801D3F60; // type:object size:0x2 scope:local data:2byte
winProc = .sbss:0x801D3F68; // type:object size:0x4 scope:local data:4byte winProc = .sbss:0x801D3F68; // type:object size:0x4 scope:local data:4byte
comKeyFunc = .sbss:0x801D3F6C; // type:object size:0x4 scope:local data:4byte comKeyFunc = .sbss:0x801D3F6C; // type:object size:0x4 scope:local data:4byte
lbl_801D3F70 = .sbss:0x801D3F70; // type:object size:0x8 data:float lbl_801D3F70 = .sbss:0x801D3F70; // type:object size:0x8 data:float

View file

@ -41,6 +41,40 @@ static inline void OSInitFastCast(void) {
} }
// clang-format off // clang-format off
static inline s16 __OSf32tos16(register f32 inF)
{
register s16 out;
u32 tmp;
register u32* tmpPtr = &tmp;
// clang-format off
asm {
psq_st inF, 0(tmpPtr), 0x1, OS_FASTCAST_S16
lha out, 0(tmpPtr)
}
// clang-format on
return out;
}
static inline void OSf32tos16(f32 *f, s16 *out) { *out = __OSf32tos16(*f); }
static inline u8 __OSf32tou8(register f32 inF)
{
register u8 out;
u32 tmp;
register u32 *tmpPtr = &tmp;
// clang-format off
asm {
psq_st inF, 0(tmpPtr), 0x1, OS_FASTCAST_U8
lbz out, 0(tmpPtr)
}
// clang-format on
return out;
}
static inline void OSf32tou8(f32 *f, u8 *out) { *out = __OSf32tou8(*f); }
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif

View file

@ -10,6 +10,7 @@ extern "C" {
#endif #endif
u32 VIGetNextField(void); u32 VIGetNextField(void);
u32 VIGetRetraceCount();
VIRetraceCallback VISetPreRetraceCallback(VIRetraceCallback callback); VIRetraceCallback VISetPreRetraceCallback(VIRetraceCallback callback);
VIRetraceCallback VISetPostRetraceCallback(VIRetraceCallback callback); VIRetraceCallback VISetPostRetraceCallback(VIRetraceCallback callback);
void __VIGetCurrentPosition(s16* x, s16* y); void __VIGetCurrentPosition(s16* x, s16* y);

View file

@ -51,7 +51,7 @@ s32 rand8(void);
void BoardCameraTargetSetModel(s16 model); void BoardCameraTargetSetModel(s16 model);
void BoardCameraStartMotion2(s16, Vec*, s32, f32, f32, s32); void BoardCameraStartMotion2(s16, Vec*, s32, f32, f32, s32);
void fn_8005E0C0(void); void BoardCameraMotionWait(void);
void fn_80074210(s32, s32, Vec*); void fn_80074210(s32, s32, Vec*);
void fn_8007A360(s32); void fn_8007A360(s32);
void fn_8007F894(void); void fn_8007F894(void);
@ -64,22 +64,22 @@ void fn_800B42B4(s32);
void fn_80082AAC(s32); void fn_80082AAC(s32);
void fn_800B4264(s32, s32, s32); void fn_800B4264(s32, s32, s32);
void fn_8007500C(s32); void fn_8007500C(s32);
void fn_8006F0D4(s32, f32); void BoardModelRotYSet(s32, f32);
f32 fn_8006F128(s32); f32 BoardModelRotYGet(s32);
void fn_8006F61C(s16, s32); void BoardModelLayerSet(s16, s32);
void fn_800B42BC(s16); void fn_800B42BC(s16);
s32 fn_8006DBD4(s16); s32 BoardModelIDGet(s16);
void BoardInit(void*, void*); void BoardInit(void*, void*);
void fn_8006F2E8(s32, Vec*); void BoardModelScaleSetV(s32, Vec*);
void fn_8005D10C(void*, void*); void fn_8005D10C(void*, void*);
s16 fn_8006D9A4(s32, void*, s32); s16 BoardModelCreate(s32, void*, s32);
void fn_8006DB90(s16); void BoardModelKill(s16);
void fn_8006DDE8(s16, f32); void fn_8006DDE8(s16, f32);
void fn_8006E2B8(s16, s32, s32); void BoardModelMotionStart(s16, s32, s32);
void fn_8006E878(s16, f32); void BoardModelMotionSpeedSet(s16, f32);
void fn_8006F158(s16, void*); void BoardModelPosSetV(s16, void*);
void fn_8006F1A8(s16, f32, f32, f32); void BoardModelPosSet(s16, f32, f32, f32);
s32 fn_8006F220(s16 arg0, Vec* arg1); s32 BoardModelRotSetV(s16 arg0, Vec* arg1);
void fn_8006F50C(s16, s32); void fn_8006F50C(s16, s32);
void fn_80073FF4(void*); void fn_80073FF4(void*);
void fn_80073FFC(void*); void fn_80073FFC(void*);
@ -94,9 +94,9 @@ void fn_800A4F6C(s16);
void fn_800B3FD8(void*); void fn_800B3FD8(void*);
void fn_800B4274(s32, s32); void fn_800B4274(s32, s32);
void BoardCameraRotGet(Vec*); void BoardCameraRotGet(Vec*);
void fn_8006F338(s16, f32, f32, f32); void BoardModelScaleSet(s16, f32, f32, f32);
s32 fn_8005B6A8(void); s32 BoardIsKill(void);
void fn_8006EFBC(s16, Mtx); void BoardModelMtxSet(s16, Mtx);
void fn_8006F270(s16, f32, f32, f32); void BoardModelRotSet(s16, f32, f32, f32);
#endif #endif

View file

@ -17,7 +17,7 @@
#define HU_PAD_BTNDOWN_ALL (HuPadBtnDown[0] | HuPadBtnDown[1] | HuPadBtnDown[2] | HuPadBtnDown[3]) #define HU_PAD_BTNDOWN_ALL (HuPadBtnDown[0] | HuPadBtnDown[1] | HuPadBtnDown[2] | HuPadBtnDown[3])
#define HU_PAD_DSTK_ALL (HuPadDStkRep[0] | HuPadDStkRep[1] | HuPadDStkRep[2] | HuPadDStkRep[3]) #define HU_PAD_DSTK_ALL (HuPadDStkRep[0] | HuPadDStkRep[1] | HuPadDStkRep[2] | HuPadDStkRep[3])
extern int lbl_801D3A00; extern int SystemInitF;
static Process *objman; static Process *objman;
Vec lbl_1_bss_3C[2]; Vec lbl_1_bss_3C[2];
@ -90,7 +90,7 @@ static void BootProc(void)
HuSprAttrSet(group, 1, SPRITE_ATTR_HIDDEN); HuSprAttrSet(group, 1, SPRITE_ATTR_HIDDEN);
HuWinInit(1); HuWinInit(1);
TitleInit(); TitleInit();
lbl_801D3A00 = 1; SystemInitF = 1;
} else { } else {
s16 group_thp; s16 group_thp;
BOOL skip_wait; BOOL skip_wait;
@ -106,7 +106,7 @@ static void BootProc(void)
HuPrcVSleep(); HuPrcVSleep();
} }
WipeColorSet(255, 255, 255); WipeColorSet(255, 255, 255);
if(!lbl_801D3A00) { if(!SystemInitF) {
tick_prev = OSGetTick(); tick_prev = OSGetTick();
fn_800498F0(); fn_800498F0();
HuWindowInit(); HuWindowInit();
@ -140,7 +140,7 @@ static void BootProc(void)
while(WipeStatGet()) { while(WipeStatGet()) {
HuPrcVSleep(); HuPrcVSleep();
} }
if(!lbl_801D3A00) { if(!SystemInitF) {
void *group_samp; void *group_samp;
tick_prev = OSGetTick(); tick_prev = OSGetTick();
group_samp = HuMemDirectMalloc(HEAP_DATA, msmSysGetSampSize(0)); group_samp = HuMemDirectMalloc(HEAP_DATA, msmSysGetSampSize(0));
@ -162,9 +162,9 @@ static void BootProc(void)
HuPrcVSleep(); HuPrcVSleep();
} }
tick_prev = OSGetTick(); tick_prev = OSGetTick();
if(!lbl_801D3A00) { if(!SystemInitF) {
HuAudSndGrpSetSet(0); HuAudSndGrpSetSet(0);
lbl_801D3A00 = 1; SystemInitF = 1;
} }
while(OSTicksToMilliseconds(OSGetTick()-tick_prev) < 1000) { while(OSTicksToMilliseconds(OSGetTick()-tick_prev) < 1000) {
HuPrcVSleep(); HuPrcVSleep();

View file

@ -87,41 +87,41 @@ void fn_1_E0(void) {
fn_800772EC(MAKE_DATA_NUM(DATADIR_W10, 0)); fn_800772EC(MAKE_DATA_NUM(DATADIR_W10, 0));
temp = fn_800745F0(0, 1); temp = fn_800745F0(0, 1);
fn_800B4274(temp, 1); fn_800B4274(temp, 1);
lbl_1_data_28 = fn_8006D9A4(MAKE_DATA_NUM(DATADIR_W10, 1), NULL, 0); lbl_1_data_28 = BoardModelCreate(MAKE_DATA_NUM(DATADIR_W10, 1), NULL, 0);
fn_8006DDE8(lbl_1_data_28, -1.0f); fn_8006DDE8(lbl_1_data_28, -1.0f);
fn_8006F1A8(lbl_1_data_28, 0.0f, 0.0f, 0.0f); BoardModelPosSet(lbl_1_data_28, 0.0f, 0.0f, 0.0f);
fn_8006E2B8(lbl_1_data_28, 0, 0x40000001); BoardModelMotionStart(lbl_1_data_28, 0, 0x40000001);
fn_8006E878(lbl_1_data_28, 1.0f); BoardModelMotionSpeedSet(lbl_1_data_28, 1.0f);
lbl_1_data_2A = fn_8006D9A4(MAKE_DATA_NUM(DATADIR_W10, 2), NULL, 0); lbl_1_data_2A = BoardModelCreate(MAKE_DATA_NUM(DATADIR_W10, 2), NULL, 0);
fn_8006DDE8(lbl_1_data_2A, -1.0f); fn_8006DDE8(lbl_1_data_2A, -1.0f);
fn_8006F1A8(lbl_1_data_2A, 0.0f, 0.0f, 0.0f); BoardModelPosSet(lbl_1_data_2A, 0.0f, 0.0f, 0.0f);
fn_8006E2B8(lbl_1_data_2A, 0, 0x40000001); BoardModelMotionStart(lbl_1_data_2A, 0, 0x40000001);
lbl_1_data_2C = fn_8006D9A4(MAKE_DATA_NUM(DATADIR_W10, 17), lbl_1_data_54, 0); lbl_1_data_2C = BoardModelCreate(MAKE_DATA_NUM(DATADIR_W10, 17), lbl_1_data_54, 0);
fn_8006F1A8(lbl_1_data_2C, 0.0f, 0.0f, 0.0f); BoardModelPosSet(lbl_1_data_2C, 0.0f, 0.0f, 0.0f);
fn_8006E2B8(lbl_1_data_2C, 1, 0x40000001); BoardModelMotionStart(lbl_1_data_2C, 1, 0x40000001);
lbl_1_data_2E = fn_8006D9A4(MAKE_DATA_NUM(DATADIR_BGUEST, 5), lbl_1_data_5C, 0); lbl_1_data_2E = BoardModelCreate(MAKE_DATA_NUM(DATADIR_BGUEST, 5), lbl_1_data_5C, 0);
fn_8006E2B8(lbl_1_data_2E, 1, 0x40000001); BoardModelMotionStart(lbl_1_data_2E, 1, 0x40000001);
lbl_1_data_32 = fn_8006D9A4(MAKE_DATA_NUM(DATADIR_BGUEST, 18), lbl_1_data_64, 0); lbl_1_data_32 = BoardModelCreate(MAKE_DATA_NUM(DATADIR_BGUEST, 18), lbl_1_data_64, 0);
fn_8006E2B8(lbl_1_data_32, 1, 0x40000001); BoardModelMotionStart(lbl_1_data_32, 1, 0x40000001);
lbl_1_data_30 = fn_8006D9A4(MAKE_DATA_NUM(DATADIR_BGUEST, 13), lbl_1_data_6C, 0); lbl_1_data_30 = BoardModelCreate(MAKE_DATA_NUM(DATADIR_BGUEST, 13), lbl_1_data_6C, 0);
fn_8006E2B8(lbl_1_data_30, 1, 0x40000001); BoardModelMotionStart(lbl_1_data_30, 1, 0x40000001);
fn_8005D10C(&fn_1_8C0, &fn_1_904); fn_8005D10C(&fn_1_8C0, &fn_1_904);
for (i = 0; i < ARRAY_COUNT(lbl_1_data_0); i++) { for (i = 0; i < ARRAY_COUNT(lbl_1_data_0); i++) {
temp_r30 = &lbl_1_data_0[i]; temp_r30 = &lbl_1_data_0[i];
if (temp_r30->unk24 != -1) { if (temp_r30->unk24 != -1) {
lbl_1_bss_8 = NULL; lbl_1_bss_8 = NULL;
lbl_1_bss_10[i] = fn_8006D9A4(temp_r30->unk24, lbl_1_bss_8, 0); lbl_1_bss_10[i] = BoardModelCreate(temp_r30->unk24, lbl_1_bss_8, 0);
fn_8006F158(lbl_1_bss_10[i], temp_r30); BoardModelPosSetV(lbl_1_bss_10[i], temp_r30);
fn_8006F220(lbl_1_bss_10[i], &temp_r30->unk0C); BoardModelRotSetV(lbl_1_bss_10[i], &temp_r30->unk0C);
fn_8006F2E8(lbl_1_bss_10[i], &temp_r30->unk18); BoardModelScaleSetV(lbl_1_bss_10[i], &temp_r30->unk18);
fn_8006F50C(lbl_1_bss_10[i], 1); fn_8006F50C(lbl_1_bss_10[i], 1);
if (lbl_1_bss_8 != NULL) { if (lbl_1_bss_8 != NULL) {
fn_8006E2B8(lbl_1_bss_10[i], 0, 0x40000001); BoardModelMotionStart(lbl_1_bss_10[i], 0, 0x40000001);
} }
} }
} }
fn_8006F50C(lbl_1_bss_10[0], 0); fn_8006F50C(lbl_1_bss_10[0], 0);
lbl_1_bss_0->unk8 = fn_8006D9A4(0x7000A, NULL, 0); lbl_1_bss_0->unk8 = BoardModelCreate(0x7000A, NULL, 0);
fn_8006F50C(lbl_1_bss_0->unk8, 0); fn_8006F50C(lbl_1_bss_0->unk8, 0);
fn_80073FF4(&fn_1_90C); fn_80073FF4(&fn_1_90C);
fn_80073FFC(&fn_1_91C); fn_80073FFC(&fn_1_91C);
@ -142,42 +142,42 @@ void fn_1_6D8(void) {
s32 i; s32 i;
for (i = 0; i < 1; i++) { for (i = 0; i < 1; i++) {
if (lbl_1_bss_10[i] != 0) { if (lbl_1_bss_10[i] != 0) {
fn_8006DB90(lbl_1_bss_10[i]); BoardModelKill(lbl_1_bss_10[i]);
lbl_1_bss_10[i] = 0; lbl_1_bss_10[i] = 0;
} }
} }
if (lbl_1_data_32 != -1) { if (lbl_1_data_32 != -1) {
fn_8006DB90(lbl_1_data_32); BoardModelKill(lbl_1_data_32);
lbl_1_data_32 = -1; lbl_1_data_32 = -1;
} }
if (lbl_1_data_2E != -1) { if (lbl_1_data_2E != -1) {
fn_8006DB90(lbl_1_data_2E); BoardModelKill(lbl_1_data_2E);
lbl_1_data_2E = -1; lbl_1_data_2E = -1;
} }
if (lbl_1_data_30 != -1) { if (lbl_1_data_30 != -1) {
fn_8006DB90(lbl_1_data_30); BoardModelKill(lbl_1_data_30);
lbl_1_data_30 = -1; lbl_1_data_30 = -1;
} }
if (lbl_1_data_2C != -1) { if (lbl_1_data_2C != -1) {
fn_8006DB90(lbl_1_data_2C); BoardModelKill(lbl_1_data_2C);
lbl_1_data_2C = -1; lbl_1_data_2C = -1;
} }
if (lbl_1_data_28 != -1) { if (lbl_1_data_28 != -1) {
fn_8006DB90(lbl_1_data_28); BoardModelKill(lbl_1_data_28);
lbl_1_data_28 = -1; lbl_1_data_28 = -1;
} }
if (lbl_1_data_2A != -1) { if (lbl_1_data_2A != -1) {
fn_8006DB90(lbl_1_data_2A); BoardModelKill(lbl_1_data_2A);
lbl_1_data_2A = -1; lbl_1_data_2A = -1;
} }
fn_8006DB90(lbl_1_bss_0->unk8); BoardModelKill(lbl_1_bss_0->unk8);
fn_1_1DEC(); fn_1_1DEC();
HuWinKill(lbl_1_bss_E); HuWinKill(lbl_1_bss_E);
fn_80077A3C(); fn_80077A3C();
} }
void fn_1_8C0(void) { void fn_1_8C0(void) {
s32 temp = fn_8006DBD4(lbl_1_data_28); s32 temp = BoardModelIDGet(lbl_1_data_28);
Hu3DModelLightInfoSet(temp, 1); Hu3DModelLightInfoSet(temp, 1);
} }
@ -206,7 +206,7 @@ s32 fn_1_920(s32 arg0, f32 arg8, f32 arg9) {
f32 var_f31; f32 var_f31;
var_r31 = 0; var_r31 = 0;
var_f31 = fn_8006F128(arg0); var_f31 = BoardModelRotYGet(arg0);
arg8 = fmod(arg8, 360.0); arg8 = fmod(arg8, 360.0);
if (var_f31 < 0.0f) { if (var_f31 < 0.0f) {
var_f31 += 360.0f; var_f31 += 360.0f;
@ -236,7 +236,7 @@ s32 fn_1_920(s32 arg0, f32 arg8, f32 arg9) {
if (var_f31 >= 360.0f) { if (var_f31 >= 360.0f) {
var_f31 -= 360.0f; var_f31 -= 360.0f;
} }
fn_8006F0D4(arg0, var_f31); BoardModelRotYSet(arg0, var_f31);
} else { } else {
var_r31 = 1; var_r31 = 1;
} }

View file

@ -13,10 +13,10 @@ Vec lbl_1_data_80[2] = {
void fn_1_AEC(void) { void fn_1_AEC(void) {
lbl_1_bss_1C = 0; lbl_1_bss_1C = 0;
lbl_1_bss_1E = fn_8006D9A4(MAKE_DATA_NUM(DATADIR_W10, 15), &lbl_1_data_78, 0); lbl_1_bss_1E = BoardModelCreate(MAKE_DATA_NUM(DATADIR_W10, 15), &lbl_1_data_78, 0);
fn_8006E2B8(lbl_1_bss_1E, 1, 0x40000001); BoardModelMotionStart(lbl_1_bss_1E, 1, 0x40000001);
fn_800B42BC(lbl_1_bss_1E); fn_800B42BC(lbl_1_bss_1E);
fn_8006F61C(lbl_1_bss_1E, 6); BoardModelLayerSet(lbl_1_bss_1E, 6);
lbl_1_bss_18 = HuPrcCreate(fn_1_C20, 0x1FFF, 0x1800, 0); lbl_1_bss_18 = HuPrcCreate(fn_1_C20, 0x1FFF, 0x1800, 0);
} }
@ -46,18 +46,18 @@ void fn_1_C20(void) {
Vec sp8; Vec sp8;
while (1) { while (1) {
if (fn_8005B6A8() != 0) { if (BoardIsKill() != 0) {
fn_8006DB90(lbl_1_bss_1E); BoardModelKill(lbl_1_bss_1E);
fn_800B42BC(-1); fn_800B42BC(-1);
HuPrcEnd(); HuPrcEnd();
} }
Hu3D2Dto3D(&lbl_1_data_80[lbl_1_bss_1C], 1, &sp14); Hu3D2Dto3D(&lbl_1_data_80[lbl_1_bss_1C], 1, &sp14);
fn_8006F158(lbl_1_bss_1E, &sp14); BoardModelPosSetV(lbl_1_bss_1E, &sp14);
BoardCameraRotGet(&sp8); BoardCameraRotGet(&sp8);
PSMTXRotRad(sp20, 'y', 0.2617994f); PSMTXRotRad(sp20, 'y', 0.2617994f);
fn_8006EFBC(lbl_1_bss_1E, sp20); BoardModelMtxSet(lbl_1_bss_1E, sp20);
fn_8006F270(lbl_1_bss_1E, sp8.x, 0.0f, 0.0f); BoardModelRotSet(lbl_1_bss_1E, sp8.x, 0.0f, 0.0f);
fn_8006F338(lbl_1_bss_1E, 0.2f, 0.2f, 0.2f); BoardModelScaleSet(lbl_1_bss_1E, 0.2f, 0.2f, 0.2f);
HuPrcVSleep(); HuPrcVSleep();
} }
} }

View file

@ -184,34 +184,34 @@ void fn_1_13A4(void) {
sp8.y = sp8.z = 0.0f; sp8.y = sp8.z = 0.0f;
temp_r3_2 = fn_800745F0(0, 0x80000); temp_r3_2 = fn_800745F0(0, 0x80000);
fn_80074210(0, temp_r3_2, &sp14); fn_80074210(0, temp_r3_2, &sp14);
fn_8006F158(lbl_1_bss_0->unk8, &sp14); BoardModelPosSetV(lbl_1_bss_0->unk8, &sp14);
BoardCameraStartMotion2(lbl_1_bss_0->unk8, &sp8, 0, 3200.0f, -1.0f, 0x1E); BoardCameraStartMotion2(lbl_1_bss_0->unk8, &sp8, 0, 3200.0f, -1.0f, 0x1E);
fn_8005E0C0(); BoardCameraMotionWait();
fn_1_BA0(0x2E002C); fn_1_BA0(0x2E002C);
fn_8007A360(temp_r3_2); fn_8007A360(temp_r3_2);
BoardCameraStartMotion2(lbl_1_bss_0->unk8, &sp8, 0, 3200.0f, -1.0f, 0x1E); BoardCameraStartMotion2(lbl_1_bss_0->unk8, &sp8, 0, 3200.0f, -1.0f, 0x1E);
fn_8005E0C0(); BoardCameraMotionWait();
temp_r3_2 = fn_800745F0(0, 0x10000000); temp_r3_2 = fn_800745F0(0, 0x10000000);
fn_80074210(0, temp_r3_2, &sp14); fn_80074210(0, temp_r3_2, &sp14);
fn_8006F158(lbl_1_bss_0->unk8, &sp14); BoardModelPosSetV(lbl_1_bss_0->unk8, &sp14);
BoardCameraStartMotion2(lbl_1_bss_0->unk8, &sp8, 0, 3200.0f, -1.0f, 0x1E); BoardCameraStartMotion2(lbl_1_bss_0->unk8, &sp8, 0, 3200.0f, -1.0f, 0x1E);
fn_8005E0C0(); BoardCameraMotionWait();
fn_1_BA0(0x2E002E); fn_1_BA0(0x2E002E);
fn_8007F894(); fn_8007F894();
BoardCameraStartMotion2(lbl_1_bss_0->unk8, &sp8, 0, 3200.0f, -1.0f, 0x1E); BoardCameraStartMotion2(lbl_1_bss_0->unk8, &sp8, 0, 3200.0f, -1.0f, 0x1E);
fn_8005E0C0(); BoardCameraMotionWait();
temp_r3_2 = fn_800745F0(0, 0x08000000); temp_r3_2 = fn_800745F0(0, 0x08000000);
fn_80074210(0, temp_r3_2, &sp14); fn_80074210(0, temp_r3_2, &sp14);
fn_8006F158(lbl_1_bss_0->unk8, &sp14); BoardModelPosSetV(lbl_1_bss_0->unk8, &sp14);
BoardCameraStartMotion2(lbl_1_bss_0->unk8, &sp8, 0, 3200.0f, -1.0f, 0x1E); BoardCameraStartMotion2(lbl_1_bss_0->unk8, &sp8, 0, 3200.0f, -1.0f, 0x1E);
fn_8005E0C0(); BoardCameraMotionWait();
fn_1_BA0(0x2E0030); fn_1_BA0(0x2E0030);
fn_800A6B10(); fn_800A6B10();
BoardCameraStartMotion2(lbl_1_bss_0->unk8, &sp8, 0, 3200.0f, -1.0f, 0x1E); BoardCameraStartMotion2(lbl_1_bss_0->unk8, &sp8, 0, 3200.0f, -1.0f, 0x1E);
fn_8005E0C0(); BoardCameraMotionWait();
fn_1_BA0(0x2E0032); fn_1_BA0(0x2E0032);
BoardCameraTargetSetModel(fn_80083F84()); BoardCameraTargetSetModel(fn_80083F84());
fn_8005E0C0(); BoardCameraMotionWait();
fn_1_BA0(0x2E0033); fn_1_BA0(0x2E0033);
fn_1_BA0(0x2E0034); fn_1_BA0(0x2E0034);
fn_1_1E3C(8, 0x122, 0x8C); fn_1_1E3C(8, 0x122, 0x8C);

View file

@ -137,7 +137,7 @@ void fn_1_1984(void) {
return; return;
} }
HuWinDispOn(lbl_1_bss_E); HuWinDispOn(lbl_1_bss_E);
if (fn_8005B6A8() != 0) { if (BoardIsKill() != 0) {
return; return;
} }
for (i = 0; i < ARRAY_COUNT(GWPlayer); i++) { for (i = 0; i < ARRAY_COUNT(GWPlayer); i++) {
@ -167,7 +167,7 @@ int fn_1_1AAC(s16 arg0, s32 arg1) {
HuWinDispOff(lbl_1_bss_E); HuWinDispOff(lbl_1_bss_E);
} else { } else {
HuWinDispOn(lbl_1_bss_E); HuWinDispOn(lbl_1_bss_E);
if (fn_8005B6A8() == 0) { if (BoardIsKill() == 0) {
s32 contPortIndex; s32 contPortIndex;
for (i = 0; i < ARRAY_COUNT(GWPlayer); i++) { for (i = 0; i < ARRAY_COUNT(GWPlayer); i++) {
contPortIndex = GWPlayer[i].port; contPortIndex = GWPlayer[i].port;

View file

@ -13,11 +13,8 @@
#include "game/perf.h" #include "game/perf.h"
#include "game/gamework.h" #include "game/gamework.h"
extern s32 ViGetRetraceCount(void);
extern GXRenderModeObj* RenderMode;
extern FileListEntry _ovltbl[]; extern FileListEntry _ovltbl[];
s32 lbl_801D3A54; s32 GlobalCounter;
u32 lbl_801D3A50; u32 lbl_801D3A50;
u32 lbl_801D3A4C; u32 lbl_801D3A4C;
u32 lbl_801D3A48; u32 lbl_801D3A48;
@ -38,7 +35,7 @@ u32 lbl_801D3A10;
u32 lbl_801D3A0C; u32 lbl_801D3A0C;
u32 lbl_801D3A08; u32 lbl_801D3A08;
s32 HuDvdErrWait; s32 HuDvdErrWait;
s32 lbl_801D3A00; s32 SystemInitF;
void main(void) { void main(void) {
u32 sp14; u32 sp14;
@ -49,13 +46,13 @@ void main(void) {
s32 temp_r30; s32 temp_r30;
HuDvdErrWait = 0; HuDvdErrWait = 0;
lbl_801D3A00 = 0; SystemInitF = 0;
HuSysInit(&GXNtsc480IntDf); HuSysInit(&GXNtsc480IntDf);
HuPrcInit(); HuPrcInit();
HuPadInit(); HuPadInit();
GWInit(); GWInit();
pfInit(); pfInit();
lbl_801D3A54 = 0; GlobalCounter = 0;
HuSprInit(); HuSprInit();
Hu3DInit(); Hu3DInit();
HuDataInit(); HuDataInit();
@ -109,7 +106,7 @@ void main(void) {
GXReadPixMetric(&lbl_801D3A44, &lbl_801D3A40, &lbl_801D3A3C, &lbl_801D3A38, &lbl_801D3A34, &lbl_801D3A30); GXReadPixMetric(&lbl_801D3A44, &lbl_801D3A40, &lbl_801D3A3C, &lbl_801D3A38, &lbl_801D3A34, &lbl_801D3A30);
GXReadMemMetric(&lbl_801D3A2C, &lbl_801D3A28, &lbl_801D3A24, &lbl_801D3A20, &lbl_801D3A1C, &lbl_801D3A18, &lbl_801D3A14, &lbl_801D3A10, &lbl_801D3A0C, &lbl_801D3A08); GXReadMemMetric(&lbl_801D3A2C, &lbl_801D3A28, &lbl_801D3A24, &lbl_801D3A20, &lbl_801D3A1C, &lbl_801D3A18, &lbl_801D3A14, &lbl_801D3A10, &lbl_801D3A0C, &lbl_801D3A08);
HuPerfEnd(2); HuPerfEnd(2);
lbl_801D3A54++; GlobalCounter++;
} }
} }