1
0
mirror of https://github.com/zeldaret/oot.git synced 2024-09-21 04:24:43 +00:00

Match/Improve a bunch of non matchings (#342)

This commit is contained in:
Roman971 2020-08-23 23:50:30 +02:00 committed by GitHub
parent 281aaa0cb6
commit 49609dd78b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
37 changed files with 137 additions and 2673 deletions

View File

@ -1,121 +0,0 @@
glabel __osGetId
/* B79BE4 80102A44 27BDFF90 */ addiu $sp, $sp, -0x70
/* B79BE8 80102A48 AFBF001C */ sw $ra, 0x1c($sp)
/* B79BEC 80102A4C AFB10018 */ sw $s1, 0x18($sp)
/* B79BF0 80102A50 AFB00014 */ sw $s0, 0x14($sp)
/* B79BF4 80102A54 908E0065 */ lbu $t6, 0x65($a0)
/* B79BF8 80102A58 00808025 */ move $s0, $a0
/* B79BFC 80102A5C 51C00008 */ beql $t6, $zero, .L80102A80
/* B79C00 80102A60 8E040004 */ lw $a0, 4($s0)
/* B79C04 80102A64 0C041320 */ jal __osPfsSelectBank
/* B79C08 80102A68 00002825 */ move $a1, $zero
/* B79C0C 80102A6C 50400004 */ beql $v0, $zero, .L80102A80
/* B79C10 80102A70 8E040004 */ lw $a0, 4($s0)
/* B79C14 80102A74 1000005A */ b .L80102BE0
/* B79C18 80102A78 8FBF001C */ lw $ra, 0x1c($sp)
/* B79C1C 80102A7C 8E040004 */ lw $a0, 4($s0)
.L80102A80:
/* B79C20 80102A80 8E050008 */ lw $a1, 8($s0)
/* B79C24 80102A84 24060001 */ li $a2, 1
/* B79C28 80102A88 0C0417D0 */ jal __osContRamRead
/* B79C2C 80102A8C 27A7004C */ addiu $a3, $sp, 0x4c
/* B79C30 80102A90 10400003 */ beqz $v0, .L80102AA0
/* B79C34 80102A94 27A4004C */ addiu $a0, $sp, 0x4c
/* B79C38 80102A98 10000051 */ b .L80102BE0
/* B79C3C 80102A9C 8FBF001C */ lw $ra, 0x1c($sp)
.L80102AA0:
/* B79C40 80102AA0 27A5006E */ addiu $a1, $sp, 0x6e
/* B79C44 80102AA4 0C040925 */ jal __osIdCheckSum
/* B79C48 80102AA8 27A6006C */ addiu $a2, $sp, 0x6c
/* B79C4C 80102AAC 97AF006E */ lhu $t7, 0x6e($sp)
/* B79C50 80102AB0 97B80068 */ lhu $t8, 0x68($sp)
/* B79C54 80102AB4 27A5004C */ addiu $a1, $sp, 0x4c
/* B79C58 80102AB8 00A08825 */ move $s1, $a1
/* B79C5C 80102ABC 15F80004 */ bne $t7, $t8, .L80102AD0
/* B79C60 80102AC0 97B9006C */ lhu $t9, 0x6c($sp)
/* B79C64 80102AC4 97A9006A */ lhu $t1, 0x6a($sp)
/* B79C68 80102AC8 53290015 */ beql $t9, $t1, .L80102B20
/* B79C6C 80102ACC 962A0018 */ lhu $t2, 0x18($s1)
.L80102AD0:
/* B79C70 80102AD0 0C040A38 */ jal __osCheckPackId
/* B79C74 80102AD4 02002025 */ move $a0, $s0
/* B79C78 80102AD8 2401000A */ li $at, 10
/* B79C7C 80102ADC 1441000B */ bne $v0, $at, .L80102B0C
/* B79C80 80102AE0 00401825 */ move $v1, $v0
/* B79C84 80102AE4 02002025 */ move $a0, $s0
/* B79C88 80102AE8 27A5004C */ addiu $a1, $sp, 0x4c
/* B79C8C 80102AEC 0C040964 */ jal __osRepairPackId
/* B79C90 80102AF0 27A60028 */ addiu $a2, $sp, 0x28
/* B79C94 80102AF4 10400003 */ beqz $v0, .L80102B04
/* B79C98 80102AF8 00000000 */ nop
/* B79C9C 80102AFC 10000038 */ b .L80102BE0
/* B79CA0 80102B00 8FBF001C */ lw $ra, 0x1c($sp)
.L80102B04:
/* B79CA4 80102B04 10000005 */ b .L80102B1C
/* B79CA8 80102B08 27B10028 */ addiu $s1, $sp, 0x28
.L80102B0C:
/* B79CAC 80102B0C 50400004 */ beql $v0, $zero, .L80102B20
/* B79CB0 80102B10 962A0018 */ lhu $t2, 0x18($s1)
/* B79CB4 80102B14 10000031 */ b .L80102BDC
/* B79CB8 80102B18 00601025 */ move $v0, $v1
.L80102B1C:
/* B79CBC 80102B1C 962A0018 */ lhu $t2, 0x18($s1)
.L80102B20:
/* B79CC0 80102B20 02002025 */ move $a0, $s0
/* B79CC4 80102B24 02202825 */ move $a1, $s1
/* B79CC8 80102B28 314B0001 */ andi $t3, $t2, 1
/* B79CCC 80102B2C 5560000D */ bnezl $t3, .L80102B64
/* B79CD0 80102B30 02202025 */ move $a0, $s1
/* B79CD4 80102B34 0C040964 */ jal __osRepairPackId
/* B79CD8 80102B38 27A60028 */ addiu $a2, $sp, 0x28
/* B79CDC 80102B3C 10400003 */ beqz $v0, .L80102B4C
/* B79CE0 80102B40 97AC0040 */ lhu $t4, 0x40($sp)
/* B79CE4 80102B44 10000026 */ b .L80102BE0
/* B79CE8 80102B48 8FBF001C */ lw $ra, 0x1c($sp)
.L80102B4C:
/* B79CEC 80102B4C 318D0001 */ andi $t5, $t4, 1
/* B79CF0 80102B50 15A00003 */ bnez $t5, .L80102B60
/* B79CF4 80102B54 27B10028 */ addiu $s1, $sp, 0x28
/* B79CF8 80102B58 10000020 */ b .L80102BDC
/* B79CFC 80102B5C 2402000B */ li $v0, 11
.L80102B60:
/* B79D00 80102B60 02202025 */ move $a0, $s1
.L80102B64:
/* B79D04 80102B64 2605000C */ addiu $a1, $s0, 0xc
/* B79D08 80102B68 0C001BC4 */ jal bcopy
/* B79D0C 80102B6C 24060020 */ li $a2, 32
/* B79D10 80102B70 922E001B */ lbu $t6, 0x1b($s1)
/* B79D14 80102B74 24090010 */ li $t1, 16
/* B79D18 80102B78 240A0008 */ li $t2, 8
/* B79D1C 80102B7C AE0E004C */ sw $t6, 0x4c($s0)
/* B79D20 80102B80 922F001A */ lbu $t7, 0x1a($s1)
/* B79D24 80102B84 AE090050 */ sw $t1, 0x50($s0)
/* B79D28 80102B88 AE0A0054 */ sw $t2, 0x54($s0)
/* B79D2C 80102B8C 31E200FF */ andi $v0, $t7, 0xff
/* B79D30 80102B90 000218C0 */ sll $v1, $v0, 3
/* B79D34 80102B94 0002C040 */ sll $t8, $v0, 1
/* B79D38 80102B98 24680008 */ addiu $t0, $v1, 8
/* B79D3C 80102B9C 27190003 */ addiu $t9, $t8, 3
/* B79D40 80102BA0 01035821 */ addu $t3, $t0, $v1
/* B79D44 80102BA4 AE190060 */ sw $t9, 0x60($s0)
/* B79D48 80102BA8 AE080058 */ sw $t0, 0x58($s0)
/* B79D4C 80102BAC AE0B005C */ sw $t3, 0x5c($s0)
/* B79D50 80102BB0 8E040004 */ lw $a0, 4($s0)
/* B79D54 80102BB4 8E050008 */ lw $a1, 8($s0)
/* B79D58 80102BB8 24060007 */ li $a2, 7
/* B79D5C 80102BBC 2607002C */ addiu $a3, $s0, 0x2c
/* B79D60 80102BC0 0C0417D0 */ jal __osContRamRead
/* B79D64 80102BC4 A20F0064 */ sb $t7, 0x64($s0)
/* B79D68 80102BC8 50400004 */ beql $v0, $zero, .L80102BDC
/* B79D6C 80102BCC 00001025 */ move $v0, $zero
/* B79D70 80102BD0 10000003 */ b .L80102BE0
/* B79D74 80102BD4 8FBF001C */ lw $ra, 0x1c($sp)
/* B79D78 80102BD8 00001025 */ move $v0, $zero
.L80102BDC:
/* B79D7C 80102BDC 8FBF001C */ lw $ra, 0x1c($sp)
.L80102BE0:
/* B79D80 80102BE0 8FB00014 */ lw $s0, 0x14($sp)
/* B79D84 80102BE4 8FB10018 */ lw $s1, 0x18($sp)
/* B79D88 80102BE8 03E00008 */ jr $ra
/* B79D8C 80102BEC 27BD0070 */ addiu $sp, $sp, 0x70

View File

@ -1,238 +0,0 @@
.late_rodata
glabel jtbl_8014753C
.word L800D54D0
.word L800D54F0
.word L800D550C
.word L800D5528
.word L800D5544
.word L800D5560
.word L800D557C
.word L800D5598
.word L800D55B0
.word L800D55CC
.word L800D5648
.rdata
glabel D_801471F8
.asciz "\x1b[37mKeyWaitB ( \x1b[37m\x1b[33m \x1b[33m\x1b[37m \x1b[37m\x1b[33m \x1b[33m\x1b[37m \x1b[32m\x1b[34m\x1b[31mSTART\x1b[37m)\x1b[m\n"
.balign 4
glabel D_80147270
.asciz "\x1b[37mKeyWaitB'(\x1b[33m +\x1b[31mSTART\x1b[37m)\x1b[m\n"
.balign 4
.text
glabel Fault_WaitForButtonCombo
/* B4C55C 800D53BC 3C19FFFA */ lui $t9, (0xFFFA5A5A >> 16) # lui $t9, 0xfffa
/* B4C560 800D53C0 03A04025 */ move $t0, $sp
/* B4C564 800D53C4 27BDFFD0 */ addiu $sp, $sp, -0x30
/* B4C568 800D53C8 37395A5A */ ori $t9, (0xFFFA5A5A & 0xFFFF) # ori $t9, $t9, 0x5a5a
.L800D53CC:
/* B4C56C 800D53CC 2508FFF8 */ addiu $t0, $t0, -8
/* B4C570 800D53D0 AD190000 */ sw $t9, ($t0)
/* B4C574 800D53D4 151DFFFD */ bne $t0, $sp, .L800D53CC
/* B4C578 800D53D8 AD190004 */ sw $t9, 4($t0)
/* B4C57C 800D53DC AFBF0024 */ sw $ra, 0x24($sp)
/* B4C580 800D53E0 AFB20020 */ sw $s2, 0x20($sp)
/* B4C584 800D53E4 AFB1001C */ sw $s1, 0x1c($sp)
/* B4C588 800D53E8 AFB00018 */ sw $s0, 0x18($sp)
/* B4C58C 800D53EC 3C0E8017 */ lui $t6, %hi(sFaultStructPtr) # $t6, 0x8017
/* B4C590 800D53F0 8DCEA800 */ lw $t6, %lo(sFaultStructPtr)($t6)
/* B4C594 800D53F4 3C048014 */ lui $a0, %hi(D_801471F8) # $a0, 0x8014
/* B4C598 800D53F8 248471F8 */ addiu $a0, %lo(D_801471F8) # addiu $a0, $a0, 0x71f8
/* B4C59C 800D53FC 25CF07E4 */ addiu $t7, $t6, 0x7e4
/* B4C5A0 800D5400 0C00084C */ jal osSyncPrintf
/* B4C5A4 800D5404 AFAF002C */ sw $t7, 0x2c($sp)
/* B4C5A8 800D5408 3C048014 */ lui $a0, %hi(D_80147270) # $a0, 0x8014
/* B4C5AC 800D540C 0C00084C */ jal osSyncPrintf
/* B4C5B0 800D5410 24847270 */ addiu $a0, %lo(D_80147270) # addiu $a0, $a0, 0x7270
/* B4C5B4 800D5414 0C035AD7 */ jal FaultDrawer_SetForeColor
/* B4C5B8 800D5418 3404FFFF */ li $a0, 65535
/* B4C5BC 800D541C 0C035AE9 */ jal FaultDrawer_SetBackColor
/* B4C5C0 800D5420 24040001 */ li $a0, 1
/* B4C5C4 800D5424 00008025 */ move $s0, $zero
/* B4C5C8 800D5428 00008825 */ move $s1, $zero
/* B4C5CC 800D542C 24120001 */ li $s2, 1
.L800D5430:
/* B4C5D0 800D5430 0C03518F */ jal Fault_Sleep
/* B4C5D4 800D5434 24040010 */ li $a0, 16
/* B4C5D8 800D5438 0C0351AD */ jal Fault_UpdatePadImpl
/* B4C5DC 800D543C 00000000 */ nop
/* B4C5E0 800D5440 8FA4002C */ lw $a0, 0x2c($sp)
/* B4C5E4 800D5444 94830000 */ lhu $v1, ($a0)
/* B4C5E8 800D5448 9482000C */ lhu $v0, 0xc($a0)
/* B4C5EC 800D544C 14600005 */ bnez $v1, .L800D5464
/* B4C5F0 800D5450 00000000 */ nop
/* B4C5F4 800D5454 16320003 */ bne $s1, $s2, .L800D5464
/* B4C5F8 800D5458 00000000 */ nop
/* B4C5FC 800D545C 1000007F */ b .L800D565C
/* B4C600 800D5460 00008825 */ move $s1, $zero
.L800D5464:
/* B4C604 800D5464 1040007D */ beqz $v0, .L800D565C
/* B4C608 800D5468 00000000 */ nop
/* B4C60C 800D546C 56320003 */ bnel $s1, $s2, .L800D547C
/* B4C610 800D5470 2A01005C */ slti $at, $s0, 0x5c
/* B4C614 800D5474 00008025 */ move $s0, $zero
/* B4C618 800D5478 2A01005C */ slti $at, $s0, 0x5c
.L800D547C:
/* B4C61C 800D547C 14200005 */ bnez $at, .L800D5494
/* B4C620 800D5480 2401005C */ li $at, 92
/* B4C624 800D5484 5201006A */ beql $s0, $at, .L800D5630
/* B4C628 800D5488 34018000 */ li $at, 32768
/* B4C62C 800D548C 10000073 */ b .L800D565C
/* B4C630 800D5490 00000000 */ nop
.L800D5494:
/* B4C634 800D5494 2A01000B */ slti $at, $s0, 0xb
/* B4C638 800D5498 14200005 */ bnez $at, .L800D54B0
/* B4C63C 800D549C 2401005B */ li $at, 91
/* B4C640 800D54A0 5201005C */ beql $s0, $at, .L800D5614
/* B4C644 800D54A4 24014000 */ li $at, 16384
/* B4C648 800D54A8 1000006C */ b .L800D565C
/* B4C64C 800D54AC 00000000 */ nop
.L800D54B0:
/* B4C650 800D54B0 2E01000B */ sltiu $at, $s0, 0xb
/* B4C654 800D54B4 10200069 */ beqz $at, .L800D565C
/* B4C658 800D54B8 0010C080 */ sll $t8, $s0, 2
/* B4C65C 800D54BC 3C018014 */ lui $at, %hi(jtbl_8014753C)
/* B4C660 800D54C0 00380821 */ addu $at, $at, $t8
/* B4C664 800D54C4 8C38753C */ lw $t8, %lo(jtbl_8014753C)($at)
/* B4C668 800D54C8 03000008 */ jr $t8
/* B4C66C 800D54CC 00000000 */ nop
glabel L800D54D0
/* B4C670 800D54D0 24012030 */ li $at, 8240
/* B4C674 800D54D4 14610061 */ bne $v1, $at, .L800D565C
/* B4C678 800D54D8 24012000 */ li $at, 8192
/* B4C67C 800D54DC 1441005F */ bne $v0, $at, .L800D565C
/* B4C680 800D54E0 00000000 */ nop
/* B4C684 800D54E4 02408025 */ move $s0, $s2
/* B4C688 800D54E8 1000005C */ b .L800D565C
/* B4C68C 800D54EC 02408825 */ move $s1, $s2
glabel L800D54F0
/* B4C690 800D54F0 24010800 */ li $at, 2048
/* B4C694 800D54F4 14410003 */ bne $v0, $at, .L800D5504
/* B4C698 800D54F8 00000000 */ nop
/* B4C69C 800D54FC 10000057 */ b .L800D565C
/* B4C6A0 800D5500 24100002 */ li $s0, 2
.L800D5504:
/* B4C6A4 800D5504 10000055 */ b .L800D565C
/* B4C6A8 800D5508 00008025 */ move $s0, $zero
glabel L800D550C
/* B4C6AC 800D550C 24010004 */ li $at, 4
/* B4C6B0 800D5510 14410003 */ bne $v0, $at, .L800D5520
/* B4C6B4 800D5514 24100003 */ li $s0, 3
/* B4C6B8 800D5518 10000050 */ b .L800D565C
/* B4C6BC 800D551C 02408825 */ move $s1, $s2
.L800D5520:
/* B4C6C0 800D5520 1000004E */ b .L800D565C
/* B4C6C4 800D5524 00008025 */ move $s0, $zero
glabel L800D5528
/* B4C6C8 800D5528 24010008 */ li $at, 8
/* B4C6CC 800D552C 14410003 */ bne $v0, $at, .L800D553C
/* B4C6D0 800D5530 00000000 */ nop
/* B4C6D4 800D5534 10000049 */ b .L800D565C
/* B4C6D8 800D5538 24100004 */ li $s0, 4
.L800D553C:
/* B4C6DC 800D553C 10000047 */ b .L800D565C
/* B4C6E0 800D5540 00008025 */ move $s0, $zero
glabel L800D5544
/* B4C6E4 800D5544 24010400 */ li $at, 1024
/* B4C6E8 800D5548 14410003 */ bne $v0, $at, .L800D5558
/* B4C6EC 800D554C 24100005 */ li $s0, 5
/* B4C6F0 800D5550 10000042 */ b .L800D565C
/* B4C6F4 800D5554 02408825 */ move $s1, $s2
.L800D5558:
/* B4C6F8 800D5558 10000040 */ b .L800D565C
/* B4C6FC 800D555C 00008025 */ move $s0, $zero
glabel L800D5560
/* B4C700 800D5560 24010200 */ li $at, 512
/* B4C704 800D5564 14410003 */ bne $v0, $at, .L800D5574
/* B4C708 800D5568 00000000 */ nop
/* B4C70C 800D556C 1000003B */ b .L800D565C
/* B4C710 800D5570 24100006 */ li $s0, 6
.L800D5574:
/* B4C714 800D5574 10000039 */ b .L800D565C
/* B4C718 800D5578 00008025 */ move $s0, $zero
glabel L800D557C
/* B4C71C 800D557C 24010002 */ li $at, 2
/* B4C720 800D5580 14410003 */ bne $v0, $at, .L800D5590
/* B4C724 800D5584 24100007 */ li $s0, 7
/* B4C728 800D5588 10000034 */ b .L800D565C
/* B4C72C 800D558C 02408825 */ move $s1, $s2
.L800D5590:
/* B4C730 800D5590 10000032 */ b .L800D565C
/* B4C734 800D5594 00008025 */ move $s0, $zero
glabel L800D5598
/* B4C738 800D5598 14520003 */ bne $v0, $s2, .L800D55A8
/* B4C73C 800D559C 00000000 */ nop
/* B4C740 800D55A0 1000002E */ b .L800D565C
/* B4C744 800D55A4 24100008 */ li $s0, 8
.L800D55A8:
/* B4C748 800D55A8 1000002C */ b .L800D565C
/* B4C74C 800D55AC 00008025 */ move $s0, $zero
glabel L800D55B0
/* B4C750 800D55B0 24010100 */ li $at, 256
/* B4C754 800D55B4 14410003 */ bne $v0, $at, .L800D55C4
/* B4C758 800D55B8 24100009 */ li $s0, 9
/* B4C75C 800D55BC 10000027 */ b .L800D565C
/* B4C760 800D55C0 02408825 */ move $s1, $s2
.L800D55C4:
/* B4C764 800D55C4 10000025 */ b .L800D565C
/* B4C768 800D55C8 00008025 */ move $s0, $zero
glabel L800D55CC
/* B4C76C 800D55CC 3401C000 */ li $at, 49152
/* B4C770 800D55D0 54410004 */ bnel $v0, $at, .L800D55E4
/* B4C774 800D55D4 34018000 */ li $at, 32768
/* B4C778 800D55D8 10000020 */ b .L800D565C
/* B4C77C 800D55DC 2410000A */ li $s0, 10
/* B4C780 800D55E0 34018000 */ li $at, 32768
.L800D55E4:
/* B4C784 800D55E4 54410004 */ bnel $v0, $at, .L800D55F8
/* B4C788 800D55E8 24014000 */ li $at, 16384
/* B4C78C 800D55EC 1000001B */ b .L800D565C
/* B4C790 800D55F0 2410005B */ li $s0, 91
/* B4C794 800D55F4 24014000 */ li $at, 16384
.L800D55F8:
/* B4C798 800D55F8 14410003 */ bne $v0, $at, .L800D5608
/* B4C79C 800D55FC 00000000 */ nop
/* B4C7A0 800D5600 10000016 */ b .L800D565C
/* B4C7A4 800D5604 2410005C */ li $s0, 92
.L800D5608:
/* B4C7A8 800D5608 10000014 */ b .L800D565C
/* B4C7AC 800D560C 00008025 */ move $s0, $zero
/* B4C7B0 800D5610 24014000 */ li $at, 16384
.L800D5614:
/* B4C7B4 800D5614 14410003 */ bne $v0, $at, .L800D5624
/* B4C7B8 800D5618 00000000 */ nop
/* B4C7BC 800D561C 1000000F */ b .L800D565C
/* B4C7C0 800D5620 2410000A */ li $s0, 10
.L800D5624:
/* B4C7C4 800D5624 1000000D */ b .L800D565C
/* B4C7C8 800D5628 00008025 */ move $s0, $zero
/* B4C7CC 800D562C 34018000 */ li $at, 32768
.L800D5630:
/* B4C7D0 800D5630 14410003 */ bne $v0, $at, .L800D5640
/* B4C7D4 800D5634 00000000 */ nop
/* B4C7D8 800D5638 10000008 */ b .L800D565C
/* B4C7DC 800D563C 2410000A */ li $s0, 10
.L800D5640:
/* B4C7E0 800D5640 10000006 */ b .L800D565C
/* B4C7E4 800D5644 00008025 */ move $s0, $zero
glabel L800D5648
/* B4C7E8 800D5648 24011000 */ li $at, 4096
/* B4C7EC 800D564C 14410003 */ bne $v0, $at, .L800D565C
/* B4C7F0 800D5650 00008025 */ move $s0, $zero
/* B4C7F4 800D5654 10000001 */ b .L800D565C
/* B4C7F8 800D5658 2410000B */ li $s0, 11
.L800D565C:
/* B4C7FC 800D565C 0C041924 */ jal osWritebackDCacheAll
/* B4C800 800D5660 00000000 */ nop
/* B4C804 800D5664 2401000B */ li $at, 11
/* B4C808 800D5668 1601FF71 */ bne $s0, $at, .L800D5430
/* B4C80C 800D566C 00000000 */ nop
/* B4C810 800D5670 8FBF0024 */ lw $ra, 0x24($sp)
/* B4C814 800D5674 8FB00018 */ lw $s0, 0x18($sp)
/* B4C818 800D5678 8FB1001C */ lw $s1, 0x1c($sp)
/* B4C81C 800D567C 8FB20020 */ lw $s2, 0x20($sp)
/* B4C820 800D5680 03E00008 */ jr $ra
/* B4C824 800D5684 27BD0030 */ addiu $sp, $sp, 0x30

View File

@ -1,144 +0,0 @@
glabel osPfsInitPak
/* B7C0E0 80104F40 27BDFF90 */ addiu $sp, $sp, -0x70
/* B7C0E4 80104F44 AFBF001C */ sw $ra, 0x1c($sp)
/* B7C0E8 80104F48 AFB00018 */ sw $s0, 0x18($sp)
/* B7C0EC 80104F4C 00A08025 */ move $s0, $a1
/* B7C0F0 80104F50 AFA40070 */ sw $a0, 0x70($sp)
/* B7C0F4 80104F54 0C0402E8 */ jal __osSiGetAccess
/* B7C0F8 80104F58 AFA60078 */ sw $a2, 0x78($sp)
/* B7C0FC 80104F5C 8FA40070 */ lw $a0, 0x70($sp)
/* B7C100 80104F60 0C040644 */ jal __osPfsGetStatus
/* B7C104 80104F64 8FA50078 */ lw $a1, 0x78($sp)
/* B7C108 80104F68 0C0402F9 */ jal __osSiRelAccess
/* B7C10C 80104F6C AFA2006C */ sw $v0, 0x6c($sp)
/* B7C110 80104F70 8FA3006C */ lw $v1, 0x6c($sp)
/* B7C114 80104F74 8FAE0070 */ lw $t6, 0x70($sp)
/* B7C118 80104F78 02002025 */ move $a0, $s0
/* B7C11C 80104F7C 50600004 */ beql $v1, $zero, .L80104F90
/* B7C120 80104F80 AE0E0004 */ sw $t6, 4($s0)
/* B7C124 80104F84 1000006B */ b .L80105134
/* B7C128 80104F88 00601025 */ move $v0, $v1
/* B7C12C 80104F8C AE0E0004 */ sw $t6, 4($s0)
.L80104F90:
/* B7C130 80104F90 8FAF0078 */ lw $t7, 0x78($sp)
/* B7C134 80104F94 AE000000 */ sw $zero, ($s0)
/* B7C138 80104F98 0C041452 */ jal __osPfsCheckRamArea
/* B7C13C 80104F9C AE0F0008 */ sw $t7, 8($s0)
/* B7C140 80104FA0 10400003 */ beqz $v0, .L80104FB0
/* B7C144 80104FA4 02002025 */ move $a0, $s0
/* B7C148 80104FA8 10000063 */ b .L80105138
/* B7C14C 80104FAC 8FBF001C */ lw $ra, 0x1c($sp)
.L80104FB0:
/* B7C150 80104FB0 0C041320 */ jal __osPfsSelectBank
/* B7C154 80104FB4 00002825 */ move $a1, $zero
/* B7C158 80104FB8 10400003 */ beqz $v0, .L80104FC8
/* B7C15C 80104FBC 24060001 */ li $a2, 1
/* B7C160 80104FC0 1000005D */ b .L80105138
/* B7C164 80104FC4 8FBF001C */ lw $ra, 0x1c($sp)
.L80104FC8:
/* B7C168 80104FC8 8E040004 */ lw $a0, 4($s0)
/* B7C16C 80104FCC 8E050008 */ lw $a1, 8($s0)
/* B7C170 80104FD0 0C0417D0 */ jal __osContRamRead
/* B7C174 80104FD4 27A70048 */ addiu $a3, $sp, 0x48
/* B7C178 80104FD8 10400003 */ beqz $v0, .L80104FE8
/* B7C17C 80104FDC 27A40048 */ addiu $a0, $sp, 0x48
/* B7C180 80104FE0 10000055 */ b .L80105138
/* B7C184 80104FE4 8FBF001C */ lw $ra, 0x1c($sp)
.L80104FE8:
/* B7C188 80104FE8 27A5006A */ addiu $a1, $sp, 0x6a
/* B7C18C 80104FEC 0C040925 */ jal __osIdCheckSum
/* B7C190 80104FF0 27A60068 */ addiu $a2, $sp, 0x68
/* B7C194 80104FF4 97B8006A */ lhu $t8, 0x6a($sp)
/* B7C198 80104FF8 97B90064 */ lhu $t9, 0x64($sp)
/* B7C19C 80104FFC 27A50048 */ addiu $a1, $sp, 0x48
/* B7C1A0 80105000 AFA50044 */ sw $a1, 0x44($sp)
/* B7C1A4 80105004 17190004 */ bne $t8, $t9, .L80105018
/* B7C1A8 80105008 97A90068 */ lhu $t1, 0x68($sp)
/* B7C1AC 8010500C 97AA0066 */ lhu $t2, 0x66($sp)
/* B7C1B0 80105010 512A000A */ beql $t1, $t2, .L8010503C
/* B7C1B4 80105014 97AD0060 */ lhu $t5, 0x60($sp)
.L80105018:
/* B7C1B8 80105018 0C040A38 */ jal __osCheckPackId
/* B7C1BC 8010501C 02002025 */ move $a0, $s0
/* B7C1C0 80105020 50400006 */ beql $v0, $zero, .L8010503C
/* B7C1C4 80105024 97AD0060 */ lhu $t5, 0x60($sp)
/* B7C1C8 80105028 8E0B0000 */ lw $t3, ($s0)
/* B7C1CC 8010502C 356C0004 */ ori $t4, $t3, 4
/* B7C1D0 80105030 10000040 */ b .L80105134
/* B7C1D4 80105034 AE0C0000 */ sw $t4, ($s0)
/* B7C1D8 80105038 97AD0060 */ lhu $t5, 0x60($sp)
.L8010503C:
/* B7C1DC 8010503C 27A50048 */ addiu $a1, $sp, 0x48
/* B7C1E0 80105040 02002025 */ move $a0, $s0
/* B7C1E4 80105044 31AE0001 */ andi $t6, $t5, 1
/* B7C1E8 80105048 55C00016 */ bnezl $t6, .L801050A4
/* B7C1EC 8010504C 8FA40044 */ lw $a0, 0x44($sp)
/* B7C1F0 80105050 0C040964 */ jal __osRepairPackId
/* B7C1F4 80105054 27A60020 */ addiu $a2, $sp, 0x20
/* B7C1F8 80105058 10400009 */ beqz $v0, .L80105080
/* B7C1FC 8010505C 00401825 */ move $v1, $v0
/* B7C200 80105060 2401000A */ li $at, 10
/* B7C204 80105064 14410004 */ bne $v0, $at, .L80105078
/* B7C208 80105068 00000000 */ nop
/* B7C20C 8010506C 8E0F0000 */ lw $t7, ($s0)
/* B7C210 80105070 35F80004 */ ori $t8, $t7, 4
/* B7C214 80105074 AE180000 */ sw $t8, ($s0)
.L80105078:
/* B7C218 80105078 1000002E */ b .L80105134
/* B7C21C 8010507C 00601025 */ move $v0, $v1
.L80105080:
/* B7C220 80105080 97A90038 */ lhu $t1, 0x38($sp)
/* B7C224 80105084 27B90020 */ addiu $t9, $sp, 0x20
/* B7C228 80105088 AFB90044 */ sw $t9, 0x44($sp)
/* B7C22C 8010508C 312A0001 */ andi $t2, $t1, 1
/* B7C230 80105090 55400004 */ bnezl $t2, .L801050A4
/* B7C234 80105094 8FA40044 */ lw $a0, 0x44($sp)
/* B7C238 80105098 10000026 */ b .L80105134
/* B7C23C 8010509C 2402000B */ li $v0, 11
/* B7C240 801050A0 8FA40044 */ lw $a0, 0x44($sp)
.L801050A4:
/* B7C244 801050A4 2605000C */ addiu $a1, $s0, 0xc
/* B7C248 801050A8 0C001BC4 */ jal bcopy
/* B7C24C 801050AC 24060020 */ li $a2, 32
/* B7C250 801050B0 8FAB0044 */ lw $t3, 0x44($sp)
/* B7C254 801050B4 24190010 */ li $t9, 16
/* B7C258 801050B8 24090008 */ li $t1, 8
/* B7C25C 801050BC 916C001B */ lbu $t4, 0x1b($t3)
/* B7C260 801050C0 8E040004 */ lw $a0, 4($s0)
/* B7C264 801050C4 8E050008 */ lw $a1, 8($s0)
/* B7C268 801050C8 AE0C004C */ sw $t4, 0x4c($s0)
/* B7C26C 801050CC 8FAD0044 */ lw $t5, 0x44($sp)
/* B7C270 801050D0 24060007 */ li $a2, 7
/* B7C274 801050D4 2607002C */ addiu $a3, $s0, 0x2c
/* B7C278 801050D8 91AE001A */ lbu $t6, 0x1a($t5)
/* B7C27C 801050DC AE190050 */ sw $t9, 0x50($s0)
/* B7C280 801050E0 AE090054 */ sw $t1, 0x54($s0)
/* B7C284 801050E4 31C200FF */ andi $v0, $t6, 0xff
/* B7C288 801050E8 000218C0 */ sll $v1, $v0, 3
/* B7C28C 801050EC 00027840 */ sll $t7, $v0, 1
/* B7C290 801050F0 24680008 */ addiu $t0, $v1, 8
/* B7C294 801050F4 25F80003 */ addiu $t8, $t7, 3
/* B7C298 801050F8 01035021 */ addu $t2, $t0, $v1
/* B7C29C 801050FC AE180060 */ sw $t8, 0x60($s0)
/* B7C2A0 80105100 AE080058 */ sw $t0, 0x58($s0)
/* B7C2A4 80105104 AE0A005C */ sw $t2, 0x5c($s0)
/* B7C2A8 80105108 0C0417D0 */ jal __osContRamRead
/* B7C2AC 8010510C A20E0064 */ sb $t6, 0x64($s0)
/* B7C2B0 80105110 10400003 */ beqz $v0, .L80105120
/* B7C2B4 80105114 00000000 */ nop
/* B7C2B8 80105118 10000007 */ b .L80105138
/* B7C2BC 8010511C 8FBF001C */ lw $ra, 0x1c($sp)
.L80105120:
/* B7C2C0 80105120 0C041494 */ jal osPfsChecker
/* B7C2C4 80105124 02002025 */ move $a0, $s0
/* B7C2C8 80105128 8E0B0000 */ lw $t3, ($s0)
/* B7C2CC 8010512C 356C0001 */ ori $t4, $t3, 1
/* B7C2D0 80105130 AE0C0000 */ sw $t4, ($s0)
.L80105134:
/* B7C2D4 80105134 8FBF001C */ lw $ra, 0x1c($sp)
.L80105138:
/* B7C2D8 80105138 8FB00018 */ lw $s0, 0x18($sp)
/* B7C2DC 8010513C 27BD0070 */ addiu $sp, $sp, 0x70
/* B7C2E0 80105140 03E00008 */ jr $ra
/* B7C2E4 80105144 00000000 */ nop

View File

@ -1,84 +0,0 @@
glabel Sched_Schedule
/* B3FC34 800C8A94 27BDFFD8 */ addiu $sp, $sp, -0x28
/* B3FC38 800C8A98 AFBF001C */ sw $ra, 0x1c($sp)
/* B3FC3C 800C8A9C AFB00018 */ sw $s0, 0x18($sp)
/* B3FC40 800C8AA0 AFA5002C */ sw $a1, 0x2c($sp)
/* B3FC44 800C8AA4 AFA60030 */ sw $a2, 0x30($sp)
/* B3FC48 800C8AA8 8C8E023C */ lw $t6, 0x23c($a0)
/* B3FC4C 800C8AAC 00E01825 */ move $v1, $a3
/* B3FC50 800C8AB0 8C900224 */ lw $s0, 0x224($a0)
/* B3FC54 800C8AB4 11C0000E */ beqz $t6, .L800C8AF0
/* B3FC58 800C8AB8 8C820220 */ lw $v0, 0x220($a0)
/* B3FC5C 800C8ABC 30EF0002 */ andi $t7, $a3, 2
/* B3FC60 800C8AC0 11E0000B */ beqz $t7, .L800C8AF0
/* B3FC64 800C8AC4 00000000 */ nop
/* B3FC68 800C8AC8 ACA20000 */ sw $v0, ($a1)
/* B3FC6C 800C8ACC 8C990220 */ lw $t9, 0x220($a0)
/* B3FC70 800C8AD0 AC80023C */ sw $zero, 0x23c($a0)
/* B3FC74 800C8AD4 2401FFFD */ li $at, -3
/* B3FC78 800C8AD8 8F280000 */ lw $t0, ($t9)
/* B3FC7C 800C8ADC 00E11824 */ and $v1, $a3, $at
/* B3FC80 800C8AE0 15000033 */ bnez $t0, .L800C8BB0
/* B3FC84 800C8AE4 AC880220 */ sw $t0, 0x220($a0)
/* B3FC88 800C8AE8 10000031 */ b .L800C8BB0
/* B3FC8C 800C8AEC AC800228 */ sw $zero, 0x228($a0)
.L800C8AF0:
/* B3FC90 800C8AF0 52000030 */ beql $s0, $zero, .L800C8BB4
/* B3FC94 800C8AF4 8FBF001C */ lw $ra, 0x1c($sp)
/* B3FC98 800C8AF8 8E0A0004 */ lw $t2, 4($s0)
/* B3FC9C 800C8AFC 30EE0002 */ andi $t6, $a3, 2
/* B3FCA0 800C8B00 314B0020 */ andi $t3, $t2, 0x20
/* B3FCA4 800C8B04 15600006 */ bnez $t3, .L800C8B20
/* B3FCA8 800C8B08 00000000 */ nop
/* B3FCAC 800C8B0C 8E0C0008 */ lw $t4, 8($s0)
/* B3FCB0 800C8B10 24010003 */ li $at, 3
/* B3FCB4 800C8B14 318D0001 */ andi $t5, $t4, 1
/* B3FCB8 800C8B18 15A0000C */ bnez $t5, .L800C8B4C
/* B3FCBC 800C8B1C 00000000 */ nop
.L800C8B20:
/* B3FCC0 800C8B20 11C00023 */ beqz $t6, .L800C8BB0
/* B3FCC4 800C8B24 8FAF002C */ lw $t7, 0x2c($sp)
/* B3FCC8 800C8B28 ADF00000 */ sw $s0, ($t7)
/* B3FCCC 800C8B2C 8C980224 */ lw $t8, 0x224($a0)
/* B3FCD0 800C8B30 2401FFFD */ li $at, -3
/* B3FCD4 800C8B34 00E11824 */ and $v1, $a3, $at
/* B3FCD8 800C8B38 8F190000 */ lw $t9, ($t8)
/* B3FCDC 800C8B3C 1720001C */ bnez $t9, .L800C8BB0
/* B3FCE0 800C8B40 AC990224 */ sw $t9, 0x224($a0)
/* B3FCE4 800C8B44 1000001A */ b .L800C8BB0
/* B3FCE8 800C8B48 AC80022C */ sw $zero, 0x22c($a0)
.L800C8B4C:
/* B3FCEC 800C8B4C 54E10019 */ bnel $a3, $at, .L800C8BB4
/* B3FCF0 800C8B50 8FBF001C */ lw $ra, 0x1c($sp)
/* B3FCF4 800C8B54 8E09000C */ lw $t1, 0xc($s0)
/* B3FCF8 800C8B58 02002825 */ move $a1, $s0
/* B3FCFC 800C8B5C 5120000A */ beql $t1, $zero, .L800C8B88
/* B3FD00 800C8B60 8FAA0030 */ lw $t2, 0x30($sp)
/* B3FD04 800C8B64 AFA30024 */ sw $v1, 0x24($sp)
/* B3FD08 800C8B68 AFA40028 */ sw $a0, 0x28($sp)
/* B3FD0C 800C8B6C 0C032275 */ jal func_800C89D4
/* B3FD10 800C8B70 AFA70034 */ sw $a3, 0x34($sp)
/* B3FD14 800C8B74 8FA30024 */ lw $v1, 0x24($sp)
/* B3FD18 800C8B78 8FA40028 */ lw $a0, 0x28($sp)
/* B3FD1C 800C8B7C 1040000C */ beqz $v0, .L800C8BB0
/* B3FD20 800C8B80 8FA70034 */ lw $a3, 0x34($sp)
/* B3FD24 800C8B84 8FAA0030 */ lw $t2, 0x30($sp)
.L800C8B88:
/* B3FD28 800C8B88 2401FFFC */ li $at, -4
/* B3FD2C 800C8B8C 00E11824 */ and $v1, $a3, $at
/* B3FD30 800C8B90 AD500000 */ sw $s0, ($t2)
/* B3FD34 800C8B94 8FAB002C */ lw $t3, 0x2c($sp)
/* B3FD38 800C8B98 AD700000 */ sw $s0, ($t3)
/* B3FD3C 800C8B9C 8C8C0224 */ lw $t4, 0x224($a0)
/* B3FD40 800C8BA0 8D8D0000 */ lw $t5, ($t4)
/* B3FD44 800C8BA4 15A00002 */ bnez $t5, .L800C8BB0
/* B3FD48 800C8BA8 AC8D0224 */ sw $t5, 0x224($a0)
/* B3FD4C 800C8BAC AC80022C */ sw $zero, 0x22c($a0)
.L800C8BB0:
/* B3FD50 800C8BB0 8FBF001C */ lw $ra, 0x1c($sp)
.L800C8BB4:
/* B3FD54 800C8BB4 8FB00018 */ lw $s0, 0x18($sp)
/* B3FD58 800C8BB8 27BD0028 */ addiu $sp, $sp, 0x28
/* B3FD5C 800C8BBC 03E00008 */ jr $ra
/* B3FD60 800C8BC0 00601025 */ move $v0, $v1

View File

@ -1,67 +0,0 @@
.rdata
glabel D_80147C04
.asciz "|"
.balign 4
glabel D_80147C08
.asciz "%s"
.balign 4
.text
glabel UCodeDisas_ParseGeometryMode
/* B4F1FC 800D805C 27BDFFC8 */ addiu $sp, $sp, -0x38
/* B4F200 800D8060 AFB30024 */ sw $s3, 0x24($sp)
/* B4F204 800D8064 AFB20020 */ sw $s2, 0x20($sp)
/* B4F208 800D8068 00809025 */ move $s2, $a0
/* B4F20C 800D806C 00A09825 */ move $s3, $a1
/* B4F210 800D8070 AFBF0034 */ sw $ra, 0x34($sp)
/* B4F214 800D8074 AFB60030 */ sw $s6, 0x30($sp)
/* B4F218 800D8078 AFB5002C */ sw $s5, 0x2c($sp)
/* B4F21C 800D807C AFB40028 */ sw $s4, 0x28($sp)
/* B4F220 800D8080 AFB1001C */ sw $s1, 0x1c($sp)
/* B4F224 800D8084 AFB00018 */ sw $s0, 0x18($sp)
/* B4F228 800D8088 3C108013 */ lui $s0, %hi(sUCodeDisasGeometryModes) # $s0, 0x8013
/* B4F22C 800D808C 3C168014 */ lui $s6, %hi(D_80147C04) # $s6, 0x8014
/* B4F230 800D8090 3C158014 */ lui $s5, %hi(D_80147C08) # $s5, 0x8014
/* B4F234 800D8094 3C148013 */ lui $s4, %hi(sUCodeDisasMtxFlags) # $s4, 0x8013
/* B4F238 800D8098 24110001 */ li $s1, 1
/* B4F23C 800D809C 2694DCF8 */ addiu $s4, %lo(sUCodeDisasMtxFlags) # addiu $s4, $s4, -0x2308
/* B4F240 800D80A0 26B57C08 */ addiu $s5, %lo(D_80147C08) # addiu $s5, $s5, 0x7c08
/* B4F244 800D80A4 26D67C04 */ addiu $s6, %lo(D_80147C04) # addiu $s6, $s6, 0x7c04
/* B4F248 800D80A8 2610DCA0 */ addiu $s0, %lo(sUCodeDisasGeometryModes) # addiu $s0, $s0, -0x2360
/* B4F24C 800D80AC 8E0E0000 */ lw $t6, ($s0)
.L800D80B0:
/* B4F250 800D80B0 0011102B */ sltu $v0, $zero, $s1
/* B4F254 800D80B4 01D37824 */ and $t7, $t6, $s3
/* B4F258 800D80B8 51E0000E */ beql $t7, $zero, .L800D80F4
/* B4F25C 800D80BC 26100008 */ addiu $s0, $s0, 8
/* B4F260 800D80C0 8E4300BC */ lw $v1, 0xbc($s2)
/* B4F264 800D80C4 14400006 */ bnez $v0, .L800D80E0
/* B4F268 800D80C8 00008825 */ move $s1, $zero
/* B4F26C 800D80CC 10600004 */ beqz $v1, .L800D80E0
/* B4F270 800D80D0 00000000 */ nop
/* B4F274 800D80D4 0C00084C */ jal osSyncPrintf
/* B4F278 800D80D8 02C02025 */ move $a0, $s6
/* B4F27C 800D80DC 8E4300BC */ lw $v1, 0xbc($s2)
.L800D80E0:
/* B4F280 800D80E0 10600003 */ beqz $v1, .L800D80F0
/* B4F284 800D80E4 02A02025 */ move $a0, $s5
/* B4F288 800D80E8 0C00084C */ jal osSyncPrintf
/* B4F28C 800D80EC 8E050004 */ lw $a1, 4($s0)
.L800D80F0:
/* B4F290 800D80F0 26100008 */ addiu $s0, $s0, 8
.L800D80F4:
/* B4F294 800D80F4 5614FFEE */ bnel $s0, $s4, .L800D80B0
/* B4F298 800D80F8 8E0E0000 */ lw $t6, ($s0)
/* B4F29C 800D80FC 8FBF0034 */ lw $ra, 0x34($sp)
/* B4F2A0 800D8100 8FB00018 */ lw $s0, 0x18($sp)
/* B4F2A4 800D8104 8FB1001C */ lw $s1, 0x1c($sp)
/* B4F2A8 800D8108 8FB20020 */ lw $s2, 0x20($sp)
/* B4F2AC 800D810C 8FB30024 */ lw $s3, 0x24($sp)
/* B4F2B0 800D8110 8FB40028 */ lw $s4, 0x28($sp)
/* B4F2B4 800D8114 8FB5002C */ lw $s5, 0x2c($sp)
/* B4F2B8 800D8118 8FB60030 */ lw $s6, 0x30($sp)
/* B4F2BC 800D811C 03E00008 */ jr $ra
/* B4F2C0 800D8120 27BD0038 */ addiu $sp, $sp, 0x38

View File

@ -1,116 +0,0 @@
.rdata
glabel D_80147D98
.asciz "%s|"
.balign 4
glabel D_80147D9C
.asciz "\nGBL_c1(%s, %s, %s, %s)|"
.balign 4
glabel D_80147DB8
.asciz "\nGBL_c2(%s, %s, %s, %s)"
.balign 4
.text
glabel UCodeDisas_ParseRenderMode
/* B4F2C4 800D8124 27BDFFC8 */ addiu $sp, $sp, -0x38
/* B4F2C8 800D8128 AFB40030 */ sw $s4, 0x30($sp)
/* B4F2CC 800D812C AFB3002C */ sw $s3, 0x2c($sp)
/* B4F2D0 800D8130 00809825 */ move $s3, $a0
/* B4F2D4 800D8134 00A0A025 */ move $s4, $a1
/* B4F2D8 800D8138 AFBF0034 */ sw $ra, 0x34($sp)
/* B4F2DC 800D813C AFB20028 */ sw $s2, 0x28($sp)
/* B4F2E0 800D8140 AFB10024 */ sw $s1, 0x24($sp)
/* B4F2E4 800D8144 AFB00020 */ sw $s0, 0x20($sp)
/* B4F2E8 800D8148 3C108013 */ lui $s0, %hi(sUCodeDisasRenderModeFlags) # $s0, 0x8013
/* B4F2EC 800D814C 3C128014 */ lui $s2, %hi(D_80147D98) # $s2, 0x8014
/* B4F2F0 800D8150 3C118013 */ lui $s1, %hi(D_8012DDDC) # $s1, 0x8013
/* B4F2F4 800D8154 2631DDDC */ addiu $s1, %lo(D_8012DDDC) # addiu $s1, $s1, -0x2224
/* B4F2F8 800D8158 26527D98 */ addiu $s2, %lo(D_80147D98) # addiu $s2, $s2, 0x7d98
/* B4F2FC 800D815C 2610DD1C */ addiu $s0, %lo(sUCodeDisasRenderModeFlags) # addiu $s0, $s0, -0x22e4
/* B4F300 800D8160 8E6200BC */ lw $v0, 0xbc($s3)
/* B4F304 800D8164 8E0E0008 */ lw $t6, 8($s0)
.L800D8168:
/* B4F308 800D8168 8E180004 */ lw $t8, 4($s0)
/* B4F30C 800D816C 028E7824 */ and $t7, $s4, $t6
/* B4F310 800D8170 55F80007 */ bnel $t7, $t8, .L800D8190
/* B4F314 800D8174 2610000C */ addiu $s0, $s0, 0xc
/* B4F318 800D8178 10400004 */ beqz $v0, .L800D818C
/* B4F31C 800D817C 02402025 */ move $a0, $s2
/* B4F320 800D8180 0C00084C */ jal osSyncPrintf
/* B4F324 800D8184 8E050000 */ lw $a1, ($s0)
/* B4F328 800D8188 8E6200BC */ lw $v0, 0xbc($s3)
.L800D818C:
/* B4F32C 800D818C 2610000C */ addiu $s0, $s0, 0xc
.L800D8190:
/* B4F330 800D8190 5611FFF5 */ bnel $s0, $s1, .L800D8168
/* B4F334 800D8194 8E0E0008 */ lw $t6, 8($s0)
/* B4F338 800D8198 14400004 */ bnez $v0, .L800D81AC
/* B4F33C 800D819C 3C108013 */ lui $s0, %hi(D_8012DDDC)
/* B4F340 800D81A0 3C108013 */ lui $s0, %hi(D_8012DDDC) # $s0, 0x8013
/* B4F344 800D81A4 1000001C */ b .L800D8218
/* B4F348 800D81A8 2610DDDC */ addiu $s0, %lo(D_8012DDDC) # addiu $s0, $s0, -0x2224
.L800D81AC:
/* B4F34C 800D81AC 00141482 */ srl $v0, $s4, 0x12
/* B4F350 800D81B0 30423333 */ andi $v0, $v0, 0x3333
/* B4F354 800D81B4 0002CB03 */ sra $t9, $v0, 0xc
/* B4F358 800D81B8 33280003 */ andi $t0, $t9, 3
/* B4F35C 800D81BC 00084880 */ sll $t1, $t0, 2
/* B4F360 800D81C0 2610DDDC */ addiu $s0, %lo(D_8012DDDC)
/* B4F364 800D81C4 02095021 */ addu $t2, $s0, $t1
/* B4F368 800D81C8 00025A03 */ sra $t3, $v0, 8
/* B4F36C 800D81CC 316C0003 */ andi $t4, $t3, 3
/* B4F370 800D81D0 8D450000 */ lw $a1, ($t2)
/* B4F374 800D81D4 30490003 */ andi $t1, $v0, 3
/* B4F378 800D81D8 00027903 */ sra $t7, $v0, 4
/* B4F37C 800D81DC 31F80003 */ andi $t8, $t7, 3
/* B4F380 800D81E0 00095080 */ sll $t2, $t1, 2
/* B4F384 800D81E4 000C6880 */ sll $t5, $t4, 2
/* B4F388 800D81E8 020A5821 */ addu $t3, $s0, $t2
/* B4F38C 800D81EC 0018C880 */ sll $t9, $t8, 2
/* B4F390 800D81F0 8D6C0030 */ lw $t4, 0x30($t3)
/* B4F394 800D81F4 02194021 */ addu $t0, $s0, $t9
/* B4F398 800D81F8 020D7021 */ addu $t6, $s0, $t5
/* B4F39C 800D81FC 8DC60010 */ lw $a2, 0x10($t6)
/* B4F3A0 800D8200 8D070020 */ lw $a3, 0x20($t0)
/* B4F3A4 800D8204 3C048014 */ lui $a0, %hi(D_80147D9C) # $a0, 0x8014
/* B4F3A8 800D8208 24847D9C */ addiu $a0, %lo(D_80147D9C) # addiu $a0, $a0, 0x7d9c
/* B4F3AC 800D820C 0C00084C */ jal osSyncPrintf
/* B4F3B0 800D8210 AFAC0010 */ sw $t4, 0x10($sp)
/* B4F3B4 800D8214 8E6200BC */ lw $v0, 0xbc($s3)
.L800D8218:
/* B4F3B8 800D8218 10400019 */ beqz $v0, .L800D8280
/* B4F3BC 800D821C 3C048014 */ lui $a0, %hi(D_80147DB8) # $a0, 0x8014
/* B4F3C0 800D8220 00141402 */ srl $v0, $s4, 0x10
/* B4F3C4 800D8224 30423333 */ andi $v0, $v0, 0x3333
/* B4F3C8 800D8228 00026B03 */ sra $t5, $v0, 0xc
/* B4F3CC 800D822C 31AE0003 */ andi $t6, $t5, 3
/* B4F3D0 800D8230 000E7880 */ sll $t7, $t6, 2
/* B4F3D4 800D8234 020FC021 */ addu $t8, $s0, $t7
/* B4F3D8 800D8238 0002CA03 */ sra $t9, $v0, 8
/* B4F3DC 800D823C 33280003 */ andi $t0, $t9, 3
/* B4F3E0 800D8240 8F050000 */ lw $a1, ($t8)
/* B4F3E4 800D8244 304F0003 */ andi $t7, $v0, 3
/* B4F3E8 800D8248 00025903 */ sra $t3, $v0, 4
/* B4F3EC 800D824C 316C0003 */ andi $t4, $t3, 3
/* B4F3F0 800D8250 000FC080 */ sll $t8, $t7, 2
/* B4F3F4 800D8254 00084880 */ sll $t1, $t0, 2
/* B4F3F8 800D8258 0218C821 */ addu $t9, $s0, $t8
/* B4F3FC 800D825C 000C6880 */ sll $t5, $t4, 2
/* B4F400 800D8260 8F280030 */ lw $t0, 0x30($t9)
/* B4F404 800D8264 020D7021 */ addu $t6, $s0, $t5
/* B4F408 800D8268 02095021 */ addu $t2, $s0, $t1
/* B4F40C 800D826C 8D460010 */ lw $a2, 0x10($t2)
/* B4F410 800D8270 8DC70020 */ lw $a3, 0x20($t6)
/* B4F414 800D8274 24847DB8 */ addiu $a0, %lo(D_80147DB8) # addiu $a0, $a0, 0x7db8
/* B4F418 800D8278 0C00084C */ jal osSyncPrintf
/* B4F41C 800D827C AFA80010 */ sw $t0, 0x10($sp)
.L800D8280:
/* B4F420 800D8280 8FBF0034 */ lw $ra, 0x34($sp)
/* B4F424 800D8284 8FB00020 */ lw $s0, 0x20($sp)
/* B4F428 800D8288 8FB10024 */ lw $s1, 0x24($sp)
/* B4F42C 800D828C 8FB20028 */ lw $s2, 0x28($sp)
/* B4F430 800D8290 8FB3002C */ lw $s3, 0x2c($sp)
/* B4F434 800D8294 8FB40030 */ lw $s4, 0x30($sp)
/* B4F438 800D8298 03E00008 */ jr $ra
/* B4F43C 800D829C 27BD0038 */ addiu $sp, $sp, 0x38

View File

@ -1,278 +0,0 @@
.rdata
glabel D_8013BA58
.asciz "../z_fcurve_data_skelanime.c"
.balign 4
glabel D_8013BA78
.asciz "../z_fcurve_data_skelanime.c"
.balign 4
glabel D_8013BA98
.asciz "../z_fcurve_data_skelanime.c"
.balign 4
glabel D_8013BAB8
.asciz "../z_fcurve_data_skelanime.c"
.balign 4
glabel D_8013BAD8
.asciz "FcSkeletonInfo_draw_child():\n"
# EUC-JP: | Not compatible
.balign 4
glabel D_8013BAFC
.asciz "../z_fcurve_data_skelanime.c"
.balign 4
.text
glabel SkelCurve_DrawLimb
/* AE3D4C 8006CBAC 27BDFF68 */ addiu $sp, $sp, -0x98
/* AE3D50 8006CBB0 AFBF002C */ sw $ra, 0x2c($sp)
/* AE3D54 8006CBB4 AFB00028 */ sw $s0, 0x28($sp)
/* AE3D58 8006CBB8 AFA40098 */ sw $a0, 0x98($sp)
/* AE3D5C 8006CBBC AFA5009C */ sw $a1, 0x9c($sp)
/* AE3D60 8006CBC0 AFA600A0 */ sw $a2, 0xa0($sp)
/* AE3D64 8006CBC4 AFA700A4 */ sw $a3, 0xa4($sp)
/* AE3D68 8006CBC8 8CCF0004 */ lw $t7, 4($a2)
/* AE3D6C 8006CBCC 0005C880 */ sll $t9, $a1, 2
/* AE3D70 8006CBD0 3C0D8016 */ lui $t5, %hi(gSegments)
/* AE3D74 8006CBD4 01F94021 */ addu $t0, $t7, $t9
/* AE3D78 8006CBD8 8D020000 */ lw $v0, ($t0)
/* AE3D7C 8006CBDC 3C0100FF */ lui $at, (0x00FFFFFF >> 16) # lui $at, 0xff
/* AE3D80 8006CBE0 3421FFFF */ ori $at, (0x00FFFFFF & 0xFFFF) # ori $at, $at, 0xffff
/* AE3D84 8006CBE4 00025100 */ sll $t2, $v0, 4
/* AE3D88 8006CBE8 000A5F02 */ srl $t3, $t2, 0x1c
/* AE3D8C 8006CBEC 000B6080 */ sll $t4, $t3, 2
/* AE3D90 8006CBF0 01AC6821 */ addu $t5, $t5, $t4
/* AE3D94 8006CBF4 8DAD6FA8 */ lw $t5, %lo(gSegments)($t5)
/* AE3D98 8006CBF8 00414824 */ and $t1, $v0, $at
/* AE3D9C 8006CBFC 3C018000 */ lui $at, 0x8000
/* AE3DA0 8006CC00 012D7021 */ addu $t6, $t1, $t5
/* AE3DA4 8006CC04 01C1C021 */ addu $t8, $t6, $at
/* AE3DA8 8006CC08 AFB80094 */ sw $t8, 0x94($sp)
/* AE3DAC 8006CC0C 8C850000 */ lw $a1, ($a0)
/* AE3DB0 8006CC10 3C068014 */ lui $a2, %hi(D_8013BA58) # $a2, 0x8014
/* AE3DB4 8006CC14 24C6BA58 */ addiu $a2, %lo(D_8013BA58) # addiu $a2, $a2, -0x45a8
/* AE3DB8 8006CC18 27A40080 */ addiu $a0, $sp, 0x80
/* AE3DBC 8006CC1C 24070117 */ li $a3, 279
/* AE3DC0 8006CC20 0C031AB1 */ jal Graph_OpenDisps
/* AE3DC4 8006CC24 00A08025 */ move $s0, $a1
/* AE3DC8 8006CC28 0C034213 */ jal Matrix_Push
/* AE3DCC 8006CC2C 00000000 */ nop
/* AE3DD0 8006CC30 8FB900A4 */ lw $t9, 0xa4($sp)
/* AE3DD4 8006CC34 5320000A */ beql $t9, $zero, .L8006CC60
/* AE3DD8 8006CC38 8FA800A0 */ lw $t0, 0xa0($sp)
/* AE3DDC 8006CC3C 1320009A */ beqz $t9, .L8006CEA8
/* AE3DE0 8006CC40 8FA40098 */ lw $a0, 0x98($sp)
/* AE3DE4 8006CC44 8FA500A0 */ lw $a1, 0xa0($sp)
/* AE3DE8 8006CC48 8FA6009C */ lw $a2, 0x9c($sp)
/* AE3DEC 8006CC4C 0320F809 */ jalr $t9
/* AE3DF0 8006CC50 8FA700B0 */ lw $a3, 0xb0($sp)
/* AE3DF4 8006CC54 50400095 */ beql $v0, $zero, .L8006CEAC
/* AE3DF8 8006CC58 8FB000A8 */ lw $s0, 0xa8($sp)
/* AE3DFC 8006CC5C 8FA800A0 */ lw $t0, 0xa0($sp)
.L8006CC60:
/* AE3E00 8006CC60 8FAB009C */ lw $t3, 0x9c($sp)
/* AE3E04 8006CC64 3C013A80 */ li $at, 0x3A800000 # 0.000000
/* AE3E08 8006CC68 8D0A001C */ lw $t2, 0x1c($t0)
/* AE3E0C 8006CC6C 000B60C0 */ sll $t4, $t3, 3
/* AE3E10 8006CC70 018B6021 */ addu $t4, $t4, $t3
/* AE3E14 8006CC74 000C6040 */ sll $t4, $t4, 1
/* AE3E18 8006CC78 014C1021 */ addu $v0, $t2, $t4
/* AE3E1C 8006CC7C 84490000 */ lh $t1, ($v0)
/* AE3E20 8006CC80 44810000 */ mtc1 $at, $f0
/* AE3E24 8006CC84 2442000C */ addiu $v0, $v0, 0xc
/* AE3E28 8006CC88 44892000 */ mtc1 $t1, $f4
/* AE3E2C 8006CC8C 27A40060 */ addiu $a0, $sp, 0x60
/* AE3E30 8006CC90 27A5006C */ addiu $a1, $sp, 0x6c
/* AE3E34 8006CC94 468021A0 */ cvt.s.w $f6, $f4
/* AE3E38 8006CC98 46003202 */ mul.s $f8, $f6, $f0
/* AE3E3C 8006CC9C E7A80074 */ swc1 $f8, 0x74($sp)
/* AE3E40 8006CCA0 844DFFF6 */ lh $t5, -0xa($v0)
/* AE3E44 8006CCA4 448D5000 */ mtc1 $t5, $f10
/* AE3E48 8006CCA8 00000000 */ nop
/* AE3E4C 8006CCAC 46805420 */ cvt.s.w $f16, $f10
/* AE3E50 8006CCB0 46008482 */ mul.s $f18, $f16, $f0
/* AE3E54 8006CCB4 E7B20078 */ swc1 $f18, 0x78($sp)
/* AE3E58 8006CCB8 844EFFF8 */ lh $t6, -8($v0)
/* AE3E5C 8006CCBC 448E2000 */ mtc1 $t6, $f4
/* AE3E60 8006CCC0 00000000 */ nop
/* AE3E64 8006CCC4 468021A0 */ cvt.s.w $f6, $f4
/* AE3E68 8006CCC8 46003202 */ mul.s $f8, $f6, $f0
/* AE3E6C 8006CCCC E7A8007C */ swc1 $f8, 0x7c($sp)
/* AE3E70 8006CCD0 8458FFFA */ lh $t8, -6($v0)
/* AE3E74 8006CCD4 A7B8006C */ sh $t8, 0x6c($sp)
/* AE3E78 8006CCD8 844FFFFC */ lh $t7, -4($v0)
/* AE3E7C 8006CCDC A7AF006E */ sh $t7, 0x6e($sp)
/* AE3E80 8006CCE0 8459FFFE */ lh $t9, -2($v0)
/* AE3E84 8006CCE4 A7B90070 */ sh $t9, 0x70($sp)
/* AE3E88 8006CCE8 84480000 */ lh $t0, ($v0)
/* AE3E8C 8006CCEC 44885000 */ mtc1 $t0, $f10
/* AE3E90 8006CCF0 00000000 */ nop
/* AE3E94 8006CCF4 46805420 */ cvt.s.w $f16, $f10
/* AE3E98 8006CCF8 E7B00060 */ swc1 $f16, 0x60($sp)
/* AE3E9C 8006CCFC 844B0002 */ lh $t3, 2($v0)
/* AE3EA0 8006CD00 448B9000 */ mtc1 $t3, $f18
/* AE3EA4 8006CD04 00000000 */ nop
/* AE3EA8 8006CD08 46809120 */ cvt.s.w $f4, $f18
/* AE3EAC 8006CD0C E7A40064 */ swc1 $f4, 0x64($sp)
/* AE3EB0 8006CD10 844A0004 */ lh $t2, 4($v0)
/* AE3EB4 8006CD14 448A3000 */ mtc1 $t2, $f6
/* AE3EB8 8006CD18 00000000 */ nop
/* AE3EBC 8006CD1C 46803220 */ cvt.s.w $f8, $f6
/* AE3EC0 8006CD20 0C0344D0 */ jal Matrix_JointPosition
/* AE3EC4 8006CD24 E7A80068 */ swc1 $f8, 0x68($sp)
/* AE3EC8 8006CD28 C7AC0074 */ lwc1 $f12, 0x74($sp)
/* AE3ECC 8006CD2C C7AE0078 */ lwc1 $f14, 0x78($sp)
/* AE3ED0 8006CD30 8FA6007C */ lw $a2, 0x7c($sp)
/* AE3ED4 8006CD34 0C0342A3 */ jal Matrix_Scale
/* AE3ED8 8006CD38 24070001 */ li $a3, 1
/* AE3EDC 8006CD3C 8FAC00AC */ lw $t4, 0xac($sp)
/* AE3EE0 8006CD40 8FA90094 */ lw $t1, 0x94($sp)
/* AE3EE4 8006CD44 8FA800AC */ lw $t0, 0xac($sp)
/* AE3EE8 8006CD48 1580001C */ bnez $t4, .L8006CDBC
/* AE3EEC 8006CD4C 24010001 */ li $at, 1
/* AE3EF0 8006CD50 8D270004 */ lw $a3, 4($t1)
/* AE3EF4 8006CD54 3C0EDA38 */ lui $t6, (0xDA380003 >> 16) # lui $t6, 0xda38
/* AE3EF8 8006CD58 50E00054 */ beql $a3, $zero, .L8006CEAC
/* AE3EFC 8006CD5C 8FB000A8 */ lw $s0, 0xa8($sp)
/* AE3F00 8006CD60 8E0202C0 */ lw $v0, 0x2c0($s0)
/* AE3F04 8006CD64 35CE0003 */ ori $t6, (0xDA380003 & 0xFFFF) # ori $t6, $t6, 3
/* AE3F08 8006CD68 3C058014 */ lui $a1, %hi(D_8013BA78) # $a1, 0x8014
/* AE3F0C 8006CD6C 244D0008 */ addiu $t5, $v0, 8
/* AE3F10 8006CD70 AE0D02C0 */ sw $t5, 0x2c0($s0)
/* AE3F14 8006CD74 AC4E0000 */ sw $t6, ($v0)
/* AE3F18 8006CD78 8FB80098 */ lw $t8, 0x98($sp)
/* AE3F1C 8006CD7C 24A5BA78 */ addiu $a1, %lo(D_8013BA78) # addiu $a1, $a1, -0x4588
/* AE3F20 8006CD80 24060141 */ li $a2, 321
/* AE3F24 8006CD84 8F040000 */ lw $a0, ($t8)
/* AE3F28 8006CD88 AFA7005C */ sw $a3, 0x5c($sp)
/* AE3F2C 8006CD8C 0C0346A2 */ jal Matrix_NewMtx
/* AE3F30 8006CD90 AFA20050 */ sw $v0, 0x50($sp)
/* AE3F34 8006CD94 8FA30050 */ lw $v1, 0x50($sp)
/* AE3F38 8006CD98 8FA7005C */ lw $a3, 0x5c($sp)
/* AE3F3C 8006CD9C 3C19DE00 */ lui $t9, 0xde00
/* AE3F40 8006CDA0 AC620004 */ sw $v0, 4($v1)
/* AE3F44 8006CDA4 8E0202C0 */ lw $v0, 0x2c0($s0)
/* AE3F48 8006CDA8 244F0008 */ addiu $t7, $v0, 8
/* AE3F4C 8006CDAC AE0F02C0 */ sw $t7, 0x2c0($s0)
/* AE3F50 8006CDB0 AC470004 */ sw $a3, 4($v0)
/* AE3F54 8006CDB4 1000003C */ b .L8006CEA8
/* AE3F58 8006CDB8 AC590000 */ sw $t9, ($v0)
.L8006CDBC:
/* AE3F5C 8006CDBC 15010038 */ bne $t0, $at, .L8006CEA0
/* AE3F60 8006CDC0 3C048014 */ lui $a0, %hi(D_8013BAD8)
/* AE3F64 8006CDC4 8FAB0094 */ lw $t3, 0x94($sp)
/* AE3F68 8006CDC8 3C0CDA38 */ lui $t4, (0xDA380003 >> 16) # lui $t4, 0xda38
/* AE3F6C 8006CDCC 8D670004 */ lw $a3, 4($t3)
/* AE3F70 8006CDD0 50E00018 */ beql $a3, $zero, .L8006CE34
/* AE3F74 8006CDD4 8FB80094 */ lw $t8, 0x94($sp)
/* AE3F78 8006CDD8 8E0202C0 */ lw $v0, 0x2c0($s0)
/* AE3F7C 8006CDDC 358C0003 */ ori $t4, (0xDA380003 & 0xFFFF) # ori $t4, $t4, 3
/* AE3F80 8006CDE0 3C058014 */ lui $a1, %hi(D_8013BA98) # $a1, 0x8014
/* AE3F84 8006CDE4 244A0008 */ addiu $t2, $v0, 8
/* AE3F88 8006CDE8 AE0A02C0 */ sw $t2, 0x2c0($s0)
/* AE3F8C 8006CDEC AC4C0000 */ sw $t4, ($v0)
/* AE3F90 8006CDF0 8FA90098 */ lw $t1, 0x98($sp)
/* AE3F94 8006CDF4 24A5BA98 */ addiu $a1, %lo(D_8013BA98) # addiu $a1, $a1, -0x4568
/* AE3F98 8006CDF8 2406014C */ li $a2, 332
/* AE3F9C 8006CDFC 8D240000 */ lw $a0, ($t1)
/* AE3FA0 8006CE00 AFA7005C */ sw $a3, 0x5c($sp)
/* AE3FA4 8006CE04 0C0346A2 */ jal Matrix_NewMtx
/* AE3FA8 8006CE08 AFA20044 */ sw $v0, 0x44($sp)
/* AE3FAC 8006CE0C 8FA30044 */ lw $v1, 0x44($sp)
/* AE3FB0 8006CE10 8FA7005C */ lw $a3, 0x5c($sp)
/* AE3FB4 8006CE14 3C0EDE00 */ lui $t6, 0xde00
/* AE3FB8 8006CE18 AC620004 */ sw $v0, 4($v1)
/* AE3FBC 8006CE1C 8E0202C0 */ lw $v0, 0x2c0($s0)
/* AE3FC0 8006CE20 244D0008 */ addiu $t5, $v0, 8
/* AE3FC4 8006CE24 AE0D02C0 */ sw $t5, 0x2c0($s0)
/* AE3FC8 8006CE28 AC470004 */ sw $a3, 4($v0)
/* AE3FCC 8006CE2C AC4E0000 */ sw $t6, ($v0)
/* AE3FD0 8006CE30 8FB80094 */ lw $t8, 0x94($sp)
.L8006CE34:
/* AE3FD4 8006CE34 3C19DA38 */ lui $t9, (0xDA380003 >> 16) # lui $t9, 0xda38
/* AE3FD8 8006CE38 8F070008 */ lw $a3, 8($t8)
/* AE3FDC 8006CE3C 50E0001B */ beql $a3, $zero, .L8006CEAC
/* AE3FE0 8006CE40 8FB000A8 */ lw $s0, 0xa8($sp)
/* AE3FE4 8006CE44 8E0202D0 */ lw $v0, 0x2d0($s0)
/* AE3FE8 8006CE48 37390003 */ ori $t9, (0xDA380003 & 0xFFFF) # ori $t9, $t9, 3
/* AE3FEC 8006CE4C 3C058014 */ lui $a1, %hi(D_8013BAB8) # $a1, 0x8014
/* AE3FF0 8006CE50 244F0008 */ addiu $t7, $v0, 8
/* AE3FF4 8006CE54 AE0F02D0 */ sw $t7, 0x2d0($s0)
/* AE3FF8 8006CE58 AC590000 */ sw $t9, ($v0)
/* AE3FFC 8006CE5C 8FA80098 */ lw $t0, 0x98($sp)
/* AE4000 8006CE60 24A5BAB8 */ addiu $a1, %lo(D_8013BAB8) # addiu $a1, $a1, -0x4548
/* AE4004 8006CE64 24060152 */ li $a2, 338
/* AE4008 8006CE68 8D040000 */ lw $a0, ($t0)
/* AE400C 8006CE6C AFA7005C */ sw $a3, 0x5c($sp)
/* AE4010 8006CE70 0C0346A2 */ jal Matrix_NewMtx
/* AE4014 8006CE74 AFA2003C */ sw $v0, 0x3c($sp)
/* AE4018 8006CE78 8FA3003C */ lw $v1, 0x3c($sp)
/* AE401C 8006CE7C 8FA7005C */ lw $a3, 0x5c($sp)
/* AE4020 8006CE80 3C0ADE00 */ lui $t2, 0xde00
/* AE4024 8006CE84 AC620004 */ sw $v0, 4($v1)
/* AE4028 8006CE88 8E0202D0 */ lw $v0, 0x2d0($s0)
/* AE402C 8006CE8C 244B0008 */ addiu $t3, $v0, 8
/* AE4030 8006CE90 AE0B02D0 */ sw $t3, 0x2d0($s0)
/* AE4034 8006CE94 AC470004 */ sw $a3, 4($v0)
/* AE4038 8006CE98 10000003 */ b .L8006CEA8
/* AE403C 8006CE9C AC4A0000 */ sw $t2, ($v0)
.L8006CEA0:
/* AE4040 8006CEA0 0C00084C */ jal osSyncPrintf
/* AE4044 8006CEA4 2484BAD8 */ addiu $a0, %lo(D_8013BAD8)
.L8006CEA8:
/* AE4048 8006CEA8 8FB000A8 */ lw $s0, 0xa8($sp)
.L8006CEAC:
/* AE404C 8006CEAC 8FA40098 */ lw $a0, 0x98($sp)
/* AE4050 8006CEB0 8FA500A0 */ lw $a1, 0xa0($sp)
/* AE4054 8006CEB4 12000003 */ beqz $s0, .L8006CEC4
/* AE4058 8006CEB8 8FA6009C */ lw $a2, 0x9c($sp)
/* AE405C 8006CEBC 0200F809 */ jalr $s0
/* AE4060 8006CEC0 8FA700B0 */ lw $a3, 0xb0($sp)
.L8006CEC4:
/* AE4064 8006CEC4 8FAC0094 */ lw $t4, 0x94($sp)
/* AE4068 8006CEC8 240100FF */ li $at, 255
/* AE406C 8006CECC 8FA40098 */ lw $a0, 0x98($sp)
/* AE4070 8006CED0 91850000 */ lbu $a1, ($t4)
/* AE4074 8006CED4 8FA600A0 */ lw $a2, 0xa0($sp)
/* AE4078 8006CED8 8FA700A4 */ lw $a3, 0xa4($sp)
/* AE407C 8006CEDC 10A10007 */ beq $a1, $at, .L8006CEFC
/* AE4080 8006CEE0 00000000 */ nop
/* AE4084 8006CEE4 8FA900AC */ lw $t1, 0xac($sp)
/* AE4088 8006CEE8 8FAD00B0 */ lw $t5, 0xb0($sp)
/* AE408C 8006CEEC AFB00010 */ sw $s0, 0x10($sp)
/* AE4090 8006CEF0 AFA90014 */ sw $t1, 0x14($sp)
/* AE4094 8006CEF4 0C01B2EB */ jal SkelCurve_DrawLimb
/* AE4098 8006CEF8 AFAD0018 */ sw $t5, 0x18($sp)
.L8006CEFC:
/* AE409C 8006CEFC 0C034221 */ jal Matrix_Pull
/* AE40A0 8006CF00 00000000 */ nop
/* AE40A4 8006CF04 8FAE0094 */ lw $t6, 0x94($sp)
/* AE40A8 8006CF08 240100FF */ li $at, 255
/* AE40AC 8006CF0C 8FA40098 */ lw $a0, 0x98($sp)
/* AE40B0 8006CF10 91C50001 */ lbu $a1, 1($t6)
/* AE40B4 8006CF14 8FA600A0 */ lw $a2, 0xa0($sp)
/* AE40B8 8006CF18 8FA700A4 */ lw $a3, 0xa4($sp)
/* AE40BC 8006CF1C 50A10008 */ beql $a1, $at, .L8006CF40
/* AE40C0 8006CF20 8FB90098 */ lw $t9, 0x98($sp)
/* AE40C4 8006CF24 8FB800AC */ lw $t8, 0xac($sp)
/* AE40C8 8006CF28 8FAF00B0 */ lw $t7, 0xb0($sp)
/* AE40CC 8006CF2C AFB00010 */ sw $s0, 0x10($sp)
/* AE40D0 8006CF30 AFB80014 */ sw $t8, 0x14($sp)
/* AE40D4 8006CF34 0C01B2EB */ jal SkelCurve_DrawLimb
/* AE40D8 8006CF38 AFAF0018 */ sw $t7, 0x18($sp)
/* AE40DC 8006CF3C 8FB90098 */ lw $t9, 0x98($sp)
.L8006CF40:
/* AE40E0 8006CF40 3C068014 */ lui $a2, %hi(D_8013BAFC) # $a2, 0x8014
/* AE40E4 8006CF44 24C6BAFC */ addiu $a2, %lo(D_8013BAFC) # addiu $a2, $a2, -0x4504
/* AE40E8 8006CF48 27A40080 */ addiu $a0, $sp, 0x80
/* AE40EC 8006CF4C 24070173 */ li $a3, 371
/* AE40F0 8006CF50 0C031AD5 */ jal Graph_CloseDisps
/* AE40F4 8006CF54 8F250000 */ lw $a1, ($t9)
/* AE40F8 8006CF58 8FBF002C */ lw $ra, 0x2c($sp)
/* AE40FC 8006CF5C 8FB00028 */ lw $s0, 0x28($sp)
/* AE4100 8006CF60 27BD0098 */ addiu $sp, $sp, 0x98
/* AE4104 8006CF64 03E00008 */ jr $ra
/* AE4108 8006CF68 00000000 */ nop

View File

@ -1,283 +0,0 @@
.rdata
glabel D_8013D998
.asciz "%d %x %d\n"
# EUC-JP: %d %x %d | Current floor =% d Current room =% x Number of rooms =% d
.balign 4
glabel D_8013D9C0
.asciz "\x1b[33m"
.balign 4
glabel D_8013D9C8
.asciz "%x\n"
# EUC-JP: | Tier switching =
.balign 4
glabel D_8013D9D8
.asciz "\x1b[m"
.balign 4
.late_rodata
glabel jtbl_8013DC8C
.word L800822DC
.word L800822DC
.word L800822DC
.word L800822DC
.word L800822DC
.word L800822DC
.word L800822DC
.word L800822DC
.word L800822DC
.word L800822DC
.word L800825BC
.word L800825BC
.word L800825BC
.word L800825BC
.word L800825BC
.word L800825BC
.word L800825BC
.word L8008255C
.word L8008255C
.word L8008255C
.word L8008255C
.word L8008255C
.word L8008255C
.word L8008255C
.word L8008255C
.text
glabel Map_Update
/* AF940C 8008226C 27BDFFB0 */ addiu $sp, $sp, -0x50
/* AF9410 80082270 3C010001 */ lui $at, 1
/* AF9414 80082274 AFBF002C */ sw $ra, 0x2c($sp)
/* AF9418 80082278 AFB40028 */ sw $s4, 0x28($sp)
/* AF941C 8008227C AFB30024 */ sw $s3, 0x24($sp)
/* AF9420 80082280 AFB20020 */ sw $s2, 0x20($sp)
/* AF9424 80082284 AFB1001C */ sw $s1, 0x1c($sp)
/* AF9428 80082288 AFB00018 */ sw $s0, 0x18($sp)
/* AF942C 8008228C 00811021 */ addu $v0, $a0, $at
/* AF9430 80082290 944E0934 */ lhu $t6, 0x934($v0)
/* AF9434 80082294 3C068016 */ lui $a2, %hi(gSaveContext) # $a2, 0x8016
/* AF9438 80082298 24C6E660 */ addiu $a2, %lo(gSaveContext) # addiu $a2, $a2, -0x19a0
/* AF943C 8008229C 0080A025 */ move $s4, $a0
/* AF9440 800822A0 8C851C44 */ lw $a1, 0x1c44($a0)
/* AF9444 800822A4 15C000C5 */ bnez $t6, .L800825BC
/* AF9448 800822A8 94D31402 */ lhu $s3, 0x1402($a2)
/* AF944C 800822AC 944F0936 */ lhu $t7, 0x936($v0)
/* AF9450 800822B0 55E000C3 */ bnezl $t7, .L800825C0
/* AF9454 800822B4 8FBF002C */ lw $ra, 0x2c($sp)
/* AF9458 800822B8 848200A4 */ lh $v0, 0xa4($a0)
/* AF945C 800822BC 2C410019 */ sltiu $at, $v0, 0x19
/* AF9460 800822C0 102000BE */ beqz $at, .L800825BC
/* AF9464 800822C4 0002C080 */ sll $t8, $v0, 2
/* AF9468 800822C8 3C018014 */ lui $at, %hi(jtbl_8013DC8C)
/* AF946C 800822CC 00380821 */ addu $at, $at, $t8
/* AF9470 800822D0 8C38DC8C */ lw $t8, %lo(jtbl_8013DC8C)($at)
/* AF9474 800822D4 03000008 */ jr $t8
/* AF9478 800822D8 00000000 */ nop
glabel L800822DC
/* AF947C 800822DC 3C010001 */ lui $at, (0x000104F0 >> 16) # lui $at, 1
/* AF9480 800822E0 342104F0 */ ori $at, (0x000104F0 & 0xFFFF) # ori $at, $at, 0x4f0
/* AF9484 800822E4 02819021 */ addu $s2, $s4, $at
/* AF9488 800822E8 3C078012 */ lui $a3, %hi(gBitFlags) # $a3, 0x8012
/* AF948C 800822EC A240015E */ sb $zero, 0x15e($s2)
/* AF9490 800822F0 24E77120 */ addiu $a3, %lo(gBitFlags) # addiu $a3, $a3, 0x7120
/* AF9494 800822F4 00D34021 */ addu $t0, $a2, $s3
/* AF9498 800822F8 910900A8 */ lbu $t1, 0xa8($t0)
/* AF949C 800822FC 8CF90008 */ lw $t9, 8($a3)
/* AF94A0 80082300 0013C0C0 */ sll $t8, $s3, 3
/* AF94A4 80082304 3C0C8016 */ lui $t4, %hi(gMapData) # $t4, 0x8016
/* AF94A8 80082308 03295024 */ and $t2, $t9, $t1
/* AF94AC 8008230C 11400004 */ beqz $t2, .L80082320
/* AF94B0 80082310 0313C023 */ subu $t8, $t8, $s3
/* AF94B4 80082314 240B0001 */ li $t3, 1
/* AF94B8 80082318 10000002 */ b .L80082324
/* AF94BC 8008231C A24B015F */ sb $t3, 0x15f($s2)
.L80082320:
/* AF94C0 80082320 A240015F */ sb $zero, 0x15f($s2)
.L80082324:
/* AF94C4 80082324 8D8CFFD0 */ lw $t4, %lo(gMapData)($t4)
/* AF94C8 80082328 00137140 */ sll $t6, $s3, 5
/* AF94CC 8008232C 00008825 */ move $s1, $zero
/* AF94D0 80082330 8D8D0054 */ lw $t5, 0x54($t4)
/* AF94D4 80082334 C4A00028 */ lwc1 $f0, 0x28($a1)
/* AF94D8 80082338 0018C080 */ sll $t8, $t8, 2
/* AF94DC 8008233C 01AE1821 */ addu $v1, $t5, $t6
/* AF94E0 80082340 00111080 */ sll $v0, $s1, 2
.L80082344:
/* AF94E4 80082344 00627821 */ addu $t7, $v1, $v0
/* AF94E8 80082348 C5E40000 */ lwc1 $f4, ($t7)
/* AF94EC 8008234C 4600203C */ c.lt.s $f4, $f0
/* AF94F0 80082350 00000000 */ nop
/* AF94F4 80082354 45030009 */ bc1tl .L8008237C
/* AF94F8 80082358 00D81821 */ addu $v1, $a2, $t8
/* AF94FC 8008235C 26310001 */ addiu $s1, $s1, 1
/* AF9500 80082360 00118C00 */ sll $s1, $s1, 0x10
/* AF9504 80082364 00118C03 */ sra $s1, $s1, 0x10
/* AF9508 80082368 2A210008 */ slti $at, $s1, 8
/* AF950C 8008236C 5420FFF5 */ bnezl $at, .L80082344
/* AF9510 80082370 00111080 */ sll $v0, $s1, 2
/* AF9514 80082374 00111080 */ sll $v0, $s1, 2
/* AF9518 80082378 00D81821 */ addu $v1, $a2, $t8
.L8008237C:
/* AF951C 8008237C 00E2C821 */ addu $t9, $a3, $v0
/* AF9520 80082380 8F290000 */ lw $t1, ($t9)
/* AF9524 80082384 8C6800EC */ lw $t0, 0xec($v1)
/* AF9528 80082388 3C0B8016 */ lui $t3, %hi(gGameInfo) # $t3, 0x8016
/* AF952C 8008238C 02602025 */ move $a0, $s3
/* AF9530 80082390 01095025 */ or $t2, $t0, $t1
/* AF9534 80082394 AC6A00EC */ sw $t2, 0xec($v1)
/* AF9538 80082398 8D6BFA90 */ lw $t3, %lo(gGameInfo)($t3)
/* AF953C 8008239C 02202825 */ move $a1, $s1
/* AF9540 800823A0 0C020892 */ jal Map_GetFloorTextIndexOffset
/* AF9544 800823A4 A5710F50 */ sh $s1, 0xf50($t3)
/* AF9548 800823A8 3C038016 */ lui $v1, %hi(gGameInfo) # $v1, 0x8016
/* AF954C 800823AC 8C63FA90 */ lw $v1, %lo(gGameInfo)($v1)
/* AF9550 800823B0 02602025 */ move $a0, $s3
/* AF9554 800823B4 846D0F2C */ lh $t5, 0xf2c($v1)
/* AF9558 800823B8 846C0F2E */ lh $t4, 0xf2e($v1)
/* AF955C 800823BC 004D7021 */ addu $t6, $v0, $t5
/* AF9560 800823C0 118E0008 */ beq $t4, $t6, .L800823E4
/* AF9564 800823C4 00000000 */ nop
/* AF9568 800823C8 0C020892 */ jal Map_GetFloorTextIndexOffset
/* AF956C 800823CC 02202825 */ move $a1, $s1
/* AF9570 800823D0 3C038016 */ lui $v1, %hi(gGameInfo) # $v1, 0x8016
/* AF9574 800823D4 8C63FA90 */ lw $v1, %lo(gGameInfo)($v1)
/* AF9578 800823D8 846F0F2C */ lh $t7, 0xf2c($v1)
/* AF957C 800823DC 004FC021 */ addu $t8, $v0, $t7
/* AF9580 800823E0 A4780F2E */ sh $t8, 0xf2e($v1)
.L800823E4:
/* AF9584 800823E4 3C198012 */ lui $t9, %hi(sLastRoomNum) # $t9, 0x8012
/* AF9588 800823E8 87393A60 */ lh $t9, %lo(sLastRoomNum)($t9)
/* AF958C 800823EC 8646025C */ lh $a2, 0x25c($s2)
/* AF9590 800823F0 3C088016 */ lui $t0, %hi(gMapData) # $t0, 0x8016
/* AF9594 800823F4 1326000D */ beq $t9, $a2, .L8008242C
/* AF9598 800823F8 00000000 */ nop
/* AF959C 800823FC 8D08FFD0 */ lw $t0, %lo(gMapData)($t0)
/* AF95A0 80082400 00135040 */ sll $t2, $s3, 1
/* AF95A4 80082404 3C048014 */ lui $a0, %hi(D_8013D998) # $a0, 0x8014
/* AF95A8 80082408 8D090058 */ lw $t1, 0x58($t0)
/* AF95AC 8008240C 2484D998 */ addiu $a0, %lo(D_8013D998) # addiu $a0, $a0, -0x2668
/* AF95B0 80082410 02202825 */ move $a1, $s1
/* AF95B4 80082414 012A5821 */ addu $t3, $t1, $t2
/* AF95B8 80082418 0C00084C */ jal osSyncPrintf
/* AF95BC 8008241C 95670000 */ lhu $a3, ($t3)
/* AF95C0 80082420 8646025C */ lh $a2, 0x25c($s2)
/* AF95C4 80082424 3C018012 */ lui $at, %hi(sLastRoomNum) # $at, 0x8012
/* AF95C8 80082428 A4263A60 */ sh $a2, %lo(sLastRoomNum)($at)
.L8008242C:
/* AF95CC 8008242C 3C028016 */ lui $v0, %hi(gMapData) # $v0, 0x8016
/* AF95D0 80082430 8C42FFD0 */ lw $v0, %lo(gMapData)($v0)
/* AF95D4 80082434 00136840 */ sll $t5, $s3, 1
/* AF95D8 80082438 AFAD0034 */ sw $t5, 0x34($sp)
/* AF95DC 8008243C 8C4C0058 */ lw $t4, 0x58($v0)
/* AF95E0 80082440 00008025 */ move $s0, $zero
/* AF95E4 80082444 018D7821 */ addu $t7, $t4, $t5
/* AF95E8 80082448 95E30000 */ lhu $v1, ($t7)
/* AF95EC 8008244C 1860003F */ blez $v1, .L8008254C
/* AF95F0 80082450 0013C880 */ sll $t9, $s3, 2
.L80082454:
/* AF95F4 80082454 0333C823 */ subu $t9, $t9, $s3
/* AF95F8 80082458 0019C880 */ sll $t9, $t9, 2
/* AF95FC 8008245C 8C58005C */ lw $t8, 0x5c($v0)
/* AF9600 80082460 0333C821 */ addu $t9, $t9, $s3
/* AF9604 80082464 0019C880 */ sll $t9, $t9, 2
/* AF9608 80082468 0333C823 */ subu $t9, $t9, $s3
/* AF960C 8008246C 03194021 */ addu $t0, $t8, $t9
/* AF9610 80082470 01104821 */ addu $t1, $t0, $s0
/* AF9614 80082474 912A0000 */ lbu $t2, ($t1)
/* AF9618 80082478 00136880 */ sll $t5, $s3, 2
/* AF961C 8008247C 01B36823 */ subu $t5, $t5, $s3
/* AF9620 80082480 14CA002C */ bne $a2, $t2, .L80082534
/* AF9624 80082484 000D6880 */ sll $t5, $t5, 2
/* AF9628 80082488 8C4B0060 */ lw $t3, 0x60($v0)
/* AF962C 8008248C 01B36821 */ addu $t5, $t5, $s3
/* AF9630 80082490 000D6880 */ sll $t5, $t5, 2
/* AF9634 80082494 01B36823 */ subu $t5, $t5, $s3
/* AF9638 80082498 016D6021 */ addu $t4, $t3, $t5
/* AF963C 8008249C 01907021 */ addu $t6, $t4, $s0
/* AF9640 800824A0 91CF0000 */ lbu $t7, ($t6)
/* AF9644 800824A4 0013C880 */ sll $t9, $s3, 2
/* AF9648 800824A8 0333C823 */ subu $t9, $t9, $s3
/* AF964C 800824AC 162F0021 */ bne $s1, $t7, .L80082534
/* AF9650 800824B0 0019C880 */ sll $t9, $t9, 2
/* AF9654 800824B4 8C580064 */ lw $t8, 0x64($v0)
/* AF9658 800824B8 0333C821 */ addu $t9, $t9, $s3
/* AF965C 800824BC 0019C880 */ sll $t9, $t9, 2
/* AF9660 800824C0 0333C823 */ subu $t9, $t9, $s3
/* AF9664 800824C4 03194021 */ addu $t0, $t8, $t9
/* AF9668 800824C8 01104821 */ addu $t1, $t0, $s0
/* AF966C 800824CC 912A0000 */ lbu $t2, ($t1)
/* AF9670 800824D0 3C048014 */ lui $a0, %hi(D_8013D9C0) # $a0, 0x8014
/* AF9674 800824D4 2484D9C0 */ addiu $a0, %lo(D_8013D9C0) # addiu $a0, $a0, -0x2640
/* AF9678 800824D8 0C00084C */ jal osSyncPrintf
/* AF967C 800824DC A64A025C */ sh $t2, 0x25c($s2)
/* AF9680 800824E0 3C048014 */ lui $a0, %hi(D_8013D9C8) # $a0, 0x8014
/* AF9684 800824E4 2484D9C8 */ addiu $a0, %lo(D_8013D9C8) # addiu $a0, $a0, -0x2638
/* AF9688 800824E8 0C00084C */ jal osSyncPrintf
/* AF968C 800824EC 8645025C */ lh $a1, 0x25c($s2)
/* AF9690 800824F0 3C048014 */ lui $a0, %hi(D_8013D9D8) # $a0, 0x8014
/* AF9694 800824F4 0C00084C */ jal osSyncPrintf
/* AF9698 800824F8 2484D9D8 */ addiu $a0, %lo(D_8013D9D8) # addiu $a0, $a0, -0x2628
/* AF969C 800824FC 02802025 */ move $a0, $s4
/* AF96A0 80082500 0C0202AD */ jal Map_InitData
/* AF96A4 80082504 8645025C */ lh $a1, 0x25c($s2)
/* AF96A8 80082508 3C018016 */ lui $at, %hi(gSaveContext+0x1422) # $at, 0x8016
/* AF96AC 8008250C A420FA82 */ sh $zero, %lo(gSaveContext+0x1422)($at)
/* AF96B0 80082510 0C0201E8 */ jal Map_SavePlayerInitialInfo
/* AF96B4 80082514 02802025 */ move $a0, $s4
/* AF96B8 80082518 3C028016 */ lui $v0, %hi(gMapData) # $v0, 0x8016
/* AF96BC 8008251C 8C42FFD0 */ lw $v0, %lo(gMapData)($v0)
/* AF96C0 80082520 8FAD0034 */ lw $t5, 0x34($sp)
/* AF96C4 80082524 8646025C */ lh $a2, 0x25c($s2)
/* AF96C8 80082528 8C4B0058 */ lw $t3, 0x58($v0)
/* AF96CC 8008252C 016D6021 */ addu $t4, $t3, $t5
/* AF96D0 80082530 95830000 */ lhu $v1, ($t4)
.L80082534:
/* AF96D4 80082534 26100001 */ addiu $s0, $s0, 1
/* AF96D8 80082538 00108400 */ sll $s0, $s0, 0x10
/* AF96DC 8008253C 00108403 */ sra $s0, $s0, 0x10
/* AF96E0 80082540 0203082A */ slt $at, $s0, $v1
/* AF96E4 80082544 5420FFC3 */ bnezl $at, .L80082454
/* AF96E8 80082548 0013C880 */ sll $t9, $s3, 2
.L8008254C:
/* AF96EC 8008254C 3C0E8016 */ lui $t6, %hi(gGameInfo) # $t6, 0x8016
/* AF96F0 80082550 8DCEFA90 */ lw $t6, %lo(gGameInfo)($t6)
/* AF96F4 80082554 10000019 */ b .L800825BC
/* AF96F8 80082558 A5C60F28 */ sh $a2, 0xf28($t6)
glabel L8008255C
/* AF96FC 8008255C 3C0F8016 */ lui $t7, %hi(gMapData) # $t7, 0x8016
/* AF9700 80082560 8DEFFFD0 */ lw $t7, %lo(gMapData)($t7)
/* AF9704 80082564 0002C840 */ sll $t9, $v0, 1
/* AF9708 80082568 3C0A8016 */ lui $t2, %hi(gGameInfo) # $t2, 0x8016
/* AF970C 8008256C 8DF80004 */ lw $t8, 4($t7)
/* AF9710 80082570 8D4AFA90 */ lw $t2, %lo(gGameInfo)($t2)
/* AF9714 80082574 3C038016 */ lui $v1, %hi(gGameInfo) # $v1, 0x8016
/* AF9718 80082578 03194021 */ addu $t0, $t8, $t9
/* AF971C 8008257C 8509FFDE */ lh $t1, -0x22($t0)
/* AF9720 80082580 3C0B8016 */ lui $t3, %hi(gMapData) # $t3, 0x8016
/* AF9724 80082584 A5490F50 */ sh $t1, 0xf50($t2)
/* AF9728 80082588 8D6BFFD0 */ lw $t3, %lo(gMapData)($t3)
/* AF972C 8008258C 8C63FA90 */ lw $v1, %lo(gGameInfo)($v1)
/* AF9730 80082590 868C00A4 */ lh $t4, 0xa4($s4)
/* AF9734 80082594 8D6D0000 */ lw $t5, ($t3)
/* AF9738 80082598 84780F50 */ lh $t8, 0xf50($v1)
/* AF973C 8008259C 000C7100 */ sll $t6, $t4, 4
/* AF9740 800825A0 01AE7821 */ addu $t7, $t5, $t6
/* AF9744 800825A4 0018C840 */ sll $t9, $t8, 1
/* AF9748 800825A8 01F94021 */ addu $t0, $t7, $t9
/* AF974C 800825AC 8509FEF0 */ lh $t1, -0x110($t0)
/* AF9750 800825B0 846A0F2C */ lh $t2, 0xf2c($v1)
/* AF9754 800825B4 012A5821 */ addu $t3, $t1, $t2
/* AF9758 800825B8 A46B0F2E */ sh $t3, 0xf2e($v1)
glabel L800825BC
.L800825BC:
/* AF975C 800825BC 8FBF002C */ lw $ra, 0x2c($sp)
.L800825C0:
/* AF9760 800825C0 8FB00018 */ lw $s0, 0x18($sp)
/* AF9764 800825C4 8FB1001C */ lw $s1, 0x1c($sp)
/* AF9768 800825C8 8FB20020 */ lw $s2, 0x20($sp)
/* AF976C 800825CC 8FB30024 */ lw $s3, 0x24($sp)
/* AF9770 800825D0 8FB40028 */ lw $s4, 0x28($sp)
/* AF9774 800825D4 03E00008 */ jr $ra
/* AF9778 800825D8 27BD0050 */ addiu $sp, $sp, 0x50

View File

@ -1,74 +0,0 @@
.rdata
glabel D_8013E190
.asciz "使%d\n"
# Translation: Fairy Usage
.balign 4
.text
glabel Inventory_ConsumeFairy
/* AFDE10 80086C70 3C058012 */ lui $a1, %hi(gItemSlots+0x18) # $a1, 0x8012
/* AFDE14 80086C74 90A5747C */ lbu $a1, %lo(gItemSlots+0x18)($a1)
/* AFDE18 80086C78 27BDFFD8 */ addiu $sp, $sp, -0x28
/* AFDE1C 80086C7C 3C0E8016 */ lui $t6, %hi(gSaveContext) # $t6, 0x8016
/* AFDE20 80086C80 AFA40028 */ sw $a0, 0x28($sp)
/* AFDE24 80086C84 25CEE660 */ addiu $t6, %lo(gSaveContext) # addiu $t6, $t6, -0x19a0
/* AFDE28 80086C88 AFBF0014 */ sw $ra, 0x14($sp)
/* AFDE2C 80086C8C 24040018 */ li $a0, 24
/* AFDE30 80086C90 00001025 */ move $v0, $zero
/* AFDE34 80086C94 00AE1821 */ addu $v1, $a1, $t6
/* AFDE38 80086C98 00623821 */ addu $a3, $v1, $v0
.L80086C9C:
/* AFDE3C 80086C9C 90EF0074 */ lbu $t7, 0x74($a3)
/* AFDE40 80086CA0 548F0024 */ bnel $a0, $t7, .L80086D34
/* AFDE44 80086CA4 24420001 */ addiu $v0, $v0, 1
/* AFDE48 80086CA8 3C028016 */ lui $v0, %hi(gSaveContext) # $v0, 0x8016
/* AFDE4C 80086CAC 2442E660 */ addiu $v0, %lo(gSaveContext) # addiu $v0, $v0, -0x19a0
/* AFDE50 80086CB0 24030001 */ li $v1, 1
/* AFDE54 80086CB4 00433021 */ addu $a2, $v0, $v1
.L80086CB8:
/* AFDE58 80086CB8 90D80068 */ lbu $t8, 0x68($a2)
/* AFDE5C 80086CBC 1498000D */ bne $a0, $t8, .L80086CF4
/* AFDE60 80086CC0 24190014 */ li $t9, 20
/* AFDE64 80086CC4 A0D90068 */ sb $t9, 0x68($a2)
/* AFDE68 80086CC8 8FA40028 */ lw $a0, 0x28($sp)
/* AFDE6C 80086CCC 3065FFFF */ andi $a1, $v1, 0xffff
/* AFDE70 80086CD0 00001025 */ move $v0, $zero
/* AFDE74 80086CD4 0C02129B */ jal Interface_LoadItemIcon1
/* AFDE78 80086CD8 AFA6001C */ sw $a2, 0x1c($sp)
/* AFDE7C 80086CDC 8FA6001C */ lw $a2, 0x1c($sp)
/* AFDE80 80086CE0 3C088016 */ lui $t0, %hi(gSaveContext) # $t0, 0x8016
/* AFDE84 80086CE4 2508E660 */ addiu $t0, %lo(gSaveContext) # addiu $t0, $t0, -0x19a0
/* AFDE88 80086CE8 90C5006B */ lbu $a1, 0x6b($a2)
/* AFDE8C 80086CEC 10000007 */ b .L80086D0C
/* AFDE90 80086CF0 00A83821 */ addu $a3, $a1, $t0
.L80086CF4:
/* AFDE94 80086CF4 24630001 */ addiu $v1, $v1, 1
/* AFDE98 80086CF8 00031C00 */ sll $v1, $v1, 0x10
/* AFDE9C 80086CFC 00031C03 */ sra $v1, $v1, 0x10
/* AFDEA0 80086D00 28610004 */ slti $at, $v1, 4
/* AFDEA4 80086D04 5420FFEC */ bnezl $at, .L80086CB8
/* AFDEA8 80086D08 00433021 */ addu $a2, $v0, $v1
.L80086D0C:
/* AFDEAC 80086D0C 3C048014 */ lui $a0, %hi(D_8013E190) # $a0, 0x8014
/* AFDEB0 80086D10 2484E190 */ addiu $a0, %lo(D_8013E190) # addiu $a0, $a0, -0x1e70
/* AFDEB4 80086D14 0C00084C */ jal osSyncPrintf
/* AFDEB8 80086D18 AFA70018 */ sw $a3, 0x18($sp)
/* AFDEBC 80086D1C 8FA70018 */ lw $a3, 0x18($sp)
/* AFDEC0 80086D20 24090014 */ li $t1, 20
/* AFDEC4 80086D24 24020001 */ li $v0, 1
/* AFDEC8 80086D28 10000008 */ b .L80086D4C
/* AFDECC 80086D2C A0E90074 */ sb $t1, 0x74($a3)
/* AFDED0 80086D30 24420001 */ addiu $v0, $v0, 1
.L80086D34:
/* AFDED4 80086D34 00021400 */ sll $v0, $v0, 0x10
/* AFDED8 80086D38 00021403 */ sra $v0, $v0, 0x10
/* AFDEDC 80086D3C 28410004 */ slti $at, $v0, 4
/* AFDEE0 80086D40 5420FFD6 */ bnezl $at, .L80086C9C
/* AFDEE4 80086D44 00623821 */ addu $a3, $v1, $v0
/* AFDEE8 80086D48 00001025 */ move $v0, $zero
.L80086D4C:
/* AFDEEC 80086D4C 8FBF0014 */ lw $ra, 0x14($sp)
/* AFDEF0 80086D50 27BD0028 */ addiu $sp, $sp, 0x28
/* AFDEF4 80086D54 03E00008 */ jr $ra
/* AFDEF8 80086D58 00000000 */ nop

View File

@ -1,67 +0,0 @@
.rdata
glabel D_8013E14C
.asciz "(%d)\n"
.balign 4
.text
glabel Inventory_ReplaceItem
/* AFDB84 800869E4 27BDFFE0 */ addiu $sp, $sp, -0x20
/* AFDB88 800869E8 AFA60028 */ sw $a2, 0x28($sp)
/* AFDB8C 800869EC 3C068016 */ lui $a2, %hi(gSaveContext) # $a2, 0x8016
/* AFDB90 800869F0 AFBF0014 */ sw $ra, 0x14($sp)
/* AFDB94 800869F4 AFA40020 */ sw $a0, 0x20($sp)
/* AFDB98 800869F8 AFA50024 */ sw $a1, 0x24($sp)
/* AFDB9C 800869FC 30A3FFFF */ andi $v1, $a1, 0xffff
/* AFDBA0 80086A00 24C6E660 */ addiu $a2, %lo(gSaveContext) # addiu $a2, $a2, -0x19a0
/* AFDBA4 80086A04 00003825 */ move $a3, $zero
/* AFDBA8 80086A08 00C71021 */ addu $v0, $a2, $a3
.L80086A0C:
/* AFDBAC 80086A0C 904E0074 */ lbu $t6, 0x74($v0)
/* AFDBB0 80086A10 546E0020 */ bnel $v1, $t6, .L80086A94
/* AFDBB4 80086A14 24E70001 */ addiu $a3, $a3, 1
/* AFDBB8 80086A18 97AF002A */ lhu $t7, 0x2a($sp)
/* AFDBBC 80086A1C 3C048014 */ lui $a0, %hi(D_8013E14C) # $a0, 0x8014
/* AFDBC0 80086A20 2484E14C */ addiu $a0, %lo(D_8013E14C) # addiu $a0, $a0, -0x1eb4
/* AFDBC4 80086A24 00E02825 */ move $a1, $a3
/* AFDBC8 80086A28 AFA30018 */ sw $v1, 0x18($sp)
/* AFDBCC 80086A2C 0C00084C */ jal osSyncPrintf
/* AFDBD0 80086A30 A04F0074 */ sb $t7, 0x74($v0)
/* AFDBD4 80086A34 3C068016 */ lui $a2, %hi(gSaveContext) # $a2, 0x8016
/* AFDBD8 80086A38 24C6E660 */ addiu $a2, %lo(gSaveContext) # addiu $a2, $a2, -0x19a0
/* AFDBDC 80086A3C 8FA30018 */ lw $v1, 0x18($sp)
/* AFDBE0 80086A40 24070001 */ li $a3, 1
/* AFDBE4 80086A44 00C71021 */ addu $v0, $a2, $a3
.L80086A48:
/* AFDBE8 80086A48 90580068 */ lbu $t8, 0x68($v0)
/* AFDBEC 80086A4C 54780009 */ bnel $v1, $t8, .L80086A74
/* AFDBF0 80086A50 24E70001 */ addiu $a3, $a3, 1
/* AFDBF4 80086A54 97B9002A */ lhu $t9, 0x2a($sp)
/* AFDBF8 80086A58 8FA40020 */ lw $a0, 0x20($sp)
/* AFDBFC 80086A5C 30E5FFFF */ andi $a1, $a3, 0xffff
/* AFDC00 80086A60 0C02129B */ jal Interface_LoadItemIcon1
/* AFDC04 80086A64 A0590068 */ sb $t9, 0x68($v0)
/* AFDC08 80086A68 10000010 */ b .L80086AAC
/* AFDC0C 80086A6C 24020001 */ li $v0, 1
/* AFDC10 80086A70 24E70001 */ addiu $a3, $a3, 1
.L80086A74:
/* AFDC14 80086A74 00073C00 */ sll $a3, $a3, 0x10
/* AFDC18 80086A78 00073C03 */ sra $a3, $a3, 0x10
/* AFDC1C 80086A7C 28E10004 */ slti $at, $a3, 4
/* AFDC20 80086A80 5420FFF1 */ bnezl $at, .L80086A48
/* AFDC24 80086A84 00C71021 */ addu $v0, $a2, $a3
/* AFDC28 80086A88 10000008 */ b .L80086AAC
/* AFDC2C 80086A8C 24020001 */ li $v0, 1
/* AFDC30 80086A90 24E70001 */ addiu $a3, $a3, 1
.L80086A94:
/* AFDC34 80086A94 00073C00 */ sll $a3, $a3, 0x10
/* AFDC38 80086A98 00073C03 */ sra $a3, $a3, 0x10
/* AFDC3C 80086A9C 28E10018 */ slti $at, $a3, 0x18
/* AFDC40 80086AA0 5420FFDA */ bnezl $at, .L80086A0C
/* AFDC44 80086AA4 00C71021 */ addu $v0, $a2, $a3
/* AFDC48 80086AA8 00001025 */ move $v0, $zero
.L80086AAC:
/* AFDC4C 80086AAC 8FBF0014 */ lw $ra, 0x14($sp)
/* AFDC50 80086AB0 27BD0020 */ addiu $sp, $sp, 0x20
/* AFDC54 80086AB4 03E00008 */ jr $ra
/* AFDC58 80086AB8 00000000 */ nop

View File

@ -1,215 +0,0 @@
.rdata
glabel D_8013DEC8
.asciz "Register_Item_Pt(%d)=%d\n"
.balign 4
glabel D_8013DEE4
.asciz "Register_Item_Pt(%d)=%d\n"
.balign 4
.text
glabel Inventory_SwapAgeEquipment
/* AFB880 800846E0 27BDFFD8 */ addiu $sp, $sp, -0x28
/* AFB884 800846E4 AFB20020 */ sw $s2, 0x20($sp)
/* AFB888 800846E8 3C128016 */ lui $s2, %hi(gSaveContext) # $s2, 0x8016
/* AFB88C 800846EC 2652E660 */ addiu $s2, %lo(gSaveContext) # addiu $s2, $s2, -0x19a0
/* AFB890 800846F0 8E4E0004 */ lw $t6, 4($s2)
/* AFB894 800846F4 AFBF0024 */ sw $ra, 0x24($sp)
/* AFB898 800846F8 AFB1001C */ sw $s1, 0x1c($sp)
/* AFB89C 800846FC 11C00003 */ beqz $t6, .L8008470C
/* AFB8A0 80084700 AFB00018 */ sw $s0, 0x18($sp)
/* AFB8A4 80084704 10000002 */ b .L80084710
/* AFB8A8 80084708 24020005 */ li $v0, 5
.L8008470C:
/* AFB8AC 8008470C 24020011 */ li $v0, 17
.L80084710:
/* AFB8B0 80084710 24010005 */ li $at, 5
/* AFB8B4 80084714 14410051 */ bne $v0, $at, .L8008485C
/* AFB8B8 80084718 00008825 */ move $s1, $zero
/* AFB8BC 8008471C 00008825 */ move $s1, $zero
/* AFB8C0 80084720 2402003B */ li $v0, 59
.L80084724:
/* AFB8C4 80084724 12200005 */ beqz $s1, .L8008473C
/* AFB8C8 80084728 02518021 */ addu $s0, $s2, $s1
/* AFB8CC 8008472C 02518021 */ addu $s0, $s2, $s1
/* AFB8D0 80084730 920F0068 */ lbu $t7, 0x68($s0)
/* AFB8D4 80084734 10000002 */ b .L80084740
/* AFB8D8 80084738 A20F0040 */ sb $t7, 0x40($s0)
.L8008473C:
/* AFB8DC 8008473C A2020040 */ sb $v0, 0x40($s0)
.L80084740:
/* AFB8E0 80084740 52200004 */ beql $s1, $zero, .L80084754
/* AFB8E4 80084744 26310001 */ addiu $s1, $s1, 1
/* AFB8E8 80084748 9218006B */ lbu $t8, 0x6b($s0)
/* AFB8EC 8008474C A2180043 */ sb $t8, 0x43($s0)
/* AFB8F0 80084750 26310001 */ addiu $s1, $s1, 1
.L80084754:
/* AFB8F4 80084754 00118C00 */ sll $s1, $s1, 0x10
/* AFB8F8 80084758 00118C03 */ sra $s1, $s1, 0x10
/* AFB8FC 8008475C 2A210004 */ slti $at, $s1, 4
/* AFB900 80084760 1420FFF0 */ bnez $at, .L80084724
/* AFB904 80084764 00000000 */ nop
/* AFB908 80084768 9248004A */ lbu $t0, 0x4a($s2)
/* AFB90C 8008476C 96590070 */ lhu $t9, 0x70($s2)
/* AFB910 80084770 240300FF */ li $v1, 255
/* AFB914 80084774 14680016 */ bne $v1, $t0, .L800847D0
/* AFB918 80084778 A6590048 */ sh $t9, 0x48($s2)
/* AFB91C 8008477C 924A0075 */ lbu $t2, 0x75($s2)
/* AFB920 80084780 2409003C */ li $t1, 60
/* AFB924 80084784 A2490068 */ sb $t1, 0x68($s2)
/* AFB928 80084788 106A0005 */ beq $v1, $t2, .L800847A0
/* AFB92C 8008478C 240E0007 */ li $t6, 7
/* AFB930 80084790 24020001 */ li $v0, 1
/* AFB934 80084794 A2420069 */ sb $v0, 0x69($s2)
/* AFB938 80084798 10000004 */ b .L800847AC
/* AFB93C 8008479C A242006C */ sb $v0, 0x6c($s2)
.L800847A0:
/* AFB940 800847A0 240C00FF */ li $t4, 255
/* AFB944 800847A4 A24C006C */ sb $t4, 0x6c($s2)
/* AFB948 800847A8 A24C0069 */ sb $t4, 0x69($s2)
.L800847AC:
/* AFB94C 800847AC 924D007B */ lbu $t5, 0x7b($s2)
/* AFB950 800847B0 24020002 */ li $v0, 2
/* AFB954 800847B4 240F1122 */ li $t7, 4386
/* AFB958 800847B8 A242006A */ sb $v0, 0x6a($s2)
/* AFB95C 800847BC A242006D */ sb $v0, 0x6d($s2)
/* AFB960 800847C0 A24E006E */ sb $t6, 0x6e($s2)
/* AFB964 800847C4 A64F0070 */ sh $t7, 0x70($s2)
/* AFB968 800847C8 10000022 */ b .L80084854
/* AFB96C 800847CC A24D006B */ sb $t5, 0x6b($s2)
.L800847D0:
/* AFB970 800847D0 00008825 */ move $s1, $zero
/* AFB974 800847D4 02518021 */ addu $s0, $s2, $s1
.L800847D8:
/* AFB978 800847D8 9218004A */ lbu $t8, 0x4a($s0)
/* AFB97C 800847DC 12200003 */ beqz $s1, .L800847EC
/* AFB980 800847E0 A2180068 */ sb $t8, 0x68($s0)
/* AFB984 800847E4 9219004D */ lbu $t9, 0x4d($s0)
/* AFB988 800847E8 A219006B */ sb $t9, 0x6b($s0)
.L800847EC:
/* AFB98C 800847EC 92020068 */ lbu $v0, 0x68($s0)
/* AFB990 800847F0 28410014 */ slti $at, $v0, 0x14
/* AFB994 800847F4 14200002 */ bnez $at, .L80084800
/* AFB998 800847F8 28410021 */ slti $at, $v0, 0x21
/* AFB99C 800847FC 14200004 */ bnez $at, .L80084810
.L80084800:
/* AFB9A0 80084800 28410021 */ slti $at, $v0, 0x21
/* AFB9A4 80084804 1420000B */ bnez $at, .L80084834
/* AFB9A8 80084808 28410038 */ slti $at, $v0, 0x38
/* AFB9AC 8008480C 10200009 */ beqz $at, .L80084834
.L80084810:
/* AFB9B0 80084810 3C048014 */ lui $a0, %hi(D_8013DEC8) # $a0, 0x8014
/* AFB9B4 80084814 2484DEC8 */ addiu $a0, %lo(D_8013DEC8) # addiu $a0, $a0, -0x2138
/* AFB9B8 80084818 02202825 */ move $a1, $s1
/* AFB9BC 8008481C 0C00084C */ jal osSyncPrintf
/* AFB9C0 80084820 9206006B */ lbu $a2, 0x6b($s0)
/* AFB9C4 80084824 9208006B */ lbu $t0, 0x6b($s0)
/* AFB9C8 80084828 02484821 */ addu $t1, $s2, $t0
/* AFB9CC 8008482C 912A0074 */ lbu $t2, 0x74($t1)
/* AFB9D0 80084830 A20A0068 */ sb $t2, 0x68($s0)
.L80084834:
/* AFB9D4 80084834 26310001 */ addiu $s1, $s1, 1
/* AFB9D8 80084838 00118C00 */ sll $s1, $s1, 0x10
/* AFB9DC 8008483C 00118C03 */ sra $s1, $s1, 0x10
/* AFB9E0 80084840 2A210004 */ slti $at, $s1, 4
/* AFB9E4 80084844 5420FFE4 */ bnezl $at, .L800847D8
/* AFB9E8 80084848 02518021 */ addu $s0, $s2, $s1
/* AFB9EC 8008484C 964B0052 */ lhu $t3, 0x52($s2)
/* AFB9F0 80084850 A64B0070 */ sh $t3, 0x70($s2)
.L80084854:
/* AFB9F4 80084854 10000038 */ b .L80084938
/* AFB9F8 80084858 96420070 */ lhu $v0, 0x70($s2)
.L8008485C:
/* AFB9FC 8008485C 02518021 */ addu $s0, $s2, $s1
.L80084860:
/* AFBA00 80084860 920C0068 */ lbu $t4, 0x68($s0)
/* AFBA04 80084864 12200003 */ beqz $s1, .L80084874
/* AFBA08 80084868 A20C004A */ sb $t4, 0x4a($s0)
/* AFBA0C 8008486C 920D006B */ lbu $t5, 0x6b($s0)
/* AFBA10 80084870 A20D004D */ sb $t5, 0x4d($s0)
.L80084874:
/* AFBA14 80084874 26310001 */ addiu $s1, $s1, 1
/* AFBA18 80084878 00118C00 */ sll $s1, $s1, 0x10
/* AFBA1C 8008487C 00118C03 */ sra $s1, $s1, 0x10
/* AFBA20 80084880 2A210004 */ slti $at, $s1, 4
/* AFBA24 80084884 5420FFF6 */ bnezl $at, .L80084860
/* AFBA28 80084888 02518021 */ addu $s0, $s2, $s1
/* AFBA2C 8008488C 924E0040 */ lbu $t6, 0x40($s2)
/* AFBA30 80084890 96420070 */ lhu $v0, 0x70($s2)
/* AFBA34 80084894 240300FF */ li $v1, 255
/* AFBA38 80084898 106E0027 */ beq $v1, $t6, .L80084938
/* AFBA3C 8008489C A6420052 */ sh $v0, 0x52($s2)
/* AFBA40 800848A0 00008825 */ move $s1, $zero
/* AFBA44 800848A4 02518021 */ addu $s0, $s2, $s1
.L800848A8:
/* AFBA48 800848A8 920F0040 */ lbu $t7, 0x40($s0)
/* AFBA4C 800848AC 12200003 */ beqz $s1, .L800848BC
/* AFBA50 800848B0 A20F0068 */ sb $t7, 0x68($s0)
/* AFBA54 800848B4 92180043 */ lbu $t8, 0x43($s0)
/* AFBA58 800848B8 A218006B */ sb $t8, 0x6b($s0)
.L800848BC:
/* AFBA5C 800848BC 92020068 */ lbu $v0, 0x68($s0)
/* AFBA60 800848C0 28410014 */ slti $at, $v0, 0x14
/* AFBA64 800848C4 14200002 */ bnez $at, .L800848D0
/* AFBA68 800848C8 28410021 */ slti $at, $v0, 0x21
/* AFBA6C 800848CC 14200004 */ bnez $at, .L800848E0
.L800848D0:
/* AFBA70 800848D0 28410021 */ slti $at, $v0, 0x21
/* AFBA74 800848D4 1420000B */ bnez $at, .L80084904
/* AFBA78 800848D8 28410038 */ slti $at, $v0, 0x38
/* AFBA7C 800848DC 10200009 */ beqz $at, .L80084904
.L800848E0:
/* AFBA80 800848E0 3C048014 */ lui $a0, %hi(D_8013DEE4) # $a0, 0x8014
/* AFBA84 800848E4 2484DEE4 */ addiu $a0, %lo(D_8013DEE4) # addiu $a0, $a0, -0x211c
/* AFBA88 800848E8 02202825 */ move $a1, $s1
/* AFBA8C 800848EC 0C00084C */ jal osSyncPrintf
/* AFBA90 800848F0 9206006B */ lbu $a2, 0x6b($s0)
/* AFBA94 800848F4 9219006B */ lbu $t9, 0x6b($s0)
/* AFBA98 800848F8 02594021 */ addu $t0, $s2, $t9
/* AFBA9C 800848FC 91090074 */ lbu $t1, 0x74($t0)
/* AFBAA0 80084900 A2090068 */ sb $t1, 0x68($s0)
.L80084904:
/* AFBAA4 80084904 26310001 */ addiu $s1, $s1, 1
/* AFBAA8 80084908 00118C00 */ sll $s1, $s1, 0x10
/* AFBAAC 8008490C 00118C03 */ sra $s1, $s1, 0x10
/* AFBAB0 80084910 2A210004 */ slti $at, $s1, 4
/* AFBAB4 80084914 5420FFE4 */ bnezl $at, .L800848A8
/* AFBAB8 80084918 02518021 */ addu $s0, $s2, $s1
/* AFBABC 8008491C 964B0048 */ lhu $t3, 0x48($s2)
/* AFBAC0 80084920 316DFFF0 */ andi $t5, $t3, 0xfff0
/* AFBAC4 80084924 35AE0001 */ ori $t6, $t5, 1
/* AFBAC8 80084928 A64B0070 */ sh $t3, 0x70($s2)
/* AFBACC 8008492C A64D0070 */ sh $t5, 0x70($s2)
/* AFBAD0 80084930 A64E0070 */ sh $t6, 0x70($s2)
/* AFBAD4 80084934 31C2FFFF */ andi $v0, $t6, 0xffff
.L80084938:
/* AFBAD8 80084938 3C0F8012 */ lui $t7, %hi(gEquipMasks+2) # $t7, 0x8012
/* AFBADC 8008493C 95EF71A2 */ lhu $t7, %lo(gEquipMasks+2)($t7)
/* AFBAE0 80084940 3C188012 */ lui $t8, %hi(gEquipShifts+1) # $t8, 0x8012
/* AFBAE4 80084944 01E21824 */ and $v1, $t7, $v0
/* AFBAE8 80084948 3063FFFF */ andi $v1, $v1, 0xffff
/* AFBAEC 8008494C 50600011 */ beql $v1, $zero, .L80084994
/* AFBAF0 80084950 8FBF0024 */ lw $ra, 0x24($sp)
/* AFBAF4 80084954 931871F1 */ lbu $t8, %lo(gEquipShifts+1)($t8)
/* AFBAF8 80084958 3C088012 */ lui $t0, %hi(gBitFlags+0xc)
/* AFBAFC 8008495C 9649009C */ lhu $t1, 0x9c($s2)
/* AFBB00 80084960 03031806 */ srlv $v1, $v1, $t8
/* AFBB04 80084964 3063FFFF */ andi $v1, $v1, 0xffff
/* AFBB08 80084968 0003C880 */ sll $t9, $v1, 2
/* AFBB0C 8008496C 01194021 */ addu $t0, $t0, $t9
/* AFBB10 80084970 8D08712C */ lw $t0, %lo(gBitFlags+0xc)($t0)
/* AFBB14 80084974 3C0B8012 */ lui $t3, %hi(gEquipNegMasks+2) # $t3, 0x8012
/* AFBB18 80084978 01095024 */ and $t2, $t0, $t1
/* AFBB1C 8008497C 55400005 */ bnezl $t2, .L80084994
/* AFBB20 80084980 8FBF0024 */ lw $ra, 0x24($sp)
/* AFBB24 80084984 956B71AA */ lhu $t3, %lo(gEquipNegMasks+2)($t3)
/* AFBB28 80084988 004B6024 */ and $t4, $v0, $t3
/* AFBB2C 8008498C A64C0070 */ sh $t4, 0x70($s2)
/* AFBB30 80084990 8FBF0024 */ lw $ra, 0x24($sp)
.L80084994:
/* AFBB34 80084994 8FB00018 */ lw $s0, 0x18($sp)
/* AFBB38 80084998 8FB1001C */ lw $s1, 0x1c($sp)
/* AFBB3C 8008499C 8FB20020 */ lw $s2, 0x20($sp)
/* AFBB40 800849A0 03E00008 */ jr $ra
/* AFBB44 800849A4 27BD0028 */ addiu $sp, $sp, 0x28

View File

@ -1,63 +0,0 @@
.rdata
glabel D_8013E160
.asciz "item_no=%x, c_no=%x, Pt=%x Item_Register=%x\n"
.balign 4
.text
glabel Inventory_UpdateBottleItem
/* AFDD3C 80086B9C 27BDFFD0 */ addiu $sp, $sp, -0x30
/* AFDD40 80086BA0 AFA60038 */ sw $a2, 0x38($sp)
/* AFDD44 80086BA4 93A6003B */ lbu $a2, 0x3b($sp)
/* AFDD48 80086BA8 3C088016 */ lui $t0, %hi(gSaveContext) # $t0, 0x8016
/* AFDD4C 80086BAC 2508E660 */ addiu $t0, %lo(gSaveContext) # addiu $t0, $t0, -0x19a0
/* AFDD50 80086BB0 01061821 */ addu $v1, $t0, $a2
/* AFDD54 80086BB4 9062006B */ lbu $v0, 0x6b($v1)
/* AFDD58 80086BB8 AFB00020 */ sw $s0, 0x20($sp)
/* AFDD5C 80086BBC AFA40030 */ sw $a0, 0x30($sp)
/* AFDD60 80086BC0 01027021 */ addu $t6, $t0, $v0
/* AFDD64 80086BC4 91CF0074 */ lbu $t7, 0x74($t6)
/* AFDD68 80086BC8 30B000FF */ andi $s0, $a1, 0xff
/* AFDD6C 80086BCC AFBF0024 */ sw $ra, 0x24($sp)
/* AFDD70 80086BD0 AFA50034 */ sw $a1, 0x34($sp)
/* AFDD74 80086BD4 3C048014 */ lui $a0, %hi(D_8013E160) # $a0, 0x8014
/* AFDD78 80086BD8 2484E160 */ addiu $a0, %lo(D_8013E160) # addiu $a0, $a0, -0x1ea0
/* AFDD7C 80086BDC 02002825 */ move $a1, $s0
/* AFDD80 80086BE0 AFB0002C */ sw $s0, 0x2c($sp)
/* AFDD84 80086BE4 AFA30028 */ sw $v1, 0x28($sp)
/* AFDD88 80086BE8 00403825 */ move $a3, $v0
/* AFDD8C 80086BEC 0C00084C */ jal osSyncPrintf
/* AFDD90 80086BF0 AFAF0010 */ sw $t7, 0x10($sp)
/* AFDD94 80086BF4 8FA30028 */ lw $v1, 0x28($sp)
/* AFDD98 80086BF8 3C088016 */ lui $t0, %hi(gSaveContext) # $t0, 0x8016
/* AFDD9C 80086BFC 2508E660 */ addiu $t0, %lo(gSaveContext) # addiu $t0, $t0, -0x19a0
/* AFDDA0 80086C00 9078006B */ lbu $t8, 0x6b($v1)
/* AFDDA4 80086C04 93A6003B */ lbu $a2, 0x3b($sp)
/* AFDDA8 80086C08 2401001A */ li $at, 26
/* AFDDAC 80086C0C 01181021 */ addu $v0, $t0, $t8
/* AFDDB0 80086C10 90590074 */ lbu $t9, 0x74($v0)
/* AFDDB4 80086C14 8FA5002C */ lw $a1, 0x2c($sp)
/* AFDDB8 80086C18 01061821 */ addu $v1, $t0, $a2
/* AFDDBC 80086C1C 17210004 */ bne $t9, $at, .L80086C30
/* AFDDC0 80086C20 24010014 */ li $at, 20
/* AFDDC4 80086C24 54A10003 */ bnel $a1, $at, .L80086C34
/* AFDDC8 80086C28 A0500074 */ sb $s0, 0x74($v0)
/* AFDDCC 80086C2C 2410001F */ li $s0, 31
.L80086C30:
/* AFDDD0 80086C30 A0500074 */ sb $s0, 0x74($v0)
.L80086C34:
/* AFDDD4 80086C34 A0700068 */ sb $s0, 0x68($v1)
/* AFDDD8 80086C38 8FA40030 */ lw $a0, 0x30($sp)
/* AFDDDC 80086C3C 30C5FFFF */ andi $a1, $a2, 0xffff
/* AFDDE0 80086C40 0C02129B */ jal Interface_LoadItemIcon1
/* AFDDE4 80086C44 AFA3002C */ sw $v1, 0x2c($sp)
/* AFDDE8 80086C48 8FA90030 */ lw $t1, 0x30($sp)
/* AFDDEC 80086C4C 3C010001 */ lui $at, 1
/* AFDDF0 80086C50 8FA3002C */ lw $v1, 0x2c($sp)
/* AFDDF4 80086C54 00290821 */ addu $at, $at, $t1
/* AFDDF8 80086C58 A430099E */ sh $s0, 0x99e($at)
/* AFDDFC 80086C5C 8FBF0024 */ lw $ra, 0x24($sp)
/* AFDE00 80086C60 8FB00020 */ lw $s0, 0x20($sp)
/* AFDE04 80086C64 27BD0030 */ addiu $sp, $sp, 0x30
/* AFDE08 80086C68 03E00008 */ jr $ra
/* AFDE0C 80086C6C A06013E2 */ sb $zero, 0x13e2($v1)

View File

@ -1,289 +0,0 @@
.rdata
glabel D_8013F0FC
.asciz "../z_room.c"
.balign 4
glabel D_8013F108
.asciz "../z_room.c"
.balign 4
.late_rodata
glabel D_8013F2AC
.float 0.6
glabel D_8013F2B0
.float 1.2
glabel D_8013F2B4
.float 2.4
glabel D_8013F2B8
.float 0.3
.text
glabel func_80096B6C
/* B0DD0C 80096B6C 27BDFF50 */ addiu $sp, $sp, -0xb0
/* B0DD10 80096B70 AFBF003C */ sw $ra, 0x3c($sp)
/* B0DD14 80096B74 AFB00038 */ sw $s0, 0x38($sp)
/* B0DD18 80096B78 AFA400B0 */ sw $a0, 0xb0($sp)
/* B0DD1C 80096B7C AFA500B4 */ sw $a1, 0xb4($sp)
/* B0DD20 80096B80 AFA600B8 */ sw $a2, 0xb8($sp)
/* B0DD24 80096B84 8C850000 */ lw $a1, ($a0)
/* B0DD28 80096B88 3C068014 */ lui $a2, %hi(D_8013F0FC) # $a2, 0x8014
/* B0DD2C 80096B8C 24C6F0FC */ addiu $a2, %lo(D_8013F0FC) # addiu $a2, $a2, -0xf04
/* B0DD30 80096B90 27A40078 */ addiu $a0, $sp, 0x78
/* B0DD34 80096B94 240702F0 */ li $a3, 752
/* B0DD38 80096B98 0C031AB1 */ jal Graph_OpenDisps
/* B0DD3C 80096B9C 00A08025 */ move $s0, $a1
/* B0DD40 80096BA0 8FA500B0 */ lw $a1, 0xb0($sp)
/* B0DD44 80096BA4 8FAC00B4 */ lw $t4, 0xb4($sp)
/* B0DD48 80096BA8 3C0100FF */ lui $at, (0x00FFFFFF >> 16) # lui $at, 0xff
/* B0DD4C 80096BAC 84AF07A0 */ lh $t7, 0x7a0($a1)
/* B0DD50 80096BB0 3421FFFF */ ori $at, (0x00FFFFFF & 0xFFFF) # ori $at, $at, 0xffff
/* B0DD54 80096BB4 000FC080 */ sll $t8, $t7, 2
/* B0DD58 80096BB8 00B8C821 */ addu $t9, $a1, $t8
/* B0DD5C 80096BBC 8F230790 */ lw $v1, 0x790($t9)
/* B0DD60 80096BC0 3C188016 */ lui $t8, %hi(gSegments)
/* B0DD64 80096BC4 846A0142 */ lh $t2, 0x142($v1)
/* B0DD68 80096BC8 394B0019 */ xori $t3, $t2, 0x19
/* B0DD6C 80096BCC 2D6B0001 */ sltiu $t3, $t3, 1
/* B0DD70 80096BD0 AFAB0098 */ sw $t3, 0x98($sp)
/* B0DD74 80096BD4 8D840008 */ lw $a0, 8($t4)
/* B0DD78 80096BD8 8C820004 */ lw $v0, 4($a0)
/* B0DD7C 80096BDC AFA300AC */ sw $v1, 0xac($sp)
/* B0DD80 80096BE0 00026900 */ sll $t5, $v0, 4
/* B0DD84 80096BE4 000D7702 */ srl $t6, $t5, 0x1c
/* B0DD88 80096BE8 000E7880 */ sll $t7, $t6, 2
/* B0DD8C 80096BEC 030FC021 */ addu $t8, $t8, $t7
/* B0DD90 80096BF0 8F186FA8 */ lw $t8, %lo(gSegments)($t8)
/* B0DD94 80096BF4 0041C824 */ and $t9, $v0, $at
/* B0DD98 80096BF8 3C018000 */ lui $at, 0x8000
/* B0DD9C 80096BFC 03195021 */ addu $t2, $t8, $t9
/* B0DDA0 80096C00 01415821 */ addu $t3, $t2, $at
/* B0DDA4 80096C04 0C025A9D */ jal func_80096A74
/* B0DDA8 80096C08 AFAB009C */ sw $t3, 0x9c($sp)
/* B0DDAC 80096C0C 8FA600B8 */ lw $a2, 0xb8($sp)
/* B0DDB0 80096C10 00404825 */ move $t1, $v0
/* B0DDB4 80096C14 8FA30098 */ lw $v1, 0x98($sp)
/* B0DDB8 80096C18 30C40001 */ andi $a0, $a2, 1
/* B0DDBC 80096C1C 0004202B */ sltu $a0, $zero, $a0
/* B0DDC0 80096C20 1080000E */ beqz $a0, .L80096C5C
/* B0DDC4 80096C24 00804025 */ move $t0, $a0
/* B0DDC8 80096C28 0003402B */ sltu $t0, $zero, $v1
/* B0DDCC 80096C2C 1100000B */ beqz $t0, .L80096C5C
/* B0DDD0 80096C30 00000000 */ nop
/* B0DDD4 80096C34 8C480004 */ lw $t0, 4($v0)
/* B0DDD8 80096C38 3C038016 */ lui $v1, %hi(gGameInfo) # $v1, 0x8016
/* B0DDDC 80096C3C 2463FA90 */ addiu $v1, %lo(gGameInfo) # addiu $v1, $v1, -0x570
/* B0DDE0 80096C40 0008402B */ sltu $t0, $zero, $t0
/* B0DDE4 80096C44 11000005 */ beqz $t0, .L80096C5C
/* B0DDE8 80096C48 00000000 */ nop
/* B0DDEC 80096C4C 8C6C0000 */ lw $t4, ($v1)
/* B0DDF0 80096C50 85880106 */ lh $t0, 0x106($t4)
/* B0DDF4 80096C54 31080001 */ andi $t0, $t0, 1
/* B0DDF8 80096C58 2D080001 */ sltiu $t0, $t0, 1
.L80096C5C:
/* B0DDFC 80096C5C 3C038016 */ lui $v1, %hi(gGameInfo) # $v1, 0x8016
/* B0DE00 80096C60 01002825 */ move $a1, $t0
/* B0DE04 80096C64 2463FA90 */ addiu $v1, %lo(gGameInfo) # addiu $v1, $v1, -0x570
/* B0DE08 80096C68 1080000A */ beqz $a0, .L80096C94
/* B0DE0C 80096C6C 00804025 */ move $t0, $a0
/* B0DE10 80096C70 8FAD009C */ lw $t5, 0x9c($sp)
/* B0DE14 80096C74 8DA80000 */ lw $t0, ($t5)
/* B0DE18 80096C78 0008402B */ sltu $t0, $zero, $t0
/* B0DE1C 80096C7C 51000006 */ beql $t0, $zero, .L80096C98
/* B0DE20 80096C80 01002025 */ move $a0, $t0
/* B0DE24 80096C84 8C6E0000 */ lw $t6, ($v1)
/* B0DE28 80096C88 85C80106 */ lh $t0, 0x106($t6)
/* B0DE2C 80096C8C 31080002 */ andi $t0, $t0, 2
/* B0DE30 80096C90 2D080001 */ sltiu $t0, $t0, 1
.L80096C94:
/* B0DE34 80096C94 01002025 */ move $a0, $t0
.L80096C98:
/* B0DE38 80096C98 30C20002 */ andi $v0, $a2, 2
/* B0DE3C 80096C9C 0002402B */ sltu $t0, $zero, $v0
/* B0DE40 80096CA0 11000009 */ beqz $t0, .L80096CC8
/* B0DE44 80096CA4 8FAF009C */ lw $t7, 0x9c($sp)
/* B0DE48 80096CA8 8DE80004 */ lw $t0, 4($t7)
/* B0DE4C 80096CAC 0008402B */ sltu $t0, $zero, $t0
/* B0DE50 80096CB0 11000005 */ beqz $t0, .L80096CC8
/* B0DE54 80096CB4 00000000 */ nop
/* B0DE58 80096CB8 8C780000 */ lw $t8, ($v1)
/* B0DE5C 80096CBC 87080106 */ lh $t0, 0x106($t8)
/* B0DE60 80096CC0 31080004 */ andi $t0, $t0, 4
/* B0DE64 80096CC4 2D080001 */ sltiu $t0, $t0, 1
.L80096CC8:
/* B0DE68 80096CC8 54800004 */ bnezl $a0, .L80096CDC
/* B0DE6C 80096CCC 8E0302C0 */ lw $v1, 0x2c0($s0)
/* B0DE70 80096CD0 10A00079 */ beqz $a1, .L80096EB8
/* B0DE74 80096CD4 00000000 */ nop
/* B0DE78 80096CD8 8E0302C0 */ lw $v1, 0x2c0($s0)
.L80096CDC:
/* B0DE7C 80096CDC 3C0ADB06 */ lui $t2, (0xDB06000C >> 16) # lui $t2, 0xdb06
/* B0DE80 80096CE0 354A000C */ ori $t2, (0xDB06000C & 0xFFFF) # ori $t2, $t2, 0xc
/* B0DE84 80096CE4 24790008 */ addiu $t9, $v1, 8
/* B0DE88 80096CE8 AE1902C0 */ sw $t9, 0x2c0($s0)
/* B0DE8C 80096CEC AC6A0000 */ sw $t2, ($v1)
/* B0DE90 80096CF0 8FAB00B4 */ lw $t3, 0xb4($sp)
/* B0DE94 80096CF4 8D6C000C */ lw $t4, 0xc($t3)
/* B0DE98 80096CF8 1080001B */ beqz $a0, .L80096D68
/* B0DE9C 80096CFC AC6C0004 */ sw $t4, 4($v1)
/* B0DEA0 80096D00 8FAD00B0 */ lw $t5, 0xb0($sp)
/* B0DEA4 80096D04 8DA40000 */ lw $a0, ($t5)
/* B0DEA8 80096D08 AFA900A0 */ sw $t1, 0xa0($sp)
/* B0DEAC 80096D0C AFA80048 */ sw $t0, 0x48($sp)
/* B0DEB0 80096D10 0C024F46 */ jal func_80093D18
/* B0DEB4 80096D14 AFA50094 */ sw $a1, 0x94($sp)
/* B0DEB8 80096D18 8E0302C0 */ lw $v1, 0x2c0($s0)
/* B0DEBC 80096D1C 8FA50094 */ lw $a1, 0x94($sp)
/* B0DEC0 80096D20 8FA80048 */ lw $t0, 0x48($sp)
/* B0DEC4 80096D24 8FA900A0 */ lw $t1, 0xa0($sp)
/* B0DEC8 80096D28 246E0008 */ addiu $t6, $v1, 8
/* B0DECC 80096D2C AE0E02C0 */ sw $t6, 0x2c0($s0)
/* B0DED0 80096D30 3C0FDA38 */ lui $t7, (0xDA380003 >> 16) # lui $t7, 0xda38
/* B0DED4 80096D34 3C188013 */ lui $t8, %hi(gMtxClear) # $t8, 0x8013
/* B0DED8 80096D38 2718DB20 */ addiu $t8, %lo(gMtxClear) # addiu $t8, $t8, -0x24e0
/* B0DEDC 80096D3C 35EF0003 */ ori $t7, (0xDA380003 & 0xFFFF) # ori $t7, $t7, 3
/* B0DEE0 80096D40 AC6F0000 */ sw $t7, ($v1)
/* B0DEE4 80096D44 AC780004 */ sw $t8, 4($v1)
/* B0DEE8 80096D48 8E0302C0 */ lw $v1, 0x2c0($s0)
/* B0DEEC 80096D4C 3C0ADE00 */ lui $t2, 0xde00
/* B0DEF0 80096D50 24790008 */ addiu $t9, $v1, 8
/* B0DEF4 80096D54 AE1902C0 */ sw $t9, 0x2c0($s0)
/* B0DEF8 80096D58 AC6A0000 */ sw $t2, ($v1)
/* B0DEFC 80096D5C 8FAB009C */ lw $t3, 0x9c($sp)
/* B0DF00 80096D60 8D6C0000 */ lw $t4, ($t3)
/* B0DF04 80096D64 AC6C0004 */ sw $t4, 4($v1)
.L80096D68:
/* B0DF08 80096D68 10A00053 */ beqz $a1, .L80096EB8
/* B0DF0C 80096D6C 3C0EE100 */ lui $t6, 0xe100
/* B0DF10 80096D70 8E0302C0 */ lw $v1, 0x2c0($s0)
/* B0DF14 80096D74 3C0F0015 */ lui $t7, %hi(D_801579A0-0x80000000)
/* B0DF18 80096D78 25EF79A0 */ addiu $t7, %lo(D_801579A0-0x80000000)
/* B0DF1C 80096D7C 246D0008 */ addiu $t5, $v1, 8
/* B0DF20 80096D80 AE0D02C0 */ sw $t5, 0x2c0($s0)
/* B0DF24 80096D84 AC6F0004 */ sw $t7, 4($v1)
/* B0DF28 80096D88 AC6E0000 */ sw $t6, ($v1)
/* B0DF2C 80096D8C 8E0302C0 */ lw $v1, 0x2c0($s0)
/* B0DF30 80096D90 3C19DD00 */ lui $t9, (0xDD0007FF >> 16) # lui $t9, 0xdd00
/* B0DF34 80096D94 3C0A0011 */ lui $t2, %hi(D_80113070-0x80000000)
/* B0DF38 80096D98 24780008 */ addiu $t8, $v1, 8
/* B0DF3C 80096D9C AE1802C0 */ sw $t8, 0x2c0($s0)
/* B0DF40 80096DA0 254A3070 */ addiu $t2, %lo(D_80113070-0x80000000)
/* B0DF44 80096DA4 373907FF */ ori $t9, (0xDD0007FF & 0xFFFF) # ori $t9, $t9, 0x7ff
/* B0DF48 80096DA8 AC790000 */ sw $t9, ($v1)
/* B0DF4C 80096DAC AC6A0004 */ sw $t2, 4($v1)
/* B0DF50 80096DB0 8E0B02C0 */ lw $t3, 0x2c0($s0)
/* B0DF54 80096DB4 AFA900A0 */ sw $t1, 0xa0($sp)
/* B0DF58 80096DB8 AFA80048 */ sw $t0, 0x48($sp)
/* B0DF5C 80096DBC 8FA500AC */ lw $a1, 0xac($sp)
/* B0DF60 80096DC0 27A4005C */ addiu $a0, $sp, 0x5c
/* B0DF64 80096DC4 0C016BED */ jal func_8005AFB4
/* B0DF68 80096DC8 AFAB00A8 */ sw $t3, 0xa8($sp)
/* B0DF6C 80096DCC C7A4005C */ lwc1 $f4, 0x5c($sp)
/* B0DF70 80096DD0 C7A60064 */ lwc1 $f6, 0x64($sp)
/* B0DF74 80096DD4 3C018014 */ lui $at, %hi(D_8013F2AC)
/* B0DF78 80096DD8 C42AF2AC */ lwc1 $f10, %lo(D_8013F2AC)($at)
/* B0DF7C 80096DDC C7A80060 */ lwc1 $f8, 0x60($sp)
/* B0DF80 80096DE0 46062000 */ add.s $f0, $f4, $f6
/* B0DF84 80096DE4 8FA900A0 */ lw $t1, 0xa0($sp)
/* B0DF88 80096DE8 3C018014 */ lui $at, %hi(D_8013F2B0)
/* B0DF8C 80096DEC 460A4402 */ mul.s $f16, $f8, $f10
/* B0DF90 80096DF0 C432F2B0 */ lwc1 $f18, %lo(D_8013F2B0)($at)
/* B0DF94 80096DF4 952C0012 */ lhu $t4, 0x12($t1)
/* B0DF98 80096DF8 8D250004 */ lw $a1, 4($t1)
/* B0DF9C 80096DFC 46120102 */ mul.s $f4, $f0, $f18
/* B0DFA0 80096E00 8D26000C */ lw $a2, 0xc($t1)
/* B0DFA4 80096E04 95270010 */ lhu $a3, 0x10($t1)
/* B0DFA8 80096E08 AFAC0010 */ sw $t4, 0x10($sp)
/* B0DFAC 80096E0C 912D0014 */ lbu $t5, 0x14($t1)
/* B0DFB0 80096E10 3C018014 */ lui $at, %hi(D_8013F2B4)
/* B0DFB4 80096E14 C42AF2B4 */ lwc1 $f10, %lo(D_8013F2B4)($at)
/* B0DFB8 80096E18 46102180 */ add.s $f6, $f4, $f16
/* B0DFBC 80096E1C 3C018014 */ lui $at, %hi(D_8013F2B8)
/* B0DFC0 80096E20 AFAD0014 */ sw $t5, 0x14($sp)
/* B0DFC4 80096E24 460A4482 */ mul.s $f18, $f8, $f10
/* B0DFC8 80096E28 C424F2B8 */ lwc1 $f4, %lo(D_8013F2B8)($at)
/* B0DFCC 80096E2C 912E0015 */ lbu $t6, 0x15($t1)
/* B0DFD0 80096E30 27A400A8 */ addiu $a0, $sp, 0xa8
/* B0DFD4 80096E34 46040402 */ mul.s $f16, $f0, $f4
/* B0DFD8 80096E38 AFAE0018 */ sw $t6, 0x18($sp)
/* B0DFDC 80096E3C 952F0016 */ lhu $t7, 0x16($t1)
/* B0DFE0 80096E40 AFAF001C */ sw $t7, 0x1c($sp)
/* B0DFE4 80096E44 95380018 */ lhu $t8, 0x18($t1)
/* B0DFE8 80096E48 E7A60024 */ swc1 $f6, 0x24($sp)
/* B0DFEC 80096E4C 46109180 */ add.s $f6, $f18, $f16
/* B0DFF0 80096E50 AFB80020 */ sw $t8, 0x20($sp)
/* B0DFF4 80096E54 0C0258E3 */ jal func_8009638C
/* B0DFF8 80096E58 E7A60028 */ swc1 $f6, 0x28($sp)
/* B0DFFC 80096E5C 8FB900A8 */ lw $t9, 0xa8($sp)
/* B0E000 80096E60 8FA80048 */ lw $t0, 0x48($sp)
/* B0E004 80096E64 3C0BE100 */ lui $t3, 0xe100
/* B0E008 80096E68 AE1902C0 */ sw $t9, 0x2c0($s0)
/* B0E00C 80096E6C 272A0008 */ addiu $t2, $t9, 8
/* B0E010 80096E70 AE0A02C0 */ sw $t2, 0x2c0($s0)
/* B0E014 80096E74 AF2B0000 */ sw $t3, ($t9)
/* B0E018 80096E78 AFB90058 */ sw $t9, 0x58($sp)
/* B0E01C 80096E7C 0C034B88 */ jal SysUcode_GetUCodeData
/* B0E020 80096E80 AFA80048 */ sw $t0, 0x48($sp)
/* B0E024 80096E84 8FA40058 */ lw $a0, 0x58($sp)
/* B0E028 80096E88 3C0DDD00 */ lui $t5, (0xDD0007FF >> 16) # lui $t5, 0xdd00
/* B0E02C 80096E8C 35AD07FF */ ori $t5, (0xDD0007FF & 0xFFFF) # ori $t5, $t5, 0x7ff
/* B0E030 80096E90 AC820004 */ sw $v0, 4($a0)
/* B0E034 80096E94 8E0302C0 */ lw $v1, 0x2c0($s0)
/* B0E038 80096E98 246C0008 */ addiu $t4, $v1, 8
/* B0E03C 80096E9C AE0C02C0 */ sw $t4, 0x2c0($s0)
/* B0E040 80096EA0 AC6D0000 */ sw $t5, ($v1)
/* B0E044 80096EA4 0C034B85 */ jal SysUcode_GetUCode
/* B0E048 80096EA8 AFA30058 */ sw $v1, 0x58($sp)
/* B0E04C 80096EAC 8FA40058 */ lw $a0, 0x58($sp)
/* B0E050 80096EB0 8FA80048 */ lw $t0, 0x48($sp)
/* B0E054 80096EB4 AC820004 */ sw $v0, 4($a0)
.L80096EB8:
/* B0E058 80096EB8 51000021 */ beql $t0, $zero, .L80096F40
/* B0E05C 80096EBC 8FB900B0 */ lw $t9, 0xb0($sp)
/* B0E060 80096EC0 8E0202D0 */ lw $v0, 0x2d0($s0)
/* B0E064 80096EC4 3C0FDB06 */ lui $t7, (0xDB06000C >> 16) # lui $t7, 0xdb06
/* B0E068 80096EC8 35EF000C */ ori $t7, (0xDB06000C & 0xFFFF) # ori $t7, $t7, 0xc
/* B0E06C 80096ECC 244E0008 */ addiu $t6, $v0, 8
/* B0E070 80096ED0 AE0E02D0 */ sw $t6, 0x2d0($s0)
/* B0E074 80096ED4 AC4F0000 */ sw $t7, ($v0)
/* B0E078 80096ED8 8FB800B4 */ lw $t8, 0xb4($sp)
/* B0E07C 80096EDC 3C058013 */ lui $a1, %hi(gMtxClear) # $a1, 0x8013
/* B0E080 80096EE0 24A5DB20 */ addiu $a1, %lo(gMtxClear) # addiu $a1, $a1, -0x24e0
/* B0E084 80096EE4 8F19000C */ lw $t9, 0xc($t8)
/* B0E088 80096EE8 AC590004 */ sw $t9, 4($v0)
/* B0E08C 80096EEC 8FAA00B0 */ lw $t2, 0xb0($sp)
/* B0E090 80096EF0 8D440000 */ lw $a0, ($t2)
/* B0E094 80096EF4 0C024F61 */ jal func_80093D84
/* B0E098 80096EF8 AFA50044 */ sw $a1, 0x44($sp)
/* B0E09C 80096EFC 8E0202D0 */ lw $v0, 0x2d0($s0)
/* B0E0A0 80096F00 8FA50044 */ lw $a1, 0x44($sp)
/* B0E0A4 80096F04 3C0CDA38 */ lui $t4, (0xDA380003 >> 16) # lui $t4, 0xda38
/* B0E0A8 80096F08 244B0008 */ addiu $t3, $v0, 8
/* B0E0AC 80096F0C AE0B02D0 */ sw $t3, 0x2d0($s0)
/* B0E0B0 80096F10 358C0003 */ ori $t4, (0xDA380003 & 0xFFFF) # ori $t4, $t4, 3
/* B0E0B4 80096F14 AC4C0000 */ sw $t4, ($v0)
/* B0E0B8 80096F18 AC450004 */ sw $a1, 4($v0)
/* B0E0BC 80096F1C 8E0202D0 */ lw $v0, 0x2d0($s0)
/* B0E0C0 80096F20 3C0EDE00 */ lui $t6, 0xde00
/* B0E0C4 80096F24 244D0008 */ addiu $t5, $v0, 8
/* B0E0C8 80096F28 AE0D02D0 */ sw $t5, 0x2d0($s0)
/* B0E0CC 80096F2C AC4E0000 */ sw $t6, ($v0)
/* B0E0D0 80096F30 8FAF009C */ lw $t7, 0x9c($sp)
/* B0E0D4 80096F34 8DF80004 */ lw $t8, 4($t7)
/* B0E0D8 80096F38 AC580004 */ sw $t8, 4($v0)
/* B0E0DC 80096F3C 8FB900B0 */ lw $t9, 0xb0($sp)
.L80096F40:
/* B0E0E0 80096F40 3C068014 */ lui $a2, %hi(D_8013F108) # $a2, 0x8014
/* B0E0E4 80096F44 24C6F108 */ addiu $a2, %lo(D_8013F108) # addiu $a2, $a2, -0xef8
/* B0E0E8 80096F48 27A40078 */ addiu $a0, $sp, 0x78
/* B0E0EC 80096F4C 24070333 */ li $a3, 819
/* B0E0F0 80096F50 0C031AD5 */ jal Graph_CloseDisps
/* B0E0F4 80096F54 8F250000 */ lw $a1, ($t9)
/* B0E0F8 80096F58 8FBF003C */ lw $ra, 0x3c($sp)
/* B0E0FC 80096F5C 8FB00038 */ lw $s0, 0x38($sp)
/* B0E100 80096F60 27BD00B0 */ addiu $sp, $sp, 0xb0
/* B0E104 80096F64 03E00008 */ jr $ra
/* B0E108 80096F68 00000000 */ nop

View File

@ -1,134 +0,0 @@
.rdata
glabel D_8013F5DC
.asciz "\n[ZU]sceneset age =[%X]"
.balign 4
glabel D_8013F5F8
.asciz "\n[ZU]sceneset time =[%X]"
.balign 4
glabel D_8013F614
.asciz "\n[ZU]sceneset counter=[%X]"
.balign 4
glabel D_8013F630
.asciz "\n "
.balign 4
glabel D_8013F660
.asciz "\n使"
.balign 4
.text
glabel func_800991A0
/* B10340 800991A0 27BDFFE0 */ addiu $sp, $sp, -0x20
/* B10344 800991A4 AFA40020 */ sw $a0, 0x20($sp)
/* B10348 800991A8 AFA50024 */ sw $a1, 0x24($sp)
/* B1034C 800991AC AFBF0014 */ sw $ra, 0x14($sp)
/* B10350 800991B0 3C058016 */ lui $a1, %hi(gSaveContext+4) # $a1, 0x8016
/* B10354 800991B4 3C048014 */ lui $a0, %hi(D_8013F5DC) # $a0, 0x8014
/* B10358 800991B8 2484F5DC */ addiu $a0, %lo(D_8013F5DC) # addiu $a0, $a0, -0xa24
/* B1035C 800991BC 0C00084C */ jal osSyncPrintf
/* B10360 800991C0 8CA5E664 */ lw $a1, %lo(gSaveContext+4)($a1)
/* B10364 800991C4 3C058016 */ lui $a1, %hi(gSaveContext+8) # $a1, 0x8016
/* B10368 800991C8 3C048014 */ lui $a0, %hi(D_8013F5F8) # $a0, 0x8014
/* B1036C 800991CC 2484F5F8 */ addiu $a0, %lo(D_8013F5F8) # addiu $a0, $a0, -0xa08
/* B10370 800991D0 0C00084C */ jal osSyncPrintf
/* B10374 800991D4 8CA5E668 */ lw $a1, %lo(gSaveContext+8)($a1)
/* B10378 800991D8 3C058016 */ lui $a1, %hi(gSaveContext+0x1360) # $a1, 0x8016
/* B1037C 800991DC 3C048014 */ lui $a0, %hi(D_8013F614) # $a0, 0x8014
/* B10380 800991E0 2484F614 */ addiu $a0, %lo(D_8013F614) # addiu $a0, $a0, -0x9ec
/* B10384 800991E4 0C00084C */ jal osSyncPrintf
/* B10388 800991E8 8CA5F9C0 */ lw $a1, %lo(gSaveContext+0x1360)($a1)
/* B1038C 800991EC 3C028016 */ lui $v0, %hi(gSaveContext+0x1360) # $v0, 0x8016
/* B10390 800991F0 8C42F9C0 */ lw $v0, %lo(gSaveContext+0x1360)($v0)
/* B10394 800991F4 3C078016 */ lui $a3, %hi(gSegments) # $a3, 0x8016
/* B10398 800991F8 8FAE0024 */ lw $t6, 0x24($sp)
/* B1039C 800991FC 50400050 */ beql $v0, $zero, .L80099340
/* B103A0 80099200 8FBF0014 */ lw $ra, 0x14($sp)
/* B103A4 80099204 8DC30004 */ lw $v1, 4($t6)
/* B103A8 80099208 24E76FA8 */ addiu $a3, %lo(gSegments) # addiu $a3, $a3, 0x6fa8
/* B103AC 8009920C 3C0800FF */ lui $t0, (0x00FFFFFF >> 16) # lui $t0, 0xff
/* B103B0 80099210 00037900 */ sll $t7, $v1, 4
/* B103B4 80099214 000FC702 */ srl $t8, $t7, 0x1c
/* B103B8 80099218 0018C880 */ sll $t9, $t8, 2
/* B103BC 8009921C 00F95021 */ addu $t2, $a3, $t9
/* B103C0 80099220 8D4B0000 */ lw $t3, ($t2)
/* B103C4 80099224 3508FFFF */ ori $t0, (0x00FFFFFF & 0xFFFF) # ori $t0, $t0, 0xffff
/* B103C8 80099228 00686024 */ and $t4, $v1, $t0
/* B103CC 8009922C 3C098000 */ lui $t1, 0x8000
/* B103D0 80099230 016C6821 */ addu $t5, $t3, $t4
/* B103D4 80099234 01A97021 */ addu $t6, $t5, $t1
/* B103D8 80099238 00027880 */ sll $t7, $v0, 2
/* B103DC 8009923C 01CFC021 */ addu $t8, $t6, $t7
/* B103E0 80099240 8F06FFFC */ lw $a2, -4($t8)
/* B103E4 80099244 3C048014 */ lui $a0, %hi(D_8013F630)
/* B103E8 80099248 10C0000E */ beqz $a2, .L80099284
/* B103EC 8009924C 0006C900 */ sll $t9, $a2, 4
/* B103F0 80099250 00195702 */ srl $t2, $t9, 0x1c
/* B103F4 80099254 000A5880 */ sll $t3, $t2, 2
/* B103F8 80099258 00EB6021 */ addu $t4, $a3, $t3
/* B103FC 8009925C 8D8D0000 */ lw $t5, ($t4)
/* B10400 80099260 00C87024 */ and $t6, $a2, $t0
/* B10404 80099264 8FA40020 */ lw $a0, 0x20($sp)
/* B10408 80099268 01AE7821 */ addu $t7, $t5, $t6
/* B1040C 8009926C 0C026103 */ jal Scene_ExecuteCommands
/* B10410 80099270 01E92821 */ addu $a1, $t7, $t1
/* B10414 80099274 8FB90024 */ lw $t9, 0x24($sp)
/* B10418 80099278 24180014 */ li $t8, 20
/* B1041C 8009927C 1000002F */ b .L8009933C
/* B10420 80099280 A3380008 */ sb $t8, 8($t9)
.L80099284:
/* B10424 80099284 0C00084C */ jal osSyncPrintf
/* B10428 80099288 2484F630 */ addiu $a0, $a0, %lo(D_8013F630)
/* B1042C 8009928C 3C028016 */ lui $v0, %hi(gSaveContext+0x1360) # $v0, 0x8016
/* B10430 80099290 8C42F9C0 */ lw $v0, %lo(gSaveContext+0x1360)($v0)
/* B10434 80099294 24010003 */ li $at, 3
/* B10438 80099298 8FAA0024 */ lw $t2, 0x24($sp)
/* B1043C 8009929C 14410027 */ bne $v0, $at, .L8009933C
/* B10440 800992A0 3C0E8016 */ lui $t6, %hi(gSegments)
/* B10444 800992A4 8D430004 */ lw $v1, 4($t2)
/* B10448 800992A8 3C0100FF */ lui $at, (0x00FFFFFF >> 16) # lui $at, 0xff
/* B1044C 800992AC 3421FFFF */ ori $at, (0x00FFFFFF & 0xFFFF) # ori $at, $at, 0xffff
/* B10450 800992B0 00035900 */ sll $t3, $v1, 4
/* B10454 800992B4 000B6702 */ srl $t4, $t3, 0x1c
/* B10458 800992B8 000C6880 */ sll $t5, $t4, 2
/* B1045C 800992BC 01CD7021 */ addu $t6, $t6, $t5
/* B10460 800992C0 8DCE6FA8 */ lw $t6, %lo(gSegments)($t6)
/* B10464 800992C4 00617824 */ and $t7, $v1, $at
/* B10468 800992C8 0002C880 */ sll $t9, $v0, 2
/* B1046C 800992CC 01CFC021 */ addu $t8, $t6, $t7
/* B10470 800992D0 03195021 */ addu $t2, $t8, $t9
/* B10474 800992D4 3C068000 */ lui $a2, 0x8000
/* B10478 800992D8 00CA3021 */ addu $a2, $a2, $t2
/* B1047C 800992DC 8CC6FFF8 */ lw $a2, -8($a2)
/* B10480 800992E0 3C048014 */ lui $a0, %hi(D_8013F660) # $a0, 0x8014
/* B10484 800992E4 2484F660 */ addiu $a0, %lo(D_8013F660) # addiu $a0, $a0, -0x9a0
/* B10488 800992E8 0C00084C */ jal osSyncPrintf
/* B1048C 800992EC AFA60018 */ sw $a2, 0x18($sp)
/* B10490 800992F0 8FA60018 */ lw $a2, 0x18($sp)
/* B10494 800992F4 8FA40020 */ lw $a0, 0x20($sp)
/* B10498 800992F8 3C0E8016 */ lui $t6, %hi(gSegments)
/* B1049C 800992FC 10C0000F */ beqz $a2, .L8009933C
/* B104A0 80099300 00065900 */ sll $t3, $a2, 4
/* B104A4 80099304 000B6702 */ srl $t4, $t3, 0x1c
/* B104A8 80099308 000C6880 */ sll $t5, $t4, 2
/* B104AC 8009930C 01CD7021 */ addu $t6, $t6, $t5
/* B104B0 80099310 3C0100FF */ lui $at, (0x00FFFFFF >> 16) # lui $at, 0xff
/* B104B4 80099314 8DCE6FA8 */ lw $t6, %lo(gSegments)($t6)
/* B104B8 80099318 3421FFFF */ ori $at, (0x00FFFFFF & 0xFFFF) # ori $at, $at, 0xffff
/* B104BC 8009931C 00C17824 */ and $t7, $a2, $at
/* B104C0 80099320 3C018000 */ lui $at, 0x8000
/* B104C4 80099324 01CF2821 */ addu $a1, $t6, $t7
/* B104C8 80099328 0C026103 */ jal Scene_ExecuteCommands
/* B104CC 8009932C 00A12821 */ addu $a1, $a1, $at
/* B104D0 80099330 8FB90024 */ lw $t9, 0x24($sp)
/* B104D4 80099334 24180014 */ li $t8, 20
/* B104D8 80099338 A3380008 */ sb $t8, 8($t9)
.L8009933C:
/* B104DC 8009933C 8FBF0014 */ lw $ra, 0x14($sp)
.L80099340:
/* B104E0 80099340 27BD0020 */ addiu $sp, $sp, 0x20
/* B104E4 80099344 03E00008 */ jr $ra
/* B104E8 80099348 00000000 */ nop

View File

@ -1,52 +0,0 @@
glabel func_80A68870
/* 00210 80A68870 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 00214 80A68874 AFBF0024 */ sw $ra, 0x0024($sp)
/* 00218 80A68878 AFB00020 */ sw $s0, 0x0020($sp)
/* 0021C 80A6887C 8C8201E8 */ lw $v0, 0x01E8($a0) ## 000001E8
/* 00220 80A68880 3C0380A7 */ lui $v1, %hi(D_80A692B8) ## $v1 = 80A70000
/* 00224 80A68884 246392B8 */ addiu $v1, $v1, %lo(D_80A692B8) ## $v1 = 80A692B8
/* 00228 80A68888 00027080 */ sll $t6, $v0, 2
/* 0022C 80A6888C 006E7821 */ addu $t7, $v1, $t6
/* 00230 80A68890 8DF80000 */ lw $t8, 0x0000($t7) ## 00000000
/* 00234 80A68894 C48001B8 */ lwc1 $f0, 0x01B8($a0) ## 000001B8
/* 00238 80A68898 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 0023C 80A6889C 44982000 */ mtc1 $t8, $f4 ## $f4 = 0.00
/* 00240 80A688A0 00000000 */ nop
/* 00244 80A688A4 468021A0 */ cvt.s.w $f6, $f4
/* 00248 80A688A8 4600303C */ c.lt.s $f6, $f0
/* 0024C 80A688AC 00000000 */ nop
/* 00250 80A688B0 4502001A */ bc1fl .L80A6891C
/* 00254 80A688B4 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00258 80A688B8 14400008 */ bne $v0, $zero, .L80A688DC
/* 0025C 80A688BC 3C078013 */ lui $a3, %hi(D_801333E0)
/* 00260 80A688C0 8C790004 */ lw $t9, 0x0004($v1) ## 80A692BC
/* 00264 80A688C4 44994000 */ mtc1 $t9, $f8 ## $f8 = 0.00
/* 00268 80A688C8 00000000 */ nop
/* 0026C 80A688CC 468042A0 */ cvt.s.w $f10, $f8
/* 00270 80A688D0 4600503C */ c.lt.s $f10, $f0
/* 00274 80A688D4 00000000 */ nop
/* 00278 80A688D8 4501000F */ bc1t .L80A68918
.L80A688DC:
/* 0027C 80A688DC 3C088013 */ lui $t0, %hi(D_801333E8)
/* 00280 80A688E0 24E733E0 */ addiu $a3, %lo(D_801333E0)
/* 00284 80A688E4 250833E8 */ addiu $t0, %lo(D_801333E8)
/* 00288 80A688E8 AFA80014 */ sw $t0, 0x0014($sp)
/* 0028C 80A688EC AFA70010 */ sw $a3, 0x0010($sp)
/* 00290 80A688F0 24042803 */ addiu $a0, $zero, 0x2803 ## $a0 = 00002803
/* 00294 80A688F4 260500E4 */ addiu $a1, $s0, 0x00E4 ## $a1 = 000000E4
/* 00298 80A688F8 0C03DCE3 */ jal Audio_PlaySoundGeneral
/* 0029C 80A688FC 24060004 */ addiu $a2, $zero, 0x0004 ## $a2 = 00000004
/* 002A0 80A68900 8E0901E8 */ lw $t1, 0x01E8($s0) ## 000001E8
/* 002A4 80A68904 252A0001 */ addiu $t2, $t1, 0x0001 ## $t2 = 00000001
/* 002A8 80A68908 29410002 */ slti $at, $t2, 0x0002
/* 002AC 80A6890C 14200002 */ bne $at, $zero, .L80A68918
/* 002B0 80A68910 AE0A01E8 */ sw $t2, 0x01E8($s0) ## 000001E8
/* 002B4 80A68914 AE0001E8 */ sw $zero, 0x01E8($s0) ## 000001E8
.L80A68918:
/* 002B8 80A68918 8FBF0024 */ lw $ra, 0x0024($sp)
.L80A6891C:
/* 002BC 80A6891C 8FB00020 */ lw $s0, 0x0020($sp)
/* 002C0 80A68920 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 002C4 80A68924 03E00008 */ jr $ra
/* 002C8 80A68928 00000000 */ nop

View File

@ -1,161 +0,0 @@
glabel func_80B4F230
/* 008A0 80B4F230 AFA50004 */ sw $a1, 0x0004($sp)
/* 008A4 80B4F234 8C8E024C */ lw $t6, 0x024C($a0) ## 0000024C
/* 008A8 80B4F238 00053C00 */ sll $a3, $a1, 16
/* 008AC 80B4F23C 00073C03 */ sra $a3, $a3, 16
/* 008B0 80B4F240 11C00082 */ beq $t6, $zero, .L80B4F44C
/* 008B4 80B4F244 00067840 */ sll $t7, $a2, 1
/* 008B8 80B4F248 008F2821 */ addu $a1, $a0, $t7
/* 008BC 80B4F24C 84B801DC */ lh $t8, 0x01DC($a1) ## 000001DC
/* 008C0 80B4F250 84A901AC */ lh $t1, 0x01AC($a1) ## 000001AC
/* 008C4 80B4F254 84B9020C */ lh $t9, 0x020C($a1) ## 0000020C
/* 008C8 80B4F258 03071823 */ subu $v1, $t8, $a3
/* 008CC 80B4F25C 00034400 */ sll $t0, $v1, 16
/* 008D0 80B4F260 00084403 */ sra $t0, $t0, 16
/* 008D4 80B4F264 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 008D8 80B4F268 01005025 */ or $t2, $t0, $zero ## $t2 = 00000000
/* 008DC 80B4F26C 01201025 */ or $v0, $t1, $zero ## $v0 = 00000000
/* 008E0 80B4F270 14C10004 */ bne $a2, $at, .L80B4F284
/* 008E4 80B4F274 00F95823 */ subu $t3, $a3, $t9
/* 008E8 80B4F278 00006025 */ or $t4, $zero, $zero ## $t4 = 00000000
/* 008EC 80B4F27C 1000003B */ beq $zero, $zero, .L80B4F36C
/* 008F0 80B4F280 848D01AC */ lh $t5, 0x01AC($a0) ## 000001AC
.L80B4F284:
/* 008F4 80B4F284 24010004 */ addiu $at, $zero, 0x0004 ## $at = 00000004
/* 008F8 80B4F288 14C10003 */ bne $a2, $at, .L80B4F298
/* 008FC 80B4F28C 240C0003 */ addiu $t4, $zero, 0x0003 ## $t4 = 00000003
/* 00900 80B4F290 10000036 */ beq $zero, $zero, .L80B4F36C
/* 00904 80B4F294 848D01B2 */ lh $t5, 0x01B2($a0) ## 000001B2
.L80B4F298:
/* 00908 80B4F298 24010007 */ addiu $at, $zero, 0x0007 ## $at = 00000007
/* 0090C 80B4F29C 14C10003 */ bne $a2, $at, .L80B4F2AC
/* 00910 80B4F2A0 240C0006 */ addiu $t4, $zero, 0x0006 ## $t4 = 00000006
/* 00914 80B4F2A4 10000031 */ beq $zero, $zero, .L80B4F36C
/* 00918 80B4F2A8 848D01B8 */ lh $t5, 0x01B8($a0) ## 000001B8
.L80B4F2AC:
/* 0091C 80B4F2AC 2401000A */ addiu $at, $zero, 0x000A ## $at = 0000000A
/* 00920 80B4F2B0 54C1000B */ bnel $a2, $at, .L80B4F2E0
/* 00924 80B4F2B4 2401000D */ addiu $at, $zero, 0x000D ## $at = 0000000D
/* 00928 80B4F2B8 848E01BE */ lh $t6, 0x01BE($a0) ## 000001BE
/* 0092C 80B4F2BC 240C0009 */ addiu $t4, $zero, 0x0009 ## $t4 = 00000009
/* 00930 80B4F2C0 05C20004 */ bltzl $t6, .L80B4F2D4
/* 00934 80B4F2C4 848D01BE */ lh $t5, 0x01BE($a0) ## 000001BE
/* 00938 80B4F2C8 10000028 */ beq $zero, $zero, .L80B4F36C
/* 0093C 80B4F2CC 848D01BE */ lh $t5, 0x01BE($a0) ## 000001BE
/* 00940 80B4F2D0 848D01BE */ lh $t5, 0x01BE($a0) ## 000001BE
.L80B4F2D4:
/* 00944 80B4F2D4 10000025 */ beq $zero, $zero, .L80B4F36C
/* 00948 80B4F2D8 000D6823 */ subu $t5, $zero, $t5
/* 0094C 80B4F2DC 2401000D */ addiu $at, $zero, 0x000D ## $at = 0000000D
.L80B4F2E0:
/* 00950 80B4F2E0 54C1000B */ bnel $a2, $at, .L80B4F310
/* 00954 80B4F2E4 24010010 */ addiu $at, $zero, 0x0010 ## $at = 00000010
/* 00958 80B4F2E8 848F01C4 */ lh $t7, 0x01C4($a0) ## 000001C4
/* 0095C 80B4F2EC 240C000C */ addiu $t4, $zero, 0x000C ## $t4 = 0000000C
/* 00960 80B4F2F0 05E20004 */ bltzl $t7, .L80B4F304
/* 00964 80B4F2F4 848D01C4 */ lh $t5, 0x01C4($a0) ## 000001C4
/* 00968 80B4F2F8 1000001C */ beq $zero, $zero, .L80B4F36C
/* 0096C 80B4F2FC 848D01C4 */ lh $t5, 0x01C4($a0) ## 000001C4
/* 00970 80B4F300 848D01C4 */ lh $t5, 0x01C4($a0) ## 000001C4
.L80B4F304:
/* 00974 80B4F304 10000019 */ beq $zero, $zero, .L80B4F36C
/* 00978 80B4F308 000D6823 */ subu $t5, $zero, $t5
/* 0097C 80B4F30C 24010010 */ addiu $at, $zero, 0x0010 ## $at = 00000010
.L80B4F310:
/* 00980 80B4F310 54C1000D */ bnel $a2, $at, .L80B4F348
/* 00984 80B4F314 849901D0 */ lh $t9, 0x01D0($a0) ## 000001D0
/* 00988 80B4F318 849801CA */ lh $t8, 0x01CA($a0) ## 000001CA
/* 0098C 80B4F31C 240C000F */ addiu $t4, $zero, 0x000F ## $t4 = 0000000F
/* 00990 80B4F320 07020005 */ bltzl $t8, .L80B4F338
/* 00994 80B4F324 848D01CA */ lh $t5, 0x01CA($a0) ## 000001CA
/* 00998 80B4F328 848D01CA */ lh $t5, 0x01CA($a0) ## 000001CA
/* 0099C 80B4F32C 1000000F */ beq $zero, $zero, .L80B4F36C
/* 009A0 80B4F330 000D6823 */ subu $t5, $zero, $t5
/* 009A4 80B4F334 848D01CA */ lh $t5, 0x01CA($a0) ## 000001CA
.L80B4F338:
/* 009A8 80B4F338 000D6823 */ subu $t5, $zero, $t5
/* 009AC 80B4F33C 1000000B */ beq $zero, $zero, .L80B4F36C
/* 009B0 80B4F340 000D6823 */ subu $t5, $zero, $t5
/* 009B4 80B4F344 849901D0 */ lh $t9, 0x01D0($a0) ## 000001D0
.L80B4F348:
/* 009B8 80B4F348 240C0012 */ addiu $t4, $zero, 0x0012 ## $t4 = 00000012
/* 009BC 80B4F34C 07220005 */ bltzl $t9, .L80B4F364
/* 009C0 80B4F350 848D01D0 */ lh $t5, 0x01D0($a0) ## 000001D0
/* 009C4 80B4F354 848D01D0 */ lh $t5, 0x01D0($a0) ## 000001D0
/* 009C8 80B4F358 10000004 */ beq $zero, $zero, .L80B4F36C
/* 009CC 80B4F35C 000D6823 */ subu $t5, $zero, $t5
/* 009D0 80B4F360 848D01D0 */ lh $t5, 0x01D0($a0) ## 000001D0
.L80B4F364:
/* 009D4 80B4F364 000D6823 */ subu $t5, $zero, $t5
/* 009D8 80B4F368 000D6823 */ subu $t5, $zero, $t5
.L80B4F36C:
/* 009DC 80B4F36C 448B2000 */ mtc1 $t3, $f4 ## $f4 = 0.00
/* 009E0 80B4F370 34018001 */ ori $at, $zero, 0x8001 ## $at = 00008001
/* 009E4 80B4F374 46802020 */ cvt.s.w $f0, $f4
/* 009E8 80B4F378 46000005 */ abs.s $f0, $f0
/* 009EC 80B4F37C 4600018D */ trunc.w.s $f6, $f0
/* 009F0 80B4F380 440F3000 */ mfc1 $t7, $f6
/* 009F4 80B4F384 00000000 */ nop
/* 009F8 80B4F388 01E1082A */ slt $at, $t7, $at
/* 009FC 80B4F38C 14200007 */ bne $at, $zero, .L80B4F3AC
/* 00A00 80B4F390 00000000 */ nop
/* 00A04 80B4F394 18E00004 */ blez $a3, .L80B4F3A8
/* 00A08 80B4F398 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 00A0C 80B4F39C 3C01FFFF */ lui $at, 0xFFFF ## $at = FFFF0000
/* 00A10 80B4F3A0 10000002 */ beq $zero, $zero, .L80B4F3AC
/* 00A14 80B4F3A4 01615821 */ addu $t3, $t3, $at
.L80B4F3A8:
/* 00A18 80B4F3A8 01615821 */ addu $t3, $t3, $at
.L80B4F3AC:
/* 00A1C 80B4F3AC 05800005 */ bltz $t4, .L80B4F3C4
/* 00A20 80B4F3B0 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
/* 00A24 80B4F3B4 01A1001A */ div $zero, $t5, $at
/* 00A28 80B4F3B8 0000C012 */ mflo $t8
/* 00A2C 80B4F3BC 01785821 */ addu $t3, $t3, $t8
/* 00A30 80B4F3C0 00000000 */ nop
.L80B4F3C4:
/* 00A34 80B4F3C4 11600006 */ beq $t3, $zero, .L80B4F3E0
/* 00A38 80B4F3C8 0162C823 */ subu $t9, $t3, $v0
/* 00A3C 80B4F3CC 07210003 */ bgez $t9, .L80B4F3DC
/* 00A40 80B4F3D0 00197103 */ sra $t6, $t9, 4
/* 00A44 80B4F3D4 2721000F */ addiu $at, $t9, 0x000F ## $at = 0000000F
/* 00A48 80B4F3D8 00017103 */ sra $t6, $at, 4
.L80B4F3DC:
/* 00A4C 80B4F3DC 004E1021 */ addu $v0, $v0, $t6
.L80B4F3E0:
/* 00A50 80B4F3E0 10400005 */ beq $v0, $zero, .L80B4F3F8
/* 00A54 80B4F3E4 2401000A */ addiu $at, $zero, 0x000A ## $at = 0000000A
/* 00A58 80B4F3E8 0041001A */ div $zero, $v0, $at
/* 00A5C 80B4F3EC 00007812 */ mflo $t7
/* 00A60 80B4F3F0 004F1023 */ subu $v0, $v0, $t7
/* 00A64 80B4F3F4 00000000 */ nop
.L80B4F3F8:
/* 00A68 80B4F3F8 11000005 */ beq $t0, $zero, .L80B4F410
/* 00A6C 80B4F3FC 24010032 */ addiu $at, $zero, 0x0032 ## $at = 00000032
/* 00A70 80B4F400 0101001A */ div $zero, $t0, $at
/* 00A74 80B4F404 0000C012 */ mflo $t8
/* 00A78 80B4F408 00581023 */ subu $v0, $v0, $t8
/* 00A7C 80B4F40C 00000000 */ nop
.L80B4F410:
/* 00A80 80B4F410 01220019 */ multu $t1, $v0
/* 00A84 80B4F414 00621821 */ addu $v1, $v1, $v0
/* 00A88 80B4F418 2941FF9D */ slti $at, $t2, 0xFF9D
/* 00A8C 80B4F41C 0000C812 */ mflo $t9
/* 00A90 80B4F420 5F200008 */ bgtzl $t9, .L80B4F444
/* 00A94 80B4F424 00E37021 */ addu $t6, $a3, $v1
/* 00A98 80B4F428 14200005 */ bne $at, $zero, .L80B4F440
/* 00A9C 80B4F42C 29410064 */ slti $at, $t2, 0x0064
/* 00AA0 80B4F430 50200004 */ beql $at, $zero, .L80B4F444
/* 00AA4 80B4F434 00E37021 */ addu $t6, $a3, $v1
/* 00AA8 80B4F438 00001825 */ or $v1, $zero, $zero ## $v1 = 00000000
/* 00AAC 80B4F43C 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
.L80B4F440:
/* 00AB0 80B4F440 00E37021 */ addu $t6, $a3, $v1
.L80B4F444:
/* 00AB4 80B4F444 A4A201AC */ sh $v0, 0x01AC($a1) ## 000001AC
/* 00AB8 80B4F448 A4AE01DC */ sh $t6, 0x01DC($a1) ## 000001DC
.L80B4F44C:
/* 00ABC 80B4F44C 00067840 */ sll $t7, $a2, 1
/* 00AC0 80B4F450 008FC021 */ addu $t8, $a0, $t7
/* 00AC4 80B4F454 03E00008 */ jr $ra
/* 00AC8 80B4F458 A707020C */ sh $a3, 0x020C($t8) ## 0000020C

View File

@ -1,13 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purpose registers
.section .rodata
.balign 16
glabel D_80A692E0
.incbin "baserom/ovl_En_Horse_Ganon", 0xC80, 0x000000F0

View File

@ -1,13 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purpose registers
.section .rodata
.balign 16
glabel D_80B52C70
.incbin "baserom/ovl_En_Zl2", 0x42E0, 0x00000740

View File

@ -836,9 +836,9 @@ typedef struct {
/* 0x0238 */ s16 unk_238;
/* 0x023A */ s16 unk_23A;
/* 0x023C */ s16 unk_23C;
/* 0x023E */ s16 unk_23E;
/* 0x023E */ u16 unk_23E;
/* 0x0240 */ s16 unk_240;
/* 0x0242 */ s16 unk_242;
/* 0x0242 */ u16 unk_242;
/* 0x0244 */ s16 unk_244;
/* 0x0246 */ s16 unk_246;
/* 0x0248 */ s16 unk_248;

8
spec
View File

@ -2600,11 +2600,7 @@ endseg
beginseg
name "ovl_En_Horse_Ganon"
include "build/src/overlays/actors/ovl_En_Horse_Ganon/z_en_horse_ganon.o"
#ifdef NON_MATCHING
include "build/src/overlays/actors/ovl_En_Horse_Ganon/ovl_En_Horse_Ganon_reloc.o"
#else
include "build/data/overlays/actors/z_en_horse_ganon.reloc.o"
#endif
endseg
beginseg
@ -3412,11 +3408,7 @@ endseg
beginseg
name "ovl_En_Zl2"
include "build/src/overlays/actors/ovl_En_Zl2/z_en_zl2.o"
#ifdef NON_MATCHING
include "build/src/overlays/actors/ovl_En_Zl2/ovl_En_Zl2_reloc.o"
#else
include "build/data/overlays/actors/z_en_zl2.reloc.o"
#endif
endseg
beginseg

View File

@ -536,21 +536,21 @@ void Fault_Wait5Seconds(void) {
sFaultStructPtr->faultActive = true;
}
#ifdef NON_MATCHING
// regalloc differences
void Fault_WaitForButtonCombo() {
Input* curInput = &sFaultStructPtr->padInput;
Input** curInputPtr = &curInput;
s32 state;
u32 s1;
u32 s2;
u32 kDown;
u32 kCur;
if (1) {}
if (1) {}
osSyncPrintf(
VT_FGCOL(WHITE) "KeyWaitB ( " VT_FGCOL(WHITE) "" VT_FGCOL(YELLOW) "" VT_FGCOL(YELLOW) "" VT_FGCOL(WHITE) "" VT_FGCOL(WHITE) "" VT_FGCOL(
YELLOW) "" VT_FGCOL(YELLOW) "" VT_FGCOL(WHITE) "" VT_FGCOL(GREEN) "" VT_FGCOL(BLUE) "" VT_FGCOL(RED) "START" VT_FGCOL(WHITE)
VT_RST "\n");
YELLOW) "" VT_FGCOL(YELLOW) "" VT_FGCOL(WHITE) "" VT_FGCOL(GREEN) "" VT_FGCOL(BLUE) "" VT_FGCOL(RED) "START" VT_FGCOL(WHITE) ")" VT_RST
"\n");
osSyncPrintf(VT_FGCOL(WHITE) "KeyWaitB'(LR左" VT_FGCOL(YELLOW) "右 +" VT_FGCOL(RED) "START" VT_FGCOL(
WHITE) ")" VT_RST "\n");
@ -568,10 +568,8 @@ void Fault_WaitForButtonCombo() {
kDown = curInput->press.in.button;
kCur = curInput->cur.in.button;
if (kCur == 0) {
if (s1 == s2) {
s1 = 0;
}
if ((kCur == 0) && (s1 == s2)) {
s1 = 0;
} else if (kDown != 0) {
if (s1 == s2) {
state = 0;
@ -682,9 +680,6 @@ void Fault_WaitForButtonCombo() {
osWritebackDCacheAll();
}
}
#else
#pragma GLOBAL_ASM("asm/non_matchings/code/fault/Fault_WaitForButtonCombo.s")
#endif
void Fault_DrawMemDumpPage(const char* title, u32* addr, u32 param_3) {
u32* alignedAddr;

View File

@ -179,8 +179,6 @@ OSScTask* func_800C89D4(SchedContext* sc, OSScTask* task) {
return task;
}
#ifdef NON_MATCHING
// regalloc
s32 Sched_Schedule(SchedContext* sc, OSScTask** sp, OSScTask** dp, s32 state) {
s32 ret = state;
OSScTask* gfxTask = sc->gfxListHead;
@ -195,7 +193,7 @@ s32 Sched_Schedule(SchedContext* sc, OSScTask** sp, OSScTask** dp, s32 state) {
sc->audioListTail = NULL;
}
} else if (gfxTask != NULL) {
if (gfxTask->state & OS_SC_YIELDED || !(sc->gfxListHead->flags & OS_SC_NEEDS_RDP)) {
if (gfxTask->state & OS_SC_YIELDED || !(gfxTask->flags & OS_SC_NEEDS_RDP)) {
if (ret & OS_SC_SP) {
*sp = gfxTask;
ret &= ~OS_SC_SP;
@ -205,7 +203,7 @@ s32 Sched_Schedule(SchedContext* sc, OSScTask** sp, OSScTask** dp, s32 state) {
}
}
} else if (ret == (OS_SC_SP | OS_SC_DP)) {
if (sc->gfxListHead->framebuffer == NULL || func_800C89D4(sc, gfxTask) != NULL) {
if (gfxTask->framebuffer == NULL || func_800C89D4(sc, gfxTask) != NULL) {
*sp = *dp = gfxTask;
ret &= ~(OS_SC_SP | OS_SC_DP);
sc->gfxListHead = sc->gfxListHead->next;
@ -217,9 +215,6 @@ s32 Sched_Schedule(SchedContext* sc, OSScTask** sp, OSScTask** dp, s32 state) {
}
return ret;
}
#else
#pragma GLOBAL_ASM("asm/non_matchings/code/sched/Sched_Schedule.s")
#endif
void func_800C8BC4(SchedContext* sc, OSScTask* task) {
if (sc->pendingSwapBuf1 == NULL) {

View File

@ -47,13 +47,9 @@ s32 Math3D_PlaneVsLineSegClosestPoint(f32 planeAA, f32 planeAB, f32 planeAC, f32
/**
* Creates a line segment which is perpendicular to the line segments `lineAPointA`->`lineAPointB` and
* `lineBPointA`->`lineBPointB`
*
*/
#ifdef NON_MATCHING
/**
* NON_MATCHING:
* Lots of regalloc, but is functionally equivilent, some reordering.
*/
// Lots of regalloc, but is functionally equivilent, some reordering.
s32 Math3D_LineSegMakePerpLineSeg(Vec3f* lineAPointA, Vec3f* lineAPointB, Vec3f* lineBPointA, Vec3f* lineBPointB,
Vec3f* lineAIntersect, Vec3f* lineBIntersect) {
f32 sp5C;

View File

@ -161,36 +161,26 @@ void UCodeDisas_SetCurUCodeImpl(UCodeDisas* this, void* ptr) {
}
}
#ifdef NON_MATCHING
// s4/s6 swap (basically same diff as UCodeDisas_ParseRenderMode)
void UCodeDisas_ParseGeometryMode(UCodeDisas* this, u32 mode) {
u32 first = true;
s32 i;
for (i = 0; i < ARRAY_COUNT(sUCodeDisasGeometryModes); i++) {
if (sUCodeDisasGeometryModes[i].value & mode) {
u32 cond = first;
if (!cond) {
DISAS_LOG("|");
}
first = false;
DISAS_LOG("%s", sUCodeDisasGeometryModes[i].name);
if ((sUCodeDisasGeometryModes[i].value & mode) == 0) {
continue;
}
if (first) {
} else {
DISAS_LOG("|");
}
first = false;
DISAS_LOG("%s", sUCodeDisasGeometryModes[i].name);
}
}
#else
void UCodeDisas_ParseGeometryMode(UCodeDisas* this, u32 mode);
#pragma GLOBAL_ASM("asm/non_matchings/code/ucode_disas/UCodeDisas_ParseGeometryMode.s")
#endif
#ifdef NON_MATCHING
// s1/s2 swap (basically same diff as UCodeDisas_ParseGeometryMode)
void UCodeDisas_ParseRenderMode(UCodeDisas* this, u32 mode) {
s32 i;
s32 a;
s32 b;
static F3dzexRenderMode sUCodeDisasRenderModeFlags[] = {
F3DZEX_RENDERMODE(AA_EN, 0x8),
F3DZEX_RENDERMODE(Z_CMP, 0x10),
@ -209,7 +199,6 @@ void UCodeDisas_ParseRenderMode(UCodeDisas* this, u32 mode) {
F3DZEX_RENDERMODE(ALPHA_CVG_SEL, 0x2000),
F3DZEX_RENDERMODE(FORCE_BL, 0x4000),
};
static const char* D_8012DDDC[4][4] = {
{ "G_BL_CLR_IN", "G_BL_CLR_MEM", "G_BL_CLR_BL", "G_BL_CLR_FOG" },
{ "G_BL_A_IN", "G_BL_A_FOG", "G_BL_A_SHADE", "G_BL_0" },
@ -217,18 +206,24 @@ void UCodeDisas_ParseRenderMode(UCodeDisas* this, u32 mode) {
{ "G_BL_1MA", "G_BL_A_MEM", "G_BL_1", "G_BL_0" },
};
s32 i;
s32 a;
s32 b;
for (i = 0; i < ARRAY_COUNT(sUCodeDisasRenderModeFlags); i++) {
if ((mode & sUCodeDisasRenderModeFlags[i].mask) == sUCodeDisasRenderModeFlags[i].value) {
DISAS_LOG("%s|", sUCodeDisasRenderModeFlags[i].name);
if ((mode & sUCodeDisasRenderModeFlags[i].mask) != sUCodeDisasRenderModeFlags[i].value) {
continue;
}
DISAS_LOG("%s|", sUCodeDisasRenderModeFlags[i].name);
}
a = (mode >> 18) & 0x3333;
b = (mode >> 16) & 0x3333;
if (1) {}
// clang-format off
if (this->enableLog == 0) {} else { osSyncPrintf("\nGBL_c1(%s, %s, %s, %s)|", D_8012DDDC[0][a >> 12 & 3], D_8012DDDC[1][a >> 8 & 3], D_8012DDDC[2][a >> 4 & 3], D_8012DDDC[3][a >> 0 & 3]); }
if (this->enableLog == 0) {} else { osSyncPrintf("\nGBL_c1(%s, %s, %s, %s)|",
D_8012DDDC[0][a >> 12 & 3], D_8012DDDC[1][a >> 8 & 3], D_8012DDDC[2][a >> 4 & 3], D_8012DDDC[3][a >> 0 & 3]); }
// clang-format on
if (this->enableLog) {
@ -236,33 +231,6 @@ void UCodeDisas_ParseRenderMode(UCodeDisas* this, u32 mode) {
D_8012DDDC[2][b >> 4 & 3], D_8012DDDC[3][b >> 0 & 3]);
}
}
#else
F3dzexRenderMode sUCodeDisasRenderModeFlags[] = {
F3DZEX_RENDERMODE(AA_EN, 0x8),
F3DZEX_RENDERMODE(Z_CMP, 0x10),
F3DZEX_RENDERMODE(Z_UPD, 0x20),
F3DZEX_RENDERMODE(IM_RD, 0x40),
F3DZEX_RENDERMODE(CLR_ON_CVG, 0x80),
F3DZEX_RENDERMODE(CVG_DST_CLAMP, 0x300),
F3DZEX_RENDERMODE(CVG_DST_WRAP, 0x300),
F3DZEX_RENDERMODE(CVG_DST_FULL, 0x300),
F3DZEX_RENDERMODE(CVG_DST_SAVE, 0x300),
F3DZEX_RENDERMODE(ZMODE_OPA, 0xC00),
F3DZEX_RENDERMODE(ZMODE_INTER, 0xC00),
F3DZEX_RENDERMODE(ZMODE_XLU, 0xC00),
F3DZEX_RENDERMODE(ZMODE_DEC, 0xC00),
F3DZEX_RENDERMODE(CVG_X_ALPHA, 0x1000),
F3DZEX_RENDERMODE(ALPHA_CVG_SEL, 0x2000),
F3DZEX_RENDERMODE(FORCE_BL, 0x4000),
};
const char* D_8012DDDC[4][4] = {
{ "G_BL_CLR_IN", "G_BL_CLR_MEM", "G_BL_CLR_BL", "G_BL_CLR_FOG" },
{ "G_BL_A_IN", "G_BL_A_FOG", "G_BL_A_SHADE", "G_BL_0" },
{ "G_BL_CLR_IN", "G_BL_CLR_MEM", "G_BL_CLR_BL", "G_BL_CLR_FOG" },
{ "G_BL_1MA", "G_BL_A_MEM", "G_BL_1", "G_BL_0" },
};
#pragma GLOBAL_ASM("asm/non_matchings/code/ucode_disas/UCodeDisas_ParseRenderMode.s")
#endif
void UCodeDisas_PrintVertices(UCodeDisas* this, Vtx* vtx, s32 count, s32 start) {
s32 i;

View File

@ -1285,7 +1285,7 @@ void func_8005DFAC(GlobalContext* globalCtx, Collider* collider, Vec3f* v) {
#else
void func_8005DFAC(GlobalContext* globalCtx, Collider* collider, Vec3f* v);
#pragma GLOBAL_ASM("asm/non_matchings/code/z_collision_check/func_8005DFAC.s")
#endif // NON_MATCHING
#endif
#ifdef NON_MATCHING
// Green EffectSpark
@ -1341,7 +1341,7 @@ void func_8005E10C(GlobalContext* globalCtx, Collider* collider, Vec3f* v) {
#else
void func_8005E10C(GlobalContext* globalCtx, Collider* collider, Vec3f* v);
#pragma GLOBAL_ASM("asm/non_matchings/code/z_collision_check/func_8005E10C.s")
#endif // NON_MATCHING
#endif
void func_8005E26C(GlobalContext* globalCtx, Collider* collider, Vec3f* v) {
func_800299AC(globalCtx, v);
@ -2934,7 +2934,7 @@ void func_800628A4(s32 arg0, ColliderJntSph* collider) {
}
#else
#pragma GLOBAL_ASM("asm/non_matchings/code/z_collision_check/func_800628A4.s")
#endif // NON_MATCHING
#endif
#ifdef NON_MATCHING
// Purple EffectSpark
@ -2989,7 +2989,7 @@ void func_80062A28(GlobalContext* globalCtx, Vec3f* v) {
}
#else
#pragma GLOBAL_ASM("asm/non_matchings/code/z_collision_check/func_80062A28.s")
#endif // NON_MATCHING
#endif
#ifdef NON_MATCHING
// White EffectSpark (Bubbles?)
@ -3044,7 +3044,7 @@ void func_80062B80(GlobalContext* globalCtx, Vec3f* v) {
}
#else
#pragma GLOBAL_ASM("asm/non_matchings/code/z_collision_check/func_80062B80.s")
#endif // NON_MATCHING
#endif
void func_80062CD4(GlobalContext* globalCtx, Vec3f* v) {
static EffectShieldParticleInit init = {

View File

@ -99,24 +99,24 @@ s32 SkelCurve_Update(GlobalContext* globalCtx, SkelAnimeCurve* skelCurve) {
return ret;
}
#ifdef NON_MATCHING
// Very minor stack alloc, lod = 0 gSPMatrix places gfxPtr at stack + 0x4c instead of 0x50
void SkelCurve_DrawLimb(GlobalContext* globalCtx, s32 limbIndex, SkelAnimeCurve* skelCurve,
OverrideCurveLimbDraw overrideLimbDraw, PostCurveLimbDraw postLimbDraw, s32 lod, Actor* actor) {
SkelCurveLimb* limb = SEGMENTED_TO_VIRTUAL(skelCurve->limbList[limbIndex]);
Gfx* dispRefs[5];
Vec3f scale;
Vec3s rot;
Vec3f pos;
Gfx* d;
Vec3s* transform;
GraphicsContext* gfxCtx = globalCtx->state.gfxCtx;
s32 pad;
Gfx* dispRefs[4];
Graph_OpenDisps(dispRefs, globalCtx->state.gfxCtx, "../z_fcurve_data_skelanime.c", 279);
Matrix_Push();
if (overrideLimbDraw == NULL ||
(overrideLimbDraw != NULL && overrideLimbDraw(globalCtx, skelCurve, limbIndex, actor))) {
Vec3f scale;
Vec3s rot;
Vec3f pos;
Gfx* dList;
Vec3s* transform;
transform = &skelCurve->transforms[limbIndex];
scale.x = transform->x * (1.0f / 1024.0f);
scale.y = transform->y * (1.0f / 1024.0f);
@ -129,30 +129,36 @@ void SkelCurve_DrawLimb(GlobalContext* globalCtx, s32 limbIndex, SkelAnimeCurve*
pos.x = transform->x;
pos.y = transform->y;
pos.z = transform->z;
Matrix_JointPosition(&pos, &rot);
Matrix_Scale(scale.x, scale.y, scale.z, MTXMODE_APPLY);
if (lod == 0) {
d = limb->dList[0];
if (d != NULL) {
s32 pad1;
dList = limb->dList[0];
if (dList != NULL) {
gSPMatrix(gfxCtx->polyOpa.p++,
Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_fcurve_data_skelanime.c", 321),
G_MTX_LOAD | G_MTX_NOPUSH | G_MTX_MODELVIEW);
gSPDisplayList(gfxCtx->polyOpa.p++, d);
gSPDisplayList(gfxCtx->polyOpa.p++, dList);
}
} else if (lod == 1) {
d = limb->dList[0];
if (d != NULL) {
s32 pad2;
dList = limb->dList[0];
if (dList != NULL) {
gSPMatrix(gfxCtx->polyOpa.p++,
Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_fcurve_data_skelanime.c", 332),
G_MTX_LOAD | G_MTX_NOPUSH | G_MTX_MODELVIEW);
gSPDisplayList(gfxCtx->polyOpa.p++, d);
gSPDisplayList(gfxCtx->polyOpa.p++, dList);
}
d = limb->dList[1];
if (d != NULL) {
dList = limb->dList[1];
if (dList != NULL) {
gSPMatrix(gfxCtx->polyXlu.p++,
Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_fcurve_data_skelanime.c", 338),
G_MTX_LOAD | G_MTX_NOPUSH | G_MTX_MODELVIEW);
gSPDisplayList(gfxCtx->polyXlu.p++, d);
gSPDisplayList(gfxCtx->polyXlu.p++, dList);
}
} else {
// FcSkeletonInfo_draw_child (): Not supported
@ -176,9 +182,6 @@ void SkelCurve_DrawLimb(GlobalContext* globalCtx, s32 limbIndex, SkelAnimeCurve*
Graph_CloseDisps(dispRefs, globalCtx->state.gfxCtx, "../z_fcurve_data_skelanime.c", 371);
}
#else
#pragma GLOBAL_ASM("asm/non_matchings/code/z_fcurve_data_skelanime/SkelCurve_DrawLimb.s")
#endif
void SkelCurve_Draw(Actor* actor, GlobalContext* globalCtx, SkelAnimeCurve* skelCurve,
OverrideCurveLimbDraw overrideLimbDraw, PostCurveLimbDraw postLimbDraw, s32 lod, Actor* actor2) {

View File

@ -86,11 +86,10 @@ void KaleidoSetup_Update(GlobalContext* globalCtx) {
}
#ifdef NON_MATCHING
// regalloc
// regalloc differences
void KaleidoSetup_Init(GlobalContext* globalCtx) {
PauseContext* pauseCtx = &globalCtx->pauseCtx;
s32 temp;
pauseCtx->state = 0;
pauseCtx->flag = 0;
pauseCtx->unk_208 = 0;
@ -110,7 +109,6 @@ void KaleidoSetup_Init(GlobalContext* globalCtx) {
pauseCtx->unk_21A = VREG(30) + 3;
pauseCtx->unk_21C = 0;
pauseCtx->unk_21E = 1;
temp = pauseCtx->unk_21E;
pauseCtx->unk_220 = 10;
pauseCtx->unk_222 = 0;
pauseCtx->unk_22C = 0;
@ -125,15 +123,16 @@ void KaleidoSetup_Init(GlobalContext* globalCtx) {
pauseCtx->unk_242 = 999;
pauseCtx->unk_244 = 59;
pauseCtx->unk_246 = 0;
pauseCtx->unk_248 = (VREG(30) + 3) & 0xFFFF;
pauseCtx->unk_248 = VREG(30) + 3;
pauseCtx->unk_24A = 0;
pauseCtx->unk_24C = pauseCtx->unk_21E;
pauseCtx->unk_25A = -40;
pauseCtx->unk_25C = 0;
pauseCtx->unk_25E = 0;
pauseCtx->unk_260 = 4;
pauseCtx->unk_264 = -1;
pauseCtx->unk_238 = 0;
pauseCtx->unk_24C = temp;
View_Init(&pauseCtx->view, globalCtx->state.gfxCtx);
}
#else

View File

@ -8,7 +8,6 @@ s16 sPlayerInitialPosX = 0;
s16 sPlayerInitialPosZ = 0;
s16 sPlayerInitialDirection = 0;
s16 sEntranceIconMapIndex = 0;
s16 sLastRoomNum = 99;
void Map_SavePlayerInitialInfo(GlobalContext* globalCtx) {
Player* player = PLAYER;
@ -515,9 +514,8 @@ s16 Map_GetFloorTextIndexOffset(s32 mapIndex, s32 floor) {
return gMapData->floorTexIndexOffset[mapIndex][floor];
}
#ifdef NON_MATCHING
// single extra load instruction
void Map_Update(GlobalContext* globalCtx) {
static s16 sLastRoomNum = 99;
Player* player = PLAYER;
s32 mapIndex = gSaveContext.mapIndex;
InterfaceContext* interfaceCtx = &globalCtx->interfaceCtx;
@ -536,13 +534,6 @@ void Map_Update(GlobalContext* globalCtx) {
case SCENE_HAKADAN:
case SCENE_HAKADANCH:
case SCENE_ICE_DOUKUTO:
case SCENE_GANON:
case SCENE_MEN:
case SCENE_GERUDOWAY:
case SCENE_GANONTIKA:
case SCENE_GANON_SONOGO:
case SCENE_GANONTIKA_SONOGO:
case SCENE_TAKARAYA:
interfaceCtx->unk_140[30] = 0;
if (gSaveContext.dungeonItems[mapIndex] & gBitFlags[DUNGEON_MAP]) {
interfaceCtx->unk_140[31] = 1;
@ -568,7 +559,6 @@ void Map_Update(GlobalContext* globalCtx) {
// Translates to "Current floor = %d Current room = %x Number of rooms = %d"
osSyncPrintf("現在階=%d 現在部屋=%x 部屋数=%d\n", floor, interfaceCtx->mapRoomNum,
gMapData->switchEntryCount[mapIndex]);
if (interfaceCtx->mapRoomNum) {} // Improves codegen but may not be necessary
sLastRoomNum = interfaceCtx->mapRoomNum;
}
@ -602,6 +592,3 @@ void Map_Update(GlobalContext* globalCtx) {
}
}
}
#else
#pragma GLOBAL_ASM("asm/non_matchings/code/z_map_exp/Map_Update.s")
#endif

View File

@ -1134,8 +1134,6 @@ Gfx* Gfx_TextureI8(Gfx* displayListHead, void* texture, s16 textureWidth, s16 te
return displayListHead;
}
#ifdef NON_MATCHING
// regalloc differences
void Inventory_SwapAgeEquipment(void) {
s16 i;
u16 temp;
@ -1162,15 +1160,14 @@ void Inventory_SwapAgeEquipment(void) {
gSaveContext.equips.buttonItems[1] = ITEM_NUT;
gSaveContext.equips.cButtonSlots[0] = SLOT_NUT;
} else {
gSaveContext.equips.cButtonSlots[0] = SLOT_NONE;
gSaveContext.equips.buttonItems[1] = ITEM_NONE;
gSaveContext.equips.buttonItems[1] = gSaveContext.equips.cButtonSlots[0] = ITEM_NONE;
}
gSaveContext.equips.buttonItems[2] = ITEM_BOMB;
gSaveContext.equips.buttonItems[3] = gSaveContext.items[SLOT_OCARINA];
gSaveContext.equips.cButtonSlots[1] = SLOT_BOMB;
gSaveContext.equips.cButtonSlots[2] = SLOT_OCARINA;
gSaveContext.equips.equipment = 0x1122;
gSaveContext.equips.buttonItems[3] = gSaveContext.items[SLOT_OCARINA];
} else {
for (i = 0; i < 4; i++) {
gSaveContext.equips.buttonItems[i] = gSaveContext.adultEquips.buttonItems[i];
@ -1232,9 +1229,6 @@ void Inventory_SwapAgeEquipment(void) {
}
}
}
#else
#pragma GLOBAL_ASM("asm/non_matchings/code/z_parameter/Inventory_SwapAgeEquipment.s")
#endif
void Interface_InitHorsebackArchery(GlobalContext* globalCtx) {
InterfaceContext* interfaceCtx = &globalCtx->interfaceCtx;
@ -1678,7 +1672,7 @@ u8 Item_Give(GlobalContext* globalCtx, u8 item) {
}
return ITEM_NONE;
} else if ((item == ITEM_HEART_PIECE_2) || (item == ITEM_HEART_PIECE)) {
gSaveContext.questItems += (1 << QUEST_HEART_PIECE);
gSaveContext.questItems += 1 << (QUEST_HEART_PIECE + 4);
return ITEM_NONE;
} else if (item == ITEM_HEART_CONTAINER) {
gSaveContext.healthCapacity += 0x10;
@ -1949,21 +1943,18 @@ void Inventory_DeleteItem(u16 item, u16 invSlot) {
}
}
#ifdef NON_MATCHING
// regalloc differences
s32 Inventory_ReplaceItem(GlobalContext* globalCtx, u16 oldItem, u16 newItem) {
s16 i;
s16 j;
for (i = 0; i < ARRAY_COUNT(gSaveContext.items); i++) {
if (gSaveContext.items[i] == oldItem) {
gSaveContext.items[i] = newItem;
// Translates to: "Item Purge (%d)"
osSyncPrintf("アイテム消去(%d)", i);
for (j = 1; j < 4; j++) {
if (gSaveContext.equips.buttonItems[j] == oldItem) {
gSaveContext.equips.buttonItems[j] = newItem;
Interface_LoadItemIcon1(globalCtx, j);
osSyncPrintf("アイテム消去(%d)\n", i);
for (i = 1; i < 4; i++) {
if (gSaveContext.equips.buttonItems[i] == oldItem) {
gSaveContext.equips.buttonItems[i] = newItem;
Interface_LoadItemIcon1(globalCtx, i);
break;
}
}
@ -1973,9 +1964,6 @@ s32 Inventory_ReplaceItem(GlobalContext* globalCtx, u16 oldItem, u16 newItem) {
return 0;
}
#else
#pragma GLOBAL_ASM("asm/non_matchings/code/z_parameter/Inventory_ReplaceItem.s")
#endif
s32 Inventory_HasEmptyBottle(void) {
u8* items = gSaveContext.items;
@ -2009,8 +1997,6 @@ s32 Inventory_HasSpecificBottle(u8 bottleItem) {
}
}
#ifdef NON_MATCHING
// save context pointer isn't reused after Interface_LoadItemIcon1 when it should be
void Inventory_UpdateBottleItem(GlobalContext* globalCtx, u8 item, u8 cButton) {
osSyncPrintf("item_no=%x, c_no=%x, Pt=%x Item_Register=%x\n", item, cButton,
gSaveContext.equips.cButtonSlots[cButton - 1],
@ -2025,19 +2011,12 @@ void Inventory_UpdateBottleItem(GlobalContext* globalCtx, u8 item, u8 cButton) {
gSaveContext.items[gSaveContext.equips.cButtonSlots[cButton - 1]] = item;
gSaveContext.equips.buttonItems[cButton] = item;
if (1) {} // Improves codegen but may not be necessary
Interface_LoadItemIcon1(globalCtx, cButton);
globalCtx->pauseCtx.unk_23E = item;
gSaveContext.buttonStatus[0] = BTN_ENABLED;
gSaveContext.buttonStatus[cButton] = BTN_ENABLED;
}
#else
#pragma GLOBAL_ASM("asm/non_matchings/code/z_parameter/Inventory_UpdateBottleItem.s")
#endif
#ifdef NON_MATCHING
// mostly regalloc, minor ordering, and stack usage differences
s32 Inventory_ConsumeFairy(GlobalContext* globalCtx) {
s32 bottleSlot;
s16 i;
@ -2051,22 +2030,20 @@ s32 Inventory_ConsumeFairy(GlobalContext* globalCtx) {
if (gSaveContext.equips.buttonItems[j] == ITEM_FAIRY) {
gSaveContext.equips.buttonItems[j] = ITEM_BOTTLE;
Interface_LoadItemIcon1(globalCtx, j);
i = 0;
bottleSlot = gSaveContext.equips.cButtonSlots[j - 1];
break;
}
}
// Translates to: "Fairy Usage%d"
osSyncPrintf("妖精使用=%d\n", bottleSlot);
gSaveContext.items[bottleSlot] = ITEM_BOTTLE;
gSaveContext.items[bottleSlot + i] = ITEM_BOTTLE;
return 1;
}
}
return 0;
}
#else
#pragma GLOBAL_ASM("asm/non_matchings/code/z_parameter/Inventory_ConsumeFairy.s")
#endif
void func_80086D5C(s32* buf, u16 size) {
u16 i;

View File

@ -344,8 +344,8 @@ void func_80096680(GlobalContext* globalCtx, Room* room, u32 flags) {
Graph_OpenDisps(dispRefs, globalCtx->state.gfxCtx, "../z_room.c", 628);
camera = ACTIVE_CAM;
sp9C = (camera->setting == 25);
polygon1 = &room->mesh->polygon1;
sp9C = (camera->setting ^ 25) == 0;
polygonDlist = SEGMENTED_TO_VIRTUAL(polygon1->dlist);
sp98 = (flags & 1) && sp9C && polygon1->single.source && !(SREG(25) & 1);
sp94 = (flags & 1) && polygonDlist->opa && !(SREG(25) & 2);
@ -424,13 +424,11 @@ BgImage* func_80096A74(PolygonType1* polygon1, GlobalContext* globalCtx) {
}
// Room Draw Polygon Type 1 - Multi Format
#ifdef NON_MATCHING
// regalloc differences
void func_80096B6C(GlobalContext* globalCtx, Room* room, u32 flags) {
Camera* camera;
Gfx* spA8;
BgImage* bgImage;
PolygonType1* polygon1;
BgImage* bgImage;
PolygonDlist* polygonDlist;
u32 sp98;
u32 sp94;
@ -443,7 +441,7 @@ void func_80096B6C(GlobalContext* globalCtx, Room* room, u32 flags) {
Graph_OpenDisps(dispRefs, globalCtx->state.gfxCtx, "../z_room.c", 752);
camera = ACTIVE_CAM;
sp98 = (camera->setting ^ 25) == 0;
sp98 = (camera->setting == 25);
polygon1 = &room->mesh->polygon1;
polygonDlist = SEGMENTED_TO_VIRTUAL(polygon1->dlist);
bgImage = func_80096A74(polygon1, globalCtx);
@ -488,9 +486,6 @@ void func_80096B6C(GlobalContext* globalCtx, Room* room, u32 flags) {
Graph_CloseDisps(dispRefs, globalCtx->state.gfxCtx, "../z_room.c", 819);
}
#else
#pragma GLOBAL_ASM("asm/non_matchings/code/z_room/func_80096B6C.s")
#endif
// Room Draw Polygon Type 1
void func_80096F6C(GlobalContext* globalCtx, Room* room, u32 flags) {

View File

@ -200,13 +200,11 @@ void func_80098508(GlobalContext* globalCtx, SceneCmd* cmd) {
ActorEntry* linkEntry = (ActorEntry*)SEGMENTED_TO_VIRTUAL(cmd->spawnList.segment) +
globalCtx->setupEntranceList[globalCtx->curSpawn].spawn;
s16 linkObjectId;
s32 linkAge;
globalCtx->linkActorEntry = linkEntry;
globalCtx->linkAgeOnLoad = gSaveContext.linkAge;
globalCtx->linkAgeOnLoad = ((void)0, gSaveContext.linkAge);
linkAge = gSaveContext.linkAge;
linkObjectId = gLinkObjectIds[linkAge];
linkObjectId = gLinkObjectIds[((void)0, gSaveContext.linkAge)];
gActorOverlayTable[linkEntry->id].initInfo->objectId = linkObjectId;
Object_Spawn(&globalCtx->objectCtx, linkObjectId);
@ -455,19 +453,18 @@ void func_8009918C(GlobalContext* globalCtx, SceneCmd* cmd) {
}
// Scene Command 0x18: Alternate Headers
#ifdef NON_MATCHING
// minor ordering and regalloc differences
void func_800991A0(GlobalContext* globalCtx, SceneCmd* cmd) {
SceneCmd** altHeaders;
s32 pad;
SceneCmd* altHeader;
osSyncPrintf("\n[ZU]sceneset age =[%X]", gSaveContext.linkAge);
osSyncPrintf("\n[ZU]sceneset time =[%X]", gSaveContext.cutsceneIndex);
osSyncPrintf("\n[ZU]sceneset counter=[%X]", gSaveContext.sceneSetupIndex);
osSyncPrintf("\n[ZU]sceneset age =[%X]", ((void)0, gSaveContext.linkAge));
osSyncPrintf("\n[ZU]sceneset time =[%X]", ((void)0, gSaveContext.cutsceneIndex));
osSyncPrintf("\n[ZU]sceneset counter=[%X]", ((void)0, gSaveContext.sceneSetupIndex));
if (gSaveContext.sceneSetupIndex != 0) {
altHeaders = SEGMENTED_TO_VIRTUAL(cmd->altHeaders.segment);
altHeader = altHeaders[gSaveContext.sceneSetupIndex - 1];
altHeader = ((SceneCmd**)SEGMENTED_TO_VIRTUAL(cmd->altHeaders.segment))[gSaveContext.sceneSetupIndex - 1];
if (1) {}
if (altHeader != NULL) {
Scene_ExecuteCommands(globalCtx, SEGMENTED_TO_VIRTUAL(altHeader));
@ -477,8 +474,8 @@ void func_800991A0(GlobalContext* globalCtx, SceneCmd* cmd) {
osSyncPrintf("\nげぼはっ! 指定されたデータがないでええっす!");
if (gSaveContext.sceneSetupIndex == 3) {
altHeaders = SEGMENTED_TO_VIRTUAL(cmd->altHeaders.segment);
altHeader = altHeaders[gSaveContext.sceneSetupIndex - 2];
altHeader =
((SceneCmd**)SEGMENTED_TO_VIRTUAL(cmd->altHeaders.segment))[gSaveContext.sceneSetupIndex - 2];
// Translates to: "USING ADULT DAY DATA THERE!"
osSyncPrintf("\nそこで、大人の昼データを使用するでええっす!!");
@ -491,10 +488,6 @@ void func_800991A0(GlobalContext* globalCtx, SceneCmd* cmd) {
}
}
}
#else
void func_800991A0(GlobalContext* globalCtx, SceneCmd* cmd);
#pragma GLOBAL_ASM("asm/non_matchings/code/z_scene/func_800991A0.s")
#endif
// Scene Command 0x17: Cutscene Data
void func_8009934C(GlobalContext* globalCtx, SceneCmd* cmd) {

View File

@ -537,10 +537,10 @@ s32 func_800AB9EC(View* view, s32 arg1, Gfx** gfxp) {
Mtx* projection;
Mtx* viewing;
arg1 = (arg1 & view->flags) | (arg1 >> 4);
arg1 = (view->flags & arg1) | (arg1 >> 4);
if (arg1 & 2) {
vp = Graph_Alloc(view->gfxCtx, sizeof(Vp));
vp = Graph_Alloc(gfxCtx, sizeof(Vp));
LogUtils_CheckNullPointer("vp", vp, "../z_view.c", 910);
View_ViewportToVp(vp, &view->viewport);

View File

@ -161,15 +161,13 @@ s32 __osCheckPackId(OSPfs* pfs, __OSPackId* temp) {
return 0;
}
#ifdef NON_MATCHING
// regalloc differences, probably the same issue as osPfsInitPak
s32 __osGetId(OSPfs* pfs) {
u16 sum, isum;
u16 sum;
u16 isum;
u8 temp[BLOCKSIZE];
__OSPackId* id;
__OSPackId newid;
s32 ret;
__OSPackId* id;
if (pfs->activebank != 0) {
if ((ret = __osPfsSelectBank(pfs, 0)) != 0) {
@ -180,6 +178,7 @@ s32 __osGetId(OSPfs* pfs) {
if ((ret = __osContRamRead(pfs->queue, pfs->channel, PFS_ID_0AREA, temp)) != 0) {
return ret;
}
__osIdCheckSum((u16*)temp, &sum, &isum);
id = (__OSPackId*)temp;
if ((id->checksum != sum) || (id->invertedChecksum != isum)) {
@ -207,6 +206,8 @@ s32 __osGetId(OSPfs* pfs) {
bcopy(id, pfs->id, BLOCKSIZE);
if (0) {}
pfs->version = id->version;
pfs->banks = id->banks;
@ -215,15 +216,13 @@ s32 __osGetId(OSPfs* pfs) {
pfs->inode_table = 1 * PFS_ONE_PAGE;
pfs->minode_table = (1 + pfs->banks) * PFS_ONE_PAGE;
pfs->dir_table = pfs->minode_table + (pfs->banks * PFS_ONE_PAGE);
if ((ret = __osContRamRead(pfs->queue, pfs->channel, PFS_LABEL_AREA, pfs->label)) != 0) {
return ret;
}
return 0;
}
#else
#pragma GLOBAL_ASM("asm/non_matchings/code/contpfs/__osGetId.s")
#endif
s32 __osCheckId(OSPfs* pfs) {
u8 temp[BLOCKSIZE];

View File

@ -1,10 +1,8 @@
#include <ultra64.h>
#include <global.h>
#ifdef NON_MATCHING
// regalloc differences, probably the same issue as __osGetId
s32 osPfsInitPak(OSMesgQueue* queue, OSPfs* pfs, s32 channel) {
s32 ret = 0;
s32 ret;
u16 sum;
u16 isum;
u8 temp[BLOCKSIZE];
@ -36,6 +34,7 @@ s32 osPfsInitPak(OSMesgQueue* queue, OSPfs* pfs, s32 channel) {
if ((ret = __osContRamRead(pfs->queue, pfs->channel, PFS_ID_0AREA, temp)) != 0) {
return (ret);
}
__osIdCheckSum((u16*)temp, &sum, &isum);
id = (__OSPackId*)temp;
if ((id->checksum != sum) || (id->invertedChecksum != isum)) {
@ -61,7 +60,9 @@ s32 osPfsInitPak(OSMesgQueue* queue, OSPfs* pfs, s32 channel) {
bcopy(id, pfs->id, BLOCKSIZE);
pfs->version = (s32)id->version;
if (0) {}
pfs->version = id->version;
pfs->banks = id->banks;
pfs->inodeStartPage = 1 + DEF_DIR_PAGES + (2 * pfs->banks);
pfs->dir_size = DEF_DIR_PAGES * PFS_ONE_PAGE;
@ -69,17 +70,15 @@ s32 osPfsInitPak(OSMesgQueue* queue, OSPfs* pfs, s32 channel) {
pfs->minode_table = (1 + pfs->banks) * PFS_ONE_PAGE;
pfs->dir_table = pfs->minode_table + (pfs->banks * PFS_ONE_PAGE);
if ((ret = __osContRamRead(pfs->queue, pfs->channel, PFS_LABEL_AREA, (u8*)pfs->label)) != 0) {
if ((ret = __osContRamRead(pfs->queue, pfs->channel, PFS_LABEL_AREA, pfs->label)) != 0) {
return ret;
}
ret = osPfsChecker(pfs);
pfs->status |= PFS_INITIALIZED;
return ret;
}
#else
#pragma GLOBAL_ASM("asm/non_matchings/code/pfsinitpak/osPfsInitPak.s")
#endif
s32 __osPfsCheckRamArea(OSPfs* pfs) {
s32 i = 0;

View File

@ -10,19 +10,19 @@
#define THIS ((EnHorseGanon*)thisx)
typedef struct {
/* 0x0 */ Vec3s unk_0;
/* 0x6 */ u8 unk_6;
} unk_D_80A69248; // size = 0x8
void EnHorseGanon_Init(Actor* thisx, GlobalContext* globalCtx);
void EnHorseGanon_Destroy(Actor* thisx, GlobalContext* globalCtx);
void EnHorseGanon_Update(Actor* thisx, GlobalContext* globalCtx);
void EnHorseGanon_Draw(Actor* thisx, GlobalContext* globalCtx);
void func_80A68660(unk_D_80A69248* data, s32 index, Vec3f* vec);
void func_80A686A8(EnHorseGanon* this, GlobalContext* globalCtx);
void func_80A68870(EnHorseGanon* this);
void func_80A68AC4(EnHorseGanon* this);
void func_80A68AF0(EnHorseGanon* this, GlobalContext* globalCtx);
void func_80A68B20(EnHorseGanon* this);
void func_80A68DB0(EnHorseGanon* this, GlobalContext* globalCtx);
void func_80A68E14(EnHorseGanon* this, GlobalContext* globalCtx);
const ActorInit En_Horse_Ganon_InitVars = {
ACTOR_EN_HORSE_GANON,
@ -36,9 +36,7 @@ const ActorInit En_Horse_Ganon_InitVars = {
(ActorFunc)EnHorseGanon_Draw,
};
AnimationHeader* D_80A691B0[] = { 0x06004AA4, 0x06005264, 0x06005B78, 0x06002CE4 };
AnimationHeader* D_80A691C0[] = { 0x06002650, 0x06003858 };
static AnimationHeader* D_80A691B0[] = { 0x06004AA4, 0x06005264, 0x06005B78, 0x06002CE4, 0x06002650, 0x06003858 };
static f32 sAnimPlaybackSpeeds[] = { 0.66666666f, 0.66666666f, 1.0f, 1.0f, 1.0f, 0.66666666f };
@ -68,23 +66,21 @@ static CollisionCheckInfoInit sColChkInfoInit = {
0xFE,
};
unk_D_80A69248 D_80A69248[] = { { 0x09B8, 0x0126, 0x0E2C, 0x07 }, { 0x0C11, 0x017A, 0x1269, 0x07 },
{ 0x064E, 0xFEFB, 0x1DAC, 0x07 }, { 0x02F2, 0xFF45, 0x244F, 0x07 },
{ 0xF96E, 0xFE0C, 0x3122, 0x07 }, { 0xF328, 0xFE0C, 0x32D5, 0x07 },
{ 0xEBEA, 0xFE5F, 0x2D6E, 0x07 }, { 0xE95E, 0xFE27, 0x2565, 0x07 },
{ 0xE593, 0xFE0C, 0x20AC, 0x07 }, { 0xE625, 0xFE77, 0x1B07, 0x07 },
{ 0xEBB7, 0x007C, 0x1539, 0x07 }, { 0xF466, 0x0002, 0x11B9, 0x07 },
{ 0xF47B, 0xFFDD, 0x11AF, 0x07 }, { 0xF88D, 0xFFD1, 0x0BA2, 0x07 } };
static unk_D_80A69248 D_80A69248[] = {
{ 0x09B8, 0x0126, 0x0E2C, 0x07 }, { 0x0C11, 0x017A, 0x1269, 0x07 }, { 0x064E, 0xFEFB, 0x1DAC, 0x07 },
{ 0x02F2, 0xFF45, 0x244F, 0x07 }, { 0xF96E, 0xFE0C, 0x3122, 0x07 }, { 0xF328, 0xFE0C, 0x32D5, 0x07 },
{ 0xEBEA, 0xFE5F, 0x2D6E, 0x07 }, { 0xE95E, 0xFE27, 0x2565, 0x07 }, { 0xE593, 0xFE0C, 0x20AC, 0x07 },
{ 0xE625, 0xFE77, 0x1B07, 0x07 }, { 0xEBB7, 0x007C, 0x1539, 0x07 }, { 0xF466, 0x0002, 0x11B9, 0x07 },
{ 0xF47B, 0xFFDD, 0x11AF, 0x07 }, { 0xF88D, 0xFFD1, 0x0BA2, 0x07 },
};
s32 D_80A692B8[] = { 0, 0x00000010 };
static s32 D_80A692B8[] = { 0, 16 };
static InitChainEntry sInitChain[] = {
ICHAIN_F32(uncullZoneScale, 1200, ICHAIN_STOP),
};
static EnHorseGanonActionFunc sActionFuncs[] = { func_80A68AF0, func_80A68DB0, NULL };
const f32 D_80A692D0 = 10430.3779f;
static EnHorseGanonActionFunc sActionFuncs[] = { func_80A68AF0, func_80A68DB0 };
extern SkeletonHeader D_06008668;
extern AnimationHeader D_06004AA4;
@ -133,24 +129,18 @@ void func_80A686A8(EnHorseGanon* this, GlobalContext* globalCtx) {
}
}
#ifdef NON_MATCHING
// regalloc mismatch
void func_80A68870(EnHorseGanon* this) {
if (this->skin.skelAnime.animCurrentFrame > D_80A692B8[this->soundCount]) {
if (D_80A692B8[this->soundCount] != 0 || !(this->skin.skelAnime.animCurrentFrame > D_80A692B8[1])) {
Audio_PlaySoundGeneral(NA_SE_EV_HORSE_WALK, &this->actor.projectedPos, 4, &D_801333E0, &D_801333E0,
&D_801333E8);
if ((this->skin.skelAnime.animCurrentFrame > D_80A692B8[this->soundCount]) &&
(this->soundCount != 0 || !(this->skin.skelAnime.animCurrentFrame > D_80A692B8[1]))) {
Audio_PlaySoundGeneral(NA_SE_EV_HORSE_WALK, &this->actor.projectedPos, 4, &D_801333E0, &D_801333E0,
&D_801333E8);
this->soundCount++;
if (this->soundCount >= 2) {
this->soundCount = 0;
}
this->soundCount++;
if (this->soundCount >= 2) {
this->soundCount = 0;
}
}
}
#else
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Horse_Ganon/func_80A68870.s")
#endif
void EnHorseGanon_Init(Actor* thisx, GlobalContext* globalCtx) {
EnHorseGanon* this = THIS;
@ -188,7 +178,7 @@ void EnHorseGanon_Destroy(Actor* thisx, GlobalContext* globalCtx) {
void func_80A68AC4(EnHorseGanon* this) {
this->action = 0;
SkelAnime_ChangeAnimDefaultRepeat(&this->skin.skelAnime, D_80A691C0[0]);
SkelAnime_ChangeAnimDefaultRepeat(&this->skin.skelAnime, D_80A691B0[4]);
}
void func_80A68AF0(EnHorseGanon* this, GlobalContext* globalCtx) {
@ -268,7 +258,7 @@ void func_80A68E14(EnHorseGanon* this, GlobalContext* globalCtx) {
temp_ret = func_8003C940(&globalCtx->colCtx, &col, &temp1, &v);
this->unk_1F4 = temp_ret;
this->actor.shape.rot.x = D_80A692D0 * Math_atan2f(this->actor.posRot.pos.y - temp_ret, 30.0f);
this->actor.shape.rot.x = 10430.3779f * Math_atan2f(this->actor.posRot.pos.y - temp_ret, 30.0f);
}
void EnHorseGanon_Update(Actor* thisx, GlobalContext* globalCtx) {

View File

@ -4,13 +4,6 @@
#include <ultra64.h>
#include <global.h>
struct unk_D_80A69248;
typedef struct unk_D_80A69248 {
/* 0x0 */ Vec3s unk_0;
/* 0x6 */ u8 unk_6;
} unk_D_80A69248; // size = 0x8
struct EnHorseGanon;
typedef void (*EnHorseGanonActionFunc)(struct EnHorseGanon*, GlobalContext*);

View File

@ -406,11 +406,9 @@ void func_80B4EF64(EnZl2* this, s16 arg1, s32 arg2) {
this->unk_20C[arg2] = arg1;
}
#ifdef NON_MATCHING
// single register swap in a subu instruction
void func_80B4F230(EnZl2* this, s16 arg1, s32 arg2) {
s32 temp_v1;
s32 temp_t0;
s16 temp_t0;
s32 temp_t2;
s32 temp_t3;
s32 phi_v0;
@ -420,7 +418,7 @@ void func_80B4F230(EnZl2* this, s16 arg1, s32 arg2) {
if (this->unk_24C != 0) {
temp_v1 = this->unk_1DC[arg2] - arg1;
temp_t0 = (s16)temp_v1;
temp_t0 = temp_v1;
temp_t2 = temp_t0;
temp_t3 = this->unk_1AC[arg2];
phi_v0 = temp_t3;
@ -450,7 +448,7 @@ void func_80B4F230(EnZl2* this, s16 arg1, s32 arg2) {
phi_t5 = -ABS(this->unk_1AC[index1AC]);
}
if ((s32)fabsf((f32)temp_t3) > 0x8000) {
if ((s32)fabsf(temp_t3) > 0x8000) {
if (arg1 > 0) {
temp_t3 -= 0x10000;
} else {
@ -462,7 +460,7 @@ void func_80B4F230(EnZl2* this, s16 arg1, s32 arg2) {
}
if (temp_t3 != 0) {
phi_v0 += (temp_t3 - temp_1AC) / 16;
phi_v0 += (temp_t3 - phi_v0) / 16;
}
if (phi_v0 != 0) {
phi_v0 -= phi_v0 / 10;
@ -471,7 +469,7 @@ void func_80B4F230(EnZl2* this, s16 arg1, s32 arg2) {
phi_v0 -= temp_t0 / 50;
}
temp_v1 += phi_v0;
if (((temp_1AC * phi_v0) <= 0) && (temp_t2 >= -0x63) && (temp_t2 < 0x64)) {
if (((this->unk_1AC[arg2] * phi_v0) <= 0) && (temp_t2 >= -0x63) && (temp_t2 < 0x64)) {
temp_v1 = 0;
phi_v0 = 0;
}
@ -480,9 +478,6 @@ void func_80B4F230(EnZl2* this, s16 arg1, s32 arg2) {
}
this->unk_20C[arg2] = arg1;
}
#else
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Zl2/func_80B4F230.s")
#endif
s32 func_80B4F45C(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3s* rot, Actor* thisx,
Gfx** gfx) {