Attempt to decompile texturesLoadConfigs
This commit is contained in:
parent
34297b1203
commit
2f59959fe5
2
ld/pd.ld
2
ld/pd.ld
|
|
@ -353,6 +353,8 @@ SECTIONS
|
|||
* -------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
__rampos = 0x02000000;
|
||||
|
||||
BEGIN_SEG(textureconfig)
|
||||
{
|
||||
build/ROMID/textureconfig/textureconfig.o (.data);
|
||||
|
|
|
|||
|
|
@ -1433,7 +1433,7 @@ char *filemgrMenuTextFileInUseDescription(struct menuitem *item)
|
|||
|
||||
Gfx *filemgrRenderPerfectHeadThumbnail(Gfx *gdl, struct menuitemrenderdata *renderdata, u32 arg2, u32 arg3)
|
||||
{
|
||||
struct var800ab5a8 *texture = func0f111460(g_MpPlayerNum, arg2, arg3 & 0xffff);
|
||||
struct textureconfig *texture = func0f111460(g_MpPlayerNum, arg2, arg3 & 0xffff);
|
||||
|
||||
if (texture) {
|
||||
gSPDisplayList(gdl++, &var800613a0);
|
||||
|
|
|
|||
|
|
@ -281,7 +281,7 @@ void func0f167e7c(s32 stagenum)
|
|||
func0f16d324();
|
||||
func0f011124(true);
|
||||
func0f013b80();
|
||||
func0f1735c0();
|
||||
texturesLoadConfigs();
|
||||
fontsLoadForCurrentStage();
|
||||
hudmsgSystemInit();
|
||||
|
||||
|
|
|
|||
|
|
@ -5787,7 +5787,7 @@ glabel func0f17353c
|
|||
);
|
||||
|
||||
GLOBAL_ASM(
|
||||
glabel func0f1735c0
|
||||
glabel texturesLoadConfigs
|
||||
/* f1735c0: 27bdffd8 */ addiu $sp,$sp,-40
|
||||
/* f1735c4: 3c0e0200 */ lui $t6,0x200
|
||||
/* f1735c8: 3c0f0200 */ lui $t7,0x200
|
||||
|
|
@ -5801,16 +5801,16 @@ glabel func0f1735c0
|
|||
/* f1735e8: 02202025 */ or $a0,$s1,$zero
|
||||
/* f1735ec: 0c0048f2 */ jal malloc
|
||||
/* f1735f0: 24050004 */ addiu $a1,$zero,0x4
|
||||
/* f1735f4: 3c03800b */ lui $v1,%hi(var800ab554)
|
||||
/* f1735f8: 2463b554 */ addiu $v1,$v1,%lo(var800ab554)
|
||||
/* f1735f4: 3c03800b */ lui $v1,%hi(g_TextureConfigSegment)
|
||||
/* f1735f8: 2463b554 */ addiu $v1,$v1,%lo(g_TextureConfigSegment)
|
||||
/* f1735fc: 3c05007f */ lui $a1,%hi(_textureconfigSegmentRomStart)
|
||||
/* f173600: ac620000 */ sw $v0,0x0($v1)
|
||||
/* f173604: 24a5b270 */ addiu $a1,$a1,%lo(_textureconfigSegmentRomStart)
|
||||
/* f173608: 00402025 */ or $a0,$v0,$zero
|
||||
/* f17360c: 0c003504 */ jal func0000d410
|
||||
/* f173610: 02203025 */ or $a2,$s1,$zero
|
||||
/* f173614: 3c18800b */ lui $t8,%hi(var800ab554)
|
||||
/* f173618: 8f18b554 */ lw $t8,%lo(var800ab554)($t8)
|
||||
/* f173614: 3c18800b */ lui $t8,%hi(g_TextureConfigSegment)
|
||||
/* f173618: 8f18b554 */ lw $t8,%lo(g_TextureConfigSegment)($t8)
|
||||
/* f17361c: 3c070200 */ lui $a3,0x200
|
||||
/* f173620: 3c06800b */ lui $a2,%hi(var800ab550)
|
||||
/* f173624: 3c080200 */ lui $t0,0x200
|
||||
|
|
@ -6072,3 +6072,86 @@ glabel func0f1735c0
|
|||
/* f1739f8: 00000000 */ nop
|
||||
/* f1739fc: 00000000 */ nop
|
||||
);
|
||||
|
||||
//extern u8 *_textureconfigSegmentRomStart;
|
||||
//extern u8 *_textureconfigSegmentStart;
|
||||
//extern u8 *_textureconfigSegmentEnd;
|
||||
|
||||
// Unfinished
|
||||
//void texturesLoadConfigs(void)
|
||||
//{
|
||||
// s32 stage;
|
||||
// u32 len = &_textureconfigSegmentEnd - &_textureconfigSegmentStart;
|
||||
// s32 i;
|
||||
//
|
||||
// g_TextureConfigSegment = malloc(len, 4);
|
||||
// func0000d410(g_TextureConfigSegment, &_textureconfigSegmentRomStart, len);
|
||||
//
|
||||
// var800ab550 = (u32)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart);
|
||||
// var800ab564 = (Gfx *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x000); // gdl000
|
||||
// var800ab568 = (Gfx *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x070); // gdl070
|
||||
// var800ab56c = (Gfx *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x0d8); // gdl0d8
|
||||
// var800ab570 = (u32 *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x148); // g_ExplosionTextureNums
|
||||
// var800ab560 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x1c0);
|
||||
// var800ab574 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x298);
|
||||
// var800ab578 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x2d4);
|
||||
// var800ab57c = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x2e0);
|
||||
// var800ab580 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x2ec);
|
||||
// var800ab584 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x2f8);
|
||||
// var800ab588 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x304);
|
||||
// var800ab58c = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x310);
|
||||
// var800ab590 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x31c);
|
||||
// var800ab594 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x334);
|
||||
// var800ab598 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x7b4);
|
||||
// var800ab59c = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x7d8);
|
||||
// var800ab5a0 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x820);
|
||||
// var800ab5a4 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x898);
|
||||
// var800ab5a8 = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0x8a4);
|
||||
// var800ab5ac = (struct textureconfig *)((u32)g_TextureConfigSegment - (u32)&_textureconfigSegmentStart + 0xb44);
|
||||
//
|
||||
// var800ab558 = (len - ((u32)&_textureconfigSegmentStart + 0x1c0)) + (u32)&_textureconfigSegmentStart;
|
||||
// var800ab55c = malloc(align16(var800ab558), 4);
|
||||
//
|
||||
// for (i = 0; i < var800ab558; i++) {
|
||||
// var800ab55c[i].texturenum = 0;
|
||||
// }
|
||||
//
|
||||
// for (i = 0; i < 15; i++) {
|
||||
// func0f173010(&var800ab570[i * 2 + 0], 0, 0);
|
||||
// func0f173010(&var800ab570[i * 2 + 1], 0, 0);
|
||||
// }
|
||||
//
|
||||
// func0f172f5c(var800ab564, 0, 0);
|
||||
// func0f172f5c(var800ab56c, 0, 0);
|
||||
// stage = mainGetStageNum();
|
||||
//
|
||||
// if (IS4MB() && stage != STAGE_TITLE && stage != STAGE_CITRAINING && stage != STAGE_4MBMENU) {
|
||||
// for (i = 0; i < 12; i++) {
|
||||
// func0f0b3988(&var800ab560[i]);
|
||||
// }
|
||||
//
|
||||
// for (i = 0; i < 5; i++) {
|
||||
// func0f0b3988(&var800ab574[i]);
|
||||
// }
|
||||
//
|
||||
// for (i = 0; i < 3; i++) {
|
||||
// func0f0b3988(&var800ab598[i]);
|
||||
// }
|
||||
//
|
||||
// for (i = 0; i < 1; i++) {
|
||||
// func0f0b3988(&var800ab588[i]);
|
||||
// }
|
||||
//
|
||||
// for (i = 0; i < 1; i++) {
|
||||
// func0f0b3988(&var800ab58c[i]);
|
||||
// }
|
||||
//
|
||||
// for (i = 0; i < 1; i++) {
|
||||
// func0f0b3988(&var800ab5ac[i]);
|
||||
// }
|
||||
//
|
||||
// for (i = 0; i < 1; i++) {
|
||||
// func0f0b3988(&var800ab5a4[i]);
|
||||
// }
|
||||
// }
|
||||
//}
|
||||
|
|
|
|||
|
|
@ -16338,29 +16338,29 @@ u32 var800ab544 = 0;
|
|||
u32 var800ab548 = 0;
|
||||
u32 var800ab54c = 0;
|
||||
u32 var800ab550 = 0;
|
||||
u32 var800ab554 = 0;
|
||||
u8 *g_TextureConfigSegment = NULL;
|
||||
u32 var800ab558 = 0;
|
||||
u32 var800ab55c = 0;
|
||||
u32 var800ab560 = 0;
|
||||
u32 var800ab564 = 0;
|
||||
u32 var800ab568 = 0;
|
||||
u32 var800ab56c = 0;
|
||||
u32 var800ab570 = 0;
|
||||
u32 var800ab574 = 0;
|
||||
u32 var800ab578 = 0;
|
||||
u32 var800ab57c = 0;
|
||||
u32 var800ab580 = 0;
|
||||
u32 var800ab584 = 0;
|
||||
u32 var800ab588 = 0;
|
||||
u32 var800ab58c = 0;
|
||||
u32 var800ab590 = 0;
|
||||
u32 var800ab594 = 0;
|
||||
u32 var800ab598 = 0;
|
||||
u32 var800ab59c = 0;
|
||||
u32 var800ab5a0 = 0;
|
||||
u32 var800ab5a4 = 0;
|
||||
struct var800ab5a8 *var800ab5a8 = NULL;
|
||||
u32 var800ab5ac = 0;
|
||||
struct textureconfig *var800ab55c = NULL;
|
||||
struct textureconfig *var800ab560 = NULL;
|
||||
Gfx *var800ab564 = NULL;
|
||||
Gfx *var800ab568 = NULL;
|
||||
Gfx *var800ab56c = NULL;
|
||||
u32 *var800ab570 = NULL;
|
||||
struct textureconfig *var800ab574 = NULL;
|
||||
struct textureconfig *var800ab578 = NULL;
|
||||
struct textureconfig *var800ab57c = NULL;
|
||||
struct textureconfig *var800ab580 = NULL;
|
||||
struct textureconfig *var800ab584 = NULL;
|
||||
struct textureconfig *var800ab588 = NULL;
|
||||
struct textureconfig *var800ab58c = NULL;
|
||||
struct textureconfig *var800ab590 = NULL;
|
||||
struct textureconfig *var800ab594 = NULL;
|
||||
struct textureconfig *var800ab598 = NULL;
|
||||
struct textureconfig *var800ab59c = NULL;
|
||||
struct textureconfig *var800ab5a0 = NULL;
|
||||
struct textureconfig *var800ab5a4 = NULL;
|
||||
struct textureconfig *var800ab5a8 = NULL;
|
||||
struct textureconfig *var800ab5ac = NULL;
|
||||
s32 var800ab5b0 = 0;
|
||||
u32 var800ab5b4 = 0;
|
||||
struct var800ab5b8 var800ab5b8[8] = {0};
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
|
||||
u32 func0f0abe70(void);
|
||||
u32 func0f0ac138(void);
|
||||
Gfx *func0f0ac4b8(Gfx *gdl, u32 arg1, f32 arg2, struct coord *arg3, u32 colour1, f32 arg5, struct coord *arg6, u32 colour2);
|
||||
Gfx *func0f0ac4b8(Gfx *gdl, struct textureconfig *arg1, f32 arg2, struct coord *arg3, u32 colour1, f32 arg5, struct coord *arg6, u32 colour2);
|
||||
u32 func0f0acb90(void);
|
||||
void bullettailTick(struct bullettail *bullettail);
|
||||
u32 func0f0adcc8(void);
|
||||
|
|
|
|||
|
|
@ -9,8 +9,8 @@ u32 func0f0b3468(void);
|
|||
u32 func0f0b34d8(void);
|
||||
u32 func0f0b3548(void);
|
||||
u32 func0f0b35b8(void);
|
||||
u32 func0f0b3988(void);
|
||||
void func0f0b39c0(Gfx **gdl, struct var800ab5a8 *arg1, u32 arg2, u32 arg3, u32 arg4, u32 arg5, u32 arg6);
|
||||
void func0f0b3988(struct textureconfig *config);
|
||||
void func0f0b39c0(Gfx **gdl, struct textureconfig *arg1, u32 arg2, u32 arg3, u32 arg4, u32 arg5, u32 arg6);
|
||||
void currentPlayerSetScreenSize(f32 width, f32 height);
|
||||
void currentPlayerSetScreenPosition(f32 left, f32 top);
|
||||
void currentPlayerSetPerspective(f32 near, f32 fovy, f32 aspect);
|
||||
|
|
|
|||
|
|
@ -29,12 +29,12 @@ u32 func0f172e70(void);
|
|||
u32 func0f172e8c(void);
|
||||
u32 func0f172f44(void);
|
||||
u32 func0f172f54(void);
|
||||
u32 func0f172f5c(void);
|
||||
u32 func0f173010(void);
|
||||
void func0f172f5c(Gfx *gdl, u32 arg1, u32 arg2);
|
||||
void func0f173010(u32 *texturenum, u32 arg1, u32 arg2);
|
||||
u32 func0f173434(void);
|
||||
u32 func0f1734e8(void);
|
||||
u32 func0f173520(void);
|
||||
u32 func0f17353c(void);
|
||||
void func0f1735c0(void);
|
||||
void texturesLoadConfigs(void);
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -24,6 +24,6 @@ u8 func0f110cf8(u8 arg0);
|
|||
u32 func0f110d90(void);
|
||||
void func0f110da8(void);
|
||||
u32 func0f110f4c(void);
|
||||
struct var800ab5a8 *func0f111460(s32 playernum, s32 arg1, s32 arg2);
|
||||
struct textureconfig *func0f111460(s32 playernum, s32 arg1, s32 arg2);
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -783,16 +783,29 @@ extern u32 var800ab540;
|
|||
extern u32 var800ab544;
|
||||
extern u32 var800ab548;
|
||||
extern u32 var800ab550;
|
||||
extern u32 var800ab554;
|
||||
extern u8 *g_TextureConfigSegment;
|
||||
extern u32 var800ab558;
|
||||
extern u32 var800ab55c;
|
||||
extern u32 var800ab560;
|
||||
extern u32 var800ab570;
|
||||
extern u32 var800ab574;
|
||||
extern u32 var800ab578;
|
||||
extern u32 var800ab57c;
|
||||
extern u32 var800ab5a0;
|
||||
extern struct var800ab5a8 *var800ab5a8; // indexed by some kind of texturenum
|
||||
extern struct textureconfig *var800ab55c;
|
||||
extern struct textureconfig *var800ab560;
|
||||
extern Gfx *var800ab564;
|
||||
extern Gfx *var800ab568;
|
||||
extern Gfx *var800ab56c;
|
||||
extern u32 *var800ab570;
|
||||
extern struct textureconfig *var800ab574;
|
||||
extern struct textureconfig *var800ab578;
|
||||
extern struct textureconfig *var800ab57c;
|
||||
extern struct textureconfig *var800ab580;
|
||||
extern struct textureconfig *var800ab584;
|
||||
extern struct textureconfig *var800ab588;
|
||||
extern struct textureconfig *var800ab58c;
|
||||
extern struct textureconfig *var800ab590;
|
||||
extern struct textureconfig *var800ab594;
|
||||
extern struct textureconfig *var800ab598;
|
||||
extern struct textureconfig *var800ab59c;
|
||||
extern struct textureconfig *var800ab5a0;
|
||||
extern struct textureconfig *var800ab5a4;
|
||||
extern struct textureconfig *var800ab5a8;
|
||||
extern struct textureconfig *var800ab5ac;
|
||||
extern s32 var800ab5b0;
|
||||
extern struct var800ab5b8 var800ab5b8[8];
|
||||
extern struct var800ab718 var800ab718[8];
|
||||
|
|
|
|||
|
|
@ -6191,12 +6191,6 @@ struct var80061420 {
|
|||
s32 unk04;
|
||||
};
|
||||
|
||||
struct var800ab5a8 {
|
||||
u32 unk00;
|
||||
u32 unk04;
|
||||
u32 unk08;
|
||||
};
|
||||
|
||||
struct var800ab5b8 {
|
||||
u32 unk00;
|
||||
u32 unk04;
|
||||
|
|
@ -6641,4 +6635,15 @@ struct var80067e6c {
|
|||
f32 value;
|
||||
};
|
||||
|
||||
struct textureconfig {
|
||||
u32 texturenum;
|
||||
u8 width;
|
||||
u8 height;
|
||||
u8 level;
|
||||
u8 format;
|
||||
u8 depth;
|
||||
u8 s;
|
||||
u8 t;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
#include <ultra64.h>
|
||||
#include "types.h"
|
||||
|
||||
Gfx gdl000[] = {
|
||||
gsDPPipeSync(),
|
||||
|
|
@ -56,17 +57,6 @@ u32 g_ExplosionTextureNums[] = {
|
|||
0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b,
|
||||
};
|
||||
|
||||
struct textureconfig {
|
||||
u32 texturenum;
|
||||
u8 width;
|
||||
u8 height;
|
||||
u8 level;
|
||||
u8 format;
|
||||
u8 depth;
|
||||
u8 s;
|
||||
u8 t;
|
||||
};
|
||||
|
||||
struct textureconfig g_TextureConfigs[] = {
|
||||
{ 0x0003, 48, 48, 0, G_IM_FMT_IA, G_IM_SIZ_8b, G_TX_CLAMP, G_TX_CLAMP },
|
||||
{ 0x0c27, 64, 64, 0, G_IM_FMT_IA, G_IM_SIZ_8b, G_TX_CLAMP, G_TX_CLAMP },
|
||||
|
|
|
|||
Loading…
Reference in New Issue