diff --git a/asm/non_matchings/game/func_8006DCF8.s b/asm/non_matchings/game/func_8006DCF8.s index 0a3b77f5..9d3559b7 100644 --- a/asm/non_matchings/game/func_8006DCF8.s +++ b/asm/non_matchings/game/func_8006DCF8.s @@ -75,7 +75,7 @@ glabel func_8006DCF8 /* 06E9FC 8006DDFC 3C088012 */ lui $t0, %hi(D_801234F4) # $t0, 0x8012 /* 06EA00 8006DE00 250834F4 */ addiu $t0, %lo(D_801234F4) # addiu $t0, $t0, 0x34f4 /* 06EA04 8006DE04 31C4007F */ andi $a0, $t6, 0x7f -/* 06EA08 8006DE08 0C01AC2B */ jal func_8006B0AC +/* 06EA08 8006DE08 0C01AC2B */ jal get_map_default_vehicle /* 06EA0C 8006DE0C AD040000 */ sw $a0, ($t0) /* 06EA10 8006DE10 3C098012 */ lui $t1, %hi(D_80123504) # $t1, 0x8012 /* 06EA14 8006DE14 3C0A8012 */ lui $t2, %hi(gLevelDefaultVehicleID) # $t2, 0x8012 @@ -247,7 +247,7 @@ glabel L8006E054 /* 06EC8C 8006E08C 250834F4 */ addiu $t0, %lo(D_801234F4) # addiu $t0, $t0, 0x34f4 /* 06EC90 8006E090 AD040000 */ sw $a0, ($t0) /* 06EC94 8006E094 AD2E0000 */ sw $t6, ($t1) -/* 06EC98 8006E098 0C01AC2B */ jal func_8006B0AC +/* 06EC98 8006E098 0C01AC2B */ jal get_map_default_vehicle /* 06EC9C 8006E09C AD790000 */ sw $t9, ($t3) /* 06ECA0 8006E0A0 3C038012 */ lui $v1, %hi(D_80123500) # $v1, 0x8012 /* 06ECA4 8006E0A4 3C088012 */ lui $t0, %hi(D_801234F4) # $t0, 0x8012 diff --git a/asm/non_matchings/menu/func_800904E8.s b/asm/non_matchings/menu/func_800904E8.s index a24a1650..40f4581e 100644 --- a/asm/non_matchings/menu/func_800904E8.s +++ b/asm/non_matchings/menu/func_800904E8.s @@ -198,7 +198,7 @@ glabel func_800904E8 /* 0913C4 800907C4 8D6B69CC */ lw $t3, %lo(D_801269CC)($t3) /* 0913C8 800907C8 AC3969F4 */ sw $t9, %lo(gSelectedTrackX)($at) /* 0913CC 800907CC 3C018012 */ lui $at, %hi(gSelectedTrackY) # $at, 0x8012 -/* 0913D0 800907D0 0C01AC2B */ jal func_8006B0AC +/* 0913D0 800907D0 0C01AC2B */ jal get_map_default_vehicle /* 0913D4 800907D4 AC2B69F8 */ sw $t3, %lo(gSelectedTrackY)($at) /* 0913D8 800907D8 0C01B6C5 */ jal set_level_default_vehicle /* 0913DC 800907DC 00402025 */ move $a0, $v0 diff --git a/asm/non_matchings/menu/func_80092188.s b/asm/non_matchings/menu/func_80092188.s index 831c59b2..3ed5805d 100644 --- a/asm/non_matchings/menu/func_80092188.s +++ b/asm/non_matchings/menu/func_80092188.s @@ -180,7 +180,7 @@ glabel func_80092188 /* 093010 80092410 172001F0 */ bnez $t9, .L80092BD4 /* 093014 80092414 8FBF001C */ lw $ra, 0x1c($sp) /* 093018 80092418 8C84F4C4 */ lw $a0, %lo(gTrackIdForPreview)($a0) -/* 09301C 8009241C 0C01AC3E */ jal func_8006B0F8 +/* 09301C 8009241C 0C01AC3E */ jal get_map_available_vehicles /* 093020 80092420 00000000 */ nop /* 093024 80092424 3C0C8012 */ lui $t4, %hi(D_801263E0) # $t4, 0x8012 /* 093028 80092428 258C63E0 */ addiu $t4, %lo(D_801263E0) # addiu $t4, $t4, 0x63e0 diff --git a/asm/non_matchings/menu/func_80092E94.s b/asm/non_matchings/menu/func_80092E94.s index 9eccc62e..7cb229c1 100644 --- a/asm/non_matchings/menu/func_80092E94.s +++ b/asm/non_matchings/menu/func_80092E94.s @@ -47,7 +47,7 @@ glabel func_80092E94 /* 093B44 80092F44 102001A9 */ beqz $at, .L800935EC /* 093B48 80092F48 8FBF0034 */ lw $ra, 0x34($sp) /* 093B4C 80092F4C 8FA40058 */ lw $a0, 0x58($sp) -/* 093B50 80092F50 0C01AC3E */ jal func_8006B0F8 +/* 093B50 80092F50 0C01AC3E */ jal get_map_available_vehicles /* 093B54 80092F54 00000000 */ nop /* 093B58 80092F58 8FA40058 */ lw $a0, 0x58($sp) /* 093B5C 80092F5C 0C01AF77 */ jal get_level_name @@ -299,7 +299,7 @@ glabel func_80092E94 /* 093F24 80093324 29C10002 */ slti $at, $t6, 2 /* 093F28 80093328 10200008 */ beqz $at, .L8009334C /* 093F2C 8009332C 240200FF */ li $v0, 255 -/* 093F30 80093330 0C01AC2B */ jal func_8006B0AC +/* 093F30 80093330 0C01AC2B */ jal get_map_default_vehicle /* 093F34 80093334 00000000 */ nop /* 093F38 80093338 10500004 */ beq $v0, $s0, .L8009334C /* 093F3C 8009333C 240200FF */ li $v0, 255 diff --git a/asm/non_matchings/menu/menu_trophy_race_round_init.s b/asm/non_matchings/menu/menu_trophy_race_round_init.s index 9c0516bd..be73be21 100644 --- a/asm/non_matchings/menu/menu_trophy_race_round_init.s +++ b/asm/non_matchings/menu/menu_trophy_race_round_init.s @@ -53,7 +53,7 @@ glabel menu_trophy_race_round_init /* 098F28 80098328 3C128012 */ lui $s2, %hi(gPlayerSelectVehicle) # $s2, 0x8012 /* 098F2C 8009832C 265269C0 */ addiu $s2, %lo(gPlayerSelectVehicle) # addiu $s2, $s2, 0x69c0 .L80098330: -/* 098F30 80098330 0C01AC2B */ jal func_8006B0AC +/* 098F30 80098330 0C01AC2B */ jal get_map_default_vehicle /* 098F34 80098334 02002025 */ move $a0, $s0 /* 098F38 80098338 8E6A0000 */ lw $t2, ($s3) /* 098F3C 8009833C 26310001 */ addiu $s1, $s1, 1 @@ -62,7 +62,7 @@ glabel menu_trophy_race_round_init /* 098F48 80098348 1420FFF9 */ bnez $at, .L80098330 /* 098F4C 8009834C A242FFFF */ sb $v0, -1($s2) .L80098350: -/* 098F50 80098350 0C01AC2B */ jal func_8006B0AC +/* 098F50 80098350 0C01AC2B */ jal get_map_default_vehicle /* 098F54 80098354 02002025 */ move $a0, $s0 /* 098F58 80098358 0C01B6C5 */ jal set_level_default_vehicle /* 098F5C 8009835C 00402025 */ move $a0, $v0 diff --git a/asm/non_matchings/menu/render_track_select_setup_ui.s b/asm/non_matchings/menu/render_track_select_setup_ui.s index acff7622..34c03a1b 100644 --- a/asm/non_matchings/menu/render_track_select_setup_ui.s +++ b/asm/non_matchings/menu/render_track_select_setup_ui.s @@ -130,7 +130,7 @@ glabel render_track_select_setup_ui /* 091CF8 800910F8 AFC00000 */ sw $zero, ($fp) .L800910FC: /* 091CFC 800910FC 8C84F4C4 */ lw $a0, %lo(gTrackIdForPreview)($a0) -/* 091D00 80091100 0C01AC3E */ jal func_8006B0F8 +/* 091D00 80091100 0C01AC3E */ jal get_map_available_vehicles /* 091D04 80091104 00000000 */ nop /* 091D08 80091108 3C04800E */ lui $a0, %hi(gTrackIdForPreview) # $a0, 0x800e /* 091D0C 8009110C 8C84F4C4 */ lw $a0, %lo(gTrackIdForPreview)($a0) diff --git a/asm/non_matchings/objects/func_8001B2F0.s b/asm/non_matchings/objects/func_8001B2F0.s index 27a68e56..0fbdc915 100644 --- a/asm/non_matchings/objects/func_8001B2F0.s +++ b/asm/non_matchings/objects/func_8001B2F0.s @@ -1,7 +1,7 @@ glabel func_8001B2F0 /* 01BEF0 8001B2F0 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 01BEF4 8001B2F4 AFBF0014 */ sw $ra, 0x14($sp) -/* 01BEF8 8001B2F8 0C01AC2B */ jal func_8006B0AC +/* 01BEF8 8001B2F8 0C01AC2B */ jal get_map_default_vehicle /* 01BEFC 8001B2FC AFA40028 */ sw $a0, 0x28($sp) /* 01BF00 8001B300 3C058012 */ lui $a1, %hi(D_8011AE84) # $a1, 0x8012 /* 01BF04 8001B304 24A5AE84 */ addiu $a1, %lo(D_8011AE84) # addiu $a1, $a1, -0x517c diff --git a/asm/non_matchings/objects/func_8001B4FC.s b/asm/non_matchings/objects/func_8001B4FC.s index 59e3f811..e0b2591d 100644 --- a/asm/non_matchings/objects/func_8001B4FC.s +++ b/asm/non_matchings/objects/func_8001B4FC.s @@ -9,7 +9,7 @@ glabel func_8001B4FC /* 01C118 8001B518 0C01BAA4 */ jal get_settings /* 01C11C 8001B51C A020C734 */ sb $zero, %lo(D_800DC734)($at) /* 01C120 8001B520 AFA20020 */ sw $v0, 0x20($sp) -/* 01C124 8001B524 0C01AC2B */ jal func_8006B0AC +/* 01C124 8001B524 0C01AC2B */ jal get_map_default_vehicle /* 01C128 8001B528 02002025 */ move $a0, $s0 /* 01C12C 8001B52C 3C0E8012 */ lui $t6, %hi(D_8011AE82) # $t6, 0x8012 /* 01C130 8001B530 85CEAE82 */ lh $t6, %lo(D_8011AE82)($t6) diff --git a/asm/non_matchings/objects/func_80022948.s b/asm/non_matchings/objects/func_80022948.s index a7fdafbc..69f8d7aa 100644 --- a/asm/non_matchings/objects/func_80022948.s +++ b/asm/non_matchings/objects/func_80022948.s @@ -22,7 +22,7 @@ glabel func_80022948 /* 023598 80022998 AC29AEFC */ sw $t1, %lo(D_8011AEFC)($at) /* 02359C 8002299C A04A0052 */ sb $t2, 0x52($v0) /* 0235A0 800229A0 A44B0054 */ sh $t3, 0x54($v0) -/* 0235A4 800229A4 0C006EB2 */ jal get_object_struct +/* 0235A4 800229A4 0C006EB2 */ jal get_racer_object /* 0235A8 800229A8 00002025 */ move $a0, $zero /* 0235AC 800229AC 8C500064 */ lw $s0, 0x64($v0) /* 0235B0 800229B0 3C018012 */ lui $at, %hi(D_8011AEF6) # $at, 0x8012 diff --git a/asm/non_matchings/racer/func_800576E0.s b/asm/non_matchings/racer/drop_bananas.s similarity index 99% rename from asm/non_matchings/racer/func_800576E0.s rename to asm/non_matchings/racer/drop_bananas.s index dda42a5b..4424eeb7 100644 --- a/asm/non_matchings/racer/func_800576E0.s +++ b/asm/non_matchings/racer/drop_bananas.s @@ -1,4 +1,4 @@ -glabel func_800576E0 +glabel drop_bananas /* 0582E0 800576E0 27BDFF70 */ addiu $sp, $sp, -0x90 /* 0582E4 800576E4 AFBF005C */ sw $ra, 0x5c($sp) /* 0582E8 800576E8 AFB20048 */ sw $s2, 0x48($sp) diff --git a/asm/non_matchings/racer/func_8004447C.s b/asm/non_matchings/racer/func_8004447C.s index b5fdc63e..c2323c13 100644 --- a/asm/non_matchings/racer/func_8004447C.s +++ b/asm/non_matchings/racer/func_8004447C.s @@ -296,7 +296,7 @@ glabel L800446AC /* 045498 80044898 A7A70048 */ sh $a3, 0x48($sp) /* 04549C 8004489C A7A8004A */ sh $t0, 0x4a($sp) /* 0454A0 800448A0 A7A90046 */ sh $t1, 0x46($sp) -/* 0454A4 800448A4 0C006EB2 */ jal get_object_struct +/* 0454A4 800448A4 0C006EB2 */ jal get_racer_object /* 0454A8 800448A8 A7AA004C */ sh $t2, 0x4c($sp) /* 0454AC 800448AC 87A90046 */ lh $t1, 0x46($sp) /* 0454B0 800448B0 87A50052 */ lh $a1, 0x52($sp) @@ -356,7 +356,7 @@ glabel L800446AC /* 045580 80044980 87A8004A */ lh $t0, 0x4a($sp) /* 045584 80044984 1440000A */ bnez $v0, .L800449B0 /* 045588 80044988 00C02025 */ move $a0, $a2 -/* 04558C 8004498C 0C006EB2 */ jal get_object_struct +/* 04558C 8004498C 0C006EB2 */ jal get_racer_object /* 045590 80044990 A7A8004A */ sh $t0, 0x4a($sp) /* 045594 80044994 8C430064 */ lw $v1, 0x64($v0) /* 045598 80044998 87A8004A */ lh $t0, 0x4a($sp) @@ -654,7 +654,7 @@ glabel L80044ADC /* 0459B4 80044DB4 AFA20058 */ sw $v0, 0x58($sp) .L80044DB8: /* 0459B8 80044DB8 820401CF */ lb $a0, 0x1cf($s0) -/* 0459BC 80044DBC 0C006EB2 */ jal get_object_struct +/* 0459BC 80044DBC 0C006EB2 */ jal get_racer_object /* 0459C0 80044DC0 00000000 */ nop /* 0459C4 80044DC4 8C430064 */ lw $v1, 0x64($v0) /* 0459C8 80044DC8 2401FFFF */ li $at, -1 @@ -795,7 +795,7 @@ glabel L80044F54 /* 045BA8 80044FA8 00A02025 */ move $a0, $a1 /* 045BAC 80044FAC 10AC0054 */ beq $a1, $t4, .L80045100 /* 045BB0 80044FB0 00000000 */ nop -/* 045BB4 80044FB4 0C006EB2 */ jal get_object_struct +/* 045BB4 80044FB4 0C006EB2 */ jal get_racer_object /* 045BB8 80044FB8 A7A50052 */ sh $a1, 0x52($sp) /* 045BBC 80044FBC 8C430064 */ lw $v1, 0x64($v0) /* 045BC0 80044FC0 87A50052 */ lh $a1, 0x52($sp) diff --git a/asm/non_matchings/racer/func_800452A0.s b/asm/non_matchings/racer/func_800452A0.s index 40e60118..1689db3e 100644 --- a/asm/non_matchings/racer/func_800452A0.s +++ b/asm/non_matchings/racer/func_800452A0.s @@ -434,7 +434,7 @@ glabel L800456DC /* 046468 80045868 2401FFFF */ li $at, -1 /* 04646C 8004586C 12210004 */ beq $s1, $at, .L80045880 /* 046470 80045870 00000000 */ nop -/* 046474 80045874 0C006EB2 */ jal get_object_struct +/* 046474 80045874 0C006EB2 */ jal get_racer_object /* 046478 80045878 02202025 */ move $a0, $s1 /* 04647C 8004587C 0040F025 */ move $fp, $v0 .L80045880: diff --git a/asm/non_matchings/save_data/func_80073588.s b/asm/non_matchings/save_data/func_80073588.s index 6a835110..f4570049 100644 --- a/asm/non_matchings/save_data/func_80073588.s +++ b/asm/non_matchings/save_data/func_80073588.s @@ -52,7 +52,7 @@ glabel func_80073588 /* 074248 80073648 02202025 */ move $a0, $s1 /* 07424C 8007364C 14400031 */ bnez $v0, .L80073714 /* 074250 80073650 8FAC0040 */ lw $t4, 0x40($sp) -/* 074254 80073654 0C01AC3E */ jal func_8006B0F8 +/* 074254 80073654 0C01AC3E */ jal get_map_available_vehicles /* 074258 80073658 02202025 */ move $a0, $s1 /* 07425C 8007365C 00029400 */ sll $s2, $v0, 0x10 /* 074260 80073660 00127403 */ sra $t6, $s2, 0x10 @@ -149,7 +149,7 @@ glabel func_80073588 /* 0743AC 800737AC 02202025 */ move $a0, $s1 /* 0743B0 800737B0 14400031 */ bnez $v0, .L80073878 /* 0743B4 800737B4 8FAB0040 */ lw $t3, 0x40($sp) -/* 0743B8 800737B8 0C01AC3E */ jal func_8006B0F8 +/* 0743B8 800737B8 0C01AC3E */ jal get_map_available_vehicles /* 0743BC 800737BC 02202025 */ move $a0, $s1 /* 0743C0 800737C0 00029400 */ sll $s2, $v0, 0x10 /* 0743C4 800737C4 00126C03 */ sra $t5, $s2, 0x10 diff --git a/asm/non_matchings/save_data/func_800738A4.s b/asm/non_matchings/save_data/func_800738A4.s index 4fc58b74..35d9b858 100644 --- a/asm/non_matchings/save_data/func_800738A4.s +++ b/asm/non_matchings/save_data/func_800738A4.s @@ -31,7 +31,7 @@ glabel func_800738A4 /* 074514 80073914 02202025 */ move $a0, $s1 /* 074518 80073918 1440003B */ bnez $v0, .L80073A08 /* 07451C 8007391C 8FAF0048 */ lw $t7, 0x48($sp) -/* 074520 80073920 0C01AC3E */ jal func_8006B0F8 +/* 074520 80073920 0C01AC3E */ jal get_map_available_vehicles /* 074524 80073924 02202025 */ move $a0, $s1 /* 074528 80073928 00029C00 */ sll $s3, $v0, 0x10 /* 07452C 8007392C 0013CC03 */ sra $t9, $s3, 0x10 @@ -144,7 +144,7 @@ glabel func_800738A4 /* 0746B8 80073AB8 02202025 */ move $a0, $s1 /* 0746BC 80073ABC 14400033 */ bnez $v0, .L80073B8C /* 0746C0 80073AC0 8FAB0048 */ lw $t3, 0x48($sp) -/* 0746C4 80073AC4 0C01AC3E */ jal func_8006B0F8 +/* 0746C4 80073AC4 0C01AC3E */ jal get_map_available_vehicles /* 0746C8 80073AC8 02202025 */ move $a0, $s1 /* 0746CC 80073ACC 00029C00 */ sll $s3, $v0, 0x10 /* 0746D0 80073AD0 00136C03 */ sra $t5, $s3, 0x10 diff --git a/asm/non_matchings/unknown_032760/obj_loop_bridge_whaleramp.s b/asm/non_matchings/unknown_032760/obj_loop_bridge_whaleramp.s index d41b84b6..b67a0073 100644 --- a/asm/non_matchings/unknown_032760/obj_loop_bridge_whaleramp.s +++ b/asm/non_matchings/unknown_032760/obj_loop_bridge_whaleramp.s @@ -211,7 +211,7 @@ glabel obj_loop_bridge_whaleramp .L8003CD6C: /* 03D96C 8003CD6C AE090078 */ sw $t1, 0x78($s0) /* 03D970 8003CD70 AFA8005C */ sw $t0, 0x5c($sp) -/* 03D974 8003CD74 0C006EB2 */ jal get_object_struct +/* 03D974 8003CD74 0C006EB2 */ jal get_racer_object /* 03D978 8003CD78 00002025 */ move $a0, $zero /* 03D97C 8003CD7C 8FA8005C */ lw $t0, 0x5c($sp) /* 03D980 8003CD80 10400013 */ beqz $v0, .L8003CDD0 diff --git a/asm/non_matchings/unknown_032760/obj_loop_collectegg.s b/asm/non_matchings/unknown_032760/obj_loop_collectegg.s index 22a2eb0b..d9f6be4c 100644 --- a/asm/non_matchings/unknown_032760/obj_loop_collectegg.s +++ b/asm/non_matchings/unknown_032760/obj_loop_collectegg.s @@ -185,7 +185,7 @@ glabel obj_loop_collectegg /* 0360F4 800354F4 A22F000A */ sb $t7, 0xa($s1) /* 0360F8 800354F8 24180003 */ li $t8, 3 /* 0360FC 800354FC 8224000A */ lb $a0, 0xa($s1) -/* 036100 80035500 0C006EB2 */ jal get_object_struct +/* 036100 80035500 0C006EB2 */ jal get_racer_object /* 036104 80035504 A238000B */ sb $t8, 0xb($s1) /* 036108 80035508 44800000 */ mtc1 $zero, $f0 /* 03610C 8003550C 10400007 */ beqz $v0, .L8003552C @@ -205,7 +205,7 @@ glabel obj_loop_collectegg /* 03613C 8003553C 862A0008 */ lh $t2, 8($s1) /* 036140 80035540 8224000A */ lb $a0, 0xa($s1) /* 036144 80035544 01455823 */ subu $t3, $t2, $a1 -/* 036148 80035548 0C006EB2 */ jal get_object_struct +/* 036148 80035548 0C006EB2 */ jal get_racer_object /* 03614C 8003554C A62B0008 */ sh $t3, 8($s1) /* 036150 80035550 10400004 */ beqz $v0, .L80035564 /* 036154 80035554 00403825 */ move $a3, $v0 @@ -254,7 +254,7 @@ glabel obj_loop_collectegg /* 0361F0 800355F0 A0C801CF */ sb $t0, 0x1cf($a2) .L800355F4: /* 0361F4 800355F4 8224000A */ lb $a0, 0xa($s1) -/* 0361F8 800355F8 0C006EB2 */ jal get_object_struct +/* 0361F8 800355F8 0C006EB2 */ jal get_racer_object /* 0361FC 800355FC 00000000 */ nop /* 036200 80035600 10400009 */ beqz $v0, .L80035628 /* 036204 80035604 240B0080 */ li $t3, 128 diff --git a/asm/non_matchings/unknown_032760/obj_loop_parkwarden.s b/asm/non_matchings/unknown_032760/obj_loop_parkwarden.s index 607636b6..600f71ee 100644 --- a/asm/non_matchings/unknown_032760/obj_loop_parkwarden.s +++ b/asm/non_matchings/unknown_032760/obj_loop_parkwarden.s @@ -68,7 +68,7 @@ glabel obj_loop_parkwarden /* 039FDC 800393DC 00002025 */ move $a0, $zero /* 039FE0 800393E0 E7A0009C */ swc1 $f0, 0x9c($sp) /* 039FE4 800393E4 E600001C */ swc1 $f0, 0x1c($s0) -/* 039FE8 800393E8 0C006EB2 */ jal get_object_struct +/* 039FE8 800393E8 0C006EB2 */ jal get_racer_object /* 039FEC 800393EC E6000024 */ swc1 $f0, 0x24($s0) /* 039FF0 800393F0 00401825 */ move $v1, $v0 /* 039FF4 800393F4 10400019 */ beqz $v0, .L8003945C diff --git a/asm/non_matchings/unknown_032760/obj_loop_stopwatchman.s b/asm/non_matchings/unknown_032760/obj_loop_stopwatchman.s index 587d6fb6..c4376f49 100644 --- a/asm/non_matchings/unknown_032760/obj_loop_stopwatchman.s +++ b/asm/non_matchings/unknown_032760/obj_loop_stopwatchman.s @@ -55,7 +55,7 @@ glabel obj_loop_stopwatchman /* 036E80 80036280 E7A00070 */ swc1 $f0, 0x70($sp) /* 036E84 80036284 00002025 */ move $a0, $zero /* 036E88 80036288 E600001C */ swc1 $f0, 0x1c($s0) -/* 036E8C 8003628C 0C006EB2 */ jal get_object_struct +/* 036E8C 8003628C 0C006EB2 */ jal get_racer_object /* 036E90 80036290 E6000024 */ swc1 $f0, 0x24($s0) /* 036E94 80036294 00402825 */ move $a1, $v0 /* 036E98 80036298 10400042 */ beqz $v0, .L800363A4 diff --git a/asm/non_matchings/unknown_032760/obj_loop_treasuresucker.s b/asm/non_matchings/unknown_032760/obj_loop_treasuresucker.s index 3a59e628..d5831c68 100644 --- a/asm/non_matchings/unknown_032760/obj_loop_treasuresucker.s +++ b/asm/non_matchings/unknown_032760/obj_loop_treasuresucker.s @@ -9,7 +9,7 @@ glabel obj_loop_treasuresucker /* 03DC60 8003D060 AFA5004C */ sw $a1, 0x4c($sp) /* 03DC64 8003D064 00803025 */ move $a2, $a0 /* 03DC68 8003D068 8C840078 */ lw $a0, 0x78($a0) -/* 03DC6C 8003D06C 0C006EB2 */ jal get_object_struct +/* 03DC6C 8003D06C 0C006EB2 */ jal get_racer_object /* 03DC70 8003D070 AFA60048 */ sw $a2, 0x48($sp) /* 03DC74 8003D074 8FA60048 */ lw $a2, 0x48($sp) /* 03DC78 8003D078 10400088 */ beqz $v0, .L8003D29C diff --git a/asm/non_matchings/unknown_032760/obj_loop_trophycab.s b/asm/non_matchings/unknown_032760/obj_loop_trophycab.s index 4fb5dd74..d1ab0d92 100644 --- a/asm/non_matchings/unknown_032760/obj_loop_trophycab.s +++ b/asm/non_matchings/unknown_032760/obj_loop_trophycab.s @@ -70,7 +70,7 @@ glabel obj_loop_trophycab /* 035B8C 80034F8C 8E0D0054 */ lw $t5, 0x54($s0) /* 035B90 80034F90 00002025 */ move $a0, $zero /* 035B94 80034F94 E5A60028 */ swc1 $f6, 0x28($t5) -/* 035B98 80034F98 0C006EB2 */ jal get_object_struct +/* 035B98 80034F98 0C006EB2 */ jal get_racer_object /* 035B9C 80034F9C AFA30054 */ sw $v1, 0x54($sp) /* 035BA0 80034FA0 8FA30054 */ lw $v1, 0x54($sp) /* 035BA4 80034FA4 1040009E */ beqz $v0, .L80035220 diff --git a/asm/non_matchings/unknown_05CEF0/func_8005C364.s b/asm/non_matchings/unknown_05CEF0/func_8005C364.s index 03a931f8..726ebfed 100644 --- a/asm/non_matchings/unknown_05CEF0/func_8005C364.s +++ b/asm/non_matchings/unknown_05CEF0/func_8005C364.s @@ -348,7 +348,7 @@ glabel func_8005C364 /* 05D458 8005C858 10000001 */ b .L8005C860 /* 05D45C 8005C85C 24052500 */ li $a1, 9472 .L8005C860: -/* 05D460 8005C860 0C006EB2 */ jal get_object_struct +/* 05D460 8005C860 0C006EB2 */ jal get_racer_object /* 05D464 8005C864 AFA50038 */ sw $a1, 0x38($sp) /* 05D468 8005C868 AFA20030 */ sw $v0, 0x30($sp) /* 05D46C 8005C86C C626000C */ lwc1 $f6, 0xc($s1) diff --git a/asm/non_matchings/unknown_05DCD0/func_8005D0D0.s b/asm/non_matchings/unknown_05DCD0/func_8005D0D0.s index cf901d65..ccd595a1 100644 --- a/asm/non_matchings/unknown_05DCD0/func_8005D0D0.s +++ b/asm/non_matchings/unknown_05DCD0/func_8005D0D0.s @@ -397,7 +397,7 @@ glabel func_8005D0D0 /* 05E274 8005D674 02002825 */ move $a1, $s0 /* 05E278 8005D678 0C017412 */ jal func_8005D048 /* 05E27C 8005D67C 24060028 */ li $a2, 40 -/* 05E280 8005D680 0C006EB2 */ jal get_object_struct +/* 05E280 8005D680 0C006EB2 */ jal get_racer_object /* 05E284 8005D684 00002025 */ move $a0, $zero /* 05E288 8005D688 AFA20034 */ sw $v0, 0x34($sp) /* 05E28C 8005D68C C626000C */ lwc1 $f6, 0xc($s1) diff --git a/asm/non_matchings/unknown_05DCD0/func_8005D820.s b/asm/non_matchings/unknown_05DCD0/func_8005D820.s index 5e5a5e08..3af34fb4 100644 --- a/asm/non_matchings/unknown_05DCD0/func_8005D820.s +++ b/asm/non_matchings/unknown_05DCD0/func_8005D820.s @@ -599,7 +599,7 @@ glabel L8005DCE8 /* 05EC70 8005E070 02002825 */ move $a1, $s0 /* 05EC74 8005E074 0C017412 */ jal func_8005D048 /* 05EC78 8005E078 24060028 */ li $a2, 40 -/* 05EC7C 8005E07C 0C006EB2 */ jal get_object_struct +/* 05EC7C 8005E07C 0C006EB2 */ jal get_racer_object /* 05EC80 8005E080 00002025 */ move $a0, $zero /* 05EC84 8005E084 AFA20034 */ sw $v0, 0x34($sp) /* 05EC88 8005E088 C62A000C */ lwc1 $f10, 0xc($s1) diff --git a/asm/non_matchings/unknown_05F0C0/func_8005E4C0.s b/asm/non_matchings/unknown_05F0C0/func_8005E4C0.s index fe6fb819..33f46eb8 100644 --- a/asm/non_matchings/unknown_05F0C0/func_8005E4C0.s +++ b/asm/non_matchings/unknown_05F0C0/func_8005E4C0.s @@ -291,7 +291,7 @@ glabel func_8005E4C0 /* 05F4EC 8005E8EC 10000001 */ b .L8005E8F4 /* 05F4F0 8005E8F0 24052500 */ li $a1, 9472 .L8005E8F4: -/* 05F4F4 8005E8F4 0C006EB2 */ jal get_object_struct +/* 05F4F4 8005E8F4 0C006EB2 */ jal get_racer_object /* 05F4F8 8005E8F8 AFA50038 */ sw $a1, 0x38($sp) /* 05F4FC 8005E8FC AFA20030 */ sw $v0, 0x30($sp) /* 05F500 8005E900 C632000C */ lwc1 $f18, 0xc($s1) diff --git a/asm/non_matchings/unknown_05F690/func_8005EA90.s b/asm/non_matchings/unknown_05F690/func_8005EA90.s index 6a09ced2..fcbc435f 100644 --- a/asm/non_matchings/unknown_05F690/func_8005EA90.s +++ b/asm/non_matchings/unknown_05F690/func_8005EA90.s @@ -571,7 +571,7 @@ glabel L8005EF98 /* 05FE80 8005F280 02002825 */ move $a1, $s0 /* 05FE84 8005F284 0C017412 */ jal func_8005D048 /* 05FE88 8005F288 24060028 */ li $a2, 40 -/* 05FE8C 8005F28C 0C006EB2 */ jal get_object_struct +/* 05FE8C 8005F28C 0C006EB2 */ jal get_racer_object /* 05FE90 8005F290 00002025 */ move $a0, $zero /* 05FE94 8005F294 8C43004C */ lw $v1, 0x4c($v0) /* 05FE98 8005F298 8C500064 */ lw $s0, 0x64($v0) diff --git a/asm/non_matchings/unknown_05FF10/func_8005F310.s b/asm/non_matchings/unknown_05FF10/func_8005F310.s index de86a943..acd530f9 100644 --- a/asm/non_matchings/unknown_05FF10/func_8005F310.s +++ b/asm/non_matchings/unknown_05FF10/func_8005F310.s @@ -326,7 +326,7 @@ glabel func_8005F310 /* 0603C4 8005F7C4 0C002DD4 */ jal func_8000B750 /* 0603C8 8005F7C8 24070001 */ li $a3, 1 .L8005F7CC: -/* 0603CC 8005F7CC 0C006EB2 */ jal get_object_struct +/* 0603CC 8005F7CC 0C006EB2 */ jal get_racer_object /* 0603D0 8005F7D0 00002025 */ move $a0, $zero /* 0603D4 8005F7D4 8C43004C */ lw $v1, 0x4c($v0) /* 0603D8 8005F7D8 8C470064 */ lw $a3, 0x64($v0) diff --git a/src/game.c b/src/game.c index f15be93a..d996d1bf 100644 --- a/src/game.c +++ b/src/game.c @@ -298,14 +298,14 @@ s32 func_8006B054(s8 arg0) { return out; } -Vehicle func_8006B0AC(MapId mapId) { +Vehicle get_map_default_vehicle(MapId mapId) { if (mapId > 0 && mapId < gNumberOfLevelHeaders) { return D_8012117C[mapId].unk2 & 0xF; } return VEHICLE_CAR; } -s32 func_8006B0F8(MapId mapId) { +s32 get_map_available_vehicles(MapId mapId) { if (mapId > 0 && mapId < gNumberOfLevelHeaders) { s32 temp = D_8012117C[mapId].unk2; if (temp != 0) { @@ -1378,7 +1378,7 @@ void ingame_logic_loop(s32 updateRate) { D_801234F4 = D_80121250[0]; D_80123504 = D_80121250[15]; D_80123508 = D_80121250[D_80121250[1] + 8]; - gLevelDefaultVehicleID = func_8006B0AC(D_801234F4); + gLevelDefaultVehicleID = get_map_default_vehicle(D_801234F4); if (D_80123508 < 0) { D_80123508 = 0x64; } @@ -1561,7 +1561,7 @@ void func_8006DCF8(s32 updateRate) { gDPFullSync(gCurrDisplayList++); gSPEndDisplayList(gCurrDisplayList++); D_801234F4 = menuLoopResult & 0x7F; - gLevelDefaultVehicleID = func_8006B0AC(D_801234F4); + gLevelDefaultVehicleID = get_map_default_vehicle(D_801234F4); D_80123504 = 0; D_80123508 = 0x64; sRenderContext = DRAW_GAME; @@ -1613,7 +1613,7 @@ void func_8006DCF8(s32 updateRate) { D_801234F4 = D_80121250[0]; D_80123504 = D_80121250[15]; D_80123508 = D_80121250[D_80121250[1] + 8]; - gLevelDefaultVehicleID = func_8006B0AC(D_801234F4); + gLevelDefaultVehicleID = get_map_default_vehicle(D_801234F4); load_level_2(D_801234F4, D_80123500, D_80123504, gLevelDefaultVehicleID); break; default: diff --git a/src/game.h b/src/game.h index b7ff3e25..d5357f0f 100644 --- a/src/game.h +++ b/src/game.h @@ -84,8 +84,9 @@ void func_80070B04(s32 videoLastFrameBuffer, s32 VideoCurrFrameBuffer, s32 size) s16 func_8006ABB4(s32 arg0); s32 func_8006B018(s8 arg0); s32 func_8006B054(s8 arg0); -Vehicle func_8006B0AC(MapId mapId); -s32 func_8006B0F8(MapId mapId); +Vehicle get_map_default_vehicle(MapId mapId); +// Returns bitfield with (1 << Vehicle) set for every available vehicle. +s32 get_map_available_vehicles(MapId mapId); s8 func_8006B14C(MapId mapId); s8 func_8006B190(MapId mapId); MapId get_hub_area_id(s32 worldId); diff --git a/src/menu.c b/src/menu.c index 32ab1571..55262058 100644 --- a/src/menu.c +++ b/src/menu.c @@ -5524,7 +5524,7 @@ void func_8008F00C(s32 arg0) { D_801269EC = gTrackSelectY; break; case 1: - vehicle = func_8006B0AC(gTrackIdForPreview); + vehicle = get_map_default_vehicle(gTrackIdForPreview); for (i = 0; i < gNumberOfActivePlayers; i++) { D_801269C4[i] = 0; gPlayerSelectVehicle[i] = vehicle; @@ -5731,7 +5731,7 @@ void render_track_select_setup_ui(s32 updateRate) { if (sMenuGuiOpacity < 0) { sMenuGuiOpacity = 0; } - sp7C = func_8006B0F8(gTrackIdForPreview); + sp7C = get_map_available_vehicles(gTrackIdForPreview); set_text_font(ASSET_FONTS_BIGFONT); set_text_colour(192, 192, 255, 0, sMenuGuiOpacity); set_text_background_colour(0, 0, 0, 0); @@ -6018,7 +6018,7 @@ void menu_5_init(void) { gOptionBlinkTimer = 0; gMenuDelay = 0; mapId = settings->unk4C->unk2; - gPlayerSelectVehicle[PLAYER_ONE] = func_8006B0AC(mapId); + gPlayerSelectVehicle[PLAYER_ONE] = get_map_default_vehicle(mapId); result = func_8006B14C(mapId); if ((result == 5) || (result == 8) || (!(result & 0x40) && (!(settings->courseFlagsPtr[mapId] & 2)))) { temp = D_800E0758[mapId]; @@ -6099,10 +6099,10 @@ s32 menu_5_loop(s32 updateRate) { gOptionBlinkTimer = (gOptionBlinkTimer + updateRate) & 0x3F; func_80092E94(updateRate, sp1C, sp20); if (sp1C < 2) { - gPlayerSelectVehicle[PLAYER_ONE] = func_8006B0AC(mapId); + gPlayerSelectVehicle[PLAYER_ONE] = get_map_default_vehicle(mapId); } vehicle = gPlayerSelectVehicle[PLAYER_ONE]; - sp30 = func_8006B0F8(mapId); + sp30 = get_map_available_vehicles(mapId); vehicle2 = vehicle; func_8008E4EC(); if (gMenuDelay == 0) { @@ -6947,10 +6947,10 @@ void menu_trophy_race_round_init(void) { } for (i = 0; i < gNumberOfActivePlayers; i++) { - gPlayerSelectVehicle[i] = func_8006B0AC(levelId); + gPlayerSelectVehicle[i] = get_map_default_vehicle(levelId); } - set_level_default_vehicle(func_8006B0AC(levelId)); + set_level_default_vehicle(get_map_default_vehicle(levelId)); load_level_for_menu(levelId, -1, 1); gMenuDelay = 0; diff --git a/src/object_functions.c b/src/object_functions.c index b68698f7..01c15f53 100644 --- a/src/object_functions.c +++ b/src/object_functions.c @@ -568,7 +568,7 @@ void obj_loop_trophycab(Object *obj, s32 speed) { ((Object_54_80034E9C *) obj->unk54)->unk2C = 0.612f; ((Object_54_80034E9C *) obj->unk54)->unk28 = 0.0f; - playerObj = get_object_struct(0); + playerObj = get_racer_object(0); if (playerObj) { xDiff = obj->segment.trans.x_position - playerObj->segment.trans.x_position; zDiff = playerObj->segment.trans.z_position - obj->segment.trans.z_position; @@ -710,7 +710,7 @@ void obj_loop_rocketsignpost(Object *obj, UNUSED s32 speed) { Object *playerObj; Object_4C *obj4C; - playerObj = get_object_struct(0); + playerObj = get_racer_object(0); if (playerObj != NULL) { obj4C = obj->unk4C; if (obj4C->unk13 < 0xC8) { @@ -829,7 +829,7 @@ void obj_loop_groundzipper(Object *obj, UNUSED s32 speed) { obj->segment.trans.unk6 &= 0xBFFF; obj->segment.trans.unk6 |= 0x1000; - get_object_struct(0); // Unused. I guess the developers forgot to remove this? + get_racer_object(0); // Unused. I guess the developers forgot to remove this? if ((s32) obj->unk4C->unk13 < obj->unk78) { racerObjs = get_racer_objects(&numObjects); for (i = 0; i < numObjects; i++) { @@ -875,7 +875,7 @@ void obj_loop_unknown58(Object *obj, s32 speed) { } set_ghost_position_and_rotation(obj); func_800AFC3C(obj, speed); - someOtherObj = get_object_struct(0); + someOtherObj = get_racer_object(0); someOtherObj64 = &someOtherObj->unk64->unkid58; obj60 = obj->unk60; if (obj60->unk0 == 1) { @@ -910,7 +910,7 @@ void obj_loop_characterflag(Object *obj, UNUSED s32 speed) { Object_Racer *someObj64; if (obj->unk7C.word < 0) { - someObj = get_object_struct(obj->unk78); + someObj = get_racer_object(obj->unk78); if (someObj != NULL) { obj64 = &obj->unk64->character_flag; someObj64 = &someObj->unk64->racer; @@ -1318,7 +1318,7 @@ void obj_loop_animcar(Object *obj, s32 speed) { temp_v0 = obj->unk78; someObj = NULL; if (temp_v0 != 0) { - someObj = get_object_struct(temp_v0 - 1); + someObj = get_racer_object(temp_v0 - 1); } obj->unk7C.word = func_8001F460(obj, speed, obj); obj->segment.trans.unk6 |= 0x4000; diff --git a/src/objects.c b/src/objects.c index 9d20f190..52df2fd9 100644 --- a/src/objects.c +++ b/src/objects.c @@ -1543,7 +1543,7 @@ Object **func_8001BAAC(s32 *numberOfObjects) { return D_8011AEE8; } -Object *get_object_struct(s32 indx) { +Object *get_racer_object(s32 indx) { if (gObjectCount == 0) { return NULL; } @@ -1897,7 +1897,7 @@ void func_800228EC(s32 arg0) { Object_Racer *object_64; D_8011AEF7 = 3; - object_64 = &get_object_struct(0)->unk64->racer; + object_64 = &get_racer_object(0)->unk64->racer; object_64->unk190 = 0; object_64->unk192 = 0; object_64->lapCount = 0; diff --git a/src/objects.h b/src/objects.h index 9a7f5f02..636715e9 100644 --- a/src/objects.h +++ b/src/objects.h @@ -334,7 +334,7 @@ s32 func_8001BA64(); Object **get_racer_objects(s32 *cnt); s32 *func_8001BA90(s32 *arg0); Object **func_8001BAAC(s32 *numberOfObjects); -Object *get_object_struct(s32 indx); +Object *get_racer_object(s32 indx); void func_8001BC40(s32 arg0, s32 arg1, s32 arg2, s32 arg3); u32 func_8001BD94(s32 arg0); void func_8001D1AC(void); diff --git a/src/racer.c b/src/racer.c index fec116a9..fc0e2514 100644 --- a/src/racer.c +++ b/src/racer.c @@ -387,7 +387,7 @@ void func_80048C7C(Object* obj, Object_Racer* racer) { return; } if (racer->attackType != ATTACK_SQUISHED) { - func_800576E0(obj, racer, 2); + drop_bananas(obj, racer, 2); } play_random_character_voice(obj, SOUND_VOICE_CHARACTER_NEGATIVE, 8, 129); switch (racer->attackType) { @@ -670,7 +670,7 @@ void func_8004C140(Object *obj, Object_Racer *racer) { return; } if (attackType != ATTACK_SQUISHED) { - func_800576E0(obj, racer, 2); + drop_bananas(obj, racer, 2); } racer->unk18C = 360; if (racer->unk1C9 == 8) { @@ -1539,7 +1539,7 @@ void update_player_racer(Object* obj, s32 updateRate) { } } if (tempRacer->unk188 > 0) { - func_800576E0(obj, tempRacer, tempRacer->unk188); + drop_bananas(obj, tempRacer, tempRacer->unk188); } tempRacer->playerIndex = gCurrentPlayerIndex; update_player_camera(obj, tempRacer, delta); @@ -1788,7 +1788,7 @@ void func_800521C4(Object *obj, Object_Racer *racer, UNUSED s32 arg2) { foundObj = 0; if (func_80023568()) { - tempObj = get_object_struct(1); + tempObj = get_racer_object(1); foundObj = func_80052388(obj, racer, tempObj, 160000.0f); } if (!foundObj) { @@ -2318,7 +2318,7 @@ void racer_attack_handler(Object* obj, Object_Racer* racer, s32 updateRate) { } else { if ((racer->squish_timer == 0) || racer->attackType != 4) { if ((racer->attackType != 2) && (racer->attackType != 4)) { - func_800576E0(obj, racer, 2); + drop_bananas(obj, racer, 2); } racer->unk18C = 360; if (racer->unk1C9 == 8) { @@ -2963,7 +2963,7 @@ void func_800575EC(Object *obj, Object_Racer *racer) { guMtxXFMF(mf, 1.0f, 0.0f, 0.0f, &racer->ox3, &racer->oy3, &racer->oz3); } -GLOBAL_ASM("asm/non_matchings/racer/func_800576E0.s") +GLOBAL_ASM("asm/non_matchings/racer/drop_bananas.s") /** * Generate the steer velocity by taking the current steer velocity and getting the difference between the stick tilt. @@ -3859,7 +3859,7 @@ void func_8005A6F0(Object *obj, Object_Racer *racer, s32 updateRate, f32 updateR } func_80018CE0(obj, xPos, yPos, zPos, updateRate); if (racer->unk188 > 0) { - func_800576E0(obj, racer, racer->unk188); + drop_bananas(obj, racer, racer->unk188); } if (racer->unk148 != NULL) { racer->unk148 = NULL; diff --git a/src/racer.h b/src/racer.h index 1617f8e4..52f7ebc7 100644 --- a/src/racer.h +++ b/src/racer.h @@ -266,7 +266,7 @@ void func_80042D20(Object *, Object_Racer *, s32); //Non Matching void set_ghost_position_and_rotation(Object *obj); -void func_800576E0(Object *obj, Object_Racer *racer, s32 arg2); +void drop_bananas(Object *obj, Object_Racer *racer, s32 numBananas); void func_80055EC0(Object *obj, Object_Racer *racer, s32); void func_80054FD0(Object *obj, Object_Racer *racer, s32); void func_80053750(Object *obj, Object_Racer *racer, f32); diff --git a/src/unknown_05CEF0.c b/src/unknown_05CEF0.c index 0c9a62e8..d68d8f16 100644 --- a/src/unknown_05CEF0.c +++ b/src/unknown_05CEF0.c @@ -172,7 +172,7 @@ void func_8005C364(s32 updateRate, f32 updateRateF, Object *obj, Object_Racer *r break; } - temp_v0_4 = get_object_struct(0); + temp_v0_4 = get_racer_object(0); temp_f20 = temp_v0_4->segment.trans.x_position - obj->segment.trans.x_position; temp_f14 = temp_v0_4->segment.trans.z_position - obj->segment.trans.z_position; if (sqrtf((temp_f20 * temp_f20) + (temp_f14 * temp_f14)) < 700.0) { @@ -380,7 +380,7 @@ GLOBAL_ASM("asm/non_matchings/unknown_05CEF0/func_8005CB68.s") #endif void func_8005D048(Object *object, Object_Racer *arg1, s32 arg2) { - Object *sp1C = get_object_struct(0); + Object *sp1C = get_racer_object(0); arg1->transparency = 0xFF; if (!func_8001139C()) { if ((object->segment.unk30 + arg2) < sp1C->segment.unk30) { diff --git a/src/unknown_05FF10.c b/src/unknown_05FF10.c index 4af13d12..1a7a949c 100644 --- a/src/unknown_05FF10.c +++ b/src/unknown_05FF10.c @@ -149,7 +149,7 @@ void func_8005F310(s32 updateRate, f32 updateRateF, Object *obj, Object_Racer *r } } } - tempObj = get_object_struct(0); + tempObj = get_racer_object(0); obj64 = tempObj->unk64; if ((obj == tempObj->unk4C->unk0) && (tempObj->unk4C->unk14 & 8) && (obj->segment.unk3B == 1)) { obj64->racer.attackType = ATTACK_SQUISHED;