diff --git a/config/GMPE01_00/splits.txt b/config/GMPE01_00/splits.txt index 490c4d0b..870ef2e3 100644 --- a/config/GMPE01_00/splits.txt +++ b/config/GMPE01_00/splits.txt @@ -349,7 +349,7 @@ game/board/window.c: .sbss start:0x801D3F68 end:0x801D3F90 .sdata2 start:0x801D5318 end:0x801D5328 -game/board/board_snd.c: +game/board/speaker.c: .text start:0x80070D84 end:0x80071290 .data start:0x80139AE8 end:0x80139B00 .sdata start:0x801D36E8 end:0x801D36F0 diff --git a/config/GMPE01_00/symbols.txt b/config/GMPE01_00/symbols.txt index a7dbbeb8..5a60dbdc 100644 --- a/config/GMPE01_00/symbols.txt +++ b/config/GMPE01_00/symbols.txt @@ -1005,22 +1005,22 @@ ExecBoardFunc = .text:0x8005B494; // type:function size:0x9C scope:local KillBoardFunc = .text:0x8005B530; // type:function size:0xCC scope:local BoardKill = .text:0x8005B5FC; // type:function size:0xAC BoardIsKill = .text:0x8005B6A8; // type:function size:0x48 -BoardSetPauseEnable = .text:0x8005B6F0; // type:function size:0x74 -BoardGetPauseEnable = .text:0x8005B764; // type:function size:0x48 -BoardSetSave = .text:0x8005B7AC; // type:function size:0x524 -fn_8005BCD0 = .text:0x8005BCD0; // type:function size:0x160 -BoardLoadConfig = .text:0x8005BE30; // type:function size:0x160 -DestroyBoardMainProc = .text:0x8005BF90; // type:function size:0xC scope:local -BoardMainProcFunc = .text:0x8005BF9C; // type:function size:0x7D0 scope:local +BoardPauseEnableSet = .text:0x8005B6F0; // type:function size:0x74 +BoardPauseEnableGet = .text:0x8005B764; // type:function size:0x48 +BoardSaveInit = .text:0x8005B7AC; // type:function size:0x524 +BoardStoryConfigSet = .text:0x8005BCD0; // type:function size:0x160 +BoardConfigSet = .text:0x8005BE30; // type:function size:0x160 +DestroyMainFunc = .text:0x8005BF90; // type:function size:0xC scope:local +MainFunc = .text:0x8005BF9C; // type:function size:0x7D0 scope:local BoardTurnNext = .text:0x8005C76C; // type:function size:0x8C BoardIsTurnCont = .text:0x8005C7F8; // type:function size:0x28C -BoardSetNextOvl = .text:0x8005CA84; // type:function size:0xC4 -BoardHasStarted = .text:0x8005CB48; // type:function size:0x8C +BoardNextOvlSet = .text:0x8005CA84; // type:function size:0xC4 +BoardIsStarted = .text:0x8005CB48; // type:function size:0x8C CreateBoard = .text:0x8005CBD4; // type:function size:0x410 scope:local DestroyBoard = .text:0x8005CFE4; // type:function size:0x128 scope:local -fn_8005D10C = .text:0x8005D10C; // type:function size:0xC -fn_8005D118 = .text:0x8005D118; // type:function size:0x44 -fn_8005D15C = .text:0x8005D15C; // type:function size:0x50 +BoardLightHookSet = .text:0x8005D10C; // type:function size:0xC +BoardLightSet = .text:0x8005D118; // type:function size:0x44 +BoardLightReset = .text:0x8005D15C; // type:function size:0x50 BoardCameraBackup = .text:0x8005D1AC; // type:function size:0x3C BoardCameraRestore = .text:0x8005D1E8; // type:function size:0x48 BoardCameraScissorSet = .text:0x8005D230; // type:function size:0x54 @@ -1067,8 +1067,8 @@ BoardMGStartFlagSet = .text:0x8005F294; // type:function size:0x28 BoardMGStartFlagReset = .text:0x8005F2BC; // type:function size:0x28 BoardMGStartFlagGet = .text:0x8005F2E4; // type:function size:0x48 BoardMTXCalcLookAt = .text:0x8005F32C; // type:function size:0x10C -fn_8005F438 = .text:0x8005F438; // type:function size:0x330 -fn_8005F768 = .text:0x8005F768; // type:function size:0x390 +BoardArcSin = .text:0x8005F438; // type:function size:0x330 +BoardArcCos = .text:0x8005F768; // type:function size:0x390 BoardRandInit = .text:0x8005FAF8; // type:function size:0x24 BoardRand = .text:0x8005FB1C; // type:function size:0x24 BoardRandMod = .text:0x8005FB40; // type:function size:0x50 @@ -1085,19 +1085,19 @@ BoardFilterFadeIsDone = .text:0x8006039C; // type:function size:0x5C BoardFilterFadeAlive = .text:0x800603F8; // type:function size:0x34 BoardFilterFadeUpdate = .text:0x8006042C; // type:function size:0x178 BoardFilterFadeDraw = .text:0x800605A4; // type:function size:0x350 -fn_800608F4 = .text:0x800608F4; // type:function size:0x164 -fn_80060A58 = .text:0x80060A58; // type:function size:0x24 -fn_80060A7C = .text:0x80060A7C; // type:function size:0x88 -fn_80060B04 = .text:0x80060B04; // type:function size:0xB8 -fn_80060BBC = .text:0x80060BBC; // type:function size:0x564 -fn_80061120 = .text:0x80061120; // type:function size:0x14C -fn_8006126C = .text:0x8006126C; // type:function size:0x254 -BoardTurnRemainInit = .text:0x800614C0; // type:function size:0x2B4 -BoardTurnRemainUpdate = .text:0x80061774; // type:function size:0x2AC -BoardTurnRemainHide = .text:0x80061A20; // type:function size:0xAC -fn_80061ACC = .text:0x80061ACC; // type:function size:0x80 -fn_80061B4C = .text:0x80061B4C; // type:function size:0x54 -fn_80061BA0 = .text:0x80061BA0; // type:function size:0x3A4 +BoardConfettiCreate = .text:0x800608F4; // type:function size:0x164 +BoardConfettiStop = .text:0x80060A58; // type:function size:0x24 +BoardConfettiKill = .text:0x80060A7C; // type:function size:0x88 +ConfettiUpdate = .text:0x80060B04; // type:function size:0xB8 scope:local +ConfettiSpawn = .text:0x80060BBC; // type:function size:0x564 scope:local +ConfettiMove = .text:0x80061120; // type:function size:0x14C +ConfettiDraw = .text:0x8006126C; // type:function size:0x254 +BoardLast5GfxInit = .text:0x800614C0; // type:function size:0x2B4 +BoardLast5GfxUpdate = .text:0x80061774; // type:function size:0x2AC +BoardLast5GfxHide = .text:0x80061A20; // type:function size:0xAC +BoardTauntInit = .text:0x80061ACC; // type:function size:0x80 +BoardTauntKill = .text:0x80061B4C; // type:function size:0x54 +TauntUpdate = .text:0x80061BA0; // type:function size:0x3A4 scope:local fn_80061F44 = .text:0x80061F44; // type:function size:0x38 fn_80061F7C = .text:0x80061F7C; // type:function size:0x48 fn_80061FC4 = .text:0x80061FC4; // type:function size:0xC @@ -5141,11 +5141,11 @@ lbl_8013976C = .data:0x8013976C; // type:object size:0x13 data:string lbl_8013977F = .data:0x8013977F; // type:object size:0x19 camViewTbl = .data:0x80139798; // type:object size:0x24 scope:local jumptable_801397BC = .data:0x801397BC; // type:object size:0x24 scope:local -lbl_801397E0 = .data:0x801397E0; // type:object size:0x48 -turnRemainSprTbl = .data:0x80139828; // type:object size:0xC scope:local -turnRemainSprPosTbl = .data:0x80139834; // type:object size:0x30 scope:local -lbl_80139864 = .data:0x80139864; // type:object size:0x10 -lbl_80139874 = .data:0x80139874; // type:object size:0x24 +confettiLightTbl = .data:0x801397E0; // type:object size:0x48 scope:local +last5GfxSprTbl = .data:0x80139828; // type:object size:0xC scope:local +last5GfxPosTbl = .data:0x80139834; // type:object size:0x30 scope:local +tauntActiveSfxTbl = .data:0x80139864; // type:object size:0x10 scope:local +tauntSfxTbl = .data:0x80139874; // type:object size:0x24 scope:local lbl_80139898 = .data:0x80139898; // type:object size:0x10 lbl_801398A8 = .data:0x801398A8; // type:object size:0x10 lbl_801398B8 = .data:0x801398B8; // type:object size:0xA data:2byte @@ -5496,7 +5496,7 @@ ToeMessageArray = .bss:0x8019C490; // type:object size:0x40 scope:local ToeThread = .bss:0x8019C4D0; // type:object size:0x310 scope:local align:8 ToeThreadStack = .bss:0x8019C7E0; // type:object size:0x1000 scope:local boardCamera = .bss:0x8019D7E0; // type:object size:0xC4 data:byte -boardCameraBackup = .bss:0x8019D8A4; // type:object size:0xC4 +cameraBackup = .bss:0x8019D8A4; // type:object size:0xC4 scope:local lbl_8019D968 = .bss:0x8019D968; // type:object size:0x10 lbl_8019D978 = .bss:0x8019D978; // type:object size:0x10 lbl_8019D988 = .bss:0x8019D988; // type:object size:0x10 @@ -6250,23 +6250,23 @@ XfbH = .sbss:0x801D3ECC; // type:object size:0x2 scope:local data:2byte XfbW = .sbss:0x801D3ECE; // type:object size:0x2 scope:local data:2byte boardMainProc = .sbss:0x801D3ED0; // type:object size:0x4 data:4byte boardObjMan = .sbss:0x801D3ED4; // type:object size:0x4 data:4byte -boardCameraObj = .sbss:0x801D3ED8; // type:object size:0x4 data:4byte -lbl_801D3EDC = .sbss:0x801D3EDC; // type:object size:0x4 data:4byte -boardCameraUseBackup = .sbss:0x801D3EE0; // type:object size:0x4 data:4byte -boardCreateFunc = .sbss:0x801D3EE4; // type:object size:0x4 scope:local data:4byte -boardDestroyFunc = .sbss:0x801D3EE8; // type:object size:0x4 scope:local data:4byte -lbl_801D3EEC = .sbss:0x801D3EEC; // type:object size:0x4 data:4byte -lbl_801D3EF0 = .sbss:0x801D3EF0; // type:object size:0x4 data:4byte +cameraObj = .sbss:0x801D3ED8; // type:object size:0x4 scope:local data:4byte +tauntObj = .sbss:0x801D3EDC; // type:object size:0x4 scope:local data:4byte +cameraUseBackup = .sbss:0x801D3EE0; // type:object size:0x4 scope:local data:4byte +createFunc = .sbss:0x801D3EE4; // type:object size:0x4 scope:local data:4byte +destroyFunc = .sbss:0x801D3EE8; // type:object size:0x4 scope:local data:4byte +boardLightSetHook = .sbss:0x801D3EEC; // type:object size:0x4 data:4byte +boardLightResetHook = .sbss:0x801D3EF0; // type:object size:0x4 data:4byte boardTurnFunc = .sbss:0x801D3EF4; // type:object size:0x4 data:4byte lbl_801D3EF8 = .sbss:0x801D3EF8; // type:object size:0x4 data:4byte lbl_801D3EFC = .sbss:0x801D3EFC; // type:object size:0x4 data:4byte lbl_801D3F00 = .sbss:0x801D3F00; // type:object size:0x4 data:4byte -boardPlayerEffect = .sbss:0x801D3F04; // type:object size:0x4 data:4byte -boardFilterObj = .sbss:0x801D3F08; // type:object size:0x4 data:4byte -lbl_801D3F0C = .sbss:0x801D3F0C; // type:object size:0x4 data:4byte -boardTurnRemainObj = .sbss:0x801D3F10; // type:object size:0x4 data:4byte +boardTurnStartFunc = .sbss:0x801D3F04; // type:object size:0x4 data:4byte +filterObj = .sbss:0x801D3F08; // type:object size:0x4 scope:local data:4byte +confettiObj = .sbss:0x801D3F0C; // type:object size:0x4 scope:local data:4byte +last5GfxObj = .sbss:0x801D3F10; // type:object size:0x4 scope:local data:4byte boardRandSeed = .sbss:0x801D3F14; // type:object size:0x4 data:4byte -boardMainObj = .sbss:0x801D3F18; // type:object size:0x8 data:4byte +boardMainObj = .sbss:0x801D3F18; // type:object size:0x4 data:4byte lbl_801D3F20 = .sbss:0x801D3F20; // type:object size:0x4 data:4byte lbl_801D3F24 = .sbss:0x801D3F24; // type:object size:0x4 data:4byte lbl_801D3F28 = .sbss:0x801D3F28; // type:object size:0x4 data:4byte diff --git a/configure.py b/configure.py index ccbd95a3..798511c3 100644 --- a/configure.py +++ b/configure.py @@ -283,7 +283,7 @@ config.libs = [ Object(NonMatching, "game/board/board.c"), Object(NonMatching, "game/board/model.c"), Object(NonMatching, "game/board/window.c"), - Object(NonMatching, "game/board/board_snd.c"), + Object(NonMatching, "game/board/speaker.c"), Object(NonMatching, "game/board/com.c"), Object(NonMatching, "game/board/overhead.c"), Object(NonMatching, "game/board/space.c"), diff --git a/include/common_structs.h b/include/common_structs.h index 190e7251..bb1c8bb0 100644 --- a/include/common_structs.h +++ b/include/common_structs.h @@ -16,8 +16,8 @@ typedef struct system_state { /* 0x00 */ struct { u8 story : 1; u8 team : 1; - u8 : 7; }; +/* 0x01 */ s8 diff_story; /* 0x02 */ struct { u16 bonus_star : 1; u16 explain_mg : 1; @@ -62,8 +62,8 @@ typedef struct player_state { u8 team : 1; u8 field02_bit1 : 1; u8 player_idx : 2; - u8 field02_bit4 : 5; }; +/* 0x03 */ s8 handicap; /* 0x04 */ s8 port; /* 0x05 */ s8 items[3]; /* 0x08 */ struct { diff --git a/include/functions.h b/include/functions.h index 264e3222..1aee5033 100644 --- a/include/functions.h +++ b/include/functions.h @@ -71,7 +71,7 @@ void fn_800B42BC(s16); s32 BoardModelIDGet(s16); void BoardInit(void*, void*); void BoardModelScaleSetV(s32, Vec*); -void fn_8005D10C(void*, void*); +void BoardLightHookSet(void*, void*); s16 BoardModelCreate(s32, void*, s32); void BoardModelKill(s16); void fn_8006DDE8(s16, f32); diff --git a/src/REL/w10Dll/w10Dll.c b/src/REL/w10Dll/w10Dll.c index 0a3507af..682f64c4 100644 --- a/src/REL/w10Dll/w10Dll.c +++ b/src/REL/w10Dll/w10Dll.c @@ -105,7 +105,7 @@ void fn_1_E0(void) { BoardModelMotionStart(lbl_1_data_32, 1, 0x40000001); lbl_1_data_30 = BoardModelCreate(MAKE_DATA_NUM(DATADIR_BGUEST, 13), lbl_1_data_6C, 0); BoardModelMotionStart(lbl_1_data_30, 1, 0x40000001); - fn_8005D10C(&fn_1_8C0, &fn_1_904); + BoardLightHookSet(&fn_1_8C0, &fn_1_904); for (i = 0; i < ARRAY_COUNT(lbl_1_data_0); i++) { temp_r30 = &lbl_1_data_0[i]; if (temp_r30->unk24 != -1) {