mirror of
https://github.com/farisawan-2000/kirby64.git
synced 2024-11-23 05:10:04 +00:00
symoblized ovl8
This commit is contained in:
parent
92fc61ccb3
commit
be263239c2
6
Makefile
6
Makefile
@ -161,10 +161,6 @@ endif
|
||||
# hardcoded compiler for ml.c until i figure out why it's breaking recomp
|
||||
$(BUILD_DIR)/src/ovl0/memory_layer.o: CC = $(QEMU_IRIX) -silent -L $(IRIX_ROOT) $(IRIX_ROOT)/usr/bin/cc
|
||||
|
||||
|
||||
# $(BUILD_DIR)/src/ovl1/ovl1_11.o: CC = $(QEMU_IRIX) -silent -L $(IRIX_ROOT) $(IRIX_ROOT)/usr/bin/cc
|
||||
# $(BUILD_DIR)/src/ovl1/ovl1_11.o: OPT_FLAGS = -O3
|
||||
|
||||
default: all
|
||||
|
||||
TARGET = kirby.us
|
||||
@ -201,7 +197,7 @@ softclean:
|
||||
# $(BUILD_DIR)/src/ovl0/ovl0_8.o: OPT_FLAGS += -framepointer
|
||||
$(BUILD_DIR)/src/ovl7/yakulib.o: OPT_FLAGS = -O2
|
||||
$(BUILD_DIR)/src/ovl1/ovl1_5.o: OPT_FLAGS = -O2
|
||||
$(BUILD_DIR)/src/ovl7/yakulib.o: CC = $(QEMU_IRIX) -silent -L $(IRIX_ROOT) $(IRIX_ROOT)/usr/bin/cc
|
||||
# $(BUILD_DIR)/src/ovl7/yakulib.o: CC = $(QEMU_IRIX) -silent -L $(IRIX_ROOT) $(IRIX_ROOT)/usr/bin/cc
|
||||
|
||||
# $(BUILD_DIR)/src/ovl1/save_file.o: OPT_FLAGS += -Wo,-loopunroll,0
|
||||
|
||||
|
@ -1,40 +0,0 @@
|
||||
glabel func_800A3058
|
||||
/* 04B2A8 800A3058 3C028000 */ lui $v0, %hi(osTvType) # $v0, 0x8000
|
||||
/* 04B2AC 800A305C 8C420300 */ lw $v0, %lo(osTvType)($v0)
|
||||
/* 04B2B0 800A3060 27BDFFE8 */ addiu $sp, $sp, -0x18
|
||||
/* 04B2B4 800A3064 24010001 */ li $at, 1
|
||||
/* 04B2B8 800A3068 10410008 */ beq $v0, $at, .L800A308C_ovl1
|
||||
/* 04B2BC 800A306C AFBF0014 */ sw $ra, 0x14($sp)
|
||||
/* 04B2C0 800A3070 24010002 */ li $at, 2
|
||||
/* 04B2C4 800A3074 10410005 */ beq $v0, $at, .L800A308C_ovl1
|
||||
/* 04B2C8 800A3078 00000000 */ nop
|
||||
/* 04B2CC 800A307C 0C029AC8 */ jal load_overlay
|
||||
/* 04B2D0 800A3080 24040002 */ li $a0, 2
|
||||
/* 04B2D4 800A3084 0C05473B */ jal func_80151CEC_ovl1
|
||||
/* 04B2D8 800A3088 24040005 */ li $a0, 5
|
||||
.L800A308C_ovl1:
|
||||
/* 04B2DC 800A308C 0C001189 */ jal D_80004624_ovl1
|
||||
/* 04B2E0 800A3090 00000000 */ nop
|
||||
/* 04B2E4 800A3094 0C001189 */ jal D_80004624_ovl1
|
||||
/* 04B2E8 800A3098 00000000 */ nop
|
||||
/* 04B2EC 800A309C 3C028005 */ lui $v0, %hi(D_80048E9C) # $v0, 0x8005
|
||||
/* 04B2F0 800A30A0 3C048005 */ lui $a0, %hi(gControllers) # $a0, 0x8005
|
||||
/* 04B2F4 800A30A4 24848EA0 */ addiu $a0, %lo(gControllers) # addiu $a0, $a0, -0x7160
|
||||
/* 04B2F8 800A30A8 24428E9C */ addiu $v0, %lo(D_80048E9C) # addiu $v0, $v0, -0x7164
|
||||
/* 04B2FC 800A30AC 2403FFFF */ li $v1, -1
|
||||
/* 04B300 800A30B0 804E0000 */ lb $t6, ($v0)
|
||||
.L800A30B4_ovl1:
|
||||
/* 04B304 800A30B4 24420001 */ addiu $v0, $v0, 1
|
||||
/* 04B308 800A30B8 546E0008 */ bnel $v1, $t6, .L800A30DC_ovl1
|
||||
/* 04B30C 800A30BC 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
/* 04B310 800A30C0 5444FFFC */ bnel $v0, $a0, .L800A30B4_ovl1
|
||||
/* 04B314 800A30C4 804E0000 */ lb $t6, ($v0)
|
||||
/* 04B318 800A30C8 0C029AC8 */ jal load_overlay
|
||||
/* 04B31C 800A30CC 24040002 */ li $a0, 2
|
||||
/* 04B320 800A30D0 0C05473B */ jal func_80151CEC_ovl1
|
||||
/* 04B324 800A30D4 24040004 */ li $a0, 4
|
||||
/* 04B328 800A30D8 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
.L800A30DC_ovl1:
|
||||
/* 04B32C 800A30DC 27BD0018 */ addiu $sp, $sp, 0x18
|
||||
/* 04B330 800A30E0 03E00008 */ jr $ra
|
||||
/* 04B334 800A30E4 00000000 */ nop
|
@ -38,7 +38,7 @@ glabel func_800A3230
|
||||
/* 04B50C 800A32BC 904B0001 */ lbu $t3, 1($v0)
|
||||
/* 04B510 800A32C0 554B001E */ bnel $t2, $t3, .L800A333C_ovl1
|
||||
/* 04B514 800A32C4 26100003 */ addiu $s0, $s0, 3
|
||||
/* 04B518 800A32C8 0C02E7D4 */ jal func_800B9F50
|
||||
/* 04B518 800A32C8 0C02E7D4 */ jal check_cutscene_watched
|
||||
/* 04B51C 800A32CC 90440002 */ lbu $a0, 2($v0)
|
||||
/* 04B520 800A32D0 5440001A */ bnezl $v0, .L800A333C_ovl1
|
||||
/* 04B524 800A32D4 26100003 */ addiu $s0, $s0, 3
|
||||
@ -51,7 +51,7 @@ glabel func_800A3230
|
||||
/* 04B540 800A32F0 000D6840 */ sll $t5, $t5, 1
|
||||
/* 04B544 800A32F4 022D7021 */ addu $t6, $s1, $t5
|
||||
/* 04B548 800A32F8 01D07821 */ addu $t7, $t6, $s0
|
||||
/* 04B54C 800A32FC 0C02E7E4 */ jal func_800B9F90
|
||||
/* 04B54C 800A32FC 0C02E7E4 */ jal set_cutscene_watched
|
||||
/* 04B550 800A3300 91E40002 */ lbu $a0, 2($t7)
|
||||
/* 04B554 800A3304 0C02E714 */ jal func_800B9C50
|
||||
/* 04B558 800A3308 8E640000 */ lw $a0, ($s3)
|
||||
|
@ -9,7 +9,7 @@ glabel func_800A336C
|
||||
/* 04B5D8 800A3388 00027080 */ sll $t6, $v0, 2
|
||||
/* 04B5DC 800A338C 3C04800C */ lui $a0, %hi(D_800BE414)
|
||||
/* 04B5E0 800A3390 008E2021 */ addu $a0, $a0, $t6
|
||||
/* 04B5E4 800A3394 0C02E7D4 */ jal func_800B9F50
|
||||
/* 04B5E4 800A3394 0C02E7D4 */ jal check_cutscene_watched
|
||||
/* 04B5E8 800A3398 8C84E414 */ lw $a0, %lo(D_800BE414)($a0)
|
||||
/* 04B5EC 800A339C 14400016 */ bnez $v0, .L800A33F8_ovl1
|
||||
/* 04B5F0 800A33A0 3C0F800C */ lui $t7, %hi(D_800BE500) # $t7, 0x800c
|
||||
@ -19,7 +19,7 @@ glabel func_800A336C
|
||||
/* 04B600 800A33B0 000FC080 */ sll $t8, $t7, 2
|
||||
/* 04B604 800A33B4 00982021 */ addu $a0, $a0, $t8
|
||||
/* 04B608 800A33B8 8C84E414 */ lw $a0, %lo(D_800BE414)($a0)
|
||||
/* 04B60C 800A33BC 0C02E7E4 */ jal func_800B9F90
|
||||
/* 04B60C 800A33BC 0C02E7E4 */ jal set_cutscene_watched
|
||||
/* 04B610 800A33C0 8CA56B88 */ lw $a1, %lo(D_800D6B88)($a1)
|
||||
/* 04B614 800A33C4 3C04800D */ lui $a0, %hi(D_800D6B88) # $a0, 0x800d
|
||||
/* 04B618 800A33C8 0C02E714 */ jal func_800B9C50
|
||||
|
@ -240,14 +240,14 @@ glabel func_800A377C
|
||||
/* 04BC64 800A3A14 1000FF80 */ b .L800A3818_ovl1
|
||||
/* 04BC68 800A3A18 00000000 */ nop
|
||||
.L800A3A1C_ovl1:
|
||||
/* 04BC6C 800A3A1C 0C02E7D4 */ jal func_800B9F50
|
||||
/* 04BC6C 800A3A1C 0C02E7D4 */ jal check_cutscene_watched
|
||||
/* 04BC70 800A3A20 02402025 */ move $a0, $s2
|
||||
/* 04BC74 800A3A24 1440000B */ bnez $v0, .L800A3A54_ovl1
|
||||
/* 04BC78 800A3A28 00000000 */ nop
|
||||
/* 04BC7C 800A3A2C 0C029AC8 */ jal load_overlay
|
||||
/* 04BC80 800A3A30 24040004 */ li $a0, 4
|
||||
/* 04BC84 800A3A34 02402025 */ move $a0, $s2
|
||||
/* 04BC88 800A3A38 0C02E7E4 */ jal func_800B9F90
|
||||
/* 04BC88 800A3A38 0C02E7E4 */ jal set_cutscene_watched
|
||||
/* 04BC8C 800A3A3C 8E250000 */ lw $a1, ($s1)
|
||||
/* 04BC90 800A3A40 0C02E714 */ jal func_800B9C50
|
||||
/* 04BC94 800A3A44 8E240000 */ lw $a0, ($s1)
|
||||
@ -530,7 +530,7 @@ glabel func_800A377C
|
||||
/* 04C088 800A3E38 2404000D */ li $a0, 13
|
||||
/* 04C08C 800A3E3C 15A10043 */ bne $t5, $at, .L800A3F4C_ovl1
|
||||
/* 04C090 800A3E40 00000000 */ nop
|
||||
/* 04C094 800A3E44 0C02E7D4 */ jal func_800B9F50
|
||||
/* 04C094 800A3E44 0C02E7D4 */ jal check_cutscene_watched
|
||||
/* 04C098 800A3E48 AE170000 */ sw $s7, ($s0)
|
||||
/* 04C09C 800A3E4C 1440003F */ bnez $v0, .L800A3F4C_ovl1
|
||||
/* 04C0A0 800A3E50 3C03800C */ lui $v1, %hi(D_800BE508) # $v1, 0x800c
|
||||
@ -549,7 +549,7 @@ glabel func_800A377C
|
||||
/* 04C0D4 800A3E84 0C029AC8 */ jal load_overlay
|
||||
/* 04C0D8 800A3E88 24040004 */ li $a0, 4
|
||||
/* 04C0DC 800A3E8C 2404000D */ li $a0, 13
|
||||
/* 04C0E0 800A3E90 0C02E7E4 */ jal func_800B9F90
|
||||
/* 04C0E0 800A3E90 0C02E7E4 */ jal set_cutscene_watched
|
||||
/* 04C0E4 800A3E94 8E250000 */ lw $a1, ($s1)
|
||||
/* 04C0E8 800A3E98 0C02E714 */ jal func_800B9C50
|
||||
/* 04C0EC 800A3E9C 8E240000 */ lw $a0, ($s1)
|
||||
@ -634,10 +634,10 @@ glabel func_800A377C
|
||||
/* 04C200 800A3FB0 0C029AC8 */ jal load_overlay
|
||||
/* 04C204 800A3FB4 24040004 */ li $a0, 4
|
||||
/* 04C208 800A3FB8 24040011 */ li $a0, 17
|
||||
/* 04C20C 800A3FBC 0C02E7E4 */ jal func_800B9F90
|
||||
/* 04C20C 800A3FBC 0C02E7E4 */ jal set_cutscene_watched
|
||||
/* 04C210 800A3FC0 8E250000 */ lw $a1, ($s1)
|
||||
/* 04C214 800A3FC4 24040013 */ li $a0, 19
|
||||
/* 04C218 800A3FC8 0C02E7E4 */ jal func_800B9F90
|
||||
/* 04C218 800A3FC8 0C02E7E4 */ jal set_cutscene_watched
|
||||
/* 04C21C 800A3FCC 8E250000 */ lw $a1, ($s1)
|
||||
/* 04C220 800A3FD0 0C02E714 */ jal func_800B9C50
|
||||
/* 04C224 800A3FD4 8E240000 */ lw $a0, ($s1)
|
||||
@ -650,19 +650,19 @@ glabel func_800A377C
|
||||
/* 04C23C 800A3FEC 0C029AC8 */ jal load_overlay
|
||||
/* 04C240 800A3FF0 24040004 */ li $a0, 4
|
||||
/* 04C244 800A3FF4 2404000D */ li $a0, 13
|
||||
/* 04C248 800A3FF8 0C02E7E4 */ jal func_800B9F90
|
||||
/* 04C248 800A3FF8 0C02E7E4 */ jal set_cutscene_watched
|
||||
/* 04C24C 800A3FFC 8E250000 */ lw $a1, ($s1)
|
||||
/* 04C250 800A4000 24040011 */ li $a0, 17
|
||||
/* 04C254 800A4004 0C02E7E4 */ jal func_800B9F90
|
||||
/* 04C254 800A4004 0C02E7E4 */ jal set_cutscene_watched
|
||||
/* 04C258 800A4008 8E250000 */ lw $a1, ($s1)
|
||||
/* 04C25C 800A400C 24040012 */ li $a0, 18
|
||||
/* 04C260 800A4010 0C02E7E4 */ jal func_800B9F90
|
||||
/* 04C260 800A4010 0C02E7E4 */ jal set_cutscene_watched
|
||||
/* 04C264 800A4014 8E250000 */ lw $a1, ($s1)
|
||||
/* 04C268 800A4018 24040013 */ li $a0, 19
|
||||
/* 04C26C 800A401C 0C02E7E4 */ jal func_800B9F90
|
||||
/* 04C26C 800A401C 0C02E7E4 */ jal set_cutscene_watched
|
||||
/* 04C270 800A4020 8E250000 */ lw $a1, ($s1)
|
||||
/* 04C274 800A4024 24040010 */ li $a0, 16
|
||||
/* 04C278 800A4028 0C02E7E4 */ jal func_800B9F90
|
||||
/* 04C278 800A4028 0C02E7E4 */ jal set_cutscene_watched
|
||||
/* 04C27C 800A402C 8E250000 */ lw $a1, ($s1)
|
||||
/* 04C280 800A4030 0C02E714 */ jal func_800B9C50
|
||||
/* 04C284 800A4034 8E240000 */ lw $a0, ($s1)
|
||||
|
@ -1,51 +0,0 @@
|
||||
glabel func_800B8300
|
||||
/* 060550 800B8300 3C028005 */ lui $v0, %hi(D_8004A7C4) # $v0, 0x8005
|
||||
/* 060554 800B8304 8C42A7C4 */ lw $v0, %lo(D_8004A7C4)($v0)
|
||||
/* 060558 800B8308 AFA40000 */ sw $a0, ($sp)
|
||||
/* 06055C 800B830C 3C05800E */ lui $a1, %hi(D_800E0D50) # $a1, 0x800e
|
||||
/* 060560 800B8310 8C430000 */ lw $v1, ($v0)
|
||||
/* 060564 800B8314 24A50D50 */ addiu $a1, %lo(D_800E0D50) # addiu $a1, $a1, 0x0d50
|
||||
/* 060568 800B8318 3C04800E */ lui $a0, %hi(gEntitiesPosXArray) # $a0, 0x800e
|
||||
/* 06056C 800B831C 00031880 */ sll $v1, $v1, 2
|
||||
/* 060570 800B8320 00A37021 */ addu $t6, $a1, $v1
|
||||
/* 060574 800B8324 8DCF0000 */ lw $t7, ($t6)
|
||||
/* 060578 800B8328 248425D0 */ addiu $a0, %lo(gEntitiesPosXArray) # addiu $a0, $a0, 0x25d0
|
||||
/* 06057C 800B832C 00834821 */ addu $t1, $a0, $v1
|
||||
/* 060580 800B8330 000FC080 */ sll $t8, $t7, 2
|
||||
/* 060584 800B8334 0098C821 */ addu $t9, $a0, $t8
|
||||
/* 060588 800B8338 C7240000 */ lwc1 $f4, ($t9)
|
||||
/* 06058C 800B833C 3C06800E */ lui $a2, %hi(gEntitiesPosYArray) # $a2, 0x800e
|
||||
/* 060590 800B8340 24C62790 */ addiu $a2, %lo(gEntitiesPosYArray) # addiu $a2, $a2, 0x2790
|
||||
/* 060594 800B8344 E5240000 */ swc1 $f4, ($t1)
|
||||
/* 060598 800B8348 8C430000 */ lw $v1, ($v0)
|
||||
/* 06059C 800B834C 3C07800E */ lui $a3, %hi(gEntitiesPosZArray) # $a3, 0x800e
|
||||
/* 0605A0 800B8350 24E72950 */ addiu $a3, %lo(gEntitiesPosZArray) # addiu $a3, $a3, 0x2950
|
||||
/* 0605A4 800B8354 00031880 */ sll $v1, $v1, 2
|
||||
/* 0605A8 800B8358 00A35021 */ addu $t2, $a1, $v1
|
||||
/* 0605AC 800B835C 8D4B0000 */ lw $t3, ($t2)
|
||||
/* 0605B0 800B8360 00C37021 */ addu $t6, $a2, $v1
|
||||
/* 0605B4 800B8364 3C08800E */ lui $t0, %hi(gEntitiesAngleYArray) # $t0, 0x800e
|
||||
/* 0605B8 800B8368 000B6080 */ sll $t4, $t3, 2
|
||||
/* 0605BC 800B836C 00CC6821 */ addu $t5, $a2, $t4
|
||||
/* 0605C0 800B8370 C5A60000 */ lwc1 $f6, ($t5)
|
||||
/* 0605C4 800B8374 250841D0 */ addiu $t0, %lo(gEntitiesAngleYArray) # addiu $t0, $t0, 0x41d0
|
||||
/* 0605C8 800B8378 E5C60000 */ swc1 $f6, ($t6)
|
||||
/* 0605CC 800B837C 8C430000 */ lw $v1, ($v0)
|
||||
/* 0605D0 800B8380 00031880 */ sll $v1, $v1, 2
|
||||
/* 0605D4 800B8384 00A37821 */ addu $t7, $a1, $v1
|
||||
/* 0605D8 800B8388 8DF80000 */ lw $t8, ($t7)
|
||||
/* 0605DC 800B838C 00E35021 */ addu $t2, $a3, $v1
|
||||
/* 0605E0 800B8390 0018C880 */ sll $t9, $t8, 2
|
||||
/* 0605E4 800B8394 00F94821 */ addu $t1, $a3, $t9
|
||||
/* 0605E8 800B8398 C5280000 */ lwc1 $f8, ($t1)
|
||||
/* 0605EC 800B839C E5480000 */ swc1 $f8, ($t2)
|
||||
/* 0605F0 800B83A0 8C430000 */ lw $v1, ($v0)
|
||||
/* 0605F4 800B83A4 00031880 */ sll $v1, $v1, 2
|
||||
/* 0605F8 800B83A8 00A35821 */ addu $t3, $a1, $v1
|
||||
/* 0605FC 800B83AC 8D6C0000 */ lw $t4, ($t3)
|
||||
/* 060600 800B83B0 01037821 */ addu $t7, $t0, $v1
|
||||
/* 060604 800B83B4 000C6880 */ sll $t5, $t4, 2
|
||||
/* 060608 800B83B8 010D7021 */ addu $t6, $t0, $t5
|
||||
/* 06060C 800B83BC C5CA0000 */ lwc1 $f10, ($t6)
|
||||
/* 060610 800B83C0 03E00008 */ jr $ra
|
||||
/* 060614 800B83C4 E5EA0000 */ swc1 $f10, ($t7)
|
@ -19,8 +19,8 @@ glabel func_800B96A0
|
||||
/* 061934 800B96E4 3C01800D */ lui $at, %hi(D_800D6B98) # $at, 0x800d
|
||||
/* 061938 800B96E8 AC296B98 */ sw $t1, %lo(D_800D6B98)($at)
|
||||
/* 06193C 800B96EC 8C4A001C */ lw $t2, 0x1c($v0)
|
||||
/* 061940 800B96F0 3C01800D */ lui $at, %hi(D_800D6BA0) # $at, 0x800d
|
||||
/* 061944 800B96F4 AC2A6BA0 */ sw $t2, %lo(D_800D6BA0)($at)
|
||||
/* 061940 800B96F0 3C01800D */ lui $at, %hi(gCutscenesWatched) # $at, 0x800d
|
||||
/* 061944 800B96F4 AC2A6BA0 */ sw $t2, %lo(gCutscenesWatched)($at)
|
||||
/* 061948 800B96F8 904B0020 */ lbu $t3, 0x20($v0)
|
||||
/* 06194C 800B96FC 3C01800D */ lui $at, %hi(D_800D6BA8) # $at, 0x800d
|
||||
/* 061950 800B9700 AC2B6BA8 */ sw $t3, %lo(D_800D6BA8)($at)
|
||||
@ -61,13 +61,13 @@ glabel func_800B96A0
|
||||
/* 0619D8 800B9788 AC4C0010 */ sw $t4, 0x10($v0)
|
||||
/* 0619DC 800B978C 8DAD6B94 */ lw $t5, %lo(gCurrentLevel)($t5)
|
||||
/* 0619E0 800B9790 3C0E800D */ lui $t6, %hi(D_800D6B98) # $t6, 0x800d
|
||||
/* 0619E4 800B9794 3C0F800D */ lui $t7, %hi(D_800D6BA0) # $t7, 0x800d
|
||||
/* 0619E4 800B9794 3C0F800D */ lui $t7, %hi(gCutscenesWatched) # $t7, 0x800d
|
||||
/* 0619E8 800B9798 AC4D0014 */ sw $t5, 0x14($v0)
|
||||
/* 0619EC 800B979C 8DCE6B98 */ lw $t6, %lo(D_800D6B98)($t6)
|
||||
/* 0619F0 800B97A0 3C18800D */ lui $t8, %hi(D_800D6BA8) # $t8, 0x800d
|
||||
/* 0619F4 800B97A4 3C19800D */ lui $t9, %hi(D_800D6BAC) # $t9, 0x800d
|
||||
/* 0619F8 800B97A8 AC4E0018 */ sw $t6, 0x18($v0)
|
||||
/* 0619FC 800B97AC 8DEF6BA0 */ lw $t7, %lo(D_800D6BA0)($t7)
|
||||
/* 0619FC 800B97AC 8DEF6BA0 */ lw $t7, %lo(gCutscenesWatched)($t7)
|
||||
/* 061A00 800B97B0 3C09800D */ lui $t1, %hi(gHudDisplayMode) # $t1, 0x800d
|
||||
/* 061A04 800B97B4 3C0A800D */ lui $t2, %hi(D_800D6BB5) # $t2, 0x800d
|
||||
/* 061A08 800B97B8 AC4F001C */ sw $t7, 0x1c($v0)
|
||||
|
@ -1,83 +0,0 @@
|
||||
glabel func_800B9E4C
|
||||
/* 06209C 800B9E4C 3C04800D */ lui $a0, %hi(D_800D6BC8) # $a0, 0x800d
|
||||
/* 0620A0 800B9E50 3C05800D */ lui $a1, %hi(D_800D6BE0) # $a1, 0x800d
|
||||
/* 0620A4 800B9E54 00001025 */ move $v0, $zero
|
||||
/* 0620A8 800B9E58 24A56BE0 */ addiu $a1, %lo(D_800D6BE0) # addiu $a1, $a1, 0x6be0
|
||||
/* 0620AC 800B9E5C 24846BC8 */ addiu $a0, %lo(D_800D6BC8) # addiu $a0, $a0, 0x6bc8
|
||||
/* 0620B0 800B9E60 90830000 */ lbu $v1, ($a0)
|
||||
.L800B9E64_ovl1:
|
||||
/* 0620B4 800B9E64 306E0001 */ andi $t6, $v1, 1
|
||||
/* 0620B8 800B9E68 11C00002 */ beqz $t6, .L800B9E74_ovl1
|
||||
/* 0620BC 800B9E6C 306F0002 */ andi $t7, $v1, 2
|
||||
/* 0620C0 800B9E70 24420001 */ addiu $v0, $v0, 1
|
||||
.L800B9E74_ovl1:
|
||||
/* 0620C4 800B9E74 11E00002 */ beqz $t7, .L800B9E80_ovl1
|
||||
/* 0620C8 800B9E78 30780004 */ andi $t8, $v1, 4
|
||||
/* 0620CC 800B9E7C 24420001 */ addiu $v0, $v0, 1
|
||||
.L800B9E80_ovl1:
|
||||
/* 0620D0 800B9E80 53000003 */ beql $t8, $zero, .L800B9E90_ovl1
|
||||
/* 0620D4 800B9E84 90830001 */ lbu $v1, 1($a0)
|
||||
/* 0620D8 800B9E88 24420001 */ addiu $v0, $v0, 1
|
||||
/* 0620DC 800B9E8C 90830001 */ lbu $v1, 1($a0)
|
||||
.L800B9E90_ovl1:
|
||||
/* 0620E0 800B9E90 30790001 */ andi $t9, $v1, 1
|
||||
/* 0620E4 800B9E94 13200002 */ beqz $t9, .L800B9EA0_ovl1
|
||||
/* 0620E8 800B9E98 30680002 */ andi $t0, $v1, 2
|
||||
/* 0620EC 800B9E9C 24420001 */ addiu $v0, $v0, 1
|
||||
.L800B9EA0_ovl1:
|
||||
/* 0620F0 800B9EA0 11000002 */ beqz $t0, .L800B9EAC_ovl1
|
||||
/* 0620F4 800B9EA4 30690004 */ andi $t1, $v1, 4
|
||||
/* 0620F8 800B9EA8 24420001 */ addiu $v0, $v0, 1
|
||||
.L800B9EAC_ovl1:
|
||||
/* 0620FC 800B9EAC 51200003 */ beql $t1, $zero, .L800B9EBC_ovl1
|
||||
/* 062100 800B9EB0 90830002 */ lbu $v1, 2($a0)
|
||||
/* 062104 800B9EB4 24420001 */ addiu $v0, $v0, 1
|
||||
/* 062108 800B9EB8 90830002 */ lbu $v1, 2($a0)
|
||||
.L800B9EBC_ovl1:
|
||||
/* 06210C 800B9EBC 306A0001 */ andi $t2, $v1, 1
|
||||
/* 062110 800B9EC0 11400002 */ beqz $t2, .L800B9ECC_ovl1
|
||||
/* 062114 800B9EC4 306B0002 */ andi $t3, $v1, 2
|
||||
/* 062118 800B9EC8 24420001 */ addiu $v0, $v0, 1
|
||||
.L800B9ECC_ovl1:
|
||||
/* 06211C 800B9ECC 11600002 */ beqz $t3, .L800B9ED8_ovl1
|
||||
/* 062120 800B9ED0 306C0004 */ andi $t4, $v1, 4
|
||||
/* 062124 800B9ED4 24420001 */ addiu $v0, $v0, 1
|
||||
.L800B9ED8_ovl1:
|
||||
/* 062128 800B9ED8 51800003 */ beql $t4, $zero, .L800B9EE8_ovl1
|
||||
/* 06212C 800B9EDC 90830003 */ lbu $v1, 3($a0)
|
||||
/* 062130 800B9EE0 24420001 */ addiu $v0, $v0, 1
|
||||
/* 062134 800B9EE4 90830003 */ lbu $v1, 3($a0)
|
||||
.L800B9EE8_ovl1:
|
||||
/* 062138 800B9EE8 24840004 */ addiu $a0, $a0, 4
|
||||
/* 06213C 800B9EEC 306D0001 */ andi $t5, $v1, 1
|
||||
/* 062140 800B9EF0 11A00002 */ beqz $t5, .L800B9EFC_ovl1
|
||||
/* 062144 800B9EF4 306E0002 */ andi $t6, $v1, 2
|
||||
/* 062148 800B9EF8 24420001 */ addiu $v0, $v0, 1
|
||||
.L800B9EFC_ovl1:
|
||||
/* 06214C 800B9EFC 11C00002 */ beqz $t6, .L800B9F08_ovl1
|
||||
/* 062150 800B9F00 306F0004 */ andi $t7, $v1, 4
|
||||
/* 062154 800B9F04 24420001 */ addiu $v0, $v0, 1
|
||||
.L800B9F08_ovl1:
|
||||
/* 062158 800B9F08 11E00002 */ beqz $t7, .L800B9F14_ovl1
|
||||
/* 06215C 800B9F0C 00000000 */ nop
|
||||
/* 062160 800B9F10 24420001 */ addiu $v0, $v0, 1
|
||||
.L800B9F14_ovl1:
|
||||
/* 062164 800B9F14 5485FFD3 */ bnel $a0, $a1, .L800B9E64_ovl1
|
||||
/* 062168 800B9F18 90830000 */ lbu $v1, ($a0)
|
||||
/* 06216C 800B9F1C 28410042 */ slti $at, $v0, 0x42
|
||||
/* 062170 800B9F20 10200003 */ beqz $at, .L800B9F30_ovl1
|
||||
/* 062174 800B9F24 3C18800D */ lui $t8, 0x800d
|
||||
/* 062178 800B9F28 03E00008 */ jr $ra
|
||||
/* 06217C 800B9F2C 00001025 */ move $v0, $zero
|
||||
|
||||
.L800B9F30_ovl1:
|
||||
/* 062180 800B9F30 93186BC5 */ lbu $t8, 0x6bc5($t8)
|
||||
/* 062184 800B9F34 00001025 */ move $v0, $zero
|
||||
/* 062188 800B9F38 13000003 */ beqz $t8, .L800B9F48_ovl1
|
||||
/* 06218C 800B9F3C 00000000 */ nop
|
||||
/* 062190 800B9F40 03E00008 */ jr $ra
|
||||
/* 062194 800B9F44 24020001 */ li $v0, 1
|
||||
|
||||
.L800B9F48_ovl1:
|
||||
/* 062198 800B9F48 03E00008 */ jr $ra
|
||||
/* 06219C 800B9F4C 00000000 */ nop
|
@ -1,6 +0,0 @@
|
||||
glabel func_800B9F50
|
||||
/* 0621A0 800B9F50 3C0E800D */ lui $t6, %hi(D_800D6BA0) # $t6, 0x800d
|
||||
/* 0621A4 800B9F54 8DCE6BA0 */ lw $t6, %lo(D_800D6BA0)($t6)
|
||||
/* 0621A8 800B9F58 008E1006 */ srlv $v0, $t6, $a0
|
||||
/* 0621AC 800B9F5C 03E00008 */ jr $ra
|
||||
/* 0621B0 800B9F60 30420001 */ andi $v0, $v0, 1
|
@ -365,7 +365,7 @@ glabel D_800D6B98
|
||||
glabel D_800D6B9C
|
||||
.word 0x00000000
|
||||
|
||||
glabel D_800D6BA0
|
||||
glabel gCutscenesWatched
|
||||
.word 0x00000000
|
||||
|
||||
glabel D_800D6BA4
|
||||
|
@ -1493,7 +1493,7 @@
|
||||
/* 0FA890 80153360 904F0006 */ lbu $t7, 6($v0)
|
||||
/* 0FA894 80153364 55E0000C */ bnezl $t7, .L80153398_ovl4
|
||||
/* 0FA898 80153368 00001025 */ move $v0, $zero
|
||||
/* 0FA89C 8015336C 0C02E7D4 */ jal func_800B9F50
|
||||
/* 0FA89C 8015336C 0C02E7D4 */ jal check_cutscene_watched
|
||||
/* 0FA8A0 80153370 2404000D */ li $a0, 13
|
||||
/* 0FA8A4 80153374 14400007 */ bnez $v0, .L80153394_ovl4
|
||||
/* 0FA8A8 80153378 3C18800D */ lui $t8, %hi(D_800D6BA8) # $t8, 0x800d
|
||||
|
@ -38525,7 +38525,7 @@ glabel func_8017FA7C_ovl5
|
||||
glabel func_8017FB84_ovl5
|
||||
/* 126FF4 8017FB84 27BDFFE8 */ addiu $sp, $sp, -0x18
|
||||
/* 126FF8 8017FB88 AFBF0014 */ sw $ra, 0x14($sp)
|
||||
/* 126FFC 8017FB8C 0C02E7D4 */ jal func_800B9F50
|
||||
/* 126FFC 8017FB8C 0C02E7D4 */ jal check_cutscene_watched
|
||||
/* 127000 8017FB90 00000000 */ nop
|
||||
/* 127004 8017FB94 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
/* 127008 8017FB98 27BD0018 */ addiu $sp, $sp, 0x18
|
||||
|
2084
asm/ovl8/ovl8.s
2084
asm/ovl8/ovl8.s
File diff suppressed because it is too large
Load Diff
11006
data/ovl8/data.s
Normal file
11006
data/ovl8/data.s
Normal file
File diff suppressed because it is too large
Load Diff
@ -1,8 +1,16 @@
|
||||
|
||||
|
||||
// i will cry if this is also a gobj
|
||||
struct UnkStruct800DE350 {
|
||||
u32 unk0;
|
||||
u8 filler[0x44];
|
||||
u32 unk4;
|
||||
u32 unk8;
|
||||
u32 unkC;
|
||||
u32 unk10[4];
|
||||
u32 unk20[4];
|
||||
u32 unk30[3];
|
||||
u32 unk3C;
|
||||
s32 unk40;
|
||||
s32 unk44;
|
||||
s32 unk48;
|
||||
s32 unk4C;
|
||||
};
|
||||
|
@ -198,7 +198,6 @@ SECTIONS
|
||||
BUILD_DIR/libultra.a:dp.o(.text);
|
||||
BUILD_DIR/libultra.a:spsetstat.o(.text);
|
||||
BUILD_DIR/libultra.a:spgetstat.o(.text);
|
||||
|
||||
BUILD_DIR/libultra.a:vimgr.o(.text);
|
||||
BUILD_DIR/libultra.a:vigetcurrcontext.o(.text);
|
||||
BUILD_DIR/libultra.a:writebackdcacheall.o(.text);
|
||||
@ -490,6 +489,7 @@ SECTIONS
|
||||
/* 0x801D0C60 174740-17B360 [6C20] */
|
||||
BEGIN_SEG(ovl8, 0x801D0C60) {
|
||||
BUILD_DIR/asm/ovl8/ovl8.o(.text);
|
||||
BUILD_DIR/data/ovl8/data.o(.data);
|
||||
}
|
||||
END_SEG(ovl8)
|
||||
|
||||
|
@ -91,6 +91,7 @@ struct GObjProcess {
|
||||
struct UnkStruct8004A7C4 *unk18;
|
||||
struct GObjThread *thread;
|
||||
void (*entryPoint)(struct UnkStruct8004A7C4 *);
|
||||
u32 *ptr;
|
||||
};
|
||||
|
||||
// TODO: is this an existing struct instead of a brand new one?
|
||||
|
@ -3,6 +3,7 @@
|
||||
#include "D_8004A7C4.h"
|
||||
#include "types.h"
|
||||
#include "ovl0/ovl0_4.h"
|
||||
#include "ovl0/ovl0_2.h"
|
||||
#include "ovl0/ovl0_2_5.h"
|
||||
|
||||
void load_overlay(u32 ovl);
|
||||
@ -40,18 +41,16 @@ extern const char D_800D5B40[];
|
||||
extern const char D_800D5B48[];
|
||||
|
||||
extern u32 D_8003DE54;
|
||||
extern struct GObjThreadStack *D_8004A7D0;
|
||||
extern struct GObjProcess *D_8004A7D0;
|
||||
extern u32 D_80048D88, D_80048D8C, D_80048D90;
|
||||
|
||||
// a lot of regalloc
|
||||
#ifdef NON_MATCHING
|
||||
OSThread *func_800A2904(void) {
|
||||
OSThread *sp1C;
|
||||
u8 temp_v1;
|
||||
|
||||
// temp_t6 = D_8003DE54;
|
||||
sp1C = NULL;
|
||||
// if (temp_t6 < 5) {
|
||||
// goto **(&jtbl_800D5B50 + (temp_t6 * 4));
|
||||
switch (D_8003DE54) {
|
||||
case 0:
|
||||
func_80022B88("SYS\n");
|
||||
@ -69,27 +68,19 @@ OSThread *func_800A2904(void) {
|
||||
func_80022B88("gobj:%x\n", D_8004A7C4);
|
||||
if (D_8004A7D0 != NULL) {
|
||||
func_80022B88("gp:%x\n", D_8004A7D0);
|
||||
switch (D_8004A7D0->unk14) {
|
||||
switch (D_8004A7D0->kind) {
|
||||
case 0:
|
||||
func_80022B88("gobjthread:%x\n", D_8004A7D0->objThread);
|
||||
func_80022B88("stack:%x\n", D_8004A7D0->objThread->objStack);
|
||||
func_80022B88("thread pc:%x\n", D_8004A7D0->objThread->thread.context.pc);
|
||||
func_80022B88("id:%d\n", D_8004A7D0->objThread->thread.id);
|
||||
func_80022B88("gobjthread:%x\n", D_8004A7D0->thread);
|
||||
func_80022B88("stack:%x\n", D_8004A7D0->thread->objStack);
|
||||
func_80022B88("thread pc:%x\n", D_8004A7D0->thread->thread.context.pc);
|
||||
func_80022B88("id:%d\n", D_8004A7D0->thread->thread.id);
|
||||
func_80022B88("ptr:%x\n", D_8004A7D0->ptr);
|
||||
sp1C = &D_8004A7D0->objThread->thread;
|
||||
sp1C = &D_8004A7D0->thread->thread;
|
||||
break;
|
||||
case 1:
|
||||
// one regalloc over here
|
||||
func_80022B88("func:%x\n", D_8004A7D0->objThread);
|
||||
func_80022B88("func:%x\n", D_8004A7D0->thread);
|
||||
break;
|
||||
}
|
||||
// temp_v1 = D_8004A7D0->unk14;
|
||||
// if (temp_v1 != 0) {
|
||||
// if (temp_v1 != 1) {
|
||||
// } else {
|
||||
// }
|
||||
// } else {
|
||||
// }
|
||||
}
|
||||
func_800A28C0(D_8004A7C4);
|
||||
}
|
||||
@ -350,40 +341,28 @@ loop_5:
|
||||
GLOBAL_ASM("asm/non_matchings/ovl1/ovl1_1/func_800A2E98.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit e0e006e8858ba357d1dcb4dc64f038b7df278aa6
|
||||
void *func_800A3058(void) {
|
||||
s32 temp_v0;
|
||||
void *temp_v0_2;
|
||||
void *phi_v0;
|
||||
void *phi_return;
|
||||
void func_800A3058(void) {
|
||||
u32 i;
|
||||
|
||||
temp_v0 = osTvType;
|
||||
if (temp_v0 != 1) {
|
||||
if (temp_v0 != 2) {
|
||||
switch (osTvType) {
|
||||
default:
|
||||
load_overlay(2);
|
||||
func_80151CEC_ovl1(5);
|
||||
case 2:
|
||||
case 1:
|
||||
func_80004624();
|
||||
}
|
||||
|
||||
func_80004624();
|
||||
|
||||
for (i = 0; i < 4; i++) {
|
||||
if (D_80048E9C[i] != -1) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
D_80004624_ovl1();
|
||||
D_80004624_ovl1();
|
||||
phi_v0 = &D_80048E9C;
|
||||
loop_4:
|
||||
temp_v0_2 = phi_v0 + 1;
|
||||
phi_return = temp_v0_2;
|
||||
if (-1 == *phi_v0) {
|
||||
phi_v0 = temp_v0_2;
|
||||
if (temp_v0_2 != &gControllers) {
|
||||
goto loop_4;
|
||||
}
|
||||
load_overlay(2);
|
||||
phi_return = func_80151CEC_ovl1(4);
|
||||
}
|
||||
return phi_return;
|
||||
load_overlay(2);
|
||||
func_80151CEC_ovl1(4);
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/ovl1/ovl1_1/func_800A3058.s")
|
||||
#endif
|
||||
|
||||
void func_800A30E8(void) {
|
||||
load_overlay(19);
|
||||
@ -443,9 +422,9 @@ loop_2:
|
||||
temp_v0 = (&D_800BE400 + (D_800BE504 * 6)) + phi_s0;
|
||||
if (D_800BE508 == temp_v0->unk0) {
|
||||
if (D_800BE534 == temp_v0->unk1) {
|
||||
if (func_800B9F50(temp_v0->unk2) == 0) {
|
||||
if (check_cutscene_watched(temp_v0->unk2) == 0) {
|
||||
func_800A74D8();
|
||||
func_800B9F90(((&D_800BE400 + (D_800BE504 * 6)) + phi_s0)->unk2, D_800D6B88);
|
||||
set_cutscene_watched(((&D_800BE400 + (D_800BE504 * 6)) + phi_s0)->unk2, D_800D6B88);
|
||||
func_800B9C50(D_800D6B88);
|
||||
load_overlay(4);
|
||||
func_80154D60_ovl1(((&D_800BE400 + (D_800BE504 * 6)) + phi_s0)->unk2, 2);
|
||||
@ -475,10 +454,10 @@ s32 func_800A336C(void) {
|
||||
if (temp_v0 >= 0) {
|
||||
phi_return = temp_v0;
|
||||
if (temp_v0 < 5) {
|
||||
temp_ret = func_800B9F50(*(&D_800BE414 + (temp_v0 * 4)));
|
||||
temp_ret = check_cutscene_watched(*(&D_800BE414 + (temp_v0 * 4)));
|
||||
phi_return = temp_ret;
|
||||
if (temp_ret == 0) {
|
||||
func_800B9F90(*(&D_800BE414 + (D_800BE500 * 4)), D_800D6B88);
|
||||
set_cutscene_watched(*(&D_800BE414 + (D_800BE500 * 4)), D_800D6B88);
|
||||
func_800B9C50(D_800D6B88);
|
||||
load_overlay(4);
|
||||
phi_return = func_80154D60_ovl1(*(&D_800BE414 + (D_800BE500 * 4)), 2);
|
||||
@ -779,9 +758,9 @@ void func_800A377C(s32 arg0) {
|
||||
func_800A3408();
|
||||
continue;
|
||||
case 10: // switch 1
|
||||
if (func_800B9F50(1) == 0) {
|
||||
if (check_cutscene_watched(1) == 0) {
|
||||
load_overlay(4);
|
||||
func_800B9F90(1, D_800D6B88);
|
||||
set_cutscene_watched(1, D_800D6B88);
|
||||
func_800B9C50(D_800D6B88);
|
||||
func_80154D60_ovl1(1, 2);
|
||||
}
|
||||
@ -921,14 +900,14 @@ void func_800A377C(s32 arg0) {
|
||||
D_800BE4F0 = 0x12;
|
||||
if (D_800D6BA8 == 0x64) {
|
||||
D_800BE4F0 = 0xC;
|
||||
if (func_800B9F50(0xD) == 0) {
|
||||
if (check_cutscene_watched(0xD) == 0) {
|
||||
D_800BE500 = 6;
|
||||
D_800D6B98 = 6;
|
||||
D_800BE508 = 0;
|
||||
D_800BE504 = 0;
|
||||
D_800D6B9C = 0;
|
||||
load_overlay(4);
|
||||
func_800B9F90(0xD, D_800D6B88);
|
||||
set_cutscene_watched(0xD, D_800D6B88);
|
||||
func_800B9C50(D_800D6B88);
|
||||
func_80154D60_ovl1(0xD, 2);
|
||||
func_800A2D68();
|
||||
@ -980,19 +959,19 @@ block_77:
|
||||
continue;
|
||||
case 17: // switch 1
|
||||
load_overlay(4);
|
||||
func_800B9F90(0x11, D_800D6B88);
|
||||
func_800B9F90(0x13, D_800D6B88);
|
||||
set_cutscene_watched(0x11, D_800D6B88);
|
||||
set_cutscene_watched(0x13, D_800D6B88);
|
||||
func_800B9C50(D_800D6B88);
|
||||
func_80154D60_ovl1(0xE, 2);
|
||||
D_800BE4F0 = 1;
|
||||
continue;
|
||||
case 18: // switch 1
|
||||
load_overlay(4);
|
||||
func_800B9F90(0xD, D_800D6B88);
|
||||
func_800B9F90(0x11, D_800D6B88);
|
||||
func_800B9F90(0x12, D_800D6B88);
|
||||
func_800B9F90(0x13, D_800D6B88);
|
||||
func_800B9F90(0x10, D_800D6B88);
|
||||
set_cutscene_watched(0xD, D_800D6B88);
|
||||
set_cutscene_watched(0x11, D_800D6B88);
|
||||
set_cutscene_watched(0x12, D_800D6B88);
|
||||
set_cutscene_watched(0x13, D_800D6B88);
|
||||
set_cutscene_watched(0x10, D_800D6B88);
|
||||
func_800B9C50(D_800D6B88);
|
||||
func_80154D60_ovl1(0xF, 0xA);
|
||||
D_800BE4F0 = 1;
|
||||
@ -1396,7 +1375,7 @@ GLOBAL_ASM("asm/non_matchings/ovl1/ovl1_1/func_800A4794.s")
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit e0e006e8858ba357d1dcb4dc64f038b7df278aa6
|
||||
void func_800A4958(s32 arg0, void *arg1, void *arg2) {
|
||||
void func_800A4958(Vector *arg0, u32 arg1, Vector *arg2) {
|
||||
? sp90;
|
||||
? sp50;
|
||||
f32 temp_f0;
|
||||
@ -1929,48 +1908,36 @@ GLOBAL_ASM("asm/non_matchings/ovl1/ovl1_1/func_800A54FC.s")
|
||||
#endif
|
||||
|
||||
|
||||
// D_80048F28 is really gPlayerControllers[0].stickX
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit e0e006e8858ba357d1dcb4dc64f038b7df278aa6
|
||||
s8 func_800A5560(u32 arg0) {
|
||||
s8 temp_v1;
|
||||
u32 phi_a0;
|
||||
s32 phi_v1;
|
||||
s32 phi_v1_2;
|
||||
s32 phi_v1_3;
|
||||
s8 phi_v1_4;
|
||||
s32 phi_v1_5;
|
||||
s32 func_800A5560(u32 cont) {
|
||||
s32 v1;
|
||||
|
||||
phi_a0 = arg0;
|
||||
if (arg0 >= 4) {
|
||||
phi_a0 = 3;
|
||||
if (cont >= 4) {
|
||||
cont = 3;
|
||||
}
|
||||
temp_v1 = *(&D_80048F28 + (((phi_a0 * 4) + phi_a0) * 2));
|
||||
if (temp_v1 > 0) {
|
||||
phi_v1 = temp_v1;
|
||||
if (temp_v1 < 8) {
|
||||
phi_v1 = 8;
|
||||
|
||||
v1 = gPlayerControllers[cont].stickX;
|
||||
|
||||
if (v1 > 0) {
|
||||
if (v1 < 8) {
|
||||
v1 = 8;
|
||||
}
|
||||
phi_v1_3 = phi_v1;
|
||||
if (phi_v1 >= 0x49) {
|
||||
phi_v1_3 = 0x48;
|
||||
if (v1 >= 0x49) {
|
||||
v1 = 0x48;
|
||||
}
|
||||
return phi_v1_3 - 8;
|
||||
return v1 - 8;
|
||||
}
|
||||
phi_v1_4 = temp_v1;
|
||||
if (temp_v1 < 0) {
|
||||
phi_v1_2 = temp_v1;
|
||||
if (temp_v1 >= -7) {
|
||||
phi_v1_2 = -8;
|
||||
if (v1 < 0) {
|
||||
if (v1 >= -7) {
|
||||
v1 = -8;
|
||||
}
|
||||
phi_v1_5 = phi_v1_2;
|
||||
if (phi_v1_2 < -0x48) {
|
||||
phi_v1_5 = -0x48;
|
||||
if (v1 < -0x48) {
|
||||
v1 = -0x48;
|
||||
}
|
||||
phi_v1_4 = phi_v1_5 + 8;
|
||||
v1 += 8;
|
||||
}
|
||||
return phi_v1_4;
|
||||
return v1;
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/ovl1/ovl1_1/func_800A5560.s")
|
||||
@ -1980,45 +1947,34 @@ GLOBAL_ASM("asm/non_matchings/ovl1/ovl1_1/func_800A5560.s")
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit e0e006e8858ba357d1dcb4dc64f038b7df278aa6
|
||||
s8 func_800A55E0(u32 arg0) {
|
||||
s8 temp_v1;
|
||||
u32 phi_a0;
|
||||
s32 phi_v1;
|
||||
s32 phi_v1_2;
|
||||
s32 phi_v1_3;
|
||||
s8 phi_v1_4;
|
||||
s32 phi_v1_5;
|
||||
s32 func_800A55E0(u32 cont) {
|
||||
s32 v1;
|
||||
|
||||
phi_a0 = arg0;
|
||||
if (arg0 >= 4) {
|
||||
phi_a0 = 3;
|
||||
if (cont >= 4) {
|
||||
cont = 3;
|
||||
}
|
||||
temp_v1 = *(&D_80048F29 + (((phi_a0 * 4) + phi_a0) * 2));
|
||||
if (temp_v1 > 0) {
|
||||
phi_v1 = temp_v1;
|
||||
if (temp_v1 < 8) {
|
||||
phi_v1 = 8;
|
||||
v1 = &gPlayerControllers[cont].stickY;
|
||||
if (v1 > 0) {
|
||||
if (v1 < 8) {
|
||||
v1 = 8;
|
||||
}
|
||||
phi_v1_3 = phi_v1;
|
||||
if (phi_v1 >= 0x49) {
|
||||
phi_v1_3 = 0x48;
|
||||
if (v1 >= 0x49) {
|
||||
v1 = 0x48;
|
||||
}
|
||||
return phi_v1_3 - 8;
|
||||
return v1 - 8;
|
||||
}
|
||||
phi_v1_4 = temp_v1;
|
||||
if (temp_v1 < 0) {
|
||||
phi_v1_2 = temp_v1;
|
||||
if (temp_v1 >= -7) {
|
||||
phi_v1_2 = -8;
|
||||
if (v1 < 0) {
|
||||
if (v1 >= -7) {
|
||||
v1 = -8;
|
||||
}
|
||||
phi_v1_5 = phi_v1_2;
|
||||
if (phi_v1_2 < -0x48) {
|
||||
phi_v1_5 = -0x48;
|
||||
if (v1 < -0x48) {
|
||||
v1 = -0x48;
|
||||
}
|
||||
phi_v1_4 = phi_v1_5 + 8;
|
||||
v1 = v1 + 8;
|
||||
}
|
||||
return phi_v1_4;
|
||||
return v1;
|
||||
}
|
||||
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/ovl1/ovl1_1/func_800A55E0.s")
|
||||
#endif
|
||||
|
@ -86,17 +86,7 @@ void func_800BBC6C(void) {
|
||||
D_800D6F38 = D_800ED4E0[0]->unk3C;
|
||||
}
|
||||
|
||||
extern struct UnkStruct80048F20 {
|
||||
// u16 unk0[4];
|
||||
u16 unk0;
|
||||
u16 unk2;
|
||||
u16 unk4;
|
||||
u16 unk6;
|
||||
u8 unk8;
|
||||
u8 unk9;
|
||||
u8 unkA;
|
||||
u8 unkB;
|
||||
} gPlayerControllers;
|
||||
#include "ovl0/ovl0_2.h"
|
||||
extern u32 D_800BE4F8;
|
||||
|
||||
|
||||
@ -116,17 +106,15 @@ void func_800BBDC4(void) {
|
||||
u16 phi_a2;
|
||||
|
||||
temp_v1 = D_800ED4EC;
|
||||
gPlayerControllers.unk4 = 0;
|
||||
gPlayerControllers.unk2 = 0;
|
||||
gPlayerControllers.unk0 = 0;
|
||||
gPlayerControllers[0].buttonHeldLong = 0;
|
||||
gPlayerControllers[0].buttonPressed = 0;
|
||||
gPlayerControllers[0].buttonHeld = 0;
|
||||
if (temp_v1 < 0) {
|
||||
D_800BE4F8 = 2;
|
||||
D_800D6F38 = 0;
|
||||
return;
|
||||
}
|
||||
temp_t8 = D_800ED4F4 - 1;
|
||||
D_800ED4F4 = temp_t8;
|
||||
if (temp_t8 <= 0) {
|
||||
if (--D_800ED4F4 <= 0) {
|
||||
temp_a0 = *D_800ED4E0;
|
||||
temp_t4 = temp_v1 + 1;
|
||||
temp_a1 = (temp_a0 + (temp_v1 * 2))->unk100;
|
||||
@ -179,14 +167,14 @@ void func_800BBDC4(void) {
|
||||
if (temp_a1_3 & 0x80) {
|
||||
phi_a2 = temp_a0_2->unk106;
|
||||
}
|
||||
gPlayerControllers.unk0 = phi_t0;
|
||||
gPlayerControllers.unk2 = phi_a3;
|
||||
gPlayerControllers.unk4 = phi_a2;
|
||||
gPlayerControllers[0].buttonHeld = phi_t0;
|
||||
gPlayerControllers[0].buttonPressed = phi_a3;
|
||||
gPlayerControllers[0].buttonHeldLong = phi_a2;
|
||||
if (phi_t0 & 0x80) {
|
||||
gPlayerControllers.unk9 = 0x40;
|
||||
gPlayerControllers[0].stickY = 0x40;
|
||||
}
|
||||
if (phi_t0 & 0x40) {
|
||||
gPlayerControllers.unk9 = -0x40;
|
||||
gPlayerControllers[0].stickY = -0x40;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -3655,66 +3655,33 @@ loop_3:
|
||||
GLOBAL_ASM("asm/non_matchings/ovl1/ovl1_8/func_800B8208.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3ec45aadfc2cb619035fb802d88c52eacfab0326
|
||||
struct UnkStruct8004A7C4 *func_800B8300(s32 arg0) {
|
||||
struct UnkStruct8004A7C4 *temp_v0;
|
||||
u32 temp_v1;
|
||||
u32 temp_v1_2;
|
||||
u32 temp_v1_3;
|
||||
u32 temp_v1_4;
|
||||
|
||||
temp_v0 = D_8004A7C4;
|
||||
temp_v1 = temp_v0->objId;
|
||||
gEntitiesPosXArray[temp_v1] = gEntitiesPosXArray[D_800E0D50[temp_v1]];
|
||||
temp_v1_2 = temp_v0->objId;
|
||||
gEntitiesPosYArray[temp_v1_2] = gEntitiesPosYArray[D_800E0D50[temp_v1_2]];
|
||||
temp_v1_3 = temp_v0->objId;
|
||||
gEntitiesPosZArray[temp_v1_3] = gEntitiesPosZArray[D_800E0D50[temp_v1_3]];
|
||||
temp_v1_4 = temp_v0->objId;
|
||||
gEntitiesAngleYArray[temp_v1_4] = gEntitiesAngleYArray[D_800E0D50[temp_v1_4]];
|
||||
return temp_v0;
|
||||
void func_800B8300(s32 arg0) {
|
||||
gEntitiesPosXArray[D_8004A7C4->objId] = gEntitiesPosXArray[D_800E0D50[D_8004A7C4->objId]];
|
||||
gEntitiesPosYArray[D_8004A7C4->objId] = gEntitiesPosYArray[D_800E0D50[D_8004A7C4->objId]];
|
||||
gEntitiesPosZArray[D_8004A7C4->objId] = gEntitiesPosZArray[D_800E0D50[D_8004A7C4->objId]];
|
||||
gEntitiesAngleYArray[D_8004A7C4->objId] = gEntitiesAngleYArray[D_800E0D50[D_8004A7C4->objId]];
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/ovl1/ovl1_8/func_800B8300.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3ec45aadfc2cb619035fb802d88c52eacfab0326
|
||||
extern struct UnkStruct8004A7C4 *D_800DE350[];
|
||||
void func_800B3234(f32, f32, f32);
|
||||
// how
|
||||
#ifdef NON_MATCHING
|
||||
void func_800B83C8(s32 arg0) {
|
||||
f32 sp30;
|
||||
f32 sp2C;
|
||||
f32 sp28;
|
||||
f32 sp24;
|
||||
f32 *temp_a2;
|
||||
struct UnkStruct8004A7C4 *temp_v1;
|
||||
struct UnkStruct8004A7C4 *temp_v1_2;
|
||||
u32 temp_v0;
|
||||
u32 temp_v0_2;
|
||||
u32 temp_v0_3;
|
||||
u32 temp_v0_4;
|
||||
u32 temp_v0_5;
|
||||
Vector sp30;
|
||||
Vector sp24;
|
||||
|
||||
temp_v1 = D_8004A7C4;
|
||||
temp_v0 = temp_v1->objId;
|
||||
temp_a2 = &sp24;
|
||||
sp24 = D_800E2090[temp_v0];
|
||||
sp28 = D_800E2250[temp_v1->objId];
|
||||
sp2C = D_800E2410[temp_v1->objId];
|
||||
func_800A4958(&sp30, D_800DE350[D_800E0D50[temp_v0]]->unk3C->unk10, temp_a2);
|
||||
temp_v1_2 = D_8004A7C4;
|
||||
temp_v0_2 = temp_v1_2->objId;
|
||||
D_800E2B10[temp_v0_2] = gEntitiesPosXArray[temp_v0_2];
|
||||
temp_v0_3 = temp_v1_2->objId;
|
||||
D_800E2CD0[temp_v0_3] = gEntitiesPosYArray[temp_v0_3];
|
||||
temp_v0_4 = temp_v1_2->objId;
|
||||
D_800E2E90[temp_v0_4] = gEntitiesPosZArray[temp_v0_4];
|
||||
gEntitiesPosXArray[temp_v1_2->objId] = sp30;
|
||||
gEntitiesPosYArray[temp_v1_2->objId] = sp34;
|
||||
gEntitiesPosZArray[temp_v1_2->objId] = sp38;
|
||||
D_800E9C60[temp_v1_2->objId] = 1;
|
||||
temp_v0_5 = temp_v1_2->objId;
|
||||
func_800B3234(gEntitiesPosXArray[temp_v0_5], gEntitiesPosYArray[temp_v0_5], gEntitiesPosXArray, gEntitiesPosYArray, (bitwise s32) gEntitiesPosZArray[temp_v0_5], gEntitiesPosZArray);
|
||||
sp24.x = D_800E2090[D_8004A7C4->objId];
|
||||
sp24.y = D_800E2250[D_8004A7C4->objId];
|
||||
sp24.z = D_800E2410[D_8004A7C4->objId];
|
||||
func_800A4958(&sp30, D_800DE350[D_800E0D50[D_8004A7C4->objId]]->unk3C->unk10, &sp24);
|
||||
D_800E2B10[D_8004A7C4->objId] = gEntitiesPosXArray[D_8004A7C4->objId];
|
||||
D_800E2CD0[D_8004A7C4->objId] = gEntitiesPosYArray[D_8004A7C4->objId];
|
||||
D_800E2E90[D_8004A7C4->objId] = gEntitiesPosZArray[D_8004A7C4->objId];
|
||||
gEntitiesPosXArray[D_8004A7C4->objId] = sp30.x;
|
||||
gEntitiesPosYArray[D_8004A7C4->objId] = sp30.y;
|
||||
gEntitiesPosZArray[D_8004A7C4->objId] = sp30.z;
|
||||
D_800E9C60[D_8004A7C4->objId] = 1;
|
||||
func_800B3234(gEntitiesPosXArray[D_8004A7C4->objId], gEntitiesPosYArray[D_8004A7C4->objId], gEntitiesPosZArray[D_8004A7C4->objId]);
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/ovl1/ovl1_8/func_800B83C8.s")
|
||||
|
@ -781,7 +781,7 @@ u8 func_800B96A0(s32 arg0, s32 arg1) {
|
||||
gCurrentWorld = gSaveBuffer1.files[arg0].world;
|
||||
gCurrentLevel = gSaveBuffer1.files[arg0].level;
|
||||
D_800D6B98 = gSaveBuffer1.files[arg0].data8;
|
||||
D_800D6BA0 = gSaveBuffer1.files[arg0].cutscenesWatched;
|
||||
gCutscenesWatched = gSaveBuffer1.files[arg0].cutscenesWatched;
|
||||
D_800D6BA8 = gSaveBuffer1.files[arg0].percentComplete;
|
||||
D_800D6BAC = gSaveBuffer1.files[arg0].soundSetting;
|
||||
gHudDisplayMode = gSaveBuffer1.files[arg0].hudDisplay;
|
||||
@ -794,7 +794,7 @@ u8 func_800B96A0(s32 arg0, s32 arg1) {
|
||||
gSaveBuffer1.files[arg0].world = gCurrentWorld;
|
||||
gSaveBuffer1.files[arg0].level = gCurrentLevel;
|
||||
gSaveBuffer1.files[arg0].data8 = D_800D6B98;
|
||||
gSaveBuffer1.files[arg0].cutscenesWatched = D_800D6BA0;
|
||||
gSaveBuffer1.files[arg0].cutscenesWatched = gCutscenesWatched;
|
||||
gSaveBuffer1.files[arg0].percentComplete = D_800D6BA8;
|
||||
gSaveBuffer1.files[arg0].soundSetting = D_800D6BAC;
|
||||
gSaveBuffer1.files[arg0].hudDisplay = gHudDisplayMode;
|
||||
@ -998,108 +998,39 @@ GLOBAL_ASM("asm/non_matchings/ovl1/ovl1_9/func_800B9DC8.s")
|
||||
GLOBAL_ASM("asm/non_matchings/ovl1/ovl1_9/func_800B9DF8.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
? func_800B9E4C(void) {
|
||||
u8 temp_v1;
|
||||
u8 temp_v1_2;
|
||||
u8 temp_v1_3;
|
||||
u8 temp_v1_4;
|
||||
void *temp_a0;
|
||||
void *phi_a0;
|
||||
s32 phi_v0;
|
||||
s32 phi_v0_2;
|
||||
s32 phi_v0_3;
|
||||
s32 phi_v0_4;
|
||||
s32 phi_v0_5;
|
||||
s32 phi_v0_6;
|
||||
s32 phi_v0_7;
|
||||
s32 phi_v0_8;
|
||||
s32 phi_v0_9;
|
||||
s32 phi_v0_10;
|
||||
s32 phi_v0_11;
|
||||
s32 phi_v0_12;
|
||||
s32 phi_v0_13;
|
||||
extern u8 D_800D6BC8[];
|
||||
extern u8 D_800D6BC5;
|
||||
|
||||
phi_a0 = &D_800D6BC8;
|
||||
phi_v0_13 = 0;
|
||||
loop_1:
|
||||
temp_v1 = phi_a0->unk0;
|
||||
phi_v0_12 = phi_v0_13;
|
||||
if ((temp_v1 & 1) != 0) {
|
||||
phi_v0_12 = phi_v0_13 + 1;
|
||||
s32 func_800B9E4C(void) {
|
||||
s32 v0;
|
||||
s32 a0;
|
||||
|
||||
v0 = 0;
|
||||
|
||||
for (a0 = 0; a0 < 24; a0++) {
|
||||
if (D_800D6BC8[a0] & 1) {
|
||||
v0++;
|
||||
}
|
||||
if (D_800D6BC8[a0] & 2) {
|
||||
v0++;
|
||||
}
|
||||
if (D_800D6BC8[a0] & 4) {
|
||||
v0++;
|
||||
}
|
||||
}
|
||||
phi_v0_11 = phi_v0_12;
|
||||
if ((temp_v1 & 2) != 0) {
|
||||
phi_v0_11 = phi_v0_12 + 1;
|
||||
}
|
||||
phi_v0_10 = phi_v0_11;
|
||||
if ((temp_v1 & 4) != 0) {
|
||||
phi_v0_10 = phi_v0_11 + 1;
|
||||
}
|
||||
temp_v1_2 = phi_a0->unk1;
|
||||
phi_v0_9 = phi_v0_10;
|
||||
if ((temp_v1_2 & 1) != 0) {
|
||||
phi_v0_9 = phi_v0_10 + 1;
|
||||
}
|
||||
phi_v0_8 = phi_v0_9;
|
||||
if ((temp_v1_2 & 2) != 0) {
|
||||
phi_v0_8 = phi_v0_9 + 1;
|
||||
}
|
||||
phi_v0_7 = phi_v0_8;
|
||||
if ((temp_v1_2 & 4) != 0) {
|
||||
phi_v0_7 = phi_v0_8 + 1;
|
||||
}
|
||||
temp_v1_3 = phi_a0->unk2;
|
||||
phi_v0_6 = phi_v0_7;
|
||||
if ((temp_v1_3 & 1) != 0) {
|
||||
phi_v0_6 = phi_v0_7 + 1;
|
||||
}
|
||||
phi_v0_5 = phi_v0_6;
|
||||
if ((temp_v1_3 & 2) != 0) {
|
||||
phi_v0_5 = phi_v0_6 + 1;
|
||||
}
|
||||
phi_v0_4 = phi_v0_5;
|
||||
if ((temp_v1_3 & 4) != 0) {
|
||||
phi_v0_4 = phi_v0_5 + 1;
|
||||
}
|
||||
temp_v1_4 = phi_a0->unk3;
|
||||
temp_a0 = phi_a0 + 4;
|
||||
phi_v0_3 = phi_v0_4;
|
||||
if ((temp_v1_4 & 1) != 0) {
|
||||
phi_v0_3 = phi_v0_4 + 1;
|
||||
}
|
||||
phi_v0_2 = phi_v0_3;
|
||||
if ((temp_v1_4 & 2) != 0) {
|
||||
phi_v0_2 = phi_v0_3 + 1;
|
||||
}
|
||||
phi_v0 = phi_v0_2;
|
||||
if ((temp_v1_4 & 4) != 0) {
|
||||
phi_v0 = phi_v0_2 + 1;
|
||||
}
|
||||
phi_a0 = temp_a0;
|
||||
phi_v0_13 = phi_v0;
|
||||
if (temp_a0 != &D_800D6BE0) {
|
||||
goto loop_1;
|
||||
}
|
||||
if (phi_v0 < 0x42) {
|
||||
if (v0 < 0x42) {
|
||||
return 0;
|
||||
}
|
||||
if (*0x800D6BC5 != 0) {
|
||||
if (D_800D6BC5 != 0) {
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/ovl1/ovl1_9/func_800B9E4C.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
s32 func_800B9F50(s32 arg0) {
|
||||
return (D_800D6BA0 >> arg0) & 1;
|
||||
extern u32 gCutscenesWatched;
|
||||
s32 check_cutscene_watched(s32 arg0) {
|
||||
return (gCutscenesWatched >> arg0) & 1;
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/ovl1/ovl1_9/func_800B9F50.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
s32 func_800B9F64(s32 arg0, s32 arg1) {
|
||||
@ -1110,14 +1041,13 @@ GLOBAL_ASM("asm/non_matchings/ovl1/ovl1_9/func_800B9F64.s")
|
||||
#endif
|
||||
|
||||
|
||||
extern u32 D_800D6BA0;
|
||||
s32 func_800B9F90(s32 arg0, s32 fileNum) {
|
||||
D_800D6BA0 |= (1 << arg0);
|
||||
s32 set_cutscene_watched(s32 arg0, s32 fileNum) {
|
||||
gCutscenesWatched |= (1 << arg0);
|
||||
|
||||
if (fileNum >= 0 && fileNum < 3) {
|
||||
gSaveBuffer1.files[fileNum].cutscenesWatched = D_800D6BA0;
|
||||
gSaveBuffer1.files[fileNum].cutscenesWatched = gCutscenesWatched;
|
||||
}
|
||||
return D_800D6BA0;
|
||||
return gCutscenesWatched;
|
||||
}
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
|
@ -277,6 +277,9 @@ void func_80151CC8_ovl4(Gfx **arg0) {
|
||||
gSPDisplayList((*arg0)++, &D_8015A018_ovl4);
|
||||
}
|
||||
|
||||
|
||||
extern u8 D_8018EE60[]; // ovl5 bss end
|
||||
void func_800A41B0(f32);
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3ec45aadfc2cb619035fb802d88c52eacfab0326
|
||||
s32 func_80151CEC_ovl4(s32 arg0) {
|
||||
@ -289,26 +292,14 @@ s32 func_80151CEC_ovl4(s32 arg0) {
|
||||
func_80002B88_ovl4();
|
||||
func_800A74D8();
|
||||
func_80020998_ovl4(0, 0x7800);
|
||||
func_800A41B0(0x40000000);
|
||||
D_8015A048.unkC = &D_8012EB00 - 0x1900;
|
||||
func_800A41B0(2.0f);
|
||||
D_8015A048_ovl4.unkC = &D_8012EB00 - 0x1900;
|
||||
func_80007BA4_ovl4(&D_8015A048);
|
||||
D_8015A064.unk10 = &gFrameBuffer - &D_8018EE60;
|
||||
D_8015A064_ovl4.unk10 = &gFrameBuffer - &D_8018EE60;
|
||||
phi_v0 = &D_803D6900;
|
||||
phi_a0 = &gFrameBuffer;
|
||||
loop_1:
|
||||
phi_v0->unk3F00 = 1;
|
||||
phi_a0->unk0 = 1;
|
||||
phi_v0->unk3F02 = 1;
|
||||
phi_a0->unk2 = 1;
|
||||
phi_v0->unk3F04 = 1;
|
||||
phi_a0->unk4 = 1;
|
||||
phi_v0->unk3F06 = 1;
|
||||
temp_v0 = phi_v0 + 8;
|
||||
phi_a0->unk6 = 1;
|
||||
phi_v0 = temp_v0;
|
||||
phi_a0 = phi_a0 + 8;
|
||||
if (temp_v0 != &D_803FC100) {
|
||||
goto loop_1;
|
||||
for (phi_v0 = 0; phi_v0 < 0x25800; phi_v0++) {
|
||||
D_803D6900[i] = 1;
|
||||
}
|
||||
func_80007380(&D_8015A064, &D_803FC100, &D_8015A064);
|
||||
func_800BB3F0();
|
||||
|
@ -167,7 +167,7 @@ s32 func_8015874C_ovl4(void) {
|
||||
if (D_800D6BA8 != 0x64) {
|
||||
return 5;
|
||||
}
|
||||
if (func_800B9F50(0xD) == 0) {
|
||||
if (check_cutscene_watched(0xD) == 0) {
|
||||
return 5;
|
||||
}
|
||||
return 6;
|
||||
|
@ -23,6 +23,7 @@ extern Gfx* gDisplayListHeads[4];
|
||||
extern u32 D_800DD8D0[];
|
||||
extern u32 D_800E0650[];
|
||||
|
||||
|
||||
extern Lights1 D_800BE548;
|
||||
|
||||
#define gSPDoubleLights1(pkt, lt)\
|
||||
@ -254,6 +255,7 @@ s32 func_801BC794_ovl7(s32 arg0) {
|
||||
* Full explanation of the non-matching cause in this function:
|
||||
* - Some cases in this function do 2 gSPSetLights1's on D_800BE548.
|
||||
* - Both Lights macros use the same command for the first half of the ucode
|
||||
* (0xDB000018)
|
||||
* - The original code knows to preserve this top half of the command
|
||||
* in a register in order to save a few instructions
|
||||
* - However, in the current function, the top half is reloaded for both macros,
|
||||
|
@ -2,7 +2,7 @@ import sys, os,binascii, struct
|
||||
addr = sys.argv[2]
|
||||
file = open(sys.argv[1],'rb')
|
||||
|
||||
specificOvl = "_ovl5"
|
||||
specificOvl = "_ovl8"
|
||||
|
||||
if len(sys.argv) == 4:
|
||||
specificOvl = sys.argv[3]
|
||||
|
@ -764,7 +764,6 @@ func_800B96A0 = 0x800B96A0;
|
||||
func_800BE320 = 0x800BE320;
|
||||
func_800A2B9C = 0x800A2B9C;
|
||||
func_800A6B18 = 0x800A6B18;
|
||||
func_800A3058 = 0x800A3058;
|
||||
func_800A3228 = 0x800A3228;
|
||||
func_800A3128 = 0x800A3128;
|
||||
func_800B87E0 = 0x800B87E0;
|
||||
@ -797,7 +796,6 @@ func_800A4414 = 0x800A4414;
|
||||
func_800A465C = 0x800A465C;
|
||||
func_800A4598 = 0x800A4598;
|
||||
func_800A55E0 = 0x800A55E0;
|
||||
func_800A5560 = 0x800A5560;
|
||||
D_800D6B29 = 0x800D6B29;
|
||||
D_800D6B2E = 0x800D6B2E;
|
||||
D_800D6B2B = 0x800D6B2B;
|
||||
|
Loading…
Reference in New Issue
Block a user