From 78049aa5c527f6908e813b76257f1295c1061080 Mon Sep 17 00:00:00 2001 From: Roman971 <32455037+Roman971@users.noreply.github.com> Date: Tue, 2 Jun 2020 00:55:34 +0200 Subject: [PATCH] Fix some missed and fake pointers in code (#180) --- asm/code_800EC960.s | 18 +++++++++--------- .../code/z_camera/Camera_Special5.s | 2 +- .../code/z_camera/func_80044ADC.s | 2 +- .../func_8002A3C4.s | 4 ++-- .../code/z_message_PAL/func_80109B3C.s | 10 +++++----- .../code/z_player_lib/func_8008FCC8.s | 2 +- .../code/z_player_lib/func_80090D20.s | 2 +- data/z_effect_soft_sprite_old_init.data.s | 5 ++++- include/variables.h | 1 + 9 files changed, 25 insertions(+), 21 deletions(-) diff --git a/asm/code_800EC960.s b/asm/code_800EC960.s index dfc621a3c9..2ec2183261 100644 --- a/asm/code_800EC960.s +++ b/asm/code_800EC960.s @@ -77,7 +77,7 @@ glabel func_800ECA00 /* B63BF0 800ECA50 27BD0080 */ addiu $sp, $sp, 0x80 /* B63BF4 800ECA54 A039BA08 */ sb $t9, %lo(D_8016BA08)($at) /* B63BF8 800ECA58 03E00008 */ jr $ra -/* B63BFC 800ECA5C A028BA09 */ sb $t0, -0x45f7($at) +/* B63BFC 800ECA5C A028BA09 */ sb $t0, %lo(D_8016BA09)($at) glabel func_800ECA60 /* B63C00 800ECA60 AFA40000 */ sw $a0, ($sp) @@ -1025,13 +1025,13 @@ glabel func_800ED458 /* B64930 800ED790 10C20021 */ beq $a2, $v0, .L800ED818 /* B64934 800ED794 3C0E8013 */ lui $t6, %hi(D_80130F18) # $t6, 0x8013 /* B64938 800ED798 91CE0F18 */ lbu $t6, %lo(D_80130F18)($t6) -/* B6493C 800ED79C 3C058013 */ lui $a1, %hi(D_8012FFFF) # $a1, 0x8013 +/* B6493C 800ED79C 3C058013 */ lui $a1, %hi(D_80130F10) /* B64940 800ED7A0 104E001D */ beq $v0, $t6, .L800ED818 /* B64944 800ED7A4 00000000 */ nop /* B64948 800ED7A8 80A50F10 */ lb $a1, %lo(D_80130F10)($a1) /* B6494C 800ED7AC 3C040602 */ lui $a0, (0x06020D07 >> 16) # lui $a0, 0x602 /* B64950 800ED7B0 34840D07 */ ori $a0, (0x06020D07 & 0xFFFF) # ori $a0, $a0, 0xd07 -/* B64954 800ED7B4 24A5FFFF */ addiu $a1, %lo(D_8012FFFF) # addiu $a1, $a1, -1 +/* B64954 800ED7B4 24A5FFFF */ addiu $a1, $a1, -1 /* B64958 800ED7B8 00052E00 */ sll $a1, $a1, 0x18 /* B6495C 800ED7BC 0C0396C8 */ jal func_800E5B20 /* B64960 800ED7C0 00052E03 */ sra $a1, $a1, 0x18 @@ -1384,13 +1384,13 @@ glabel func_800EDA3C /* B64E44 800EDCA4 11C10025 */ beq $t6, $at, .L800EDD3C /* B64E48 800EDCA8 00000000 */ nop /* B64E4C 800EDCAC 952F0000 */ lhu $t7, ($t1) -/* B64E50 800EDCB0 3C058013 */ lui $a1, %hi(D_8012FFFF) # $a1, 0x8013 +/* B64E50 800EDCB0 3C058013 */ lui $a1, %hi(D_80130F10) /* B64E54 800EDCB4 3C040602 */ lui $a0, (0x06020D07 >> 16) # lui $a0, 0x602 /* B64E58 800EDCB8 25F80001 */ addiu $t8, $t7, 1 /* B64E5C 800EDCBC A5380000 */ sh $t8, ($t1) /* B64E60 800EDCC0 80A50F10 */ lb $a1, %lo(D_80130F10)($a1) /* B64E64 800EDCC4 34840D07 */ ori $a0, (0x06020D07 & 0xFFFF) # ori $a0, $a0, 0xd07 -/* B64E68 800EDCC8 24A5FFFF */ addiu $a1, %lo(D_8012FFFF) # addiu $a1, $a1, -1 +/* B64E68 800EDCC8 24A5FFFF */ addiu $a1, $a1, -1 /* B64E6C 800EDCCC 00052E00 */ sll $a1, $a1, 0x18 /* B64E70 800EDCD0 0C0396C8 */ jal func_800E5B20 /* B64E74 800EDCD4 00052E03 */ sra $a1, $a1, 0x18 @@ -2219,12 +2219,12 @@ glabel func_800EE824 /* B659F0 800EE850 10000034 */ b .L800EE924 /* B659F4 800EE854 8FBF0014 */ lw $ra, 0x14($sp) .L800EE858: -/* B659F8 800EE858 3C038013 */ lui $v1, %hi(D_8012FFFF) # $v1, 0x8013 +/* B659F8 800EE858 3C038013 */ lui $v1, %hi(D_80131C88) # $v1, 0x8013 /* B659FC 800EE85C 94631C88 */ lhu $v1, %lo(D_80131C88)($v1) /* B65A00 800EE860 3C018013 */ lui $at, %hi(D_80131C88) # $at, 0x8013 /* B65A04 800EE864 3C0E8013 */ lui $t6, %hi(D_80131C84) # $t6, 0x8013 /* B65A08 800EE868 2C620001 */ sltiu $v0, $v1, 1 -/* B65A0C 800EE86C 2463FFFF */ addiu $v1, %lo(D_8012FFFF) # addiu $v1, $v1, -1 +/* B65A0C 800EE86C 2463FFFF */ addiu $v1, $v1, -1 /* B65A10 800EE870 1040002B */ beqz $v0, .L800EE920 /* B65A14 800EE874 A4231C88 */ sh $v1, %lo(D_80131C88)($at) /* B65A18 800EE878 91CE1C84 */ lbu $t6, %lo(D_80131C84)($t6) @@ -2518,7 +2518,7 @@ glabel func_800EEA50 /* B65E3C 800EEC9C 0C03EF2D */ jal GfxPrint_Printf /* B65E40 800EECA0 8FA400B0 */ lw $a0, 0xb0($sp) /* B65E44 800EECA4 92840001 */ lbu $a0, 1($s4) -/* B65E48 800EECA8 3C1E8013 */ lui $fp, %hi(D_8012FFFF) # $fp, 0x8013 +/* B65E48 800EECA8 3C1E8013 */ lui $fp, %hi(D_80131ED4) # $fp, 0x8013 /* B65E4C 800EECAC 83DE1ED4 */ lb $fp, %lo(D_80131ED4)($fp) /* B65E50 800EECB0 24840001 */ addiu $a0, $a0, 1 /* B65E54 800EECB4 18800074 */ blez $a0, .L800EEE88 @@ -2541,7 +2541,7 @@ glabel func_800EEA50 /* B65E90 800EECF0 10000004 */ b .L800EED04 /* B65E94 800EECF4 00129603 */ sra $s2, $s2, 0x18 .L800EECF8: -/* B65E98 800EECF8 27DEFFFF */ addiu $fp, %lo(D_8012FFFF) # addiu $fp, $fp, -1 +/* B65E98 800EECF8 27DEFFFF */ addiu $fp, $fp, -1 /* B65E9C 800EECFC 001EF600 */ sll $fp, $fp, 0x18 /* B65EA0 800EED00 001EF603 */ sra $fp, $fp, 0x18 .L800EED04: diff --git a/asm/non_matchings/code/z_camera/Camera_Special5.s b/asm/non_matchings/code/z_camera/Camera_Special5.s index ebcebc1907..f47de2092a 100644 --- a/asm/non_matchings/code/z_camera/Camera_Special5.s +++ b/asm/non_matchings/code/z_camera/Camera_Special5.s @@ -117,7 +117,7 @@ glabel Camera_Special5 /* ACDB04 80056964 E6100010 */ swc1 $f16, 0x10($s0) /* ACDB08 80056968 844C0000 */ lh $t4, ($v0) /* ACDB0C 8005696C A60C0018 */ sh $t4, 0x18($s0) -/* ACDB10 80056970 8DADFA90 */ lw $t5, -0x570($t5) +/* ACDB10 80056970 8DADFA90 */ lw $t5, %lo(gGameInfo)($t5) /* ACDB14 80056974 85A30314 */ lh $v1, 0x314($t5) .L80056978: /* ACDB18 80056978 50600004 */ beql $v1, $zero, .L8005698C diff --git a/asm/non_matchings/code/z_camera/func_80044ADC.s b/asm/non_matchings/code/z_camera/func_80044ADC.s index 5b38ad6d1c..b66957eda5 100644 --- a/asm/non_matchings/code/z_camera/func_80044ADC.s +++ b/asm/non_matchings/code/z_camera/func_80044ADC.s @@ -99,7 +99,7 @@ glabel func_80044ADC /* ABBDAC 80044C0C E7AE002C */ swc1 $f14, 0x2c($sp) /* ABBDB0 80044C10 E7B00030 */ swc1 $f16, 0x30($sp) /* ABBDB4 80044C14 46082200 */ add.s $f8, $f4, $f8 -/* ABBDB8 80044C18 E42ACE58 */ swc1 $f10, -0x31a8($at) +/* ABBDB8 80044C18 E42ACE58 */ swc1 $f10, %lo(D_8015CE58)($at) /* ABBDBC 80044C1C 3C018016 */ lui $at, %hi(D_8015CE60) /* ABBDC0 80044C20 0C010F46 */ jal func_80043D18 /* ABBDC4 80044C24 E428CE60 */ swc1 $f8, %lo(D_8015CE60)($at) diff --git a/asm/non_matchings/code/z_effect_soft_sprite_old_init/func_8002A3C4.s b/asm/non_matchings/code/z_effect_soft_sprite_old_init/func_8002A3C4.s index 6ea7ef0d4e..0f2a5354ef 100644 --- a/asm/non_matchings/code/z_effect_soft_sprite_old_init/func_8002A3C4.s +++ b/asm/non_matchings/code/z_effect_soft_sprite_old_init/func_8002A3C4.s @@ -3,7 +3,7 @@ glabel func_8002A3C4 /* AA1568 8002A3C8 3C01437F */ li $at, 0x437F0000 # 0.000000 /* AA156C 8002A3CC C7AC004C */ lwc1 $f12, 0x4c($sp) /* AA1570 8002A3D0 44812000 */ mtc1 $at, $f4 -/* AA1574 8002A3D4 3C018011 */ lui $at, %hi(D_801159A6) # 0.000000 +/* AA1574 8002A3D4 3C018011 */ lui $at, %hi(D_801159A5) # 0.000000 /* AA1578 8002A3D8 A02059A6 */ sb $zero, %lo(D_801159A6)($at) /* AA157C 8002A3DC 460C2182 */ mul.s $f6, $f4, $f12 /* AA1580 8002A3E0 44877000 */ mtc1 $a3, $f14 @@ -18,7 +18,7 @@ glabel func_8002A3C4 /* AA15A4 8002A404 2418000F */ li $t8, 15 /* AA15A8 8002A408 44024000 */ mfc1 $v0, $f8 /* AA15AC 8002A40C 240A0001 */ li $t2, 1 -/* AA15B0 8002A410 A02259A5 */ sb $v0, 0x59a5($at) +/* AA15B0 8002A410 A02259A5 */ sb $v0, %lo(D_801159A5)($at) /* AA15B4 8002A414 3C018011 */ lui $at, %hi(D_801159A8) # $at, 0x8011 /* AA15B8 8002A418 A02059A9 */ sb $zero, %lo(D_801159A9)($at) /* AA15BC 8002A41C A02059AA */ sb $zero, %lo(D_801159AA)($at) diff --git a/asm/non_matchings/code/z_message_PAL/func_80109B3C.s b/asm/non_matchings/code/z_message_PAL/func_80109B3C.s index 1fc8797295..976c1696ae 100644 --- a/asm/non_matchings/code/z_message_PAL/func_80109B3C.s +++ b/asm/non_matchings/code/z_message_PAL/func_80109B3C.s @@ -407,7 +407,7 @@ glabel func_80109B3C /* B8114C 80109FAC 10000003 */ b .L80109FBC /* B81150 80109FB0 8442FA30 */ lh $v0, %lo(gSaveContext+0x13d0)($v0) .L80109FB4: -/* B81154 80109FB4 3C028016 */ lui $v0, %hi(D_8015FFC4) # $v0, 0x8016 +/* B81154 80109FB4 3C028016 */ lui $v0, %hi(gSaveContext+0x13d4) /* B81158 80109FB8 8442FA34 */ lh $v0, %lo(gSaveContext+0x13d4)($v0) .L80109FBC: /* B8115C 80109FBC 2841003C */ slti $at, $v0, 0x3c @@ -420,7 +420,7 @@ glabel func_80109B3C /* B81174 80109FD4 00031C03 */ sra $v1, $v1, 0x10 /* B81178 80109FD8 2861000A */ slti $at, $v1, 0xa /* B8117C 80109FDC 14200007 */ bnez $at, .L80109FFC -/* B81180 80109FE0 2442FFC4 */ addiu $v0, %lo(D_8015FFC4) # addiu $v0, $v0, -0x3c +/* B81180 80109FE0 2442FFC4 */ addiu $v0, $v0, -0x3c /* B81184 80109FE4 24840001 */ addiu $a0, $a0, 1 /* B81188 80109FE8 2463FFF6 */ addiu $v1, $v1, -0xa /* B8118C 80109FEC 00042400 */ sll $a0, $a0, 0x10 @@ -529,7 +529,7 @@ glabel func_80109B3C /* B81308 8010A168 1420000A */ bnez $at, .L8010A194 /* B8130C 8010A16C A7A4007C */ sh $a0, 0x7c($sp) .L8010A170: -/* B81310 8010A170 2442FC18 */ addiu $v0, %lo(D_8015FA98 + (0x18*0x10)) # addiu $v0, $v0, -0x3e8 +/* B81310 8010A170 2442FC18 */ addiu $v0, $v0, -0x3e8 /* B81314 8010A174 00021400 */ sll $v0, $v0, 0x10 /* B81318 8010A178 24840001 */ addiu $a0, $a0, 1 /* B8131C 8010A17C 00021403 */ sra $v0, $v0, 0x10 @@ -621,7 +621,7 @@ glabel func_80109B3C /* B8144C 8010A2AC 00009825 */ move $s3, $zero /* B81450 8010A2B0 0C00084C */ jal osSyncPrintf /* B81454 8010A2B4 00008825 */ move $s1, $zero -/* B81458 8010A2B8 3C058016 */ lui $a1, %hi(sZeldaArena+0x1C) # $a1, 0x8016 +/* B81458 8010A2B8 3C058016 */ lui $a1, %hi(gSaveContext+0xd0) /* B8145C 8010A2BC 84A5E730 */ lh $a1, %lo(gSaveContext+0xd0)($a1) /* B81460 8010A2C0 00002400 */ sll $a0, $zero, 0x10 /* B81464 8010A2C4 00042403 */ sra $a0, $a0, 0x10 @@ -630,7 +630,7 @@ glabel func_80109B3C /* B81470 8010A2D0 1420000A */ bnez $at, .L8010A2FC /* B81474 8010A2D4 A7A4007C */ sh $a0, 0x7c($sp) .L8010A2D8: -/* B81478 8010A2D8 24A5FF9C */ addiu $a1, %lo(sZeldaArena+0x1C) # addiu $a1, $a1, -0x64 +/* B81478 8010A2D8 24A5FF9C */ addiu $a1, $a1, -0x64 /* B8147C 8010A2DC 00052C00 */ sll $a1, $a1, 0x10 /* B81480 8010A2E0 24840001 */ addiu $a0, $a0, 1 /* B81484 8010A2E4 00052C03 */ sra $a1, $a1, 0x10 diff --git a/asm/non_matchings/code/z_player_lib/func_8008FCC8.s b/asm/non_matchings/code/z_player_lib/func_8008FCC8.s index 440490ca71..51e044ab93 100644 --- a/asm/non_matchings/code/z_player_lib/func_8008FCC8.s +++ b/asm/non_matchings/code/z_player_lib/func_8008FCC8.s @@ -44,7 +44,7 @@ glabel func_8008FCC8 /* B06EA8 8008FD08 AC2F0018 */ sw $t7, %lo(D_80160018)($at) /* B06EAC 8008FD0C 3C018016 */ lui $at, %hi(D_80160000) /* B06EB0 8008FD10 1320001B */ beqz $t9, .L8008FD80 -/* B06EB4 8008FD14 AC380000 */ sw $t8, ($at) +/* B06EB4 8008FD14 AC380000 */ sw $t8, %lo(D_80160000)($at) /* B06EB8 8008FD18 920201E9 */ lbu $v0, 0x1e9($s0) /* B06EBC 8008FD1C 3C018014 */ lui $at, %hi(D_8013E90C) /* B06EC0 8008FD20 30430004 */ andi $v1, $v0, 4 diff --git a/asm/non_matchings/code/z_player_lib/func_80090D20.s b/asm/non_matchings/code/z_player_lib/func_80090D20.s index 47ddd9aa35..e94ec3f663 100644 --- a/asm/non_matchings/code/z_player_lib/func_80090D20.s +++ b/asm/non_matchings/code/z_player_lib/func_80090D20.s @@ -660,7 +660,7 @@ glabel func_80090D20 /* B08794 800915F4 C60409C0 */ lwc1 $f4, 0x9c0($s0) /* B08798 800915F8 46062200 */ add.s $f8, $f4, $f6 /* B0879C 800915FC 46004282 */ mul.s $f10, $f8, $f0 -/* B087A0 80091600 E42A000C */ swc1 $f10, 0xc($at) +/* B087A0 80091600 E42A000C */ swc1 $f10, %lo(D_80160008+4)($at) /* B087A4 80091604 C61203B8 */ lwc1 $f18, 0x3b8($s0) /* B087A8 80091608 C61009C4 */ lwc1 $f16, 0x9c4($s0) /* B087AC 8009160C 3C018016 */ lui $at, %hi(D_80160010) diff --git a/data/z_effect_soft_sprite_old_init.data.s b/data/z_effect_soft_sprite_old_init.data.s index fed42cd7b9..26f16e85b9 100644 --- a/data/z_effect_soft_sprite_old_init.data.s +++ b/data/z_effect_soft_sprite_old_init.data.s @@ -67,7 +67,10 @@ glabel D_8011592C .incbin "baserom.z64", 0xB8CACC, 0x78 glabel D_801159A4 - .incbin "baserom.z64", 0xB8CB44, 0x2 + .incbin "baserom.z64", 0xB8CB44, 0x1 + +glabel D_801159A5 + .incbin "baserom.z64", 0xB8CB45, 0x1 glabel D_801159A6 .incbin "baserom.z64", 0xB8CB46, 0x2 diff --git a/include/variables.h b/include/variables.h index 818a513b20..c938e7e4fe 100644 --- a/include/variables.h +++ b/include/variables.h @@ -169,6 +169,7 @@ extern u8 D_80114930[]; //extern ? D_80115920; //extern ? D_8011592C; //extern ? D_801159A4; +//extern ? D_801159A5; //extern ? D_801159A6; //extern ? D_801159A8; //extern ? D_801159A9;