Merge pull request #115 from gamemasterplc/main

Fixes for w03dll
This commit is contained in:
gamemasterplc 2024-01-16 22:09:13 -06:00 committed by GitHub
commit 0b291ccbe8
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 50 additions and 72 deletions

View file

@ -10,14 +10,14 @@ REL/board_executor.c:
.text start:0x00000000 end:0x000000E0
REL/w03Dll/main.c:
.text start:0x000000E0 end:0x000010E4
.rodata start:0x00000000 end:0x00000030
.text start:0x000000E0 end:0x000012C8
.rodata start:0x00000000 end:0x00000038
.data start:0x00000000 end:0x00000280
.bss start:0x00000000 end:0x00000028
REL/w03Dll/statue.c:
.text start:0x000010E4 end:0x00003058
.rodata start:0x00000030 end:0x000000D8
.text start:0x000012C8 end:0x00003058
.rodata start:0x00000038 end:0x000000D8
.data start:0x00000280 end:0x00000310
.bss start:0x00000028 end:0x00000070

View file

@ -126,14 +126,14 @@ fn_1_BDAC = .text:0x0000BDAC; // type:function size:0x84
fn_1_BE30 = .text:0x0000BE30; // type:function size:0x418
_ctors = .ctors:0x00000000; // type:label scope:global data:4byte
_dtors = .dtors:0x00000000; // type:label scope:global data:4byte
lbl_1_rodata_10 = .rodata:0x00000010; // type:object size:0x4 data:float
lbl_1_rodata_14 = .rodata:0x00000014; // type:object size:0x4 data:float
lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x4 data:float
lbl_1_rodata_1C = .rodata:0x0000001C; // type:object size:0x4 data:float
lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x4 data:float
lbl_1_rodata_24 = .rodata:0x00000024; // type:object size:0x4 data:float
lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float
lbl_1_rodata_2C = .rodata:0x0000002C; // type:object size:0x4 data:float
lbl_1_rodata_10 = .rodata:0x00000010; // type:object size:0x4 scope:local data:float
lbl_1_rodata_14 = .rodata:0x00000014; // type:object size:0x4 scope:local data:float
lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x4 scope:local data:float
lbl_1_rodata_1C = .rodata:0x0000001C; // type:object size:0x4 scope:local data:float
lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x4 scope:local data:float
lbl_1_rodata_24 = .rodata:0x00000024; // type:object size:0x4 scope:local data:float
lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 scope:local data:float
lbl_1_rodata_2C = .rodata:0x0000002C; // type:object size:0x4 scope:local data:float
lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x4 data:float
lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x8 data:double
lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x8 data:double

View file

@ -114,28 +114,6 @@ w03State* lbl_1_bss_0;
void fn_1_CF4(void);
// void fn_1_0(void) {
// fn_8005B150(&fn_1_E0, &fn_1_740);
// }
// int _prolog(void) {
// const VoidFunc* ctors = _ctors;
// while (*ctors != 0) {
// (**ctors)();
// ctors++;
// }
// fn_8005B150(&fn_1_E0, &fn_1_740);
// return 0;
// }
// void _epilog(void) {
// const VoidFunc* dtors = _dtors;
// while (*dtors != 0) {
// (**dtors)();
// dtors++;
// }
// }
void BoardCreate(void) {
s32* var_r29;
f32 var_f30;
@ -426,44 +404,44 @@ void fn_1_10B0(void) {
}
}
// void fn_1_10E4(omObjData* arg0) {
// Vec sp14;
// Vec sp8;
// s32 i;
// w03UnkStruct2* temp_r29;
void fn_1_10E4(omObjData* arg0) {
Vec sp14;
Vec sp8;
s32 i;
w03UnkStruct2* temp_r29;
// temp_r29 = (w03UnkStruct2*)&arg0->work[0];
// if (temp_r29->unk0 != 0 || (fn_8005B6A8() != 0)) {
// for (i = 0; i < 4; i++) {
// if (lbl_1_data_21C[i] != -1) {
// HuAudFXFadeOut(lbl_1_data_21C[i], 100);
// }
// }
// HuAudFXListnerKill();
// lbl_1_bss_4 = 0;
// omDelObjEx(HuPrcCurrentGet(), arg0);
// return;
// }
// fn_8005D628(&sp8);
// fn_8005D578(&sp14);
temp_r29 = (w03UnkStruct2*)&arg0->work[0];
if (temp_r29->unk0 != 0 || (BoardIsKill() != 0)) {
for (i = 0; i < 4; i++) {
if (lbl_1_data_21C[i] != -1) {
HuAudFXFadeOut(lbl_1_data_21C[i], 100);
}
}
HuAudFXListnerKill();
lbl_1_bss_4 = 0;
omDelObjEx(HuPrcCurrentGet(), arg0);
return;
}
BoardCameraDirGet(&sp8);
BoardCameraTargetGet(&sp14);
// for (i = 0; i < 4; i++) {
// if ((WipeStatGet() != 0) || (_CheckFlag(0x1001C) != 0)) {
// HuAudFXVolSet(lbl_1_data_21C[i], 0);
// } else {
// HuAudFXVolSet(lbl_1_data_21C[i], 0x7F);
// }
// }
for (i = 0; i < 4; i++) {
if ((WipeStatGet() != 0) || (_CheckFlag(0x1001C) != 0)) {
HuAudFXVolSet(lbl_1_data_21C[i], 0);
} else {
HuAudFXVolSet(lbl_1_data_21C[i], 0x7F);
}
}
// sp14.y += 2000.0f;
// if (_CheckFlag(0x10010) == 0) {
// if (lbl_1_bss_8 == 0) {
// HuAudFXPauseAll(1);
// lbl_1_bss_8 = 1;
// }
// } else if (lbl_1_bss_8 != 0) {
// HuAudFXPauseAll(0);
// lbl_1_bss_8 = 0;
// }
// HuAudFXListnerUpdate(&sp14, &sp8);
// }
sp14.y += 2000.0f;
if (_CheckFlag(0x10010) == 0) {
if (lbl_1_bss_8 == 0) {
HuAudFXPauseAll(1);
lbl_1_bss_8 = 1;
}
} else if (lbl_1_bss_8 != 0) {
HuAudFXPauseAll(0);
lbl_1_bss_8 = 0;
}
HuAudFXListnerUpdate(&sp14, &sp8);
}