T4: batch t4_md_S1 — restruct: batch t4_md_S1 rung S — 63 files (TUs; 63 drawable) · 291 bodies: 692 sites → members / 8 kept / 240 skipped · levers off 0 · compiles 375 in 167 s wall · final 63/63 identical · written 63 files | R22 check-all: 218 passed, 0 failed of 218 | type_census: 1650 definitions (523 layouts, 53 duplicate classes, 0 variant camps) · 339947 cast sites in 51172 bodies over 8 base classes (4 forms + A, coverage OK) · 229 lying declarations / 24 callees (+5293 K&R sites, +418 cross-binary apart) · controls 4/4 (restruct_cycle)

This commit is contained in:
Drew T
2026-10-02 03:56:55 -06:00
parent 66d258e3fe
commit e6197697ac
67 changed files with 3613 additions and 1712 deletions
+157 -157
View File
@@ -1,7 +1,7 @@
{
"head": "35c65708e1",
"head": "95612c3097",
"stamp": "588cbf38c6e4",
"generated": "2026-10-02 02:52",
"generated": "2026-10-02 03:46",
"aliases": [
"main",
"md_SC07_004",
@@ -21,176 +21,176 @@
"main": {
"objects": 85,
"identical": 85,
"seconds": 8.086000000000004,
"mean_s": 0.095
"seconds": 6.536999999999999,
"mean_s": 0.077
},
"md_SC07_004": {
"objects": 1,
"identical": 1,
"seconds": 0.58,
"mean_s": 0.58
"seconds": 0.47,
"mean_s": 0.47
},
"ov_SC03_015": {
"objects": 32,
"identical": 32,
"seconds": 5.871000000000001,
"mean_s": 0.183
"seconds": 4.671000000000001,
"mean_s": 0.146
},
"ov_SC04_011": {
"objects": 28,
"identical": 28,
"seconds": 4.917999999999999,
"mean_s": 0.176
"seconds": 4.027,
"mean_s": 0.144
}
},
"per_object_seconds": {
"build/src/800.o": 0.82,
"build/src/800_b.o": 0.085,
"build/src/800_b_2.o": 0.33,
"build/src/800_b_o0a.o": 0.08,
"build/src/800_c.o": 0.22,
"build/src/800b2.o": 0.074,
"build/src/apicard1.o": 0.107,
"build/src/apicard2.o": 0.064,
"build/src/apicard3.o": 0.07,
"build/src/apicard4.o": 0.07,
"build/src/apicard5.o": 0.07,
"build/src/apicard6.o": 0.083,
"build/src/apicard7.o": 0.066,
"build/src/boot.o": 0.101,
"build/src/gap.o": 0.093,
"build/src/libapi1.o": 0.069,
"build/src/libapi2.o": 0.065,
"build/src/libc2_1.o": 0.075,
"build/src/libc2_2.o": 0.077,
"build/src/libcd1.o": 0.084,
"build/src/libcd2.o": 0.072,
"build/src/libetc.o": 0.077,
"build/src/libgpu.o": 0.078,
"build/src/libgpu2.o": 0.09,
"build/src/libgs1.o": 0.075,
"build/src/libgs2.o": 0.073,
"build/src/libgs3.o": 0.08,
"build/src/libgs4.o": 0.078,
"build/src/libgs5.o": 0.081,
"build/src/libgs6.o": 0.083,
"build/src/libgs7.o": 0.081,
"build/src/libgs8.o": 0.074,
"build/src/libgte1.o": 0.081,
"build/src/libgte10.o": 0.075,
"build/src/libgte11.o": 0.08,
"build/src/libgte12.o": 0.08,
"build/src/libgte13.o": 0.089,
"build/src/libgte14.o": 0.099,
"build/src/libgte15.o": 0.078,
"build/src/libgte16.o": 0.081,
"build/src/libgte17.o": 0.073,
"build/src/libgte18.o": 0.075,
"build/src/libgte19.o": 0.085,
"build/src/libgte2.o": 0.09,
"build/src/libgte20.o": 0.077,
"build/src/libgte21.o": 0.083,
"build/src/libgte22.o": 0.087,
"build/src/libgte23.o": 0.072,
"build/src/libgte24.o": 0.08,
"build/src/libgte25.o": 0.077,
"build/src/libgte26.o": 0.077,
"build/src/libgte27.o": 0.075,
"build/src/libgte28.o": 0.088,
"build/src/libgte29.o": 0.083,
"build/src/libgte3.o": 0.081,
"build/src/libgte30.o": 0.083,
"build/src/libgte4.o": 0.082,
"build/src/libgte5.o": 0.076,
"build/src/libgte6.o": 0.077,
"build/src/libgte7.o": 0.074,
"build/src/libgte8.o": 0.077,
"build/src/libgte9.o": 0.081,
"build/src/libmcrd1.o": 0.101,
"build/src/libmcrd2.o": 0.085,
"build/src/libpad1.o": 0.084,
"build/src/libpad2.o": 0.09,
"build/src/sgap.o": 0.083,
"build/src/sgap_2.o": 0.089,
"build/src/sgap_3.o": 0.077,
"build/src/sgap_4.o": 0.087,
"build/src/sgap_5.o": 0.088,
"build/src/sgap_6.o": 0.081,
"build/src/sgap_8.o": 0.097,
"build/src/snd1.o": 0.102,
"build/src/snd10.o": 0.083,
"build/src/snd11.o": 0.084,
"build/src/snd12.o": 0.09,
"build/src/snd2.o": 0.087,
"build/src/snd3.o": 0.089,
"build/src/snd4.o": 0.088,
"build/src/snd5.o": 0.098,
"build/src/snd6.o": 0.083,
"build/src/snd7.o": 0.093,
"build/src/snd8.o": 0.077,
"build/src/snd9.o": 0.089,
"build/src/md_SC07_004/md_SC07_004.o": 0.58,
"build/src/ov_SC03_015/ov_SC03_015.o": 0.17,
"build/src/ov_SC03_015/ov_SC03_015_after.o": 0.549,
"build/src/ov_SC03_015/ov_SC03_015_jr_8012ACE0.o": 0.462,
"build/src/ov_SC03_015/ov_SC03_015_jr_80135888.o": 0.088,
"build/src/ov_SC03_015/ov_SC03_015_jr_80135A4C.o": 0.074,
"build/src/ov_SC03_015/ov_SC03_015_jr_80135D20.o": 0.177,
"build/src/ov_SC03_015/ov_SC03_015_jr_801380E0.o": 0.205,
"build/src/ov_SC03_015/ov_SC03_015_jr_8013C98C.o": 0.166,
"build/src/ov_SC03_015/ov_SC03_015_jr_8013F350.o": 0.118,
"build/src/ov_SC03_015/ov_SC03_015_jr_8013FFD8.o": 0.111,
"build/src/ov_SC03_015/ov_SC03_015_jr_80140608.o": 0.226,
"build/src/ov_SC03_015/ov_SC03_015_jr_8015444C.o": 0.099,
"build/src/ov_SC03_015/ov_SC03_015_jr_80154C24.o": 0.22,
"build/src/ov_SC03_015/ov_SC03_015_jr_801588CC.o": 0.135,
"build/src/ov_SC03_015/ov_SC03_015_jr_80159C84.o": 0.094,
"build/src/ov_SC03_015/ov_SC03_015_jr_8015A3C8.o": 0.114,
"build/src/ov_SC03_015/ov_SC03_015_jr_8015AE2C.o": 0.131,
"build/src/ov_SC03_015/ov_SC03_015_jr_8015C32C.o": 0.516,
"build/src/ov_SC03_015/ov_SC03_015_jr_8016AB6C.o": 0.286,
"build/src/ov_SC03_015/ov_SC03_015_jr_80171B4C.o": 0.126,
"build/src/ov_SC03_015/ov_SC03_015_jr_801734BC.o": 0.242,
"build/src/ov_SC03_015/ov_SC03_015_jr_801789AC.o": 0.093,
"build/src/ov_SC03_015/ov_SC03_015_jr_80178D40.o": 0.144,
"build/src/ov_SC03_015/ov_SC03_015_jr_8017A4AC.o": 0.104,
"build/src/ov_SC03_015/ov_SC03_015_jr_8017AE2C.o": 0.218,
"build/src/ov_SC03_015/ov_SC03_015_jr_8017EB7C.o": 0.25,
"build/src/ov_SC03_015/ov_SC03_015_jr_80184440.o": 0.077,
"build/src/ov_SC03_015/ov_SC03_015_jr_801848E4.o": 0.323,
"build/src/ov_SC03_015/ov_SC03_015_o0b.o": 0.074,
"build/src/ov_SC03_015/ov_SC03_015_o0c.o": 0.089,
"build/src/ov_SC03_015/ov_SC03_015_o0d.o": 0.086,
"build/src/ov_SC03_015/ov_SC03_015_o0e.o": 0.104,
"build/src/ov_SC04_011/ov_SC04_011.o": 0.17,
"build/src/ov_SC04_011/ov_SC04_011_after.o": 0.495,
"build/src/ov_SC04_011/ov_SC04_011_jr_8012ACE0.o": 0.395,
"build/src/ov_SC04_011/ov_SC04_011_jr_80135888.o": 0.065,
"build/src/ov_SC04_011/ov_SC04_011_jr_80135A4C.o": 0.071,
"build/src/ov_SC04_011/ov_SC04_011_jr_80135D20.o": 0.151,
"build/src/ov_SC04_011/ov_SC04_011_jr_801380E0.o": 0.193,
"build/src/ov_SC04_011/ov_SC04_011_jr_8013C98C.o": 0.139,
"build/src/ov_SC04_011/ov_SC04_011_jr_8013F350.o": 0.103,
"build/src/ov_SC04_011/ov_SC04_011_jr_8013FFD8.o": 0.081,
"build/src/ov_SC04_011/ov_SC04_011_jr_80140608.o": 0.207,
"build/src/ov_SC04_011/ov_SC04_011_jr_8015444C.o": 0.095,
"build/src/ov_SC04_011/ov_SC04_011_jr_80154C24.o": 0.214,
"build/src/ov_SC04_011/ov_SC04_011_jr_801588CC.o": 0.123,
"build/src/ov_SC04_011/ov_SC04_011_jr_80159C84.o": 0.105,
"build/src/ov_SC04_011/ov_SC04_011_jr_8015A3C8.o": 0.106,
"build/src/ov_SC04_011/ov_SC04_011_jr_8015AE2C.o": 0.132,
"build/src/ov_SC04_011/ov_SC04_011_jr_8015C32C.o": 0.411,
"build/src/ov_SC04_011/ov_SC04_011_jr_8016AB6C.o": 0.261,
"build/src/ov_SC04_011/ov_SC04_011_jr_80171B4C.o": 0.131,
"build/src/ov_SC04_011/ov_SC04_011_jr_801734BC.o": 0.207,
"build/src/ov_SC04_011/ov_SC04_011_jr_801789AC.o": 0.081,
"build/src/ov_SC04_011/ov_SC04_011_jr_80178D40.o": 0.12,
"build/src/ov_SC04_011/ov_SC04_011_jr_8017A4AC.o": 0.095,
"build/src/ov_SC04_011/ov_SC04_011_jr_8017AE2C.o": 0.123,
"build/src/ov_SC04_011/ov_SC04_011_jr_8017D494.o": 0.494,
"build/src/ov_SC04_011/ov_SC04_011_o0b.o": 0.073,
"build/src/ov_SC04_011/ov_SC04_011_o0c.o": 0.077
"build/src/800.o": 0.728,
"build/src/800_b.o": 0.075,
"build/src/800_b_2.o": 0.307,
"build/src/800_b_o0a.o": 0.056,
"build/src/800_c.o": 0.189,
"build/src/800b2.o": 0.073,
"build/src/apicard1.o": 0.057,
"build/src/apicard2.o": 0.079,
"build/src/apicard3.o": 0.062,
"build/src/apicard4.o": 0.073,
"build/src/apicard5.o": 0.077,
"build/src/apicard6.o": 0.084,
"build/src/apicard7.o": 0.07,
"build/src/boot.o": 0.098,
"build/src/gap.o": 0.096,
"build/src/libapi1.o": 0.068,
"build/src/libapi2.o": 0.054,
"build/src/libc2_1.o": 0.061,
"build/src/libc2_2.o": 0.058,
"build/src/libcd1.o": 0.065,
"build/src/libcd2.o": 0.059,
"build/src/libetc.o": 0.061,
"build/src/libgpu.o": 0.059,
"build/src/libgpu2.o": 0.064,
"build/src/libgs1.o": 0.054,
"build/src/libgs2.o": 0.068,
"build/src/libgs3.o": 0.06,
"build/src/libgs4.o": 0.057,
"build/src/libgs5.o": 0.057,
"build/src/libgs6.o": 0.082,
"build/src/libgs7.o": 0.062,
"build/src/libgs8.o": 0.059,
"build/src/libgte1.o": 0.066,
"build/src/libgte10.o": 0.06,
"build/src/libgte11.o": 0.057,
"build/src/libgte12.o": 0.066,
"build/src/libgte13.o": 0.069,
"build/src/libgte14.o": 0.065,
"build/src/libgte15.o": 0.068,
"build/src/libgte16.o": 0.065,
"build/src/libgte17.o": 0.065,
"build/src/libgte18.o": 0.065,
"build/src/libgte19.o": 0.064,
"build/src/libgte2.o": 0.065,
"build/src/libgte20.o": 0.062,
"build/src/libgte21.o": 0.067,
"build/src/libgte22.o": 0.065,
"build/src/libgte23.o": 0.064,
"build/src/libgte24.o": 0.067,
"build/src/libgte25.o": 0.073,
"build/src/libgte26.o": 0.06,
"build/src/libgte27.o": 0.063,
"build/src/libgte28.o": 0.059,
"build/src/libgte29.o": 0.066,
"build/src/libgte3.o": 0.06,
"build/src/libgte30.o": 0.059,
"build/src/libgte4.o": 0.06,
"build/src/libgte5.o": 0.061,
"build/src/libgte6.o": 0.061,
"build/src/libgte7.o": 0.058,
"build/src/libgte8.o": 0.065,
"build/src/libgte9.o": 0.061,
"build/src/libmcrd1.o": 0.071,
"build/src/libmcrd2.o": 0.062,
"build/src/libpad1.o": 0.061,
"build/src/libpad2.o": 0.065,
"build/src/sgap.o": 0.065,
"build/src/sgap_2.o": 0.065,
"build/src/sgap_3.o": 0.066,
"build/src/sgap_4.o": 0.069,
"build/src/sgap_5.o": 0.061,
"build/src/sgap_6.o": 0.062,
"build/src/sgap_8.o": 0.068,
"build/src/snd1.o": 0.069,
"build/src/snd10.o": 0.057,
"build/src/snd11.o": 0.061,
"build/src/snd12.o": 0.063,
"build/src/snd2.o": 0.064,
"build/src/snd3.o": 0.06,
"build/src/snd4.o": 0.061,
"build/src/snd5.o": 0.057,
"build/src/snd6.o": 0.068,
"build/src/snd7.o": 0.063,
"build/src/snd8.o": 0.058,
"build/src/snd9.o": 0.063,
"build/src/md_SC07_004/md_SC07_004.o": 0.47,
"build/src/ov_SC03_015/ov_SC03_015.o": 0.129,
"build/src/ov_SC03_015/ov_SC03_015_after.o": 0.477,
"build/src/ov_SC03_015/ov_SC03_015_jr_8012ACE0.o": 0.378,
"build/src/ov_SC03_015/ov_SC03_015_jr_80135888.o": 0.062,
"build/src/ov_SC03_015/ov_SC03_015_jr_80135A4C.o": 0.07,
"build/src/ov_SC03_015/ov_SC03_015_jr_80135D20.o": 0.12,
"build/src/ov_SC03_015/ov_SC03_015_jr_801380E0.o": 0.167,
"build/src/ov_SC03_015/ov_SC03_015_jr_8013C98C.o": 0.12,
"build/src/ov_SC03_015/ov_SC03_015_jr_8013F350.o": 0.092,
"build/src/ov_SC03_015/ov_SC03_015_jr_8013FFD8.o": 0.077,
"build/src/ov_SC03_015/ov_SC03_015_jr_80140608.o": 0.19,
"build/src/ov_SC03_015/ov_SC03_015_jr_8015444C.o": 0.086,
"build/src/ov_SC03_015/ov_SC03_015_jr_80154C24.o": 0.162,
"build/src/ov_SC03_015/ov_SC03_015_jr_801588CC.o": 0.097,
"build/src/ov_SC03_015/ov_SC03_015_jr_80159C84.o": 0.073,
"build/src/ov_SC03_015/ov_SC03_015_jr_8015A3C8.o": 0.067,
"build/src/ov_SC03_015/ov_SC03_015_jr_8015AE2C.o": 0.088,
"build/src/ov_SC03_015/ov_SC03_015_jr_8015C32C.o": 0.439,
"build/src/ov_SC03_015/ov_SC03_015_jr_8016AB6C.o": 0.276,
"build/src/ov_SC03_015/ov_SC03_015_jr_80171B4C.o": 0.101,
"build/src/ov_SC03_015/ov_SC03_015_jr_801734BC.o": 0.198,
"build/src/ov_SC03_015/ov_SC03_015_jr_801789AC.o": 0.067,
"build/src/ov_SC03_015/ov_SC03_015_jr_80178D40.o": 0.12,
"build/src/ov_SC03_015/ov_SC03_015_jr_8017A4AC.o": 0.077,
"build/src/ov_SC03_015/ov_SC03_015_jr_8017AE2C.o": 0.165,
"build/src/ov_SC03_015/ov_SC03_015_jr_8017EB7C.o": 0.183,
"build/src/ov_SC03_015/ov_SC03_015_jr_80184440.o": 0.065,
"build/src/ov_SC03_015/ov_SC03_015_jr_801848E4.o": 0.273,
"build/src/ov_SC03_015/ov_SC03_015_o0b.o": 0.055,
"build/src/ov_SC03_015/ov_SC03_015_o0c.o": 0.065,
"build/src/ov_SC03_015/ov_SC03_015_o0d.o": 0.063,
"build/src/ov_SC03_015/ov_SC03_015_o0e.o": 0.069,
"build/src/ov_SC04_011/ov_SC04_011.o": 0.131,
"build/src/ov_SC04_011/ov_SC04_011_after.o": 0.425,
"build/src/ov_SC04_011/ov_SC04_011_jr_8012ACE0.o": 0.353,
"build/src/ov_SC04_011/ov_SC04_011_jr_80135888.o": 0.055,
"build/src/ov_SC04_011/ov_SC04_011_jr_80135A4C.o": 0.059,
"build/src/ov_SC04_011/ov_SC04_011_jr_80135D20.o": 0.128,
"build/src/ov_SC04_011/ov_SC04_011_jr_801380E0.o": 0.147,
"build/src/ov_SC04_011/ov_SC04_011_jr_8013C98C.o": 0.118,
"build/src/ov_SC04_011/ov_SC04_011_jr_8013F350.o": 0.086,
"build/src/ov_SC04_011/ov_SC04_011_jr_8013FFD8.o": 0.073,
"build/src/ov_SC04_011/ov_SC04_011_jr_80140608.o": 0.173,
"build/src/ov_SC04_011/ov_SC04_011_jr_8015444C.o": 0.074,
"build/src/ov_SC04_011/ov_SC04_011_jr_80154C24.o": 0.166,
"build/src/ov_SC04_011/ov_SC04_011_jr_801588CC.o": 0.098,
"build/src/ov_SC04_011/ov_SC04_011_jr_80159C84.o": 0.072,
"build/src/ov_SC04_011/ov_SC04_011_jr_8015A3C8.o": 0.078,
"build/src/ov_SC04_011/ov_SC04_011_jr_8015AE2C.o": 0.103,
"build/src/ov_SC04_011/ov_SC04_011_jr_8015C32C.o": 0.341,
"build/src/ov_SC04_011/ov_SC04_011_jr_8016AB6C.o": 0.211,
"build/src/ov_SC04_011/ov_SC04_011_jr_80171B4C.o": 0.102,
"build/src/ov_SC04_011/ov_SC04_011_jr_801734BC.o": 0.168,
"build/src/ov_SC04_011/ov_SC04_011_jr_801789AC.o": 0.069,
"build/src/ov_SC04_011/ov_SC04_011_jr_80178D40.o": 0.092,
"build/src/ov_SC04_011/ov_SC04_011_jr_8017A4AC.o": 0.078,
"build/src/ov_SC04_011/ov_SC04_011_jr_8017AE2C.o": 0.102,
"build/src/ov_SC04_011/ov_SC04_011_jr_8017D494.o": 0.415,
"build/src/ov_SC04_011/ov_SC04_011_o0b.o": 0.047,
"build/src/ov_SC04_011/ov_SC04_011_o0c.o": 0.063
},
"ok": true,
"seconds": 2.3
"seconds": 1.9
}
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
+15 -15
View File
@@ -1,33 +1,33 @@
type_census — 2026-10-02T08:59:44Z at 491f8745cd (src stamp 914ebbc32dd83b02, tool e17c5fa676); 7306 files (4121 TUs + 3181 headers), 99109 function definitions; walk 46.7 s, total 218.1 s
type_census — 2026-10-02T09:54:25Z at ddb65fc672 (src stamp 520ae0f0bb7f24fa, tool e17c5fa676); 7306 files (4121 TUs + 3181 headers), 99109 function definitions; walk 40.0 s, total 193.8 s
DEFINITIONS 1650 struct/union bodies (+0 enums): canonical header 1021 · .c file-scope 0 · .c block-scope 600 · per-function shared headers 29 · other headers 0 · include/ 326
1024 distinct names · 523 distinct layouts (0 unresolved) · 53 duplicate classes covering 496 names (tier 1 0 same-named, tier 2 53 opaque; 44 layout-twin classes / 472 names kept apart) · 42 exact-text classes / 546 copies · 0 VARIANT names (>1 layout) · 55 dead canonical names · 0 canonical names redefined in .c · 4300 scalar/alias typedefs · 145 forward decls
CAST SITES deref 340812 = P 260377 + I 51514 + X 13790 + M 15131 (+ A address-of 18889; + C typed cast-member 170911) in 51350 bodies · coverage OK (raw {'P': 260377, 'I': 51514, 'X': 13790, 'A': 18889, 'C': 170911, 'M': 15131, 'K': 20402}) · refused 0 · absolute 0 · readability regex over raw text 263214
by base: param 154266 · local 124923 · gaddr 40113 · nested 9769 · global 8631 · other 1611 · addr-of 1338 · ident 161
by width: s2 104073 · u2 85246 · s4 82469 · u1 35058 · agg 13415 · p4 11063 · u4 7606 · s1 1882
top bases: param_1(param) 57353 · a0(param) 40675 · arg0(param) 31603 · p(local) 13196 · cach(local) 8246 · buf(local) 7056 · s0(local) 6695 · s1(local) 6452 · flag(local) 5453 · dst(local) 4853 · iVar2(local) 4399 · iVar1(local) 3481 · cur(local) 3375 · p(param) 3062 · e(local) 3028 · src(local) 2599
DECLARATIONS 99109 function definitions (1894 K&R) · 4279260 extern function declarations over 12088 names (3773 spelled >1 way) · 6421 names with >1 body text · 1078766 data externs over 55542 symbols (18498 typed >1 way) · asm-label aliases 5148 (159 names) · builtins {'memcpy': 301, 'abs': 1} · attributes {'aligned': 6, 'packed': 26}
CAST SITES deref 339947 = P 259512 + I 51514 + X 13790 + M 15131 (+ A address-of 18889; + C typed cast-member 171602) in 51172 bodies · coverage OK (raw {'P': 259512, 'I': 51514, 'X': 13790, 'A': 18889, 'C': 171602, 'K': 20575, 'M': 15131}) · refused 0 · absolute 0 · readability regex over raw text 262349
by base: param 153490 · local 124862 · gaddr 40113 · nested 9739 · global 8631 · other 1613 · addr-of 1338 · ident 161
by width: s2 103958 · u2 84933 · s4 82169 · u1 34976 · agg 13413 · p4 11030 · u4 7586 · s1 1882
top bases: param_1(param) 57237 · a0(param) 40232 · arg0(param) 31417 · p(local) 13195 · cach(local) 8246 · buf(local) 7056 · s0(local) 6672 · s1(local) 6450 · flag(local) 5453 · dst(local) 4853 · iVar2(local) 4394 · iVar1(local) 3474 · cur(local) 3375 · p(param) 3062 · e(local) 3028 · src(local) 2599
DECLARATIONS 99109 function definitions (1894 K&R) · 4279260 extern function declarations over 12088 names (3773 spelled >1 way) · 6421 names with >1 body text · 1078766 data externs over 55542 symbols (18498 typed >1 way) · asm-label aliases 5148 (159 names) · builtins {'memcpy': 301, 'abs': 1} · attributes {'packed': 26, 'aligned': 6}
lying declarations 229 over 24 callees {'K&R-empty': 216, 'narrow': 13} · K&R sites (marked, counted apart) 5293 over 200 callees · cross-binary (the fleet's definitions disagree, this binary has none) 418 over 96 callees
STRUCT MAP 18444 types explain 336895/340812 deref sites (98.9 %); unassigned 3917; 3928 types span ≥2 bodies (282194 sites), 14516 single-body; types with conflicts 841, suspect 12
merges by evidence {'param': 39256, 'arg': 11076, 'assign': 19265, 'ret-of': 5811, 'assign&': 1288, 'return': 1529, 'arg&': 213, 'field': 6797, 'nested': 9}; vetoed {'arg-conduit': 140394, 'assign-multisource': 33663, 'arg&-conduit': 14638, 'assign&-multisource': 12225, 'arg&-no-overlap': 3562, 'arg-no-overlap': 30073, 'ret-of-multisource': 6715, 'field-multisource': 5315, 'assign&': 314, 'assign': 280, 'ret-of': 320, 'arg': 62, 'return': 3, 'field': 72}
Unkstruct_800D3888 sites 20952 bodies 4621 fields 128 size≥0x10c width-conflicts 50 sign-mixed 54 merges {'param': 9622, 'assign': 8701, 'arg': 7346, 'ret-of': 2876} at D_800D3888,D_800DE5A0,D_801269F0 ptr D_8006386C,D_80074778,D_80074780
STRUCT MAP 18669 types explain 336028/339947 deref sites (98.8 %); unassigned 3919; 3973 types span ≥2 bodies (280310 sites), 14696 single-body; types with conflicts 849, suspect 11
merges by evidence {'param': 39248, 'arg': 10973, 'assign': 19311, 'ret-of': 5797, 'assign&': 1263, 'arg&': 276, 'return': 1529, 'field': 6681, 'nested': 9}; vetoed {'arg&-conduit': 14638, 'arg-conduit': 140631, 'arg-no-overlap': 33796, 'ret-of-multisource': 6717, 'field-multisource': 5292, 'assign&-multisource': 12225, 'assign-multisource': 33663, 'arg&-no-overlap': 3404, 'ret-of': 577, 'assign': 310, 'return': 7, 'assign&': 338, 'arg': 132, 'field': 32}
Unkstruct_800B5CB8 sites 18295 bodies 4266 fields 128 size≥0x10c width-conflicts 50 sign-mixed 53 merges {'param': 9120, 'assign': 8592, 'arg': 7036, 'ret-of': 2438} at D_800B5CB8,D_800D3888,D_80181448 ptr D_8006386C,D_80074778,D_80074780
Unkstruct_cb638a45 sites 6477 bodies 381 fields 6 size≥0x10 width-conflicts 0 sign-mixed 0 merges {'param': 12, 'arg': 5}
Unkstruct_80126B58 sites 6194 bodies 3144 fields 163 size≥0x24c width-conflicts 48 sign-mixed 51 merges {'param': 2158, 'arg': 1122, 'assign&': 104, 'assign': 44} at D_80126B58 ptr D_80126B58
Unkstruct_80126B58 sites 5482 bodies 2947 fields 165 size≥0x24c width-conflicts 40 sign-mixed 45 merges {'param': 2120, 'arg': 1118, 'assign&': 104, 'assign': 41} at D_80126B58 ptr D_80126B58
Unkstruct_dac960ce sites 4464 bodies 124 fields 13 size≥0x24c width-conflicts 0 sign-mixed 2 merges {'param': 2}
Unkstruct_0caecd54 sites 4340 bodies 124 fields 23 size≥0xfe width-conflicts 0 sign-mixed 1 merges {'param': 2, 'assign': 1, 'return': 1}
Unkstruct_f8ed2b9f sites 4061 bodies 4061 fields 1 size≥0x217 width-conflicts 0 sign-mixed 0 merges {'param': 2}
Unkstruct_a32b99a1 sites 3936 bodies 123 fields 8 size≥0x4b width-conflicts 0 sign-mixed 1 merges {}
Unkstruct_8e3dbe51 sites 3930 bodies 131 fields 5 size≥0x4c width-conflicts 0 sign-mixed 1 merges {}
Unkstruct_80126948 sites 3295 bodies 1100 fields 34 size≥0xa4 width-conflicts 1 sign-mixed 10 merges {'assign': 103, 'arg': 16, 'param': 12, 'assign&': 4} at D_80126948,D_80126E60 ptr D_80114EE8,D_801151D4,D_80126948
Unkstruct_57a28935 sites 3271 bodies 196 fields 26 size≥0xa4 width-conflicts 3 sign-mixed 9 merges {'param': 268, 'arg': 133}
Unkstruct_1fa9e810 sites 3144 bodies 131 fields 3 size≥0x49 width-conflicts 0 sign-mixed 0 merges {}
Unkstruct_30b21035 sites 3100 bodies 124 fields 13 size≥0x54 width-conflicts 0 sign-mixed 0 merges {}
GLOBAL BLOCKS 2130 runs of ≥4 adjacent scalar D_ symbols (14279 symbols): 0x800cf10c+0x34 ×29 (D_800CF10C..D_800CF13C) · 0x800a6580+0x3a ×27 (D_800A6580..D_800A65B8) · 0x801998a4+0x57 ×24 (D_801998A4..D_801998FA) · 0x80199840+0x56 ×23 (D_80199840..D_80199895) · 0x801a9608+0x50 ×22 (D_801A9608..D_801A9654) · 0x801ab708+0x54 ×21 (D_801AB708..D_801AB758) · 0x801b0df0+0x4b ×21 (D_801B0DF0..D_801B0E3A) · 0x801b83a0+0x4e ×21 (D_801B83A0..D_801B83ED)
Unkstruct_80126948 sites 3034 bodies 848 fields 34 size≥0xa4 width-conflicts 0 sign-mixed 10 merges {'assign': 103, 'arg': 14, 'param': 6, 'assign&': 4} at D_80126948,D_80126E60 ptr D_80114EE8,D_801151D4,D_80126948
GLOBAL BLOCKS 2124 runs of ≥4 adjacent scalar D_ symbols (14253 symbols): 0x800cf10c+0x34 ×29 (D_800CF10C..D_800CF13C) · 0x800a6580+0x3a ×27 (D_800A6580..D_800A65B8) · 0x801998a4+0x57 ×24 (D_801998A4..D_801998FA) · 0x80199840+0x56 ×23 (D_80199840..D_80199895) · 0x801a9608+0x50 ×22 (D_801A9608..D_801A9654) · 0x801ab708+0x54 ×21 (D_801AB708..D_801AB758) · 0x801b0df0+0x4b ×21 (D_801B0DF0..D_801B0E3A) · 0x801b83a0+0x4e ×21 (D_801B83A0..D_801B83ED)
PARKED (P36) 24 classes / 453 bodies / 691 needed sites → .run/P37/census/parked.tsv; needs {'signature': 13, 'struct': 7, '?': 4}; 22 PARK names are minimum-lever banks
CONTROLS 4/4: player_block_widths OK (D_80078E8C:4/4 D_80078EB2:2/2 D_80078EB4:2/2 D_80078EB6:2/2 D_80078EB8:2/2 D_80078F08:4/4 D_80078F0C:4/4) · matrix_layouts OK (MATRIX=32 MATRIX_L48=48) · prim_layout_class OK (defs in 1 files, 1 spellings, 1/1 in one layout (64 B)) · tu_conflict_D_800A651C OK (s32:1202 | u8[]:9 | OtBlk[]:9 | OtBlk_80016450[]:8 | s32[]:7)
duplicate-layout classes (top 12): 4B×56 names (0 defs): B4_80165140, B4_8017F154, B4_8018750C, B4_8018AD9C… | 8B×46 names (0 defs): Blk8S16, Blk8_80126940, Blk8_80180A38, D_80195AF4_t… | 8B×45 names (0 defs): B8, B8_17F474, B8_80165140, B8_801851A8… | 8B×34 names (0 defs): Args_80182194, Blk8017FD54, Blk8_801A6AD0, Blk8_801AD914… | 20B×32 names (0 defs): Blk20_8017D110, Buf8017BF34_8017BF34, Buf8017BF50_8017C234, Loc_80180E10… | 16B×28 names (0 defs): Blk16X, Blk16_8017ECD4, Blk16_8018A4C4, Blk16_8018A8B8… | 32B×25 names (0 defs): Blk20_8016DF5C, Blk20_80180B78, Blk20_80184694, Blk32L_80133298… | 6B×25 names (0 defs): D80190448_t, Pt6_8017D65C, ResMapCol, S6… | 8B×22 names (22 defs): B8014, Blk8_80133CD4, Blk8_801463A0, Blk8_8017FF80… | 12B×19 names (19 defs): Blk12, Prim126, PrimC59C, PrimC974… | 8B×14 names (0 defs): CdFileLoc, Cmd_801805C8, M8_8016B6BC, Pair8_8017DDC4… | 4B×14 names (0 defs): D_801D0660_s, Ent_80186AE4, P4, Pair4_801B02DC…
duplicate-layout classes (top 12): 4B×56 names (0 defs): B4_80165140, B4_8017F154, B4_8018750C, B4_8018AD9C… | 8B×46 names (0 defs): Blk8S16, Blk8_80126940, Blk8_80180A38, D_80195AF4_t… | 8B×45 names (0 defs): B8, B8_17F474, B8_80165140, B8_801851A8… | 8B×34 names (0 defs): Args_80182194, Blk8017FD54, Blk8_801A6AD0, Blk8_801AD914… | 20B×32 names (0 defs): Blk20_8017D110, Buf8017BF34_8017BF34, Buf8017BF50_8017C234, Loc_80180E10… | 16B×28 names (0 defs): Blk16X, Blk16_8017ECD4, Blk16_8018A4C4, Blk16_8018A8B8… | 6B×25 names (0 defs): D80190448_t, Pt6_8017D65C, ResMapCol, S6… | 32B×25 names (0 defs): Blk20_8016DF5C, Blk20_80180B78, Blk20_80184694, Blk32L_80133298… | 8B×22 names (22 defs): B8014, Blk8_80133CD4, Blk8_801463A0, Blk8_8017FF80… | 12B×19 names (19 defs): Blk12, Prim126, PrimC59C, PrimC974… | 8B×14 names (0 defs): CdFileLoc, Cmd_801805C8, M8_8016B6BC, Pair8_8017DDC4… | 4B×14 names (0 defs): D_801D0660_s, Ent_80186AE4, P4, Pair4_801B02DC…
VARIANT names (top 12):
type_census: 1650 definitions (523 layouts, 53 duplicate classes, 0 variant camps) · 340812 cast sites in 51350 bodies over 8 base classes (4 forms + A, coverage OK) · 229 lying declarations / 24 callees (+5293 K&R sites, +418 cross-binary apart) · controls 4/4
struct_map: 18444 types over 18444 clusters explain 336895/340812 sites (98.9 %); 3917 unassigned sites; 841 types with conflicts
type_census: 1650 definitions (523 layouts, 53 duplicate classes, 0 variant camps) · 339947 cast sites in 51172 bodies over 8 base classes (4 forms + A, coverage OK) · 229 lying declarations / 24 callees (+5293 K&R sites, +418 cross-binary apart) · controls 4/4
struct_map: 18669 types over 18669 clusters explain 336028/339947 sites (98.8 %); 3919 unassigned sites; 849 types with conflicts
+29 -29
View File
@@ -44,13 +44,13 @@ void func_800CAEE0(u8 *a0) {
func_80154A74((s32)a0, 0x15);
func_80147324(0x477);
func_801655E4(a0);
*(u8 *)(a0 + 0xBE) = 0;
*(u8 *)(a0 + 0xBF) = 0;
((Unkstruct_80126B58 *)a0)->unkBE = 0;
((Unkstruct_80126B58 *)a0)->unkBF = 0;
func_80156648((s32 *)a0);
*(u8 *)(a0 + 0x1AA) = 0;
((Unkstruct_80126B58 *)a0)->unk1AA = 0;
func_800CB054(a0);
func_80019064(&D_80062BD0);
*(u8 *)(a0 + 0x197) = *(u8 *)(a0 + 0x197) + 1;
((Unkstruct_80126B58 *)a0)->unk197 = ((Unkstruct_80126B58 *)a0)->unk197 + 1;
}
@@ -61,36 +61,36 @@ extern void func_80159B3C(void *a0);
extern s32 func_80155FD4(s32 a0, s32 a1);
void func_800CAF68(s32 a0) {
*(u32 *)(a0 + 0x44) |= 2;
((Unkstruct_80126B58 *)a0)->unk44 |= 2;
if (func_80161208() != 0) {
return;
}
if (*(u16 *)(a0 + 0xB8) & 0x2000) {
*(u8 *)(a0 + 0xBF) += 1;
if (((Unkstruct_80126B58 *)a0)->unkB8 & 0x2000) {
((Unkstruct_80126B58 *)a0)->unkBF += 1;
}
if (*(u8 *)(a0 + 0xBF) != 0) {
func_800CB05C(a0, *(u8 *)(a0 + 0xBF));
if (((Unkstruct_80126B58 *)a0)->unkBF != 0) {
func_800CB05C(a0, ((Unkstruct_80126B58 *)a0)->unkBF);
}
if (*(u16 *)(a0 + 0xB8) == 0x8000) {
if (((Unkstruct_80126B58 *)a0)->unkB8 == 0x8000) {
func_801599A4((void *)a0);
func_80159B3C((void *)a0);
return;
}
func_80155FD4(a0, *(u8 *)(a0 + 0x1AA));
func_80155FD4(a0, ((Unkstruct_80126B58 *)a0)->unk1AA);
}
void func_800CB018(s32 a0) {
extern void func_80154A74(s32 a0, s32 a1);
*(u16 *)(a0 + 0x1BA) = 0x1000;
*(u16 *)(a0 + 0x1B8) = 0x1000;
*(u32 *)(a0 + 0x44) = *(u32 *)(a0 + 0x44) & ~2;
((Unkstruct_80126B58 *)a0)->unk1BA = 0x1000;
((Unkstruct_80126B58 *)a0)->unk1B8 = 0x1000;
((Unkstruct_80126B58 *)a0)->unk44 = ((Unkstruct_80126B58 *)a0)->unk44 & ~2;
func_80154A74(a0, 0x11);
}
void func_800CB054(void *a0) {
*(s32 *)((s32)a0 + 0xC0) = 0;
((Unkstruct_80126B58 *)a0)->unkC0 = 0;
}
@@ -99,22 +99,22 @@ void func_800CB05C(s32 a0, s32 a1) {
a1 &= 0xFF;
switch (a1) {
case 1:
v = *(s32 *)(a0 + 0xC0) + 0x800;
*(s32 *)(a0 + 0xC0) = v;
if (v >= 0x2001) { *(s32 *)(a0 + 0xC0) = 0x2000; }
x = *(u16 *)(a0 + 0x1B8) + 0x800;
y = *(u16 *)(a0 + 0x1BA) + 0x800;
*(u16 *)(a0 + 0x1B8) = x;
*(u16 *)(a0 + 0x1BA) = y;
v = ((Unkstruct_80126B58 *)a0)->unkC0 + 0x800;
((Unkstruct_80126B58 *)a0)->unkC0 = v;
if (v >= 0x2001) { ((Unkstruct_80126B58 *)a0)->unkC0 = 0x2000; }
x = ((Unkstruct_80126B58 *)a0)->unk1B8 + 0x800;
y = ((Unkstruct_80126B58 *)a0)->unk1BA + 0x800;
((Unkstruct_80126B58 *)a0)->unk1B8 = x;
((Unkstruct_80126B58 *)a0)->unk1BA = y;
break;
case 2:
v = *(s32 *)(a0 + 0xC0) - 0x800;
*(s32 *)(a0 + 0xC0) = v;
if (v < 0) { *(s32 *)(a0 + 0xC0) = 0; }
x = *(u16 *)(a0 + 0x1B8) - 0x800;
y = *(u16 *)(a0 + 0x1BA) - 0x800;
*(u16 *)(a0 + 0x1B8) = x;
*(u16 *)(a0 + 0x1BA) = y;
v = ((Unkstruct_80126B58 *)a0)->unkC0 - 0x800;
((Unkstruct_80126B58 *)a0)->unkC0 = v;
if (v < 0) { ((Unkstruct_80126B58 *)a0)->unkC0 = 0; }
x = ((Unkstruct_80126B58 *)a0)->unk1B8 - 0x800;
y = ((Unkstruct_80126B58 *)a0)->unk1BA - 0x800;
((Unkstruct_80126B58 *)a0)->unk1B8 = x;
((Unkstruct_80126B58 *)a0)->unk1BA = y;
break;
}
}
+1 -1
View File
@@ -57,7 +57,7 @@ void func_800CAF4C(void) {
void func_800CAF54(void *a0) {
extern void (*D_800CB5DC[])(void);
D_800CB5DC[*(u16 *)((s32)a0 + 0x2)]();
D_800CB5DC[((Unkstruct_80126B58 *)a0)->unk2]();
}
+16 -16
View File
@@ -29,7 +29,7 @@ extern void func_80154A74(s32 a0, s32 a1);
void func_800CAEC0(u8 *a0) {
func_80154274((s32 *)a0, (s32)D_800CBAC0);
func_80154A74((s32)a0, 0x15);
*(u8 *)(a0 + 0x197) += 1;
((Unkstruct_80126B58 *)a0)->unk197 += 1;
}
@@ -41,13 +41,13 @@ extern s32 D_800CBAE0[];
void func_800CAF0C(s32 *a0) {
if (func_80161208() == 0) {
if (*(u16 *)((u8 *)a0 + 0xB8) == 0x8000) {
if (((Unkstruct_80126B58 *)a0)->unkB8 == 0x8000) {
if (func_801487F4(a0) & 0x20) {
func_80154274(a0, (s32)D_800CBB00);
*(u8 *)((s32)a0 + 0x197) += 1;
((Unkstruct_80126B58 *)a0)->unk197 += 1;
} else {
func_80154274(a0, (s32)D_800CBAE0);
*(u8 *)((s32)a0 + 0x197) += 2;
((Unkstruct_80126B58 *)a0)->unk197 += 2;
}
}
}
@@ -75,13 +75,13 @@ void func_800CAF9C(s32 a0) {
u8 v1;
s16 value;
p = *(s32 *)(a0 + 0x20);
*(u32 *)(a0 + 0x44) |= 2;
p = ((Unkstruct_80126B58 *)a0)->unk20;
((Unkstruct_80126B58 *)a0)->unk44 |= 2;
if (func_80161208() != 0) {
return;
}
v1 = *(u8 *)(a0 + 0xA9);
v1 = ((Unkstruct_80126B58 *)a0)->unkA9;
switch (v1) {
case 0x41:
value = func_80148E54((void *)a0);
@@ -95,7 +95,7 @@ void func_800CAF9C(s32 a0) {
break;
}
if (*(u16 *)(a0 + 0xB8) & 0x4000) {
if (((Unkstruct_80126B58 *)a0)->unkB8 & 0x4000) {
func_801466F0(2, a0, 0, -0x18, -0xF, 0, 0, 1);
func_80146A6C(0xF, (void *)a0, 0, -0x18, -0xF, 0, 0);
func_80147324(0x476);
@@ -103,12 +103,12 @@ void func_800CAF9C(s32 a0) {
func_80019064(&D_80062BD0);
}
if (*(u16 *)(a0 + 0xB8) & 0x8000) {
if (((Unkstruct_80126B58 *)a0)->unkB8 & 0x8000) {
if (func_80165624(a0) == 0 && (func_801487F4((s32 *)a0) & 0x20)) {
func_80154274((s32 *)a0, (s32)D_800CBB00);
} else {
func_80154274((s32 *)a0, (s32)D_800CBAE0);
*(u8 *)(a0 + 0x197) += 1;
((Unkstruct_80126B58 *)a0)->unk197 += 1;
}
}
}
@@ -119,7 +119,7 @@ extern void func_801599A4(void *a0);
extern void func_80159B3C(void *a0);
void func_800CB140(s32 *a0) {
if (func_80161208() == 0) {
if (*(u16 *)((u8 *)a0 + 0xB8) == 0x8000) {
if (((Unkstruct_80126B58 *)a0)->unkB8 == 0x8000) {
func_801599A4(a0);
func_80159B3C(a0);
}
@@ -130,7 +130,7 @@ void func_800CB140(s32 *a0) {
extern void func_80154A74(s32 a0, s32 a1);
s32 func_800CB190(s32 a0)
{
*(u32 *)(a0 + 0x44) = *(u32 *)(a0 + 0x44) & ~2;
((Unkstruct_80126B58 *)a0)->unk44 = ((Unkstruct_80126B58 *)a0)->unk44 & ~2;
func_80154A74(a0, 0x11);
}
@@ -167,14 +167,14 @@ void func_800CB21C(s32 a0) {
iVar1 = *(s32 *)(a0 + 0x4C);
iVar2 = ((s32 (*)(void))func_8014659C)();
*(s32 *)(a0 + 0x20) = iVar2;
((Unkstruct_80126B58 *)a0)->unk20 = iVar2;
if (iVar2 != 0) {
func_8001C2C4(iVar2);
*(u32 *)(iVar2 + 4) |= 0x80000000;
func_80149374(iVar1, a0 + 4);
*(u16 *)(iVar2 + 0x10) = *(u16 *)(iVar1 + 0x100);
*(u16 *)(iVar2 + 0x14) = *(u16 *)(iVar1 + 0x104);
*(u16 *)(iVar2 + 0x12) = *(u16 *)(*(s32 *)(iVar1 + 0x20) + 0x12);
*(u16 *)(iVar2 + 0x10) = ((Unkstruct_80126B58 *)iVar1)->unk100;
*(u16 *)(iVar2 + 0x14) = ((Unkstruct_80126B58 *)iVar1)->unk104;
*(u16 *)(iVar2 + 0x12) = *(u16 *)(((Unkstruct_80126B58 *)iVar1)->unk20 + 0x12);
func_80146DE8((s32 *)a0, 0, 0, (s32)0xFFC00000);
func_80146E90((s32 *)a0, 0x10);
func_80146CA0((void *)a0);
+1 -1
View File
@@ -111,7 +111,7 @@ void func_800CAFA0(void *a0) {
void func_800CB190(void *a0) {
extern void (*D_800CB350[])(void);
D_800CB350[*(u16 *)((s32)a0 + 0x2)]();
D_800CB350[((Unkstruct_80126B58 *)a0)->unk2]();
}
+3 -3
View File
@@ -38,7 +38,7 @@ void func_800CAEB4(void *a0) {
extern void func_800CAF30(u8 *a0);
void func_800CAEF8(void *a0) {
func_800CAF30(a0);
*(u8 *)((s32)a0 + 0x197) += 1;
((Unkstruct_80126B58 *)a0)->unk197 += 1;
}
@@ -51,7 +51,7 @@ void func_800CAF30(u8 *a0) {
func_801655E4((s32)a0);
}
func_800CAFB4(a0);
*(u8 *)(a0 + 0x197) = *(u8 *)(a0 + 0x197) + 1;
((Unkstruct_80126B58 *)a0)->unk197 = ((Unkstruct_80126B58 *)a0)->unk197 + 1;
}
@@ -309,6 +309,6 @@ void func_800CB328(void *a0) {
void func_800CB5AC(void *a0) {
extern void (*D_800CB614[])(void);
D_800CB614[*(u16 *)((s32)a0 + 0x2)]();
D_800CB614[((Unkstruct_80126B58 *)a0)->unk2]();
}
+38 -38
View File
@@ -30,7 +30,7 @@ extern void func_801655E4(void *a0);
void func_800CAEC0(u8 *a0) {
func_80154274(a0, D_800CC01C);
func_801655E4(a0);
*(u8 *)(a0 + 0x197) = *(u8 *)(a0 + 0x197) + 1;
((Unkstruct_80126B58 *)a0)->unk197 = ((Unkstruct_80126B58 *)a0)->unk197 + 1;
}
@@ -49,13 +49,13 @@ void func_800CAF08(u8 *arg0) {
func_800CB170((s32)arg0);
return;
}
if (*(u16 *)(arg0 + 0xB8) != 0x8000) {
if (((Unkstruct_80126B58 *)arg0)->unkB8 != 0x8000) {
return;
}
func_80147324(0x479);
func_80154274(arg0, D_800CC0D8);
*(u8 *)(arg0 + 0xBE) = 0x10;
*(u8 *)(arg0 + 0x197) = *(u8 *)(arg0 + 0x197) + 1;
((Unkstruct_80126B58 *)arg0)->unkBE = 0x10;
((Unkstruct_80126B58 *)arg0)->unk197 = ((Unkstruct_80126B58 *)arg0)->unk197 + 1;
p = (u16 *)&D_8011F9D0;
if (p < (u16 *)((s32)&D_8011F9D0 + 0x820)) {
do {
@@ -86,20 +86,20 @@ void func_800CB0C8(void *a0) {
s32 v0;
s32 p;
p = *(s32 *)((s32)a0 + 0x20);
p = ((Unkstruct_80126B58 *)a0)->unk20;
*(u16 *)(p + 0x2C) |= 0x20;
p = *(s32 *)((s32)a0 + 0x20);
p = ((Unkstruct_80126B58 *)a0)->unk20;
*(s32 *)(p + 0x80) = (s32)&D_800CC580;
func_800CB1A0();
*(u32 *)((s32)a0 + 0x44) |= 2;
((Unkstruct_80126B58 *)a0)->unk44 |= 2;
v0 = func_80161208((s32)a0);
if (v0 != 0) {
func_800CB170((s32)a0);
return;
}
p = *(u8 *)((s32)a0 + 0xBE);
p = ((Unkstruct_80126B58 *)a0)->unkBE;
v0 = p + 0xFF;
*(u8 *)((s32)a0 + 0xBE) = v0;
((Unkstruct_80126B58 *)a0)->unkBE = v0;
if (p == 0) {
func_800CB170((s32)a0);
func_80165A78((s32)a0);
@@ -111,7 +111,7 @@ void func_800CB0C8(void *a0) {
extern void func_80154A74(s32 a0, s32 a1);
s32 func_800CB170(s32 a0)
{
*(u32 *)(a0 + 0x44) = *(u32 *)(a0 + 0x44) & ~2;
((Unkstruct_80126B58 *)a0)->unk44 = ((Unkstruct_80126B58 *)a0)->unk44 & ~2;
func_80154A74(a0, 0x11);
}
@@ -198,11 +198,11 @@ void func_800CB324(s32 a0) {
iVar2 = *(s32 *)(a0 + 0x4C);
iVar1 = ((s32 (*)(void))func_8014659C)();
*(s32 *)(a0 + 0x20) = iVar1;
((Unkstruct_80126B58 *)a0)->unk20 = iVar1;
if (iVar1 != 0) {
func_8001C2C4(iVar1);
*(u32 *)(iVar1 + 4) |= 0x80000000;
iVar4 = *(s32 *)(iVar2 + 0x20);
iVar4 = ((Unkstruct_80126B58 *)iVar2)->unk20;
*(Blk16 *)(iVar1 + 0x34) = *(Blk16 *)(iVar4 + 0x34);
*(Blk16 *)(iVar1 + 0x44) = *(Blk16 *)(iVar4 + 0x44);
func_800CB4C8((void *)a0);
@@ -226,15 +226,15 @@ extern void func_800CBC0C(void *a0);
void func_800CB3FC(void *arg0)
{
RView view; /* unused: reserves the extra 0x20 frame bytes the target has */
*(u16 *)((s32)arg0 + 0x14) -= 6;
CAST_WIDTH(u16, (s32)arg0, 0x14) -= 6;
func_800CB578(arg0);
if (func_80146E98((s32)arg0) != 0) {
func_80015954((s32)arg0 + 0x10, (s32)arg0 + 4);
func_80149374((s32)arg0, (s32)arg0 + 4);
func_80146A6C(3, arg0,
*(s16 *)((s32)arg0 + 6),
*(s16 *)((s32)arg0 + 0xA),
*(s16 *)((s32)arg0 + 0xE),
((Unkstruct_80126B58 *)arg0)->unk6,
((Unkstruct_80126B58 *)arg0)->unkA,
((Unkstruct_80126B58 *)arg0)->unkE,
0,
0x80001C00);
func_80146CA0(arg0);
@@ -328,9 +328,9 @@ void func_800CB578(void *arg0) {
u8 *p;
s32 i;
obj = *(s32 *)((u8 *)arg0 + 0x20);
obj = ((Unkstruct_80126B58 *)arg0)->unk20;
func_80013F3C(&mat);
RotMatrixZ(*(s16 *)((u8 *)arg0 + 0x64), &mat);
RotMatrixZ(CAST_SIGN(s16, (u8 *)arg0, 0x64), &mat);
gte_SetRotMatrix(obj + 0x34);
gte_rt((s32)&mat);
gte_rt((s32)&mat + 2);
@@ -338,25 +338,25 @@ void func_800CB578(void *arg0) {
mat.t[0] = *(s32 *)(obj + 0x48);
mat.t[1] = *(s32 *)(obj + 0x4C);
mat.t[2] = *(s32 *)(obj + 0x50);
*(u16 *)((u8 *)arg0 + 0x64) = (*(u16 *)((u8 *)arg0 + 0x64) + 0x71) & 0xFFF;
*(B8_CB578 *)pos = *(B8_CB578 *)((u8 *)arg0 + 0x10);
((Unkstruct_80126B58 *)arg0)->unk64 = (((Unkstruct_80126B58 *)arg0)->unk64 + 0x71) & 0xFFF;
*(B8_CB578 *)pos = CAST_WIDTH(B8_CB578, (u8 *)arg0, 0x10);
sn = func_8004787C(*(s16 *)((u8 *)arg0 + 0x62)) / 128;
t = func_80047948(*(s16 *)((u8 *)arg0 + 0x60));
sn = func_8004787C(CAST_SIGN(s16, (u8 *)arg0, 0x62)) / 128;
t = func_80047948(CAST_SIGN(s16, (u8 *)arg0, 0x60));
pos[0] += (sn * t) / 4096;
t = func_8004787C(*(s16 *)((u8 *)arg0 + 0x60));
t = func_8004787C(CAST_SIGN(s16, (u8 *)arg0, 0x60));
pos[1] += (sn * t) / 4096;
*(u16 *)((u8 *)arg0 + 0x60) = (*(u16 *)((u8 *)arg0 + 0x60) + 0xE3) & 0xFFF;
*(u16 *)((u8 *)arg0 + 0x62) = (*(u16 *)((u8 *)arg0 + 0x62) + 0x38) & 0xFFF;
((Unkstruct_80126B58 *)arg0)->unk60 = (((Unkstruct_80126B58 *)arg0)->unk60 + 0xE3) & 0xFFF;
((Unkstruct_80126B58 *)arg0)->unk62 = (((Unkstruct_80126B58 *)arg0)->unk62 + 0x38) & 0xFFF;
p = D_800CC5B0 + *(s32 *)((u8 *)arg0 + 0x50) * 160;
clr[0] = *(B4_CB578 *)(D_800CC114 + *(s32 *)((u8 *)arg0 + 0x50) * 4);
clr[1] = *(B4_CB578 *)(D_800CC114 + *(s32 *)((u8 *)arg0 + 0x50) * 4);
p = D_800CC5B0 + ((Unkstruct_80126B58 *)arg0)->unk50 * 160;
clr[0] = *(B4_CB578 *)(D_800CC114 + ((Unkstruct_80126B58 *)arg0)->unk50 * 4);
clr[1] = *(B4_CB578 *)(D_800CC114 + ((Unkstruct_80126B58 *)arg0)->unk50 * 4);
sv[0] = sv[1] = sv[2] = 0x1000;
func_800CB9F8(pos, (u16 *)p, (s32 *)&mat, (s32 *)clr, (s32)sv);
p = D_800CC5B0 + *(s32 *)((u8 *)arg0 + 0x50) * 160;
p = D_800CC5B0 + ((Unkstruct_80126B58 *)arg0)->unk50 * 160;
i = 0;
do {
clr[0] = clr[1];
@@ -369,7 +369,7 @@ void func_800CB578(void *arg0) {
i += 2;
} while (i < 0x12);
p = D_800CC638 + *(s32 *)((u8 *)arg0 + 0x50) * 160;
p = D_800CC638 + ((Unkstruct_80126B58 *)arg0)->unk50 * 160;
clr[0] = clr[1];
clr[1].b[0] = func_800130D0(clr[1].b[0], 0, 0xA);
clr[1].b[1] = func_800130D0(clr[1].b[1], 0, 0xA);
@@ -378,7 +378,7 @@ void func_800CB578(void *arg0) {
func_800CB9F8((u16 *)p, (u16 *)(p + 0x10), (s32 *)&mat, (s32 *)clr, (s32)sv);
i = 0;
p = &D_800CC638[0x10] + *(s32 *)((u8 *)arg0 + 0x50) * 160;
p = &D_800CC638[0x10] + ((Unkstruct_80126B58 *)arg0)->unk50 * 160;
do {
*(B8_CB578 *)p = *(B8_CB578 *)(p - 8);
i += 1;
@@ -488,7 +488,7 @@ void func_800CBC0C(void *a0) {
r04 = (u8 *)a0 + 4;
func_80015978((s32)r04, (s32 *)buf18);
func_80015954((s32)a0 + 0x10, (s32)r04);
*(s16 *)((s32)a0 + 0xA) = 0;
((Unkstruct_80126B58 *)a0)->unkA = 0;
func_80149374((s32)a0, (s32)r04);
p = D_801202A0;
if (p < p + 0x6480) {
@@ -545,7 +545,7 @@ void func_800CBD68(s32 a0) {
iVar1 = *(s32 *)(a0 + 0x4C);
iVar2 = ((s32 (*)(void))func_80146578)();
ptr = &D_800CC830;
*(s32 *)(a0 + 0x20) = iVar2;
((Unkstruct_80126B58 *)a0)->unk20 = iVar2;
if (iVar2 != 0) {
func_8001CD9C(iVar2, (s32)ptr);
func_800233CC(ptr, 0x60);
@@ -572,13 +572,13 @@ void func_800CBE38(u8 *arg0)
s16 w;
s32 s2;
s2 = *(s32 *)((u8 *)arg0 + 0x20);
s2 = ((Unkstruct_80126B58 *)arg0)->unk20;
func_800CBF80(arg0);
w = *(u16 *)(s2 + 0x18) - 0x600;
if (w < 0x1000) {
w = 0x1000;
func_80146E90((s32 *)arg0, 0x10);
*(u16 *)(arg0 + 0x60) = w;
((Unkstruct_80126B58 *)arg0)->unk60 = w;
func_80146CA0(arg0);
}
*(u16 *)(s2 + 0x1A) = w;
@@ -597,14 +597,14 @@ void func_800CBEC0(u8 *arg0)
s32 w;
s16 r;
s1 = *(s32 *)((u8 *)arg0 + 0x20);
s1 = ((Unkstruct_80126B58 *)arg0)->unk20;
if (func_80146E98((s32)arg0) != 0) {
func_800CBF60(arg0);
return;
}
func_800CBF80(arg0);
w = *(u16 *)(arg0 + 0x60) - 0x100;
*(u16 *)(arg0 + 0x60) = w;
w = ((Unkstruct_80126B58 *)arg0)->unk60 - 0x100;
CAST_ALIAS(u16, arg0, 0x60) = w;
if (D_800B99DA & 1) {
r = (s16)w / 2;
} else {
+4 -4
View File
@@ -38,7 +38,7 @@ void func_800CAEB0(void *a0) {
func_801655E4((s32)a0);
}
func_8016629C(a0);
*(u8 *)((s32)a0 + 0x197) += 1;
((Unkstruct_80126B58 *)a0)->unk197 += 1;
}
@@ -73,7 +73,7 @@ void func_800CAF6C(s32 *a0) {
void func_800CAFA0(void *a0) {
extern void (*D_800CB26C[])(void);
D_800CB26C[*(u16 *)((s32)a0 + 0x2)]();
D_800CB26C[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -118,7 +118,7 @@ void func_800CB034(void *a0) {
func_80159B3C((void *)s0);
return;
}
if (*(u16 *)((s32)s0 + 0xB8) & 0x8000) {
if (((Unkstruct_80126B58 *)s0)->unkB8 & 0x8000) {
func_80154274((s32 *)s0, (s32)&D_800CB234);
}
if (func_80148AFC((void *)s0) & 0xFF) {
@@ -133,7 +133,7 @@ void func_800CB034(void *a0) {
if (((s32 (*)(void *))func_8016151C)((void *)s0) == 0) {
return;
}
*(u16 *)((s32)s0 + 0xA) = *(u16 *)((s32)s0 + 0xA) + 8;
((Unkstruct_80126B58 *)s0)->unkA = CAST_SIGN(u16, (s32)s0, 0xA) + 8;
func_801615C4((void *)s0, 0);
func_800CB17C((struct S *)s0);
}
+1 -1
View File
@@ -204,7 +204,7 @@ void func_800CB0C8(s32 arg0) {
void func_800CB33C(void *a0) {
extern void (*D_800CB508[])(void);
D_800CB508[*(u16 *)((s32)a0 + 0x2)]();
D_800CB508[((Unkstruct_80126B58 *)a0)->unk2]();
}
+19 -19
View File
@@ -25,7 +25,7 @@ extern void func_800CAEB0(void *a0);
extern void func_801655E4(s32 a0);
void func_800CAEB0(void *a0) {
func_801655E4(a0);
*(u8 *)((s32)a0 + 0x197) += 1;
((Unkstruct_80126B58 *)a0)->unk197 += 1;
}
@@ -68,7 +68,7 @@ void func_800CAF78(s32 *a0) {
void func_800CAFAC(void *a0) {
extern void (*D_800CBC9C[])(void);
D_800CBC9C[*(u16 *)((s32)a0 + 0x2)]();
D_800CBC9C[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -140,7 +140,7 @@ void func_800CB10C(void *a0) {
void func_800CB184(void *a0) {
extern void func_80146E90(s32 *a0, s32 a1);
func_80146E90((s32 *)a0, *(s32 *)((s32)a0 + 0x50) << 2);
func_80146E90((s32 *)a0, ((Unkstruct_80126B58 *)a0)->unk50 << 2);
func_80146CA0((s32)a0);
}
@@ -170,7 +170,7 @@ void func_800CB1BC(void *a0)
if (func_80146E98((s32)a0) != 0) {
s2 = ((void *(*)(void))func_80146578)();
*(void **)((u8 *)a0 + 0x20) = s2;
CAST_SIGN(void *, (u8 *)a0, 0x20) = s2;
if (s2 != NULL) {
s0 = &D_800CBD68;
@@ -182,13 +182,13 @@ void func_800CB1BC(void *a0)
*(s16 *)((u8 *)s2 + 0x18) = 0;
*(s32 *)((u8 *)s2 + 4) = vtemp | 0x50000000;
*(s16 *)((u8 *)a0 + 0x62) = 0x1000;
*(s16 *)((u8 *)a0 + 0x60) = 0;
((Unkstruct_80126B58 *)a0)->unk62 = 0x1000;
((Unkstruct_80126B58 *)a0)->unk60 = 0;
*(s16 *)((u8 *)s2 + 0x14) = -0x155;
v0 = *(s32 *)((u8 *)a0 + 0x54);
v0 = ((Unkstruct_80126B58 *)a0)->unk54;
*(s16 *)((u8 *)s2 + 0x12) =
v0 * 1365 + *(s32 *)((u8 *)a0 + 0x50) * 11;
v0 * 1365 + ((Unkstruct_80126B58 *)a0)->unk50 * 11;
*(u8 *)s0 = 0xF0;
D_800CBD69 = 0xF0;
@@ -213,8 +213,8 @@ void func_800CB2F4(void *a0) {
void *a1;
s16 v0;
a1 = *(void **)((s32)a0 + 0x20);
*(u16 *)((s32)a0 + 0x60) += 0x60;
a1 = CAST_SIGN(void *, (s32)a0, 0x20);
((Unkstruct_80126B58 *)a0)->unk60 += 0x60;
v0 = *(u16 *)((s32)a1 + 0x1A) + 0x200;
*(u16 *)((s32)a1 + 0x1A) = v0;
*(u16 *)((s32)a1 + 0x18) = v0;
@@ -233,16 +233,16 @@ void func_800CB354(void *a0) {
void *v1;
s16 v0;
v1 = *(void **)((s32)a0 + 0x20);
v0 = *(u16 *)((s32)a0 + 0x62) - 0x40;
*(u16 *)((s32)a0 + 0x62) = v0;
v1 = CAST_SIGN(void *, (s32)a0, 0x20);
v0 = ((Unkstruct_80126B58 *)a0)->unk62 - 0x40;
((Unkstruct_80126B58 *)a0)->unk62 = v0;
if (v0 < 0) {
func_80146CA0((s32)a0);
return;
}
*(u16 *)((s32)v1 + 0x12) = (*(u16 *)((s32)v1 + 0x12) - 0x71) & 0xFFF;
func_80146A6C(0x3E, a0, *(s16 *)((s32)a0 + 0x6), *(s16 *)((s32)a0 + 0xA),
*(s16 *)((s32)a0 + 0xE), 0, 0);
func_80146A6C(0x3E, a0, ((Unkstruct_80126B58 *)a0)->unk6, ((Unkstruct_80126B58 *)a0)->unkA,
((Unkstruct_80126B58 *)a0)->unkE, 0, 0);
}
@@ -337,12 +337,12 @@ void func_800CB550(void *a0) {
base = &D_800CBCCC;
ptr = func_800D2294((s32)a0, (s32)base);
*(void **)((s32)a0 + 0x20) = ptr;
CAST_SIGN(void *, (s32)a0, 0x20) = ptr;
if (ptr != NULL) {
func_800233CC(base, 0x20);
*(s32 *)((s32)ptr + 4) |= 0x50000000;
func_80146E90((s32 *)a0, 8);
*(u16 *)((s32)a0 + 2) = *(u16 *)((s32)a0 + 2) + 1;
((Unkstruct_80126B58 *)a0)->unk2 = ((Unkstruct_80126B58 *)a0)->unk2 + 1;
} else {
((void (*)(void *))func_80146C3C)(a0);
}
@@ -356,8 +356,8 @@ void func_800CB5E4(void *a0) {
s32 v0;
s32 v1;
v0 = *(s32 *)((s32)a0 + 0x1C) << 9;
v1 = *(s32 *)((s32)a0 + 0x20);
v0 = ((Unkstruct_80126B58 *)a0)->unk1C << 9;
v1 = ((Unkstruct_80126B58 *)a0)->unk20;
*(u16 *)(v1 + 0x1A) = v0;
*(u16 *)(v1 + 0x18) = v0;
if (func_80146E98((s32)a0) != 0) {
+25 -25
View File
@@ -26,7 +26,7 @@ void func_800CAE5C(void *a0) {
extern void func_800CAED8(u8 *a0);
void func_800CAEA0(void *a0) {
func_800CAED8(a0);
*(u8 *)((s32)a0 + 0x197) += 1;
((Unkstruct_80126B58 *)a0)->unk197 += 1;
}
@@ -34,18 +34,18 @@ extern u8 D_800CBD2C[];
void func_800CAED8(u8 *a0) {
func_80154274(a0, D_800CBD2C);
func_800CBB70(a0);
*(u8 *)(a0 + 0xBF) = 0;
*(u8 *)(a0 + 0xBE) = 0;
((Unkstruct_80126B58 *)a0)->unkBF = 0;
((Unkstruct_80126B58 *)a0)->unkBE = 0;
func_801655E4(a0);
func_80146E90(a0, 0x12);
*(u8 *)(a0 + 0x197) += 1;
((Unkstruct_80126B58 *)a0)->unk197 += 1;
}
void func_800CAF3C(void *a0) {
extern s32 func_80146E98(s32 a0);
if (func_80146E98((s32)a0) != 0) {
*(u8 *)((s32)a0 + 0x197) += 1;
((Unkstruct_80126B58 *)a0)->unk197 += 1;
}
}
@@ -61,20 +61,20 @@ void func_800CAF7C(s32 *param_1)
if (func_80148800(param_1) & 0x20) {
func_800CB028((s32)param_1);
} else {
v1 = *(u8 *)((s32)param_1 + 0xBF);
v1 = ((Unkstruct_80126B58 *)param_1)->unkBF;
switch (v1) {
case 0:
v0 = *(u8 *)((s32)param_1 + 0xBE) + 4;
*(u8 *)((s32)param_1 + 0xBE) = v0;
v0 = ((Unkstruct_80126B58 *)param_1)->unkBE + 4;
((Unkstruct_80126B58 *)param_1)->unkBE = v0;
if ((v0 & 0xFF) >= 0x50) {
*(u8 *)((s32)param_1 + 0xBF) = *(u8 *)((s32)param_1 + 0xBF) + 1;
((Unkstruct_80126B58 *)param_1)->unkBF = ((Unkstruct_80126B58 *)param_1)->unkBF + 1;
}
break;
case 1:
if (*(u8 *)((s32)param_1 + 0xBE) == 0) {
if (((Unkstruct_80126B58 *)param_1)->unkBE == 0) {
func_800CB028((s32)param_1);
} else {
*(u8 *)((s32)param_1 + 0xBE) -= 4;
((Unkstruct_80126B58 *)param_1)->unkBE -= 4;
}
break;
}
@@ -85,9 +85,9 @@ void func_800CAF7C(s32 *param_1)
extern void func_800CBBA0(s32 param_1);
void func_800CB028(s32 param_1) {
*(u16 *)(param_1 + 0xB8) = *(u16 *)(param_1 + 0xBA);
((Unkstruct_80126B58 *)param_1)->unkB8 = ((Unkstruct_80126B58 *)param_1)->unkBA;
func_800CBBA0(param_1);
*(u8 *)(param_1 + 0x197) += 1;
((Unkstruct_80126B58 *)param_1)->unk197 += 1;
}
@@ -127,7 +127,7 @@ void func_800CB0E4(void *a0) {
extern void func_801599A4(u8 *a0);
extern void func_80159B3C(void *a0);
void func_800CB138(u8 *a0) {
if (*(u16 *)(a0 + 0xB8) & 0x8000) {
if (((Unkstruct_80126B58 *)a0)->unkB8 & 0x8000) {
func_801599A4(a0);
func_80159B3C(a0);
}
@@ -189,13 +189,13 @@ void func_800CB23C(void *a0) {
s1 = *(s32 *)((s32)a0 + 0x4C);
v0 = ((s32 (*)(void))func_8014659C)();
*(s32 *)((s32)a0 + 0x20) = v0;
((Unkstruct_80126B58 *)a0)->unk20 = v0;
if (v0 != 0) {
func_8001CA1C((void *)v0, D_800CBE98);
func_80149374(s1, (s32)a0 + 4);
*(u16 *)(*(s32 *)((s32)a0 + 0x20) + 0x10) = *(u16 *)(s1 + 0x100);
*(u16 *)(*(s32 *)((s32)a0 + 0x20) + 0x14) = *(u16 *)(s1 + 0x104);
*(u16 *)(*(s32 *)((s32)a0 + 0x20) + 0x12) = *(u16 *)(*(s32 *)(s1 + 0x20) + 0x12);
*(u16 *)(((Unkstruct_80126B58 *)a0)->unk20 + 0x10) = ((Unkstruct_80126B58 *)s1)->unk100;
*(u16 *)(((Unkstruct_80126B58 *)a0)->unk20 + 0x14) = ((Unkstruct_80126B58 *)s1)->unk104;
*(u16 *)(((Unkstruct_80126B58 *)a0)->unk20 + 0x12) = *(u16 *)(((Unkstruct_80126B58 *)s1)->unk20 + 0x12);
func_80146DE8((s32 *)a0, 0, 0x80000, 0xFFF00000);
func_80146E90((s32 *)a0, 0x60);
func_800CB758(a0);
@@ -359,12 +359,12 @@ void func_800CB708(void *a0) {
func_80162CCC(a0);
return;
}
*(u16 *)((s32)a0 + 0xA) += 2;
CAST_SIGN(u16, (s32)a0, 0xA) += 2;
}
void func_800CB758(void *a0) {
*(u16 *)((s32)a0 + 0x60) = 0;
((Unkstruct_80126B58 *)a0)->unk60 = 0;
}
@@ -471,8 +471,8 @@ void func_800CB968(void *a0) {
void *s2;
s32 v0;
s2 = *(void **)((s32)a0 + 0x20);
s0 = *(void **)((s32)a0 + 0x10);
s2 = CAST_SIGN(void *, (s32)a0, 0x20);
s0 = CAST_SIGN(void *, (s32)a0, 0x10);
v0 = func_80146E98((s32)a0);
if (v0 != 0) {
if (s0 != 0) {
@@ -513,8 +513,8 @@ void func_800CBA60(void *a0) {
void *s2;
void *s0;
s2 = *(void **)((s32)a0 + 0x20);
s0 = *(void **)((s32)a0 + 0x10);
s2 = CAST_SIGN(void *, (s32)a0, 0x20);
s0 = CAST_SIGN(void *, (s32)a0, 0x10);
if (func_80146E98((s32)a0) != 0) {
if (s0 != 0) {
func_8001CB00((s32)s0, D_800CBF20, 0x1A0, 0x170);
@@ -533,7 +533,7 @@ void func_800CBAF4(void *a0)
extern s32 func_80146E98(s32 a0);
extern void func_800CBBF8();
s0 = *(s32 *)((s32)a0 + 0x10);
s0 = ((Unkstruct_80126B58 *)a0)->unk10;
if (func_80146E98((s32)a0) != 0) {
func_800CBBF8();
} else if (s0 != 0) {
+26 -26
View File
@@ -148,7 +148,7 @@ void func_800CB190(void *arg0) {
s32 tmp;
func_800CB5F4(arg0);
if (*(s32 *)((u8 *)arg0 + 0x50) == 0) {
if (((Unkstruct_80126B58 *)arg0)->unk50 == 0) {
color = (rand() & 0xF) << 8;
func_801466F0(0xC, arg0, 0, 0, 0, color, 0, 0);
tmp = color + 0x555;
@@ -192,17 +192,17 @@ void func_800CB278(s32 param_1)
if (((s32 (*)(void))func_80146E98)() == 0) {
return;
}
*(s32 *)(param_1 + 0x20) = (iVar1 = ((s32 (*)(void))func_80146578)());
((Unkstruct_80126B58 *)param_1)->unk20 = (iVar1 = ((s32 (*)(void))func_80146578)());
ivar3 = iVar1;
if (iVar1 != 0) {
func_8001CD9C(iVar1, (void *)base);
func_800233CC((void *)base, 0x80);
*(s16 *)(iVar1 + 0x18) = 0;
*(s16 *)(iVar1 + 0x1a) = 0;
*(s16 *)(param_1 + 0x60) = 0;
CAST_ALIAS(s16, param_1, 0x60) = 0;
D_800CBBDB = 0;
D_800CBBDF = 0;
if (*(s32 *)(param_1 + 0x50) == 0) {
if (CAST_ALIAS(s32, param_1, 0x50) == 0) {
*(u8 *)base = 0xFF;
do { D_800CBBD9 = 0xFF; } while (0);
D_800CBBDA = 0xFF;
@@ -235,20 +235,20 @@ void func_800CB3C0(void *arg0) {
s16 w;
void *v1;
s0 = *(void **)((u8 *)arg0 + 0x20);
s0 = CAST_SIGN(void *, (u8 *)arg0, 0x20);
func_800CB5F4(arg0);
if (*(s32 *)((u8 *)arg0 + 0x50) != 0) {
if (((Unkstruct_80126B58 *)arg0)->unk50 != 0) {
*(u16 *)((u8 *)s0 + 0x1e) += 0x100;
}
*(u16 *)((u8 *)arg0 + 0x60) += 0x40;
w = *(u16 *)((u8 *)s0 + 0x1a) + *(u16 *)((u8 *)arg0 + 0x60);
((Unkstruct_80126B58 *)arg0)->unk60 += 0x40;
w = *(u16 *)((u8 *)s0 + 0x1a) + ((Unkstruct_80126B58 *)arg0)->unk60;
*(u16 *)((u8 *)s0 + 0x1a) = w;
*(u16 *)((u8 *)s0 + 0x18) = w;
if ((s16)w >= 0x1001) {
*(u16 *)((u8 *)s0 + 0x1a) = 0x1000;
*(u16 *)((u8 *)s0 + 0x18) = 0x1000;
v1 = *(void **)((u8 *)arg0 + 0x4c);
*(u8 *)((u8 *)v1 + 0xbe) = 1;
((Unkstruct_80126B58 *)v1)->unkBE = 1;
func_80146CA0(arg0);
}
}
@@ -269,7 +269,7 @@ void func_800CB470(void *arg0) {
void *s1;
s16 w;
s1 = *(void **)((u8 *)arg0 + 0x20);
s1 = CAST_SIGN(void *, (u8 *)arg0, 0x20);
func_800CB5F4(arg0);
base = (s32)&D_800CBBD8;
*(u8 *)base = func_80012F74(*(u8 *)base, 0, 10, 1);
@@ -278,7 +278,7 @@ void func_800CB470(void *arg0) {
D_800CBBDC = func_80012F74(D_800CBBDC, 0, 10, 1);
D_800CBBDD = func_80012F74(D_800CBBDD, 0, 10, 1);
D_800CBBDE = func_80012F74(D_800CBBDE, 0, 10, 1);
if (*(s32 *)((u8 *)arg0 + 0x50) != 0) {
if (CAST_ALIAS(s32, (u8 *)arg0, 0x50) != 0) {
w = *(u16 *)((u8 *)s1 + 0x1e) + 0x20;
*(u16 *)((u8 *)s1 + 0x1e) = w;
if ((s16)w >= 0x1001) {
@@ -327,18 +327,18 @@ void func_800CB688(void *a0) {
s32 v1 = -0x100;
*(u16 *)((s32)a0 + 0x12) = v1;
*(u16 *)((s32)a0 + 0x16) = v1;
v1 = *(s32 *)((s32)a0 + 0x50);
*(u16 *)((s32)a0 + 0x14) = 8;
*(u16 *)((s32)a0 + 0x10) = 0;
*(u8 *)((s32)a0 + 0x58) = 0xFF;
v1 = ((Unkstruct_80126B58 *)a0)->unk50;
CAST_WIDTH(u16, (s32)a0, 0x14) = 8;
CAST_WIDTH(u16, (s32)a0, 0x10) = 0;
CAST_WIDTH(u8, (s32)a0, 0x58) = 0xFF;
*(u8 *)((s32)a0 + 0x59) = 0xFF;
*(u8 *)((s32)a0 + 0x5A) = 0xFF;
*(u8 *)((s32)a0 + 0x5B) = 0;
*(u8 *)((s32)a0 + 0x5C) = 0;
CAST_WIDTH(u8, (s32)a0, 0x5C) = 0;
*(u8 *)((s32)a0 + 0x5D) = 0;
*(u8 *)((s32)a0 + 0x5E) = 0xFF;
*(u8 *)((s32)a0 + 0x5F) = 0;
*(u16 *)((s32)a0 + 0x18) = v1;
CAST_WIDTH(u16, (s32)a0, 0x18) = v1;
func_80146CA0(a0);
}
@@ -357,8 +357,8 @@ void func_800CB6E8(void *arg0) {
*(s16 *)((u8 *)arg0 + 0x12) = -8;
func_80146CA0(arg0);
}
w = *(u16 *)((u8 *)arg0 + 0x18) + 0xB;
*(u16 *)((u8 *)arg0 + 0x18) = w;
w = CAST_WIDTH(u16, (u8 *)arg0, 0x18) + 0xB;
CAST_WIDTH(u16, (u8 *)arg0, 0x18) = w;
func_800CB8C4(arg0, pad);
func_800CB900(arg0, pad, (u8 *)arg0 + 0x10, (u8 *)arg0 + 0x14,
(u8 *)arg0 + 0x58, (u8 *)arg0 + 0x5C, (u8 *)arg0 + 0x18);
@@ -373,19 +373,19 @@ void func_800CB77C(void *arg0) {
s16 w;
s32 pad[2];
w = *(u16 *)((u8 *)arg0 + 0x14) + 8;
*(u16 *)((u8 *)arg0 + 0x14) = w;
*(u8 *)((u8 *)arg0 + 0x58) = func_80012F74(*(u8 *)((u8 *)arg0 + 0x58), 0, 10, 1);
w = CAST_WIDTH(u16, (u8 *)arg0, 0x14) + 8;
CAST_WIDTH(u16, (u8 *)arg0, 0x14) = w;
CAST_WIDTH(u8, (u8 *)arg0, 0x58) = func_80012F74(CAST_WIDTH(u8, (u8 *)arg0, 0x58), 0, 10, 1);
*(u8 *)((u8 *)arg0 + 0x59) = func_80012F74(*(u8 *)((u8 *)arg0 + 0x59), 0, 10, 1);
*(u8 *)((u8 *)arg0 + 0x5A) = func_80012F74(*(u8 *)((u8 *)arg0 + 0x5A), 0, 10, 1);
*(u8 *)((u8 *)arg0 + 0x5C) = func_80012F74(*(u8 *)((u8 *)arg0 + 0x5C), 0, 10, 1);
CAST_WIDTH(u8, (u8 *)arg0, 0x5C) = func_80012F74(CAST_WIDTH(u8, (u8 *)arg0, 0x5C), 0, 10, 1);
*(u8 *)((u8 *)arg0 + 0x5D) = func_80012F74(*(u8 *)((u8 *)arg0 + 0x5D), 0, 10, 1);
*(u8 *)((u8 *)arg0 + 0x5E) = func_80012F74(*(u8 *)((u8 *)arg0 + 0x5E), 0, 10, 1);
if (*(s32 *)((u8 *)arg0 + 0x58) == 0 && *(s32 *)((u8 *)arg0 + 0x5C) == 0) {
if (((Unkstruct_80126B58 *)arg0)->unk58 == 0 && ((Unkstruct_80126B58 *)arg0)->unk5C == 0) {
func_80146CA0(arg0);
}
w = *(u16 *)((u8 *)arg0 + 0x18) + 0x2D;
*(u16 *)((u8 *)arg0 + 0x18) = w;
w = CAST_WIDTH(u16, (u8 *)arg0, 0x18) + 0x2D;
CAST_WIDTH(u16, (u8 *)arg0, 0x18) = w;
func_800CB8C4(arg0, pad);
func_800CB900(arg0, pad, (u8 *)arg0 + 0x10, (u8 *)arg0 + 0x14,
(u8 *)arg0 + 0x58, (u8 *)arg0 + 0x5C, (u8 *)arg0 + 0x18);
+22 -22
View File
@@ -34,7 +34,7 @@ void func_800CAEC0(s32 a0) {
if (func_80165910(a0) == 0) {
func_801655E4(a0);
}
*(u8 *)(a0 + 0x197) += 1;
((Unkstruct_80126B58 *)a0)->unk197 += 1;
}
@@ -65,7 +65,7 @@ void func_800CAF5C(s32 *a0) {
void func_800CAF90(void *a0) {
extern void (*D_800CC140[])(void);
D_800CC140[*(u16 *)((s32)a0 + 0x2)]();
D_800CC140[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -137,7 +137,7 @@ extern void func_80146CA0(void *a0);
void func_800CB108(s32 a0) {
if (func_80161208()) {
func_80165A20(a0);
} else if (*(u16 *)((s32)a0 + 0xB8) == 0x8000) {
} else if (((Unkstruct_80126B58 *)a0)->unkB8 == 0x8000) {
func_80154150(a0, 0x27);
func_80154A74(a0, 0x1F);
func_801466F0(0xD, a0, 0, -0x40, 0, 0, 0, 0);
@@ -168,7 +168,7 @@ void func_800CB1A0(s32 a0) {
func_801599A4(a0);
func_80159B3C(a0);
} else {
*(u16 *)(a0 + 0x15A) = 1;
((Unkstruct_80126B58 *)a0)->unk15A = 1;
}
}
@@ -177,7 +177,7 @@ extern void func_801553C0(s32 a0);
extern void func_80154A74(s32 a0, s32 a1);
void func_800CB234(void *a0) {
*(u16 *)(*(s32 *)((s32)a0 + 0x20) + 0x10) = 0;
*(u16 *)(((Unkstruct_80126B58 *)a0)->unk20 + 0x10) = 0;
func_801553C0((s32)a0);
func_80154A74((s32)a0, 0x11);
}
@@ -216,10 +216,10 @@ void func_800CB2CC(s32 arg0) {
s2 = *(s32 *)(arg0 + 0x4C);
s0 = func_8014659C();
*(s32 *)(arg0 + 0x20) = s0;
((Unkstruct_80126B58 *)arg0)->unk20 = s0;
if (s0 != 0) {
func_8001C2C4(s0);
v = *(s32 *)(s2 + 0x20);
v = ((Unkstruct_80126B58 *)s2)->unk20;
h = *(u16 *)(v + 0x12);
*(u16 *)(s0 + 0x1A) = 0;
*(u16 *)(s0 + 0x18) = 0;
@@ -227,10 +227,10 @@ void func_800CB2CC(s32 arg0) {
*(u16 *)(s0 + 0x12) = h;
func_80146E90((s32 *)arg0, 0x20);
func_80149374(s2, arg0 + 4);
*(u32 *)(arg0 + 0x58) = (u32)&D_800CC150[0];
*(u16 *)(arg0 + 0x60) = 0;
*(u16 *)(arg0 + 0x62) = 0;
*(u16 *)(arg0 + 0x64) = 0;
((Unkstruct_80126B58 *)arg0)->unk58 = (u32)&D_800CC150[0];
((Unkstruct_80126B58 *)arg0)->unk60 = 0;
((Unkstruct_80126B58 *)arg0)->unk62 = 0;
((Unkstruct_80126B58 *)arg0)->unk64 = 0;
func_801466B4(0x28, arg0, 0, 0, 1);
func_801466B4(0x28, arg0, 1, 0, 1);
memcpy(&D_800CC298[0], (void *)(s2 + 0x154), 8);
@@ -250,10 +250,10 @@ void func_800CB3E0(s32 a0) {
u8 *s0;
u16 w;
s0 = *(u8 **)(a0 + 0x20);
func_800CB82C(a0, *(s32 *)(a0 + 0x58));
s0 = CAST_SIGN(u8 *, a0, 0x20);
func_800CB82C(a0, ((Unkstruct_80126B58 *)a0)->unk58);
*(u16 *)(a0 + 0xA) -= 1;
CAST_SIGN(u16, a0, 0xA) -= 1;
w = *(u16 *)(s0 + 0x18);
w += 0x100;
@@ -466,7 +466,7 @@ void func_800CB82C(s32 a0, s32 a1)
s32 cn;
plo = (s32 *)lo;
p = *(s32 **)((s8 *)a0 + 0x20);
p = CAST_SIGN(s32 *, (s8 *)a0, 0x20);
func_80015978((s32)((s8 *)a0 + 4), (s32 *)src);
chk = func_8012EF34((s32)src, (s32)D_800CC290);
if ((chk & ~0x1000) == 0) {
@@ -488,7 +488,7 @@ void func_800CB82C(s32 a0, s32 a1)
bm = *(u16 *)((s8 *)a1 + 0x14);
mid.code = 0x50000000;
mid.bmode = bm;
c1 = *(s16 *)((s8 *)a0 + 0x60);
c1 = CAST_SIGN(s16, (s8 *)a0, 0x60);
g8 = 0x808080;
mid.gray[0] = g8;
mid.gray[1] = g8;
@@ -496,7 +496,7 @@ void func_800CB82C(s32 a0, s32 a1)
mid.gray[3] = g8;
cn = (c1 + 1) & 3;
c1 <<= 2;
*(u16 *)((s8 *)a0 + 0x60) = cn;
((Unkstruct_80126B58 *)a0)->unk60 = cn;
cn = (s32)D_800CC1B0;
c1 += cn;
if (((s32 (*)(s32, s32, s32, s32, s32 *, s32))func_800CBA44)((s32)out1, (s32)D_800CC190, (s32)a1, (s32)p6,
@@ -506,8 +506,8 @@ void func_800CB82C(s32 a0, s32 a1)
*(u16 *)((s8 *)lo + 4) = s5v;
func_800CBBF8(plo, p);
a1 = (void *)((s8 *)a1 + 0x18);
hb.hB0 = func_80047948((*(s16 *)((s8 *)a0 + 0x62)) << 8) / 1024;
*(u16 *)((s8 *)a0 + 0x62) = (*(u16 *)((s8 *)a0 + 0x62) + 1) & 0xF;
hb.hB0 = func_80047948((CAST_SIGN(s16, (s8 *)a0, 0x62)) << 8) / 1024;
((Unkstruct_80126B58 *)a0)->unk62 = (((Unkstruct_80126B58 *)a0)->unk62 + 1) & 0xF;
hb.hB2 = 0;
if (((s32 (*)(s32, s32, s32, s32, s32 *, s32))func_800CBA44)((s32)out1, (s32)D_800CC1A0, (s32)a1, (s32)&hb.hB0,
plo, (s32)p6) != 0) {
@@ -754,15 +754,15 @@ void func_800CBF28(s32 p1)
base = (s32)&D_800CC250;
v0 = ((s32 (*)(void))func_80146578)();
r = v0;
*(s32 *)(p1 + 0x20) = v0;
((Unkstruct_80126B58 *)p1)->unk20 = v0;
if (v0 != 0) {
func_8001CD04(v0, base);
if (*(s32 *)(p1 + 0x50) == 0) {
if (((Unkstruct_80126B58 *)p1)->unk50 == 0) {
func_800233CC(base, 0x20);
D_800CC254 = 0;
*(u32 *)base = 0x202000;
}
*(s16 *)(p1 + 0x60) = 0;
((Unkstruct_80126B58 *)p1)->unk60 = 0;
*(u32 *)(r + 4) |= 0x50000000;
func_800CC024(p1);
func_80146CA0((void *)p1);
+40 -40
View File
@@ -119,9 +119,9 @@ void func_800CB3AC(s32 a0) {
s2 = *(s32 *)(a0 + 0x4C);
s1 = ((s32 (*)(void))func_80146578)();
*(s32 *)(a0 + 0x20) = s1;
((Unkstruct_80126B58 *)a0)->unk20 = s1;
if (s1 != 0) {
if (*(s32 *)(a0 + 0x54) == 0) {
if (((Unkstruct_80126B58 *)a0)->unk54 == 0) {
func_8001CC3C(s1, D_800CBEA0, 0x1A8, 0x100);
func_80149374(s2, a0 + 4);
} else {
@@ -130,7 +130,7 @@ void func_800CB3AC(s32 a0) {
func_8014964C(s2, a0 + 4);
}
*(u8 *)(s1 + 0x27) = 0x19;
*(u16 *)(a0 + 0x18) = 0;
CAST_WIDTH(u16, a0, 0x18) = 0;
func_800CB620(a0);
func_80146CA0((void *)a0);
} else {
@@ -147,8 +147,8 @@ extern void func_80146E90(s32 *a0, s32 a1);
extern s32 rand(void);
void func_800CB484(s32 *a0) {
u16 *p = *(u16 **)((u8 *)a0 + 0x20);
if (*(s32 *)((u8 *)a0 + 0x54) != 0) {
u16 *p = CAST_SIGN(u16 *, (u8 *)a0, 0x20);
if (((Unkstruct_80126B58 *)a0)->unk54 != 0) {
if (D_800B99DA & 1) {
p[0x15] = 0x100;
} else {
@@ -156,16 +156,16 @@ void func_800CB484(s32 *a0) {
}
}
if (func_800CB6D4((s32)a0) != 0) {
s16 v = *(u16 *)((u8 *)a0 + 0x18);
*(u16 *)((u8 *)a0 + 0x18) = v + 1;
s16 v = CAST_WIDTH(u16, (u8 *)a0, 0x18);
CAST_WIDTH(u16, (u8 *)a0, 0x18) = v + 1;
if (v >= 4) {
func_800CB684((s32)a0, 0x200);
func_80146CA0(a0);
return;
}
if (*(s32 *)((u8 *)a0 + 0x54) != 0 && (rand() & 3) == 0) {
if (((Unkstruct_80126B58 *)a0)->unk54 != 0 && (rand() & 3) == 0) {
func_80146E90(a0, 0x20);
*(u16 *)((u8 *)a0 + 2) = 3;
((Unkstruct_80126B58 *)a0)->unk2 = 3;
} else {
func_800CB684((s32)a0, 0x80);
}
@@ -192,7 +192,7 @@ void func_800CB59C(s32 a0) {
s32 v;
v = D_800B99DA & 1;
ptr = *(s32 *)((s32)a0 + 0x20);
ptr = ((Unkstruct_80126B58 *)a0)->unk20;
if (v == 0) {
v = 0x160;
} else {
@@ -201,7 +201,7 @@ void func_800CB59C(s32 a0) {
*(u16 *)(ptr + 0x2A) = v;
if (func_80146E98((s32)a0) != 0) {
func_800CB684((s32)a0, 0x100);
*(u16 *)((s32)a0 + 2) = 1;
((Unkstruct_80126B58 *)a0)->unk2 = 1;
}
}
@@ -215,13 +215,13 @@ void func_800CB59C(s32 a0) {
void func_800CB620(s32 arg0) {
s32 v;
*(u16 *)(arg0 + 0x10) = *(u16 *)(arg0 + 6);
*(u16 *)(arg0 + 0x12) = *(u16 *)(arg0 + 0xA);
*(u16 *)(arg0 + 0x14) = *(u16 *)(arg0 + 0xE);
CAST_WIDTH(u16, arg0, 0x10) = CAST_SIGN(u16, arg0, 6);
*(u16 *)(arg0 + 0x12) = CAST_SIGN(u16, arg0, 0xA);
CAST_WIDTH(u16, arg0, 0x14) = CAST_SIGN(u16, arg0, 0xE);
v = rand() & 0x1F;
v <<= 7;
*(u16 *)(arg0 + 0x64) = v;
*(u16 *)(arg0 + 0x66) = v;
((Unkstruct_80126B58 *)arg0)->unk64 = v;
((Unkstruct_80126B58 *)arg0)->unk66 = v;
func_800CB684(arg0, 0x200);
func_800CB6D4(arg0);
}
@@ -229,8 +229,8 @@ void func_800CB620(s32 arg0) {
void func_800CB684(s32 a0, s32 a1) {
extern s32 rand(void);
*(u16 *)(a0 + 0x60) = a1 + (rand() & 0x7F);
*(u16 *)(a0 + 0x62) = a1 + (rand() & 0x7F);
((Unkstruct_80126B58 *)a0)->unk60 = a1 + (rand() & 0x7F);
((Unkstruct_80126B58 *)a0)->unk62 = a1 + (rand() & 0x7F);
}
@@ -249,51 +249,51 @@ s32 func_800CB6D4(s32 a0) {
s32 sum;
s16 diff;
s1 = *(s32 *)(a0 + 0x20);
s1 = ((Unkstruct_80126B58 *)a0)->unk20;
v0 = func_80047948(*(s16 *)(a0 + 0x64));
v1 = *(s16 *)(a0 + 0x60);
v0 = func_80047948(CAST_SIGN(s16, a0, 0x64));
v1 = CAST_SIGN(s16, a0, 0x60);
tmp[0] = (v1 * v0) / 4096;
if (*(s32 *)(a0 + 0x54) == 0) {
if (((Unkstruct_80126B58 *)a0)->unk54 == 0) {
tmp[1] = 0;
v0 = func_8004787C(*(s16 *)(a0 + 0x64));
v1 = *(s16 *)(a0 + 0x62);
v0 = func_8004787C(CAST_SIGN(s16, a0, 0x64));
v1 = CAST_SIGN(s16, a0, 0x62);
tmp[2] = (v1 * v0) / 4096;
} else {
v0 = func_8004787C(*(s16 *)(a0 + 0x64));
v1 = *(s16 *)(a0 + 0x62);
v0 = func_8004787C(CAST_SIGN(s16, a0, 0x64));
v1 = CAST_SIGN(s16, a0, 0x62);
tmp[1] = (v1 * v0) / 4096;
tmp[2] = 0;
}
v0 = func_80012F74(*(s16 *)(a0 + 0x6), (s16)(*(u16 *)(a0 + 0x10) + (u16)tmp[0]), 0xA, 1);
*(s16 *)(a0 + 0x6) = v0;
v0 = func_80012F74(((Unkstruct_80126B58 *)a0)->unk6, (s16)(CAST_WIDTH(u16, a0, 0x10) + (u16)tmp[0]), 0xA, 1);
((Unkstruct_80126B58 *)a0)->unk6 = v0;
v0 = func_80012F74(*(s16 *)(a0 + 0xA), (s16)(*(u16 *)(a0 + 0x12) + (u16)tmp[1]), 0xA, 1);
*(s16 *)(a0 + 0xA) = v0;
v0 = func_80012F74(((Unkstruct_80126B58 *)a0)->unkA, (s16)(*(u16 *)(a0 + 0x12) + (u16)tmp[1]), 0xA, 1);
((Unkstruct_80126B58 *)a0)->unkA = v0;
v0 = func_80012F74(*(s16 *)(a0 + 0xE), (s16)(*(u16 *)(a0 + 0x14) + (u16)tmp[2]), 0xA, 1);
*(s16 *)(a0 + 0xE) = v0;
v0 = func_80012F74(((Unkstruct_80126B58 *)a0)->unkE, (s16)(CAST_WIDTH(u16, a0, 0x14) + (u16)tmp[2]), 0xA, 1);
((Unkstruct_80126B58 *)a0)->unkE = v0;
v0 = ratan2(*(s16 *)(a0 + 0x6) - *(s16 *)(a0 + 0x44), *(s16 *)(a0 + 0x46) - *(s16 *)(a0 + 0xA));
v0 = ratan2(((Unkstruct_80126B58 *)a0)->unk6 - CAST_WIDTH(s16, a0, 0x44), *(s16 *)(a0 + 0x46) - ((Unkstruct_80126B58 *)a0)->unkA);
*(u16 *)(s1 + 0x14) = (v0 - 0x200) & 0xFFF;
{
s32 f50 = *(s32 *)(a0 + 0x50);
sum = *(u16 *)(a0 + 0x64) + f50;
s32 f50 = ((Unkstruct_80126B58 *)a0)->unk50;
sum = ((Unkstruct_80126B58 *)a0)->unk64 + f50;
}
*(u16 *)(a0 + 0x64) = sum;
if (*(s32 *)(a0 + 0x50) >= 0) {
diff = sum - *(u16 *)(a0 + 0x66);
((Unkstruct_80126B58 *)a0)->unk64 = sum;
if (((Unkstruct_80126B58 *)a0)->unk50 >= 0) {
diff = sum - ((Unkstruct_80126B58 *)a0)->unk66;
} else {
diff = *(u16 *)(a0 + 0x66) - sum;
diff = ((Unkstruct_80126B58 *)a0)->unk66 - sum;
}
if (diff < 0x1001) {
return 0;
}
*(u16 *)(a0 + 0x64) = *(u16 *)(a0 + 0x66);
((Unkstruct_80126B58 *)a0)->unk64 = ((Unkstruct_80126B58 *)a0)->unk66;
return 1;
}
+3 -3
View File
@@ -28,7 +28,7 @@ void func_800CAE64(void *a0) {
extern void func_800CAEE0(void *a0);
void func_800CAEA8(void *a0) {
func_800CAEE0(a0);
*(u8 *)((s32)a0 + 0x197) += 1;
((Unkstruct_80126B58 *)a0)->unk197 += 1;
}
@@ -41,7 +41,7 @@ void func_800CAEE0(void *a0) {
func_801655E4((s32) a0);
}
func_800CAF64((s32) a0);
*(u8 *)((s32) a0 + 0x197) += 1;
((Unkstruct_80126B58 *)a0)->unk197 += 1;
}
@@ -223,6 +223,6 @@ void func_800CB2AC(void *a0)
void func_800CB460(void *a0) {
extern void (*D_800CB4BC[])(void);
D_800CB4BC[*(u16 *)((s32)a0 + 0x2)]();
D_800CB4BC[((Unkstruct_80126B58 *)a0)->unk2]();
}
+1 -1
View File
@@ -242,6 +242,6 @@ void func_800CB1EC(void *a0) {
void func_800CB41C(void *a0) {
extern void (*D_800CB490[])(void);
D_800CB490[*(u16 *)((s32)a0 + 0x2)]();
D_800CB490[((Unkstruct_80126B58 *)a0)->unk2]();
}
+36 -36
View File
@@ -74,7 +74,7 @@ extern void func_800CAFE4(u8 *a0);
void func_800CAF9C(u8 *a0) {
if (func_80161104()) {
func_800CAFE4(a0);
*(u8 *)(a0 + 0x197) = *(u8 *)(a0 + 0x197) + 1;
((Unkstruct_80126B58 *)a0)->unk197 = ((Unkstruct_80126B58 *)a0)->unk197 + 1;
}
}
@@ -101,14 +101,14 @@ void func_800CAFE4(u8 *a0) {
func_800CAE74((void *)&D_800CC09C, (void *)&D_800CBF3C, (void *)&D_800CBF7C);
func_800CAE74((void *)&D_800CC0DC, (void *)&D_800CBF5C, (void *)&D_800CBFA8);
func_800183E0((s32)&D_800CC05C);
*(u16 *)(a0 + 0x234) = 0;
CAST_WIDTH(u16, a0, 0x234) = 0;
*(u16 *)(a0 + 0x236) = 0x10;
*(u32 *)(a0 + 0x238) = 0;
*(u8 *)(a0 + 0xBE) = 0;
*(u8 *)(a0 + 0xBF) = 0;
((Unkstruct_80126B58 *)a0)->unk238 = 0;
((Unkstruct_80126B58 *)a0)->unkBE = 0;
((Unkstruct_80126B58 *)a0)->unkBF = 0;
func_80146E90((s32 *)a0, 0x10);
func_80147324(0x8EA);
*(u8 *)(a0 + 0x197) = *(u8 *)(a0 + 0x197) + 1;
((Unkstruct_80126B58 *)a0)->unk197 = ((Unkstruct_80126B58 *)a0)->unk197 + 1;
}
@@ -168,14 +168,14 @@ void func_800CB1CC(void *arg0) {
u16 sp18[3];
if (func_80148800((s32 *) arg0) & 0x20) {
*(u32 *)((u8 *)arg0 + 0x238) = 0;
*(u8 *)((u8 *)arg0 + 0x197) = *(u8 *)((u8 *)arg0 + 0x197) + 1;
((Unkstruct_80126B58 *)arg0)->unk238 = 0;
((Unkstruct_80126B58 *)arg0)->unk197 = ((Unkstruct_80126B58 *)arg0)->unk197 + 1;
func_80147324(0x991);
}
sp10[0] = 0;
sp10[1] = 0;
sp10[2] = 0;
sp18[0] = *(u16 *)((u8 *)arg0 + 0x234);
sp18[0] = CAST_WIDTH(u16, (u8 *)arg0, 0x234);
sp18[2] = *(u16 *)((u8 *)arg0 + 0x236);
sp18[1] = sp18[2];
func_800CB428(arg0, sp10, sp18);
@@ -198,7 +198,7 @@ void func_800CB288(s32 arg0)
sp10[0] = 0;
sp10[1] = 0;
sp10[2] = 0;
sp18[0] = *(u16 *) (arg0 + 0x234);
sp18[0] = CAST_WIDTH(u16, arg0, 0x234);
sp18[2] = *(u16 *) (arg0 + 0x236);
sp18[1] = sp18[2];
func_800CB428(arg0, sp10, sp18);
@@ -215,14 +215,14 @@ void func_800CB288(s32 arg0)
}
return;
}
temp2 = *(u16 *) (arg0 + 0x238) + 0x200;
cur2 = *(u16 *) (arg0 + 0x234) - temp2;
*(u16 *) (arg0 + 0x238) = temp2;
*(u16 *) (arg0 + 0x234) = cur2;
temp2 = CAST_WIDTH(u16, arg0, 0x238) + 0x200;
cur2 = CAST_WIDTH(u16, arg0, 0x234) - temp2;
CAST_WIDTH(u16, arg0, 0x238) = temp2;
CAST_WIDTH(u16, arg0, 0x234) = cur2;
if ((s16) cur2 >= 0) {
return;
}
*(u16 *) (arg0 + 0x234) = 0;
CAST_WIDTH(u16, arg0, 0x234) = 0;
}
func_80165A78(arg0);
func_80159B3C((void *) arg0);
@@ -531,10 +531,10 @@ void func_800CBC14(void *arg0) {
s32 v0;
v0 = ((s32 (*)(void))func_80146578)();
*(s32 *)((s32)arg0 + 0x20) = v0;
((Unkstruct_80126B58 *)arg0)->unk20 = v0;
if (v0 != 0) {
func_8001CB00(v0,
(void *)((s32)&D_800CC00C + (*(s32 *)((s32)arg0 + 0x50)) * 12),
(void *)((s32)&D_800CC00C + (((Unkstruct_80126B58 *)arg0)->unk50) * 12),
0x200, 0x100);
*(s16 *)(v0 + 0x2C) = 1;
*(u8 *)(v0 + 0x27) = 8;
@@ -567,29 +567,29 @@ void func_800CBCD4(u8 *s0) {
u8 *a2, *a3;
u16 w;
v0 = *(s32 *)(s0 + 0x54);
s1 = *(u32 **)(s0 + 0x20);
v0 = ((Unkstruct_80126B58 *)s0)->unk54;
s1 = CAST_SIGN(u32 *, s0, 0x20);
if (v0 == 0) {
v0 = func_80012ABC(*(s16 *)(s1 + 0x14), *(s16 *)(s0 + 0x60), 0xA);
v0 = func_80012ABC(*(s16 *)(s1 + 0x14), CAST_SIGN(s16, s0, 0x60), 0xA);
*(s16 *)(s1 + 0x14) = v0;
func_80162F08(s0, 0, 0xC00, 0);
func_80013B64(*(s16 *)(s1 + 0x14), s0 + 0x24, sp10);
*(s32 *)(s0 + 0x10) = sp10[0];
*(s32 *)(s0 + 0x14) = sp10[1];
*(s32 *)(s0 + 0x18) = sp10[2];
((Unkstruct_80126B58 *)s0)->unk10 = sp10[0];
((Unkstruct_80126B58 *)s0)->unk14 = sp10[1];
((Unkstruct_80126B58 *)s0)->unk18 = sp10[2];
func_80162FC0(s0);
func_800CBED8(s0);
flag = *(s32 *)(s0 + 0x28) >= (s32)0xFFFE0000;
flag = ((Unkstruct_80126B58 *)s0)->unk28 >= (s32)0xFFFE0000;
if (flag) {
func_80146DE8(s0, 0, 0xFFFC0000, 0);
v0 = rand();
v0 = v0 & 0x1F;
v0 = v0 << 6;
v1 = *(u16 *)(s0 + 0x60);
v1 = ((Unkstruct_80126B58 *)s0)->unk60;
v0 = v0 - 0xC00;
v1 = v1 - v0;
v1 = v1 & 0xFFF;
*(u16 *)(s0 + 0x60) = v1;
((Unkstruct_80126B58 *)s0)->unk60 = v1;
}
i = 0xF;
v0 = (s32)D_800CC13C;
@@ -601,24 +601,24 @@ void func_800CBCD4(u8 *s0) {
i--;
a2 -= 8;
} while (i > 0);
*(u16 *)D_800CC13C = *(u16 *)(s0 + 0x6);
*(u16 *)(D_800CC13C + 2) = *(u16 *)(s0 + 0xA);
*(u16 *)D_800CC140 = *(u16 *)(s0 + 0xE);
*(u16 *)D_800CC13C = CAST_SIGN(u16, s0, 0x6);
*(u16 *)(D_800CC13C + 2) = CAST_SIGN(u16, s0, 0xA);
*(u16 *)D_800CC140 = CAST_SIGN(u16, s0, 0xE);
*(u16 *)(D_800CC140 + 2) = *(u16 *)(s1 + 0x14);
} else {
v0 = *(s32 *)(s0 + 0x54);
v0 = ((Unkstruct_80126B58 *)s0)->unk54;
v0 = (v0 - 1) << 4;
v1 = *(u16 *)(D_800CC13C + v0);
*(u16 *)(s0 + 0x6) = v1;
v0 = *(s32 *)(s0 + 0x54);
((Unkstruct_80126B58 *)s0)->unk6 = v1;
v0 = ((Unkstruct_80126B58 *)s0)->unk54;
v0 = (v0 - 1) << 4;
v1 = *(u16 *)(D_800CC13C + 2 + v0);
*(u16 *)(s0 + 0xA) = v1;
v0 = *(s32 *)(s0 + 0x54);
((Unkstruct_80126B58 *)s0)->unkA = v1;
v0 = ((Unkstruct_80126B58 *)s0)->unk54;
v0 = (v0 - 1) << 4;
v1 = *(u16 *)(D_800CC140 + v0);
*(u16 *)(s0 + 0xE) = v1;
v0 = *(s32 *)(s0 + 0x54);
((Unkstruct_80126B58 *)s0)->unkE = v1;
v0 = ((Unkstruct_80126B58 *)s0)->unk54;
v0 = (v0 - 1) << 4;
w = *(u16 *)(D_800CC140 + 2 + v0);
*(u16 *)(s1 + 0x14) = w;
+4 -4
View File
@@ -50,13 +50,13 @@ void func_800CAF60(void *a0) {
extern s32 func_80161418(void *a0);
extern s32 func_80155FD4(s32 a0, s32 a1);
*(u32 *)((u8 *)a0 + 0x44) |= 2;
((Unkstruct_80126B58 *)a0)->unk44 |= 2;
func_80147A84((s32)a0);
func_801473EC((s32 *)a0);
func_80148038((s32)a0, 0x20000);
func_80147460((s32)a0);
if (func_80161418(a0) == 0) {
func_80155FD4((s32)a0, *(u8 *)((u8 *)a0 + 0x1AA));
func_80155FD4((s32)a0, ((Unkstruct_80126B58 *)a0)->unk1AA);
}
}
@@ -112,14 +112,14 @@ void func_800CB0B0(void *arg0) {
s2 = *(s32 *)((s32)arg0 + 0x4C);
s0 = ((s32 (*)(void))func_8014659C)();
*(s32 *)((s32)arg0 + 0x20) = s0;
((Unkstruct_80126B58 *)arg0)->unk20 = s0;
if (s0 != 0) {
func_8001C810(s0, (s32)&D_800CC3C4);
flag = *(s32 *)(s0 + 4);
flag |= 0x50000000;
*(s32 *)(s0 + 4) = flag;
func_80149374(s2, (s32)arg0 + 4);
src = *(s32 *)(s2 + 0x20);
src = ((Unkstruct_80126B58 *)s2)->unk20;
*(func_800CB0B0_Blk16 *)(s0 + 0x34) = *(func_800CB0B0_Blk16 *)(src + 0x34);
*(func_800CB0B0_Blk16 *)(s0 + 0x44) = *(func_800CB0B0_Blk16 *)(src + 0x44);
func_80146CA0(arg0);
+20 -20
View File
@@ -37,8 +37,8 @@ void func_800CAED0(u8 *a0) {
func_80154274((s32 *)a0, (s32)&D_800CB858);
func_801655E4((s32)a0);
func_80156648((s32 *)a0);
*(u8 *)(a0 + 0x1AA) = 1;
*(u8 *)(a0 + 0x197) = *(u8 *)(a0 + 0x197) + 1;
((Unkstruct_80126B58 *)a0)->unk1AA = 1;
((Unkstruct_80126B58 *)a0)->unk197 = ((Unkstruct_80126B58 *)a0)->unk197 + 1;
}
@@ -49,8 +49,8 @@ void func_800CAF24(void *a0) {
extern s32 func_80155FF8(s32 a0, s32 a1);
extern s32 func_80146608(s32 a0, s32 a1, s32 a2, s32 a3, s16 a4, s32 a5, s32 a6, s32 a7, s32 a8);
u16 flag;
*(s32 *)((u8 *)a0 + 0x44) |= 2;
flag = *(u16 *)((u8 *)a0 + 0xB8);
CAST_SIGN(s32, (u8 *)a0, 0x44) |= 2;
flag = ((Unkstruct_80126B58 *)a0)->unkB8;
if (!(flag & 0x4000)) {
if (flag == 0x8000) {
func_801599A4(a0);
@@ -61,7 +61,7 @@ void func_800CAF24(void *a0) {
func_80146608(0x21, (s32)a0, 0, -0x18, 0, 0, 0, 8, 1);
}
if (func_80161208(a0) == 0) {
func_80155FF8((s32)a0, *(u8 *)((u8 *)a0 + 0x1AA));
func_80155FF8((s32)a0, ((Unkstruct_80126B58 *)a0)->unk1AA);
}
}
@@ -159,8 +159,8 @@ void func_800CB190(void *arg0) {
s32 acc;
ptr = *(void **)((u8 *)arg0 + 0x4C);
p = *(void **)((u8 *)arg0 + 0x20);
color = (*(s32 *)((u8 *)arg0 + 0x1C) & 1) ? 0x80 : 0x40;
p = CAST_SIGN(void *, (u8 *)arg0, 0x20);
color = (((Unkstruct_80126B58 *)arg0)->unk1C & 1) ? 0x80 : 0x40;
w = (*(u16 *)((u8 *)p + 0x1A) += 0x100);
@@ -177,14 +177,14 @@ void func_800CB190(void *arg0) {
{
s32 r = func_80012ABC(*(s16 *)((u8 *)p + 0x12),
*(s16 *)(*(void **)((u8 *)ptr + 0x20) + 0x12), 0x10);
*(s16 *)(CAST_SIGN(void *, (u8 *)ptr, 0x20) + 0x12), 0x10);
*(s16 *)((u8 *)p + 0x12) = r;
func_8001382C((s16)r, (u8 *)arg0 + 0x24, out);
}
*(s32 *)((u8 *)arg0 + 0x10) = out[0];
*(s32 *)((u8 *)arg0 + 0x14) = out[1];
*(s32 *)((u8 *)arg0 + 0x18) = out[2];
((Unkstruct_80126B58 *)arg0)->unk10 = out[0];
((Unkstruct_80126B58 *)arg0)->unk14 = out[1];
((Unkstruct_80126B58 *)arg0)->unk18 = out[2];
func_80162FC0((s32 *)arg0);
if (func_80146E98((s32)arg0) == 0) {
@@ -215,7 +215,7 @@ void func_800CB2C8(void *arg0) {
s32 r;
s32 buf[3];
s1 = *(void **)((u8 *)arg0 + 0x20);
s1 = CAST_SIGN(void *, (u8 *)arg0, 0x20);
p = *(void **)((u8 *)arg0 + 0x4C);
raw = *(u8 *)((u8 *)s1 + 0x24);
t = raw - 0x10;
@@ -228,12 +228,12 @@ void func_800CB2C8(void *arg0) {
t = raw;
*(u8 *)((u8 *)s1 + 0x24) = *(u8 *)((u8 *)s1 + 0x25) = *(u8 *)((u8 *)s1 + 0x26) = t;
r = func_80012ABC(*(s16 *)((u8 *)s1 + 0x12),
*(s16 *)(*(void **)((u8 *)p + 0x20) + 0x12), 0x10);
*(s16 *)(CAST_SIGN(void *, (u8 *)p, 0x20) + 0x12), 0x10);
*(s16 *)((u8 *)s1 + 0x12) = r;
func_8001382C((s16)r, (u8 *)arg0 + 0x24, buf);
*(s32 *)((u8 *)arg0 + 0x10) = buf[0];
*(s32 *)((u8 *)arg0 + 0x14) = buf[1];
*(s32 *)((u8 *)arg0 + 0x18) = buf[2];
((Unkstruct_80126B58 *)arg0)->unk10 = buf[0];
((Unkstruct_80126B58 *)arg0)->unk14 = buf[1];
((Unkstruct_80126B58 *)arg0)->unk18 = buf[2];
func_80162FC0((s32 *)arg0);
}
@@ -267,16 +267,16 @@ s32 func_800CB3D8(s32 arg0, s32 arg1) {
u8 *ptr;
s32 ret;
ptr = *(u8 **)(arg0 + 0x20);
ptr = CAST_SIGN(u8 *, arg0, 0x20);
func_80015978(arg0 + 4, out1);
st = *(struct S_md_MAIN_033_800CB3D8 *)*(s32 *)(ptr + 0x34);
st.f[5] = 0;
st.f[6] = 0;
st.f[7] = 0;
func_8012F14C((s32)&st, arg1, (s32)out2);
*(u16 *)(arg0 + 6) += out2[0];
*(u16 *)(arg0 + 0xA) += out2[1];
*(u16 *)(arg0 + 0xE) += out2[2];
CAST_SIGN(u16, arg0, 6) += out2[0];
CAST_SIGN(u16, arg0, 0xA) += out2[1];
CAST_SIGN(u16, arg0, 0xE) += out2[2];
ret = func_800CB4EC(arg0);
func_80015954((s32)out1, arg0 + 4);
return ret;
+22 -22
View File
@@ -745,7 +745,7 @@ void func_800CC16C(void *a0) {
extern void func_800CC1E8(s32 arg0);
void func_800CC1B0(void *a0) {
func_800CC1E8(a0);
*(u8 *)((s32)a0 + 0x197) += 1;
((Unkstruct_80126B58 *)a0)->unk197 += 1;
}
@@ -757,9 +757,9 @@ extern s32 D_80078EC8;
void func_800CC1E8(s32 arg0) {
func_801655E4(arg0);
D_80078EC8 = 0x1C2;
func_801466F0(0x1A, arg0, *(s16 *)(arg0 + 6), *(s16 *)(arg0 + 0xA), *(s16 *)(arg0 + 0xE), 0, 0, 1);
func_801466F0(0x1A, arg0, CAST_ALIAS(s16, arg0, 6), ((Unkstruct_80126B58 *)arg0)->unkA, ((Unkstruct_80126B58 *)arg0)->unkE, 0, 0, 1);
func_80147324(0xA63);
*(u8 *)(arg0 + 0x197) += 1;
((Unkstruct_80126B58 *)arg0)->unk197 += 1;
}
@@ -825,7 +825,7 @@ void func_800CC310(void *a0)
void *s0;
s1 = ((void *(*)(void))func_80146578)();
*(void **)((u8 *)a0 + 0x20) = s1;
CAST_SIGN(void *, (u8 *)a0, 0x20) = s1;
if (s1 != NULL) {
s0 = &D_800CCAD0;
@@ -841,9 +841,9 @@ void func_800CC310(void *a0)
*(s16 *)((u8 *)s1 + 0x14) = 0;
*(s16 *)((u8 *)a0 + 0x5A) = 0;
*(s16 *)((u8 *)a0 + 0x58) = 0;
*(s16 *)((u8 *)a0 + 0x60) = 0;
*(s16 *)((u8 *)a0 + 0x62) = 0;
CAST_WIDTH(s16, (u8 *)a0, 0x58) = 0;
((Unkstruct_80126B58 *)a0)->unk60 = 0;
((Unkstruct_80126B58 *)a0)->unk62 = 0;
(*(Quad4_800CCAD0 *)&D_800CCB14).f0 = 0x20;
(*(Quad4_800CCAD0 *)&D_800CCB14).f1 = 0;
@@ -870,17 +870,17 @@ extern u8 D_800CCB10;
extern Quad4_800CCB14 D_800CCB14;
void func_800CC424(void *a0) {
void *a2 = *(void **)((u8 *)a0 + 0x20);
*(u16 *)((u8 *)a0 + 0x60) += 0x60;
void *a2 = CAST_SIGN(void *, (u8 *)a0, 0x20);
((Unkstruct_80126B58 *)a0)->unk60 += 0x60;
*(u16 *)((u8 *)a2 + 0x1A) += 0x200;
*(u16 *)((u8 *)a2 + 0x18) = *(u16 *)((u8 *)a2 + 0x1A);
*(u16 *)((u8 *)a0 + 0x5A) += *(u16 *)((u8 *)a0 + 0x60);
*(u16 *)((u8 *)a0 + 0x58) = *(u16 *)((u8 *)a0 + 0x5A);
*(u16 *)((u8 *)a0 + 0x5A) += ((Unkstruct_80126B58 *)a0)->unk60;
CAST_WIDTH(u16, (u8 *)a0, 0x58) = *(u16 *)((u8 *)a0 + 0x5A);
*(u16 *)((u8 *)a2 + 0x10) = (*(u16 *)((u8 *)a2 + 0x10) + 0x9F) & 0xFFF;
*(u16 *)((u8 *)a2 + 0x12) = (*(u16 *)((u8 *)a2 + 0x12) + 0x71) & 0xFFF;
func_800CC6C4(a0, &D_800CCB10, &D_800CCB14, (u8 *)a0 + 0x58);
if (*(s16 *)((u8 *)a0 + 0x5A) >= 0x1001) {
*(u16 *)((u8 *)a0 + 0x58) = 0x1000;
CAST_WIDTH(u16, (u8 *)a0, 0x58) = 0x1000;
*(u16 *)((u8 *)a0 + 0x5A) = 0x1000;
func_80146E90(a0, 0x20);
func_80146CA0(a0);
@@ -902,13 +902,13 @@ void func_800CC4E8(void *a0) {
void *s1;
register s32 t __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus10)
s1 = *(void **)((u8 *)a0 + 0x20);
s1 = CAST_SIGN(void *, (u8 *)a0, 0x20);
func_80146E98((s32)a0);
if (*(s32 *)((u8 *)a0 + 0x1c) < 8) {
t = *(u16 *)((u8 *)a0 + 0x58) - 0x100;
*(s16 *)((u8 *)a0 + 0x58) = t;
if (((Unkstruct_80126B58 *)a0)->unk1C < 8) {
t = CAST_WIDTH(u16, (u8 *)a0, 0x58) - 0x100;
CAST_WIDTH(s16, (u8 *)a0, 0x58) = t;
if ((t << 16) < 0) {
*(s16 *)((u8 *)a0 + 0x58) = 0;
CAST_WIDTH(s16, (u8 *)a0, 0x58) = 0;
}
t = *(u16 *)((u8 *)a0 + 0x5a) - 0x100;
@@ -921,7 +921,7 @@ void func_800CC4E8(void *a0) {
*(s16 *)((u8 *)s1 + 0x1a) = t;
*(s16 *)((u8 *)s1 + 0x18) = t;
if (*(s16 *)((u8 *)s1 + 0x1a) < 0) {
*(s16 *)((u8 *)a0 + 0x60) = 0;
((Unkstruct_80126B58 *)a0)->unk60 = 0;
*(s16 *)((u8 *)s1 + 0x1a) = 0;
*(s16 *)((u8 *)s1 + 0x18) = 0;
func_80146CA0(a0);
@@ -943,10 +943,10 @@ void func_800CC5E4(void *a0) {
s32 v0;
s32 v1;
a1 = *(void **)((u8 *)a0 + 0x20);
a1 = CAST_SIGN(void *, (u8 *)a0, 0x20);
*(u16 *)((u8 *)a1 + 0x1E) += 0x200;
v0 = *(u16 *)((u8 *)a0 + 0x60) + 0xC0;
*(u16 *)((u8 *)a0 + 0x60) = v0;
v0 = ((Unkstruct_80126B58 *)a0)->unk60 + 0xC0;
((Unkstruct_80126B58 *)a0)->unk60 = v0;
v1 = *(u16 *)((u8 *)a1 + 0x1A) + v0;
*(u16 *)((u8 *)a1 + 0x1A) = v1;
*(u16 *)((u8 *)a1 + 0x18) = v1;
@@ -985,7 +985,7 @@ void func_800CC6C4(void *a0, void *a1, void *a2, void *a3) {
extern s32 D_800CCA9C;
void *v4;
v4 = *(void **)((s32)a0 + 0x20);
v4 = CAST_SIGN(void *, (s32)a0, 0x20);
*(u16 *)((s32)a3 + 0x6) = *(u16 *)((s32)v4 + 0x12);
func_800CC7FC((s32)a0, a1, a2, a3, &D_800CCA9C);
+14 -14
View File
@@ -62,7 +62,7 @@ void func_800CAF14(s32 *a0) {
void func_800CAF48(void *a0) {
extern void (*D_800CB284[])(void);
D_800CB284[*(u16 *)((s32)a0 + 0x2)]();
D_800CB284[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -121,14 +121,14 @@ extern void func_80159B3C(void *a0);
extern s32 func_80161208();
void func_800CB080(void *arg0) {
if (*(u16 *)((u8 *)arg0 + 0xB8) & 0x4000) {
if (((Unkstruct_80126B58 *)arg0)->unkB8 & 0x4000) {
((void (*)(void))func_800CB1F8)();
}
if (*(u16 *)((u8 *)arg0 + 0xB8) == 0x8000) {
if (((Unkstruct_80126B58 *)arg0)->unkB8 == 0x8000) {
func_801599A4(arg0);
func_80159B3C(arg0);
} else {
if (*(s32 *)((u8 *)arg0 + 0x178) != 0) {
if (((Unkstruct_80126B58 *)arg0)->unk178 != 0) {
func_800CB13C(arg0);
}
func_80161208(arg0);
@@ -156,18 +156,18 @@ void func_800CB13C(s32 param_1) {
s32 iVar1;
s32 iVar2;
iVar2 = *(s32 *)(param_1 + 0x178);
iVar2 = ((Unkstruct_80126B58 *)param_1)->unk178;
iVar1 = *(s32 *)(param_1 + 0x234);
*(s32 *)(param_1 + 0x234) = iVar1 + 1;
iVar1 = ((Unkstruct_80126B58 *)param_1)->unk234;
((Unkstruct_80126B58 *)param_1)->unk234 = iVar1 + 1;
*(s16 *)(iVar2 + 6) = (s16)D_800CB290[iVar1] + *(s16 *)(*(s32 *)(iVar2 + 0x78) + 0xc);
iVar1 = *(s32 *)(param_1 + 0x234);
*(s32 *)(param_1 + 0x234) = iVar1 + 1;
iVar1 = ((Unkstruct_80126B58 *)param_1)->unk234;
((Unkstruct_80126B58 *)param_1)->unk234 = iVar1 + 1;
*(s16 *)(iVar2 + 10) = (s16)D_800CB290[iVar1] + *(s16 *)(*(s32 *)(iVar2 + 0x78) + 0xe);
iVar1 = *(s32 *)(param_1 + 0x234);
*(s32 *)(param_1 + 0x234) = iVar1 + 1;
iVar1 = ((Unkstruct_80126B58 *)param_1)->unk234;
((Unkstruct_80126B58 *)param_1)->unk234 = iVar1 + 1;
*(s16 *)(iVar2 + 0xe) = (s16)D_800CB290[iVar1] + *(s16 *)(*(s32 *)(iVar2 + 0x78) + 0x10);
func_80149374(param_1, iVar2 + 4);
@@ -185,14 +185,14 @@ void func_800CB1F8(void *a0) {
u16 uVar2;
s16 buf[4];
iVar1 = *(s32 *)((u8 *)a0 + 0x178);
iVar1 = ((Unkstruct_80126B58 *)a0)->unk178;
if (iVar1 != 0) {
func_8014C1A0((s32)a0, iVar1);
func_80015978(iVar1 + 4, (s32 *)buf);
buf[3] = 0;
uVar2 = func_80156370(0x29);
func_8014C4AC(iVar1, 0x29, uVar2, buf, *(s16 *)(*(s32 *)((u8 *)a0 + 0x20) + 0x12));
*(s32 *)((u8 *)a0 + 0x178) = 0;
func_8014C4AC(iVar1, 0x29, uVar2, buf, *(s16 *)(((Unkstruct_80126B58 *)a0)->unk20 + 0x12));
((Unkstruct_80126B58 *)a0)->unk178 = 0;
}
}
+60 -60
View File
@@ -95,20 +95,20 @@ void func_800CB030(s32 param_1) {
obj = *(s32 *)(param_1 + 0x4C);
p = ((s32 (*)(void))func_8014659C)();
*(s32 *)(param_1 + 0x20) = p;
((Unkstruct_80126B58 *)param_1)->unk20 = p;
if (p != 0) {
func_8001CA1C((void *)p, (void *)((s32)&D_800CBFA0 + *(s32 *)(param_1 + 0x50) * 12));
func_8001CA1C((void *)p, (void *)((s32)&D_800CBFA0 + ((Unkstruct_80126B58 *)param_1)->unk50 * 12));
*(u32 *)(p + 4) |= 0x08000000;
func_80149374(obj, param_1 + 4);
*(u16 *)(param_1 + 0x60) = *(u16 *)(param_1 + 0xA);
*(u16 *)(param_1 + 0xA) = *(u16 *)(param_1 + 0xA) - 0x200;
*(s32 *)(param_1 + 0x58) = 0;
if (*(s32 *)(param_1 + 0x50) == 0) {
((Unkstruct_80126B58 *)param_1)->unk60 = CAST_SIGN(u16, param_1, 0xA);
((Unkstruct_80126B58 *)param_1)->unkA = CAST_SIGN(u16, param_1, 0xA) - 0x200;
((Unkstruct_80126B58 *)param_1)->unk58 = 0;
if (((Unkstruct_80126B58 *)param_1)->unk50 == 0) {
func_80146E90((s32 *)param_1, 0);
D_800CC130[0] = 0;
}
*(u16 *)(param_1 + 0x62) = 0;
((Unkstruct_80126B58 *)param_1)->unk62 = 0;
D_800CC12C = 0x384;
func_80146CA0((void *)param_1);
} else {
@@ -128,17 +128,17 @@ void func_800CB11C(u8 *arg0) {
u16 val;
s16 temp;
s1 = *(u8 **)(arg0 + 0x20);
var = *(s32 *)(arg0 + 0x58) + 0x30000;
*(s32 *)(arg0 + 0x58) = var;
*(s32 *)(arg0 + 8) += var;
s1 = CAST_SIGN(u8 *, arg0, 0x20);
var = ((Unkstruct_80126B58 *)arg0)->unk58 + 0x30000;
((Unkstruct_80126B58 *)arg0)->unk58 = var;
CAST_WIDTH(s32, arg0, 8) += var;
cur = *(s16 *)(arg0 + 0x60);
max = *(s16 *)(arg0 + 0xA);
cur = CAST_SIGN(s16, arg0, 0x60);
max = ((Unkstruct_80126B58 *)arg0)->unkA;
if (cur < max) {
*(s16 *)(arg0 + 0xA) = cur;
if (*(s16 *)(arg0 + 0x62) == 0) {
*(s16 *)(arg0 + 0x62) = *(s16 *)(arg0 + 0x62) + 1;
((Unkstruct_80126B58 *)arg0)->unkA = cur;
if (CAST_SIGN(s16, arg0, 0x62) == 0) {
((Unkstruct_80126B58 *)arg0)->unk62 = CAST_SIGN(s16, arg0, 0x62) + 1;
func_80147324(0x8EC);
}
@@ -157,7 +157,7 @@ void func_800CB11C(u8 *arg0) {
extern s32 func_80146CA0(void *a0);
void func_800CB1CC(void *arg0) {
s32 v1 = *(s32 *)((s32)arg0 + 0x20);
s32 v1 = ((Unkstruct_80126B58 *)arg0)->unk20;
s16 v = *(u16 *)(v1 + 0x1A) + 0x100;
*(u16 *)(v1 + 0x1A) = v;
if (v >= 0x1000) {
@@ -191,21 +191,21 @@ void func_800CB218(void *arg0) {
cnt = D_800CC12C;
mode = D_800CC130;
s1 = *(void **)((s32)arg0 + 0x20);
s1 = CAST_SIGN(void *, (s32)arg0, 0x20);
D_800CC12C = cnt - 1;
switch (mode) {
case 0:
*(s16 *)((s32)arg0 + 0x60) = (func_8004787C((D_800B99DA & 0x3F) << 6)) / 64;
((Unkstruct_80126B58 *)arg0)->unk60 = (func_8004787C((D_800B99DA & 0x3F) << 6)) / 64;
break;
case 1:
*(s16 *)((s32)arg0 + 0x60) = (func_8004787C((D_800B99DA & 0x1F) << 7)) / 32;
((Unkstruct_80126B58 *)arg0)->unk60 = (func_8004787C((D_800B99DA & 0x1F) << 7)) / 32;
break;
}
*(s16 *)((s32)s1 + 0x14) = func_80012DBC(*(s16 *)((s32)s1 + 0x14), *(s16 *)((s32)arg0 + 0x60), 10, 1);
*(s16 *)((s32)s1 + 0x14) = func_80012DBC(*(s16 *)((s32)s1 + 0x14), CAST_SIGN(s16, (s32)arg0, 0x60), 10, 1);
if (*(s32 *)((s32)arg0 + 0x50) == 0) {
if (((Unkstruct_80126B58 *)arg0)->unk50 == 0) {
if (func_80146E98((s32)arg0) != 0) {
func_80146E90((s32 *)arg0, (rand() & 0x3F) + 0x20);
D_800CC130 = rand() & 1;
@@ -245,14 +245,14 @@ void func_800CB3B4(void *arg0) {
s32 i;
s32 one;
s3 = *(void **)((s32)arg0 + 0x20);
s3 = CAST_SIGN(void *, (s32)arg0, 0x20);
v0 = *(s32 *)((s32)arg0 + 0x1C);
*(s32 *)((s32)arg0 + 0x1C) = v0 + 1;
v0 = ((Unkstruct_80126B58 *)arg0)->unk1C;
((Unkstruct_80126B58 *)arg0)->unk1C = v0 + 1;
*(s16 *)((s32)s3 + 0x18) = func_8004787C((v0 & 7) << 9) / 32 + 0x1000;
v0 = *(s32 *)((s32)arg0 + 0x1C);
*(s32 *)((s32)arg0 + 0x1C) = v0 + 1;
v0 = ((Unkstruct_80126B58 *)arg0)->unk1C;
((Unkstruct_80126B58 *)arg0)->unk1C = v0 + 1;
*(s16 *)((s32)s3 + 0x1A) = func_8004787C((v0 & 7) << 9) / 64 + 0x1000;
{
@@ -348,10 +348,10 @@ void func_800CB634(void *a0) {
s32 vz;
s1 = (void *)((s32 (*)(void))func_8014659C)();
*(s32 *)((s32)a0 + 0x20) = (s32)s1;
((Unkstruct_80126B58 *)a0)->unk20 = (s32)s1;
if (s1 != NULL) {
func_8001CA1C(s1, &D_800CBFA0[*(s32 *)((s32)a0 + 0x50)]);
func_8001CA1C(s1, &D_800CBFA0[((Unkstruct_80126B58 *)a0)->unk50]);
vx = ((rand() & 0x3f) - 0x20) << 15;
vy = ((rand() & 0x3f) - 0x20) << 15;
@@ -380,13 +380,13 @@ void func_800CB708(void *arg0) {
func_80162F08((s32)arg0, 0, 0, 0);
v0 = *(s32 *)((s32)arg0 + 0x24);
v1 = *(s32 *)((s32)arg0 + 0x28);
a1 = *(s32 *)((s32)arg0 + 0x2C);
v0 = CAST_WIDTH(s32, (s32)arg0, 0x24);
v1 = ((Unkstruct_80126B58 *)arg0)->unk28;
a1 = ((Unkstruct_80126B58 *)arg0)->unk2C;
*(s32 *)((s32)arg0 + 0x10) = v0;
*(s32 *)((s32)arg0 + 0x14) = v1;
*(s32 *)((s32)arg0 + 0x18) = a1;
((Unkstruct_80126B58 *)arg0)->unk10 = v0;
((Unkstruct_80126B58 *)arg0)->unk14 = v1;
((Unkstruct_80126B58 *)arg0)->unk18 = a1;
func_80162FC0((s32 *)arg0);
@@ -499,10 +499,10 @@ void func_800CB910(s32 param_1) {
s32 i;
u16 sc;
obj = *(s32 *)(param_1 + 0x34);
obj = ((Unkstruct_80126B58 *)param_1)->unk34;
p = ((s32 (*)(void))func_801465C0)();
p2 = p;
*(s32 *)(param_1 + 0x20) = p;
((Unkstruct_80126B58 *)param_1)->unk20 = p;
if (p != 0) {
func_8001CF00(p);
@@ -511,17 +511,17 @@ void func_800CB910(s32 param_1) {
buf[1] -= 0x40;
func_80015954((s32)buf, param_1 + 4);
if (*(s32 *)(param_1 + 0x2c) == 0) {
if (((Unkstruct_80126B58 *)param_1)->unk2C == 0) {
func_800CBF24();
}
sc = D_800CC068[*(s32 *)(param_1 + 0x30)];
sc = D_800CC068[((Unkstruct_80126B58 *)param_1)->unk30];
*(u16 *)(p2 + 0x18) = *(u16 *)(p2 + 0x1a) = *(u16 *)(p2 + 0x1c) = sc;
vel = D_800CC058;
rot = D_800CC028[*(s32 *)(param_1 + 0x2c)];
rot = D_800CC028[((Unkstruct_80126B58 *)param_1)->unk2C];
if (*(s32 *)(param_1 + 0x30) != 0) {
if (((Unkstruct_80126B58 *)param_1)->unk30 != 0) {
rot.vx += ((rand() & 0x3f) << 4) - 0x200;
rot.vy += ((rand() & 0x3f) << 4) - 0x200;
rot.vz += ((rand() & 0x3f) << 4) - 0x200;
@@ -533,15 +533,15 @@ void func_800CB910(s32 param_1) {
func_80049CAC((s32)&rot, (s32)&m);
func_800484EC((s32)&m, (s32)&vel, (s32)&vel);
*(s32 *)(param_1 + 0x10) = vel.vx;
*(s32 *)(param_1 + 0x14) = vel.vy;
*(s32 *)(param_1 + 0x18) = vel.vz;
((Unkstruct_80126B58 *)param_1)->unk10 = vel.vx;
((Unkstruct_80126B58 *)param_1)->unk14 = vel.vy;
((Unkstruct_80126B58 *)param_1)->unk18 = vel.vz;
q = (s16 *)(param_1 + 0x38);
i = 0;
*(s32 *)(param_1 + 0x4c) = ((rand() & 0x1f) - 0x10) * 11;
*(s32 *)(param_1 + 0x50) = ((rand() & 0x1f) - 0x10) * 11;
*(s32 *)(param_1 + 0x54) = ((rand() & 0x1f) - 0x10) * 11;
((Unkstruct_80126B58 *)param_1)->unk50 = ((rand() & 0x1f) - 0x10) * 11;
((Unkstruct_80126B58 *)param_1)->unk54 = ((rand() & 0x1f) - 0x10) * 11;
do {
i++;
@@ -551,7 +551,7 @@ void func_800CB910(s32 param_1) {
} while (i < 3);
func_80146E90((s32 *)param_1, 2);
*(s16 *)(param_1 + 0x2) = *(u16 *)(param_1 + 0x2) + 1;
((Unkstruct_80126B58 *)param_1)->unk2 = ((Unkstruct_80126B58 *)param_1)->unk2 + 1;
} else {
((void (*)(s32))func_80146C3C)(param_1);
}
@@ -567,11 +567,11 @@ void func_800CBC14(s32 arg0) {
func_800CBD2C(arg0);
func_800CBEB0(arg0);
if (func_80146E98(arg0) != 0) {
*(s32 *)(arg0 + 0x10) >>= 2;
*(s32 *)(arg0 + 0x14) >>= 2;
*(s32 *)(arg0 + 0x18) >>= 2;
((Unkstruct_80126B58 *)arg0)->unk10 >>= 2;
((Unkstruct_80126B58 *)arg0)->unk14 >>= 2;
((Unkstruct_80126B58 *)arg0)->unk18 >>= 2;
func_80146E90((s32 *)arg0, 0x40);
*(u16 *)(arg0 + 0x2) += 1;
((Unkstruct_80126B58 *)arg0)->unk2 += 1;
}
}
@@ -583,14 +583,14 @@ extern s32 func_80146E98(s32 a0);
extern void func_80146C3C(); // K&R: 0 of 1 args (P37 rung D t4_D58)
void func_800CBC90(s32 arg0) {
u16 *rec = *(u16 **)(arg0 + 0x20);
u16 *rec = CAST_SIGN(u16 *, arg0, 0x20);
rec[8] += 0x2D;
rec[9] += 0x2D;
rec[0xA] += 0x2D;
*(s32 *)(arg0 + 0x14) += 0x4000;
((Unkstruct_80126B58 *)arg0)->unk14 += 0x4000;
func_800CBD2C(arg0);
func_800CBEB0(arg0);
if (*(s32 *)(arg0 + 0x2C) == 0) {
if (((Unkstruct_80126B58 *)arg0)->unk2C == 0) {
func_800CBF3C();
}
if (func_80146E98(arg0) != 0) {
@@ -652,13 +652,13 @@ void func_800CBD54(s32 param_1, s32 *param_2)
void func_800CBEB0(s32 a0) {
s32 p;
*(s32 *)(a0 + 0x4) += *(s32 *)(a0 + 0x10);
*(s32 *)(a0 + 0x8) += *(s32 *)(a0 + 0x14);
*(s32 *)(a0 + 0xC) += *(s32 *)(a0 + 0x18);
p = *(s32 *)(a0 + 0x20);
CAST_WIDTH(s32, a0, 0x4) += ((Unkstruct_80126B58 *)a0)->unk10;
CAST_WIDTH(s32, a0, 0x8) += ((Unkstruct_80126B58 *)a0)->unk14;
CAST_WIDTH(s32, a0, 0xC) += ((Unkstruct_80126B58 *)a0)->unk18;
p = ((Unkstruct_80126B58 *)a0)->unk20;
*(u16 *)(p + 0x10) += *(s32 *)(a0 + 0x4C);
*(u16 *)(p + 0x12) += *(s32 *)(a0 + 0x50);
*(u16 *)(p + 0x14) += *(s32 *)(a0 + 0x54);
*(u16 *)(p + 0x12) += ((Unkstruct_80126B58 *)a0)->unk50;
*(u16 *)(p + 0x14) += ((Unkstruct_80126B58 *)a0)->unk54;
}
+13 -13
View File
@@ -48,7 +48,7 @@ extern void func_800CAF4C(u8 *a0);
void func_800CAF04(u8 *a0) {
if (func_80161104()) {
func_800CAF4C(a0);
*(u8 *)(a0 + 0x197) = *(u8 *)(a0 + 0x197) + 1;
((Unkstruct_80126B58 *)a0)->unk197 = ((Unkstruct_80126B58 *)a0)->unk197 + 1;
}
}
@@ -62,7 +62,7 @@ extern void func_801655E4(s32 a0);
void func_800CAF4C(u8 *a0) {
func_80154274((s32 *)a0, (s32)&D_800D57F4);
func_801655E4((s32)a0);
*(u8 *)(a0 + 0x197) = *(u8 *)(a0 + 0x197) + 1;
((Unkstruct_80126B58 *)a0)->unk197 = ((Unkstruct_80126B58 *)a0)->unk197 + 1;
}
@@ -75,7 +75,7 @@ extern s32 func_80161208(); /* canonical no-proto (§17a-1) */
void func_800CAF94(void *a0) {
u16 flag;
flag = *(u16 *)((u8 *)a0 + 0xB8);
flag = ((Unkstruct_80126B58 *)a0)->unkB8;
if (flag == 0x8000) {
func_801599A4(a0);
func_80159B3C(a0);
@@ -135,10 +135,10 @@ void func_800CB09C(s32 a0) {
iVar1 = *(s32 *)(a0 + 0x4C);
iVar2 = ((s32 (*)(void))func_8014659C)();
*(s32 *)(a0 + 0x20) = iVar2;
((Unkstruct_80126B58 *)a0)->unk20 = iVar2;
if (iVar2 != 0) {
func_8001CA1C(iVar2, (s32)&D_800CB61C);
uVar1 = *(u16 *)(*(s32 *)(iVar1 + 0x20) + 0x12);
uVar1 = *(u16 *)(((Unkstruct_80126B58 *)iVar1)->unk20 + 0x12);
*(u16 *)(iVar2 + 0x12) = uVar1;
func_80149374(iVar1, a0 + 4);
func_80146DE8((s32 *)a0, 0, 0xFFF40000, 0xFFE80000);
@@ -189,22 +189,22 @@ void func_800CB150(void *a0) {
if (t != 0x8000) {
goto alloc;
}
*(s32 *)((s32)a0 + 0x2C) = 0;
*(s32 *)((s32)a0 + 0x24) = 0;
((Unkstruct_80126B58 *)a0)->unk2C = 0;
CAST_WIDTH(s32, (s32)a0, 0x24) = 0;
goto tail;
alloc:
func_80016714(*(s8 **)((s32)a0 + 0x20), 0x84);
*(s32 *)((s32)a0 + 0x20) = 0;
func_80016714(CAST_SIGN(s8 *, (s32)a0, 0x20), 0x84);
((Unkstruct_80126B58 *)a0)->unk20 = 0;
t = ((s32 (*)(void))func_80146578)();
*(s32 *)((s32)a0 + 0x20) = t;
((Unkstruct_80126B58 *)a0)->unk20 = t;
if (t != 0) {
func_8001CB6C((u8 *)t, (s32)D_800CB628, 0x1A0, 0x100);
*(u8 *)((s32)t + 0x27) = 0x1B;
*(u16 *)((s32)t + 0x10) = 0x400;
func_80146E90((s32 *)a0, 0x20);
for (t = 0; t < 4; t++) {
func_80146A6C(0x45, a0, *(s16 *)((s32)a0 + 6), *(s16 *)((s32)a0 + 0xA),
*(s16 *)((s32)a0 + 0xE), t, 0);
func_80146A6C(0x45, a0, ((Unkstruct_80126B58 *)a0)->unk6, ((Unkstruct_80126B58 *)a0)->unkA,
((Unkstruct_80126B58 *)a0)->unkE, t, 0);
}
func_80147324(0x913);
func_80146CA0(a0);
@@ -223,7 +223,7 @@ void func_800CB2A8(s32 a0) {
s32 v1;
u16 v0;
v1 = *(s32 *)(a0 + 0x20);
v1 = ((Unkstruct_80126B58 *)a0)->unk20;
v0 = *(u16 *)(v1 + 0x1A);
v0 = v0 + 0x80;
*(u16 *)(v1 + 0x1A) = v0;
+22 -22
View File
@@ -45,13 +45,13 @@ extern u8 D_800CBB64[];
void func_800CAF1C(s32 *a0) {
if (func_80161208() == 0) {
if (*(u16 *)((u8 *)a0 + 0xB8) == 0x8000) {
if (((Unkstruct_80126B58 *)a0)->unkB8 == 0x8000) {
if (func_801487F4(a0) & 0x20) {
func_80154274(a0, (s32)D_800CBB84);
*(u8 *)((u8 *)a0 + 0x197) += 1;
((Unkstruct_80126B58 *)a0)->unk197 += 1;
} else {
func_80154274(a0, (s32)D_800CBB64);
*(u8 *)((u8 *)a0 + 0x197) += 2;
((Unkstruct_80126B58 *)a0)->unk197 += 2;
}
}
}
@@ -70,10 +70,10 @@ extern u8 D_800CBB84[];
extern u8 D_800CBB64[];
void func_800CAFAC(void *a0) {
s32 temp = *(s32 *)((u8 *)a0 + 0x20);
*(u32 *)((u8 *)a0 + 0x44) |= 2;
s32 temp = ((Unkstruct_80126B58 *)a0)->unk20;
((Unkstruct_80126B58 *)a0)->unk44 |= 2;
if (func_80161208() == 0) {
switch (*(u8 *)((u8 *)a0 + 0xA9)) {
switch (((Unkstruct_80126B58 *)a0)->unkA9) {
case 0x41: {
s16 r = func_80148E54(a0);
if (r > 0) {
@@ -86,7 +86,7 @@ void func_800CAFAC(void *a0) {
func_80148AFC(a0);
break;
}
if (*(u16 *)((u8 *)a0 + 0xB8) & 0x4000) {
if (((Unkstruct_80126B58 *)a0)->unkB8 & 0x4000) {
s32 mf = -0xF;
s32 one = 1;
func_801466F0(0x1F, a0, 0, -0x18, mf, 0, 0, one);
@@ -96,12 +96,12 @@ void func_800CAFAC(void *a0) {
func_80147324(0xA64);
func_801655E4(a0);
}
if (*(u16 *)((u8 *)a0 + 0xB8) & 0x8000) {
if (((Unkstruct_80126B58 *)a0)->unkB8 & 0x8000) {
if (func_80165624(a0) == 0 && (func_801487F4((s32 *)a0) & 0x20)) {
func_80154274((s32 *)a0, (s32)D_800CBB84);
} else {
func_80154274((s32 *)a0, (s32)D_800CBB64);
*(u8 *)((u8 *)a0 + 0x197) += 1;
((Unkstruct_80126B58 *)a0)->unk197 += 1;
}
}
}
@@ -114,7 +114,7 @@ extern void func_80159B3C(void *a0);
void func_800CB194(s32 *a0) {
if (func_80161208() == 0) {
if (*(u16 *)((u8 *)a0 + 0xB8) == 0x8000) {
if (((Unkstruct_80126B58 *)a0)->unkB8 == 0x8000) {
func_801599A4(a0);
func_80159B3C(a0);
}
@@ -125,7 +125,7 @@ void func_800CB194(s32 *a0) {
extern void func_80154A74(s32 a0, s32 a1);
s32 func_800CB1E4(s32 a0)
{
*(u32 *)(a0 + 0x44) = *(u32 *)(a0 + 0x44) & ~2;
((Unkstruct_80126B58 *)a0)->unk44 = ((Unkstruct_80126B58 *)a0)->unk44 & ~2;
func_80154A74(a0, 0x11);
}
@@ -162,15 +162,15 @@ void func_800CB270(s32 a0) {
iVar1 = *(s32 *)(a0 + 0x4C);
iVar2 = ((s32 (*)(void))func_8014659C)();
*(s32 *)(a0 + 0x20) = iVar2;
((Unkstruct_80126B58 *)a0)->unk20 = iVar2;
if (iVar2 != 0) {
func_8001CA1C(iVar2, (s32)&D_800CBBBC);
*(s32 *)(iVar2 + 4) |= 0x58000000;
func_80149374(iVar1, a0 + 4);
*(u16 *)(a0 + 0x60) = *(u16 *)(iVar1 + 0x100);
*(u16 *)(a0 + 0x62) = *(u16 *)(iVar1 + 0x104);
uVar1 = *(u16 *)(*(s32 *)(iVar1 + 0x20) + 0x12);
*(u16 *)(a0 + 0x64) = (uVar1 + *(s32 *)(a0 + 0x50) * 0xAA - 0xAA) & 0xFFF;
((Unkstruct_80126B58 *)a0)->unk60 = ((Unkstruct_80126B58 *)iVar1)->unk100;
((Unkstruct_80126B58 *)a0)->unk62 = ((Unkstruct_80126B58 *)iVar1)->unk104;
uVar1 = *(u16 *)(((Unkstruct_80126B58 *)iVar1)->unk20 + 0x12);
((Unkstruct_80126B58 *)a0)->unk64 = (uVar1 + ((Unkstruct_80126B58 *)a0)->unk50 * 0xAA - 0xAA) & 0xFFF;
func_80146DE8((s32 *)a0, 0, 0, 0xFFC00000);
func_80146E90((s32 *)a0, 0x10);
func_80146CA0((void *)a0);
@@ -201,19 +201,19 @@ void func_800CB360(void *arg0) {
extern u8 D_80114EB0[];
extern u8 D_80114EC8[];
s32 v1 = *(u32 *)((s32)arg0 + 0x20);
s32 v1 = CAST_SIGN(u32, (s32)arg0, 0x20);
*(u16 *)(v1 + 0x14) += 0x200;
if (func_80146E98((s32)arg0)) {
func_80146A6C(3, arg0, *(s16 *)((s32)arg0 + 6), *(s16 *)((s32)arg0 + 0xA),
*(s16 *)((s32)arg0 + 0xE), 0, 0x1C00);
func_80146A6C(3, arg0, ((Unkstruct_80126B58 *)arg0)->unk6, ((Unkstruct_80126B58 *)arg0)->unkA,
((Unkstruct_80126B58 *)arg0)->unkE, 0, 0x1C00);
} else {
void *r16 = mat + 0x20;
u32 ret;
s32 id;
func_80013F3C(r16);
func_800126C4(r16, *(s16 *)((s32)arg0 + 0x60));
func_800123F0(r16, *(s16 *)((s32)arg0 + 0x62));
func_80012558(r16, *(s16 *)((s32)arg0 + 0x64));
func_800126C4(r16, CAST_SIGN(s16, (s32)arg0, 0x60));
func_800123F0(r16, CAST_SIGN(s16, (s32)arg0, 0x62));
func_80012558(r16, CAST_SIGN(s16, (s32)arg0, 0x64));
func_80163194((s32)arg0, 0, 0, 0, (s32)r16);
func_80162FC0((s32 *)arg0);
func_80163408((s32)arg0, 0x2D, 0x80, 0x200);
+46 -46
View File
@@ -25,7 +25,7 @@ extern void func_800CAED8(u8 *a0);
void func_800CAE90(u8 *a0) {
if (func_80161104()) {
func_800CAED8(a0);
*(u8 *)(a0 + 0x197) = *(u8 *)(a0 + 0x197) + 1;
((Unkstruct_80126B58 *)a0)->unk197 = ((Unkstruct_80126B58 *)a0)->unk197 + 1;
}
}
@@ -52,7 +52,7 @@ void func_800CAED8(u8 *a0) {
} else {
func_80154274((s32 *)a0, &D_800D57F4);
func_801655E4(a0);
*(u8 *)(a0 + 0x197) = *(u8 *)(a0 + 0x197) + 1;
((Unkstruct_80126B58 *)a0)->unk197 = ((Unkstruct_80126B58 *)a0)->unk197 + 1;
}
}
@@ -68,7 +68,7 @@ extern s32 func_80161208();
void func_800CAF80(void *a0) {
u16 flag;
flag = *(u16 *)((u8 *)a0 + 0xB8);
flag = ((Unkstruct_80126B58 *)a0)->unkB8;
if (flag == 0x8000) {
func_801599A4(a0);
func_80159B3C(a0);
@@ -78,7 +78,7 @@ void func_800CAF80(void *a0) {
func_80019064(&D_80062BE8);
}
if (func_80161208(a0) == 0) {
*(s32 *)((u8 *)a0 + 0x44) |= 2;
CAST_SIGN(s32, (u8 *)a0, 0x44) |= 2;
}
}
}
@@ -127,26 +127,26 @@ void func_800CB0B4(s32 param_1) {
s32 obj;
obj = ((s32 (*)(void))func_8014659C)();
*(s32 *)(param_1 + 0x20) = obj;
((Unkstruct_80126B58 *)param_1)->unk20 = obj;
if (obj != 0) {
func_8001C214(obj, (s32)&D_800CC444);
*(u16 *)(obj + 0x10) = *(u16 *)(*(s32 *)(iVar2 + 0x20) + 0x10);
*(u16 *)(obj + 0x10) = *(u16 *)(((Unkstruct_80126B58 *)iVar2)->unk20 + 0x10);
{
s32 prod;
prod = (*(s32 *)(param_1 + 0x50) - 1) * 0x155;
prod = (((Unkstruct_80126B58 *)param_1)->unk50 - 1) * 0x155;
*(u16 *)(obj + 0x12) =
(*(u16 *)(*(s32 *)(iVar2 + 0x20) + 0x12) + prod) & 0xFFF;
(*(u16 *)(((Unkstruct_80126B58 *)iVar2)->unk20 + 0x12) + prod) & 0xFFF;
}
*(u16 *)(obj + 0x14) = *(u16 *)(*(s32 *)(iVar2 + 0x20) + 0x14);
*(u16 *)(param_1 + 0x58) = *(u16 *)(iVar2 + 0x100);
*(u16 *)(param_1 + 0x5A) = *(u16 *)(iVar2 + 0x102);
*(u16 *)(param_1 + 0x5C) = *(u16 *)(iVar2 + 0x104);
*(u16 *)(obj + 0x14) = *(u16 *)(((Unkstruct_80126B58 *)iVar2)->unk20 + 0x14);
CAST_WIDTH(u16, param_1, 0x58) = ((Unkstruct_80126B58 *)iVar2)->unk100;
*(u16 *)(param_1 + 0x5A) = ((Unkstruct_80126B58 *)iVar2)->unk102;
CAST_WIDTH(u16, param_1, 0x5C) = ((Unkstruct_80126B58 *)iVar2)->unk104;
func_80149374(iVar2, param_1 + 4);
{
s32 dstp;
s32 srcp;
dstp = *(s32 *)(param_1 + 0x20);
srcp = *(s32 *)(iVar2 + 0x20);
dstp = ((Unkstruct_80126B58 *)param_1)->unk20;
srcp = ((Unkstruct_80126B58 *)iVar2)->unk20;
*(Blk16X *)(dstp + 0x34) = *(Blk16X *)(srcp + 0x34);
*(Blk16X *)(dstp + 0x44) = *(Blk16X *)(srcp + 0x44);
}
@@ -186,7 +186,7 @@ void func_800CB228(s32 param_1) {
s32 *obj;
Mtx40 m;
obj = *(s32 **)(param_1 + 0x20);
obj = CAST_SIGN(s32 *, param_1, 0x20);
if (func_800CB6F4(param_1) == 0) {
func_80146C98((s32 *)param_1, 3);
return;
@@ -194,8 +194,8 @@ void func_800CB228(s32 param_1) {
func_800CB5CC((void *)param_1);
func_80013F3C(&m);
func_80012558(&m, *(s16 *)(param_1 + 0x5A));
func_800126C4(&m, *(s16 *)(param_1 + 0x58));
func_800123F0(&m, *(s16 *)(param_1 + 0x5C));
func_800126C4(&m, CAST_WIDTH(s16, param_1, 0x58));
func_800123F0(&m, CAST_WIDTH(s16, param_1, 0x5C));
func_80012558(&m, *(s16 *)((s8 *)obj + 0x12));
func_800126C4(&m, *(s16 *)((s8 *)obj + 0x10));
func_800123F0(&m, *(s16 *)((s8 *)obj + 0x14));
@@ -208,8 +208,8 @@ void func_800CB228(s32 param_1) {
func_80146CA0((void *)param_1);
return;
}
if (*(s32 *)(param_1 + 0x1C) == 0x27) {
*(s32 *)(param_1 + 0x54) = func_800CB4D4(param_1);
if (((Unkstruct_80126B58 *)param_1)->unk1C == 0x27) {
((Unkstruct_80126B58 *)param_1)->unk54 = func_800CB4D4(param_1);
}
func_800CB5CC((void *)param_1);
func_80163408(param_1, 0x2B, 0, 0x40);
@@ -224,7 +224,7 @@ void func_800CB228(s32 param_1) {
func_80146CA0((void *)param_1);
return;
}
if ((*(s32 *)(param_1 + 0x1C) & 1) == 0) {
if ((((Unkstruct_80126B58 *)param_1)->unk1C & 1) == 0) {
func_80146A6C(0x50, (void *)param_1, 0, 0, 0x20, 0, 0);
}
}
@@ -243,8 +243,8 @@ void func_800CB424(void *a0)
return;
}
for (i = 0; i < 4; i++) {
func_80146A6C(0x4E, a0, *(s16 *)((s32)a0 + 6), *(s16 *)((s32)a0 + 0xA),
*(s16 *)((s32)a0 + 0xE), i, 1);
func_80146A6C(0x4E, a0, ((Unkstruct_80126B58 *)a0)->unk6, ((Unkstruct_80126B58 *)a0)->unkA,
((Unkstruct_80126B58 *)a0)->unkE, i, 1);
}
}
@@ -257,7 +257,7 @@ void func_800CB4AC(void) {
void func_800CB4CC(void *a0)
{
*(s32 *)((s32)a0 + 0x54) = 0;
((Unkstruct_80126B58 *)a0)->unk54 = 0;
}
@@ -302,9 +302,9 @@ s32 func_800CB4D4(s32 a0) {
void func_800CB5CC(void *a0) {
if (*(s32 *)((s32)a0 + 0x54) != 0) {
if (func_8014C308((s32)a0, *(s32 *)((s32)a0 + 0x54), 0x2B, 0x40) != 0) {
func_800CB61C(a0, *(s32 *)((s32)a0 + 0x54));
if (((Unkstruct_80126B58 *)a0)->unk54 != 0) {
if (func_8014C308((s32)a0, ((Unkstruct_80126B58 *)a0)->unk54, 0x2B, 0x40) != 0) {
func_800CB61C(a0, ((Unkstruct_80126B58 *)a0)->unk54);
}
}
}
@@ -317,7 +317,7 @@ s32 func_800CB61C(s32 a0, s32 a1)
extern s32 func_8014C59C(void *, void *);
extern s32 func_80012DBC(s32, s32, s32, s32);
s32 s2 = *(s32 *)(a0 + 0x20);
s32 s2 = ((Unkstruct_80126B58 *)a0)->unk20;
Blk8 buf;
s32 r1, r2, x, y;
@@ -347,9 +347,9 @@ s32 func_800CB6F4(int param_1, int param_2)
int iVarX;
int iVarY;
int sp[6];
sp[0] = (int)*(short *)(param_1 + 6);
sp[1] = (int)*(short *)(param_1 + 10);
sp[2] = (int)*(short *)(param_1 + 0xe);
sp[0] = (int)((Unkstruct_80126B58 *)param_1)->unk6;
sp[1] = (int)((Unkstruct_80126B58 *)param_1)->unkA;
sp[2] = (int)((Unkstruct_80126B58 *)param_1)->unkE;
r0 = &D_800AF648;
gte_SetRotMatrix(r0);
gte_SetTransMatrix(r0);
@@ -416,7 +416,7 @@ void func_800CB860(s32 param_1) {
p = ((s32 (*)(void))func_801465C0)();
pb = p;
*(s32 *)(param_1 + 0x20) = p;
((Unkstruct_80126B58 *)param_1)->unk20 = p;
if (p != 0) {
((void (*)(s32, void *, s32, s32))func_8001CC3C)(p, D_800CBE50, 0, 0);
@@ -426,9 +426,9 @@ void func_800CB860(s32 param_1) {
func_80128EA8(p, param_1 + 0x24, D_800CBE5C);
vel = D_800CBEE8;
rot = D_800CBEB8[*(s32 *)(param_1 + 0x2c)];
rot = D_800CBEB8[((Unkstruct_80126B58 *)param_1)->unk2C];
if (*(s32 *)(param_1 + 0x30) != 0) {
if (((Unkstruct_80126B58 *)param_1)->unk30 != 0) {
rot.vx += ((rand() & 0x3f) << 4) - 0x200;
rot.vy += ((rand() & 0x3f) << 4) - 0x200;
rot.vz += ((rand() & 0x3f) << 4) - 0x200;
@@ -440,16 +440,16 @@ void func_800CB860(s32 param_1) {
func_80049CAC((s32)&rot, (s32)&m);
func_800484EC((s32)&m, (s32)&vel, (s32)&vel);
*(s32 *)(param_1 + 0x10) = vel.vx;
*(s32 *)(param_1 + 0x14) = vel.vy;
*(s32 *)(param_1 + 0x18) = vel.vz;
((Unkstruct_80126B58 *)param_1)->unk10 = vel.vx;
((Unkstruct_80126B58 *)param_1)->unk14 = vel.vy;
((Unkstruct_80126B58 *)param_1)->unk18 = vel.vz;
*(u8 *)(pb + 0x24) = 0xC0;
*(u8 *)(pb + 0x25) = 0xC0;
*(u8 *)(pb + 0x26) = 0x40;
func_80146E90((s32 *)param_1, 4);
*(s16 *)(param_1 + 2) = *(u16 *)(param_1 + 2) + 1;
((Unkstruct_80126B58 *)param_1)->unk2 = ((Unkstruct_80126B58 *)param_1)->unk2 + 1;
} else {
((void (*)(s32))func_80146C3C)(param_1);
}
@@ -466,17 +466,17 @@ void func_800CBAAC(s32 param_1)
{
s32 s0;
s0 = *(s32 *)(param_1 + 0x20);
s0 = ((Unkstruct_80126B58 *)param_1)->unk20;
func_80128ED8(s0, (s32 *)(param_1 + 0x24));
*(s8 *)(s0 + 0x27) = *(u8 *)(param_1 + 0x28) - 0x70;
*(s8 *)(s0 + 0x27) = CAST_WIDTH(u8, param_1, 0x28) - 0x70;
func_800CBBDC(param_1);
((void (*)(s32, s32))func_800CBC40)(param_1, 0x30);
if (func_80146E98(param_1) != 0) {
*(s32 *)(param_1 + 0x10) >>= 2;
*(s32 *)(param_1 + 0x14) >>= 2;
*(s32 *)(param_1 + 0x18) >>= 2;
((Unkstruct_80126B58 *)param_1)->unk10 >>= 2;
((Unkstruct_80126B58 *)param_1)->unk14 >>= 2;
((Unkstruct_80126B58 *)param_1)->unk18 >>= 2;
func_80146E90((s32 *)param_1, 8);
*(s16 *)(param_1 + 2) = *(s16 *)(param_1 + 2) + 1;
((Unkstruct_80126B58 *)param_1)->unk2 = CAST_SIGN(s16, param_1, 2) + 1;
}
}
@@ -509,9 +509,9 @@ s32 param_1;
void func_800CBBDC(s32 a0) {
*(s32 *)(a0 + 4) += *(s32 *)(a0 + 0x10);
*(s32 *)(a0 + 8) += *(s32 *)(a0 + 0x14);
*(s32 *)(a0 + 0xC) += *(s32 *)(a0 + 0x18);
CAST_WIDTH(s32, a0, 4) += ((Unkstruct_80126B58 *)a0)->unk10;
CAST_WIDTH(s32, a0, 8) += ((Unkstruct_80126B58 *)a0)->unk14;
CAST_WIDTH(s32, a0, 0xC) += ((Unkstruct_80126B58 *)a0)->unk18;
}
+31 -31
View File
@@ -35,7 +35,7 @@ extern M2C_UNK D_800D57F4;
void func_800CAED0(u8 *a0) {
func_80154274((s32 *)a0, (s32)&D_800D57F4);
func_801655E4(a0);
*(u8 *)(a0 + 0x197) = *(u8 *)(a0 + 0x197) + 1;
((Unkstruct_80126B58 *)a0)->unk197 = ((Unkstruct_80126B58 *)a0)->unk197 + 1;
}
@@ -50,7 +50,7 @@ extern s32 func_80161208(); /* canonical no-proto */
void func_800CAF18(void *a0) {
u16 flag;
flag = *(u16 *)((u8 *)a0 + 0xB8);
flag = ((Unkstruct_80126B58 *)a0)->unkB8;
if (flag == 0x8000) {
func_801599A4(a0);
func_80159B3C(a0);
@@ -59,7 +59,7 @@ void func_800CAF18(void *a0) {
func_801466F0(0x20, (s32)a0, 0, -0x40, 0, 0, 0, 0);
}
if (func_80161208(a0) == 0) {
*(u32 *)((u8 *)a0 + 0x44) |= 2;
((Unkstruct_80126B58 *)a0)->unk44 |= 2;
}
}
}
@@ -108,15 +108,15 @@ void func_800CB038(void *a0) {
void *s2 = *(void **)((s32)a0 + 0x4C);
s32 s1 = ((s32 (*)(void))func_8014659C)();
*(s32 *)((s32)a0 + 0x20) = s1;
((Unkstruct_80126B58 *)a0)->unk20 = s1;
if (s1 != 0) {
func_8001C214(s1, (s32)&D_800CBD74);
*(u16 *)(s1 + 0x12) = *(u16 *)(*(s32 *)(s2 + 0x20) + 0x12);
*(u16 *)(s1 + 0x12) = *(u16 *)(((Unkstruct_80126B58 *)s2)->unk20 + 0x12);
func_80149374((s32)s2, (s32)a0 + 4);
func_80146DE8((s32 *)a0, 0, -0xC0000, -0x100000);
func_80146E90((s32 *)a0, 100);
memcpy((void *)((s32)a0 + 0x58), (void *)(s1 + 0x10), 8);
*(u16 *)((s32)a0 + 0x60) = 2;
((Unkstruct_80126B58 *)a0)->unk60 = 2;
func_80147324(0x8F3);
func_80146CA0(a0);
} else {
@@ -146,7 +146,7 @@ void func_800CB114(void *a0) {
s32 f;
s32 w;
obj = *(void **)((s32)a0 + 0x20);
obj = CAST_SIGN(void *, (s32)a0, 0x20);
memcpy(save, (void *)(obj + 0x10), 8);
memcpy((void *)(obj + 0x10), (void *)((s32)a0 + 0x58), 8);
func_80162FF4((s32)a0, 0, 0x20000, 0);
@@ -166,15 +166,15 @@ void func_800CB114(void *a0) {
if ((f & 0x6000) == 0) {
goto L250;
}
w = *(u16 *)((s32)a0 + 0x60);
w = ((Unkstruct_80126B58 *)a0)->unk60;
w = w - 1;
*(u16 *)((s32)a0 + 0x60) = w;
((Unkstruct_80126B58 *)a0)->unk60 = w;
if ((s16)w == -1) {
goto L250;
}
{
s32 v = *(s32 *)((s32)a0 + 0x28);
*(s32 *)((s32)a0 + 0x28) = -(v / 2);
s32 v = ((Unkstruct_80126B58 *)a0)->unk28;
((Unkstruct_80126B58 *)a0)->unk28 = -(v / 2);
}
goto L274;
L250:
@@ -217,10 +217,10 @@ void func_800CB304(void *a0) {
s32 i;
if (pad == NULL) {}
var_s2 = *(s32 *)((s32)a0 + 0x20);
var_s2 = ((Unkstruct_80126B58 *)a0)->unk20;
for (i = 0; i < 6; i++) {
func_80146A6C(0x4D, a0, *(s16 *)((s32)a0 + 0x6), *(s16 *)((s32)a0 + 0xA),
*(s16 *)((s32)a0 + 0xE), i, 1);
func_80146A6C(0x4D, a0, ((Unkstruct_80126B58 *)a0)->unk6, ((Unkstruct_80126B58 *)a0)->unkA,
((Unkstruct_80126B58 *)a0)->unkE, i, 1);
}
if (func_80146E98((s32)a0) != 0) {
func_80146CA0(a0);
@@ -311,9 +311,9 @@ void func_800CB4E4(s32 param_1) {
s32 node;
obj = ((s32 (*)(void))func_801465C0)();
*(s32 *)(param_1 + 0x20) = obj;
((Unkstruct_80126B58 *)param_1)->unk20 = obj;
if (*(s32 *)(param_1 + 0x20) != 0) {
if (((Unkstruct_80126B58 *)param_1)->unk20 != 0) {
func_8001CC3C(obj, D_800CB8EC, 0, 0);
node = obj;
*(u8 *)(node + 0x27) = 0x90;
@@ -322,9 +322,9 @@ void func_800CB4E4(s32 param_1) {
func_80128EA8(node, param_1 + 0x24, (s32)D_800CB8F8);
vel = D_800CB984;
rot = D_800CB954[*(s32 *)(param_1 + 0x2c)];
rot = D_800CB954[((Unkstruct_80126B58 *)param_1)->unk2C];
if (*(s32 *)(param_1 + 0x30) != 0) {
if (((Unkstruct_80126B58 *)param_1)->unk30 != 0) {
rot.vx += ((rand() & 0x3f) << 4) - 0x200;
rot.vy += ((rand() & 0x3f) << 4) - 0x200;
rot.vz += ((rand() & 0x3f) << 4) - 0x200;
@@ -336,12 +336,12 @@ void func_800CB4E4(s32 param_1) {
func_80049CAC((s32)&rot, (s32)&m);
func_800484EC((s32)&m, (s32)&vel, (s32)&vel);
*(s32 *)(param_1 + 0x10) = vel.vx;
*(s32 *)(param_1 + 0x14) = vel.vy;
*(s32 *)(param_1 + 0x18) = vel.vz;
((Unkstruct_80126B58 *)param_1)->unk10 = vel.vx;
((Unkstruct_80126B58 *)param_1)->unk14 = vel.vy;
((Unkstruct_80126B58 *)param_1)->unk18 = vel.vz;
func_80146E90((s32 *)param_1, 4);
*(s16 *)(param_1 + 0x2) = *(u16 *)(param_1 + 0x2) + 1;
((Unkstruct_80126B58 *)param_1)->unk2 = ((Unkstruct_80126B58 *)param_1)->unk2 + 1;
} else {
((void (*)(s32))func_80146C3C)(param_1);
}
@@ -357,17 +357,17 @@ extern void func_80146E90(s32 *param_1, s32 param_2);
void func_800CB710(s32 param_1) {
s32 node;
node = *(s32 *)(param_1 + 0x20);
node = ((Unkstruct_80126B58 *)param_1)->unk20;
func_80128ED8(node, (s32 *)(param_1 + 0x24));
*(u8 *)(node + 0x27) = *(u8 *)(param_1 + 0x28) - 0x70;
*(u8 *)(node + 0x27) = CAST_WIDTH(u8, param_1, 0x28) - 0x70;
func_800CB840(param_1);
((void (*)(s32, s32))func_800CB8A8)(param_1, 0x30);
if (func_80146E98(param_1) != 0) {
*(s32 *)(param_1 + 0x10) = *(s32 *)(param_1 + 0x10) >> 2;
*(s32 *)(param_1 + 0x14) = *(s32 *)(param_1 + 0x14) >> 2;
*(s32 *)(param_1 + 0x18) = *(s32 *)(param_1 + 0x18) >> 2;
((Unkstruct_80126B58 *)param_1)->unk10 = ((Unkstruct_80126B58 *)param_1)->unk10 >> 2;
((Unkstruct_80126B58 *)param_1)->unk14 = ((Unkstruct_80126B58 *)param_1)->unk14 >> 2;
((Unkstruct_80126B58 *)param_1)->unk18 = ((Unkstruct_80126B58 *)param_1)->unk18 >> 2;
func_80146E90((s32 *)param_1, 8);
*(u16 *)(param_1 + 2) = *(u16 *)(param_1 + 2) + 1;
((Unkstruct_80126B58 *)param_1)->unk2 = ((Unkstruct_80126B58 *)param_1)->unk2 + 1;
}
}
@@ -398,9 +398,9 @@ void func_800CB7B8(s32 param_1) {
void func_800CB840(s32 param_1) {
*(s32 *)(param_1 + 0x4) += *(s32 *)(param_1 + 0x10);
*(s32 *)(param_1 + 0x8) += *(s32 *)(param_1 + 0x14);
*(s32 *)(param_1 + 0xC) += *(s32 *)(param_1 + 0x18);
CAST_WIDTH(s32, param_1, 0x4) += ((Unkstruct_80126B58 *)param_1)->unk10;
CAST_WIDTH(s32, param_1, 0x8) += ((Unkstruct_80126B58 *)param_1)->unk14;
CAST_WIDTH(s32, param_1, 0xC) += ((Unkstruct_80126B58 *)param_1)->unk18;
}
+6 -6
View File
@@ -30,7 +30,7 @@ void func_800CAEC0(u8 *a0) {
func_80154274((s32 *)a0, &D_800D57F4);
func_801655E4((s32)a0);
*(u8 *)(a0 + 0x197) = *(u8 *)(a0 + 0x197) + 1;
((Unkstruct_80126B58 *)a0)->unk197 = ((Unkstruct_80126B58 *)a0)->unk197 + 1;
}
@@ -44,7 +44,7 @@ extern s32 func_80161208();
void func_800CAF08(void *a0) {
u16 flags;
flags = *(u16 *)((s32)a0 + 0xB8);
flags = ((Unkstruct_80126B58 *)a0)->unkB8;
if (flags == 0x8000) {
func_801599A4(a0);
func_80159B3C(a0);
@@ -109,14 +109,14 @@ void func_800CB028(s32 a0) {
s2 = *(s32 *)(a0 + 0x4C);
s0 = ((s32 (*)(void))func_8014659C)();
*(s32 *)(a0 + 0x20) = s0;
((Unkstruct_80126B58 *)a0)->unk20 = s0;
if (s0 != 0) {
func_8001C214(s0, (s32)&D_800CBE04);
*(u16 *)(s0 + 0x2C) = *(u16 *)(s0 + 0x2C) | 0x10;
*(u16 *)(s0 + 0x1C) = 0x2000;
*(u16 *)(s0 + 0x1A) = 0x2000;
*(u16 *)(s0 + 0x18) = 0x2000;
*(u16 *)(s0 + 0x12) = *(u16 *)(*(s32 *)(s2 + 0x20) + 0x12);
*(u16 *)(s0 + 0x12) = *(u16 *)(((Unkstruct_80126B58 *)s2)->unk20 + 0x12);
func_80149374(s2, a0 + 4);
func_80146DE8((s32 *)a0, 0, 0, 0xFFE80000);
func_80146E90((s32 *)a0, 0x3C);
@@ -162,8 +162,8 @@ void func_800CB118(s32 a0) {
ret = func_801638A0((u8 *) a0, (s32) sp20);
if (ret == 0) {
} else if ((m = ret & 0x8000) != 0) {
*(s32 *)(a0 + 0x2C) = 0;
*(s32 *)(a0 + 0x24) = 0;
((Unkstruct_80126B58 *)a0)->unk2C = 0;
CAST_WIDTH(s32, a0, 0x24) = 0;
} else {
func_80146E90((s32 *) a0, 0x20);
func_80146CA0((void *) a0);
+16 -16
View File
@@ -56,41 +56,41 @@ extern s32 func_80155FB0(s32 a0, s32 a1);
void func_800CCBF0(u8 *a0) {
s32 dead[12];
u8 *p = D_80078E78;
s32 var = *(s32 *)(a0 + 0x23C);
s32 var = ((Unkstruct_80126B58 *)a0)->unk23C;
if (var == 0) {
if (*(u16 *)(a0 + 0xB8) & 0x4000) {
*(s32 *)(a0 + 0x23C) = 1;
if (((Unkstruct_80126B58 *)a0)->unkB8 & 0x4000) {
((Unkstruct_80126B58 *)a0)->unk23C = 1;
((void (*)(void *))func_800CCD60)(a0);
}
} else {
if (var >= 0) {
if (var < 7) {
*(s32 *)(a0 + 0x23C) = var + 1;
((Unkstruct_80126B58 *)a0)->unk23C = var + 1;
((void (*)(void *))func_800CCD60)(a0);
}
}
}
switch (*(s32 *)(a0 + 0x234)) {
switch (((Unkstruct_80126B58 *)a0)->unk234) {
case 0:
if (*(u16 *)(a0 + 0xB8) & 0x8000) {
if (*(s16 *)(a0 + 0x246) < 0x1000) {
*(u16 *)(a0 + 0x248) += 30;
*(u16 *)(a0 + 0x246) += *(u16 *)(a0 + 0x248);
*(u16 *)(a0 + 0x24A) = *(u16 *)(*(s32 *)(a0 + 0x20) + 0x12);
*(u16 *)(*(s32 *)(a0 + 0x20) + 0x12) =
*(u16 *)(a0 + 0x244) + *(u16 *)(a0 + 0x246);
if (((Unkstruct_80126B58 *)a0)->unkB8 & 0x8000) {
if (CAST_SIGN(s16, a0, 0x246) < 0x1000) {
((Unkstruct_80126B58 *)a0)->unk248 += 30;
((Unkstruct_80126B58 *)a0)->unk246 += ((Unkstruct_80126B58 *)a0)->unk248;
((Unkstruct_80126B58 *)a0)->unk24A = *(u16 *)(((Unkstruct_80126B58 *)a0)->unk20 + 0x12);
*(u16 *)(((Unkstruct_80126B58 *)a0)->unk20 + 0x12) =
((Unkstruct_80126B58 *)a0)->unk244 + ((Unkstruct_80126B58 *)a0)->unk246;
func_80155FB0((s32)a0, (p[0x48] & 0x7F) - 1);
} else {
*(u16 *)(a0 + 0xB8) = 1;
*(u16 *)(*(s32 *)(a0 + 0x20) + 0x12) = *(u16 *)(a0 + 0x244);
*(s32 *)(a0 + 0x234) += 1;
((Unkstruct_80126B58 *)a0)->unkB8 = 1;
*(u16 *)(((Unkstruct_80126B58 *)a0)->unk20 + 0x12) = ((Unkstruct_80126B58 *)a0)->unk244;
((Unkstruct_80126B58 *)a0)->unk234 += 1;
}
}
break;
case 1:
if (*(u16 *)(a0 + 0xB8) & 0x8000) {
if (((Unkstruct_80126B58 *)a0)->unkB8 & 0x8000) {
func_801599A4(a0);
func_80159B3C(a0);
return;
+42 -42
View File
@@ -58,7 +58,7 @@ void func_800CCBCC(s32 a0)
}
func_8016151C((void *)a0);
func_801725A4((u8 *)a0);
if (*(s32 *)(a0 + 0x34) > 0) {
if (((Unkstruct_80126B58 *)a0)->unk34 > 0) {
func_801477E8((s32 *)a0, 0x40000);
func_80154274((s32 *)a0, (s32)D_800D53C0);
func_80146CA0((void *)a0);
@@ -82,7 +82,7 @@ void func_800CCC88(void *a0) {
}
func_8016151C(a0);
func_801725A4((u8 *)a0);
if (*(u16 *)((char *)a0 + 0xB8) & 0x8000) {
if (((Unkstruct_80126B58 *)a0)->unkB8 & 0x8000) {
func_80154274((s32 *)a0, (s32)&D_800D5404);
func_80146CA0(a0);
}
@@ -130,7 +130,7 @@ extern s32 func_80161208();
void func_800CCDC4(s32 a0)
{
*(s32 *)(a0 + 0x44) |= 2;
CAST_SIGN(s32, a0, 0x44) |= 2;
if (func_80146E98(a0) != 0) {
func_801599A4((void *)a0);
func_80159B3C((void *)a0);
@@ -161,7 +161,7 @@ void func_800CCE24(void *a0) {
s32 func_800CCEA0(void *a0) {
*(s32 *)((s32)a0 + 0x234) = 150;
((Unkstruct_80126B58 *)a0)->unk234 = 150;
return 150;
}
@@ -173,8 +173,8 @@ s32 func_800CCEAC(void *a0)
extern s16 currentLocationId;
if (currentLocationId == 0x306F) {
if (*(s32 *)((s32)a0 + 0x234) != 0) {
(*(s32 *)((s32)a0 + 0x234))--;
if (((Unkstruct_80126B58 *)a0)->unk234 != 0) {
(((Unkstruct_80126B58 *)a0)->unk234)--;
return 0;
}
func_801599A4(a0);
@@ -190,7 +190,7 @@ s32 func_800CCEAC(void *a0)
void func_800CCF14(void *a0) {
extern void (*D_800CD6EC[])(void);
D_800CD6EC[*(u16 *)((s32)a0 + 0x2)]();
D_800CD6EC[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -216,7 +216,7 @@ void func_800CCF50(void *a0) {
s2 = *(s32 *)(a0 + 0x4C);
s0 = (s32)((void *(*)(void))func_80146578)();
s3 = (s32)&D_800CD704;
*(s32 *)(a0 + 0x20) = s0;
((Unkstruct_80126B58 *)a0)->unk20 = s0;
if (s0 != 0) {
func_8001CD50(s0, s3);
@@ -224,12 +224,12 @@ void func_800CCF50(void *a0) {
*(s32 *)(s0 + 4) |= 0x50000000;
*(u16 *)(s0 + 0x1C) = 0;
func_80149374(s2, a0 + 4);
*(u16 *)(s0 + 0x10) = *(u16 *)(s2 + 0x100);
*(u16 *)(s0 + 0x14) = *(u16 *)(s2 + 0x104);
*(u16 *)(s0 + 0x12) = *(u16 *)(*(s32 *)(s2 + 0x20) + 0x12);
*(u16 *)(s0 + 0x10) = ((Unkstruct_80126B58 *)s2)->unk100;
*(u16 *)(s0 + 0x14) = ((Unkstruct_80126B58 *)s2)->unk104;
*(u16 *)(s0 + 0x12) = *(u16 *)(((Unkstruct_80126B58 *)s2)->unk20 + 0x12);
func_80146E90((s32 *)a0, 0x10);
*(u16 *)(a0 + 0x60) = 0;
*(u16 *)(a0 + 0x62) = 0;
((Unkstruct_80126B58 *)a0)->unk60 = 0;
((Unkstruct_80126B58 *)a0)->unk62 = 0;
func_800CD1F4((void *)a0, (void *)s3);
func_800CD258((void *)a0, (void *)s3);
func_800CD27C(a0);
@@ -259,16 +259,16 @@ void func_800CD054(void *a0) {
s32 v0;
s32 v1;
s1 = *(s32 *)((s32)a0 + 0x20);
s1 = ((Unkstruct_80126B58 *)a0)->unk20;
dp = D_800CD704;
func_800CD258(a0, dp);
func_800CD27C((s32)a0);
if ((*(u32 *)((s32)a0 + 0x1C) & 7) == 0) {
func_801466F0(6, (s32)a0, 0, 0, 0, *(s16 *)((s32)a0 + 0x62), 0, 1);
w = *(u16 *)((s32)a0 + 0x62) + 1;
*(u16 *)((s32)a0 + 0x62) = w;
if ((CAST_SIGN(u32, (s32)a0, 0x1C) & 7) == 0) {
func_801466F0(6, (s32)a0, 0, 0, 0, CAST_SIGN(s16, (s32)a0, 0x62), 0, 1);
w = ((Unkstruct_80126B58 *)a0)->unk62 + 1;
((Unkstruct_80126B58 *)a0)->unk62 = w;
if ((s16)w >= 8) {
*(u16 *)((s32)a0 + 0x62) = 0;
((Unkstruct_80126B58 *)a0)->unk62 = 0;
}
func_80147324(0x47E);
}
@@ -276,9 +276,9 @@ void func_800CD054(void *a0) {
v1 = *(u16 *)(s1 + 0x1A) + v0;
*(u16 *)(s1 + 0x1A) = v1;
*(u16 *)(s1 + 0x18) = v1;
v1 = *(u16 *)((s32)a0 + 0x60);
v1 = ((Unkstruct_80126B58 *)a0)->unk60;
v1 += 0x20;
*(u16 *)((s32)a0 + 0x60) = v1;
((Unkstruct_80126B58 *)a0)->unk60 = v1;
v0 = *(u16 *)(s1 + 0x1C) + v1;
*(u16 *)(s1 + 0x1C) = v0;
if ((s16)v0 >= 0x1000) {
@@ -287,7 +287,7 @@ void func_800CD054(void *a0) {
*(u16 *)(s1 + 0x1E) = *(u16 *)(s1 + 0x1C) | 0x4000;
if (*(s16 *)(s1 + 0x1C) == 0x1000) {
*(u16 *)(s1 + 0x1C) = 0;
*(u16 *)((s32)a0 + 0x60) = 0;
((Unkstruct_80126B58 *)a0)->unk60 = 0;
*(S4_800CD054 *)(dp + 4) = *(S4_800CD054 *)(dp + 0xC);
}
v0 = func_80146E98((s32)a0);
@@ -311,7 +311,7 @@ void func_800CD1F4(void *a0, void *a1) {
void *s0;
s0 = a1;
if (*(s32 *)((s32)a0 + 0x50) == 0) {
if (((Unkstruct_80126B58 *)a0)->unk50 == 0) {
func_800233CC(s0, 0x40);
} else {
func_800233CC(s0, 0x30);
@@ -330,7 +330,7 @@ s32 func_800CD258(void *a0, void *a1) {
*(u8 *)((s32)a1 + 8) = 0;
*(u8 *)((s32)a1 + 9) = 0;
*(u8 *)((s32)a1 + 10) = 0;
v = (*(u32 *)((s32)a0 + 0x1C)) << 3;
v = (CAST_SIGN(u32, (s32)a0, 0x1C)) << 3;
*(u8 *)((s32)a1 + 14) = 0;
*(u8 *)((s32)a1 + 12) = v;
*(u8 *)((s32)a1 + 13) = v;
@@ -349,7 +349,7 @@ void func_800CD27C(s32 a0) {
MtxBuf_800CD27C buf;
s32 obj;
obj = *(s32 *)(a0 + 0x20);
obj = ((Unkstruct_80126B58 *)a0)->unk20;
func_80013F3C((s32)&buf);
func_800126C4((s32)&buf, *(s16 *)(obj + 0x10));
func_800123F0((s32)&buf, *(s16 *)(obj + 0x14));
@@ -390,7 +390,7 @@ void func_800CD31C(s32 arg0) {
void func_800CD3C8(void *a0) {
extern void (*D_800CD6F8[])(void);
D_800CD6F8[*(u16 *)((s32)a0 + 0x2)]();
D_800CD6F8[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -419,12 +419,12 @@ void func_800CD404(void *a0) {
s32 base;
s32 val;
base = (s32)&D_800CD764;
val = *(s32 *)(a0 + 0x50) << 6;
val = ((Unkstruct_80126B58 *)a0)->unk50 << 6;
s3 = val + base;
}
func_8013C9C4(&D_800D3428);
s0 = (s32)((void *(*)(void))func_80146578)();
*(s32 *)(a0 + 0x20) = s0;
((Unkstruct_80126B58 *)a0)->unk20 = s0;
if (s0 != 0) {
func_8001CD50(s0, s3);
@@ -435,18 +435,18 @@ void func_800CD404(void *a0) {
{
s32 dstp;
s32 srcp;
dstp = (*(s32 *)(a0 + 0x50) << 5) + (s32)&D_800CD964;
dstp = (((Unkstruct_80126B58 *)a0)->unk50 << 5) + (s32)&D_800CD964;
*(s32 *)(s0 + 0x34) = dstp;
srcp = *(s32 *)(*(s32 *)(a0 + 0x4C) + 0x20);
srcp = ((Unkstruct_80126B58 *)*(s32 *)(a0 + 0x4C))->unk20;
srcp = *(s32 *)(srcp + 0x34);
*(Block32 *)dstp = *(Block32 *)srcp;
}
*(u16 *)(a0 + 6) = *(u16 *)(s2 + 6);
v = *(u16 *)(s2 + 0xA);
*(u16 *)(a0 + 0xA) = v;
*(u16 *)(a0 + 0x60) = v;
*(u16 *)(a0 + 0xE) = *(u16 *)(s2 + 0xE);
*(u16 *)(a0 + 0x62) = *(s32 *)(s2 + 0x1C);
((Unkstruct_80126B58 *)a0)->unk6 = CAST_SIGN(u16, s2, 6);
v = CAST_SIGN(u16, s2, 0xA);
((Unkstruct_80126B58 *)a0)->unkA = v;
((Unkstruct_80126B58 *)a0)->unk60 = v;
((Unkstruct_80126B58 *)a0)->unkE = CAST_SIGN(u16, s2, 0xE);
((Unkstruct_80126B58 *)a0)->unk62 = ((Unkstruct_80126B58 *)s2)->unk1C;
func_80146E90((s32 *)a0, 0x20);
func_800CD670(a0, (void *)s3);
((void (*)(void *, void *))func_800CD6D4)((void *)a0, (void *)s3);
@@ -469,10 +469,10 @@ void func_800CD57C(void *arg0) {
s32 v0;
s32 t;
s0 = *(s32 *)((s32)arg0 + 0x20);
s0 = ((Unkstruct_80126B58 *)arg0)->unk20;
((void (*)(void *, void *))func_800CD6D4)(
arg0,
(void *)(D_800CD764 + (*(s32 *)((s32)arg0 + 0x50) << 6)));
(void *)(D_800CD764 + (((Unkstruct_80126B58 *)arg0)->unk50 << 6)));
v0 = func_80012FC8(*(s16 *)(s0 + 0x1A), 0x5000, 0xA, 1);
t = *(u16 *)(s0 + 0x1A) + v0;
*(u16 *)(s0 + 0x1A) = t;
@@ -485,17 +485,17 @@ void func_800CD57C(void *arg0) {
{
s32 adj;
s32 v1;
v1 = *(s16 *)((s32)arg0 + 0x62);
v1 = CAST_SIGN(s16, (s32)arg0, 0x62);
v0 = v0 * 2;
v1 = v1 * v0;
adj = v1 / 0x1000;
{
register s32 fld __asm__("$2"); // !FAKE: pin $2 — NEEDED DIFFERS (P36 rung B tus10)
fld = *(u16 *)((s32)arg0 + 0x60);
fld = ((Unkstruct_80126B58 *)arg0)->unk60;
v0 = fld - adj;
}
}
*(u16 *)((s32)arg0 + 0xA) = v0;
((Unkstruct_80126B58 *)arg0)->unkA = v0;
v0 = func_80146E98((s32)arg0);
if (v0 != 0) {
func_80146CA0(arg0);
@@ -519,7 +519,7 @@ void func_800CD670(s32 arg0, void *arg1)
*(u8 *)(arg1 + 0) = 0;
*(u8 *)(arg1 + 1) = 0;
*(u8 *)(arg1 + 2) = 0;
t = *(s16 *)(arg0 + 0x62) * 12;
t = CAST_SIGN(s16, arg0, 0x62) * 12;
*(u8 *)(arg1 + 6) = 0;
*(u8 *)(arg1 + 5) = t;
*(u8 *)(arg1 + 4) = t;
+45 -45
View File
@@ -23,7 +23,7 @@ extern void func_80159B3C(void *a0);
void func_800CCB78(void *a0) {
func_8014B5C4((s32 *)a0, 3, 0);
func_801466F0(7, (s32)a0, 0, 0, 0, 0, 0, 0);
*(s16 *)((s32)a0 + 0x1C8) = 0xFF;
((Unkstruct_80126B58 *)a0)->unk1C8 = 0xFF;
func_801599A4(a0);
func_80159B3C(a0);
}
@@ -226,20 +226,20 @@ void func_800CD050(s32 arg0) {
func_80146CA0(arg0);
return;
}
*(u16*)(arg0 + 0x60) -= 1;
if (*(s16*)(arg0 + 0x60) < 0) {
*(u16*)(arg0 + 0x60) = 0;
((Unkstruct_80126B58 *)arg0)->unk60 -= 1;
if (CAST_SIGN(s16, arg0, 0x60) < 0) {
((Unkstruct_80126B58 *)arg0)->unk60 = 0;
}
if (D_800B99DA & 3) {
return;
}
acc = 0;
for (i = 0; i < 3; i++) {
acc |= func_80146608(9, ptr, 0, -30, 0, (*(s32*)(arg0 + 0x50))++, 0, 12, 1);
acc |= func_80146608(9, ptr, 0, -30, 0, (((Unkstruct_80126B58 *)arg0)->unk50)++, 0, 12, 1);
}
if ((*(s16*)(arg0 + 0x60) == 0) && (acc != 0)) {
if ((CAST_SIGN(s16, arg0, 0x60) == 0) && (acc != 0)) {
func_80147324(0x747);
*(u16*)(arg0 + 0x60) = 0xF;
((Unkstruct_80126B58 *)arg0)->unk60 = 0xF;
}
}
@@ -255,7 +255,7 @@ void func_800CD178(void) {
void func_800CD198(void *a0) {
extern void (*D_800CE220[])(void);
D_800CE220[*(u16 *)((s32)a0 + 0x2)]();
D_800CE220[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -279,18 +279,18 @@ void func_800CD1D4(s32 *s1) {
s2 = (s32 *)s1[0x13];
s0 = (s32 *)((s32 (*)(void))func_80146578)();
*(s32 *)(s1 + 8) = (s32)s0;
CAST_WIDTH(s32, s1, 8) = (s32)s0;
if (s0 != NULL) {
func_8001CC3C((s32)s0, D_800CE1E8, 0x238, 0x180);
*(u8 *)((s32)s0 + 0x27) = 0x21;
*(s32 *)(s0 + 1) |= 0x40000000;
CAST_MISALIGNED(s32, s0, 1) |= 0x40000000;
func_80149374((s32)s2, (s32)(s1 + 1));
func_800CD5EC(s1);
v0 = *(s32 *)((s32)s2 + 0x20);
*(V8_md_MAIN_044 *)((s32)s0 + 0x10) = *(V8_md_MAIN_044 *)((s32)v0 + 0x10);
*(u16 *)((s32)s1 + 0x60) = *(u16 *)((s32)s2 + 0x100);
*(u16 *)((s32)s1 + 0x62) = *(u16 *)((s32)s2 + 0x102);
*(u16 *)((s32)s1 + 0x64) = *(u16 *)((s32)s2 + 0x104);
((Unkstruct_80126B58 *)s1)->unk60 = *(u16 *)((s32)s2 + 0x100);
((Unkstruct_80126B58 *)s1)->unk62 = *(u16 *)((s32)s2 + 0x102);
((Unkstruct_80126B58 *)s1)->unk64 = *(u16 *)((s32)s2 + 0x104);
func_800CD834(s1);
func_80146DB8(s1, D_800CE230);
((void (*)(void *, s32))func_80146E90)(s1, 0x20);
@@ -331,13 +331,13 @@ void func_800CD2EC(s32 *s1) {
s32 s2;
s32 v0;
s2 = *(s32 *)(s1 + 8);
s2 = CAST_WIDTH(s32, s1, 8);
if (func_80146E98((s32)s1) == 0) {
if ((*(u16 *)&D_800B99DA & 3) == 0) {
func_800CD57C(s1);
}
func_80146A6C(0x26, s1, *(s16 *)((s32)s1 + 6), *(s16 *)((s32)s1 + 0xA),
*(s16 *)((s32)s1 + 0xE), *(s16 *)(s2 + 0x12), 0);
func_80146A6C(0x26, s1, ((Unkstruct_80126B58 *)s1)->unk6, ((Unkstruct_80126B58 *)s1)->unkA,
((Unkstruct_80126B58 *)s1)->unkE, *(s16 *)(s2 + 0x12), 0);
func_800CD848((s32)s1);
func_800CD780((s32)s1);
p = buf + 0x20;
@@ -381,7 +381,7 @@ void func_800CD494(void *arg0) {
u16 acc;
idx = *(s16 *)((s32)arg0 + 0x5E);
a1 = *(s32 *)((s32)arg0 + 0x20);
a1 = ((Unkstruct_80126B58 *)arg0)->unk20;
tv = D_800CE210[idx * 2];
if (tv != 0) {
*(s16 *)((s32)arg0 + 0x5E) = idx + 1;
@@ -427,19 +427,19 @@ extern s32 func_801469C8(s32, void *, s32, s32, u16, s32, s32, s32);
void func_800CD57C(void *arg0) {
if (((s32 (*)(void *, void *, s32, s32, s32, s32, s32, s32))func_801469C8)(
(void *)0x27, arg0,
*(s16 *)((char *)arg0 + 6),
*(s16 *)((char *)arg0 + 0xA),
*(s16 *)((char *)arg0 + 0xE),
*(s32 *)((char *)arg0 + 0x50) & 7,
((Unkstruct_80126B58 *)arg0)->unk6,
((Unkstruct_80126B58 *)arg0)->unkA,
((Unkstruct_80126B58 *)arg0)->unkE,
((Unkstruct_80126B58 *)arg0)->unk50 & 7,
0, 8) != 0) {
(*(s32 *)((char *)arg0 + 0x50)) += 1;
(((Unkstruct_80126B58 *)arg0)->unk50) += 1;
}
}
void func_800CD5EC(void *a0) {
func_800CD758((s32)a0);
*(u16 *)((s32)a0 + 0x66) = (*(s32 *)((s32)a0 + 0x50) * 1365) & 0xFFF;
((Unkstruct_80126B58 *)a0)->unk66 = (((Unkstruct_80126B58 *)a0)->unk50 * 1365) & 0xFFF;
}
@@ -460,10 +460,10 @@ void func_800CD63C(s32 a0, s32 a1)
s32 t;
s32 r;
t = 0x20 - *(s32 *)(a0 + 0x1C);
r = func_8004787C(*(s16 *)(a0 + 0x66));
t = 0x20 - ((Unkstruct_80126B58 *)a0)->unk1C;
r = func_8004787C(CAST_SIGN(s16, a0, 0x66));
sp10[0] = ((((t << 17) >> 16) * r) / 4096);
r = func_80047948(*(s16 *)(a0 + 0x66));
r = func_80047948(CAST_SIGN(s16, a0, 0x66));
sp10[1] = ((((t << 17) >> 16) * r) / 4096);
sp10[2] = 0;
@@ -473,7 +473,7 @@ void func_800CD63C(s32 a0, s32 a1)
func_8012F14C((s32)&sp20, (s32)sp10, (s32)sp18);
func_80015954((s32)sp18, a0 + 4);
*(u16 *)(a0 + 0x66) = (*(u16 *)(a0 + 0x66) + 0xE3) & 0xFFF;
((Unkstruct_80126B58 *)a0)->unk66 = (((Unkstruct_80126B58 *)a0)->unk66 + 0xE3) & 0xFFF;
}
@@ -497,11 +497,11 @@ extern void func_80012558(s32 a0, s32 a1);
extern void func_800123F0(s32 a0, s32 a1);
void func_800CD7A8(s32 a0, s32 a1) {
s32 q = *(s32 *)(a0 + 0x20);
s32 q = ((Unkstruct_80126B58 *)a0)->unk20;
func_80013F3C(a1);
func_800126C4(a1, *(s16 *)(a0 + 0x60));
func_800123F0(a1, *(s16 *)(a0 + 0x64));
func_80012558(a1, *(s16 *)(a0 + 0x62));
func_800126C4(a1, CAST_SIGN(s16, a0, 0x60));
func_800123F0(a1, CAST_SIGN(s16, a0, 0x64));
func_80012558(a1, CAST_SIGN(s16, a0, 0x62));
func_80012558(a1, *(s16 *)(q + 0x12));
func_800126C4(a1, *(s16 *)(q + 0x10));
func_800123F0(a1, *(s16 *)(q + 0x14));
@@ -509,7 +509,7 @@ void func_800CD7A8(s32 a0, s32 a1) {
void func_800CD834(void *a0) {
s32 v0 = *(s32 *)((s32)a0 + 0x20);
s32 v0 = ((Unkstruct_80126B58 *)a0)->unk20;
*(s16 *)(v0 + 0x18) = *(s16 *)(v0 + 0x1A) = 0;
}
@@ -517,9 +517,9 @@ void func_800CD834(void *a0) {
extern s32 func_80012F74(s32, s32, s32, s32);
void func_800CD848(s32 param_1) {
*(s16 *)(*(s32 *)(param_1 + 0x20) + 0x18) =
*(s16 *)(*(s32 *)(param_1 + 0x20) + 0x1A) =
func_80012F74(*(s16 *)(*(s32 *)(param_1 + 0x20) + 0x1A), 0x1000, 4, 1);
*(s16 *)(((Unkstruct_80126B58 *)param_1)->unk20 + 0x18) =
*(s16 *)(((Unkstruct_80126B58 *)param_1)->unk20 + 0x1A) =
func_80012F74(*(s16 *)(((Unkstruct_80126B58 *)param_1)->unk20 + 0x1A), 0x1000, 4, 1);
}
@@ -560,7 +560,7 @@ s32 func_800CD894(void *a0) {
void func_800CD948(void *a0) {
extern void (*D_800CE24C[])(void);
D_800CE24C[*(u16 *)((s32)a0 + 0x2)]();
D_800CE24C[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -575,11 +575,11 @@ void func_800CD984(s32 a0) {
a2 = func_800D21C4(a0, (s32)&D_800CE240, 0x21);
if (a2 != 0) {
*(s32 *)(a2 + 4) |= 0x40000000;
*(s32 *)(a0 + 0x20) = a2;
((Unkstruct_80126B58 *)a0)->unk20 = a2;
*(s16 *)(a2 + 0x28) = 0x230;
*(s16 *)(a2 + 0x2A) = 0x1C0;
func_80146E90((s32 *)a0, 2);
*(u16 *)(a0 + 2) += 1;
((Unkstruct_80126B58 *)a0)->unk2 += 1;
} else {
func_80146C3C((void *)a0);
}
@@ -601,7 +601,7 @@ void func_800CDA0C(int param_1)
void func_800CDA44(void *a0) {
extern void (*D_800CE254[])(void);
D_800CE254[*(u16 *)((s32)a0 + 0x2)]();
D_800CE254[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -618,9 +618,9 @@ void func_800CDA80(int param_1)
s32 base;
s32 r;
base = (int)D_800CEBF4 + *(s32 *)(param_1 + 0x2c) * 0x40;
base = (int)D_800CEBF4 + ((Unkstruct_80126B58 *)param_1)->unk2C * 0x40;
ptr = func_800D2294(param_1, base);
*(s32 *)(param_1 + 0x20) = ptr;
((Unkstruct_80126B58 *)param_1)->unk20 = ptr;
if (ptr != 0) {
r = rand();
func_800233CC(base, (r & 0x1F) | 0x20);
@@ -628,7 +628,7 @@ void func_800CDA80(int param_1)
*(s32 *)base = ((r & 0x3F) + 0x40) << 16;
*(s32 *)(base + 4) = 0;
func_80146E90((s32 *)param_1, 4);
*(u16 *)(param_1 + 2) += 1;
((Unkstruct_80126B58 *)param_1)->unk2 += 1;
} else {
func_80146C3C(param_1);
}
@@ -642,7 +642,7 @@ void func_800CDB4C(int param_1)
extern unsigned char D_800CEBF4[];
unsigned char *base;
base = (unsigned char *)D_800CEBF4 + *(s32 *)(param_1 + 0x2C) * 0x40;
base = (unsigned char *)D_800CEBF4 + ((Unkstruct_80126B58 *)param_1)->unk2C * 0x40;
base[2] = base[2] - 8;
if (func_80146E98(param_1) != 0) {
func_80146C3C((void *)param_1);
@@ -725,7 +725,7 @@ void func_800CDDA8(void) {
void func_800CDDC8(void *a0) {
extern void (*D_800CE25C[])(void);
D_800CE25C[*(u16 *)((s32)a0 + 0x2)]();
D_800CE25C[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -854,7 +854,7 @@ void func_800CE134(void) {
void func_800CE188(void *a0) {
extern void (*D_800CE268[])(void);
D_800CE268[*(u16 *)((s32)a0 + 0x2)]();
D_800CE268[((Unkstruct_80126B58 *)a0)->unk2]();
}
+17 -17
View File
@@ -13,7 +13,7 @@ void func_800CCB28(s32 *param_1)
func_80149020(param_1);
s0 = param_1;
idx = *(u16 *)((u8 *)s0 + 2) - 2;
idx = ((Unkstruct_80126B58 *)s0)->unk2 - 2;
D_800CD668[idx](s0);
}
@@ -29,7 +29,7 @@ void func_800CCB78(void *a0) {
func_801466F0(0x11, (s32)a0, 0, 0, 0, 0, 0, 0);
func_801466F0(0x11, (s32)a0, 0, 0, 0, 1, 0, 0);
func_801466F0(0x11, (s32)a0, 0, 0, 0, 2, 0, 0);
*(s16 *)((s32)a0 + 0x1C8) = 0xFF;
((Unkstruct_80126B58 *)a0)->unk1C8 = 0xFF;
func_801599A4(a0);
func_80159B3C(a0);
}
@@ -76,7 +76,7 @@ void func_800CCD2C(s32 s1) {
s2 = *(s32 *)(s1 + 0x4C);
s0 = ((s32 (*)())func_8014659C)();
*(s32 *)(s1 + 0x20) = s0;
((Unkstruct_80126B58 *)s1)->unk20 = s0;
if (s0 != 0) {
func_8001C810(s0, &D_800CE048);
*(u32 *)(s0 + 4) |= 0x50020000;
@@ -84,7 +84,7 @@ void func_800CCD2C(s32 s1) {
*(u16 *)(s0 + 0x1A) = 0;
*(u16 *)(s0 + 0x18) = 0;
((void (*)(s32))func_800CCE80)(s1);
D_800CE050 = *(u16 *)(*(s32 *)(s2 + 0x20) + 0x12);
D_800CE050 = *(u16 *)(((Unkstruct_80126B58 *)s2)->unk20 + 0x12);
func_80146CA0((void *)s1);
} else {
((void (*)(s32))func_800CCE60)(s1);
@@ -347,7 +347,7 @@ void func_800CD390(s32 param_1) {
u16 temp;
s2 = *(s32 *)(param_1 + 0x4C);
s0 = ((s32 (*)(void))func_80146578)();
*(s32 *)(param_1 + 0x20) = s0;
((Unkstruct_80126B58 *)param_1)->unk20 = s0;
if (s0 != 0) {
((s32 (*)(s32, void *, s32, s32))func_8001CC3C)(s0, ((u8 *)&D_800CD66C), 0x220, 0x168);
*(u8 *)(s0 + 0x27) = 0x24;
@@ -356,13 +356,13 @@ void func_800CD390(s32 param_1) {
*(u8 *)(s0 + 0x26) = 0x40;
*(u32 *)(s0 + 4) |= 0x50000000;
func_80149374(s2, param_1 + 4);
temp = *(u16 *)(*(s32 *)(s2 + 0x20) + 0x10);
temp = *(u16 *)(((Unkstruct_80126B58 *)s2)->unk20 + 0x10);
*(s16 *)(s0 + 0x12) = D_800CE050;
*(u16 *)(s0 + 0x10) = temp;
*(u16 *)(s0 + 0x14) = *(u16 *)(*(s32 *)(s2 + 0x20) + 0x14);
*(u16 *)(param_1 + 0x60) = *(u16 *)(s2 + 0x100);
*(u16 *)(param_1 + 0x62) = *(u16 *)(s2 + 0x102);
*(u16 *)(param_1 + 0x64) = *(u16 *)(s2 + 0x104);
*(u16 *)(s0 + 0x14) = *(u16 *)(((Unkstruct_80126B58 *)s2)->unk20 + 0x14);
((Unkstruct_80126B58 *)param_1)->unk60 = ((Unkstruct_80126B58 *)s2)->unk100;
((Unkstruct_80126B58 *)param_1)->unk62 = ((Unkstruct_80126B58 *)s2)->unk102;
((Unkstruct_80126B58 *)param_1)->unk64 = ((Unkstruct_80126B58 *)s2)->unk104;
*(u16 *)(s0 + 0x1A) = 0x1000;
*(u16 *)(s0 + 0x18) = 0x1000;
func_80146DE8((s32 *)param_1, 0, 0, 0xFFE80000);
@@ -389,14 +389,14 @@ extern u16 D_800CD692[];
void func_800CD4BC(s32 arg0) {
s32 sp18[8];
s32 temp_s2 = *(s32 *)(arg0 + 0x4C);
s32 temp_s1 = *(s32 *)(arg0 + 0x20);
s32 temp_s1 = ((Unkstruct_80126B58 *)arg0)->unk20;
if (func_80146E98(arg0) != 0) {
func_80146CA0((void *)arg0);
return;
}
*(u16 *)(temp_s1 + 0x28) = D_800CD690[(*(u16 *)(temp_s2 + 0x1C8) & 7) * 2];
*(u16 *)(temp_s1 + 0x2A) = D_800CD692[(*(u16 *)(temp_s2 + 0x1C8) & 7) * 2];
*(u16 *)(temp_s1 + 0x28) = D_800CD690[(((Unkstruct_80126B58 *)temp_s2)->unk1C8 & 7) * 2];
*(u16 *)(temp_s1 + 0x2A) = D_800CD692[(((Unkstruct_80126B58 *)temp_s2)->unk1C8 & 7) * 2];
func_800CD5DC(arg0, sp18);
func_80163194(arg0, 0, -0x10000, 0, (s32)sp18);
func_80162FC0((s32 *)arg0);
@@ -420,11 +420,11 @@ extern void func_80012558(s32 a0, s32 a1);
extern void func_800123F0(s32 a0, s32 a1);
void func_800CD5DC(s32 a0, s32 a1) {
s32 q = *(s32 *)(a0 + 0x20);
s32 q = ((Unkstruct_80126B58 *)a0)->unk20;
func_80013F3C((void *)a1);
func_800126C4((s32)a1, *(s16 *)(a0 + 0x60));
func_800123F0((s32)a1, *(s16 *)(a0 + 0x64));
func_80012558((s32)a1, *(s16 *)(a0 + 0x62));
func_800126C4((s32)a1, CAST_SIGN(s16, a0, 0x60));
func_800123F0((s32)a1, CAST_SIGN(s16, a0, 0x64));
func_80012558((s32)a1, CAST_SIGN(s16, a0, 0x62));
func_80012558((s32)a1, *(s16 *)(q + 0x12));
func_800126C4((s32)a1, *(s16 *)(q + 0x10));
func_800123F0((s32)a1, *(s16 *)(q + 0x14));
+70 -70
View File
@@ -14,7 +14,7 @@ void func_800CCB28(s32 *param_1) {
func_80149020(param_1);
s0 = param_1;
idx = *(u16 *)((s32) s0 + 2) - 2;
idx = ((Unkstruct_80126B58 *)s0)->unk2 - 2;
D_800CE040[idx](s0);
}
@@ -33,7 +33,7 @@ void func_800CCB78(void *a0) {
func_801466F0(0x14, (s32)a0, 0, 0, 0, 1, 0, 0);
func_801466F0(0x14, (s32)a0, 0, 0, 0, 2, 0, 0);
func_801466F0(0x14, (s32)a0, 0, 0, 0, 3, 0, 0);
*(s16 *)((s32)a0 + 0x1C8) = 0xFF;
((Unkstruct_80126B58 *)a0)->unk1C8 = 0xFF;
func_801599A4(a0);
func_80159B3C(a0);
}
@@ -60,7 +60,7 @@ void func_800CCCC0(s32 *a0) {
void func_800CCCF4(void *a0) {
extern void (*D_800CE044[])(void);
D_800CE044[*(u16 *)((s32)a0 + 0x2)]();
D_800CE044[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -127,7 +127,7 @@ void func_800CCDC8(s32 *param_1)
return;
}
func_801483E8(param_1);
*(s32 *)((u8 *)param_1 + 0x44) |= 0x1000;
CAST_SIGN(s32, (u8 *)param_1, 0x44) |= 0x1000;
}
@@ -135,7 +135,7 @@ extern void func_801477E8(s32 *a0, s32 a1);
void func_800CCEB8(void *arg0) {
func_801477E8((s32 *)arg0, 0xFFEA0000);
*(s16 *)((s32)arg0 + 2) = 2;
((Unkstruct_80126B58 *)arg0)->unk2 = 2;
}
@@ -170,10 +170,10 @@ void func_800CCEEC(void *arg0) {
return;
}
if (v1 != 0) {
*(s16 *)((s32)arg0 + 2) = 1;
((Unkstruct_80126B58 *)arg0)->unk2 = 1;
return;
}
*(s32 *)((s32)arg0 + 0x44) |= 0x1000;
CAST_SIGN(s32, (s32)arg0, 0x44) |= 0x1000;
}
@@ -182,10 +182,10 @@ extern s16 D_801152B4;
void func_800CCFA8(s32 *a0) {
s32 t = D_801152B0 << 6;
*(s32 *)((s32)a0 + 0x238) = 0x80000;
*(s32 *)((s32)a0 + 0x234) = t;
*(s32 *)((s32)a0 + 0x23C) = D_801152B4 << 6;
*(s16 *)((s32)a0 + 2) = 3;
((Unkstruct_80126B58 *)a0)->unk238 = 0x80000;
CAST_ALIAS(s32, (s32)a0, 0x234) = t;
((Unkstruct_80126B58 *)a0)->unk23C = D_801152B4 << 6;
((Unkstruct_80126B58 *)a0)->unk2 = 3;
}
@@ -208,7 +208,7 @@ void func_800CCFDC(void *arg0) {
if (func_800CD240(arg0) != 0) {
return;
}
func_80146DE8((s32 *)arg0, *(s32 *)((s32)arg0 + 0x234), *(s32 *)((s32)arg0 + 0x238), *(s32 *)((s32)arg0 + 0x23C));
func_80146DE8((s32 *)arg0, ((Unkstruct_80126B58 *)arg0)->unk234, ((Unkstruct_80126B58 *)arg0)->unk238, ((Unkstruct_80126B58 *)arg0)->unk23C);
func_80147F50((s32)arg0);
func_801473EC((s32 *)arg0);
func_80148038((s32)arg0, 0x1A000);
@@ -219,15 +219,15 @@ void func_800CCFDC(void *arg0) {
func_800CD5CC(arg0);
ret = ((s32 (*)(void *))func_8016151C)(arg0);
if (ret & 0x4000) {
*(s32 *)((s32)arg0 + 0x234) = D_801152B0 << 6;
*(s32 *)((s32)arg0 + 0x238) = 0x80000;
*(s32 *)((s32)arg0 + 0x23C) = D_801152B4 << 6;
*(s16 *)((s32)arg0 + 2) = 3;
CAST_ALIAS(s32, (s32)arg0, 0x234) = D_801152B0 << 6;
((Unkstruct_80126B58 *)arg0)->unk238 = 0x80000;
((Unkstruct_80126B58 *)arg0)->unk23C = D_801152B4 << 6;
((Unkstruct_80126B58 *)arg0)->unk2 = 3;
} else if (ret != 0) {
func_80146E90((s32 *)arg0, 8);
func_80146CA0(arg0);
} else {
*(s32 *)((s32)arg0 + 0x44) |= 0x1000;
CAST_SIGN(s32, (s32)arg0, 0x44) |= 0x1000;
}
}
@@ -249,7 +249,7 @@ void func_800CD0DC(void *arg0) {
if (func_800CD240() != 0) {
return;
}
func_80146DE8((s32 *)arg0, *(s32 *)((s32)arg0 + 0x234), *(s32 *)((s32)arg0 + 0x238), *(s32 *)((s32)arg0 + 0x23C));
func_80146DE8((s32 *)arg0, ((Unkstruct_80126B58 *)arg0)->unk234, ((Unkstruct_80126B58 *)arg0)->unk238, ((Unkstruct_80126B58 *)arg0)->unk23C);
func_80147F50((s32)arg0);
func_801473EC((s32 *)arg0);
if (((s32 (*)(void *))func_800CD494)(arg0) != 0) {
@@ -259,21 +259,21 @@ void func_800CD0DC(void *arg0) {
ret = func_801612B8(arg0, 0);
if (func_80146E98((s32)arg0) != 0) {
if (ret & 0x4000) {
*(s32 *)((s32)arg0 + 0x234) = D_801152B0 << 6;
*(s32 *)((s32)arg0 + 0x238) = 0x80000;
*(s32 *)((s32)arg0 + 0x23C) = D_801152B4 << 6;
*(s16 *)((s32)arg0 + 2) = 3;
CAST_ALIAS(s32, (s32)arg0, 0x234) = D_801152B0 << 6;
((Unkstruct_80126B58 *)arg0)->unk238 = 0x80000;
((Unkstruct_80126B58 *)arg0)->unk23C = D_801152B4 << 6;
((Unkstruct_80126B58 *)arg0)->unk2 = 3;
} else if (ret == 0 || ret == 0x8000) {
func_801477E8((s32 *)arg0, 0xFFEA0000);
*(s16 *)((s32)arg0 + 2) = 2;
((Unkstruct_80126B58 *)arg0)->unk2 = 2;
} else {
*(s32 *)((s32)arg0 + 0x23C) = 0;
*(s32 *)((s32)arg0 + 0x238) = 0;
*(s32 *)((s32)arg0 + 0x234) = 0;
*(s16 *)((s32)arg0 + 2) = 1;
((Unkstruct_80126B58 *)arg0)->unk23C = 0;
((Unkstruct_80126B58 *)arg0)->unk238 = 0;
((Unkstruct_80126B58 *)arg0)->unk234 = 0;
((Unkstruct_80126B58 *)arg0)->unk2 = 1;
}
} else {
*(s32 *)((s32)arg0 + 0x44) |= 0x1000;
CAST_SIGN(s32, (s32)arg0, 0x44) |= 0x1000;
}
}
@@ -286,7 +286,7 @@ void func_800CD1F4(s32 *a0) {
func_801553C0((s32)a0);
func_801553A8(a0);
func_80154A74((s32)a0, 0x11);
*(s32 *)((u8 *)a0 + 0x44) &= ~0x1000;
CAST_SIGN(s32, (u8 *)a0, 0x44) &= ~0x1000;
}
@@ -414,45 +414,45 @@ void func_800CD494(void *a0) {
u16 v1;
s0 = (s32)a0;
s1 = *(s32 *)(s0 + 0x20);
*(s32 *)(s0 + 0x44) |= 2;
s1 = ((Unkstruct_80126B58 *)s0)->unk20;
CAST_SIGN(s32, s0, 0x44) |= 2;
v0 = func_80148800((s32 *)a0);
if (v0 & 0x90) {
*(u16 *)(s0 + 0x240) = 0;
CAST_WIDTH(u16, s0, 0x240) = 0;
func_80147324(0x8E4);
}
v0 = func_801487F4((s32 *)s0);
if (v0 & 0x90) {
func_800CDA14(s0);
v0 = *(u16 *)(s0 + 0x246);
v0 = ((Unkstruct_80126B58 *)s0)->unk246;
v0 = v0 + 8;
*(u16 *)(s0 + 0x246) = v0;
((Unkstruct_80126B58 *)s0)->unk246 = v0;
if ((s16)v0 >= 0x201) {
*(u16 *)(s0 + 0x246) = 0x200;
((Unkstruct_80126B58 *)s0)->unk246 = 0x200;
}
v0 = *(u16 *)(s0 + 0x240);
v1 = *(u16 *)(s0 + 0x246);
v0 = CAST_WIDTH(u16, s0, 0x240);
v1 = ((Unkstruct_80126B58 *)s0)->unk246;
v0 = v0 + v1;
*(u16 *)(s0 + 0x240) = v0;
CAST_WIDTH(u16, s0, 0x240) = v0;
if ((s16)v0 >= 0x1000) {
*(u16 *)(s0 + 0x240) = 0;
CAST_WIDTH(u16, s0, 0x240) = 0;
func_80147324(0x8E4);
}
} else {
v0 = *(u16 *)(s0 + 0x246);
v0 = ((Unkstruct_80126B58 *)s0)->unk246;
v0 = v0 - 0x20;
*(u16 *)(s0 + 0x246) = v0;
((Unkstruct_80126B58 *)s0)->unk246 = v0;
if ((s16)v0 <= 0) {
*(u16 *)(s0 + 0x246) = 0;
((Unkstruct_80126B58 *)s0)->unk246 = 0;
}
}
v0 = *(u16 *)(s0 + 0x244);
v1 = *(u16 *)(s0 + 0x246);
v0 = ((Unkstruct_80126B58 *)s0)->unk244;
v1 = ((Unkstruct_80126B58 *)s0)->unk246;
v0 = v0 + v1;
v0 = v0 & 0xFFF;
*(u16 *)(s0 + 0x244) = v0;
((Unkstruct_80126B58 *)s0)->unk244 = v0;
*(u16 *)(s1 + 0x12) = v0;
if (*(s16 *)(s0 + 0x246) == 0) {
if (CAST_SIGN(s16, s0, 0x246) == 0) {
func_801599A4((void *)s0);
func_80159B3C((void *)s0);
rv = 1;
@@ -505,9 +505,9 @@ void func_800CD6A4(void *arg0, void *arg1) {
ret = func_8014C59C(arg0, arg1);
func_8001382C((ret + 0x800) & 0xFFF, D_800CE058, sp10);
*(s32 *)((s32)arg0 + 0x234) = sp10[0];
*(s32 *)((s32)arg0 + 0x238) = sp10[1];
*(s32 *)((s32)arg0 + 0x23C) = sp10[2];
((Unkstruct_80126B58 *)arg0)->unk234 = sp10[0];
((Unkstruct_80126B58 *)arg0)->unk238 = sp10[1];
((Unkstruct_80126B58 *)arg0)->unk23C = sp10[2];
}
@@ -554,7 +554,7 @@ void func_800CD7D8(s32 a0) {
s32 s2;
s2 = *(s32 *)(a0 + 0x4C);
s0 = func_8014659C();
*(s32 *)(a0 + 0x20) = s0;
((Unkstruct_80126B58 *)a0)->unk20 = s0;
if (s0 != 0) {
func_8001C214(s0, (s32)&D_800CE8CC);
*(s32 *)(s0 + 4) |= 0x50000000;
@@ -562,7 +562,7 @@ void func_800CD7D8(s32 a0) {
*(s16 *)(s0 + 0x1A) = 0;
*(s16 *)(s0 + 0x18) = 0;
func_800CD96C(a0);
D_800CE8D4 = *(u16 *)(*(s32 *)(s2 + 0x20) + 0x12);
D_800CE8D4 = *(u16 *)(((Unkstruct_80126B58 *)s2)->unk20 + 0x12);
func_80146CA0((void *)a0);
} else {
((void (*)(s32))func_800CD94C)(a0);
@@ -578,8 +578,8 @@ void func_800CD884(void *arg0) {
u16 w;
u16 t2;
s0 = *(s32 *)((s32)arg0 + 0x20);
if (*(s16 *)((s32)arg0 + 0x60) != 0) {
s0 = ((Unkstruct_80126B58 *)arg0)->unk20;
if (CAST_SIGN(s16, (s32)arg0, 0x60) != 0) {
w = *(u16 *)(s0 + 0x18) + 0x100;
*(u16 *)(s0 + 0x18) = w;
if ((s16)w > 0x1000) {
@@ -621,14 +621,14 @@ void func_800CD96C(s32 param_1) {
s32 model;
work = *(s32 *)(param_1 + 0x4C);
hdr = *(s32 *)(work + 0x20);
model = *(s32 *)(param_1 + 0x20);
*(s16 *)(param_1 + 6) = *(s32 *)(hdr + 0x48);
*(s16 *)(param_1 + 0xA) = *(s32 *)(hdr + 0x4C) - 0x20;
*(s16 *)(param_1 + 0xE) = *(s32 *)(hdr + 0x50);
hdr = ((Unkstruct_80126B58 *)work)->unk20;
model = ((Unkstruct_80126B58 *)param_1)->unk20;
((Unkstruct_80126B58 *)param_1)->unk6 = *(s32 *)(hdr + 0x48);
((Unkstruct_80126B58 *)param_1)->unkA = *(s32 *)(hdr + 0x4C) - 0x20;
((Unkstruct_80126B58 *)param_1)->unkE = *(s32 *)(hdr + 0x50);
func_80013F3C((void *)(model + 0x34));
RotMatrixY(*(s16 *)(model + 0x12), (void *)(model + 0x34));
func_80048D9C((void *)(model + 0x34), (void *)(*(s32 *)(work + 0x20) + 0x34));
func_80048D9C((void *)(model + 0x34), (void *)(((Unkstruct_80126B58 *)work)->unk20 + 0x34));
func_80020F34(model + 0x34, model + 0x18);
*(u16 *)(model + 0x2C) |= 1;
}
@@ -682,15 +682,15 @@ void func_800CDAB4(s32 *param_1) {
s32 v0;
s0 = func_80146578();
*(s32 *)((s32)param_1 + 0x20) = s0;
((Unkstruct_80126B58 *)param_1)->unk20 = s0;
if (s0 != 0) {
func_8001CC3C(s0, D_800CE068, 0x234, 0x1C0);
*(u8 *)((s32)s0 + 0x27) = 0x26;
*(u16 *)((s32)s0 + 0x1A) = 0x2000;
*(u16 *)((s32)s0 + 0x18) = 0x2000;
*(u32 *)((s32)s0 + 4) |= 0x8000000;
v0 = *(s32 *)((s32)param_1 + 0x50) * 8;
*(U8x *)((s32)param_1 + 0x60) = *(U8x *)(&D_800CE08C[v0]);
v0 = ((Unkstruct_80126B58 *)param_1)->unk50 * 8;
CAST_WIDTH(U8x, (s32)param_1, 0x60) = *(U8x *)(&D_800CE08C[v0]);
func_80146E90(param_1, 0);
((void (*)(s32 *))func_800CDBF4)(param_1);
func_80146CA0(param_1);
@@ -743,7 +743,7 @@ extern void func_80146E90(s32 *a0, s32 a1);
extern s32 func_80146E98(s32 a0);
void func_800CDCA8(void *arg0) {
s16 *ptr = *(s16 **)((s32)arg0 + 0x20);
s16 *ptr = CAST_SIGN(s16 *, (s32)arg0, 0x20);
s32 val;
if (func_80146E98((s32)arg0) != 0) {
@@ -794,20 +794,20 @@ void func_800CDD9C(s32 param_1) {
iVar1 = *(s32 *)(param_1 + 0x4C);
iVar2 = func_80146578();
*(s32 *)(param_1 + 0x20) = iVar2;
((Unkstruct_80126B58 *)param_1)->unk20 = iVar2;
if (iVar2 != 0) {
func_8001CC3C(iVar2, D_800CE068, 0x200, 0x100);
*(u8 *)(iVar2 + 0x27) = 8;
*(u32 *)(iVar2 + 4) = *(u32 *)(iVar2 + 4) | 0x50000000;
func_80149374(iVar1, param_1 + 4);
d = D_800CE8D4;
x = *(u16 *)(*(s32 *)(iVar1 + 0x20) + 0x10);
x = *(u16 *)(((Unkstruct_80126B58 *)iVar1)->unk20 + 0x10);
*(u16 *)(iVar2 + 0x12) = d;
*(u16 *)(iVar2 + 0x10) = x;
*(u16 *)(iVar2 + 0x14) = *(u16 *)(*(s32 *)(iVar1 + 0x20) + 0x14);
*(u16 *)(param_1 + 0x60) = *(u16 *)(iVar1 + 0x100);
*(u16 *)(param_1 + 0x62) = *(u16 *)(iVar1 + 0x102);
*(u16 *)(param_1 + 0x64) = *(u16 *)(iVar1 + 0x104);
*(u16 *)(iVar2 + 0x14) = *(u16 *)(((Unkstruct_80126B58 *)iVar1)->unk20 + 0x14);
((Unkstruct_80126B58 *)param_1)->unk60 = ((Unkstruct_80126B58 *)iVar1)->unk100;
((Unkstruct_80126B58 *)param_1)->unk62 = ((Unkstruct_80126B58 *)iVar1)->unk102;
((Unkstruct_80126B58 *)param_1)->unk64 = ((Unkstruct_80126B58 *)iVar1)->unk104;
*(u16 *)(iVar2 + 0x1A) = 0x1000;
*(u16 *)(iVar2 + 0x18) = 0x1000;
func_80146DE8((s32 *)param_1, 0, 0, 0xFFE00000);
@@ -834,7 +834,7 @@ void func_800CDEB4(void *arg0) {
u16 var;
s32 sp18[8];
s1 = *(s32 **)((u8 *)arg0 + 0x20);
s1 = CAST_SIGN(s32 *, (u8 *)arg0, 0x20);
if (func_80146E98((s32)arg0) != 0) {
func_80146CA0(arg0);
} else {
+3 -3
View File
@@ -34,7 +34,7 @@ void *a0;
void func_800CCB84(void *a0) {
extern void (*D_800CD6C8[])(void);
D_800CD6C8[*(u16 *)((s32)a0 + 0x2)]();
D_800CD6C8[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -278,7 +278,7 @@ void func_800CD314(void *arg0) {
void func_800CD458(void *a0) {
extern void (*D_800CD6D0[])(void);
D_800CD6D0[*(u16 *)((s32)a0 + 0x2)]();
D_800CD6D0[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -287,7 +287,7 @@ void func_800CD458(void *a0) {
void func_800CD494(void *a0) {
extern void (*D_800CD6D8[])(void);
D_800CD6D8[*(u16 *)((s32)a0 + 0x2)]();
D_800CD6D8[((Unkstruct_80126B58 *)a0)->unk2]();
}
+4 -4
View File
@@ -5,7 +5,7 @@
void func_801E4C64(void *a0) {
extern void (*D_801E663C[])(void);
D_801E663C[*(u16 *)((s32)a0 + 0x2)]();
D_801E663C[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -334,7 +334,7 @@ void func_801E53E0(s32 arg0)
void func_801E5450(void *a0) {
extern void (*D_801E6680[])(void);
D_801E6680[*(u16 *)((s32)a0 + 0x2)]();
D_801E6680[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -549,7 +549,7 @@ void func_801E590C(void *a0) {
void func_801E5968(void *a0) {
extern void (*D_801E66B0[])(void);
D_801E66B0[*(u16 *)((s32)a0 + 0x2)]();
D_801E66B0[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -649,7 +649,7 @@ void func_801E5B3C(s32 a0) {
void func_801E5C6C(void *a0) {
extern void (*D_801E66BC[])(void);
D_801E66BC[*(u16 *)((s32)a0 + 0x2)]();
D_801E66BC[((Unkstruct_80126B58 *)a0)->unk2]();
}
+1 -1
View File
@@ -202,7 +202,7 @@ void func_801EF98C(s32 param_1, s16 *param_2) {
void func_801EFB84(void *a0) {
extern void (*D_801F0040[])(void);
D_801F0040[*(u16 *)((s32)a0 + 0x2)]();
D_801F0040[((Unkstruct_80126B58 *)a0)->unk2]();
}
+1 -1
View File
@@ -201,7 +201,7 @@ void func_801EF98C(s32 param_1, s16 *param_2) {
void func_801EFB84(void *a0) {
extern void (*D_801F0120[])(void);
D_801F0120[*(u16 *)((s32)a0 + 0x2)]();
D_801F0120[((Unkstruct_80126B58 *)a0)->unk2]();
}
+2 -2
View File
@@ -201,7 +201,7 @@ void func_801EF98C(s32 param_1, s16 *param_2) {
void func_801EFB84(void *a0) {
extern void (*D_801F0620[])(void);
D_801F0620[*(u16 *)((s32)a0 + 0x2)]();
D_801F0620[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -522,7 +522,7 @@ void func_801F00F8(void *a0) {
void func_801F0250(void *a0) {
extern void (*D_801F081C[])(void);
D_801F081C[*(u16 *)((s32)a0 + 0x2)]();
D_801F081C[((Unkstruct_80126B58 *)a0)->unk2]();
}
+1 -1
View File
@@ -135,7 +135,7 @@ void func_801F218C(u8 *a0) {
void func_801F22D8(void *a0) {
extern void (*D_801F3678[])(void);
D_801F3678[*(u16 *)((s32)a0 + 0x2)]();
D_801F3678[((Unkstruct_80126B58 *)a0)->unk2]();
}
+1 -1
View File
@@ -106,7 +106,7 @@ void func_801EFB58(void *param_1) {
void func_801EFCB4(void *a0) {
extern void (*D_801F0450[])(void);
D_801F0450[*(u16 *)((s32)a0 + 0x2)]();
D_801F0450[((Unkstruct_80126B58 *)a0)->unk2]();
}
+1 -1
View File
@@ -224,7 +224,7 @@ void func_801EF98C(s32 param_1, s16 *param_2) {
void func_801EFB84(void *a0) {
extern void (*D_801EFF94[])(void);
D_801EFF94[*(u16 *)((s32)a0 + 0x2)]();
D_801EFF94[((Unkstruct_80126B58 *)a0)->unk2]();
}
+1 -1
View File
@@ -348,7 +348,7 @@ void func_801EFB94(void *a0) {
void func_801EFCF0(void *a0) {
extern void (*D_801F00F4[])(void);
D_801F00F4[*(u16 *)((s32)a0 + 0x2)]();
D_801F00F4[((Unkstruct_80126B58 *)a0)->unk2]();
}
+1 -1
View File
@@ -291,7 +291,7 @@ s32 func_801E2D0C(void) {
void func_801E2D14(void *a0) {
extern void (*D_801E31A0[])(void);
D_801E31A0[*(u16 *)((s32)a0 + 0x2)]();
D_801E31A0[((Unkstruct_80126B58 *)a0)->unk2]();
}
+1 -1
View File
@@ -253,7 +253,7 @@ s32 func_801E2D14(void) {
void func_801E2D1C(void *a0) {
extern void (*D_801E3288[])(void);
D_801E3288[*(u16 *)((s32)a0 + 0x2)]();
D_801E3288[((Unkstruct_80126B58 *)a0)->unk2]();
}
+2 -2
View File
@@ -252,7 +252,7 @@ s32 func_801E2D14(void) {
void func_801E2D1C(void *a0) {
extern void (*D_801E37B0[])(void);
D_801E37B0[*(u16 *)((s32)a0 + 0x2)]();
D_801E37B0[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -573,7 +573,7 @@ void func_801E3290(void *a0) {
void func_801E33E8(void *a0) {
extern void (*D_801E39AC[])(void);
D_801E39AC[*(u16 *)((s32)a0 + 0x2)]();
D_801E39AC[((Unkstruct_80126B58 *)a0)->unk2]();
}
+1 -1
View File
@@ -143,7 +143,7 @@ void func_801E5358(u8 *a0) {
void func_801E54A4(void *a0) {
extern void (*D_801E67E0[])(void);
D_801E67E0[*(u16 *)((s32)a0 + 0x2)]();
D_801E67E0[((Unkstruct_80126B58 *)a0)->unk2]();
}
+1 -1
View File
@@ -111,7 +111,7 @@ void func_801E2CD0(void *param_1) {
void func_801E2E2C(void *a0) {
extern void (*D_801E3598[])(void);
D_801E3598[*(u16 *)((s32)a0 + 0x2)]();
D_801E3598[((Unkstruct_80126B58 *)a0)->unk2]();
}
+1 -1
View File
@@ -253,7 +253,7 @@ s32 func_801E2D14(void) {
void func_801E2D1C(void *a0) {
extern void (*D_801E30FC[])(void);
D_801E30FC[*(u16 *)((s32)a0 + 0x2)]();
D_801E30FC[((Unkstruct_80126B58 *)a0)->unk2]();
}
+2 -2
View File
@@ -246,7 +246,7 @@ void func_801E2B1C(s32 param_1, s16 *param_2) {
void func_801E2D14(void *a0) {
extern void (*D_801E3464[])(void);
D_801E3464[*(u16 *)((s32)a0 + 0x2)]();
D_801E3464[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -454,7 +454,7 @@ void func_801E2FB0(void *param_1) {
void func_801E310C(void *a0) {
extern void (*D_801E35A8[])(void);
D_801E35A8[*(u16 *)((s32)a0 + 0x2)]();
D_801E35A8[((Unkstruct_80126B58 *)a0)->unk2]();
}
+1 -1
View File
@@ -300,7 +300,7 @@ u8 func_801E824C(u32 a0) {
void func_801E827C(void *a0) {
extern void (*D_801E8708[])(void);
D_801E8708[*(u16 *)((s32)a0 + 0x2)]();
D_801E8708[((Unkstruct_80126B58 *)a0)->unk2]();
}
+1 -1
View File
@@ -247,7 +247,7 @@ void func_801E805C(s32 param_1, s16 *param_2) {
void func_801E8284(void *a0) {
extern void (*D_801E87F0[])(void);
D_801E87F0[*(u16 *)((s32)a0 + 0x2)]();
D_801E87F0[((Unkstruct_80126B58 *)a0)->unk2]();
}
+2 -2
View File
@@ -249,7 +249,7 @@ void func_801E805C(s32 param_1, s16 *param_2) {
void func_801E8284(void *a0) {
extern void (*D_801E8CF0[])(void);
D_801E8CF0[*(u16 *)((s32)a0 + 0x2)]();
D_801E8CF0[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -570,7 +570,7 @@ void func_801E87F8(void *a0) {
void func_801E8950(void *a0) {
extern void (*D_801E8EEC[])(void);
D_801E8EEC[*(u16 *)((s32)a0 + 0x2)]();
D_801E8EEC[((Unkstruct_80126B58 *)a0)->unk2]();
}
+1 -1
View File
@@ -165,7 +165,7 @@ void func_801EA8C0(void *param_1) {
void func_801EAA0C(void *a0) {
extern void (*D_801EBD48[])(void);
D_801EBD48[*(u16 *)((s32)a0 + 0x2)]();
D_801EBD48[((Unkstruct_80126B58 *)a0)->unk2]();
}
+1 -1
View File
@@ -112,7 +112,7 @@ void func_801E8238(void *arg0) {
void func_801E8394(void *a0) {
extern void (*D_801E8B00[])(void);
D_801E8B00[*(u16 *)((s32)a0 + 0x2)]();
D_801E8B00[((Unkstruct_80126B58 *)a0)->unk2]();
}
+1 -1
View File
@@ -260,7 +260,7 @@ u8 func_801E8254(u32 a0) {
void func_801E8284(void *a0) {
extern void (*D_801E8664[])(void);
D_801E8664[*(u16 *)((s32)a0 + 0x2)]();
D_801E8664[((Unkstruct_80126B58 *)a0)->unk2]();
}
+1 -1
View File
@@ -320,7 +320,7 @@ void func_801E8294(void *a0) {
void func_801E83F0(void *a0) {
extern void (*D_801E87C4[])(void);
D_801E87C4[*(u16 *)((s32)a0 + 0x2)]();
D_801E87C4[((Unkstruct_80126B58 *)a0)->unk2]();
}
+1 -1
View File
@@ -268,7 +268,7 @@ u8 func_801EE0CC(u32 a0) {
void func_801EE10C(void *a0) {
extern void (*D_801EE598[])(void);
D_801EE598[*(u16 *)((s32)a0 + 0x2)]();
D_801EE598[((Unkstruct_80126B58 *)a0)->unk2]();
}
+1 -1
View File
@@ -253,7 +253,7 @@ void func_801EDED4(s32 param_1, s16 *param_2) {
void func_801EE10C(void *a0) {
extern void (*D_801EE678[])(void);
D_801EE678[*(u16 *)((s32)a0 + 0x2)]();
D_801EE678[((Unkstruct_80126B58 *)a0)->unk2]();
}
+2 -2
View File
@@ -252,7 +252,7 @@ void func_801EDED4(s32 param_1, s16 *param_2) {
void func_801EE10C(void *a0) {
extern void (*D_801EEB78[])(void);
D_801EEB78[*(u16 *)((s32)a0 + 0x2)]();
D_801EEB78[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -573,7 +573,7 @@ void func_801EE680(void *a0) {
void func_801EE7D8(void *a0) {
extern void (*D_801EED74[])(void);
D_801EED74[*(u16 *)((s32)a0 + 0x2)]();
D_801EED74[((Unkstruct_80126B58 *)a0)->unk2]();
}
+1 -1
View File
@@ -157,7 +157,7 @@ void func_801F0748(void *param_1) {
void func_801F0894(void *a0) {
extern void (*D_801F1BD0[])(void);
D_801F1BD0[*(u16 *)((s32)a0 + 0x2)]();
D_801F1BD0[((Unkstruct_80126B58 *)a0)->unk2]();
}
+1 -1
View File
@@ -111,7 +111,7 @@ void func_801EE0C0(void *param_1) {
void func_801EE21C(void *a0) {
extern void (*D_801EE988[])(void);
D_801EE988[*(u16 *)((s32)a0 + 0x2)]();
D_801EE988[((Unkstruct_80126B58 *)a0)->unk2]();
}
+1 -1
View File
@@ -266,7 +266,7 @@ u32 a0;
void func_801EE10C(void *a0) {
extern void (*D_801EE4EC[])(void);
D_801EE4EC[*(u16 *)((s32)a0 + 0x2)]();
D_801EE4EC[((Unkstruct_80126B58 *)a0)->unk2]();
}
+1 -1
View File
@@ -331,7 +331,7 @@ void func_801EE11C(void *a0) {
void func_801EE278(void *a0) {
extern void (*D_801EE64C[])(void);
D_801EE64C[*(u16 *)((s32)a0 + 0x2)]();
D_801EE64C[((Unkstruct_80126B58 *)a0)->unk2]();
}
+12 -12
View File
@@ -2268,7 +2268,7 @@ void func_801A312C(s32 a0) {
void func_801A3190(void *a0) {
extern void (*D_801A6D8C[])(void);
D_801A6D8C[*(u16 *)((s32)a0 + 0x2)]();
D_801A6D8C[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -3312,7 +3312,7 @@ void func_801A43E8(void *a0) {
void func_801A44C8(void *a0) {
extern void (*D_801A6F00[])(void);
D_801A6F00[*(u16 *)((s32)a0 + 0x2)]();
D_801A6F00[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -3458,7 +3458,7 @@ void func_801A4680(void *a0) {
void func_801A4810(void *a0) {
extern void (*D_801A7308[])(void);
D_801A7308[*(u16 *)((s32)a0 + 0x2)]();
D_801A7308[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -3751,8 +3751,8 @@ s32 func_801A4DFC(void *a0)
for (; i < 10; q += 0x10, i += 2, p += 0x10) {
func_8012F14C((s32)&mtx, (s32)p, (s32)buf1);
func_8012F14C((s32)&mtx, (s32)q, (s32)buf2);
v0 = func_80135888(*(s32 *)(b58 + 0x20),
*(s32 *)(b58 + 0x38),
v0 = func_80135888(((Unkstruct_80126B58 *)b58)->unk20,
((Unkstruct_80126B58 *)b58)->unk38,
(s32)buf1, (s32)buf2);
if (v0 != 0) {
v0 = func_8012B8A4((s16 *)a0);
@@ -3770,7 +3770,7 @@ s32 func_801A4DFC(void *a0)
void func_801A4F78(void *a0) {
extern void (*D_801A73B4[])(void);
D_801A73B4[*(u16 *)((s32)a0 + 0x2)]();
D_801A73B4[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -3822,7 +3822,7 @@ void func_801A4FB4(u8 *a0, s8 a1) {
void func_801A505C(void *a0) {
extern void (*D_801A73BC[])(void);
D_801A73BC[*(u16 *)((s32)a0 + 0x2)]();
D_801A73BC[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -3853,7 +3853,7 @@ extern void func_8012AD44(s32 *a0, s16 a1);
void func_801A50FC(void *a0) {
extern void (*D_801A73C4[])(void);
D_801A73C4[*(u16 *)((s32)a0 + 0x2)]();
D_801A73C4[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -4054,7 +4054,7 @@ void func_801A52DC(s32 param_1)
void func_801A5638(void *a0) {
extern void (*D_801A73F4[])(void);
D_801A73F4[*(u16 *)((s32)a0 + 0x2)]();
D_801A73F4[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -4148,7 +4148,7 @@ void func_801A5674(void *arg0) {
void func_801A5860(void *a0) {
extern void (*D_801A73FC[])(void);
D_801A73FC[*(u16 *)((s32)a0 + 0x2)]();
D_801A73FC[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -4157,7 +4157,7 @@ void func_801A5860(void *a0) {
void func_801A589C(void *a0) {
extern void (*D_801A7414[])(void);
D_801A7414[*(u16 *)((s32)a0 + 0x2)]();
D_801A7414[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -4216,7 +4216,7 @@ void func_801A58D8(void *a0) {
void func_801A59D4(void *a0) {
extern void (*D_801A743C[])(void);
D_801A743C[*(u16 *)((s32)a0 + 0x2)]();
D_801A743C[((Unkstruct_80126B58 *)a0)->unk2]();
}
+28 -28
View File
@@ -1935,11 +1935,11 @@ void func_801A2F34(s32 a0) {
}
}
if ((D_800B99DA & 1) != 0) {
if (*(s16 *)((s32)s2 + 0x188) > 0) {
*(s16 *)((s32)s2 + 0x188) = *(s16 *)((s32)s2 + 0x188) - 1;
if (((Unkstruct_80126B58 *)s2)->unk188 > 0) {
((Unkstruct_80126B58 *)s2)->unk188 = ((Unkstruct_80126B58 *)s2)->unk188 - 1;
}
}
if (*(s16 *)((s32)s2 + 0x188) == 0) {
if (((Unkstruct_80126B58 *)s2)->unk188 == 0) {
v0 = *(u16 *)(a0 + 0xF8) + 1;
*(u16 *)(a0 + 0xF8) = v0;
if ((s16)v0 >= 0x19) {
@@ -2856,7 +2856,7 @@ void func_801A43EC(s32 a0) {
void func_801A4420(void *a0) {
extern void (*D_801AFF34[])(void);
D_801AFF34[*(u16 *)((s32)a0 + 0x2)]();
D_801AFF34[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -3302,7 +3302,7 @@ end:
void func_801A4E80(void *a0) {
extern void (*D_801B014C[])(void);
D_801B014C[*(u16 *)((s32)a0 + 0x2)]();
D_801B014C[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -3469,7 +3469,7 @@ void func_801A5194(s32 arg0) {
void func_801A53B8(void *a0) {
extern void (*D_801B0160[])(void);
D_801B0160[*(u16 *)((s32)a0 + 0x2)]();
D_801B0160[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -3498,7 +3498,7 @@ void func_801A5414(s32 param_1) {
void func_801A5470(void *a0) {
extern void (*D_801B0168[])(void);
D_801B0168[*(u16 *)((s32)a0 + 0x2)]();
D_801B0168[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -3759,7 +3759,7 @@ void func_801A5B00(s32 *a0) {
void func_801A5B20(void *a0) {
extern void (*D_801B02C8[])(void);
D_801B02C8[*(u16 *)((s32)a0 + 0x2)]();
D_801B02C8[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -4096,7 +4096,7 @@ void func_801A63A8(void *arg0) {
void func_801A63EC(void *a0) {
extern void (*D_801B0338[])(void);
D_801B0338[*(u16 *)((s32)a0 + 0x2)]();
D_801B0338[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -4922,7 +4922,7 @@ void func_801A7604(void *arg0) {
void func_801A77CC(void *a0) {
extern void (*D_801B0378[])(void);
D_801B0378[*(u16 *)((s32)a0 + 0x2)]();
D_801B0378[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -5493,7 +5493,7 @@ void func_801A8294(void *a0) {
void func_801A8404(void *a0) {
extern void (*D_801B038C[])(void);
D_801B038C[*(u16 *)((s32)a0 + 0x2)]();
D_801B038C[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -5728,7 +5728,7 @@ void func_801A88AC(void *arg0)
void func_801A8954(void *a0) {
extern void (*D_801B03B8[])(void);
D_801B03B8[*(u16 *)((s32)a0 + 0x2)]();
D_801B03B8[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -5807,7 +5807,7 @@ void func_801A8A64(s32 a0) {
void func_801A8B28(void *a0) {
extern void (*D_801B0400[])(void);
D_801B0400[*(u16 *)((s32)a0 + 0x2)]();
D_801B0400[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -6167,7 +6167,7 @@ void func_801A930C(s32 arg0)
void func_801A933C(void *a0) {
extern void (*D_801B0494[])(void);
D_801B0494[*(u16 *)((s32)a0 + 0x2)]();
D_801B0494[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -6187,7 +6187,7 @@ void func_801A9378(void *a0) {
void func_801A93B8(void *a0) {
extern void (*D_801B05FC[])(void);
D_801B05FC[*(u16 *)((s32)a0 + 0x2)]();
D_801B05FC[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -6388,7 +6388,7 @@ void func_801A9810(void *a0) {
void func_801A98CC(void *a0) {
extern void (*D_801B072C[])(void);
D_801B072C[*(u16 *)((s32)a0 + 0x2)]();
D_801B072C[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -6470,7 +6470,7 @@ s32 func_801A9ADC(void) {
void func_801A9B04(void *a0) {
extern void (*D_801B0768[])(void);
D_801B0768[*(u16 *)((s32)a0 + 0x2)]();
D_801B0768[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -6679,7 +6679,7 @@ void func_801A9FA8(void *arg0) {
void func_801A9FC8(void *a0) {
extern void (*D_801B0780[])(void);
D_801B0780[*(u16 *)((s32)a0 + 0x2)]();
D_801B0780[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -6958,7 +6958,7 @@ void func_801AA60C(s32 param_1, s32 param_2)
void func_801AA730(void *a0) {
extern void (*D_801B07C0[])(void);
D_801B07C0[*(u16 *)((s32)a0 + 0x2)]();
D_801B07C0[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -6967,7 +6967,7 @@ void func_801AA730(void *a0) {
void func_801AA76C(void *a0) {
extern void (*D_801B07C8[])(void);
D_801B07C8[*(u16 *)((s32)a0 + 0x2)]();
D_801B07C8[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -6976,7 +6976,7 @@ void func_801AA76C(void *a0) {
void func_801AA7A8(void *a0) {
extern void (*D_801B07D0[])(void);
D_801B07D0[*(u16 *)((s32)a0 + 0x2)]();
D_801B07D0[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -8686,7 +8686,7 @@ void func_801ACC24(void *a0)
void func_801ACD10(void *a0) {
extern void (*D_801B07D8[])(void);
D_801B07D8[*(u16 *)((s32)a0 + 0x2)]();
D_801B07D8[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -8727,7 +8727,7 @@ void func_801ACD4C(void) {
void func_801ACDC8(void *a0) {
extern void (*D_801B07E0[])(void);
D_801B07E0[*(u16 *)((s32)a0 + 0x2)]();
D_801B07E0[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -8741,7 +8741,7 @@ s32 func_801ACE04(s32 arg0) {
void func_801ACE20(void *a0) {
extern void (*D_801B07E8[])(void);
D_801B07E8[*(u16 *)((s32)a0 + 0x2)]();
D_801B07E8[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -8916,7 +8916,7 @@ void func_801AD068(void *arg0) {
void func_801AD1E4(void *a0) {
extern void (*D_801B07F4[])(void);
D_801B07F4[*(u16 *)((s32)a0 + 0x2)]();
D_801B07F4[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -9061,7 +9061,7 @@ void func_801AD4D4(void *a0) {
void func_801AD520(void *a0) {
extern void (*D_801B081C[])(void);
D_801B081C[*(u16 *)((s32)a0 + 0x2)]();
D_801B081C[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -9138,7 +9138,7 @@ void func_801AD640(s32 param_1, s32 param_2) {
void func_801AD6C4(void *a0) {
extern void (*D_801B0830[])(void);
D_801B0830[*(u16 *)((s32)a0 + 0x2)]();
D_801B0830[((Unkstruct_80126B58 *)a0)->unk2]();
}
@@ -9271,7 +9271,7 @@ void func_801AD914(s32 arg0, void *arg1, s32 arg2) {
void func_801AD9D4(void *a0) {
extern void (*D_801B0884[])(void);
D_801B0884[*(u16 *)((s32)a0 + 0x2)]();
D_801B0884[((Unkstruct_80126B58 *)a0)->unk2]();
}