diff --git a/src/game/data/data_003dc0.c b/src/game/data/data_003dc0.c index dd794a2be..da3a7d91e 100644 --- a/src/game/data/data_003dc0.c +++ b/src/game/data/data_003dc0.c @@ -3390,93 +3390,103 @@ u32 var80061a70 = 0x00000000; u32 var80061a74 = 0x00000000; u32 var80061a78 = 0x00000000; u32 var80061a7c = 0x00000000; -u32 var80061a80 = (u32) &var80069d90; -u32 var80061a84 = 0x0000ffff; -u32 var80061a88 = 0x00000000; -u32 var80061a8c = 0x00000000; -u32 var80061a90 = 0x3f800000; -u32 var80061a94 = 0x00000000; -u32 var80061a98 = 0x00000000; -u32 var80061a9c = 0x3f800000; -u32 var80061aa0 = 0x3f800000; -u32 var80061aa4 = 0x3f800000; -u32 var80061aa8 = 0x00000000; -u32 var80061aac = 0x00000000; -u32 var80061ab0 = 0x3f800000; -u32 var80061ab4 = 0x3f800000; -u32 var80061ab8 = 0x3f000000; -u32 var80061abc = 0x00000000; -u32 var80061ac0 = 0x00000000; -u32 var80061ac4 = 0x3f000000; -u32 var80061ac8 = 0x3f000000; -u32 var80061acc = 0x3f000000; -u32 var80061ad0 = 0x00000000; -u32 var80061ad4 = 0x00000000; -u32 var80061ad8 = 0x3f000000; -u32 var80061adc = 0x3f000000; -u32 var80061ae0 = 0xffffffff; -u32 var80061ae4 = 0xffffffff; -u32 var80061ae8 = 0xffffffff; -u32 var80061aec = 0x3f800000; -u32 var80061af0 = 0x00000000; -u32 var80061af4 = (u32) &var8006aaa0; -u32 var80061af8 = 0x0000ffff; -u32 var80061afc = 0x00000000; -u32 var80061b00 = 0x00000000; -u32 var80061b04 = 0x3f800000; -u32 var80061b08 = 0x00000000; -u32 var80061b0c = 0x00000000; -u32 var80061b10 = 0x3f800000; -u32 var80061b14 = 0x3f800000; -u32 var80061b18 = 0x3f800000; -u32 var80061b1c = 0x00000000; -u32 var80061b20 = 0x00000000; -u32 var80061b24 = 0x3f800000; -u32 var80061b28 = 0x3f800000; -u32 var80061b2c = 0x3f000000; -u32 var80061b30 = 0x00000000; -u32 var80061b34 = 0x00000000; -u32 var80061b38 = 0x3f000000; -u32 var80061b3c = 0x3f000000; -u32 var80061b40 = 0x3f000000; -u32 var80061b44 = 0x00000000; -u32 var80061b48 = 0x00000000; -u32 var80061b4c = 0x3f000000; -u32 var80061b50 = 0x3f000000; -u32 var80061b54 = 0xffffffff; -u32 var80061b58 = 0xffffffff; -u32 var80061b5c = 0xffffffff; -u32 var80061b60 = 0x3f800000; -u32 var80061b64 = 0x00000000; -u32 var80061b68 = (u32) &var8006aae4; -u32 var80061b6c = 0x0000ffff; -u32 var80061b70 = 0x00000000; -u32 var80061b74 = 0x00000000; -u32 var80061b78 = 0x3f800000; -u32 var80061b7c = 0x00000000; -u32 var80061b80 = 0x00000000; -u32 var80061b84 = 0x3f800000; -u32 var80061b88 = 0x3f800000; -u32 var80061b8c = 0x3f800000; -u32 var80061b90 = 0x00000000; -u32 var80061b94 = 0x00000000; -u32 var80061b98 = 0x3f800000; -u32 var80061b9c = 0x3f800000; -u32 var80061ba0 = 0x3f000000; -u32 var80061ba4 = 0x00000000; -u32 var80061ba8 = 0x00000000; -u32 var80061bac = 0x3f000000; -u32 var80061bb0 = 0x3f000000; -u32 var80061bb4 = 0x3f000000; -u32 var80061bb8 = 0x00000000; -u32 var80061bbc = 0x00000000; -u32 var80061bc0 = 0x3f000000; -u32 var80061bc4 = 0x3f000000; -u32 var80061bc8 = 0xffffffff; -u32 var80061bcc = 0xffffffff; -u32 var80061bd0 = 0xffffffff; -u32 var80061bd4 = 0x3f800000; -u32 var80061bd8 = 0x00000000; + +struct monitorscreen var80061a80 = { + (u32) &var80069d90, + 0x0000ffff, + 0x00000000, + 0x00000000, + 0x3f800000, + 0x00000000, + 0x00000000, + 0x3f800000, + 0x3f800000, + 0x3f800000, + 0x00000000, + 0x00000000, + 0x3f800000, + 0x3f800000, + 0x3f000000, + 0x00000000, + 0x00000000, + 0x3f000000, + 0x3f000000, + 0x3f000000, + 0x00000000, + 0x00000000, + 0x3f000000, + 0x3f000000, + 0xffffffff, + 0xffffffff, + 0xffffffff, + 0x3f800000, + 0x00000000, +}; + +struct monitorscreen var80061af4 = { + (u32) &var8006aaa0, + 0x0000ffff, + 0x00000000, + 0x00000000, + 0x3f800000, + 0x00000000, + 0x00000000, + 0x3f800000, + 0x3f800000, + 0x3f800000, + 0x00000000, + 0x00000000, + 0x3f800000, + 0x3f800000, + 0x3f000000, + 0x00000000, + 0x00000000, + 0x3f000000, + 0x3f000000, + 0x3f000000, + 0x00000000, + 0x00000000, + 0x3f000000, + 0x3f000000, + 0xffffffff, + 0xffffffff, + 0xffffffff, + 0x3f800000, + 0x00000000, +}; + +struct monitorscreen var80061b68 = { + (u32) &var8006aae4, + 0x0000ffff, + 0x00000000, + 0x00000000, + 0x3f800000, + 0x00000000, + 0x00000000, + 0x3f800000, + 0x3f800000, + 0x3f800000, + 0x00000000, + 0x00000000, + 0x3f800000, + 0x3f800000, + 0x3f000000, + 0x00000000, + 0x00000000, + 0x3f000000, + 0x3f000000, + 0x3f000000, + 0x00000000, + 0x00000000, + 0x3f000000, + 0x3f000000, + 0xffffffff, + 0xffffffff, + 0xffffffff, + 0x3f800000, + 0x00000000, +}; + u32 var80061bdc = 0x00000000; f32 g_DoorScale = 1; u32 var80061be4 = 0x00000000; diff --git a/src/game/game_00c490.c b/src/game/game_00c490.c index e20935e9a..28f5f7f2a 100644 --- a/src/game/game_00c490.c +++ b/src/game/game_00c490.c @@ -595,123 +595,21 @@ void addBlockedPath(struct blockedpathobj *blockedpath) g_BlockedPaths = blockedpath; } -GLOBAL_ASM( -glabel func0f00cc8c -/* f00cc8c: 27bdfea0 */ addiu $sp,$sp,-352 -/* f00cc90: 3c0e8006 */ lui $t6,%hi(var80061a80) -/* f00cc94: 27a200ec */ addiu $v0,$sp,0xec -/* f00cc98: 25ce1a80 */ addiu $t6,$t6,%lo(var80061a80) -/* f00cc9c: 27a30078 */ addiu $v1,$sp,0x78 -/* f00cca0: 27a40004 */ addiu $a0,$sp,0x4 -/* f00cca4: 25d9006c */ addiu $t9,$t6,0x6c -/* f00cca8: 00404025 */ or $t0,$v0,$zero -.L0f00ccac: -/* f00ccac: 8dc10000 */ lw $at,0x0($t6) -/* f00ccb0: 25ce000c */ addiu $t6,$t6,0xc -/* f00ccb4: 2508000c */ addiu $t0,$t0,0xc -/* f00ccb8: ad01fff4 */ sw $at,-0xc($t0) -/* f00ccbc: 8dc1fff8 */ lw $at,-0x8($t6) -/* f00ccc0: ad01fff8 */ sw $at,-0x8($t0) -/* f00ccc4: 8dc1fffc */ lw $at,-0x4($t6) -/* f00ccc8: 15d9fff8 */ bne $t6,$t9,.L0f00ccac -/* f00cccc: ad01fffc */ sw $at,-0x4($t0) -/* f00ccd0: 8dc10000 */ lw $at,0x0($t6) -/* f00ccd4: 3c09800a */ lui $t1,%hi(var8009ce98) -/* f00ccd8: 2529ce98 */ addiu $t1,$t1,%lo(var8009ce98) -/* f00ccdc: ad010000 */ sw $at,0x0($t0) -/* f00cce0: 8dd90004 */ lw $t9,0x4($t6) -/* f00cce4: 00406825 */ or $t5,$v0,$zero -/* f00cce8: 244c006c */ addiu $t4,$v0,0x6c -/* f00ccec: ad190004 */ sw $t9,0x4($t0) -.L0f00ccf0: -/* f00ccf0: 8da10000 */ lw $at,0x0($t5) -/* f00ccf4: 25ad000c */ addiu $t5,$t5,0xc -/* f00ccf8: 2529000c */ addiu $t1,$t1,0xc -/* f00ccfc: ad21fff4 */ sw $at,-0xc($t1) -/* f00cd00: 8da1fff8 */ lw $at,-0x8($t5) -/* f00cd04: ad21fff8 */ sw $at,-0x8($t1) -/* f00cd08: 8da1fffc */ lw $at,-0x4($t5) -/* f00cd0c: 15acfff8 */ bne $t5,$t4,.L0f00ccf0 -/* f00cd10: ad21fffc */ sw $at,-0x4($t1) -/* f00cd14: 8da10000 */ lw $at,0x0($t5) -/* f00cd18: 3c188006 */ lui $t8,%hi(var80061af4) -/* f00cd1c: 27181af4 */ addiu $t8,$t8,%lo(var80061af4) -/* f00cd20: ad210000 */ sw $at,0x0($t1) -/* f00cd24: 8dac0004 */ lw $t4,0x4($t5) -/* f00cd28: 270e006c */ addiu $t6,$t8,0x6c -/* f00cd2c: 00604025 */ or $t0,$v1,$zero -/* f00cd30: ad2c0004 */ sw $t4,0x4($t1) -.L0f00cd34: -/* f00cd34: 8f010000 */ lw $at,0x0($t8) -/* f00cd38: 2718000c */ addiu $t8,$t8,0xc -/* f00cd3c: 2508000c */ addiu $t0,$t0,0xc -/* f00cd40: ad01fff4 */ sw $at,-0xc($t0) -/* f00cd44: 8f01fff8 */ lw $at,-0x8($t8) -/* f00cd48: ad01fff8 */ sw $at,-0x8($t0) -/* f00cd4c: 8f01fffc */ lw $at,-0x4($t8) -/* f00cd50: 170efff8 */ bne $t8,$t6,.L0f00cd34 -/* f00cd54: ad01fffc */ sw $at,-0x4($t0) -/* f00cd58: 8f010000 */ lw $at,0x0($t8) -/* f00cd5c: 3c0b800a */ lui $t3,%hi(var8009cf10) -/* f00cd60: 256bcf10 */ addiu $t3,$t3,%lo(var8009cf10) -/* f00cd64: ad010000 */ sw $at,0x0($t0) -/* f00cd68: 8f0e0004 */ lw $t6,0x4($t8) -/* f00cd6c: 00604825 */ or $t1,$v1,$zero -/* f00cd70: 246d006c */ addiu $t5,$v1,0x6c -/* f00cd74: ad0e0004 */ sw $t6,0x4($t0) -.L0f00cd78: -/* f00cd78: 8d210000 */ lw $at,0x0($t1) -/* f00cd7c: 2529000c */ addiu $t1,$t1,0xc -/* f00cd80: 256b000c */ addiu $t3,$t3,0xc -/* f00cd84: ad61fff4 */ sw $at,-0xc($t3) -/* f00cd88: 8d21fff8 */ lw $at,-0x8($t1) -/* f00cd8c: ad61fff8 */ sw $at,-0x8($t3) -/* f00cd90: 8d21fffc */ lw $at,-0x4($t1) -/* f00cd94: 152dfff8 */ bne $t1,$t5,.L0f00cd78 -/* f00cd98: ad61fffc */ sw $at,-0x4($t3) -/* f00cd9c: 8d210000 */ lw $at,0x0($t1) -/* f00cda0: 3c198006 */ lui $t9,%hi(var80061b68) -/* f00cda4: 27391b68 */ addiu $t9,$t9,%lo(var80061b68) -/* f00cda8: ad610000 */ sw $at,0x0($t3) -/* f00cdac: 8d2d0004 */ lw $t5,0x4($t1) -/* f00cdb0: 2738006c */ addiu $t8,$t9,0x6c -/* f00cdb4: 00804025 */ or $t0,$a0,$zero -/* f00cdb8: ad6d0004 */ sw $t5,0x4($t3) -.L0f00cdbc: -/* f00cdbc: 8f210000 */ lw $at,0x0($t9) -/* f00cdc0: 2739000c */ addiu $t9,$t9,0xc -/* f00cdc4: 2508000c */ addiu $t0,$t0,0xc -/* f00cdc8: ad01fff4 */ sw $at,-0xc($t0) -/* f00cdcc: 8f21fff8 */ lw $at,-0x8($t9) -/* f00cdd0: ad01fff8 */ sw $at,-0x8($t0) -/* f00cdd4: 8f21fffc */ lw $at,-0x4($t9) -/* f00cdd8: 1738fff8 */ bne $t9,$t8,.L0f00cdbc -/* f00cddc: ad01fffc */ sw $at,-0x4($t0) -/* f00cde0: 8f210000 */ lw $at,0x0($t9) -/* f00cde4: 3c0c800a */ lui $t4,%hi(var8009cf88) -/* f00cde8: 258ccf88 */ addiu $t4,$t4,%lo(var8009cf88) -/* f00cdec: ad010000 */ sw $at,0x0($t0) -/* f00cdf0: 8f380004 */ lw $t8,0x4($t9) -/* f00cdf4: 00805825 */ or $t3,$a0,$zero -/* f00cdf8: 2489006c */ addiu $t1,$a0,0x6c -/* f00cdfc: ad180004 */ sw $t8,0x4($t0) -.L0f00ce00: -/* f00ce00: 8d610000 */ lw $at,0x0($t3) -/* f00ce04: 256b000c */ addiu $t3,$t3,0xc -/* f00ce08: 258c000c */ addiu $t4,$t4,0xc -/* f00ce0c: ad81fff4 */ sw $at,-0xc($t4) -/* f00ce10: 8d61fff8 */ lw $at,-0x8($t3) -/* f00ce14: ad81fff8 */ sw $at,-0x8($t4) -/* f00ce18: 8d61fffc */ lw $at,-0x4($t3) -/* f00ce1c: 1569fff8 */ bne $t3,$t1,.L0f00ce00 -/* f00ce20: ad81fffc */ sw $at,-0x4($t4) -/* f00ce24: 8d610000 */ lw $at,0x0($t3) -/* f00ce28: ad810000 */ sw $at,0x0($t4) -/* f00ce2c: 8d690004 */ lw $t1,0x4($t3) -/* f00ce30: 27bd0160 */ addiu $sp,$sp,0x160 -/* f00ce34: 03e00008 */ jr $ra -/* f00ce38: ad890004 */ sw $t1,0x4($t4) -); +void func0f00cc8c(void) +{ + struct monitorscreen tmp1; + struct monitorscreen tmp2; + struct monitorscreen tmp3; + + tmp1 = var80061a80; + var8009ce98 = tmp1; + + tmp2 = var80061af4; + var8009cf10 = tmp2; + + tmp3 = var80061b68; + var8009cf88 = tmp3; +} void setupClearProxyMines(void) { diff --git a/src/gvars/gvars.c b/src/gvars/gvars.c index c8669efa9..2232398cf 100644 --- a/src/gvars/gvars.c +++ b/src/gvars/gvars.c @@ -14972,65 +14972,9 @@ u32 var8009ce90 = 0; u32 var8009ce94 = 0; struct monitorscreen var8009ce98 = {0}; u32 var8009cf0c = 0; -u32 var8009cf10 = 0; -u32 var8009cf14 = 0; -u32 var8009cf18 = 0; -u32 var8009cf1c = 0; -u32 var8009cf20 = 0; -u32 var8009cf24 = 0; -u32 var8009cf28 = 0; -u32 var8009cf2c = 0; -u32 var8009cf30 = 0; -u32 var8009cf34 = 0; -u32 var8009cf38 = 0; -u32 var8009cf3c = 0; -u32 var8009cf40 = 0; -u32 var8009cf44 = 0; -u32 var8009cf48 = 0; -u32 var8009cf4c = 0; -u32 var8009cf50 = 0; -u32 var8009cf54 = 0; -u32 var8009cf58 = 0; -u32 var8009cf5c = 0; -u32 var8009cf60 = 0; -u32 var8009cf64 = 0; -u32 var8009cf68 = 0; -u32 var8009cf6c = 0; -u32 var8009cf70 = 0; -u32 var8009cf74 = 0; -u32 var8009cf78 = 0; -u32 var8009cf7c = 0; -u32 var8009cf80 = 0; +struct monitorscreen var8009cf10 = {0}; u32 var8009cf84 = 0; -u32 var8009cf88 = 0; -u32 var8009cf8c = 0; -u32 var8009cf90 = 0; -u32 var8009cf94 = 0; -u32 var8009cf98 = 0; -u32 var8009cf9c = 0; -u32 var8009cfa0 = 0; -u32 var8009cfa4 = 0; -u32 var8009cfa8 = 0; -u32 var8009cfac = 0; -u32 var8009cfb0 = 0; -u32 var8009cfb4 = 0; -u32 var8009cfb8 = 0; -u32 var8009cfbc = 0; -u32 var8009cfc0 = 0; -u32 var8009cfc4 = 0; -u32 var8009cfc8 = 0; -u32 var8009cfcc = 0; -u32 var8009cfd0 = 0; -u32 var8009cfd4 = 0; -u32 var8009cfd8 = 0; -u32 var8009cfdc = 0; -u32 var8009cfe0 = 0; -u32 var8009cfe4 = 0; -u32 var8009cfe8 = 0; -u32 var8009cfec = 0; -u32 var8009cff0 = 0; -u32 var8009cff4 = 0; -u32 var8009cff8 = 0; +struct monitorscreen var8009cf88 = {0}; u32 var8009cffc = 0; u32 var8009d000 = 0; u32 var8009d004 = 0; diff --git a/src/include/game/data/data_000000.h b/src/include/game/data/data_000000.h index b3212acfd..62827aa5f 100644 --- a/src/include/game/data/data_000000.h +++ b/src/include/game/data/data_000000.h @@ -213,9 +213,9 @@ extern u32 var800616dc; extern u32 var800616e4; extern u32 var800616e8; extern u32 var80061710; -extern u32 var80061a80; -extern u32 var80061af4; -extern u32 var80061b68; +extern struct monitorscreen var80061a80; +extern struct monitorscreen var80061af4; +extern struct monitorscreen var80061b68; extern f32 g_DoorScale; extern u32 var80061bf0; diff --git a/src/include/game/game_00c490.h b/src/include/game/game_00c490.h index 6b2fc9354..96274cb1b 100644 --- a/src/include/game/game_00c490.h +++ b/src/include/game/game_00c490.h @@ -9,7 +9,7 @@ void addPadlockedDoor(struct padlockeddoorobj *link); void addSafeItem(struct safeitemobj *link); void addConditionalScenery(struct linksceneryobj *link); void addBlockedPath(struct blockedpathobj *link); -u32 func0f00cc8c(void); +void func0f00cc8c(void); void setupClearProxyMines(void); s32 setupCountCommandType(u32 type); void setupGenericObject(struct defaultobj *obj, s32 cmdindex); diff --git a/src/include/gvars/gvars.h b/src/include/gvars/gvars.h index e587ec200..9cd4cc5a7 100644 --- a/src/include/gvars/gvars.h +++ b/src/include/gvars/gvars.h @@ -572,8 +572,8 @@ extern u32 var8009ce6c; extern u32 var8009ce78; extern u32 var8009ce88; extern struct monitorscreen var8009ce98; -extern u32 var8009cf10; -extern u32 var8009cf88; +extern struct monitorscreen var8009cf10; +extern struct monitorscreen var8009cf88; extern struct stagesetup g_StageSetup; extern u8 *g_GeCreditsData; extern struct objective *g_Objectives[MAX_OBJECTIVES];