mirror of
https://gitlab.com/ryandwyer/perfect-dark
synced 2026-06-20 23:41:13 -04:00
Attempt to decompile viUpdateMode, and rename many VI symbols
This commit is contained in:
@@ -3818,8 +3818,8 @@ glabel amRender
|
||||
GLOBAL_ASM(
|
||||
glabel amRender
|
||||
/* f100ad0: 27bdfe28 */ addiu $sp,$sp,-472
|
||||
/* f100ad4: 3c0e8007 */ lui $t6,%hi(g_ViMode)
|
||||
/* f100ad8: 8dce06c8 */ lw $t6,%lo(g_ViMode)($t6)
|
||||
/* f100ad4: 3c0e8007 */ lui $t6,%hi(g_ViRes)
|
||||
/* f100ad8: 8dce06c8 */ lw $t6,%lo(g_ViRes)($t6)
|
||||
/* f100adc: 24010001 */ addiu $at,$zero,0x1
|
||||
/* f100ae0: afbf004c */ sw $ra,0x4c($sp)
|
||||
/* f100ae4: afbe0048 */ sw $s8,0x48($sp)
|
||||
@@ -6838,7 +6838,7 @@ glabel amRender
|
||||
// s16 tmp2;
|
||||
// s32 buddynum;
|
||||
//
|
||||
// if (g_ViMode == VIMODE_HIRES) {
|
||||
// if (g_ViRes == VIRES_HI) {
|
||||
// g_ScaleX = 2;
|
||||
// } else {
|
||||
// g_ScaleX = 1;
|
||||
|
||||
+2
-2
@@ -3159,7 +3159,7 @@ glabel func0f15a6f4
|
||||
/* f15ab5c: 35ad000e */ ori $t5,$t5,0xe
|
||||
/* f15ab60: 02208025 */ or $s0,$s1,$zero
|
||||
/* f15ab64: ae0d0000 */ sw $t5,0x0($s0)
|
||||
/* f15ab68: 0c002adb */ jal vi0000ab6c
|
||||
/* f15ab68: 0c002adb */ jal viGetPerspScale
|
||||
/* f15ab6c: 26310008 */ addiu $s1,$s1,0x8
|
||||
/* f15ab70: ae020004 */ sw $v0,0x4($s0)
|
||||
.L0f15ab74:
|
||||
@@ -3869,7 +3869,7 @@ glabel func0f15a6f4
|
||||
/* f1551bc: 35ad000e */ ori $t5,$t5,0xe
|
||||
/* f1551c0: 02208025 */ or $s0,$s1,$zero
|
||||
/* f1551c4: ae0d0000 */ sw $t5,0x0($s0)
|
||||
/* f1551c8: 0c002b3b */ jal vi0000ab6c
|
||||
/* f1551c8: 0c002b3b */ jal viGetPerspScale
|
||||
/* f1551cc: 26310008 */ addiu $s1,$s1,0x8
|
||||
/* f1551d0: ae020004 */ sw $v0,0x4($s0)
|
||||
.NB0f1551d4:
|
||||
|
||||
+6
-6
@@ -25363,7 +25363,7 @@ glabel var7f1aca90
|
||||
/* f0a7be0: 272f0008 */ addiu $t7,$t9,0x8
|
||||
/* f0a7be4: afaf014c */ sw $t7,0x14c($sp)
|
||||
/* f0a7be8: af290000 */ sw $t1,0x0($t9)
|
||||
/* f0a7bec: 0c002adb */ jal vi0000ab6c
|
||||
/* f0a7bec: 0c002adb */ jal viGetPerspScale
|
||||
/* f0a7bf0: afb90074 */ sw $t9,0x74($sp)
|
||||
/* f0a7bf4: 8fa30074 */ lw $v1,0x74($sp)
|
||||
/* f0a7bf8: ac620004 */ sw $v0,0x4($v1)
|
||||
@@ -26204,7 +26204,7 @@ glabel var7f1aca90
|
||||
/* f0a7be0: 272f0008 */ addiu $t7,$t9,0x8
|
||||
/* f0a7be4: afaf014c */ sw $t7,0x14c($sp)
|
||||
/* f0a7be8: af290000 */ sw $t1,0x0($t9)
|
||||
/* f0a7bec: 0c002adb */ jal vi0000ab6c
|
||||
/* f0a7bec: 0c002adb */ jal viGetPerspScale
|
||||
/* f0a7bf0: afb90074 */ sw $t9,0x74($sp)
|
||||
/* f0a7bf4: 8fa30074 */ lw $v1,0x74($sp)
|
||||
/* f0a7bf8: ac620004 */ sw $v0,0x4($v1)
|
||||
@@ -27036,7 +27036,7 @@ glabel var7f1aca90
|
||||
/* f0a590c: 25b80008 */ addiu $t8,$t5,0x8
|
||||
/* f0a5910: afb80144 */ sw $t8,0x144($sp)
|
||||
/* f0a5914: adb90000 */ sw $t9,0x0($t5)
|
||||
/* f0a5918: 0c002b3b */ jal vi0000ab6c
|
||||
/* f0a5918: 0c002b3b */ jal viGetPerspScale
|
||||
/* f0a591c: afad0070 */ sw $t5,0x70($sp)
|
||||
/* f0a5920: 8fa30070 */ lw $v1,0x70($sp)
|
||||
/* f0a5924: ac620004 */ sw $v0,0x4($v1)
|
||||
@@ -32032,14 +32032,14 @@ glabel bgunRenderHud
|
||||
/* f0aa980: 8fa20130 */ lw $v0,0x130($sp)
|
||||
/* f0aa984: 8c6e000c */ lw $t6,0xc($v1)
|
||||
.L0f0aa988:
|
||||
/* f0aa988: 3c0f8007 */ lui $t7,%hi(g_ViMode)
|
||||
/* f0aa988: 3c0f8007 */ lui $t7,%hi(g_ViRes)
|
||||
/* f0aa98c: 29c10005 */ slti $at,$t6,0x5
|
||||
/* f0aa990: 10200003 */ beqz $at,.L0f0aa9a0
|
||||
/* f0aa994: 00000000 */ nop
|
||||
/* f0aa998: 10000449 */ b .L0f0abac0
|
||||
/* f0aa99c: 8fa20130 */ lw $v0,0x130($sp)
|
||||
.L0f0aa9a0:
|
||||
/* f0aa9a0: 8def06c8 */ lw $t7,%lo(g_ViMode)($t7)
|
||||
/* f0aa9a0: 8def06c8 */ lw $t7,%lo(g_ViRes)($t7)
|
||||
/* f0aa9a4: 24020001 */ addiu $v0,$zero,0x1
|
||||
/* f0aa9a8: 144f0004 */ bne $v0,$t7,.L0f0aa9bc
|
||||
/* f0aa9ac: 24180002 */ addiu $t8,$zero,0x2
|
||||
@@ -34548,7 +34548,7 @@ const char var7f1ac19c[] = "%02d:%02d\n";
|
||||
//#if PAL
|
||||
// g_ScaleX = 1;
|
||||
//#else
|
||||
// if (g_ViMode == VIMODE_HIRES) {
|
||||
// if (g_ViRes == VIRES_HI) {
|
||||
// g_ScaleX = 2;
|
||||
// } else {
|
||||
// g_ScaleX = 1;
|
||||
|
||||
+17
-17
@@ -513,7 +513,7 @@ Gfx *bviewPrepareStaticI8(Gfx *gdl, u32 colour, u32 alpha)
|
||||
|
||||
Gfx *bviewRenderMotionBlur(Gfx *gdl, u32 colour, u32 alpha)
|
||||
{
|
||||
u8 *fb = vi2GetUnk28();
|
||||
u8 *fb = viGetFrontBuffer();
|
||||
s32 viewtop = viGetViewTop();
|
||||
s32 viewheight = viGetViewHeight();
|
||||
f32 fxxx;
|
||||
@@ -562,7 +562,7 @@ Gfx *bviewRenderMotionBlur(Gfx *gdl, u32 colour, u32 alpha)
|
||||
|
||||
Gfx *bviewRenderStatic(Gfx *gdl, u32 arg1, s32 arg2)
|
||||
{
|
||||
u8 *fb = vi2GetUnk28();
|
||||
u8 *fb = viGetFrontBuffer();
|
||||
s32 viewtop = viGetViewTop();
|
||||
s32 viewheight = viGetViewHeight();
|
||||
s32 viewwidth = viGetViewWidth();
|
||||
@@ -587,7 +587,7 @@ Gfx *bviewRenderStatic(Gfx *gdl, u32 arg1, s32 arg2)
|
||||
|
||||
Gfx *bviewRenderSlayerRocketLens(Gfx *gdl, u32 colour, u32 alpha)
|
||||
{
|
||||
u8 *fb = viGetUnk28();
|
||||
u8 *fb = viGetBackBuffer();
|
||||
s32 viewtop = viGetViewTop();
|
||||
s32 viewheight = viGetViewHeight();
|
||||
s32 viewwidth = viGetViewWidth();
|
||||
@@ -632,7 +632,7 @@ Gfx *bviewRenderSlayerRocketLens(Gfx *gdl, u32 colour, u32 alpha)
|
||||
|
||||
Gfx *bviewRenderFilmLens(Gfx *gdl, u32 colour, u32 alpha)
|
||||
{
|
||||
u8 *fb = viGetUnk28();
|
||||
u8 *fb = viGetBackBuffer();
|
||||
s32 viewtop = viGetViewTop();
|
||||
s32 viewheight = viGetViewHeight();
|
||||
s32 y;
|
||||
@@ -682,7 +682,7 @@ Gfx *bviewRenderFilmLens(Gfx *gdl, u32 colour, u32 alpha)
|
||||
*/
|
||||
Gfx *bviewRenderZoomBlur(Gfx *gdl, u32 colour, s32 alpha, f32 arg3, f32 arg4)
|
||||
{
|
||||
u8 *fb = vi2GetUnk28();
|
||||
u8 *fb = viGetFrontBuffer();
|
||||
s32 viewtop = viGetViewTop();
|
||||
s32 viewheight = viGetViewHeight();
|
||||
s32 viewwidth = viGetViewWidth();
|
||||
@@ -762,7 +762,7 @@ glabel var7f1b5f48
|
||||
/* f1439a8: f7b80038 */ sdc1 $f24,0x38($sp)
|
||||
/* f1439ac: f7b60030 */ sdc1 $f22,0x30($sp)
|
||||
/* f1439b0: f7b40028 */ sdc1 $f20,0x28($sp)
|
||||
/* f1439b4: 0c002a18 */ jal viGetUnk28
|
||||
/* f1439b4: 0c002a18 */ jal viGetBackBuffer
|
||||
/* f1439b8: afa70144 */ sw $a3,0x144($sp)
|
||||
/* f1439bc: 0c002e95 */ jal viGetViewTop
|
||||
/* f1439c0: afa20134 */ sw $v0,0x134($sp)
|
||||
@@ -1444,7 +1444,7 @@ glabel var7f1b5f48
|
||||
/* f142e44: f7b80038 */ sdc1 $f24,0x38($sp)
|
||||
/* f142e48: f7b60030 */ sdc1 $f22,0x30($sp)
|
||||
/* f142e4c: f7b40028 */ sdc1 $f20,0x28($sp)
|
||||
/* f142e50: 0c002ac7 */ jal viGetUnk28
|
||||
/* f142e50: 0c002ac7 */ jal viGetBackBuffer
|
||||
/* f142e54: afa7013c */ sw $a3,0x13c($sp)
|
||||
/* f142e58: 0c002f44 */ jal viGetViewTop
|
||||
/* f142e5c: afa2012c */ sw $v0,0x12c($sp)
|
||||
@@ -14762,7 +14762,7 @@ glabel bviewRenderNvLens
|
||||
/* f147320: afb3003c */ sw $s3,0x3c($sp)
|
||||
/* f147324: afb20038 */ sw $s2,0x38($sp)
|
||||
/* f147328: afb00030 */ sw $s0,0x30($sp)
|
||||
/* f14732c: 0c002ac7 */ jal viGetUnk28
|
||||
/* f14732c: 0c002ac7 */ jal viGetBackBuffer
|
||||
/* f147330: f7b40028 */ sdc1 $f20,0x28($sp)
|
||||
/* f147334: 0c002f26 */ jal viGetViewHeight
|
||||
/* f147338: afa2005c */ sw $v0,0x5c($sp)
|
||||
@@ -14922,7 +14922,7 @@ glabel bviewRenderNvLens
|
||||
// and regalloc near random().
|
||||
//Gfx *bviewRenderNvLens(Gfx *gdl)
|
||||
//{
|
||||
// u8 *fb = viGetUnk28();
|
||||
// u8 *fb = viGetBackBuffer();
|
||||
// s32 viewheight = viGetViewHeight();
|
||||
// s32 viewwidth = viGetViewWidth();
|
||||
// s32 viewtop = viGetViewTop();
|
||||
@@ -15009,7 +15009,7 @@ glabel bviewRenderIrLens
|
||||
/* f1475a0: afb1003c */ sw $s1,0x3c($sp)
|
||||
/* f1475a4: afb00038 */ sw $s0,0x38($sp)
|
||||
/* f1475a8: f7b60030 */ sdc1 $f22,0x30($sp)
|
||||
/* f1475ac: 0c002ac7 */ jal viGetUnk28
|
||||
/* f1475ac: 0c002ac7 */ jal viGetBackBuffer
|
||||
/* f1475b0: f7b40028 */ sdc1 $f20,0x28($sp)
|
||||
/* f1475b4: 0c002f26 */ jal viGetViewHeight
|
||||
/* f1475b8: 0040f025 */ or $s8,$v0,$zero
|
||||
@@ -15388,7 +15388,7 @@ glabel bviewRenderIrLens
|
||||
/* f147b30: f7b80038 */ sdc1 $f24,0x38($sp)
|
||||
/* f147b34: f7b60030 */ sdc1 $f22,0x30($sp)
|
||||
/* f147b38: f7b40028 */ sdc1 $f20,0x28($sp)
|
||||
/* f147b3c: 0c002ac7 */ jal viGetUnk28
|
||||
/* f147b3c: 0c002ac7 */ jal viGetBackBuffer
|
||||
/* f147b40: afa5008c */ sw $a1,0x8c($sp)
|
||||
/* f147b44: 0c002f44 */ jal viGetViewTop
|
||||
/* f147b48: 0040b025 */ or $s6,$v0,$zero
|
||||
@@ -15523,7 +15523,7 @@ glabel bviewRenderIrLens
|
||||
/* f141e34: afb1003c */ sw $s1,0x3c($sp)
|
||||
/* f141e38: afb00038 */ sw $s0,0x38($sp)
|
||||
/* f141e3c: f7b60030 */ sdc1 $f22,0x30($sp)
|
||||
/* f141e40: 0c002b27 */ jal viGetUnk28
|
||||
/* f141e40: 0c002b27 */ jal viGetBackBuffer
|
||||
/* f141e44: f7b40028 */ sdc1 $f20,0x28($sp)
|
||||
/* f141e48: 0c002f9b */ jal viGetViewHeight
|
||||
/* f141e4c: 0040f025 */ or $s8,$v0,$zero
|
||||
@@ -15872,7 +15872,7 @@ glabel bviewRenderIrLens
|
||||
/* f14234c: f7b80038 */ sdc1 $f24,0x38($sp)
|
||||
/* f142350: f7b60030 */ sdc1 $f22,0x30($sp)
|
||||
/* f142354: f7b40028 */ sdc1 $f20,0x28($sp)
|
||||
/* f142358: 0c002b27 */ jal viGetUnk28
|
||||
/* f142358: 0c002b27 */ jal viGetBackBuffer
|
||||
/* f14235c: afa5008c */ sw $a1,0x8c($sp)
|
||||
/* f142360: 0c002fb9 */ jal viGetViewTop
|
||||
/* f142364: 0040b025 */ or $s6,$v0,$zero
|
||||
@@ -15998,7 +15998,7 @@ glabel bviewRenderIrLens
|
||||
*/
|
||||
Gfx *bviewRenderRarePresents(Gfx *gdl)
|
||||
{
|
||||
u8 *fb = viGetUnk28();
|
||||
u8 *fb = viGetBackBuffer();
|
||||
s32 viewtop = viGetViewTop();
|
||||
s32 viewheight = viGetViewHeight();
|
||||
s32 viewwidth = viGetViewWidth();
|
||||
@@ -16029,7 +16029,7 @@ u8 var8007f878 = 0;
|
||||
#if VERSION >= VERSION_NTSC_1_0
|
||||
Gfx *bviewRenderHorizonScanner(Gfx *gdl)
|
||||
{
|
||||
u8 *fb = viGetUnk28();
|
||||
u8 *fb = viGetBackBuffer();
|
||||
s32 viewtop = viGetViewTop();
|
||||
s32 viewheight = viGetViewHeight();
|
||||
s32 viewwidth = viGetViewWidth();
|
||||
@@ -16075,7 +16075,7 @@ Gfx *bviewRenderHorizonScanner(Gfx *gdl)
|
||||
|
||||
strcpy(var800a41c0, "BinocularViewGfx");
|
||||
|
||||
if (!PAL && g_ViMode == VIMODE_HIRES) {
|
||||
if (!PAL && g_ViRes == VIRES_HI) {
|
||||
scale = 2;
|
||||
}
|
||||
|
||||
@@ -16265,7 +16265,7 @@ glabel var7f1b04c8nb
|
||||
/* f142654: afb10048 */ sw $s1,0x48($sp)
|
||||
/* f142658: afb00044 */ sw $s0,0x44($sp)
|
||||
/* f14265c: f7b60038 */ sdc1 $f22,0x38($sp)
|
||||
/* f142660: 0c002b27 */ jal viGetUnk28
|
||||
/* f142660: 0c002b27 */ jal viGetBackBuffer
|
||||
/* f142664: f7b40030 */ sdc1 $f20,0x30($sp)
|
||||
/* f142668: 0c002fb9 */ jal viGetViewTop
|
||||
/* f14266c: afa2015c */ sw $v0,0x15c($sp)
|
||||
|
||||
+3
-3
@@ -21348,7 +21348,7 @@ glabel func0f02bdf8
|
||||
/* f02c33c: 332c0fff */ andi $t4,$t9,0xfff
|
||||
/* f02c340: 3c01fd10 */ lui $at,0xfd10
|
||||
/* f02c344: 01816825 */ or $t5,$t4,$at
|
||||
/* f02c348: 0c002ac7 */ jal viGetUnk28
|
||||
/* f02c348: 0c002ac7 */ jal viGetBackBuffer
|
||||
/* f02c34c: ae4d0000 */ sw $t5,0x0($s2)
|
||||
/* f02c350: 2663000f */ addiu $v1,$s3,0xf
|
||||
/* f02c354: 00734823 */ subu $t1,$v1,$s3
|
||||
@@ -21497,13 +21497,13 @@ glabel func0f02bdf8
|
||||
/* f02c568: 02208025 */ or $s0,$s1,$zero
|
||||
/* f02c56c: ac800004 */ sw $zero,0x4($a0)
|
||||
/* f02c570: ac990000 */ sw $t9,0x0($a0)
|
||||
/* f02c574: 0c002ef1 */ jal viGetBufX
|
||||
/* f02c574: 0c002ef1 */ jal viGetBufWidth
|
||||
/* f02c578: 26310008 */ addiu $s1,$s1,0x8
|
||||
/* f02c57c: 244cffff */ addiu $t4,$v0,-1
|
||||
/* f02c580: 318d0fff */ andi $t5,$t4,0xfff
|
||||
/* f02c584: 3c01ff10 */ lui $at,0xff10
|
||||
/* f02c588: 01a17825 */ or $t7,$t5,$at
|
||||
/* f02c58c: 0c002ac7 */ jal viGetUnk28
|
||||
/* f02c58c: 0c002ac7 */ jal viGetBackBuffer
|
||||
/* f02c590: ae0f0000 */ sw $t7,0x0($s0)
|
||||
/* f02c594: 3c018000 */ lui $at,0x8000
|
||||
/* f02c598: 0041c021 */ addu $t8,$v0,$at
|
||||
|
||||
@@ -1197,7 +1197,7 @@ glabel var7f1b558c
|
||||
/* f12ad2c: 15c00006 */ bnez $t6,.L0f12ad48
|
||||
/* f12ad30: afa60070 */ sw $a2,0x70($sp)
|
||||
/* f12ad34: 44806000 */ mtc1 $zero,$f12
|
||||
/* f12ad38: 0c002a94 */ jal vi0000aa50
|
||||
/* f12ad38: 0c002a94 */ jal viShake
|
||||
/* f12ad3c: 00000000 */ nop
|
||||
/* f12ad40: 1000007a */ b .L0f12af2c
|
||||
/* f12ad44: 8fbf004c */ lw $ra,0x4c($sp)
|
||||
@@ -1327,7 +1327,7 @@ glabel var7f1b558c
|
||||
/* f12af14: 00000000 */ nop
|
||||
/* f12af18: 468084a0 */ cvt.s.w $f18,$f16
|
||||
/* f12af1c: 46149302 */ mul.s $f12,$f18,$f20
|
||||
/* f12af20: 0c002a94 */ jal vi0000aa50
|
||||
/* f12af20: 0c002a94 */ jal viShake
|
||||
/* f12af24: 00000000 */ nop
|
||||
/* f12af28: 8fbf004c */ lw $ra,0x4c($sp)
|
||||
.L0f12af2c:
|
||||
|
||||
@@ -11,7 +11,7 @@ void explosionsReset(void)
|
||||
s32 i;
|
||||
|
||||
var8007e4a0 = 0;
|
||||
vi0000aa50(0);
|
||||
viShake(0);
|
||||
|
||||
if (g_Explosions) {
|
||||
for (i = 0; i < 6; i++) {
|
||||
|
||||
@@ -513,7 +513,7 @@ glabel var7f1a827c
|
||||
/* f011950: afa00080 */ sw $zero,0x80($sp)
|
||||
/* f011954: 8e10d59c */ lw $s0,-0x2a64($s0)
|
||||
/* f011958: a3a0007b */ sb $zero,0x7b($sp)
|
||||
/* f01195c: 0fc2f254 */ jal viResetDefaultModeIf4Mb
|
||||
/* f01195c: 0fc2f254 */ jal viResetLoResIf4Mb
|
||||
/* f011960: e7a40088 */ swc1 $f4,0x88($sp)
|
||||
/* f011964: 0fc63d8b */ jal func0f18e558
|
||||
/* f011968: 00000000 */ nop
|
||||
@@ -1335,7 +1335,7 @@ glabel var7f1a827c
|
||||
/* f011930: afa00080 */ sw $zero,0x80($sp)
|
||||
/* f011934: 8e10d03c */ lw $s0,%lo(g_StageSetup+0xc)($s0)
|
||||
/* f011938: a3a0007b */ sb $zero,0x7b($sp)
|
||||
/* f01193c: 0fc2f0fc */ jal viResetDefaultModeIf4Mb
|
||||
/* f01193c: 0fc2f0fc */ jal viResetLoResIf4Mb
|
||||
/* f011940: e7a40088 */ swc1 $f4,0x88($sp)
|
||||
/* f011944: 0fc63956 */ jal func0f18e558
|
||||
/* f011948: 00000000 */ nop
|
||||
@@ -2156,7 +2156,7 @@ glabel var7f1a827c
|
||||
/* f011670: afa00080 */ sw $zero,0x80($sp)
|
||||
/* f011674: 8e10176c */ lw $s0,0x176c($s0)
|
||||
/* f011678: a3a0007b */ sb $zero,0x7b($sp)
|
||||
/* f01167c: 0fc2e831 */ jal viResetDefaultModeIf4Mb
|
||||
/* f01167c: 0fc2e831 */ jal viResetLoResIf4Mb
|
||||
/* f011680: e7a40088 */ swc1 $f4,0x88($sp)
|
||||
/* f011684: 0fc621c6 */ jal func0f18e558
|
||||
/* f011688: 00000000 */ sll $zero,$zero,0x0
|
||||
@@ -2934,7 +2934,7 @@ glabel var7f1a827c
|
||||
// s32 bodynum;
|
||||
// s32 headnum;
|
||||
//
|
||||
// viResetDefaultModeIf4Mb();
|
||||
// viResetLoResIf4Mb();
|
||||
// func0f18e558();
|
||||
//
|
||||
// g_InCutscene = false;
|
||||
|
||||
@@ -98,7 +98,7 @@ glabel func0f0155f0
|
||||
/* f01567c: 31f80fff */ andi $t8,$t7,0xfff
|
||||
/* f015680: 3c01ff10 */ lui $at,0xff10
|
||||
/* f015684: 0301c825 */ or $t9,$t8,$at
|
||||
/* f015688: 0c002ac7 */ jal viGetUnk28
|
||||
/* f015688: 0c002ac7 */ jal viGetBackBuffer
|
||||
/* f01568c: add90000 */ sw $t9,0x0($t6)
|
||||
/* f015690: 0c012d20 */ jal osVirtualToPhysical
|
||||
/* f015694: 00402025 */ or $a0,$v0,$zero
|
||||
@@ -612,7 +612,7 @@ Gfx *func0f0155f0(Gfx *gdl, s32 arg1, u32 arg2);
|
||||
// var80062494 = 0;
|
||||
// } else {
|
||||
// gDPSetCycleType(gdl++, G_CYC_FILL);
|
||||
// gDPSetColorImage(gdl++, G_IM_FMT_RGBA, G_IM_SIZ_16b, viGetWidth(), osVirtualToPhysical(viGetUnk28()));
|
||||
// gDPSetColorImage(gdl++, G_IM_FMT_RGBA, G_IM_SIZ_16b, viGetWidth(), osVirtualToPhysical(viGetBackBuffer()));
|
||||
// gDPSetFillColor(gdl++, 0x00010001);
|
||||
// gDPFillRectangle(gdl++, 200, 100, 439, 379);
|
||||
// }
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
Gfx *func0f01afc0(Gfx *gdl)
|
||||
{
|
||||
gDPSetCycleType(gdl++, G_CYC_FILL);
|
||||
gDPSetColorImage(gdl++, G_IM_FMT_RGBA, G_IM_SIZ_16b, viGetWidth(), osVirtualToPhysical((void *)viGetUnk28()));
|
||||
gDPSetColorImage(gdl++, G_IM_FMT_RGBA, G_IM_SIZ_16b, viGetWidth(), osVirtualToPhysical((void *)viGetBackBuffer()));
|
||||
gDPSetFillColor(gdl++, 0x00010001);
|
||||
gDPFillRectangle(gdl++, 0, 0, viGetWidth() - 1, viGetHeight() - 1);
|
||||
|
||||
|
||||
@@ -1858,8 +1858,8 @@ glabel var7f1a863c
|
||||
.word menuTickAll+0x168c # f01d5b4
|
||||
.text
|
||||
/* f01bf28: 27bdfe98 */ addiu $sp,$sp,-360
|
||||
/* f01bf2c: 3c0e8007 */ lui $t6,%hi(g_ViMode)
|
||||
/* f01bf30: 8dce06c8 */ lw $t6,%lo(g_ViMode)($t6)
|
||||
/* f01bf2c: 3c0e8007 */ lui $t6,%hi(g_ViRes)
|
||||
/* f01bf30: 8dce06c8 */ lw $t6,%lo(g_ViRes)($t6)
|
||||
/* f01bf34: afb60040 */ sw $s6,0x40($sp)
|
||||
/* f01bf38: 24160001 */ addiu $s6,$zero,0x1
|
||||
/* f01bf3c: afb00028 */ sw $s0,0x28($sp)
|
||||
@@ -5381,7 +5381,7 @@ glabel var7f1a863c
|
||||
// s32 anyopen = false;
|
||||
//
|
||||
// // bf5c
|
||||
// g_ScaleX = g_ViMode == VIMODE_HIRES ? 2 : 1;
|
||||
// g_ScaleX = g_ViRes == VIRES_HI ? 2 : 1;
|
||||
//
|
||||
// // bf7c
|
||||
// func0f0069dc();
|
||||
|
||||
+71
-71
@@ -142,7 +142,7 @@ struct vimode g_ViModes[] = {
|
||||
#endif
|
||||
};
|
||||
|
||||
s32 g_ViMode = VIMODE_DEFAULT;
|
||||
s32 g_ViRes = VIRES_LO;
|
||||
bool g_HiResEnabled = false;
|
||||
u32 var800706d0 = 0x00000000;
|
||||
u32 var800706d4 = 0x00000000;
|
||||
@@ -4389,27 +4389,27 @@ void currentPlayerTickExplode(void)
|
||||
}
|
||||
}
|
||||
|
||||
void viResetDefaultModeIf4Mb(void)
|
||||
void viResetLoResIf4Mb(void)
|
||||
{
|
||||
if (IS4MB()) {
|
||||
#if PAL
|
||||
g_ViModes[VIMODE_DEFAULT].fbwidth = 320;
|
||||
g_ViModes[VIMODE_DEFAULT].fbheight = 220;
|
||||
g_ViModes[VIMODE_DEFAULT].width = 320;
|
||||
g_ViModes[VIMODE_DEFAULT].yscale = 1;
|
||||
g_ViModes[VIMODE_DEFAULT].xscale = 1;
|
||||
g_ViModes[VIMODE_DEFAULT].fullheight = 220;
|
||||
g_ViModes[VIMODE_DEFAULT].fulltop = 0;
|
||||
g_ViModes[VIRES_LO].fbwidth = 320;
|
||||
g_ViModes[VIRES_LO].fbheight = 220;
|
||||
g_ViModes[VIRES_LO].width = 320;
|
||||
g_ViModes[VIRES_LO].yscale = 1;
|
||||
g_ViModes[VIRES_LO].xscale = 1;
|
||||
g_ViModes[VIRES_LO].fullheight = 220;
|
||||
g_ViModes[VIRES_LO].fulltop = 0;
|
||||
#else
|
||||
g_ViModes[VIMODE_DEFAULT].fbheight = 220;
|
||||
g_ViModes[VIMODE_DEFAULT].fulltop = 0;
|
||||
g_ViModes[VIMODE_DEFAULT].fullheight = 220;
|
||||
g_ViModes[VIRES_LO].fbheight = 220;
|
||||
g_ViModes[VIRES_LO].fulltop = 0;
|
||||
g_ViModes[VIRES_LO].fullheight = 220;
|
||||
#endif
|
||||
|
||||
g_ViModes[VIMODE_DEFAULT].wideheight = 180;
|
||||
g_ViModes[VIMODE_DEFAULT].widetop = 20;
|
||||
g_ViModes[VIMODE_DEFAULT].cinemaheight = 136;
|
||||
g_ViModes[VIMODE_DEFAULT].cinematop = 42;
|
||||
g_ViModes[VIRES_LO].wideheight = 180;
|
||||
g_ViModes[VIRES_LO].widetop = 20;
|
||||
g_ViModes[VIRES_LO].cinemaheight = 136;
|
||||
g_ViModes[VIRES_LO].cinematop = 42;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4420,13 +4420,13 @@ void optionsSetHiRes(bool enable)
|
||||
|
||||
s16 viGetFbWidth(void)
|
||||
{
|
||||
s16 width = g_ViModes[g_ViMode].fbwidth;
|
||||
s16 width = g_ViModes[g_ViRes].fbwidth;
|
||||
return width;
|
||||
}
|
||||
|
||||
s16 viGetFbHeight(void)
|
||||
{
|
||||
s16 height = g_ViModes[g_ViMode].fbheight;
|
||||
s16 height = g_ViModes[g_ViRes].fbheight;
|
||||
|
||||
if (g_Vars.fourmeg2player) {
|
||||
height = height >> 1;
|
||||
@@ -4460,7 +4460,7 @@ s16 currentPlayerGetViewportWidth(void)
|
||||
{
|
||||
if (PLAYERCOUNT() >= 3) {
|
||||
// 3/4 players
|
||||
width = g_ViModes[g_ViMode].width / 2;
|
||||
width = g_ViModes[g_ViRes].width / 2;
|
||||
|
||||
if (g_Vars.currentplayernum == 0 || g_Vars.currentplayernum == 2) {
|
||||
width--;
|
||||
@@ -4468,22 +4468,22 @@ s16 currentPlayerGetViewportWidth(void)
|
||||
} else if (PLAYERCOUNT() == 2) {
|
||||
if (optionsGetScreenSplit() == SCREENSPLIT_VERTICAL || g_Vars.fourmeg2player) {
|
||||
// 2 players vsplit
|
||||
width = g_ViModes[g_ViMode].width / 2;
|
||||
width = g_ViModes[g_ViRes].width / 2;
|
||||
|
||||
if (g_Vars.currentplayernum == 0) {
|
||||
width--;
|
||||
}
|
||||
} else {
|
||||
// 2 players full width
|
||||
width = g_ViModes[g_ViMode].width;
|
||||
width = g_ViModes[g_ViRes].width;
|
||||
}
|
||||
} else {
|
||||
// 1 player
|
||||
width = g_ViModes[g_ViMode].width;
|
||||
width = g_ViModes[g_ViRes].width;
|
||||
}
|
||||
} else {
|
||||
// Probably cutscene
|
||||
width = g_ViModes[g_ViMode].width;
|
||||
width = g_ViModes[g_ViRes].width;
|
||||
}
|
||||
|
||||
return width;
|
||||
@@ -4501,27 +4501,27 @@ s16 currentPlayerGetViewportLeft(void)
|
||||
if (PLAYERCOUNT() >= 3 && something != 0) {
|
||||
if (g_Vars.currentplayernum == 1 || g_Vars.currentplayernum == 3) {
|
||||
// 3/4 players - right side
|
||||
left = g_ViModes[g_ViMode].width / 2 + g_ViModes[g_ViMode].fbwidth - g_ViModes[g_ViMode].width;
|
||||
left = g_ViModes[g_ViRes].width / 2 + g_ViModes[g_ViRes].fbwidth - g_ViModes[g_ViRes].width;
|
||||
} else {
|
||||
// 3/4 players - left side
|
||||
left = g_ViModes[g_ViMode].fbwidth - g_ViModes[g_ViMode].width;
|
||||
left = g_ViModes[g_ViRes].fbwidth - g_ViModes[g_ViRes].width;
|
||||
}
|
||||
} else if (PLAYERCOUNT() == 2 && something != 0) {
|
||||
if (optionsGetScreenSplit() == SCREENSPLIT_VERTICAL || g_Vars.fourmeg2player) {
|
||||
if (g_Vars.currentplayernum == 1) {
|
||||
// 2 players vsplit - right side
|
||||
left = (g_ViModes[g_ViMode].width / 2) + g_ViModes[g_ViMode].fbwidth - g_ViModes[g_ViMode].width;
|
||||
left = (g_ViModes[g_ViRes].width / 2) + g_ViModes[g_ViRes].fbwidth - g_ViModes[g_ViRes].width;
|
||||
} else {
|
||||
// 2 players vsplit - left side
|
||||
left = g_ViModes[g_ViMode].fbwidth - g_ViModes[g_ViMode].width;
|
||||
left = g_ViModes[g_ViRes].fbwidth - g_ViModes[g_ViRes].width;
|
||||
}
|
||||
} else {
|
||||
// 2 players - full width
|
||||
left = g_ViModes[g_ViMode].fbwidth - g_ViModes[g_ViMode].width;
|
||||
left = g_ViModes[g_ViRes].fbwidth - g_ViModes[g_ViRes].width;
|
||||
}
|
||||
} else {
|
||||
// Full screen
|
||||
left = g_ViModes[g_ViMode].fbwidth - g_ViModes[g_ViMode].width;
|
||||
left = g_ViModes[g_ViRes].fbwidth - g_ViModes[g_ViRes].width;
|
||||
}
|
||||
|
||||
return left;
|
||||
@@ -4538,7 +4538,7 @@ s16 currentPlayerGetViewportHeight(void)
|
||||
&& !((g_InCutscene && !g_MainIsEndscreen) || menuGetRoot() == MENUROOT_COOPCONTINUE)
|
||||
#endif
|
||||
) {
|
||||
s16 tmp = g_ViModes[g_ViMode].fullheight;
|
||||
s16 tmp = g_ViModes[g_ViRes].fullheight;
|
||||
|
||||
if (IS4MB() && !g_Vars.fourmeg2player) {
|
||||
height = tmp;
|
||||
@@ -4557,21 +4557,21 @@ s16 currentPlayerGetViewportHeight(void)
|
||||
}
|
||||
} else {
|
||||
if (optionsGetEffectiveScreenSize() == SCREENSIZE_WIDE) {
|
||||
height = g_ViModes[g_ViMode].wideheight;
|
||||
height = g_ViModes[g_ViRes].wideheight;
|
||||
} else if (optionsGetEffectiveScreenSize() == SCREENSIZE_CINEMA) {
|
||||
height = g_ViModes[g_ViMode].cinemaheight;
|
||||
height = g_ViModes[g_ViRes].cinemaheight;
|
||||
} else if (g_InCutscene && !var8009dfc0) {
|
||||
if (var8009de2c >= 1) {
|
||||
f32 a = g_ViModes[g_ViMode].wideheight;
|
||||
f32 b = g_ViModes[g_ViMode].fullheight;
|
||||
f32 a = g_ViModes[g_ViRes].wideheight;
|
||||
f32 b = g_ViModes[g_ViRes].fullheight;
|
||||
a = a * (1.0f - g_CutsceneBarFrac);
|
||||
b = b * g_CutsceneBarFrac;
|
||||
height = a + b;
|
||||
} else {
|
||||
height = g_ViModes[g_ViMode].wideheight;
|
||||
height = g_ViModes[g_ViRes].wideheight;
|
||||
}
|
||||
} else {
|
||||
height = g_ViModes[g_ViMode].fullheight;
|
||||
height = g_ViModes[g_ViRes].fullheight;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4590,7 +4590,7 @@ s16 currentPlayerGetViewportTop(void)
|
||||
&& !((g_InCutscene && !g_MainIsEndscreen) || menuGetRoot() == MENUROOT_COOPCONTINUE)
|
||||
#endif
|
||||
) {
|
||||
top = g_ViModes[g_ViMode].fulltop;
|
||||
top = g_ViModes[g_ViRes].fulltop;
|
||||
|
||||
if (optionsGetScreenSplit() != SCREENSPLIT_VERTICAL || PLAYERCOUNT() != 2) {
|
||||
if (PLAYERCOUNT() == 2
|
||||
@@ -4598,43 +4598,43 @@ s16 currentPlayerGetViewportTop(void)
|
||||
&& optionsGetScreenSplit() != SCREENSPLIT_VERTICAL
|
||||
&& !g_Vars.fourmeg2player) {
|
||||
// 2 players hsplit - bottom side
|
||||
top = g_ViModes[g_ViMode].fulltop + g_ViModes[g_ViMode].fullheight / 2;
|
||||
top = g_ViModes[g_ViRes].fulltop + g_ViModes[g_ViRes].fullheight / 2;
|
||||
} else if (g_Vars.currentplayernum == 2 || g_Vars.currentplayernum == 3) {
|
||||
// 3/4 players - bottom side
|
||||
top = g_ViModes[g_ViMode].fulltop + g_ViModes[g_ViMode].fullheight / 2;
|
||||
top = g_ViModes[g_ViRes].fulltop + g_ViModes[g_ViRes].fullheight / 2;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (optionsGetEffectiveScreenSize() == SCREENSIZE_WIDE) {
|
||||
if (g_InCutscene && optionsGetCutsceneSubtitles() && g_Vars.stagenum != STAGE_CITRAINING) {
|
||||
if (var8009de2c >= 1) {
|
||||
f32 a = g_ViModes[g_ViMode].fulltop;
|
||||
f32 b = g_ViModes[g_ViMode].widetop;
|
||||
f32 a = g_ViModes[g_ViRes].fulltop;
|
||||
f32 b = g_ViModes[g_ViRes].widetop;
|
||||
a = a * (1.0f - g_CutsceneBarFrac);
|
||||
b = b * g_CutsceneBarFrac;
|
||||
top = a + b;
|
||||
} else {
|
||||
top = g_ViModes[g_ViMode].fulltop;
|
||||
top = g_ViModes[g_ViRes].fulltop;
|
||||
}
|
||||
} else {
|
||||
top = g_ViModes[g_ViMode].widetop;
|
||||
top = g_ViModes[g_ViRes].widetop;
|
||||
}
|
||||
} else if (optionsGetEffectiveScreenSize() == SCREENSIZE_CINEMA) {
|
||||
top = g_ViModes[g_ViMode].cinematop;
|
||||
top = g_ViModes[g_ViRes].cinematop;
|
||||
} else {
|
||||
if (g_InCutscene && !var8009dfc0
|
||||
&& (!optionsGetCutsceneSubtitles() || g_Vars.stagenum == STAGE_CITRAINING)) {
|
||||
if (var8009de2c >= 1) {
|
||||
f32 a = g_ViModes[g_ViMode].widetop;
|
||||
f32 b = g_ViModes[g_ViMode].fulltop;
|
||||
f32 a = g_ViModes[g_ViRes].widetop;
|
||||
f32 b = g_ViModes[g_ViRes].fulltop;
|
||||
a = a * (1.0f - g_CutsceneBarFrac);
|
||||
b = b * g_CutsceneBarFrac;
|
||||
top = a + b;
|
||||
} else {
|
||||
top = g_ViModes[g_ViMode].widetop;
|
||||
top = g_ViModes[g_ViRes].widetop;
|
||||
}
|
||||
} else {
|
||||
return g_ViModes[g_ViMode].fulltop;
|
||||
return g_ViModes[g_ViRes].fulltop;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -4994,7 +4994,7 @@ f32 func0f0bd358(void)
|
||||
s16 width = currentPlayerGetViewportWidth();
|
||||
|
||||
result = (f32)width / (f32)height;
|
||||
result = g_ViModes[g_ViMode].yscale * result;
|
||||
result = g_ViModes[g_ViRes].yscale * result;
|
||||
|
||||
return result;
|
||||
}
|
||||
@@ -5006,7 +5006,7 @@ void func0f0bd3c4(void)
|
||||
if (g_Vars.currentplayer->isdead == false) {
|
||||
func0f12acec(&g_Vars.currentplayer->bond2.unk10, &g_Vars.currentplayer->bond2.unk1c, &coord);
|
||||
} else {
|
||||
vi0000aa50(0);
|
||||
viShake(0);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5104,7 +5104,7 @@ void currentPlayerTickTeleport(f32 *aspectratio)
|
||||
void currentPlayerConfigureVi(void)
|
||||
{
|
||||
f32 ratio = func0f0bd358();
|
||||
g_ViMode = VIMODE_DEFAULT;
|
||||
g_ViRes = VIRES_LO;
|
||||
|
||||
func0f1531dc(false);
|
||||
|
||||
@@ -5113,13 +5113,13 @@ void currentPlayerConfigureVi(void)
|
||||
currentPlayerSetViewSize(currentPlayerGetViewportWidth(), currentPlayerGetViewportHeight());
|
||||
currentPlayerSetViewPosition(currentPlayerGetViewportLeft(), currentPlayerGetViewportTop());
|
||||
|
||||
vi0000aab0(g_ViModes[g_ViMode].xscale);
|
||||
viSetMode(g_ViModes[g_ViRes].xscale);
|
||||
|
||||
viSetFovAspectAndSize(60, ratio, currentPlayerGetViewportWidth(), currentPlayerGetViewportHeight());
|
||||
|
||||
viSetViewPosition(currentPlayerGetViewportLeft(), currentPlayerGetViewportTop());
|
||||
viSetXY(viGetFbWidth(), viGetFbHeight());
|
||||
viSetBuf(viGetFbWidth(), viGetFbHeight());
|
||||
viSetSize(viGetFbWidth(), viGetFbHeight());
|
||||
viSetBufSize(viGetFbWidth(), viGetFbHeight());
|
||||
}
|
||||
|
||||
const char var7f1ad524[] = "tps";
|
||||
@@ -5316,7 +5316,7 @@ glabel var7f1ad6ac
|
||||
/* f0be0a4: 01ee7823 */ subu $t7,$t7,$t6
|
||||
/* f0be0a8: 000f7880 */ sll $t7,$t7,0x2
|
||||
/* f0be0ac: 008f2021 */ addu $a0,$a0,$t7
|
||||
/* f0be0b0: 0c0029fd */ jal vi0000aab0
|
||||
/* f0be0b0: 0c0029fd */ jal viSetMode
|
||||
/* f0be0b4: 8c840960 */ lw $a0,0x960($a0)
|
||||
/* f0be0b8: 0fc2f2b4 */ jal currentPlayerGetViewportWidth
|
||||
/* f0be0bc: 00000000 */ nop
|
||||
@@ -5358,7 +5358,7 @@ glabel var7f1ad6ac
|
||||
/* f0be14c: 00057c03 */ sra $t7,$a1,0x10
|
||||
/* f0be150: 00047403 */ sra $t6,$a0,0x10
|
||||
/* f0be154: 01c02025 */ move $a0,$t6
|
||||
/* f0be158: 0c002e4a */ jal viSetXY
|
||||
/* f0be158: 0c002e4a */ jal viSetSize
|
||||
/* f0be15c: 01e02825 */ move $a1,$t7
|
||||
/* f0be160: 0fc2f272 */ jal viGetFbWidth
|
||||
/* f0be164: 00000000 */ nop
|
||||
@@ -5371,7 +5371,7 @@ glabel var7f1ad6ac
|
||||
/* f0be180: 00054c03 */ sra $t1,$a1,0x10
|
||||
/* f0be184: 0004cc03 */ sra $t9,$a0,0x10
|
||||
/* f0be188: 03202025 */ move $a0,$t9
|
||||
/* f0be18c: 0c002e39 */ jal viSetBuf
|
||||
/* f0be18c: 0c002e39 */ jal viSetBufSize
|
||||
/* f0be190: 01202825 */ move $a1,$t1
|
||||
/* f0be194: 0fc2ee63 */ jal currentPlayerUpdateColourScreenProperties
|
||||
/* f0be198: 00000000 */ nop
|
||||
@@ -7568,8 +7568,8 @@ glabel var7f1ad6ac
|
||||
/* f0bd918: afb10038 */ sw $s1,0x38($sp)
|
||||
/* f0bd91c: 3c0e8007 */ lui $t6,%hi(g_HiResEnabled)
|
||||
/* f0bd920: 8dce06cc */ lw $t6,%lo(g_HiResEnabled)($t6)
|
||||
/* f0bd924: 3c118007 */ lui $s1,%hi(g_ViMode)
|
||||
/* f0bd928: 263106c8 */ addiu $s1,$s1,%lo(g_ViMode)
|
||||
/* f0bd924: 3c118007 */ lui $s1,%hi(g_ViRes)
|
||||
/* f0bd928: 263106c8 */ addiu $s1,$s1,%lo(g_ViRes)
|
||||
/* f0bd92c: afbf004c */ sw $ra,0x4c($sp)
|
||||
/* f0bd930: afb50048 */ sw $s5,0x48($sp)
|
||||
/* f0bd934: afb40044 */ sw $s4,0x44($sp)
|
||||
@@ -7717,7 +7717,7 @@ glabel var7f1ad6ac
|
||||
/* f0bdb38: 030fc023 */ subu $t8,$t8,$t7
|
||||
/* f0bdb3c: 0018c080 */ sll $t8,$t8,0x2
|
||||
/* f0bdb40: 00982021 */ addu $a0,$a0,$t8
|
||||
/* f0bdb44: 0c002aac */ jal vi0000aab0
|
||||
/* f0bdb44: 0c002aac */ jal viSetMode
|
||||
/* f0bdb48: 8c8405d0 */ lw $a0,%lo(g_ViModes+0x10)($a0)
|
||||
/* f0bdb4c: 0fc2f155 */ jal currentPlayerGetViewportWidth
|
||||
/* f0bdb50: 00000000 */ nop
|
||||
@@ -7759,7 +7759,7 @@ glabel var7f1ad6ac
|
||||
/* f0bdbe0: 0005c403 */ sra $t8,$a1,0x10
|
||||
/* f0bdbe4: 00047c03 */ sra $t7,$a0,0x10
|
||||
/* f0bdbe8: 01e02025 */ or $a0,$t7,$zero
|
||||
/* f0bdbec: 0c002ef9 */ jal viSetXY
|
||||
/* f0bdbec: 0c002ef9 */ jal viSetSize
|
||||
/* f0bdbf0: 03002825 */ or $a1,$t8,$zero
|
||||
/* f0bdbf4: 0fc2f113 */ jal viGetFbWidth
|
||||
/* f0bdbf8: 00000000 */ nop
|
||||
@@ -7772,7 +7772,7 @@ glabel var7f1ad6ac
|
||||
/* f0bdc14: 00055403 */ sra $t2,$a1,0x10
|
||||
/* f0bdc18: 00044c03 */ sra $t1,$a0,0x10
|
||||
/* f0bdc1c: 01202025 */ or $a0,$t1,$zero
|
||||
/* f0bdc20: 0c002ee8 */ jal viSetBuf
|
||||
/* f0bdc20: 0c002ee8 */ jal viSetBufSize
|
||||
/* f0bdc24: 01402825 */ or $a1,$t2,$zero
|
||||
/* f0bdc28: 0fc2ed0b */ jal currentPlayerUpdateColourScreenProperties
|
||||
/* f0bdc2c: 00000000 */ nop
|
||||
@@ -10118,7 +10118,7 @@ glabel var7f1ad6ac
|
||||
/* f0bb7a0: 030fc023 */ subu $t8,$t8,$t7
|
||||
/* f0bb7a4: 0018c080 */ sll $t8,$t8,0x2
|
||||
/* f0bb7a8: 00982021 */ addu $a0,$a0,$t8
|
||||
/* f0bb7ac: 0c002b0c */ jal vi0000aab0
|
||||
/* f0bb7ac: 0c002b0c */ jal viSetMode
|
||||
/* f0bb7b0: 8c842c90 */ lw $a0,0x2c90($a0)
|
||||
/* f0bb7b4: 0fc2e865 */ jal currentPlayerGetViewportWidth
|
||||
/* f0bb7b8: 00000000 */ sll $zero,$zero,0x0
|
||||
@@ -10160,7 +10160,7 @@ glabel var7f1ad6ac
|
||||
/* f0bb848: 0005c403 */ sra $t8,$a1,0x10
|
||||
/* f0bb84c: 00047c03 */ sra $t7,$a0,0x10
|
||||
/* f0bb850: 01e02025 */ or $a0,$t7,$zero
|
||||
/* f0bb854: 0c002f6e */ jal viSetXY
|
||||
/* f0bb854: 0c002f6e */ jal viSetSize
|
||||
/* f0bb858: 03002825 */ or $a1,$t8,$zero
|
||||
/* f0bb85c: 0fc2e848 */ jal viGetFbWidth
|
||||
/* f0bb860: 00000000 */ sll $zero,$zero,0x0
|
||||
@@ -10173,7 +10173,7 @@ glabel var7f1ad6ac
|
||||
/* f0bb87c: 00055403 */ sra $t2,$a1,0x10
|
||||
/* f0bb880: 00044c03 */ sra $t1,$a0,0x10
|
||||
/* f0bb884: 01202025 */ or $a0,$t1,$zero
|
||||
/* f0bb888: 0c002f5d */ jal viSetBuf
|
||||
/* f0bb888: 0c002f5d */ jal viSetBufSize
|
||||
/* f0bb88c: 01402825 */ or $a1,$t2,$zero
|
||||
/* f0bb890: 0fc2e440 */ jal currentPlayerUpdateColourScreenProperties
|
||||
/* f0bb894: 00000000 */ sll $zero,$zero,0x0
|
||||
@@ -12301,14 +12301,14 @@ glabel var7f1ad6ac
|
||||
//{
|
||||
// f32 aspectratio;
|
||||
//
|
||||
// g_ViMode = g_HiResEnabled;
|
||||
// g_ViRes = g_HiResEnabled;
|
||||
//
|
||||
// if ((g_Vars.coopplayernum >= 0 || g_Vars.antiplayernum >= 0) && PLAYERCOUNT() > 1) {
|
||||
// g_ViMode = VIMODE_DEFAULT;
|
||||
// g_ViRes = VIRES_LO;
|
||||
// }
|
||||
//
|
||||
// // d9dc
|
||||
// if (g_ViMode == VIMODE_HIRES) {
|
||||
// if (g_ViRes == VIRES_HI) {
|
||||
// func0f1531dc(true);
|
||||
// } else {
|
||||
// func0f1531dc(false);
|
||||
@@ -12348,11 +12348,11 @@ glabel var7f1ad6ac
|
||||
// currentPlayerSetViewPosition(currentPlayerGetViewportLeft(), currentPlayerGetViewportTop());
|
||||
//
|
||||
// // db44
|
||||
// vi0000aab0(g_ViModes[g_ViMode].xscale);
|
||||
// viSetMode(g_ViModes[g_ViRes].xscale);
|
||||
// viSetFovAspectAndSize(60, aspectratio, currentPlayerGetViewportWidth(), currentPlayerGetViewportHeight());
|
||||
// viSetViewPosition(currentPlayerGetViewportLeft(), currentPlayerGetViewportTop());
|
||||
// viSetXY(viGetFbWidth(), viGetFbHeight());
|
||||
// viSetBuf(viGetFbWidth(), viGetFbHeight());
|
||||
// viSetSize(viGetFbWidth(), viGetFbHeight());
|
||||
// viSetBufSize(viGetFbWidth(), viGetFbHeight());
|
||||
// currentPlayerUpdateColourScreenProperties();
|
||||
// currentPlayerTickChrFade();
|
||||
// bmoveSetAutoAimY(optionsGetAutoAim(g_Vars.currentplayerstats->mpindex));
|
||||
|
||||
@@ -72,7 +72,7 @@ glabel func0f0e0770
|
||||
/* f0e0dcc: afb30024 */ sw $s3,0x24($sp)
|
||||
/* f0e0dd0: afb20020 */ sw $s2,0x20($sp)
|
||||
/* f0e0dd4: afb1001c */ sw $s1,0x1c($sp)
|
||||
/* f0e0dd8: 0c002a1c */ jal vi2GetUnk28
|
||||
/* f0e0dd8: 0c002a1c */ jal viGetFrontBuffer
|
||||
/* f0e0ddc: afb00018 */ sw $s0,0x18($sp)
|
||||
/* f0e0de0: 0c002e53 */ jal viGetWidth
|
||||
/* f0e0de4: 00408025 */ move $s0,$v0
|
||||
@@ -93,7 +93,7 @@ glabel func0f0e0770
|
||||
/* f0e0e20: 15e10007 */ bne $t7,$at,.PF0f0e0e40
|
||||
/* f0e0e24: 46083003 */ div.s $f0,$f6,$f8
|
||||
/* f0e0e28: afad0070 */ sw $t5,0x70($sp)
|
||||
/* f0e0e2c: 0c002a1c */ jal vi2GetUnk28
|
||||
/* f0e0e2c: 0c002a1c */ jal viGetFrontBuffer
|
||||
/* f0e0e30: e7a0006c */ swc1 $f0,0x6c($sp)
|
||||
/* f0e0e34: 8fad0070 */ lw $t5,0x70($sp)
|
||||
/* f0e0e38: c7a0006c */ lwc1 $f0,0x6c($sp)
|
||||
@@ -243,12 +243,12 @@ glabel func0f0e0770
|
||||
/* f0e078c: afb30024 */ sw $s3,0x24($sp)
|
||||
/* f0e0790: afb20020 */ sw $s2,0x20($sp)
|
||||
/* f0e0794: afb1001c */ sw $s1,0x1c($sp)
|
||||
/* f0e0798: 0c002acb */ jal vi2GetUnk28
|
||||
/* f0e0798: 0c002acb */ jal viGetFrontBuffer
|
||||
/* f0e079c: afb00018 */ sw $s0,0x18($sp)
|
||||
/* f0e07a0: 0c002f02 */ jal viGetWidth
|
||||
/* f0e07a4: 00408025 */ or $s0,$v0,$zero
|
||||
/* f0e07a8: 3c0e8007 */ lui $t6,%hi(g_ViMode)
|
||||
/* f0e07ac: 8dce06c8 */ lw $t6,%lo(g_ViMode)($t6)
|
||||
/* f0e07a8: 3c0e8007 */ lui $t6,%hi(g_ViRes)
|
||||
/* f0e07ac: 8dce06c8 */ lw $t6,%lo(g_ViRes)($t6)
|
||||
/* f0e07b0: 24110001 */ addiu $s1,$zero,0x1
|
||||
/* f0e07b4: 0002f840 */ sll $ra,$v0,0x1
|
||||
/* f0e07b8: 162e0005 */ bne $s1,$t6,.L0f0e07d0
|
||||
@@ -266,7 +266,7 @@ glabel func0f0e0770
|
||||
/* f0e07e0: 17010006 */ bne $t8,$at,.L0f0e07fc
|
||||
/* f0e07e4: 00000000 */ nop
|
||||
/* f0e07e8: afbf0070 */ sw $ra,0x70($sp)
|
||||
/* f0e07ec: 0c002acb */ jal vi2GetUnk28
|
||||
/* f0e07ec: 0c002acb */ jal viGetFrontBuffer
|
||||
/* f0e07f0: 00000000 */ nop
|
||||
/* f0e07f4: 8fbf0070 */ lw $ra,0x70($sp)
|
||||
/* f0e07f8: 00408025 */ or $s0,$v0,$zero
|
||||
|
||||
+12
-12
@@ -7304,7 +7304,7 @@ glabel var7f1b2948
|
||||
/* f0f400c: 46046032 */ c.eq.s $f12,$f4
|
||||
/* f0f4010: c4202938 */ lwc1 $f0,%lo(var7f1b2938)($at)
|
||||
/* f0f4014: 24639fc0 */ addiu $v1,$v1,%lo(g_Vars)
|
||||
/* f0f4018: 3c0b8007 */ lui $t3,%hi(g_ViMode)
|
||||
/* f0f4018: 3c0b8007 */ lui $t3,%hi(g_ViRes)
|
||||
/* f0f401c: 45030013 */ bc1tl .L0f0f406c
|
||||
/* f0f4020: c60c0540 */ lwc1 $f12,0x540($s0)
|
||||
/* f0f4024: 8c6d0000 */ lw $t5,0x0($v1)
|
||||
@@ -7378,7 +7378,7 @@ glabel var7f1b2948
|
||||
/* f0f4120: c60e051c */ lwc1 $f14,0x51c($s0)
|
||||
/* f0f4124: c60a0510 */ lwc1 $f10,0x510($s0)
|
||||
.L0f0f4128:
|
||||
/* f0f4128: 8d6b06c8 */ lw $t3,%lo(g_ViMode)($t3)
|
||||
/* f0f4128: 8d6b06c8 */ lw $t3,%lo(g_ViRes)($t3)
|
||||
/* f0f412c: 24010001 */ addiu $at,$zero,0x1
|
||||
/* f0f4130: e7aa0430 */ swc1 $f10,0x430($sp)
|
||||
/* f0f4134: c6120518 */ lwc1 $f18,0x518($s0)
|
||||
@@ -10145,43 +10145,43 @@ glabel func0f0f50fc
|
||||
/* f0f51b0: 00000000 */ nop
|
||||
/* f0f51b4: ace00000 */ sw $zero,0x0($a3)
|
||||
.L0f0f51b8:
|
||||
/* f0f51b8: 0c002ef1 */ jal viGetBufX
|
||||
/* f0f51b8: 0c002ef1 */ jal viGetBufWidth
|
||||
/* f0f51bc: afa40018 */ sw $a0,0x18($sp)
|
||||
/* f0f51c0: 3c188007 */ lui $t8,%hi(g_ScissorX1)
|
||||
/* f0f51c4: 8f181190 */ lw $t8,%lo(g_ScissorX1)($t8)
|
||||
/* f0f51c8: 0058082a */ slt $at,$v0,$t8
|
||||
/* f0f51cc: 10200005 */ beqz $at,.L0f0f51e4
|
||||
/* f0f51d0: 00000000 */ nop
|
||||
/* f0f51d4: 0c002ef1 */ jal viGetBufX
|
||||
/* f0f51d4: 0c002ef1 */ jal viGetBufWidth
|
||||
/* f0f51d8: 00000000 */ nop
|
||||
/* f0f51dc: 3c018007 */ lui $at,%hi(g_ScissorX1)
|
||||
/* f0f51e0: ac221190 */ sw $v0,%lo(g_ScissorX1)($at)
|
||||
.L0f0f51e4:
|
||||
/* f0f51e4: 0c002ef1 */ jal viGetBufX
|
||||
/* f0f51e4: 0c002ef1 */ jal viGetBufWidth
|
||||
/* f0f51e8: 00000000 */ nop
|
||||
/* f0f51ec: 3c198007 */ lui $t9,%hi(g_ScissorX2)
|
||||
/* f0f51f0: 8f391194 */ lw $t9,%lo(g_ScissorX2)($t9)
|
||||
/* f0f51f4: 0059082a */ slt $at,$v0,$t9
|
||||
/* f0f51f8: 10200005 */ beqz $at,.L0f0f5210
|
||||
/* f0f51fc: 00000000 */ nop
|
||||
/* f0f5200: 0c002ef1 */ jal viGetBufX
|
||||
/* f0f5200: 0c002ef1 */ jal viGetBufWidth
|
||||
/* f0f5204: 00000000 */ nop
|
||||
/* f0f5208: 3c018007 */ lui $at,%hi(g_ScissorX2)
|
||||
/* f0f520c: ac221194 */ sw $v0,%lo(g_ScissorX2)($at)
|
||||
.L0f0f5210:
|
||||
/* f0f5210: 0c002ef5 */ jal viGetBufY
|
||||
/* f0f5210: 0c002ef5 */ jal viGetBufHeight
|
||||
/* f0f5214: 00000000 */ nop
|
||||
/* f0f5218: 3c098007 */ lui $t1,%hi(g_ScissorY1)
|
||||
/* f0f521c: 8d291198 */ lw $t1,%lo(g_ScissorY1)($t1)
|
||||
/* f0f5220: 0049082a */ slt $at,$v0,$t1
|
||||
/* f0f5224: 10200005 */ beqz $at,.L0f0f523c
|
||||
/* f0f5228: 00000000 */ nop
|
||||
/* f0f522c: 0c002ef5 */ jal viGetBufY
|
||||
/* f0f522c: 0c002ef5 */ jal viGetBufHeight
|
||||
/* f0f5230: 00000000 */ nop
|
||||
/* f0f5234: 3c018007 */ lui $at,%hi(g_ScissorY1)
|
||||
/* f0f5238: ac221198 */ sw $v0,%lo(g_ScissorY1)($at)
|
||||
.L0f0f523c:
|
||||
/* f0f523c: 0c002ef5 */ jal viGetBufY
|
||||
/* f0f523c: 0c002ef5 */ jal viGetBufHeight
|
||||
/* f0f5240: 00000000 */ nop
|
||||
/* f0f5244: 3c078007 */ lui $a3,%hi(g_ScissorY2)
|
||||
/* f0f5248: 24e7119c */ addiu $a3,$a3,%lo(g_ScissorY2)
|
||||
@@ -10189,7 +10189,7 @@ glabel func0f0f50fc
|
||||
/* f0f5250: 0043082a */ slt $at,$v0,$v1
|
||||
/* f0f5254: 10200009 */ beqz $at,.L0f0f527c
|
||||
/* f0f5258: 00000000 */ nop
|
||||
/* f0f525c: 0c002ef5 */ jal viGetBufY
|
||||
/* f0f525c: 0c002ef5 */ jal viGetBufHeight
|
||||
/* f0f5260: 00000000 */ nop
|
||||
/* f0f5264: 3c018007 */ lui $at,%hi(g_ScissorY2)
|
||||
/* f0f5268: ac22119c */ sw $v0,%lo(g_ScissorY2)($at)
|
||||
@@ -25373,8 +25373,8 @@ glabel var7f1b2afc
|
||||
/* f0fbc38: 3c118007 */ lui $s1,%hi(g_MpPlayerNum)
|
||||
/* f0fbc3c: 26311448 */ addiu $s1,$s1,%lo(g_MpPlayerNum)
|
||||
/* f0fbc40: ae200000 */ sw $zero,0x0($s1)
|
||||
/* f0fbc44: 3c0e8007 */ lui $t6,%hi(g_ViMode)
|
||||
/* f0fbc48: 8dce06c8 */ lw $t6,%lo(g_ViMode)($t6)
|
||||
/* f0fbc44: 3c0e8007 */ lui $t6,%hi(g_ViRes)
|
||||
/* f0fbc48: 8dce06c8 */ lw $t6,%lo(g_ViRes)($t6)
|
||||
/* f0fbc4c: afb50048 */ sw $s5,0x48($sp)
|
||||
/* f0fbc50: 24020001 */ addiu $v0,$zero,0x1
|
||||
/* f0fbc54: 0080a825 */ or $s5,$a0,$zero
|
||||
|
||||
@@ -7912,14 +7912,14 @@ glabel var7f1b5108
|
||||
/* f125aec: 11e00005 */ beqz $t7,.L0f125b04
|
||||
/* f125af0: 00000000 */ nop
|
||||
/* f125af4: 8f18a2d4 */ lw $t8,%lo(g_Vars+0x314)($t8)
|
||||
/* f125af8: 3c198007 */ lui $t9,%hi(g_ViMode)
|
||||
/* f125af8: 3c198007 */ lui $t9,%hi(g_ViRes)
|
||||
/* f125afc: 13000003 */ beqz $t8,.L0f125b0c
|
||||
/* f125b00: 00000000 */ nop
|
||||
.L0f125b04:
|
||||
/* f125b04: 1000020d */ b .L0f12633c
|
||||
/* f125b08: 8fa20170 */ lw $v0,0x170($sp)
|
||||
.L0f125b0c:
|
||||
/* f125b0c: 8f3906c8 */ lw $t9,%lo(g_ViMode)($t9)
|
||||
/* f125b0c: 8f3906c8 */ lw $t9,%lo(g_ViRes)($t9)
|
||||
/* f125b10: 24010001 */ addiu $at,$zero,0x1
|
||||
/* f125b14: 17210002 */ bne $t9,$at,.L0f125b20
|
||||
/* f125b18: 00000000 */ nop
|
||||
@@ -9132,7 +9132,7 @@ glabel var7f1b511c
|
||||
/* f126458: af210000 */ sw $at,0x0($t9)
|
||||
/* f12645c: 8f010008 */ lw $at,0x8($t8)
|
||||
/* f126460: 8f08000c */ lw $t0,0xc($t8)
|
||||
/* f126464: 3c0c8007 */ lui $t4,%hi(g_ViMode)
|
||||
/* f126464: 3c0c8007 */ lui $t4,%hi(g_ViRes)
|
||||
/* f126468: af210008 */ sw $at,0x8($t9)
|
||||
/* f12646c: af28000c */ sw $t0,0xc($t9)
|
||||
/* f126470: 8f080014 */ lw $t0,0x14($t8)
|
||||
@@ -9140,7 +9140,7 @@ glabel var7f1b511c
|
||||
/* f126478: 4487b000 */ mtc1 $a3,$f22
|
||||
/* f12647c: af280014 */ sw $t0,0x14($t9)
|
||||
/* f126480: af210010 */ sw $at,0x10($t9)
|
||||
/* f126484: 8d8c06c8 */ lw $t4,%lo(g_ViMode)($t4)
|
||||
/* f126484: 8d8c06c8 */ lw $t4,%lo(g_ViRes)($t4)
|
||||
/* f126488: 4485d000 */ mtc1 $a1,$f26
|
||||
/* f12648c: 4486e000 */ mtc1 $a2,$f28
|
||||
/* f126490: 24010001 */ addiu $at,$zero,0x1
|
||||
|
||||
@@ -190,7 +190,7 @@ glabel func0f1766b4
|
||||
/* f1766ec: 8dce44f0 */ lw $t6,%lo(var800844f0)($t6)
|
||||
/* f1766f0: 00409025 */ or $s2,$v0,$zero
|
||||
/* f1766f4: 0000a025 */ or $s4,$zero,$zero
|
||||
/* f1766f8: 0c002ac7 */ jal viGetUnk28
|
||||
/* f1766f8: 0c002ac7 */ jal viGetBackBuffer
|
||||
/* f1766fc: afae004c */ sw $t6,0x4c($sp)
|
||||
/* f176700: 3c138009 */ lui $s3,%hi(g_BootBufferIndex0)
|
||||
/* f176704: 2673fa6c */ addiu $s3,$s3,%lo(g_BootBufferIndex0)
|
||||
@@ -208,7 +208,7 @@ glabel func0f1766b4
|
||||
/* f176734: 02008825 */ or $s1,$s0,$zero
|
||||
/* f176738: ac600004 */ sw $zero,0x4($v1)
|
||||
/* f17673c: ac760000 */ sw $s6,0x0($v1)
|
||||
/* f176740: 0c002ef1 */ jal viGetBufX
|
||||
/* f176740: 0c002ef1 */ jal viGetBufWidth
|
||||
/* f176744: 26100008 */ addiu $s0,$s0,0x8
|
||||
/* f176748: 2459ffff */ addiu $t9,$v0,-1
|
||||
/* f17674c: 33280fff */ andi $t0,$t9,0xfff
|
||||
@@ -455,13 +455,13 @@ glabel func0f1766b4
|
||||
/* f176b04: 02008825 */ or $s1,$s0,$zero
|
||||
/* f176b08: ac8b0000 */ sw $t3,0x0($a0)
|
||||
/* f176b0c: ac800004 */ sw $zero,0x4($a0)
|
||||
/* f176b10: 0c002ef1 */ jal viGetBufX
|
||||
/* f176b10: 0c002ef1 */ jal viGetBufWidth
|
||||
/* f176b14: 26100008 */ addiu $s0,$s0,0x8
|
||||
/* f176b18: 244cffff */ addiu $t4,$v0,-1
|
||||
/* f176b1c: 318d0fff */ andi $t5,$t4,0xfff
|
||||
/* f176b20: 3c01ff10 */ lui $at,0xff10
|
||||
/* f176b24: 01a17025 */ or $t6,$t5,$at
|
||||
/* f176b28: 0c002ac7 */ jal viGetUnk28
|
||||
/* f176b28: 0c002ac7 */ jal viGetBackBuffer
|
||||
/* f176b2c: ae2e0000 */ sw $t6,0x0($s1)
|
||||
/* f176b30: 3c018000 */ lui $at,0x8000
|
||||
/* f176b34: 00417821 */ addu $t7,$v0,$at
|
||||
@@ -543,12 +543,12 @@ glabel func0f1766b4
|
||||
// u32 sp44;
|
||||
// s32 i;
|
||||
//
|
||||
// viGetUnk28();
|
||||
// viGetBackBuffer();
|
||||
// sp44 = (u32)func0f176668(g_BootBufferIndex0);
|
||||
// g_BootBufferDirtyIndexes[g_BootBufferIndex0] = 1;
|
||||
//
|
||||
// gDPPipeSync(gdl++);
|
||||
// gDPSetColorImage(gdl++, G_IM_FMT_RGBA, G_IM_SIZ_16b, viGetBufX(), OS_PHYSICAL_TO_K0(sp44));
|
||||
// gDPSetColorImage(gdl++, G_IM_FMT_RGBA, G_IM_SIZ_16b, viGetBufWidth(), OS_PHYSICAL_TO_K0(sp44));
|
||||
// gDPSetScissor(gdl++, G_SC_NON_INTERLACE, 0, 0, 320, 240);
|
||||
// gDPSetCycleType(gdl++, G_CYC_COPY);
|
||||
// gDPSetTile(gdl++, G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0x0000, 5, 0, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOLOD);
|
||||
@@ -596,7 +596,7 @@ glabel func0f1766b4
|
||||
// gDPPipeSync(gdl++);
|
||||
// gDPLoadSync(gdl++);
|
||||
// gDPTileSync(gdl++);
|
||||
// gDPSetColorImage(gdl++, G_IM_FMT_RGBA, G_IM_SIZ_16b, viGetBufX(), OS_PHYSICAL_TO_K0(viGetUnk28()));
|
||||
// gDPSetColorImage(gdl++, G_IM_FMT_RGBA, G_IM_SIZ_16b, viGetBufWidth(), OS_PHYSICAL_TO_K0(viGetBackBuffer()));
|
||||
// gDPSetScissorFrac(gdl++, G_SC_NON_INTERLACE, 0, 0, viGetWidth() * 4.0f, viGetHeight() * 4.0f);
|
||||
// gSPSetGeometryMode(gdl++, G_ZBUFFER);
|
||||
// gDPSetTextureFilter(gdl++, G_TF_BILERP);
|
||||
|
||||
+1
-1
@@ -1050,7 +1050,7 @@ s32 gamefileSave(s32 device, s32 fileid, u16 deviceserial)
|
||||
pakSetBitflag(GAMEFILEFLAG_SCREENSIZE_CINEMA, g_GameFile.flags, optionsGetEffectiveScreenSize() == SCREENSIZE_CINEMA);
|
||||
#endif
|
||||
|
||||
pakSetBitflag(GAMEFILEFLAG_HIRES, g_GameFile.flags, g_ViMode == VIMODE_HIRES);
|
||||
pakSetBitflag(GAMEFILEFLAG_HIRES, g_GameFile.flags, g_ViRes == VIRES_HI);
|
||||
pakSetBitflag(GAMEFILEFLAG_INGAMESUBTITLES, g_GameFile.flags, optionsGetInGameSubtitles());
|
||||
pakSetBitflag(GAMEFILEFLAG_CUTSCENESUBTITLES, g_GameFile.flags, optionsGetCutsceneSubtitles());
|
||||
pakSetBitflag(GAMEFILEFLAG_LANGFILTERON, g_GameFile.flags, g_Vars.langfilteron);
|
||||
|
||||
+11
-11
@@ -1277,7 +1277,7 @@ s32 func0f0ddb1c(s32 *arg0, s32 arg1)
|
||||
if (PLAYERCOUNT() == 1 || (PLAYERCOUNT() == 2 && g_InCutscene && !g_MainIsEndscreen)) {
|
||||
result -= 16;
|
||||
|
||||
if (g_ViMode == VIMODE_HIRES) {
|
||||
if (g_ViRes == VIRES_HI) {
|
||||
result -= 16;
|
||||
}
|
||||
}
|
||||
@@ -2892,8 +2892,8 @@ glabel hudmsgCreateFromArgs
|
||||
.L0f0defbc:
|
||||
/* f0defbc: 04c100e3 */ bgez $a2,.L0f0df34c
|
||||
.L0f0defc0:
|
||||
/* f0defc0: 3c0a8007 */ lui $t2,%hi(g_ViMode)
|
||||
/* f0defc4: 8d4a06c8 */ lw $t2,%lo(g_ViMode)($t2)
|
||||
/* f0defc0: 3c0a8007 */ lui $t2,%hi(g_ViRes)
|
||||
/* f0defc4: 8d4a06c8 */ lw $t2,%lo(g_ViRes)($t2)
|
||||
/* f0defc8: 24030001 */ addiu $v1,$zero,0x1
|
||||
/* f0defcc: 3c048007 */ lui $a0,%hi(g_NumHudMessages)
|
||||
/* f0defd0: 8c840fe8 */ lw $a0,%lo(g_NumHudMessages)($a0)
|
||||
@@ -3196,7 +3196,7 @@ glabel hudmsgCreateFromArgs
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// g_ScaleX = g_ViMode == VIMODE_HIRES ? 2 : 1;
|
||||
// g_ScaleX = g_ViRes == VIRES_HI ? 2 : 1;
|
||||
//
|
||||
// // Find an unused index for the new message
|
||||
// for (index = 0; index < g_NumHudMessages; index++) {
|
||||
@@ -3312,7 +3312,7 @@ void hudmsgsTick(void)
|
||||
#if PAL
|
||||
g_ScaleX = 1;
|
||||
#else
|
||||
g_ScaleX = (g_ViMode == VIMODE_HIRES) ? 2 : 1;
|
||||
g_ScaleX = (g_ViRes == VIRES_HI) ? 2 : 1;
|
||||
#endif
|
||||
|
||||
#if VERSION >= VERSION_NTSC_1_0
|
||||
@@ -4213,7 +4213,7 @@ glabel var7f1af1e0
|
||||
/* f0e0458: 330f0fff */ andi $t7,$t8,0xfff
|
||||
/* f0e045c: 000fcb00 */ sll $t9,$t7,0xc
|
||||
/* f0e0460: 03214025 */ or $t0,$t9,$at
|
||||
/* f0e0464: 0c002e46 */ jal viGetBufY
|
||||
/* f0e0464: 0c002e46 */ jal viGetBufHeight
|
||||
/* f0e0468: ae280000 */ sw $t0,0x0($s1)
|
||||
/* f0e046c: 8fa900e8 */ lw $t1,0xe8($sp)
|
||||
/* f0e0470: 960b001c */ lhu $t3,0x1c($s0)
|
||||
@@ -4840,8 +4840,8 @@ glabel var7f1adef4
|
||||
.word hudmsgsRender+0x7c8 # f0e0298
|
||||
.text
|
||||
/* f0dfad0: 27bdff00 */ addiu $sp,$sp,-256
|
||||
/* f0dfad4: 3c0f8007 */ lui $t7,%hi(g_ViMode)
|
||||
/* f0dfad8: 8def06c8 */ lw $t7,%lo(g_ViMode)($t7)
|
||||
/* f0dfad4: 3c0f8007 */ lui $t7,%hi(g_ViRes)
|
||||
/* f0dfad8: 8def06c8 */ lw $t7,%lo(g_ViRes)($t7)
|
||||
/* f0dfadc: afb20060 */ sw $s2,0x60($sp)
|
||||
/* f0dfae0: 24020001 */ addiu $v0,$zero,0x1
|
||||
/* f0dfae4: 240e00ff */ addiu $t6,$zero,0xff
|
||||
@@ -5071,7 +5071,7 @@ glabel var7f1adef4
|
||||
/* f0dfe1c: 330f0fff */ andi $t7,$t8,0xfff
|
||||
/* f0dfe20: 000fcb00 */ sll $t9,$t7,0xc
|
||||
/* f0dfe24: 03214025 */ or $t0,$t9,$at
|
||||
/* f0dfe28: 0c002ef5 */ jal viGetBufY
|
||||
/* f0dfe28: 0c002ef5 */ jal viGetBufHeight
|
||||
/* f0dfe2c: ae280000 */ sw $t0,0x0($s1)
|
||||
/* f0dfe30: 8fa900e8 */ lw $t1,0xe8($sp)
|
||||
/* f0dfe34: 960b001c */ lhu $t3,0x1c($s0)
|
||||
@@ -6562,7 +6562,7 @@ glabel var7f1adef4
|
||||
// s32 spdc = true; // dc
|
||||
//
|
||||
// // b24
|
||||
// if (g_ViMode == VIMODE_HIRES) {
|
||||
// if (g_ViRes == VIRES_HI) {
|
||||
// g_ScaleX = 2;
|
||||
// } else {
|
||||
// g_ScaleX = 1;
|
||||
@@ -6637,7 +6637,7 @@ glabel var7f1adef4
|
||||
// if (msg->type == HUDMSGTYPE_CUTSCENESUBTITLE) {
|
||||
// gDPSetScissor(gdl++, 0,
|
||||
// (x - 4) * g_ScaleX, 0,
|
||||
// (x + msg->width + 3) * g_ScaleX, viGetBufY());
|
||||
// (x + msg->width + 3) * g_ScaleX, viGetBufHeight());
|
||||
// }
|
||||
//
|
||||
// // e9c
|
||||
|
||||
+3
-3
@@ -2017,7 +2017,7 @@ glabel var7f1b8e7cpf
|
||||
/* f16a684: 26730008 */ addiu $s3,$s3,0x8
|
||||
/* f16a688: 0fc4a4ff */ jal setCurrentPlayerNum
|
||||
/* f16a68c: 00002025 */ move $a0,$zero
|
||||
/* f16a690: 0c0029fd */ jal vi0000aab0
|
||||
/* f16a690: 0c0029fd */ jal viSetMode
|
||||
/* f16a694: 24040001 */ li $a0,0x1
|
||||
/* f16a698: 8e500284 */ lw $s0,0x284($s2)
|
||||
/* f16a69c: 86040634 */ lh $a0,0x634($s0)
|
||||
@@ -2030,7 +2030,7 @@ glabel var7f1b8e7cpf
|
||||
/* f16a6b8: 00022c00 */ sll $a1,$v0,0x10
|
||||
/* f16a6bc: 00055403 */ sra $t2,$a1,0x10
|
||||
/* f16a6c0: 01402825 */ move $a1,$t2
|
||||
/* f16a6c4: 0c002e4a */ jal viSetXY
|
||||
/* f16a6c4: 0c002e4a */ jal viSetSize
|
||||
/* f16a6c8: 87a40090 */ lh $a0,0x90($sp)
|
||||
/* f16a6cc: 0fc2f272 */ jal viGetFbWidth
|
||||
/* f16a6d0: 00000000 */ nop
|
||||
@@ -2039,7 +2039,7 @@ glabel var7f1b8e7cpf
|
||||
/* f16a6dc: 00022c00 */ sll $a1,$v0,0x10
|
||||
/* f16a6e0: 00055c03 */ sra $t3,$a1,0x10
|
||||
/* f16a6e4: 01602825 */ move $a1,$t3
|
||||
/* f16a6e8: 0c002e39 */ jal viSetBuf
|
||||
/* f16a6e8: 0c002e39 */ jal viSetBufSize
|
||||
/* f16a6ec: 87a40090 */ lh $a0,0x90($sp)
|
||||
/* f16a6f0: 0fc2f272 */ jal viGetFbWidth
|
||||
/* f16a6f4: 00000000 */ nop
|
||||
|
||||
+48
-48
@@ -711,47 +711,47 @@ glabel menuRenderItemList
|
||||
/* f0e6490: 00000000 */ nop
|
||||
/* f0e6494: afc00000 */ sw $zero,0x0($s8)
|
||||
.L0f0e6498:
|
||||
/* f0e6498: 0c002ef1 */ jal viGetBufX
|
||||
/* f0e6498: 0c002ef1 */ jal viGetBufWidth
|
||||
/* f0e649c: a7a500ee */ sh $a1,0xee($sp)
|
||||
/* f0e64a0: 3c0a8007 */ lui $t2,%hi(g_ScissorX1)
|
||||
/* f0e64a4: 8d4a1190 */ lw $t2,%lo(g_ScissorX1)($t2)
|
||||
/* f0e64a8: 004a082a */ slt $at,$v0,$t2
|
||||
/* f0e64ac: 10200005 */ beqz $at,.L0f0e64c4
|
||||
/* f0e64b0: 00000000 */ nop
|
||||
/* f0e64b4: 0c002ef1 */ jal viGetBufX
|
||||
/* f0e64b4: 0c002ef1 */ jal viGetBufWidth
|
||||
/* f0e64b8: 00000000 */ nop
|
||||
/* f0e64bc: 3c018007 */ lui $at,%hi(g_ScissorX1)
|
||||
/* f0e64c0: ac221190 */ sw $v0,%lo(g_ScissorX1)($at)
|
||||
.L0f0e64c4:
|
||||
/* f0e64c4: 0c002ef1 */ jal viGetBufX
|
||||
/* f0e64c4: 0c002ef1 */ jal viGetBufWidth
|
||||
/* f0e64c8: 00000000 */ nop
|
||||
/* f0e64cc: 8eeb0000 */ lw $t3,0x0($s7)
|
||||
/* f0e64d0: 004b082a */ slt $at,$v0,$t3
|
||||
/* f0e64d4: 10200004 */ beqz $at,.L0f0e64e8
|
||||
/* f0e64d8: 00000000 */ nop
|
||||
/* f0e64dc: 0c002ef1 */ jal viGetBufX
|
||||
/* f0e64dc: 0c002ef1 */ jal viGetBufWidth
|
||||
/* f0e64e0: 00000000 */ nop
|
||||
/* f0e64e4: aee20000 */ sw $v0,0x0($s7)
|
||||
.L0f0e64e8:
|
||||
/* f0e64e8: 0c002ef5 */ jal viGetBufY
|
||||
/* f0e64e8: 0c002ef5 */ jal viGetBufHeight
|
||||
/* f0e64ec: 00000000 */ nop
|
||||
/* f0e64f0: 3c0c8007 */ lui $t4,%hi(g_ScissorY1)
|
||||
/* f0e64f4: 8d8c1198 */ lw $t4,%lo(g_ScissorY1)($t4)
|
||||
/* f0e64f8: 004c082a */ slt $at,$v0,$t4
|
||||
/* f0e64fc: 10200005 */ beqz $at,.L0f0e6514
|
||||
/* f0e6500: 00000000 */ nop
|
||||
/* f0e6504: 0c002ef5 */ jal viGetBufY
|
||||
/* f0e6504: 0c002ef5 */ jal viGetBufHeight
|
||||
/* f0e6508: 00000000 */ nop
|
||||
/* f0e650c: 3c018007 */ lui $at,%hi(g_ScissorY1)
|
||||
/* f0e6510: ac221198 */ sw $v0,%lo(g_ScissorY1)($at)
|
||||
.L0f0e6514:
|
||||
/* f0e6514: 0c002ef5 */ jal viGetBufY
|
||||
/* f0e6514: 0c002ef5 */ jal viGetBufHeight
|
||||
/* f0e6518: 00000000 */ nop
|
||||
/* f0e651c: 8fc30000 */ lw $v1,0x0($s8)
|
||||
/* f0e6520: 0043082a */ slt $at,$v0,$v1
|
||||
/* f0e6524: 10200005 */ beqz $at,.L0f0e653c
|
||||
/* f0e6528: 00000000 */ nop
|
||||
/* f0e652c: 0c002ef5 */ jal viGetBufY
|
||||
/* f0e652c: 0c002ef5 */ jal viGetBufHeight
|
||||
/* f0e6530: 00000000 */ nop
|
||||
/* f0e6534: afc20000 */ sw $v0,0x0($s8)
|
||||
/* f0e6538: 00401825 */ or $v1,$v0,$zero
|
||||
@@ -1542,47 +1542,47 @@ glabel menuRenderItemList
|
||||
/* f0e70a4: 00000000 */ nop
|
||||
/* f0e70a8: afc00000 */ sw $zero,0x0($s8)
|
||||
.L0f0e70ac:
|
||||
/* f0e70ac: 0c002ef1 */ jal viGetBufX
|
||||
/* f0e70ac: 0c002ef1 */ jal viGetBufWidth
|
||||
/* f0e70b0: 00000000 */ nop
|
||||
/* f0e70b4: 3c0e8007 */ lui $t6,%hi(g_ScissorX1)
|
||||
/* f0e70b8: 8dce1190 */ lw $t6,%lo(g_ScissorX1)($t6)
|
||||
/* f0e70bc: 004e082a */ slt $at,$v0,$t6
|
||||
/* f0e70c0: 10200005 */ beqz $at,.L0f0e70d8
|
||||
/* f0e70c4: 00000000 */ nop
|
||||
/* f0e70c8: 0c002ef1 */ jal viGetBufX
|
||||
/* f0e70c8: 0c002ef1 */ jal viGetBufWidth
|
||||
/* f0e70cc: 00000000 */ nop
|
||||
/* f0e70d0: 3c018007 */ lui $at,%hi(g_ScissorX1)
|
||||
/* f0e70d4: ac221190 */ sw $v0,%lo(g_ScissorX1)($at)
|
||||
.L0f0e70d8:
|
||||
/* f0e70d8: 0c002ef1 */ jal viGetBufX
|
||||
/* f0e70d8: 0c002ef1 */ jal viGetBufWidth
|
||||
/* f0e70dc: 00000000 */ nop
|
||||
/* f0e70e0: 8eef0000 */ lw $t7,0x0($s7)
|
||||
/* f0e70e4: 004f082a */ slt $at,$v0,$t7
|
||||
/* f0e70e8: 10200004 */ beqz $at,.L0f0e70fc
|
||||
/* f0e70ec: 00000000 */ nop
|
||||
/* f0e70f0: 0c002ef1 */ jal viGetBufX
|
||||
/* f0e70f0: 0c002ef1 */ jal viGetBufWidth
|
||||
/* f0e70f4: 00000000 */ nop
|
||||
/* f0e70f8: aee20000 */ sw $v0,0x0($s7)
|
||||
.L0f0e70fc:
|
||||
/* f0e70fc: 0c002ef5 */ jal viGetBufY
|
||||
/* f0e70fc: 0c002ef5 */ jal viGetBufHeight
|
||||
/* f0e7100: 00000000 */ nop
|
||||
/* f0e7104: 3c188007 */ lui $t8,%hi(g_ScissorY1)
|
||||
/* f0e7108: 8f181198 */ lw $t8,%lo(g_ScissorY1)($t8)
|
||||
/* f0e710c: 0058082a */ slt $at,$v0,$t8
|
||||
/* f0e7110: 10200005 */ beqz $at,.L0f0e7128
|
||||
/* f0e7114: 00000000 */ nop
|
||||
/* f0e7118: 0c002ef5 */ jal viGetBufY
|
||||
/* f0e7118: 0c002ef5 */ jal viGetBufHeight
|
||||
/* f0e711c: 00000000 */ nop
|
||||
/* f0e7120: 3c018007 */ lui $at,%hi(g_ScissorY1)
|
||||
/* f0e7124: ac221198 */ sw $v0,%lo(g_ScissorY1)($at)
|
||||
.L0f0e7128:
|
||||
/* f0e7128: 0c002ef5 */ jal viGetBufY
|
||||
/* f0e7128: 0c002ef5 */ jal viGetBufHeight
|
||||
/* f0e712c: 00000000 */ nop
|
||||
/* f0e7130: 8fc30000 */ lw $v1,0x0($s8)
|
||||
/* f0e7134: 0043082a */ slt $at,$v0,$v1
|
||||
/* f0e7138: 10200005 */ beqz $at,.L0f0e7150
|
||||
/* f0e713c: 00000000 */ nop
|
||||
/* f0e7140: 0c002ef5 */ jal viGetBufY
|
||||
/* f0e7140: 0c002ef5 */ jal viGetBufHeight
|
||||
/* f0e7144: 00000000 */ nop
|
||||
/* f0e7148: afc20000 */ sw $v0,0x0($s8)
|
||||
/* f0e714c: 00401825 */ or $v1,$v0,$zero
|
||||
@@ -8641,43 +8641,43 @@ glabel menuRenderItemMarquee
|
||||
/* f0ed7b4: 00000000 */ nop
|
||||
/* f0ed7b8: aca00000 */ sw $zero,0x0($a1)
|
||||
.L0f0ed7bc:
|
||||
/* f0ed7bc: 0c002ef1 */ jal viGetBufX
|
||||
/* f0ed7bc: 0c002ef1 */ jal viGetBufWidth
|
||||
/* f0ed7c0: 00000000 */ nop
|
||||
/* f0ed7c4: 3c198007 */ lui $t9,%hi(g_ScissorX1)
|
||||
/* f0ed7c8: 8f391190 */ lw $t9,%lo(g_ScissorX1)($t9)
|
||||
/* f0ed7cc: 0059082a */ slt $at,$v0,$t9
|
||||
/* f0ed7d0: 10200005 */ beqz $at,.L0f0ed7e8
|
||||
/* f0ed7d4: 00000000 */ nop
|
||||
/* f0ed7d8: 0c002ef1 */ jal viGetBufX
|
||||
/* f0ed7d8: 0c002ef1 */ jal viGetBufWidth
|
||||
/* f0ed7dc: 00000000 */ nop
|
||||
/* f0ed7e0: 3c018007 */ lui $at,%hi(g_ScissorX1)
|
||||
/* f0ed7e4: ac221190 */ sw $v0,%lo(g_ScissorX1)($at)
|
||||
.L0f0ed7e8:
|
||||
/* f0ed7e8: 0c002ef1 */ jal viGetBufX
|
||||
/* f0ed7e8: 0c002ef1 */ jal viGetBufWidth
|
||||
/* f0ed7ec: 00000000 */ nop
|
||||
/* f0ed7f0: 3c088007 */ lui $t0,%hi(g_ScissorX2)
|
||||
/* f0ed7f4: 8d081194 */ lw $t0,%lo(g_ScissorX2)($t0)
|
||||
/* f0ed7f8: 0048082a */ slt $at,$v0,$t0
|
||||
/* f0ed7fc: 10200005 */ beqz $at,.L0f0ed814
|
||||
/* f0ed800: 00000000 */ nop
|
||||
/* f0ed804: 0c002ef1 */ jal viGetBufX
|
||||
/* f0ed804: 0c002ef1 */ jal viGetBufWidth
|
||||
/* f0ed808: 00000000 */ nop
|
||||
/* f0ed80c: 3c018007 */ lui $at,%hi(g_ScissorX2)
|
||||
/* f0ed810: ac221194 */ sw $v0,%lo(g_ScissorX2)($at)
|
||||
.L0f0ed814:
|
||||
/* f0ed814: 0c002ef5 */ jal viGetBufY
|
||||
/* f0ed814: 0c002ef5 */ jal viGetBufHeight
|
||||
/* f0ed818: 00000000 */ nop
|
||||
/* f0ed81c: 3c098007 */ lui $t1,%hi(g_ScissorY1)
|
||||
/* f0ed820: 8d291198 */ lw $t1,%lo(g_ScissorY1)($t1)
|
||||
/* f0ed824: 0049082a */ slt $at,$v0,$t1
|
||||
/* f0ed828: 10200005 */ beqz $at,.L0f0ed840
|
||||
/* f0ed82c: 00000000 */ nop
|
||||
/* f0ed830: 0c002ef5 */ jal viGetBufY
|
||||
/* f0ed830: 0c002ef5 */ jal viGetBufHeight
|
||||
/* f0ed834: 00000000 */ nop
|
||||
/* f0ed838: 3c018007 */ lui $at,%hi(g_ScissorY1)
|
||||
/* f0ed83c: ac221198 */ sw $v0,%lo(g_ScissorY1)($at)
|
||||
.L0f0ed840:
|
||||
/* f0ed840: 0c002ef5 */ jal viGetBufY
|
||||
/* f0ed840: 0c002ef5 */ jal viGetBufHeight
|
||||
/* f0ed844: 00000000 */ nop
|
||||
/* f0ed848: 3c068007 */ lui $a2,%hi(g_ScissorY2)
|
||||
/* f0ed84c: 24c6119c */ addiu $a2,$a2,%lo(g_ScissorY2)
|
||||
@@ -8685,7 +8685,7 @@ glabel menuRenderItemMarquee
|
||||
/* f0ed854: 0045082a */ slt $at,$v0,$a1
|
||||
/* f0ed858: 10200009 */ beqz $at,.L0f0ed880
|
||||
/* f0ed85c: 00000000 */ nop
|
||||
/* f0ed860: 0c002ef5 */ jal viGetBufY
|
||||
/* f0ed860: 0c002ef5 */ jal viGetBufHeight
|
||||
/* f0ed864: 00000000 */ nop
|
||||
/* f0ed868: 3c018007 */ lui $at,%hi(g_ScissorY2)
|
||||
/* f0ed86c: ac22119c */ sw $v0,%lo(g_ScissorY2)($at)
|
||||
@@ -9159,20 +9159,20 @@ u32 var800711ec = 0x20000000;
|
||||
// g_ScissorY2 = 0;
|
||||
// }
|
||||
//
|
||||
// if (g_ScissorX1 > viGetBufX()) {
|
||||
// g_ScissorX1 = viGetBufX();
|
||||
// if (g_ScissorX1 > viGetBufWidth()) {
|
||||
// g_ScissorX1 = viGetBufWidth();
|
||||
// }
|
||||
//
|
||||
// if (g_ScissorX2 > viGetBufX()) {
|
||||
// g_ScissorX2 = viGetBufX();
|
||||
// if (g_ScissorX2 > viGetBufWidth()) {
|
||||
// g_ScissorX2 = viGetBufWidth();
|
||||
// }
|
||||
//
|
||||
// if (g_ScissorY1 > viGetBufY()) {
|
||||
// g_ScissorY1 = viGetBufY();
|
||||
// if (g_ScissorY1 > viGetBufHeight()) {
|
||||
// g_ScissorY1 = viGetBufHeight();
|
||||
// }
|
||||
//
|
||||
// if (g_ScissorY2 > viGetBufY()) {
|
||||
// g_ScissorY2 = viGetBufY();
|
||||
// if (g_ScissorY2 > viGetBufHeight()) {
|
||||
// g_ScissorY2 = viGetBufHeight();
|
||||
// }
|
||||
//
|
||||
// if (g_ScissorX2 < g_ScissorX1) {
|
||||
@@ -9489,20 +9489,20 @@ Gfx *menuRenderItemRanking(Gfx *gdl, struct menurendercontext *context)
|
||||
g_ScissorY2 = 0;
|
||||
}
|
||||
|
||||
if (g_ScissorX1 > viGetBufX()) {
|
||||
g_ScissorX1 = viGetBufX();
|
||||
if (g_ScissorX1 > viGetBufWidth()) {
|
||||
g_ScissorX1 = viGetBufWidth();
|
||||
}
|
||||
|
||||
if (g_ScissorX2 > viGetBufX()) {
|
||||
g_ScissorX2 = viGetBufX();
|
||||
if (g_ScissorX2 > viGetBufWidth()) {
|
||||
g_ScissorX2 = viGetBufWidth();
|
||||
}
|
||||
|
||||
if (g_ScissorY1 > viGetBufY()) {
|
||||
g_ScissorY1 = viGetBufY();
|
||||
if (g_ScissorY1 > viGetBufHeight()) {
|
||||
g_ScissorY1 = viGetBufHeight();
|
||||
}
|
||||
|
||||
if (g_ScissorY2 > viGetBufY()) {
|
||||
g_ScissorY2 = viGetBufY();
|
||||
if (g_ScissorY2 > viGetBufHeight()) {
|
||||
g_ScissorY2 = viGetBufHeight();
|
||||
}
|
||||
|
||||
if (g_ScissorX2 < g_ScissorX1) {
|
||||
@@ -10349,20 +10349,20 @@ Gfx *menuRenderItemPlayerStats(Gfx *gdl, struct menurendercontext *context)
|
||||
g_ScissorY2 = 0;
|
||||
}
|
||||
|
||||
if (g_ScissorX1 > viGetBufX()) {
|
||||
g_ScissorX1 = viGetBufX();
|
||||
if (g_ScissorX1 > viGetBufWidth()) {
|
||||
g_ScissorX1 = viGetBufWidth();
|
||||
}
|
||||
|
||||
if (g_ScissorX2 > viGetBufX()) {
|
||||
g_ScissorX2 = viGetBufX();
|
||||
if (g_ScissorX2 > viGetBufWidth()) {
|
||||
g_ScissorX2 = viGetBufWidth();
|
||||
}
|
||||
|
||||
if (g_ScissorY1 > viGetBufY()) {
|
||||
g_ScissorY1 = viGetBufY();
|
||||
if (g_ScissorY1 > viGetBufHeight()) {
|
||||
g_ScissorY1 = viGetBufHeight();
|
||||
}
|
||||
|
||||
if (g_ScissorY2 > viGetBufY()) {
|
||||
g_ScissorY2 = viGetBufY();
|
||||
if (g_ScissorY2 > viGetBufHeight()) {
|
||||
g_ScissorY2 = viGetBufHeight();
|
||||
}
|
||||
|
||||
if (g_ScissorX2 < g_ScissorX1) {
|
||||
|
||||
+1
-1
@@ -68801,7 +68801,7 @@ Gfx *countdownTimerRender(Gfx *gdl)
|
||||
}
|
||||
|
||||
#if !PAL
|
||||
if (g_ViMode == VIMODE_HIRES) {
|
||||
if (g_ViRes == VIRES_HI) {
|
||||
viewright = viewright / 2;
|
||||
}
|
||||
#endif
|
||||
|
||||
+1
-1
@@ -277,7 +277,7 @@ Gfx *radarRender(Gfx *gdl)
|
||||
#if PAL
|
||||
g_ScaleX = 1;
|
||||
#else
|
||||
if (g_ViMode == VIMODE_HIRES) {
|
||||
if (g_ViRes == VIRES_HI) {
|
||||
g_ScaleX = 2;
|
||||
} else {
|
||||
g_ScaleX = 1;
|
||||
|
||||
+1
-1
@@ -8093,7 +8093,7 @@ Gfx *sightRender(Gfx *gdl, bool sighton, s32 sight)
|
||||
#if PAL
|
||||
g_ScaleX = 1;
|
||||
#else
|
||||
if (g_ViMode == VIMODE_HIRES) {
|
||||
if (g_ViRes == VIRES_HI) {
|
||||
g_ScaleX = 2;
|
||||
} else {
|
||||
g_ScaleX = 1;
|
||||
|
||||
+11
-11
@@ -453,8 +453,8 @@ void titleInitCheckControllers(void)
|
||||
void titleExitCheckControllers(void)
|
||||
{
|
||||
var800624e8 = 0;
|
||||
vi00009ab0();
|
||||
vi0000aab0(2);
|
||||
viConfigureForLogos();
|
||||
viSetMode(VIMODE_HI);
|
||||
viBlack(false);
|
||||
}
|
||||
|
||||
@@ -3116,7 +3116,7 @@ glabel var7f1a8468
|
||||
.PF0f018494:
|
||||
/* f018494: 0c002f12 */ jal viSetFillColour
|
||||
/* f018498: 00002825 */ move $a1,$zero
|
||||
/* f01849c: 0c002c02 */ jal func0000b2c4
|
||||
/* f01849c: 0c002c02 */ jal viFillBuffer
|
||||
/* f0184a0: 00402025 */ move $a0,$v0
|
||||
/* f0184a4: 3c188006 */ lui $t8,0x8006
|
||||
/* f0184a8: 8f18249c */ lw $t8,0x249c($t8)
|
||||
@@ -4447,7 +4447,7 @@ glabel var7f1a8468
|
||||
.L0f0183b0:
|
||||
/* f0183b0: 0c002fc1 */ jal viSetFillColour
|
||||
/* f0183b4: 00002825 */ or $a1,$zero,$zero
|
||||
/* f0183b8: 0c002cb1 */ jal func0000b2c4
|
||||
/* f0183b8: 0c002cb1 */ jal viFillBuffer
|
||||
/* f0183bc: 00402025 */ or $a0,$v0,$zero
|
||||
/* f0183c0: 3c0e8006 */ lui $t6,%hi(var800627cc)
|
||||
/* f0183c4: 8dce27cc */ lw $t6,%lo(var800627cc)($t6)
|
||||
@@ -6998,8 +6998,8 @@ void titleInitSkip(void)
|
||||
if (IS4MB()) {
|
||||
g_TitleNextStage = STAGE_4MBMENU;
|
||||
viSetAspect(PAL ? 1.7316017150879f : 1.4545454978943f);
|
||||
viSetXY(320, 220);
|
||||
viSetBuf(320, 220);
|
||||
viSetSize(320, 220);
|
||||
viSetBufSize(320, 220);
|
||||
currentPlayerSetViewSize(320, 220);
|
||||
viSetViewSize(320, 220);
|
||||
}
|
||||
@@ -7303,8 +7303,8 @@ void titleTick(void)
|
||||
#else
|
||||
viSetAspect(576.0f / var800624a0);
|
||||
#endif
|
||||
viSetXY(576, var800624a0);
|
||||
viSetBuf(576, var800624a0);
|
||||
viSetSize(576, var800624a0);
|
||||
viSetBufSize(576, var800624a0);
|
||||
currentPlayerSetViewSize(576, var800624a0);
|
||||
viSetViewSize(576, var800624a0);
|
||||
currentPlayerSetViewPosition(0, 0);
|
||||
@@ -7516,9 +7516,9 @@ bool func0f01ad5c(void)
|
||||
|
||||
void func0f01adb8(void)
|
||||
{
|
||||
vi0000aab0(2);
|
||||
viSetXY(576, var800624a0);
|
||||
viSetBuf(576, var800624a0);
|
||||
viSetMode(VIMODE_HI);
|
||||
viSetSize(576, var800624a0);
|
||||
viSetBufSize(576, var800624a0);
|
||||
currentPlayerSetViewSize(576, var800624a0);
|
||||
viSetViewSize(576, var800624a0);
|
||||
currentPlayerSetViewPosition(0, 0);
|
||||
|
||||
@@ -4735,7 +4735,7 @@ s32 ciCharacterProfileMenuDialog(s32 operation, struct menudialog *dialog, union
|
||||
g_Menus[g_MpPlayerNum].unkdc0 = 0;
|
||||
|
||||
#if VERSION >= VERSION_PAL_FINAL
|
||||
if (g_ViMode != VIMODE_HIRES) {
|
||||
if (g_ViRes != VIRES_HI) {
|
||||
x = -117;
|
||||
|
||||
if (optionsGetScreenRatio() == SCREENRATIO_16_9) {
|
||||
@@ -5000,7 +5000,7 @@ s32 dtTrainingDetailsMenuDialog(s32 operation, struct menudialog *dialog, union
|
||||
func0f105948(weaponnum);
|
||||
|
||||
#if VERSION >= VERSION_PAL_FINAL
|
||||
if (g_ViMode == VIMODE_HIRES) {
|
||||
if (g_ViRes == VIRES_HI) {
|
||||
if (optionsGetScreenRatio() == SCREENRATIO_16_9) {
|
||||
g_Menus[g_MpPlayerNum].unkd78 = 84;
|
||||
g_Menus[g_MpPlayerNum].unkd50 = 84;
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
#define RESET_TYPE_NMI 1
|
||||
#define RESET_TYPE_BOOT_DISK 2
|
||||
|
||||
extern u32 osTvType;
|
||||
extern s32 osTvType;
|
||||
extern u32 osRomBase;
|
||||
extern u32 osResetType;
|
||||
extern u32 osMemSize;
|
||||
|
||||
+1
-1
@@ -73,7 +73,7 @@ extern OSMesgQueue __osEepromTimerQ;
|
||||
extern OSMesg __osEepromTimerMsg;
|
||||
extern OSPifRam __osEepPifRam;
|
||||
extern u32 var8009ca84;
|
||||
extern u8 *var8009cac0[2];
|
||||
extern u8 *g_FrameBuffers[2];
|
||||
extern u8 var8009caec[4];
|
||||
extern u8 var8009caf0;
|
||||
extern struct prop *g_DangerousProps[MAX_DANGEROUSPROPS];
|
||||
|
||||
@@ -3830,8 +3830,12 @@
|
||||
#define VEHICLEMODE_ENGINESTART 1
|
||||
#define VEHICLEMODE_RUNNING 2
|
||||
|
||||
#define VIMODE_DEFAULT 0
|
||||
#define VIMODE_HIRES 1
|
||||
#define VIMODE_NONE 0
|
||||
#define VIMODE_LO 1
|
||||
#define VIMODE_HI 2
|
||||
|
||||
#define VIRES_LO 0
|
||||
#define VIRES_HI 1
|
||||
|
||||
#define VISIONMODE_NORMAL 0
|
||||
#define VISIONMODE_XRAY 1
|
||||
|
||||
+7
-7
@@ -16,13 +16,13 @@ extern u32 var8005ce68;
|
||||
extern u32 var8005ce6c;
|
||||
extern u32 var8005ce70;
|
||||
extern s32 var8005ce74;
|
||||
extern f32 var8005ce78[2];
|
||||
extern f32 var8005ce80[2];
|
||||
extern u32 var8005ce88[2];
|
||||
extern f32 g_ViXScalesBySlot[2];
|
||||
extern f32 g_ViYScalesBySlot[2];
|
||||
extern u32 g_SchedViModesPending[2];
|
||||
extern s32 g_ViUnblackTimer;
|
||||
extern s32 var8005ce94;
|
||||
extern s32 var8005ce98;
|
||||
extern u32 var8005ce9c;
|
||||
extern s32 g_ViShakeDirection;
|
||||
extern s32 g_ViShakeIntensity;
|
||||
extern s32 g_ViShakeTimer;
|
||||
extern OSMesg var8005cea8;
|
||||
extern u32 var8005cec8;
|
||||
extern s8 g_Resetting;
|
||||
@@ -283,7 +283,7 @@ extern u32 var800705b0;
|
||||
extern u32 var800705b4;
|
||||
extern u32 var800705b8;
|
||||
extern u32 var800705bc;
|
||||
extern s32 g_ViMode;
|
||||
extern s32 g_ViRes;
|
||||
extern bool g_HiResEnabled;
|
||||
extern s32 var8007072c;
|
||||
extern u32 var80070738;
|
||||
|
||||
@@ -41,7 +41,7 @@ void currentPlayerDisplayDamage(void);
|
||||
Gfx *hudRenderHealthBar(Gfx *gdl);
|
||||
void currentPlayerSurroundWithExplosions(s32 arg0);
|
||||
void currentPlayerTickExplode(void);
|
||||
void viResetDefaultModeIf4Mb(void);
|
||||
void viResetLoResIf4Mb(void);
|
||||
s16 viGetFbWidth(void);
|
||||
s16 viGetFbHeight(void);
|
||||
bool is2PSharedViewport(void);
|
||||
|
||||
+15
-15
@@ -10,19 +10,19 @@ void vi00009a90(void);
|
||||
void vi00009a98(void);
|
||||
void vi00009aa0(u32 arg0);
|
||||
Gfx *viRenderDebug(Gfx *gdl);
|
||||
void vi00009ab0(void);
|
||||
void vi00009b50(u8 *fb);
|
||||
void vi00009bf8(void);
|
||||
void viConfigureForLogos(void);
|
||||
void viConfigureForBanner(u8 *fb);
|
||||
void viConfigureForLegal(void);
|
||||
void viAllocateFbs(s32 stagenum);
|
||||
void viBlack(bool black);
|
||||
void vi00009ed4(void);
|
||||
void vi0000a044(void);
|
||||
void vi0000aa50(f32 arg0);
|
||||
void vi0000aab0(s32 arg0);
|
||||
u8 *viGetUnk28(void);
|
||||
u8 *vi2GetUnk28(void);
|
||||
void viUpdateMode(void);
|
||||
void viShake(f32 intensity);
|
||||
void viSetMode(s32 mode);
|
||||
u8 *viGetBackBuffer(void);
|
||||
u8 *viGetFrontBuffer(void);
|
||||
Vp *viGetCurrentPlayerViewport(void);
|
||||
u16 vi0000ab6c(void);
|
||||
u16 viGetPerspScale(void);
|
||||
Gfx *vi0000ab78(Gfx *gdl);
|
||||
Gfx *vi0000aca4(Gfx *gdl, f32 znear, f32 zfar);
|
||||
Gfx *vi0000ad5c(Gfx *gdl, Vp *vp);
|
||||
@@ -31,15 +31,15 @@ Gfx *vi0000b0e8(Gfx *gdl, f32 fovy, f32 aspect);
|
||||
Gfx *vi0000b1a8(Gfx *gdl);
|
||||
Gfx *vi0000b1d0(Gfx *gdl);
|
||||
Gfx *vi0000b280(Gfx *gdl);
|
||||
Gfx *func0000b2c4(Gfx *gdl);
|
||||
Gfx *viFillBuffer(Gfx *gdl);
|
||||
Gfx *viRenderViewportEdges(Gfx *gdl);
|
||||
void viSetBuf(s16 x, s16 y);
|
||||
s16 viGetBufX(void);
|
||||
s16 viGetBufY(void);
|
||||
void viSetXY(s16 x, s16 y);
|
||||
void viSetBufSize(s16 width, s16 height);
|
||||
s16 viGetBufWidth(void);
|
||||
s16 viGetBufHeight(void);
|
||||
void viSetSize(s16 width, s16 height);
|
||||
s16 viGetWidth(void);
|
||||
s16 viGetHeight(void);
|
||||
void viSetViewSize(s16 x, s16 y);
|
||||
void viSetViewSize(s16 width, s16 height);
|
||||
s16 viGetViewWidth(void);
|
||||
s16 viGetViewHeight(void);
|
||||
void viSetViewPosition(s16 left, s16 top);
|
||||
|
||||
+381
-211
@@ -19,18 +19,17 @@
|
||||
#define TO_U16_A(x) ((u16)(x))
|
||||
#define TO_U16_B(x) (x & 0xffff)
|
||||
#define TO_U16_C(x) ((u16)(x & 0xffff))
|
||||
#define TO_U16_M(x) ((x) % 0xffff)
|
||||
|
||||
#define ADD_LOW_AND_HI_16_TRUNCATE(x32, add16) ((TO_U16_B(TO_U16_A((x32) >> 16) + (add16)) << 16) | TO_U16_B(TO_U16_A(x32) + (add16)))
|
||||
#define ADD_LOW_AND_HI_16_MOD(x32, add16) ((TO_U16_M(TO_U16_B((x32) >> 16) + (add16)) << 16) | TO_U16_M(TO_U16_A(x32) + (add16)))
|
||||
#define ADD_LOW_AND_HI_16_TRUNCATE(reg, add) ((TO_U16_B(TO_U16_A((reg) >> 16) + (add)) << 16) | TO_U16_B(TO_U16_A(reg) + (add)))
|
||||
#define ADD_LOW_AND_HI_16_MOD(reg, add) ((((((reg >> 16) & 0xffff) + add) % 0xffff) << 16) | (((((reg >> 0) & 0xffff) + add) % 0xffff) << 0))
|
||||
|
||||
Mtxf var80092830;
|
||||
Mtx *var80092870;
|
||||
u16 var80092874;
|
||||
u8 var80092876;
|
||||
u8 var80092877;
|
||||
u16 g_ViPerspScale;
|
||||
u8 g_ViFrontIndex;
|
||||
u8 g_ViBackIndex;
|
||||
|
||||
struct rend_vidat var8005d530[] = {
|
||||
struct rend_vidat g_ViDataArray[] = {
|
||||
{
|
||||
0, 0, 0, 0,
|
||||
320, 220, // x and y
|
||||
@@ -58,13 +57,13 @@ struct rend_vidat var8005d530[] = {
|
||||
},
|
||||
};
|
||||
|
||||
u32 var8005d588 = 0;
|
||||
u32 var8005d58c = 0;
|
||||
struct rend_vidat *var8005d590 = &var8005d530[0];
|
||||
struct rend_vidat *g_ViData = &var8005d530[0];
|
||||
s32 var8005d588 = 0;
|
||||
s32 var8005d58c = 0;
|
||||
struct rend_vidat *g_ViFrontData = &g_ViDataArray[0];
|
||||
struct rend_vidat *g_ViBackData = &g_ViDataArray[0];
|
||||
bool g_ViIs16Bit = true;
|
||||
s32 var8005d59c = 0;
|
||||
u32 var8005d5a0 = 0x00000000;
|
||||
bool g_ViReconfigured = false;
|
||||
s32 g_ViSlot = 0;
|
||||
|
||||
void vi00009a80(void)
|
||||
{
|
||||
@@ -96,23 +95,23 @@ Gfx *viRenderDebug(Gfx *gdl)
|
||||
return gdl;
|
||||
}
|
||||
|
||||
void vi00009ab0(void)
|
||||
void viConfigureForLogos(void)
|
||||
{
|
||||
var80092876 = 0;
|
||||
var80092877 = 1;
|
||||
g_ViFrontIndex = 0;
|
||||
g_ViBackIndex = 1;
|
||||
|
||||
var8005d590 = var8005d530 + var80092876;
|
||||
g_ViData = var8005d530 + var80092877;
|
||||
g_ViFrontData = g_ViDataArray + g_ViFrontIndex;
|
||||
g_ViBackData = g_ViDataArray + g_ViBackIndex;
|
||||
|
||||
#if VERSION >= VERSION_PAL_FINAL
|
||||
if (IS4MB()) {
|
||||
var8005d530[0].y = 220;
|
||||
var8005d530[0].bufy = 220;
|
||||
var8005d530[0].viewy = 220;
|
||||
g_ViDataArray[0].y = 220;
|
||||
g_ViDataArray[0].bufy = 220;
|
||||
g_ViDataArray[0].viewy = 220;
|
||||
|
||||
var8005d530[1].y = 220;
|
||||
var8005d530[1].bufy = 220;
|
||||
var8005d530[1].viewy = 220;
|
||||
g_ViDataArray[1].y = 220;
|
||||
g_ViDataArray[1].bufy = 220;
|
||||
g_ViDataArray[1].viewy = 220;
|
||||
|
||||
var8005d588 = 0;
|
||||
var8005d58c = 0;
|
||||
@@ -125,67 +124,82 @@ void vi00009ab0(void)
|
||||
var8005d58c = 0;
|
||||
|
||||
if (IS4MB()) {
|
||||
var8005d530[0].y = 220;
|
||||
var8005d530[0].bufy = 220;
|
||||
var8005d530[0].viewy = 220;
|
||||
g_ViDataArray[0].y = 220;
|
||||
g_ViDataArray[0].bufy = 220;
|
||||
g_ViDataArray[0].viewy = 220;
|
||||
|
||||
var8005d530[1].y = 220;
|
||||
var8005d530[1].bufy = 220;
|
||||
var8005d530[1].viewy = 220;
|
||||
g_ViDataArray[1].y = 220;
|
||||
g_ViDataArray[1].bufy = 220;
|
||||
g_ViDataArray[1].viewy = 220;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
void vi00009b50(u8 *fb)
|
||||
/**
|
||||
* Configure the VI to display a banner texture.
|
||||
*
|
||||
* The banner texture is the first thing displayed after power on.
|
||||
* It is either the copyright notice, or the "Accessing Pak" message
|
||||
* if holding start to enter the boot pak menu.
|
||||
*
|
||||
* Both textures are 576 x 48.
|
||||
*/
|
||||
void viConfigureForBanner(u8 *texturedata)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < 2; i++) {
|
||||
var8009cac0[i] = fb;
|
||||
g_FrameBuffers[i] = texturedata;
|
||||
|
||||
var8005d530[i].x = 576;
|
||||
var8005d530[i].bufx = 576;
|
||||
var8005d530[i].viewx = (VERSION >= VERSION_NTSC_1_0 ? 576 : 480);
|
||||
g_ViDataArray[i].x = 576;
|
||||
g_ViDataArray[i].bufx = 576;
|
||||
g_ViDataArray[i].viewx = (VERSION >= VERSION_NTSC_1_0 ? 576 : 480);
|
||||
|
||||
var8005d530[i].y = 48;
|
||||
var8005d530[i].bufy = 48;
|
||||
var8005d530[i].viewy = 48;
|
||||
g_ViDataArray[i].y = 48;
|
||||
g_ViDataArray[i].bufy = 48;
|
||||
g_ViDataArray[i].viewy = 48;
|
||||
}
|
||||
|
||||
var8005d590->fb = var8009cac0[var80092876];
|
||||
g_ViData->fb = var8009cac0[var80092877];
|
||||
g_ViFrontData->fb = g_FrameBuffers[g_ViFrontIndex];
|
||||
g_ViBackData->fb = g_FrameBuffers[g_ViBackIndex];
|
||||
|
||||
var8005d59c = 1;
|
||||
g_ViReconfigured = true;
|
||||
g_Vars.fourmeg2player = false;
|
||||
}
|
||||
|
||||
void vi00009bf8(void)
|
||||
/**
|
||||
* Configure the VI to display the legal screen.
|
||||
*
|
||||
* It's also used for the "check controllers" message
|
||||
* if controller 1 is not connected.
|
||||
*/
|
||||
void viConfigureForLegal(void)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < 2; i++) {
|
||||
var8005d530[i].x = 320;
|
||||
var8005d530[i].bufx = 320;
|
||||
var8005d530[i].viewx = 320;
|
||||
g_ViDataArray[i].x = 320;
|
||||
g_ViDataArray[i].bufx = 320;
|
||||
g_ViDataArray[i].viewx = 320;
|
||||
|
||||
var8005d530[i].y = 220;
|
||||
var8005d530[i].bufy = 220;
|
||||
var8005d530[i].viewy = 220;
|
||||
g_ViDataArray[i].y = 220;
|
||||
g_ViDataArray[i].bufy = 220;
|
||||
g_ViDataArray[i].viewy = 220;
|
||||
}
|
||||
|
||||
g_Vars.fourmeg2player = false;
|
||||
|
||||
#if VERSION >= VERSION_PAL_FINAL
|
||||
viResetDefaultModeIf4Mb();
|
||||
viResetLoResIf4Mb();
|
||||
#endif
|
||||
}
|
||||
|
||||
const s16 var700526d0[] = {320, 320, 640};
|
||||
const s16 g_ViModeWidths[] = {320, 320, 640};
|
||||
|
||||
#if PAL
|
||||
const s16 var700526d8[] = {220, 220, 504};
|
||||
const s16 g_ViModeHeights[] = {220, 220, 504};
|
||||
#else
|
||||
const s16 var700526d8[] = {220, 220, 440};
|
||||
const s16 g_ViModeHeights[] = {220, 220, 440};
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -210,14 +224,14 @@ void viAllocateFbs(s32 stagenum)
|
||||
|
||||
if (stagenum == STAGE_TITLE || stagenum == STAGE_TEST_OLD) {
|
||||
if (IS4MB()) {
|
||||
vi0000aab0(2);
|
||||
viSetMode(VIMODE_HI);
|
||||
fbsize = 640 * 440 * 2;
|
||||
} else {
|
||||
vi0000aab0(2);
|
||||
fbsize = var700526d0[2] * var700526d8[2] * 2;
|
||||
viSetMode(VIMODE_HI);
|
||||
fbsize = g_ViModeWidths[2] * g_ViModeHeights[2] * 2;
|
||||
}
|
||||
} else {
|
||||
vi0000aab0(1);
|
||||
viSetMode(VIMODE_LO);
|
||||
|
||||
if (1);
|
||||
|
||||
@@ -239,21 +253,21 @@ void viAllocateFbs(s32 stagenum)
|
||||
|
||||
ptr = (u8 *)(((u32)ptr + 0x3f) & 0xffffffc0);
|
||||
|
||||
var8009cac0[0] = &ptr[0];
|
||||
var8009cac0[1] = fbsize + ptr;
|
||||
g_FrameBuffers[0] = &ptr[0];
|
||||
g_FrameBuffers[1] = fbsize + ptr;
|
||||
|
||||
var8005d590->fb = var8009cac0[var80092876];
|
||||
g_ViData->fb = var8009cac0[var80092877];
|
||||
g_ViFrontData->fb = g_FrameBuffers[g_ViFrontIndex];
|
||||
g_ViBackData->fb = g_FrameBuffers[g_ViBackIndex];
|
||||
|
||||
fb0 = var8009cac0[0];
|
||||
fb1 = var8009cac0[1];
|
||||
fb0 = g_FrameBuffers[0];
|
||||
fb1 = g_FrameBuffers[1];
|
||||
|
||||
for (i = 0; i < fbsize; i++) {
|
||||
fb0[i] = 0;
|
||||
fb1[i] = 0;
|
||||
}
|
||||
|
||||
var8005d59c = 1;
|
||||
g_ViReconfigured = true;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -272,29 +286,29 @@ void viBlack(bool black)
|
||||
void vi00009ed4(void)
|
||||
{
|
||||
s32 prevmask;
|
||||
s32 value;
|
||||
s32 tmp;
|
||||
s32 offset;
|
||||
s32 reg;
|
||||
|
||||
if (var8005ce9c != 0) {
|
||||
var8005ce9c--;
|
||||
if (g_ViShakeTimer != 0) {
|
||||
g_ViShakeTimer--;
|
||||
|
||||
if (var8005ce9c == 0) {
|
||||
var8005ce98 = 0;
|
||||
if (g_ViShakeTimer == 0) {
|
||||
g_ViShakeIntensity = 0;
|
||||
}
|
||||
}
|
||||
|
||||
value = var8005ce94 * var8005ce98;
|
||||
var8005ce94 = -var8005ce94;
|
||||
offset = g_ViShakeDirection * g_ViShakeIntensity;
|
||||
g_ViShakeDirection = -g_ViShakeDirection;
|
||||
|
||||
#if VERSION >= VERSION_NTSC_1_0
|
||||
prevmask = osSetIntMask(1);
|
||||
#endif
|
||||
|
||||
tmp = var8008de0c;
|
||||
var8008dd60[1 - var8005ce74]->fldRegs[0].vStart = ADD_LOW_AND_HI_16_TRUNCATE(tmp, value);
|
||||
reg = var8008de0c;
|
||||
var8008dd60[1 - var8005ce74]->fldRegs[0].vStart = ADD_LOW_AND_HI_16_TRUNCATE(reg, offset);
|
||||
|
||||
tmp = var8008de10;
|
||||
var8008dd60[1 - var8005ce74]->fldRegs[1].vStart = ADD_LOW_AND_HI_16_TRUNCATE(tmp, value);
|
||||
reg = var8008de10;
|
||||
var8008dd60[1 - var8005ce74]->fldRegs[1].vStart = ADD_LOW_AND_HI_16_TRUNCATE(reg, offset);
|
||||
|
||||
#if VERSION >= VERSION_NTSC_1_0
|
||||
osSetIntMask(prevmask);
|
||||
@@ -302,14 +316,14 @@ void vi00009ed4(void)
|
||||
|
||||
osViSetMode(var8008dd60[1 - var8005ce74]);
|
||||
osViBlack(g_ViUnblackTimer);
|
||||
osViSetXScale(var8005ce78[1 - var8005ce74]);
|
||||
osViSetYScale(var8005ce80[1 - var8005ce74]);
|
||||
osViSetXScale(g_ViXScalesBySlot[1 - var8005ce74]);
|
||||
osViSetYScale(g_ViYScalesBySlot[1 - var8005ce74]);
|
||||
osViSetSpecialFeatures(OS_VI_GAMMA_OFF | OS_VI_DITHER_FILTER_ON);
|
||||
}
|
||||
|
||||
#if VERSION >= VERSION_PAL_FINAL
|
||||
GLOBAL_ASM(
|
||||
glabel vi0000a044
|
||||
glabel viUpdateMode
|
||||
/* 9f64: 3c098006 */ lui $t1,0x8006
|
||||
/* 9f68: 3c0e8006 */ lui $t6,0x8006
|
||||
/* 9f6c: 8dced230 */ lw $t6,-0x2dd0($t6)
|
||||
@@ -884,11 +898,11 @@ glabel vi0000a044
|
||||
);
|
||||
#else
|
||||
GLOBAL_ASM(
|
||||
glabel vi0000a044
|
||||
/* a044: 3c098006 */ lui $t1,%hi(g_ViData)
|
||||
/* a048: 3c0e8006 */ lui $t6,%hi(var8005d590)
|
||||
/* a04c: 8dced590 */ lw $t6,%lo(var8005d590)($t6)
|
||||
/* a050: 8d29d594 */ lw $t1,%lo(g_ViData)($t1)
|
||||
glabel viUpdateMode
|
||||
/* a044: 3c098006 */ lui $t1,%hi(g_ViBackData)
|
||||
/* a048: 3c0e8006 */ lui $t6,%hi(g_ViFrontData)
|
||||
/* a04c: 8dced590 */ lw $t6,%lo(g_ViFrontData)($t6)
|
||||
/* a050: 8d29d594 */ lw $t1,%lo(g_ViBackData)($t1)
|
||||
/* a054: 27bdffe8 */ addiu $sp,$sp,-24
|
||||
/* a058: afbf0014 */ sw $ra,0x14($sp)
|
||||
/* a05c: 91cf0000 */ lbu $t7,0x0($t6)
|
||||
@@ -911,8 +925,8 @@ glabel vi0000a044
|
||||
/* a09c: 00000000 */ nop
|
||||
/* a0a0: 0c012338 */ jal osViBlack
|
||||
/* a0a4: 24040001 */ addiu $a0,$zero,0x1
|
||||
/* a0a8: 3c098006 */ lui $t1,%hi(g_ViData)
|
||||
/* a0ac: 8d29d594 */ lw $t1,%lo(g_ViData)($t1)
|
||||
/* a0a8: 3c098006 */ lui $t1,%hi(g_ViBackData)
|
||||
/* a0ac: 8d29d594 */ lw $t1,%lo(g_ViBackData)($t1)
|
||||
/* a0b0: 91230000 */ lbu $v1,0x0($t1)
|
||||
.L0000a0b4:
|
||||
/* a0b4: 85380004 */ lh $t8,0x4($t1)
|
||||
@@ -928,7 +942,7 @@ glabel vi0000a044
|
||||
/* a0d8: 24040002 */ addiu $a0,$zero,0x2
|
||||
/* a0dc: 241f0001 */ addiu $ra,$zero,0x1
|
||||
/* a0e0: 468042a0 */ cvt.s.w $f10,$f8
|
||||
/* a0e4: 3c0b8006 */ lui $t3,%hi(var8005d5a0)
|
||||
/* a0e4: 3c0b8006 */ lui $t3,%hi(g_ViSlot)
|
||||
/* a0e8: 3c013f80 */ lui $at,0x3f80
|
||||
/* a0ec: 468084a0 */ cvt.s.w $f18,$f16
|
||||
/* a0f0: 46802220 */ cvt.s.w $f8,$f4
|
||||
@@ -938,14 +952,14 @@ glabel vi0000a044
|
||||
/* a100: 44810000 */ mtc1 $at,$f0
|
||||
/* a104: 00000000 */ nop
|
||||
.L0000a108:
|
||||
/* a108: 8d6bd5a0 */ lw $t3,%lo(var8005d5a0)($t3)
|
||||
/* a10c: 3c018006 */ lui $at,%hi(var8005ce78)
|
||||
/* a108: 8d6bd5a0 */ lw $t3,%lo(g_ViSlot)($t3)
|
||||
/* a10c: 3c018006 */ lui $at,%hi(g_ViXScalesBySlot)
|
||||
/* a110: 000b6080 */ sll $t4,$t3,0x2
|
||||
/* a114: 002c0821 */ addu $at,$at,$t4
|
||||
/* a118: e422ce78 */ swc1 $f2,%lo(var8005ce78)($at)
|
||||
/* a11c: 3c018006 */ lui $at,%hi(var8005ce80)
|
||||
/* a118: e422ce78 */ swc1 $f2,%lo(g_ViXScalesBySlot)($at)
|
||||
/* a11c: 3c018006 */ lui $at,%hi(g_ViYScalesBySlot)
|
||||
/* a120: 002c0821 */ addu $at,$at,$t4
|
||||
/* a124: e420ce80 */ swc1 $f0,%lo(var8005ce80)($at)
|
||||
/* a124: e420ce80 */ swc1 $f0,%lo(g_ViYScalesBySlot)($at)
|
||||
/* a128: 91230000 */ lbu $v1,0x0($t1)
|
||||
/* a12c: 17e30101 */ bne $ra,$v1,.L0000a534
|
||||
/* a130: 00000000 */ nop
|
||||
@@ -1220,14 +1234,14 @@ glabel vi0000a044
|
||||
.L0000a50c:
|
||||
/* a50c: 0000c010 */ mfhi $t8
|
||||
/* a510: 03381025 */ or $v0,$t9,$t8
|
||||
/* a514: 3c018006 */ lui $at,%hi(var8005ce88)
|
||||
/* a514: 3c018006 */ lui $at,%hi(g_SchedViModesPending)
|
||||
/* a518: ac820030 */ sw $v0,0x30($a0)
|
||||
/* a51c: ada20000 */ sw $v0,0x0($t5)
|
||||
/* a520: ac820044 */ sw $v0,0x44($a0)
|
||||
/* a524: afe20000 */ sw $v0,0x0($ra)
|
||||
/* a528: 002c0821 */ addu $at,$at,$t4
|
||||
/* a52c: 100000f6 */ b .L0000a908
|
||||
/* a530: ac2fce88 */ sw $t7,%lo(var8005ce88)($at)
|
||||
/* a530: ac2fce88 */ sw $t7,%lo(g_SchedViModesPending)($at)
|
||||
.L0000a534:
|
||||
/* a534: 148300ef */ bne $a0,$v1,.L0000a8f4
|
||||
/* a538: 3c0e8000 */ lui $t6,0x8000
|
||||
@@ -1487,18 +1501,18 @@ glabel vi0000a044
|
||||
/* a8d4: 00000000 */ nop
|
||||
/* a8d8: 0006000d */ break 0x6
|
||||
.L0000a8dc:
|
||||
/* a8dc: 3c018006 */ lui $at,%hi(var8005ce88)
|
||||
/* a8dc: 3c018006 */ lui $at,%hi(g_SchedViModesPending)
|
||||
/* a8e0: 002c0821 */ addu $at,$at,$t4
|
||||
/* a8e4: 24180001 */ addiu $t8,$zero,0x1
|
||||
/* a8e8: ac38ce88 */ sw $t8,%lo(var8005ce88)($at)
|
||||
/* a8e8: ac38ce88 */ sw $t8,%lo(g_SchedViModesPending)($at)
|
||||
/* a8ec: 10000006 */ b .L0000a908
|
||||
/* a8f0: 8d4ad598 */ lw $t2,%lo(g_ViIs16Bit)($t2)
|
||||
.L0000a8f4:
|
||||
/* a8f4: 3c018006 */ lui $at,%hi(var8005ce88)
|
||||
/* a8f4: 3c018006 */ lui $at,%hi(g_SchedViModesPending)
|
||||
/* a8f8: 002c0821 */ addu $at,$at,$t4
|
||||
/* a8fc: 3c0a8006 */ lui $t2,%hi(g_ViIs16Bit)
|
||||
/* a900: 8d4ad598 */ lw $t2,%lo(g_ViIs16Bit)($t2)
|
||||
/* a904: ac20ce88 */ sw $zero,%lo(var8005ce88)($at)
|
||||
/* a904: ac20ce88 */ sw $zero,%lo(g_SchedViModesPending)($at)
|
||||
.L0000a908:
|
||||
/* a908: 256b0001 */ addiu $t3,$t3,0x1
|
||||
/* a90c: 05610004 */ bgez $t3,.L0000a920
|
||||
@@ -1507,33 +1521,33 @@ glabel vi0000a044
|
||||
/* a918: 00000000 */ nop
|
||||
/* a91c: 25cefffe */ addiu $t6,$t6,-2
|
||||
.L0000a920:
|
||||
/* a920: 3c018006 */ lui $at,%hi(var8005d5a0)
|
||||
/* a920: 3c018006 */ lui $at,%hi(g_ViSlot)
|
||||
/* a924: 11400006 */ beqz $t2,.L0000a940
|
||||
/* a928: ac2ed5a0 */ sw $t6,%lo(var8005d5a0)($at)
|
||||
/* a928: ac2ed5a0 */ sw $t6,%lo(g_ViSlot)($at)
|
||||
/* a92c: 3c0f8006 */ lui $t7,%hi(g_RdpCurTask)
|
||||
/* a930: 8deff108 */ lw $t7,%lo(g_RdpCurTask)($t7)
|
||||
/* a934: 8d390028 */ lw $t9,0x28($t1)
|
||||
/* a938: 10000006 */ b .L0000a954
|
||||
/* a93c: adf90058 */ sw $t9,0x58($t7)
|
||||
.L0000a940:
|
||||
/* a940: 3c18800a */ lui $t8,%hi(var8009cac0)
|
||||
/* a940: 3c18800a */ lui $t8,%hi(g_FrameBuffers)
|
||||
/* a944: 3c0e8006 */ lui $t6,%hi(g_RdpCurTask)
|
||||
/* a948: 8dcef108 */ lw $t6,%lo(g_RdpCurTask)($t6)
|
||||
/* a94c: 8f18cac0 */ lw $t8,%lo(var8009cac0)($t8)
|
||||
/* a94c: 8f18cac0 */ lw $t8,%lo(g_FrameBuffers)($t8)
|
||||
/* a950: add80058 */ sw $t8,0x58($t6)
|
||||
.L0000a954:
|
||||
/* a954: 3c028009 */ lui $v0,%hi(var80092874+0x2)
|
||||
/* a958: 24422876 */ addiu $v0,$v0,%lo(var80092874+0x2)
|
||||
/* a954: 3c028009 */ lui $v0,%hi(g_ViPerspScale+0x2)
|
||||
/* a958: 24422876 */ addiu $v0,$v0,%lo(g_ViPerspScale+0x2)
|
||||
/* a95c: 90590000 */ lbu $t9,0x0($v0)
|
||||
/* a960: 3c048006 */ lui $a0,%hi(g_ViData)
|
||||
/* a964: 8c84d594 */ lw $a0,%lo(g_ViData)($a0)
|
||||
/* a960: 3c048006 */ lui $a0,%hi(g_ViBackData)
|
||||
/* a964: 8c84d594 */ lw $a0,%lo(g_ViBackData)($a0)
|
||||
/* a968: 272f0001 */ addiu $t7,$t9,0x1
|
||||
/* a96c: 3c038009 */ lui $v1,%hi(var80092874+0x3)
|
||||
/* a96c: 3c038009 */ lui $v1,%hi(g_ViPerspScale+0x3)
|
||||
/* a970: 2408002c */ addiu $t0,$zero,0x2c
|
||||
/* a974: 24632877 */ addiu $v1,$v1,%lo(var80092874+0x3)
|
||||
/* a974: 24632877 */ addiu $v1,$v1,%lo(g_ViPerspScale+0x3)
|
||||
/* a978: 906e0000 */ lbu $t6,0x0($v1)
|
||||
/* a97c: 3c078006 */ lui $a3,%hi(var8005d530)
|
||||
/* a980: 24e7d530 */ addiu $a3,$a3,%lo(var8005d530)
|
||||
/* a97c: 3c078006 */ lui $a3,%hi(g_ViDataArray)
|
||||
/* a980: 24e7d530 */ addiu $a3,$a3,%lo(g_ViDataArray)
|
||||
/* a984: 05e10004 */ bgez $t7,.L0000a998
|
||||
/* a988: 31f80001 */ andi $t8,$t7,0x1
|
||||
/* a98c: 13000002 */ beqz $t8,.L0000a998
|
||||
@@ -1551,31 +1565,31 @@ glabel vi0000a044
|
||||
.L0000a9b8:
|
||||
/* a9b8: 03080019 */ multu $t8,$t0
|
||||
/* a9bc: a06f0000 */ sb $t7,0x0($v1)
|
||||
/* a9c0: 3c018006 */ lui $at,%hi(var8005d590)
|
||||
/* a9c4: 3c058006 */ lui $a1,%hi(g_ViData)
|
||||
/* a9c0: 3c018006 */ lui $at,%hi(g_ViFrontData)
|
||||
/* a9c4: 3c058006 */ lui $a1,%hi(g_ViBackData)
|
||||
/* a9c8: 2406002c */ addiu $a2,$zero,0x2c
|
||||
/* a9cc: 00007012 */ mflo $t6
|
||||
/* a9d0: 00eec821 */ addu $t9,$a3,$t6
|
||||
/* a9d4: ac39d590 */ sw $t9,%lo(var8005d590)($at)
|
||||
/* a9d4: ac39d590 */ sw $t9,%lo(g_ViFrontData)($at)
|
||||
/* a9d8: 906f0000 */ lbu $t7,0x0($v1)
|
||||
/* a9dc: 3c018006 */ lui $at,%hi(g_ViData)
|
||||
/* a9dc: 3c018006 */ lui $at,%hi(g_ViBackData)
|
||||
/* a9e0: 01e80019 */ multu $t7,$t0
|
||||
/* a9e4: 0000c012 */ mflo $t8
|
||||
/* a9e8: 00f87021 */ addu $t6,$a3,$t8
|
||||
/* a9ec: ac2ed594 */ sw $t6,%lo(g_ViData)($at)
|
||||
/* a9ec: ac2ed594 */ sw $t6,%lo(g_ViBackData)($at)
|
||||
/* a9f0: 0c012c5c */ jal bcopy
|
||||
/* a9f4: 8ca5d594 */ lw $a1,%lo(g_ViData)($a1)
|
||||
/* a9f8: 3c038009 */ lui $v1,%hi(var80092874+0x3)
|
||||
/* a9fc: 24632877 */ addiu $v1,$v1,%lo(var80092874+0x3)
|
||||
/* a9f4: 8ca5d594 */ lw $a1,%lo(g_ViBackData)($a1)
|
||||
/* a9f8: 3c038009 */ lui $v1,%hi(g_ViPerspScale+0x3)
|
||||
/* a9fc: 24632877 */ addiu $v1,$v1,%lo(g_ViPerspScale+0x3)
|
||||
/* aa00: 90790000 */ lbu $t9,0x0($v1)
|
||||
/* aa04: 3c18800a */ lui $t8,%hi(var8009cac0)
|
||||
/* aa08: 3c0e8006 */ lui $t6,%hi(g_ViData)
|
||||
/* aa04: 3c18800a */ lui $t8,%hi(g_FrameBuffers)
|
||||
/* aa08: 3c0e8006 */ lui $t6,%hi(g_ViBackData)
|
||||
/* aa0c: 00197880 */ sll $t7,$t9,0x2
|
||||
/* aa10: 030fc021 */ addu $t8,$t8,$t7
|
||||
/* aa14: 8f18cac0 */ lw $t8,%lo(var8009cac0)($t8)
|
||||
/* aa18: 8dced594 */ lw $t6,%lo(g_ViData)($t6)
|
||||
/* aa1c: 3c028006 */ lui $v0,%hi(var8005d59c)
|
||||
/* aa20: 2442d59c */ addiu $v0,$v0,%lo(var8005d59c)
|
||||
/* aa14: 8f18cac0 */ lw $t8,%lo(g_FrameBuffers)($t8)
|
||||
/* aa18: 8dced594 */ lw $t6,%lo(g_ViBackData)($t6)
|
||||
/* aa1c: 3c028006 */ lui $v0,%hi(g_ViReconfigured)
|
||||
/* aa20: 2442d59c */ addiu $v0,$v0,%lo(g_ViReconfigured)
|
||||
/* aa24: add80028 */ sw $t8,0x28($t6)
|
||||
/* aa28: 8c590000 */ lw $t9,0x0($v0)
|
||||
/* aa2c: 53200005 */ beqzl $t9,.L0000aa44
|
||||
@@ -1591,26 +1605,182 @@ glabel vi0000a044
|
||||
);
|
||||
#endif
|
||||
|
||||
void vi0000aa50(f32 arg0)
|
||||
// Mismatch: Different codegen near reg usage
|
||||
//void viUpdateMode(void)
|
||||
//{
|
||||
// struct rend_vidat *prevdata;
|
||||
// f32 x;
|
||||
// f32 y;
|
||||
// s32 reg;
|
||||
// s32 v1;
|
||||
// s32 tmp;
|
||||
//
|
||||
// if (g_ViBackData->mode != g_ViFrontData->mode) {
|
||||
// switch (g_ViBackData->mode) {
|
||||
// case 0:
|
||||
// osViSetYScale(1);
|
||||
// osViBlack(true);
|
||||
// break;
|
||||
// case 1:
|
||||
// break;
|
||||
// case 2:
|
||||
// break;
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// x = (f32)g_ViBackData->x / (f32)g_ViBackData->bufx;
|
||||
// y = (f32)g_ViBackData->y / (f32)g_ViBackData->bufy;
|
||||
//
|
||||
// if (g_ViBackData->mode == VIMODE_NONE) {
|
||||
// y = 1;
|
||||
// }
|
||||
//
|
||||
// g_ViXScalesBySlot[g_ViSlot] = x;
|
||||
// g_ViYScalesBySlot[g_ViSlot] = y;
|
||||
//
|
||||
// // 12c
|
||||
// if (g_ViBackData->mode == VIMODE_LO) {
|
||||
// if (g_ViIs16Bit) {
|
||||
// if (osTvType == OS_TV_MPAL) {
|
||||
// var8008dcc0[g_ViSlot] = osViModeTable[OS_VI_MPAL_LAN1];
|
||||
// } else {
|
||||
// var8008dcc0[g_ViSlot] = osViModeTable[OS_VI_NTSC_LAN1];
|
||||
// }
|
||||
// } else {
|
||||
// if (osTvType == OS_TV_MPAL) {
|
||||
// var8008dcc0[g_ViSlot] = osViModeTable[OS_VI_MPAL_LAN2];
|
||||
// } else {
|
||||
// var8008dcc0[g_ViSlot] = osViModeTable[OS_VI_NTSC_LAN2];
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// var8008dcc0[g_ViSlot].comRegs.width = g_ViBackData->bufx;
|
||||
// var8008dcc0[g_ViSlot].comRegs.xScale = g_ViBackData->bufx * 1024 / 640;
|
||||
// var8008dcc0[g_ViSlot].fldRegs[0].origin = g_ViBackData->bufx * 2;
|
||||
// var8008dcc0[g_ViSlot].fldRegs[1].origin = g_ViBackData->bufx * 2;
|
||||
//
|
||||
// // 324
|
||||
// if (IS4MB()) {
|
||||
// var8008dcc0[g_ViSlot].fldRegs[0].yScale = 1024;
|
||||
// var8008dcc0[g_ViSlot].fldRegs[1].yScale = 1024;
|
||||
// } else {
|
||||
// var8008dcc0[g_ViSlot].fldRegs[0].yScale = g_ViBackData->bufy * 2048 / 440;
|
||||
// var8008dcc0[g_ViSlot].fldRegs[1].yScale = g_ViBackData->bufy * 2048 / 440;
|
||||
// }
|
||||
//
|
||||
// // 3ac
|
||||
// reg = var8008dcc0[g_ViSlot].comRegs.hStart;
|
||||
// reg = ADD_LOW_AND_HI_16_MOD(reg, var8005d588);
|
||||
// var8008dcc0[g_ViSlot].comRegs.hStart = reg;
|
||||
// var8008dcc0[g_ViSlot].fldRegs[0].vStart = reg;
|
||||
// var8008dcc0[g_ViSlot].fldRegs[1].vStart = reg;
|
||||
// var8008de08 = reg;
|
||||
//
|
||||
// v1 = g_ViBackData->bufy * 1024 / var8008dcc0[g_ViSlot].fldRegs[0].yScale;
|
||||
//
|
||||
// // 458
|
||||
// if (v1 > 300) {
|
||||
// v1 >>= 1;
|
||||
// }
|
||||
//
|
||||
// tmp = 277 - v1;
|
||||
// reg = ((tmp + 2) << 16) | (tmp + ((v1 - 2) * 2) + 2);
|
||||
// reg = ADD_LOW_AND_HI_16_MOD(reg, var8005d58c);
|
||||
// var8008de0c = reg;
|
||||
// var8008de10 = reg;
|
||||
//
|
||||
// g_SchedViModesPending[g_ViSlot] = true;
|
||||
// } else /*534*/ if (g_ViBackData->mode == VIMODE_HI) {
|
||||
// if (osTvType == OS_TV_MPAL) {
|
||||
// var8008dcc0[g_ViSlot] = osViModeTable[OS_VI_MPAL_HAF1];
|
||||
// } else {
|
||||
// var8008dcc0[g_ViSlot] = osViModeTable[OS_VI_NTSC_HAF1];
|
||||
// }
|
||||
//
|
||||
// var8008dcc0[g_ViSlot].comRegs.width = g_ViBackData->bufx;
|
||||
// var8008dcc0[g_ViSlot].comRegs.xScale = g_ViBackData->bufx * 1024 / 640;
|
||||
// var8008dcc0[g_ViSlot].fldRegs[0].yScale = 2048;
|
||||
// var8008dcc0[g_ViSlot].fldRegs[1].yScale = 2048;
|
||||
// var8008dcc0[g_ViSlot].fldRegs[0].origin = g_ViBackData->bufx * 2;
|
||||
// var8008dcc0[g_ViSlot].fldRegs[1].origin = g_ViBackData->bufx * 4;
|
||||
//
|
||||
// reg = var8008dcc0[g_ViSlot].comRegs.hStart;
|
||||
// reg = ADD_LOW_AND_HI_16_MOD(reg, var8005d588);
|
||||
// var8008dcc0[g_ViSlot].comRegs.hStart = reg;
|
||||
// var8008de08 = reg;
|
||||
//
|
||||
// reg = var8008dcc0[g_ViSlot].fldRegs[0].vStart;
|
||||
// reg = ADD_LOW_AND_HI_16_MOD(reg, var8005d58c);
|
||||
// var8008dcc0[g_ViSlot].fldRegs[0].vStart = reg;
|
||||
// var8008de0c = reg;
|
||||
//
|
||||
// reg = var8008dcc0[g_ViSlot].fldRegs[1].vStart;
|
||||
// reg = ADD_LOW_AND_HI_16_MOD(reg, var8005d58c);
|
||||
// var8008dcc0[g_ViSlot].fldRegs[1].vStart = reg;
|
||||
// var8008de10 = reg;
|
||||
//
|
||||
// // 7f8
|
||||
// if (var8005dd18) {
|
||||
// reg = var8005d58c;
|
||||
// reg = (reg + 431) % 0xffff << 16 | (reg + 123) % 0xffff;
|
||||
// var8008dcc0[g_ViSlot].fldRegs[0].vStart = reg;
|
||||
// var8008de0c = reg;
|
||||
//
|
||||
// reg = var8005d58c;
|
||||
// reg = (reg + 433) % 0xffff << 16 | (reg + 121) % 0xffff;
|
||||
// var8008dcc0[g_ViSlot].fldRegs[1].vStart = reg;
|
||||
// var8008de10 = reg;
|
||||
// }
|
||||
//
|
||||
// g_SchedViModesPending[g_ViSlot] = true;
|
||||
// } else {
|
||||
// // 8f4
|
||||
// g_SchedViModesPending[g_ViSlot] = false;
|
||||
// }
|
||||
//
|
||||
// // 908
|
||||
// g_ViSlot = (g_ViSlot + 1) % 2;
|
||||
//
|
||||
// g_RdpCurTask->framebuffer = g_ViIs16Bit ? g_ViBackData->fb : g_FrameBuffers[0];
|
||||
//
|
||||
// prevdata = g_ViBackData;
|
||||
//
|
||||
// g_ViFrontIndex = (g_ViFrontIndex + 1) % 2;
|
||||
// g_ViBackIndex = (g_ViBackIndex + 1) % 2;
|
||||
//
|
||||
// g_ViFrontData = g_ViDataArray + g_ViFrontIndex;
|
||||
// g_ViBackData = g_ViDataArray + g_ViBackIndex;
|
||||
//
|
||||
// bcopy(prevdata, g_ViBackData, sizeof(g_ViBackData));
|
||||
//
|
||||
// g_ViBackData->fb = g_FrameBuffers[g_ViBackIndex];
|
||||
//
|
||||
// if (g_ViReconfigured) {
|
||||
// g_ViReconfigured = false;
|
||||
// viBlack(false);
|
||||
// }
|
||||
//}
|
||||
|
||||
void viShake(f32 intensity)
|
||||
{
|
||||
if (arg0 > 14) {
|
||||
arg0 = 14;
|
||||
if (intensity > 14) {
|
||||
intensity = 14;
|
||||
}
|
||||
|
||||
if (arg0 < 0) {
|
||||
arg0 = 0;
|
||||
if (intensity < 0) {
|
||||
intensity = 0;
|
||||
}
|
||||
|
||||
var8005ce98 = arg0;
|
||||
var8005ce9c = 10;
|
||||
g_ViShakeIntensity = intensity;
|
||||
g_ViShakeTimer = 10;
|
||||
}
|
||||
|
||||
void vi0000aab0(s32 mode)
|
||||
void viSetMode(s32 mode)
|
||||
{
|
||||
g_ViData->mode = mode;
|
||||
g_ViBackData->mode = mode;
|
||||
|
||||
g_ViData->x = g_ViData->bufx = var700526d0[mode];
|
||||
g_ViData->y = g_ViData->bufy = var700526d8[mode];
|
||||
g_ViBackData->x = g_ViBackData->bufx = g_ViModeWidths[mode];
|
||||
g_ViBackData->y = g_ViBackData->bufy = g_ViModeHeights[mode];
|
||||
}
|
||||
|
||||
void viSet16Bit(void)
|
||||
@@ -1623,29 +1793,29 @@ void viSet32Bit(void)
|
||||
g_ViIs16Bit = false;
|
||||
}
|
||||
|
||||
u8 *viGetUnk28(void)
|
||||
u8 *viGetBackBuffer(void)
|
||||
{
|
||||
return g_ViData->fb;
|
||||
return g_ViBackData->fb;
|
||||
}
|
||||
|
||||
u8 *vi2GetUnk28(void)
|
||||
u8 *viGetFrontBuffer(void)
|
||||
{
|
||||
return var8005d590->fb;
|
||||
return g_ViFrontData->fb;
|
||||
}
|
||||
|
||||
void viSetUnk28(u8 *fb)
|
||||
void viSetBackBuffer(u8 *fb)
|
||||
{
|
||||
g_ViData->fb = fb;
|
||||
g_ViBackData->fb = fb;
|
||||
}
|
||||
|
||||
Vp *viGetCurrentPlayerViewport(void)
|
||||
{
|
||||
return &g_Vars.currentplayer->viewport[var80092877];
|
||||
return &g_Vars.currentplayer->viewport[g_ViBackIndex];
|
||||
}
|
||||
|
||||
u16 vi0000ab6c(void)
|
||||
u16 viGetPerspScale(void)
|
||||
{
|
||||
return var80092874;
|
||||
return g_ViPerspScale;
|
||||
}
|
||||
|
||||
Gfx *vi0000ab78(Gfx *gdl)
|
||||
@@ -1658,7 +1828,7 @@ Gfx *vi0000ab78(Gfx *gdl)
|
||||
Mtx *sp48;
|
||||
u16 sp46;
|
||||
|
||||
guPerspectiveF(sp110.m, &sp46, g_ViData->fovy, g_ViData->aspect, g_ViData->znear, g_ViData->zfar + g_ViData->zfar, 1);
|
||||
guPerspectiveF(sp110.m, &sp46, g_ViBackData->fovy, g_ViBackData->aspect, g_ViBackData->znear, g_ViBackData->zfar + g_ViBackData->zfar, 1);
|
||||
func00015d18(currentPlayerGetMatrix1740(), &sp90);
|
||||
|
||||
sp90.m[3][0] = 0;
|
||||
@@ -1686,7 +1856,7 @@ Gfx *vi0000aca4(Gfx *gdl, f32 znear, f32 zfar)
|
||||
Mtxf tmp;
|
||||
Mtx *mtx = gfxAllocateMatrix();
|
||||
|
||||
guPerspectiveF(tmp.m, &scale, g_ViData->fovy, g_ViData->aspect, znear, zfar, 1);
|
||||
guPerspectiveF(tmp.m, &scale, g_ViBackData->fovy, g_ViBackData->aspect, znear, zfar, 1);
|
||||
guMtxF2L(tmp.m, mtx);
|
||||
|
||||
gSPMatrix(gdl++, OS_K0_TO_PHYSICAL(mtx), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
|
||||
@@ -1697,20 +1867,20 @@ Gfx *vi0000aca4(Gfx *gdl, f32 znear, f32 zfar)
|
||||
|
||||
Gfx *vi0000ad5c(Gfx *gdl, Vp *vp)
|
||||
{
|
||||
vp[var80092877].vp.vscale[0] = g_ViData->viewx * 2;
|
||||
vp[var80092877].vp.vtrans[0] = g_ViData->viewx * 2 + g_ViData->viewleft * 4;
|
||||
vp[g_ViBackIndex].vp.vscale[0] = g_ViBackData->viewx * 2;
|
||||
vp[g_ViBackIndex].vp.vtrans[0] = g_ViBackData->viewx * 2 + g_ViBackData->viewleft * 4;
|
||||
|
||||
vp[var80092877].vp.vscale[1] = g_ViData->viewy * 2;
|
||||
vp[var80092877].vp.vtrans[1] = g_ViData->viewy * 2 + g_ViData->viewtop * 4;
|
||||
vp[g_ViBackIndex].vp.vscale[1] = g_ViBackData->viewy * 2;
|
||||
vp[g_ViBackIndex].vp.vtrans[1] = g_ViBackData->viewy * 2 + g_ViBackData->viewtop * 4;
|
||||
|
||||
gSPViewport(gdl++, OS_K0_TO_PHYSICAL(&vp[var80092877]));
|
||||
gSPViewport(gdl++, OS_K0_TO_PHYSICAL(&vp[g_ViBackIndex]));
|
||||
|
||||
var80092870 = gfxAllocateMatrix();
|
||||
guPerspectiveF(var80092830.m, &var80092874, g_ViData->fovy, g_ViData->aspect, g_ViData->znear, g_ViData->zfar, 1);
|
||||
guPerspectiveF(var80092830.m, &g_ViPerspScale, g_ViBackData->fovy, g_ViBackData->aspect, g_ViBackData->znear, g_ViBackData->zfar, 1);
|
||||
guMtxF2L(var80092830.m, var80092870);
|
||||
|
||||
gSPMatrix(gdl++, OS_K0_TO_PHYSICAL(var80092870), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
|
||||
gSPPerspNormalize(gdl++, var80092874);
|
||||
gSPPerspNormalize(gdl++, g_ViPerspScale);
|
||||
|
||||
currentPlayerSetUnk1750(var80092870);
|
||||
currentPlayerSetUnk1754(&var80092830);
|
||||
@@ -1720,26 +1890,26 @@ Gfx *vi0000ad5c(Gfx *gdl, Vp *vp)
|
||||
|
||||
Gfx *vi0000af00(Gfx *gdl, Vp *vp)
|
||||
{
|
||||
vp[var80092877].vp.vscale[0] = g_ViData->viewx * 2;
|
||||
vp[var80092877].vp.vtrans[0] = g_ViData->viewx * 2 + g_ViData->viewleft * 4;
|
||||
vp[g_ViBackIndex].vp.vscale[0] = g_ViBackData->viewx * 2;
|
||||
vp[g_ViBackIndex].vp.vtrans[0] = g_ViBackData->viewx * 2 + g_ViBackData->viewleft * 4;
|
||||
|
||||
vp[var80092877].vp.vscale[1] = g_ViData->viewy * 2;
|
||||
vp[var80092877].vp.vtrans[1] = g_ViData->viewy * 2 + g_ViData->viewtop * 4;
|
||||
vp[g_ViBackIndex].vp.vscale[1] = g_ViBackData->viewy * 2;
|
||||
vp[g_ViBackIndex].vp.vtrans[1] = g_ViBackData->viewy * 2 + g_ViBackData->viewtop * 4;
|
||||
|
||||
vp[var80092877].vp.vscale[2] = 511;
|
||||
vp[var80092877].vp.vtrans[2] = 511;
|
||||
vp[g_ViBackIndex].vp.vscale[2] = 511;
|
||||
vp[g_ViBackIndex].vp.vtrans[2] = 511;
|
||||
|
||||
vp[var80092877].vp.vscale[3] = 0;
|
||||
vp[var80092877].vp.vtrans[3] = 0;
|
||||
vp[g_ViBackIndex].vp.vscale[3] = 0;
|
||||
vp[g_ViBackIndex].vp.vtrans[3] = 0;
|
||||
|
||||
gSPViewport(gdl++, OS_K0_TO_PHYSICAL(&vp[var80092877]));
|
||||
gSPViewport(gdl++, OS_K0_TO_PHYSICAL(&vp[g_ViBackIndex]));
|
||||
|
||||
var80092870 = gfxAllocateMatrix();
|
||||
guPerspectiveF(var80092830.m, &var80092874, g_ViData->fovy, g_ViData->aspect, g_ViData->znear, g_ViData->zfar, 1);
|
||||
guPerspectiveF(var80092830.m, &g_ViPerspScale, g_ViBackData->fovy, g_ViBackData->aspect, g_ViBackData->znear, g_ViBackData->zfar, 1);
|
||||
guMtxF2L(var80092830.m, var80092870);
|
||||
|
||||
gSPMatrix(gdl++, OS_K0_TO_PHYSICAL(var80092870), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
|
||||
gSPPerspNormalize(gdl++, var80092874);
|
||||
gSPPerspNormalize(gdl++, g_ViPerspScale);
|
||||
|
||||
currentPlayerSetUnk1750(var80092870);
|
||||
currentPlayerSetUnk1754(&var80092830);
|
||||
@@ -1752,11 +1922,11 @@ Gfx *vi0000b0e8(Gfx *gdl, f32 fovy, f32 aspect)
|
||||
Mtxf tmp;
|
||||
Mtx *mtx = gfxAllocateMatrix();
|
||||
|
||||
guPerspectiveF(tmp.m, &var80092874, fovy, aspect, g_ViData->znear, g_ViData->zfar, 1);
|
||||
guPerspectiveF(tmp.m, &g_ViPerspScale, fovy, aspect, g_ViBackData->znear, g_ViBackData->zfar, 1);
|
||||
guMtxF2L(tmp.m, mtx);
|
||||
|
||||
gSPMatrix(gdl++, OS_K0_TO_PHYSICAL(mtx), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
|
||||
gSPPerspNormalize(gdl++, var80092874);
|
||||
gSPPerspNormalize(gdl++, g_ViPerspScale);
|
||||
|
||||
return gdl;
|
||||
}
|
||||
@@ -1771,9 +1941,9 @@ Gfx *vi0000b1d0(Gfx *gdl)
|
||||
gdl = vi0000b1a8(gdl);
|
||||
|
||||
if (g_ViIs16Bit) {
|
||||
gDPSetColorImage(gdl++, G_IM_FMT_RGBA, G_IM_SIZ_16b, g_ViData->bufx, OS_K0_TO_PHYSICAL(g_ViData->fb));
|
||||
gDPSetColorImage(gdl++, G_IM_FMT_RGBA, G_IM_SIZ_16b, g_ViBackData->bufx, OS_K0_TO_PHYSICAL(g_ViBackData->fb));
|
||||
} else {
|
||||
gDPSetColorImage(gdl++, G_IM_FMT_RGBA, G_IM_SIZ_32b, g_ViData->bufx, OS_K0_TO_PHYSICAL(var8009cac0[0]));
|
||||
gDPSetColorImage(gdl++, G_IM_FMT_RGBA, G_IM_SIZ_32b, g_ViBackData->bufx, OS_K0_TO_PHYSICAL(g_FrameBuffers[0]));
|
||||
}
|
||||
|
||||
return gdl;
|
||||
@@ -1781,7 +1951,7 @@ Gfx *vi0000b1d0(Gfx *gdl)
|
||||
|
||||
Gfx *vi0000b280(Gfx *gdl)
|
||||
{
|
||||
if (g_ViData->usezbuf) {
|
||||
if (g_ViBackData->usezbuf) {
|
||||
gdl = func0f1762ac(gdl);
|
||||
gdl = func0f1763f4(gdl);
|
||||
}
|
||||
@@ -1789,10 +1959,10 @@ Gfx *vi0000b280(Gfx *gdl)
|
||||
return gdl;
|
||||
}
|
||||
|
||||
Gfx *func0000b2c4(Gfx *gdl)
|
||||
Gfx *viFillBuffer(Gfx *gdl)
|
||||
{
|
||||
gDPSetCycleType(gdl++, G_CYC_FILL);
|
||||
gDPFillRectangle(gdl++, 0, 0, g_ViData->bufx - 1, g_ViData->bufy - 1);
|
||||
gDPFillRectangle(gdl++, 0, 0, g_ViBackData->bufx - 1, g_ViBackData->bufy - 1);
|
||||
gDPPipeSync(gdl++);
|
||||
|
||||
return gdl;
|
||||
@@ -1920,131 +2090,131 @@ glabel vi0000bd68nb
|
||||
);
|
||||
#endif
|
||||
|
||||
void viSetBuf(s16 x, s16 y)
|
||||
void viSetBufSize(s16 width, s16 height)
|
||||
{
|
||||
g_ViData->bufx = x;
|
||||
g_ViData->bufy = y;
|
||||
g_ViBackData->bufx = width;
|
||||
g_ViBackData->bufy = height;
|
||||
}
|
||||
|
||||
s16 viGetBufX(void)
|
||||
s16 viGetBufWidth(void)
|
||||
{
|
||||
return g_ViData->bufx;
|
||||
return g_ViBackData->bufx;
|
||||
}
|
||||
|
||||
s16 viGetBufY(void)
|
||||
s16 viGetBufHeight(void)
|
||||
{
|
||||
return g_ViData->bufy;
|
||||
return g_ViBackData->bufy;
|
||||
}
|
||||
|
||||
void viSetXY(s16 x, s16 y)
|
||||
void viSetSize(s16 width, s16 height)
|
||||
{
|
||||
g_ViData->x = x;
|
||||
g_ViData->y = y;
|
||||
g_ViBackData->x = width;
|
||||
g_ViBackData->y = height;
|
||||
}
|
||||
|
||||
s16 viGetWidth(void)
|
||||
{
|
||||
return g_ViData->x;
|
||||
return g_ViBackData->x;
|
||||
}
|
||||
|
||||
s16 viGetHeight(void)
|
||||
{
|
||||
return g_ViData->y;
|
||||
return g_ViBackData->y;
|
||||
}
|
||||
|
||||
void viSetViewSize(s16 x, s16 y)
|
||||
void viSetViewSize(s16 width, s16 height)
|
||||
{
|
||||
g_ViData->viewx = x;
|
||||
g_ViData->viewy = y;
|
||||
g_ViBackData->viewx = width;
|
||||
g_ViBackData->viewy = height;
|
||||
|
||||
currentPlayerSetScreenSize(g_ViData->viewx, g_ViData->viewy);
|
||||
currentPlayerSetScreenSize(g_ViBackData->viewx, g_ViBackData->viewy);
|
||||
currentPlayerSetCameraScale();
|
||||
}
|
||||
|
||||
s16 viGetViewWidth(void)
|
||||
{
|
||||
return g_ViData->viewx;
|
||||
return g_ViBackData->viewx;
|
||||
}
|
||||
|
||||
s16 viGetViewHeight(void)
|
||||
{
|
||||
return g_ViData->viewy;
|
||||
return g_ViBackData->viewy;
|
||||
}
|
||||
|
||||
void viSetViewPosition(s16 left, s16 top)
|
||||
{
|
||||
g_ViData->viewleft = left;
|
||||
g_ViData->viewtop = top;
|
||||
g_ViBackData->viewleft = left;
|
||||
g_ViBackData->viewtop = top;
|
||||
|
||||
currentPlayerSetScreenPosition(g_ViData->viewleft, g_ViData->viewtop);
|
||||
currentPlayerSetScreenPosition(g_ViBackData->viewleft, g_ViBackData->viewtop);
|
||||
}
|
||||
|
||||
s16 viGetViewLeft(void)
|
||||
{
|
||||
return g_ViData->viewleft;
|
||||
return g_ViBackData->viewleft;
|
||||
}
|
||||
|
||||
s16 viGetViewTop(void)
|
||||
{
|
||||
return g_ViData->viewtop;
|
||||
return g_ViBackData->viewtop;
|
||||
}
|
||||
|
||||
void viSetUseZBuf(bool use)
|
||||
{
|
||||
g_ViData->usezbuf = use;
|
||||
g_ViBackData->usezbuf = use;
|
||||
}
|
||||
|
||||
void viSetFovY(f32 fovy)
|
||||
{
|
||||
g_ViData->fovy = fovy;
|
||||
g_ViBackData->fovy = fovy;
|
||||
|
||||
currentPlayerSetPerspective(g_ViData->znear, g_ViData->fovy, g_ViData->aspect);
|
||||
currentPlayerSetPerspective(g_ViBackData->znear, g_ViBackData->fovy, g_ViBackData->aspect);
|
||||
currentPlayerSetCameraScale();
|
||||
}
|
||||
|
||||
void viSetAspect(f32 aspect)
|
||||
{
|
||||
g_ViData->aspect = aspect;
|
||||
g_ViBackData->aspect = aspect;
|
||||
|
||||
currentPlayerSetPerspective(g_ViData->znear, g_ViData->fovy, g_ViData->aspect);
|
||||
currentPlayerSetPerspective(g_ViBackData->znear, g_ViBackData->fovy, g_ViBackData->aspect);
|
||||
currentPlayerSetCameraScale();
|
||||
}
|
||||
|
||||
f32 viGetAspect(void)
|
||||
{
|
||||
return g_ViData->aspect;
|
||||
return g_ViBackData->aspect;
|
||||
}
|
||||
|
||||
void viSetFovAspectAndSize(f32 fovy, f32 aspect, s16 width, s16 height)
|
||||
{
|
||||
g_ViData->fovy = fovy;
|
||||
g_ViData->aspect = aspect;
|
||||
g_ViData->viewx = width;
|
||||
g_ViData->viewy = height;
|
||||
g_ViBackData->fovy = fovy;
|
||||
g_ViBackData->aspect = aspect;
|
||||
g_ViBackData->viewx = width;
|
||||
g_ViBackData->viewy = height;
|
||||
|
||||
currentPlayerSetScreenSize(g_ViData->viewx, g_ViData->viewy);
|
||||
currentPlayerSetPerspective(g_ViData->znear, g_ViData->fovy, g_ViData->aspect);
|
||||
currentPlayerSetScreenSize(g_ViBackData->viewx, g_ViBackData->viewy);
|
||||
currentPlayerSetPerspective(g_ViBackData->znear, g_ViBackData->fovy, g_ViBackData->aspect);
|
||||
currentPlayerSetCameraScale();
|
||||
}
|
||||
|
||||
f32 viGetFovY(void)
|
||||
{
|
||||
return g_ViData->fovy;
|
||||
return g_ViBackData->fovy;
|
||||
}
|
||||
|
||||
void viSetZRange(f32 near, f32 far)
|
||||
{
|
||||
g_ViData->znear = near;
|
||||
g_ViData->zfar = far;
|
||||
g_ViBackData->znear = near;
|
||||
g_ViBackData->zfar = far;
|
||||
|
||||
currentPlayerSetPerspective(g_ViData->znear, g_ViData->fovy, g_ViData->aspect);
|
||||
currentPlayerSetPerspective(g_ViBackData->znear, g_ViBackData->fovy, g_ViBackData->aspect);
|
||||
currentPlayerSetCameraScale();
|
||||
}
|
||||
|
||||
void viGetZRange(struct zrange *zrange)
|
||||
{
|
||||
zrange->near = g_ViData->znear;
|
||||
zrange->far = g_ViData->zfar;
|
||||
zrange->near = g_ViBackData->znear;
|
||||
zrange->far = g_ViBackData->zfar;
|
||||
}
|
||||
|
||||
Gfx *viSetFillColour(Gfx *gdl, s32 r, s32 g, s32 b)
|
||||
|
||||
+26
-26
@@ -67,7 +67,7 @@ u32 var8005d9b8 = 0x0004b000;
|
||||
s32 var8005d9bc = 0;
|
||||
s32 var8005d9c0 = 0;
|
||||
s32 var8005d9c4 = 0;
|
||||
s32 var8005d9c8 = 1;
|
||||
bool g_MainGameLogicEnabled = true;
|
||||
u32 var8005d9cc = 0;
|
||||
bool g_MainIsEndscreen = false;
|
||||
s32 g_DoBootPakMenu = 0;
|
||||
@@ -311,7 +311,7 @@ glabel mainInit
|
||||
/* d294: 00000000 */ nop
|
||||
/* d298: 0c004d3a */ jal func00013758
|
||||
/* d29c: 00000000 */ nop
|
||||
/* d2a0: 0c002668 */ jal vi00009ab0
|
||||
/* d2a0: 0c002668 */ jal viConfigureForLogos
|
||||
/* d2a4: 00000000 */ nop
|
||||
/* d2a8: 0c00bcc2 */ jal rmonIsDisabled
|
||||
/* d2ac: 00000000 */ nop
|
||||
@@ -517,9 +517,9 @@ glabel mainInit
|
||||
/* d594: 14c9fff3 */ bne $a2,$t1,.PF0000d564
|
||||
/* d598: 24e70240 */ addiu $a3,$a3,0x240
|
||||
.PF0000d59c:
|
||||
/* d59c: 0c0029fd */ jal vi0000aab0
|
||||
/* d59c: 0c0029fd */ jal viSetMode
|
||||
/* d5a0: 24040002 */ li $a0,0x2
|
||||
/* d5a4: 0c002696 */ jal vi00009b50
|
||||
/* d5a4: 0c002696 */ jal viConfigureForBanner
|
||||
/* d5a8: 02002025 */ move $a0,$s0
|
||||
/* d5ac: 8faa0048 */ lw $t2,0x48($sp)
|
||||
/* d5b0: 3c018006 */ lui $at,0x8006
|
||||
@@ -557,7 +557,7 @@ glabel mainInit
|
||||
/* d624: 27b01458 */ addiu $s0,$sp,0x1458
|
||||
/* d628: 5561000d */ bnel $t3,$at,.PF0000d660
|
||||
/* d62c: 28610006 */ slti $at,$v1,0x6
|
||||
/* d630: 0c0027d9 */ jal vi0000a044
|
||||
/* d630: 0c0027d9 */ jal viUpdateMode
|
||||
/* d634: afa31490 */ sw $v1,0x1490($sp)
|
||||
/* d638: 3c048006 */ lui $a0,0x8006
|
||||
/* d63c: 3c058006 */ lui $a1,0x8006
|
||||
@@ -676,7 +676,7 @@ glabel mainInit
|
||||
/* d7f0: 00000000 */ nop
|
||||
/* d7f4: 0fc00024 */ jal func0f000090
|
||||
/* d7f8: 00000000 */ nop
|
||||
/* d7fc: 0c0026c0 */ jal vi00009bf8
|
||||
/* d7fc: 0c0026c0 */ jal viConfigureForLegal
|
||||
/* d800: 00000000 */ nop
|
||||
/* d804: 0c002779 */ jal viBlack
|
||||
/* d808: 24040001 */ li $a0,0x1
|
||||
@@ -714,7 +714,7 @@ glabel mainInit
|
||||
/* d554: 00000000 */ nop
|
||||
/* d558: 0c004dd6 */ jal func00013758
|
||||
/* d55c: 00000000 */ nop
|
||||
/* d560: 0c0026ac */ jal vi00009ab0
|
||||
/* d560: 0c0026ac */ jal viConfigureForLogos
|
||||
/* d564: 00000000 */ nop
|
||||
/* d568: 0c00be82 */ jal rmonIsDisabled
|
||||
/* d56c: 00000000 */ nop
|
||||
@@ -920,9 +920,9 @@ glabel mainInit
|
||||
/* d858: 14c9fff3 */ bne $a2,$t1,.L0000d828
|
||||
/* d85c: 24e70240 */ addiu $a3,$a3,0x240
|
||||
.L0000d860:
|
||||
/* d860: 0c002aac */ jal vi0000aab0
|
||||
/* d860: 0c002aac */ jal viSetMode
|
||||
/* d864: 24040002 */ addiu $a0,$zero,0x2
|
||||
/* d868: 0c0026d4 */ jal vi00009b50
|
||||
/* d868: 0c0026d4 */ jal viConfigureForBanner
|
||||
/* d86c: 02002025 */ or $a0,$s0,$zero
|
||||
/* d870: 8faa0048 */ lw $t2,0x48($sp)
|
||||
/* d874: 3c018006 */ lui $at,%hi(g_RdpOutBufferStart)
|
||||
@@ -960,7 +960,7 @@ glabel mainInit
|
||||
/* d8e8: 27b01450 */ addiu $s0,$sp,0x1450
|
||||
/* d8ec: 5561000d */ bnel $t3,$at,.L0000d924
|
||||
/* d8f0: 28610006 */ slti $at,$v1,0x6
|
||||
/* d8f4: 0c002811 */ jal vi0000a044
|
||||
/* d8f4: 0c002811 */ jal viUpdateMode
|
||||
/* d8f8: afa31488 */ sw $v1,0x1488($sp)
|
||||
/* d8fc: 3c048006 */ lui $a0,%hi(var8005dcc8)
|
||||
/* d900: 3c058006 */ lui $a1,%hi(var8005dcf0)
|
||||
@@ -1079,7 +1079,7 @@ glabel mainInit
|
||||
/* dab4: 00000000 */ nop
|
||||
/* dab8: 0fc00024 */ jal func0f000090
|
||||
/* dabc: 00000000 */ nop
|
||||
/* dac0: 0c0026fe */ jal vi00009bf8
|
||||
/* dac0: 0c0026fe */ jal viConfigureForLegal
|
||||
/* dac4: 00000000 */ nop
|
||||
/* dac8: 0c0027b1 */ jal viBlack
|
||||
/* dacc: 24040001 */ addiu $a0,$zero,0x1
|
||||
@@ -1111,7 +1111,7 @@ glabel mainInit
|
||||
/* dabc: 00000000 */ sll $zero,$zero,0x0
|
||||
/* dac0: 0c004fea */ jal func00013758
|
||||
/* dac4: 00000000 */ sll $zero,$zero,0x0
|
||||
/* dac8: 0c002714 */ jal vi00009ab0
|
||||
/* dac8: 0c002714 */ jal viConfigureForLogos
|
||||
/* dacc: 00000000 */ sll $zero,$zero,0x0
|
||||
/* dad0: 0c00c456 */ jal rmonIsDisabled
|
||||
/* dad4: 00000000 */ sll $zero,$zero,0x0
|
||||
@@ -1298,9 +1298,9 @@ glabel mainInit
|
||||
/* dd78: 28c15f10 */ slti $at,$a2,0x5f10
|
||||
/* dd7c: 1420fff2 */ bnez $at,.NB0000dd48
|
||||
/* dd80: 24e70240 */ addiu $a3,$a3,0x240
|
||||
/* dd84: 0c002b0c */ jal vi0000aab0
|
||||
/* dd84: 0c002b0c */ jal viSetMode
|
||||
/* dd88: 24040002 */ addiu $a0,$zero,0x2
|
||||
/* dd8c: 0c00273c */ jal vi00009b50
|
||||
/* dd8c: 0c00273c */ jal viConfigureForBanner
|
||||
/* dd90: 02202025 */ or $a0,$s1,$zero
|
||||
/* dd94: 3c018006 */ lui $at,0x8006
|
||||
/* dd98: 3c118009 */ lui $s1,0x8009
|
||||
@@ -1336,7 +1336,7 @@ glabel mainInit
|
||||
/* de04: 854b0000 */ lh $t3,0x0($t2)
|
||||
/* de08: 5561000b */ bnel $t3,$at,.NB0000de38
|
||||
/* de0c: 2a010006 */ slti $at,$s0,0x6
|
||||
/* de10: 0c002871 */ jal vi0000a044
|
||||
/* de10: 0c002871 */ jal viUpdateMode
|
||||
/* de14: afae0054 */ sw $t6,0x54($sp)
|
||||
/* de18: 3c058006 */ lui $a1,0x8006
|
||||
/* de1c: 24a5f610 */ addiu $a1,$a1,-2544
|
||||
@@ -1452,7 +1452,7 @@ glabel mainInit
|
||||
/* dfc4: 00000000 */ sll $zero,$zero,0x0
|
||||
/* dfc8: 0fc00024 */ jal func0f000090
|
||||
/* dfcc: 00000000 */ sll $zero,$zero,0x0
|
||||
/* dfd0: 0c002767 */ jal vi00009bf8
|
||||
/* dfd0: 0c002767 */ jal viConfigureForLegal
|
||||
/* dfd4: 00000000 */ sll $zero,$zero,0x0
|
||||
/* dfd8: 0c00281a */ jal viBlack
|
||||
/* dfdc: 24040001 */ addiu $a0,$zero,0x1
|
||||
@@ -1501,7 +1501,7 @@ const char var70053aa0[] = " -ml0 -me0 -mgfx100 -mvtx50 -mt700 -ma400";
|
||||
// func000121e0();
|
||||
// func00012a0c();
|
||||
// func00013758();
|
||||
// vi00009ab0();
|
||||
// viConfigureForLogos();
|
||||
// var8005d9b0 = rmonIsDisabled();
|
||||
// joySystemInit();
|
||||
// osCreateMesgQueue(&queue, &msg, 1);
|
||||
@@ -1588,8 +1588,8 @@ const char var70053aa0[] = " -ml0 -me0 -mgfx100 -mvtx50 -mt700 -ma400";
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// vi0000aab0(2);
|
||||
// vi00009b50(fb);
|
||||
// viSetMode(VIMODE_HI);
|
||||
// viConfigureForBanner(fb);
|
||||
//
|
||||
// g_RdpOutBufferStart = texture;
|
||||
// g_RdpOutBufferEnd = texture + 0x400; // 0x800 bytes, because texture is u16
|
||||
@@ -1606,7 +1606,7 @@ const char var70053aa0[] = " -ml0 -me0 -mgfx100 -mvtx50 -mt700 -ma400";
|
||||
// osRecvMesg(&var8008db30, &sp1470, OS_MESG_BLOCK);
|
||||
//
|
||||
// if (*(s16 *)sp1470 == 1) {
|
||||
// vi0000a044();
|
||||
// viUpdateMode();
|
||||
// rdpCreateTask(var8005dcc8, var8005dcf0, 0, sp1450);
|
||||
// j++;
|
||||
// }
|
||||
@@ -1673,7 +1673,7 @@ const char var70053aa0[] = " -ml0 -me0 -mgfx100 -mvtx50 -mt700 -ma400";
|
||||
// stub0f000850();
|
||||
// stub0f000860();
|
||||
// func0f000090();
|
||||
// vi00009bf8();
|
||||
// viConfigureForLegal();
|
||||
// viBlack(true);
|
||||
//
|
||||
// var8005dd18 = 0;
|
||||
@@ -1780,7 +1780,7 @@ void mainLoop(void)
|
||||
// Outer loop - this is infinite because ending is never changed
|
||||
while (!ending) {
|
||||
var8005d9cc = 0;
|
||||
var8005d9c8 = 1;
|
||||
g_MainGameLogicEnabled = true;
|
||||
msg = NULL;
|
||||
g_MainIsEndscreen = false;
|
||||
|
||||
@@ -2607,7 +2607,7 @@ void mainTick(void)
|
||||
joyDebugJoy();
|
||||
func00001b28(0);
|
||||
|
||||
if (var8005d9c8) {
|
||||
if (g_MainGameLogicEnabled) {
|
||||
gdl = gdlstart = gfxGetMasterDisplayList();
|
||||
|
||||
gDPSetTile(gdl++, G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0x0000, G_TX_LOADTILE, 0, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOLOD);
|
||||
@@ -2642,9 +2642,9 @@ void mainTick(void)
|
||||
gSPEndDisplayList(gdl++);
|
||||
}
|
||||
|
||||
if (var8005d9c8) {
|
||||
if (g_MainGameLogicEnabled) {
|
||||
gfxSwapBuffers();
|
||||
vi0000a044();
|
||||
viUpdateMode();
|
||||
}
|
||||
|
||||
rdpCreateTask(gdlstart, gdl, 0, array);
|
||||
@@ -3014,7 +3014,7 @@ glabel mainTick
|
||||
/* ee24: 8fa40090 */ lw $a0,0x90($sp)
|
||||
/* ee28: 0fc588d6 */ jal gfxSwapBuffers
|
||||
/* ee2c: 00000000 */ sll $zero,$zero,0x0
|
||||
/* ee30: 0c002871 */ jal vi0000a044
|
||||
/* ee30: 0c002871 */ jal viUpdateMode
|
||||
/* ee34: 00000000 */ sll $zero,$zero,0x0
|
||||
/* ee38: 8fa40090 */ lw $a0,0x90($sp)
|
||||
.NB0000ee3c:
|
||||
|
||||
+14
-14
@@ -42,13 +42,13 @@ u32 var8005ce68 = 0x00000000;
|
||||
u32 var8005ce6c = 0x02aea540;
|
||||
u32 var8005ce70 = 0x00000000;
|
||||
s32 var8005ce74 = 0;
|
||||
f32 var8005ce78[2] = {1, 1};
|
||||
f32 var8005ce80[2] = {1, 1};
|
||||
u32 var8005ce88[2] = {0};
|
||||
f32 g_ViXScalesBySlot[2] = {1, 1};
|
||||
f32 g_ViYScalesBySlot[2] = {1, 1};
|
||||
u32 g_SchedViModesPending[2] = {false, false};
|
||||
s32 g_ViUnblackTimer = 3;
|
||||
s32 var8005ce94 = 1;
|
||||
s32 var8005ce98 = 0;
|
||||
u32 var8005ce9c = 0x00000000;
|
||||
s32 g_ViShakeDirection = 1;
|
||||
s32 g_ViShakeIntensity = 0;
|
||||
s32 g_ViShakeTimer = 0;
|
||||
u32 var8005cea0 = 0x00000000;
|
||||
u32 var8005cea4 = 0x00000000;
|
||||
OSMesg var8005cea8 = (OSMesg)0x00040000;
|
||||
@@ -94,8 +94,8 @@ void func00001b98(u32 value)
|
||||
{
|
||||
if ((value & 0xf) == 0 && ((var8005ce68 && var8005ce64) || var8005ce60)) {
|
||||
if (osGetCount() - var8005ce70 > var8005ce6c) {
|
||||
func0000cf54(var8009cac0[0]);
|
||||
func0000cf54(var8009cac0[1]);
|
||||
func0000cf54(g_FrameBuffers[0]);
|
||||
func0000cf54(g_FrameBuffers[1]);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -519,13 +519,13 @@ s32 __scTaskComplete(OSSched *sc, OSScTask *t)
|
||||
&& (t->flags & OS_SC_SWAPBUFFER)
|
||||
&& (t->flags & OS_SC_LAST_TASK)) {
|
||||
if (var8005cec8) {
|
||||
osViBlack(0);
|
||||
osViBlack(false);
|
||||
var8005cec8 = 0;
|
||||
}
|
||||
|
||||
var8005ce74 = (var8005ce74 + 1) % 2;
|
||||
|
||||
if (var8005ce88[1 - var8005ce74] != 0) {
|
||||
if (g_SchedViModesPending[1 - var8005ce74]) {
|
||||
if (var8008dd60[1 - var8005ce74]->comRegs.width != var8008dcc0[1 - var8005ce74].comRegs.width
|
||||
|| var8008dd60[1 - var8005ce74]->comRegs.xScale != var8008dcc0[1 - var8005ce74].comRegs.xScale
|
||||
|| var8008dd60[1 - var8005ce74]->fldRegs[0].yScale != var8008dcc0[1 - var8005ce74].fldRegs[0].yScale
|
||||
@@ -540,12 +540,12 @@ s32 __scTaskComplete(OSSched *sc, OSScTask *t)
|
||||
|
||||
osViSetMode(var8008dd60[1 - var8005ce74]);
|
||||
osViBlack(g_ViUnblackTimer);
|
||||
osViSetXScale(var8005ce78[1 - var8005ce74]);
|
||||
osViSetYScale(var8005ce80[1 - var8005ce74]);
|
||||
osViSetSpecialFeatures(0x42);
|
||||
osViSetXScale(g_ViXScalesBySlot[1 - var8005ce74]);
|
||||
osViSetYScale(g_ViYScalesBySlot[1 - var8005ce74]);
|
||||
osViSetSpecialFeatures(OS_VI_GAMMA_OFF | OS_VI_DITHER_FILTER_ON);
|
||||
}
|
||||
|
||||
var8005ce88[1 - var8005ce74] = 0;
|
||||
g_SchedViModesPending[1 - var8005ce74] = false;
|
||||
}
|
||||
|
||||
if (g_ViUnblackTimer != 0 && g_ViUnblackTimer < 3) {
|
||||
|
||||
@@ -8,7 +8,7 @@ OSPifRam __osEepPifRam;
|
||||
u32 var8009d010pf[4];
|
||||
#endif
|
||||
|
||||
u8 *var8009cac0[2];
|
||||
u8 *g_FrameBuffers[2];
|
||||
|
||||
void __osPackEepReadData(u8 address);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user