diff --git a/config/GMPE01_00/rels/m433Dll/symbols.txt b/config/GMPE01_00/rels/m433Dll/symbols.txt index 528cefb2..df299b4f 100644 --- a/config/GMPE01_00/rels/m433Dll/symbols.txt +++ b/config/GMPE01_00/rels/m433Dll/symbols.txt @@ -119,287 +119,287 @@ fn_1_11098 = .text:0x00011098; // type:function size:0x98 fn_1_11130 = .text:0x00011130; // type:function size:0x1B0 _ctors = .ctors:0x00000000; // type:label scope:global data:4byte _dtors = .dtors:0x00000000; // type:label scope:global data:4byte -lbl_1_rodata_10 = .rodata:0x00000010; // type:object size:0x4 data:float -lbl_1_rodata_14 = .rodata:0x00000014; // type:object size:0x4 data:float -lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x4 data:float -lbl_1_rodata_1C = .rodata:0x0000001C; // type:object size:0x4 data:float -lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x4 data:float -lbl_1_rodata_24 = .rodata:0x00000024; // type:object size:0x4 data:float -lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float -lbl_1_rodata_2C = .rodata:0x0000002C; // type:object size:0x4 data:float -lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x4 data:float -lbl_1_rodata_34 = .rodata:0x00000034; // type:object size:0x4 data:float -lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x4 data:float -lbl_1_rodata_3C = .rodata:0x0000003C; // type:object size:0x4 data:float -lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x4 data:float -lbl_1_rodata_44 = .rodata:0x00000044; // type:object size:0x4 data:float -lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x4 data:float -lbl_1_rodata_4C = .rodata:0x0000004C; // type:object size:0x4 data:float -lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float -lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float -lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float -lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 data:float -lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float -lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float -lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x4 data:float -lbl_1_rodata_6C = .rodata:0x0000006C; // type:object size:0x4 data:float -lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x10 data:4byte -lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x4 data:float -lbl_1_rodata_84 = .rodata:0x00000084; // type:object size:0x4 data:float -lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 data:double -lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:double -lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 data:double -lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 data:double -lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 data:double -lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double -lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 data:float -lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 data:float -lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 data:float -lbl_1_rodata_C4 = .rodata:0x000000C4; // type:object size:0x4 data:float -lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float -lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 data:float -lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 data:float -lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 data:float -lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float -lbl_1_rodata_DC = .rodata:0x000000DC; // type:object size:0x4 data:float -lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x4 data:float -lbl_1_rodata_E4 = .rodata:0x000000E4; // type:object size:0x4 data:float -lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x4 data:float -lbl_1_rodata_EC = .rodata:0x000000EC; // type:object size:0x4 data:float -lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x4 data:float -lbl_1_rodata_F4 = .rodata:0x000000F4; // type:object size:0x4 data:float -lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float -lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 data:float -lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 data:float -lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 data:double -lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0xC0 -lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 data:float -lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 data:float -lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 data:float -lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 data:float -lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 data:float -lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 data:double -lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 data:double -lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x4 data:float -lbl_1_rodata_1FC = .rodata:0x000001FC; // type:object size:0x4 data:float -lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 data:double -lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x4 data:float -lbl_1_rodata_20C = .rodata:0x0000020C; // type:object size:0x4 data:float -lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x4 data:float -lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 data:float -lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 data:double -lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float -lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 data:float -lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 data:float -lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 data:float -lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float -lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 data:float -lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 data:double -lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 data:double -lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 data:double -lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 data:float -lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 data:double -lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 data:float -lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 data:double -lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 data:float -lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 data:float -lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 data:float -lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 data:float -lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 data:float -lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 data:float -lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x10 data:4byte -lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x10 data:4byte -lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 data:float -lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 data:float -lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 data:float -lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 data:float -lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 data:float -lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x10 data:4byte -lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x10 data:4byte -lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 data:float -lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 data:float -lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 data:double -lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 data:double -lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 data:float -lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 data:float -lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 data:float -lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 data:float -lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 data:float -lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 data:float -lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 data:float -lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 data:float -lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 data:float -lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 data:double -lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 data:double -lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 data:float -lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 data:float -lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 data:float -lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 data:float -lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 data:float -lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 data:float -lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 data:float -lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 data:float -lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 data:double -lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 data:float -lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 data:double -lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x10 data:4byte -lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 data:float -lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 data:float -lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 data:float -lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 data:float -lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 data:double -lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 data:float -lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 data:float -lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 data:float -lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 data:float -lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 data:float -lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 data:float -lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 data:float -lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 data:float -lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 data:float -lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 data:double -lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 data:double -lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 data:float -lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 data:double -lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 data:double -lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 data:float -lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 data:double -lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x18 data:4byte -lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x18 data:4byte -lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 data:float -lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 data:float -lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 data:float -lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 data:float -lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 data:float -lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 data:float -lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 data:float -lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 data:float -lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 data:float -lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 data:float -lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 data:float -lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 data:float -lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 data:float -lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 data:float -lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 data:float -lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 data:float -lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x8 data:double -lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 data:float -lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x8 data:double -lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 data:float -lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 data:float -lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 data:float -lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 data:float -lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 data:float -lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 data:float -lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 data:float -lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 data:float -lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 data:float -lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 data:float -lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 data:float -lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 data:float -lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 data:float -lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 data:float -lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 data:float -lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 data:float -lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 data:float -lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 data:float -lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 data:float -lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 data:float -lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 data:float -lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 data:float -lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 data:float -lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 data:float -lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x8 data:double -lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x8 data:double -lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 data:4byte -lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x8 data:double -lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x8 data:double -lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 data:float -lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 data:float -lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 data:float -lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 data:float -lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 data:float -lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 data:float -lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 data:float -lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 data:float -lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 data:float -lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x24 data:4byte -lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x8 data:4byte -lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x8 data:4byte -lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x8 data:4byte -lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 data:float -lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 data:float -lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x4 data:float -lbl_1_rodata_56C = .rodata:0x0000056C; // type:object size:0x4 data:float -lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 data:float -lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x4 data:float -lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x4 data:float -lbl_1_rodata_57C = .rodata:0x0000057C; // type:object size:0x4 data:float -lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x4 data:float -lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 data:float -lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 data:float -lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x8 data:4byte -lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 data:float -lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x8 data:double -lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x8 data:4byte -lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 data:float -lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 data:float -lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 data:float -lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x8 data:double -lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 data:float -lbl_1_rodata_5C4 = .rodata:0x000005C4; // type:object size:0x4 data:float -lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 data:float -lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 data:float -lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 data:float -lbl_1_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 data:float -lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x4 data:float -lbl_1_rodata_5DC = .rodata:0x000005DC; // type:object size:0x4 data:float -lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 data:float -lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 data:float -lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x4 data:float -lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x8 data:double -lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x8 data:double -lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x4 data:float -lbl_1_rodata_604 = .rodata:0x00000604; // type:object size:0x4 data:float -lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x4 data:float -lbl_1_rodata_60C = .rodata:0x0000060C; // type:object size:0x4 data:float -lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x4 data:float -lbl_1_rodata_614 = .rodata:0x00000614; // type:object size:0x4 data:float -lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 data:float -lbl_1_rodata_61C = .rodata:0x0000061C; // type:object size:0x4 data:float -lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x4 data:float -lbl_1_rodata_624 = .rodata:0x00000624; // type:object size:0x4 data:float -lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x4 data:float -lbl_1_rodata_62C = .rodata:0x0000062C; // type:object size:0x4 data:float -lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 data:float -lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 data:float -lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x4 data:float -lbl_1_rodata_63C = .rodata:0x0000063C; // type:object size:0x4 data:float -lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 data:float -lbl_1_rodata_644 = .rodata:0x00000644; // type:object size:0x4 data:float -lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x4 data:float -lbl_1_rodata_64C = .rodata:0x0000064C; // type:object size:0x4 data:float -lbl_1_rodata_650 = .rodata:0x00000650; // type:object size:0x4 data:float -lbl_1_rodata_654 = .rodata:0x00000654; // type:object size:0x4 data:float -lbl_1_rodata_658 = .rodata:0x00000658; // type:object size:0x4 data:float -lbl_1_rodata_65C = .rodata:0x0000065C; // type:object size:0x4 data:float -lbl_1_rodata_660 = .rodata:0x00000660; // type:object size:0x4 data:float -lbl_1_rodata_664 = .rodata:0x00000664; // type:object size:0x4 data:float -lbl_1_rodata_668 = .rodata:0x00000668; // type:object size:0x4 data:float -lbl_1_rodata_66C = .rodata:0x0000066C; // type:object size:0x4 data:float -lbl_1_rodata_670 = .rodata:0x00000670; // type:object size:0x4 data:float -lbl_1_rodata_674 = .rodata:0x00000674; // type:object size:0x4 data:float -lbl_1_rodata_678 = .rodata:0x00000678; // type:object size:0x4 data:float -lbl_1_rodata_67C = .rodata:0x0000067C; // type:object size:0x4 data:float -lbl_1_rodata_680 = .rodata:0x00000680; // type:object size:0x4 data:float -lbl_1_rodata_684 = .rodata:0x00000684; // type:object size:0x4 data:float -lbl_1_rodata_688 = .rodata:0x00000688; // type:object size:0x4 data:float -lbl_1_rodata_690 = .rodata:0x00000690; // type:object size:0x8 data:double -lbl_1_rodata_698 = .rodata:0x00000698; // type:object size:0x4 data:float -lbl_1_rodata_69C = .rodata:0x0000069C; // type:object size:0x4 data:float -lbl_1_rodata_6A0 = .rodata:0x000006A0; // type:object size:0x4 data:float -lbl_1_rodata_6A4 = .rodata:0x000006A4; // type:object size:0x4 data:float -lbl_1_rodata_6A8 = .rodata:0x000006A8; // type:object size:0x8 data:double +lbl_1_rodata_10 = .rodata:0x00000010; // type:object size:0x4 scope:local data:float +lbl_1_rodata_14 = .rodata:0x00000014; // type:object size:0x4 scope:local data:float +lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1C = .rodata:0x0000001C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x4 scope:local data:float +lbl_1_rodata_24 = .rodata:0x00000024; // type:object size:0x4 scope:local data:float +lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2C = .rodata:0x0000002C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34 = .rodata:0x00000034; // type:object size:0x4 scope:local data:float +lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3C = .rodata:0x0000003C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x4 scope:local data:float +lbl_1_rodata_44 = .rodata:0x00000044; // type:object size:0x4 scope:local data:float +lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C = .rodata:0x0000004C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x4 scope:local data:float +lbl_1_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local data:float +lbl_1_rodata_64 = .rodata:0x00000064; // type:object size:0x4 scope:local data:float +lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6C = .rodata:0x0000006C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x4 scope:local data:float +lbl_1_rodata_84 = .rodata:0x00000084; // type:object size:0x4 scope:local data:float +lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x8 scope:local data:double +lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 scope:local data:double +lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_C4 = .rodata:0x000000C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_DC = .rodata:0x000000DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_E4 = .rodata:0x000000E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_EC = .rodata:0x000000EC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_F4 = .rodata:0x000000F4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local data:float +lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x8 scope:local data:double +lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0xC0 scope:local data:float +lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D4 = .rodata:0x000001D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1DC = .rodata:0x000001DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_1FC = .rodata:0x000001FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x8 scope:local data:double +lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x4 scope:local data:float +lbl_1_rodata_20C = .rodata:0x0000020C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x4 scope:local data:float +lbl_1_rodata_214 = .rodata:0x00000214; // type:object size:0x4 scope:local data:float +lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 scope:local data:double +lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 scope:local data:float +lbl_1_rodata_224 = .rodata:0x00000224; // type:object size:0x4 scope:local data:float +lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x4 scope:local data:float +lbl_1_rodata_22C = .rodata:0x0000022C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 scope:local data:float +lbl_1_rodata_234 = .rodata:0x00000234; // type:object size:0x4 scope:local data:float +lbl_1_rodata_238 = .rodata:0x00000238; // type:object size:0x8 scope:local data:double +lbl_1_rodata_240 = .rodata:0x00000240; // type:object size:0x8 scope:local data:double +lbl_1_rodata_248 = .rodata:0x00000248; // type:object size:0x8 scope:local data:double +lbl_1_rodata_250 = .rodata:0x00000250; // type:object size:0x4 scope:local data:float +lbl_1_rodata_258 = .rodata:0x00000258; // type:object size:0x8 scope:local data:double +lbl_1_rodata_260 = .rodata:0x00000260; // type:object size:0x4 scope:local data:float +lbl_1_rodata_268 = .rodata:0x00000268; // type:object size:0x8 scope:local data:double +lbl_1_rodata_270 = .rodata:0x00000270; // type:object size:0x4 scope:local data:float +lbl_1_rodata_274 = .rodata:0x00000274; // type:object size:0x4 scope:local data:float +lbl_1_rodata_278 = .rodata:0x00000278; // type:object size:0x4 scope:local data:float +lbl_1_rodata_27C = .rodata:0x0000027C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_280 = .rodata:0x00000280; // type:object size:0x4 scope:local data:float +lbl_1_rodata_284 = .rodata:0x00000284; // type:object size:0x4 scope:local data:float +lbl_1_rodata_288 = .rodata:0x00000288; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_298 = .rodata:0x00000298; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_2A8 = .rodata:0x000002A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2AC = .rodata:0x000002AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B0 = .rodata:0x000002B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B4 = .rodata:0x000002B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2B8 = .rodata:0x000002B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2BC = .rodata:0x000002BC; // type:object size:0x10 scope:local data:float +lbl_1_rodata_2CC = .rodata:0x000002CC; // type:object size:0x10 scope:local data:float +lbl_1_rodata_2DC = .rodata:0x000002DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E0 = .rodata:0x000002E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2E8 = .rodata:0x000002E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F0 = .rodata:0x000002F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_2F8 = .rodata:0x000002F8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_2FC = .rodata:0x000002FC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_300 = .rodata:0x00000300; // type:object size:0x4 scope:local data:float +lbl_1_rodata_304 = .rodata:0x00000304; // type:object size:0x4 scope:local data:float +lbl_1_rodata_308 = .rodata:0x00000308; // type:object size:0x4 scope:local data:float +lbl_1_rodata_30C = .rodata:0x0000030C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_310 = .rodata:0x00000310; // type:object size:0x4 scope:local data:float +lbl_1_rodata_314 = .rodata:0x00000314; // type:object size:0x4 scope:local data:float +lbl_1_rodata_318 = .rodata:0x00000318; // type:object size:0x4 scope:local data:float +lbl_1_rodata_320 = .rodata:0x00000320; // type:object size:0x8 scope:local data:double +lbl_1_rodata_328 = .rodata:0x00000328; // type:object size:0x8 scope:local data:double +lbl_1_rodata_330 = .rodata:0x00000330; // type:object size:0x4 scope:local data:float +lbl_1_rodata_334 = .rodata:0x00000334; // type:object size:0x4 scope:local data:float +lbl_1_rodata_338 = .rodata:0x00000338; // type:object size:0x4 scope:local data:float +lbl_1_rodata_33C = .rodata:0x0000033C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_340 = .rodata:0x00000340; // type:object size:0x4 scope:local data:float +lbl_1_rodata_344 = .rodata:0x00000344; // type:object size:0x4 scope:local data:float +lbl_1_rodata_348 = .rodata:0x00000348; // type:object size:0x4 scope:local data:float +lbl_1_rodata_34C = .rodata:0x0000034C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_350 = .rodata:0x00000350; // type:object size:0x8 scope:local data:double +lbl_1_rodata_358 = .rodata:0x00000358; // type:object size:0x4 scope:local data:float +lbl_1_rodata_360 = .rodata:0x00000360; // type:object size:0x8 scope:local data:double +lbl_1_rodata_368 = .rodata:0x00000368; // type:object size:0x10 scope:local data:4byte +lbl_1_rodata_378 = .rodata:0x00000378; // type:object size:0x4 scope:local data:float +lbl_1_rodata_37C = .rodata:0x0000037C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_380 = .rodata:0x00000380; // type:object size:0x4 scope:local data:float +lbl_1_rodata_384 = .rodata:0x00000384; // type:object size:0x4 scope:local data:float +lbl_1_rodata_388 = .rodata:0x00000388; // type:object size:0x8 scope:local data:double +lbl_1_rodata_390 = .rodata:0x00000390; // type:object size:0x4 scope:local data:float +lbl_1_rodata_394 = .rodata:0x00000394; // type:object size:0x4 scope:local data:float +lbl_1_rodata_398 = .rodata:0x00000398; // type:object size:0x4 scope:local data:float +lbl_1_rodata_39C = .rodata:0x0000039C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A0 = .rodata:0x000003A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A4 = .rodata:0x000003A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3A8 = .rodata:0x000003A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3AC = .rodata:0x000003AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B0 = .rodata:0x000003B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3B8 = .rodata:0x000003B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3C0 = .rodata:0x000003C0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3C8 = .rodata:0x000003C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3D0 = .rodata:0x000003D0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3D8 = .rodata:0x000003D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3E0 = .rodata:0x000003E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_3E8 = .rodata:0x000003E8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_3F0 = .rodata:0x000003F0; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_408 = .rodata:0x00000408; // type:object size:0x18 scope:local data:4byte +lbl_1_rodata_420 = .rodata:0x00000420; // type:object size:0x4 scope:local data:float +lbl_1_rodata_424 = .rodata:0x00000424; // type:object size:0x4 scope:local data:float +lbl_1_rodata_428 = .rodata:0x00000428; // type:object size:0x4 scope:local data:float +lbl_1_rodata_42C = .rodata:0x0000042C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_430 = .rodata:0x00000430; // type:object size:0x4 scope:local data:float +lbl_1_rodata_434 = .rodata:0x00000434; // type:object size:0x4 scope:local data:float +lbl_1_rodata_438 = .rodata:0x00000438; // type:object size:0x4 scope:local data:float +lbl_1_rodata_43C = .rodata:0x0000043C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_440 = .rodata:0x00000440; // type:object size:0x4 scope:local data:float +lbl_1_rodata_444 = .rodata:0x00000444; // type:object size:0x4 scope:local data:float +lbl_1_rodata_448 = .rodata:0x00000448; // type:object size:0x4 scope:local data:float +lbl_1_rodata_44C = .rodata:0x0000044C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_450 = .rodata:0x00000450; // type:object size:0x4 scope:local data:float +lbl_1_rodata_454 = .rodata:0x00000454; // type:object size:0x4 scope:local data:float +lbl_1_rodata_458 = .rodata:0x00000458; // type:object size:0x4 scope:local data:float +lbl_1_rodata_45C = .rodata:0x0000045C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_460 = .rodata:0x00000460; // type:object size:0x8 scope:local data:double +lbl_1_rodata_468 = .rodata:0x00000468; // type:object size:0x4 scope:local data:float +lbl_1_rodata_470 = .rodata:0x00000470; // type:object size:0x8 scope:local data:double +lbl_1_rodata_478 = .rodata:0x00000478; // type:object size:0x4 scope:local data:float +lbl_1_rodata_47C = .rodata:0x0000047C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_480 = .rodata:0x00000480; // type:object size:0x4 scope:local data:float +lbl_1_rodata_484 = .rodata:0x00000484; // type:object size:0x4 scope:local data:float +lbl_1_rodata_488 = .rodata:0x00000488; // type:object size:0x4 scope:local data:float +lbl_1_rodata_48C = .rodata:0x0000048C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_490 = .rodata:0x00000490; // type:object size:0x4 scope:local data:float +lbl_1_rodata_494 = .rodata:0x00000494; // type:object size:0x4 scope:local data:float +lbl_1_rodata_498 = .rodata:0x00000498; // type:object size:0x4 scope:local data:float +lbl_1_rodata_49C = .rodata:0x0000049C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A0 = .rodata:0x000004A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A4 = .rodata:0x000004A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4A8 = .rodata:0x000004A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4AC = .rodata:0x000004AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B0 = .rodata:0x000004B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B4 = .rodata:0x000004B4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4B8 = .rodata:0x000004B8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4BC = .rodata:0x000004BC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C0 = .rodata:0x000004C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C4 = .rodata:0x000004C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4C8 = .rodata:0x000004C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4CC = .rodata:0x000004CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D0 = .rodata:0x000004D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D4 = .rodata:0x000004D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_4D8 = .rodata:0x000004D8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4E0 = .rodata:0x000004E0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4E8 = .rodata:0x000004E8; // type:object size:0x4 scope:local data:4byte +lbl_1_rodata_4F0 = .rodata:0x000004F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_4F8 = .rodata:0x000004F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_500 = .rodata:0x00000500; // type:object size:0x4 scope:local data:float +lbl_1_rodata_504 = .rodata:0x00000504; // type:object size:0x4 scope:local data:float +lbl_1_rodata_508 = .rodata:0x00000508; // type:object size:0x4 scope:local data:float +lbl_1_rodata_50C = .rodata:0x0000050C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_510 = .rodata:0x00000510; // type:object size:0x4 scope:local data:float +lbl_1_rodata_514 = .rodata:0x00000514; // type:object size:0x4 scope:local data:float +lbl_1_rodata_518 = .rodata:0x00000518; // type:object size:0x4 scope:local data:float +lbl_1_rodata_51C = .rodata:0x0000051C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_520 = .rodata:0x00000520; // type:object size:0x4 scope:local data:float +lbl_1_rodata_524 = .rodata:0x00000524; // type:object size:0x24 scope:local data:4byte +lbl_1_rodata_548 = .rodata:0x00000548; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_550 = .rodata:0x00000550; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_558 = .rodata:0x00000558; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_560 = .rodata:0x00000560; // type:object size:0x4 scope:local data:float +lbl_1_rodata_564 = .rodata:0x00000564; // type:object size:0x4 scope:local data:float +lbl_1_rodata_568 = .rodata:0x00000568; // type:object size:0x4 scope:local data:float +lbl_1_rodata_56C = .rodata:0x0000056C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_570 = .rodata:0x00000570; // type:object size:0x4 scope:local data:float +lbl_1_rodata_574 = .rodata:0x00000574; // type:object size:0x4 scope:local data:float +lbl_1_rodata_578 = .rodata:0x00000578; // type:object size:0x4 scope:local data:float +lbl_1_rodata_57C = .rodata:0x0000057C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_580 = .rodata:0x00000580; // type:object size:0x4 scope:local data:float +lbl_1_rodata_584 = .rodata:0x00000584; // type:object size:0x4 scope:local data:float +lbl_1_rodata_588 = .rodata:0x00000588; // type:object size:0x4 scope:local data:float +lbl_1_rodata_58C = .rodata:0x0000058C; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_594 = .rodata:0x00000594; // type:object size:0x4 scope:local data:float +lbl_1_rodata_598 = .rodata:0x00000598; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5A0 = .rodata:0x000005A0; // type:object size:0x8 scope:local data:4byte +lbl_1_rodata_5A8 = .rodata:0x000005A8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5AC = .rodata:0x000005AC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5B0 = .rodata:0x000005B0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5B8 = .rodata:0x000005B8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5C0 = .rodata:0x000005C0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C4 = .rodata:0x000005C4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5C8 = .rodata:0x000005C8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5CC = .rodata:0x000005CC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5D0 = .rodata:0x000005D0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5D4 = .rodata:0x000005D4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5D8 = .rodata:0x000005D8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5DC = .rodata:0x000005DC; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5E0 = .rodata:0x000005E0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5E4 = .rodata:0x000005E4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5E8 = .rodata:0x000005E8; // type:object size:0x4 scope:local data:float +lbl_1_rodata_5F0 = .rodata:0x000005F0; // type:object size:0x8 scope:local data:double +lbl_1_rodata_5F8 = .rodata:0x000005F8; // type:object size:0x8 scope:local data:double +lbl_1_rodata_600 = .rodata:0x00000600; // type:object size:0x4 scope:local data:float +lbl_1_rodata_604 = .rodata:0x00000604; // type:object size:0x4 scope:local data:float +lbl_1_rodata_608 = .rodata:0x00000608; // type:object size:0x4 scope:local data:float +lbl_1_rodata_60C = .rodata:0x0000060C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_610 = .rodata:0x00000610; // type:object size:0x4 scope:local data:float +lbl_1_rodata_614 = .rodata:0x00000614; // type:object size:0x4 scope:local data:float +lbl_1_rodata_618 = .rodata:0x00000618; // type:object size:0x4 scope:local data:float +lbl_1_rodata_61C = .rodata:0x0000061C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_620 = .rodata:0x00000620; // type:object size:0x4 scope:local data:float +lbl_1_rodata_624 = .rodata:0x00000624; // type:object size:0x4 scope:local data:float +lbl_1_rodata_628 = .rodata:0x00000628; // type:object size:0x4 scope:local data:float +lbl_1_rodata_62C = .rodata:0x0000062C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_630 = .rodata:0x00000630; // type:object size:0x4 scope:local data:float +lbl_1_rodata_634 = .rodata:0x00000634; // type:object size:0x4 scope:local data:float +lbl_1_rodata_638 = .rodata:0x00000638; // type:object size:0x4 scope:local data:float +lbl_1_rodata_63C = .rodata:0x0000063C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_640 = .rodata:0x00000640; // type:object size:0x4 scope:local data:float +lbl_1_rodata_644 = .rodata:0x00000644; // type:object size:0x4 scope:local data:float +lbl_1_rodata_648 = .rodata:0x00000648; // type:object size:0x4 scope:local data:float +lbl_1_rodata_64C = .rodata:0x0000064C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_650 = .rodata:0x00000650; // type:object size:0x4 scope:local data:float +lbl_1_rodata_654 = .rodata:0x00000654; // type:object size:0x4 scope:local data:float +lbl_1_rodata_658 = .rodata:0x00000658; // type:object size:0x4 scope:local data:float +lbl_1_rodata_65C = .rodata:0x0000065C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_660 = .rodata:0x00000660; // type:object size:0x4 scope:local data:float +lbl_1_rodata_664 = .rodata:0x00000664; // type:object size:0x4 scope:local data:float +lbl_1_rodata_668 = .rodata:0x00000668; // type:object size:0x4 scope:local data:float +lbl_1_rodata_66C = .rodata:0x0000066C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_670 = .rodata:0x00000670; // type:object size:0x4 scope:local data:float +lbl_1_rodata_674 = .rodata:0x00000674; // type:object size:0x4 scope:local data:float +lbl_1_rodata_678 = .rodata:0x00000678; // type:object size:0x4 scope:local data:float +lbl_1_rodata_67C = .rodata:0x0000067C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_680 = .rodata:0x00000680; // type:object size:0x4 scope:local data:float +lbl_1_rodata_684 = .rodata:0x00000684; // type:object size:0x4 scope:local data:float +lbl_1_rodata_688 = .rodata:0x00000688; // type:object size:0x4 scope:local data:float +lbl_1_rodata_690 = .rodata:0x00000690; // type:object size:0x8 scope:local data:double +lbl_1_rodata_698 = .rodata:0x00000698; // type:object size:0x4 scope:local data:float +lbl_1_rodata_69C = .rodata:0x0000069C; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6A0 = .rodata:0x000006A0; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6A4 = .rodata:0x000006A4; // type:object size:0x4 scope:local data:float +lbl_1_rodata_6A8 = .rodata:0x000006A8; // type:object size:0x8 scope:local data:double lbl_1_data_0 = .data:0x00000000; // type:object size:0xC lbl_1_data_C = .data:0x0000000C; // type:object size:0xC lbl_1_data_18 = .data:0x00000018; // type:object size:0xC data:float @@ -421,26 +421,26 @@ lbl_1_data_1C4 = .data:0x000001C4; // type:object size:0x44 lbl_1_data_208 = .data:0x00000208; // type:object size:0x44 lbl_1_data_24C = .data:0x0000024C; // type:object size:0x1A4 lbl_1_data_3F0 = .data:0x000003F0; // type:object size:0x38 -lbl_1_data_428 = .data:0x00000428; // type:object size:0x9 data:string -lbl_1_data_431 = .data:0x00000431; // type:object size:0x9 data:string -lbl_1_data_43A = .data:0x0000043A; // type:object size:0xB data:string -lbl_1_data_445 = .data:0x00000445; // type:object size:0xB data:string +lbl_1_data_428 = .data:0x00000428; // type:object size:0x9 scope:local data:string +lbl_1_data_431 = .data:0x00000431; // type:object size:0x9 scope:local data:string +lbl_1_data_43A = .data:0x0000043A; // type:object size:0xB scope:local data:string +lbl_1_data_445 = .data:0x00000445; // type:object size:0xB scope:local data:string lbl_1_data_450 = .data:0x00000450; // type:object size:0x18 lbl_1_data_468 = .data:0x00000468; // type:object size:0x24 lbl_1_data_48C = .data:0x0000048C; // type:object size:0x48 lbl_1_data_4D4 = .data:0x000004D4; // type:object size:0x6C lbl_1_data_540 = .data:0x00000540; // type:object size:0x24 -lbl_1_data_564 = .data:0x00000564; // type:object size:0x2 data:string -lbl_1_data_566 = .data:0x00000566; // type:object size:0x15 data:string -lbl_1_data_57B = .data:0x0000057B; // type:object size:0x15 data:string -lbl_1_data_590 = .data:0x00000590; // type:object size:0x15 data:string -lbl_1_data_5A5 = .data:0x000005A5; // type:object size:0x15 data:string -lbl_1_data_5BA = .data:0x000005BA; // type:object size:0x18 data:string -lbl_1_data_5D2 = .data:0x000005D2; // type:object size:0x18 data:string -lbl_1_data_5EA = .data:0x000005EA; // type:object size:0x15 data:string -lbl_1_data_5FF = .data:0x000005FF; // type:object size:0x15 data:string -lbl_1_data_614 = .data:0x00000614; // type:object size:0x15 data:string -lbl_1_data_629 = .data:0x00000629; // type:object size:0x15 data:string +lbl_1_data_564 = .data:0x00000564; // type:object size:0x2 scope:local data:string +lbl_1_data_566 = .data:0x00000566; // type:object size:0x15 scope:local data:string +lbl_1_data_57B = .data:0x0000057B; // type:object size:0x15 scope:local data:string +lbl_1_data_590 = .data:0x00000590; // type:object size:0x15 scope:local data:string +lbl_1_data_5A5 = .data:0x000005A5; // type:object size:0x15 scope:local data:string +lbl_1_data_5BA = .data:0x000005BA; // type:object size:0x18 scope:local data:string +lbl_1_data_5D2 = .data:0x000005D2; // type:object size:0x18 scope:local data:string +lbl_1_data_5EA = .data:0x000005EA; // type:object size:0x15 scope:local data:string +lbl_1_data_5FF = .data:0x000005FF; // type:object size:0x15 scope:local data:string +lbl_1_data_614 = .data:0x00000614; // type:object size:0x15 scope:local data:string +lbl_1_data_629 = .data:0x00000629; // type:object size:0x15 scope:local data:string lbl_1_data_63E = .data:0x0000063E; // type:object size:0x16 jumptable_1_data_654 = .data:0x00000654; // type:object size:0x20 scope:local lbl_1_data_674 = .data:0x00000674; // type:object size:0xC @@ -458,10 +458,13 @@ lbl_1_bss_C = .bss:0x0000000C; // type:object size:0x4 data:4byte lbl_1_bss_10 = .bss:0x00000010; // type:object size:0x2 data:2byte lbl_1_bss_12 = .bss:0x00000012; // type:object size:0x2 data:2byte lbl_1_bss_14 = .bss:0x00000014; // type:object size:0x2 data:2byte -lbl_1_bss_16 = .bss:0x00000016; // type:object size:0xA data:2byte +lbl_1_bss_16 = .bss:0x00000016; // type:object size:0x2 data:2byte +lbl_1_bss_18 = .bss:0x00000018; // type:object size:0x8 data:2byte lbl_1_bss_20 = .bss:0x00000020; // type:object size:0x4 data:4byte lbl_1_bss_24 = .bss:0x00000024; // type:object size:0x4 data:4byte -lbl_1_bss_28 = .bss:0x00000028; // type:object size:0xC data:4byte +lbl_1_bss_28 = .bss:0x00000028; // type:object size:0x4 data:4byte +lbl_1_bss_2C = .bss:0x0000002C; // type:object size:0x4 data:4byte +lbl_1_bss_30 = .bss:0x00000030; // type:object size:0x4 data:4byte lbl_1_bss_34 = .bss:0x00000034; // type:object size:0x4 data:4byte lbl_1_bss_38 = .bss:0x00000038; // type:object size:0x6F0 lbl_1_bss_728 = .bss:0x00000728; // type:object size:0x80 diff --git a/configure.py b/configure.py index 73ab159e..545739bb 100644 --- a/configure.py +++ b/configure.py @@ -1108,8 +1108,8 @@ config.libs = [ Rel( "m433Dll", # Beach Volley Folly objects={ - Object(NonMatching, "REL/m433Dll/main.c"), - Object(NonMatching, "REL/m433Dll/map.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m433Dll/main.c"), + Object(MatchingFor("GMPE01_00", "GMPE01_01"), "REL/m433Dll/map.c"), Object(NonMatching, "REL/m433Dll/player.c"), }, ), diff --git a/include/REL/m433Dll.h b/include/REL/m433Dll.h new file mode 100644 index 00000000..e2a18da8 --- /dev/null +++ b/include/REL/m433Dll.h @@ -0,0 +1,43 @@ +#ifndef M4303LL_H +#define M4303LL_H + +#include "game/object.h" + +typedef struct M433DllWork { + u32 unk_00; + s32 unk_04; + s32 unk_08; + s32 unk_0C; + s32 unk_10; + s32 unk_14; + s32 unk_18; + u32 unk_1C; + u32 unk_20; + s32 unk_24; + u32 unk_28; + s32 unk_2C[2]; + u32 unk_34; + s32 unk_38; + s32 unk_3C; +} M433DllWork; /* size = 0x40 */ + +void fn_1_584(omObjData *object); +void fn_1_618(omObjData *object); +s32 fn_1_216C(void); +s32 fn_1_2184(void); +void fn_1_219C(s32 arg0, s32 arg1, s32 arg2); +void fn_1_21E4(s32 arg0); +void fn_1_2214(s32 arg0); +s32 fn_1_2244(void); +float fn_1_26C4(float arg8, float arg9, float argA); + +void fn_1_2894(Process *process); +void fn_1_2984(void); +omObjFunc fn_1_29A4(Process *process, omObjData *object); +void fn_1_58D8(s32); + +void fn_1_5904(Process *process); +void fn_1_5B74(void); +s32 fn_1_10FA4(s32 arg0); + +#endif diff --git a/src/REL/m433Dll/main.c b/src/REL/m433Dll/main.c new file mode 100644 index 00000000..6e8975db --- /dev/null +++ b/src/REL/m433Dll/main.c @@ -0,0 +1,476 @@ +#include "ext_math.h" +#include "game/audio.h" +#include "game/chrman.h" +#include "game/gamework_data.h" +#include "game/hsfanim.h" +#include "game/hsfdraw.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/minigame_seq.h" +#include "game/object.h" +#include "game/objsub.h" +#include "game/pad.h" +#include "game/sprite.h" +#include "game/window.h" +#include "game/wipe.h" +#include "string.h" + +#include "REL/m433Dll.h" + +void fn_1_4C0(omObjData *object); +void fn_1_618(omObjData *object); +void fn_1_798(omObjData *object); +void fn_1_AD4(omObjData *object); +void fn_1_E2C(omObjData *object); +void fn_1_1040(omObjData *object); +void fn_1_13FC(omObjData *object); +void fn_1_16D0(omObjData *object); +omObjFunc fn_1_1A3C(Process *process, omObjData *object); +void fn_1_1A48(omObjData *object); +float fn_1_26C4(float arg8, float arg9, float argA); + +Vec lbl_1_data_0 = { 100.0f, 800.0f, -100.0f }; +Vec lbl_1_data_C = { 0.3f, -0.8f, 0.3f }; +Vec lbl_1_data_18 = { 10.0f, 45.0f, 3500.0f }; +GXColor lbl_1_data_24 = { 0xFF, 0xFF, 0xFF, 0xFF }; +Vec lbl_1_data_28 = { 50.0f, 150000.0f, 50.0f }; +Vec lbl_1_data_34 = { 0.0f, 1.0f, 0.0f }; +Vec lbl_1_data_40 = { 0.0f, 0.0f, 0.0f }; +Vec lbl_1_data_4C = { 0.0f, 170.0f, 0.0f }; +Vec lbl_1_data_58 = { 0.0f, -22.0f, 850.0f }; + +char lbl_1_bss_34[0x4]; +char lbl_1_bss_30[0x4]; +char lbl_1_bss_2C[0x4]; +Process *lbl_1_bss_28; +omObjData *lbl_1_bss_24; +omObjData *lbl_1_bss_20; +char lbl_1_bss_18[8]; +s16 lbl_1_bss_16; +s16 lbl_1_bss_14; +s16 lbl_1_bss_12; +s16 lbl_1_bss_10; +s32 lbl_1_bss_C; +s32 lbl_1_bss_8; +s32 lbl_1_bss_4; +s32 lbl_1_bss_0; + +void ObjectSetup(void) +{ + Vec sp14; + Vec sp8; + Process *var_r31; + LightData *var_r30; + + HuAudSndGrpSet(0x3A); + lbl_1_bss_C = lbl_1_bss_8 = -1; + lbl_1_bss_4 = lbl_1_bss_0 = -1; + lbl_1_data_28.x = 200.0f; + lbl_1_data_28.y = 1200.0f; + lbl_1_data_28.z = 160.0f; + lbl_1_data_34.x = 0.0f; + lbl_1_data_34.y = 1.0f; + lbl_1_data_34.z = 0.0f; + lbl_1_data_40.x = 0.0f; + lbl_1_data_40.y = 0.0f; + lbl_1_data_40.z = 0.0f; + Hu3DShadowCreate(30.0f, 20.0f, 25000.0f); + Hu3DShadowTPLvlSet(0.625f); + Hu3DShadowPosSet(&lbl_1_data_28, &lbl_1_data_34, &lbl_1_data_40); + lbl_1_bss_16 = Hu3DGLightCreateV(&lbl_1_data_0, &lbl_1_data_C, &lbl_1_data_24); + Hu3DGLightInfinitytSet(lbl_1_bss_16); + var_r30 = &Hu3DGlobalLight[lbl_1_bss_16]; + var_r30->unk_00 |= 0x8000; + lbl_1_data_18.x = 55.74f; + lbl_1_data_18.y = 0.0f; + lbl_1_data_18.z = 3500.0f; + sp14.x = sp14.y = sp14.z = 0.0f; + sp8.x = sp8.z = 0.0f; + sp8.y = lbl_1_data_18.z; + sp8.x = 0.0f; + sp8.y = 3480.0002f; + sp8.z = 900.00006f; + Hu3DGLightPosAimSetV(lbl_1_bss_16, &sp8, &sp14); + Hu3DShadowPosSet(&sp8, &lbl_1_data_34, &sp14); + lbl_1_bss_14 = lbl_1_bss_12 = lbl_1_bss_10 = -1; + var_r31 = omInitObjMan(0x32, 0x2000); + lbl_1_bss_28 = var_r31; + omGameSysInit(var_r31); + Hu3DCameraCreate(1); + Hu3DCameraPerspectiveSet(1, -1.0f, 10.0f, 10000.0f, 1.2f); + Hu3DCameraViewportSet(1, 0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f); + lbl_1_bss_20 = omAddObjEx(var_r31, 0x7FDA, 0, 0, -1, omOutView); + lbl_1_bss_24 = omAddObjEx(var_r31, 0xA, 0, 0, -1, fn_1_4C0); + fn_1_2894(var_r31); + fn_1_5904(var_r31); +} + +void fn_1_4C0(omObjData *object) +{ + M433DllWork *work; + + object->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(M433DllWork), MEMORY_DEFAULT_NUM); + work = object->data; + memset(work, 0, sizeof(M433DllWork)); + work->unk_00 = 0; + work->unk_04 = 0; + work->unk_0C = 0; + work->unk_10 = 0; + work->unk_14 = 0; + work->unk_18 = 0; + work->unk_24 = 0; + work->unk_28 = 0; + work->unk_08 = 0; + work->unk_34 = 2; + work->unk_38 = 0; + work->unk_3C = 0; + object->func = fn_1_798; +} + +void fn_1_584(omObjData *object) +{ + M433DllWork *work = object->data; + work->unk_04++; + work->unk_10++; + work->unk_18++; + work->unk_28++; + if ((omSysExitReq != 0) && (work->unk_00 != 5)) { + work->unk_00 = 4; + fn_1_618(object); + } +} + +void fn_1_618(omObjData *object) +{ + M433DllWork *work = object->data; + if (work->unk_08 == 0) { + switch (work->unk_00) { + case 0: + WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60); + Hu3DCameraPerspectiveSet(1, 41.5f, 10.0f, 10000.0f, 1.2f); + lbl_1_bss_C = HuAudFXPlay(0x6AC); + work->unk_00 = 1; + work->unk_10 = 0; + object->func = fn_1_29A4(lbl_1_bss_28, object); + break; + case 1: + work->unk_00 = 2; + work->unk_18 = 0; + object->func = fn_1_1040; + break; + case 2: + work->unk_00 = 3; + work->unk_28 = 0; + object->func = fn_1_1A3C(lbl_1_bss_28, object); + break; + case 3: + case 4: + work->unk_08 = 1; + work->unk_00 = 5; + object->func = fn_1_AD4; + break; + case 5: + default: + work->unk_00 = 5; + object->func = fn_1_E2C; + break; + } + work->unk_04 = 0; + } +} + +void fn_1_798(omObjData *object) +{ + fn_1_584(object); + fn_1_618(object); +} + +void fn_1_AD4(omObjData *object) +{ + M433DllWork *work = object->data; + + fn_1_584(object); + if (WipeStatGet() == 0) { + WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60); + work->unk_08 = 0; + fn_1_618(object); + } +} + +void fn_1_E2C(omObjData *object) +{ + fn_1_584(object); + if (WipeStatGet() == 0) { + fn_1_5B74(); + fn_1_2984(); + MGSeqKillAll(); + HuAudFadeOut(1); + omOvlReturnEx(1, 1); + } +} + +void fn_1_1040(omObjData *object) +{ + M433DllWork *work = object->data; + fn_1_584(object); + switch (work->unk_14) { + case 0: + HuAudFXFadeOut(lbl_1_bss_C, 0x1E); + work->unk_1C = 0x1E; + work->unk_20 = 0x3C; + lbl_1_bss_14 = MGSeqCreate(3, 0); + MGSeqPosSet(lbl_1_bss_14, 320.0f, 240.0f); + Center.x = 0.0f; + Center.y = 200.0f; + Center.z = 0.0f; + CRot.x = -30.0f; + CRot.y = 0.0f; + CRot.z = 0.0f; + CZoom = 1900.0f; + work->unk_14 = 1; + work->unk_18 = 0; + break; + case 1: + if ((lbl_1_bss_4 < 0) && ((MGSeqStatGet(lbl_1_bss_14) & 0x10) != 0)) { + lbl_1_bss_4 = HuAudSeqPlay(0x47); + } + if ((MGSeqStatGet(lbl_1_bss_14) == 0) && (work->unk_08 == 0)) { + work->unk_14 = 2; + work->unk_18 = 0; + object->func = fn_1_13FC; + } + break; + } +} + +void fn_1_13FC(omObjData *object) +{ + + M433DllWork *work = object->data; + s32 var_r27 = 0; + fn_1_584(object); + work->unk_20++; + if (--work->unk_20 == 0) { + work->unk_20 = 0x3C; + work->unk_1C--; + if (work->unk_1C == 0) { + var_r27 = 1; + } + } + if (work->unk_34 != 2) { + var_r27 = 1; + } + if (var_r27 != 0) { + lbl_1_bss_12 = MGSeqCreate(3, 1); + MGSeqPosSet(lbl_1_bss_12, 320.0f, 240.0f); + HuAudSeqFadeOut(lbl_1_bss_4, 0x64); + work->unk_14 = 3; + work->unk_18 = 0; + if (work->unk_08 == 0) { + object->func = fn_1_16D0; + } + lbl_1_bss_8 = HuAudFXPlay(0x6AC); + } +} + +void fn_1_16D0(omObjData *object) +{ + M433DllWork *work = object->data; + fn_1_584(object); + if ((MGSeqStatGet(lbl_1_bss_12) == 0) && ((work->unk_38 + 0xFFFF0000) == 0x1111)) { + work->unk_14 = 4; + work->unk_18 = 0; + fn_1_618(object); + } +} + +omObjFunc fn_1_1A3C(Process *process, omObjData *object) +{ + return fn_1_1A48; +} + +static inline s32 fn_1_1A48_inline(void) +{ + return GWSystem.mg_type; +} + +void fn_1_1A48(omObjData *object) +{ + M433DllWork *work = object->data; + float var_f31 = lbl_1_data_58.y; + if (fn_1_10FA4(1) != 0) { + var_f31 *= -1.0f; + } + Center.x += 0.15f * (lbl_1_data_4C.x - Center.x); + Center.y += 0.15f * (lbl_1_data_4C.y - Center.y); + Center.z += 0.15f * (lbl_1_data_4C.z - Center.z); + CRot.x = fn_1_26C4(CRot.x, lbl_1_data_58.x, 0.15f); + CRot.y = fn_1_26C4(CRot.y, var_f31, 0.15f); + CZoom += 0.15f * (lbl_1_data_58.z - CZoom); + fn_1_584(object); + work->unk_24 = 1; + if (lbl_1_bss_0 < 0) { + lbl_1_bss_0 = HuAudSStreamPlay(1); + } + if (lbl_1_bss_10 < 0) { + s32 spC[4] = { 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF }; + s32 var_r26; + s32 var_r25 = 0; + s32 var_r24; + for (var_r26 = 0; var_r26 < 2; var_r26++) { + if (work->unk_2C[var_r26] >= 0) { + spC[var_r25++] = GWPlayerCfg[work->unk_2C[var_r26]].character; + GWPlayerCoinWinAdd(work->unk_2C[var_r26], 10); + } + } + if (spC[0] == -1) { + lbl_1_bss_10 = MGSeqCreate(5, 2); + return; + } + var_r24 = 3; + if (fn_1_1A48_inline() == 0) { + if (fn_1_10FA4(0) != 0) { + var_r24 = 5; + } + } + lbl_1_bss_10 = MGSeqCreate(5, var_r24, spC[0], spC[1], spC[2], spC[3]); + return; + } + if ((MGSeqStatGet(lbl_1_bss_10) == 0) && (work->unk_28 >= 210.0f)) { + HuAudFXFadeOut(lbl_1_bss_8, 0x1E); + work->unk_24 = 2; + fn_1_618(object); + } +} + +s32 fn_1_213C(void) +{ + return OM_GET_DATA_PTR(lbl_1_bss_24, M433DllWork)->unk_00; +} + +s32 fn_1_2154(void) +{ + return OM_GET_DATA_PTR(lbl_1_bss_24, M433DllWork)->unk_0C; +} + +s32 fn_1_216C(void) +{ + return OM_GET_DATA_PTR(lbl_1_bss_24, M433DllWork)->unk_14; +} + +s32 fn_1_2184(void) +{ + return OM_GET_DATA_PTR(lbl_1_bss_24, M433DllWork)->unk_24; +} + +void fn_1_219C(s32 arg0, s32 arg1, s32 arg2) +{ + M433DllWork *work = lbl_1_bss_24->data; + work->unk_34 = arg0; + work->unk_2C[0] = arg1; + work->unk_2C[1] = arg2; +} + +s32 fn_1_21CC(void) +{ + return OM_GET_DATA_PTR(lbl_1_bss_24, M433DllWork)->unk_34; +} + +void fn_1_21E4(s32 arg0) +{ + OM_GET_DATA_PTR(lbl_1_bss_24, M433DllWork)->unk_38 |= (1 << ((arg0 & 7) * 4)); +} + +void fn_1_2214(s32 arg0) +{ + OM_GET_DATA_PTR(lbl_1_bss_24, M433DllWork)->unk_3C |= (1 << ((arg0 & 3) * 4)); +} + +s32 fn_1_2244(void) +{ + return MGSeqStatGet(lbl_1_bss_12) == 0; +} + +void fn_1_227C(Vec *arg0, Vec *arg1) +{ + Vec sp10; + + PSVECSubtract(arg1, arg0, &sp10); + Center = *arg1; + CRot.x = atan2d(sp10.y, sqrtf((sp10.x * sp10.x) + (sp10.z * sp10.z))); + CRot.y = atan2d(-sp10.x, -sp10.z); + CRot.z = 0.0f; + CZoom = PSVECMag(&sp10); +} + +void fn_1_2484(float arg8, float arg9, float argA, float argB, float argC, float argD) +{ + Vec sp3C; + Vec sp30; + + sp3C.x = arg8; + sp3C.y = arg9; + sp3C.z = argA; + sp30.x = argB; + sp30.y = argC; + sp30.z = argD; + fn_1_227C(&sp3C, &sp30); +} + +float fn_1_26C4(float arg8, float arg9, float argA) +{ + float var_f31; + float var_f30; + float var_f29; + + var_f30 = fmod(arg9 - arg8, 360.0); + var_f31 = var_f30; + if (var_f31 < 0.0f) { + var_f31 += 360.0f; + } + if (var_f31 > 180.0f) { + var_f31 -= 360.0f; + } + var_f29 = fmod(arg8 + (argA * var_f31), 360.0); + var_f31 = var_f29; + if (var_f31 < 0.0f) { + var_f31 += 360.0f; + } + return var_f31; +} + +float fn_1_27E0(float arg8, float arg9) +{ + float var_f31; + float var_f30; + + var_f30 = fmod(arg9 - arg8, 360.0); + var_f31 = var_f30; + if (var_f31 < 0.0f) { + var_f31 += 360.0f; + } + if (var_f31 > 180.0f) { + var_f31 -= 360.0f; + } + return var_f31; +} + +s32 lbl_1_data_64[] = { + 0x00000000, + 0x00000000, + 0x45ABE000, + 0xC576E000, + 0x00000000, + 0xBF333333, + 0x3F19999A, + 0xFFFFFFFF, + 0x00000000, + 0x45ABE000, + 0xC576E000, + 0x00000000, + 0x3F800000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, +}; diff --git a/src/REL/m433Dll/map.c b/src/REL/m433Dll/map.c new file mode 100644 index 00000000..57695003 --- /dev/null +++ b/src/REL/m433Dll/map.c @@ -0,0 +1,827 @@ +#include "dolphin/mtx.h" +#include "ext_math.h" +#include "game/audio.h" +#include "game/chrman.h" +#include "game/flag.h" +#include "game/frand.h" +#include "game/gamework_data.h" +#include "game/hsfanim.h" +#include "game/hsfdraw.h" +#include "game/hsfman.h" +#include "game/hsfmotion.h" +#include "game/memory.h" +#include "game/minigame_seq.h" +#include "game/object.h" +#include "game/objsub.h" +#include "game/pad.h" +#include "game/printfunc.h" +#include "game/sprite.h" +#include "game/window.h" +#include "game/wipe.h" +#include "string.h" + +#include "REL/m433Dll.h" + +typedef struct M433DllBss38Struct { + /* 0x00 */ u8 unk_00; + /* 0x01 */ char unk01[2]; + /* 0x03 */ u8 unk_03; + /* 0x04 */ u8 unk_04; + /* 0x05 */ char unk05[3]; + /* 0x08 */ float unk_08; + /* 0x0C */ Vec unk_0C; + /* 0x18 */ Vec unk_18; + /* 0x24 */ Vec unk_24; + /* 0x30 */ Vec unk_30; + /* 0x3C */ char unk3C[0xC]; + /* 0x48 */ Vec unk_48; + union { + struct { + /* 0x54 */ float unk_54; + /* 0x58 */ float unk_58; + char unk5C[4]; + /* 0x60 */ float unk_60; + }; + struct { + /* 0x54 */ s16 unk_54_s16[0x20]; + }; + }; +} M433DllBss38Struct; /* size = 0x94 */ + +typedef struct M433DllMapWork { + char unk00; + u8 unk_01; + u8 unk_02; + char unk03; + u8 unk_04; + char unk08[4]; + Vec unk_0C; + Vec unk_18; + char unk24[0xC]; + Vec unk_30; + Vec unk_3C; + char unk48[0xC]; + s16 unk_54; + char unk56[0x3E]; +} M433DllMapWork; /* size 0x94 */ + +typedef struct M433DllMapWork2 { + u8 unk_00; + Vec unk_04; + Vec unk_10; + Vec unk_1C; + Vec unk_28; + Vec unk_34; + Vec unk_40; + char unk4C[0xE4]; + float unk_130; + float unk_134; + float unk_138; + char unk13C[4]; + float unk_140; + float unk_144; + float unk_148; + float unk_14C[3]; + float unk_158[3]; + float unk_164[3]; + float unk_170[3]; + float unk_17C[3]; + u16 unk_188[3]; +} M433DllMapWork2; /* size 0x190 */ + +typedef struct M433DllUnkStruct { + s16 unk_00; + s16 unk_02; + s16 unk_04; + char unk06[0x42]; +} M433DllUnkStruct; /* size 0x48 */ + +void fn_1_2AC4(omObjData *object); +void fn_1_2CE0(omObjData *object); +void fn_1_32CC(omObjData *object); +void fn_1_39AC(omObjData *object); +void fn_1_3C1C(omObjData *object); +s16 fn_1_3E5C(s32 arg0, s16 arg1, ParticleHook arg2); +void fn_1_3F14(ModelData *model, ParticleData *particle, Mtx matrix); +void fn_1_4A94(omObjData *object); +void fn_1_4BA0(omObjData *object); +void fn_1_4ED4(float arg8, Vec *arg0, Vec *arg1, float arg9); +void fn_1_5068(void); +void *fn_1_50A8(s32 arg0); +void fn_1_51DC(void); +s32 fn_1_5260(void); +float fn_1_52B4(float arg8, float arg9, float argA); +void fn_1_541C(Mtx arg0, float arg8, float arg9, float argA); +void fn_1_553C(Mtx arg0, Vec *arg1); +extern s32 lbl_1_bss_34; + +omObjData *lbl_1_bss_7B0; +omObjData *lbl_1_bss_7AC; +omObjData *lbl_1_bss_7A8; +void *lbl_1_bss_728[0x20]; +M433DllBss38Struct lbl_1_bss_38[0xC]; + +void fn_1_2894(Process *process) +{ + s32 var_r31; + s32 var_r29; + + lbl_1_bss_34 = 1; + lbl_1_bss_7AC = omAddObjEx(process, 0x1E, 8, 0, -1, fn_1_2CE0); + lbl_1_bss_7A8 = omAddObjEx(process, 0x1F, 3, 6, -1, fn_1_39AC); + lbl_1_bss_7B0 = omAddObjEx(process, 0x1D, 1, 0, -1, fn_1_4A94); + var_r29 = frand() & 0x1F; + for (var_r31 = 0; var_r31 < var_r29; var_r31++) { + fn_1_5260(); + } + fn_1_5068(); +} + +void fn_1_2984(void) +{ + fn_1_51DC(); +} + +omObjFunc fn_1_29A4(Process *process, omObjData *object) +{ + M433DllWork *work = object->data; + CRot.x = 54.3f; + CRot.y = 22.3f; + CRot.z = 0.0f; + Center.x = -130.1f; + Center.y = 885.0f; + Center.z = -900.3f; + CZoom = 1100.0f; + fn_1_4ED4(0.0f, &Center, &CRot, CZoom); + object->work[0] = 0xB4; + work->unk_0C = 1; + return fn_1_2AC4; +} + +void fn_1_2AC4(omObjData *object) +{ + Vec sp14; + Vec sp8; + float var_f31; + M433DllWork *work = object->data; + + fn_1_584(object); + if (object->work[0] == 120.0f) { + sp14.x = 0.0f; + sp14.y = -10.0f; + sp14.z = -207.5f; + sp8.x = -26.5f; + sp8.y = 0.0f; + sp8.z = 0.0f; + var_f31 = 1400.0f; + fn_1_4ED4(90.0f, &sp14, &sp8, var_f31); + } + if (object->work[0] == 48.0f) { + sp14.x = 0.0f; + sp14.y = 200.0f; + sp14.z = 0.0f; + sp8.x = -30.0f; + sp8.y = 0.0f; + sp8.z = 0.0f; + var_f31 = 1900.0f; + fn_1_4ED4(object->work[0], &sp14, &sp8, var_f31); + } + if (--object->work[0] == 0) { + work->unk_0C = 2; + fn_1_618(object); + lbl_1_bss_7B0->func = NULL; + } +} + +void fn_1_2CE0(omObjData *object) +{ + Vec sp8[0x10] = { + { 475.0f, 800.0f, -1400.0f }, + { -300.0f, 700.0f, -1400.0f }, + { 300.0f, 875.0f, -1450.0f }, + { -575.0f, 850.0f, -1550.0f }, + { 350.0f, 750.0f, -1500.0f }, + { -450.0f, 775.0f, -1550.0f }, + { 325.0f, 725.0f, -1450.0f }, + { -525.0f, 725.0f, -1500.0f }, + { 575.0f, 850.0f, -1550.0f }, + { -350.0f, 750.0f, -1500.0f }, + { 450.0f, 775.0f, -1550.0f }, + { -325.0f, 725.0f, -1450.0f }, + { 525.0f, 725.0f, -1500.0f }, + { -475.0f, 800.0f, -1400.0f }, + { 300.0f, 700.0f, -1400.0f }, + { -300.0f, 875.0f, -1450.0f }, + }; + M433DllBss38Struct *var_r31; + s32 var_r30; + M433DllUnkStruct *var_r28; + s32 i; + s32 var_r26; + + var_r30 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M433, 0xCD)); + object->model[0] = var_r30; + var_r30 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M433, 0xCE)); + object->model[1] = var_r30; + Hu3DModelAttrSet(var_r30, HU3D_MOTATTR_LOOP); + Hu3DMotionSpeedSet(var_r30, 0.5f); + var_r30 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M433, 0xCF)); + object->model[2] = var_r30; + Hu3DModelAttrSet(var_r30, HU3D_MOTATTR_LOOP); + var_r30 = fn_1_3E5C(DATA_MAKE_NUM(DATADIR_M425, 0x05), 1, fn_1_3F14); + object->model[3] = var_r30; + Hu3DParticleBlendModeSet(var_r30, 1); + Hu3DModelLayerSet(var_r30, 6); + var_r28 = ((ParticleData *)Hu3DData[var_r30].unk_120)->unk_1C; + var_r28->unk_02 = 0; + HuDataDirClose(DATA_MAKE_NUM(DATADIR_M425, 0x05)); + var_r30 = fn_1_3E5C(DATA_MAKE_NUM(DATADIR_M433, 0xD3), 0xA, fn_1_3F14); + object->model[4] = var_r30; + Hu3DParticleBlendModeSet(var_r30, 1); + Hu3DModelLayerSet(var_r30, 6); + var_r28 = ((ParticleData *)Hu3DData[var_r30].unk_120)->unk_1C; + var_r28->unk_02 = 1; + var_r30 = fn_1_3E5C(DATA_MAKE_NUM(DATADIR_M433, 0xD2), 4, fn_1_3F14); + object->model[5] = var_r30; + Hu3DParticleBlendModeSet(var_r30, 1); + Hu3DModelLayerSet(var_r30, 6); + var_r28 = ((ParticleData *)Hu3DData[var_r30].unk_120)->unk_1C; + var_r28->unk_02 = 2; + var_r30 = fn_1_3E5C(DATA_MAKE_NUM(DATADIR_M433, 0xD1), 6, fn_1_3F14); + object->model[6] = var_r30; + Hu3DParticleBlendModeSet(var_r30, 1); + Hu3DModelLayerSet(var_r30, 6); + var_r28 = ((ParticleData *)Hu3DData[var_r30].unk_120)->unk_1C; + var_r28->unk_02 = 3; + for (i = 0; i < 0xC; i++) { + var_r31 = &lbl_1_bss_38[i]; + var_r30 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M425, 0x02)); + var_r31->unk_00 = var_r30; + var_r31->unk_0C.x = sp8[i].x; + var_r31->unk_0C.y = sp8[i].y - 300.0f; + var_r31->unk_0C.z = 800.0f + sp8[i].z; + Hu3DModelPosSet(var_r30, var_r31->unk_0C.x, var_r31->unk_0C.y, var_r31->unk_0C.z); + Hu3DMotionSpeedSet(var_r30, 6.0f); + var_r31->unk_03 = var_r31->unk_04 = 0; + var_r31->unk_18.x = var_r31->unk_18.y = var_r31->unk_18.z = 0.0f; + var_r31->unk_24.x = var_r31->unk_24.y = var_r31->unk_24.z = 1.0f; + var_r31->unk_48.x = var_r31->unk_48.y = var_r31->unk_48.z = 0.0f; + var_r31->unk_30.x = var_r31->unk_0C.x; + var_r31->unk_30.y = var_r31->unk_0C.y; + var_r31->unk_30.z = var_r31->unk_0C.z; + if ((i & 1) != 0) { + var_r31->unk_18.y = 90.0f; + var_r31->unk_0C.y += 650.0; + var_r31->unk_0C.x -= 1000.0 + (200.0f * ((fn_1_5260() - 0x8000) / 32768.0f)); + } + else { + var_r31->unk_18.y = 90.0f; + var_r31->unk_0C.x += 200.0f * ((fn_1_5260() - 0x8000) / 32768.0f); + } + var_r31->unk_18.y += 10.0f * ((fn_1_5260() - 0x8000) / 32768.0f); + var_r31->unk_0C.z = var_r31->unk_0C.z - 400.0; + var_r31->unk_08 = 100.0f * (0.1f + (0.02f * (fn_1_5260() / 65536.0f))); + for (var_r26 = 0; var_r26 < 0x20; var_r26++) { + var_r31->unk_54_s16[var_r26] = 0; + } + var_r31->unk_60 = var_r31->unk_08; + } + HuDataDirClose(DATA_MAKE_NUM(DATADIR_M425, 0x02)); + HuAudFXPlayVol(0x6A3, 0x41); + object->func = fn_1_32CC; +} + +void fn_1_32CC(omObjData *object) +{ + Mtx sp14; + Vec sp8; + M433DllBss38Struct *var_r31; + s32 i; + + for (i = 0; i < 0xC; i++) { + var_r31 = &lbl_1_bss_38[i]; + switch (var_r31->unk_04) { + case 0: + if (var_r31->unk_08 < var_r31->unk_60) { + var_r31->unk_08 += 0.4f; + } + if ((s32)(64.0f * (fn_1_5260() / 65536.0f)) == 0) { + Hu3DMotionTimeSet(var_r31->unk_00, 0.0f); + } + if (Hu3DMotionEndCheck(var_r31->unk_00) != 0) { + var_r31->unk_48.y = -3.8933334f; + } + else { + var_r31->unk_48.y = -1.2166667f; + } + var_r31->unk_54 += 0.1f * ((fn_1_5260() - 0x8000) / 32768.0f); + var_r31->unk_58 += var_r31->unk_54; + if (var_r31->unk_58 > 180.0f) { + var_r31->unk_58 -= 180.0f; + } + if (var_r31->unk_58 < -180.0f) { + var_r31->unk_58 += 180.0f; + } + var_r31->unk_18.x = -30.0 * sind(var_r31->unk_58) * sind(var_r31->unk_18.y); + var_r31->unk_18.z = -30.0 * sind(var_r31->unk_58) * cosd(var_r31->unk_18.y); + if (var_r31->unk_0C.y <= 500.0f || fabs(var_r31->unk_0C.x) > 1600.0) { + var_r31->unk_48.y = 0.0f; + var_r31->unk_54_s16[6] = 0xB4; + var_r31->unk_08 *= 0.75f; + var_r31->unk_04++; + } + break; + case 1: + var_r31->unk_18.y += 1.0f; + var_r31->unk_18.x = 0.0f; + var_r31->unk_18.z = 60.0 * sind(var_r31->unk_54_s16[6]) * cosd(var_r31->unk_18.y); + if (--var_r31->unk_54_s16[6] == 0) { + Hu3DModelAttrSet(var_r31->unk_00, HU3D_MOTATTR_LOOP); + Hu3DMotionSpeedSet(var_r31->unk_00, 6.0f); + var_r31->unk_48.y = 4.866667f; + var_r31->unk_04++; + } + break; + case 2: + if (var_r31->unk_08 > 4.0f) { + var_r31->unk_08 -= 0.1f; + var_r31->unk_48.y += 0.73f; + } + var_r31->unk_48.y += -0.5475f; + if (var_r31->unk_48.y < 0.0f) { + Hu3DModelAttrReset(var_r31->unk_00, HU3D_MOTATTR_LOOP); + Hu3DMotionSpeedSet(var_r31->unk_00, 2.0f); + var_r31->unk_60 = 100.0f * (0.1f + (0.02f * (fn_1_5260() / 65536.0f))); + var_r31->unk_04 = 0; + } + break; + } + var_r31->unk_48.x = var_r31->unk_08 * sind(var_r31->unk_18.y); + var_r31->unk_48.z = var_r31->unk_08 * cosd(var_r31->unk_18.y); + var_r31->unk_0C.x += var_r31->unk_48.x; + var_r31->unk_0C.y += var_r31->unk_48.y; + var_r31->unk_0C.z += var_r31->unk_48.z; + if (var_r31->unk_0C.z >= -500.0f) { + var_r31->unk_0C.z = -500.0f; + } + Hu3DModelPosSet(var_r31->unk_00, var_r31->unk_0C.x, var_r31->unk_0C.y, var_r31->unk_0C.z); + fn_1_541C(sp14, var_r31->unk_18.x, -var_r31->unk_18.y, var_r31->unk_18.z); + fn_1_553C(sp14, &sp8); + Hu3DModelRotSetV(var_r31->unk_00, &sp8); + } +} + +void fn_1_39AC(omObjData *object) +{ + s32 var_r29; + s32 var_r28; + + s32 sp18[4] = { 0x004000D4, 0x004000D5, 0x004000D6, 0x004000D7 }; + s32 sp8[4] = { 0x0040000C, 0x00400010, 0x0040000F, 0x0040000E }; + M433DllMapWork *work = fn_1_50A8(sizeof(M433DllMapWork)); + object->data = work; + if (lbl_1_bss_34 != 0) { + var_r28 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M433, 0x0B)); + } + else { + var_r28 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M433, 0x62)); + } + object->model[0] = var_r28; + for (var_r29 = 0; var_r29 < 4; var_r29++) { + if (lbl_1_bss_34 != 0) { + object->motion[var_r29] = Hu3DJointMotionFile(var_r28, sp8[var_r29]); + } + else { + object->motion[var_r29] = Hu3DJointMotionFile(var_r28, sp18[var_r29]); + } + } + Hu3DMotionSet(var_r28, object->motion[0]); + Hu3DModelAttrSet(var_r28, HU3D_MOTATTR_LOOP); + work->unk_01 = work->unk_02 = 0; + work->unk_04 = 0; + work->unk_54 = 0; + work->unk_0C.x = 0.0f; + work->unk_0C.y = 180.0f; + work->unk_0C.z = -490.0f; + work->unk_30 = work->unk_0C; + work->unk_18.x = work->unk_18.y = work->unk_18.z = 0.0f; + work->unk_3C = work->unk_18; + omSetTra(object, work->unk_0C.x, work->unk_0C.y, work->unk_0C.z); + omSetRot(object, work->unk_18.x, work->unk_18.y, work->unk_18.z); + object->func = fn_1_3C1C; +} + +void fn_1_3C1C(omObjData *object) +{ + M433DllMapWork *work; + s32 var_r29; + s32 var_r28; + + work = object->data; + var_r28 = object->model[0]; + switch (work->unk_04) { + case 0: + work->unk_01 = 0; + var_r29 = 0x40000001; + break; + case 1: + work->unk_3C.y = 0.0f; + work->unk_01 = 1; + var_r29 = 0x40000001; + if (work->unk_54++ >= 0x5A) { + work->unk_54 = 0; + work->unk_04 = 0; + } + break; + case 2: + work->unk_3C.y = 0.0f; + work->unk_01 = 2; + var_r29 = 0; + if (Hu3DMotionEndCheck(var_r28) != 0) { + work->unk_04 = 0; + } + break; + case 3: + work->unk_3C.y = 0.0f; + work->unk_01 = 3; + var_r29 = 0x40000001; + break; + case 4: + work->unk_3C.y = 0.0f; + work->unk_04 = 0; + break; + case 5: + work->unk_3C.y = 50.0f; + work->unk_04 = 0; + break; + case 6: + work->unk_3C.y = -50.0f; + work->unk_04 = 0; + break; + } + if (work->unk_01 != work->unk_02) { + work->unk_02 = work->unk_01; + Hu3DMotionShiftSet(var_r28, object->motion[work->unk_01], 0.0f, 8.0f, var_r29); + switch (work->unk_01) { + case 1: + HuAudFXPlay(0x43); + break; + case 2: + HuAudFXPlay(0x45); + break; + } + } + work->unk_18.y = fn_1_52B4(work->unk_18.y, work->unk_3C.y, 0.9f); + omSetTra(object, work->unk_0C.x, work->unk_0C.y, work->unk_0C.z); + omSetRot(object, work->unk_18.x, work->unk_18.y, work->unk_18.z); +} + +s16 fn_1_3E5C(s32 sp8, s16 spC, ParticleHook sp10) +{ + M433DllUnkStruct *var_r31; + s32 var_r30; + ParticleData *var_r29; + AnimData *var_r28; + + var_r28 = HuSprAnimRead(HuDataReadNum(sp8, MEMORY_DEFAULT_NUM)); + var_r30 = Hu3DParticleCreate(var_r28, spC); + Hu3DParticleHookSet(var_r30, sp10); + var_r29 = Hu3DData[var_r30].unk_120; + var_r31 = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(M433DllUnkStruct), MEMORY_DEFAULT_NUM); + var_r29->unk_1C = var_r31; + var_r31->unk_00 = var_r30; + var_r31->unk_04 = 0; + return var_r30; +} + +void fn_1_3F14(ModelData *model, ParticleData *var_r30, Mtx matrix) +{ + float var_f29; + float var_f26; + float var_f25; + float var_f24; + HsfanimStruct01 *var_r31; + s32 var_r28; + float sp54[4] = { 1000.0f, 200.0f, 600.0f, 1200.0f }; + float sp44[4] = { 1.0f, 0.6f, 0.3f, 0.425f }; + Vec sp38; + Vec sp2C; + Vec sp20; + Vec sp14; + s16 sp8 = 0; + M433DllUnkStruct *var_r29 = var_r30->unk_1C; + switch (var_r29->unk_04) { + case 0: + var_r30->unk_00 = 0x54; + var_r31 = var_r30->unk_48; + if (var_r29->unk_02 != 0) { + sp14.x = 0.0f; + sp14.y = -4700.0f; + sp14.z = 4450.0f; + var_f29 = 1.0f / sqrtf((sp14.z * sp14.z) + ((sp14.x * sp14.x) + (sp14.y * sp14.y))); + sp14.x *= var_f29; + sp14.y *= var_f29; + sp14.z *= var_f29; + var_f24 = 4000.0f / var_r30->unk_30; + for (var_r28 = 0; var_r28 < var_r30->unk_30; var_r28++, var_r31++) { + var_f26 = 500.0f + ((var_f24 * var_r28) + (0.25f * var_f24 * (fn_1_5260() / 65536.0f))); + var_f25 = var_f26 / 4000.0f; + var_r31->unk14.x = var_f26; + var_r31->unk34.x = var_f26 * sp14.x; + var_r31->unk34.y = 5500.0f + (var_f26 * sp14.y); + var_r31->unk34.z = -3950.0f + (var_f26 * sp14.z); + var_r31->unk2C = (0.3f + (0.7f * (var_f25 * var_f25))) * (sp54[var_r29->unk_02] * (0.7f + (0.3f * (fn_1_5260() / 65536.0f)))); + var_r31->unk40.r = (s32)(160.0f * (fn_1_5260() / 65536.0f)) + 0x20; + var_r31->unk40.g = (s32)(96.0f * (fn_1_5260() / 65536.0f)) + 0x20; + var_r31->unk40.b = (s32)(128.0f * (fn_1_5260() / 65536.0f)) + 0x20; + var_r31->unk40.a = ((1.0 - (0.4 * var_f25)) * (255.0f * sp44[var_r29->unk_02])) - (s32)(16.0f * (fn_1_5260() / 65536.0f)); + } + var_r29->unk_04++; + } + else { + var_r31->unk34.x = 0.0f; + var_r31->unk34.y = 5500.0f; + var_r31->unk34.z = -3950.0f; + var_r31->unk2C = 1000.0f; + } + break; + case 1: + sp38.x = sind(CRot.y) * cosd(CRot.x); + sp38.y = -sind(CRot.x); + sp38.z = cosd(CRot.y) * cosd(CRot.x); + sp2C.x = -(Center.x + (1.25f * (sp38.x * CZoom))); + sp2C.y = 5500.0f - (Center.y + (sp38.y * CZoom)); + sp2C.z = -3950.0f - (Center.z + (1.25f * (sp38.z * CZoom))); + var_f29 = 1.0f / sqrtf((sp2C.z * sp2C.z) + ((sp2C.x * sp2C.x) + (sp2C.y * sp2C.y))); + sp2C.x *= var_f29; + sp2C.y *= var_f29; + sp2C.z *= var_f29; + var_f29 = -((-sp2C.z * -sp38.z) + ((-sp2C.x * -sp38.x) + (-sp2C.y * -sp38.y))); + sp20.x = -sp38.x + (-2.0f * sp2C.x * var_f29); + sp20.y = -sp38.y + (-2.0f * sp2C.y * var_f29); + sp20.z = -sp38.z + (-2.0f * sp2C.z * var_f29); + for (var_r31 = var_r30->unk_48, var_r28 = 0; var_r28 < var_r30->unk_30; var_r28++, var_r31++) { + var_r31->unk34.x = sp20.x * var_r31->unk14.x; + var_r31->unk34.y = 5500.0f + (sp20.y * var_r31->unk14.x); + var_r31->unk34.z = -3950.0f + (sp20.z * var_r31->unk14.x); + if (var_r30->unk_00 < 0xA) { + var_r31->unk40.a *= 0.8f; + } + } + var_r30->unk_00--; + if (var_r30->unk_00 == 0) { + Hu3DModelAttrReset(var_r29->unk_00, HU3D_ATTR_PARTICLE_KILL); + Hu3DModelKill(var_r29->unk_00); + return; + } + break; + } + DCFlushRange(var_r30->unk_48, var_r30->unk_30 * sizeof(HsfanimStruct01)); +} + +void fn_1_4A94(omObjData *var_r30) +{ + M433DllMapWork2 *work = fn_1_50A8(sizeof(M433DllMapWork2)); + var_r30->data = work; + work->unk_148 = work->unk_144 = 0.0f; + work->unk_140 = 1.0f; + work->unk_10.x = work->unk_28.x = -30.0f; + work->unk_10.y = work->unk_28.y = 0.0f; + work->unk_10.z = work->unk_28.z = 0.0f; + work->unk_04.x = work->unk_1C.x = 0.0f; + work->unk_04.y = work->unk_1C.y = 200.0f; + work->unk_04.z = work->unk_1C.z = 0.0f; + work->unk_130 = work->unk_134 = 1900.0f; + work->unk_188[0] = work->unk_188[1] = work->unk_188[2] = 0; + var_r30->func = fn_1_4BA0; +} + +void fn_1_4BA0(omObjData *object) +{ + float var_f31; + s32 var_r30; + M433DllMapWork2 *work = object->data; + if (work->unk_148 > 0.0f) { + work->unk_148 = work->unk_148 - work->unk_140; + var_f31 = (work->unk_144 - work->unk_148) / work->unk_144; + var_f31 = sind((90.0f * var_f31)); + if (work->unk_00 == 0) { + work->unk_04.x = work->unk_1C.x + (var_f31 * (work->unk_34.x - work->unk_1C.x)); + work->unk_04.y = work->unk_1C.y + (var_f31 * (work->unk_34.y - work->unk_1C.y)); + work->unk_04.z = work->unk_1C.z + (var_f31 * (work->unk_34.z - work->unk_1C.z)); + work->unk_10.x = work->unk_28.x + (var_f31 * (work->unk_40.x - work->unk_28.x)); + work->unk_10.y = work->unk_28.y + (var_f31 * (work->unk_40.y - work->unk_28.y)); + work->unk_10.z = work->unk_28.z + (var_f31 * (work->unk_40.z - work->unk_28.z)); + work->unk_130 = work->unk_134 + (var_f31 * (work->unk_138 - work->unk_134)); + } + } + CRot.x = work->unk_10.x; + CRot.y = work->unk_10.y; + CRot.z = work->unk_10.z; + Center.x = work->unk_04.x; + Center.y = work->unk_04.y; + Center.z = work->unk_04.z; + CZoom = work->unk_130; + for (var_r30 = 0; var_r30 < 3; var_r30++) { + work->unk_17C[var_r30] = 0.0f; + if (work->unk_188[var_r30] != 0) { + work->unk_17C[var_r30] = work->unk_14C[var_r30] * sind(work->unk_164[var_r30]); + work->unk_164[var_r30] += work->unk_170[var_r30]; + work->unk_14C[var_r30] *= work->unk_158[var_r30]; + work->unk_188[var_r30] -= 1; + } + } + Center.x += work->unk_17C[0]; + Center.y += work->unk_17C[1]; + Center.z += work->unk_17C[2]; +} + +void fn_1_4ED4(float arg8, Vec *arg0, Vec *arg1, float arg9) +{ + M433DllMapWork2 *work = lbl_1_bss_7B0->data; + work->unk_00 = 0; + work->unk_144 = arg8; + work->unk_148 = arg8; + if (arg8 == 0.0f) { + work->unk_04.x = arg0->x; + work->unk_04.y = arg0->y; + work->unk_04.z = arg0->z; + work->unk_10.x = arg1->x; + work->unk_10.y = arg1->y; + work->unk_10.z = arg1->z; + work->unk_130 = arg9; + return; + } + work->unk_1C = work->unk_04; + work->unk_34.x = arg0->x; + work->unk_34.y = arg0->y; + work->unk_34.z = arg0->z; + work->unk_28 = work->unk_10; + work->unk_40.x = arg1->x; + work->unk_40.y = arg1->y; + work->unk_40.z = arg1->z; + work->unk_134 = work->unk_130; + work->unk_138 = arg9; +} + +void fn_1_4FC0(float arg8) +{ + M433DllMapWork2 *var_r31 = lbl_1_bss_7B0->data; + var_r31->unk_140 = arg8; +} + +void fn_1_4FE8(u8 arg0, u16 arg1, float arg8, float arg9, float argA) +{ + M433DllMapWork2 *var_r31 = lbl_1_bss_7B0->data; + var_r31->unk_188[arg0] = arg1; + var_r31->unk_14C[arg0] = arg8; + var_r31->unk_158[arg0] = arg9; + var_r31->unk_170[arg0] = argA; + var_r31->unk_164[arg0] = 90.0f; +} + +void fn_1_5068(void) +{ + s32 i; + for (i = 0; i < 0x20; i++) { + lbl_1_bss_728[i] = NULL; + } +} + +void *fn_1_50A8(s32 arg0) +{ + s32 i; + + for (i = 0; i < 0x20; i++) { + if (!lbl_1_bss_728[i]) { + break; + } + } + if (i == 0x20) { + return NULL; + } + lbl_1_bss_728[i] = HuMemDirectMallocNum(HEAP_SYSTEM, arg0, MEMORY_DEFAULT_NUM); + return lbl_1_bss_728[i]; +} + +void fn_1_5148(u32 sp8) +{ + s32 i; + + for (i = 0; i < 0x20; i++) { + if (lbl_1_bss_728[i] == (void *)sp8) { + break; + } + } + if (i != 0x20) { + HuMemDirectFree(lbl_1_bss_728[i]); + lbl_1_bss_728[i] = NULL; + } +} + +void fn_1_51DC(void) +{ + s32 i; + + for (i = 0; i < 0x20; i++) { + if (lbl_1_bss_728[i]) { + HuMemDirectFree(lbl_1_bss_728[i]); + lbl_1_bss_728[i] = NULL; + } + } +} + +u32 lbl_1_data_C4 = 0x41C64E6D; + +s32 fn_1_5260(void) +{ + lbl_1_data_C4 *= 0x41C64E6D; + lbl_1_data_C4 += 0x3039; + return lbl_1_data_C4 >> 0x10; +} + +float fn_1_52B4(float arg8, float arg9, float argA) +{ + float var_f31; + + if (arg8 > 180.0f) { + arg8 -= 360.0f; + } + else if (arg8 <= -180.0f) { + arg8 += 360.0f; + } + if (arg9 > 180.0f) { + arg9 -= 360.0f; + } + else if (arg9 <= -180.0f) { + arg9 += 360.0f; + } + var_f31 = arg8 - arg9; + if (var_f31 > 180.0f) { + var_f31 -= 360.0f; + } + else if (var_f31 <= -180.0f) { + var_f31 += 360.0f; + } + arg8 = arg9 + (var_f31 * argA); + if (arg8 > 180.0f) { + return arg8 - 360.0f; + } + if (arg8 <= -180.0f) { + arg8 += 360.0f; + } + return arg8; +} + +void fn_1_541C(Mtx arg0, float arg8, float arg9, float argA) +{ + Mtx sp38; + Mtx sp8; + + if (argA != 0.0f) { + PSMTXRotRad(arg0, 0x5A, MTXDegToRad(argA)); + } + else { + PSMTXIdentity(arg0); + } + if (arg8 != 0.0f) { + PSMTXRotRad(sp38, 0x58, MTXDegToRad(arg8)); + PSMTXConcat(sp38, arg0, arg0); + } + if (arg9 != 0.0f) { + PSMTXRotRad(sp8, 0x59, MTXDegToRad(arg9)); + PSMTXConcat(sp8, arg0, arg0); + } +} + +void fn_1_553C(Mtx arg0, Vec *arg1) +{ + float var_f29; + float var_f28; + + arg1->x = atan2d(arg0[1][2], arg0[2][2]); + if (arg1->x < 0.0f) { + arg1->x += 360.0f; + } + arg1->z = atan2d(arg0[0][1], arg0[0][0]); + if (arg1->z < 0.0f) { + arg1->z += 360.0f; + } + var_f29 = -arg0[0][2]; + var_f28 = sqrtf((1.0 - (var_f29 * var_f29)) < 0.0 ? (-(1.0 - (var_f29 * var_f29))) : (1.0 - (var_f29 * var_f29))); + if ((arg1->x > 90.0f) && (arg1->x < 270.0f) && (arg1->z > 90.0f) && (arg1->z < 270.0f)) { + arg1->x = fmod(180.0f + arg1->x, 360.0); + arg1->z = fmod(180.0f + arg1->z, 360.0); + var_f28 = -var_f28; + } + arg1->y = atan2d(var_f29, var_f28); + if (arg1->y < 0.0f) { + arg1->y += 360.0f; + } +} + +void fn_1_58D8(s32 arg0) +{ + M433DllMapWork *work = lbl_1_bss_7A8->data; + work->unk_04 = arg0; +} diff --git a/src/REL/mstory2Dll/main.c b/src/REL/mstory2Dll/main.c index 73dcc832..c8277e06 100644 --- a/src/REL/mstory2Dll/main.c +++ b/src/REL/mstory2Dll/main.c @@ -1236,7 +1236,3 @@ void fn_1_7384(int modelId, int charNo, float ofs, s32 maxTime, BOOL flag) } } } - -#if VERSION_PAL -// lbl_1_data_399 -#endif