Add missing imports and mark uninitialized variables

This commit is contained in:
dbalatoni13 2025-03-03 23:26:43 +01:00
parent 75d49a9e05
commit 58e0a85761
22 changed files with 701 additions and 658 deletions

View file

@ -482,7 +482,7 @@ customMinNum$837 = .data:0x000000D6; // type:object size:0x8 scope:local
lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x20 data:float
lbl_1_data_100 = .data:0x00000100; // type:object size:0x10
lbl_1_data_110 = .data:0x00000110; // type:object size:0xC
lbl_1_data_120 = .data:0x00000120; // type:object size:0x28
mgRecordIdxTbl = .data:0x00000120; // type:object size:0x28
lbl_1_data_148 = .data:0x00000148; // type:object size:0x2 data:2byte
lbl_1_data_14A = .data:0x0000014A; // type:object size:0x8
lbl_1_data_152 = .data:0x00000152; // type:object size:0x10 data:4byte
@ -516,7 +516,7 @@ lbl_1_data_9C0 = .data:0x000009C0; // type:object size:0x20
lbl_1_data_9E0 = .data:0x000009E0; // type:object size:0x20
lbl_1_data_A00 = .data:0x00000A00; // type:object size:0x2 data:2byte
lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte
lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte
mgModeEvtNo = .bss:0x00000004; // type:object size:0x2 data:2byte
lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x264 data:4byte
lbl_1_bss_26C = .bss:0x0000026C; // type:object size:0x8 data:float
lbl_1_bss_274 = .bss:0x00000274; // type:object size:0x18 data:4byte
@ -549,8 +549,8 @@ lbl_1_bss_340 = .bss:0x00000340; // type:object size:0x8
lbl_1_bss_348 = .bss:0x00000348; // type:object size:0x2 data:2byte
lbl_1_bss_34A = .bss:0x0000034A; // type:object size:0x8 data:2byte
lbl_1_bss_352 = .bss:0x00000352; // type:object size:0x1C
lbl_1_bss_370 = .bss:0x00000370; // type:object size:0xC
lbl_1_bss_37C = .bss:0x0000037C; // type:object size:0xC
lbl_1_bss_370 = .bss:0x00000370; // type:object size:0xC scope:local
lbl_1_bss_37C = .bss:0x0000037C; // type:object size:0xC scope:local
lbl_1_bss_388 = .bss:0x00000388; // type:object size:0x2 data:2byte
lbl_1_bss_38A = .bss:0x0000038A; // type:object size:0x2 data:2byte
lbl_1_bss_38C = .bss:0x0000038C; // type:object size:0x8

View file

@ -73,48 +73,48 @@ lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 scope:local data:d
lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 scope:local data:double
lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 scope:local data:double
lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 scope:local data:double
lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 data:double
lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 data:double
lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 data:double
lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 data:double
lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 data:double
lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x4 data:float
lbl_1_rodata_E4 = .rodata:0x000000E4; // type:object size:0x4 data:float
lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x4 data:float
lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x8 data:double
lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float
lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float
lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float
lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 data:float
lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float
lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 data:double
lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x4 data:float
lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 data:double
lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double
lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 data:double
lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x4 data:float
lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 data:double
lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x4 data:float
lbl_1_rodata_14C = .rodata:0x0000014C; // type:object size:0x4 data:float
lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 data:double
lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 data:float
lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 data:float
lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float
lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 data:float
lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 data:float
lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 data:float
lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x8 data:double
lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 data:double
lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 data:float
lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 data:float
lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x4 data:float
lbl_1_rodata_18C = .rodata:0x0000018C; // type:object size:0x4 data:float
lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x4 data:float
lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 data:double
lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 data:float
lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 data:float
lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 data:float
lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 data:float
lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 scope:local data:double
lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x8 scope:local data:double
lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x8 scope:local data:double
lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 scope:local data:double
lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x8 scope:local data:double
lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x4 scope:local data:float
lbl_1_rodata_E4 = .rodata:0x000000E4; // type:object size:0x4 scope:local data:float
lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x4 scope:local data:float
lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x8 scope:local data:double
lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 scope:local data:float
lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float
lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float
lbl_1_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local data:float
lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 scope:local data:float
lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x8 scope:local data:double
lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x4 scope:local data:float
lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x8 scope:local data:double
lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 scope:local data:double
lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x8 scope:local data:double
lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x4 scope:local data:float
lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x8 scope:local data:double
lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x4 scope:local data:float
lbl_1_rodata_14C = .rodata:0x0000014C; // type:object size:0x4 scope:local data:float
lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x8 scope:local data:double
lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x4 scope:local data:float
lbl_1_rodata_15C = .rodata:0x0000015C; // type:object size:0x4 scope:local data:float
lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float
lbl_1_rodata_164 = .rodata:0x00000164; // type:object size:0x4 scope:local data:float
lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x4 scope:local data:float
lbl_1_rodata_16C = .rodata:0x0000016C; // type:object size:0x4 scope:local data:float
lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x8 scope:local data:double
lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x8 scope:local data:double
lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x4 scope:local data:float
lbl_1_rodata_184 = .rodata:0x00000184; // type:object size:0x4 scope:local data:float
lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x4 scope:local data:float
lbl_1_rodata_18C = .rodata:0x0000018C; // type:object size:0x4 scope:local data:float
lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x4 scope:local data:float
lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x8 scope:local data:double
lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x4 scope:local data:float
lbl_1_rodata_1A4 = .rodata:0x000001A4; // type:object size:0x4 scope:local data:float
lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x4 scope:local data:float
lbl_1_rodata_1AC = .rodata:0x000001AC; // type:object size:0x4 scope:local data:float
lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 scope:local data:float
lbl_1_rodata_1B4 = .rodata:0x000001B4; // type:object size:0x4 scope:local data:float
lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x4 scope:local data:float
@ -188,9 +188,9 @@ lbl_1_data_80 = .data:0x00000080; // type:object size:0xC
lbl_1_data_8C = .data:0x0000008C; // type:object size:0x18
lbl_1_data_A4 = .data:0x000000A4; // type:object size:0x18
lbl_1_data_BC = .data:0x000000BC; // type:object size:0x18
lbl_1_data_D4 = .data:0x000000D4; // type:object size:0x14 data:string
lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x9 data:string
lbl_1_data_F1 = .data:0x000000F1; // type:object size:0xF
lbl_1_data_D4 = .data:0x000000D4; // type:object size:0x14 scope:local data:string
lbl_1_data_E8 = .data:0x000000E8; // type:object size:0x9 scope:local data:string
lbl_1_data_F1 = .data:0x000000F1; // type:object size:0xF scope:local
lbl_1_data_100 = .data:0x00000100; // type:object size:0x2 data:2byte
lbl_1_data_104 = .data:0x00000104; // type:object size:0x118 data:float
lbl_1_data_21C = .data:0x0000021C; // type:object size:0x48 data:4byte

View file

@ -4543,7 +4543,7 @@ jumptable_8013FD68 = .data:0x8013FD68; // type:object size:0x24 scope:local
jumptable_8013FD8C = .data:0x8013FD8C; // type:object size:0x24 scope:local
jumptable_8013FDB0 = .data:0x8013FDB0; // type:object size:0x24 scope:local
sndSintab = .data:0x8013FDD8; // type:object size:0x800
dspSlave = .data:0x801405E0; // type:object size:0x19E0 align:32
dspSlave = .data:0x801405E0; // type:object size:0x19E0 align:32 data:byte
lens$301 = .data:0x80141FC0; // type:object size:0x10 scope:local
lens$301 = .data:0x80141FD0; // type:object size:0x20 scope:local
rsmpTab12khz = .data:0x80141FF0; // type:object size:0x800 scope:local

View file

@ -482,7 +482,7 @@ lbl_1_data_E0 = .data:0x000000E0; // type:object size:0x6
lbl_1_data_E6 = .data:0x000000E6; // type:object size:0xA
lbl_1_data_F0 = .data:0x000000F0; // type:object size:0x20
lbl_1_data_110 = .data:0x00000110; // type:object size:0x10
lbl_1_data_120 = .data:0x00000120; // type:object size:0x10
mgRecordIdxTbl = .data:0x00000120; // type:object size:0x10
lbl_1_data_130 = .data:0x00000130; // type:object size:0x28
lbl_1_data_158 = .data:0x00000158; // type:object size:0x2 data:2byte
lbl_1_data_15A = .data:0x0000015A; // type:object size:0x8
@ -517,7 +517,7 @@ lbl_1_data_9D0 = .data:0x000009D0; // type:object size:0x20
lbl_1_data_9F0 = .data:0x000009F0; // type:object size:0x20
lbl_1_data_A10 = .data:0x00000A10; // type:object size:0x2 data:2byte
lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x4 data:4byte
lbl_1_bss_4 = .bss:0x00000004; // type:object size:0x2 data:2byte
mgModeEvtNo = .bss:0x00000004; // type:object size:0x2 data:2byte
lbl_1_bss_8 = .bss:0x00000008; // type:object size:0x264 data:4byte
lbl_1_bss_26C = .bss:0x0000026C; // type:object size:0x8 data:float
lbl_1_bss_274 = .bss:0x00000274; // type:object size:0x18 data:4byte
@ -548,8 +548,8 @@ lbl_1_bss_340 = .bss:0x00000340; // type:object size:0x8
lbl_1_bss_348 = .bss:0x00000348; // type:object size:0x2 data:2byte
lbl_1_bss_34A = .bss:0x0000034A; // type:object size:0x8 data:2byte
lbl_1_bss_352 = .bss:0x00000352; // type:object size:0x1E
lbl_1_bss_370 = .bss:0x00000370; // type:object size:0xC
lbl_1_bss_37C = .bss:0x0000037C; // type:object size:0xC
lbl_1_bss_370 = .bss:0x00000370; // type:object size:0xC scope:local
lbl_1_bss_37C = .bss:0x0000037C; // type:object size:0xC scope:local
lbl_1_bss_388 = .bss:0x00000388; // type:object size:0x2 data:2byte
lbl_1_bss_38A = .bss:0x0000038A; // type:object size:0x2 data:2byte
lbl_1_bss_38C = .bss:0x0000038C; // type:object size:0x8

View file

@ -7,9 +7,9 @@
#include "game/object.h"
#include "game/objsub.h"
#include "game/pad.h"
#include "game/sprite.h"
#include "game/window.h"
#include "game/pad.h"
typedef struct datalist_model {
s32 datanum;
@ -33,7 +33,7 @@ typedef struct datalist_sprite {
typedef struct struct_bss8_24 {
omObjData *unk0;
void (*unk4)(omObjData*, ...);
void (*unk4)(omObjData *, ...);
u8 unk8[0x50];
s32 unk58;
s32 unk5C;
@ -72,7 +72,7 @@ extern s16 lbl_1_bss_20C0[10][70];
extern s16 lbl_1_bss_20AC[10];
extern s16 lbl_1_bss_20AA;
extern Process *lbl_1_bss_2D8;
extern Process *objman;
extern s16 lbl_1_bss_2E4;
@ -80,7 +80,7 @@ extern s16 lbl_1_bss_2A6;
extern s16 lbl_1_bss_2A4;
extern StructBss8 lbl_1_bss_8;
extern s16 lbl_1_bss_4;
extern s16 mgModeEvtNo;
extern s16 lbl_1_data_A2[];
extern DataListModel lbl_1_data_490[];
@ -112,4 +112,4 @@ s16 fn_1_271B4(s16 mgNo, s16 x, s16 y);
void fn_1_27418(void);
void fn_1_279FC(s32 coinSkipF);
#endif
#endif

View file

@ -4,6 +4,7 @@
#include "game/data.h"
#include "game/gamework_data.h"
#include "game/hsfman.h"
#include "game/minigame_seq.h"
#include "game/memory.h"
#include "game/msm.h"
#include "game/object.h"
@ -783,4 +784,4 @@ void *NintendoDataDecode(void)
HuDecodeData(src, dst, size, decode_type);
}
return dst;
}
}

View file

@ -14,6 +14,13 @@
#include "ext_math.h"
#ifndef __MWERKS__
#include "string.h"
#include "game/hsfex.h"
#endif
s32 rand8(void);
typedef struct struct_bss_2A6C StructBss2A6C;
typedef struct struct_sp_14C8 StructSp14C8;

View file

@ -1593,7 +1593,7 @@ void fn_1_78B4(StructBss200 *arg0)
float sp118;
float sp114;
float sp110;
float var_f27;
float var_f27; // ! - uninitialized
float var_f29;
float var_f28;
float var_f30;

View file

@ -2800,7 +2800,7 @@ void fn_1_8CB4(omObjData *arg0)
float temp_f28;
float var_f30;
float var_f31;
float var_f26;
float var_f26; // ! - uninitialized
float temp_f27;
StructBssBCData *temp_r31;
ModelData *sp8;

View file

@ -1162,7 +1162,7 @@ void fn_1_C604(s32 arg0, s32 arg1)
Vec *var_r31;
f32 temp_f31;
f32 var_f30;
s32 var_r30;
s32 var_r30; // ! - uninitialized
M424DllBallStruct2 *var_r28;
Vec *var_r27;

View file

@ -132,7 +132,7 @@ void fn_1_41C(omObjData* object) {
s16 sp12;
s16 spE;
s16 spA;
f32 var_f31;
f32 var_f31; // ! - uninitalized
s32 var_r31;
s32 var_r30;
CameraData* var_r29;

View file

@ -800,7 +800,7 @@ void fn_1_2A94(s16 arg0, Vec *arg1, Vec *arg2, float arg8)
void fn_1_2B2C(omObjData *object)
{
s32 sp8;
s32 sp8; // ! - uninitialized
M425DllWork *var_r31;
s32 var_r29;
s32 var_r28;

View file

@ -3874,7 +3874,7 @@ void fn_1_11D5C(omObjData *object)
UnkM450Struct3 *var_r31;
s32 var_r29;
s32 var_r27;
s32 var_r27; // ! - uninitialized
s32 *var_r26;
(void)var_r27;

View file

@ -1280,7 +1280,7 @@ s32 fn_1_65D0(StructBss340 *arg0)
{
float var_f31;
float var_f30;
s32 sp8;
s32 sp8; // ! - uninitialized
var_f31 = fn_1_1534(arg0->unk4C.z, arg0->unk84);
var_f30 = fn_1_1534(arg0->unk4C.x, arg0->unk84);

View file

@ -44,7 +44,7 @@ s32 fn_1_E72C(void)
temp_r29 = 0;
fn_1_279FC(0);
fn_1_FF5C();
if (lbl_1_bss_4 == 3) {
if (mgModeEvtNo == 3) {
mgTypeCurr = mgInfoTbl[GWSystem.mg_next].type;
if (mgTypeCurr >= 4) {
mgTypeCurr = 3;
@ -105,7 +105,7 @@ s32 fn_1_E72C(void)
}
repeat_mode:
if (lbl_1_bss_20AA == 0) {
HuPrcChildCreate(fn_1_27080, 100, 12288, 0, lbl_1_bss_2D8);
HuPrcChildCreate(fn_1_27080, 100, 12288, 0, objman);
lbl_1_bss_20AA = 1;
}
lbl_1_bss_3A4 = fn_1_25CA8(0x1A0020);
@ -843,7 +843,7 @@ void fn_1_12B64(s16 arg0)
{
Process *process;
s32 *data;
process = HuPrcChildCreate(fn_1_12BEC, 100, 12288, 0, lbl_1_bss_2D8);
process = HuPrcChildCreate(fn_1_12BEC, 100, 12288, 0, objman);
data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(s32), MEMORY_DEFAULT_NUM);
process->user_data = data;
*data = arg0;

View file

@ -1,131 +1,135 @@
#include "REL/mgmodedll.h"
#ifndef __MWERKS__
#include "game/esprite.h"
#endif
DataListModel lbl_1_data_490[] = {
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x00), 0, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x01), 0x40000001, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x02), 0, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x03), 0, 1, -1, 2, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x04), 0, 1, -1, 2, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x5E), 0, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x5F), 0, 1, -1, 5, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x60), 0, 1, -1, 5, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x61), 0, 1, -1, 5, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x05), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x06), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x07), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x08), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
{ -1, 0, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x00), 0, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x01), 0x40000001, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x02), 0, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x03), 0, 1, -1, 2, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x04), 0, 1, -1, 2, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x5E), 0, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x5F), 0, 1, -1, 5, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x60), 0, 1, -1, 5, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x61), 0, 1, -1, 5, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x05), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x06), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x07), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x08), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
{ -1, 0, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
};
DataListSprite lbl_1_data_768[] = {
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x0C), 0, 10, 288, -200, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x09), 0, 10, 288, -200, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x0A), 0, 10, 288, -200, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x0D), 4, 100, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x18), 4, 200, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x1A), 4, 20, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x1B), 4, 30, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x1C), 4, 40, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x1D), 4, 50, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x1E), 4, 50, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x1F), 4, 50, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x20), 4, 50, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x21), 4, 50, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x25), 4, 200, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x0E), 4, 210, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x0F), 4, 210, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x19), 4, 200, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x28), 4, 10, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x28), 4, 10, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x2A), 4, 10, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x2E), 4, 200, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x2F), 4, 200, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x32), 4, 5, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x31), 4, 4, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x30), 4, 4, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x29), 4, 4, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x29), 4, 4, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x33), 4, 50, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x34), 4, 50, 288, 256, { 255, 255, 255, 255 } },
{ 0, 0, 0, 0, 0, { 0, 0, 0, 0 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x0C), 0, 10, 288, -200, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x09), 0, 10, 288, -200, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x0A), 0, 10, 288, -200, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x0D), 4, 100, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x18), 4, 200, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x1A), 4, 20, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x1B), 4, 30, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x1C), 4, 40, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x1D), 4, 50, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x1E), 4, 50, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x1F), 4, 50, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x20), 4, 50, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x21), 4, 50, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x25), 4, 200, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x0E), 4, 210, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x0F), 4, 210, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x19), 4, 200, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x28), 4, 10, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x28), 4, 10, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x2A), 4, 10, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x2E), 4, 200, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x2F), 4, 200, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x32), 4, 5, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x31), 4, 4, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x30), 4, 4, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x29), 4, 4, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x29), 4, 4, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x33), 4, 50, 288, 240, { 255, 255, 255, 255 } },
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x34), 4, 50, 288, 256, { 255, 255, 255, 255 } },
{ 0, 0, 0, 0, 0, { 0, 0, 0, 0 } },
};
void fn_1_267E8(DataListModel *model_list)
{
DataListModel *list;
s16 i;
s16 model;
s16 clear_i;
ModelData *model_ptr;
void *data;
list = model_list;
for(clear_i=0; clear_i<13; clear_i++) {
lbl_1_bss_2C80[clear_i] = lbl_1_bss_2C66[clear_i] = -1;
}
for(i=0; list->datanum != DATA_NUM_LISTEND; list++, i++) {
if(list->type == 0) {
data = HuDataSelHeapReadNum(list->datanum, MEMORY_DEFAULT_NUM, HEAP_DATA);
model = Hu3DModelCreate(data);
lbl_1_bss_2C80[i] = model;
Hu3DModelAttrSet(model, list->attr);
Hu3DModelPosSetV(model, &list->pos);
Hu3DModelRotSetV(model, &list->rot);
Hu3DModelScaleSetV(model, &list->scale);
model_ptr = &Hu3DData[model];
if(model_ptr->unk_08 != -1) {
lbl_1_bss_2C66[i] = model_ptr->unk_08;
}
} else if(list->type == 1) {
data = HuDataSelHeapReadNum(list->datanum, MEMORY_DEFAULT_NUM, HEAP_DATA);
lbl_1_bss_2C66[i] = Hu3DJointMotion(lbl_1_bss_2C80[list->mot_link], data);
}
(void)i;
}
list = model_list;
for(i=0; list->datanum != DATA_NUM_LISTEND; list++, i++) {
if(list->type == 2) {
model = Hu3DModelLink(lbl_1_bss_2C80[list->link]);
lbl_1_bss_2C80[i] = model;
Hu3DModelAttrSet(model, list->attr);
Hu3DModelPosSetV(model, &list->pos);
Hu3DModelRotSetV(model, &list->rot);
Hu3DModelScaleSetV(model, &list->scale);
}
if(list->type == 0 && list->mot_link != -1) {
Hu3DMotionSet(lbl_1_bss_2C80[i], lbl_1_bss_2C66[list->mot_link]);
}
(void)i;
}
DataListModel *list;
s16 i;
s16 model;
s16 clear_i;
ModelData *model_ptr;
void *data;
list = model_list;
for (clear_i = 0; clear_i < 13; clear_i++) {
lbl_1_bss_2C80[clear_i] = lbl_1_bss_2C66[clear_i] = -1;
}
for (i = 0; list->datanum != DATA_NUM_LISTEND; list++, i++) {
if (list->type == 0) {
data = HuDataSelHeapReadNum(list->datanum, MEMORY_DEFAULT_NUM, HEAP_DATA);
model = Hu3DModelCreate(data);
lbl_1_bss_2C80[i] = model;
Hu3DModelAttrSet(model, list->attr);
Hu3DModelPosSetV(model, &list->pos);
Hu3DModelRotSetV(model, &list->rot);
Hu3DModelScaleSetV(model, &list->scale);
model_ptr = &Hu3DData[model];
if (model_ptr->unk_08 != -1) {
lbl_1_bss_2C66[i] = model_ptr->unk_08;
}
}
else if (list->type == 1) {
data = HuDataSelHeapReadNum(list->datanum, MEMORY_DEFAULT_NUM, HEAP_DATA);
lbl_1_bss_2C66[i] = Hu3DJointMotion(lbl_1_bss_2C80[list->mot_link], data);
}
(void)i;
}
list = model_list;
for (i = 0; list->datanum != DATA_NUM_LISTEND; list++, i++) {
if (list->type == 2) {
model = Hu3DModelLink(lbl_1_bss_2C80[list->link]);
lbl_1_bss_2C80[i] = model;
Hu3DModelAttrSet(model, list->attr);
Hu3DModelPosSetV(model, &list->pos);
Hu3DModelRotSetV(model, &list->rot);
Hu3DModelScaleSetV(model, &list->scale);
}
if (list->type == 0 && list->mot_link != -1) {
Hu3DMotionSet(lbl_1_bss_2C80[i], lbl_1_bss_2C66[list->mot_link]);
}
(void)i;
}
}
void fn_1_26A78(DataListSprite *sprite_list)
{
DataListSprite *list;
s16 sprite;
s16 clear_i;
s16 i;
list = sprite_list;
for(clear_i=0; clear_i<29; clear_i++) {
lbl_1_bss_2C2C[clear_i] = -1;
}
for(i=0; list->datanum; i++, list++) {
sprite = espEntry(list->datanum, 100, 0);
lbl_1_bss_2C2C[i] = sprite;
espPosSet(sprite, list->x, list->y);
espColorSet(sprite, list->color.r, list->color.g, list->color.b);
espTPLvlSet(sprite, list->color.a/255.0f);
espPriSet(sprite, list->prio);
espAttrSet(sprite, list->attr);
}
DataListSprite *list;
s16 sprite;
s16 clear_i;
s16 i;
list = sprite_list;
for (clear_i = 0; clear_i < 29; clear_i++) {
lbl_1_bss_2C2C[clear_i] = -1;
}
for (i = 0; list->datanum; i++, list++) {
sprite = espEntry(list->datanum, 100, 0);
lbl_1_bss_2C2C[i] = sprite;
espPosSet(sprite, list->x, list->y);
espColorSet(sprite, list->color.r, list->color.g, list->color.b);
espTPLvlSet(sprite, list->color.a / 255.0f);
espPriSet(sprite, list->prio);
espAttrSet(sprite, list->attr);
}
}
void fn_1_26BB0(void)
{
s16 i;
for(i=0; i<29; i++) {
if(lbl_1_bss_2C2C[i] != -1) {
espKill(lbl_1_bss_2C2C[i]);
}
}
s16 i;
for (i = 0; i < 29; i++) {
if (lbl_1_bss_2C2C[i] != -1) {
espKill(lbl_1_bss_2C2C[i]);
}
}
}

View file

@ -88,7 +88,7 @@ s32 fn_1_6D28(void)
else {
temp_r28 = lbl_1_bss_2C2C[2];
}
if (lbl_1_bss_4 == 1 || lbl_1_bss_4 == 2) {
if (mgModeEvtNo == 1 || mgModeEvtNo == 2) {
mgTypeCurr = fn_1_B5A8(&spA, &sp8);
espAttrReset(lbl_1_bss_2C2C[3], HUSPR_ATTR_DISPOFF);
espTPLvlSet(lbl_1_bss_2C2C[3], 1.0f);
@ -99,7 +99,7 @@ s32 fn_1_6D28(void)
if (lbl_1_bss_2A6 == 0) {
espAttrReset(lbl_1_bss_2C2C[4], HUSPR_ATTR_DISPOFF);
espPosSet(lbl_1_bss_2C2C[4], 450, 404);
if (lbl_1_bss_4 == 1) {
if (mgModeEvtNo == 1) {
fn_1_BFA0(lbl_1_bss_264C[lbl_1_bss_318[mgTypeCurr][0]][spA + sp8]);
espAttrReset(lbl_1_bss_2C2C[14], HUSPR_ATTR_DISPOFF);
espPosSet(lbl_1_bss_2C2C[14], 450, 348);

View file

@ -7,6 +7,10 @@
#include "ext_math.h"
#ifndef __MWERKS__
#include "game/hsfex.h"
#endif
typedef struct camera_view_params {
Vec rot;
Vec pos;
@ -15,8 +19,8 @@ typedef struct camera_view_params {
CameraViewParams lbl_1_data_0[1] = { { { -5, 0, 0 }, { 0, 125, 0 }, 1750 } };
omObjData *lbl_1_bss_2DC;
Process *lbl_1_bss_2D8;
omObjData *outViewObj;
Process *objman;
s32 lbl_1_bss_2D4;
s32 lbl_1_bss_2D0;
s16 lbl_1_bss_2CE;
@ -31,7 +35,7 @@ Vec lbl_1_bss_28C[2];
Vec lbl_1_bss_274[2];
float lbl_1_bss_26C[2];
StructBss8 lbl_1_bss_8;
s16 lbl_1_bss_4;
s16 mgModeEvtNo;
s32 lbl_1_bss_0;
void fn_1_464(void);
@ -42,7 +46,7 @@ void ObjectSetup(void)
s32 glight;
OSReport("******* MG ObjectSetup *********\n");
lbl_1_bss_2D8 = omInitObjMan(50, 8192);
objman = omInitObjMan(50, 8192);
lbl_1_bss_28C[0].x = -70;
lbl_1_bss_28C[0].y = 0;
lbl_1_bss_28C[0].z = 0;
@ -58,8 +62,8 @@ void ObjectSetup(void)
_ClearFlag(0x10008);
GWSystem.mg_type = -1;
GWSystem.player_curr = 0;
lbl_1_bss_4 = omovlevtno;
if (lbl_1_bss_4 == 0) {
mgModeEvtNo = omovlevtno;
if (mgModeEvtNo == 0) {
mgGameStatBackup = GWGameStat;
}
lbl_1_bss_2CE = -1;
@ -70,9 +74,9 @@ void ObjectSetup(void)
Hu3DCameraViewportSet(1, 0, 0, 640, 480, 0, 1);
glight = Hu3DGLightCreate(0, 100, 1000, 0, -0.5, -1, 255, 255, 255);
Hu3DGLightInfinitytSet(glight);
HuPrcChildCreate(fn_1_464, 100, 12288, 0, lbl_1_bss_2D8);
HuPrcChildCreate(fn_1_54F4, 200, 4096, 0, lbl_1_bss_2D8);
lbl_1_bss_2DC = omAddObjEx(lbl_1_bss_2D8, 32730, 0, 0, -1, omOutView);
HuPrcChildCreate(fn_1_464, 100, 12288, 0, objman);
HuPrcChildCreate(fn_1_54F4, 200, 4096, 0, objman);
outViewObj = omAddObjEx(objman, 32730, 0, 0, -1, omOutView);
Hu3DBGColorSet(0, 0, 0);
HuWinInit(1);
fn_1_279FC(0);
@ -86,7 +90,7 @@ void fn_1_464(void)
{
s16 i;
fn_1_52DC();
if (lbl_1_bss_4 == 0) {
if (mgModeEvtNo == 0) {
HuAudSStreamPlay(12);
fn_1_19018();
}
@ -103,7 +107,7 @@ void fn_1_464(void)
Center.y = 215;
CRot.x = 0;
CRot.y = CRot.z = 0;
if (lbl_1_bss_4 == 1 || lbl_1_bss_4 == 2 || lbl_1_bss_4 == 3 || lbl_1_bss_4 == 4) {
if (mgModeEvtNo == 1 || mgModeEvtNo == 2 || mgModeEvtNo == 3 || mgModeEvtNo == 4) {
Hu3DModelPosSet(lbl_1_bss_2C80[5], 0, 0, 640);
Hu3DMotionSet(lbl_1_bss_2C80[5], lbl_1_bss_2C66[6]);
Hu3DModelAttrSet(lbl_1_bss_2C80[5], HU3D_MOTATTR_LOOP);
@ -136,7 +140,7 @@ void fn_1_6F8(void)
{
s16 i;
s16 time;
if (lbl_1_bss_4 == 1 || lbl_1_bss_4 == 2 || lbl_1_bss_4 == 3 || lbl_1_bss_4 == 4) {
if (mgModeEvtNo == 1 || mgModeEvtNo == 2 || mgModeEvtNo == 3 || mgModeEvtNo == 4) {
lbl_1_bss_2A6 = 0;
goto freeplay;
}
@ -218,7 +222,7 @@ void fn_1_6F8(void)
HuPrcVSleep();
}
fn_1_25E74(lbl_1_bss_2CC);
lbl_1_bss_4 = 0;
mgModeEvtNo = 0;
espAttrSet(lbl_1_bss_2C2C[0], HUSPR_ATTR_DISPOFF);
if (lbl_1_bss_2A6 == 0) {
freeplay:
@ -253,19 +257,19 @@ void fn_1_DF0(void)
Vec posModel;
float weight;
if (lbl_1_bss_4 == 1) {
if (mgModeEvtNo == 1) {
lbl_1_bss_2A4 = 0;
goto freeplay;
}
if (lbl_1_bss_4 == 2) {
if (mgModeEvtNo == 2) {
lbl_1_bss_2A4 = 1;
goto teamplay;
}
if (lbl_1_bss_4 == 3) {
if (mgModeEvtNo == 3) {
lbl_1_bss_2A4 = 2;
goto battle;
}
if (lbl_1_bss_4 == 4) {
if (mgModeEvtNo == 4) {
lbl_1_bss_2A4 = 3;
goto tictactoe;
}
@ -386,7 +390,7 @@ void fn_1_DF0(void)
}
HuWinPushKeySet(lbl_1_bss_2CE, PAD_BUTTON_A | PAD_BUTTON_B);
}
lbl_1_bss_4 = 0;
mgModeEvtNo = 0;
pos2D = lbl_1_data_40[0];
pos2D.z = 800;
Hu3D2Dto3D(&pos2D, 1, &pos3D);
@ -429,7 +433,7 @@ s32 fn_1_1B0C(void)
ModelData *modelP;
s16 temp_r29 = 0;
if (lbl_1_bss_4 == 1) {
if (mgModeEvtNo == 1) {
pos2D.x = 60;
pos2D.y = 70;
pos2D.z = 1000;
@ -480,12 +484,12 @@ s32 fn_1_1B0C(void)
}
mgPracticeEnableF = 1;
if (fn_1_6D28()) {
lbl_1_bss_4 = 0;
mgModeEvtNo = 0;
goto charsel;
}
exit:
mgPracticeEnableF = 0;
lbl_1_bss_4 = 0;
mgModeEvtNo = 0;
pos2D.x = 168;
pos2D.y = 190;
pos2D.z = 800;
@ -518,7 +522,7 @@ s32 fn_1_21C4(void)
s16 i;
ModelData *modelP;
s16 temp_r29 = 1;
if (lbl_1_bss_4 == 2) {
if (mgModeEvtNo == 2) {
pos2D.x = 60;
pos2D.y = 70;
pos2D.z = 1000;
@ -570,12 +574,12 @@ s32 fn_1_21C4(void)
}
mgPracticeEnableF = 1;
if (fn_1_6D28()) {
lbl_1_bss_4 = 0;
mgModeEvtNo = 0;
goto charsel;
}
exit:
mgPracticeEnableF = 0;
lbl_1_bss_4 = 0;
mgModeEvtNo = 0;
pos2D.x = 168;
pos2D.y = 190;
pos2D.z = 800;
@ -611,7 +615,7 @@ s32 fn_1_2940(void)
for (i = 0; i < 4; i++) {
Hu3DModelLayerSet(lbl_1_bss_2C80[i + 9], 2);
}
if (lbl_1_bss_4 == 3) {
if (mgModeEvtNo == 3) {
OSReport("Eliminate Play STart\n");
pos2D.x = 50;
pos2D.y = 70;
@ -665,7 +669,7 @@ s32 fn_1_2940(void)
}
if (fn_1_E72C() == 0) {
lbl_1_bss_4 = 0;
mgModeEvtNo = 0;
goto charsel;
}
exit:
@ -673,7 +677,7 @@ exit:
for (i = 0; i < 4; i++) {
Hu3DModelLayerSet(lbl_1_bss_2C80[i + 9], 3);
}
lbl_1_bss_4 = 0;
mgModeEvtNo = 0;
pos2D.x = 168;
pos2D.y = 190;
pos2D.z = 800;
@ -706,7 +710,7 @@ s32 fn_1_3150(void)
s16 i;
ModelData *modelP;
s16 temp_r29 = 1;
if (lbl_1_bss_4 == 4) {
if (mgModeEvtNo == 4) {
pos2D.x = 60;
pos2D.y = 70;
pos2D.z = 1000;
@ -759,12 +763,12 @@ s32 fn_1_3150(void)
}
if (fn_1_13418() == 0) {
lbl_1_bss_4 = 0;
mgModeEvtNo = 0;
goto charsel;
}
exit:
HuDataDirClose(DATADIR_INSTPIC);
lbl_1_bss_4 = 0;
mgModeEvtNo = 0;
pos2D.x = 168;
pos2D.y = 190;
pos2D.z = 800;
@ -1130,7 +1134,7 @@ void fn_1_52DC(void)
lbl_1_bss_8.unk10 = lbl_1_bss_2C66[6];
lbl_1_bss_8.unk14 = lbl_1_bss_2C66[7];
lbl_1_bss_8.unk18 = lbl_1_bss_2C66[6];
fn_1_18DF8(lbl_1_bss_2D8, &lbl_1_bss_8);
fn_1_18DF8(objman, &lbl_1_bss_8);
Hu3DModelShadowSet(lbl_1_bss_2C80[5]);
Hu3DModelShadowMapSet(lbl_1_bss_2C80[0]);
}

View file

@ -13,17 +13,10 @@ void fn_1_DE3C(void);
void fn_1_DFB8(void);
void fn_1_E02C(float x, float y, s16 recordNo);
s16 lbl_1_bss_37C[6];
s16 lbl_1_bss_370[6];
static s16 lbl_1_bss_37C[6];
static s16 lbl_1_bss_370[6];
s16 lbl_1_data_120[6][3] = {
0, 2, 13,
1, 0, 15,
2, 1, 35,
3, 2, 40,
5, 1, 51,
10, 1, 62
};
s16 mgRecordIdxTbl[6][3] = { 0, 2, 13, 1, 0, 15, 2, 1, 35, 3, 2, 40, 5, 1, 51, 10, 1, 62 };
void fn_1_D8D0(void)
{
@ -32,48 +25,48 @@ void fn_1_D8D0(void)
fn_1_DE3C();
espAttrReset(lbl_1_bss_2C2C[3], HUSPR_ATTR_DISPOFF);
espTPLvlSet(lbl_1_bss_2C2C[3], 0);
for(i=0; i<=20; i++) {
espTPLvlSet(lbl_1_bss_2C2C[3], i/20.0);
for (i = 0; i <= 20; i++) {
espTPLvlSet(lbl_1_bss_2C2C[3], i / 20.0);
HuPrcVSleep();
}
for(i=0; i<=20; i++) {
weight = i/20.0;
for (i = 0; i <= 20; i++) {
weight = i / 20.0;
espAttrReset(lbl_1_bss_2C2C[27], HUSPR_ATTR_DISPOFF);
espPosSet(lbl_1_bss_2C2C[27], 288, -100.0+(164.0*sind(weight*90.0f)));
espPosSet(lbl_1_bss_2C2C[27], 288, -100.0 + (164.0 * sind(weight * 90.0f)));
espAttrReset(lbl_1_bss_2C2C[28], HUSPR_ATTR_DISPOFF);
espTPLvlSet(lbl_1_bss_2C2C[28], weight);
espAttrReset(lbl_1_bss_2C2C[20], HUSPR_ATTR_DISPOFF);
espPosSet(lbl_1_bss_2C2C[20], ((1-sind(weight*90.0f))*400)+288, 424);
espPosSet(lbl_1_bss_2C2C[20], ((1 - sind(weight * 90.0f)) * 400) + 288, 424);
HuPrcVSleep();
}
for(i=0; i<6; i++) {
fn_1_E02C(288, (i*42)+150.0f, i);
for (i = 0; i < 6; i++) {
fn_1_E02C(288, (i * 42) + 150.0f, i);
HuPrcVSleep();
}
while(1) {
if(HuPadBtnDown[0] & PAD_BUTTON_B) {
while (1) {
if (HuPadBtnDown[0] & PAD_BUTTON_B) {
break;
}
HuPrcVSleep();
}
HuAudFXPlay(3);
for(i=0; i<6; i++) {
for (i = 0; i < 6; i++) {
fn_1_E02C(1288, 0, i);
HuPrcVSleep();
}
fn_1_DFB8();
for(i=0; i<=20; i++) {
weight = i/20.0;
for (i = 0; i <= 20; i++) {
weight = i / 20.0;
espAttrReset(lbl_1_bss_2C2C[27], HUSPR_ATTR_DISPOFF);
espPosSet(lbl_1_bss_2C2C[27], 288, -100.0+(164.0*cosd(weight*90.0f)));
espPosSet(lbl_1_bss_2C2C[27], 288, -100.0 + (164.0 * cosd(weight * 90.0f)));
espAttrReset(lbl_1_bss_2C2C[28], HUSPR_ATTR_DISPOFF);
espTPLvlSet(lbl_1_bss_2C2C[28], 1.0-weight);
espTPLvlSet(lbl_1_bss_2C2C[28], 1.0 - weight);
espAttrReset(lbl_1_bss_2C2C[20], HUSPR_ATTR_DISPOFF);
espPosSet(lbl_1_bss_2C2C[20], ((1-cosd(weight*90.0f))*400)+288, 424);
espPosSet(lbl_1_bss_2C2C[20], ((1 - cosd(weight * 90.0f)) * 400) + 288, 424);
HuPrcVSleep();
}
for(i=0; i<=10; i++) {
espTPLvlSet(lbl_1_bss_2C2C[3], 1-(i/10.0));
for (i = 0; i <= 10; i++) {
espTPLvlSet(lbl_1_bss_2C2C[3], 1 - (i / 10.0));
HuPrcVSleep();
}
}
@ -82,15 +75,15 @@ void fn_1_DE3C(void)
{
AnimData *numAnim = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_MGMODE, 53), MEMORY_DEFAULT_NUM));
s16 i;
for(i=0; i<6; i++) {
s16 window = HuWinCreate(0, (i*24), 268, 32, 0);
for (i = 0; i < 6; i++) {
s16 window = HuWinCreate(0, (i * 24), 268, 32, 0);
s16 j;
lbl_1_bss_37C[i] = window;
HuWinBGTPLvlSet(window, 0);
HuWinMesSpeedSet(window, 0);
HuWinDispOff(window);
lbl_1_bss_370[i] = HuSprGrpCreate(8);
for(j=0; j<8; j++) {
for (j = 0; j < 8; j++) {
s16 sprite = HuSprCreate(numAnim, 10, 0);
HuSprGrpMemberSet(lbl_1_bss_370[i], j, sprite);
(void)sprite;
@ -102,7 +95,7 @@ void fn_1_DE3C(void)
void fn_1_DFB8(void)
{
s16 i;
for(i=0; i<6; i++) {
for (i = 0; i < 6; i++) {
HuWinKill(lbl_1_bss_37C[i]);
HuSprGrpKill(lbl_1_bss_370[i]);
}
@ -111,112 +104,117 @@ void fn_1_DFB8(void)
void fn_1_E02C(float x, float y, s16 recordNo)
{
s32 sprGrpId = lbl_1_bss_370[recordNo];
s32 value = GWMGRecordGet(lbl_1_data_120[recordNo][0]);
s32 value = GWMGRecordGet(mgRecordIdxTbl[recordNo][0]);
s32 i;
s16 mgNo;
float xOfs;
if(lbl_1_data_120[recordNo][2] != -1) {
mgNo = omMgIndexGet(lbl_1_data_120[recordNo][2]);
if(!GWMGAvailGet(mgNo+401)) {
if (mgRecordIdxTbl[recordNo][2] != -1) {
mgNo = omMgIndexGet(mgRecordIdxTbl[recordNo][2]);
if (!GWMGAvailGet(mgNo + 401)) {
mgNo = -1;
} else {
}
else {
HuWinMesSet(lbl_1_bss_37C[recordNo], mgInfoTbl[mgNo].name_mess);
}
} else {
}
else {
mgNo = -1;
}
HuWinDispOn(lbl_1_bss_37C[recordNo]);
HuWinPosSet(lbl_1_bss_37C[recordNo], x-220, y-24);
if(mgNo == -1) {
HuWinPosSet(lbl_1_bss_37C[recordNo], x - 220, y - 24);
if (mgNo == -1) {
HuWinMesSet(lbl_1_bss_37C[recordNo], MAKE_MESSID(35, 0));
for(i=0; i<8; i++) {
for (i = 0; i < 8; i++) {
HuSprBankSet(sprGrpId, i, 0);
HuSprPosSet(sprGrpId, i, i*16, 0);
HuSprPosSet(sprGrpId, i, i * 16, 0);
HuSprAttrReset(sprGrpId, i, HUSPR_ATTR_DISPOFF);
}
xOfs = 128;
} else {
}
else {
s32 memberNum;
s32 digitValue;
if(lbl_1_data_120[recordNo][1] == 0) {
if (mgRecordIdxTbl[recordNo][1] == 0) {
memberNum = 0;
if(value > 9999) {
if (value > 9999) {
value = 9999;
}
digitValue = value/1000;
if(digitValue != 0) {
digitValue = value / 1000;
if (digitValue != 0) {
HuSprBankSet(sprGrpId, memberNum, digitValue);
value -= digitValue*1000;
value -= digitValue * 1000;
memberNum++;
}
digitValue = value/100;
if(digitValue != 0 || memberNum != 0) {
digitValue = value / 100;
if (digitValue != 0 || memberNum != 0) {
HuSprBankSet(sprGrpId, memberNum, digitValue);
value -= digitValue*100;
value -= digitValue * 100;
memberNum++;
}
digitValue = value/10;
if(digitValue != 0 || memberNum != 0) {
digitValue = value / 10;
if (digitValue != 0 || memberNum != 0) {
HuSprBankSet(sprGrpId, memberNum, digitValue);
value -= digitValue*10;
value -= digitValue * 10;
memberNum++;
}
HuSprBankSet(sprGrpId, memberNum, value);
memberNum++;
for(i=0; i<8; i++) {
for (i = 0; i < 8; i++) {
HuSprAttrSet(sprGrpId, i, HUSPR_ATTR_DISPOFF);
}
for(i=0; i<memberNum; i++) {
HuSprPosSet(sprGrpId, i, i*16, 0);
for (i = 0; i < memberNum; i++) {
HuSprPosSet(sprGrpId, i, i * 16, 0);
HuSprAttrReset(sprGrpId, i, HUSPR_ATTR_DISPOFF);
}
xOfs = memberNum*16;
} else {
xOfs = memberNum * 16;
}
else {
s16 yOfs[8];
for(i=0; i<8; i++) {
for (i = 0; i < 8; i++) {
yOfs[i] = 0;
}
memberNum = 0;
HuSprAttrSet(sprGrpId, memberNum, HUSPR_ATTR_DISPOFF);
memberNum++;
digitValue = value/3600;
digitValue = value / 3600;
HuSprBankSet(sprGrpId, memberNum, digitValue);
value -= digitValue*3600;
value -= digitValue * 3600;
memberNum++;
HuSprBankSet(sprGrpId, memberNum, 11);
yOfs[memberNum] = -2;
memberNum++;
digitValue = value/600;
digitValue = value / 600;
HuSprBankSet(sprGrpId, memberNum, digitValue);
value -= digitValue*600;
value -= digitValue * 600;
memberNum++;
digitValue = value/60;
digitValue = value / 60;
HuSprBankSet(sprGrpId, memberNum, digitValue);
value -= digitValue*60;
value -= digitValue * 60;
memberNum++;
HuSprBankSet(sprGrpId, memberNum, 12);
yOfs[memberNum] = -2;
memberNum++;
if(lbl_1_data_120[recordNo][1] == 2) {
value = (float)value*(203.0/120.0);
} else {
value = (float)value*(200.0/120.0);
if (mgRecordIdxTbl[recordNo][1] == 2) {
value = (float)value * (203.0 / 120.0);
}
digitValue = value/10;
else {
value = (float)value * (200.0 / 120.0);
}
digitValue = value / 10;
HuSprBankSet(sprGrpId, memberNum, digitValue);
value -= digitValue*10;
value -= digitValue * 10;
memberNum++;
HuSprBankSet(sprGrpId, memberNum, value);
memberNum++;
for(i=1; i<8; i++) {
for (i = 1; i < 8; i++) {
HuSprAttrReset(sprGrpId, i, HUSPR_ATTR_DISPOFF);
}
for(i=0; i<memberNum; i++) {
HuSprPosSet(sprGrpId, i, i*16, yOfs[i]);
for (i = 0; i < memberNum; i++) {
HuSprPosSet(sprGrpId, i, i * 16, yOfs[i]);
}
xOfs = memberNum*16;
xOfs = memberNum * 16;
}
}
HuSprGrpPosSet(sprGrpId, 8+((210+x)-xOfs), y);
}
HuSprGrpPosSet(sprGrpId, 8 + ((210 + x) - xOfs), y);
}

File diff suppressed because it is too large Load diff

View file

@ -25,7 +25,7 @@ static ARQRequest arqReq;
static ARMemBlock ARInfo[64];
static s32 ARBase;
static s32 arqCnt;
static volatile s32 arqCnt;
static s16 arqIdx;
void HuARInit(void) {

View file

@ -1,3 +1,4 @@
#include "game/audio.h"
#include "game/data.h"
#include "game/hsfman.h"
#include "game/process.h"