mirror of
https://github.com/izzy2lost/Diddy-Kong-Racing.git
synced 2026-06-19 01:16:26 -07:00
Decompiled 4 functions from unknown_0ABDF0
This commit is contained in:
@@ -113,31 +113,31 @@ s32 is_drumstick_unlocked(void) {
|
||||
}
|
||||
```
|
||||
|
||||
As of Feburary 23rd, 2022, this is our current score:
|
||||
As of April 6th, 2022, this is our current score:
|
||||
```
|
||||
=====================================================================
|
||||
ADVENTURE ONE (ASM -> C Decompilation)
|
||||
-------------------------- 21.15% Complete --------------------------
|
||||
# Decompiled functions: 1048
|
||||
# GLOBAL_ASM remaining: 699
|
||||
# NON_MATCHING functions: 6
|
||||
# NON_EQUIVALENT WIP functions: 91
|
||||
---------------------------- Game Status ----------------------------
|
||||
Balloons: 11/47, Keys: 1/4, Trophies: 0/5
|
||||
T.T. Amulets: 1/4, Wizpig Amulets: 0/4
|
||||
---------------------------------------------------------------------
|
||||
We are collecting silver coins in Hot Top Volcano. (8/8 silver coins)
|
||||
=====================================================================
|
||||
ADVENTURE TWO (Cleanup & Documentation)
|
||||
-------------------------- 2.73% Complete --------------------------
|
||||
# Documented functions: 141
|
||||
# Undocumented remaining: 1606
|
||||
---------------------------- Game Status ----------------------------
|
||||
Balloons: 1/47, Keys: 0/4, Trophies: 0/5
|
||||
T.T. Amulets: 0/4, Wizpig Amulets: 0/4
|
||||
---------------------------------------------------------------------
|
||||
We are collecting the second balloon on Timber's Island.
|
||||
=====================================================================
|
||||
========================================================
|
||||
ADVENTURE ONE (ASM -> C Decompilation)
|
||||
------------------- 22.11% Complete --------------------
|
||||
# Decompiled functions: 1068
|
||||
# GLOBAL_ASM remaining: 680
|
||||
# NON_MATCHING functions: 8
|
||||
# NON_EQUIVALENT WIP functions: 109
|
||||
--------------------- Game Status ----------------------
|
||||
Balloons: 12/47, Keys: 1/4, Trophies: 0/5
|
||||
T.T. Amulets: 1/4, Wizpig Amulets: 0/4
|
||||
--------------------------------------------------------
|
||||
We are racing in the rematch against Trickytops.
|
||||
========================================================
|
||||
ADVENTURE TWO (Cleanup & Documentation)
|
||||
------------------- 2.73% Complete --------------------
|
||||
# Documented functions: 141
|
||||
# Undocumented remaining: 1607
|
||||
--------------------- Game Status ----------------------
|
||||
Balloons: 1/47, Keys: 0/4, Trophies: 0/5
|
||||
T.T. Amulets: 0/4, Wizpig Amulets: 0/4
|
||||
--------------------------------------------------------
|
||||
We are collecting the second balloon on Timber's Island.
|
||||
========================================================
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
glabel func_800C4170
|
||||
glabel load_font
|
||||
/* 0C4D70 800C4170 27BDFFD8 */ addiu $sp, $sp, -0x28
|
||||
/* 0C4D74 800C4174 3C0E8013 */ lui $t6, %hi(gNumberOfFonts) # $t6, 0x8013
|
||||
/* 0C4D78 800C4178 8DCEA7E0 */ lw $t6, %lo(gNumberOfFonts)($t6)
|
||||
@@ -1,4 +1,4 @@
|
||||
glabel func_800C422C
|
||||
glabel unload_font
|
||||
/* 0C4E2C 800C422C 27BDFFD8 */ addiu $sp, $sp, -0x28
|
||||
/* 0C4E30 800C4230 3C0E8013 */ lui $t6, %hi(gNumberOfFonts) # $t6, 0x8013
|
||||
/* 0C4E34 800C4234 8DCEA7E0 */ lw $t6, %lo(gNumberOfFonts)($t6)
|
||||
@@ -1,74 +0,0 @@
|
||||
glabel func_800AB1F0
|
||||
/* 0ABDF0 800AB1F0 3C03800E */ lui $v1, %hi(D_800E28D8) # $v1, 0x800e
|
||||
/* 0ABDF4 800AB1F4 246328D8 */ addiu $v1, %lo(D_800E28D8) # addiu $v1, $v1, 0x28d8
|
||||
/* 0ABDF8 800AB1F8 AC600000 */ sw $zero, ($v1)
|
||||
/* 0ABDFC 800AB1FC AC600004 */ sw $zero, 4($v1)
|
||||
/* 0ABE00 800AB200 3C01800E */ lui $at, %hi(D_800E28D4) # $at, 0x800e
|
||||
/* 0ABE04 800AB204 AC2028D4 */ sw $zero, %lo(D_800E28D4)($at)
|
||||
/* 0ABE08 800AB208 3C028012 */ lui $v0, %hi(D_80127C00) # $v0, 0x8012
|
||||
/* 0ABE0C 800AB20C 3C018012 */ lui $at, %hi(D_80127BB0) # $at, 0x8012
|
||||
/* 0ABE10 800AB210 240E0006 */ li $t6, 6
|
||||
/* 0ABE14 800AB214 24427C00 */ addiu $v0, %lo(D_80127C00) # addiu $v0, $v0, 0x7c00
|
||||
/* 0ABE18 800AB218 AC207BB0 */ sw $zero, %lo(D_80127BB0)($at)
|
||||
/* 0ABE1C 800AB21C 000EC080 */ sll $t8, $t6, 2
|
||||
/* 0ABE20 800AB220 AC4E0000 */ sw $t6, ($v0)
|
||||
/* 0ABE24 800AB224 AC580000 */ sw $t8, ($v0)
|
||||
/* 0ABE28 800AB228 00184043 */ sra $t0, $t8, 1
|
||||
/* 0ABE2C 800AB22C 3C018012 */ lui $at, %hi(D_80127C04) # $at, 0x8012
|
||||
/* 0ABE30 800AB230 3C04800E */ lui $a0, %hi(D_800E2914) # $a0, 0x800e
|
||||
/* 0ABE34 800AB234 AC287C04 */ sw $t0, %lo(D_80127C04)($at)
|
||||
/* 0ABE38 800AB238 24842914 */ addiu $a0, %lo(D_800E2914) # addiu $a0, $a0, 0x2914
|
||||
/* 0ABE3C 800AB23C AC800000 */ sw $zero, ($a0)
|
||||
/* 0ABE40 800AB240 AC800004 */ sw $zero, 4($a0)
|
||||
/* 0ABE44 800AB244 3C01800E */ lui $at, %hi(D_800E290C) # $at, 0x800e
|
||||
/* 0ABE48 800AB248 3C058012 */ lui $a1, %hi(D_80127BF8) # $a1, 0x8012
|
||||
/* 0ABE4C 800AB24C AC20290C */ sw $zero, %lo(D_800E290C)($at)
|
||||
/* 0ABE50 800AB250 24A57BF8 */ addiu $a1, %lo(D_80127BF8) # addiu $a1, $a1, 0x7bf8
|
||||
/* 0ABE54 800AB254 2406FFFF */ li $a2, -1
|
||||
/* 0ABE58 800AB258 2409FE00 */ li $t1, -512
|
||||
/* 0ABE5C 800AB25C A4A60000 */ sh $a2, ($a1)
|
||||
/* 0ABE60 800AB260 A4A90002 */ sh $t1, 2($a1)
|
||||
/* 0ABE64 800AB264 3C01800E */ lui $at, %hi(D_800E2A80) # $at, 0x800e
|
||||
/* 0ABE68 800AB268 AC202A80 */ sw $zero, %lo(D_800E2A80)($at)
|
||||
/* 0ABE6C 800AB26C 3C01800E */ lui $at, %hi(D_800E2A84) # $at, 0x800e
|
||||
/* 0ABE70 800AB270 240A0001 */ li $t2, 1
|
||||
/* 0ABE74 800AB274 AC2A2A84 */ sw $t2, %lo(D_800E2A84)($at)
|
||||
/* 0ABE78 800AB278 3C07800E */ lui $a3, %hi(D_800E291C) # $a3, 0x800e
|
||||
/* 0ABE7C 800AB27C 3C01800E */ lui $at, %hi(D_800E2A88) # $at, 0x800e
|
||||
/* 0ABE80 800AB280 24E7291C */ addiu $a3, %lo(D_800E291C) # addiu $a3, $a3, 0x291c
|
||||
/* 0ABE84 800AB284 AC202A88 */ sw $zero, %lo(D_800E2A88)($at)
|
||||
/* 0ABE88 800AB288 8CEB0000 */ lw $t3, ($a3)
|
||||
/* 0ABE8C 800AB28C 27BDFFE8 */ addiu $sp, $sp, -0x18
|
||||
/* 0ABE90 800AB290 15600018 */ bnez $t3, .L800AB2F4
|
||||
/* 0ABE94 800AB294 AFBF0014 */ sw $ra, 0x14($sp)
|
||||
/* 0ABE98 800AB298 0C01DB16 */ jal load_asset_section_from_rom
|
||||
/* 0ABE9C 800AB29C 24040013 */ li $a0, 19
|
||||
/* 0ABEA0 800AB2A0 3C04800E */ lui $a0, %hi(D_800E2920) # $a0, 0x800e
|
||||
/* 0ABEA4 800AB2A4 3C07800E */ lui $a3, %hi(D_800E291C) # $a3, 0x800e
|
||||
/* 0ABEA8 800AB2A8 24E7291C */ addiu $a3, %lo(D_800E291C) # addiu $a3, $a3, 0x291c
|
||||
/* 0ABEAC 800AB2AC 24842920 */ addiu $a0, %lo(D_800E2920) # addiu $a0, $a0, 0x2920
|
||||
/* 0ABEB0 800AB2B0 00006080 */ sll $t4, $zero, 2
|
||||
/* 0ABEB4 800AB2B4 ACE20000 */ sw $v0, ($a3)
|
||||
/* 0ABEB8 800AB2B8 AC800000 */ sw $zero, ($a0)
|
||||
/* 0ABEBC 800AB2BC 004C6821 */ addu $t5, $v0, $t4
|
||||
/* 0ABEC0 800AB2C0 8DAE0000 */ lw $t6, ($t5)
|
||||
/* 0ABEC4 800AB2C4 2406FFFF */ li $a2, -1
|
||||
/* 0ABEC8 800AB2C8 00402825 */ move $a1, $v0
|
||||
/* 0ABECC 800AB2CC 10CE0009 */ beq $a2, $t6, .L800AB2F4
|
||||
/* 0ABED0 800AB2D0 00001825 */ move $v1, $zero
|
||||
/* 0ABED4 800AB2D4 246F0001 */ addiu $t7, $v1, 1
|
||||
.L800AB2D8:
|
||||
/* 0ABED8 800AB2D8 000FC080 */ sll $t8, $t7, 2
|
||||
/* 0ABEDC 800AB2DC 00B8C821 */ addu $t9, $a1, $t8
|
||||
/* 0ABEE0 800AB2E0 AC8F0000 */ sw $t7, ($a0)
|
||||
/* 0ABEE4 800AB2E4 8F280000 */ lw $t0, ($t9)
|
||||
/* 0ABEE8 800AB2E8 01E01825 */ move $v1, $t7
|
||||
/* 0ABEEC 800AB2EC 14C8FFFA */ bne $a2, $t0, .L800AB2D8
|
||||
/* 0ABEF0 800AB2F0 246F0001 */ addiu $t7, $v1, 1
|
||||
.L800AB2F4:
|
||||
/* 0ABEF4 800AB2F4 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
/* 0ABEF8 800AB2F8 3C018012 */ lui $at, %hi(D_80127C08) # $at, 0x8012
|
||||
/* 0ABEFC 800AB2FC AC207C08 */ sw $zero, %lo(D_80127C08)($at)
|
||||
/* 0ABF00 800AB300 03E00008 */ jr $ra
|
||||
/* 0ABF04 800AB304 27BD0018 */ addiu $sp, $sp, 0x18
|
||||
|
||||
@@ -1,93 +0,0 @@
|
||||
glabel func_800AB35C
|
||||
/* 0ABF5C 800AB35C 3C04800E */ lui $a0, %hi(D_800E290C) # $a0, 0x800e
|
||||
/* 0ABF60 800AB360 8C84290C */ lw $a0, %lo(D_800E290C)($a0)
|
||||
/* 0ABF64 800AB364 27BDFFE8 */ addiu $sp, $sp, -0x18
|
||||
/* 0ABF68 800AB368 10800005 */ beqz $a0, .L800AB380
|
||||
/* 0ABF6C 800AB36C AFBF0014 */ sw $ra, 0x14($sp)
|
||||
/* 0ABF70 800AB370 0C01C450 */ jal free_from_memory_pool
|
||||
/* 0ABF74 800AB374 00000000 */ nop
|
||||
/* 0ABF78 800AB378 3C01800E */ lui $at, %hi(D_800E290C) # $at, 0x800e
|
||||
/* 0ABF7C 800AB37C AC20290C */ sw $zero, %lo(D_800E290C)($at)
|
||||
.L800AB380:
|
||||
/* 0ABF80 800AB380 3C02800E */ lui $v0, %hi(D_800E2914) # $v0, 0x800e
|
||||
/* 0ABF84 800AB384 24422914 */ addiu $v0, %lo(D_800E2914) # addiu $v0, $v0, 0x2914
|
||||
/* 0ABF88 800AB388 8C440000 */ lw $a0, ($v0)
|
||||
/* 0ABF8C 800AB38C 00000000 */ nop
|
||||
/* 0ABF90 800AB390 10800006 */ beqz $a0, .L800AB3AC
|
||||
/* 0ABF94 800AB394 00000000 */ nop
|
||||
/* 0ABF98 800AB398 0C01C450 */ jal free_from_memory_pool
|
||||
/* 0ABF9C 800AB39C 00000000 */ nop
|
||||
/* 0ABFA0 800AB3A0 3C02800E */ lui $v0, %hi(D_800E2914) # $v0, 0x800e
|
||||
/* 0ABFA4 800AB3A4 24422914 */ addiu $v0, %lo(D_800E2914) # addiu $v0, $v0, 0x2914
|
||||
/* 0ABFA8 800AB3A8 AC400000 */ sw $zero, ($v0)
|
||||
.L800AB3AC:
|
||||
/* 0ABFAC 800AB3AC 8C440004 */ lw $a0, 4($v0)
|
||||
/* 0ABFB0 800AB3B0 00000000 */ nop
|
||||
/* 0ABFB4 800AB3B4 10800006 */ beqz $a0, .L800AB3D0
|
||||
/* 0ABFB8 800AB3B8 00000000 */ nop
|
||||
/* 0ABFBC 800AB3BC 0C01C450 */ jal free_from_memory_pool
|
||||
/* 0ABFC0 800AB3C0 00000000 */ nop
|
||||
/* 0ABFC4 800AB3C4 3C02800E */ lui $v0, %hi(D_800E2914) # $v0, 0x800e
|
||||
/* 0ABFC8 800AB3C8 24422914 */ addiu $v0, %lo(D_800E2914) # addiu $v0, $v0, 0x2914
|
||||
/* 0ABFCC 800AB3CC AC400004 */ sw $zero, 4($v0)
|
||||
.L800AB3D0:
|
||||
/* 0ABFD0 800AB3D0 3C04800E */ lui $a0, %hi(D_800E28D4) # $a0, 0x800e
|
||||
/* 0ABFD4 800AB3D4 8C8428D4 */ lw $a0, %lo(D_800E28D4)($a0)
|
||||
/* 0ABFD8 800AB3D8 00000000 */ nop
|
||||
/* 0ABFDC 800AB3DC 10800005 */ beqz $a0, .L800AB3F4
|
||||
/* 0ABFE0 800AB3E0 00000000 */ nop
|
||||
/* 0ABFE4 800AB3E4 0C01C450 */ jal free_from_memory_pool
|
||||
/* 0ABFE8 800AB3E8 00000000 */ nop
|
||||
/* 0ABFEC 800AB3EC 3C01800E */ lui $at, %hi(D_800E28D4) # $at, 0x800e
|
||||
/* 0ABFF0 800AB3F0 AC2028D4 */ sw $zero, %lo(D_800E28D4)($at)
|
||||
.L800AB3F4:
|
||||
/* 0ABFF4 800AB3F4 3C02800E */ lui $v0, %hi(D_800E28D8) # $v0, 0x800e
|
||||
/* 0ABFF8 800AB3F8 244228D8 */ addiu $v0, %lo(D_800E28D8) # addiu $v0, $v0, 0x28d8
|
||||
/* 0ABFFC 800AB3FC 8C440000 */ lw $a0, ($v0)
|
||||
/* 0AC000 800AB400 00000000 */ nop
|
||||
/* 0AC004 800AB404 10800006 */ beqz $a0, .L800AB420
|
||||
/* 0AC008 800AB408 00000000 */ nop
|
||||
/* 0AC00C 800AB40C 0C01C450 */ jal free_from_memory_pool
|
||||
/* 0AC010 800AB410 00000000 */ nop
|
||||
/* 0AC014 800AB414 3C02800E */ lui $v0, %hi(D_800E28D8) # $v0, 0x800e
|
||||
/* 0AC018 800AB418 244228D8 */ addiu $v0, %lo(D_800E28D8) # addiu $v0, $v0, 0x28d8
|
||||
/* 0AC01C 800AB41C AC400000 */ sw $zero, ($v0)
|
||||
.L800AB420:
|
||||
/* 0AC020 800AB420 8C440008 */ lw $a0, 8($v0)
|
||||
/* 0AC024 800AB424 00000000 */ nop
|
||||
/* 0AC028 800AB428 10800006 */ beqz $a0, .L800AB444
|
||||
/* 0AC02C 800AB42C 00000000 */ nop
|
||||
/* 0AC030 800AB430 0C01ECAF */ jal free_texture
|
||||
/* 0AC034 800AB434 00000000 */ nop
|
||||
/* 0AC038 800AB438 3C02800E */ lui $v0, %hi(D_800E28D8) # $v0, 0x800e
|
||||
/* 0AC03C 800AB43C 244228D8 */ addiu $v0, %lo(D_800E28D8) # addiu $v0, $v0, 0x28d8
|
||||
/* 0AC040 800AB440 AC400008 */ sw $zero, 8($v0)
|
||||
.L800AB444:
|
||||
/* 0AC044 800AB444 3C04800E */ lui $a0, %hi(D_800E2910) # $a0, 0x800e
|
||||
/* 0AC048 800AB448 8C842910 */ lw $a0, %lo(D_800E2910)($a0)
|
||||
/* 0AC04C 800AB44C 00000000 */ nop
|
||||
/* 0AC050 800AB450 10800005 */ beqz $a0, .L800AB468
|
||||
/* 0AC054 800AB454 00000000 */ nop
|
||||
/* 0AC058 800AB458 0C01C450 */ jal free_from_memory_pool
|
||||
/* 0AC05C 800AB45C 00000000 */ nop
|
||||
/* 0AC060 800AB460 3C01800E */ lui $at, %hi(D_800E2910) # $at, 0x800e
|
||||
/* 0AC064 800AB464 AC202910 */ sw $zero, %lo(D_800E2910)($at)
|
||||
.L800AB468:
|
||||
/* 0AC068 800AB468 3C01800E */ lui $at, %hi(D_800E2A88) # $at, 0x800e
|
||||
/* 0AC06C 800AB46C AC202A88 */ sw $zero, %lo(D_800E2A88)($at)
|
||||
/* 0AC070 800AB470 3C01800E */ lui $at, %hi(D_800E2A80) # $at, 0x800e
|
||||
/* 0AC074 800AB474 3C0F800E */ lui $t7, %hi(D_800E2C5C) # $t7, 0x800e
|
||||
/* 0AC078 800AB478 8DEF2C5C */ lw $t7, %lo(D_800E2C5C)($t7)
|
||||
/* 0AC07C 800AB47C AC202A80 */ sw $zero, %lo(D_800E2A80)($at)
|
||||
/* 0AC080 800AB480 3C01800E */ lui $at, %hi(D_800E2A84) # $at, 0x800e
|
||||
/* 0AC084 800AB484 240E0001 */ li $t6, 1
|
||||
/* 0AC088 800AB488 11E00003 */ beqz $t7, .L800AB498
|
||||
/* 0AC08C 800AB48C AC2E2A84 */ sw $t6, %lo(D_800E2A84)($at)
|
||||
/* 0AC090 800AB490 0C02B488 */ jal func_800AD220
|
||||
/* 0AC094 800AB494 00000000 */ nop
|
||||
.L800AB498:
|
||||
/* 0AC098 800AB498 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
/* 0AC09C 800AB49C 27BD0018 */ addiu $sp, $sp, 0x18
|
||||
/* 0AC0A0 800AB4A0 03E00008 */ jr $ra
|
||||
/* 0AC0A4 800AB4A4 00000000 */ nop
|
||||
|
||||
@@ -1,80 +0,0 @@
|
||||
glabel func_800ABB34
|
||||
/* 0AC734 800ABB34 27BDFFC8 */ addiu $sp, $sp, -0x38
|
||||
/* 0AC738 800ABB38 AFB40028 */ sw $s4, 0x28($sp)
|
||||
/* 0AC73C 800ABB3C 3C14800E */ lui $s4, %hi(D_800E28D8) # $s4, 0x800e
|
||||
/* 0AC740 800ABB40 269428D8 */ addiu $s4, %lo(D_800E28D8) # addiu $s4, $s4, 0x28d8
|
||||
/* 0AC744 800ABB44 8E820004 */ lw $v0, 4($s4)
|
||||
/* 0AC748 800ABB48 3C0E0001 */ lui $t6, 1
|
||||
/* 0AC74C 800ABB4C 01C2001A */ div $zero, $t6, $v0
|
||||
/* 0AC750 800ABB50 AFB5002C */ sw $s5, 0x2c($sp)
|
||||
/* 0AC754 800ABB54 AFB60030 */ sw $s6, 0x30($sp)
|
||||
/* 0AC758 800ABB58 AFB20020 */ sw $s2, 0x20($sp)
|
||||
/* 0AC75C 800ABB5C AFB1001C */ sw $s1, 0x1c($sp)
|
||||
/* 0AC760 800ABB60 AFB00018 */ sw $s0, 0x18($sp)
|
||||
/* 0AC764 800ABB64 AFBF0034 */ sw $ra, 0x34($sp)
|
||||
/* 0AC768 800ABB68 AFB30024 */ sw $s3, 0x24($sp)
|
||||
/* 0AC76C 800ABB6C 14400002 */ bnez $v0, .L800ABB78
|
||||
/* 0AC770 800ABB70 00000000 */ nop
|
||||
/* 0AC774 800ABB74 0007000D */ break 7
|
||||
.L800ABB78:
|
||||
/* 0AC778 800ABB78 2401FFFF */ li $at, -1
|
||||
/* 0AC77C 800ABB7C 14410004 */ bne $v0, $at, .L800ABB90
|
||||
/* 0AC780 800ABB80 3C018000 */ lui $at, 0x8000
|
||||
/* 0AC784 800ABB84 15C10002 */ bne $t6, $at, .L800ABB90
|
||||
/* 0AC788 800ABB88 00000000 */ nop
|
||||
/* 0AC78C 800ABB8C 0006000D */ break 6
|
||||
.L800ABB90:
|
||||
/* 0AC790 800ABB90 00008825 */ move $s1, $zero
|
||||
/* 0AC794 800ABB94 00008025 */ move $s0, $zero
|
||||
/* 0AC798 800ABB98 00009025 */ move $s2, $zero
|
||||
/* 0AC79C 800ABB9C 3C16FFFC */ lui $s6, 0xfffc
|
||||
/* 0AC7A0 800ABBA0 0000A812 */ mflo $s5
|
||||
/* 0AC7A4 800ABBA4 1840001C */ blez $v0, .L800ABC18
|
||||
.L800ABBA8:
|
||||
/* 0AC7A8 800ABBA8 02209825 */ move $s3, $s1
|
||||
/* 0AC7AC 800ABBAC 00137C00 */ sll $t7, $s3, 0x10
|
||||
/* 0AC7B0 800ABBB0 000F9C03 */ sra $s3, $t7, 0x10
|
||||
/* 0AC7B4 800ABBB4 00132400 */ sll $a0, $s3, 0x10
|
||||
/* 0AC7B8 800ABBB8 0004CC03 */ sra $t9, $a0, 0x10
|
||||
/* 0AC7BC 800ABBBC 0C01C20B */ jal func_8007082C
|
||||
/* 0AC7C0 800ABBC0 03202025 */ move $a0, $t9
|
||||
/* 0AC7C4 800ABBC4 8E890000 */ lw $t1, ($s4)
|
||||
/* 0AC7C8 800ABBC8 000240C0 */ sll $t0, $v0, 3
|
||||
/* 0AC7CC 800ABBCC 01305021 */ addu $t2, $t1, $s0
|
||||
/* 0AC7D0 800ABBD0 AD480000 */ sw $t0, ($t2)
|
||||
/* 0AC7D4 800ABBD4 8E8B0000 */ lw $t3, ($s4)
|
||||
/* 0AC7D8 800ABBD8 00132400 */ sll $a0, $s3, 0x10
|
||||
/* 0AC7DC 800ABBDC 00046C03 */ sra $t5, $a0, 0x10
|
||||
/* 0AC7E0 800ABBE0 01706021 */ addu $t4, $t3, $s0
|
||||
/* 0AC7E4 800ABBE4 AD960004 */ sw $s6, 4($t4)
|
||||
/* 0AC7E8 800ABBE8 0C01C20C */ jal func_80070830
|
||||
/* 0AC7EC 800ABBEC 01A02025 */ move $a0, $t5
|
||||
/* 0AC7F0 800ABBF0 8E8F0000 */ lw $t7, ($s4)
|
||||
/* 0AC7F4 800ABBF4 00027040 */ sll $t6, $v0, 1
|
||||
/* 0AC7F8 800ABBF8 01F0C021 */ addu $t8, $t7, $s0
|
||||
/* 0AC7FC 800ABBFC AF0E0008 */ sw $t6, 8($t8)
|
||||
/* 0AC800 800ABC00 8E990004 */ lw $t9, 4($s4)
|
||||
/* 0AC804 800ABC04 26520001 */ addiu $s2, $s2, 1
|
||||
/* 0AC808 800ABC08 0259082A */ slt $at, $s2, $t9
|
||||
/* 0AC80C 800ABC0C 2610000C */ addiu $s0, $s0, 0xc
|
||||
/* 0AC810 800ABC10 1420FFE5 */ bnez $at, .L800ABBA8
|
||||
/* 0AC814 800ABC14 02358821 */ addu $s1, $s1, $s5
|
||||
.L800ABC18:
|
||||
/* 0AC818 800ABC18 3C09800E */ lui $t1, %hi(D_800E291C) # $t1, 0x800e
|
||||
/* 0AC81C 800ABC1C 8D29291C */ lw $t1, %lo(D_800E291C)($t1)
|
||||
/* 0AC820 800ABC20 00000000 */ nop
|
||||
/* 0AC824 800ABC24 8D240000 */ lw $a0, ($t1)
|
||||
/* 0AC828 800ABC28 0C01EB9D */ jal load_texture
|
||||
/* 0AC82C 800ABC2C 00000000 */ nop
|
||||
/* 0AC830 800ABC30 8FBF0034 */ lw $ra, 0x34($sp)
|
||||
/* 0AC834 800ABC34 AE820008 */ sw $v0, 8($s4)
|
||||
/* 0AC838 800ABC38 8FB40028 */ lw $s4, 0x28($sp)
|
||||
/* 0AC83C 800ABC3C 8FB00018 */ lw $s0, 0x18($sp)
|
||||
/* 0AC840 800ABC40 8FB1001C */ lw $s1, 0x1c($sp)
|
||||
/* 0AC844 800ABC44 8FB20020 */ lw $s2, 0x20($sp)
|
||||
/* 0AC848 800ABC48 8FB30024 */ lw $s3, 0x24($sp)
|
||||
/* 0AC84C 800ABC4C 8FB5002C */ lw $s5, 0x2c($sp)
|
||||
/* 0AC850 800ABC50 8FB60030 */ lw $s6, 0x30($sp)
|
||||
/* 0AC854 800ABC54 03E00008 */ jr $ra
|
||||
/* 0AC858 800ABC58 27BD0038 */ addiu $sp, $sp, 0x38
|
||||
|
||||
@@ -1,147 +0,0 @@
|
||||
glabel func_800ABC5C
|
||||
/* 0AC85C 800ABC5C 27BDFFE0 */ addiu $sp, $sp, -0x20
|
||||
/* 0AC860 800ABC60 AFB00018 */ sw $s0, 0x18($sp)
|
||||
/* 0AC864 800ABC64 8FB00034 */ lw $s0, 0x34($sp)
|
||||
/* 0AC868 800ABC68 AFBF001C */ sw $ra, 0x1c($sp)
|
||||
/* 0AC86C 800ABC6C 1A00007A */ blez $s0, .L800ABE58
|
||||
/* 0AC870 800ABC70 3C028012 */ lui $v0, %hi(D_80127BB8) # $v0, 0x8012
|
||||
/* 0AC874 800ABC74 24427BB8 */ addiu $v0, %lo(D_80127BB8) # addiu $v0, $v0, 0x7bb8
|
||||
/* 0AC878 800ABC78 8C4E0014 */ lw $t6, 0x14($v0)
|
||||
/* 0AC87C 800ABC7C 00000000 */ nop
|
||||
/* 0AC880 800ABC80 148E0011 */ bne $a0, $t6, .L800ABCC8
|
||||
/* 0AC884 800ABC84 00000000 */ nop
|
||||
/* 0AC888 800ABC88 8C4F0020 */ lw $t7, 0x20($v0)
|
||||
/* 0AC88C 800ABC8C 00000000 */ nop
|
||||
/* 0AC890 800ABC90 14AF000D */ bne $a1, $t7, .L800ABCC8
|
||||
/* 0AC894 800ABC94 00000000 */ nop
|
||||
/* 0AC898 800ABC98 8C58002C */ lw $t8, 0x2c($v0)
|
||||
/* 0AC89C 800ABC9C 00000000 */ nop
|
||||
/* 0AC8A0 800ABCA0 14D80009 */ bne $a2, $t8, .L800ABCC8
|
||||
/* 0AC8A4 800ABCA4 00000000 */ nop
|
||||
/* 0AC8A8 800ABCA8 8C590000 */ lw $t9, ($v0)
|
||||
/* 0AC8AC 800ABCAC 8FA30030 */ lw $v1, 0x30($sp)
|
||||
/* 0AC8B0 800ABCB0 14F90005 */ bne $a3, $t9, .L800ABCC8
|
||||
/* 0AC8B4 800ABCB4 00000000 */ nop
|
||||
/* 0AC8B8 800ABCB8 8C480030 */ lw $t0, 0x30($v0)
|
||||
/* 0AC8BC 800ABCBC 00000000 */ nop
|
||||
/* 0AC8C0 800ABCC0 10680065 */ beq $v1, $t0, .L800ABE58
|
||||
/* 0AC8C4 800ABCC4 00000000 */ nop
|
||||
.L800ABCC8:
|
||||
/* 0AC8C8 800ABCC8 8C49000C */ lw $t1, 0xc($v0)
|
||||
/* 0AC8CC 800ABCCC 8C4C0018 */ lw $t4, 0x18($v0)
|
||||
/* 0AC8D0 800ABCD0 00895023 */ subu $t2, $a0, $t1
|
||||
/* 0AC8D4 800ABCD4 0150001A */ div $zero, $t2, $s0
|
||||
/* 0AC8D8 800ABCD8 00AC6823 */ subu $t5, $a1, $t4
|
||||
/* 0AC8DC 800ABCDC 8C4F0024 */ lw $t7, 0x24($v0)
|
||||
/* 0AC8E0 800ABCE0 AC440014 */ sw $a0, 0x14($v0)
|
||||
/* 0AC8E4 800ABCE4 00CFC023 */ subu $t8, $a2, $t7
|
||||
/* 0AC8E8 800ABCE8 AC450020 */ sw $a1, 0x20($v0)
|
||||
/* 0AC8EC 800ABCEC AC46002C */ sw $a2, 0x2c($v0)
|
||||
/* 0AC8F0 800ABCF0 3C08800E */ lui $t0, %hi(D_800E2C5C) # $t0, 0x800e
|
||||
/* 0AC8F4 800ABCF4 8FA30030 */ lw $v1, 0x30($sp)
|
||||
/* 0AC8F8 800ABCF8 16000002 */ bnez $s0, .L800ABD04
|
||||
/* 0AC8FC 800ABCFC 00000000 */ nop
|
||||
/* 0AC900 800ABD00 0007000D */ break 7
|
||||
.L800ABD04:
|
||||
/* 0AC904 800ABD04 2401FFFF */ li $at, -1
|
||||
/* 0AC908 800ABD08 16010004 */ bne $s0, $at, .L800ABD1C
|
||||
/* 0AC90C 800ABD0C 3C018000 */ lui $at, 0x8000
|
||||
/* 0AC910 800ABD10 15410002 */ bne $t2, $at, .L800ABD1C
|
||||
/* 0AC914 800ABD14 00000000 */ nop
|
||||
/* 0AC918 800ABD18 0006000D */ break 6
|
||||
.L800ABD1C:
|
||||
/* 0AC91C 800ABD1C 00005812 */ mflo $t3
|
||||
/* 0AC920 800ABD20 AC4B0010 */ sw $t3, 0x10($v0)
|
||||
/* 0AC924 800ABD24 00000000 */ nop
|
||||
/* 0AC928 800ABD28 01B0001A */ div $zero, $t5, $s0
|
||||
/* 0AC92C 800ABD2C 16000002 */ bnez $s0, .L800ABD38
|
||||
/* 0AC930 800ABD30 00000000 */ nop
|
||||
/* 0AC934 800ABD34 0007000D */ break 7
|
||||
.L800ABD38:
|
||||
/* 0AC938 800ABD38 2401FFFF */ li $at, -1
|
||||
/* 0AC93C 800ABD3C 16010004 */ bne $s0, $at, .L800ABD50
|
||||
/* 0AC940 800ABD40 3C018000 */ lui $at, 0x8000
|
||||
/* 0AC944 800ABD44 15A10002 */ bne $t5, $at, .L800ABD50
|
||||
/* 0AC948 800ABD48 00000000 */ nop
|
||||
/* 0AC94C 800ABD4C 0006000D */ break 6
|
||||
.L800ABD50:
|
||||
/* 0AC950 800ABD50 00007012 */ mflo $t6
|
||||
/* 0AC954 800ABD54 AC4E001C */ sw $t6, 0x1c($v0)
|
||||
/* 0AC958 800ABD58 00000000 */ nop
|
||||
/* 0AC95C 800ABD5C 0310001A */ div $zero, $t8, $s0
|
||||
/* 0AC960 800ABD60 16000002 */ bnez $s0, .L800ABD6C
|
||||
/* 0AC964 800ABD64 00000000 */ nop
|
||||
/* 0AC968 800ABD68 0007000D */ break 7
|
||||
.L800ABD6C:
|
||||
/* 0AC96C 800ABD6C 2401FFFF */ li $at, -1
|
||||
/* 0AC970 800ABD70 16010004 */ bne $s0, $at, .L800ABD84
|
||||
/* 0AC974 800ABD74 3C018000 */ lui $at, 0x8000
|
||||
/* 0AC978 800ABD78 17010002 */ bne $t8, $at, .L800ABD84
|
||||
/* 0AC97C 800ABD7C 00000000 */ nop
|
||||
/* 0AC980 800ABD80 0006000D */ break 6
|
||||
.L800ABD84:
|
||||
/* 0AC984 800ABD84 0000C812 */ mflo $t9
|
||||
/* 0AC988 800ABD88 AC590028 */ sw $t9, 0x28($v0)
|
||||
/* 0AC98C 800ABD8C 8D082C5C */ lw $t0, %lo(D_800E2C5C)($t0)
|
||||
/* 0AC990 800ABD90 00000000 */ nop
|
||||
/* 0AC994 800ABD94 15000023 */ bnez $t0, .L800ABE24
|
||||
/* 0AC998 800ABD98 00000000 */ nop
|
||||
/* 0AC99C 800ABD9C 8C490000 */ lw $t1, ($v0)
|
||||
/* 0AC9A0 800ABDA0 8C4C0030 */ lw $t4, 0x30($v0)
|
||||
/* 0AC9A4 800ABDA4 00E95023 */ subu $t2, $a3, $t1
|
||||
/* 0AC9A8 800ABDA8 0150001A */ div $zero, $t2, $s0
|
||||
/* 0AC9AC 800ABDAC 006C6823 */ subu $t5, $v1, $t4
|
||||
/* 0AC9B0 800ABDB0 16000002 */ bnez $s0, .L800ABDBC
|
||||
/* 0AC9B4 800ABDB4 00000000 */ nop
|
||||
/* 0AC9B8 800ABDB8 0007000D */ break 7
|
||||
.L800ABDBC:
|
||||
/* 0AC9BC 800ABDBC 2401FFFF */ li $at, -1
|
||||
/* 0AC9C0 800ABDC0 16010004 */ bne $s0, $at, .L800ABDD4
|
||||
/* 0AC9C4 800ABDC4 3C018000 */ lui $at, 0x8000
|
||||
/* 0AC9C8 800ABDC8 15410002 */ bne $t2, $at, .L800ABDD4
|
||||
/* 0AC9CC 800ABDCC 00000000 */ nop
|
||||
/* 0AC9D0 800ABDD0 0006000D */ break 6
|
||||
.L800ABDD4:
|
||||
/* 0AC9D4 800ABDD4 AC470008 */ sw $a3, 8($v0)
|
||||
/* 0AC9D8 800ABDD8 AC430038 */ sw $v1, 0x38($v0)
|
||||
/* 0AC9DC 800ABDDC AC50003C */ sw $s0, 0x3c($v0)
|
||||
/* 0AC9E0 800ABDE0 00005812 */ mflo $t3
|
||||
/* 0AC9E4 800ABDE4 AC4B0004 */ sw $t3, 4($v0)
|
||||
/* 0AC9E8 800ABDE8 00000000 */ nop
|
||||
/* 0AC9EC 800ABDEC 01B0001A */ div $zero, $t5, $s0
|
||||
/* 0AC9F0 800ABDF0 16000002 */ bnez $s0, .L800ABDFC
|
||||
/* 0AC9F4 800ABDF4 00000000 */ nop
|
||||
/* 0AC9F8 800ABDF8 0007000D */ break 7
|
||||
.L800ABDFC:
|
||||
/* 0AC9FC 800ABDFC 2401FFFF */ li $at, -1
|
||||
/* 0ACA00 800ABE00 16010004 */ bne $s0, $at, .L800ABE14
|
||||
/* 0ACA04 800ABE04 3C018000 */ lui $at, 0x8000
|
||||
/* 0ACA08 800ABE08 15A10002 */ bne $t5, $at, .L800ABE14
|
||||
/* 0ACA0C 800ABE0C 00000000 */ nop
|
||||
/* 0ACA10 800ABE10 0006000D */ break 6
|
||||
.L800ABE14:
|
||||
/* 0ACA14 800ABE14 00007012 */ mflo $t6
|
||||
/* 0ACA18 800ABE18 AC4E0034 */ sw $t6, 0x34($v0)
|
||||
/* 0ACA1C 800ABE1C 1000000F */ b .L800ABE5C
|
||||
/* 0ACA20 800ABE20 8FBF001C */ lw $ra, 0x1c($sp)
|
||||
.L800ABE24:
|
||||
/* 0ACA24 800ABE24 44902000 */ mtc1 $s0, $f4
|
||||
/* 0ACA28 800ABE28 3C014270 */ li $at, 0x42700000 # 60.000000
|
||||
/* 0ACA2C 800ABE2C 468021A0 */ cvt.s.w $f6, $f4
|
||||
/* 0ACA30 800ABE30 44814000 */ mtc1 $at, $f8
|
||||
/* 0ACA34 800ABE34 AC470000 */ sw $a3, ($v0)
|
||||
/* 0ACA38 800ABE38 46083283 */ div.s $f10, $f6, $f8
|
||||
/* 0ACA3C 800ABE3C AC430030 */ sw $v1, 0x30($v0)
|
||||
/* 0ACA40 800ABE40 AC40003C */ sw $zero, 0x3c($v0)
|
||||
/* 0ACA44 800ABE44 24E40001 */ addiu $a0, $a3, 1
|
||||
/* 0ACA48 800ABE48 24650001 */ addiu $a1, $v1, 1
|
||||
/* 0ACA4C 800ABE4C 44065000 */ mfc1 $a2, $f10
|
||||
/* 0ACA50 800ABE50 0C02B4B1 */ jal func_800AD2C4
|
||||
/* 0ACA54 800ABE54 00000000 */ nop
|
||||
.L800ABE58:
|
||||
/* 0ACA58 800ABE58 8FBF001C */ lw $ra, 0x1c($sp)
|
||||
.L800ABE5C:
|
||||
/* 0ACA5C 800ABE5C 8FB00018 */ lw $s0, 0x18($sp)
|
||||
/* 0ACA60 800ABE60 03E00008 */ jr $ra
|
||||
/* 0ACA64 800ABE64 27BD0020 */ addiu $sp, $sp, 0x20
|
||||
|
||||
@@ -30,7 +30,7 @@ glabel menu_game_select_init
|
||||
/* 08D178 8008C578 24040043 */ li $a0, 67
|
||||
/* 08D17C 8008C57C 0C01FFFB */ jal func_8007FFEC
|
||||
/* 08D180 8008C580 24040003 */ li $a0, 3
|
||||
/* 08D184 8008C584 0C03105C */ jal func_800C4170
|
||||
/* 08D184 8008C584 0C03105C */ jal load_font
|
||||
/* 08D188 8008C588 24040002 */ li $a0, 2
|
||||
/* 08D18C 8008C58C 0C0002CD */ jal play_music
|
||||
/* 08D190 8008C590 2404001A */ li $a0, 26
|
||||
|
||||
@@ -33,7 +33,7 @@ glabel menu_ghost_data_init
|
||||
/* 09A6D4 80099AD4 3C04800E */ lui $a0, %hi(D_800E174C) # $a0, 0x800e
|
||||
/* 09A6D8 80099AD8 0C027229 */ jal allocate_menu_images
|
||||
/* 09A6DC 80099ADC 2484174C */ addiu $a0, %lo(D_800E174C) # addiu $a0, $a0, 0x174c
|
||||
/* 09A6E0 80099AE0 0C03105C */ jal func_800C4170
|
||||
/* 09A6E0 80099AE0 0C03105C */ jal load_font
|
||||
/* 09A6E4 80099AE4 24040002 */ li $a0, 2
|
||||
/* 09A6E8 80099AE8 3C028012 */ lui $v0, %hi(D_80126550) # $v0, 0x8012
|
||||
/* 09A6EC 80099AEC 24426550 */ addiu $v0, %lo(D_80126550) # addiu $v0, $v0, 0x6550
|
||||
|
||||
@@ -10,7 +10,7 @@ glabel menu_track_select_init
|
||||
/* 08F3C0 8008E7C0 AFB20028 */ sw $s2, 0x28($sp)
|
||||
/* 08F3C4 8008E7C4 AFB10024 */ sw $s1, 0x24($sp)
|
||||
/* 08F3C8 8008E7C8 AFB00020 */ sw $s0, 0x20($sp)
|
||||
/* 08F3CC 8008E7CC 0C03105C */ jal func_800C4170
|
||||
/* 08F3CC 8008E7CC 0C03105C */ jal load_font
|
||||
/* 08F3D0 8008E7D0 24040002 */ li $a0, 2
|
||||
/* 08F3D4 8008E7D4 0C01BAA4 */ jal get_settings
|
||||
/* 08F3D8 8008E7D8 00000000 */ nop
|
||||
|
||||
@@ -301,7 +301,7 @@ glabel menu_trophy_race_rankings_init
|
||||
/* 099A54 80098E54 1420FFF5 */ bnez $at, .L80098E2C
|
||||
/* 099A58 80098E58 24840001 */ addiu $a0, $a0, 1
|
||||
.L80098E5C:
|
||||
/* 099A5C 80098E5C 0C03105C */ jal func_800C4170
|
||||
/* 099A5C 80098E5C 0C03105C */ jal load_font
|
||||
/* 099A60 80098E60 24040002 */ li $a0, 2
|
||||
/* 099A64 80098E64 0C0002F8 */ jal set_music_player_voice_limit
|
||||
/* 099A68 80098E68 24040018 */ li $a0, 24
|
||||
|
||||
@@ -75,7 +75,7 @@ glabel menu_trophy_race_round_init
|
||||
/* 098F78 80098378 3C01800E */ lui $at, %hi(D_800E0980) # $at, 0x800e
|
||||
/* 098F7C 8009837C 240B000A */ li $t3, 10
|
||||
/* 098F80 80098380 AC2B0980 */ sw $t3, %lo(D_800E0980)($at)
|
||||
/* 098F84 80098384 0C03105C */ jal func_800C4170
|
||||
/* 098F84 80098384 0C03105C */ jal load_font
|
||||
/* 098F88 80098388 24040002 */ li $a0, 2
|
||||
/* 098F8C 8009838C 0C0002F8 */ jal set_music_player_voice_limit
|
||||
/* 098F90 80098390 24040018 */ li $a0, 24
|
||||
|
||||
@@ -1,57 +0,0 @@
|
||||
/* This file was generated by generate_ld.py */
|
||||
|
||||
#ifndef _ASSET_SECTIONS_H_
|
||||
#define _ASSET_SECTIONS_H_
|
||||
|
||||
#define ASSET_UNKNOWN_0 0
|
||||
#define ASSET_UNKNOWN_0_TABLE 1
|
||||
#define ASSET_TEXTURES_3D 2
|
||||
#define ASSET_TEXTURES_3D_TABLE 3
|
||||
#define ASSET_TEXTURES_2D 4
|
||||
#define ASSET_TEXTURES_2D_TABLE 5
|
||||
#define ASSET_GAME_TEXT 6
|
||||
#define ASSET_GAME_TEXT_TABLE 7
|
||||
#define ASSET_MENU_TEXT 8
|
||||
#define ASSET_MENU_TEXT_TABLE 9
|
||||
#define ASSET_SCREENS 10
|
||||
#define ASSET_SCREENS_TABLE 11
|
||||
#define ASSET_SPRITES 12
|
||||
#define ASSET_SPRITES_TABLE 13
|
||||
#define ASSET_EMPTY_14 14
|
||||
#define ASSET_MISC 15
|
||||
#define ASSET_MISC_TABLE 16
|
||||
#define ASSET_HUD_ELEMENT_IDS 17
|
||||
#define ASSET_MENU_ELEMENT_IDS 18
|
||||
#define ASSET_UNKNOWN_19 19
|
||||
#define ASSET_LEVEL_OBJECT_MAPS_TABLE 20
|
||||
#define ASSET_LEVEL_OBJECT_MAPS 21
|
||||
#define ASSET_LEVEL_HEADERS_TABLE 22
|
||||
#define ASSET_LEVEL_HEADERS 23
|
||||
#define ASSET_LEVEL_NAMES_TABLE 24
|
||||
#define ASSET_LEVEL_NAMES 25
|
||||
#define ASSET_LEVEL_MODELS_TABLE 26
|
||||
#define ASSET_LEVEL_MODELS 27
|
||||
#define ASSET_OBJECT_MODELS_TABLE 28
|
||||
#define ASSET_OBJECT_MODELS 29
|
||||
#define ASSET_ANIMATION_IDS 30
|
||||
#define ASSET_OBJECT_ANIMATIONS_TABLE 31
|
||||
#define ASSET_OBJECT_ANIMATIONS 32
|
||||
#define ASSET_OBJECT_HEADERS_TABLE 33
|
||||
#define ASSET_OBJECT_HEADERS 34
|
||||
#define ASSET_LEVEL_OBJECT_TRANSLATION_TABLE 35
|
||||
#define ASSET_EMPTY_37_TABLE 36
|
||||
#define ASSET_EMPTY_37 37
|
||||
#define ASSET_AUDIO_TABLE 38
|
||||
#define ASSET_AUDIO 39
|
||||
#define ASSET_PARTICLES_TABLE 40
|
||||
#define ASSET_PARTICLES 41
|
||||
#define ASSET_PARTICLE_BEHAVIORS_TABLE 42
|
||||
#define ASSET_PARTICLE_BEHAVIORS 43
|
||||
#define ASSET_BINARY_44 44
|
||||
#define ASSET_BINARY_45 45
|
||||
#define ASSET_BINARY_46 46
|
||||
#define ASSET_BINARY_47 47
|
||||
#define ASSET_TTGHOSTS_TABLE 48
|
||||
#define ASSET_TTGHOSTS 49
|
||||
|
||||
#endif
|
||||
@@ -134,8 +134,8 @@ void alFxNew(ALFx *r, ALSynConfig *c, s16 bus, UNUSED ALHeap *hp) {
|
||||
j = 0;
|
||||
r->section_count = param[j++];
|
||||
r->length = param[j++];
|
||||
r->delay = allocate_from_main_pool_safe(sizeof(ALDelay) * r->section_count, COLOR_TAG_CYAN);
|
||||
r->base = allocate_from_main_pool_safe(sizeof(s16) * r->length, COLOR_TAG_CYAN);
|
||||
r->delay = allocate_from_main_pool_safe(sizeof(ALDelay) * r->section_count, COLOUR_TAG_CYAN);
|
||||
r->base = allocate_from_main_pool_safe(sizeof(s16) * r->length, COLOUR_TAG_CYAN);
|
||||
r->input = r->base;
|
||||
for ( k=0; k < r->length; k++)
|
||||
r->base[k] = 0;
|
||||
@@ -167,8 +167,8 @@ void alFxNew(ALFx *r, ALSynConfig *c, s16 bus, UNUSED ALHeap *hp) {
|
||||
d->rsgain = (((f32) param[j++])/CONVERT) * LENGTH;
|
||||
d->rsval = 1.0;
|
||||
d->rsdelta = 0.0;
|
||||
d->rs = allocate_from_main_pool_safe(sizeof(ALResampler), COLOR_TAG_CYAN);
|
||||
d->rs->state = allocate_from_main_pool_safe(sizeof(RESAMPLE_STATE), COLOR_TAG_CYAN);
|
||||
d->rs = allocate_from_main_pool_safe(sizeof(ALResampler), COLOUR_TAG_CYAN);
|
||||
d->rs->state = allocate_from_main_pool_safe(sizeof(RESAMPLE_STATE), COLOUR_TAG_CYAN);
|
||||
d->rs->delta = 0.0;
|
||||
d->rs->first = 1;
|
||||
} else {
|
||||
@@ -177,8 +177,8 @@ void alFxNew(ALFx *r, ALSynConfig *c, s16 bus, UNUSED ALHeap *hp) {
|
||||
j++;
|
||||
}
|
||||
if (param[j]) {
|
||||
d->lp = allocate_from_main_pool_safe(sizeof(ALLowPass), COLOR_TAG_CYAN);
|
||||
d->lp->fstate = allocate_from_main_pool_safe(sizeof(POLEF_STATE), COLOR_TAG_CYAN);
|
||||
d->lp = allocate_from_main_pool_safe(sizeof(ALLowPass), COLOUR_TAG_CYAN);
|
||||
d->lp->fstate = allocate_from_main_pool_safe(sizeof(POLEF_STATE), COLOUR_TAG_CYAN);
|
||||
d->lp->fc = param[j++];
|
||||
init_lpfilter(d->lp);
|
||||
} else {
|
||||
|
||||
+24
-31
@@ -2,7 +2,6 @@
|
||||
/* RAM_POS: 0x80076BA0 */
|
||||
|
||||
#include "asset_loading.h"
|
||||
#include "memory.h"
|
||||
|
||||
//#include "assets.h"
|
||||
#include "macros.h"
|
||||
@@ -28,7 +27,7 @@ void func_80076BA0(void) {
|
||||
osCreateMesgQueue(&gDmaMesgQueue, &gDmaMesg, 1);
|
||||
osCreatePiManager((OSPri)150, &gPIMesgQueue, gPIMesgBuf, ARRAY_COUNT(gPIMesgBuf));
|
||||
assetTableSize = &__ASSETS_LUT_END - &__ASSETS_LUT_START;
|
||||
gAssetsLookupTable = (u32 *)allocate_from_main_pool_safe(assetTableSize, COLOR_TAG_GRAY);
|
||||
gAssetsLookupTable = (u32 *)allocate_from_main_pool_safe(assetTableSize, COLOUR_TAG_GREY);
|
||||
func_80071478((u8 *)gAssetsLookupTable);
|
||||
dmacopy((u32)&__ASSETS_LUT_START, (u32)gAssetsLookupTable, (s32)assetTableSize);
|
||||
}
|
||||
@@ -48,7 +47,7 @@ u32 *load_asset_section_from_rom(u32 assetIndex) {
|
||||
index = assetIndex + gAssetsLookupTable;
|
||||
start = *index;
|
||||
size = *(index + 1) - start;
|
||||
out = (u32 *)allocate_from_main_pool_safe(size, COLOR_TAG_GRAY);
|
||||
out = (u32 *)allocate_from_main_pool_safe(size, COLOUR_TAG_GREY);
|
||||
if (out == 0) {
|
||||
return 0;
|
||||
}
|
||||
@@ -56,43 +55,37 @@ u32 *load_asset_section_from_rom(u32 assetIndex) {
|
||||
return out;
|
||||
}
|
||||
|
||||
#ifdef NON_EQUIVALENT
|
||||
// Unused.
|
||||
// This has regalloc & stack issues.
|
||||
u8 *load_compressed_asset_from_rom(u32 assetIndex, s32 arg1) {
|
||||
#ifdef NON_MATCHING
|
||||
// 99.8% matching; has a single stack issue. see: https://decomp.me/scratch/MyWiR
|
||||
u8 *load_compressed_asset_from_rom(u32 assetIndex, s32 extraMemory) {
|
||||
s32 size;
|
||||
s32 sp2C;
|
||||
s32 start;
|
||||
s32 totalSpace;
|
||||
u8 *gzipHeaderRamPos;
|
||||
u8 *out;
|
||||
s32 *index;
|
||||
u8 *temp_a1;
|
||||
u8 *temp_v0_2;
|
||||
u8 *temp_v0_3;
|
||||
u8 *temp_a0;
|
||||
|
||||
u8 *ramPos;
|
||||
if (gAssetsLookupTable[0] < assetIndex) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
assetIndex++;
|
||||
index = assetIndex + gAssetsLookupTable;
|
||||
start = *index;
|
||||
size = *(index + 1) - start;
|
||||
|
||||
temp_v0_2 = (u8 *)allocate_from_main_pool_safe(8, COLOR_TAG_WHITE);
|
||||
temp_a0 = start + &__ASSETS_LUT_END;
|
||||
|
||||
dmacopy(temp_a0, temp_v0_2, 8);
|
||||
sp2C = byteswap32(temp_v0_2) + arg1;
|
||||
free_from_memory_pool(temp_v0_2);
|
||||
temp_v0_3 = (u8 *)allocate_from_main_pool_safe(sp2C + arg1, COLOR_TAG_GRAY);
|
||||
|
||||
if (temp_v0_3 == NULL) {
|
||||
out = assetIndex + gAssetsLookupTable;
|
||||
index = out;
|
||||
start = index[0];
|
||||
size = index[1] - start;
|
||||
gzipHeaderRamPos = (u8 *) allocate_from_main_pool_safe(8, COLOUR_TAG_WHITE);
|
||||
dmacopy((u32) (start + (&__ASSETS_LUT_END)), gzipHeaderRamPos, 8);
|
||||
totalSpace = byteswap32(gzipHeaderRamPos) + extraMemory;
|
||||
free_from_memory_pool(gzipHeaderRamPos);
|
||||
out = (u8 *) allocate_from_main_pool_safe(totalSpace + extraMemory, COLOUR_TAG_GREY);
|
||||
if (out == NULL){
|
||||
return NULL;
|
||||
}
|
||||
temp_a1 = (temp_v0_3 + sp2C) - size;
|
||||
dmacopy(temp_a0, temp_a1, size);
|
||||
gzip_inflate(temp_a1, temp_v0_3);
|
||||
return temp_v0_3;
|
||||
ramPos = (out + totalSpace) - size;
|
||||
totalSpace = size;
|
||||
dmacopy((u32) (start + (&__ASSETS_LUT_END)), ramPos, size);
|
||||
gzip_inflate(ramPos, out);
|
||||
return out;
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/asset_loading/load_compressed_asset_from_rom.s")
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
|
||||
#include "types.h"
|
||||
#include "gzip.h"
|
||||
#include "memory.h"
|
||||
|
||||
void func_80076BA0(void);
|
||||
u32 *load_asset_section_from_rom(u32 assetIndex);
|
||||
|
||||
+9
-9
@@ -6,7 +6,7 @@
|
||||
|
||||
#include "types.h"
|
||||
#include "macros.h"
|
||||
#include "asset_sections.h"
|
||||
#include "asset_enums.h"
|
||||
#include "asset_loading.h"
|
||||
#include "audio_internal.h"
|
||||
#include "unknown_003260.h"
|
||||
@@ -107,31 +107,31 @@ void audio_init(OSSched *arg0) {
|
||||
alHeapInit(&gALHeap, gBssSectionStart, AUDIO_HEAP_SIZE);
|
||||
|
||||
addrPtr = load_asset_section_from_rom(ASSET_AUDIO_TABLE);
|
||||
ALBankFile_80115D14 = (ALBankFile *)allocate_from_main_pool_safe(addrPtr[2] - addrPtr[1], COLOR_TAG_CYAN);
|
||||
ALBankFile_80115D14 = (ALBankFile *)allocate_from_main_pool_safe(addrPtr[2] - addrPtr[1], COLOUR_TAG_CYAN);
|
||||
load_asset_to_address(ASSET_AUDIO, ALBankFile_80115D14, addrPtr[1], addrPtr[2] - addrPtr[1]);
|
||||
alBnkfNew(ALBankFile_80115D14, get_rom_offset_of_asset(ASSET_AUDIO, addrPtr[2]));
|
||||
|
||||
sSoundEffectsPoolSize = addrPtr[7] - addrPtr[6];
|
||||
sSoundEffectsPool = (unk80115D18 *)allocate_from_main_pool_safe(sSoundEffectsPoolSize, COLOR_TAG_CYAN);
|
||||
sSoundEffectsPool = (unk80115D18 *)allocate_from_main_pool_safe(sSoundEffectsPoolSize, COLOUR_TAG_CYAN);
|
||||
load_asset_to_address(ASSET_AUDIO, sSoundEffectsPool, addrPtr[6], sSoundEffectsPoolSize);
|
||||
D_80115D20 = sSoundEffectsPoolSize / 10;
|
||||
|
||||
sMusicPoolSize = addrPtr[6] - addrPtr[5];
|
||||
sMusicPool = (unk80115D1C *)allocate_from_main_pool_safe(sMusicPoolSize, COLOR_TAG_CYAN);
|
||||
sMusicPool = (unk80115D1C *)allocate_from_main_pool_safe(sMusicPoolSize, COLOUR_TAG_CYAN);
|
||||
load_asset_to_address(ASSET_AUDIO, sMusicPool, addrPtr[5], sMusicPoolSize);
|
||||
D_80115D24 = sMusicPoolSize / 3;
|
||||
|
||||
ALBankFile_80115D10 = (ALBankFile *)allocate_from_main_pool_safe(addrPtr[0], COLOR_TAG_CYAN);
|
||||
ALBankFile_80115D10 = (ALBankFile *)allocate_from_main_pool_safe(addrPtr[0], COLOUR_TAG_CYAN);
|
||||
load_asset_to_address(ASSET_AUDIO, ALBankFile_80115D10, 0, addrPtr[0]);
|
||||
alBnkfNew(ALBankFile_80115D10, get_rom_offset_of_asset(ASSET_AUDIO, addrPtr[0]));
|
||||
ALSeqFile_80115CF8 = (ALSeqFile *)alHeapDBAlloc(0, 0, &gALHeap, 1, 4);
|
||||
load_asset_to_address(ASSET_AUDIO, ALSeqFile_80115CF8, addrPtr[4], 4);
|
||||
|
||||
seqfSize = (ALSeqFile_80115CF8->seqCount) * 8 + 4;
|
||||
ALSeqFile_80115CF8 = allocate_from_main_pool_safe(seqfSize, COLOR_TAG_CYAN);
|
||||
ALSeqFile_80115CF8 = allocate_from_main_pool_safe(seqfSize, COLOUR_TAG_CYAN);
|
||||
load_asset_to_address(ASSET_AUDIO, ALSeqFile_80115CF8, addrPtr[4], seqfSize);
|
||||
alSeqFileNew(ALSeqFile_80115CF8, get_rom_offset_of_asset(ASSET_AUDIO, addrPtr[4]));
|
||||
D_80115D0C = (u32 *)allocate_from_main_pool_safe((ALSeqFile_80115CF8->seqCount) * 4, COLOR_TAG_CYAN);
|
||||
D_80115D0C = (u32 *)allocate_from_main_pool_safe((ALSeqFile_80115CF8->seqCount) * 4, COLOUR_TAG_CYAN);
|
||||
|
||||
for (iCnt = 0; iCnt < ALSeqFile_80115CF8->seqCount; iCnt++) {
|
||||
(u32 *)((u32)ALSeqFile_80115CF8 + 8 + iCnt * 8);
|
||||
@@ -156,8 +156,8 @@ void audio_init(OSSched *arg0) {
|
||||
gMusicPlayer = func_80002224(24, 120);
|
||||
set_voice_limit(gMusicPlayer, 18);
|
||||
gSndFxPlayer = func_80002224(16, 50);
|
||||
D_80115CFC = allocate_from_main_pool_safe(seq_max_len, COLOR_TAG_CYAN);
|
||||
D_80115D00 = allocate_from_main_pool_safe(seq_max_len, COLOR_TAG_CYAN);
|
||||
D_80115CFC = allocate_from_main_pool_safe(seq_max_len, COLOUR_TAG_CYAN);
|
||||
D_80115D00 = allocate_from_main_pool_safe(seq_max_len, COLOUR_TAG_CYAN);
|
||||
audConfig.unk04 = 150;
|
||||
audConfig.unk00 = 32;
|
||||
audConfig.maxChannels = 16;
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
#include "types.h"
|
||||
#include "macros.h"
|
||||
#include "f3ddkr.h"
|
||||
#include "asset_sections.h"
|
||||
#include "asset_enums.h"
|
||||
#include "memory.h"
|
||||
#include "PR/libultra.h"
|
||||
#include "video.h"
|
||||
|
||||
+8
-8
@@ -88,7 +88,7 @@ void load_fonts(void) {
|
||||
u32 *fontAssetData;
|
||||
s32 i;
|
||||
|
||||
fontAssetData = load_asset_section_from_rom(ASSET_BINARY_44);
|
||||
fontAssetData = load_asset_section_from_rom(ASSET_FONTS);
|
||||
|
||||
gFonts = (FontData *)(fontAssetData); // ???
|
||||
gNumberOfFonts = *(fontAssetData);
|
||||
@@ -98,7 +98,7 @@ void load_fonts(void) {
|
||||
gFonts[i].unk28[0] = 0;
|
||||
}
|
||||
|
||||
gDialogueBoxBackground = allocate_from_main_pool_safe(DIALOGUEBOXBACKGROUND_TOTAL_SIZE + unk8012A7EC_TOTAL_SIZE, COLOR_TAG_YELLOW);
|
||||
gDialogueBoxBackground = allocate_from_main_pool_safe(DIALOGUEBOXBACKGROUND_TOTAL_SIZE + unk8012A7EC_TOTAL_SIZE, COLOUR_TAG_YELLOW);
|
||||
D_8012A7EC = (unk8012A7EC *)((u8 *)gDialogueBoxBackground + DIALOGUEBOXBACKGROUND_TOTAL_SIZE);
|
||||
|
||||
for (i = 0; i < DIALOGUEBOXBACKGROUND_COUNT; i++) {
|
||||
@@ -146,8 +146,8 @@ void load_fonts(void) {
|
||||
(*D_8012A7EC)[i].textBGColourA = 0;
|
||||
(*D_8012A7EC)[i].unk1C = 0;
|
||||
}
|
||||
func_800C4170(0);
|
||||
func_800C4170(1);
|
||||
load_font(0);
|
||||
load_font(1);
|
||||
D_8012A7F0 = 0;
|
||||
}
|
||||
|
||||
@@ -157,7 +157,7 @@ void func_800C4164(s32 arg0) {
|
||||
|
||||
#ifdef NON_EQUIVALENT
|
||||
// Mostly has regalloc issues.
|
||||
void func_800C4170(s32 fontID) {
|
||||
void load_font(s32 fontID) {
|
||||
if (fontID < gNumberOfFonts) {
|
||||
FontData *fontData = &gFonts[fontID];
|
||||
fontData->unk28[0]++;
|
||||
@@ -175,12 +175,12 @@ void func_800C4170(s32 fontID) {
|
||||
}
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/font/func_800C4170.s")
|
||||
GLOBAL_ASM("asm/non_matchings/font/load_font.s")
|
||||
#endif
|
||||
|
||||
#ifdef NON_EQUIVALENT
|
||||
// Mostly has regalloc issues.
|
||||
void func_800C422C(s32 fontID) {
|
||||
void unload_font(s32 fontID) {
|
||||
if (fontID < gNumberOfFonts) {
|
||||
FontData *fontData = &gFonts[fontID];
|
||||
if (fontData->unk28[0] > 0) {
|
||||
@@ -201,7 +201,7 @@ void func_800C422C(s32 fontID) {
|
||||
}
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/font/func_800C422C.s")
|
||||
GLOBAL_ASM("asm/non_matchings/font/unload_font.s")
|
||||
#endif
|
||||
|
||||
/**
|
||||
|
||||
+3
-3
@@ -9,7 +9,7 @@
|
||||
#include "structs.h"
|
||||
#include "types.h"
|
||||
#include "macros.h"
|
||||
#include "asset_sections.h"
|
||||
#include "asset_enums.h"
|
||||
#include "libultra_internal.h"
|
||||
#include "f3ddkr.h"
|
||||
#include "textures_sprites.h"
|
||||
@@ -212,8 +212,8 @@ void parse_string_with_number(unsigned char *input, char *output, s32 number);
|
||||
|
||||
void s32_to_string(char** outString, s32 number); //Non Matching
|
||||
TextureHeader *func_800C4318(s32 font, u8 arg1); //Non Matching
|
||||
void func_800C4170(s32 fontID); //Non Matching
|
||||
void func_800C422C(s32 arg0); //Non Matching
|
||||
void load_font(s32 fontID); //Non Matching
|
||||
void unload_font(s32 arg0); //Non Matching
|
||||
void func_800C45A4(Gfx **dlist, DialogueBoxBackground *arg1, char *text, AlignmentFlags alignmentFlags, f32 arg4); //Non Matching
|
||||
s32 func_800C4DA0(u8 *text, s32 x, s32 font); //Non Matching
|
||||
void *render_dialogue_text(s32 arg0, s32 posX, s32 posY, char *text, s32 arg4, s32 arg5); //Non Matching
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user