Decompile gfxAllocate

This commit is contained in:
Ryan Dwyer 2020-12-23 23:24:52 +10:00
parent 90adc13c2a
commit 25b44f1663
12 changed files with 31 additions and 35 deletions

View File

@ -202,7 +202,7 @@ void chrRemoveFromChrsC(s32 chrnum)
void func0f01e760(s32 arg0)
{
func0f1679f4(arg0 * 12);
gfxAllocate(arg0 * 12);
}
void setVar8006297c(u32 arg0)
@ -3839,7 +3839,7 @@ glabel var7f1a87a8
/* f0223c8: 8d8b0008 */ lw $t3,0x8($t4)
/* f0223cc: 8564000e */ lh $a0,0xe($t3)
/* f0223d0: 00046980 */ sll $t5,$a0,0x6
/* f0223d4: 0fc59e7d */ jal func0f1679f4
/* f0223d4: 0fc59e7d */ jal gfxAllocate
/* f0223d8: 01a02025 */ or $a0,$t5,$zero
/* f0223dc: afa200d4 */ sw $v0,0xd4($sp)
/* f0223e0: 27a400c4 */ addiu $a0,$sp,0xc4
@ -5441,7 +5441,7 @@ glabel var7f1a87d8
/* f023f78: 8dac0008 */ lw $t4,0x8($t5)
/* f023f7c: 8584000e */ lh $a0,0xe($t4)
/* f023f80: 0004c180 */ sll $t8,$a0,0x6
/* f023f84: 0fc59e7d */ jal func0f1679f4
/* f023f84: 0fc59e7d */ jal gfxAllocate
/* f023f88: 03002025 */ or $a0,$t8,$zero
/* f023f8c: 8fab01f0 */ lw $t3,0x1f0($sp)
/* f023f90: afa20220 */ sw $v0,0x220($sp)

View File

@ -327,7 +327,7 @@ glabel var7f1a7d8c
/* f001140: 00808025 */ or $s0,$a0,$zero
/* f001144: afbf001c */ sw $ra,0x1c($sp)
/* f001148: afa50044 */ sw $a1,0x44($sp)
/* f00114c: 0fc59e7d */ jal func0f1679f4
/* f00114c: 0fc59e7d */ jal gfxAllocate
/* f001150: 24040018 */ addiu $a0,$zero,0x18
/* f001154: 87a40046 */ lh $a0,0x46($sp)
/* f001158: 0fc00284 */ jal func0f000a10

View File

@ -2875,7 +2875,7 @@ glabel func0f009504
.L0f009608:
/* f009608: a439cb00 */ sh $t9,%lo(var8009cb00)($at)
/* f00960c: 8c440000 */ lw $a0,0x0($v0)
/* f009610: 0fc59e7d */ jal func0f1679f4
/* f009610: 0fc59e7d */ jal gfxAllocate
/* f009614: afa2002c */ sw $v0,0x2c($sp)
/* f009618: 3c05800b */ lui $a1,%hi(var800ab5a8)
/* f00961c: 8ca5b5a8 */ lw $a1,%lo(var800ab5a8)($a1)

View File

@ -9890,7 +9890,7 @@ glabel func0f09f848
.L0f09f90c:
/* f09f90c: 8504000e */ lh $a0,0xe($t0)
/* f09f910: 00044980 */ sll $t1,$a0,0x6
/* f09f914: 0fc59e7d */ jal func0f1679f4
/* f09f914: 0fc59e7d */ jal gfxAllocate
/* f09f918: 01202025 */ or $a0,$t1,$zero
/* f09f91c: ae62000c */ sw $v0,0xc($s3)
/* f09f920: 26240620 */ addiu $a0,$s1,0x620
@ -17023,7 +17023,7 @@ glabel var7f1aca70
/* f0a5c88: 8444000e */ lh $a0,0xe($v0)
/* f0a5c8c: afa20280 */ sw $v0,0x280($sp)
/* f0a5c90: 00045980 */ sll $t3,$a0,0x6
/* f0a5c94: 0fc59e7d */ jal func0f1679f4
/* f0a5c94: 0fc59e7d */ jal gfxAllocate
/* f0a5c98: 01602025 */ or $a0,$t3,$zero
/* f0a5c9c: afa20304 */ sw $v0,0x304($sp)
/* f0a5ca0: 8fa401c4 */ lw $a0,0x1c4($sp)

View File

@ -3056,7 +3056,7 @@ glabel var7f1acd6c
/* f0ae98c: 8444000e */ lh $a0,0xe($v0)
/* f0ae990: afa200f0 */ sw $v0,0xf0($sp)
/* f0ae994: 0004c180 */ sll $t8,$a0,0x6
/* f0ae998: 0fc59e7d */ jal func0f1679f4
/* f0ae998: 0fc59e7d */ jal gfxAllocate
/* f0ae99c: 03002025 */ or $a0,$t8,$zero
/* f0ae9a0: 3c098007 */ lui $t1,%hi(var80070534)
/* f0ae9a4: 25290534 */ addiu $t1,$t1,%lo(var80070534)

View File

@ -213,7 +213,7 @@ glabel func0f0d479c
/* f0d48fc: 3c0f0380 */ lui $t7,0x380
/* f0d4900: 0fc5db69 */ jal align16
/* f0d4904: 24040010 */ addiu $a0,$zero,0x10
/* f0d4908: 0fc59e7d */ jal func0f1679f4
/* f0d4908: 0fc59e7d */ jal gfxAllocate
/* f0d490c: 00402025 */ or $a0,$v0,$zero
/* f0d4910: 1040001c */ beqz $v0,.L0f0d4984
/* f0d4914: ae020000 */ sw $v0,0x0($s0)

View File

@ -4233,7 +4233,7 @@ glabel var7f1b2948
.L0f0f4908:
/* f0f4908: 8544000e */ lh $a0,0xe($t2)
/* f0f490c: 00045980 */ sll $t3,$a0,0x6
/* f0f4910: 0fc59e7d */ jal func0f1679f4
/* f0f4910: 0fc59e7d */ jal gfxAllocate
/* f0f4914: 01602025 */ or $a0,$t3,$zero
/* f0f4918: afa203b4 */ sw $v0,0x3b4($sp)
/* f0f491c: 8e0e0054 */ lw $t6,0x54($s0)

View File

@ -432,7 +432,7 @@ glabel func0f153ab0
/* f153ac0: 240e0001 */ addiu $t6,$zero,0x1
/* f153ac4: 3c018008 */ lui $at,%hi(var8007fb9c)
/* f153ac8: ac2efb9c */ sw $t6,%lo(var8007fb9c)($at)
/* f153acc: 0fc59e7d */ jal func0f1679f4
/* f153acc: 0fc59e7d */ jal gfxAllocate
/* f153ad0: 24041090 */ addiu $a0,$zero,0x1090
/* f153ad4: 3c05800a */ lui $a1,%hi(var800a4634)
/* f153ad8: 24a54634 */ addiu $a1,$a1,%lo(var800a4634)

View File

@ -528,18 +528,14 @@ u32 *gfxAllocateColours(s32 count)
return ptr;
}
GLOBAL_ASM(
glabel func0f1679f4
/* f1679f4: 3c06800b */ lui $a2,%hi(g_GfxMemPos)
/* f1679f8: 24c6a59c */ addiu $a2,$a2,%lo(g_GfxMemPos)
/* f1679fc: 8cc20000 */ lw $v0,0x0($a2)
/* f167a00: 2484000f */ addiu $a0,$a0,0xf
/* f167a04: 348e000f */ ori $t6,$a0,0xf
/* f167a08: 39cf000f */ xori $t7,$t6,0xf
/* f167a0c: 004fc021 */ addu $t8,$v0,$t7
/* f167a10: 03e00008 */ jr $ra
/* f167a14: acd80000 */ sw $t8,0x0($a2)
);
void *gfxAllocate(u32 size)
{
void *ptr = g_GfxMemPos;
size = ALIGN16(size);
g_GfxMemPos += size;
return ptr;
}
GLOBAL_ASM(
glabel func0f167a18

View File

@ -12177,7 +12177,7 @@ glabel func0f07079c
/* f070874: 8dcf0008 */ lw $t7,0x8($t6)
/* f070878: 85e4000e */ lh $a0,0xe($t7)
/* f07087c: 0004c180 */ sll $t8,$a0,0x6
/* f070880: 0fc59e7d */ jal func0f1679f4
/* f070880: 0fc59e7d */ jal gfxAllocate
/* f070884: 03002025 */ or $a0,$t8,$zero
/* f070888: 27aa0030 */ addiu $t2,$sp,0x30
/* f07088c: afa20084 */ sw $v0,0x84($sp)
@ -28374,7 +28374,7 @@ s32 objTick(struct prop *prop)
}
sp556 = true;
sp476.model0c = func0f1679f4(model->unk08->unk0e * 64);
sp476.model0c = gfxAllocate(model->unk08->unk0e * 64);
sp476.matrix = currentPlayerGetMatrix1740();
func0001cebc(&sp476, model);
@ -28472,7 +28472,7 @@ s32 objTick(struct prop *prop)
func00015a00(currentPlayerGetMatrix1740(), &sp248, &sp152);
sp556 = true;
sp312.model0c = func0f1679f4(model->unk08->unk0e * 64);
sp312.model0c = gfxAllocate(model->unk08->unk0e * 64);
sp312.matrix = &sp152;
func0001cebc(&sp312, model);
@ -28625,7 +28625,7 @@ s32 objTick(struct prop *prop)
}
if (sp556 == false) {
model->unk0c = func0f1679f4(model->unk08->unk0e * 64);
model->unk0c = gfxAllocate(model->unk08->unk0e * 64);
func0f07e2cc(prop);
func0001cb0c(model, model->unk08->rootnode);
}

View File

@ -1853,7 +1853,7 @@ glabel func0f017248
/* f017890: 85c4000e */ lh $a0,0xe($t6)
/* f017894: afa30150 */ sw $v1,0x150($sp)
/* f017898: 00047980 */ sll $t7,$a0,0x6
/* f01789c: 0fc59e7d */ jal func0f1679f4
/* f01789c: 0fc59e7d */ jal gfxAllocate
/* f0178a0: 01e02025 */ or $a0,$t7,$zero
/* f0178a4: afa20120 */ sw $v0,0x120($sp)
/* f0178a8: 02002025 */ or $a0,$s0,$zero
@ -2849,7 +2849,7 @@ glabel var7f1a8468
/* f018728: 0c006a87 */ jal modelGetNodeData
/* f01872c: afae00d8 */ sw $t6,0xd8($sp)
/* f018730: afa20160 */ sw $v0,0x160($sp)
/* f018734: 0fc59e7d */ jal func0f1679f4
/* f018734: 0fc59e7d */ jal gfxAllocate
/* f018738: 24040028 */ addiu $a0,$zero,0x28
/* f01873c: 8fb80160 */ lw $t8,0x160($sp)
/* f018740: 8fa60164 */ lw $a2,0x164($sp)
@ -2898,7 +2898,7 @@ glabel var7f1a8468
/* f0187e8: 0c006a87 */ jal modelGetNodeData
/* f0187ec: afb900d8 */ sw $t9,0xd8($sp)
/* f0187f0: afa20160 */ sw $v0,0x160($sp)
/* f0187f4: 0fc59e7d */ jal func0f1679f4
/* f0187f4: 0fc59e7d */ jal gfxAllocate
/* f0187f8: 24040028 */ addiu $a0,$zero,0x28
/* f0187fc: 8faf0160 */ lw $t7,0x160($sp)
/* f018800: 8fa60164 */ lw $a2,0x164($sp)
@ -2960,7 +2960,7 @@ glabel var7f1a8468
/* f0188d8: 0c006a87 */ jal modelGetNodeData
/* f0188dc: afb800d8 */ sw $t8,0xd8($sp)
/* f0188e0: afa20160 */ sw $v0,0x160($sp)
/* f0188e4: 0fc59e7d */ jal func0f1679f4
/* f0188e4: 0fc59e7d */ jal gfxAllocate
/* f0188e8: 24040028 */ addiu $a0,$zero,0x28
/* f0188ec: 8fb90160 */ lw $t9,0x160($sp)
/* f0188f0: 8fa60164 */ lw $a2,0x164($sp)
@ -3022,7 +3022,7 @@ glabel var7f1a8468
/* f0189c8: 0c006a87 */ jal modelGetNodeData
/* f0189cc: afae00d8 */ sw $t6,0xd8($sp)
/* f0189d0: afa20160 */ sw $v0,0x160($sp)
/* f0189d4: 0fc59e7d */ jal func0f1679f4
/* f0189d4: 0fc59e7d */ jal gfxAllocate
/* f0189d8: 24040028 */ addiu $a0,$zero,0x28
/* f0189dc: 8fb80160 */ lw $t8,0x160($sp)
/* f0189e0: 8fa60164 */ lw $a2,0x164($sp)
@ -3828,7 +3828,7 @@ glabel var7f1a84a0
/* f019994: 8d4d0008 */ lw $t5,0x8($t2)
/* f019998: 85a4000e */ lh $a0,0xe($t5)
/* f01999c: 0004c180 */ sll $t8,$a0,0x6
/* f0199a0: 0fc59e7d */ jal func0f1679f4
/* f0199a0: 0fc59e7d */ jal gfxAllocate
/* f0199a4: 03002025 */ or $a0,$t8,$zero
/* f0199a8: afa20160 */ sw $v0,0x160($sp)
/* f0199ac: 02002025 */ or $a0,$s0,$zero
@ -4242,7 +4242,7 @@ glabel var7f1a84bc
/* f01a0c0: 8d2a0008 */ lw $t2,0x8($t1)
/* f01a0c4: 8544000e */ lh $a0,0xe($t2)
/* f01a0c8: 00046180 */ sll $t4,$a0,0x6
/* f01a0cc: 0fc59e7d */ jal func0f1679f4
/* f01a0cc: 0fc59e7d */ jal gfxAllocate
/* f01a0d0: 01802025 */ or $a0,$t4,$zero
/* f01a0d4: afa20170 */ sw $v0,0x170($sp)
/* f01a0d8: 02002025 */ or $a0,$s0,$zero

View File

@ -24,7 +24,7 @@ struct gfxvtx *gfxAllocateVertices(s32 count);
void *gfxAllocateMatrix(void);
void *gfxAllocate4Words(s32 count);
u32 *gfxAllocateColours(s32 count);
struct model0c *func0f1679f4(s32 arg0);
void *gfxAllocate(u32 size);
void func0f167a18(void);
#endif