mirror of
https://github.com/zeldaret/oot.git
synced 2025-07-04 06:54:33 +00:00
Interface improvements (#822)
* Add symbols, does NOT build OK * parameter OK with syms * Use `static` more and inline arrays * wip docs * Start on Interface_Draw, NOT OK yet * rename variables since interface dev is weird * nonmatching for now * kaleido * Update src/code/z_parameter.c Co-authored-by: louist103 <35883445+louist103@users.noreply.github.com> * Make most texture rectangles use shifts * fix symbols for all interface things * done with interface_draw for now * Update z_parameter.c * format files * fix wrong function calls * fix bss * improvements in matching * remove button enum for now * (void)0 to fix warning * make conditional look nicer * fix * fix wrong combiner * Update src/overlays/actors/ovl_kaleido_scope/z_lmap_mark.c Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com> * format * remove "HUD" naming * review suggestions Co-authored-by: louist103 <35883445+louist103@users.noreply.github.com> Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
This commit is contained in:
parent
566d107e55
commit
c644aaa2ee
30 changed files with 954 additions and 842 deletions
|
@ -212,8 +212,8 @@ glabel func_8010BED8
|
||||||
/* B833AC 8010C20C AC6C0000 */ sw $t4, ($v1)
|
/* B833AC 8010C20C AC6C0000 */ sw $t4, ($v1)
|
||||||
/* B833B0 8010C210 24420008 */ addiu $v0, $v0, 8
|
/* B833B0 8010C210 24420008 */ addiu $v0, $v0, 8
|
||||||
/* B833B4 8010C214 00401825 */ move $v1, $v0
|
/* B833B4 8010C214 00401825 */ move $v1, $v0
|
||||||
/* B833B8 8010C218 3C0F0200 */ lui $t7, %hi(D_02002E40) # $t7, 0x200
|
/* B833B8 8010C218 3C0F0200 */ lui $t7, %hi(gOcarinaTrebleClefTex) # $t7, 0x200
|
||||||
/* B833BC 8010C21C 25EF2E40 */ addiu $t7, %lo(D_02002E40) # addiu $t7, $t7, 0x2e40
|
/* B833BC 8010C21C 25EF2E40 */ addiu $t7, %lo(gOcarinaTrebleClefTex) # addiu $t7, $t7, 0x2e40
|
||||||
/* B833C0 8010C220 3C18FD90 */ lui $t8, 0xfd90
|
/* B833C0 8010C220 3C18FD90 */ lui $t8, 0xfd90
|
||||||
/* B833C4 8010C224 AC780000 */ sw $t8, ($v1)
|
/* B833C4 8010C224 AC780000 */ sw $t8, ($v1)
|
||||||
/* B833C8 8010C228 AC6F0004 */ sw $t7, 4($v1)
|
/* B833C8 8010C228 AC6F0004 */ sw $t7, 4($v1)
|
||||||
|
|
|
@ -170,8 +170,8 @@ glabel Interface_Draw
|
||||||
/* B01CEC 8008AB4C 24180010 */ li $t8, 16
|
/* B01CEC 8008AB4C 24180010 */ li $t8, 16
|
||||||
/* B01CF0 8008AB50 240F00CE */ li $t7, 206
|
/* B01CF0 8008AB50 240F00CE */ li $t7, 206
|
||||||
/* B01CF4 8008AB54 240E001A */ li $t6, 26
|
/* B01CF4 8008AB54 240E001A */ li $t6, 26
|
||||||
/* B01CF8 8008AB58 3C050200 */ lui $a1, %hi(D_02001F00) # $a1, 0x200
|
/* B01CF8 8008AB58 3C050200 */ lui $a1, %hi(gRupeeCounterIconTex) # $a1, 0x200
|
||||||
/* B01CFC 8008AB5C 24A51F00 */ addiu $a1, %lo(D_02001F00) # addiu $a1, $a1, 0x1f00
|
/* B01CFC 8008AB5C 24A51F00 */ addiu $a1, %lo(gRupeeCounterIconTex) # addiu $a1, $a1, 0x1f00
|
||||||
/* B01D00 8008AB60 AFAE0010 */ sw $t6, 0x10($sp)
|
/* B01D00 8008AB60 AFAE0010 */ sw $t6, 0x10($sp)
|
||||||
/* B01D04 8008AB64 AFAF0014 */ sw $t7, 0x14($sp)
|
/* B01D04 8008AB64 AFAF0014 */ sw $t7, 0x14($sp)
|
||||||
/* B01D08 8008AB68 AFB80018 */ sw $t8, 0x18($sp)
|
/* B01D08 8008AB68 AFB80018 */ sw $t8, 0x18($sp)
|
||||||
|
@ -203,9 +203,9 @@ glabel L8008ABB0
|
||||||
/* B01D6C 8008ABCC 3421FF00 */ ori $at, (0xC8E6FF00 & 0xFFFF) # ori $at, $at, 0xff00
|
/* B01D6C 8008ABCC 3421FF00 */ ori $at, (0xC8E6FF00 & 0xFFFF) # ori $at, $at, 0xff00
|
||||||
/* B01D70 8008ABD0 3C0CFA00 */ lui $t4, 0xfa00
|
/* B01D70 8008ABD0 3C0CFA00 */ lui $t4, 0xfa00
|
||||||
/* B01D74 8008ABD4 0700007D */ bltz $t8, .L8008ADCC
|
/* B01D74 8008ABD4 0700007D */ bltz $t8, .L8008ADCC
|
||||||
/* B01D78 8008ABD8 3C050200 */ lui $a1, %hi(D_02001E00) # $a1, 0x200
|
/* B01D78 8008ABD8 3C050200 */ lui $a1, %hi(gSmallKeyCounterIconTex) # $a1, 0x200
|
||||||
/* B01D7C 8008ABDC 8E8702B0 */ lw $a3, 0x2b0($s4)
|
/* B01D7C 8008ABDC 8E8702B0 */ lw $a3, 0x2b0($s4)
|
||||||
/* B01D80 8008ABE0 24A51E00 */ addiu $a1, %lo(D_02001E00) # addiu $a1, $a1, 0x1e00
|
/* B01D80 8008ABE0 24A51E00 */ addiu $a1, %lo(gSmallKeyCounterIconTex) # addiu $a1, $a1, 0x1e00
|
||||||
/* B01D84 8008ABE4 24060010 */ li $a2, 16
|
/* B01D84 8008ABE4 24060010 */ li $a2, 16
|
||||||
/* B01D88 8008ABE8 24F90008 */ addiu $t9, $a3, 8
|
/* B01D88 8008ABE8 24F90008 */ addiu $t9, $a3, 8
|
||||||
/* B01D8C 8008ABEC AE9902B0 */ sw $t9, 0x2b0($s4)
|
/* B01D8C 8008ABEC AE9902B0 */ sw $t9, 0x2b0($s4)
|
||||||
|
@ -268,8 +268,8 @@ glabel L8008ABB0
|
||||||
/* B01E70 8008ACD0 ACF90000 */ sw $t9, ($a3)
|
/* B01E70 8008ACD0 ACF90000 */ sw $t9, ($a3)
|
||||||
/* B01E74 8008ACD4 A6C00236 */ sh $zero, 0x236($s6)
|
/* B01E74 8008ACD4 A6C00236 */ sh $zero, 0x236($s6)
|
||||||
/* B01E78 8008ACD8 96AB1402 */ lhu $t3, 0x1402($s5)
|
/* B01E78 8008ACD8 96AB1402 */ lhu $t3, 0x1402($s5)
|
||||||
/* B01E7C 8008ACDC 3C0A0200 */ lui $t2, %hi(D_02003040) # $t2, 0x200
|
/* B01E7C 8008ACDC 3C0A0200 */ lui $t2, %hi(gCounterDigit0Tex) # $t2, 0x200
|
||||||
/* B01E80 8008ACE0 254A3040 */ addiu $t2, %lo(D_02003040) # addiu $t2, $t2, 0x3040
|
/* B01E80 8008ACE0 254A3040 */ addiu $t2, %lo(gCounterDigit0Tex) # addiu $t2, $t2, 0x3040
|
||||||
/* B01E84 8008ACE4 02AB6021 */ addu $t4, $s5, $t3
|
/* B01E84 8008ACE4 02AB6021 */ addu $t4, $s5, $t3
|
||||||
/* B01E88 8008ACE8 818D00BC */ lb $t5, 0xbc($t4)
|
/* B01E88 8008ACE8 818D00BC */ lb $t5, 0xbc($t4)
|
||||||
/* B01E8C 8008ACEC 240C00BE */ li $t4, 190
|
/* B01E8C 8008ACEC 240C00BE */ li $t4, 190
|
||||||
|
@ -312,8 +312,8 @@ glabel L8008ABB0
|
||||||
/* B01F18 8008AD78 24120032 */ li $s2, 50
|
/* B01F18 8008AD78 24120032 */ li $s2, 50
|
||||||
.L8008AD7C:
|
.L8008AD7C:
|
||||||
/* B01F1C 8008AD7C 8E8402B0 */ lw $a0, 0x2b0($s4)
|
/* B01F1C 8008AD7C 8E8402B0 */ lw $a0, 0x2b0($s4)
|
||||||
/* B01F20 8008AD80 3C0A0200 */ lui $t2, %hi(D_02003040) # $t2, 0x200
|
/* B01F20 8008AD80 3C0A0200 */ lui $t2, %hi(gCounterDigit0Tex) # $t2, 0x200
|
||||||
/* B01F24 8008AD84 254A3040 */ addiu $t2, %lo(D_02003040) # addiu $t2, $t2, 0x3040
|
/* B01F24 8008AD84 254A3040 */ addiu $t2, %lo(gCounterDigit0Tex) # addiu $t2, $t2, 0x3040
|
||||||
/* B01F28 8008AD88 0003C9C0 */ sll $t9, $v1, 7
|
/* B01F28 8008AD88 0003C9C0 */ sll $t9, $v1, 7
|
||||||
/* B01F2C 8008AD8C 240B00BE */ li $t3, 190
|
/* B01F2C 8008AD8C 240B00BE */ li $t3, 190
|
||||||
/* B01F30 8008AD90 240C0008 */ li $t4, 8
|
/* B01F30 8008AD90 240C0008 */ li $t4, 8
|
||||||
|
@ -359,7 +359,7 @@ glabel L8008ABB0
|
||||||
/* B01FC4 8008AE24 030FC021 */ addu $t8, $t8, $t7
|
/* B01FC4 8008AE24 030FC021 */ addu $t8, $t8, $t7
|
||||||
/* B01FC8 8008AE28 9718721C */ lhu $t8, %lo(gUpgradeCapacities+0x20)($t8)
|
/* B01FC8 8008AE28 9718721C */ lhu $t8, %lo(gUpgradeCapacities+0x20)($t8)
|
||||||
/* B01FCC 8008AE2C 86A20034 */ lh $v0, 0x34($s5)
|
/* B01FCC 8008AE2C 86A20034 */ lh $v0, 0x34($s5)
|
||||||
/* B01FD0 8008AE30 3C108012 */ lui $s0, %hi(sRupeeDigitsFirst)
|
/* B01FD0 8008AE30 3C108012 */ lui $s0, %hi(rupeeDigitsFirst)
|
||||||
/* B01FD4 8008AE34 1458000C */ bne $v0, $t8, .L8008AE68
|
/* B01FD4 8008AE34 1458000C */ bne $v0, $t8, .L8008AE68
|
||||||
/* B01FD8 8008AE38 00000000 */ nop
|
/* B01FD8 8008AE38 00000000 */ nop
|
||||||
/* B01FDC 8008AE3C 8E8702B0 */ lw $a3, 0x2b0($s4)
|
/* B01FDC 8008AE3C 8E8702B0 */ lw $a3, 0x2b0($s4)
|
||||||
|
@ -451,14 +451,14 @@ glabel L8008ABB0
|
||||||
/* B02110 8008AF70 8EAC00A0 */ lw $t4, 0xa0($s5)
|
/* B02110 8008AF70 8EAC00A0 */ lw $t4, 0xa0($s5)
|
||||||
/* B02114 8008AF74 8C6D0010 */ lw $t5, 0x10($v1)
|
/* B02114 8008AF74 8C6D0010 */ lw $t5, 0x10($v1)
|
||||||
/* B02118 8008AF78 908F0004 */ lbu $t7, 4($a0)
|
/* B02118 8008AF78 908F0004 */ lbu $t7, 4($a0)
|
||||||
/* B0211C 8008AF7C 3C118012 */ lui $s1, %hi(sRupeeDigitsCount)
|
/* B0211C 8008AF7C 3C118012 */ lui $s1, %hi(rupeeDigitsCount)
|
||||||
/* B02120 8008AF80 018D7024 */ and $t6, $t4, $t5
|
/* B02120 8008AF80 018D7024 */ and $t6, $t4, $t5
|
||||||
/* B02124 8008AF84 01EE1007 */ srav $v0, $t6, $t7
|
/* B02124 8008AF84 01EE1007 */ srav $v0, $t6, $t7
|
||||||
/* B02128 8008AF88 00021040 */ sll $v0, $v0, 1
|
/* B02128 8008AF88 00021040 */ sll $v0, $v0, 1
|
||||||
/* B0212C 8008AF8C 02228821 */ addu $s1, $s1, $v0
|
/* B0212C 8008AF8C 02228821 */ addu $s1, $s1, $v0
|
||||||
/* B02130 8008AF90 86315B44 */ lh $s1, %lo(sRupeeDigitsCount)($s1)
|
/* B02130 8008AF90 86315B44 */ lh $s1, %lo(rupeeDigitsCount)($s1)
|
||||||
/* B02134 8008AF94 02028021 */ addu $s0, $s0, $v0
|
/* B02134 8008AF94 02028021 */ addu $s0, $s0, $v0
|
||||||
/* B02138 8008AF98 86105B3C */ lh $s0, %lo(sRupeeDigitsFirst)($s0)
|
/* B02138 8008AF98 86105B3C */ lh $s0, %lo(rupeeDigitsFirst)($s0)
|
||||||
/* B0213C 8008AF9C 1A200023 */ blez $s1, .L8008B02C
|
/* B0213C 8008AF9C 1A200023 */ blez $s1, .L8008B02C
|
||||||
/* B02140 8008AFA0 00009825 */ move $s3, $zero
|
/* B02140 8008AFA0 00009825 */ move $s3, $zero
|
||||||
.L8008AFA4:
|
.L8008AFA4:
|
||||||
|
@ -466,8 +466,8 @@ glabel L8008ABB0
|
||||||
/* B02148 8008AFA8 02D8C821 */ addu $t9, $s6, $t8
|
/* B02148 8008AFA8 02D8C821 */ addu $t9, $s6, $t8
|
||||||
/* B0214C 8008AFAC 872A0232 */ lh $t2, 0x232($t9)
|
/* B0214C 8008AFAC 872A0232 */ lh $t2, 0x232($t9)
|
||||||
/* B02150 8008AFB0 8E8402B0 */ lw $a0, 0x2b0($s4)
|
/* B02150 8008AFB0 8E8402B0 */ lw $a0, 0x2b0($s4)
|
||||||
/* B02154 8008AFB4 3C0C0200 */ lui $t4, %hi(D_02003040) # $t4, 0x200
|
/* B02154 8008AFB4 3C0C0200 */ lui $t4, %hi(gCounterDigit0Tex) # $t4, 0x200
|
||||||
/* B02158 8008AFB8 258C3040 */ addiu $t4, %lo(D_02003040) # addiu $t4, $t4, 0x3040
|
/* B02158 8008AFB8 258C3040 */ addiu $t4, %lo(gCounterDigit0Tex) # addiu $t4, $t4, 0x3040
|
||||||
/* B0215C 8008AFBC 24190400 */ li $t9, 1024
|
/* B0215C 8008AFBC 24190400 */ li $t9, 1024
|
||||||
/* B02160 8008AFC0 24180400 */ li $t8, 1024
|
/* B02160 8008AFC0 24180400 */ li $t8, 1024
|
||||||
/* B02164 8008AFC4 240D00CE */ li $t5, 206
|
/* B02164 8008AFC4 240D00CE */ li $t5, 206
|
||||||
|
@ -1180,7 +1180,7 @@ glabel L8008ABB0
|
||||||
/* B02C24 8008BA84 A7300102 */ sh $s0, 0x102($t9)
|
/* B02C24 8008BA84 A7300102 */ sh $s0, 0x102($t9)
|
||||||
/* B02C28 8008BA88 8C6A0000 */ lw $t2, ($v1)
|
/* B02C28 8008BA88 8C6A0000 */ lw $t2, ($v1)
|
||||||
/* B02C2C 8008BA8C 8C820168 */ lw $v0, 0x168($a0)
|
/* B02C2C 8008BA8C 8C820168 */ lw $v0, 0x168($a0)
|
||||||
/* B02C30 8008BA90 3C198012 */ lui $t9, %hi(sMagicArrowEffectsR)
|
/* B02C30 8008BA90 3C198012 */ lui $t9, %hi(magicArrowEffectsR)
|
||||||
/* B02C34 8008BA94 854C0E48 */ lh $t4, 0xe48($t2)
|
/* B02C34 8008BA94 854C0E48 */ lh $t4, 0xe48($t2)
|
||||||
/* B02C38 8008BA98 844B0102 */ lh $t3, 0x102($v0)
|
/* B02C38 8008BA98 844B0102 */ lh $t3, 0x102($v0)
|
||||||
/* B02C3C 8008BA9C 0185001A */ div $zero, $t4, $a1
|
/* B02C3C 8008BA9C 0185001A */ div $zero, $t4, $a1
|
||||||
|
@ -1203,7 +1203,7 @@ glabel L8008ABB0
|
||||||
.L8008BADC:
|
.L8008BADC:
|
||||||
/* B02C7C 8008BADC A5D00122 */ sh $s0, 0x122($t6)
|
/* B02C7C 8008BADC A5D00122 */ sh $s0, 0x122($t6)
|
||||||
/* B02C80 8008BAE0 8FAF0068 */ lw $t7, 0x68($sp)
|
/* B02C80 8008BAE0 8FAF0068 */ lw $t7, 0x68($sp)
|
||||||
/* B02C84 8008BAE4 3C0E8012 */ lui $t6, %hi(sMagicArrowEffectsB)
|
/* B02C84 8008BAE4 3C0E8012 */ lui $t6, %hi(magicArrowEffectsB)
|
||||||
/* B02C88 8008BAE8 3C0DFA00 */ lui $t5, 0xfa00
|
/* B02C88 8008BAE8 3C0DFA00 */ lui $t5, 0xfa00
|
||||||
/* B02C8C 8008BAEC 95E2024E */ lhu $v0, 0x24e($t7)
|
/* B02C8C 8008BAEC 95E2024E */ lhu $v0, 0x24e($t7)
|
||||||
/* B02C90 8008BAF0 284100BF */ slti $at, $v0, 0xbf
|
/* B02C90 8008BAF0 284100BF */ slti $at, $v0, 0xbf
|
||||||
|
@ -1291,15 +1291,15 @@ glabel L8008ABB0
|
||||||
/* B02DD4 8008BC34 00131840 */ sll $v1, $s3, 1
|
/* B02DD4 8008BC34 00131840 */ sll $v1, $s3, 1
|
||||||
/* B02DD8 8008BC38 0323C821 */ addu $t9, $t9, $v1
|
/* B02DD8 8008BC38 0323C821 */ addu $t9, $t9, $v1
|
||||||
/* B02DDC 8008BC3C ACED0000 */ sw $t5, ($a3)
|
/* B02DDC 8008BC3C ACED0000 */ sw $t5, ($a3)
|
||||||
/* B02DE0 8008BC40 872A5AEC */ lh $t2, %lo(sMagicArrowEffectsR)($t9)
|
/* B02DE0 8008BC40 872A5AEC */ lh $t2, %lo(magicArrowEffectsR)($t9)
|
||||||
/* B02DE4 8008BC44 01C37021 */ addu $t6, $t6, $v1
|
/* B02DE4 8008BC44 01C37021 */ addu $t6, $t6, $v1
|
||||||
/* B02DE8 8008BC48 85CE5AFC */ lh $t6, %lo(sMagicArrowEffectsB)($t6)
|
/* B02DE8 8008BC48 85CE5AFC */ lh $t6, %lo(magicArrowEffectsB)($t6)
|
||||||
/* B02DEC 8008BC4C 3C0D8012 */ lui $t5, %hi(sMagicArrowEffectsG)
|
/* B02DEC 8008BC4C 3C0D8012 */ lui $t5, %hi(magicArrowEffectsG)
|
||||||
/* B02DF0 8008BC50 000A6600 */ sll $t4, $t2, 0x18
|
/* B02DF0 8008BC50 000A6600 */ sll $t4, $t2, 0x18
|
||||||
/* B02DF4 8008BC54 8FAA0068 */ lw $t2, 0x68($sp)
|
/* B02DF4 8008BC54 8FAA0068 */ lw $t2, 0x68($sp)
|
||||||
/* B02DF8 8008BC58 01A36821 */ addu $t5, $t5, $v1
|
/* B02DF8 8008BC58 01A36821 */ addu $t5, $t5, $v1
|
||||||
/* B02DFC 8008BC5C 31CF00FF */ andi $t7, $t6, 0xff
|
/* B02DFC 8008BC5C 31CF00FF */ andi $t7, $t6, 0xff
|
||||||
/* B02E00 8008BC60 85AD5AF4 */ lh $t5, %lo(sMagicArrowEffectsG)($t5)
|
/* B02E00 8008BC60 85AD5AF4 */ lh $t5, %lo(magicArrowEffectsG)($t5)
|
||||||
/* B02E04 8008BC64 000FC200 */ sll $t8, $t7, 8
|
/* B02E04 8008BC64 000FC200 */ sll $t8, $t7, 8
|
||||||
/* B02E08 8008BC68 030C5825 */ or $t3, $t8, $t4
|
/* B02E08 8008BC68 030C5825 */ or $t3, $t8, $t4
|
||||||
/* B02E0C 8008BC6C 85580258 */ lh $t8, 0x258($t2)
|
/* B02E0C 8008BC6C 85580258 */ lh $t8, 0x258($t2)
|
||||||
|
@ -1364,8 +1364,8 @@ glabel L8008ABB0
|
||||||
/* B02EF0 8008BD50 A5D00122 */ sh $s0, 0x122($t6)
|
/* B02EF0 8008BD50 A5D00122 */ sh $s0, 0x122($t6)
|
||||||
.L8008BD54:
|
.L8008BD54:
|
||||||
/* B02EF4 8008BD54 8E8702B0 */ lw $a3, 0x2b0($s4)
|
/* B02EF4 8008BD54 8E8702B0 */ lw $a3, 0x2b0($s4)
|
||||||
/* B02EF8 8008BD58 3C0D0809 */ lui $t5, %hi(D_080895C0) # $t5, 0x809
|
/* B02EF8 8008BD58 3C0D0809 */ lui $t5, %hi(gMagicArrowEquipEffectTex) # $t5, 0x809
|
||||||
/* B02EFC 8008BD5C 25AD95C0 */ addiu $t5, %lo(D_080895C0) # addiu $t5, $t5, -0x6a40
|
/* B02EFC 8008BD5C 25AD95C0 */ addiu $t5, %lo(gMagicArrowEquipEffectTex) # addiu $t5, $t5, -0x6a40
|
||||||
/* B02F00 8008BD60 24EB0008 */ addiu $t3, $a3, 8
|
/* B02F00 8008BD60 24EB0008 */ addiu $t3, $a3, 8
|
||||||
/* B02F04 8008BD64 AE8B02B0 */ sw $t3, 0x2b0($s4)
|
/* B02F04 8008BD64 AE8B02B0 */ sw $t3, 0x2b0($s4)
|
||||||
/* B02F08 8008BD68 ACF10000 */ sw $s1, ($a3)
|
/* B02F08 8008BD68 ACF10000 */ sw $s1, ($a3)
|
||||||
|
@ -1449,9 +1449,9 @@ glabel L8008ABB0
|
||||||
/* B03038 8008BE98 24010008 */ li $at, 8
|
/* B03038 8008BE98 24010008 */ li $at, 8
|
||||||
/* B0303C 8008BE9C 3C0DFD18 */ lui $t5, 0xfd18
|
/* B0303C 8008BE9C 3C0DFD18 */ lui $t5, 0xfd18
|
||||||
/* B03040 8008BEA0 1721013D */ bne $t9, $at, .L8008C398
|
/* B03040 8008BEA0 1721013D */ bne $t9, $at, .L8008C398
|
||||||
/* B03044 8008BEA4 3C0E0200 */ lui $t6, %hi(D_02002100) # $t6, 0x200
|
/* B03044 8008BEA4 3C0E0200 */ lui $t6, %hi(gCarrotIconTex) # $t6, 0x200
|
||||||
/* B03048 8008BEA8 8E8702B0 */ lw $a3, 0x2b0($s4)
|
/* B03048 8008BEA8 8E8702B0 */ lw $a3, 0x2b0($s4)
|
||||||
/* B0304C 8008BEAC 25CE2100 */ addiu $t6, %lo(D_02002100) # addiu $t6, $t6, 0x2100
|
/* B0304C 8008BEAC 25CE2100 */ addiu $t6, %lo(gCarrotIconTex) # addiu $t6, $t6, 0x2100
|
||||||
/* B03050 8008BEB0 3C0FF518 */ lui $t7, 0xf518
|
/* B03050 8008BEB0 3C0FF518 */ lui $t7, 0xf518
|
||||||
/* B03054 8008BEB4 24EC0008 */ addiu $t4, $a3, 8
|
/* B03054 8008BEB4 24EC0008 */ addiu $t4, $a3, 8
|
||||||
/* B03058 8008BEB8 AE8C02B0 */ sw $t4, 0x2b0($s4)
|
/* B03058 8008BEB8 AE8C02B0 */ sw $t4, 0x2b0($s4)
|
||||||
|
@ -1592,12 +1592,12 @@ glabel L8008ABB0
|
||||||
/* B03260 8008C0C0 ACF80000 */ sw $t8, ($a3)
|
/* B03260 8008C0C0 ACF80000 */ sw $t8, ($a3)
|
||||||
/* B03264 8008C0C4 96D90248 */ lhu $t9, 0x248($s6)
|
/* B03264 8008C0C4 96D90248 */ lhu $t9, 0x248($s6)
|
||||||
/* B03268 8008C0C8 2401FF00 */ li $at, -256
|
/* B03268 8008C0C8 2401FF00 */ li $at, -256
|
||||||
/* B0326C 8008C0CC 3C0B0200 */ lui $t3, %hi(D_02002600) # $t3, 0x200
|
/* B0326C 8008C0CC 3C0B0200 */ lui $t3, %hi(gArcheryScoreIconTex) # $t3, 0x200
|
||||||
/* B03270 8008C0D0 332C00FF */ andi $t4, $t9, 0xff
|
/* B03270 8008C0D0 332C00FF */ andi $t4, $t9, 0xff
|
||||||
/* B03274 8008C0D4 01816825 */ or $t5, $t4, $at
|
/* B03274 8008C0D4 01816825 */ or $t5, $t4, $at
|
||||||
/* B03278 8008C0D8 ACED0004 */ sw $t5, 4($a3)
|
/* B03278 8008C0D8 ACED0004 */ sw $t5, 4($a3)
|
||||||
/* B0327C 8008C0DC 8E8702B0 */ lw $a3, 0x2b0($s4)
|
/* B0327C 8008C0DC 8E8702B0 */ lw $a3, 0x2b0($s4)
|
||||||
/* B03280 8008C0E0 256B2600 */ addiu $t3, %lo(D_02002600) # addiu $t3, $t3, 0x2600
|
/* B03280 8008C0E0 256B2600 */ addiu $t3, %lo(gArcheryScoreIconTex) # addiu $t3, $t3, 0x2600
|
||||||
/* B03284 8008C0E4 3C0AFD10 */ lui $t2, 0xfd10
|
/* B03284 8008C0E4 3C0AFD10 */ lui $t2, 0xfd10
|
||||||
/* B03288 8008C0E8 24EE0008 */ addiu $t6, $a3, 8
|
/* B03288 8008C0E8 24EE0008 */ addiu $t6, $a3, 8
|
||||||
/* B0328C 8008C0EC AE8E02B0 */ sw $t6, 0x2b0($s4)
|
/* B0328C 8008C0EC AE8E02B0 */ sw $t6, 0x2b0($s4)
|
||||||
|
@ -1715,7 +1715,7 @@ glabel L8008ABB0
|
||||||
.L8008C2AC:
|
.L8008C2AC:
|
||||||
/* B0344C 8008C2AC 024F7021 */ addu $t6, $s2, $t7
|
/* B0344C 8008C2AC 024F7021 */ addu $t6, $s2, $t7
|
||||||
/* B03450 8008C2B0 95C30000 */ lhu $v1, ($t6)
|
/* B03450 8008C2B0 95C30000 */ lhu $v1, ($t6)
|
||||||
/* B03454 8008C2B4 3C0B0200 */ lui $t3, %hi(D_02003040) # $t3, 0x200
|
/* B03454 8008C2B4 3C0B0200 */ lui $t3, %hi(gCounterDigit0Tex) # $t3, 0x200
|
||||||
/* B03458 8008C2B8 3C088016 */ lui $t0, %hi(gGameInfo) # $t0, 0x8016
|
/* B03458 8008C2B8 3C088016 */ lui $t0, %hi(gGameInfo) # $t0, 0x8016
|
||||||
/* B0345C 8008C2BC 14600005 */ bnez $v1, .L8008C2D4
|
/* B0345C 8008C2BC 14600005 */ bnez $v1, .L8008C2D4
|
||||||
/* B03460 8008C2C0 0003C1C0 */ sll $t8, $v1, 7
|
/* B03460 8008C2C0 0003C1C0 */ sll $t8, $v1, 7
|
||||||
|
@ -1728,13 +1728,13 @@ glabel L8008ABB0
|
||||||
/* B03478 8008C2D8 8E8402B0 */ lw $a0, 0x2b0($s4)
|
/* B03478 8008C2D8 8E8402B0 */ lw $a0, 0x2b0($s4)
|
||||||
/* B0347C 8008C2DC AFB10010 */ sw $s1, 0x10($sp)
|
/* B0347C 8008C2DC AFB10010 */ sw $s1, 0x10($sp)
|
||||||
/* B03480 8008C2E0 851907B2 */ lh $t9, 0x7b2($t0)
|
/* B03480 8008C2E0 851907B2 */ lh $t9, 0x7b2($t0)
|
||||||
/* B03484 8008C2E4 3C0D8012 */ lui $t5, %hi(sDigitWidth) # $t5, 0x8012
|
/* B03484 8008C2E4 3C0D8012 */ lui $t5, %hi(digitWidth) # $t5, 0x8012
|
||||||
/* B03488 8008C2E8 85AD5B10 */ lh $t5, %lo(sDigitWidth)($t5)
|
/* B03488 8008C2E8 85AD5B10 */ lh $t5, %lo(digitWidth)($t5)
|
||||||
/* B0348C 8008C2EC 272CFFFE */ addiu $t4, $t9, -2
|
/* B0348C 8008C2EC 272CFFFE */ addiu $t4, $t9, -2
|
||||||
/* B03490 8008C2F0 AFAC0014 */ sw $t4, 0x14($sp)
|
/* B03490 8008C2F0 AFAC0014 */ sw $t4, 0x14($sp)
|
||||||
/* B03494 8008C2F4 AFAD0018 */ sw $t5, 0x18($sp)
|
/* B03494 8008C2F4 AFAD0018 */ sw $t5, 0x18($sp)
|
||||||
/* B03498 8008C2F8 850A0F68 */ lh $t2, 0xf68($t0)
|
/* B03498 8008C2F8 850A0F68 */ lh $t2, 0xf68($t0)
|
||||||
/* B0349C 8008C2FC 256B3040 */ addiu $t3, %lo(D_02003040) # addiu $t3, $t3, 0x3040
|
/* B0349C 8008C2FC 256B3040 */ addiu $t3, %lo(gCounterDigit0Tex) # addiu $t3, $t3, 0x3040
|
||||||
/* B034A0 8008C300 030B2821 */ addu $a1, $t8, $t3
|
/* B034A0 8008C300 030B2821 */ addu $a1, $t8, $t3
|
||||||
/* B034A4 8008C304 AFAA001C */ sw $t2, 0x1c($sp)
|
/* B034A4 8008C304 AFAA001C */ sw $t2, 0x1c($sp)
|
||||||
/* B034A8 8008C308 85020F6A */ lh $v0, 0xf6a($t0)
|
/* B034A8 8008C308 85020F6A */ lh $v0, 0xf6a($t0)
|
||||||
|
@ -1836,10 +1836,10 @@ glabel L8008ABB0
|
||||||
/* B03618 8008C478 0C00084C */ jal osSyncPrintf
|
/* B03618 8008C478 0C00084C */ jal osSyncPrintf
|
||||||
/* B0361C 8008C47C 3145FFFF */ andi $a1, $t2, 0xffff
|
/* B0361C 8008C47C 3145FFFF */ andi $a1, $t2, 0xffff
|
||||||
/* B03620 8008C480 8FA30064 */ lw $v1, 0x64($sp)
|
/* B03620 8008C480 8FA30064 */ lw $v1, 0x64($sp)
|
||||||
/* B03624 8008C484 3C0F8012 */ lui $t7, %hi(sSpoilingItemEntrances)
|
/* B03624 8008C484 3C0F8012 */ lui $t7, %hi(spoilingItemEntrances)
|
||||||
/* B03628 8008C488 3C010001 */ lui $at, 1
|
/* B03628 8008C488 3C010001 */ lui $at, 1
|
||||||
/* B0362C 8008C48C 01E37821 */ addu $t7, $t7, $v1
|
/* B0362C 8008C48C 01E37821 */ addu $t7, $t7, $v1
|
||||||
/* B03630 8008C490 85EF5B4C */ lh $t7, %lo(sSpoilingItemEntrances)($t7)
|
/* B03630 8008C490 85EF5B4C */ lh $t7, %lo(spoilingItemEntrances)($t7)
|
||||||
/* B03634 8008C494 3C0E8012 */ lui $t6, %hi(gSpoilingItemReverts) # $t6, 0x8012
|
/* B03634 8008C494 3C0E8012 */ lui $t6, %hi(gSpoilingItemReverts) # $t6, 0x8012
|
||||||
/* B03638 8008C498 00370821 */ addu $at, $at, $s7
|
/* B03638 8008C498 00370821 */ addu $at, $at, $s7
|
||||||
/* B0363C 8008C49C 25CE5A20 */ addiu $t6, %lo(gSpoilingItemReverts) # addiu $t6, $t6, 0x5a20
|
/* B0363C 8008C49C 25CE5A20 */ addiu $t6, %lo(gSpoilingItemReverts) # addiu $t6, $t6, 0x5a20
|
||||||
|
@ -1951,15 +1951,15 @@ glabel L8008C608
|
||||||
/* B037C8 8008C628 A423FFE2 */ sh $v1, %lo(D_8015FFE2)($at)
|
/* B037C8 8008C628 A423FFE2 */ sh $v1, %lo(D_8015FFE2)($at)
|
||||||
/* B037CC 8008C62C 24050014 */ li $a1, 20
|
/* B037CC 8008C62C 24050014 */ li $a1, 20
|
||||||
/* B037D0 8008C630 3C018016 */ lui $at, %hi(D_8015FFE0) # $at, 0x8016
|
/* B037D0 8008C630 3C018016 */ lui $at, %hi(D_8015FFE0) # $at, 0x8016
|
||||||
/* B037D4 8008C634 3C128016 */ lui $s2, %hi(sTimerDigits) # $s2, 0x8016
|
/* B037D4 8008C634 3C128016 */ lui $s2, %hi(timerDigits) # $s2, 0x8016
|
||||||
/* B037D8 8008C638 2652FFE8 */ addiu $s2, %lo(sTimerDigits) # addiu $s2, $s2, -0x18
|
/* B037D8 8008C638 2652FFE8 */ addiu $s2, %lo(timerDigits) # addiu $s2, $s2, -0x18
|
||||||
/* B037DC 8008C63C 100002ED */ b .L8008D1F4
|
/* B037DC 8008C63C 100002ED */ b .L8008D1F4
|
||||||
/* B037E0 8008C640 A425FFE0 */ sh $a1, %lo(D_8015FFE0)($at)
|
/* B037E0 8008C640 A425FFE0 */ sh $a1, %lo(D_8015FFE0)($at)
|
||||||
glabel L8008C644
|
glabel L8008C644
|
||||||
/* B037E4 8008C644 3C038016 */ lui $v1, %hi(D_8015FFE2) # $v1, 0x8016
|
/* B037E4 8008C644 3C038016 */ lui $v1, %hi(D_8015FFE2) # $v1, 0x8016
|
||||||
/* B037E8 8008C648 8463FFE2 */ lh $v1, %lo(D_8015FFE2)($v1)
|
/* B037E8 8008C648 8463FFE2 */ lh $v1, %lo(D_8015FFE2)($v1)
|
||||||
/* B037EC 8008C64C 3C018016 */ lui $at, %hi(D_8015FFE2) # $at, 0x8016
|
/* B037EC 8008C64C 3C018016 */ lui $at, %hi(D_8015FFE2) # $at, 0x8016
|
||||||
/* B037F0 8008C650 3C128016 */ lui $s2, %hi(sTimerDigits) # $s2, 0x8016
|
/* B037F0 8008C650 3C128016 */ lui $s2, %hi(timerDigits) # $s2, 0x8016
|
||||||
/* B037F4 8008C654 2463FFFF */ addiu $v1, $v1, -1
|
/* B037F4 8008C654 2463FFFF */ addiu $v1, $v1, -1
|
||||||
/* B037F8 8008C658 00031C00 */ sll $v1, $v1, 0x10
|
/* B037F8 8008C658 00031C00 */ sll $v1, $v1, 0x10
|
||||||
/* B037FC 8008C65C 00031C03 */ sra $v1, $v1, 0x10
|
/* B037FC 8008C65C 00031C03 */ sra $v1, $v1, 0x10
|
||||||
|
@ -1973,7 +1973,7 @@ glabel L8008C644
|
||||||
/* B0381C 8008C67C A423FFE2 */ sh $v1, %lo(D_8015FFE2)($at)
|
/* B0381C 8008C67C A423FFE2 */ sh $v1, %lo(D_8015FFE2)($at)
|
||||||
.L8008C680:
|
.L8008C680:
|
||||||
/* B03820 8008C680 100002DC */ b .L8008D1F4
|
/* B03820 8008C680 100002DC */ b .L8008D1F4
|
||||||
/* B03824 8008C684 2652FFE8 */ addiu $s2, %lo(sTimerDigits) # addiu $s2, $s2, -0x18
|
/* B03824 8008C684 2652FFE8 */ addiu $s2, %lo(timerDigits) # addiu $s2, $s2, -0x18
|
||||||
glabel L8008C688
|
glabel L8008C688
|
||||||
/* B03828 8008C688 24030014 */ li $v1, 20
|
/* B03828 8008C688 24030014 */ li $v1, 20
|
||||||
/* B0382C 8008C68C 3C018016 */ lui $at, %hi(D_8015FFE2) # $at, 0x8016
|
/* B0382C 8008C68C 3C018016 */ lui $at, %hi(D_8015FFE2) # $at, 0x8016
|
||||||
|
@ -1983,7 +1983,7 @@ glabel L8008C688
|
||||||
/* B0383C 8008C69C A425FFE0 */ sh $a1, %lo(D_8015FFE0)($at)
|
/* B0383C 8008C69C A425FFE0 */ sh $a1, %lo(D_8015FFE0)($at)
|
||||||
/* B03840 8008C6A0 24010005 */ li $at, 5
|
/* B03840 8008C6A0 24010005 */ li $at, 5
|
||||||
/* B03844 8008C6A4 14810004 */ bne $a0, $at, .L8008C6B8
|
/* B03844 8008C6A4 14810004 */ bne $a0, $at, .L8008C6B8
|
||||||
/* B03848 8008C6A8 3C128016 */ lui $s2, %hi(sTimerDigits) # $s2, 0x8016
|
/* B03848 8008C6A8 3C128016 */ lui $s2, %hi(timerDigits) # $s2, 0x8016
|
||||||
/* B0384C 8008C6AC 240B0006 */ li $t3, 6
|
/* B0384C 8008C6AC 240B0006 */ li $t3, 6
|
||||||
/* B03850 8008C6B0 10000003 */ b .L8008C6C0
|
/* B03850 8008C6B0 10000003 */ b .L8008C6C0
|
||||||
/* B03854 8008C6B4 A6AB13CE */ sh $t3, 0x13ce($s5)
|
/* B03854 8008C6B4 A6AB13CE */ sh $t3, 0x13ce($s5)
|
||||||
|
@ -1993,12 +1993,12 @@ glabel L8008C688
|
||||||
.L8008C6C0:
|
.L8008C6C0:
|
||||||
/* B03860 8008C6C0 86A413CE */ lh $a0, 0x13ce($s5)
|
/* B03860 8008C6C0 86A413CE */ lh $a0, 0x13ce($s5)
|
||||||
/* B03864 8008C6C4 100002CB */ b .L8008D1F4
|
/* B03864 8008C6C4 100002CB */ b .L8008D1F4
|
||||||
/* B03868 8008C6C8 2652FFE8 */ addiu $s2, %lo(sTimerDigits) # addiu $s2, $s2, -0x18
|
/* B03868 8008C6C8 2652FFE8 */ addiu $s2, %lo(timerDigits) # addiu $s2, $s2, -0x18
|
||||||
glabel L8008C6CC
|
glabel L8008C6CC
|
||||||
/* B0386C 8008C6CC 3C038016 */ lui $v1, %hi(D_8015FFE2) # $v1, 0x8016
|
/* B0386C 8008C6CC 3C038016 */ lui $v1, %hi(D_8015FFE2) # $v1, 0x8016
|
||||||
/* B03870 8008C6D0 8463FFE2 */ lh $v1, %lo(D_8015FFE2)($v1)
|
/* B03870 8008C6D0 8463FFE2 */ lh $v1, %lo(D_8015FFE2)($v1)
|
||||||
/* B03874 8008C6D4 3C018016 */ lui $at, %hi(D_8015FFE2) # $at, 0x8016
|
/* B03874 8008C6D4 3C018016 */ lui $at, %hi(D_8015FFE2) # $at, 0x8016
|
||||||
/* B03878 8008C6D8 3C128016 */ lui $s2, %hi(sTimerDigits) # $s2, 0x8016
|
/* B03878 8008C6D8 3C128016 */ lui $s2, %hi(timerDigits) # $s2, 0x8016
|
||||||
/* B0387C 8008C6DC 2463FFFF */ addiu $v1, $v1, -1
|
/* B0387C 8008C6DC 2463FFFF */ addiu $v1, $v1, -1
|
||||||
/* B03880 8008C6E0 00031C00 */ sll $v1, $v1, 0x10
|
/* B03880 8008C6E0 00031C00 */ sll $v1, $v1, 0x10
|
||||||
/* B03884 8008C6E4 00031C03 */ sra $v1, $v1, 0x10
|
/* B03884 8008C6E4 00031C03 */ sra $v1, $v1, 0x10
|
||||||
|
@ -2012,16 +2012,16 @@ glabel L8008C6CC
|
||||||
/* B038A4 8008C704 240D000D */ li $t5, 13
|
/* B038A4 8008C704 240D000D */ li $t5, 13
|
||||||
/* B038A8 8008C708 240C0007 */ li $t4, 7
|
/* B038A8 8008C708 240C0007 */ li $t4, 7
|
||||||
/* B038AC 8008C70C A6AC13CE */ sh $t4, 0x13ce($s5)
|
/* B038AC 8008C70C A6AC13CE */ sh $t4, 0x13ce($s5)
|
||||||
/* B038B0 8008C710 3C128016 */ lui $s2, %hi(sTimerDigits) # $s2, 0x8016
|
/* B038B0 8008C710 3C128016 */ lui $s2, %hi(timerDigits) # $s2, 0x8016
|
||||||
/* B038B4 8008C714 86A413CE */ lh $a0, 0x13ce($s5)
|
/* B038B4 8008C714 86A413CE */ lh $a0, 0x13ce($s5)
|
||||||
/* B038B8 8008C718 100002B6 */ b .L8008D1F4
|
/* B038B8 8008C718 100002B6 */ b .L8008D1F4
|
||||||
/* B038BC 8008C71C 2652FFE8 */ addiu $s2, %lo(sTimerDigits) # addiu $s2, $s2, -0x18
|
/* B038BC 8008C71C 2652FFE8 */ addiu $s2, %lo(timerDigits) # addiu $s2, $s2, -0x18
|
||||||
.L8008C720:
|
.L8008C720:
|
||||||
/* B038C0 8008C720 A6AD13CE */ sh $t5, 0x13ce($s5)
|
/* B038C0 8008C720 A6AD13CE */ sh $t5, 0x13ce($s5)
|
||||||
/* B038C4 8008C724 86A413CE */ lh $a0, 0x13ce($s5)
|
/* B038C4 8008C724 86A413CE */ lh $a0, 0x13ce($s5)
|
||||||
.L8008C728:
|
.L8008C728:
|
||||||
/* B038C8 8008C728 100002B2 */ b .L8008D1F4
|
/* B038C8 8008C728 100002B2 */ b .L8008D1F4
|
||||||
/* B038CC 8008C72C 2652FFE8 */ addiu $s2, %lo(sTimerDigits) # addiu $s2, $s2, -0x18
|
/* B038CC 8008C72C 2652FFE8 */ addiu $s2, %lo(timerDigits) # addiu $s2, $s2, -0x18
|
||||||
glabel L8008C730
|
glabel L8008C730
|
||||||
/* B038D0 8008C730 86A213D6 */ lh $v0, 0x13d6($s5)
|
/* B038D0 8008C730 86A213D6 */ lh $v0, 0x13d6($s5)
|
||||||
/* B038D4 8008C734 3C038016 */ lui $v1, %hi(D_8015FFE2) # $v1, 0x8016
|
/* B038D4 8008C734 3C038016 */ lui $v1, %hi(D_8015FFE2) # $v1, 0x8016
|
||||||
|
@ -2181,16 +2181,16 @@ glabel L8008C884
|
||||||
/* B03AF8 8008C958 0320F809 */ jalr $t9
|
/* B03AF8 8008C958 0320F809 */ jalr $t9
|
||||||
/* B03AFC 8008C95C 00000000 */ nop
|
/* B03AFC 8008C95C 00000000 */ nop
|
||||||
.L8008C960:
|
.L8008C960:
|
||||||
/* B03B00 8008C960 3C128016 */ lui $s2, %hi(sTimerDigits) # $s2, 0x8016
|
/* B03B00 8008C960 3C128016 */ lui $s2, %hi(timerDigits) # $s2, 0x8016
|
||||||
/* B03B04 8008C964 A6000000 */ sh $zero, ($s0)
|
/* B03B04 8008C964 A6000000 */ sh $zero, ($s0)
|
||||||
/* B03B08 8008C968 86A413CE */ lh $a0, 0x13ce($s5)
|
/* B03B08 8008C968 86A413CE */ lh $a0, 0x13ce($s5)
|
||||||
/* B03B0C 8008C96C 10000221 */ b .L8008D1F4
|
/* B03B0C 8008C96C 10000221 */ b .L8008D1F4
|
||||||
/* B03B10 8008C970 2652FFE8 */ addiu $s2, %lo(sTimerDigits) # addiu $s2, $s2, -0x18
|
/* B03B10 8008C970 2652FFE8 */ addiu $s2, %lo(timerDigits) # addiu $s2, $s2, -0x18
|
||||||
.L8008C974:
|
.L8008C974:
|
||||||
/* B03B14 8008C974 2841003D */ slti $at, $v0, 0x3d
|
/* B03B14 8008C974 2841003D */ slti $at, $v0, 0x3d
|
||||||
/* B03B18 8008C978 14200014 */ bnez $at, .L8008C9CC
|
/* B03B18 8008C978 14200014 */ bnez $at, .L8008C9CC
|
||||||
/* B03B1C 8008C97C 3C128016 */ lui $s2, %hi(sTimerDigits) # $s2, 0x8016
|
/* B03B1C 8008C97C 3C128016 */ lui $s2, %hi(timerDigits) # $s2, 0x8016
|
||||||
/* B03B20 8008C980 2652FFE8 */ addiu $s2, %lo(sTimerDigits) # addiu $s2, $s2, -0x18
|
/* B03B20 8008C980 2652FFE8 */ addiu $s2, %lo(timerDigits) # addiu $s2, $s2, -0x18
|
||||||
/* B03B24 8008C984 864D0008 */ lh $t5, 8($s2)
|
/* B03B24 8008C984 864D0008 */ lh $t5, 8($s2)
|
||||||
/* B03B28 8008C988 24010001 */ li $at, 1
|
/* B03B28 8008C988 24010001 */ li $at, 1
|
||||||
/* B03B2C 8008C98C 3C108013 */ lui $s0, %hi(D_801333E0)
|
/* B03B2C 8008C98C 3C108013 */ lui $s0, %hi(D_801333E0)
|
||||||
|
@ -2205,15 +2205,15 @@ glabel L8008C884
|
||||||
/* B03B50 8008C9B0 24060004 */ li $a2, 4
|
/* B03B50 8008C9B0 24060004 */ li $a2, 4
|
||||||
/* B03B54 8008C9B4 0C03DCE3 */ jal Audio_PlaySoundGeneral
|
/* B03B54 8008C9B4 0C03DCE3 */ jal Audio_PlaySoundGeneral
|
||||||
/* B03B58 8008C9B8 AFA70010 */ sw $a3, 0x10($sp)
|
/* B03B58 8008C9B8 AFA70010 */ sw $a3, 0x10($sp)
|
||||||
/* B03B5C 8008C9BC 3C128016 */ lui $s2, %hi(sTimerDigits) # $s2, 0x8016
|
/* B03B5C 8008C9BC 3C128016 */ lui $s2, %hi(timerDigits) # $s2, 0x8016
|
||||||
/* B03B60 8008C9C0 86A413CE */ lh $a0, 0x13ce($s5)
|
/* B03B60 8008C9C0 86A413CE */ lh $a0, 0x13ce($s5)
|
||||||
/* B03B64 8008C9C4 1000020B */ b .L8008D1F4
|
/* B03B64 8008C9C4 1000020B */ b .L8008D1F4
|
||||||
/* B03B68 8008C9C8 2652FFE8 */ addiu $s2, %lo(sTimerDigits) # addiu $s2, $s2, -0x18
|
/* B03B68 8008C9C8 2652FFE8 */ addiu $s2, %lo(timerDigits) # addiu $s2, $s2, -0x18
|
||||||
.L8008C9CC:
|
.L8008C9CC:
|
||||||
/* B03B6C 8008C9CC 2841000B */ slti $at, $v0, 0xb
|
/* B03B6C 8008C9CC 2841000B */ slti $at, $v0, 0xb
|
||||||
/* B03B70 8008C9D0 14200014 */ bnez $at, .L8008CA24
|
/* B03B70 8008C9D0 14200014 */ bnez $at, .L8008CA24
|
||||||
/* B03B74 8008C9D4 3C128016 */ lui $s2, %hi(sTimerDigits) # $s2, 0x8016
|
/* B03B74 8008C9D4 3C128016 */ lui $s2, %hi(timerDigits) # $s2, 0x8016
|
||||||
/* B03B78 8008C9D8 2652FFE8 */ addiu $s2, %lo(sTimerDigits) # addiu $s2, $s2, -0x18
|
/* B03B78 8008C9D8 2652FFE8 */ addiu $s2, %lo(timerDigits) # addiu $s2, $s2, -0x18
|
||||||
/* B03B7C 8008C9DC 864A0008 */ lh $t2, 8($s2)
|
/* B03B7C 8008C9DC 864A0008 */ lh $t2, 8($s2)
|
||||||
/* B03B80 8008C9E0 3C108013 */ lui $s0, %hi(D_801333E0)
|
/* B03B80 8008C9E0 3C108013 */ lui $s0, %hi(D_801333E0)
|
||||||
/* B03B84 8008C9E4 260733E0 */ addiu $a3, $s0, %lo(D_801333E0)
|
/* B03B84 8008C9E4 260733E0 */ addiu $a3, $s0, %lo(D_801333E0)
|
||||||
|
@ -2228,10 +2228,10 @@ glabel L8008C884
|
||||||
/* B03BA8 8008CA08 24060004 */ li $a2, 4
|
/* B03BA8 8008CA08 24060004 */ li $a2, 4
|
||||||
/* B03BAC 8008CA0C 0C03DCE3 */ jal Audio_PlaySoundGeneral
|
/* B03BAC 8008CA0C 0C03DCE3 */ jal Audio_PlaySoundGeneral
|
||||||
/* B03BB0 8008CA10 AFA70010 */ sw $a3, 0x10($sp)
|
/* B03BB0 8008CA10 AFA70010 */ sw $a3, 0x10($sp)
|
||||||
/* B03BB4 8008CA14 3C128016 */ lui $s2, %hi(sTimerDigits) # $s2, 0x8016
|
/* B03BB4 8008CA14 3C128016 */ lui $s2, %hi(timerDigits) # $s2, 0x8016
|
||||||
/* B03BB8 8008CA18 86A413CE */ lh $a0, 0x13ce($s5)
|
/* B03BB8 8008CA18 86A413CE */ lh $a0, 0x13ce($s5)
|
||||||
/* B03BBC 8008CA1C 100001F5 */ b .L8008D1F4
|
/* B03BBC 8008CA1C 100001F5 */ b .L8008D1F4
|
||||||
/* B03BC0 8008CA20 2652FFE8 */ addiu $s2, %lo(sTimerDigits) # addiu $s2, $s2, -0x18
|
/* B03BC0 8008CA20 2652FFE8 */ addiu $s2, %lo(timerDigits) # addiu $s2, $s2, -0x18
|
||||||
.L8008CA24:
|
.L8008CA24:
|
||||||
/* B03BC4 8008CA24 3C108013 */ lui $s0, %hi(D_801333E0)
|
/* B03BC4 8008CA24 3C108013 */ lui $s0, %hi(D_801333E0)
|
||||||
/* B03BC8 8008CA28 3C0B8013 */ lui $t3, %hi(D_801333E8) # $t3, 0x8013
|
/* B03BC8 8008CA28 3C0B8013 */ lui $t3, %hi(D_801333E8) # $t3, 0x8013
|
||||||
|
@ -2246,9 +2246,9 @@ glabel L8008C884
|
||||||
/* B03BEC 8008CA4C 24060004 */ li $a2, 4
|
/* B03BEC 8008CA4C 24060004 */ li $a2, 4
|
||||||
/* B03BF0 8008CA50 86A413CE */ lh $a0, 0x13ce($s5)
|
/* B03BF0 8008CA50 86A413CE */ lh $a0, 0x13ce($s5)
|
||||||
.L8008CA54:
|
.L8008CA54:
|
||||||
/* B03BF4 8008CA54 3C128016 */ lui $s2, %hi(sTimerDigits) # $s2, 0x8016
|
/* B03BF4 8008CA54 3C128016 */ lui $s2, %hi(timerDigits) # $s2, 0x8016
|
||||||
/* B03BF8 8008CA58 100001E6 */ b .L8008D1F4
|
/* B03BF8 8008CA58 100001E6 */ b .L8008D1F4
|
||||||
/* B03BFC 8008CA5C 2652FFE8 */ addiu $s2, %lo(sTimerDigits) # addiu $s2, $s2, -0x18
|
/* B03BFC 8008CA5C 2652FFE8 */ addiu $s2, %lo(timerDigits) # addiu $s2, $s2, -0x18
|
||||||
glabel L8008CA60
|
glabel L8008CA60
|
||||||
/* B03C00 8008CA60 86A213D6 */ lh $v0, 0x13d6($s5)
|
/* B03C00 8008CA60 86A213D6 */ lh $v0, 0x13d6($s5)
|
||||||
/* B03C04 8008CA64 3C038016 */ lui $v1, %hi(D_8015FFE2) # $v1, 0x8016
|
/* B03C04 8008CA64 3C038016 */ lui $v1, %hi(D_8015FFE2) # $v1, 0x8016
|
||||||
|
@ -2382,10 +2382,10 @@ glabel L8008CB98
|
||||||
/* B03DCC 8008CC2C 24030028 */ li $v1, 40
|
/* B03DCC 8008CC2C 24030028 */ li $v1, 40
|
||||||
/* B03DD0 8008CC30 86A413CE */ lh $a0, 0x13ce($s5)
|
/* B03DD0 8008CC30 86A413CE */ lh $a0, 0x13ce($s5)
|
||||||
/* B03DD4 8008CC34 3C018016 */ lui $at, %hi(D_8015FFE2) # $at, 0x8016
|
/* B03DD4 8008CC34 3C018016 */ lui $at, %hi(D_8015FFE2) # $at, 0x8016
|
||||||
/* B03DD8 8008CC38 3C128016 */ lui $s2, %hi(sTimerDigits) # $s2, 0x8016
|
/* B03DD8 8008CC38 3C128016 */ lui $s2, %hi(timerDigits) # $s2, 0x8016
|
||||||
/* B03DDC 8008CC3C A423FFE2 */ sh $v1, %lo(D_8015FFE2)($at)
|
/* B03DDC 8008CC3C A423FFE2 */ sh $v1, %lo(D_8015FFE2)($at)
|
||||||
/* B03DE0 8008CC40 1000016C */ b .L8008D1F4
|
/* B03DE0 8008CC40 1000016C */ b .L8008D1F4
|
||||||
/* B03DE4 8008CC44 2652FFE8 */ addiu $s2, %lo(sTimerDigits) # addiu $s2, $s2, -0x18
|
/* B03DE4 8008CC44 2652FFE8 */ addiu $s2, %lo(timerDigits) # addiu $s2, $s2, -0x18
|
||||||
.L8008CC48:
|
.L8008CC48:
|
||||||
/* B03DE8 8008CC48 3C0D8013 */ lui $t5, %hi(D_801333E8) # $t5, 0x8013
|
/* B03DE8 8008CC48 3C0D8013 */ lui $t5, %hi(D_801333E8) # $t5, 0x8013
|
||||||
/* B03DEC 8008CC4C 25AD33E8 */ addiu $t5, %lo(D_801333E8) # addiu $t5, $t5, 0x33e8
|
/* B03DEC 8008CC4C 25AD33E8 */ addiu $t5, %lo(D_801333E8) # addiu $t5, $t5, 0x33e8
|
||||||
|
@ -2398,9 +2398,9 @@ glabel L8008CB98
|
||||||
/* B03E08 8008CC68 AFA70010 */ sw $a3, 0x10($sp)
|
/* B03E08 8008CC68 AFA70010 */ sw $a3, 0x10($sp)
|
||||||
/* B03E0C 8008CC6C 86A413CE */ lh $a0, 0x13ce($s5)
|
/* B03E0C 8008CC6C 86A413CE */ lh $a0, 0x13ce($s5)
|
||||||
.L8008CC70:
|
.L8008CC70:
|
||||||
/* B03E10 8008CC70 3C128016 */ lui $s2, %hi(sTimerDigits) # $s2, 0x8016
|
/* B03E10 8008CC70 3C128016 */ lui $s2, %hi(timerDigits) # $s2, 0x8016
|
||||||
/* B03E14 8008CC74 1000015F */ b .L8008D1F4
|
/* B03E14 8008CC74 1000015F */ b .L8008D1F4
|
||||||
/* B03E18 8008CC78 2652FFE8 */ addiu $s2, %lo(sTimerDigits) # addiu $s2, $s2, -0x18
|
/* B03E18 8008CC78 2652FFE8 */ addiu $s2, %lo(timerDigits) # addiu $s2, $s2, -0x18
|
||||||
glabel L8008CC7C
|
glabel L8008CC7C
|
||||||
/* B03E1C 8008CC7C 86AF13D2 */ lh $t7, 0x13d2($s5)
|
/* B03E1C 8008CC7C 86AF13D2 */ lh $t7, 0x13d2($s5)
|
||||||
/* B03E20 8008CC80 24030014 */ li $v1, 20
|
/* B03E20 8008CC80 24030014 */ li $v1, 20
|
||||||
|
@ -2431,9 +2431,9 @@ glabel L8008CC7C
|
||||||
.L8008CCDC:
|
.L8008CCDC:
|
||||||
/* B03E7C 8008CCDC 86A413CE */ lh $a0, 0x13ce($s5)
|
/* B03E7C 8008CCDC 86A413CE */ lh $a0, 0x13ce($s5)
|
||||||
glabel L8008CCE0
|
glabel L8008CCE0
|
||||||
/* B03E80 8008CCE0 3C128016 */ lui $s2, %hi(sTimerDigits) # $s2, 0x8016
|
/* B03E80 8008CCE0 3C128016 */ lui $s2, %hi(timerDigits) # $s2, 0x8016
|
||||||
/* B03E84 8008CCE4 10000143 */ b .L8008D1F4
|
/* B03E84 8008CCE4 10000143 */ b .L8008D1F4
|
||||||
/* B03E88 8008CCE8 2652FFE8 */ addiu $s2, %lo(sTimerDigits) # addiu $s2, $s2, -0x18
|
/* B03E88 8008CCE8 2652FFE8 */ addiu $s2, %lo(timerDigits) # addiu $s2, $s2, -0x18
|
||||||
glabel L8008CCEC
|
glabel L8008CCEC
|
||||||
.L8008CCEC:
|
.L8008CCEC:
|
||||||
/* B03E8C 8008CCEC 86A213D2 */ lh $v0, 0x13d2($s5)
|
/* B03E8C 8008CCEC 86A213D2 */ lh $v0, 0x13d2($s5)
|
||||||
|
@ -2686,8 +2686,8 @@ glabel L8008CF2C
|
||||||
/* B04204 8008D064 86AF13D4 */ lh $t7, 0x13d4($s5)
|
/* B04204 8008D064 86AF13D4 */ lh $t7, 0x13d4($s5)
|
||||||
.L8008D068:
|
.L8008D068:
|
||||||
/* B04208 8008D068 14200012 */ bnez $at, .L8008D0B4
|
/* B04208 8008D068 14200012 */ bnez $at, .L8008D0B4
|
||||||
/* B0420C 8008D06C 3C128016 */ lui $s2, %hi(sTimerDigits) # $s2, 0x8016
|
/* B0420C 8008D06C 3C128016 */ lui $s2, %hi(timerDigits) # $s2, 0x8016
|
||||||
/* B04210 8008D070 2652FFE8 */ addiu $s2, %lo(sTimerDigits) # addiu $s2, $s2, -0x18
|
/* B04210 8008D070 2652FFE8 */ addiu $s2, %lo(timerDigits) # addiu $s2, $s2, -0x18
|
||||||
/* B04214 8008D074 86580008 */ lh $t8, 8($s2)
|
/* B04214 8008D074 86580008 */ lh $t8, 8($s2)
|
||||||
/* B04218 8008D078 24010001 */ li $at, 1
|
/* B04218 8008D078 24010001 */ li $at, 1
|
||||||
/* B0421C 8008D07C 3C108013 */ lui $s0, %hi(D_801333E0)
|
/* B0421C 8008D07C 3C108013 */ lui $s0, %hi(D_801333E0)
|
||||||
|
@ -2708,8 +2708,8 @@ glabel L8008CF2C
|
||||||
.L8008D0B4:
|
.L8008D0B4:
|
||||||
/* B04254 8008D0B4 2841000B */ slti $at, $v0, 0xb
|
/* B04254 8008D0B4 2841000B */ slti $at, $v0, 0xb
|
||||||
/* B04258 8008D0B8 14200012 */ bnez $at, .L8008D104
|
/* B04258 8008D0B8 14200012 */ bnez $at, .L8008D104
|
||||||
/* B0425C 8008D0BC 3C128016 */ lui $s2, %hi(sTimerDigits) # $s2, 0x8016
|
/* B0425C 8008D0BC 3C128016 */ lui $s2, %hi(timerDigits) # $s2, 0x8016
|
||||||
/* B04260 8008D0C0 2652FFE8 */ addiu $s2, %lo(sTimerDigits) # addiu $s2, $s2, -0x18
|
/* B04260 8008D0C0 2652FFE8 */ addiu $s2, %lo(timerDigits) # addiu $s2, $s2, -0x18
|
||||||
/* B04264 8008D0C4 864C0008 */ lh $t4, 8($s2)
|
/* B04264 8008D0C4 864C0008 */ lh $t4, 8($s2)
|
||||||
/* B04268 8008D0C8 3C108013 */ lui $s0, %hi(D_801333E0)
|
/* B04268 8008D0C8 3C108013 */ lui $s0, %hi(D_801333E0)
|
||||||
/* B0426C 8008D0CC 260733E0 */ addiu $a3, $s0, %lo(D_801333E0)
|
/* B0426C 8008D0CC 260733E0 */ addiu $a3, $s0, %lo(D_801333E0)
|
||||||
|
@ -2793,8 +2793,8 @@ glabel L8008D1C8
|
||||||
/* B04388 8008D1E8 A6A013D2 */ sh $zero, 0x13d2($s5)
|
/* B04388 8008D1E8 A6A013D2 */ sh $zero, 0x13d2($s5)
|
||||||
glabel L8008D1EC
|
glabel L8008D1EC
|
||||||
.L8008D1EC:
|
.L8008D1EC:
|
||||||
/* B0438C 8008D1EC 3C128016 */ lui $s2, %hi(sTimerDigits) # $s2, 0x8016
|
/* B0438C 8008D1EC 3C128016 */ lui $s2, %hi(timerDigits) # $s2, 0x8016
|
||||||
/* B04390 8008D1F0 2652FFE8 */ addiu $s2, %lo(sTimerDigits) # addiu $s2, $s2, -0x18
|
/* B04390 8008D1F0 2652FFE8 */ addiu $s2, %lo(timerDigits) # addiu $s2, $s2, -0x18
|
||||||
.L8008D1F4:
|
.L8008D1F4:
|
||||||
/* B04394 8008D1F4 10800003 */ beqz $a0, .L8008D204
|
/* B04394 8008D1F4 10800003 */ beqz $a0, .L8008D204
|
||||||
/* B04398 8008D1F8 2401000A */ li $at, 10
|
/* B04398 8008D1F8 2401000A */ li $at, 10
|
||||||
|
@ -2821,8 +2821,8 @@ glabel L8008D1EC
|
||||||
/* B043E0 8008D240 A6590008 */ sh $t9, 8($s2)
|
/* B043E0 8008D240 A6590008 */ sh $t9, 8($s2)
|
||||||
.L8008D244:
|
.L8008D244:
|
||||||
/* B043E4 8008D244 86420008 */ lh $v0, 8($s2)
|
/* B043E4 8008D244 86420008 */ lh $v0, 8($s2)
|
||||||
/* B043E8 8008D248 3C050200 */ lui $a1, %hi(D_02002000) # $a1, 0x200
|
/* B043E8 8008D248 3C050200 */ lui $a1, %hi(gClockIconTex) # $a1, 0x200
|
||||||
/* B043EC 8008D24C 24A52000 */ addiu $a1, %lo(D_02002000) # addiu $a1, $a1, 0x2000
|
/* B043EC 8008D24C 24A52000 */ addiu $a1, %lo(gClockIconTex) # addiu $a1, $a1, 0x2000
|
||||||
/* B043F0 8008D250 2841003C */ slti $at, $v0, 0x3c
|
/* B043F0 8008D250 2841003C */ slti $at, $v0, 0x3c
|
||||||
/* B043F4 8008D254 14200014 */ bnez $at, .L8008D2A8
|
/* B043F4 8008D254 14200014 */ bnez $at, .L8008D2A8
|
||||||
/* B043F8 8008D258 24060010 */ li $a2, 16
|
/* B043F8 8008D258 24060010 */ li $a2, 16
|
||||||
|
@ -2970,15 +2970,15 @@ glabel L8008D1EC
|
||||||
/* B04610 8008D470 ACEA0000 */ sw $t2, ($a3)
|
/* B04610 8008D470 ACEA0000 */ sw $t2, ($a3)
|
||||||
.L8008D474:
|
.L8008D474:
|
||||||
/* B04614 8008D474 00131840 */ sll $v1, $s3, 1
|
/* B04614 8008D474 00131840 */ sll $v1, $s3, 1
|
||||||
/* B04618 8008D478 3C0D8012 */ lui $t5, %hi(sTimerDigitLeftPos)
|
/* B04618 8008D478 3C0D8012 */ lui $t5, %hi(timerDigitLeftPos)
|
||||||
/* B0461C 8008D47C 01A36821 */ addu $t5, $t5, $v1
|
/* B0461C 8008D47C 01A36821 */ addu $t5, $t5, $v1
|
||||||
/* B04620 8008D480 3C0A8012 */ lui $t2, %hi(sDigitWidth)
|
/* B04620 8008D480 3C0A8012 */ lui $t2, %hi(digitWidth)
|
||||||
/* B04624 8008D484 85AD5B04 */ lh $t5, %lo(sTimerDigitLeftPos)($t5)
|
/* B04624 8008D484 85AD5B04 */ lh $t5, %lo(timerDigitLeftPos)($t5)
|
||||||
/* B04628 8008D488 853113D6 */ lh $s1, 0x13d6($t1)
|
/* B04628 8008D488 853113D6 */ lh $s1, 0x13d6($t1)
|
||||||
/* B0462C 8008D48C 01435021 */ addu $t2, $t2, $v1
|
/* B0462C 8008D48C 01435021 */ addu $t2, $t2, $v1
|
||||||
/* B04630 8008D490 0243C021 */ addu $t8, $s2, $v1
|
/* B04630 8008D490 0243C021 */ addu $t8, $s2, $v1
|
||||||
/* B04634 8008D494 870B0000 */ lh $t3, ($t8)
|
/* B04634 8008D494 870B0000 */ lh $t3, ($t8)
|
||||||
/* B04638 8008D498 854A5B10 */ lh $t2, %lo(sDigitWidth)($t2)
|
/* B04638 8008D498 854A5B10 */ lh $t2, %lo(digitWidth)($t2)
|
||||||
/* B0463C 8008D49C 853013DA */ lh $s0, 0x13da($t1)
|
/* B0463C 8008D49C 853013DA */ lh $s0, 0x13da($t1)
|
||||||
/* B04640 8008D4A0 8E8402B0 */ lw $a0, 0x2b0($s4)
|
/* B04640 8008D4A0 8E8402B0 */ lw $a0, 0x2b0($s4)
|
||||||
/* B04644 8008D4A4 3C088016 */ lui $t0, %hi(gGameInfo) # $t0, 0x8016
|
/* B04644 8008D4A4 3C088016 */ lui $t0, %hi(gGameInfo) # $t0, 0x8016
|
||||||
|
@ -2988,8 +2988,8 @@ glabel L8008D1EC
|
||||||
/* B04654 8008D4B4 AFAA0018 */ sw $t2, 0x18($sp)
|
/* B04654 8008D4B4 AFAA0018 */ sw $t2, 0x18($sp)
|
||||||
/* B04658 8008D4B8 AFB00014 */ sw $s0, 0x14($sp)
|
/* B04658 8008D4B8 AFB00014 */ sw $s0, 0x14($sp)
|
||||||
/* B0465C 8008D4BC 850E0F68 */ lh $t6, 0xf68($t0)
|
/* B0465C 8008D4BC 850E0F68 */ lh $t6, 0xf68($t0)
|
||||||
/* B04660 8008D4C0 3C190200 */ lui $t9, %hi(D_02003040) # $t9, 0x200
|
/* B04660 8008D4C0 3C190200 */ lui $t9, %hi(gCounterDigit0Tex) # $t9, 0x200
|
||||||
/* B04664 8008D4C4 27393040 */ addiu $t9, %lo(D_02003040) # addiu $t9, $t9, 0x3040
|
/* B04664 8008D4C4 27393040 */ addiu $t9, %lo(gCounterDigit0Tex) # addiu $t9, $t9, 0x3040
|
||||||
/* B04668 8008D4C8 AFAE001C */ sw $t6, 0x1c($sp)
|
/* B04668 8008D4C8 AFAE001C */ sw $t6, 0x1c($sp)
|
||||||
/* B0466C 8008D4CC 85020F6A */ lh $v0, 0xf6a($t0)
|
/* B0466C 8008D4CC 85020F6A */ lh $v0, 0xf6a($t0)
|
||||||
/* B04670 8008D4D0 000B61C0 */ sll $t4, $t3, 7
|
/* B04670 8008D4D0 000B61C0 */ sll $t4, $t3, 7
|
||||||
|
|
|
@ -2368,9 +2368,9 @@ glabel KaleidoScope_DrawQuestStatus
|
||||||
/* 02238 80815A58 3C120001 */ lui $s2, 0x0001 ## $s2 = 00010000
|
/* 02238 80815A58 3C120001 */ lui $s2, 0x0001 ## $s2 = 00010000
|
||||||
/* 0223C 80815A5C 3C1FF588 */ lui $ra, 0xF588 ## $ra = F5880000
|
/* 0223C 80815A5C 3C1FF588 */ lui $ra, 0xF588 ## $ra = F5880000
|
||||||
/* 02240 80815A60 3C0D0703 */ lui $t5, 0x0703 ## $t5 = 07030000
|
/* 02240 80815A60 3C0D0703 */ lui $t5, 0x0703 ## $t5 = 07030000
|
||||||
/* 02244 80815A64 3C0B0200 */ lui $t3, %hi(D_02003040) ## $t3 = 02000000
|
/* 02244 80815A64 3C0B0200 */ lui $t3, %hi(gCounterDigit0Tex) ## $t3 = 02000000
|
||||||
/* 02248 80815A68 25EE0A40 */ addiu $t6, $t7, 0x0A40 ## $t6 = 00000A48
|
/* 02248 80815A68 25EE0A40 */ addiu $t6, $t7, 0x0A40 ## $t6 = 00000A48
|
||||||
/* 0224C 80815A6C 256B3040 */ addiu $t3, $t3, %lo(D_02003040) ## $t3 = 02003040
|
/* 0224C 80815A6C 256B3040 */ addiu $t3, $t3, %lo(gCounterDigit0Tex) ## $t3 = 02003040
|
||||||
/* 02250 80815A70 35ADF800 */ ori $t5, $t5, 0xF800 ## $t5 = 0703F800
|
/* 02250 80815A70 35ADF800 */ ori $t5, $t5, 0xF800 ## $t5 = 0703F800
|
||||||
/* 02254 80815A74 37FF0200 */ ori $ra, $ra, 0x0200 ## $ra = F5880200
|
/* 02254 80815A74 37FF0200 */ ori $ra, $ra, 0x0200 ## $ra = F5880200
|
||||||
/* 02258 80815A78 3652C03C */ ori $s2, $s2, 0xC03C ## $s2 = 0001C03C
|
/* 02258 80815A78 3652C03C */ ori $s2, $s2, 0xC03C ## $s2 = 0001C03C
|
||||||
|
|
|
@ -1,60 +1,60 @@
|
||||||
<Root>
|
<Root>
|
||||||
<File Name="parameter_static" Segment="2">
|
<File Name="parameter_static" Segment="2">
|
||||||
<Texture Name="gHUDHeartEmptyTex" OutName="hud_heart_empty" Format="ia8" Width="16" Height="16"/>
|
<Texture Name="gHeartEmptyTex" OutName="heart_empty" Format="ia8" Width="16" Height="16"/>
|
||||||
<Texture Name="gHUDHeartQuarterTex" OutName="hud_heart_quarter" Format="ia8" Width="16" Height="16"/>
|
<Texture Name="gHeartQuarterTex" OutName="heart_quarter" Format="ia8" Width="16" Height="16"/>
|
||||||
<Texture Name="gHUDHeartHalfTex" OutName="hud_heart_half" Format="ia8" Width="16" Height="16"/>
|
<Texture Name="gHeartHalfTex" OutName="heart_half" Format="ia8" Width="16" Height="16"/>
|
||||||
<Texture Name="gHUDHeartThreeQuarterTex" OutName="hud_heart_three_quarter" Format="ia8" Width="16" Height="16"/>
|
<Texture Name="gHeartThreeQuarterTex" OutName="heart_three_quarter" Format="ia8" Width="16" Height="16"/>
|
||||||
<Texture Name="gHUDHeartFullTex" OutName="hud_heart_full" Format="ia8" Width="16" Height="16"/>
|
<Texture Name="gHeartFullTex" OutName="heart_full" Format="ia8" Width="16" Height="16"/>
|
||||||
<Texture Name="gHUDDefenseHeartEmptyTex" OutName="hud_defense_heart_empty" Format="ia8" Width="16" Height="16"/>
|
<Texture Name="gDefenseHeartEmptyTex" OutName="defense_heart_empty" Format="ia8" Width="16" Height="16"/>
|
||||||
<Texture Name="gHUDDefenseHeartQuarterTex" OutName="hud_defense_heart_quarter" Format="ia8" Width="16" Height="16"/>
|
<Texture Name="gDefenseHeartQuarterTex" OutName="defense_heart_quarter" Format="ia8" Width="16" Height="16"/>
|
||||||
<Texture Name="gHUDDefenseHeartHalfTex" OutName="hud_defense_heart_half" Format="ia8" Width="16" Height="16"/>
|
<Texture Name="gDefenseHeartHalfTex" OutName="defense_heart_half" Format="ia8" Width="16" Height="16"/>
|
||||||
<Texture Name="gHUDDefenseHeartThreeQuarterTex" OutName="hud_defense_heart_three_quarter" Format="ia8" Width="16" Height="16"/>
|
<Texture Name="gDefenseHeartThreeQuarterTex" OutName="defense_heart_three_quarter" Format="ia8" Width="16" Height="16"/>
|
||||||
<Texture Name="gHUDDefenseHeartFullTex" OutName="hud_defense_heart_full" Format="ia8" Width="16" Height="16"/>
|
<Texture Name="gDefenseHeartFullTex" OutName="defense_heart_full" Format="ia8" Width="16" Height="16"/>
|
||||||
<Texture Name="gHUDActionButtonTex" OutName="hud_action_button" Format="ia8" Width="32" Height="32"/>
|
<Texture Name="gButtonBackgroundTex" OutName="button_background" Format="ia8" Width="32" Height="32"/>
|
||||||
<Texture Name="gHUDEmptyMapTex" OutName="hud_empty_map" Format="ia8" Width="32" Height="32"/>
|
<Texture Name="gEquippedItemOutlineTex" OutName="equipped_item_outline" Format="ia8" Width="32" Height="32"/>
|
||||||
<Texture Name="gHUDCButtonLeftArrowTex" OutName="hud_c_button_left_arrow" Format="ia8" Width="32" Height="32"/>
|
<Texture Name="gEmptyCLeftArrowTex" OutName="empty_c_left_arrow" Format="ia8" Width="32" Height="32"/>
|
||||||
<Texture Name="gHUDCButtonDownArrowTex" OutName="hud_c_button_down_arrow" Format="ia8" Width="32" Height="32"/>
|
<Texture Name="gEmptyCDownArrowTex" OutName="empty_c_down_arrow" Format="ia8" Width="32" Height="32"/>
|
||||||
<Texture Name="gHUDCButtonRightArrowTex" OutName="hud_c_button_right_arrow" Format="ia8" Width="32" Height="32"/>
|
<Texture Name="gEmptyCRightArrowTex" OutName="empty_c_right_arrow" Format="ia8" Width="32" Height="32"/>
|
||||||
<Texture Name="gHUDSmallKeyCounterTex" OutName="hud_small_key_counter" Format="ia8" Width="16" Height="16"/>
|
<Texture Name="gSmallKeyCounterIconTex" OutName="small_key_counter_icon" Format="ia8" Width="16" Height="16"/>
|
||||||
<Texture Name="gHUDRupeeCounterTex" OutName="hud_rupee_counter" Format="ia8" Width="16" Height="16"/>
|
<Texture Name="gRupeeCounterIconTex" OutName="rupee_counter_icon" Format="ia8" Width="16" Height="16"/>
|
||||||
<Texture Name="gHUDTimerClockTex" OutName="hud_timer_clock" Format="ia8" Width="16" Height="16"/>
|
<Texture Name="gClockIconTex" OutName="clock_icon" Format="ia8" Width="16" Height="16"/>
|
||||||
<Texture Name="gHUDCarrotTex" OutName="hud_carrot" Format="rgba32" Width="16" Height="16"/>
|
<Texture Name="gCarrotIconTex" OutName="carrot_icon" Format="rgba32" Width="16" Height="16"/>
|
||||||
<Texture Name="gHUDExitMarkerTex" OutName="hud_exit_marker" Format="rgb5a1" Width="8" Height="8"/>
|
<Texture Name="gMapDungeonEntranceIconTex" OutName="map_dungeon_entrance_icon" Format="rgb5a1" Width="8" Height="8"/>
|
||||||
<Texture Name="gHUDTreasureMarkerTex" OutName="hud_treasure_marker" Format="rgb5a1" Width="8" Height="8"/>
|
<Texture Name="gMapChestIconTex" OutName="map_chest_icon" Format="rgb5a1" Width="8" Height="8"/>
|
||||||
<Texture Name="gHUDArrowMinigameScoreTex" OutName="hud_arrow_minigame_score" Format="rgb5a1" Width="24" Height="16"/>
|
<Texture Name="gArcheryScoreIconTex" OutName="archery_score_icon" Format="rgb5a1" Width="24" Height="16"/>
|
||||||
<Texture Name="gHUDBossMarkerTex" OutName="hud_boss_marker" Format="ia8" Width="8" Height="8"/>
|
<Texture Name="gMapBossIconTex" OutName="map_boss_icon" Format="ia8" Width="8" Height="8"/>
|
||||||
<Texture Name="gHUDButtonATex" OutName="hud_button_a" Format="ia8" Width="16" Height="16"/>
|
<Texture Name="gOcarinaATex" OutName="ocarina_a" Format="ia8" Width="16" Height="16"/>
|
||||||
<Texture Name="gHUDButtonCDownTex" OutName="hud_button_c_down" Format="ia8" Width="16" Height="16"/>
|
<Texture Name="gOcarinaCDownTex" OutName="ocarina_c_down" Format="ia8" Width="16" Height="16"/>
|
||||||
<Texture Name="gHUDButtonCRightTex" OutName="hud_button_c_right" Format="ia8" Width="16" Height="16"/>
|
<Texture Name="gOcarinaCRightTex" OutName="ocarina_c_right" Format="ia8" Width="16" Height="16"/>
|
||||||
<Texture Name="gHUDButtonCLeftTex" OutName="hud_button_c_left" Format="ia8" Width="16" Height="16"/>
|
<Texture Name="gOcarinaCLeftTex" OutName="ocarina_c_left" Format="ia8" Width="16" Height="16"/>
|
||||||
<Texture Name="gHUDButtonCUpTex" OutName="hud_button_c_up" Format="ia8" Width="16" Height="16"/>
|
<Texture Name="gOcarinaCUpTex" OutName="ocarina_c_up" Format="ia8" Width="16" Height="16"/>
|
||||||
<Texture Name="gHUDTrebleClefTex" OutName="hud_treble_clef" Format="i4" Width="16" Height="32"/>
|
<Texture Name="gOcarinaTrebleClefTex" OutName="ocarina_treble_clef" Format="i4" Width="16" Height="32"/>
|
||||||
<Texture Name="gHUDNaviJPTex" OutName="hud_navi_jp" Format="ia4" Width="32" Height="8"/>
|
<Texture Name="gNaviCUpJPTex" OutName="navi_c_up_jp" Format="ia4" Width="32" Height="8"/>
|
||||||
<Texture Name="gHUDNaviENGTex" OutName="hud_navi_eng" Format="ia4" Width="32" Height="8"/>
|
<Texture Name="gNaviCUpENGTex" OutName="navi_c_up_eng" Format="ia4" Width="32" Height="8"/>
|
||||||
<Texture Name="gHUDCounterDigit0Tex" OutName="hud_counter_digit_0" Format="i8" Width="8" Height="16"/>
|
<Texture Name="gCounterDigit0Tex" OutName="counter_digit_0" Format="i8" Width="8" Height="16"/>
|
||||||
<Texture Name="gHUDCounterDigit1Tex" OutName="hud_counter_digit_1" Format="i8" Width="8" Height="16"/>
|
<Texture Name="gCounterDigit1Tex" OutName="counter_digit_1" Format="i8" Width="8" Height="16"/>
|
||||||
<Texture Name="gHUDCounterDigit2Tex" OutName="hud_counter_digit_2" Format="i8" Width="8" Height="16"/>
|
<Texture Name="gCounterDigit2Tex" OutName="counter_digit_2" Format="i8" Width="8" Height="16"/>
|
||||||
<Texture Name="gHUDCounterDigit3Tex" OutName="hud_counter_digit_3" Format="i8" Width="8" Height="16"/>
|
<Texture Name="gCounterDigit3Tex" OutName="counter_digit_3" Format="i8" Width="8" Height="16"/>
|
||||||
<Texture Name="gHUDCounterDigit4Tex" OutName="hud_counter_digit_4" Format="i8" Width="8" Height="16"/>
|
<Texture Name="gCounterDigit4Tex" OutName="counter_digit_4" Format="i8" Width="8" Height="16"/>
|
||||||
<Texture Name="gHUDCounterDigit5Tex" OutName="hud_counter_digit_5" Format="i8" Width="8" Height="16"/>
|
<Texture Name="gCounterDigit5Tex" OutName="counter_digit_5" Format="i8" Width="8" Height="16"/>
|
||||||
<Texture Name="gHUDCounterDigit6Tex" OutName="hud_counter_digit_6" Format="i8" Width="8" Height="16"/>
|
<Texture Name="gCounterDigit6Tex" OutName="counter_digit_6" Format="i8" Width="8" Height="16"/>
|
||||||
<Texture Name="gHUDCounterDigit7Tex" OutName="hud_counter_digit_7" Format="i8" Width="8" Height="16"/>
|
<Texture Name="gCounterDigit7Tex" OutName="counter_digit_7" Format="i8" Width="8" Height="16"/>
|
||||||
<Texture Name="gHUDCounterDigit8Tex" OutName="hud_counter_digit_8" Format="i8" Width="8" Height="16"/>
|
<Texture Name="gCounterDigit8Tex" OutName="counter_digit_8" Format="i8" Width="8" Height="16"/>
|
||||||
<Texture Name="gHUDCounterDigit9Tex" OutName="hud_counter_digit_9" Format="i8" Width="8" Height="16"/>
|
<Texture Name="gCounterDigit9Tex" OutName="counter_digit_9" Format="i8" Width="8" Height="16"/>
|
||||||
<Texture Name="gHUDCounterColonTex" OutName="hud_counter_colon" Format="i8" Width="8" Height="16"/>
|
<Texture Name="gCounterColonTex" OutName="counter_colon" Format="i8" Width="8" Height="16"/>
|
||||||
<Texture Name="gHUDAmmo0Tex" OutName="hud_ammo_0" Format="ia8" Width="8" Height="8"/>
|
<Texture Name="gAmmoDigit0Tex" OutName="ammo_digit_0" Format="ia8" Width="8" Height="8"/>
|
||||||
<Texture Name="gHUDAmmo1Tex" OutName="hud_ammo_1" Format="ia8" Width="8" Height="8"/>
|
<Texture Name="gAmmoDigit1Tex" OutName="ammo_digit_1" Format="ia8" Width="8" Height="8"/>
|
||||||
<Texture Name="gHUDAmmo2Tex" OutName="hud_ammo_2" Format="ia8" Width="8" Height="8"/>
|
<Texture Name="gAmmoDigit2Tex" OutName="ammo_digit_2" Format="ia8" Width="8" Height="8"/>
|
||||||
<Texture Name="gHUDAmmo3Tex" OutName="hud_ammo_3" Format="ia8" Width="8" Height="8"/>
|
<Texture Name="gAmmoDigit3Tex" OutName="ammo_digit_3" Format="ia8" Width="8" Height="8"/>
|
||||||
<Texture Name="gHUDAmmo4Tex" OutName="hud_ammo_4" Format="ia8" Width="8" Height="8"/>
|
<Texture Name="gAmmoDigit4Tex" OutName="ammo_digit_4" Format="ia8" Width="8" Height="8"/>
|
||||||
<Texture Name="gHUDAmmo5Tex" OutName="hud_ammo_5" Format="ia8" Width="8" Height="8"/>
|
<Texture Name="gAmmoDigit5Tex" OutName="ammo_digit_5" Format="ia8" Width="8" Height="8"/>
|
||||||
<Texture Name="gHUDAmmo6Tex" OutName="hud_ammo_6" Format="ia8" Width="8" Height="8"/>
|
<Texture Name="gAmmoDigit6Tex" OutName="ammo_digit_6" Format="ia8" Width="8" Height="8"/>
|
||||||
<Texture Name="gHUDAmmo7Tex" OutName="hud_ammo_7" Format="ia8" Width="8" Height="8"/>
|
<Texture Name="gAmmoDigit7Tex" OutName="ammo_digit_7" Format="ia8" Width="8" Height="8"/>
|
||||||
<Texture Name="gHUDAmmo8Tex" OutName="hud_ammo_8" Format="ia8" Width="8" Height="8"/>
|
<Texture Name="gAmmoDigit8Tex" OutName="ammo_digit_8" Format="ia8" Width="8" Height="8"/>
|
||||||
<Texture Name="gHUDAmmo9Tex" OutName="hud_ammo_9" Format="ia8" Width="8" Height="8"/>
|
<Texture Name="gAmmoDigit9Tex" OutName="ammo_digit_9" Format="ia8" Width="8" Height="8"/>
|
||||||
<Texture Name="gHUDUnusedAmmoHalfTex" OutName="hud_unused_ammo_half" Format="ia8" Width="16" Height="8"/>
|
<Texture Name="gUnusedAmmoDigitHalfTex" OutName="unused_ammo_digit_half" Format="ia8" Width="16" Height="8"/>
|
||||||
<Texture Name="gHUDMagicBarEndTex" OutName="hud_magic_bar_end" Format="ia8" Width="8" Height="16"/>
|
<Texture Name="gMagicBarEndTex" OutName="magic_bar_end" Format="ia8" Width="8" Height="16"/>
|
||||||
<Texture Name="gHUDMagicBarMidTex" OutName="hud_magic_bar_mid" Format="ia8" Width="24" Height="16"/>
|
<Texture Name="gMagicBarMidTex" OutName="magic_bar_mid" Format="ia8" Width="24" Height="16"/>
|
||||||
<Texture Name="gHUDMagicBarFillTex" OutName="hud_magic_bar_fill" Format="ia8" Width="8" Height="8"/>
|
<Texture Name="gMagicBarFillTex" OutName="magic_bar_fill" Format="ia8" Width="8" Height="8"/>
|
||||||
</File>
|
</File>
|
||||||
</Root>
|
</Root>
|
||||||
|
|
|
@ -90,7 +90,7 @@
|
||||||
#define R_B_LABEL_DD WREG(0)
|
#define R_B_LABEL_DD WREG(0)
|
||||||
#define R_OW_MINIMAP_X WREG(29)
|
#define R_OW_MINIMAP_X WREG(29)
|
||||||
#define R_OW_MINIMAP_Y WREG(30)
|
#define R_OW_MINIMAP_Y WREG(30)
|
||||||
#define R_MINIMAP_TOGGLED WREG(31)
|
#define R_MINIMAP_DISABLED WREG(31)
|
||||||
#define R_B_LABEL_X(i) WREG(40 + i)
|
#define R_B_LABEL_X(i) WREG(40 + i)
|
||||||
#define R_B_LABEL_Y(i) WREG(43 + i)
|
#define R_B_LABEL_Y(i) WREG(43 + i)
|
||||||
#define R_DGN_MINIMAP_X WREG(68)
|
#define R_DGN_MINIMAP_X WREG(68)
|
||||||
|
|
|
@ -4,26 +4,6 @@
|
||||||
#include "z64.h"
|
#include "z64.h"
|
||||||
#include "segment_symbols.h"
|
#include "segment_symbols.h"
|
||||||
|
|
||||||
extern u8 D_02000000[];
|
|
||||||
extern u8 D_02000400[];
|
|
||||||
extern u8 D_02000500[];
|
|
||||||
extern u8 D_02000900[];
|
|
||||||
extern u8 D_02000A00[][0x400];
|
|
||||||
extern u8 D_02001E00[];
|
|
||||||
extern u8 D_02001F00[];
|
|
||||||
extern u8 D_02002FC0[];
|
|
||||||
extern u8 D_02002000[];
|
|
||||||
extern u8 D_02002100[];
|
|
||||||
extern u8 D_02002500[];
|
|
||||||
extern u8 D_02002580[];
|
|
||||||
extern u8 D_02002600[];
|
|
||||||
extern u8 D_02002900[];
|
|
||||||
//extern ? D_02002E40;
|
|
||||||
extern u8 D_02003040[][0x80];
|
|
||||||
extern u8 D_020035C0[][0x40];
|
|
||||||
extern u8 D_020038C0[];
|
|
||||||
extern u8 D_02003940[];
|
|
||||||
extern u8 D_02003AC0[];
|
|
||||||
extern u32 D_0300AA48;
|
extern u32 D_0300AA48;
|
||||||
extern u32 D_03012B20;
|
extern u32 D_03012B20;
|
||||||
extern Gfx D_06025218[];
|
extern Gfx D_06025218[];
|
||||||
|
@ -36,7 +16,6 @@ extern Gfx D_0602A738[];
|
||||||
extern Gfx D_0602CB48[];
|
extern Gfx D_0602CB48[];
|
||||||
//extern ? D_070380D4;
|
//extern ? D_070380D4;
|
||||||
//extern ? D_0703811C;
|
//extern ? D_0703811C;
|
||||||
extern u8 D_080895C0[];
|
|
||||||
|
|
||||||
//extern ? D_80000004;
|
//extern ? D_80000004;
|
||||||
//extern ? D_80000008;
|
//extern ? D_80000008;
|
||||||
|
|
|
@ -21,6 +21,7 @@
|
||||||
#include "z64math.h"
|
#include "z64math.h"
|
||||||
#include "z64map_mark.h"
|
#include "z64map_mark.h"
|
||||||
#include "z64transition.h"
|
#include "z64transition.h"
|
||||||
|
#include "z64interface.h"
|
||||||
#include "bgm.h"
|
#include "bgm.h"
|
||||||
#include "sfx.h"
|
#include "sfx.h"
|
||||||
#include "color.h"
|
#include "color.h"
|
||||||
|
|
71
include/z64interface.h
Normal file
71
include/z64interface.h
Normal file
|
@ -0,0 +1,71 @@
|
||||||
|
#ifndef _Z64INTERFACE_H_
|
||||||
|
#define _Z64INTERFACE_H_
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Button HUD Positions (Upper Left)
|
||||||
|
*/
|
||||||
|
#define A_BUTTON_X 186
|
||||||
|
#define A_BUTTON_Y 9
|
||||||
|
|
||||||
|
#define B_BUTTON_X 160
|
||||||
|
#define B_BUTTON_Y 17
|
||||||
|
|
||||||
|
#define C_LEFT_BUTTON_X 227
|
||||||
|
#define C_LEFT_BUTTON_Y 18
|
||||||
|
|
||||||
|
#define C_DOWN_BUTTON_X 249
|
||||||
|
#define C_DOWN_BUTTON_Y 34
|
||||||
|
|
||||||
|
#define C_RIGHT_BUTTON_X 271
|
||||||
|
#define C_RIGHT_BUTTON_Y 18
|
||||||
|
|
||||||
|
#define C_UP_BUTTON_X 254
|
||||||
|
#define C_UP_BUTTON_Y 16
|
||||||
|
|
||||||
|
/**
|
||||||
|
* These are the colors for the hearts in the interface. The prim color is the red color of the heart
|
||||||
|
* for the base hearts, while the prim color for the double defense hearts is the white outline. The
|
||||||
|
* env color for the base hearts is the purple-ish outline, while the env color for the double defense
|
||||||
|
* hearts is the red color of the hearts.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define HEARTS_PRIM_R 255
|
||||||
|
#define HEARTS_PRIM_G 70
|
||||||
|
#define HEARTS_PRIM_B 50
|
||||||
|
|
||||||
|
#define HEARTS_ENV_R 50
|
||||||
|
#define HEARTS_ENV_G 40
|
||||||
|
#define HEARTS_ENV_B 60
|
||||||
|
|
||||||
|
#define HEARTS_DD_PRIM_R 255
|
||||||
|
#define HEARTS_DD_PRIM_G 255
|
||||||
|
#define HEARTS_DD_PRIM_B 255
|
||||||
|
|
||||||
|
#define HEARTS_DD_ENV_R 200
|
||||||
|
#define HEARTS_DD_ENV_G 0
|
||||||
|
#define HEARTS_DD_ENV_B 0
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The burn and drown colors listed here are unused. Prerelease footage of the game confirms that at one
|
||||||
|
* point in development the orange color was to be used while taking damage from hot environments.
|
||||||
|
* Based on this, we can assume that the blue heart color was to be used while drowning.
|
||||||
|
* In the final game these environments only have a timer and do not damage you continuously.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define HEARTS_BURN_PRIM_R 255
|
||||||
|
#define HEARTS_BURN_PRIM_G 190
|
||||||
|
#define HEARTS_BURN_PRIM_B 0
|
||||||
|
|
||||||
|
#define HEARTS_BURN_ENV_R 255
|
||||||
|
#define HEARTS_BURN_ENV_G 0
|
||||||
|
#define HEARTS_BURN_ENV_B 0
|
||||||
|
|
||||||
|
#define HEARTS_DROWN_PRIM_R 100
|
||||||
|
#define HEARTS_DROWN_PRIM_G 100
|
||||||
|
#define HEARTS_DROWN_PRIM_B 255
|
||||||
|
|
||||||
|
#define HEARTS_DROWN_ENV_R 0
|
||||||
|
#define HEARTS_DROWN_ENV_G 0
|
||||||
|
#define HEARTS_DROWN_ENV_B 255
|
||||||
|
|
||||||
|
#endif
|
|
@ -1,4 +1,7 @@
|
||||||
#include "global.h"
|
#include "global.h"
|
||||||
|
#include "textures/icon_item_static/icon_item_static.h"
|
||||||
|
#include "textures/icon_item_24_static/icon_item_24_static.h"
|
||||||
|
#include "textures/parameter_static/parameter_static.h"
|
||||||
|
|
||||||
// Bit Flag array in which gBitFlags[n] is literally (1 << n)
|
// Bit Flag array in which gBitFlags[n] is literally (1 << n)
|
||||||
u32 gBitFlags[] = {
|
u32 gBitFlags[] = {
|
||||||
|
@ -33,23 +36,137 @@ u16 gUpgradeCapacities[][4] = {
|
||||||
u32 gGsFlagsMask[] = { 0x000000FF, 0x0000FF00, 0x00FF0000, 0xFF000000 };
|
u32 gGsFlagsMask[] = { 0x000000FF, 0x0000FF00, 0x00FF0000, 0xFF000000 };
|
||||||
u32 gGsFlagsShift[] = { 0, 8, 16, 24 };
|
u32 gGsFlagsShift[] = { 0, 8, 16, 24 };
|
||||||
|
|
||||||
// TODO: use symbols for these icon textures once textures are properly in C
|
|
||||||
void* gItemIcons[] = {
|
void* gItemIcons[] = {
|
||||||
0x08000000, 0x08001000, 0x08002000, 0x08003000, 0x08004000, 0x08005000, 0x08006000, 0x08007000, 0x08008000,
|
gDekuStickIconTex,
|
||||||
0x08009000, 0x0800A000, 0x0800B000, 0x0800C000, 0x0800D000, 0x0800E000, 0x0800F000, 0x08010000, 0x08011000,
|
gDekuNutIconTex,
|
||||||
0x08012000, 0x08013000, 0x08014000, 0x08015000, 0x08016000, 0x08017000, 0x08018000, 0x08019000, 0x0801A000,
|
gBombIconTex,
|
||||||
0x0801B000, 0x0801C000, 0x0801D000, 0x0801E000, 0x0801F000, 0x08020000, 0x08021000, 0x08022000, 0x08023000,
|
gFairyBowIconTex,
|
||||||
0x08024000, 0x08025000, 0x08026000, 0x08027000, 0x08028000, 0x08029000, 0x0802A000, 0x0802B000, 0x0802C000,
|
gFireArrowIconTex,
|
||||||
0x0802D000, 0x0802E000, 0x0802F000, 0x08030000, 0x08031000, 0x08032000, 0x08033000, 0x08034000, 0x08035000,
|
gDinsFireIconTex,
|
||||||
0x08036000, 0x08037000, 0x08038000, 0x08039000, 0x0803A000, 0x0803B000, 0x0803C000, 0x0803D000, 0x0803E000,
|
gFairySlingshotIconTex,
|
||||||
0x0803F000, 0x08040000, 0x08041000, 0x08042000, 0x08043000, 0x08044000, 0x08045000, 0x08046000, 0x08047000,
|
gFairyOcarinaIconTex,
|
||||||
0x08048000, 0x08049000, 0x0804A000, 0x0804B000, 0x0804C000, 0x0804D000, 0x0804E000, 0x0804F000, 0x08050000,
|
gOcarinaofTimeIconTex,
|
||||||
0x08051000, 0x08052000, 0x08053000, 0x08054000, 0x08055000, 0x08056000, 0x08057000, 0x08058000, 0x08059000,
|
gBombchuIconTex,
|
||||||
0x08089440, 0x08089440, 0x08089440, 0x08089440, 0x08089440, 0x08089440, 0x08089440, 0x08089440, 0x08089440,
|
gHookshotIconTex,
|
||||||
0x08089440, 0x08089440, 0x08089440, 0x09000000, 0x09000900, 0x09001200, 0x09001B00, 0x09002400, 0x09002D00,
|
gLongshotIconTex,
|
||||||
0x09003600, 0x09003F00, 0x09004800, 0x09005100, 0x09005A00, 0x09006300, 0x09006C00, 0x09007500, 0x09007E00,
|
gIceArrowIconTex,
|
||||||
0x09009000, 0x09008700, 0x09007E00, 0x0900A200, 0x0900AB00, 0x0805A000, 0x0805A900, 0x0805B200, 0x02002D40,
|
gFaroresWindIconTex,
|
||||||
0x02002A40, 0x02002C40, 0x02002B40, 0x02002940,
|
gBoomerangIconTex,
|
||||||
|
gLensofTruthIconTex,
|
||||||
|
gMagicBeansIconTex,
|
||||||
|
gMegatonHammerIconTex,
|
||||||
|
gLightArrowIconTex,
|
||||||
|
gNayrusLoveIconTex,
|
||||||
|
gEmptyBottleIconTex,
|
||||||
|
gRedPotionIconTex,
|
||||||
|
gGreenPotionIconTex,
|
||||||
|
gBluePotionIconTex,
|
||||||
|
gBottledFairyIconTex,
|
||||||
|
gFishIconTex,
|
||||||
|
gMilkFullIconTex,
|
||||||
|
gRutosLetterIconTex,
|
||||||
|
gBlueFireIconTex,
|
||||||
|
gBugIconTex,
|
||||||
|
gBigPoeIconTex,
|
||||||
|
gMilkhalfIconTex,
|
||||||
|
gPoeIconTex,
|
||||||
|
gWeirdEggIconTex,
|
||||||
|
gCuccoIconTex,
|
||||||
|
gZeldasLetterIconTex,
|
||||||
|
gKeatonMaskIconTex,
|
||||||
|
gSkullMaskIconTex,
|
||||||
|
gSpookyMaskIconTex,
|
||||||
|
gBunnyHoodIconTex,
|
||||||
|
gGoronMaskIconTex,
|
||||||
|
gZoraMaskIconTex,
|
||||||
|
gGerudoMaskIconTex,
|
||||||
|
gMaskofTruthIconTex,
|
||||||
|
gSoldOutIconTex,
|
||||||
|
gPocketEggIconTex,
|
||||||
|
gPocketCuccoIconTex,
|
||||||
|
gCojiroIconTex,
|
||||||
|
gOddMushroomIconTex,
|
||||||
|
gOddPotionIconTex,
|
||||||
|
gPoachersSawIconTex,
|
||||||
|
gBrokenBiggoronSwordIconTex,
|
||||||
|
gPrescriptionIconTex,
|
||||||
|
gEyeBallFrogIconTex,
|
||||||
|
gEyeDropsIconTex,
|
||||||
|
gClaimCheckIconTex,
|
||||||
|
gFairyBowFireIconTex,
|
||||||
|
gFairyBowIceIconTex,
|
||||||
|
gFairyBowLightIconTex,
|
||||||
|
gKokiriSwordIconTex,
|
||||||
|
gMasterSwordIconTex,
|
||||||
|
gBiggoronSwordIconTex,
|
||||||
|
gDekuShieldIconTex,
|
||||||
|
gHylianShieldIconTex,
|
||||||
|
gMirrorShieldIconTex,
|
||||||
|
gKokiriTunicIconTex,
|
||||||
|
gGoronTunicIconTex,
|
||||||
|
gZoraTunicIconTex,
|
||||||
|
gKokiriBootsIconTex,
|
||||||
|
gIronBootsIconTex,
|
||||||
|
gHoverBootsIconTex,
|
||||||
|
gBulletBag30IconTex,
|
||||||
|
gBulletBag40IconTex,
|
||||||
|
gBulletBag50IconTex,
|
||||||
|
gQuiver30IconTex,
|
||||||
|
gQuiver40IconTex,
|
||||||
|
gQuiver50IconTex,
|
||||||
|
gBombBag20IconTex,
|
||||||
|
gBombBag30IconTex,
|
||||||
|
gBombBag40IconTex,
|
||||||
|
gGoronsBraceletIconTex,
|
||||||
|
gSilverGauntletsIconTex,
|
||||||
|
gGoldenGauntletsIconTex,
|
||||||
|
gSilverScaleIconTex,
|
||||||
|
gGoldenScaleIconTex,
|
||||||
|
gBrokenGiantsKnifeIconTex,
|
||||||
|
gAdultsWalletIconTex,
|
||||||
|
gGiantsWalletIconTex,
|
||||||
|
gDekuSeedsIconTex,
|
||||||
|
gFishingPoleIconTex,
|
||||||
|
gSongNoteTex,
|
||||||
|
gSongNoteTex,
|
||||||
|
gSongNoteTex,
|
||||||
|
gSongNoteTex,
|
||||||
|
gSongNoteTex,
|
||||||
|
gSongNoteTex,
|
||||||
|
gSongNoteTex,
|
||||||
|
gSongNoteTex,
|
||||||
|
gSongNoteTex,
|
||||||
|
gSongNoteTex,
|
||||||
|
gSongNoteTex,
|
||||||
|
gSongNoteTex,
|
||||||
|
gForestMedallionIconTex,
|
||||||
|
gFireMedallionIconTex,
|
||||||
|
gWaterMedallionIconTex,
|
||||||
|
gSpiritMedallionIconTex,
|
||||||
|
gShadowMedallionIconTex,
|
||||||
|
gLightMedallionIconTex,
|
||||||
|
gKokiriEmeraldIconTex,
|
||||||
|
gGoronRubyIconTex,
|
||||||
|
gZoraSapphireIconTex,
|
||||||
|
gStoneOfAgonyIconTex,
|
||||||
|
gGerudosCardIconTex,
|
||||||
|
gGoldSkulltulaIconTex,
|
||||||
|
gHeartContainerIconTex,
|
||||||
|
gUnusedPieceOfHeartIconTex,
|
||||||
|
gBossKeyIconTex,
|
||||||
|
gDungeonMapIconTex,
|
||||||
|
gCompassIconTex,
|
||||||
|
gBossKeyIconTex,
|
||||||
|
gSmallMagicJarIconTex,
|
||||||
|
gBigMagicJarIconTex,
|
||||||
|
gHeartPieceIcon1Tex,
|
||||||
|
gHeartPieceIcon2Tex,
|
||||||
|
gHeartPieceIcon3Tex,
|
||||||
|
gOcarinaCUpTex,
|
||||||
|
gOcarinaCDownTex,
|
||||||
|
gOcarinaCLeftTex,
|
||||||
|
gOcarinaCRightTex,
|
||||||
|
gOcarinaATex,
|
||||||
};
|
};
|
||||||
|
|
||||||
// Used to map item IDs to inventory slots
|
// Used to map item IDs to inventory slots
|
||||||
|
|
|
@ -222,10 +222,11 @@ void GfxPrint_PrintCharImpl(GfxPrint* this, u8 c) {
|
||||||
|
|
||||||
if (this->flag & GFXPRINT_FLAG64) {
|
if (this->flag & GFXPRINT_FLAG64) {
|
||||||
gSPTextureRectangle(this->dlist++, (this->posX + 4) << 1, (this->posY + 4) << 1, (this->posX + 4 + 32) << 1,
|
gSPTextureRectangle(this->dlist++, (this->posX + 4) << 1, (this->posY + 4) << 1, (this->posX + 4 + 32) << 1,
|
||||||
(this->posY + 4 + 32) << 1, tile, (u16)(c & 4) * 64, (u16)(c >> 3) * 256, 512, 512);
|
(this->posY + 4 + 32) << 1, tile, (u16)(c & 4) * 64, (u16)(c >> 3) * 256, 1 << 9,
|
||||||
|
1 << 9);
|
||||||
} else {
|
} else {
|
||||||
gSPTextureRectangle(this->dlist++, this->posX + 4, this->posY + 4, this->posX + 4 + 32, this->posY + 4 + 32,
|
gSPTextureRectangle(this->dlist++, this->posX + 4, this->posY + 4, this->posX + 4 + 32, this->posY + 4 + 32,
|
||||||
tile, (u16)(c & 4) * 64, (u16)(c >> 3) * 256, 1024, 1024);
|
tile, (u16)(c & 4) * 64, (u16)(c >> 3) * 256, 1 << 10, 1 << 10);
|
||||||
}
|
}
|
||||||
|
|
||||||
gDPSetPrimColorMod(this->dlist++, 0, 0, this->color.rgba);
|
gDPSetPrimColorMod(this->dlist++, 0, 0, this->color.rgba);
|
||||||
|
@ -233,10 +234,10 @@ void GfxPrint_PrintCharImpl(GfxPrint* this, u8 c) {
|
||||||
|
|
||||||
if (this->flag & GFXPRINT_FLAG64) {
|
if (this->flag & GFXPRINT_FLAG64) {
|
||||||
gSPTextureRectangle(this->dlist++, (this->posX) << 1, (this->posY) << 1, (this->posX + 32) << 1,
|
gSPTextureRectangle(this->dlist++, (this->posX) << 1, (this->posY) << 1, (this->posX + 32) << 1,
|
||||||
(this->posY + 32) << 1, tile, (u16)(c & 4) * 64, (u16)(c >> 3) * 256, 512, 512);
|
(this->posY + 32) << 1, tile, (u16)(c & 4) * 64, (u16)(c >> 3) * 256, 1 << 9, 1 << 9);
|
||||||
} else {
|
} else {
|
||||||
gSPTextureRectangle(this->dlist++, this->posX, this->posY, this->posX + 32, this->posY + 32, tile,
|
gSPTextureRectangle(this->dlist++, this->posX, this->posY, this->posX + 32, this->posY + 32, tile,
|
||||||
(u16)(c & 4) * 64, (u16)(c >> 3) * 256, 1024, 1024);
|
(u16)(c & 4) * 64, (u16)(c >> 3) * 256, 1 << 10, 1 << 10);
|
||||||
}
|
}
|
||||||
|
|
||||||
this->posX += 32;
|
this->posX += 32;
|
||||||
|
|
|
@ -743,7 +743,7 @@ void TitleCard_Draw(GlobalContext* globalCtx, TitleCardContext* titleCtx) {
|
||||||
G_TX_NOLOD);
|
G_TX_NOLOD);
|
||||||
|
|
||||||
gSPTextureRectangle(OVERLAY_DISP++, spC0, spB8, ((sp38 * 2) + spC0) - 4, spB8 + (spC8 * 4) - 1, G_TX_RENDERTILE,
|
gSPTextureRectangle(OVERLAY_DISP++, spC0, spB8, ((sp38 * 2) + spC0) - 4, spB8 + (spC8 * 4) - 1, G_TX_RENDERTILE,
|
||||||
0, 0, 1024, 1024);
|
0, 0, 1 << 10, 1 << 10);
|
||||||
|
|
||||||
spC8 = titleCtx->height - spC8;
|
spC8 = titleCtx->height - spC8;
|
||||||
|
|
||||||
|
@ -753,7 +753,7 @@ void TitleCard_Draw(GlobalContext* globalCtx, TitleCardContext* titleCtx) {
|
||||||
G_TX_NOLOD, G_TX_NOLOD);
|
G_TX_NOLOD, G_TX_NOLOD);
|
||||||
|
|
||||||
gSPTextureRectangle(OVERLAY_DISP++, spC0, spB4, ((sp38 * 2) + spC0) - 4, spB4 + (spC8 * 4) - 1,
|
gSPTextureRectangle(OVERLAY_DISP++, spC0, spB4, ((sp38 * 2) + spC0) - 4, spB4 + (spC8 * 4) - 1,
|
||||||
G_TX_RENDERTILE, 0, 0, 1024, 1024);
|
G_TX_RENDERTILE, 0, 0, 1 << 10, 1 << 10);
|
||||||
}
|
}
|
||||||
|
|
||||||
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_actor.c", 2880);
|
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_actor.c", 2880);
|
||||||
|
|
|
@ -153,14 +153,14 @@ void func_801109B0(GlobalContext* globalCtx) {
|
||||||
|
|
||||||
interfaceCtx->unk_23C = interfaceCtx->unk_242 = 0;
|
interfaceCtx->unk_23C = interfaceCtx->unk_242 = 0;
|
||||||
|
|
||||||
R_ITEM_BTN_X(0) = 160;
|
R_ITEM_BTN_X(0) = B_BUTTON_X;
|
||||||
R_B_BTN_COLOR(0) = 255;
|
R_B_BTN_COLOR(0) = 255;
|
||||||
R_B_BTN_COLOR(1) = 30;
|
R_B_BTN_COLOR(1) = 30;
|
||||||
R_B_BTN_COLOR(2) = 30;
|
R_B_BTN_COLOR(2) = 30;
|
||||||
R_ITEM_ICON_X(0) = 160;
|
R_ITEM_ICON_X(0) = B_BUTTON_X;
|
||||||
R_ITEM_AMMO_X(0) = 162;
|
R_ITEM_AMMO_X(0) = B_BUTTON_X + 2;
|
||||||
R_A_BTN_X = 186;
|
R_A_BTN_X = A_BUTTON_X;
|
||||||
R_A_ICON_X = 186;
|
R_A_ICON_X = A_BUTTON_X;
|
||||||
R_A_BTN_COLOR(0) = 0;
|
R_A_BTN_COLOR(0) = 0;
|
||||||
R_A_BTN_COLOR(1) = 200;
|
R_A_BTN_COLOR(1) = 200;
|
||||||
R_A_BTN_COLOR(2) = 50;
|
R_A_BTN_COLOR(2) = 50;
|
||||||
|
@ -195,22 +195,22 @@ void func_80110F68(GlobalContext* globalCtx) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_80111070(void) {
|
void func_80111070(void) {
|
||||||
YREG(8) = 0xA;
|
YREG(8) = 10;
|
||||||
YREG(14) = 0;
|
YREG(14) = 0;
|
||||||
YREG(15) = 0;
|
YREG(15) = 0;
|
||||||
YREG(16) = 0;
|
YREG(16) = 0;
|
||||||
YREG(17) = 0;
|
YREG(17) = 0;
|
||||||
YREG(22) = 0x32;
|
YREG(22) = 50;
|
||||||
YREG(23) = 0;
|
YREG(23) = 0;
|
||||||
YREG(24) = -0x3C;
|
YREG(24) = -60;
|
||||||
YREG(25) = 0xD;
|
YREG(25) = 13;
|
||||||
YREG(26) = 0xF;
|
YREG(26) = 15;
|
||||||
YREG(27) = 0x29;
|
YREG(27) = 41;
|
||||||
YREG(28) = 0xF;
|
YREG(28) = 15;
|
||||||
YREG(32) = 0x109;
|
YREG(32) = 265;
|
||||||
YREG(33) = 0x37;
|
YREG(33) = 55;
|
||||||
YREG(34) = 0;
|
YREG(34) = 0;
|
||||||
YREG(35) = 0x14;
|
YREG(35) = 20;
|
||||||
YREG(36) = 0;
|
YREG(36) = 0;
|
||||||
YREG(37) = 0;
|
YREG(37) = 0;
|
||||||
YREG(38) = 0;
|
YREG(38) = 0;
|
||||||
|
@ -219,49 +219,49 @@ void func_80111070(void) {
|
||||||
YREG(42) = 2;
|
YREG(42) = 2;
|
||||||
YREG(43) = 1;
|
YREG(43) = 1;
|
||||||
YREG(44) = 0;
|
YREG(44) = 0;
|
||||||
YREG(45) = 0xEC;
|
YREG(45) = 236;
|
||||||
YREG(46) = 0x24;
|
YREG(46) = 36;
|
||||||
YREG(47) = 0;
|
YREG(47) = 0;
|
||||||
YREG(48) = -0x2D;
|
YREG(48) = -45;
|
||||||
YREG(49) = -0x30;
|
YREG(49) = -48;
|
||||||
YREG(50) = 0x10;
|
YREG(50) = 16;
|
||||||
YREG(51) = 0x16;
|
YREG(51) = 22;
|
||||||
YREG(52) = -0x37;
|
YREG(52) = -55;
|
||||||
YREG(53) = -0x35;
|
YREG(53) = -53;
|
||||||
YREG(54) = 0x2B;
|
YREG(54) = 43;
|
||||||
YREG(55) = 0x2F;
|
YREG(55) = 47;
|
||||||
YREG(56) = -0x21;
|
YREG(56) = -33;
|
||||||
YREG(57) = -0x2A;
|
YREG(57) = -42;
|
||||||
YREG(58) = -0x21;
|
YREG(58) = -33;
|
||||||
YREG(59) = -0x25;
|
YREG(59) = -37;
|
||||||
YREG(60) = 0xE;
|
YREG(60) = 14;
|
||||||
YREG(61) = -2;
|
YREG(61) = -2;
|
||||||
YREG(62) = -2;
|
YREG(62) = -2;
|
||||||
YREG(63) = -0x12;
|
YREG(63) = -18;
|
||||||
YREG(64) = -0x12;
|
YREG(64) = -18;
|
||||||
YREG(67) = 0;
|
YREG(67) = 0;
|
||||||
YREG(68) = 0;
|
YREG(68) = 0;
|
||||||
YREG(69) = 0;
|
YREG(69) = 0;
|
||||||
YREG(70) = 0;
|
YREG(70) = 0;
|
||||||
YREG(71) = -6;
|
YREG(71) = -6;
|
||||||
YREG(72) = 0xA;
|
YREG(72) = 10;
|
||||||
YREG(73) = -8;
|
YREG(73) = -8;
|
||||||
YREG(74) = 8;
|
YREG(74) = 8;
|
||||||
YREG(75) = 0x18;
|
YREG(75) = 24;
|
||||||
YREG(76) = 0x20;
|
YREG(76) = 32;
|
||||||
YREG(77) = 0;
|
YREG(77) = 0;
|
||||||
YREG(78) = 0;
|
YREG(78) = 0;
|
||||||
YREG(79) = 0x30;
|
YREG(79) = 48;
|
||||||
YREG(80) = 0x1C2;
|
YREG(80) = 450;
|
||||||
YREG(81) = 0;
|
YREG(81) = 0;
|
||||||
YREG(82) = -0xF;
|
YREG(82) = -15;
|
||||||
YREG(83) = 0x1F4;
|
YREG(83) = 500;
|
||||||
YREG(84) = 0x258;
|
YREG(84) = 600;
|
||||||
YREG(85) = 0;
|
YREG(85) = 0;
|
||||||
YREG(86) = -0x15;
|
YREG(86) = -21;
|
||||||
YREG(87) = 0x1FE;
|
YREG(87) = 510;
|
||||||
R_C_UP_ICON_X = 0xF7;
|
R_C_UP_ICON_X = C_UP_BUTTON_X - 7;
|
||||||
R_C_UP_ICON_Y = 0x14;
|
R_C_UP_ICON_Y = C_UP_BUTTON_Y + 4;
|
||||||
YREG(92) = 8;
|
YREG(92) = 8;
|
||||||
YREG(93) = 6;
|
YREG(93) = 6;
|
||||||
YREG(94) = 3;
|
YREG(94) = 3;
|
||||||
|
@ -269,29 +269,29 @@ void func_80111070(void) {
|
||||||
R_MAGIC_FILL_COLOR(0) = 0;
|
R_MAGIC_FILL_COLOR(0) = 0;
|
||||||
R_MAGIC_FILL_COLOR(1) = 200;
|
R_MAGIC_FILL_COLOR(1) = 200;
|
||||||
R_MAGIC_FILL_COLOR(2) = 0;
|
R_MAGIC_FILL_COLOR(2) = 0;
|
||||||
ZREG(9) = 0x8C;
|
ZREG(9) = 140;
|
||||||
ZREG(10) = 0xC8;
|
ZREG(10) = 200;
|
||||||
ZREG(11) = 0;
|
ZREG(11) = 0;
|
||||||
ZREG(12) = 0xC8;
|
ZREG(12) = 200;
|
||||||
ZREG(13) = 0;
|
ZREG(13) = 0;
|
||||||
ZREG(14) = 0x6E;
|
ZREG(14) = 110;
|
||||||
ZREG(15) = 0x38;
|
ZREG(15) = 56;
|
||||||
ZREG(16) = 1;
|
ZREG(16) = 1;
|
||||||
ZREG(17) = -0x32;
|
ZREG(17) = -50;
|
||||||
ZREG(18) = -0xC8;
|
ZREG(18) = -200;
|
||||||
ZREG(19) = 0;
|
ZREG(19) = 0;
|
||||||
ZREG(20) = 0;
|
ZREG(20) = 0;
|
||||||
ZREG(21) = 0x32;
|
ZREG(21) = 50;
|
||||||
ZREG(22) = -0x32;
|
ZREG(22) = -50;
|
||||||
ZREG(23) = 0x14;
|
ZREG(23) = 20;
|
||||||
ZREG(24) = 0x14;
|
ZREG(24) = 20;
|
||||||
ZREG(25) = 4;
|
ZREG(25) = 4;
|
||||||
ZREG(26) = 0x14;
|
ZREG(26) = 20;
|
||||||
ZREG(27) = 0xA;
|
ZREG(27) = 10;
|
||||||
ZREG(28) = 0x14;
|
ZREG(28) = 20;
|
||||||
ZREG(29) = 4;
|
ZREG(29) = 4;
|
||||||
ZREG(30) = 0x14;
|
ZREG(30) = 20;
|
||||||
ZREG(31) = 0xA;
|
ZREG(31) = 10;
|
||||||
ZREG(32) = 0;
|
ZREG(32) = 0;
|
||||||
ZREG(33) = 0;
|
ZREG(33) = 0;
|
||||||
ZREG(34) = 0;
|
ZREG(34) = 0;
|
||||||
|
@ -303,227 +303,227 @@ void func_80111070(void) {
|
||||||
R_C_BTN_COLOR(2) = 0;
|
R_C_BTN_COLOR(2) = 0;
|
||||||
ZREG(46) = 1;
|
ZREG(46) = 1;
|
||||||
ZREG(47) = 1;
|
ZREG(47) = 1;
|
||||||
R_START_LABEL_DD(0) = 0x64;
|
R_START_LABEL_DD(0) = 100;
|
||||||
R_START_LABEL_DD(1) = 0x59;
|
R_START_LABEL_DD(1) = 89;
|
||||||
R_START_LABEL_DD(2) = 0x5C;
|
R_START_LABEL_DD(2) = 92;
|
||||||
R_START_LABEL_Y(0) = 0x14;
|
R_START_LABEL_Y(0) = 20;
|
||||||
R_START_LABEL_Y(1) = 0x14;
|
R_START_LABEL_Y(1) = 20;
|
||||||
R_START_LABEL_Y(2) = 0x14;
|
R_START_LABEL_Y(2) = 20;
|
||||||
R_START_LABEL_X(0) = 0x78;
|
R_START_LABEL_X(0) = 120;
|
||||||
R_START_LABEL_X(1) = 0x77;
|
R_START_LABEL_X(1) = 119;
|
||||||
R_START_LABEL_X(2) = 0x77;
|
R_START_LABEL_X(2) = 119;
|
||||||
ZREG(61) = 1;
|
ZREG(61) = 1;
|
||||||
R_C_UP_BTN_X = 0xFE;
|
R_C_UP_BTN_X = C_UP_BUTTON_X;
|
||||||
R_C_UP_BTN_Y = 0x10;
|
R_C_UP_BTN_Y = C_UP_BUTTON_Y;
|
||||||
ZREG(64) = 0x14;
|
ZREG(64) = 20;
|
||||||
ZREG(65) = 0x15;
|
ZREG(65) = 21;
|
||||||
ZREG(66) = 0x7A;
|
ZREG(66) = 122;
|
||||||
R_ITEM_BTN_X(1) = 0xE3;
|
R_ITEM_BTN_X(1) = C_LEFT_BUTTON_X;
|
||||||
R_ITEM_BTN_X(2) = 0xF9;
|
R_ITEM_BTN_X(2) = C_DOWN_BUTTON_X;
|
||||||
R_ITEM_BTN_X(3) = 0x10F;
|
R_ITEM_BTN_X(3) = C_RIGHT_BUTTON_X;
|
||||||
R_ITEM_BTN_Y(0) = 0x11;
|
R_ITEM_BTN_Y(0) = B_BUTTON_Y;
|
||||||
R_ITEM_BTN_Y(1) = 0x12;
|
R_ITEM_BTN_Y(1) = C_LEFT_BUTTON_Y;
|
||||||
R_ITEM_BTN_Y(2) = 0x22;
|
R_ITEM_BTN_Y(2) = C_DOWN_BUTTON_Y;
|
||||||
R_ITEM_BTN_Y(3) = 0x12;
|
R_ITEM_BTN_Y(3) = C_RIGHT_BUTTON_Y;
|
||||||
R_ITEM_BTN_DD(0) = 0x23F;
|
R_ITEM_BTN_DD(0) = 575;
|
||||||
R_ITEM_BTN_DD(1) = 0x26C;
|
R_ITEM_BTN_DD(1) = 620;
|
||||||
R_ITEM_BTN_DD(2) = 0x26C;
|
R_ITEM_BTN_DD(2) = 620;
|
||||||
R_ITEM_BTN_DD(3) = 0x26C;
|
R_ITEM_BTN_DD(3) = 620;
|
||||||
R_ITEM_ICON_X(1) = 0xE3;
|
R_ITEM_ICON_X(1) = C_LEFT_BUTTON_X;
|
||||||
R_ITEM_ICON_X(2) = 0xF9;
|
R_ITEM_ICON_X(2) = C_DOWN_BUTTON_X;
|
||||||
R_ITEM_ICON_X(3) = 0x10F;
|
R_ITEM_ICON_X(3) = C_RIGHT_BUTTON_X;
|
||||||
R_ITEM_ICON_Y(0) = 0x11;
|
R_ITEM_ICON_Y(0) = B_BUTTON_Y;
|
||||||
R_ITEM_ICON_Y(1) = 0x12;
|
R_ITEM_ICON_Y(1) = C_LEFT_BUTTON_Y;
|
||||||
R_ITEM_ICON_Y(2) = 0x22;
|
R_ITEM_ICON_Y(2) = C_DOWN_BUTTON_Y;
|
||||||
R_ITEM_ICON_Y(3) = 0x12;
|
R_ITEM_ICON_Y(3) = C_RIGHT_BUTTON_Y;
|
||||||
R_ITEM_ICON_DD(0) = 0x226;
|
R_ITEM_ICON_DD(0) = 550;
|
||||||
R_ITEM_ICON_DD(1) = 0x2A8;
|
R_ITEM_ICON_DD(1) = 680;
|
||||||
R_ITEM_ICON_DD(2) = 0x2A8;
|
R_ITEM_ICON_DD(2) = 680;
|
||||||
R_ITEM_ICON_DD(3) = 0x2A8;
|
R_ITEM_ICON_DD(3) = 680;
|
||||||
ZREG(94) = 1;
|
ZREG(94) = 1;
|
||||||
ZREG(95) = 0;
|
ZREG(95) = 0;
|
||||||
XREG(0) = 0x1A;
|
XREG(0) = 26;
|
||||||
XREG(1) = 0x16;
|
XREG(1) = 22;
|
||||||
XREG(2) = -0xB;
|
XREG(2) = -11;
|
||||||
XREG(3) = -4;
|
XREG(3) = -4;
|
||||||
XREG(4) = 3;
|
XREG(4) = 3;
|
||||||
XREG(5) = 0;
|
XREG(5) = 0;
|
||||||
XREG(6) = 2;
|
XREG(6) = 2;
|
||||||
XREG(7) = 0x1E;
|
XREG(7) = 30;
|
||||||
XREG(8) = 0xA;
|
XREG(8) = 10;
|
||||||
XREG(9) = 0;
|
XREG(9) = 0;
|
||||||
XREG(10) = -0x254E;
|
XREG(10) = -9550;
|
||||||
XREG(11) = 0x26DE;
|
XREG(11) = 9950;
|
||||||
XREG(12) = 0x44;
|
XREG(12) = 68;
|
||||||
XREG(13) = 0x24;
|
XREG(13) = 36;
|
||||||
XREG(14) = 4;
|
XREG(14) = 4;
|
||||||
XREG(15) = 1;
|
XREG(15) = 1;
|
||||||
R_A_BTN_Y = 9;
|
R_A_BTN_Y = A_BUTTON_Y;
|
||||||
XREG(18) = -0x17C;
|
XREG(18) = -380;
|
||||||
R_A_ICON_Y = 9;
|
R_A_ICON_Y = A_BUTTON_Y;
|
||||||
XREG(21) = 0x30;
|
XREG(21) = 48;
|
||||||
XREG(25) = 0;
|
XREG(25) = 0;
|
||||||
XREG(26) = 0;
|
XREG(26) = 0;
|
||||||
XREG(27) = 0;
|
XREG(27) = 0;
|
||||||
XREG(28) = 0x10;
|
XREG(28) = 16;
|
||||||
XREG(29) = 0x32;
|
XREG(29) = 50;
|
||||||
XREG(30) = 0xF;
|
XREG(30) = 15;
|
||||||
XREG(31) = 8;
|
XREG(31) = 8;
|
||||||
XREG(32) = 4;
|
XREG(32) = 4;
|
||||||
XREG(33) = 2;
|
XREG(33) = 2;
|
||||||
XREG(34) = 0x64;
|
XREG(34) = 100;
|
||||||
XREG(35) = 7;
|
XREG(35) = 7;
|
||||||
XREG(36) = 0x14;
|
XREG(36) = 20;
|
||||||
XREG(37) = 0xA;
|
XREG(37) = 10;
|
||||||
XREG(38) = 2;
|
XREG(38) = 2;
|
||||||
XREG(39) = 0x8C;
|
XREG(39) = 140;
|
||||||
XREG(40) = 0x14;
|
XREG(40) = 20;
|
||||||
XREG(41) = 0x12C;
|
XREG(41) = 300;
|
||||||
XREG(42) = 0x64;
|
XREG(42) = 100;
|
||||||
XREG(43) = 0x46;
|
XREG(43) = 70;
|
||||||
XREG(44) = 0x32;
|
XREG(44) = 50;
|
||||||
XREG(45) = 0x24;
|
XREG(45) = 36;
|
||||||
XREG(46) = 0x10;
|
XREG(46) = 16;
|
||||||
XREG(47) = 8;
|
XREG(47) = 8;
|
||||||
R_MAGIC_BAR_SMALL_Y = 0x22;
|
R_MAGIC_BAR_SMALL_Y = 34;
|
||||||
R_MAGIC_BAR_X = 0x12;
|
R_MAGIC_BAR_X = 18;
|
||||||
R_MAGIC_BAR_LARGE_Y = 0x2A;
|
R_MAGIC_BAR_LARGE_Y = 42;
|
||||||
R_MAGIC_FILL_X = 0x1A;
|
R_MAGIC_FILL_X = 26;
|
||||||
XREG(52) = 0;
|
XREG(52) = 0;
|
||||||
XREG(53) = 1;
|
XREG(53) = 1;
|
||||||
XREG(54) = 0x41;
|
XREG(54) = 65;
|
||||||
XREG(55) = 0x3C;
|
XREG(55) = 60;
|
||||||
XREG(56) = 0x10;
|
XREG(56) = 16;
|
||||||
XREG(57) = 0x50;
|
XREG(57) = 80;
|
||||||
XREG(58) = 0x50;
|
XREG(58) = 80;
|
||||||
XREG(59) = 0xC;
|
XREG(59) = 12;
|
||||||
XREG(60) = 1;
|
XREG(60) = 1;
|
||||||
XREG(61) = 3;
|
XREG(61) = 3;
|
||||||
XREG(62) = 0;
|
XREG(62) = 0;
|
||||||
XREG(63) = 0x64;
|
XREG(63) = 100;
|
||||||
XREG(64) = 0x9E;
|
XREG(64) = 158;
|
||||||
XREG(65) = 0x66;
|
XREG(65) = 102;
|
||||||
XREG(66) = 0x30;
|
XREG(66) = 48;
|
||||||
XREG(67) = 0x36;
|
XREG(67) = 54;
|
||||||
XREG(68) = 0x46;
|
XREG(68) = 70;
|
||||||
XREG(69) = 0x56;
|
XREG(69) = 86;
|
||||||
XREG(70) = -0x12C;
|
XREG(70) = -300;
|
||||||
XREG(71) = 0;
|
XREG(71) = 0;
|
||||||
XREG(72) = 0x36;
|
XREG(72) = 54;
|
||||||
XREG(73) = 0x30;
|
XREG(73) = 48;
|
||||||
XREG(74) = 0x80;
|
XREG(74) = 128;
|
||||||
XREG(75) = 0x40;
|
XREG(75) = 64;
|
||||||
XREG(76) = 0x800;
|
XREG(76) = 2048;
|
||||||
XREG(77) = 0x200;
|
XREG(77) = 512;
|
||||||
XREG(78) = 0x60;
|
XREG(78) = 96;
|
||||||
XREG(79) = 0x62;
|
XREG(79) = 98;
|
||||||
XREG(80) = 0;
|
XREG(80) = 0;
|
||||||
XREG(81) = 0x32;
|
XREG(81) = 50;
|
||||||
XREG(82) = 0x19;
|
XREG(82) = 25;
|
||||||
XREG(83) = 0x64;
|
XREG(83) = 100;
|
||||||
XREG(84) = 0x64;
|
XREG(84) = 100;
|
||||||
XREG(85) = 0;
|
XREG(85) = 0;
|
||||||
XREG(86) = 0;
|
XREG(86) = 0;
|
||||||
XREG(87) = 0;
|
XREG(87) = 0;
|
||||||
XREG(88) = -0x32;
|
XREG(88) = -50;
|
||||||
XREG(89) = -0x64;
|
XREG(89) = -100;
|
||||||
XREG(90) = -0x1F4;
|
XREG(90) = -500;
|
||||||
XREG(91) = 0;
|
XREG(91) = 0;
|
||||||
XREG(92) = 0x64;
|
XREG(92) = 100;
|
||||||
XREG(93) = 0x64;
|
XREG(93) = 100;
|
||||||
XREG(94) = 0xA0;
|
XREG(94) = 160;
|
||||||
XREG(95) = 0xC8;
|
XREG(95) = 200;
|
||||||
WREG(2) = -0x17C0;
|
WREG(2) = -6080;
|
||||||
WREG(3) = 0x248B;
|
WREG(3) = 9355;
|
||||||
WREG(4) = 8;
|
WREG(4) = 8;
|
||||||
WREG(5) = 3;
|
WREG(5) = 3;
|
||||||
WREG(6) = 8;
|
WREG(6) = 8;
|
||||||
WREG(7) = 0;
|
WREG(7) = 0;
|
||||||
WREG(8) = 0x64;
|
WREG(8) = 100;
|
||||||
WREG(9) = 0x6D;
|
WREG(9) = 109;
|
||||||
WREG(10) = 0x97;
|
WREG(10) = 151;
|
||||||
WREG(11) = 0x94;
|
WREG(11) = 148;
|
||||||
WREG(12) = 0x17;
|
WREG(12) = 23;
|
||||||
WREG(13) = 0x16;
|
WREG(13) = 22;
|
||||||
WREG(14) = -0x17C;
|
WREG(14) = -380;
|
||||||
WREG(15) = -0x15E;
|
WREG(15) = -350;
|
||||||
WREG(16) = -0xAF;
|
WREG(16) = -175;
|
||||||
WREG(17) = 0x9B;
|
WREG(17) = 155;
|
||||||
WREG(18) = 0xA;
|
WREG(18) = 10;
|
||||||
WREG(19) = 0xA;
|
WREG(19) = 10;
|
||||||
WREG(20) = -0x32;
|
WREG(20) = -50;
|
||||||
WREG(21) = -0x36;
|
WREG(21) = -54;
|
||||||
WREG(22) = -0x20;
|
WREG(22) = -32;
|
||||||
WREG(23) = -0x26;
|
WREG(23) = -38;
|
||||||
WREG(24) = -0x24;
|
WREG(24) = -36;
|
||||||
WREG(25) = 0x28;
|
WREG(25) = 40;
|
||||||
WREG(26) = -0x28;
|
WREG(26) = -40;
|
||||||
WREG(27) = 0;
|
WREG(27) = 0;
|
||||||
WREG(28) = 0;
|
WREG(28) = 0;
|
||||||
R_OW_MINIMAP_X = 0xEE;
|
R_OW_MINIMAP_X = 238;
|
||||||
R_OW_MINIMAP_Y = 0xA4;
|
R_OW_MINIMAP_Y = 164;
|
||||||
R_MINIMAP_TOGGLED = 0;
|
R_MINIMAP_DISABLED = false;
|
||||||
WREG(32) = 0x7A;
|
WREG(32) = 122;
|
||||||
WREG(33) = 0x3C;
|
WREG(33) = 60;
|
||||||
WREG(35) = 0;
|
WREG(35) = 0;
|
||||||
WREG(36) = 0;
|
WREG(36) = 0;
|
||||||
WREG(37) = 0x64;
|
WREG(37) = 100;
|
||||||
WREG(38) = 0x63;
|
WREG(38) = 99;
|
||||||
WREG(39) = 0x6D;
|
WREG(39) = 109;
|
||||||
R_B_LABEL_X(0) = 0x97;
|
R_B_LABEL_X(0) = B_BUTTON_X - 9;
|
||||||
R_B_LABEL_X(1) = 0x95;
|
R_B_LABEL_X(1) = B_BUTTON_X - 11;
|
||||||
R_B_LABEL_X(2) = 0x94;
|
R_B_LABEL_X(2) = B_BUTTON_X - 12;
|
||||||
R_B_LABEL_Y(0) = 0x17;
|
R_B_LABEL_Y(0) = B_BUTTON_Y + 6;
|
||||||
R_B_LABEL_Y(1) = 0x16;
|
R_B_LABEL_Y(1) = B_BUTTON_Y + 5;
|
||||||
R_B_LABEL_Y(2) = 0x16;
|
R_B_LABEL_Y(2) = B_BUTTON_Y + 5;
|
||||||
WREG(46) = -0x17C;
|
WREG(46) = -380;
|
||||||
WREG(47) = -0x168;
|
WREG(47) = -360;
|
||||||
WREG(48) = -0x15E;
|
WREG(48) = -350;
|
||||||
WREG(49) = -0x30;
|
WREG(49) = -48;
|
||||||
WREG(50) = 0x10;
|
WREG(50) = 16;
|
||||||
WREG(51) = -0x3E;
|
WREG(51) = -62;
|
||||||
WREG(52) = 0x16;
|
WREG(52) = 22;
|
||||||
WREG(53) = -0x54;
|
WREG(53) = -84;
|
||||||
WREG(54) = 0x14;
|
WREG(54) = 20;
|
||||||
WREG(55) = -0x35;
|
WREG(55) = -53;
|
||||||
WREG(56) = 0x28;
|
WREG(56) = 40;
|
||||||
WREG(57) = -0x40;
|
WREG(57) = -64;
|
||||||
WREG(58) = 0x2F;
|
WREG(58) = 47;
|
||||||
WREG(59) = -0x54;
|
WREG(59) = -84;
|
||||||
WREG(60) = 0x2C;
|
WREG(60) = 44;
|
||||||
WREG(61) = -0x2A;
|
WREG(61) = -42;
|
||||||
WREG(62) = 0x20;
|
WREG(62) = 32;
|
||||||
WREG(63) = -0x2D;
|
WREG(63) = -45;
|
||||||
WREG(64) = -0x25;
|
WREG(64) = -37;
|
||||||
WREG(65) = 0x1E;
|
WREG(65) = 30;
|
||||||
WREG(66) = -0x32;
|
WREG(66) = -50;
|
||||||
R_DGN_MINIMAP_X = 0xCC;
|
R_DGN_MINIMAP_X = 204;
|
||||||
R_DGN_MINIMAP_Y = 0x8C;
|
R_DGN_MINIMAP_Y = 140;
|
||||||
WREG(87) = 0x50;
|
WREG(87) = 80;
|
||||||
WREG(88) = 0x46;
|
WREG(88) = 70;
|
||||||
WREG(89) = 0x28;
|
WREG(89) = 40;
|
||||||
WREG(90) = 0x140;
|
WREG(90) = 320;
|
||||||
WREG(91) = 0x28;
|
WREG(91) = 40;
|
||||||
WREG(92) = 3;
|
WREG(92) = 3;
|
||||||
WREG(93) = 6;
|
WREG(93) = 6;
|
||||||
WREG(94) = 3;
|
WREG(94) = 3;
|
||||||
WREG(95) = 6;
|
WREG(95) = 6;
|
||||||
|
|
||||||
if (gSaveContext.gameMode == 0) {
|
if (gSaveContext.gameMode == 0) {
|
||||||
VREG(0) = 0x34;
|
VREG(0) = 52;
|
||||||
VREG(1) = 0x24;
|
VREG(1) = 36;
|
||||||
VREG(2) = 0xD6;
|
VREG(2) = 214;
|
||||||
VREG(3) = 0x4C;
|
VREG(3) = 76;
|
||||||
VREG(4) = 0x130;
|
VREG(4) = 304;
|
||||||
VREG(5) = 0x1AE;
|
VREG(5) = 430;
|
||||||
VREG(6) = 1;
|
VREG(6) = 1;
|
||||||
VREG(7) = 0x4E;
|
VREG(7) = 78;
|
||||||
VREG(8) = 0xA6;
|
VREG(8) = 166;
|
||||||
VREG(9) = 0x28;
|
VREG(9) = 40;
|
||||||
R_COMPASS_SCALE_X = 0x20;
|
R_COMPASS_SCALE_X = 32;
|
||||||
R_COMPASS_SCALE_Y = 0x20;
|
R_COMPASS_SCALE_Y = 32;
|
||||||
R_COMPASS_OFFSET_X = 0x6E;
|
R_COMPASS_OFFSET_X = 110;
|
||||||
R_COMPASS_OFFSET_Y = -0x2E4;
|
R_COMPASS_OFFSET_Y = -740;
|
||||||
R_MINIMAP_COLOR(0) = 0;
|
R_MINIMAP_COLOR(0) = 0;
|
||||||
R_MINIMAP_COLOR(1) = 255;
|
R_MINIMAP_COLOR(1) = 255;
|
||||||
R_MINIMAP_COLOR(2) = 255;
|
R_MINIMAP_COLOR(2) = 255;
|
||||||
|
@ -536,68 +536,68 @@ void func_80111070(void) {
|
||||||
VREG(25) = 0;
|
VREG(25) = 0;
|
||||||
VREG(26) = 0;
|
VREG(26) = 0;
|
||||||
VREG(27) = 0;
|
VREG(27) = 0;
|
||||||
VREG(28) = 0x62;
|
VREG(28) = 98;
|
||||||
VREG(29) = 0x12;
|
VREG(29) = 18;
|
||||||
VREG(30) = 0;
|
VREG(30) = 0;
|
||||||
VREG(31) = 0;
|
VREG(31) = 0;
|
||||||
VREG(32) = 0;
|
VREG(32) = 0;
|
||||||
VREG(33) = 0x46;
|
VREG(33) = 70;
|
||||||
VREG(34) = 0xFF;
|
VREG(34) = 255;
|
||||||
VREG(35) = 0x50;
|
VREG(35) = 80;
|
||||||
VREG(36) = 0x46;
|
VREG(36) = 70;
|
||||||
VREG(37) = 0xFF;
|
VREG(37) = 255;
|
||||||
VREG(38) = 0x50;
|
VREG(38) = 80;
|
||||||
VREG(40) = 9;
|
VREG(40) = 9;
|
||||||
VREG(42) = 0xFA;
|
VREG(42) = 250;
|
||||||
VREG(43) = 0x1B8;
|
VREG(43) = 440;
|
||||||
VREG(44) = 0xA;
|
VREG(44) = 10;
|
||||||
VREG(45) = 0xBE;
|
VREG(45) = 190;
|
||||||
VREG(46) = 0xB8;
|
VREG(46) = 184;
|
||||||
VREG(47) = 0xB0;
|
VREG(47) = 176;
|
||||||
VREG(48) = 0xAC;
|
VREG(48) = 172;
|
||||||
VREG(49) = 0xAA;
|
VREG(49) = 170;
|
||||||
VREG(50) = 0x1E;
|
VREG(50) = 30;
|
||||||
VREG(51) = 0;
|
VREG(51) = 0;
|
||||||
VREG(52) = -0x10;
|
VREG(52) = -16;
|
||||||
VREG(53) = 0xE6;
|
VREG(53) = 230;
|
||||||
VREG(54) = 0xE6;
|
VREG(54) = 230;
|
||||||
VREG(55) = 0x78;
|
VREG(55) = 120;
|
||||||
VREG(56) = -0x2D0;
|
VREG(56) = -720;
|
||||||
VREG(57) = 0xFF;
|
VREG(57) = 255;
|
||||||
VREG(58) = 0xFF;
|
VREG(58) = 255;
|
||||||
VREG(59) = 0xFF;
|
VREG(59) = 255;
|
||||||
VREG(60) = 0x14;
|
VREG(60) = 20;
|
||||||
VREG(61) = 0x64;
|
VREG(61) = 100;
|
||||||
VREG(62) = 0;
|
VREG(62) = 0;
|
||||||
VREG(63) = 0xA;
|
VREG(63) = 10;
|
||||||
R_ITEM_AMMO_X(1) = 0xE4;
|
R_ITEM_AMMO_X(1) = C_LEFT_BUTTON_X + 1;
|
||||||
R_ITEM_AMMO_X(2) = 0xFA;
|
R_ITEM_AMMO_X(2) = C_DOWN_BUTTON_X + 1;
|
||||||
R_ITEM_AMMO_X(3) = 0x110;
|
R_ITEM_AMMO_X(3) = C_RIGHT_BUTTON_X + 1;
|
||||||
R_ITEM_AMMO_Y(0) = 0x23;
|
R_ITEM_AMMO_Y(0) = B_BUTTON_Y + 18;
|
||||||
R_ITEM_AMMO_Y(1) = 0x23;
|
R_ITEM_AMMO_Y(1) = C_LEFT_BUTTON_Y + 17;
|
||||||
R_ITEM_AMMO_Y(2) = 0x33;
|
R_ITEM_AMMO_Y(2) = C_DOWN_BUTTON_Y + 17;
|
||||||
R_ITEM_AMMO_Y(3) = 0x23;
|
R_ITEM_AMMO_Y(3) = C_RIGHT_BUTTON_Y + 17;
|
||||||
VREG(72) = 0;
|
VREG(72) = 0;
|
||||||
VREG(73) = 0;
|
VREG(73) = 0;
|
||||||
VREG(74) = 0;
|
VREG(74) = 0;
|
||||||
VREG(75) = 0;
|
VREG(75) = 0;
|
||||||
R_ITEM_ICON_WIDTH(0) = 0x1E;
|
R_ITEM_ICON_WIDTH(0) = 30;
|
||||||
R_ITEM_ICON_WIDTH(1) = 0x18;
|
R_ITEM_ICON_WIDTH(1) = 24;
|
||||||
R_ITEM_ICON_WIDTH(2) = 0x18;
|
R_ITEM_ICON_WIDTH(2) = 24;
|
||||||
R_ITEM_ICON_WIDTH(3) = 0x18;
|
R_ITEM_ICON_WIDTH(3) = 24;
|
||||||
R_ITEM_BTN_WIDTH(0) = 0x1D;
|
R_ITEM_BTN_WIDTH(0) = 29;
|
||||||
R_ITEM_BTN_WIDTH(1) = 0x1B;
|
R_ITEM_BTN_WIDTH(1) = 27;
|
||||||
R_ITEM_BTN_WIDTH(2) = 0x1B;
|
R_ITEM_BTN_WIDTH(2) = 27;
|
||||||
R_ITEM_BTN_WIDTH(3) = 0x1B;
|
R_ITEM_BTN_WIDTH(3) = 27;
|
||||||
VREG(84) = 0;
|
VREG(84) = 0;
|
||||||
VREG(85) = 0x32;
|
VREG(85) = 50;
|
||||||
VREG(86) = 0;
|
VREG(86) = 0;
|
||||||
VREG(87) = 0x40;
|
VREG(87) = 64;
|
||||||
VREG(88) = 0x42;
|
VREG(88) = 66;
|
||||||
VREG(89) = 0;
|
VREG(89) = 0;
|
||||||
VREG(90) = 0x7E;
|
VREG(90) = 126;
|
||||||
VREG(91) = 0x7C;
|
VREG(91) = 124;
|
||||||
VREG(92) = -0x3F;
|
VREG(92) = -63;
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_80112098(GlobalContext* globalCtx) {
|
void func_80112098(GlobalContext* globalCtx) {
|
||||||
|
|
|
@ -1,52 +1,6 @@
|
||||||
#include "global.h"
|
#include "global.h"
|
||||||
#include "textures/parameter_static/parameter_static.h"
|
#include "textures/parameter_static/parameter_static.h"
|
||||||
|
|
||||||
/**
|
|
||||||
* These are the colors for the hearts in the interface. The prim color is the red color of the heart
|
|
||||||
* for the base hearts, while the prim color for the double defense hearts is the white outline. The
|
|
||||||
* env color for the base hearts is the purple-ish outline, while the env color for the double defense
|
|
||||||
* hearts is the red color of the hearts.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#define HEARTS_PRIM_R 255
|
|
||||||
#define HEARTS_PRIM_G 70
|
|
||||||
#define HEARTS_PRIM_B 50
|
|
||||||
|
|
||||||
#define HEARTS_ENV_R 50
|
|
||||||
#define HEARTS_ENV_G 40
|
|
||||||
#define HEARTS_ENV_B 60
|
|
||||||
|
|
||||||
#define HEARTS_DD_PRIM_R 255
|
|
||||||
#define HEARTS_DD_PRIM_G 255
|
|
||||||
#define HEARTS_DD_PRIM_B 255
|
|
||||||
|
|
||||||
#define HEARTS_DD_ENV_R 200
|
|
||||||
#define HEARTS_DD_ENV_G 0
|
|
||||||
#define HEARTS_DD_ENV_B 0
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The burn and drown colors listed here are unused. Prerelease footage of the game confirms that at one
|
|
||||||
* point in development the orange color was to be used while taking damage from hot environments.
|
|
||||||
* Based on this, we can assume that the blue heart color was to be used while drowning.
|
|
||||||
* In the final game these environments only have a timer and do not damage you continuously.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#define HEARTS_BURN_PRIM_R 255
|
|
||||||
#define HEARTS_BURN_PRIM_G 190
|
|
||||||
#define HEARTS_BURN_PRIM_B 0
|
|
||||||
|
|
||||||
#define HEARTS_BURN_ENV_R 255
|
|
||||||
#define HEARTS_BURN_ENV_G 0
|
|
||||||
#define HEARTS_BURN_ENV_B 0
|
|
||||||
|
|
||||||
#define HEARTS_DROWN_PRIM_R 100
|
|
||||||
#define HEARTS_DROWN_PRIM_G 100
|
|
||||||
#define HEARTS_DROWN_PRIM_B 255
|
|
||||||
|
|
||||||
#define HEARTS_DROWN_ENV_R 0
|
|
||||||
#define HEARTS_DROWN_ENV_G 0
|
|
||||||
#define HEARTS_DROWN_ENV_B 255
|
|
||||||
|
|
||||||
static s16 sHeartsPrimColors[3][3] = {
|
static s16 sHeartsPrimColors[3][3] = {
|
||||||
{ HEARTS_PRIM_R, HEARTS_PRIM_G, HEARTS_PRIM_B },
|
{ HEARTS_PRIM_R, HEARTS_PRIM_G, HEARTS_PRIM_B },
|
||||||
{ HEARTS_BURN_PRIM_R, HEARTS_BURN_PRIM_G, HEARTS_BURN_PRIM_B }, // unused
|
{ HEARTS_BURN_PRIM_R, HEARTS_BURN_PRIM_G, HEARTS_BURN_PRIM_B }, // unused
|
||||||
|
@ -323,19 +277,19 @@ s32 func_80078E84(GlobalContext* globalCtx) {
|
||||||
}
|
}
|
||||||
|
|
||||||
u64* sHeartTextures[] = {
|
u64* sHeartTextures[] = {
|
||||||
gHUDHeartFullTex, gHUDHeartQuarterTex, gHUDHeartQuarterTex, gHUDHeartQuarterTex,
|
gHeartFullTex, gHeartQuarterTex, gHeartQuarterTex, gHeartQuarterTex,
|
||||||
gHUDHeartQuarterTex, gHUDHeartQuarterTex, gHUDHeartHalfTex, gHUDHeartHalfTex,
|
gHeartQuarterTex, gHeartQuarterTex, gHeartHalfTex, gHeartHalfTex,
|
||||||
gHUDHeartHalfTex, gHUDHeartHalfTex, gHUDHeartHalfTex, gHUDHeartThreeQuarterTex,
|
gHeartHalfTex, gHeartHalfTex, gHeartHalfTex, gHeartThreeQuarterTex,
|
||||||
gHUDHeartThreeQuarterTex, gHUDHeartThreeQuarterTex, gHUDHeartThreeQuarterTex, gHUDHeartThreeQuarterTex,
|
gHeartThreeQuarterTex, gHeartThreeQuarterTex, gHeartThreeQuarterTex, gHeartThreeQuarterTex,
|
||||||
};
|
};
|
||||||
|
|
||||||
u64* sHeartDDTextures[] = {
|
u64* sHeartDDTextures[] = {
|
||||||
gHUDDefenseHeartFullTex, gHUDDefenseHeartQuarterTex, gHUDDefenseHeartQuarterTex,
|
gDefenseHeartFullTex, gDefenseHeartQuarterTex, gDefenseHeartQuarterTex,
|
||||||
gHUDDefenseHeartQuarterTex, gHUDDefenseHeartQuarterTex, gHUDDefenseHeartQuarterTex,
|
gDefenseHeartQuarterTex, gDefenseHeartQuarterTex, gDefenseHeartQuarterTex,
|
||||||
gHUDDefenseHeartHalfTex, gHUDDefenseHeartHalfTex, gHUDDefenseHeartHalfTex,
|
gDefenseHeartHalfTex, gDefenseHeartHalfTex, gDefenseHeartHalfTex,
|
||||||
gHUDDefenseHeartHalfTex, gHUDDefenseHeartHalfTex, gHUDDefenseHeartThreeQuarterTex,
|
gDefenseHeartHalfTex, gDefenseHeartHalfTex, gDefenseHeartThreeQuarterTex,
|
||||||
gHUDDefenseHeartThreeQuarterTex, gHUDDefenseHeartThreeQuarterTex, gHUDDefenseHeartThreeQuarterTex,
|
gDefenseHeartThreeQuarterTex, gDefenseHeartThreeQuarterTex, gDefenseHeartThreeQuarterTex,
|
||||||
gHUDDefenseHeartThreeQuarterTex,
|
gDefenseHeartThreeQuarterTex,
|
||||||
};
|
};
|
||||||
|
|
||||||
void HealthMeter_Draw(GlobalContext* globalCtx) {
|
void HealthMeter_Draw(GlobalContext* globalCtx) {
|
||||||
|
@ -413,11 +367,11 @@ void HealthMeter_Draw(GlobalContext* globalCtx) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (i < fullHeartCount) {
|
if (i < fullHeartCount) {
|
||||||
heartBgImg = gHUDHeartFullTex;
|
heartBgImg = gHeartFullTex;
|
||||||
} else if (i == fullHeartCount) {
|
} else if (i == fullHeartCount) {
|
||||||
heartBgImg = sHeartTextures[curHeartFraction];
|
heartBgImg = sHeartTextures[curHeartFraction];
|
||||||
} else {
|
} else {
|
||||||
heartBgImg = gHUDHeartEmptyTex;
|
heartBgImg = gHeartEmptyTex;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (i < fullHeartCount) {
|
if (i < fullHeartCount) {
|
||||||
|
@ -456,11 +410,11 @@ void HealthMeter_Draw(GlobalContext* globalCtx) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (i < fullHeartCount) {
|
if (i < fullHeartCount) {
|
||||||
heartBgImg = gHUDDefenseHeartFullTex;
|
heartBgImg = gDefenseHeartFullTex;
|
||||||
} else if (i == fullHeartCount) {
|
} else if (i == fullHeartCount) {
|
||||||
heartBgImg = sHeartDDTextures[curHeartFraction];
|
heartBgImg = sHeartDDTextures[curHeartFraction];
|
||||||
} else {
|
} else {
|
||||||
heartBgImg = gHUDDefenseHeartEmptyTex;
|
heartBgImg = gDefenseHeartEmptyTex;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -492,7 +446,7 @@ void HealthMeter_Draw(GlobalContext* globalCtx) {
|
||||||
temp2 = 30.0f + offsetX;
|
temp2 = 30.0f + offsetX;
|
||||||
temp4 = 1.0f;
|
temp4 = 1.0f;
|
||||||
temp4 /= 0.68f;
|
temp4 /= 0.68f;
|
||||||
temp4 *= 1024.0f;
|
temp4 *= 1 << 10;
|
||||||
temp1 = 8.0f;
|
temp1 = 8.0f;
|
||||||
temp1 *= 0.68f;
|
temp1 *= 0.68f;
|
||||||
gSPTextureRectangle(OVERLAY_DISP++, (s32)((temp2 - temp1) * 4), (s32)((temp3 - temp1) * 4),
|
gSPTextureRectangle(OVERLAY_DISP++, (s32)((temp2 - temp1) * 4), (s32)((temp3 - temp1) * 4),
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
#include "global.h"
|
#include "global.h"
|
||||||
#include "vt.h"
|
#include "vt.h"
|
||||||
#include "objects/gameplay_keep/gameplay_keep.h"
|
#include "objects/gameplay_keep/gameplay_keep.h"
|
||||||
|
#include "textures/parameter_static/parameter_static.h"
|
||||||
|
|
||||||
MapData* gMapData;
|
MapData* gMapData;
|
||||||
|
|
||||||
|
@ -377,7 +378,7 @@ void Minimap_Draw(GlobalContext* globalCtx) {
|
||||||
case SCENE_HAKADAN:
|
case SCENE_HAKADAN:
|
||||||
case SCENE_HAKADANCH:
|
case SCENE_HAKADANCH:
|
||||||
case SCENE_ICE_DOUKUTO:
|
case SCENE_ICE_DOUKUTO:
|
||||||
if (!R_MINIMAP_TOGGLED) {
|
if (!R_MINIMAP_DISABLED) {
|
||||||
func_80094520(globalCtx->state.gfxCtx);
|
func_80094520(globalCtx->state.gfxCtx);
|
||||||
gDPSetCombineLERP(OVERLAY_DISP++, 1, 0, PRIMITIVE, 0, TEXEL0, 0, PRIMITIVE, 0, 1, 0, PRIMITIVE, 0,
|
gDPSetCombineLERP(OVERLAY_DISP++, 1, 0, PRIMITIVE, 0, TEXEL0, 0, PRIMITIVE, 0, 1, 0, PRIMITIVE, 0,
|
||||||
TEXEL0, 0, PRIMITIVE, 0);
|
TEXEL0, 0, PRIMITIVE, 0);
|
||||||
|
@ -391,7 +392,7 @@ void Minimap_Draw(GlobalContext* globalCtx) {
|
||||||
|
|
||||||
gSPTextureRectangle(OVERLAY_DISP++, R_DGN_MINIMAP_X << 2, R_DGN_MINIMAP_Y << 2,
|
gSPTextureRectangle(OVERLAY_DISP++, R_DGN_MINIMAP_X << 2, R_DGN_MINIMAP_Y << 2,
|
||||||
(R_DGN_MINIMAP_X + 96) << 2, (R_DGN_MINIMAP_Y + 85) << 2, G_TX_RENDERTILE,
|
(R_DGN_MINIMAP_X + 96) << 2, (R_DGN_MINIMAP_Y + 85) << 2, G_TX_RENDERTILE,
|
||||||
0, 0, 1024, 1024);
|
0, 0, 1 << 10, 1 << 10);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (CHECK_DUNGEON_ITEM(DUNGEON_COMPASS, mapIndex)) {
|
if (CHECK_DUNGEON_ITEM(DUNGEON_COMPASS, mapIndex)) {
|
||||||
|
@ -404,12 +405,12 @@ void Minimap_Draw(GlobalContext* globalCtx) {
|
||||||
if (CHECK_BTN_ALL(globalCtx->state.input[0].press.button, BTN_L) && !Gameplay_InCsMode(globalCtx)) {
|
if (CHECK_BTN_ALL(globalCtx->state.input[0].press.button, BTN_L) && !Gameplay_InCsMode(globalCtx)) {
|
||||||
osSyncPrintf("Game_play_demo_mode_check=%d\n", Gameplay_InCsMode(globalCtx));
|
osSyncPrintf("Game_play_demo_mode_check=%d\n", Gameplay_InCsMode(globalCtx));
|
||||||
// clang-format off
|
// clang-format off
|
||||||
if (!R_MINIMAP_TOGGLED) { Audio_PlaySoundGeneral(NA_SE_SY_CAMERA_ZOOM_UP, &D_801333D4, 4,
|
if (!R_MINIMAP_DISABLED) { Audio_PlaySoundGeneral(NA_SE_SY_CAMERA_ZOOM_UP, &D_801333D4, 4,
|
||||||
&D_801333E0, &D_801333E0, &D_801333E8); }
|
&D_801333E0, &D_801333E0, &D_801333E8); }
|
||||||
else { Audio_PlaySoundGeneral(NA_SE_SY_CAMERA_ZOOM_DOWN, &D_801333D4, 4,
|
else { Audio_PlaySoundGeneral(NA_SE_SY_CAMERA_ZOOM_DOWN, &D_801333D4, 4,
|
||||||
&D_801333E0, &D_801333E0, &D_801333E8); }
|
&D_801333E0, &D_801333E0, &D_801333E8); }
|
||||||
// clang-format on
|
// clang-format on
|
||||||
R_MINIMAP_TOGGLED ^= 1;
|
R_MINIMAP_DISABLED ^= 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
@ -433,7 +434,7 @@ void Minimap_Draw(GlobalContext* globalCtx) {
|
||||||
case SCENE_SPOT18:
|
case SCENE_SPOT18:
|
||||||
case SCENE_SPOT20:
|
case SCENE_SPOT20:
|
||||||
case SCENE_GANON_TOU:
|
case SCENE_GANON_TOU:
|
||||||
if (!R_MINIMAP_TOGGLED) {
|
if (!R_MINIMAP_DISABLED) {
|
||||||
func_80094520(globalCtx->state.gfxCtx);
|
func_80094520(globalCtx->state.gfxCtx);
|
||||||
|
|
||||||
gDPSetCombineMode(OVERLAY_DISP++, G_CC_MODULATEIA_PRIM, G_CC_MODULATEIA_PRIM);
|
gDPSetCombineMode(OVERLAY_DISP++, G_CC_MODULATEIA_PRIM, G_CC_MODULATEIA_PRIM);
|
||||||
|
@ -448,7 +449,7 @@ void Minimap_Draw(GlobalContext* globalCtx) {
|
||||||
gSPTextureRectangle(OVERLAY_DISP++, R_OW_MINIMAP_X << 2, R_OW_MINIMAP_Y << 2,
|
gSPTextureRectangle(OVERLAY_DISP++, R_OW_MINIMAP_X << 2, R_OW_MINIMAP_Y << 2,
|
||||||
(R_OW_MINIMAP_X + gMapData->owMinimapWidth[mapIndex]) << 2,
|
(R_OW_MINIMAP_X + gMapData->owMinimapWidth[mapIndex]) << 2,
|
||||||
(R_OW_MINIMAP_Y + gMapData->owMinimapHeight[mapIndex]) << 2, G_TX_RENDERTILE, 0,
|
(R_OW_MINIMAP_Y + gMapData->owMinimapHeight[mapIndex]) << 2, G_TX_RENDERTILE, 0,
|
||||||
0, 1024, 1024);
|
0, 1 << 10, 1 << 10);
|
||||||
|
|
||||||
if (((globalCtx->sceneNum != SCENE_SPOT01) && (globalCtx->sceneNum != SCENE_SPOT04) &&
|
if (((globalCtx->sceneNum != SCENE_SPOT01) && (globalCtx->sceneNum != SCENE_SPOT04) &&
|
||||||
(globalCtx->sceneNum != SCENE_SPOT08)) ||
|
(globalCtx->sceneNum != SCENE_SPOT08)) ||
|
||||||
|
@ -457,25 +458,26 @@ void Minimap_Draw(GlobalContext* globalCtx) {
|
||||||
((gMapData->owEntranceFlag[sEntranceIconMapIndex] != 0xFFFF) &&
|
((gMapData->owEntranceFlag[sEntranceIconMapIndex] != 0xFFFF) &&
|
||||||
(gSaveContext.infTable[26] & gBitFlags[gMapData->owEntranceFlag[mapIndex]]))) {
|
(gSaveContext.infTable[26] & gBitFlags[gMapData->owEntranceFlag[mapIndex]]))) {
|
||||||
|
|
||||||
gDPLoadTextureBlock(OVERLAY_DISP++, D_02002500, G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 8, 0,
|
gDPLoadTextureBlock(OVERLAY_DISP++, gMapDungeonEntranceIconTex, G_IM_FMT_RGBA, G_IM_SIZ_16b,
|
||||||
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK,
|
8, 8, 0, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP,
|
||||||
G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||||
|
|
||||||
gSPTextureRectangle(OVERLAY_DISP++,
|
gSPTextureRectangle(OVERLAY_DISP++,
|
||||||
gMapData->owEntranceIconPosX[sEntranceIconMapIndex] << 2,
|
gMapData->owEntranceIconPosX[sEntranceIconMapIndex] << 2,
|
||||||
gMapData->owEntranceIconPosY[sEntranceIconMapIndex] << 2,
|
gMapData->owEntranceIconPosY[sEntranceIconMapIndex] << 2,
|
||||||
(gMapData->owEntranceIconPosX[sEntranceIconMapIndex] + 8) << 2,
|
(gMapData->owEntranceIconPosX[sEntranceIconMapIndex] + 8) << 2,
|
||||||
(gMapData->owEntranceIconPosY[sEntranceIconMapIndex] + 8) << 2,
|
(gMapData->owEntranceIconPosY[sEntranceIconMapIndex] + 8) << 2,
|
||||||
G_TX_RENDERTILE, 0, 0, 1024, 1024);
|
G_TX_RENDERTILE, 0, 0, 1 << 10, 1 << 10);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((globalCtx->sceneNum == SCENE_SPOT08) && (gSaveContext.infTable[26] & gBitFlags[9])) {
|
if ((globalCtx->sceneNum == SCENE_SPOT08) && (gSaveContext.infTable[26] & gBitFlags[9])) {
|
||||||
gDPLoadTextureBlock(OVERLAY_DISP++, D_02002500, G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 8, 0,
|
gDPLoadTextureBlock(OVERLAY_DISP++, gMapDungeonEntranceIconTex, G_IM_FMT_RGBA, G_IM_SIZ_16b, 8,
|
||||||
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK,
|
8, 0, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK,
|
||||||
G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||||
|
|
||||||
gSPTextureRectangle(OVERLAY_DISP++, 1080, 616, 1112, 648, G_TX_RENDERTILE, 0, 0, 1024, 1024);
|
gSPTextureRectangle(OVERLAY_DISP++, 1080, 616, 1112, 648, G_TX_RENDERTILE, 0, 0, 1 << 10,
|
||||||
|
1 << 10);
|
||||||
}
|
}
|
||||||
|
|
||||||
Minimap_DrawCompassIcons(globalCtx); // Draw icons for the player spawn and current position
|
Minimap_DrawCompassIcons(globalCtx); // Draw icons for the player spawn and current position
|
||||||
|
@ -483,12 +485,12 @@ void Minimap_Draw(GlobalContext* globalCtx) {
|
||||||
|
|
||||||
if (CHECK_BTN_ALL(globalCtx->state.input[0].press.button, BTN_L) && !Gameplay_InCsMode(globalCtx)) {
|
if (CHECK_BTN_ALL(globalCtx->state.input[0].press.button, BTN_L) && !Gameplay_InCsMode(globalCtx)) {
|
||||||
// clang-format off
|
// clang-format off
|
||||||
if (!R_MINIMAP_TOGGLED) { Audio_PlaySoundGeneral(NA_SE_SY_CAMERA_ZOOM_UP, &D_801333D4, 4,
|
if (!R_MINIMAP_DISABLED) { Audio_PlaySoundGeneral(NA_SE_SY_CAMERA_ZOOM_UP, &D_801333D4, 4,
|
||||||
&D_801333E0, &D_801333E0, &D_801333E8); }
|
&D_801333E0, &D_801333E0, &D_801333E8); }
|
||||||
else { Audio_PlaySoundGeneral(NA_SE_SY_CAMERA_ZOOM_DOWN, &D_801333D4, 4,
|
else { Audio_PlaySoundGeneral(NA_SE_SY_CAMERA_ZOOM_DOWN, &D_801333D4, 4,
|
||||||
&D_801333E0, &D_801333E0, &D_801333E8); }
|
&D_801333E0, &D_801333E0, &D_801333E8); }
|
||||||
// clang-format on
|
// clang-format on
|
||||||
R_MINIMAP_TOGGLED ^= 1;
|
R_MINIMAP_DISABLED ^= 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -38,8 +38,8 @@ static u32 sLineBytesImageSizes[] = { 0, 1, 2, 2 };
|
||||||
#define G_IM_SIZ_MARK_LINE_BYTES sLineBytesImageSizes[markInfo->imageSize]
|
#define G_IM_SIZ_MARK_LINE_BYTES sLineBytesImageSizes[markInfo->imageSize]
|
||||||
|
|
||||||
static MapMarkInfo sMapMarkInfoTable[] = {
|
static MapMarkInfo sMapMarkInfoTable[] = {
|
||||||
{ gHUDTreasureMarkerTex, G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 8, 32, 32, 1024, 1024 }, // Chest Icon
|
{ gMapChestIconTex, G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 8, 32, 32, 1 << 10, 1 << 10 }, // Chest Icon
|
||||||
{ gHUDBossMarkerTex, G_IM_FMT_IA, G_IM_SIZ_8b, 8, 8, 32, 32, 1024, 1024 }, // Boss Skull Icon
|
{ gMapBossIconTex, G_IM_FMT_IA, G_IM_SIZ_8b, 8, 8, 32, 32, 1 << 10, 1 << 10 }, // Boss Skull Icon
|
||||||
};
|
};
|
||||||
|
|
||||||
static MapMarkDataOverlay sMapMarkDataOvl = {
|
static MapMarkDataOverlay sMapMarkDataOvl = {
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
#include "global.h"
|
#include "global.h"
|
||||||
|
#include "textures/parameter_static/parameter_static.h"
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/non_matchings/code/z_message_PAL/func_801069B0.s")
|
#pragma GLOBAL_ASM("asm/non_matchings/code/z_message_PAL/func_801069B0.s")
|
||||||
|
|
||||||
|
|
|
@ -50,7 +50,7 @@ void func_8007B9A4(GraphicsContext* gfxCtx, u8 arg1) {
|
||||||
}
|
}
|
||||||
|
|
||||||
gSPTextureRectangle(POLY_OPA_DISP++, D_80120120 << 2, D_80120124 << 2, (D_80120120 + 8) << 2, (D_80120124 + 8) << 2,
|
gSPTextureRectangle(POLY_OPA_DISP++, D_80120120 << 2, D_80120124 << 2, (D_80120120 + 8) << 2, (D_80120124 + 8) << 2,
|
||||||
G_TX_RENDERTILE, (u16)(arg1 & 4) * 64, (u16)(arg1 >> 3) * 256, 1024, 1024);
|
G_TX_RENDERTILE, (u16)(arg1 & 4) * 64, (u16)(arg1 >> 3) * 256, 1 << 10, 1 << 10);
|
||||||
|
|
||||||
CLOSE_DISPS(gfxCtx, "../z_moji.c", 123);
|
CLOSE_DISPS(gfxCtx, "../z_moji.c", 123);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
#include "global.h"
|
#include "global.h"
|
||||||
#include "vt.h"
|
#include "vt.h"
|
||||||
|
#include "textures/parameter_static/parameter_static.h"
|
||||||
|
#include "textures/do_action_static/do_action_static.h"
|
||||||
|
#include "textures/icon_item_static/icon_item_static.h"
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
/* 0x00 */ u8 scene;
|
/* 0x00 */ u8 scene;
|
||||||
|
@ -8,7 +11,7 @@ typedef struct {
|
||||||
/* 0x03 */ u8 flags3;
|
/* 0x03 */ u8 flags3;
|
||||||
} RestrictionFlags;
|
} RestrictionFlags;
|
||||||
|
|
||||||
RestrictionFlags sRestrictionFlags[] = {
|
static RestrictionFlags sRestrictionFlags[] = {
|
||||||
{ SCENE_SPOT00, 0x00, 0x00, 0x10 },
|
{ SCENE_SPOT00, 0x00, 0x00, 0x10 },
|
||||||
{ SCENE_SPOT01, 0x00, 0x00, 0x10 },
|
{ SCENE_SPOT01, 0x00, 0x00, 0x10 },
|
||||||
{ SCENE_SPOT02, 0x00, 0x00, 0x10 },
|
{ SCENE_SPOT02, 0x00, 0x00, 0x10 },
|
||||||
|
@ -112,28 +115,28 @@ RestrictionFlags sRestrictionFlags[] = {
|
||||||
{ 0xFF, 0x00, 0x00, 0x00 },
|
{ 0xFF, 0x00, 0x00, 0x00 },
|
||||||
};
|
};
|
||||||
|
|
||||||
s16 sHBAScoreTier = 0;
|
static s16 sHBAScoreTier = 0;
|
||||||
u16 sHBAScoreDigits[] = { 0, 0, 0, 0 };
|
static u16 sHBAScoreDigits[] = { 0, 0, 0, 0 };
|
||||||
|
|
||||||
u16 sCUpInvisible = 0;
|
static u16 sCUpInvisible = 0;
|
||||||
u16 sCUpTimer = 0;
|
static u16 sCUpTimer = 0;
|
||||||
|
|
||||||
s16 gSpoilingItems[] = { ITEM_ODD_MUSHROOM, ITEM_FROG, ITEM_EYEDROPS };
|
s16 gSpoilingItems[] = { ITEM_ODD_MUSHROOM, ITEM_FROG, ITEM_EYEDROPS };
|
||||||
s16 gSpoilingItemReverts[] = { ITEM_COJIRO, ITEM_PRESCRIPTION, ITEM_PRESCRIPTION };
|
s16 gSpoilingItemReverts[] = { ITEM_COJIRO, ITEM_PRESCRIPTION, ITEM_PRESCRIPTION };
|
||||||
|
|
||||||
s16 sMagicBorderR = 255;
|
static s16 sMagicBorderR = 255;
|
||||||
s16 sMagicBorderG = 255;
|
static s16 sMagicBorderG = 255;
|
||||||
s16 sMagicBorderB = 255;
|
static s16 sMagicBorderB = 255;
|
||||||
|
|
||||||
s16 sExtraItemBases[] = {
|
static s16 sExtraItemBases[] = {
|
||||||
ITEM_STICK, ITEM_STICK, ITEM_NUT, ITEM_NUT, ITEM_BOMB, ITEM_BOMB, ITEM_BOMB, ITEM_BOMB, ITEM_BOW,
|
ITEM_STICK, ITEM_STICK, ITEM_NUT, ITEM_NUT, ITEM_BOMB, ITEM_BOMB, ITEM_BOMB, ITEM_BOMB, ITEM_BOW,
|
||||||
ITEM_BOW, ITEM_BOW, ITEM_SEEDS, ITEM_BOMBCHU, ITEM_BOMBCHU, ITEM_STICK, ITEM_STICK, ITEM_NUT, ITEM_NUT,
|
ITEM_BOW, ITEM_BOW, ITEM_SEEDS, ITEM_BOMBCHU, ITEM_BOMBCHU, ITEM_STICK, ITEM_STICK, ITEM_NUT, ITEM_NUT,
|
||||||
};
|
};
|
||||||
|
|
||||||
s16 D_80125A58 = 0;
|
static s16 D_80125A58 = 0;
|
||||||
s16 D_80125A5C = 0;
|
static s16 D_80125A5C = 0;
|
||||||
|
|
||||||
Gfx sSetupDL_80125A60[] = {
|
static Gfx sSetupDL_80125A60[] = {
|
||||||
gsDPPipeSync(),
|
gsDPPipeSync(),
|
||||||
gsSPClearGeometryMode(G_ZBUFFER | G_SHADE | G_CULL_BOTH | G_FOG | G_LIGHTING | G_TEXTURE_GEN |
|
gsSPClearGeometryMode(G_ZBUFFER | G_SHADE | G_CULL_BOTH | G_FOG | G_LIGHTING | G_TEXTURE_GEN |
|
||||||
G_TEXTURE_GEN_LINEAR | G_SHADING_SMOOTH | G_LOD),
|
G_TEXTURE_GEN_LINEAR | G_SHADING_SMOOTH | G_LOD),
|
||||||
|
@ -1297,9 +1300,8 @@ void func_80084BF4(GlobalContext* globalCtx, u16 flag) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
s16 sAmmoRefillCounts[] = { 5, 10, 20, 30, 5, 10, 30, 0, 5, 20, 1, 5, 20, 50, 200, 10 };
|
|
||||||
|
|
||||||
u8 Item_Give(GlobalContext* globalCtx, u8 item) {
|
u8 Item_Give(GlobalContext* globalCtx, u8 item) {
|
||||||
|
static s16 sAmmoRefillCounts[] = { 5, 10, 20, 30, 5, 10, 30, 0, 5, 20, 1, 5, 20, 50, 200, 10 };
|
||||||
s16 i;
|
s16 i;
|
||||||
s16 slot;
|
s16 slot;
|
||||||
s16 temp;
|
s16 temp;
|
||||||
|
@ -2036,9 +2038,9 @@ void func_80086D5C(s32* buf, u16 size) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
u32 sDoActionTextures[] = { 0x07000000, 0x07000180 };
|
|
||||||
|
|
||||||
void Interface_LoadActionLabel(InterfaceContext* interfaceCtx, u16 action, s16 arg2) {
|
void Interface_LoadActionLabel(InterfaceContext* interfaceCtx, u16 action, s16 arg2) {
|
||||||
|
static void* sDoActionTextures[] = { gAttackDoActionENGTex, gCheckDoActionENGTex };
|
||||||
|
|
||||||
if (action >= 0x1D) {
|
if (action >= 0x1D) {
|
||||||
action = 0x0A;
|
action = 0x0A;
|
||||||
}
|
}
|
||||||
|
@ -2340,10 +2342,10 @@ s32 func_80087708(GlobalContext* globalCtx, s16 arg1, s16 arg2) {
|
||||||
|
|
||||||
void Interface_UpdateMagicBar(GlobalContext* globalCtx) {
|
void Interface_UpdateMagicBar(GlobalContext* globalCtx) {
|
||||||
static s16 sMagicBorderColors[][3] = {
|
static s16 sMagicBorderColors[][3] = {
|
||||||
{ 0xFF, 0xFF, 0xFF },
|
{ 255, 255, 255 },
|
||||||
{ 0x96, 0x96, 0x96 },
|
{ 150, 150, 150 },
|
||||||
{ 0xFF, 0xFF, 0x96 },
|
{ 255, 255, 150 },
|
||||||
{ 0xFF, 0xFF, 0x32 },
|
{ 255, 255, 50 },
|
||||||
};
|
};
|
||||||
static s16 sMagicBorderIndexes[] = { 0, 1, 1, 0 };
|
static s16 sMagicBorderIndexes[] = { 0, 1, 1, 0 };
|
||||||
static s16 sMagicBorderRatio = 2;
|
static s16 sMagicBorderRatio = 2;
|
||||||
|
@ -2545,17 +2547,18 @@ void Interface_DrawMagicBar(GlobalContext* globalCtx) {
|
||||||
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, sMagicBorderR, sMagicBorderG, sMagicBorderB, interfaceCtx->magicAlpha);
|
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, sMagicBorderR, sMagicBorderG, sMagicBorderB, interfaceCtx->magicAlpha);
|
||||||
gDPSetEnvColor(OVERLAY_DISP++, 100, 50, 50, 255);
|
gDPSetEnvColor(OVERLAY_DISP++, 100, 50, 50, 255);
|
||||||
|
|
||||||
OVERLAY_DISP = Gfx_TextureIA8(OVERLAY_DISP, D_020038C0, 8, 16, R_MAGIC_BAR_X, magicBarY, 8, 16, 1024, 1024);
|
OVERLAY_DISP =
|
||||||
|
Gfx_TextureIA8(OVERLAY_DISP, gMagicBarEndTex, 8, 16, R_MAGIC_BAR_X, magicBarY, 8, 16, 1 << 10, 1 << 10);
|
||||||
|
|
||||||
OVERLAY_DISP = Gfx_TextureIA8(OVERLAY_DISP, D_02003940, 24, 16, R_MAGIC_BAR_X + 8, magicBarY,
|
OVERLAY_DISP = Gfx_TextureIA8(OVERLAY_DISP, gMagicBarMidTex, 24, 16, R_MAGIC_BAR_X + 8, magicBarY,
|
||||||
gSaveContext.unk_13F4, 16, 1024, 1024);
|
gSaveContext.unk_13F4, 16, 1 << 10, 1 << 10);
|
||||||
|
|
||||||
gDPLoadTextureBlock(OVERLAY_DISP++, D_020038C0, G_IM_FMT_IA, G_IM_SIZ_8b, 8, 16, 0, G_TX_MIRROR | G_TX_WRAP,
|
gDPLoadTextureBlock(OVERLAY_DISP++, gMagicBarEndTex, G_IM_FMT_IA, G_IM_SIZ_8b, 8, 16, 0,
|
||||||
G_TX_NOMIRROR | G_TX_WRAP, 3, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
G_TX_MIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, 3, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||||
|
|
||||||
gSPTextureRectangle(OVERLAY_DISP++, ((R_MAGIC_BAR_X + gSaveContext.unk_13F4) + 8) << 2, magicBarY << 2,
|
gSPTextureRectangle(OVERLAY_DISP++, ((R_MAGIC_BAR_X + gSaveContext.unk_13F4) + 8) << 2, magicBarY << 2,
|
||||||
((R_MAGIC_BAR_X + gSaveContext.unk_13F4) + 16) << 2, (magicBarY + 16) << 2, G_TX_RENDERTILE,
|
((R_MAGIC_BAR_X + gSaveContext.unk_13F4) + 16) << 2, (magicBarY + 16) << 2, G_TX_RENDERTILE,
|
||||||
256, 0, 1024, 1024);
|
256, 0, 1 << 10, 1 << 10);
|
||||||
|
|
||||||
gDPPipeSync(OVERLAY_DISP++);
|
gDPPipeSync(OVERLAY_DISP++);
|
||||||
gDPSetCombineLERP(OVERLAY_DISP++, PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, 0, 0, 0, PRIMITIVE, PRIMITIVE,
|
gDPSetCombineLERP(OVERLAY_DISP++, PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, 0, 0, 0, PRIMITIVE, PRIMITIVE,
|
||||||
|
@ -2563,16 +2566,16 @@ void Interface_DrawMagicBar(GlobalContext* globalCtx) {
|
||||||
gDPSetEnvColor(OVERLAY_DISP++, 0, 0, 0, 255);
|
gDPSetEnvColor(OVERLAY_DISP++, 0, 0, 0, 255);
|
||||||
|
|
||||||
if (gSaveContext.unk_13F0 == 4) {
|
if (gSaveContext.unk_13F0 == 4) {
|
||||||
// Yellow part of the bar being used when casting a spell
|
// Yellow part of the bar indicating the amount of magic to be subtracted
|
||||||
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 250, 250, 0, interfaceCtx->magicAlpha);
|
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 250, 250, 0, interfaceCtx->magicAlpha);
|
||||||
|
|
||||||
gDPLoadMultiBlock_4b(OVERLAY_DISP++, D_02003AC0, 0, G_TX_RENDERTILE, G_IM_FMT_I, 16, 16, 0,
|
gDPLoadMultiBlock_4b(OVERLAY_DISP++, gMagicBarFillTex, 0, G_TX_RENDERTILE, G_IM_FMT_I, 16, 16, 0,
|
||||||
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK,
|
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK,
|
||||||
G_TX_NOLOD, G_TX_NOLOD);
|
G_TX_NOLOD, G_TX_NOLOD);
|
||||||
|
|
||||||
gSPTextureRectangle(OVERLAY_DISP++, R_MAGIC_FILL_X << 2, (magicBarY + 3) << 2,
|
gSPTextureRectangle(OVERLAY_DISP++, R_MAGIC_FILL_X << 2, (magicBarY + 3) << 2,
|
||||||
(R_MAGIC_FILL_X + gSaveContext.magic) << 2, (magicBarY + 10) << 2, G_TX_RENDERTILE, 0,
|
(R_MAGIC_FILL_X + gSaveContext.magic) << 2, (magicBarY + 10) << 2, G_TX_RENDERTILE, 0,
|
||||||
0, 1024, 1024);
|
0, 1 << 10, 1 << 10);
|
||||||
|
|
||||||
// Fill the rest of the bar with the normal magic color
|
// Fill the rest of the bar with the normal magic color
|
||||||
gDPPipeSync(OVERLAY_DISP++);
|
gDPPipeSync(OVERLAY_DISP++);
|
||||||
|
@ -2581,19 +2584,19 @@ void Interface_DrawMagicBar(GlobalContext* globalCtx) {
|
||||||
|
|
||||||
gSPTextureRectangle(OVERLAY_DISP++, R_MAGIC_FILL_X << 2, (magicBarY + 3) << 2,
|
gSPTextureRectangle(OVERLAY_DISP++, R_MAGIC_FILL_X << 2, (magicBarY + 3) << 2,
|
||||||
(R_MAGIC_FILL_X + gSaveContext.unk_13F8) << 2, (magicBarY + 10) << 2, G_TX_RENDERTILE,
|
(R_MAGIC_FILL_X + gSaveContext.unk_13F8) << 2, (magicBarY + 10) << 2, G_TX_RENDERTILE,
|
||||||
0, 0, 1024, 1024);
|
0, 0, 1 << 10, 1 << 10);
|
||||||
} else {
|
} else {
|
||||||
// Fill the whole bar with the normal magic color
|
// Fill the whole bar with the normal magic color
|
||||||
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, R_MAGIC_FILL_COLOR(0), R_MAGIC_FILL_COLOR(1), R_MAGIC_FILL_COLOR(2),
|
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, R_MAGIC_FILL_COLOR(0), R_MAGIC_FILL_COLOR(1), R_MAGIC_FILL_COLOR(2),
|
||||||
interfaceCtx->magicAlpha);
|
interfaceCtx->magicAlpha);
|
||||||
|
|
||||||
gDPLoadMultiBlock_4b(OVERLAY_DISP++, D_02003AC0, 0, G_TX_RENDERTILE, G_IM_FMT_I, 16, 16, 0,
|
gDPLoadMultiBlock_4b(OVERLAY_DISP++, gMagicBarFillTex, 0, G_TX_RENDERTILE, G_IM_FMT_I, 16, 16, 0,
|
||||||
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK,
|
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK,
|
||||||
G_TX_NOLOD, G_TX_NOLOD);
|
G_TX_NOLOD, G_TX_NOLOD);
|
||||||
|
|
||||||
gSPTextureRectangle(OVERLAY_DISP++, R_MAGIC_FILL_X << 2, (magicBarY + 3) << 2,
|
gSPTextureRectangle(OVERLAY_DISP++, R_MAGIC_FILL_X << 2, (magicBarY + 3) << 2,
|
||||||
(R_MAGIC_FILL_X + gSaveContext.magic) << 2, (magicBarY + 10) << 2, G_TX_RENDERTILE, 0,
|
(R_MAGIC_FILL_X + gSaveContext.magic) << 2, (magicBarY + 10) << 2, G_TX_RENDERTILE, 0,
|
||||||
0, 1024, 1024);
|
0, 1 << 10, 1 << 10);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2647,15 +2650,13 @@ void Interface_DrawActionLabel(GraphicsContext* gfxCtx, void* texture) {
|
||||||
CLOSE_DISPS(gfxCtx, "../z_parameter.c", 2829);
|
CLOSE_DISPS(gfxCtx, "../z_parameter.c", 2829);
|
||||||
}
|
}
|
||||||
|
|
||||||
u8* sCUpLabelTextures[] = { D_02002FC0, D_02002FC0, D_02002FC0 };
|
|
||||||
|
|
||||||
s16 sStartButtonLeftPos[] = { 132, 130, 130 };
|
|
||||||
|
|
||||||
void Interface_DrawItemButtons(GlobalContext* globalCtx) {
|
void Interface_DrawItemButtons(GlobalContext* globalCtx) {
|
||||||
|
static void* cUpLabelTextures[] = { gNaviCUpENGTex, gNaviCUpENGTex, gNaviCUpENGTex };
|
||||||
|
static s16 startButtonLeftPos[] = { 132, 130, 130 };
|
||||||
InterfaceContext* interfaceCtx = &globalCtx->interfaceCtx;
|
InterfaceContext* interfaceCtx = &globalCtx->interfaceCtx;
|
||||||
Player* player = PLAYER;
|
Player* player = PLAYER;
|
||||||
PauseContext* pauseCtx = &globalCtx->pauseCtx;
|
PauseContext* pauseCtx = &globalCtx->pauseCtx;
|
||||||
s16 temp;
|
s16 temp; // Used as both an alpha value and a button index
|
||||||
s16 dxdy;
|
s16 dxdy;
|
||||||
s16 width;
|
s16 width;
|
||||||
s16 height;
|
s16 height;
|
||||||
|
@ -2668,8 +2669,9 @@ void Interface_DrawItemButtons(GlobalContext* globalCtx) {
|
||||||
gDPSetCombineMode(OVERLAY_DISP++, G_CC_MODULATEIA_PRIM, G_CC_MODULATEIA_PRIM);
|
gDPSetCombineMode(OVERLAY_DISP++, G_CC_MODULATEIA_PRIM, G_CC_MODULATEIA_PRIM);
|
||||||
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, R_B_BTN_COLOR(0), R_B_BTN_COLOR(1), R_B_BTN_COLOR(2), interfaceCtx->bAlpha);
|
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, R_B_BTN_COLOR(0), R_B_BTN_COLOR(1), R_B_BTN_COLOR(2), interfaceCtx->bAlpha);
|
||||||
gDPSetEnvColor(OVERLAY_DISP++, 0, 0, 0, 255);
|
gDPSetEnvColor(OVERLAY_DISP++, 0, 0, 0, 255);
|
||||||
OVERLAY_DISP = Gfx_TextureIA8(OVERLAY_DISP, D_02000A00[0], 32, 32, R_ITEM_BTN_X(0), R_ITEM_BTN_Y(0),
|
OVERLAY_DISP =
|
||||||
R_ITEM_BTN_WIDTH(0), R_ITEM_BTN_WIDTH(0), R_ITEM_BTN_DD(0) * 2, R_ITEM_BTN_DD(0) * 2);
|
Gfx_TextureIA8(OVERLAY_DISP, gButtonBackgroundTex, 32, 32, R_ITEM_BTN_X(0), R_ITEM_BTN_Y(0),
|
||||||
|
R_ITEM_BTN_WIDTH(0), R_ITEM_BTN_WIDTH(0), R_ITEM_BTN_DD(0) << 1, R_ITEM_BTN_DD(0) << 1);
|
||||||
|
|
||||||
// C-Left Button Color & Texture
|
// C-Left Button Color & Texture
|
||||||
gDPPipeSync(OVERLAY_DISP++);
|
gDPPipeSync(OVERLAY_DISP++);
|
||||||
|
@ -2677,30 +2679,30 @@ void Interface_DrawItemButtons(GlobalContext* globalCtx) {
|
||||||
interfaceCtx->cLeftAlpha);
|
interfaceCtx->cLeftAlpha);
|
||||||
gSPTextureRectangle(OVERLAY_DISP++, R_ITEM_BTN_X(1) << 2, R_ITEM_BTN_Y(1) << 2,
|
gSPTextureRectangle(OVERLAY_DISP++, R_ITEM_BTN_X(1) << 2, R_ITEM_BTN_Y(1) << 2,
|
||||||
(R_ITEM_BTN_X(1) + R_ITEM_BTN_WIDTH(1)) << 2, (R_ITEM_BTN_Y(1) + R_ITEM_BTN_WIDTH(1)) << 2,
|
(R_ITEM_BTN_X(1) + R_ITEM_BTN_WIDTH(1)) << 2, (R_ITEM_BTN_Y(1) + R_ITEM_BTN_WIDTH(1)) << 2,
|
||||||
G_TX_RENDERTILE, 0, 0, R_ITEM_BTN_DD(1) * 2, R_ITEM_BTN_DD(1) * 2);
|
G_TX_RENDERTILE, 0, 0, R_ITEM_BTN_DD(1) << 1, R_ITEM_BTN_DD(1) << 1);
|
||||||
|
|
||||||
// C-Down Button Color & Texture
|
// C-Down Button Color & Texture
|
||||||
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, R_C_BTN_COLOR(0), R_C_BTN_COLOR(1), R_C_BTN_COLOR(2),
|
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, R_C_BTN_COLOR(0), R_C_BTN_COLOR(1), R_C_BTN_COLOR(2),
|
||||||
interfaceCtx->cDownAlpha);
|
interfaceCtx->cDownAlpha);
|
||||||
gSPTextureRectangle(OVERLAY_DISP++, R_ITEM_BTN_X(2) << 2, R_ITEM_BTN_Y(2) << 2,
|
gSPTextureRectangle(OVERLAY_DISP++, R_ITEM_BTN_X(2) << 2, R_ITEM_BTN_Y(2) << 2,
|
||||||
(R_ITEM_BTN_X(2) + R_ITEM_BTN_WIDTH(2)) << 2, (R_ITEM_BTN_Y(2) + R_ITEM_BTN_WIDTH(2)) << 2,
|
(R_ITEM_BTN_X(2) + R_ITEM_BTN_WIDTH(2)) << 2, (R_ITEM_BTN_Y(2) + R_ITEM_BTN_WIDTH(2)) << 2,
|
||||||
G_TX_RENDERTILE, 0, 0, R_ITEM_BTN_DD(2) * 2, R_ITEM_BTN_DD(2) * 2);
|
G_TX_RENDERTILE, 0, 0, R_ITEM_BTN_DD(2) << 1, R_ITEM_BTN_DD(2) << 1);
|
||||||
|
|
||||||
// C-Right Button Color & Texture
|
// C-Right Button Color & Texture
|
||||||
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, R_C_BTN_COLOR(0), R_C_BTN_COLOR(1), R_C_BTN_COLOR(2),
|
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, R_C_BTN_COLOR(0), R_C_BTN_COLOR(1), R_C_BTN_COLOR(2),
|
||||||
interfaceCtx->cRightAlpha);
|
interfaceCtx->cRightAlpha);
|
||||||
gSPTextureRectangle(OVERLAY_DISP++, R_ITEM_BTN_X(3) << 2, R_ITEM_BTN_Y(3) << 2,
|
gSPTextureRectangle(OVERLAY_DISP++, R_ITEM_BTN_X(3) << 2, R_ITEM_BTN_Y(3) << 2,
|
||||||
(R_ITEM_BTN_X(3) + R_ITEM_BTN_WIDTH(3)) << 2, (R_ITEM_BTN_Y(3) + R_ITEM_BTN_WIDTH(3)) << 2,
|
(R_ITEM_BTN_X(3) + R_ITEM_BTN_WIDTH(3)) << 2, (R_ITEM_BTN_Y(3) + R_ITEM_BTN_WIDTH(3)) << 2,
|
||||||
G_TX_RENDERTILE, 0, 0, R_ITEM_BTN_DD(3) * 2, R_ITEM_BTN_DD(3) * 2);
|
G_TX_RENDERTILE, 0, 0, R_ITEM_BTN_DD(3) << 1, R_ITEM_BTN_DD(3) << 1);
|
||||||
|
|
||||||
if ((pauseCtx->state < 8) || (pauseCtx->state >= 18)) {
|
if ((pauseCtx->state < 8) || (pauseCtx->state >= 18)) {
|
||||||
if ((globalCtx->pauseCtx.state != 0) || (globalCtx->pauseCtx.debugState != 0)) {
|
if ((globalCtx->pauseCtx.state != 0) || (globalCtx->pauseCtx.debugState != 0)) {
|
||||||
// Start Button Texture, Color & Label
|
// Start Button Texture, Color & Label
|
||||||
gDPPipeSync(OVERLAY_DISP++);
|
gDPPipeSync(OVERLAY_DISP++);
|
||||||
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 120, 120, 120, interfaceCtx->startAlpha);
|
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 120, 120, 120, interfaceCtx->startAlpha);
|
||||||
gSPTextureRectangle(OVERLAY_DISP++, sStartButtonLeftPos[gSaveContext.language] << 2, 68,
|
gSPTextureRectangle(OVERLAY_DISP++, startButtonLeftPos[gSaveContext.language] << 2, 68,
|
||||||
(sStartButtonLeftPos[gSaveContext.language] + 22) << 2, 156, G_TX_RENDERTILE, 0, 0,
|
(startButtonLeftPos[gSaveContext.language] + 22) << 2, 156, G_TX_RENDERTILE, 0, 0, 1462,
|
||||||
1462, 1462);
|
1462);
|
||||||
gDPPipeSync(OVERLAY_DISP++);
|
gDPPipeSync(OVERLAY_DISP++);
|
||||||
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 255, 255, 255, interfaceCtx->startAlpha);
|
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 255, 255, 255, interfaceCtx->startAlpha);
|
||||||
gDPSetEnvColor(OVERLAY_DISP++, 0, 0, 0, 0);
|
gDPSetEnvColor(OVERLAY_DISP++, 0, 0, 0, 0);
|
||||||
|
@ -2711,7 +2713,7 @@ void Interface_DrawItemButtons(GlobalContext* globalCtx) {
|
||||||
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK,
|
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK,
|
||||||
G_TX_NOLOD, G_TX_NOLOD);
|
G_TX_NOLOD, G_TX_NOLOD);
|
||||||
|
|
||||||
dxdy = 1024.0f / (R_START_LABEL_DD(gSaveContext.language) / 100.0f);
|
dxdy = (1 << 10) / (R_START_LABEL_DD(gSaveContext.language) / 100.0f);
|
||||||
width = 48.0f / (R_START_LABEL_DD(gSaveContext.language) / 100.0f);
|
width = 48.0f / (R_START_LABEL_DD(gSaveContext.language) / 100.0f);
|
||||||
height = 16.0f / (R_START_LABEL_DD(gSaveContext.language) / 100.0f);
|
height = 16.0f / (R_START_LABEL_DD(gSaveContext.language) / 100.0f);
|
||||||
gSPTextureRectangle(
|
gSPTextureRectangle(
|
||||||
|
@ -2739,19 +2741,19 @@ void Interface_DrawItemButtons(GlobalContext* globalCtx) {
|
||||||
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, R_C_BTN_COLOR(0), R_C_BTN_COLOR(1), R_C_BTN_COLOR(2), temp);
|
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, R_C_BTN_COLOR(0), R_C_BTN_COLOR(1), R_C_BTN_COLOR(2), temp);
|
||||||
gDPSetCombineMode(OVERLAY_DISP++, G_CC_MODULATEIA_PRIM, G_CC_MODULATEIA_PRIM);
|
gDPSetCombineMode(OVERLAY_DISP++, G_CC_MODULATEIA_PRIM, G_CC_MODULATEIA_PRIM);
|
||||||
gSPTextureRectangle(OVERLAY_DISP++, R_C_UP_BTN_X << 2, R_C_UP_BTN_Y << 2, (R_C_UP_BTN_X + 16) << 2,
|
gSPTextureRectangle(OVERLAY_DISP++, R_C_UP_BTN_X << 2, R_C_UP_BTN_Y << 2, (R_C_UP_BTN_X + 16) << 2,
|
||||||
(R_C_UP_BTN_Y + 16) << 2, G_TX_RENDERTILE, 0, 0, 2048, 2048);
|
(R_C_UP_BTN_Y + 16) << 2, G_TX_RENDERTILE, 0, 0, 2 << 10, 2 << 10);
|
||||||
gDPPipeSync(OVERLAY_DISP++);
|
gDPPipeSync(OVERLAY_DISP++);
|
||||||
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 255, 255, 255, temp);
|
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 255, 255, 255, temp);
|
||||||
gDPSetEnvColor(OVERLAY_DISP++, 0, 0, 0, 0);
|
gDPSetEnvColor(OVERLAY_DISP++, 0, 0, 0, 0);
|
||||||
gDPSetCombineLERP(OVERLAY_DISP++, PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0,
|
gDPSetCombineLERP(OVERLAY_DISP++, PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0,
|
||||||
PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0);
|
PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0);
|
||||||
|
|
||||||
gDPLoadTextureBlock_4b(OVERLAY_DISP++, sCUpLabelTextures[gSaveContext.language], G_IM_FMT_IA, 32, 8, 0,
|
gDPLoadTextureBlock_4b(OVERLAY_DISP++, cUpLabelTextures[gSaveContext.language], G_IM_FMT_IA, 32, 8, 0,
|
||||||
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK,
|
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK,
|
||||||
G_TX_NOLOD, G_TX_NOLOD);
|
G_TX_NOLOD, G_TX_NOLOD);
|
||||||
|
|
||||||
gSPTextureRectangle(OVERLAY_DISP++, R_C_UP_ICON_X << 2, R_C_UP_ICON_Y << 2, (R_C_UP_ICON_X + 32) << 2,
|
gSPTextureRectangle(OVERLAY_DISP++, R_C_UP_ICON_X << 2, R_C_UP_ICON_Y << 2, (R_C_UP_ICON_X + 32) << 2,
|
||||||
(R_C_UP_ICON_Y + 8) << 2, G_TX_RENDERTILE, 0, 0, 1024, 1024);
|
(R_C_UP_ICON_Y + 8) << 2, G_TX_RENDERTILE, 0, 0, 1 << 10, 1 << 10);
|
||||||
}
|
}
|
||||||
|
|
||||||
sCUpTimer--;
|
sCUpTimer--;
|
||||||
|
@ -2777,9 +2779,9 @@ void Interface_DrawItemButtons(GlobalContext* globalCtx) {
|
||||||
interfaceCtx->cRightAlpha);
|
interfaceCtx->cRightAlpha);
|
||||||
}
|
}
|
||||||
|
|
||||||
OVERLAY_DISP = Gfx_TextureIA8(OVERLAY_DISP, D_02000A00[temp + 1], 0x20, 0x20, R_ITEM_BTN_X(temp),
|
OVERLAY_DISP = Gfx_TextureIA8(OVERLAY_DISP, ((u8*)gButtonBackgroundTex + ((32 * 32) * (temp + 1))), 32, 32,
|
||||||
R_ITEM_BTN_Y(temp), R_ITEM_BTN_WIDTH(temp), R_ITEM_BTN_WIDTH(temp),
|
R_ITEM_BTN_X(temp), R_ITEM_BTN_Y(temp), R_ITEM_BTN_WIDTH(temp),
|
||||||
R_ITEM_BTN_DD(temp) * 2, R_ITEM_BTN_DD(temp) * 2);
|
R_ITEM_BTN_WIDTH(temp), R_ITEM_BTN_DD(temp) << 1, R_ITEM_BTN_DD(temp) << 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2795,7 +2797,7 @@ void Interface_DrawItemIconTexture(GlobalContext* globalCtx, void* texture, s16
|
||||||
gSPTextureRectangle(OVERLAY_DISP++, R_ITEM_ICON_X(button) << 2, R_ITEM_ICON_Y(button) << 2,
|
gSPTextureRectangle(OVERLAY_DISP++, R_ITEM_ICON_X(button) << 2, R_ITEM_ICON_Y(button) << 2,
|
||||||
(R_ITEM_ICON_X(button) + R_ITEM_ICON_WIDTH(button)) << 2,
|
(R_ITEM_ICON_X(button) + R_ITEM_ICON_WIDTH(button)) << 2,
|
||||||
(R_ITEM_ICON_Y(button) + R_ITEM_ICON_WIDTH(button)) << 2, G_TX_RENDERTILE, 0, 0,
|
(R_ITEM_ICON_Y(button) + R_ITEM_ICON_WIDTH(button)) << 2, G_TX_RENDERTILE, 0, 0,
|
||||||
R_ITEM_ICON_DD(button) * 2, R_ITEM_ICON_DD(button) * 2);
|
R_ITEM_ICON_DD(button) << 1, R_ITEM_ICON_DD(button) << 1);
|
||||||
|
|
||||||
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_parameter.c", 3094);
|
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_parameter.c", 3094);
|
||||||
}
|
}
|
||||||
|
@ -2847,12 +2849,12 @@ void Interface_DrawAmmoCount(GlobalContext* globalCtx, s16 button, s16 alpha) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (i != 0) {
|
if (i != 0) {
|
||||||
OVERLAY_DISP = Gfx_TextureIA8(OVERLAY_DISP, D_020035C0[i], 8, 8, R_ITEM_AMMO_X(button),
|
OVERLAY_DISP = Gfx_TextureIA8(OVERLAY_DISP, ((u8*)gAmmoDigit0Tex + ((8 * 8) * i)), 8, 8,
|
||||||
R_ITEM_AMMO_Y(button), 8, 8, 1024, 1024);
|
R_ITEM_AMMO_X(button), R_ITEM_AMMO_Y(button), 8, 8, 1 << 10, 1 << 10);
|
||||||
}
|
}
|
||||||
|
|
||||||
OVERLAY_DISP = Gfx_TextureIA8(OVERLAY_DISP, D_020035C0[ammo], 8, 8, R_ITEM_AMMO_X(button) + 6,
|
OVERLAY_DISP = Gfx_TextureIA8(OVERLAY_DISP, ((u8*)gAmmoDigit0Tex + ((8 * 8) * ammo)), 8, 8,
|
||||||
R_ITEM_AMMO_Y(button), 8, 8, 1024, 1024);
|
R_ITEM_AMMO_X(button) + 6, R_ITEM_AMMO_Y(button), 8, 8, 1 << 10, 1 << 10);
|
||||||
}
|
}
|
||||||
|
|
||||||
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_parameter.c", 3158);
|
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_parameter.c", 3158);
|
||||||
|
@ -2873,8 +2875,9 @@ void Interface_DrawActionButton(GlobalContext* globalCtx) {
|
||||||
G_MTX_MODELVIEW | G_MTX_LOAD);
|
G_MTX_MODELVIEW | G_MTX_LOAD);
|
||||||
gSPVertex(OVERLAY_DISP++, &interfaceCtx->actionVtx[0], 4, 0);
|
gSPVertex(OVERLAY_DISP++, &interfaceCtx->actionVtx[0], 4, 0);
|
||||||
|
|
||||||
gDPLoadTextureBlock(OVERLAY_DISP++, D_02000A00[0], G_IM_FMT_IA, G_IM_SIZ_8b, 32, 32, 0, G_TX_NOMIRROR | G_TX_WRAP,
|
gDPLoadTextureBlock(OVERLAY_DISP++, gButtonBackgroundTex, G_IM_FMT_IA, G_IM_SIZ_8b, 32, 32, 0,
|
||||||
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD,
|
||||||
|
G_TX_NOLOD);
|
||||||
|
|
||||||
gSP1Quadrangle(OVERLAY_DISP++, 0, 2, 3, 1, 0);
|
gSP1Quadrangle(OVERLAY_DISP++, 0, 2, 3, 1, 0);
|
||||||
|
|
||||||
|
@ -2992,52 +2995,38 @@ void func_8008A994(InterfaceContext* interfaceCtx) {
|
||||||
func_800AB2C4(&interfaceCtx->view);
|
func_800AB2C4(&interfaceCtx->view);
|
||||||
}
|
}
|
||||||
|
|
||||||
s16 sMagicArrowEffectsR[] = { 255, 100, 255 };
|
|
||||||
s16 sMagicArrowEffectsG[] = { 0, 100, 255 };
|
|
||||||
s16 sMagicArrowEffectsB[] = { 0, 255, 100 };
|
|
||||||
|
|
||||||
s16 sTimerDigitLeftPos[] = { 16, 25, 34, 42, 51 };
|
|
||||||
s16 sDigitWidth[] = { 9, 9, 8, 9, 9 };
|
|
||||||
|
|
||||||
// unused, most likely colors
|
|
||||||
s16 D_80125B1C[][3] = {
|
|
||||||
{ 0, 150, 0 }, { 100, 255, 0 }, { 255, 255, 255 }, { 0, 0, 0 }, { 255, 255, 255 },
|
|
||||||
};
|
|
||||||
|
|
||||||
s16 sRupeeDigitsFirst[] = { 1, 0, 0 };
|
|
||||||
s16 sRupeeDigitsCount[] = { 2, 3, 3 };
|
|
||||||
|
|
||||||
s16 sSpoilingItemEntrances[] = { 0x01AD, 0x0153, 0x0153 };
|
|
||||||
|
|
||||||
u16 D_80125B54 = 0xC220; // unused
|
|
||||||
u16 D_80125B58 = 0xC20C; // unused
|
|
||||||
s16 D_80125B5C[] = { 91, 91 }; // unused
|
|
||||||
|
|
||||||
// Due to an unknown reason, bss ordering changes within the 5 static variables in the function below.
|
|
||||||
// In order to restore the correct order, we need a specific number of bss variables in the file before that point.
|
|
||||||
// For this, we introduce 2 dummy variables which end up in padding at the end of the file's bss, so they don't actually
|
|
||||||
// take space.
|
|
||||||
s8 sBssDummy1;
|
|
||||||
s8 sBssDummy2;
|
|
||||||
|
|
||||||
#ifdef NON_MATCHING
|
#ifdef NON_MATCHING
|
||||||
// mostly regalloc, minor ordering and stack usage differences
|
// mostly regalloc and minor ordering differences
|
||||||
void Interface_Draw(GlobalContext* globalCtx) {
|
void Interface_Draw(GlobalContext* globalCtx) {
|
||||||
|
static s16 magicArrowEffectsR[] = { 255, 100, 255 };
|
||||||
|
static s16 magicArrowEffectsG[] = { 0, 100, 255 };
|
||||||
|
static s16 magicArrowEffectsB[] = { 0, 255, 100 };
|
||||||
|
static s16 timerDigitLeftPos[] = { 16, 25, 34, 42, 51 };
|
||||||
|
static s16 digitWidth[] = { 9, 9, 8, 9, 9 };
|
||||||
|
// unused, most likely colors
|
||||||
|
static s16 D_80125B1C[][3] = {
|
||||||
|
{ 0, 150, 0 }, { 100, 255, 0 }, { 255, 255, 255 }, { 0, 0, 0 }, { 255, 255, 255 },
|
||||||
|
};
|
||||||
|
static s16 rupeeDigitsFirst[] = { 1, 0, 0 };
|
||||||
|
static s16 rupeeDigitsCount[] = { 2, 3, 3 };
|
||||||
|
static s16 spoilingItemEntrances[] = { 0x01AD, 0x0153, 0x0153 };
|
||||||
|
static f32 D_80125B54[] = { -40.0f, -35.0f }; // unused
|
||||||
|
static s16 D_80125B5C[] = { 91, 91 }; // unused
|
||||||
static s16 D_8015FFE0;
|
static s16 D_8015FFE0;
|
||||||
static s16 D_8015FFE2;
|
static s16 D_8015FFE2;
|
||||||
static s16 D_8015FFE4;
|
static s16 D_8015FFE4;
|
||||||
static s16 D_8015FFE6;
|
static s16 D_8015FFE6;
|
||||||
static s16 sTimerDigits[5];
|
static s16 timerDigits[5];
|
||||||
MessageContext* msgCtx = &globalCtx->msgCtx;
|
|
||||||
PauseContext* pauseCtx = &globalCtx->pauseCtx;
|
|
||||||
InterfaceContext* interfaceCtx = &globalCtx->interfaceCtx;
|
InterfaceContext* interfaceCtx = &globalCtx->interfaceCtx;
|
||||||
|
PauseContext* pauseCtx = &globalCtx->pauseCtx;
|
||||||
|
MessageContext* msgCtx = &globalCtx->msgCtx;
|
||||||
Player* player = PLAYER;
|
Player* player = PLAYER;
|
||||||
s16 phi_s3_2;
|
s16 svar1;
|
||||||
s16 phi_s3;
|
s16 svar2;
|
||||||
s16 phi_s2;
|
s16 svar3;
|
||||||
s16 phi_s1;
|
s16 svar4;
|
||||||
s16 phi_s0;
|
s16 svar5;
|
||||||
s16 sp274;
|
s16 svar6;
|
||||||
|
|
||||||
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_parameter.c", 3405);
|
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_parameter.c", 3405);
|
||||||
|
|
||||||
|
@ -3056,7 +3045,7 @@ void Interface_Draw(GlobalContext* globalCtx) {
|
||||||
// Rupee Icon
|
// Rupee Icon
|
||||||
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 200, 255, 100, interfaceCtx->magicAlpha);
|
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 200, 255, 100, interfaceCtx->magicAlpha);
|
||||||
gDPSetEnvColor(OVERLAY_DISP++, 0, 80, 0, 255);
|
gDPSetEnvColor(OVERLAY_DISP++, 0, 80, 0, 255);
|
||||||
OVERLAY_DISP = Gfx_TextureIA8(OVERLAY_DISP, D_02001F00, 16, 16, 26, 206, 16, 16, 1024, 1024);
|
OVERLAY_DISP = Gfx_TextureIA8(OVERLAY_DISP, gRupeeCounterIconTex, 16, 16, 26, 206, 16, 16, 1 << 10, 1 << 10);
|
||||||
|
|
||||||
switch (globalCtx->sceneNum) {
|
switch (globalCtx->sceneNum) {
|
||||||
case SCENE_BMORI1:
|
case SCENE_BMORI1:
|
||||||
|
@ -3078,7 +3067,8 @@ void Interface_Draw(GlobalContext* globalCtx) {
|
||||||
gDPPipeSync(OVERLAY_DISP++);
|
gDPPipeSync(OVERLAY_DISP++);
|
||||||
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 200, 230, 255, interfaceCtx->magicAlpha);
|
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 200, 230, 255, interfaceCtx->magicAlpha);
|
||||||
gDPSetEnvColor(OVERLAY_DISP++, 0, 0, 20, 255);
|
gDPSetEnvColor(OVERLAY_DISP++, 0, 0, 20, 255);
|
||||||
OVERLAY_DISP = Gfx_TextureIA8(OVERLAY_DISP, D_02001E00, 16, 16, 26, 190, 16, 16, 1024, 1024);
|
OVERLAY_DISP = Gfx_TextureIA8(OVERLAY_DISP, gSmallKeyCounterIconTex, 16, 16, 26, 190, 16, 16,
|
||||||
|
1 << 10, 1 << 10);
|
||||||
|
|
||||||
// Small Key Counter
|
// Small Key Counter
|
||||||
gDPPipeSync(OVERLAY_DISP++);
|
gDPPipeSync(OVERLAY_DISP++);
|
||||||
|
@ -3094,26 +3084,24 @@ void Interface_Draw(GlobalContext* globalCtx) {
|
||||||
interfaceCtx->counterDigits[3] -= 10;
|
interfaceCtx->counterDigits[3] -= 10;
|
||||||
}
|
}
|
||||||
|
|
||||||
phi_s2 = 42;
|
svar3 = 42;
|
||||||
|
|
||||||
if (interfaceCtx->counterDigits[2] != 0) {
|
if (interfaceCtx->counterDigits[2] != 0) {
|
||||||
OVERLAY_DISP = Gfx_TextureI8(OVERLAY_DISP, D_02003040[interfaceCtx->counterDigits[2]], 8, 16,
|
OVERLAY_DISP = Gfx_TextureI8(
|
||||||
phi_s2, 190, 8, 16, 1024, 1024);
|
OVERLAY_DISP, ((u8*)gCounterDigit0Tex + (8 * 16 * interfaceCtx->counterDigits[2])), 8, 16,
|
||||||
phi_s2 = 50;
|
svar3, 190, 8, 16, 1 << 10, 1 << 10);
|
||||||
|
svar3 += 8;
|
||||||
}
|
}
|
||||||
|
|
||||||
OVERLAY_DISP = Gfx_TextureI8(OVERLAY_DISP, D_02003040[interfaceCtx->counterDigits[3]], 8, 16,
|
OVERLAY_DISP = Gfx_TextureI8(OVERLAY_DISP,
|
||||||
phi_s2, 190, 8, 16, 1024, 1024);
|
((u8*)gCounterDigit0Tex + (8 * 16 * interfaceCtx->counterDigits[3])),
|
||||||
|
8, 16, svar3, 190, 8, 16, 1 << 10, 1 << 10);
|
||||||
}
|
}
|
||||||
|
|
||||||
phi_s2 = 42;
|
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
phi_s2 = 42;
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
phi_s2 = 42;
|
|
||||||
|
|
||||||
// Rupee Counter
|
// Rupee Counter
|
||||||
gDPPipeSync(OVERLAY_DISP++);
|
gDPPipeSync(OVERLAY_DISP++);
|
||||||
|
|
||||||
|
@ -3131,26 +3119,27 @@ void Interface_Draw(GlobalContext* globalCtx) {
|
||||||
interfaceCtx->counterDigits[0] = interfaceCtx->counterDigits[1] = 0;
|
interfaceCtx->counterDigits[0] = interfaceCtx->counterDigits[1] = 0;
|
||||||
interfaceCtx->counterDigits[2] = gSaveContext.rupees;
|
interfaceCtx->counterDigits[2] = gSaveContext.rupees;
|
||||||
|
|
||||||
if ((interfaceCtx->counterDigits[2] >= 10000) || (interfaceCtx->counterDigits[2] < 0)) {
|
if ((interfaceCtx->counterDigits[2] > 9999) || (interfaceCtx->counterDigits[2] < 0)) {
|
||||||
interfaceCtx->counterDigits[2] &= 0xDDD;
|
interfaceCtx->counterDigits[2] &= 0xDDD;
|
||||||
}
|
}
|
||||||
|
|
||||||
while (interfaceCtx->counterDigits[2] >= 100) {
|
while (interfaceCtx->counterDigits[2] >= 100) {
|
||||||
interfaceCtx->counterDigits[2] -= 100;
|
|
||||||
interfaceCtx->counterDigits[0]++;
|
interfaceCtx->counterDigits[0]++;
|
||||||
|
interfaceCtx->counterDigits[2] -= 100;
|
||||||
}
|
}
|
||||||
|
|
||||||
while (interfaceCtx->counterDigits[2] >= 10) {
|
while (interfaceCtx->counterDigits[2] >= 10) {
|
||||||
interfaceCtx->counterDigits[2] -= 10;
|
|
||||||
interfaceCtx->counterDigits[1]++;
|
interfaceCtx->counterDigits[1]++;
|
||||||
|
interfaceCtx->counterDigits[2] -= 10;
|
||||||
}
|
}
|
||||||
|
|
||||||
phi_s0 = sRupeeDigitsFirst[CUR_UPG_VALUE(UPG_WALLET)];
|
svar2 = rupeeDigitsFirst[CUR_UPG_VALUE(UPG_WALLET)];
|
||||||
phi_s1 = sRupeeDigitsCount[CUR_UPG_VALUE(UPG_WALLET)];
|
svar4 = rupeeDigitsCount[CUR_UPG_VALUE(UPG_WALLET)];
|
||||||
|
|
||||||
for (phi_s3 = 0; phi_s3 < phi_s1; phi_s3++, phi_s0++, phi_s2 += 8) {
|
for (svar1 = 0, svar3 = 42; svar1 < svar4; svar1++, svar2++, svar3 += 8) {
|
||||||
OVERLAY_DISP = Gfx_TextureI8(OVERLAY_DISP, D_02003040[interfaceCtx->counterDigits[phi_s0]], 8, 16, phi_s2,
|
OVERLAY_DISP =
|
||||||
206, 8, 16, 1024, 1024);
|
Gfx_TextureI8(OVERLAY_DISP, ((u8*)gCounterDigit0Tex + (8 * 16 * interfaceCtx->counterDigits[svar2])), 8,
|
||||||
|
16, svar3, 206, 8, 16, 1 << 10, 1 << 10);
|
||||||
}
|
}
|
||||||
|
|
||||||
Interface_DrawMagicBar(globalCtx);
|
Interface_DrawMagicBar(globalCtx);
|
||||||
|
@ -3166,10 +3155,10 @@ void Interface_Draw(GlobalContext* globalCtx) {
|
||||||
|
|
||||||
gDPPipeSync(OVERLAY_DISP++);
|
gDPPipeSync(OVERLAY_DISP++);
|
||||||
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 255, 255, 255, interfaceCtx->bAlpha);
|
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 255, 255, 255, interfaceCtx->bAlpha);
|
||||||
gDPSetCombineMode(OVERLAY_DISP++, G_CC_MODULATEIA_PRIM, G_CC_MODULATEIA_PRIM);
|
gDPSetCombineMode(OVERLAY_DISP++, G_CC_MODULATERGBA_PRIM, G_CC_MODULATERGBA_PRIM);
|
||||||
|
|
||||||
if (interfaceCtx->unk_1FA == 0) {
|
if (!(interfaceCtx->unk_1FA)) {
|
||||||
// B Button Icon & possibly Ammo Count
|
// B Button Icon & Ammo Count
|
||||||
if (gSaveContext.equips.buttonItems[0] != ITEM_NONE) {
|
if (gSaveContext.equips.buttonItems[0] != ITEM_NONE) {
|
||||||
Interface_DrawItemIconTexture(globalCtx, interfaceCtx->iconItemSegment, 0);
|
Interface_DrawItemIconTexture(globalCtx, interfaceCtx->iconItemSegment, 0);
|
||||||
|
|
||||||
|
@ -3192,7 +3181,7 @@ void Interface_Draw(GlobalContext* globalCtx) {
|
||||||
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK,
|
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK,
|
||||||
G_TX_NOLOD, G_TX_NOLOD);
|
G_TX_NOLOD, G_TX_NOLOD);
|
||||||
|
|
||||||
R_B_LABEL_DD = 1024.0f / (WREG(37 + gSaveContext.language) / 100.0f);
|
R_B_LABEL_DD = (1 << 10) / (WREG(37 + gSaveContext.language) / 100.0f);
|
||||||
gSPTextureRectangle(OVERLAY_DISP++, R_B_LABEL_X(gSaveContext.language) << 2,
|
gSPTextureRectangle(OVERLAY_DISP++, R_B_LABEL_X(gSaveContext.language) << 2,
|
||||||
R_B_LABEL_Y(gSaveContext.language) << 2, (R_B_LABEL_X(gSaveContext.language) + 48) << 2,
|
R_B_LABEL_Y(gSaveContext.language) << 2, (R_B_LABEL_X(gSaveContext.language) + 48) << 2,
|
||||||
(R_B_LABEL_Y(gSaveContext.language) + 16) << 2, G_TX_RENDERTILE, 0, 0, R_B_LABEL_DD,
|
(R_B_LABEL_Y(gSaveContext.language) + 16) << 2, G_TX_RENDERTILE, 0, 0, R_B_LABEL_DD,
|
||||||
|
@ -3204,7 +3193,7 @@ void Interface_Draw(GlobalContext* globalCtx) {
|
||||||
// C-Left Button Icon & Ammo Count
|
// C-Left Button Icon & Ammo Count
|
||||||
if (gSaveContext.equips.buttonItems[1] < 0xF0) {
|
if (gSaveContext.equips.buttonItems[1] < 0xF0) {
|
||||||
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 255, 255, 255, interfaceCtx->cLeftAlpha);
|
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 255, 255, 255, interfaceCtx->cLeftAlpha);
|
||||||
gDPSetCombineMode(OVERLAY_DISP++, G_CC_MODULATEIA_PRIM, G_CC_MODULATEIA_PRIM);
|
gDPSetCombineMode(OVERLAY_DISP++, G_CC_MODULATERGBA_PRIM, G_CC_MODULATERGBA_PRIM);
|
||||||
Interface_DrawItemIconTexture(globalCtx, interfaceCtx->iconItemSegment + 0x1000, 1);
|
Interface_DrawItemIconTexture(globalCtx, interfaceCtx->iconItemSegment + 0x1000, 1);
|
||||||
gDPPipeSync(OVERLAY_DISP++);
|
gDPPipeSync(OVERLAY_DISP++);
|
||||||
gDPSetCombineLERP(OVERLAY_DISP++, PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0,
|
gDPSetCombineLERP(OVERLAY_DISP++, PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0,
|
||||||
|
@ -3217,7 +3206,7 @@ void Interface_Draw(GlobalContext* globalCtx) {
|
||||||
// C-Down Button Icon & Ammo Count
|
// C-Down Button Icon & Ammo Count
|
||||||
if (gSaveContext.equips.buttonItems[2] < 0xF0) {
|
if (gSaveContext.equips.buttonItems[2] < 0xF0) {
|
||||||
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 255, 255, 255, interfaceCtx->cDownAlpha);
|
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 255, 255, 255, interfaceCtx->cDownAlpha);
|
||||||
gDPSetCombineMode(OVERLAY_DISP++, G_CC_MODULATEIA_PRIM, G_CC_MODULATEIA_PRIM);
|
gDPSetCombineMode(OVERLAY_DISP++, G_CC_MODULATERGBA_PRIM, G_CC_MODULATERGBA_PRIM);
|
||||||
Interface_DrawItemIconTexture(globalCtx, interfaceCtx->iconItemSegment + 0x2000, 2);
|
Interface_DrawItemIconTexture(globalCtx, interfaceCtx->iconItemSegment + 0x2000, 2);
|
||||||
gDPPipeSync(OVERLAY_DISP++);
|
gDPPipeSync(OVERLAY_DISP++);
|
||||||
gDPSetCombineLERP(OVERLAY_DISP++, PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0,
|
gDPSetCombineLERP(OVERLAY_DISP++, PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0,
|
||||||
|
@ -3230,7 +3219,7 @@ void Interface_Draw(GlobalContext* globalCtx) {
|
||||||
// C-Right Button Icon & Ammo Count
|
// C-Right Button Icon & Ammo Count
|
||||||
if (gSaveContext.equips.buttonItems[3] < 0xF0) {
|
if (gSaveContext.equips.buttonItems[3] < 0xF0) {
|
||||||
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 255, 255, 255, interfaceCtx->cRightAlpha);
|
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 255, 255, 255, interfaceCtx->cRightAlpha);
|
||||||
gDPSetCombineMode(OVERLAY_DISP++, G_CC_MODULATEIA_PRIM, G_CC_MODULATEIA_PRIM);
|
gDPSetCombineMode(OVERLAY_DISP++, G_CC_MODULATERGBA_PRIM, G_CC_MODULATERGBA_PRIM);
|
||||||
Interface_DrawItemIconTexture(globalCtx, interfaceCtx->iconItemSegment + 0x3000, 3);
|
Interface_DrawItemIconTexture(globalCtx, interfaceCtx->iconItemSegment + 0x3000, 3);
|
||||||
gDPPipeSync(OVERLAY_DISP++);
|
gDPPipeSync(OVERLAY_DISP++);
|
||||||
gDPSetCombineLERP(OVERLAY_DISP++, PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0,
|
gDPSetCombineLERP(OVERLAY_DISP++, PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0,
|
||||||
|
@ -3274,7 +3263,7 @@ void Interface_Draw(GlobalContext* globalCtx) {
|
||||||
// Inventory Equip Effects
|
// Inventory Equip Effects
|
||||||
gSPSegment(OVERLAY_DISP++, 0x08, pauseCtx->iconItemSegment);
|
gSPSegment(OVERLAY_DISP++, 0x08, pauseCtx->iconItemSegment);
|
||||||
func_80094A14(globalCtx->state.gfxCtx);
|
func_80094A14(globalCtx->state.gfxCtx);
|
||||||
gDPSetCombineMode(OVERLAY_DISP++, G_CC_MODULATEIA_PRIM, G_CC_MODULATEIA_PRIM);
|
gDPSetCombineMode(OVERLAY_DISP++, G_CC_MODULATERGBA_PRIM, G_CC_MODULATERGBA_PRIM);
|
||||||
gSPMatrix(OVERLAY_DISP++, &gMtxClear, G_MTX_MODELVIEW | G_MTX_LOAD);
|
gSPMatrix(OVERLAY_DISP++, &gMtxClear, G_MTX_MODELVIEW | G_MTX_LOAD);
|
||||||
|
|
||||||
pauseCtx->cursorVtx[16].v.ob[0] = pauseCtx->cursorVtx[18].v.ob[0] = pauseCtx->equipAnimX / 10;
|
pauseCtx->cursorVtx[16].v.ob[0] = pauseCtx->cursorVtx[18].v.ob[0] = pauseCtx->equipAnimX / 10;
|
||||||
|
@ -3294,24 +3283,24 @@ void Interface_Draw(GlobalContext* globalCtx) {
|
||||||
G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||||
} else {
|
} else {
|
||||||
// Magic Arrow Equip Effect
|
// Magic Arrow Equip Effect
|
||||||
phi_s3_2 = pauseCtx->equipTargetItem - 0xBF;
|
svar1 = pauseCtx->equipTargetItem - 0xBF;
|
||||||
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, sMagicArrowEffectsR[phi_s3_2], sMagicArrowEffectsG[phi_s3_2],
|
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, magicArrowEffectsR[svar1], magicArrowEffectsG[svar1],
|
||||||
sMagicArrowEffectsB[phi_s3_2], pauseCtx->equipAnimAlpha);
|
magicArrowEffectsB[svar1], pauseCtx->equipAnimAlpha);
|
||||||
|
|
||||||
if ((pauseCtx->equipAnimAlpha > 0) && (pauseCtx->equipAnimAlpha < 255)) {
|
if ((pauseCtx->equipAnimAlpha > 0) && (pauseCtx->equipAnimAlpha < 255)) {
|
||||||
phi_s3_2 = (pauseCtx->equipAnimAlpha / 8) / 2;
|
svar1 = (pauseCtx->equipAnimAlpha / 8) / 2;
|
||||||
pauseCtx->cursorVtx[16].v.ob[0] = pauseCtx->cursorVtx[18].v.ob[0] =
|
pauseCtx->cursorVtx[16].v.ob[0] = pauseCtx->cursorVtx[18].v.ob[0] =
|
||||||
pauseCtx->cursorVtx[16].v.ob[0] - phi_s3_2;
|
pauseCtx->cursorVtx[16].v.ob[0] - svar1;
|
||||||
pauseCtx->cursorVtx[17].v.ob[0] = pauseCtx->cursorVtx[19].v.ob[0] =
|
pauseCtx->cursorVtx[17].v.ob[0] = pauseCtx->cursorVtx[19].v.ob[0] =
|
||||||
pauseCtx->cursorVtx[16].v.ob[0] + phi_s3_2 * 2 + 32;
|
pauseCtx->cursorVtx[16].v.ob[0] + svar1 * 2 + 32;
|
||||||
pauseCtx->cursorVtx[16].v.ob[1] = pauseCtx->cursorVtx[17].v.ob[1] =
|
pauseCtx->cursorVtx[16].v.ob[1] = pauseCtx->cursorVtx[17].v.ob[1] =
|
||||||
pauseCtx->cursorVtx[16].v.ob[1] + phi_s3_2;
|
pauseCtx->cursorVtx[16].v.ob[1] + svar1;
|
||||||
pauseCtx->cursorVtx[18].v.ob[1] = pauseCtx->cursorVtx[19].v.ob[1] =
|
pauseCtx->cursorVtx[18].v.ob[1] = pauseCtx->cursorVtx[19].v.ob[1] =
|
||||||
pauseCtx->cursorVtx[16].v.ob[1] - phi_s3_2 * 2 - 32;
|
pauseCtx->cursorVtx[16].v.ob[1] - svar1 * 2 - 32;
|
||||||
}
|
}
|
||||||
|
|
||||||
gSPVertex(OVERLAY_DISP++, &pauseCtx->cursorVtx[16], 4, 0);
|
gSPVertex(OVERLAY_DISP++, &pauseCtx->cursorVtx[16], 4, 0);
|
||||||
gDPLoadTextureBlock(OVERLAY_DISP++, D_080895C0, G_IM_FMT_IA, G_IM_SIZ_8b, 32, 32, 0,
|
gDPLoadTextureBlock(OVERLAY_DISP++, gMagicArrowEquipEffectTex, G_IM_FMT_IA, G_IM_SIZ_8b, 32, 32, 0,
|
||||||
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK,
|
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK,
|
||||||
G_TX_NOLOD, G_TX_NOLOD);
|
G_TX_NOLOD, G_TX_NOLOD);
|
||||||
}
|
}
|
||||||
|
@ -3326,66 +3315,65 @@ void Interface_Draw(GlobalContext* globalCtx) {
|
||||||
// Carrots rendering if the action corresponds to riding a horse
|
// Carrots rendering if the action corresponds to riding a horse
|
||||||
if (interfaceCtx->unk_1EE == 8) {
|
if (interfaceCtx->unk_1EE == 8) {
|
||||||
// Load Carrot Icon
|
// Load Carrot Icon
|
||||||
gDPLoadTextureBlock(OVERLAY_DISP++, &D_02002100, G_IM_FMT_RGBA, G_IM_SIZ_32b, 16, 16, 0,
|
gDPLoadTextureBlock(OVERLAY_DISP++, gCarrotIconTex, G_IM_FMT_RGBA, G_IM_SIZ_32b, 16, 16, 0,
|
||||||
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK,
|
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK,
|
||||||
G_TX_NOLOD, G_TX_NOLOD);
|
G_TX_NOLOD, G_TX_NOLOD);
|
||||||
|
|
||||||
// Draw 6 carrots
|
// Draw 6 carrots
|
||||||
phi_s1 = ZREG(14);
|
for (svar1 = 1, svar5 = ZREG(14); svar1 < 7; svar1++, svar5 += 16) {
|
||||||
for (phi_s3 = 1; phi_s3 < 7; phi_s3++) {
|
|
||||||
// Carrot Color (based on availability)
|
// Carrot Color (based on availability)
|
||||||
if ((interfaceCtx->numHorseBoosts == 0) || (interfaceCtx->numHorseBoosts < phi_s3)) {
|
if ((interfaceCtx->numHorseBoosts == 0) || (interfaceCtx->numHorseBoosts < svar1)) {
|
||||||
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 0, 150, 255, interfaceCtx->aAlpha);
|
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 0, 150, 255, interfaceCtx->aAlpha);
|
||||||
} else {
|
} else {
|
||||||
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 255, 255, 255, interfaceCtx->aAlpha);
|
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 255, 255, 255, interfaceCtx->aAlpha);
|
||||||
}
|
}
|
||||||
|
|
||||||
gSPTextureRectangle(OVERLAY_DISP++, phi_s1 << 2, ZREG(15) << 2, (phi_s1 + 16) << 2,
|
gSPTextureRectangle(OVERLAY_DISP++, svar5 << 2, ZREG(15) << 2, (svar5 + 16) << 2,
|
||||||
(ZREG(15) + 16) << 2, G_TX_RENDERTILE, 0, 0, 1024, 1024);
|
(ZREG(15) + 16) << 2, G_TX_RENDERTILE, 0, 0, 1 << 10, 1 << 10);
|
||||||
|
|
||||||
phi_s1 += 16;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// Score for the Horseback Archery
|
// Score for the Horseback Archery
|
||||||
|
svar5 = WREG(32);
|
||||||
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 255, 255, 255, interfaceCtx->bAlpha);
|
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 255, 255, 255, interfaceCtx->bAlpha);
|
||||||
|
|
||||||
// Target Icon
|
// Target Icon
|
||||||
gDPLoadTextureBlock(OVERLAY_DISP++, D_02002600, G_IM_FMT_RGBA, G_IM_SIZ_16b, 24, 16, 0,
|
gDPLoadTextureBlock(OVERLAY_DISP++, gArcheryScoreIconTex, G_IM_FMT_RGBA, G_IM_SIZ_16b, 24, 16, 0,
|
||||||
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK,
|
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK,
|
||||||
G_TX_NOLOD, G_TX_NOLOD);
|
G_TX_NOLOD, G_TX_NOLOD);
|
||||||
|
|
||||||
gSPTextureRectangle(OVERLAY_DISP++, (WREG(32) + 28) << 2, ZREG(15) << 2, (WREG(32) + 52) << 2,
|
gSPTextureRectangle(OVERLAY_DISP++, (WREG(32) + 28) << 2, ZREG(15) << 2, (WREG(32) + 52) << 2,
|
||||||
(ZREG(15) + 16) << 2, G_TX_RENDERTILE, 0, 0, 1024, 1024);
|
(ZREG(15) + 16) << 2, G_TX_RENDERTILE, 0, 0, 1 << 10, 1 << 10);
|
||||||
|
|
||||||
// Score Counter
|
// Score Counter
|
||||||
gDPPipeSync(OVERLAY_DISP++);
|
gDPPipeSync(OVERLAY_DISP++);
|
||||||
gDPSetCombineMode(OVERLAY_DISP++, G_CC_MODULATEIA_PRIM, G_CC_MODULATEIA_PRIM);
|
gDPSetCombineLERP(OVERLAY_DISP++, 0, 0, 0, PRIMITIVE, TEXEL0, 0, PRIMITIVE, 0, 0, 0, 0, PRIMITIVE,
|
||||||
|
TEXEL0, 0, PRIMITIVE, 0);
|
||||||
|
|
||||||
phi_s0 = 0;
|
svar5 = WREG(32) + 6 * 9;
|
||||||
phi_s1 = WREG(32) + 6 * 9;
|
|
||||||
for (phi_s3 = 0; phi_s3 < 4; phi_s3++) {
|
for (svar1 = svar2 = 0; svar1 < 4; svar1++) {
|
||||||
if (sHBAScoreDigits[phi_s3] != 0 || (phi_s0 != 0) || (phi_s3 >= 3)) {
|
if (sHBAScoreDigits[svar1] != 0 || (svar2 != 0) || (svar1 >= 3)) {
|
||||||
OVERLAY_DISP =
|
OVERLAY_DISP = Gfx_TextureI8(
|
||||||
Gfx_TextureI8(OVERLAY_DISP, D_02003040[sHBAScoreDigits[phi_s3]], 8, 16, phi_s1,
|
OVERLAY_DISP, ((u8*)gCounterDigit0Tex + (8 * 16 * sHBAScoreDigits[svar1])), 8, 16, svar5,
|
||||||
ZREG(15) - 2, sDigitWidth[0], VREG(42), VREG(43) * 2, VREG(43) * 2);
|
(ZREG(15) - 2), digitWidth[0], VREG(42), VREG(43) << 1, VREG(43) << 1);
|
||||||
phi_s1 += 9;
|
svar5 += 9;
|
||||||
phi_s0++;
|
svar2++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
gDPPipeSync(OVERLAY_DISP++);
|
gDPPipeSync(OVERLAY_DISP++);
|
||||||
gDPSetCombineMode(OVERLAY_DISP++, G_CC_MODULATEIA_PRIM, G_CC_MODULATEIA_PRIM);
|
gDPSetCombineMode(OVERLAY_DISP++, G_CC_MODULATERGBA_PRIM, G_CC_MODULATERGBA_PRIM);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((gSaveContext.timer2State == 5) && (func_8010BDBC(&globalCtx->msgCtx) == 5)) {
|
if ((gSaveContext.timer2State == 5) && (func_8010BDBC(&globalCtx->msgCtx) == 5)) {
|
||||||
// Trade quest timer reached 0
|
// Trade quest timer reached 0
|
||||||
|
D_8015FFE6 = 40;
|
||||||
gSaveContext.cutsceneIndex = 0;
|
gSaveContext.cutsceneIndex = 0;
|
||||||
globalCtx->sceneLoadFlag = 0x14;
|
globalCtx->sceneLoadFlag = 0x14;
|
||||||
globalCtx->fadeTransition = 3;
|
globalCtx->fadeTransition = 3;
|
||||||
gSaveContext.timer2State = 0;
|
gSaveContext.timer2State = 0;
|
||||||
D_8015FFE6 = 40;
|
|
||||||
|
|
||||||
if ((gSaveContext.equips.buttonItems[0] != ITEM_SWORD_KOKIRI) &&
|
if ((gSaveContext.equips.buttonItems[0] != ITEM_SWORD_KOKIRI) &&
|
||||||
(gSaveContext.equips.buttonItems[0] != ITEM_SWORD_MASTER) &&
|
(gSaveContext.equips.buttonItems[0] != ITEM_SWORD_MASTER) &&
|
||||||
|
@ -3399,17 +3387,17 @@ void Interface_Draw(GlobalContext* globalCtx) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Revert any spoiling trade quest items
|
// Revert any spoiling trade quest items
|
||||||
for (phi_s3 = 0; phi_s3 < ARRAY_COUNT(gSpoilingItems); phi_s3++) {
|
for (svar1 = 0; svar1 < ARRAY_COUNT(gSpoilingItems); svar1++) {
|
||||||
if (INV_CONTENT(ITEM_TRADE_ADULT) == gSpoilingItems[phi_s3]) {
|
if (INV_CONTENT(ITEM_TRADE_ADULT) == gSpoilingItems[svar1]) {
|
||||||
gSaveContext.eventInf[0] &= 0x7F80;
|
gSaveContext.eventInf[0] &= 0x7F80;
|
||||||
osSyncPrintf("EVENT_INF=%x\n", gSaveContext.eventInf[0]);
|
osSyncPrintf("EVENT_INF=%x\n", gSaveContext.eventInf[0]);
|
||||||
globalCtx->nextEntranceIndex = sSpoilingItemEntrances[phi_s3];
|
globalCtx->nextEntranceIndex = spoilingItemEntrances[svar1];
|
||||||
INV_CONTENT(gSpoilingItemReverts[phi_s3]) = gSpoilingItemReverts[phi_s3];
|
INV_CONTENT(gSpoilingItemReverts[svar1]) = gSpoilingItemReverts[svar1];
|
||||||
|
|
||||||
for (phi_s0 = 1; phi_s0 < 4; phi_s0++) {
|
for (svar2 = 1; svar2 < 4; svar2++) {
|
||||||
if (gSaveContext.equips.buttonItems[phi_s0] == gSpoilingItems[phi_s3]) {
|
if (gSaveContext.equips.buttonItems[svar2] == gSpoilingItems[svar1]) {
|
||||||
gSaveContext.equips.buttonItems[phi_s0] = gSpoilingItemReverts[phi_s3];
|
gSaveContext.equips.buttonItems[svar2] = gSpoilingItemReverts[svar1];
|
||||||
Interface_LoadItemIcon1(globalCtx, phi_s0);
|
Interface_LoadItemIcon1(globalCtx, svar2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -3422,23 +3410,25 @@ void Interface_Draw(GlobalContext* globalCtx) {
|
||||||
(globalCtx->transitionMode == 0) && !Gameplay_InCsMode(globalCtx) && (gSaveContext.minigameState != 1) &&
|
(globalCtx->transitionMode == 0) && !Gameplay_InCsMode(globalCtx) && (gSaveContext.minigameState != 1) &&
|
||||||
(globalCtx->shootingGalleryStatus <= 1) &&
|
(globalCtx->shootingGalleryStatus <= 1) &&
|
||||||
!((globalCtx->sceneNum == SCENE_BOWLING) && Flags_GetSwitch(globalCtx, 0x38))) {
|
!((globalCtx->sceneNum == SCENE_BOWLING) && Flags_GetSwitch(globalCtx, 0x38))) {
|
||||||
sp274 = 0;
|
svar6 = 0;
|
||||||
switch (gSaveContext.timer1State) {
|
switch (gSaveContext.timer1State) {
|
||||||
case 1:
|
case 1:
|
||||||
gSaveContext.timer1State = 2;
|
D_8015FFE2 = 20;
|
||||||
|
D_8015FFE0 = 20;
|
||||||
gSaveContext.timer1Value = gSaveContext.health >> 1;
|
gSaveContext.timer1Value = gSaveContext.health >> 1;
|
||||||
D_8015FFE0 = D_8015FFE2 = 20;
|
gSaveContext.timer1State = 2;
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
D_8015FFE2--;
|
D_8015FFE2--;
|
||||||
if (D_8015FFE2 == 0) {
|
if (D_8015FFE2 == 0) {
|
||||||
gSaveContext.timer1State = 3;
|
|
||||||
D_8015FFE2 = 20;
|
D_8015FFE2 = 20;
|
||||||
|
gSaveContext.timer1State = 3;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 5:
|
case 5:
|
||||||
case 11:
|
case 11:
|
||||||
D_8015FFE0 = D_8015FFE2 = 20;
|
D_8015FFE2 = 20;
|
||||||
|
D_8015FFE0 = 20;
|
||||||
if (gSaveContext.timer1State == 5) {
|
if (gSaveContext.timer1State == 5) {
|
||||||
gSaveContext.timer1State = 6;
|
gSaveContext.timer1State = 6;
|
||||||
} else {
|
} else {
|
||||||
|
@ -3459,20 +3449,20 @@ void Interface_Draw(GlobalContext* globalCtx) {
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
case 7:
|
case 7:
|
||||||
phi_s3 = (gSaveContext.timerX[0] - 26) / D_8015FFE2;
|
svar1 = (((void)0, gSaveContext.timerX[0]) - 26) / D_8015FFE2;
|
||||||
gSaveContext.timerX[0] -= phi_s3;
|
gSaveContext.timerX[0] = ((void)0, gSaveContext.timerX[0]) - svar1;
|
||||||
|
|
||||||
if (gSaveContext.healthCapacity > 0xA0) {
|
if (gSaveContext.healthCapacity > 0xA0) {
|
||||||
phi_s3 = (gSaveContext.timerY[0] - 54) / D_8015FFE2;
|
svar1 = (((void)0, gSaveContext.timerY[0]) - 54) / D_8015FFE2;
|
||||||
} else {
|
} else {
|
||||||
phi_s3 = (gSaveContext.timerY[0] - 46) / D_8015FFE2;
|
svar1 = (((void)0, gSaveContext.timerY[0]) - 46) / D_8015FFE2;
|
||||||
}
|
}
|
||||||
gSaveContext.timerY[0] -= phi_s3;
|
gSaveContext.timerY[0] -= svar1;
|
||||||
|
|
||||||
D_8015FFE2--;
|
D_8015FFE2--;
|
||||||
if (D_8015FFE2 == 0) {
|
if (D_8015FFE2 == 0) {
|
||||||
gSaveContext.timerX[0] = 26;
|
|
||||||
D_8015FFE2 = 20;
|
D_8015FFE2 = 20;
|
||||||
|
gSaveContext.timerX[0] = 26;
|
||||||
|
|
||||||
if (gSaveContext.healthCapacity > 0xA0) {
|
if (gSaveContext.healthCapacity > 0xA0) {
|
||||||
gSaveContext.timerY[0] = 54;
|
gSaveContext.timerY[0] = 54;
|
||||||
|
@ -3513,12 +3503,12 @@ void Interface_Draw(GlobalContext* globalCtx) {
|
||||||
}
|
}
|
||||||
D_80125A5C = 0;
|
D_80125A5C = 0;
|
||||||
} else if (gSaveContext.timer1Value > 60) {
|
} else if (gSaveContext.timer1Value > 60) {
|
||||||
if (sTimerDigits[4] == 1) {
|
if (timerDigits[4] == 1) {
|
||||||
Audio_PlaySoundGeneral(NA_SE_SY_MESSAGE_WOMAN, &D_801333D4, 4, &D_801333E0,
|
Audio_PlaySoundGeneral(NA_SE_SY_MESSAGE_WOMAN, &D_801333D4, 4, &D_801333E0,
|
||||||
&D_801333E0, &D_801333E8);
|
&D_801333E0, &D_801333E8);
|
||||||
}
|
}
|
||||||
} else if (gSaveContext.timer1Value >= 11) {
|
} else if (gSaveContext.timer1Value >= 11) {
|
||||||
if (sTimerDigits[4] & 1) {
|
if (timerDigits[4] & 1) {
|
||||||
Audio_PlaySoundGeneral(NA_SE_SY_WARNING_COUNT_N, &D_801333D4, 4, &D_801333E0,
|
Audio_PlaySoundGeneral(NA_SE_SY_WARNING_COUNT_N, &D_801333D4, 4, &D_801333E0,
|
||||||
&D_801333E0, &D_801333E8);
|
&D_801333E0, &D_801333E8);
|
||||||
}
|
}
|
||||||
|
@ -3530,21 +3520,20 @@ void Interface_Draw(GlobalContext* globalCtx) {
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 13:
|
case 13:
|
||||||
phi_s3 = (gSaveContext.timerX[0] - 26) / D_8015FFE2;
|
svar1 = (((void)0, gSaveContext.timerX[0]) - 26) / D_8015FFE2;
|
||||||
gSaveContext.timerX[0] -= phi_s3;
|
gSaveContext.timerX[0] = ((void)0, gSaveContext.timerX[0]) - svar1;
|
||||||
|
|
||||||
if (gSaveContext.healthCapacity > 0xA0) {
|
if (gSaveContext.healthCapacity > 0xA0) {
|
||||||
phi_s3 = (gSaveContext.timerY[0] - 54) / D_8015FFE2;
|
svar1 = (gSaveContext.timerY[0] - 54) / D_8015FFE2;
|
||||||
} else {
|
} else {
|
||||||
phi_s3 = (gSaveContext.timerY[0] - 46) / D_8015FFE2;
|
svar1 = (gSaveContext.timerY[0] - 46) / D_8015FFE2;
|
||||||
}
|
}
|
||||||
gSaveContext.timerY[0] -= phi_s3;
|
gSaveContext.timerY[0] = ((void)0, gSaveContext.timerY[0]) - svar1;
|
||||||
|
|
||||||
D_8015FFE2--;
|
D_8015FFE2--;
|
||||||
if (D_8015FFE2 == 0) {
|
if (D_8015FFE2 == 0) {
|
||||||
gSaveContext.timerX[0] = 26;
|
|
||||||
D_8015FFE2 = 20;
|
D_8015FFE2 = 20;
|
||||||
|
gSaveContext.timerX[0] = 26;
|
||||||
if (gSaveContext.healthCapacity > 0xA0) {
|
if (gSaveContext.healthCapacity > 0xA0) {
|
||||||
gSaveContext.timerY[0] = 54;
|
gSaveContext.timerY[0] = 54;
|
||||||
} else {
|
} else {
|
||||||
|
@ -3569,8 +3558,8 @@ void Interface_Draw(GlobalContext* globalCtx) {
|
||||||
D_8015FFE0 = 20;
|
D_8015FFE0 = 20;
|
||||||
|
|
||||||
if (gSaveContext.timer1Value == 3599) {
|
if (gSaveContext.timer1Value == 3599) {
|
||||||
gSaveContext.timer1State = 15;
|
|
||||||
D_8015FFE2 = 40;
|
D_8015FFE2 = 40;
|
||||||
|
gSaveContext.timer1State = 15;
|
||||||
} else {
|
} else {
|
||||||
Audio_PlaySoundGeneral(NA_SE_SY_WARNING_COUNT_N, &D_801333D4, 4, &D_801333E0,
|
Audio_PlaySoundGeneral(NA_SE_SY_WARNING_COUNT_N, &D_801333D4, 4, &D_801333E0,
|
||||||
&D_801333E0, &D_801333E8);
|
&D_801333E0, &D_801333E8);
|
||||||
|
@ -3580,11 +3569,12 @@ void Interface_Draw(GlobalContext* globalCtx) {
|
||||||
break;
|
break;
|
||||||
case 10:
|
case 10:
|
||||||
if (gSaveContext.timer2State != 0) {
|
if (gSaveContext.timer2State != 0) {
|
||||||
|
D_8015FFE6 = 20;
|
||||||
|
D_8015FFE4 = 20;
|
||||||
gSaveContext.timerX[1] = 140;
|
gSaveContext.timerX[1] = 140;
|
||||||
gSaveContext.timerY[1] = 80;
|
gSaveContext.timerY[1] = 80;
|
||||||
D_8015FFE4 = D_8015FFE6 = 20;
|
|
||||||
|
|
||||||
if (gSaveContext.timer2State < 7) {
|
if (gSaveContext.timer2State <= 7) {
|
||||||
gSaveContext.timer2State = 2;
|
gSaveContext.timer2State = 2;
|
||||||
} else {
|
} else {
|
||||||
gSaveContext.timer2State = 8;
|
gSaveContext.timer2State = 8;
|
||||||
|
@ -3594,17 +3584,17 @@ void Interface_Draw(GlobalContext* globalCtx) {
|
||||||
} else {
|
} else {
|
||||||
gSaveContext.timer1State = 0;
|
gSaveContext.timer1State = 0;
|
||||||
}
|
}
|
||||||
break;
|
|
||||||
case 15:
|
case 15:
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
sp274 = 1;
|
svar6 = 1;
|
||||||
switch (gSaveContext.timer2State) {
|
switch (gSaveContext.timer2State) {
|
||||||
case 1:
|
case 1:
|
||||||
case 7:
|
case 7:
|
||||||
|
D_8015FFE6 = 20;
|
||||||
|
D_8015FFE4 = 20;
|
||||||
gSaveContext.timerX[1] = 140;
|
gSaveContext.timerX[1] = 140;
|
||||||
gSaveContext.timerY[1] = 80;
|
gSaveContext.timerX[1] = 80;
|
||||||
D_8015FFE4 = D_8015FFE6 = 20;
|
|
||||||
if (gSaveContext.timer2State == 1) {
|
if (gSaveContext.timer2State == 1) {
|
||||||
gSaveContext.timer2State = 2;
|
gSaveContext.timer2State = 2;
|
||||||
} else {
|
} else {
|
||||||
|
@ -3628,20 +3618,20 @@ void Interface_Draw(GlobalContext* globalCtx) {
|
||||||
osSyncPrintf("event_xp[1]=%d, event_yp[1]=%d TOTAL_EVENT_TM=%d\n", gSaveContext.timerX[1],
|
osSyncPrintf("event_xp[1]=%d, event_yp[1]=%d TOTAL_EVENT_TM=%d\n", gSaveContext.timerX[1],
|
||||||
gSaveContext.timerY[1], gSaveContext.timer2Value);
|
gSaveContext.timerY[1], gSaveContext.timer2Value);
|
||||||
|
|
||||||
phi_s3 = (gSaveContext.timerX[1] - 26) / D_8015FFE2;
|
svar1 = (((void)0, gSaveContext.timerX[1]) - 26) / D_8015FFE6;
|
||||||
gSaveContext.timerX[1] -= phi_s3;
|
gSaveContext.timerX[1] = ((void)0, gSaveContext.timerX[1]) - svar1;
|
||||||
|
|
||||||
if (gSaveContext.healthCapacity > 0xA0) {
|
if (gSaveContext.healthCapacity > 0xA0) {
|
||||||
phi_s3 = (gSaveContext.timerY[1] - 54) / D_8015FFE6;
|
svar1 = (((void)0, gSaveContext.timerY[1]) - 54) / D_8015FFE6;
|
||||||
} else {
|
} else {
|
||||||
phi_s3 = (gSaveContext.timerY[1] - 46) / D_8015FFE6;
|
svar1 = (((void)0, gSaveContext.timerY[1]) - 46) / D_8015FFE6;
|
||||||
}
|
}
|
||||||
gSaveContext.timerY[1] -= phi_s3;
|
gSaveContext.timerY[1] = ((void)0, gSaveContext.timerY[1]) - svar1;
|
||||||
|
|
||||||
D_8015FFE6--;
|
D_8015FFE6--;
|
||||||
if (D_8015FFE6 == 0) {
|
if (D_8015FFE6 == 0) {
|
||||||
gSaveContext.timerX[1] = 26;
|
|
||||||
D_8015FFE6 = 20;
|
D_8015FFE6 = 20;
|
||||||
|
gSaveContext.timerX[1] = 26;
|
||||||
|
|
||||||
if (gSaveContext.healthCapacity > 0xA0) {
|
if (gSaveContext.healthCapacity > 0xA0) {
|
||||||
gSaveContext.timerY[1] = 54;
|
gSaveContext.timerY[1] = 54;
|
||||||
|
@ -3679,23 +3669,22 @@ void Interface_Draw(GlobalContext* globalCtx) {
|
||||||
(globalCtx->sceneNum != SCENE_GANON_FINAL) &&
|
(globalCtx->sceneNum != SCENE_GANON_FINAL) &&
|
||||||
(globalCtx->sceneNum != SCENE_GANON_SONOGO) &&
|
(globalCtx->sceneNum != SCENE_GANON_SONOGO) &&
|
||||||
(globalCtx->sceneNum != SCENE_GANONTIKA_SONOGO))) {
|
(globalCtx->sceneNum != SCENE_GANONTIKA_SONOGO))) {
|
||||||
|
D_8015FFE6 = 40;
|
||||||
gSaveContext.timer2State = 5;
|
gSaveContext.timer2State = 5;
|
||||||
gSaveContext.cutsceneIndex = 0;
|
gSaveContext.cutsceneIndex = 0;
|
||||||
D_8015FFE6 = 40;
|
|
||||||
func_8010B680(globalCtx, 0x71B0, NULL);
|
func_8010B680(globalCtx, 0x71B0, NULL);
|
||||||
func_8002DF54(globalCtx, 0, 8);
|
func_8002DF54(globalCtx, NULL, 8);
|
||||||
} else {
|
} else {
|
||||||
gSaveContext.timer2State = 6;
|
|
||||||
D_8015FFE6 = 40;
|
D_8015FFE6 = 40;
|
||||||
|
gSaveContext.timer2State = 7;
|
||||||
}
|
}
|
||||||
} else {
|
} else if (gSaveContext.timer2Value > 60) {
|
||||||
if (gSaveContext.timer2Value > 60) {
|
if (timerDigits[4] == 1) {
|
||||||
if (sTimerDigits[4] == 1) {
|
|
||||||
Audio_PlaySoundGeneral(NA_SE_SY_MESSAGE_WOMAN, &D_801333D4, 4,
|
Audio_PlaySoundGeneral(NA_SE_SY_MESSAGE_WOMAN, &D_801333D4, 4,
|
||||||
&D_801333E0, &D_801333E0, &D_801333E8);
|
&D_801333E0, &D_801333E0, &D_801333E8);
|
||||||
}
|
}
|
||||||
} else if (gSaveContext.timer2Value > 10) {
|
} else if (gSaveContext.timer2Value > 10) {
|
||||||
if (sTimerDigits[4] & 1) {
|
if ((timerDigits[4] & 1)) {
|
||||||
Audio_PlaySoundGeneral(NA_SE_SY_WARNING_COUNT_N, &D_801333D4, 4,
|
Audio_PlaySoundGeneral(NA_SE_SY_WARNING_COUNT_N, &D_801333D4, 4,
|
||||||
&D_801333E0, &D_801333E0, &D_801333E8);
|
&D_801333E0, &D_801333E0, &D_801333E8);
|
||||||
}
|
}
|
||||||
|
@ -3703,14 +3692,13 @@ void Interface_Draw(GlobalContext* globalCtx) {
|
||||||
Audio_PlaySoundGeneral(NA_SE_SY_WARNING_COUNT_E, &D_801333D4, 4,
|
Audio_PlaySoundGeneral(NA_SE_SY_WARNING_COUNT_E, &D_801333D4, 4,
|
||||||
&D_801333E0, &D_801333E0, &D_801333E8);
|
&D_801333E0, &D_801333E0, &D_801333E8);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
gSaveContext.timer2Value++;
|
gSaveContext.timer2Value++;
|
||||||
if (gSaveContext.eventInf[1] & 1) {
|
if (gSaveContext.eventInf[1] & 1) {
|
||||||
if (gSaveContext.timer2Value == 240) {
|
if (gSaveContext.timer2Value == 240) {
|
||||||
func_8010B680(globalCtx, 0x6083, NULL);
|
func_8010B680(globalCtx, 0x6083, NULL);
|
||||||
gSaveContext.timer2State = 0;
|
|
||||||
gSaveContext.eventInf[1] &= ~1;
|
gSaveContext.eventInf[1] &= ~1;
|
||||||
|
gSaveContext.timer2State = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -3729,39 +3717,41 @@ void Interface_Draw(GlobalContext* globalCtx) {
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (((gSaveContext.timer1State != 0) && (gSaveContext.timer1State != 10)) ||
|
if (((gSaveContext.timer1State != 0) && (gSaveContext.timer1State != 10)) ||
|
||||||
(gSaveContext.timer2State != 0)) {
|
(gSaveContext.timer2State != 0)) {
|
||||||
sTimerDigits[0] = sTimerDigits[1] = sTimerDigits[3] = 0;
|
timerDigits[0] = timerDigits[1] = timerDigits[3] = 0;
|
||||||
sTimerDigits[2] = 10; // digit 10 is used as ':' (colon)
|
timerDigits[2] = 10; // digit 10 is used as ':' (colon)
|
||||||
|
|
||||||
if (gSaveContext.timer1State != 0) {
|
if (gSaveContext.timer1State != 0) {
|
||||||
sTimerDigits[4] = gSaveContext.timer1Value;
|
timerDigits[4] = gSaveContext.timer1Value;
|
||||||
} else {
|
} else {
|
||||||
sTimerDigits[4] = gSaveContext.timer2Value;
|
timerDigits[4] = gSaveContext.timer2Value;
|
||||||
}
|
}
|
||||||
|
|
||||||
while (sTimerDigits[4] >= 60) {
|
while (timerDigits[4] >= 60) {
|
||||||
sTimerDigits[1]++;
|
timerDigits[1]++;
|
||||||
if (sTimerDigits[1] >= 10) {
|
if (timerDigits[1] >= 10) {
|
||||||
sTimerDigits[1] -= 10;
|
timerDigits[0]++;
|
||||||
sTimerDigits[0]++;
|
timerDigits[1] -= 10;
|
||||||
}
|
}
|
||||||
sTimerDigits[4] -= 60;
|
timerDigits[4] -= 60;
|
||||||
}
|
}
|
||||||
|
|
||||||
while (sTimerDigits[4] >= 10) {
|
while (timerDigits[4] >= 10) {
|
||||||
sTimerDigits[4] -= 10;
|
timerDigits[3]++;
|
||||||
sTimerDigits[3]++;
|
timerDigits[4] -= 10;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Clock Icon
|
// Clock Icon
|
||||||
gDPPipeSync(OVERLAY_DISP++);
|
gDPPipeSync(OVERLAY_DISP++);
|
||||||
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 255, 255, 255, 255);
|
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 255, 255, 255, 255);
|
||||||
gDPSetEnvColor(OVERLAY_DISP++, 0, 0, 0, 0);
|
gDPSetEnvColor(OVERLAY_DISP++, 0, 0, 0, 0);
|
||||||
OVERLAY_DISP = Gfx_TextureIA8(OVERLAY_DISP, D_02002000, 16, 16, gSaveContext.timerX[sp274],
|
OVERLAY_DISP =
|
||||||
gSaveContext.timerY[sp274] + 2, 16, 16, 1024, 1024);
|
Gfx_TextureIA8(OVERLAY_DISP, gClockIconTex, 16, 16, ((void)0, gSaveContext.timerX[svar6]),
|
||||||
|
((void)0, gSaveContext.timerY[svar6]) + 2, 16, 16, 1 << 10, 1 << 10);
|
||||||
|
|
||||||
// Timer Counter
|
// Timer Counter
|
||||||
gDPPipeSync(OVERLAY_DISP++);
|
gDPPipeSync(OVERLAY_DISP++);
|
||||||
|
@ -3781,11 +3771,12 @@ void Interface_Draw(GlobalContext* globalCtx) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (phi_s3 = 0; phi_s3 < 5; phi_s3++) {
|
for (svar1 = 0; svar1 < 5; svar1++) {
|
||||||
OVERLAY_DISP = Gfx_TextureI8(OVERLAY_DISP, D_02003040[sTimerDigits[phi_s3]], 8, 16,
|
OVERLAY_DISP =
|
||||||
gSaveContext.timerX[sp274] + sTimerDigitLeftPos[phi_s3],
|
Gfx_TextureI8(OVERLAY_DISP, ((u8*)gCounterDigit0Tex + (8 * 16 * timerDigits[svar1])), 8, 16,
|
||||||
gSaveContext.timerY[sp274], sDigitWidth[phi_s3], VREG(42),
|
((void)0, gSaveContext.timerX[svar6]) + timerDigitLeftPos[svar1],
|
||||||
VREG(43) * 2, VREG(43) * 2);
|
((void)0, gSaveContext.timerY[svar6]), digitWidth[svar1], VREG(42), VREG(43) << 1,
|
||||||
|
VREG(43) << 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -3805,11 +3796,25 @@ void Interface_Draw(GlobalContext* globalCtx) {
|
||||||
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_parameter.c", 4269);
|
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_parameter.c", 4269);
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
s16 D_8015FFE0;
|
static s16 magicArrowEffectsR[] = { 255, 100, 255 };
|
||||||
s16 D_8015FFE2;
|
static s16 magicArrowEffectsG[] = { 0, 100, 255 };
|
||||||
s16 D_8015FFE4;
|
static s16 magicArrowEffectsB[] = { 0, 255, 100 };
|
||||||
s16 D_8015FFE6;
|
static s16 timerDigitLeftPos[] = { 16, 25, 34, 42, 51 };
|
||||||
s16 sTimerDigits[5];
|
static s16 digitWidth[] = { 9, 9, 8, 9, 9 };
|
||||||
|
// unused, most likely colors
|
||||||
|
static s16 D_80125B1C[][3] = {
|
||||||
|
{ 0, 150, 0 }, { 100, 255, 0 }, { 255, 255, 255 }, { 0, 0, 0 }, { 255, 255, 255 },
|
||||||
|
};
|
||||||
|
static s16 rupeeDigitsFirst[] = { 1, 0, 0 };
|
||||||
|
static s16 rupeeDigitsCount[] = { 2, 3, 3 };
|
||||||
|
static s16 spoilingItemEntrances[] = { 0x01AD, 0x0153, 0x0153 };
|
||||||
|
static f32 D_80125B54[] = { -40.0f, -35.0f }; // unused
|
||||||
|
static s16 D_80125B5C[] = { 91, 91 }; // unused
|
||||||
|
static s16 D_8015FFE0;
|
||||||
|
static s16 D_8015FFE2;
|
||||||
|
static s16 D_8015FFE4;
|
||||||
|
static s16 D_8015FFE6;
|
||||||
|
static s16 timerDigits[5];
|
||||||
#pragma GLOBAL_ASM("asm/non_matchings/code/z_parameter/Interface_Draw.s")
|
#pragma GLOBAL_ASM("asm/non_matchings/code/z_parameter/Interface_Draw.s")
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -60,8 +60,8 @@ Gfx* VisMono_DrawTexture(VisMono* this, Gfx* gfx) {
|
||||||
G_TX_NOMIRROR | G_TX_CLAMP, 0, 0);
|
G_TX_NOMIRROR | G_TX_CLAMP, 0, 0);
|
||||||
gDPSetTileSize(gfx++, 1, (1 << 2), 0, ((SCREEN_WIDTH * 2) << 2), (2 << 2));
|
gDPSetTileSize(gfx++, 1, (1 << 2), 0, ((SCREEN_WIDTH * 2) << 2), (2 << 2));
|
||||||
|
|
||||||
gSPTextureRectangle(gfx++, 0, (y) << 2, (SCREEN_WIDTH << 2), (y + height) << 2, G_TX_RENDERTILE, 2 << 5, 0,
|
gSPTextureRectangle(gfx++, 0, y << 2, (SCREEN_WIDTH << 2), (y + height) << 2, G_TX_RENDERTILE, 2 << 5, 0,
|
||||||
(2 << 10), (1 << 10));
|
2 << 10, 1 << 10);
|
||||||
tex += SCREEN_WIDTH * height;
|
tex += SCREEN_WIDTH * height;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -342,7 +342,7 @@ void EnMag_DrawImageRGBA32(Gfx** gfxp, s16 centerX, s16 centerY, u8* source, u32
|
||||||
gDPLoadTile(gfx++, G_TX_LOADTILE, 0, 0, (width - 1) << 2, (textureHeight - 1) << 2);
|
gDPLoadTile(gfx++, G_TX_LOADTILE, 0, 0, (width - 1) << 2, (textureHeight - 1) << 2);
|
||||||
|
|
||||||
gSPTextureRectangle(gfx++, rectLeft << 2, rectTop << 2, (rectLeft + (s32)width) << 2,
|
gSPTextureRectangle(gfx++, rectLeft << 2, rectTop << 2, (rectLeft + (s32)width) << 2,
|
||||||
(rectTop + textureHeight) << 2, G_TX_RENDERTILE, 0, 0, 1024, 1024);
|
(rectTop + textureHeight) << 2, G_TX_RENDERTILE, 0, 0, 1 << 10, 1 << 10);
|
||||||
|
|
||||||
curTexture += textureSize;
|
curTexture += textureSize;
|
||||||
rectTop += textureHeight;
|
rectTop += textureHeight;
|
||||||
|
@ -477,7 +477,7 @@ void EnMag_DrawInner(Actor* thisx, GlobalContext* globalCtx, Gfx** gfxp) {
|
||||||
gDPLoadTextureBlock(gfx++, D_06019A00, G_IM_FMT_IA, G_IM_SIZ_8b, 160, 16, 0, G_TX_NOMIRROR | G_TX_CLAMP,
|
gDPLoadTextureBlock(gfx++, D_06019A00, G_IM_FMT_IA, G_IM_SIZ_8b, 160, 16, 0, G_TX_NOMIRROR | G_TX_CLAMP,
|
||||||
G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||||
|
|
||||||
gSPTextureRectangle(gfx++, 312, 792, 952, 856, G_TX_RENDERTILE, 0, 0, 1024, 1024);
|
gSPTextureRectangle(gfx++, 312, 792, 952, 856, G_TX_RENDERTILE, 0, 0, 1 << 10, 1 << 10);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (gSaveContext.fileNum == 0xFEDC) {
|
if (gSaveContext.fileNum == 0xFEDC) {
|
||||||
|
|
|
@ -94,20 +94,19 @@ void EndTitle_Draw(Actor* thisx, GlobalContext* globalCtx) {
|
||||||
gDPSetPrimColor(OVERLAY_DISP++, 0x00, 0x80, 0, 0, 0, this->endAlpha);
|
gDPSetPrimColor(OVERLAY_DISP++, 0x00, 0x80, 0, 0, 0, this->endAlpha);
|
||||||
gDPLoadTextureTile(OVERLAY_DISP++, D_80B670E0, G_IM_FMT_IA, G_IM_SIZ_8b, 80, 24, 0, 0, 80, 24, 0,
|
gDPLoadTextureTile(OVERLAY_DISP++, D_80B670E0, G_IM_FMT_IA, G_IM_SIZ_8b, 80, 24, 0, 0, 80, 24, 0,
|
||||||
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, 0, 0, 0, 0);
|
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, 0, 0, 0, 0);
|
||||||
gSPTextureRectangle(OVERLAY_DISP++, (120 << 2), (90 << 2), (200 << 2), (113 << 2), G_TX_RENDERTILE, 0, 0, (32 << 5),
|
gSPTextureRectangle(OVERLAY_DISP++, 120 << 2, 90 << 2, 200 << 2, 113 << 2, G_TX_RENDERTILE, 0, 0, 1 << 10, 1 << 10);
|
||||||
(32 << 5));
|
|
||||||
gDPPipeSync(OVERLAY_DISP++);
|
gDPPipeSync(OVERLAY_DISP++);
|
||||||
gDPSetPrimColor(OVERLAY_DISP++, 0x00, 0x80, 0, 0, 0, this->tlozAlpha);
|
gDPSetPrimColor(OVERLAY_DISP++, 0x00, 0x80, 0, 0, 0, this->tlozAlpha);
|
||||||
gDPLoadTextureTile(OVERLAY_DISP++, D_80B65EA0, G_IM_FMT_IA, G_IM_SIZ_8b, 120, 24, 0, 0, 120, 24, 0,
|
gDPLoadTextureTile(OVERLAY_DISP++, D_80B65EA0, G_IM_FMT_IA, G_IM_SIZ_8b, 120, 24, 0, 0, 120, 24, 0,
|
||||||
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, 0, 0, 0, 0);
|
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, 0, 0, 0, 0);
|
||||||
gSPTextureRectangle(OVERLAY_DISP++, (100 << 2), (160 << 2), (220 << 2), (183 << 2), G_TX_RENDERTILE, 0, 0,
|
gSPTextureRectangle(OVERLAY_DISP++, 100 << 2, 160 << 2, 220 << 2, 183 << 2, G_TX_RENDERTILE, 0, 0, 1 << 10,
|
||||||
(32 << 5), (32 << 5));
|
1 << 10);
|
||||||
gDPPipeSync(OVERLAY_DISP++);
|
gDPPipeSync(OVERLAY_DISP++);
|
||||||
gDPSetPrimColor(OVERLAY_DISP++, 0x00, 0x80, 0, 0, 0, this->ootAlpha);
|
gDPSetPrimColor(OVERLAY_DISP++, 0x00, 0x80, 0, 0, 0, this->ootAlpha);
|
||||||
gDPLoadTextureTile(OVERLAY_DISP++, D_80B669E0, G_IM_FMT_IA, G_IM_SIZ_8b, 112, 16, 0, 0, 112, 16, 0,
|
gDPLoadTextureTile(OVERLAY_DISP++, D_80B669E0, G_IM_FMT_IA, G_IM_SIZ_8b, 112, 16, 0, 0, 112, 16, 0,
|
||||||
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, 0, 0, 0, 0);
|
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, 0, 0, 0, 0);
|
||||||
gSPTextureRectangle(OVERLAY_DISP++, (104 << 2), (177 << 2), (216 << 2), (192 << 2), G_TX_RENDERTILE, 0, 0,
|
gSPTextureRectangle(OVERLAY_DISP++, 104 << 2, 177 << 2, 216 << 2, 192 << 2, G_TX_RENDERTILE, 0, 0, 1 << 10,
|
||||||
(32 << 5), (32 << 5));
|
1 << 10);
|
||||||
|
|
||||||
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_end_title.c", 515);
|
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_end_title.c", 515);
|
||||||
}
|
}
|
||||||
|
|
|
@ -32,7 +32,7 @@ void KaleidoScope_DrawQuestStatus(GlobalContext* globalCtx, GraphicsContext* gfx
|
||||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
};
|
};
|
||||||
static void* D_8082A130[] = {
|
static void* D_8082A130[] = {
|
||||||
gHUDButtonATex, gHUDButtonCDownTex, gHUDButtonCRightTex, gHUDButtonCLeftTex, gHUDButtonCUpTex,
|
gOcarinaATex, gOcarinaCDownTex, gOcarinaCRightTex, gOcarinaCLeftTex, gOcarinaCUpTex,
|
||||||
};
|
};
|
||||||
static u16 D_8082A144[] = {
|
static u16 D_8082A144[] = {
|
||||||
0xFFCC, 0xFFCC, 0xFFCC, 0xFFCC, 0xFFCC,
|
0xFFCC, 0xFFCC, 0xFFCC, 0xFFCC, 0xFFCC,
|
||||||
|
@ -654,9 +654,9 @@ void KaleidoScope_DrawQuestStatus(GlobalContext* globalCtx, GraphicsContext* gfx
|
||||||
phi_s0 = 0;
|
phi_s0 = 0;
|
||||||
for (sp218 = 0; sp218 < 3; sp218++, sp21A += 4) {
|
for (sp218 = 0; sp218 < 3; sp218++, sp21A += 4) {
|
||||||
if ((sp218 >= 2) || (sp208[sp218] != 0) || (phi_s0 != 0)) {
|
if ((sp218 >= 2) || (sp208[sp218] != 0) || (phi_s0 != 0)) {
|
||||||
gDPLoadTextureBlock(POLY_OPA_DISP++, D_02003040[sp208[sp218]], G_IM_FMT_I, G_IM_SIZ_8b, 8, 16, 0,
|
gDPLoadTextureBlock(POLY_OPA_DISP++, ((u8*)gCounterDigit0Tex + (8 * 16 * sp208[sp218])), G_IM_FMT_I,
|
||||||
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK,
|
G_IM_SIZ_8b, 8, 16, 0, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP,
|
||||||
G_TX_NOLOD, G_TX_NOLOD);
|
G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||||
if (1) {}
|
if (1) {}
|
||||||
|
|
||||||
gSP1Quadrangle(POLY_OPA_DISP++, sp21A, sp21A + 2, sp21A + 3, sp21A + 1, 0);
|
gSP1Quadrangle(POLY_OPA_DISP++, sp21A, sp21A + 2, sp21A + 3, sp21A + 1, 0);
|
||||||
|
@ -697,7 +697,7 @@ static u8 D_8082A124[] = {
|
||||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
};
|
};
|
||||||
static void* D_8082A130[] = {
|
static void* D_8082A130[] = {
|
||||||
gHUDButtonATex, gHUDButtonCDownTex, gHUDButtonCRightTex, gHUDButtonCLeftTex, gHUDButtonCUpTex,
|
gOcarinaATex, gOcarinaCDownTex, gOcarinaCRightTex, gOcarinaCLeftTex, gOcarinaCUpTex,
|
||||||
};
|
};
|
||||||
static u16 D_8082A144[] = {
|
static u16 D_8082A144[] = {
|
||||||
0xFFCC, 0xFFCC, 0xFFCC, 0xFFCC, 0xFFCC,
|
0xFFCC, 0xFFCC, 0xFFCC, 0xFFCC, 0xFFCC,
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
#include "z_kaleido_scope.h"
|
#include "z_kaleido_scope.h"
|
||||||
|
#include "textures/parameter_static/parameter_static.h"
|
||||||
|
|
||||||
// Positions of each input section in the editor
|
// Positions of each input section in the editor
|
||||||
static u16 sSectionPositions[][2] = {
|
static u16 sSectionPositions[][2] = {
|
||||||
|
@ -81,11 +82,11 @@ void KaleidoScope_DrawDebugEditorText(Gfx** gfxp) {
|
||||||
void KaleidoScope_DrawDigit(GlobalContext* globalCtx, s32 digit, s32 rectLeft, s32 rectTop) {
|
void KaleidoScope_DrawDigit(GlobalContext* globalCtx, s32 digit, s32 rectLeft, s32 rectTop) {
|
||||||
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_kaleido_debug.c", 208);
|
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_kaleido_debug.c", 208);
|
||||||
|
|
||||||
gDPLoadTextureBlock(POLY_OPA_DISP++, D_02003040[digit], G_IM_FMT_I, G_IM_SIZ_8b, 8, 16, 0,
|
gDPLoadTextureBlock(POLY_OPA_DISP++, ((u8*)gCounterDigit0Tex + (8 * 16 * digit)), G_IM_FMT_I, G_IM_SIZ_8b, 8, 16, 0,
|
||||||
G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD,
|
G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD,
|
||||||
G_TX_NOLOD);
|
G_TX_NOLOD);
|
||||||
gSPTextureRectangle(POLY_OPA_DISP++, rectLeft << 2, rectTop << 2, (rectLeft + 8) << 2, (rectTop + 16) << 2,
|
gSPTextureRectangle(POLY_OPA_DISP++, rectLeft << 2, rectTop << 2, (rectLeft + 8) << 2, (rectTop + 16) << 2,
|
||||||
G_TX_RENDERTILE, 0, 0, 1024, 1024);
|
G_TX_RENDERTILE, 0, 0, 1 << 10, 1 << 10);
|
||||||
|
|
||||||
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_kaleido_debug.c", 220);
|
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_kaleido_debug.c", 220);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
#include "z_kaleido_scope.h"
|
#include "z_kaleido_scope.h"
|
||||||
#include "textures/icon_item_static/icon_item_static.h"
|
#include "textures/icon_item_static/icon_item_static.h"
|
||||||
|
#include "textures/parameter_static/parameter_static.h"
|
||||||
|
|
||||||
static u8 sChildUpgrades[] = { UPG_BULLET_BAG, UPG_BOMB_BAG, UPG_STRENGTH, UPG_SCALE };
|
static u8 sChildUpgrades[] = { UPG_BULLET_BAG, UPG_BOMB_BAG, UPG_STRENGTH, UPG_SCALE };
|
||||||
static u8 sAdultUpgrades[] = { UPG_QUIVER, UPG_BOMB_BAG, UPG_STRENGTH, UPG_SCALE };
|
static u8 sAdultUpgrades[] = { UPG_QUIVER, UPG_BOMB_BAG, UPG_STRENGTH, UPG_SCALE };
|
||||||
|
@ -140,7 +141,7 @@ void KaleidoScope_DrawEquipment(GlobalContext* globalCtx) {
|
||||||
gDPPipeSync(POLY_OPA_DISP++);
|
gDPPipeSync(POLY_OPA_DISP++);
|
||||||
gSPVertex(POLY_OPA_DISP++, &pauseCtx->equipVtx[j], 4, 0);
|
gSPVertex(POLY_OPA_DISP++, &pauseCtx->equipVtx[j], 4, 0);
|
||||||
|
|
||||||
POLY_OPA_DISP = KaleidoScope_QuadTextureIA8(POLY_OPA_DISP, D_02000A00[1], 32, 32, 0);
|
POLY_OPA_DISP = KaleidoScope_QuadTextureIA8(POLY_OPA_DISP, gEquippedItemOutlineTex, 32, 32, 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
#include "z_kaleido_scope.h"
|
#include "z_kaleido_scope.h"
|
||||||
|
#include "textures/parameter_static/parameter_static.h"
|
||||||
|
|
||||||
u8 gAmmoItems[] = {
|
u8 gAmmoItems[] = {
|
||||||
ITEM_STICK, ITEM_NUT, ITEM_BOMB, ITEM_BOW, ITEM_NONE, ITEM_NONE, ITEM_SLINGSHOT, ITEM_NONE,
|
ITEM_STICK, ITEM_NUT, ITEM_BOMB, ITEM_BOW, ITEM_NONE, ITEM_NONE, ITEM_SLINGSHOT, ITEM_NONE,
|
||||||
|
@ -49,7 +50,7 @@ void KaleidoScope_DrawAmmoCount(PauseContext* pauseCtx, GraphicsContext* gfxCtx,
|
||||||
if (i != 0) {
|
if (i != 0) {
|
||||||
gSPVertex(POLY_OPA_DISP++, &pauseCtx->itemVtx[(sAmmoVtxOffset[item] + 27) * 4], 4, 0);
|
gSPVertex(POLY_OPA_DISP++, &pauseCtx->itemVtx[(sAmmoVtxOffset[item] + 27) * 4], 4, 0);
|
||||||
|
|
||||||
gDPLoadTextureBlock(POLY_OPA_DISP++, D_020035C0[i], G_IM_FMT_IA, G_IM_SIZ_8b, 8, 8, 0,
|
gDPLoadTextureBlock(POLY_OPA_DISP++, ((u8*)gAmmoDigit0Tex + (8 * 8 * i)), G_IM_FMT_IA, G_IM_SIZ_8b, 8, 8, 0,
|
||||||
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD,
|
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD,
|
||||||
G_TX_NOLOD);
|
G_TX_NOLOD);
|
||||||
|
|
||||||
|
@ -58,8 +59,9 @@ void KaleidoScope_DrawAmmoCount(PauseContext* pauseCtx, GraphicsContext* gfxCtx,
|
||||||
|
|
||||||
gSPVertex(POLY_OPA_DISP++, &pauseCtx->itemVtx[(sAmmoVtxOffset[item] + 28) * 4], 4, 0);
|
gSPVertex(POLY_OPA_DISP++, &pauseCtx->itemVtx[(sAmmoVtxOffset[item] + 28) * 4], 4, 0);
|
||||||
|
|
||||||
gDPLoadTextureBlock(POLY_OPA_DISP++, D_020035C0[ammo], G_IM_FMT_IA, G_IM_SIZ_8b, 8, 8, 0, G_TX_NOMIRROR | G_TX_WRAP,
|
gDPLoadTextureBlock(POLY_OPA_DISP++, ((u8*)gAmmoDigit0Tex + (8 * 8 * ammo)), G_IM_FMT_IA, G_IM_SIZ_8b, 8, 8, 0,
|
||||||
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD,
|
||||||
|
G_TX_NOLOD);
|
||||||
|
|
||||||
gSP1Quadrangle(POLY_OPA_DISP++, 0, 2, 3, 1, 0);
|
gSP1Quadrangle(POLY_OPA_DISP++, 0, 2, 3, 1, 0);
|
||||||
|
|
||||||
|
@ -75,11 +77,10 @@ void KaleidoScope_SetItemCursorVtx(PauseContext* pauseCtx) {
|
||||||
KaleidoScope_SetCursorVtx(pauseCtx, pauseCtx->cursorSlot[PAUSE_ITEM] * 4, pauseCtx->itemVtx);
|
KaleidoScope_SetCursorVtx(pauseCtx, pauseCtx->cursorSlot[PAUSE_ITEM] * 4, pauseCtx->itemVtx);
|
||||||
}
|
}
|
||||||
|
|
||||||
static s16 sMagicArrowEffectsR[] = { 255, 100, 255 };
|
|
||||||
static s16 sMagicArrowEffectsG[] = { 0, 100, 255 };
|
|
||||||
static s16 sMagicArrowEffectsB[] = { 0, 255, 100 };
|
|
||||||
|
|
||||||
void KaleidoScope_DrawItemSelect(GlobalContext* globalCtx) {
|
void KaleidoScope_DrawItemSelect(GlobalContext* globalCtx) {
|
||||||
|
static s16 magicArrowEffectsR[] = { 255, 100, 255 };
|
||||||
|
static s16 magicArrowEffectsG[] = { 0, 100, 255 };
|
||||||
|
static s16 magicArrowEffectsB[] = { 0, 255, 100 };
|
||||||
Input* input = &globalCtx->state.input[0];
|
Input* input = &globalCtx->state.input[0];
|
||||||
PauseContext* pauseCtx = &globalCtx->pauseCtx;
|
PauseContext* pauseCtx = &globalCtx->pauseCtx;
|
||||||
u16 i;
|
u16 i;
|
||||||
|
@ -416,7 +417,7 @@ void KaleidoScope_DrawItemSelect(GlobalContext* globalCtx) {
|
||||||
for (i = 0, j = 24 * 4; i < 3; i++, j += 4) {
|
for (i = 0, j = 24 * 4; i < 3; i++, j += 4) {
|
||||||
if (gSaveContext.equips.buttonItems[i + 1] != ITEM_NONE) {
|
if (gSaveContext.equips.buttonItems[i + 1] != ITEM_NONE) {
|
||||||
gSPVertex(POLY_OPA_DISP++, &pauseCtx->itemVtx[j], 4, 0);
|
gSPVertex(POLY_OPA_DISP++, &pauseCtx->itemVtx[j], 4, 0);
|
||||||
POLY_OPA_DISP = KaleidoScope_QuadTextureIA8(POLY_OPA_DISP, D_02000A00[1], 32, 32, 0);
|
POLY_OPA_DISP = KaleidoScope_QuadTextureIA8(POLY_OPA_DISP, gEquippedItemOutlineTex, 32, 32, 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -430,9 +431,9 @@ void KaleidoScope_DrawItemSelect(GlobalContext* globalCtx) {
|
||||||
if ((pauseCtx->unk_1E4 == 0) && (pauseCtx->pageIndex == PAUSE_ITEM) && (pauseCtx->cursorSpecialPos == 0)) {
|
if ((pauseCtx->unk_1E4 == 0) && (pauseCtx->pageIndex == PAUSE_ITEM) && (pauseCtx->cursorSpecialPos == 0)) {
|
||||||
if ((gSlotAgeReqs[i] == 9) || (gSlotAgeReqs[i] == ((void)0, gSaveContext.linkAge))) {
|
if ((gSlotAgeReqs[i] == 9) || (gSlotAgeReqs[i] == ((void)0, gSaveContext.linkAge))) {
|
||||||
if ((sEquipState == 2) && (i == 3)) {
|
if ((sEquipState == 2) && (i == 3)) {
|
||||||
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, sMagicArrowEffectsR[pauseCtx->equipTargetItem - 0xBF],
|
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, magicArrowEffectsR[pauseCtx->equipTargetItem - 0xBF],
|
||||||
sMagicArrowEffectsG[pauseCtx->equipTargetItem - 0xBF],
|
magicArrowEffectsG[pauseCtx->equipTargetItem - 0xBF],
|
||||||
sMagicArrowEffectsB[pauseCtx->equipTargetItem - 0xBF], pauseCtx->alpha);
|
magicArrowEffectsB[pauseCtx->equipTargetItem - 0xBF], pauseCtx->alpha);
|
||||||
|
|
||||||
pauseCtx->itemVtx[j + 0].v.ob[0] = pauseCtx->itemVtx[j + 2].v.ob[0] =
|
pauseCtx->itemVtx[j + 0].v.ob[0] = pauseCtx->itemVtx[j + 2].v.ob[0] =
|
||||||
pauseCtx->itemVtx[j + 0].v.ob[0] - 2;
|
pauseCtx->itemVtx[j + 0].v.ob[0] - 2;
|
||||||
|
|
|
@ -2237,20 +2237,20 @@ void KaleidoScope_DrawGameOver(GlobalContext* globalCtx) {
|
||||||
gDPSetTileSize(POLY_OPA_DISP++, 1, 0, VREG(89) & 0x7F, 252, (VREG(89) & 0x7F) + 0x7C);
|
gDPSetTileSize(POLY_OPA_DISP++, 1, 0, VREG(89) & 0x7F, 252, (VREG(89) & 0x7F) + 0x7C);
|
||||||
|
|
||||||
gSPTextureRectangle(POLY_OPA_DISP++, VREG(87) << 2, VREG(88) << 2, (VREG(87) + 64) << 2, (VREG(88) + 32) << 2,
|
gSPTextureRectangle(POLY_OPA_DISP++, VREG(87) << 2, VREG(88) << 2, (VREG(87) + 64) << 2, (VREG(88) + 32) << 2,
|
||||||
G_TX_RENDERTILE, 0, 0, 1024, 1024);
|
G_TX_RENDERTILE, 0, 0, 1 << 10, 1 << 10);
|
||||||
|
|
||||||
gDPLoadMultiBlock(POLY_OPA_DISP++, gGameOverP2Tex, 0, 0, G_IM_FMT_IA, G_IM_SIZ_8b, 64, 32, 0,
|
gDPLoadMultiBlock(POLY_OPA_DISP++, gGameOverP2Tex, 0, 0, G_IM_FMT_IA, G_IM_SIZ_8b, 64, 32, 0,
|
||||||
G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD,
|
G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD,
|
||||||
G_TX_NOLOD);
|
G_TX_NOLOD);
|
||||||
|
|
||||||
gSPTextureRectangle(POLY_OPA_DISP++, (VREG(87) + 64) << 2, VREG(88) << 2, (VREG(87) + 128) << 2,
|
gSPTextureRectangle(POLY_OPA_DISP++, (VREG(87) + 64) << 2, VREG(88) << 2, (VREG(87) + 128) << 2,
|
||||||
(VREG(88) + 32) << 2, G_TX_RENDERTILE, 0, 0, 1024, 1024);
|
(VREG(88) + 32) << 2, G_TX_RENDERTILE, 0, 0, 1 << 10, 1 << 10);
|
||||||
|
|
||||||
gDPLoadMultiBlock(POLY_OPA_DISP++, gGameOverP3Tex, 0, 0, G_IM_FMT_IA, G_IM_SIZ_8b, 64, 32, 0,
|
gDPLoadMultiBlock(POLY_OPA_DISP++, gGameOverP3Tex, 0, 0, G_IM_FMT_IA, G_IM_SIZ_8b, 64, 32, 0,
|
||||||
G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD,
|
G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD,
|
||||||
G_TX_NOLOD);
|
G_TX_NOLOD);
|
||||||
gSPTextureRectangle(POLY_OPA_DISP++, (VREG(87) + 128) << 2, VREG(88) << 2, (VREG(87) + 192) << 2,
|
gSPTextureRectangle(POLY_OPA_DISP++, (VREG(87) + 128) << 2, VREG(88) << 2, (VREG(87) + 192) << 2,
|
||||||
(VREG(88) + 32) << 2, G_TX_RENDERTILE, 0, 0, 1024, 1024);
|
(VREG(88) + 32) << 2, G_TX_RENDERTILE, 0, 0, 1 << 10, 1 << 10);
|
||||||
|
|
||||||
CLOSE_DISPS(gfxCtx, "../z_kaleido_scope_PAL.c", 3169);
|
CLOSE_DISPS(gfxCtx, "../z_kaleido_scope_PAL.c", 3169);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
#include "z_kaleido_scope.h"
|
#include "z_kaleido_scope.h"
|
||||||
|
#include "textures/parameter_static/parameter_static.h"
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
/* 0x00 */ void* texture;
|
/* 0x00 */ void* texture;
|
||||||
|
@ -13,8 +14,8 @@ typedef struct {
|
||||||
} PauseMapMarkInfo; // size = 0x24
|
} PauseMapMarkInfo; // size = 0x24
|
||||||
|
|
||||||
static PauseMapMarkInfo sMapMarkInfoTable[] = {
|
static PauseMapMarkInfo sMapMarkInfoTable[] = {
|
||||||
{ D_02002580, G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 8, 32, 32, 1024, 1024 }, // Chest Icon
|
{ gMapChestIconTex, G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 8, 32, 32, 1 << 10, 1 << 10 },
|
||||||
{ D_02002900, G_IM_FMT_IA, G_IM_SIZ_8b, 8, 8, 32, 32, 1024, 1024 }, // Boss Skull Icon
|
{ gMapBossIconTex, G_IM_FMT_IA, G_IM_SIZ_8b, 8, 8, 32, 32, 1 << 10, 1 << 10 },
|
||||||
};
|
};
|
||||||
|
|
||||||
static const u32 sBaseImageSizes[] = { 0, 1, 2, 3 };
|
static const u32 sBaseImageSizes[] = { 0, 1, 2, 3 };
|
||||||
|
|
|
@ -109,7 +109,7 @@ void Title_Draw(TitleContext* this) {
|
||||||
G_TX_NOLOD);
|
G_TX_NOLOD);
|
||||||
|
|
||||||
gDPSetTileSize(POLY_OPA_DISP++, 1, this->uls, (this->ult & 0x7F) - idx * 4, 0, 0);
|
gDPSetTileSize(POLY_OPA_DISP++, 1, this->uls, (this->ult & 0x7F) - idx * 4, 0, 0);
|
||||||
gSPTextureRectangle(POLY_OPA_DISP++, 388, y << 2, 1156, (y + 2) << 2, G_TX_RENDERTILE, 0, 0, 1024, 1024);
|
gSPTextureRectangle(POLY_OPA_DISP++, 388, y << 2, 1156, (y + 2) << 2, G_TX_RENDERTILE, 0, 0, 1 << 10, 1 << 10);
|
||||||
}
|
}
|
||||||
|
|
||||||
func_8007672C(this->state.gfxCtx, 0, 0, 0, (s16)this->coverAlpha, 2);
|
func_8007672C(this->state.gfxCtx, 0, 0, 0, (s16)this->coverAlpha, 2);
|
||||||
|
|
|
@ -58,27 +58,6 @@ D_A4800010 = 0xA4800010; // SI_PIF_ADDR_WR64B_REG
|
||||||
D_A4800018 = 0xA4800018; // SI_STATUS_REG
|
D_A4800018 = 0xA4800018; // SI_STATUS_REG
|
||||||
|
|
||||||
// segment addresses
|
// segment addresses
|
||||||
D_02000000 = 0x02000000;
|
|
||||||
D_02000400 = 0x02000400;
|
|
||||||
D_02000500 = 0x02000500;
|
|
||||||
D_02000900 = 0x02000900;
|
|
||||||
D_02000A00 = 0x02000A00;
|
|
||||||
D_02001E00 = 0x02001E00;
|
|
||||||
D_02001F00 = 0x02001F00;
|
|
||||||
D_02002000 = 0x02002000;
|
|
||||||
D_02002100 = 0x02002100;
|
|
||||||
D_02002500 = 0x02002500;
|
|
||||||
D_02002580 = 0x02002580;
|
|
||||||
D_02002600 = 0x02002600;
|
|
||||||
D_02002900 = 0x02002900;
|
|
||||||
D_02002E40 = 0x02002E40;
|
|
||||||
D_02002FC0 = 0x02002FC0;
|
|
||||||
D_02003040 = 0x02003040;
|
|
||||||
D_020035C0 = 0x020035C0;
|
|
||||||
D_020038C0 = 0x020038C0;
|
|
||||||
D_02003940 = 0x02003940;
|
|
||||||
D_02003AC0 = 0x02003AC0;
|
|
||||||
D_0201DA50 = 0x0201DA50;
|
|
||||||
D_0300AA48 = 0x0300AA48;
|
D_0300AA48 = 0x0300AA48;
|
||||||
D_03012B20 = 0x03012B20;
|
D_03012B20 = 0x03012B20;
|
||||||
D_06001220 = 0x06001220;
|
D_06001220 = 0x06001220;
|
||||||
|
@ -104,7 +83,6 @@ D_0602AFF0 = 0x0602AFF0;
|
||||||
D_07000000 = 0x07000000;
|
D_07000000 = 0x07000000;
|
||||||
D_070380D4 = 0x070380D4;
|
D_070380D4 = 0x070380D4;
|
||||||
D_0703811C = 0x0703811C;
|
D_0703811C = 0x0703811C;
|
||||||
D_080895C0 = 0x080895C0;
|
|
||||||
|
|
||||||
// z_skelanime
|
// z_skelanime
|
||||||
link_animetion_segment = 0x07000000;
|
link_animetion_segment = 0x07000000;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue