more splits

This commit is contained in:
Ethan Roseman 2020-07-23 20:31:24 -04:00
parent 9a016f7d8a
commit c3d9e7b6c8
15 changed files with 6320 additions and 6134 deletions

View File

@ -17,7 +17,8 @@ ranges:
- [0x1370, 0x1b40, "asm", "code_1370_len_7d0", 0x80025f70]
- [0x1b40, 0x3bf0, "asm", "code_1b40_len_20b0", 0x80026740]
- [0x3bf0, 0x42e0, "asm", "code_3bf0_len_6f0", 0x800287f0]
- [0x42e0, 0x6240, "asm", "code_42e0_len_1f60", 0x80028ee0]
- [0x42e0, 0x6000, "asm", "code_42e0_len_1f60", 0x80028ee0]
- [0x6000, 0x6240, "asm", "code_6000", 0x8002AC00]
- [0x6240, 0x6e40, "asm", "code_6240_len_c00", 0x8002ae40]
- [0x6e40, 0x7340, "asm", "code_6e40_len_500", 0x8002ba40]
- [0x7340, 0x7e40, "asm", "code_7340_len_b00", 0x8002bf40]
@ -167,7 +168,8 @@ ranges:
- [0x48a20, 0x48be0, "asm", "code_48a20_len_1c0", 0x8006d620]
- [0x48be0, 0x48c00, "asm", "code_48be0_len_20", 0x8006d7e0]
- [0x48c00, 0x491c0, "asm", "code_48c00_len_5c0", 0x8006d800]
- [0x491c0, 0x4a140, "asm", "code_491c0_len_f80", 0x8006ddc0]
- [0x491c0, 0x49C70, "asm", "code_491c0_len_f80", 0x8006ddc0]
- [0x49C70, 0x4a140, "asm", "code_49C70", 0x8006E870]
- [0x4a140, 0x4a1b0, "asm", "code_4a140_len_70", 0x8006ed40]
- [0x4a1b0, 0x4a1f0, "asm", "code_4a1b0_len_40", 0x8006edb0]
- [0x4a1f0, 0x4a360, "asm", "code_4a1f0_len_170", 0x8006edf0]
@ -216,7 +218,10 @@ ranges:
- [0x1086a0, 0x109660, "asm", "code_1086a0_len_fc0", 0x802E6E20]
- [0x109660, 0x10A9F0, "asm", "code_109660_len_1270", 0x802E7DE0]
- [0x10A9F0, 0x163400, "bin", "bin_10A9F0"]
- [0x163400, 0x16a3e0, "asm", "code_163400", 0x80242BA0]
- [0x163400, 0x167570, "asm", "code_163400", 0x80242BA0]
- [0x167570, 0x168590, "asm", "code_167570", 0x80246D10]
- [0x168590, 0x169BE0, "asm", "code_168590", 0x80247D30]
- [0x169BE0, 0x16a3e0, "asm", "code_169BE0", 0x80249380]
- [0x16a3e0, 0x16C8E0, "bin", "bin_16a3e0"]
- [0x16C8E0, 0x1AF2C0, "asm", "code_16c8e0", 0x8023E000]
- [0x1AF2C0, 0x3169f0, "bin", "bin_1AF2C0"]
@ -228,7 +233,9 @@ ranges:
- [0x317020, 0x415D90, "bin", "bin_317020"]
- [0x415D90, 0x4200C0, "asm", "code_415D90", 0x802A1000]
- [0x4200C0, 0x7e0e80, "bin", "bin_4200C0"]
- [0x7e0e80, 0x7e4d00, "asm", "code_7e0e80", 0x80280000]
- [0x7e0e80, 0x7E2AA0, "asm", "code_7e0e80", 0x80280000]
- [0x7E2AA0, 0x7E3700, "asm", "code_7E2AA0", 0x80281C20]
- [0x7E3700, 0x7e4d00, "asm", "code_7E3700", 0x80282880]
- [0x7e4d00, 0xe20eb0, "bin", "bin_7e4d00"]
- [0xe20eb0, 0xe215c0, "asm", "code_e20eb0", 0x802B7000]
- [0xe215c0, 0xF007C0, "bin", "bin_19e09a8"]

File diff suppressed because it is too large Load Diff

1135
papermario/asm/code_167570.s Normal file

File diff suppressed because it is too large Load Diff

1620
papermario/asm/code_168590.s Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,578 @@
# %s disassembly and split file
# generated by n64split v%s - N64 ROM splitter
# 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
.include "globals.inc"
.section .text80249380, "ax"
func_80249380:
/* 169BE0 80249380 27BDFFB8 */ addiu $sp, $sp, -0x48
/* 169BE4 80249384 0080482D */ daddu $t1, $a0, $zero
/* 169BE8 80249388 AFB5003C */ sw $s5, 0x3c($sp)
/* 169BEC 8024938C 00A0A82D */ daddu $s5, $a1, $zero
/* 169BF0 80249390 AFB60040 */ sw $s6, 0x40($sp)
/* 169BF4 80249394 8FAA0058 */ lw $t2, 0x58($sp)
/* 169BF8 80249398 3C038025 */ lui $v1, 0x8025
/* 169BFC 8024939C 2463B7CC */ addiu $v1, $v1, -0x4834
/* 169C00 802493A0 AFBF0044 */ sw $ra, 0x44($sp)
/* 169C04 802493A4 AFB40038 */ sw $s4, 0x38($sp)
/* 169C08 802493A8 AFB30034 */ sw $s3, 0x34($sp)
/* 169C0C 802493AC AFB20030 */ sw $s2, 0x30($sp)
/* 169C10 802493B0 AFB1002C */ sw $s1, 0x2c($sp)
/* 169C14 802493B4 AFB00028 */ sw $s0, 0x28($sp)
/* 169C18 802493B8 8C620000 */ lw $v0, ($v1)
/* 169C1C 802493BC 8FAD005C */ lw $t5, 0x5c($sp)
/* 169C20 802493C0 10E20004 */ beq $a3, $v0, .L802493D4
/* 169C24 802493C4 00C0B02D */ daddu $s6, $a2, $zero
/* 169C28 802493C8 AC670000 */ sw $a3, ($v1)
/* 169C2C 802493CC 3C018025 */ lui $at, 0x8025
/* 169C30 802493D0 AC20B7D0 */ sw $zero, -0x4830($at)
.L802493D4:
/* 169C34 802493D4 3C058025 */ lui $a1, 0x8025
/* 169C38 802493D8 24A5B7D0 */ addiu $a1, $a1, -0x4830
/* 169C3C 802493DC 8C630000 */ lw $v1, ($v1)
/* 169C40 802493E0 8CA40000 */ lw $a0, ($a1)
/* 169C44 802493E4 00031880 */ sll $v1, $v1, 2
/* 169C48 802493E8 00041040 */ sll $v0, $a0, 1
/* 169C4C 802493EC 00441021 */ addu $v0, $v0, $a0
/* 169C50 802493F0 3C01802F */ lui $at, 0x802f
/* 169C54 802493F4 00230821 */ addu $at, $at, $v1
/* 169C58 802493F8 8C23B5A8 */ lw $v1, -0x4a58($at)
/* 169C5C 802493FC 00021080 */ sll $v0, $v0, 2
/* 169C60 80249400 8C640008 */ lw $a0, 8($v1)
/* 169C64 80249404 90720000 */ lbu $s2, ($v1)
/* 169C68 80249408 90730001 */ lbu $s3, 1($v1)
/* 169C6C 8024940C 946B0004 */ lhu $t3, 4($v1)
/* 169C70 80249410 00822021 */ addu $a0, $a0, $v0
/* 169C74 80249414 292200A2 */ slti $v0, $t1, 0xa2
/* 169C78 80249418 90940008 */ lbu $s4, 8($a0)
/* 169C7C 8024941C 8C8C0000 */ lw $t4, ($a0)
/* 169C80 80249420 10400130 */ beqz $v0, .L802498E4
/* 169C84 80249424 240200F7 */ addiu $v0, $zero, 0xf7
/* 169C88 80249428 3C08800A */ lui $t0, 0x800a
/* 169C8C 8024942C 2508A66C */ addiu $t0, $t0, -0x5994
/* 169C90 80249430 8C820004 */ lw $v0, 4($a0)
/* 169C94 80249434 8D040000 */ lw $a0, ($t0)
/* 169C98 80249438 3C038025 */ lui $v1, 0x8025
/* 169C9C 8024943C 8C63B7C8 */ lw $v1, -0x4838($v1)
/* 169CA0 80249440 00491021 */ addu $v0, $v0, $t1
/* 169CA4 80249444 90540000 */ lbu $s4, ($v0)
/* 169CA8 80249448 1083000A */ beq $a0, $v1, .L80249474
/* 169CAC 8024944C 24820008 */ addiu $v0, $a0, 8
/* 169CB0 80249450 AD020000 */ sw $v0, ($t0)
/* 169CB4 80249454 3C02DE00 */ lui $v0, 0xde00
/* 169CB8 80249458 AC820000 */ sw $v0, ($a0)
/* 169CBC 8024945C 3C028025 */ lui $v0, 0x8025
/* 169CC0 80249460 2442B760 */ addiu $v0, $v0, -0x48a0
/* 169CC4 80249464 AC820004 */ sw $v0, 4($a0)
/* 169CC8 80249468 2402FFFF */ addiu $v0, $zero, -1
/* 169CCC 8024946C 3C018025 */ lui $at, 0x8025
/* 169CD0 80249470 AC22B7D4 */ sw $v0, -0x482c($at)
.L80249474:
/* 169CD4 80249474 3C048025 */ lui $a0, 0x8025
/* 169CD8 80249478 2484B7D4 */ addiu $a0, $a0, -0x482c
/* 169CDC 8024947C 8C820000 */ lw $v0, ($a0)
/* 169CE0 80249480 104A0029 */ beq $v0, $t2, .L80249528
/* 169CE4 80249484 3C06F500 */ lui $a2, 0xf500
/* 169CE8 80249488 34C60100 */ ori $a2, $a2, 0x100
/* 169CEC 8024948C 3C070703 */ lui $a3, 0x703
/* 169CF0 80249490 34E7C000 */ ori $a3, $a3, 0xc000
/* 169CF4 80249494 8D030000 */ lw $v1, ($t0)
/* 169CF8 80249498 3C02FD10 */ lui $v0, 0xfd10
/* 169CFC 8024949C AC8A0000 */ sw $t2, ($a0)
/* 169D00 802494A0 3C04802F */ lui $a0, 0x802f
/* 169D04 802494A4 24844560 */ addiu $a0, $a0, 0x4560
/* 169D08 802494A8 0060282D */ daddu $a1, $v1, $zero
/* 169D0C 802494AC 24630008 */ addiu $v1, $v1, 8
/* 169D10 802494B0 AD030000 */ sw $v1, ($t0)
/* 169D14 802494B4 ACA20000 */ sw $v0, ($a1)
/* 169D18 802494B8 000A1100 */ sll $v0, $t2, 4
/* 169D1C 802494BC 00441021 */ addu $v0, $v0, $a0
/* 169D20 802494C0 ACA20004 */ sw $v0, 4($a1)
/* 169D24 802494C4 24620008 */ addiu $v0, $v1, 8
/* 169D28 802494C8 AD020000 */ sw $v0, ($t0)
/* 169D2C 802494CC 3C02E800 */ lui $v0, 0xe800
/* 169D30 802494D0 AC620000 */ sw $v0, ($v1)
/* 169D34 802494D4 24620010 */ addiu $v0, $v1, 0x10
/* 169D38 802494D8 AC600004 */ sw $zero, 4($v1)
/* 169D3C 802494DC AD020000 */ sw $v0, ($t0)
/* 169D40 802494E0 3C020700 */ lui $v0, 0x700
/* 169D44 802494E4 AC62000C */ sw $v0, 0xc($v1)
/* 169D48 802494E8 24620018 */ addiu $v0, $v1, 0x18
/* 169D4C 802494EC AC660008 */ sw $a2, 8($v1)
/* 169D50 802494F0 AD020000 */ sw $v0, ($t0)
/* 169D54 802494F4 3C02E600 */ lui $v0, 0xe600
/* 169D58 802494F8 AC620010 */ sw $v0, 0x10($v1)
/* 169D5C 802494FC 24620020 */ addiu $v0, $v1, 0x20
/* 169D60 80249500 AC600014 */ sw $zero, 0x14($v1)
/* 169D64 80249504 AD020000 */ sw $v0, ($t0)
/* 169D68 80249508 3C02F000 */ lui $v0, 0xf000
/* 169D6C 8024950C AC620018 */ sw $v0, 0x18($v1)
/* 169D70 80249510 24620028 */ addiu $v0, $v1, 0x28
/* 169D74 80249514 AC67001C */ sw $a3, 0x1c($v1)
/* 169D78 80249518 AD020000 */ sw $v0, ($t0)
/* 169D7C 8024951C 3C02E700 */ lui $v0, 0xe700
/* 169D80 80249520 AC620020 */ sw $v0, 0x20($v1)
/* 169D84 80249524 AC600024 */ sw $zero, 0x24($v1)
.L80249528:
/* 169D88 80249528 2A420010 */ slti $v0, $s2, 0x10
/* 169D8C 8024952C 1440005E */ bnez $v0, .L802496A8
/* 169D90 80249530 3242000F */ andi $v0, $s2, 0xf
/* 169D94 80249534 1440005C */ bnez $v0, .L802496A8
/* 169D98 80249538 0240202D */ daddu $a0, $s2, $zero
/* 169D9C 8024953C 3C02FD50 */ lui $v0, 0xfd50
/* 169DA0 80249540 3C070700 */ lui $a3, 0x700
/* 169DA4 80249544 8D050000 */ lw $a1, ($t0)
/* 169DA8 80249548 01690018 */ mult $t3, $t1
/* 169DAC 8024954C 00A0182D */ daddu $v1, $a1, $zero
/* 169DB0 80249550 24A50008 */ addiu $a1, $a1, 8
/* 169DB4 80249554 AD050000 */ sw $a1, ($t0)
/* 169DB8 80249558 AC620000 */ sw $v0, ($v1)
/* 169DBC 8024955C 24A20008 */ addiu $v0, $a1, 8
/* 169DC0 80249560 AD020000 */ sw $v0, ($t0)
/* 169DC4 80249564 24A20010 */ addiu $v0, $a1, 0x10
/* 169DC8 80249568 AD020000 */ sw $v0, ($t0)
/* 169DCC 8024956C 24A20018 */ addiu $v0, $a1, 0x18
/* 169DD0 80249570 AD020000 */ sw $v0, ($t0)
/* 169DD4 80249574 00007012 */ mflo $t6
/* 169DD8 80249578 018E1021 */ addu $v0, $t4, $t6
/* 169DDC 8024957C AC620004 */ sw $v0, 4($v1)
/* 169DE0 80249580 3C02F550 */ lui $v0, 0xf550
/* 169DE4 80249584 ACA20000 */ sw $v0, ($a1)
/* 169DE8 80249588 3C02E600 */ lui $v0, 0xe600
/* 169DEC 8024958C ACA20008 */ sw $v0, 8($a1)
/* 169DF0 80249590 3C02F300 */ lui $v0, 0xf300
.L80249594:
/* 169DF4 80249594 ACA70004 */ sw $a3, 4($a1)
/* 169DF8 80249598 ACA0000C */ sw $zero, 0xc($a1)
/* 169DFC 8024959C 06410002 */ bgez $s2, .L802495A8
/* 169E00 802495A0 ACA20010 */ sw $v0, 0x10($a1)
/* 169E04 802495A4 2644000F */ addiu $a0, $s2, 0xf
.L802495A8:
/* 169E08 802495A8 00043103 */ sra $a2, $a0, 4
/* 169E0C 802495AC 18C00002 */ blez $a2, .L802495B8
/* 169E10 802495B0 24030800 */ addiu $v1, $zero, 0x800
/* 169E14 802495B4 24C307FF */ addiu $v1, $a2, 0x7ff
.L802495B8:
/* 169E18 802495B8 02530018 */ mult $s2, $s3
/* 169E1C 802495BC 00007012 */ mflo $t6
/* 169E20 802495C0 25C20003 */ addiu $v0, $t6, 3
/* 169E24 802495C4 00021083 */ sra $v0, $v0, 2
/* 169E28 802495C8 2444FFFF */ addiu $a0, $v0, -1
/* 169E2C 802495CC 28820800 */ slti $v0, $a0, 0x800
/* 169E30 802495D0 50400001 */ beql $v0, $zero, .L802495D8
/* 169E34 802495D4 240407FF */ addiu $a0, $zero, 0x7ff
.L802495D8:
/* 169E38 802495D8 30820FFF */ andi $v0, $a0, 0xfff
/* 169E3C 802495DC 00021300 */ sll $v0, $v0, 0xc
/* 169E40 802495E0 18C0000D */ blez $a2, .L80249618
/* 169E44 802495E4 00472025 */ or $a0, $v0, $a3
/* 169E48 802495E8 14C00002 */ bnez $a2, .L802495F4
/* 169E4C 802495EC 0066001A */ div $zero, $v1, $a2
/* 169E50 802495F0 0007000D */ break 7
.L802495F4:
/* 169E54 802495F4 2401FFFF */ addiu $at, $zero, -1
/* 169E58 802495F8 14C10004 */ bne $a2, $at, .L8024960C
/* 169E5C 802495FC 3C018000 */ lui $at, 0x8000
/* 169E60 80249600 14610002 */ bne $v1, $at, .L8024960C
/* 169E64 80249604 00000000 */ nop
/* 169E68 80249608 0006000D */ break 6
.L8024960C:
/* 169E6C 8024960C 00001012 */ mflo $v0
/* 169E70 80249610 08092587 */ j .L8024961C
/* 169E74 80249614 30420FFF */ andi $v0, $v0, 0xfff
.L80249618:
/* 169E78 80249618 30620FFF */ andi $v0, $v1, 0xfff
.L8024961C:
/* 169E7C 8024961C 00821025 */ or $v0, $a0, $v0
/* 169E80 80249620 ACA20014 */ sw $v0, 0x14($a1)
/* 169E84 80249624 3C05800A */ lui $a1, 0x800a
/* 169E88 80249628 24A5A66C */ addiu $a1, $a1, -0x5994
/* 169E8C 8024962C 8CA40000 */ lw $a0, ($a1)
/* 169E90 80249630 3C02E700 */ lui $v0, 0xe700
/* 169E94 80249634 0080182D */ daddu $v1, $a0, $zero
/* 169E98 80249638 24840008 */ addiu $a0, $a0, 8
/* 169E9C 8024963C ACA40000 */ sw $a0, ($a1)
/* 169EA0 80249640 AC620000 */ sw $v0, ($v1)
/* 169EA4 80249644 24820008 */ addiu $v0, $a0, 8
/* 169EA8 80249648 AC600004 */ sw $zero, 4($v1)
/* 169EAC 8024964C ACA20000 */ sw $v0, ($a1)
/* 169EB0 80249650 00121043 */ sra $v0, $s2, 1
/* 169EB4 80249654 24420007 */ addiu $v0, $v0, 7
/* 169EB8 80249658 000210C2 */ srl $v0, $v0, 3
/* 169EBC 8024965C 00021240 */ sll $v0, $v0, 9
/* 169EC0 80249660 3C03F540 */ lui $v1, 0xf540
/* 169EC4 80249664 00431025 */ or $v0, $v0, $v1
/* 169EC8 80249668 AC820000 */ sw $v0, ($a0)
/* 169ECC 8024966C 24820010 */ addiu $v0, $a0, 0x10
/* 169ED0 80249670 AC800004 */ sw $zero, 4($a0)
/* 169ED4 80249674 ACA20000 */ sw $v0, ($a1)
/* 169ED8 80249678 3C02F200 */ lui $v0, 0xf200
/* 169EDC 8024967C 2643FFFF */ addiu $v1, $s2, -1
/* 169EE0 80249680 00031880 */ sll $v1, $v1, 2
/* 169EE4 80249684 30630FFF */ andi $v1, $v1, 0xfff
/* 169EE8 80249688 00031B00 */ sll $v1, $v1, 0xc
/* 169EEC 8024968C AC820008 */ sw $v0, 8($a0)
/* 169EF0 80249690 2662FFFF */ addiu $v0, $s3, -1
/* 169EF4 80249694 00021080 */ sll $v0, $v0, 2
/* 169EF8 80249698 30420FFF */ andi $v0, $v0, 0xfff
/* 169EFC 8024969C 00621825 */ or $v1, $v1, $v0
/* 169F00 802496A0 080925EB */ j .L802497AC
/* 169F04 802496A4 AC83000C */ sw $v1, 0xc($a0)
.L802496A8:
/* 169F08 802496A8 3C05800A */ lui $a1, 0x800a
/* 169F0C 802496AC 24A5A66C */ addiu $a1, $a1, -0x5994
/* 169F10 802496B0 00123043 */ sra $a2, $s2, 1
/* 169F14 802496B4 24C2FFFF */ addiu $v0, $a2, -1
/* 169F18 802496B8 30420FFF */ andi $v0, $v0, 0xfff
/* 169F1C 802496BC 3C03FD48 */ lui $v1, 0xfd48
/* 169F20 802496C0 00431025 */ or $v0, $v0, $v1
/* 169F24 802496C4 24C60007 */ addiu $a2, $a2, 7
/* 169F28 802496C8 000630C2 */ srl $a2, $a2, 3
/* 169F2C 802496CC 00063240 */ sll $a2, $a2, 9
/* 169F30 802496D0 2643FFFF */ addiu $v1, $s2, -1
/* 169F34 802496D4 8CA40000 */ lw $a0, ($a1)
/* 169F38 802496D8 01690018 */ mult $t3, $t1
/* 169F3C 802496DC 0080382D */ daddu $a3, $a0, $zero
/* 169F40 802496E0 24840008 */ addiu $a0, $a0, 8
/* 169F44 802496E4 ACA40000 */ sw $a0, ($a1)
/* 169F48 802496E8 ACE20000 */ sw $v0, ($a3)
/* 169F4C 802496EC 24820008 */ addiu $v0, $a0, 8
/* 169F50 802496F0 ACA20000 */ sw $v0, ($a1)
/* 169F54 802496F4 24820010 */ addiu $v0, $a0, 0x10
/* 169F58 802496F8 ACA20000 */ sw $v0, ($a1)
/* 169F5C 802496FC 24820018 */ addiu $v0, $a0, 0x18
/* 169F60 80249700 ACA20000 */ sw $v0, ($a1)
/* 169F64 80249704 24820020 */ addiu $v0, $a0, 0x20
/* 169F68 80249708 ACA20000 */ sw $v0, ($a1)
/* 169F6C 8024970C 24820028 */ addiu $v0, $a0, 0x28
/* 169F70 80249710 ACA20000 */ sw $v0, ($a1)
/* 169F74 80249714 24820030 */ addiu $v0, $a0, 0x30
/* 169F78 80249718 ACA20000 */ sw $v0, ($a1)
/* 169F7C 8024971C 2665FFFF */ addiu $a1, $s3, -1
/* 169F80 80249720 00052880 */ sll $a1, $a1, 2
/* 169F84 80249724 30A50FFF */ andi $a1, $a1, 0xfff
/* 169F88 80249728 00007012 */ mflo $t6
/* 169F8C 8024972C 018E1021 */ addu $v0, $t4, $t6
/* 169F90 80249730 ACE20004 */ sw $v0, 4($a3)
/* 169F94 80249734 3C02F548 */ lui $v0, 0xf548
/* 169F98 80249738 00C21025 */ or $v0, $a2, $v0
/* 169F9C 8024973C 3C070700 */ lui $a3, 0x700
/* 169FA0 80249740 AC820000 */ sw $v0, ($a0)
/* 169FA4 80249744 3C02E600 */ lui $v0, 0xe600
/* 169FA8 80249748 AC820008 */ sw $v0, 8($a0)
/* 169FAC 8024974C 3C02F400 */ lui $v0, 0xf400
/* 169FB0 80249750 AC820010 */ sw $v0, 0x10($a0)
/* 169FB4 80249754 00031040 */ sll $v0, $v1, 1
/* 169FB8 80249758 30420FFF */ andi $v0, $v0, 0xfff
/* 169FBC 8024975C 00021300 */ sll $v0, $v0, 0xc
/* 169FC0 80249760 AC870004 */ sw $a3, 4($a0)
/* 169FC4 80249764 00A73825 */ or $a3, $a1, $a3
/* 169FC8 80249768 00471025 */ or $v0, $v0, $a3
/* 169FCC 8024976C AC820014 */ sw $v0, 0x14($a0)
/* 169FD0 80249770 3C02E700 */ lui $v0, 0xe700
/* 169FD4 80249774 AC820018 */ sw $v0, 0x18($a0)
/* 169FD8 80249778 3C02F540 */ lui $v0, 0xf540
/* 169FDC 8024977C 00C23025 */ or $a2, $a2, $v0
/* 169FE0 80249780 3C02F200 */ lui $v0, 0xf200
/* 169FE4 80249784 00031880 */ sll $v1, $v1, 2
/* 169FE8 80249788 30630FFF */ andi $v1, $v1, 0xfff
/* 169FEC 8024978C 00031B00 */ sll $v1, $v1, 0xc
/* 169FF0 80249790 00651825 */ or $v1, $v1, $a1
/* 169FF4 80249794 AC80000C */ sw $zero, 0xc($a0)
/* 169FF8 80249798 AC80001C */ sw $zero, 0x1c($a0)
/* 169FFC 8024979C AC860020 */ sw $a2, 0x20($a0)
/* 16A000 802497A0 AC800024 */ sw $zero, 0x24($a0)
/* 16A004 802497A4 AC820028 */ sw $v0, 0x28($a0)
/* 16A008 802497A8 AC83002C */ sw $v1, 0x2c($a0)
.L802497AC:
/* 16A00C 802497AC 11A0003A */ beqz $t5, .L80249898
/* 16A010 802497B0 3C0AFCFF */ lui $t2, 0xfcff
/* 16A014 802497B4 354A97FF */ ori $t2, $t2, 0x97ff
/* 16A018 802497B8 3C08FF2D */ lui $t0, 0xff2d
/* 16A01C 802497BC 3508FEFF */ ori $t0, $t0, 0xfeff
/* 16A020 802497C0 3C11E200 */ lui $s1, 0xe200
/* 16A024 802497C4 3631001C */ ori $s1, $s1, 0x1c
/* 16A028 802497C8 3C090050 */ lui $t1, 0x50
/* 16A02C 802497CC 35294340 */ ori $t1, $t1, 0x4340
/* 16A030 802497D0 26A40002 */ addiu $a0, $s5, 2
/* 16A034 802497D4 00042080 */ sll $a0, $a0, 2
.L802497D8:
/* 16A038 802497D8 26C50002 */ addiu $a1, $s6, 2
/* 16A03C 802497DC 00052880 */ sll $a1, $a1, 2
/* 16A040 802497E0 26460002 */ addiu $a2, $s2, 2
/* 16A044 802497E4 02A63021 */ addu $a2, $s5, $a2
/* 16A048 802497E8 00063080 */ sll $a2, $a2, 2
/* 16A04C 802497EC 3C10800A */ lui $s0, 0x800a
/* 16A050 802497F0 2610A66C */ addiu $s0, $s0, -0x5994
/* 16A054 802497F4 26670002 */ addiu $a3, $s3, 2
/* 16A058 802497F8 02C73821 */ addu $a3, $s6, $a3
/* 16A05C 802497FC 8E020000 */ lw $v0, ($s0)
/* 16A060 80249800 00073880 */ sll $a3, $a3, 2
/* 16A064 80249804 0040182D */ daddu $v1, $v0, $zero
/* 16A068 80249808 24420008 */ addiu $v0, $v0, 8
/* 16A06C 8024980C AE020000 */ sw $v0, ($s0)
/* 16A070 80249810 AC6A0000 */ sw $t2, ($v1)
/* 16A074 80249814 AC680004 */ sw $t0, 4($v1)
/* 16A078 80249818 24430008 */ addiu $v1, $v0, 8
/* 16A07C 8024981C AE030000 */ sw $v1, ($s0)
/* 16A080 80249820 AC510000 */ sw $s1, ($v0)
/* 16A084 80249824 AC490004 */ sw $t1, 4($v0)
/* 16A088 80249828 24020400 */ addiu $v0, $zero, 0x400
/* 16A08C 8024982C AFA00010 */ sw $zero, 0x10($sp)
/* 16A090 80249830 AFA00014 */ sw $zero, 0x14($sp)
/* 16A094 80249834 AFA00018 */ sw $zero, 0x18($sp)
/* 16A098 80249838 AFA2001C */ sw $v0, 0x1c($sp)
/* 16A09C 8024983C 0C090AE8 */ jal func_80242BA0
/* 16A0A0 80249840 AFA20020 */ sw $v0, 0x20($sp)
/* 16A0A4 80249844 3C06FCFF */ lui $a2, 0xfcff
/* 16A0A8 80249848 34C6FFFF */ ori $a2, $a2, 0xffff
/* 16A0AC 8024984C 3C05FFFC */ lui $a1, 0xfffc
/* 16A0B0 80249850 34A5F279 */ ori $a1, $a1, 0xf279
/* 16A0B4 80249854 3C070F0A */ lui $a3, 0xf0a
/* 16A0B8 80249858 34E77008 */ ori $a3, $a3, 0x7008
/* 16A0BC 8024985C 8E020000 */ lw $v0, ($s0)
/* 16A0C0 80249860 3C03E700 */ lui $v1, 0xe700
/* 16A0C4 80249864 0040202D */ daddu $a0, $v0, $zero
/* 16A0C8 80249868 24420008 */ addiu $v0, $v0, 8
/* 16A0CC 8024986C AE020000 */ sw $v0, ($s0)
/* 16A0D0 80249870 AC830000 */ sw $v1, ($a0)
/* 16A0D4 80249874 24430008 */ addiu $v1, $v0, 8
/* 16A0D8 80249878 AC800004 */ sw $zero, 4($a0)
/* 16A0DC 8024987C AE030000 */ sw $v1, ($s0)
/* 16A0E0 80249880 24430010 */ addiu $v1, $v0, 0x10
/* 16A0E4 80249884 AC460000 */ sw $a2, ($v0)
/* 16A0E8 80249888 AC450004 */ sw $a1, 4($v0)
/* 16A0EC 8024988C AE030000 */ sw $v1, ($s0)
/* 16A0F0 80249890 AC510008 */ sw $s1, 8($v0)
/* 16A0F4 80249894 AC47000C */ sw $a3, 0xc($v0)
.L80249898:
/* 16A0F8 80249898 00152080 */ sll $a0, $s5, 2
/* 16A0FC 8024989C 00162880 */ sll $a1, $s6, 2
/* 16A100 802498A0 02B23021 */ addu $a2, $s5, $s2
/* 16A104 802498A4 00063080 */ sll $a2, $a2, 2
/* 16A108 802498A8 02D33821 */ addu $a3, $s6, $s3
/* 16A10C 802498AC 00073880 */ sll $a3, $a3, 2
/* 16A110 802498B0 24020400 */ addiu $v0, $zero, 0x400
/* 16A114 802498B4 AFA00010 */ sw $zero, 0x10($sp)
/* 16A118 802498B8 AFA00014 */ sw $zero, 0x14($sp)
/* 16A11C 802498BC AFA00018 */ sw $zero, 0x18($sp)
/* 16A120 802498C0 AFA2001C */ sw $v0, 0x1c($sp)
/* 16A124 802498C4 0C090AE8 */ jal func_80242BA0
/* 16A128 802498C8 AFA20020 */ sw $v0, 0x20($sp)
/* 16A12C 802498CC 3C03800A */ lui $v1, 0x800a
/* 16A130 802498D0 8C63A66C */ lw $v1, -0x5994($v1)
/* 16A134 802498D4 3C018025 */ lui $at, 0x8025
/* 16A138 802498D8 AC23B7C8 */ sw $v1, -0x4838($at)
/* 16A13C 802498DC 08092655 */ j .L80249954
/* 16A140 802498E0 0280102D */ daddu $v0, $s4, $zero
.L802498E4:
/* 16A144 802498E4 15220003 */ bne $t1, $v0, .L802498F4
/* 16A148 802498E8 240200F4 */ addiu $v0, $zero, 0xf4
/* 16A14C 802498EC 08092655 */ j .L80249954
/* 16A150 802498F0 2682FFFA */ addiu $v0, $s4, -6
.L802498F4:
/* 16A154 802498F4 11220010 */ beq $t1, $v0, .L80249938
/* 16A158 802498F8 292200F5 */ slti $v0, $t1, 0xf5
/* 16A15C 802498FC 10400005 */ beqz $v0, .L80249914
/* 16A160 80249900 240200F3 */ addiu $v0, $zero, 0xf3
/* 16A164 80249904 1122000A */ beq $t1, $v0, .L80249930
/* 16A168 80249908 0000102D */ daddu $v0, $zero, $zero
/* 16A16C 8024990C 08092655 */ j .L80249954
/* 16A170 80249910 00000000 */ nop
.L80249914:
/* 16A174 80249914 240200F5 */ addiu $v0, $zero, 0xf5
/* 16A178 80249918 11220009 */ beq $t1, $v0, .L80249940
/* 16A17C 8024991C 240200F6 */ addiu $v0, $zero, 0xf6
/* 16A180 80249920 11220009 */ beq $t1, $v0, .L80249948
/* 16A184 80249924 0000102D */ daddu $v0, $zero, $zero
/* 16A188 80249928 08092655 */ j .L80249954
/* 16A18C 8024992C 00000000 */ nop
.L80249930:
/* 16A190 80249930 08092654 */ j .L80249950
/* 16A194 80249934 ACA00000 */ sw $zero, ($a1)
.L80249938:
/* 16A198 80249938 08092653 */ j .L8024994C
/* 16A19C 8024993C 24020001 */ addiu $v0, $zero, 1
.L80249940:
/* 16A1A0 80249940 08092653 */ j .L8024994C
/* 16A1A4 80249944 24020002 */ addiu $v0, $zero, 2
.L80249948:
/* 16A1A8 80249948 24020003 */ addiu $v0, $zero, 3
.L8024994C:
/* 16A1AC 8024994C ACA20000 */ sw $v0, ($a1)
.L80249950:
/* 16A1B0 80249950 0000102D */ daddu $v0, $zero, $zero
.L80249954:
/* 16A1B4 80249954 8FBF0044 */ lw $ra, 0x44($sp)
/* 16A1B8 80249958 8FB60040 */ lw $s6, 0x40($sp)
/* 16A1BC 8024995C 8FB5003C */ lw $s5, 0x3c($sp)
/* 16A1C0 80249960 8FB40038 */ lw $s4, 0x38($sp)
/* 16A1C4 80249964 8FB30034 */ lw $s3, 0x34($sp)
/* 16A1C8 80249968 8FB20030 */ lw $s2, 0x30($sp)
/* 16A1CC 8024996C 8FB1002C */ lw $s1, 0x2c($sp)
/* 16A1D0 80249970 8FB00028 */ lw $s0, 0x28($sp)
/* 16A1D4 80249974 03E00008 */ jr $ra
/* 16A1D8 80249978 27BD0048 */ addiu $sp, $sp, 0x48
func_8024997C:
/* 16A1DC 8024997C 27BDFFC8 */ addiu $sp, $sp, -0x38
/* 16A1E0 80249980 8FA2004C */ lw $v0, 0x4c($sp)
/* 16A1E4 80249984 AFB5002C */ sw $s5, 0x2c($sp)
/* 16A1E8 80249988 8FB50048 */ lw $s5, 0x48($sp)
/* 16A1EC 8024998C AFB00018 */ sw $s0, 0x18($sp)
/* 16A1F0 80249990 0080802D */ daddu $s0, $a0, $zero
/* 16A1F4 80249994 AFB1001C */ sw $s1, 0x1c($sp)
/* 16A1F8 80249998 00A0882D */ daddu $s1, $a1, $zero
/* 16A1FC 8024999C AFB20020 */ sw $s2, 0x20($sp)
/* 16A200 802499A0 00C0902D */ daddu $s2, $a2, $zero
/* 16A204 802499A4 AFBF0034 */ sw $ra, 0x34($sp)
/* 16A208 802499A8 AFB60030 */ sw $s6, 0x30($sp)
/* 16A20C 802499AC AFB40028 */ sw $s4, 0x28($sp)
/* 16A210 802499B0 AFB30024 */ sw $s3, 0x24($sp)
/* 16A214 802499B4 000298C2 */ srl $s3, $v0, 3
/* 16A218 802499B8 30540001 */ andi $s4, $v0, 1
/* 16A21C 802499BC 24020001 */ addiu $v0, $zero, 1
/* 16A220 802499C0 16820002 */ bne $s4, $v0, .L802499CC
/* 16A224 802499C4 32730001 */ andi $s3, $s3, 1
/* 16A228 802499C8 2652FFFE */ addiu $s2, $s2, -2
.L802499CC:
/* 16A22C 802499CC 2E020100 */ sltiu $v0, $s0, 0x100
/* 16A230 802499D0 10400013 */ beqz $v0, .L80249A20
/* 16A234 802499D4 2602FF5E */ addiu $v0, $s0, -0xa2
/* 16A238 802499D8 2C42004E */ sltiu $v0, $v0, 0x4e
/* 16A23C 802499DC 1440000A */ bnez $v0, .L80249A08
/* 16A240 802499E0 2A0200C6 */ slti $v0, $s0, 0xc6
/* 16A244 802499E4 0200202D */ daddu $a0, $s0, $zero
/* 16A248 802499E8 0220282D */ daddu $a1, $s1, $zero
/* 16A24C 802499EC 0240302D */ daddu $a2, $s2, $zero
/* 16A250 802499F0 0280382D */ daddu $a3, $s4, $zero
/* 16A254 802499F4 AFB50010 */ sw $s5, 0x10($sp)
/* 16A258 802499F8 0C0924E0 */ jal func_80249380
/* 16A25C 802499FC AFB30014 */ sw $s3, 0x14($sp)
/* 16A260 80249A00 0809269F */ j .L80249A7C
/* 16A264 80249A04 00000000 */ nop
.L80249A08:
/* 16A268 80249A08 14400005 */ bnez $v0, .L80249A20
/* 16A26C 80249A0C 2602FF3A */ addiu $v0, $s0, -0xc6
/* 16A270 80249A10 00021080 */ sll $v0, $v0, 2
/* 16A274 80249A14 3C108025 */ lui $s0, 0x8025
/* 16A278 80249A18 02028021 */ addu $s0, $s0, $v0
/* 16A27C 80249A1C 8E10B74C */ lw $s0, -0x48b4($s0)
.L80249A20:
/* 16A280 80249A20 06010016 */ bgez $s0, .L80249A7C
/* 16A284 80249A24 240400F3 */ addiu $a0, $zero, 0xf3
/* 16A288 80249A28 0220282D */ daddu $a1, $s1, $zero
/* 16A28C 80249A2C 0240302D */ daddu $a2, $s2, $zero
/* 16A290 80249A30 0280382D */ daddu $a3, $s4, $zero
/* 16A294 80249A34 AFB50010 */ sw $s5, 0x10($sp)
/* 16A298 80249A38 0C0924E0 */ jal func_80249380
/* 16A29C 80249A3C AFB30014 */ sw $s3, 0x14($sp)
/* 16A2A0 80249A40 92030000 */ lbu $v1, ($s0)
/* 16A2A4 80249A44 240200FD */ addiu $v0, $zero, 0xfd
/* 16A2A8 80249A48 1062000C */ beq $v1, $v0, .L80249A7C
/* 16A2AC 80249A4C 0040B02D */ daddu $s6, $v0, $zero
.L80249A50:
/* 16A2B0 80249A50 0220282D */ daddu $a1, $s1, $zero
/* 16A2B4 80249A54 0240302D */ daddu $a2, $s2, $zero
/* 16A2B8 80249A58 0280382D */ daddu $a3, $s4, $zero
/* 16A2BC 80249A5C 92040000 */ lbu $a0, ($s0)
/* 16A2C0 80249A60 26100001 */ addiu $s0, $s0, 1
/* 16A2C4 80249A64 AFB50010 */ sw $s5, 0x10($sp)
/* 16A2C8 80249A68 0C0924E0 */ jal func_80249380
/* 16A2CC 80249A6C AFB30014 */ sw $s3, 0x14($sp)
/* 16A2D0 80249A70 92030000 */ lbu $v1, ($s0)
/* 16A2D4 80249A74 1476FFF6 */ bne $v1, $s6, .L80249A50
/* 16A2D8 80249A78 02228821 */ addu $s1, $s1, $v0
.L80249A7C:
.L80249A7C:
/* 16A2DC 80249A7C 8FBF0034 */ lw $ra, 0x34($sp)
/* 16A2E0 80249A80 8FB60030 */ lw $s6, 0x30($sp)
/* 16A2E4 80249A84 8FB5002C */ lw $s5, 0x2c($sp)
/* 16A2E8 80249A88 8FB40028 */ lw $s4, 0x28($sp)
/* 16A2EC 80249A8C 8FB30024 */ lw $s3, 0x24($sp)
/* 16A2F0 80249A90 8FB20020 */ lw $s2, 0x20($sp)
/* 16A2F4 80249A94 8FB1001C */ lw $s1, 0x1c($sp)
/* 16A2F8 80249A98 8FB00018 */ lw $s0, 0x18($sp)
/* 16A2FC 80249A9C 03E00008 */ jr $ra
/* 16A300 80249AA0 27BD0038 */ addiu $sp, $sp, 0x38
func_80249AA4:
/* 16A304 80249AA4 00042080 */ sll $a0, $a0, 2
/* 16A308 80249AA8 3C028025 */ lui $v0, 0x8025
/* 16A30C 80249AAC 00441021 */ addu $v0, $v0, $a0
/* 16A310 80249AB0 03E00008 */ jr $ra
/* 16A314 80249AB4 8C42B9D0 */ lw $v0, -0x4630($v0)
func_80249AB8:
/* 16A318 80249AB8 27BDFFC0 */ addiu $sp, $sp, -0x40
/* 16A31C 80249ABC AFB70034 */ sw $s7, 0x34($sp)
/* 16A320 80249AC0 8FB70050 */ lw $s7, 0x50($sp)
/* 16A324 80249AC4 AFB60030 */ sw $s6, 0x30($sp)
/* 16A328 80249AC8 8FB60054 */ lw $s6, 0x54($sp)
/* 16A32C 80249ACC AFB5002C */ sw $s5, 0x2c($sp)
/* 16A330 80249AD0 8FB50058 */ lw $s5, 0x58($sp)
/* 16A334 80249AD4 AFBE0038 */ sw $fp, 0x38($sp)
/* 16A338 80249AD8 0080F02D */ daddu $fp, $a0, $zero
/* 16A33C 80249ADC AFB20020 */ sw $s2, 0x20($sp)
/* 16A340 80249AE0 00A0902D */ daddu $s2, $a1, $zero
/* 16A344 80249AE4 AFB40028 */ sw $s4, 0x28($sp)
/* 16A348 80249AE8 8FB4005C */ lw $s4, 0x5c($sp)
/* 16A34C 80249AEC 00C0282D */ daddu $a1, $a2, $zero
/* 16A350 80249AF0 AFB00018 */ sw $s0, 0x18($sp)
/* 16A354 80249AF4 0000802D */ daddu $s0, $zero, $zero
/* 16A358 80249AF8 AFBF003C */ sw $ra, 0x3c($sp)
/* 16A35C 80249AFC AFB30024 */ sw $s3, 0x24($sp)
/* 16A360 80249B00 AFB1001C */ sw $s1, 0x1c($sp)
/* 16A364 80249B04 1A400010 */ blez $s2, .L80249B48
/* 16A368 80249B08 AFA7004C */ sw $a3, 0x4c($sp)
/* 16A36C 80249B0C 241300F7 */ addiu $s3, $zero, 0xf7
/* 16A370 80249B10 00A0882D */ daddu $s1, $a1, $zero
.L80249B14:
/* 16A374 80249B14 03D01021 */ addu $v0, $fp, $s0
/* 16A378 80249B18 90440000 */ lbu $a0, ($v0)
/* 16A37C 80249B1C 10930006 */ beq $a0, $s3, .L80249B38
/* 16A380 80249B20 0220282D */ daddu $a1, $s1, $zero
/* 16A384 80249B24 8FA6004C */ lw $a2, 0x4c($sp)
/* 16A388 80249B28 02E0382D */ daddu $a3, $s7, $zero
/* 16A38C 80249B2C AFB60010 */ sw $s6, 0x10($sp)
.L80249B30:
/* 16A390 80249B30 0C09265F */ jal func_8024997C
/* 16A394 80249B34 AFB50014 */ sw $s5, 0x14($sp)
.L80249B38:
/* 16A398 80249B38 26100001 */ addiu $s0, $s0, 1
/* 16A39C 80249B3C 0212102A */ slt $v0, $s0, $s2
/* 16A3A0 80249B40 1440FFF4 */ bnez $v0, .L80249B14
/* 16A3A4 80249B44 02348821 */ addu $s1, $s1, $s4
.L80249B48:
/* 16A3A8 80249B48 8FBF003C */ lw $ra, 0x3c($sp)
/* 16A3AC 80249B4C 8FBE0038 */ lw $fp, 0x38($sp)
/* 16A3B0 80249B50 8FB70034 */ lw $s7, 0x34($sp)
/* 16A3B4 80249B54 8FB60030 */ lw $s6, 0x30($sp)
/* 16A3B8 80249B58 8FB5002C */ lw $s5, 0x2c($sp)
/* 16A3BC 80249B5C 8FB40028 */ lw $s4, 0x28($sp)
/* 16A3C0 80249B60 8FB30024 */ lw $s3, 0x24($sp)
/* 16A3C4 80249B64 8FB20020 */ lw $s2, 0x20($sp)
/* 16A3C8 80249B68 8FB1001C */ lw $s1, 0x1c($sp)
/* 16A3CC 80249B6C 8FB00018 */ lw $s0, 0x18($sp)
/* 16A3D0 80249B70 03E00008 */ jr $ra
/* 16A3D4 80249B74 27BD0040 */ addiu $sp, $sp, 0x40
/* 16A3D8 80249B78 00000000 */ nop
/* 16A3DC 80249B7C 00000000 */ nop

View File

@ -5349,7 +5349,6 @@ switch_to_player:
/* 171474 80242B94 8FB20018 */ lw $s2, 0x18($sp)
/* 171478 80242B98 8FB10014 */ lw $s1, 0x14($sp)
/* 17147C 80242B9C 8FB00010 */ lw $s0, 0x10($sp)
func_80242BA0:
/* 171480 80242BA0 03E00008 */ jr $ra
/* 171484 80242BA4 27BD0020 */ addiu $sp, $sp, 0x20
@ -5457,7 +5456,6 @@ update_partner_change_turn:
/* 1715F8 80242D18 34420008 */ ori $v0, $v0, 8
/* 1715FC 80242D1C AE220004 */ sw $v0, 4($s1)
.L80242D20:
.L80242D20:
/* 171600 80242D20 0000282D */ daddu $a1, $zero, $zero
/* 171604 80242D24 3C060C00 */ lui $a2, 0xc00
/* 171608 80242D28 0240202D */ daddu $a0, $s2, $zero
@ -5491,7 +5489,6 @@ update_partner_change_turn:
/* 171668 80242D88 0C0B1059 */ jal does_script_exist
/* 17166C 80242D8C 00000000 */ nop
/* 171670 80242D90 14400011 */ bnez $v0, .L80242DD8
func_80242D94:
/* 171674 80242D94 00000000 */ nop
/* 171678 80242D98 AE0001D8 */ sw $zero, 0x1d8($s0)
.L80242D9C:
@ -5516,13 +5513,11 @@ func_80242D94:
/* 1716C0 80242DE0 8E230000 */ lw $v1, ($s1)
/* 1716C4 80242DE4 24020008 */ addiu $v0, $zero, 8
/* 1716C8 80242DE8 14620014 */ bne $v1, $v0, .L80242E3C
func_80242DEC:
/* 1716CC 80242DEC 24020009 */ addiu $v0, $zero, 9
/* 1716D0 80242DF0 8E0201CC */ lw $v0, 0x1cc($s0)
/* 1716D4 80242DF4 1040000B */ beqz $v0, .L80242E24
/* 1716D8 80242DF8 2402000C */ addiu $v0, $zero, 0xc
/* 1716DC 80242DFC 2405000A */ addiu $a1, $zero, 0xa
func_80242E00:
/* 1716E0 80242E00 A24201A7 */ sb $v0, 0x1a7($s2)
/* 1716E4 80242E04 8E0401CC */ lw $a0, 0x1cc($s0)
/* 1716E8 80242E08 0C0B0CF8 */ jal start_script
@ -13294,7 +13289,6 @@ func_80249380:
/* 178250 80249970 00000000 */ nop
/* 178254 80249974 44839000 */ mtc1 $v1, $f18
/* 178258 80249978 00000000 */ nop
func_8024997C:
/* 17825C 8024997C 468094A0 */ cvt.s.w $f18, $f18
/* 178260 80249980 3C03802A */ lui $v1, 0x802a
/* 178264 80249984 8063F2A2 */ lb $v1, -0xd5e($v1)
@ -13373,13 +13367,11 @@ func_8024997C:
/* 178378 80249A98 46001080 */ add.s $f2, $f2, $f0
/* 17837C 80249A9C 00031082 */ srl $v0, $v1, 2
/* 178380 80249AA0 44820000 */ mtc1 $v0, $f0
func_80249AA4:
/* 178384 80249AA4 00000000 */ nop
/* 178388 80249AA8 46800020 */ cvt.s.w $f0, $f0
/* 17838C 80249AAC 46001080 */ add.s $f2, $f2, $f0
/* 178390 80249AB0 E7A20024 */ swc1 $f2, 0x24($sp)
/* 178394 80249AB4 C4920144 */ lwc1 $f18, 0x144($a0)
func_80249AB8:
/* 178398 80249AB8 E7B20020 */ swc1 $f18, 0x20($sp)
/* 17839C 80249ABC C490014C */ lwc1 $f16, 0x14c($a0)
/* 1783A0 80249AC0 46189001 */ sub.s $f0, $f18, $f24

View File

@ -2097,181 +2097,3 @@ func_8002AB5C:
/* 005FF4 8002ABF4 00000000 */ nop
/* 005FF8 8002ABF8 00000000 */ nop
/* 005FFC 8002ABFC 00000000 */ nop
general_heap_create:
/* 006000 8002AC00 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 006004 8002AC04 3C050005 */ lui $a1, 5
/* 006008 8002AC08 3C048030 */ lui $a0, 0x8030
/* 00600C 8002AC0C 2484B800 */ addiu $a0, $a0, -0x4800
/* 006010 8002AC10 AFBF0010 */ sw $ra, 0x10($sp)
/* 006014 8002AC14 0C00A40C */ jal _heap_create
/* 006018 8002AC18 34A54000 */ ori $a1, $a1, 0x4000
/* 00601C 8002AC1C 8FBF0010 */ lw $ra, 0x10($sp)
/* 006020 8002AC20 03E00008 */ jr $ra
/* 006024 8002AC24 27BD0018 */ addiu $sp, $sp, 0x18
general_heap_malloc:
/* 006028 8002AC28 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 00602C 8002AC2C 0080282D */ daddu $a1, $a0, $zero
/* 006030 8002AC30 3C048030 */ lui $a0, 0x8030
/* 006034 8002AC34 2484B800 */ addiu $a0, $a0, -0x4800
/* 006038 8002AC38 AFBF0010 */ sw $ra, 0x10($sp)
/* 00603C 8002AC3C 0C00A41B */ jal _heap_malloc
/* 006040 8002AC40 00000000 */ nop
/* 006044 8002AC44 8FBF0010 */ lw $ra, 0x10($sp)
/* 006048 8002AC48 03E00008 */ jr $ra
/* 00604C 8002AC4C 27BD0018 */ addiu $sp, $sp, 0x18
general_heap_malloc_tail:
/* 006050 8002AC50 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 006054 8002AC54 0080282D */ daddu $a1, $a0, $zero
/* 006058 8002AC58 3C048030 */ lui $a0, 0x8030
/* 00605C 8002AC5C 2484B800 */ addiu $a0, $a0, -0x4800
/* 006060 8002AC60 AFBF0010 */ sw $ra, 0x10($sp)
/* 006064 8002AC64 0C00A459 */ jal _heap_malloc_tail
/* 006068 8002AC68 00000000 */ nop
/* 00606C 8002AC6C 8FBF0010 */ lw $ra, 0x10($sp)
/* 006070 8002AC70 03E00008 */ jr $ra
/* 006074 8002AC74 27BD0018 */ addiu $sp, $sp, 0x18
general_heap_free:
/* 006078 8002AC78 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 00607C 8002AC7C 0080282D */ daddu $a1, $a0, $zero
/* 006080 8002AC80 3C048030 */ lui $a0, 0x8030
/* 006084 8002AC84 2484B800 */ addiu $a0, $a0, -0x4800
/* 006088 8002AC88 AFBF0010 */ sw $ra, 0x10($sp)
/* 00608C 8002AC8C 0C00A487 */ jal _heap_free
/* 006090 8002AC90 00000000 */ nop
/* 006094 8002AC94 8FBF0010 */ lw $ra, 0x10($sp)
/* 006098 8002AC98 03E00008 */ jr $ra
/* 00609C 8002AC9C 27BD0018 */ addiu $sp, $sp, 0x18
battle_heap_create:
/* 0060A0 8002ACA0 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 0060A4 8002ACA4 AFBF0010 */ sw $ra, 0x10($sp)
/* 0060A8 8002ACA8 3C050002 */ lui $a1, 2
/* 0060AC 8002ACAC 3C04803E */ lui $a0, 0x803e
/* 0060B0 8002ACB0 2484A800 */ addiu $a0, $a0, -0x5800
/* 0060B4 8002ACB4 0C00A40C */ jal _heap_create
/* 0060B8 8002ACB8 34A55800 */ ori $a1, $a1, 0x5800
/* 0060BC 8002ACBC 0040202D */ daddu $a0, $v0, $zero
/* 0060C0 8002ACC0 2402FFFF */ addiu $v0, $zero, -1
/* 0060C4 8002ACC4 0040182D */ daddu $v1, $v0, $zero
/* 0060C8 8002ACC8 54830001 */ bnel $a0, $v1, .L8002ACD0
/* 0060CC 8002ACCC 0000102D */ daddu $v0, $zero, $zero
.L8002ACD0:
/* 0060D0 8002ACD0 8FBF0010 */ lw $ra, 0x10($sp)
/* 0060D4 8002ACD4 03E00008 */ jr $ra
/* 0060D8 8002ACD8 27BD0018 */ addiu $sp, $sp, 0x18
func_8002ACDC:
/* 0060DC 8002ACDC 03E00008 */ jr $ra
/* 0060E0 8002ACE0 0000102D */ daddu $v0, $zero, $zero
heap_malloc:
/* 0060E4 8002ACE4 3C028007 */ lui $v0, 0x8007
/* 0060E8 8002ACE8 8C42419C */ lw $v0, 0x419c($v0)
/* 0060EC 8002ACEC 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 0060F0 8002ACF0 AFBF0010 */ sw $ra, 0x10($sp)
/* 0060F4 8002ACF4 80420070 */ lb $v0, 0x70($v0)
/* 0060F8 8002ACF8 10400007 */ beqz $v0, .L8002AD18
/* 0060FC 8002ACFC 0080282D */ daddu $a1, $a0, $zero
/* 006100 8002AD00 3C04803E */ lui $a0, 0x803e
/* 006104 8002AD04 2484A800 */ addiu $a0, $a0, -0x5800
/* 006108 8002AD08 0C00A41B */ jal _heap_malloc
/* 00610C 8002AD0C 00000000 */ nop
/* 006110 8002AD10 0800AB48 */ j .L8002AD20
/* 006114 8002AD14 00000000 */ nop
.L8002AD18:
/* 006118 8002AD18 0C00AB0A */ jal general_heap_malloc
/* 00611C 8002AD1C 00A0202D */ daddu $a0, $a1, $zero
.L8002AD20:
/* 006120 8002AD20 8FBF0010 */ lw $ra, 0x10($sp)
/* 006124 8002AD24 03E00008 */ jr $ra
/* 006128 8002AD28 27BD0018 */ addiu $sp, $sp, 0x18
heap_free:
/* 00612C 8002AD2C 3C028007 */ lui $v0, 0x8007
/* 006130 8002AD30 8C42419C */ lw $v0, 0x419c($v0)
/* 006134 8002AD34 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 006138 8002AD38 AFBF0010 */ sw $ra, 0x10($sp)
/* 00613C 8002AD3C 80420070 */ lb $v0, 0x70($v0)
/* 006140 8002AD40 14400005 */ bnez $v0, .L8002AD58
/* 006144 8002AD44 0080282D */ daddu $a1, $a0, $zero
/* 006148 8002AD48 0C00AB1E */ jal general_heap_free
/* 00614C 8002AD4C 00000000 */ nop
/* 006150 8002AD50 0800AB5A */ j .L8002AD68
/* 006154 8002AD54 00000000 */ nop
.L8002AD58:
/* 006158 8002AD58 3C04803E */ lui $a0, 0x803e
/* 00615C 8002AD5C 2484A800 */ addiu $a0, $a0, -0x5800
/* 006160 8002AD60 0C00A487 */ jal _heap_free
/* 006164 8002AD64 00000000 */ nop
.L8002AD68:
/* 006168 8002AD68 8FBF0010 */ lw $ra, 0x10($sp)
/* 00616C 8002AD6C 03E00008 */ jr $ra
/* 006170 8002AD70 27BD0018 */ addiu $sp, $sp, 0x18
collision_heap_create:
/* 006174 8002AD74 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 006178 8002AD78 AFBF0010 */ sw $ra, 0x10($sp)
/* 00617C 8002AD7C 3C050001 */ lui $a1, 1
/* 006180 8002AD80 3C048027 */ lui $a0, 0x8027
/* 006184 8002AD84 24848000 */ addiu $a0, $a0, -0x8000
/* 006188 8002AD88 0C00A40C */ jal _heap_create
/* 00618C 8002AD8C 34A58000 */ ori $a1, $a1, 0x8000
/* 006190 8002AD90 0040202D */ daddu $a0, $v0, $zero
/* 006194 8002AD94 2402FFFF */ addiu $v0, $zero, -1
/* 006198 8002AD98 0040182D */ daddu $v1, $v0, $zero
/* 00619C 8002AD9C 54830001 */ bnel $a0, $v1, .L8002ADA4
/* 0061A0 8002ADA0 0000102D */ daddu $v0, $zero, $zero
.L8002ADA4:
/* 0061A4 8002ADA4 8FBF0010 */ lw $ra, 0x10($sp)
/* 0061A8 8002ADA8 03E00008 */ jr $ra
/* 0061AC 8002ADAC 27BD0018 */ addiu $sp, $sp, 0x18
collision_heap_malloc:
/* 0061B0 8002ADB0 3C028007 */ lui $v0, 0x8007
/* 0061B4 8002ADB4 8C42419C */ lw $v0, 0x419c($v0)
/* 0061B8 8002ADB8 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 0061BC 8002ADBC AFBF0010 */ sw $ra, 0x10($sp)
/* 0061C0 8002ADC0 80420070 */ lb $v0, 0x70($v0)
/* 0061C4 8002ADC4 0080282D */ daddu $a1, $a0, $zero
/* 0061C8 8002ADC8 3C048027 */ lui $a0, 0x8027
/* 0061CC 8002ADCC 24848000 */ addiu $a0, $a0, -0x8000
/* 0061D0 8002ADD0 10400003 */ beqz $v0, .L8002ADE0
/* 0061D4 8002ADD4 00000000 */ nop
/* 0061D8 8002ADD8 3C04803E */ lui $a0, 0x803e
/* 0061DC 8002ADDC 2484A800 */ addiu $a0, $a0, -0x5800
.L8002ADE0:
/* 0061E0 8002ADE0 0C00A41B */ jal _heap_malloc
/* 0061E4 8002ADE4 00000000 */ nop
/* 0061E8 8002ADE8 8FBF0010 */ lw $ra, 0x10($sp)
/* 0061EC 8002ADEC 03E00008 */ jr $ra
/* 0061F0 8002ADF0 27BD0018 */ addiu $sp, $sp, 0x18
collision_heap_free:
/* 0061F4 8002ADF4 3C028007 */ lui $v0, 0x8007
/* 0061F8 8002ADF8 8C42419C */ lw $v0, 0x419c($v0)
/* 0061FC 8002ADFC 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 006200 8002AE00 AFBF0010 */ sw $ra, 0x10($sp)
/* 006204 8002AE04 80420070 */ lb $v0, 0x70($v0)
/* 006208 8002AE08 0080282D */ daddu $a1, $a0, $zero
/* 00620C 8002AE0C 3C04803E */ lui $a0, 0x803e
/* 006210 8002AE10 2484A800 */ addiu $a0, $a0, -0x5800
/* 006214 8002AE14 14400003 */ bnez $v0, .L8002AE24
/* 006218 8002AE18 00000000 */ nop
/* 00621C 8002AE1C 3C048027 */ lui $a0, 0x8027
/* 006220 8002AE20 24848000 */ addiu $a0, $a0, -0x8000
.L8002AE24:
/* 006224 8002AE24 0C00A487 */ jal _heap_free
/* 006228 8002AE28 00000000 */ nop
/* 00622C 8002AE2C 8FBF0010 */ lw $ra, 0x10($sp)
/* 006230 8002AE30 03E00008 */ jr $ra
/* 006234 8002AE34 27BD0018 */ addiu $sp, $sp, 0x18
/* 006238 8002AE38 00000000 */ nop
/* 00623C 8002AE3C 00000000 */ nop
.set reorder

View File

@ -794,359 +794,3 @@ func_8006E310:
/* 049C64 8006E864 00000000 */ nop
/* 049C68 8006E868 00000000 */ nop
/* 049C6C 8006E86C 00000000 */ nop
func_8006E870:
/* 049C70 8006E870 27BDFFF8 */ addiu $sp, $sp, -8
/* 049C74 8006E874 00E0402D */ daddu $t0, $a3, $zero
/* 049C78 8006E878 00C0482D */ daddu $t1, $a2, $zero
/* 049C7C 8006E87C 00A0582D */ daddu $t3, $a1, $zero
/* 049C80 8006E880 0080502D */ daddu $t2, $a0, $zero
/* 049C84 8006E884 152000A6 */ bnez $t1, .L8006EB20
/* 049C88 8006E888 03A0C82D */ daddu $t9, $sp, $zero
/* 049C8C 8006E88C 0148102B */ sltu $v0, $t2, $t0
/* 049C90 8006E890 1040001D */ beqz $v0, .L8006E908
/* 049C94 8006E894 3402FFFF */ ori $v0, $zero, 0xffff
/* 049C98 8006E898 0048102B */ sltu $v0, $v0, $t0
/* 049C9C 8006E89C 14400005 */ bnez $v0, .L8006E8B4
/* 049CA0 8006E8A0 00E0302D */ daddu $a2, $a3, $zero
/* 049CA4 8006E8A4 2D020100 */ sltiu $v0, $t0, 0x100
/* 049CA8 8006E8A8 38420001 */ xori $v0, $v0, 1
/* 049CAC 8006E8AC 0801BA33 */ j .L8006E8CC
/* 049CB0 8006E8B0 000218C0 */ sll $v1, $v0, 3
.L8006E8B4:
/* 049CB4 8006E8B4 3C0200FF */ lui $v0, 0xff
/* 049CB8 8006E8B8 3442FFFF */ ori $v0, $v0, 0xffff
/* 049CBC 8006E8BC 0048102B */ sltu $v0, $v0, $t0
/* 049CC0 8006E8C0 14400002 */ bnez $v0, .L8006E8CC
/* 049CC4 8006E8C4 24030018 */ addiu $v1, $zero, 0x18
/* 049CC8 8006E8C8 24030010 */ addiu $v1, $zero, 0x10
.L8006E8CC:
/* 049CCC 8006E8CC 00661006 */ srlv $v0, $a2, $v1
/* 049CD0 8006E8D0 3C01800A */ lui $at, 0x800a
/* 049CD4 8006E8D4 00220821 */ addu $at, $at, $v0
/* 049CD8 8006E8D8 9022A140 */ lbu $v0, -0x5ec0($at)
/* 049CDC 8006E8DC 24040020 */ addiu $a0, $zero, 0x20
/* 049CE0 8006E8E0 00431021 */ addu $v0, $v0, $v1
/* 049CE4 8006E8E4 00826823 */ subu $t5, $a0, $v0
/* 049CE8 8006E8E8 11A0005B */ beqz $t5, .L8006EA58
/* 049CEC 8006E8EC 01AA1804 */ sllv $v1, $t2, $t5
/* 049CF0 8006E8F0 01A84004 */ sllv $t0, $t0, $t5
/* 049CF4 8006E8F4 008D1023 */ subu $v0, $a0, $t5
/* 049CF8 8006E8F8 004B1006 */ srlv $v0, $t3, $v0
/* 049CFC 8006E8FC 00625025 */ or $t2, $v1, $v0
/* 049D00 8006E900 0801BA96 */ j .L8006EA58
/* 049D04 8006E904 01AB5804 */ sllv $t3, $t3, $t5
.L8006E908:
/* 049D08 8006E908 15000008 */ bnez $t0, .L8006E92C
/* 049D0C 8006E90C 0048102B */ sltu $v0, $v0, $t0
/* 049D10 8006E910 24020001 */ addiu $v0, $zero, 1
/* 049D14 8006E914 15200002 */ bnez $t1, .L8006E920
/* 049D18 8006E918 0049001B */ divu $zero, $v0, $t1
/* 049D1C 8006E91C 0007000D */ break 7
.L8006E920:
/* 049D20 8006E920 00004012 */ mflo $t0
/* 049D24 8006E924 3402FFFF */ ori $v0, $zero, 0xffff
/* 049D28 8006E928 0048102B */ sltu $v0, $v0, $t0
.L8006E92C:
/* 049D2C 8006E92C 14400005 */ bnez $v0, .L8006E944
/* 049D30 8006E930 0100202D */ daddu $a0, $t0, $zero
/* 049D34 8006E934 2D020100 */ sltiu $v0, $t0, 0x100
/* 049D38 8006E938 38420001 */ xori $v0, $v0, 1
/* 049D3C 8006E93C 0801BA57 */ j .L8006E95C
/* 049D40 8006E940 000218C0 */ sll $v1, $v0, 3
.L8006E944:
/* 049D44 8006E944 3C0200FF */ lui $v0, 0xff
/* 049D48 8006E948 3442FFFF */ ori $v0, $v0, 0xffff
/* 049D4C 8006E94C 0048102B */ sltu $v0, $v0, $t0
/* 049D50 8006E950 14400002 */ bnez $v0, .L8006E95C
/* 049D54 8006E954 24030018 */ addiu $v1, $zero, 0x18
/* 049D58 8006E958 24030010 */ addiu $v1, $zero, 0x10
.L8006E95C:
/* 049D5C 8006E95C 00641006 */ srlv $v0, $a0, $v1
/* 049D60 8006E960 3C01800A */ lui $at, 0x800a
/* 049D64 8006E964 00220821 */ addu $at, $at, $v0
/* 049D68 8006E968 9022A140 */ lbu $v0, -0x5ec0($at)
/* 049D6C 8006E96C 00431021 */ addu $v0, $v0, $v1
/* 049D70 8006E970 24030020 */ addiu $v1, $zero, 0x20
/* 049D74 8006E974 00626823 */ subu $t5, $v1, $v0
/* 049D78 8006E978 15A00003 */ bnez $t5, .L8006E988
/* 049D7C 8006E97C 006DC023 */ subu $t8, $v1, $t5
/* 049D80 8006E980 0801BA96 */ j .L8006EA58
/* 049D84 8006E984 01485023 */ subu $t2, $t2, $t0
.L8006E988:
/* 049D88 8006E988 01A84004 */ sllv $t0, $t0, $t5
/* 049D8C 8006E98C 030A2006 */ srlv $a0, $t2, $t8
/* 049D90 8006E990 01AA1804 */ sllv $v1, $t2, $t5
/* 049D94 8006E994 030B1006 */ srlv $v0, $t3, $t8
/* 049D98 8006E998 00625025 */ or $t2, $v1, $v0
/* 049D9C 8006E99C 00082C02 */ srl $a1, $t0, 0x10
/* 049DA0 8006E9A0 14A00002 */ bnez $a1, .L8006E9AC
/* 049DA4 8006E9A4 0085001B */ divu $zero, $a0, $a1
/* 049DA8 8006E9A8 0007000D */ break 7
.L8006E9AC:
/* 049DAC 8006E9AC 00001012 */ mflo $v0
/* 049DB0 8006E9B0 00001810 */ mfhi $v1
/* 049DB4 8006E9B4 3106FFFF */ andi $a2, $t0, 0xffff
/* 049DB8 8006E9B8 00000000 */ nop
/* 049DBC 8006E9BC 00460018 */ mult $v0, $a2
/* 049DC0 8006E9C0 00031C00 */ sll $v1, $v1, 0x10
/* 049DC4 8006E9C4 000A1402 */ srl $v0, $t2, 0x10
/* 049DC8 8006E9C8 00621825 */ or $v1, $v1, $v0
/* 049DCC 8006E9CC 00002012 */ mflo $a0
/* 049DD0 8006E9D0 0064102B */ sltu $v0, $v1, $a0
/* 049DD4 8006E9D4 10400008 */ beqz $v0, .L8006E9F8
/* 049DD8 8006E9D8 01AB5804 */ sllv $t3, $t3, $t5
/* 049DDC 8006E9DC 00681821 */ addu $v1, $v1, $t0
/* 049DE0 8006E9E0 0068102B */ sltu $v0, $v1, $t0
/* 049DE4 8006E9E4 54400005 */ bnel $v0, $zero, .L8006E9FC
/* 049DE8 8006E9E8 00641823 */ subu $v1, $v1, $a0
/* 049DEC 8006E9EC 0064102B */ sltu $v0, $v1, $a0
/* 049DF0 8006E9F0 54400001 */ bnel $v0, $zero, .L8006E9F8
/* 049DF4 8006E9F4 00681821 */ addu $v1, $v1, $t0
.L8006E9F8:
/* 049DF8 8006E9F8 00641823 */ subu $v1, $v1, $a0
.L8006E9FC:
/* 049DFC 8006E9FC 14A00002 */ bnez $a1, .L8006EA08
/* 049E00 8006EA00 0065001B */ divu $zero, $v1, $a1
/* 049E04 8006EA04 0007000D */ break 7
.L8006EA08:
/* 049E08 8006EA08 00001012 */ mflo $v0
/* 049E0C 8006EA0C 00001810 */ mfhi $v1
/* 049E10 8006EA10 00000000 */ nop
/* 049E14 8006EA14 00000000 */ nop
/* 049E18 8006EA18 00460018 */ mult $v0, $a2
/* 049E1C 8006EA1C 00031C00 */ sll $v1, $v1, 0x10
/* 049E20 8006EA20 3142FFFF */ andi $v0, $t2, 0xffff
/* 049E24 8006EA24 00621825 */ or $v1, $v1, $v0
/* 049E28 8006EA28 00002012 */ mflo $a0
/* 049E2C 8006EA2C 0064102B */ sltu $v0, $v1, $a0
/* 049E30 8006EA30 50400009 */ beql $v0, $zero, .L8006EA58
/* 049E34 8006EA34 00645023 */ subu $t2, $v1, $a0
/* 049E38 8006EA38 00681821 */ addu $v1, $v1, $t0
/* 049E3C 8006EA3C 0068102B */ sltu $v0, $v1, $t0
/* 049E40 8006EA40 14400005 */ bnez $v0, .L8006EA58
/* 049E44 8006EA44 00645023 */ subu $t2, $v1, $a0
/* 049E48 8006EA48 0064102B */ sltu $v0, $v1, $a0
/* 049E4C 8006EA4C 54400001 */ bnel $v0, $zero, .L8006EA54
/* 049E50 8006EA50 00681821 */ addu $v1, $v1, $t0
.L8006EA54:
/* 049E54 8006EA54 00645023 */ subu $t2, $v1, $a0
.L8006EA58:
/* 049E58 8006EA58 00082C02 */ srl $a1, $t0, 0x10
/* 049E5C 8006EA5C 14A00002 */ bnez $a1, .L8006EA68
/* 049E60 8006EA60 0145001B */ divu $zero, $t2, $a1
/* 049E64 8006EA64 0007000D */ break 7
.L8006EA68:
/* 049E68 8006EA68 00001012 */ mflo $v0
/* 049E6C 8006EA6C 00001810 */ mfhi $v1
/* 049E70 8006EA70 3106FFFF */ andi $a2, $t0, 0xffff
/* 049E74 8006EA74 00000000 */ nop
/* 049E78 8006EA78 00460018 */ mult $v0, $a2
/* 049E7C 8006EA7C 00031C00 */ sll $v1, $v1, 0x10
/* 049E80 8006EA80 000B1402 */ srl $v0, $t3, 0x10
/* 049E84 8006EA84 00621825 */ or $v1, $v1, $v0
/* 049E88 8006EA88 00002012 */ mflo $a0
/* 049E8C 8006EA8C 0064102B */ sltu $v0, $v1, $a0
/* 049E90 8006EA90 50400009 */ beql $v0, $zero, .L8006EAB8
/* 049E94 8006EA94 00641823 */ subu $v1, $v1, $a0
/* 049E98 8006EA98 00681821 */ addu $v1, $v1, $t0
/* 049E9C 8006EA9C 0068102B */ sltu $v0, $v1, $t0
/* 049EA0 8006EAA0 54400005 */ bnel $v0, $zero, .L8006EAB8
/* 049EA4 8006EAA4 00641823 */ subu $v1, $v1, $a0
/* 049EA8 8006EAA8 0064102B */ sltu $v0, $v1, $a0
/* 049EAC 8006EAAC 54400001 */ bnel $v0, $zero, .L8006EAB4
/* 049EB0 8006EAB0 00681821 */ addu $v1, $v1, $t0
.L8006EAB4:
/* 049EB4 8006EAB4 00641823 */ subu $v1, $v1, $a0
.L8006EAB8:
/* 049EB8 8006EAB8 14A00002 */ bnez $a1, .L8006EAC4
/* 049EBC 8006EABC 0065001B */ divu $zero, $v1, $a1
/* 049EC0 8006EAC0 0007000D */ break 7
.L8006EAC4:
/* 049EC4 8006EAC4 00001012 */ mflo $v0
/* 049EC8 8006EAC8 00001810 */ mfhi $v1
/* 049ECC 8006EACC 00000000 */ nop
/* 049ED0 8006EAD0 00000000 */ nop
/* 049ED4 8006EAD4 00460018 */ mult $v0, $a2
/* 049ED8 8006EAD8 00031C00 */ sll $v1, $v1, 0x10
/* 049EDC 8006EADC 3162FFFF */ andi $v0, $t3, 0xffff
/* 049EE0 8006EAE0 00621825 */ or $v1, $v1, $v0
/* 049EE4 8006EAE4 00002012 */ mflo $a0
/* 049EE8 8006EAE8 0064102B */ sltu $v0, $v1, $a0
/* 049EEC 8006EAEC 10400007 */ beqz $v0, .L8006EB0C
/* 049EF0 8006EAF0 00000000 */ nop
/* 049EF4 8006EAF4 00681821 */ addu $v1, $v1, $t0
/* 049EF8 8006EAF8 0068102B */ sltu $v0, $v1, $t0
/* 049EFC 8006EAFC 14400003 */ bnez $v0, .L8006EB0C
/* 049F00 8006EB00 0064102B */ sltu $v0, $v1, $a0
/* 049F04 8006EB04 54400001 */ bnel $v0, $zero, .L8006EB0C
/* 049F08 8006EB08 00681821 */ addu $v1, $v1, $t0
.L8006EB0C:
/* 049F0C 8006EB0C 13200087 */ beqz $t9, .L8006ED2C
/* 049F10 8006EB10 00645823 */ subu $t3, $v1, $a0
/* 049F14 8006EB14 01AB7806 */ srlv $t7, $t3, $t5
/* 049F18 8006EB18 0801BB49 */ j .L8006ED24
/* 049F1C 8006EB1C 0000702D */ daddu $t6, $zero, $zero
.L8006EB20:
/* 049F20 8006EB20 0149102B */ sltu $v0, $t2, $t1
/* 049F24 8006EB24 10400007 */ beqz $v0, .L8006EB44
/* 049F28 8006EB28 3402FFFF */ ori $v0, $zero, 0xffff
/* 049F2C 8006EB2C 00A0782D */ daddu $t7, $a1, $zero
/* 049F30 8006EB30 0140702D */ daddu $t6, $t2, $zero
/* 049F34 8006EB34 AFAE0000 */ sw $t6, ($sp)
/* 049F38 8006EB38 AFAF0004 */ sw $t7, 4($sp)
/* 049F3C 8006EB3C 0801BB4B */ j .L8006ED2C
/* 049F40 8006EB40 00000000 */ nop
.L8006EB44:
/* 049F44 8006EB44 0049102B */ sltu $v0, $v0, $t1
/* 049F48 8006EB48 14400005 */ bnez $v0, .L8006EB60
/* 049F4C 8006EB4C 0120202D */ daddu $a0, $t1, $zero
/* 049F50 8006EB50 2D220100 */ sltiu $v0, $t1, 0x100
/* 049F54 8006EB54 38420001 */ xori $v0, $v0, 1
/* 049F58 8006EB58 0801BADE */ j .L8006EB78
/* 049F5C 8006EB5C 000218C0 */ sll $v1, $v0, 3
.L8006EB60:
/* 049F60 8006EB60 3C0200FF */ lui $v0, 0xff
/* 049F64 8006EB64 3442FFFF */ ori $v0, $v0, 0xffff
/* 049F68 8006EB68 0049102B */ sltu $v0, $v0, $t1
/* 049F6C 8006EB6C 14400002 */ bnez $v0, .L8006EB78
/* 049F70 8006EB70 24030018 */ addiu $v1, $zero, 0x18
/* 049F74 8006EB74 24030010 */ addiu $v1, $zero, 0x10
.L8006EB78:
/* 049F78 8006EB78 00641006 */ srlv $v0, $a0, $v1
/* 049F7C 8006EB7C 3C01800A */ lui $at, 0x800a
/* 049F80 8006EB80 00220821 */ addu $at, $at, $v0
/* 049F84 8006EB84 9022A140 */ lbu $v0, -0x5ec0($at)
/* 049F88 8006EB88 00431021 */ addu $v0, $v0, $v1
/* 049F8C 8006EB8C 24030020 */ addiu $v1, $zero, 0x20
/* 049F90 8006EB90 00626823 */ subu $t5, $v1, $v0
/* 049F94 8006EB94 15A0000F */ bnez $t5, .L8006EBD4
/* 049F98 8006EB98 006DC023 */ subu $t8, $v1, $t5
/* 049F9C 8006EB9C 012A102B */ sltu $v0, $t1, $t2
/* 049FA0 8006EBA0 14400004 */ bnez $v0, .L8006EBB4
/* 049FA4 8006EBA4 01682023 */ subu $a0, $t3, $t0
/* 049FA8 8006EBA8 0168102B */ sltu $v0, $t3, $t0
/* 049FAC 8006EBAC 14400005 */ bnez $v0, .L8006EBC4
/* 049FB0 8006EBB0 00000000 */ nop
.L8006EBB4:
/* 049FB4 8006EBB4 01491823 */ subu $v1, $t2, $t1
/* 049FB8 8006EBB8 0164102B */ sltu $v0, $t3, $a0
/* 049FBC 8006EBBC 00625023 */ subu $t2, $v1, $v0
/* 049FC0 8006EBC0 0080582D */ daddu $t3, $a0, $zero
.L8006EBC4:
/* 049FC4 8006EBC4 13200059 */ beqz $t9, .L8006ED2C
/* 049FC8 8006EBC8 0160782D */ daddu $t7, $t3, $zero
/* 049FCC 8006EBCC 0801BB49 */ j .L8006ED24
/* 049FD0 8006EBD0 0140702D */ daddu $t6, $t2, $zero
.L8006EBD4:
/* 049FD4 8006EBD4 01A91804 */ sllv $v1, $t1, $t5
/* 049FD8 8006EBD8 03081006 */ srlv $v0, $t0, $t8
/* 049FDC 8006EBDC 00624825 */ or $t1, $v1, $v0
/* 049FE0 8006EBE0 01A84004 */ sllv $t0, $t0, $t5
/* 049FE4 8006EBE4 030A2006 */ srlv $a0, $t2, $t8
/* 049FE8 8006EBE8 01AA1804 */ sllv $v1, $t2, $t5
/* 049FEC 8006EBEC 030B1006 */ srlv $v0, $t3, $t8
/* 049FF0 8006EBF0 00625025 */ or $t2, $v1, $v0
/* 049FF4 8006EBF4 00093402 */ srl $a2, $t1, 0x10
/* 049FF8 8006EBF8 14C00002 */ bnez $a2, .L8006EC04
/* 049FFC 8006EBFC 0086001B */ divu $zero, $a0, $a2
/* 04A000 8006EC00 0007000D */ break 7
.L8006EC04:
/* 04A004 8006EC04 00003812 */ mflo $a3
/* 04A008 8006EC08 00001810 */ mfhi $v1
/* 04A00C 8006EC0C 312CFFFF */ andi $t4, $t1, 0xffff
/* 04A010 8006EC10 00000000 */ nop
/* 04A014 8006EC14 00EC0018 */ mult $a3, $t4
/* 04A018 8006EC18 000A1402 */ srl $v0, $t2, 0x10
/* 04A01C 8006EC1C 00031C00 */ sll $v1, $v1, 0x10
/* 04A020 8006EC20 00621825 */ or $v1, $v1, $v0
/* 04A024 8006EC24 00002812 */ mflo $a1
/* 04A028 8006EC28 0065102B */ sltu $v0, $v1, $a1
/* 04A02C 8006EC2C 1040000A */ beqz $v0, .L8006EC58
/* 04A030 8006EC30 01AB5804 */ sllv $t3, $t3, $t5
/* 04A034 8006EC34 00691821 */ addu $v1, $v1, $t1
/* 04A038 8006EC38 0069102B */ sltu $v0, $v1, $t1
/* 04A03C 8006EC3C 14400006 */ bnez $v0, .L8006EC58
/* 04A040 8006EC40 24E7FFFF */ addiu $a3, $a3, -1
/* 04A044 8006EC44 0065102B */ sltu $v0, $v1, $a1
/* 04A048 8006EC48 50400004 */ beql $v0, $zero, .L8006EC5C
/* 04A04C 8006EC4C 00651823 */ subu $v1, $v1, $a1
/* 04A050 8006EC50 24E7FFFF */ addiu $a3, $a3, -1
/* 04A054 8006EC54 00691821 */ addu $v1, $v1, $t1
.L8006EC58:
/* 04A058 8006EC58 00651823 */ subu $v1, $v1, $a1
.L8006EC5C:
/* 04A05C 8006EC5C 14C00002 */ bnez $a2, .L8006EC68
/* 04A060 8006EC60 0066001B */ divu $zero, $v1, $a2
/* 04A064 8006EC64 0007000D */ break 7
.L8006EC68:
/* 04A068 8006EC68 00002012 */ mflo $a0
/* 04A06C 8006EC6C 00001810 */ mfhi $v1
/* 04A070 8006EC70 00000000 */ nop
/* 04A074 8006EC74 00000000 */ nop
/* 04A078 8006EC78 008C0018 */ mult $a0, $t4
/* 04A07C 8006EC7C 3142FFFF */ andi $v0, $t2, 0xffff
/* 04A080 8006EC80 00031C00 */ sll $v1, $v1, 0x10
/* 04A084 8006EC84 00621825 */ or $v1, $v1, $v0
/* 04A088 8006EC88 00002812 */ mflo $a1
/* 04A08C 8006EC8C 0065102B */ sltu $v0, $v1, $a1
/* 04A090 8006EC90 5040000B */ beql $v0, $zero, .L8006ECC0
/* 04A094 8006EC94 00655023 */ subu $t2, $v1, $a1
/* 04A098 8006EC98 00691821 */ addu $v1, $v1, $t1
/* 04A09C 8006EC9C 0069102B */ sltu $v0, $v1, $t1
/* 04A0A0 8006ECA0 14400006 */ bnez $v0, .L8006ECBC
/* 04A0A4 8006ECA4 2484FFFF */ addiu $a0, $a0, -1
/* 04A0A8 8006ECA8 0065102B */ sltu $v0, $v1, $a1
/* 04A0AC 8006ECAC 10400004 */ beqz $v0, .L8006ECC0
/* 04A0B0 8006ECB0 00655023 */ subu $t2, $v1, $a1
/* 04A0B4 8006ECB4 2484FFFF */ addiu $a0, $a0, -1
/* 04A0B8 8006ECB8 00691821 */ addu $v1, $v1, $t1
.L8006ECBC:
/* 04A0BC 8006ECBC 00655023 */ subu $t2, $v1, $a1
.L8006ECC0:
/* 04A0C0 8006ECC0 00071400 */ sll $v0, $a3, 0x10
/* 04A0C4 8006ECC4 00441025 */ or $v0, $v0, $a0
/* 04A0C8 8006ECC8 00480019 */ multu $v0, $t0
/* 04A0CC 8006ECCC 00003010 */ mfhi $a2
/* 04A0D0 8006ECD0 0146102B */ sltu $v0, $t2, $a2
/* 04A0D4 8006ECD4 00002812 */ mflo $a1
/* 04A0D8 8006ECD8 54400005 */ bnel $v0, $zero, .L8006ECF0
/* 04A0DC 8006ECDC 00A82023 */ subu $a0, $a1, $t0
/* 04A0E0 8006ECE0 14CA0007 */ bne $a2, $t2, .L8006ED00
/* 04A0E4 8006ECE4 0165102B */ sltu $v0, $t3, $a1
/* 04A0E8 8006ECE8 10400005 */ beqz $v0, .L8006ED00
/* 04A0EC 8006ECEC 00A82023 */ subu $a0, $a1, $t0
.L8006ECF0:
/* 04A0F0 8006ECF0 00C91823 */ subu $v1, $a2, $t1
/* 04A0F4 8006ECF4 00A4102B */ sltu $v0, $a1, $a0
/* 04A0F8 8006ECF8 00623023 */ subu $a2, $v1, $v0
/* 04A0FC 8006ECFC 0080282D */ daddu $a1, $a0, $zero
.L8006ED00:
/* 04A100 8006ED00 1320000A */ beqz $t9, .L8006ED2C
/* 04A104 8006ED04 01651823 */ subu $v1, $t3, $a1
/* 04A108 8006ED08 01462023 */ subu $a0, $t2, $a2
/* 04A10C 8006ED0C 0163102B */ sltu $v0, $t3, $v1
/* 04A110 8006ED10 00825023 */ subu $t2, $a0, $v0
/* 04A114 8006ED14 030A1004 */ sllv $v0, $t2, $t8
/* 04A118 8006ED18 01A31806 */ srlv $v1, $v1, $t5
/* 04A11C 8006ED1C 00437825 */ or $t7, $v0, $v1
/* 04A120 8006ED20 01AA7006 */ srlv $t6, $t2, $t5
.L8006ED24:
/* 04A124 8006ED24 AF2E0000 */ sw $t6, ($t9)
/* 04A128 8006ED28 AF2F0004 */ sw $t7, 4($t9)
.L8006ED2C:
/* 04A12C 8006ED2C 8FA20000 */ lw $v0, ($sp)
/* 04A130 8006ED30 8FA30004 */ lw $v1, 4($sp)
/* 04A134 8006ED34 03E00008 */ jr $ra
/* 04A138 8006ED38 27BD0008 */ addiu $sp, $sp, 8
/* 04A13C 8006ED3C 00000000 */ nop
.set reorder

368
papermario/asm/code_49C70.s Normal file
View File

@ -0,0 +1,368 @@
# %s disassembly and split file
# generated by n64split v%s - N64 ROM splitter
# 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
.include "globals.inc"
.section .text8006E870, "ax"
func_8006E870:
/* 049C70 8006E870 27BDFFF8 */ addiu $sp, $sp, -8
/* 049C74 8006E874 00E0402D */ daddu $t0, $a3, $zero
/* 049C78 8006E878 00C0482D */ daddu $t1, $a2, $zero
/* 049C7C 8006E87C 00A0582D */ daddu $t3, $a1, $zero
/* 049C80 8006E880 0080502D */ daddu $t2, $a0, $zero
/* 049C84 8006E884 152000A6 */ bnez $t1, .L8006EB20
/* 049C88 8006E888 03A0C82D */ daddu $t9, $sp, $zero
/* 049C8C 8006E88C 0148102B */ sltu $v0, $t2, $t0
/* 049C90 8006E890 1040001D */ beqz $v0, .L8006E908
/* 049C94 8006E894 3402FFFF */ ori $v0, $zero, 0xffff
/* 049C98 8006E898 0048102B */ sltu $v0, $v0, $t0
/* 049C9C 8006E89C 14400005 */ bnez $v0, .L8006E8B4
/* 049CA0 8006E8A0 00E0302D */ daddu $a2, $a3, $zero
/* 049CA4 8006E8A4 2D020100 */ sltiu $v0, $t0, 0x100
/* 049CA8 8006E8A8 38420001 */ xori $v0, $v0, 1
/* 049CAC 8006E8AC 0801BA33 */ j .L8006E8CC
/* 049CB0 8006E8B0 000218C0 */ sll $v1, $v0, 3
.L8006E8B4:
/* 049CB4 8006E8B4 3C0200FF */ lui $v0, 0xff
/* 049CB8 8006E8B8 3442FFFF */ ori $v0, $v0, 0xffff
/* 049CBC 8006E8BC 0048102B */ sltu $v0, $v0, $t0
/* 049CC0 8006E8C0 14400002 */ bnez $v0, .L8006E8CC
/* 049CC4 8006E8C4 24030018 */ addiu $v1, $zero, 0x18
/* 049CC8 8006E8C8 24030010 */ addiu $v1, $zero, 0x10
.L8006E8CC:
/* 049CCC 8006E8CC 00661006 */ srlv $v0, $a2, $v1
/* 049CD0 8006E8D0 3C01800A */ lui $at, 0x800a
/* 049CD4 8006E8D4 00220821 */ addu $at, $at, $v0
/* 049CD8 8006E8D8 9022A140 */ lbu $v0, -0x5ec0($at)
/* 049CDC 8006E8DC 24040020 */ addiu $a0, $zero, 0x20
/* 049CE0 8006E8E0 00431021 */ addu $v0, $v0, $v1
/* 049CE4 8006E8E4 00826823 */ subu $t5, $a0, $v0
/* 049CE8 8006E8E8 11A0005B */ beqz $t5, .L8006EA58
/* 049CEC 8006E8EC 01AA1804 */ sllv $v1, $t2, $t5
/* 049CF0 8006E8F0 01A84004 */ sllv $t0, $t0, $t5
/* 049CF4 8006E8F4 008D1023 */ subu $v0, $a0, $t5
/* 049CF8 8006E8F8 004B1006 */ srlv $v0, $t3, $v0
/* 049CFC 8006E8FC 00625025 */ or $t2, $v1, $v0
/* 049D00 8006E900 0801BA96 */ j .L8006EA58
/* 049D04 8006E904 01AB5804 */ sllv $t3, $t3, $t5
.L8006E908:
/* 049D08 8006E908 15000008 */ bnez $t0, .L8006E92C
/* 049D0C 8006E90C 0048102B */ sltu $v0, $v0, $t0
/* 049D10 8006E910 24020001 */ addiu $v0, $zero, 1
/* 049D14 8006E914 15200002 */ bnez $t1, .L8006E920
/* 049D18 8006E918 0049001B */ divu $zero, $v0, $t1
/* 049D1C 8006E91C 0007000D */ break 7
.L8006E920:
/* 049D20 8006E920 00004012 */ mflo $t0
/* 049D24 8006E924 3402FFFF */ ori $v0, $zero, 0xffff
/* 049D28 8006E928 0048102B */ sltu $v0, $v0, $t0
.L8006E92C:
/* 049D2C 8006E92C 14400005 */ bnez $v0, .L8006E944
/* 049D30 8006E930 0100202D */ daddu $a0, $t0, $zero
/* 049D34 8006E934 2D020100 */ sltiu $v0, $t0, 0x100
/* 049D38 8006E938 38420001 */ xori $v0, $v0, 1
/* 049D3C 8006E93C 0801BA57 */ j .L8006E95C
/* 049D40 8006E940 000218C0 */ sll $v1, $v0, 3
.L8006E944:
/* 049D44 8006E944 3C0200FF */ lui $v0, 0xff
/* 049D48 8006E948 3442FFFF */ ori $v0, $v0, 0xffff
/* 049D4C 8006E94C 0048102B */ sltu $v0, $v0, $t0
/* 049D50 8006E950 14400002 */ bnez $v0, .L8006E95C
/* 049D54 8006E954 24030018 */ addiu $v1, $zero, 0x18
/* 049D58 8006E958 24030010 */ addiu $v1, $zero, 0x10
.L8006E95C:
/* 049D5C 8006E95C 00641006 */ srlv $v0, $a0, $v1
/* 049D60 8006E960 3C01800A */ lui $at, 0x800a
/* 049D64 8006E964 00220821 */ addu $at, $at, $v0
/* 049D68 8006E968 9022A140 */ lbu $v0, -0x5ec0($at)
/* 049D6C 8006E96C 00431021 */ addu $v0, $v0, $v1
/* 049D70 8006E970 24030020 */ addiu $v1, $zero, 0x20
/* 049D74 8006E974 00626823 */ subu $t5, $v1, $v0
/* 049D78 8006E978 15A00003 */ bnez $t5, .L8006E988
/* 049D7C 8006E97C 006DC023 */ subu $t8, $v1, $t5
/* 049D80 8006E980 0801BA96 */ j .L8006EA58
/* 049D84 8006E984 01485023 */ subu $t2, $t2, $t0
.L8006E988:
/* 049D88 8006E988 01A84004 */ sllv $t0, $t0, $t5
/* 049D8C 8006E98C 030A2006 */ srlv $a0, $t2, $t8
/* 049D90 8006E990 01AA1804 */ sllv $v1, $t2, $t5
/* 049D94 8006E994 030B1006 */ srlv $v0, $t3, $t8
/* 049D98 8006E998 00625025 */ or $t2, $v1, $v0
/* 049D9C 8006E99C 00082C02 */ srl $a1, $t0, 0x10
/* 049DA0 8006E9A0 14A00002 */ bnez $a1, .L8006E9AC
/* 049DA4 8006E9A4 0085001B */ divu $zero, $a0, $a1
/* 049DA8 8006E9A8 0007000D */ break 7
.L8006E9AC:
/* 049DAC 8006E9AC 00001012 */ mflo $v0
/* 049DB0 8006E9B0 00001810 */ mfhi $v1
/* 049DB4 8006E9B4 3106FFFF */ andi $a2, $t0, 0xffff
/* 049DB8 8006E9B8 00000000 */ nop
/* 049DBC 8006E9BC 00460018 */ mult $v0, $a2
/* 049DC0 8006E9C0 00031C00 */ sll $v1, $v1, 0x10
/* 049DC4 8006E9C4 000A1402 */ srl $v0, $t2, 0x10
/* 049DC8 8006E9C8 00621825 */ or $v1, $v1, $v0
/* 049DCC 8006E9CC 00002012 */ mflo $a0
/* 049DD0 8006E9D0 0064102B */ sltu $v0, $v1, $a0
/* 049DD4 8006E9D4 10400008 */ beqz $v0, .L8006E9F8
/* 049DD8 8006E9D8 01AB5804 */ sllv $t3, $t3, $t5
/* 049DDC 8006E9DC 00681821 */ addu $v1, $v1, $t0
/* 049DE0 8006E9E0 0068102B */ sltu $v0, $v1, $t0
/* 049DE4 8006E9E4 54400005 */ bnezl $v0, .L8006E9FC
/* 049DE8 8006E9E8 00641823 */ subu $v1, $v1, $a0
/* 049DEC 8006E9EC 0064102B */ sltu $v0, $v1, $a0
/* 049DF0 8006E9F0 54400001 */ bnezl $v0, .L8006E9F8
/* 049DF4 8006E9F4 00681821 */ addu $v1, $v1, $t0
.L8006E9F8:
/* 049DF8 8006E9F8 00641823 */ subu $v1, $v1, $a0
.L8006E9FC:
/* 049DFC 8006E9FC 14A00002 */ bnez $a1, .L8006EA08
/* 049E00 8006EA00 0065001B */ divu $zero, $v1, $a1
/* 049E04 8006EA04 0007000D */ break 7
.L8006EA08:
/* 049E08 8006EA08 00001012 */ mflo $v0
/* 049E0C 8006EA0C 00001810 */ mfhi $v1
/* 049E10 8006EA10 00000000 */ nop
/* 049E14 8006EA14 00000000 */ nop
/* 049E18 8006EA18 00460018 */ mult $v0, $a2
/* 049E1C 8006EA1C 00031C00 */ sll $v1, $v1, 0x10
/* 049E20 8006EA20 3142FFFF */ andi $v0, $t2, 0xffff
/* 049E24 8006EA24 00621825 */ or $v1, $v1, $v0
/* 049E28 8006EA28 00002012 */ mflo $a0
/* 049E2C 8006EA2C 0064102B */ sltu $v0, $v1, $a0
/* 049E30 8006EA30 50400009 */ beql $v0, $zero, .L8006EA58
/* 049E34 8006EA34 00645023 */ subu $t2, $v1, $a0
/* 049E38 8006EA38 00681821 */ addu $v1, $v1, $t0
/* 049E3C 8006EA3C 0068102B */ sltu $v0, $v1, $t0
/* 049E40 8006EA40 14400005 */ bnez $v0, .L8006EA58
/* 049E44 8006EA44 00645023 */ subu $t2, $v1, $a0
/* 049E48 8006EA48 0064102B */ sltu $v0, $v1, $a0
/* 049E4C 8006EA4C 54400001 */ bnezl $v0, .L8006EA54
/* 049E50 8006EA50 00681821 */ addu $v1, $v1, $t0
.L8006EA54:
/* 049E54 8006EA54 00645023 */ subu $t2, $v1, $a0
.L8006EA58:
/* 049E58 8006EA58 00082C02 */ srl $a1, $t0, 0x10
/* 049E5C 8006EA5C 14A00002 */ bnez $a1, .L8006EA68
/* 049E60 8006EA60 0145001B */ divu $zero, $t2, $a1
/* 049E64 8006EA64 0007000D */ break 7
.L8006EA68:
/* 049E68 8006EA68 00001012 */ mflo $v0
/* 049E6C 8006EA6C 00001810 */ mfhi $v1
/* 049E70 8006EA70 3106FFFF */ andi $a2, $t0, 0xffff
/* 049E74 8006EA74 00000000 */ nop
/* 049E78 8006EA78 00460018 */ mult $v0, $a2
/* 049E7C 8006EA7C 00031C00 */ sll $v1, $v1, 0x10
/* 049E80 8006EA80 000B1402 */ srl $v0, $t3, 0x10
/* 049E84 8006EA84 00621825 */ or $v1, $v1, $v0
/* 049E88 8006EA88 00002012 */ mflo $a0
/* 049E8C 8006EA8C 0064102B */ sltu $v0, $v1, $a0
/* 049E90 8006EA90 50400009 */ beql $v0, $zero, .L8006EAB8
/* 049E94 8006EA94 00641823 */ subu $v1, $v1, $a0
/* 049E98 8006EA98 00681821 */ addu $v1, $v1, $t0
/* 049E9C 8006EA9C 0068102B */ sltu $v0, $v1, $t0
/* 049EA0 8006EAA0 54400005 */ bnezl $v0, .L8006EAB8
/* 049EA4 8006EAA4 00641823 */ subu $v1, $v1, $a0
/* 049EA8 8006EAA8 0064102B */ sltu $v0, $v1, $a0
/* 049EAC 8006EAAC 54400001 */ bnezl $v0, .L8006EAB4
/* 049EB0 8006EAB0 00681821 */ addu $v1, $v1, $t0
.L8006EAB4:
/* 049EB4 8006EAB4 00641823 */ subu $v1, $v1, $a0
.L8006EAB8:
/* 049EB8 8006EAB8 14A00002 */ bnez $a1, .L8006EAC4
/* 049EBC 8006EABC 0065001B */ divu $zero, $v1, $a1
/* 049EC0 8006EAC0 0007000D */ break 7
.L8006EAC4:
/* 049EC4 8006EAC4 00001012 */ mflo $v0
/* 049EC8 8006EAC8 00001810 */ mfhi $v1
/* 049ECC 8006EACC 00000000 */ nop
/* 049ED0 8006EAD0 00000000 */ nop
/* 049ED4 8006EAD4 00460018 */ mult $v0, $a2
/* 049ED8 8006EAD8 00031C00 */ sll $v1, $v1, 0x10
/* 049EDC 8006EADC 3162FFFF */ andi $v0, $t3, 0xffff
/* 049EE0 8006EAE0 00621825 */ or $v1, $v1, $v0
/* 049EE4 8006EAE4 00002012 */ mflo $a0
/* 049EE8 8006EAE8 0064102B */ sltu $v0, $v1, $a0
/* 049EEC 8006EAEC 10400007 */ beqz $v0, .L8006EB0C
/* 049EF0 8006EAF0 00000000 */ nop
/* 049EF4 8006EAF4 00681821 */ addu $v1, $v1, $t0
/* 049EF8 8006EAF8 0068102B */ sltu $v0, $v1, $t0
/* 049EFC 8006EAFC 14400003 */ bnez $v0, .L8006EB0C
/* 049F00 8006EB00 0064102B */ sltu $v0, $v1, $a0
/* 049F04 8006EB04 54400001 */ bnezl $v0, .L8006EB0C
/* 049F08 8006EB08 00681821 */ addu $v1, $v1, $t0
.L8006EB0C:
/* 049F0C 8006EB0C 13200087 */ beqz $t9, .L8006ED2C
/* 049F10 8006EB10 00645823 */ subu $t3, $v1, $a0
/* 049F14 8006EB14 01AB7806 */ srlv $t7, $t3, $t5
/* 049F18 8006EB18 0801BB49 */ j .L8006ED24
/* 049F1C 8006EB1C 0000702D */ daddu $t6, $zero, $zero
.L8006EB20:
/* 049F20 8006EB20 0149102B */ sltu $v0, $t2, $t1
/* 049F24 8006EB24 10400007 */ beqz $v0, .L8006EB44
/* 049F28 8006EB28 3402FFFF */ ori $v0, $zero, 0xffff
/* 049F2C 8006EB2C 00A0782D */ daddu $t7, $a1, $zero
/* 049F30 8006EB30 0140702D */ daddu $t6, $t2, $zero
/* 049F34 8006EB34 AFAE0000 */ sw $t6, ($sp)
/* 049F38 8006EB38 AFAF0004 */ sw $t7, 4($sp)
/* 049F3C 8006EB3C 0801BB4B */ j .L8006ED2C
/* 049F40 8006EB40 00000000 */ nop
.L8006EB44:
/* 049F44 8006EB44 0049102B */ sltu $v0, $v0, $t1
/* 049F48 8006EB48 14400005 */ bnez $v0, .L8006EB60
/* 049F4C 8006EB4C 0120202D */ daddu $a0, $t1, $zero
/* 049F50 8006EB50 2D220100 */ sltiu $v0, $t1, 0x100
/* 049F54 8006EB54 38420001 */ xori $v0, $v0, 1
/* 049F58 8006EB58 0801BADE */ j .L8006EB78
/* 049F5C 8006EB5C 000218C0 */ sll $v1, $v0, 3
.L8006EB60:
/* 049F60 8006EB60 3C0200FF */ lui $v0, 0xff
/* 049F64 8006EB64 3442FFFF */ ori $v0, $v0, 0xffff
/* 049F68 8006EB68 0049102B */ sltu $v0, $v0, $t1
/* 049F6C 8006EB6C 14400002 */ bnez $v0, .L8006EB78
/* 049F70 8006EB70 24030018 */ addiu $v1, $zero, 0x18
/* 049F74 8006EB74 24030010 */ addiu $v1, $zero, 0x10
.L8006EB78:
/* 049F78 8006EB78 00641006 */ srlv $v0, $a0, $v1
/* 049F7C 8006EB7C 3C01800A */ lui $at, 0x800a
/* 049F80 8006EB80 00220821 */ addu $at, $at, $v0
/* 049F84 8006EB84 9022A140 */ lbu $v0, -0x5ec0($at)
/* 049F88 8006EB88 00431021 */ addu $v0, $v0, $v1
/* 049F8C 8006EB8C 24030020 */ addiu $v1, $zero, 0x20
/* 049F90 8006EB90 00626823 */ subu $t5, $v1, $v0
/* 049F94 8006EB94 15A0000F */ bnez $t5, .L8006EBD4
/* 049F98 8006EB98 006DC023 */ subu $t8, $v1, $t5
/* 049F9C 8006EB9C 012A102B */ sltu $v0, $t1, $t2
/* 049FA0 8006EBA0 14400004 */ bnez $v0, .L8006EBB4
/* 049FA4 8006EBA4 01682023 */ subu $a0, $t3, $t0
/* 049FA8 8006EBA8 0168102B */ sltu $v0, $t3, $t0
/* 049FAC 8006EBAC 14400005 */ bnez $v0, .L8006EBC4
/* 049FB0 8006EBB0 00000000 */ nop
.L8006EBB4:
/* 049FB4 8006EBB4 01491823 */ subu $v1, $t2, $t1
/* 049FB8 8006EBB8 0164102B */ sltu $v0, $t3, $a0
/* 049FBC 8006EBBC 00625023 */ subu $t2, $v1, $v0
/* 049FC0 8006EBC0 0080582D */ daddu $t3, $a0, $zero
.L8006EBC4:
/* 049FC4 8006EBC4 13200059 */ beqz $t9, .L8006ED2C
/* 049FC8 8006EBC8 0160782D */ daddu $t7, $t3, $zero
/* 049FCC 8006EBCC 0801BB49 */ j .L8006ED24
/* 049FD0 8006EBD0 0140702D */ daddu $t6, $t2, $zero
.L8006EBD4:
/* 049FD4 8006EBD4 01A91804 */ sllv $v1, $t1, $t5
/* 049FD8 8006EBD8 03081006 */ srlv $v0, $t0, $t8
/* 049FDC 8006EBDC 00624825 */ or $t1, $v1, $v0
/* 049FE0 8006EBE0 01A84004 */ sllv $t0, $t0, $t5
/* 049FE4 8006EBE4 030A2006 */ srlv $a0, $t2, $t8
/* 049FE8 8006EBE8 01AA1804 */ sllv $v1, $t2, $t5
/* 049FEC 8006EBEC 030B1006 */ srlv $v0, $t3, $t8
/* 049FF0 8006EBF0 00625025 */ or $t2, $v1, $v0
/* 049FF4 8006EBF4 00093402 */ srl $a2, $t1, 0x10
/* 049FF8 8006EBF8 14C00002 */ bnez $a2, .L8006EC04
/* 049FFC 8006EBFC 0086001B */ divu $zero, $a0, $a2
/* 04A000 8006EC00 0007000D */ break 7
.L8006EC04:
/* 04A004 8006EC04 00003812 */ mflo $a3
/* 04A008 8006EC08 00001810 */ mfhi $v1
/* 04A00C 8006EC0C 312CFFFF */ andi $t4, $t1, 0xffff
/* 04A010 8006EC10 00000000 */ nop
/* 04A014 8006EC14 00EC0018 */ mult $a3, $t4
/* 04A018 8006EC18 000A1402 */ srl $v0, $t2, 0x10
/* 04A01C 8006EC1C 00031C00 */ sll $v1, $v1, 0x10
/* 04A020 8006EC20 00621825 */ or $v1, $v1, $v0
/* 04A024 8006EC24 00002812 */ mflo $a1
/* 04A028 8006EC28 0065102B */ sltu $v0, $v1, $a1
/* 04A02C 8006EC2C 1040000A */ beqz $v0, .L8006EC58
/* 04A030 8006EC30 01AB5804 */ sllv $t3, $t3, $t5
/* 04A034 8006EC34 00691821 */ addu $v1, $v1, $t1
/* 04A038 8006EC38 0069102B */ sltu $v0, $v1, $t1
/* 04A03C 8006EC3C 14400006 */ bnez $v0, .L8006EC58
/* 04A040 8006EC40 24E7FFFF */ addiu $a3, $a3, -1
/* 04A044 8006EC44 0065102B */ sltu $v0, $v1, $a1
/* 04A048 8006EC48 50400004 */ beql $v0, $zero, .L8006EC5C
/* 04A04C 8006EC4C 00651823 */ subu $v1, $v1, $a1
/* 04A050 8006EC50 24E7FFFF */ addiu $a3, $a3, -1
/* 04A054 8006EC54 00691821 */ addu $v1, $v1, $t1
.L8006EC58:
/* 04A058 8006EC58 00651823 */ subu $v1, $v1, $a1
.L8006EC5C:
/* 04A05C 8006EC5C 14C00002 */ bnez $a2, .L8006EC68
/* 04A060 8006EC60 0066001B */ divu $zero, $v1, $a2
/* 04A064 8006EC64 0007000D */ break 7
.L8006EC68:
/* 04A068 8006EC68 00002012 */ mflo $a0
/* 04A06C 8006EC6C 00001810 */ mfhi $v1
/* 04A070 8006EC70 00000000 */ nop
/* 04A074 8006EC74 00000000 */ nop
/* 04A078 8006EC78 008C0018 */ mult $a0, $t4
/* 04A07C 8006EC7C 3142FFFF */ andi $v0, $t2, 0xffff
/* 04A080 8006EC80 00031C00 */ sll $v1, $v1, 0x10
/* 04A084 8006EC84 00621825 */ or $v1, $v1, $v0
/* 04A088 8006EC88 00002812 */ mflo $a1
/* 04A08C 8006EC8C 0065102B */ sltu $v0, $v1, $a1
/* 04A090 8006EC90 5040000B */ beql $v0, $zero, .L8006ECC0
/* 04A094 8006EC94 00655023 */ subu $t2, $v1, $a1
/* 04A098 8006EC98 00691821 */ addu $v1, $v1, $t1
/* 04A09C 8006EC9C 0069102B */ sltu $v0, $v1, $t1
/* 04A0A0 8006ECA0 14400006 */ bnez $v0, .L8006ECBC
/* 04A0A4 8006ECA4 2484FFFF */ addiu $a0, $a0, -1
/* 04A0A8 8006ECA8 0065102B */ sltu $v0, $v1, $a1
/* 04A0AC 8006ECAC 10400004 */ beqz $v0, .L8006ECC0
/* 04A0B0 8006ECB0 00655023 */ subu $t2, $v1, $a1
/* 04A0B4 8006ECB4 2484FFFF */ addiu $a0, $a0, -1
/* 04A0B8 8006ECB8 00691821 */ addu $v1, $v1, $t1
.L8006ECBC:
/* 04A0BC 8006ECBC 00655023 */ subu $t2, $v1, $a1
.L8006ECC0:
/* 04A0C0 8006ECC0 00071400 */ sll $v0, $a3, 0x10
/* 04A0C4 8006ECC4 00441025 */ or $v0, $v0, $a0
/* 04A0C8 8006ECC8 00480019 */ multu $v0, $t0
/* 04A0CC 8006ECCC 00003010 */ mfhi $a2
/* 04A0D0 8006ECD0 0146102B */ sltu $v0, $t2, $a2
/* 04A0D4 8006ECD4 00002812 */ mflo $a1
/* 04A0D8 8006ECD8 54400005 */ bnezl $v0, .L8006ECF0
/* 04A0DC 8006ECDC 00A82023 */ subu $a0, $a1, $t0
/* 04A0E0 8006ECE0 14CA0007 */ bne $a2, $t2, .L8006ED00
/* 04A0E4 8006ECE4 0165102B */ sltu $v0, $t3, $a1
/* 04A0E8 8006ECE8 10400005 */ beqz $v0, .L8006ED00
/* 04A0EC 8006ECEC 00A82023 */ subu $a0, $a1, $t0
.L8006ECF0:
/* 04A0F0 8006ECF0 00C91823 */ subu $v1, $a2, $t1
/* 04A0F4 8006ECF4 00A4102B */ sltu $v0, $a1, $a0
/* 04A0F8 8006ECF8 00623023 */ subu $a2, $v1, $v0
/* 04A0FC 8006ECFC 0080282D */ daddu $a1, $a0, $zero
.L8006ED00:
/* 04A100 8006ED00 1320000A */ beqz $t9, .L8006ED2C
/* 04A104 8006ED04 01651823 */ subu $v1, $t3, $a1
/* 04A108 8006ED08 01462023 */ subu $a0, $t2, $a2
/* 04A10C 8006ED0C 0163102B */ sltu $v0, $t3, $v1
/* 04A110 8006ED10 00825023 */ subu $t2, $a0, $v0
/* 04A114 8006ED14 030A1004 */ sllv $v0, $t2, $t8
/* 04A118 8006ED18 01A31806 */ srlv $v1, $v1, $t5
/* 04A11C 8006ED1C 00437825 */ or $t7, $v0, $v1
/* 04A120 8006ED20 01AA7006 */ srlv $t6, $t2, $t5
.L8006ED24:
/* 04A124 8006ED24 AF2E0000 */ sw $t6, ($t9)
/* 04A128 8006ED28 AF2F0004 */ sw $t7, 4($t9)
.L8006ED2C:
.L8006ED2C:
/* 04A12C 8006ED2C 8FA20000 */ lw $v0, ($sp)
/* 04A130 8006ED30 8FA30004 */ lw $v1, 4($sp)
/* 04A134 8006ED34 03E00008 */ jr $ra
/* 04A138 8006ED38 27BD0008 */ addiu $sp, $sp, 8
/* 04A13C 8006ED3C 00000000 */ nop

189
papermario/asm/code_6000.s Normal file
View File

@ -0,0 +1,189 @@
# %s disassembly and split file
# generated by n64split v%s - N64 ROM splitter
# 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
.include "globals.inc"
.section .text8002AC00, "ax"
general_heap_create:
/* 006000 8002AC00 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 006004 8002AC04 3C050005 */ lui $a1, 5
/* 006008 8002AC08 3C048030 */ lui $a0, 0x8030
/* 00600C 8002AC0C 2484B800 */ addiu $a0, $a0, -0x4800
/* 006010 8002AC10 AFBF0010 */ sw $ra, 0x10($sp)
/* 006014 8002AC14 0C00A40C */ jal _heap_create
/* 006018 8002AC18 34A54000 */ ori $a1, $a1, 0x4000
/* 00601C 8002AC1C 8FBF0010 */ lw $ra, 0x10($sp)
/* 006020 8002AC20 03E00008 */ jr $ra
/* 006024 8002AC24 27BD0018 */ addiu $sp, $sp, 0x18
general_heap_malloc:
/* 006028 8002AC28 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 00602C 8002AC2C 0080282D */ daddu $a1, $a0, $zero
/* 006030 8002AC30 3C048030 */ lui $a0, 0x8030
/* 006034 8002AC34 2484B800 */ addiu $a0, $a0, -0x4800
/* 006038 8002AC38 AFBF0010 */ sw $ra, 0x10($sp)
/* 00603C 8002AC3C 0C00A41B */ jal _heap_malloc
/* 006040 8002AC40 00000000 */ nop
/* 006044 8002AC44 8FBF0010 */ lw $ra, 0x10($sp)
/* 006048 8002AC48 03E00008 */ jr $ra
/* 00604C 8002AC4C 27BD0018 */ addiu $sp, $sp, 0x18
general_heap_malloc_tail:
/* 006050 8002AC50 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 006054 8002AC54 0080282D */ daddu $a1, $a0, $zero
/* 006058 8002AC58 3C048030 */ lui $a0, 0x8030
/* 00605C 8002AC5C 2484B800 */ addiu $a0, $a0, -0x4800
/* 006060 8002AC60 AFBF0010 */ sw $ra, 0x10($sp)
/* 006064 8002AC64 0C00A459 */ jal _heap_malloc_tail
/* 006068 8002AC68 00000000 */ nop
/* 00606C 8002AC6C 8FBF0010 */ lw $ra, 0x10($sp)
/* 006070 8002AC70 03E00008 */ jr $ra
/* 006074 8002AC74 27BD0018 */ addiu $sp, $sp, 0x18
general_heap_free:
/* 006078 8002AC78 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 00607C 8002AC7C 0080282D */ daddu $a1, $a0, $zero
/* 006080 8002AC80 3C048030 */ lui $a0, 0x8030
/* 006084 8002AC84 2484B800 */ addiu $a0, $a0, -0x4800
/* 006088 8002AC88 AFBF0010 */ sw $ra, 0x10($sp)
/* 00608C 8002AC8C 0C00A487 */ jal _heap_free
/* 006090 8002AC90 00000000 */ nop
/* 006094 8002AC94 8FBF0010 */ lw $ra, 0x10($sp)
/* 006098 8002AC98 03E00008 */ jr $ra
/* 00609C 8002AC9C 27BD0018 */ addiu $sp, $sp, 0x18
battle_heap_create:
/* 0060A0 8002ACA0 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 0060A4 8002ACA4 AFBF0010 */ sw $ra, 0x10($sp)
/* 0060A8 8002ACA8 3C050002 */ lui $a1, 2
/* 0060AC 8002ACAC 3C04803E */ lui $a0, 0x803e
/* 0060B0 8002ACB0 2484A800 */ addiu $a0, $a0, -0x5800
/* 0060B4 8002ACB4 0C00A40C */ jal _heap_create
/* 0060B8 8002ACB8 34A55800 */ ori $a1, $a1, 0x5800
/* 0060BC 8002ACBC 0040202D */ daddu $a0, $v0, $zero
/* 0060C0 8002ACC0 2402FFFF */ addiu $v0, $zero, -1
/* 0060C4 8002ACC4 0040182D */ daddu $v1, $v0, $zero
/* 0060C8 8002ACC8 54830001 */ bnel $a0, $v1, .L8002ACD0
/* 0060CC 8002ACCC 0000102D */ daddu $v0, $zero, $zero
.L8002ACD0:
/* 0060D0 8002ACD0 8FBF0010 */ lw $ra, 0x10($sp)
/* 0060D4 8002ACD4 03E00008 */ jr $ra
/* 0060D8 8002ACD8 27BD0018 */ addiu $sp, $sp, 0x18
func_8002ACDC:
/* 0060DC 8002ACDC 03E00008 */ jr $ra
/* 0060E0 8002ACE0 0000102D */ daddu $v0, $zero, $zero
heap_malloc:
/* 0060E4 8002ACE4 3C028007 */ lui $v0, 0x8007
/* 0060E8 8002ACE8 8C42419C */ lw $v0, 0x419c($v0)
/* 0060EC 8002ACEC 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 0060F0 8002ACF0 AFBF0010 */ sw $ra, 0x10($sp)
/* 0060F4 8002ACF4 80420070 */ lb $v0, 0x70($v0)
/* 0060F8 8002ACF8 10400007 */ beqz $v0, .L8002AD18
/* 0060FC 8002ACFC 0080282D */ daddu $a1, $a0, $zero
/* 006100 8002AD00 3C04803E */ lui $a0, 0x803e
/* 006104 8002AD04 2484A800 */ addiu $a0, $a0, -0x5800
/* 006108 8002AD08 0C00A41B */ jal _heap_malloc
/* 00610C 8002AD0C 00000000 */ nop
/* 006110 8002AD10 0800AB48 */ j .L8002AD20
/* 006114 8002AD14 00000000 */ nop
.L8002AD18:
/* 006118 8002AD18 0C00AB0A */ jal general_heap_malloc
/* 00611C 8002AD1C 00A0202D */ daddu $a0, $a1, $zero
.L8002AD20:
/* 006120 8002AD20 8FBF0010 */ lw $ra, 0x10($sp)
/* 006124 8002AD24 03E00008 */ jr $ra
/* 006128 8002AD28 27BD0018 */ addiu $sp, $sp, 0x18
heap_free:
/* 00612C 8002AD2C 3C028007 */ lui $v0, 0x8007
/* 006130 8002AD30 8C42419C */ lw $v0, 0x419c($v0)
/* 006134 8002AD34 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 006138 8002AD38 AFBF0010 */ sw $ra, 0x10($sp)
/* 00613C 8002AD3C 80420070 */ lb $v0, 0x70($v0)
/* 006140 8002AD40 14400005 */ bnez $v0, .L8002AD58
/* 006144 8002AD44 0080282D */ daddu $a1, $a0, $zero
/* 006148 8002AD48 0C00AB1E */ jal general_heap_free
/* 00614C 8002AD4C 00000000 */ nop
/* 006150 8002AD50 0800AB5A */ j .L8002AD68
/* 006154 8002AD54 00000000 */ nop
.L8002AD58:
/* 006158 8002AD58 3C04803E */ lui $a0, 0x803e
/* 00615C 8002AD5C 2484A800 */ addiu $a0, $a0, -0x5800
/* 006160 8002AD60 0C00A487 */ jal _heap_free
/* 006164 8002AD64 00000000 */ nop
.L8002AD68:
/* 006168 8002AD68 8FBF0010 */ lw $ra, 0x10($sp)
/* 00616C 8002AD6C 03E00008 */ jr $ra
/* 006170 8002AD70 27BD0018 */ addiu $sp, $sp, 0x18
collision_heap_create:
/* 006174 8002AD74 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 006178 8002AD78 AFBF0010 */ sw $ra, 0x10($sp)
/* 00617C 8002AD7C 3C050001 */ lui $a1, 1
/* 006180 8002AD80 3C048027 */ lui $a0, 0x8027
/* 006184 8002AD84 24848000 */ addiu $a0, $a0, -0x8000
/* 006188 8002AD88 0C00A40C */ jal _heap_create
/* 00618C 8002AD8C 34A58000 */ ori $a1, $a1, 0x8000
/* 006190 8002AD90 0040202D */ daddu $a0, $v0, $zero
/* 006194 8002AD94 2402FFFF */ addiu $v0, $zero, -1
/* 006198 8002AD98 0040182D */ daddu $v1, $v0, $zero
/* 00619C 8002AD9C 54830001 */ bnel $a0, $v1, .L8002ADA4
/* 0061A0 8002ADA0 0000102D */ daddu $v0, $zero, $zero
.L8002ADA4:
/* 0061A4 8002ADA4 8FBF0010 */ lw $ra, 0x10($sp)
/* 0061A8 8002ADA8 03E00008 */ jr $ra
/* 0061AC 8002ADAC 27BD0018 */ addiu $sp, $sp, 0x18
collision_heap_malloc:
/* 0061B0 8002ADB0 3C028007 */ lui $v0, 0x8007
/* 0061B4 8002ADB4 8C42419C */ lw $v0, 0x419c($v0)
/* 0061B8 8002ADB8 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 0061BC 8002ADBC AFBF0010 */ sw $ra, 0x10($sp)
/* 0061C0 8002ADC0 80420070 */ lb $v0, 0x70($v0)
/* 0061C4 8002ADC4 0080282D */ daddu $a1, $a0, $zero
/* 0061C8 8002ADC8 3C048027 */ lui $a0, 0x8027
/* 0061CC 8002ADCC 24848000 */ addiu $a0, $a0, -0x8000
/* 0061D0 8002ADD0 10400003 */ beqz $v0, .L8002ADE0
/* 0061D4 8002ADD4 00000000 */ nop
/* 0061D8 8002ADD8 3C04803E */ lui $a0, 0x803e
/* 0061DC 8002ADDC 2484A800 */ addiu $a0, $a0, -0x5800
.L8002ADE0:
/* 0061E0 8002ADE0 0C00A41B */ jal _heap_malloc
/* 0061E4 8002ADE4 00000000 */ nop
/* 0061E8 8002ADE8 8FBF0010 */ lw $ra, 0x10($sp)
/* 0061EC 8002ADEC 03E00008 */ jr $ra
/* 0061F0 8002ADF0 27BD0018 */ addiu $sp, $sp, 0x18
collision_heap_free:
/* 0061F4 8002ADF4 3C028007 */ lui $v0, 0x8007
/* 0061F8 8002ADF8 8C42419C */ lw $v0, 0x419c($v0)
/* 0061FC 8002ADFC 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 006200 8002AE00 AFBF0010 */ sw $ra, 0x10($sp)
/* 006204 8002AE04 80420070 */ lb $v0, 0x70($v0)
/* 006208 8002AE08 0080282D */ daddu $a1, $a0, $zero
/* 00620C 8002AE0C 3C04803E */ lui $a0, 0x803e
/* 006210 8002AE10 2484A800 */ addiu $a0, $a0, -0x5800
/* 006214 8002AE14 14400003 */ bnez $v0, .L8002AE24
/* 006218 8002AE18 00000000 */ nop
/* 00621C 8002AE1C 3C048027 */ lui $a0, 0x8027
/* 006220 8002AE20 24848000 */ addiu $a0, $a0, -0x8000
.L8002AE24:
/* 006224 8002AE24 0C00A487 */ jal _heap_free
/* 006228 8002AE28 00000000 */ nop
/* 00622C 8002AE2C 8FBF0010 */ lw $ra, 0x10($sp)
/* 006230 8002AE30 03E00008 */ jr $ra
/* 006234 8002AE34 27BD0018 */ addiu $sp, $sp, 0x18
/* 006238 8002AE38 00000000 */ nop
/* 00623C 8002AE3C 00000000 */ nop

View File

@ -0,0 +1,859 @@
# %s disassembly and split file
# generated by n64split v%s - N64 ROM splitter
# 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
.include "globals.inc"
.section .text80281C20, "ax"
/* 7E2AA0 80281C20 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 7E2AA4 80281C24 AFB10014 */ sw $s1, 0x14($sp)
/* 7E2AA8 80281C28 0080882D */ daddu $s1, $a0, $zero
/* 7E2AAC 80281C2C AFBF0018 */ sw $ra, 0x18($sp)
/* 7E2AB0 80281C30 AFB00010 */ sw $s0, 0x10($sp)
/* 7E2AB4 80281C34 8E30000C */ lw $s0, 0xc($s1)
/* 7E2AB8 80281C38 8E050000 */ lw $a1, ($s0)
/* 7E2ABC 80281C3C 0C0B1EAF */ jal get_variable
/* 7E2AC0 80281C40 26100004 */ addiu $s0, $s0, 4
/* 7E2AC4 80281C44 0220202D */ daddu $a0, $s1, $zero
/* 7E2AC8 80281C48 8E050000 */ lw $a1, ($s0)
/* 7E2ACC 80281C4C 0C0B1EAF */ jal get_variable
/* 7E2AD0 80281C50 0040802D */ daddu $s0, $v0, $zero
/* 7E2AD4 80281C54 0200202D */ daddu $a0, $s0, $zero
/* 7E2AD8 80281C58 0C03BD05 */ jal func_800EF414
/* 7E2ADC 80281C5C 0040282D */ daddu $a1, $v0, $zero
/* 7E2AE0 80281C60 44806000 */ mtc1 $zero, $f12
/* 7E2AE4 80281C64 0C03BCE5 */ jal func_800EF394
/* 7E2AE8 80281C68 00000000 */ nop
/* 7E2AEC 80281C6C 8FBF0018 */ lw $ra, 0x18($sp)
/* 7E2AF0 80281C70 8FB10014 */ lw $s1, 0x14($sp)
/* 7E2AF4 80281C74 8FB00010 */ lw $s0, 0x10($sp)
/* 7E2AF8 80281C78 24020002 */ addiu $v0, $zero, 2
/* 7E2AFC 80281C7C 03E00008 */ jr $ra
/* 7E2B00 80281C80 27BD0020 */ addiu $sp, $sp, 0x20
/* 7E2B04 80281C84 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 7E2B08 80281C88 AFBF0010 */ sw $ra, 0x10($sp)
/* 7E2B0C 80281C8C 0C03BCF9 */ jal func_800EF3E4
/* 7E2B10 80281C90 00000000 */ nop
/* 7E2B14 80281C94 0C03BCE9 */ jal func_800EF3A4
/* 7E2B18 80281C98 00000000 */ nop
/* 7E2B1C 80281C9C 8FBF0010 */ lw $ra, 0x10($sp)
/* 7E2B20 80281CA0 24020002 */ addiu $v0, $zero, 2
/* 7E2B24 80281CA4 03E00008 */ jr $ra
/* 7E2B28 80281CA8 27BD0018 */ addiu $sp, $sp, 0x18
MakeDoorAdvanced:
/* 7E2B2C 80281CAC 27BDFFA8 */ addiu $sp, $sp, -0x58
/* 7E2B30 80281CB0 AFB10034 */ sw $s1, 0x34($sp)
/* 7E2B34 80281CB4 0080882D */ daddu $s1, $a0, $zero
/* 7E2B38 80281CB8 AFBF0054 */ sw $ra, 0x54($sp)
/* 7E2B3C 80281CBC AFBE0050 */ sw $fp, 0x50($sp)
/* 7E2B40 80281CC0 AFB7004C */ sw $s7, 0x4c($sp)
/* 7E2B44 80281CC4 AFB60048 */ sw $s6, 0x48($sp)
/* 7E2B48 80281CC8 AFB50044 */ sw $s5, 0x44($sp)
/* 7E2B4C 80281CCC AFB40040 */ sw $s4, 0x40($sp)
/* 7E2B50 80281CD0 AFB3003C */ sw $s3, 0x3c($sp)
/* 7E2B54 80281CD4 AFB20038 */ sw $s2, 0x38($sp)
/* 7E2B58 80281CD8 AFB00030 */ sw $s0, 0x30($sp)
/* 7E2B5C 80281CDC 8E30000C */ lw $s0, 0xc($s1)
/* 7E2B60 80281CE0 0C00AB39 */ jal heap_malloc
/* 7E2B64 80281CE4 24040064 */ addiu $a0, $zero, 0x64
/* 7E2B68 80281CE8 0220202D */ daddu $a0, $s1, $zero
/* 7E2B6C 80281CEC 0040902D */ daddu $s2, $v0, $zero
/* 7E2B70 80281CF0 AE400000 */ sw $zero, ($s2)
/* 7E2B74 80281CF4 8E050000 */ lw $a1, ($s0)
/* 7E2B78 80281CF8 0C0B1EAF */ jal get_variable
/* 7E2B7C 80281CFC 26100004 */ addiu $s0, $s0, 4
/* 7E2B80 80281D00 0040982D */ daddu $s3, $v0, $zero
/* 7E2B84 80281D04 32620FFF */ andi $v0, $s3, 0xfff
/* 7E2B88 80281D08 AE420004 */ sw $v0, 4($s2)
/* 7E2B8C 80281D0C 3262F000 */ andi $v0, $s3, 0xf000
/* 7E2B90 80281D10 00021303 */ sra $v0, $v0, 0xc
/* 7E2B94 80281D14 A6420008 */ sh $v0, 8($s2)
/* 7E2B98 80281D18 A640000A */ sh $zero, 0xa($s2)
/* 7E2B9C 80281D1C 8E050000 */ lw $a1, ($s0)
/* 7E2BA0 80281D20 26100004 */ addiu $s0, $s0, 4
/* 7E2BA4 80281D24 0C0B1EAF */ jal get_variable
/* 7E2BA8 80281D28 0220202D */ daddu $a0, $s1, $zero
/* 7E2BAC 80281D2C 8E050000 */ lw $a1, ($s0)
/* 7E2BB0 80281D30 26100004 */ addiu $s0, $s0, 4
/* 7E2BB4 80281D34 0220202D */ daddu $a0, $s1, $zero
/* 7E2BB8 80281D38 0C0B1EAF */ jal get_variable
/* 7E2BBC 80281D3C AFA2002C */ sw $v0, 0x2c($sp)
/* 7E2BC0 80281D40 8E050000 */ lw $a1, ($s0)
/* 7E2BC4 80281D44 26100004 */ addiu $s0, $s0, 4
/* 7E2BC8 80281D48 0220202D */ daddu $a0, $s1, $zero
/* 7E2BCC 80281D4C 0C0B1EAF */ jal get_variable
/* 7E2BD0 80281D50 0040F02D */ daddu $fp, $v0, $zero
/* 7E2BD4 80281D54 8E050000 */ lw $a1, ($s0)
/* 7E2BD8 80281D58 26100004 */ addiu $s0, $s0, 4
/* 7E2BDC 80281D5C 0220202D */ daddu $a0, $s1, $zero
/* 7E2BE0 80281D60 0C0B1EAF */ jal get_variable
/* 7E2BE4 80281D64 0040A82D */ daddu $s5, $v0, $zero
/* 7E2BE8 80281D68 8E050000 */ lw $a1, ($s0)
/* 7E2BEC 80281D6C 26100004 */ addiu $s0, $s0, 4
/* 7E2BF0 80281D70 0220202D */ daddu $a0, $s1, $zero
/* 7E2BF4 80281D74 0C0B1EAF */ jal get_variable
/* 7E2BF8 80281D78 0040B82D */ daddu $s7, $v0, $zero
/* 7E2BFC 80281D7C 0040A02D */ daddu $s4, $v0, $zero
/* 7E2C00 80281D80 AE540060 */ sw $s4, 0x60($s2)
/* 7E2C04 80281D84 8E050000 */ lw $a1, ($s0)
/* 7E2C08 80281D88 26100004 */ addiu $s0, $s0, 4
/* 7E2C0C 80281D8C 0C0B1EAF */ jal get_variable
/* 7E2C10 80281D90 0220202D */ daddu $a0, $s1, $zero
/* 7E2C14 80281D94 8E050000 */ lw $a1, ($s0)
/* 7E2C18 80281D98 26100004 */ addiu $s0, $s0, 4
/* 7E2C1C 80281D9C 0220202D */ daddu $a0, $s1, $zero
/* 7E2C20 80281DA0 0C0B1EAF */ jal get_variable
/* 7E2C24 80281DA4 0040B02D */ daddu $s6, $v0, $zero
/* 7E2C28 80281DA8 AE42003C */ sw $v0, 0x3c($s2)
/* 7E2C2C 80281DAC 8E050000 */ lw $a1, ($s0)
/* 7E2C30 80281DB0 0C0B1EAF */ jal get_variable
/* 7E2C34 80281DB4 0220202D */ daddu $a0, $s1, $zero
/* 7E2C38 80281DB8 12A00003 */ beqz $s5, .L80281DC8
/* 7E2C3C 80281DBC AE42005C */ sw $v0, 0x5c($s2)
/* 7E2C40 80281DC0 36730800 */ ori $s3, $s3, 0x800
/* 7E2C44 80281DC4 AE530004 */ sw $s3, 4($s2)
.L80281DC8:
/* 7E2C48 80281DC8 0280202D */ daddu $a0, $s4, $zero
/* 7E2C4C 80281DCC 27A50018 */ addiu $a1, $sp, 0x18
/* 7E2C50 80281DD0 27B0001C */ addiu $s0, $sp, 0x1c
/* 7E2C54 80281DD4 0200302D */ daddu $a2, $s0, $zero
/* 7E2C58 80281DD8 0C016F84 */ jal get_collider_center
/* 7E2C5C 80281DDC 27A70020 */ addiu $a3, $sp, 0x20
/* 7E2C60 80281DE0 0280202D */ daddu $a0, $s4, $zero
/* 7E2C64 80281DE4 27A50024 */ addiu $a1, $sp, 0x24
/* 7E2C68 80281DE8 0200302D */ daddu $a2, $s0, $zero
/* 7E2C6C 80281DEC 0C016F76 */ jal func_8005BDD8
/* 7E2C70 80281DF0 27A70028 */ addiu $a3, $sp, 0x28
/* 7E2C74 80281DF4 326300FF */ andi $v1, $s3, 0xff
/* 7E2C78 80281DF8 2C620008 */ sltiu $v0, $v1, 8
/* 7E2C7C 80281DFC 104000F0 */ beqz $v0, .L802821C0
/* 7E2C80 80281E00 00031080 */ sll $v0, $v1, 2
/* 7E2C84 80281E04 3C018028 */ lui $at, 0x8028
/* 7E2C88 80281E08 00220821 */ addu $at, $at, $v0
/* 7E2C8C 80281E0C 8C226500 */ lw $v0, 0x6500($at)
/* 7E2C90 80281E10 00400008 */ jr $v0
/* 7E2C94 80281E14 00000000 */ nop
/* 7E2C98 80281E18 C7AA0024 */ lwc1 $f10, 0x24($sp)
/* 7E2C9C 80281E1C 3C0141F0 */ lui $at, 0x41f0
/* 7E2CA0 80281E20 44811000 */ mtc1 $at, $f2
/* 7E2CA4 80281E24 00000000 */ nop
/* 7E2CA8 80281E28 46025302 */ mul.s $f12, $f10, $f2
/* 7E2CAC 80281E2C 00000000 */ nop
/* 7E2CB0 80281E30 C7A60028 */ lwc1 $f6, 0x28($sp)
/* 7E2CB4 80281E34 3C0141A0 */ lui $at, 0x41a0
/* 7E2CB8 80281E38 44810000 */ mtc1 $at, $f0
/* 7E2CBC 80281E3C 00000000 */ nop
/* 7E2CC0 80281E40 46003102 */ mul.s $f4, $f6, $f0
/* 7E2CC4 80281E44 00000000 */ nop
/* 7E2CC8 80281E48 46023182 */ mul.s $f6, $f6, $f2
/* 7E2CCC 80281E4C 00000000 */ nop
/* 7E2CD0 80281E50 46005282 */ mul.s $f10, $f10, $f0
/* 7E2CD4 80281E54 00000000 */ nop
/* 7E2CD8 80281E58 C7A20018 */ lwc1 $f2, 0x18($sp)
/* 7E2CDC 80281E5C 460C1200 */ add.s $f8, $f2, $f12
/* 7E2CE0 80281E60 460C1081 */ sub.s $f2, $f2, $f12
/* 7E2CE4 80281E64 46044201 */ sub.s $f8, $f8, $f4
/* 7E2CE8 80281E68 C7A00020 */ lwc1 $f0, 0x20($sp)
/* 7E2CEC 80281E6C 46060100 */ add.s $f4, $f0, $f6
/* 7E2CF0 80281E70 46060001 */ sub.s $f0, $f0, $f6
/* 7E2CF4 80281E74 E6420014 */ swc1 $f2, 0x14($s2)
/* 7E2CF8 80281E78 080A0819 */ j .L80282064
/* 7E2CFC 80281E7C 460A2100 */ add.s $f4, $f4, $f10
/* 7E2D00 80281E80 C7A80024 */ lwc1 $f8, 0x24($sp)
/* 7E2D04 80281E84 3C014270 */ lui $at, 0x4270
/* 7E2D08 80281E88 44812000 */ mtc1 $at, $f4
/* 7E2D0C 80281E8C 00000000 */ nop
/* 7E2D10 80281E90 46044302 */ mul.s $f12, $f8, $f4
/* 7E2D14 80281E94 00000000 */ nop
/* 7E2D18 80281E98 C7A60028 */ lwc1 $f6, 0x28($sp)
/* 7E2D1C 80281E9C 3C0141A0 */ lui $at, 0x41a0
/* 7E2D20 80281EA0 44815000 */ mtc1 $at, $f10
/* 7E2D24 80281EA4 00000000 */ nop
/* 7E2D28 80281EA8 460A3382 */ mul.s $f14, $f6, $f10
/* 7E2D2C 80281EAC 00000000 */ nop
/* 7E2D30 80281EB0 46043102 */ mul.s $f4, $f6, $f4
/* 7E2D34 80281EB4 00000000 */ nop
/* 7E2D38 80281EB8 460A4282 */ mul.s $f10, $f8, $f10
/* 7E2D3C 80281EBC 00000000 */ nop
/* 7E2D40 80281EC0 3C0141F0 */ lui $at, 0x41f0
/* 7E2D44 80281EC4 44810000 */ mtc1 $at, $f0
/* 7E2D48 80281EC8 00000000 */ nop
/* 7E2D4C 80281ECC 46004202 */ mul.s $f8, $f8, $f0
/* 7E2D50 80281ED0 00000000 */ nop
/* 7E2D54 80281ED4 46003182 */ mul.s $f6, $f6, $f0
/* 7E2D58 80281ED8 00000000 */ nop
/* 7E2D5C 80281EDC C7A20018 */ lwc1 $f2, 0x18($sp)
/* 7E2D60 80281EE0 460C1300 */ add.s $f12, $f2, $f12
/* 7E2D64 80281EE4 C7A00020 */ lwc1 $f0, 0x20($sp)
/* 7E2D68 80281EE8 46040100 */ add.s $f4, $f0, $f4
/* 7E2D6C 80281EEC 46081081 */ sub.s $f2, $f2, $f8
/* 7E2D70 80281EF0 46060001 */ sub.s $f0, $f0, $f6
/* 7E2D74 80281EF4 460E6301 */ sub.s $f12, $f12, $f14
/* 7E2D78 80281EF8 E6420014 */ swc1 $f2, 0x14($s2)
/* 7E2D7C 80281EFC 080A083D */ j .L802820F4
/* 7E2D80 80281F00 460A2100 */ add.s $f4, $f4, $f10
/* 7E2D84 80281F04 C7A80024 */ lwc1 $f8, 0x24($sp)
/* 7E2D88 80281F08 3C0141F0 */ lui $at, 0x41f0
/* 7E2D8C 80281F0C 44813000 */ mtc1 $at, $f6
/* 7E2D90 80281F10 00000000 */ nop
/* 7E2D94 80281F14 46064282 */ mul.s $f10, $f8, $f6
/* 7E2D98 80281F18 00000000 */ nop
/* 7E2D9C 80281F1C C7A40028 */ lwc1 $f4, 0x28($sp)
/* 7E2DA0 80281F20 46062182 */ mul.s $f6, $f4, $f6
/* 7E2DA4 80281F24 00000000 */ nop
/* 7E2DA8 80281F28 3C0141A0 */ lui $at, 0x41a0
/* 7E2DAC 80281F2C 44810000 */ mtc1 $at, $f0
/* 7E2DB0 80281F30 00000000 */ nop
/* 7E2DB4 80281F34 46002102 */ mul.s $f4, $f4, $f0
/* 7E2DB8 80281F38 00000000 */ nop
/* 7E2DBC 80281F3C 46004202 */ mul.s $f8, $f8, $f0
/* 7E2DC0 80281F40 00000000 */ nop
/* 7E2DC4 80281F44 C7A20018 */ lwc1 $f2, 0x18($sp)
/* 7E2DC8 80281F48 460A1300 */ add.s $f12, $f2, $f10
/* 7E2DCC 80281F4C 460A1081 */ sub.s $f2, $f2, $f10
/* 7E2DD0 80281F50 C7A00020 */ lwc1 $f0, 0x20($sp)
/* 7E2DD4 80281F54 46060280 */ add.s $f10, $f0, $f6
/* 7E2DD8 80281F58 46060001 */ sub.s $f0, $f0, $f6
/* 7E2DDC 80281F5C 46041081 */ sub.s $f2, $f2, $f4
/* 7E2DE0 80281F60 E64C000C */ swc1 $f12, 0xc($s2)
/* 7E2DE4 80281F64 46080001 */ sub.s $f0, $f0, $f8
/* 7E2DE8 80281F68 E64A0010 */ swc1 $f10, 0x10($s2)
/* 7E2DEC 80281F6C 080A086F */ j .L802821BC
/* 7E2DF0 80281F70 E6420014 */ swc1 $f2, 0x14($s2)
/* 7E2DF4 80281F74 C7A80024 */ lwc1 $f8, 0x24($sp)
/* 7E2DF8 80281F78 3C0141F0 */ lui $at, 0x41f0
/* 7E2DFC 80281F7C 44813000 */ mtc1 $at, $f6
/* 7E2E00 80281F80 00000000 */ nop
/* 7E2E04 80281F84 46064282 */ mul.s $f10, $f8, $f6
/* 7E2E08 80281F88 00000000 */ nop
/* 7E2E0C 80281F8C C7A40028 */ lwc1 $f4, 0x28($sp)
/* 7E2E10 80281F90 46062182 */ mul.s $f6, $f4, $f6
/* 7E2E14 80281F94 00000000 */ nop
/* 7E2E18 80281F98 3C014270 */ lui $at, 0x4270
/* 7E2E1C 80281F9C 44811000 */ mtc1 $at, $f2
/* 7E2E20 80281FA0 00000000 */ nop
/* 7E2E24 80281FA4 46024302 */ mul.s $f12, $f8, $f2
/* 7E2E28 80281FA8 00000000 */ nop
/* 7E2E2C 80281FAC 3C0141A0 */ lui $at, 0x41a0
/* 7E2E30 80281FB0 44810000 */ mtc1 $at, $f0
/* 7E2E34 80281FB4 00000000 */ nop
/* 7E2E38 80281FB8 46002382 */ mul.s $f14, $f4, $f0
/* 7E2E3C 80281FBC 00000000 */ nop
/* 7E2E40 80281FC0 46022102 */ mul.s $f4, $f4, $f2
/* 7E2E44 80281FC4 00000000 */ nop
/* 7E2E48 80281FC8 46004202 */ mul.s $f8, $f8, $f0
/* 7E2E4C 80281FCC 00000000 */ nop
/* 7E2E50 80281FD0 C7A20018 */ lwc1 $f2, 0x18($sp)
/* 7E2E54 80281FD4 460A1280 */ add.s $f10, $f2, $f10
/* 7E2E58 80281FD8 460C1081 */ sub.s $f2, $f2, $f12
/* 7E2E5C 80281FDC C7A00020 */ lwc1 $f0, 0x20($sp)
/* 7E2E60 80281FE0 46060180 */ add.s $f6, $f0, $f6
/* 7E2E64 80281FE4 46040001 */ sub.s $f0, $f0, $f4
/* 7E2E68 80281FE8 460E1081 */ sub.s $f2, $f2, $f14
/* 7E2E6C 80281FEC E64A000C */ swc1 $f10, 0xc($s2)
/* 7E2E70 80281FF0 46080001 */ sub.s $f0, $f0, $f8
/* 7E2E74 80281FF4 E6460010 */ swc1 $f6, 0x10($s2)
/* 7E2E78 80281FF8 080A086F */ j .L802821BC
/* 7E2E7C 80281FFC E6420014 */ swc1 $f2, 0x14($s2)
/* 7E2E80 80282000 C7AA0024 */ lwc1 $f10, 0x24($sp)
/* 7E2E84 80282004 3C0141F0 */ lui $at, 0x41f0
/* 7E2E88 80282008 44811000 */ mtc1 $at, $f2
/* 7E2E8C 8028200C 00000000 */ nop
/* 7E2E90 80282010 46025302 */ mul.s $f12, $f10, $f2
/* 7E2E94 80282014 00000000 */ nop
/* 7E2E98 80282018 C7A60028 */ lwc1 $f6, 0x28($sp)
/* 7E2E9C 8028201C 3C0141A0 */ lui $at, 0x41a0
/* 7E2EA0 80282020 44810000 */ mtc1 $at, $f0
/* 7E2EA4 80282024 00000000 */ nop
/* 7E2EA8 80282028 46003102 */ mul.s $f4, $f6, $f0
/* 7E2EAC 8028202C 00000000 */ nop
/* 7E2EB0 80282030 46023182 */ mul.s $f6, $f6, $f2
/* 7E2EB4 80282034 00000000 */ nop
/* 7E2EB8 80282038 46005282 */ mul.s $f10, $f10, $f0
/* 7E2EBC 8028203C 00000000 */ nop
/* 7E2EC0 80282040 C7A20018 */ lwc1 $f2, 0x18($sp)
/* 7E2EC4 80282044 460C1200 */ add.s $f8, $f2, $f12
/* 7E2EC8 80282048 460C1081 */ sub.s $f2, $f2, $f12
/* 7E2ECC 8028204C 46044200 */ add.s $f8, $f8, $f4
/* 7E2ED0 80282050 C7A00020 */ lwc1 $f0, 0x20($sp)
/* 7E2ED4 80282054 46060100 */ add.s $f4, $f0, $f6
/* 7E2ED8 80282058 46060001 */ sub.s $f0, $f0, $f6
/* 7E2EDC 8028205C E6420014 */ swc1 $f2, 0x14($s2)
/* 7E2EE0 80282060 460A2101 */ sub.s $f4, $f4, $f10
.L80282064:
/* 7E2EE4 80282064 E6400018 */ swc1 $f0, 0x18($s2)
/* 7E2EE8 80282068 E648000C */ swc1 $f8, 0xc($s2)
/* 7E2EEC 8028206C 080A0870 */ j .L802821C0
/* 7E2EF0 80282070 E6440010 */ swc1 $f4, 0x10($s2)
/* 7E2EF4 80282074 C7A80024 */ lwc1 $f8, 0x24($sp)
/* 7E2EF8 80282078 3C014270 */ lui $at, 0x4270
/* 7E2EFC 8028207C 44812000 */ mtc1 $at, $f4
/* 7E2F00 80282080 00000000 */ nop
/* 7E2F04 80282084 46044302 */ mul.s $f12, $f8, $f4
/* 7E2F08 80282088 00000000 */ nop
/* 7E2F0C 8028208C C7A60028 */ lwc1 $f6, 0x28($sp)
/* 7E2F10 80282090 3C0141A0 */ lui $at, 0x41a0
/* 7E2F14 80282094 44815000 */ mtc1 $at, $f10
/* 7E2F18 80282098 00000000 */ nop
/* 7E2F1C 8028209C 460A3382 */ mul.s $f14, $f6, $f10
/* 7E2F20 802820A0 00000000 */ nop
/* 7E2F24 802820A4 46043102 */ mul.s $f4, $f6, $f4
/* 7E2F28 802820A8 00000000 */ nop
/* 7E2F2C 802820AC 460A4282 */ mul.s $f10, $f8, $f10
/* 7E2F30 802820B0 00000000 */ nop
/* 7E2F34 802820B4 3C0141F0 */ lui $at, 0x41f0
/* 7E2F38 802820B8 44810000 */ mtc1 $at, $f0
/* 7E2F3C 802820BC 00000000 */ nop
/* 7E2F40 802820C0 46004202 */ mul.s $f8, $f8, $f0
/* 7E2F44 802820C4 00000000 */ nop
/* 7E2F48 802820C8 46003182 */ mul.s $f6, $f6, $f0
/* 7E2F4C 802820CC 00000000 */ nop
/* 7E2F50 802820D0 C7A20018 */ lwc1 $f2, 0x18($sp)
/* 7E2F54 802820D4 460C1300 */ add.s $f12, $f2, $f12
/* 7E2F58 802820D8 C7A00020 */ lwc1 $f0, 0x20($sp)
/* 7E2F5C 802820DC 46040100 */ add.s $f4, $f0, $f4
/* 7E2F60 802820E0 46081081 */ sub.s $f2, $f2, $f8
/* 7E2F64 802820E4 46060001 */ sub.s $f0, $f0, $f6
/* 7E2F68 802820E8 460E6300 */ add.s $f12, $f12, $f14
/* 7E2F6C 802820EC E6420014 */ swc1 $f2, 0x14($s2)
/* 7E2F70 802820F0 460A2101 */ sub.s $f4, $f4, $f10
.L802820F4:
/* 7E2F74 802820F4 E6400018 */ swc1 $f0, 0x18($s2)
/* 7E2F78 802820F8 E64C000C */ swc1 $f12, 0xc($s2)
/* 7E2F7C 802820FC 080A0870 */ j .L802821C0
/* 7E2F80 80282100 E6440010 */ swc1 $f4, 0x10($s2)
/* 7E2F84 80282104 C7A80024 */ lwc1 $f8, 0x24($sp)
/* 7E2F88 80282108 3C0141F0 */ lui $at, 0x41f0
/* 7E2F8C 8028210C 44813000 */ mtc1 $at, $f6
/* 7E2F90 80282110 00000000 */ nop
/* 7E2F94 80282114 46064282 */ mul.s $f10, $f8, $f6
/* 7E2F98 80282118 00000000 */ nop
/* 7E2F9C 8028211C C7A40028 */ lwc1 $f4, 0x28($sp)
/* 7E2FA0 80282120 46062182 */ mul.s $f6, $f4, $f6
/* 7E2FA4 80282124 00000000 */ nop
/* 7E2FA8 80282128 3C0141A0 */ lui $at, 0x41a0
/* 7E2FAC 8028212C 44810000 */ mtc1 $at, $f0
/* 7E2FB0 80282130 00000000 */ nop
/* 7E2FB4 80282134 46002102 */ mul.s $f4, $f4, $f0
/* 7E2FB8 80282138 00000000 */ nop
/* 7E2FBC 8028213C 46004202 */ mul.s $f8, $f8, $f0
/* 7E2FC0 80282140 00000000 */ nop
/* 7E2FC4 80282144 C7A20018 */ lwc1 $f2, 0x18($sp)
/* 7E2FC8 80282148 460A1300 */ add.s $f12, $f2, $f10
/* 7E2FCC 8028214C 460A1081 */ sub.s $f2, $f2, $f10
/* 7E2FD0 80282150 C7A00020 */ lwc1 $f0, 0x20($sp)
/* 7E2FD4 80282154 46060280 */ add.s $f10, $f0, $f6
/* 7E2FD8 80282158 46060001 */ sub.s $f0, $f0, $f6
/* 7E2FDC 8028215C 46041080 */ add.s $f2, $f2, $f4
/* 7E2FE0 80282160 E64C000C */ swc1 $f12, 0xc($s2)
/* 7E2FE4 80282164 46080000 */ add.s $f0, $f0, $f8
/* 7E2FE8 80282168 E64A0010 */ swc1 $f10, 0x10($s2)
/* 7E2FEC 8028216C 080A086F */ j .L802821BC
/* 7E2FF0 80282170 E6420014 */ swc1 $f2, 0x14($s2)
/* 7E2FF4 80282174 C7A60024 */ lwc1 $f6, 0x24($sp)
/* 7E2FF8 80282178 3C0141F0 */ lui $at, 0x41f0
/* 7E2FFC 8028217C 44810000 */ mtc1 $at, $f0
/* 7E3000 80282180 00000000 */ nop
/* 7E3004 80282184 46003182 */ mul.s $f6, $f6, $f0
/* 7E3008 80282188 00000000 */ nop
/* 7E300C 8028218C C7A20028 */ lwc1 $f2, 0x28($sp)
/* 7E3010 80282190 46001082 */ mul.s $f2, $f2, $f0
/* 7E3014 80282194 00000000 */ nop
/* 7E3018 80282198 C7A40018 */ lwc1 $f4, 0x18($sp)
/* 7E301C 8028219C 46062200 */ add.s $f8, $f4, $f6
/* 7E3020 802821A0 C7A00020 */ lwc1 $f0, 0x20($sp)
/* 7E3024 802821A4 46020280 */ add.s $f10, $f0, $f2
/* 7E3028 802821A8 46062101 */ sub.s $f4, $f4, $f6
/* 7E302C 802821AC 46020001 */ sub.s $f0, $f0, $f2
/* 7E3030 802821B0 E648000C */ swc1 $f8, 0xc($s2)
/* 7E3034 802821B4 E64A0010 */ swc1 $f10, 0x10($s2)
/* 7E3038 802821B8 E6440014 */ swc1 $f4, 0x14($s2)
.L802821BC:
/* 7E303C 802821BC E6400018 */ swc1 $f0, 0x18($s2)
.L802821C0:
/* 7E3040 802821C0 3C048028 */ lui $a0, 0x8028
/* 7E3044 802821C4 248447D4 */ addiu $a0, $a0, 0x47d4
/* 7E3048 802821C8 3C02800B */ lui $v0, 0x800b
/* 7E304C 802821CC 24421D80 */ addiu $v0, $v0, 0x1d80
/* 7E3050 802821D0 C6400014 */ lwc1 $f0, 0x14($s2)
/* 7E3054 802821D4 C6420018 */ lwc1 $f2, 0x18($s2)
/* 7E3058 802821D8 C644000C */ lwc1 $f4, 0xc($s2)
/* 7E305C 802821DC C6460010 */ lwc1 $f6, 0x10($s2)
/* 7E3060 802821E0 8FA8002C */ lw $t0, 0x2c($sp)
/* 7E3064 802821E4 24050100 */ addiu $a1, $zero, 0x100
/* 7E3068 802821E8 AE48002C */ sw $t0, 0x2c($s2)
/* 7E306C 802821EC AE5E0030 */ sw $fp, 0x30($s2)
/* 7E3070 802821F0 AE550034 */ sw $s5, 0x34($s2)
/* 7E3074 802821F4 AE570038 */ sw $s7, 0x38($s2)
/* 7E3078 802821F8 E640001C */ swc1 $f0, 0x1c($s2)
/* 7E307C 802821FC E6420020 */ swc1 $f2, 0x20($s2)
/* 7E3080 80282200 E6440024 */ swc1 $f4, 0x24($s2)
/* 7E3084 80282204 E6460028 */ swc1 $f6, 0x28($s2)
/* 7E3088 80282208 8443002C */ lh $v1, 0x2c($v0)
/* 7E308C 8028220C 0280302D */ daddu $a2, $s4, $zero
/* 7E3090 80282210 AE430040 */ sw $v1, 0x40($s2)
/* 7E3094 80282214 8443002E */ lh $v1, 0x2e($v0)
/* 7E3098 80282218 0000382D */ daddu $a3, $zero, $zero
/* 7E309C 8028221C AE430044 */ sw $v1, 0x44($s2)
/* 7E30A0 80282220 84420030 */ lh $v0, 0x30($v0)
/* 7E30A4 80282224 24100003 */ addiu $s0, $zero, 3
/* 7E30A8 80282228 AE420048 */ sw $v0, 0x48($s2)
/* 7E30AC 8028222C AFB20010 */ sw $s2, 0x10($sp)
/* 7E30B0 80282230 0C0B10AA */ jal bind_trigger_1
/* 7E30B4 80282234 AFB00014 */ sw $s0, 0x14($sp)
/* 7E30B8 80282238 32620800 */ andi $v0, $s3, 0x800
/* 7E30BC 8028223C 10400005 */ beqz $v0, .L80282254
/* 7E30C0 80282240 24050040 */ addiu $a1, $zero, 0x40
/* 7E30C4 80282244 3C048028 */ lui $a0, 0x8028
/* 7E30C8 80282248 24844F80 */ addiu $a0, $a0, 0x4f80
/* 7E30CC 8028224C 080A0899 */ j .L80282264
/* 7E30D0 80282250 02C0302D */ daddu $a2, $s6, $zero
.L80282254:
/* 7E30D4 80282254 3C048028 */ lui $a0, 0x8028
/* 7E30D8 80282258 24844F80 */ addiu $a0, $a0, 0x4f80
/* 7E30DC 8028225C 24050100 */ addiu $a1, $zero, 0x100
/* 7E30E0 80282260 02C0302D */ daddu $a2, $s6, $zero
.L80282264:
/* 7E30E4 80282264 24070001 */ addiu $a3, $zero, 1
/* 7E30E8 80282268 AFB20010 */ sw $s2, 0x10($sp)
/* 7E30EC 8028226C 0C0B10AA */ jal bind_trigger_1
/* 7E30F0 80282270 AFB00014 */ sw $s0, 0x14($sp)
/* 7E30F4 80282274 8FBF0054 */ lw $ra, 0x54($sp)
/* 7E30F8 80282278 8FBE0050 */ lw $fp, 0x50($sp)
/* 7E30FC 8028227C 8FB7004C */ lw $s7, 0x4c($sp)
/* 7E3100 80282280 8FB60048 */ lw $s6, 0x48($sp)
/* 7E3104 80282284 8FB50044 */ lw $s5, 0x44($sp)
/* 7E3108 80282288 8FB40040 */ lw $s4, 0x40($sp)
/* 7E310C 8028228C 8FB3003C */ lw $s3, 0x3c($sp)
/* 7E3110 80282290 8FB20038 */ lw $s2, 0x38($sp)
/* 7E3114 80282294 8FB10034 */ lw $s1, 0x34($sp)
/* 7E3118 80282298 8FB00030 */ lw $s0, 0x30($sp)
/* 7E311C 8028229C 24020002 */ addiu $v0, $zero, 2
/* 7E3120 802822A0 03E00008 */ jr $ra
/* 7E3124 802822A4 27BD0058 */ addiu $sp, $sp, 0x58
/* 7E3128 802822A8 27BDFFD0 */ addiu $sp, $sp, -0x30
/* 7E312C 802822AC AFBF002C */ sw $ra, 0x2c($sp)
/* 7E3130 802822B0 AFB00028 */ sw $s0, 0x28($sp)
/* 7E3134 802822B4 8C82000C */ lw $v0, 0xc($a0)
/* 7E3138 802822B8 8C450000 */ lw $a1, ($v0)
/* 7E313C 802822BC 0C0B1EAF */ jal get_variable
/* 7E3140 802822C0 8C900074 */ lw $s0, 0x74($a0)
/* 7E3144 802822C4 27A50018 */ addiu $a1, $sp, 0x18
/* 7E3148 802822C8 27A6001C */ addiu $a2, $sp, 0x1c
/* 7E314C 802822CC 27A70020 */ addiu $a3, $sp, 0x20
/* 7E3150 802822D0 8E040060 */ lw $a0, 0x60($s0)
/* 7E3154 802822D4 0C016F84 */ jal get_collider_center
/* 7E3158 802822D8 0040802D */ daddu $s0, $v0, $zero
/* 7E315C 802822DC 0200202D */ daddu $a0, $s0, $zero
/* 7E3160 802822E0 C7A00018 */ lwc1 $f0, 0x18($sp)
/* 7E3164 802822E4 C7A2001C */ lwc1 $f2, 0x1c($sp)
/* 7E3168 802822E8 44060000 */ mfc1 $a2, $f0
/* 7E316C 802822EC 44071000 */ mfc1 $a3, $f2
/* 7E3170 802822F0 C7A00020 */ lwc1 $f0, 0x20($sp)
/* 7E3174 802822F4 0000282D */ daddu $a1, $zero, $zero
/* 7E3178 802822F8 0C052757 */ jal play_sound_at_position
/* 7E317C 802822FC E7A00010 */ swc1 $f0, 0x10($sp)
/* 7E3180 80282300 8FBF002C */ lw $ra, 0x2c($sp)
/* 7E3184 80282304 8FB00028 */ lw $s0, 0x28($sp)
/* 7E3188 80282308 24020002 */ addiu $v0, $zero, 2
/* 7E318C 8028230C 03E00008 */ jr $ra
/* 7E3190 80282310 27BD0030 */ addiu $sp, $sp, 0x30
/* 7E3194 80282314 8C820088 */ lw $v0, 0x88($a0)
/* 7E3198 80282318 AC820074 */ sw $v0, 0x74($a0)
/* 7E319C 8028231C 03E00008 */ jr $ra
/* 7E31A0 80282320 24020002 */ addiu $v0, $zero, 2
/* 7E31A4 80282324 8C820074 */ lw $v0, 0x74($a0)
/* 7E31A8 80282328 8C420000 */ lw $v0, ($v0)
/* 7E31AC 8028232C AC820084 */ sw $v0, 0x84($a0)
/* 7E31B0 80282330 03E00008 */ jr $ra
/* 7E31B4 80282334 24020002 */ addiu $v0, $zero, 2
/* 7E31B8 80282338 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 7E31BC 8028233C AFBF0014 */ sw $ra, 0x14($sp)
/* 7E31C0 80282340 AFB00010 */ sw $s0, 0x10($sp)
/* 7E31C4 80282344 8C82000C */ lw $v0, 0xc($a0)
/* 7E31C8 80282348 8C450000 */ lw $a1, ($v0)
/* 7E31CC 8028234C 0C0B1EAF */ jal get_variable
/* 7E31D0 80282350 8C900074 */ lw $s0, 0x74($a0)
/* 7E31D4 80282354 AE020000 */ sw $v0, ($s0)
/* 7E31D8 80282358 8FBF0014 */ lw $ra, 0x14($sp)
/* 7E31DC 8028235C 8FB00010 */ lw $s0, 0x10($sp)
/* 7E31E0 80282360 24020002 */ addiu $v0, $zero, 2
/* 7E31E4 80282364 03E00008 */ jr $ra
/* 7E31E8 80282368 27BD0018 */ addiu $sp, $sp, 0x18
/* 7E31EC 8028236C 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 7E31F0 80282370 AFBF0014 */ sw $ra, 0x14($sp)
/* 7E31F4 80282374 AFB00010 */ sw $s0, 0x10($sp)
/* 7E31F8 80282378 8C82000C */ lw $v0, 0xc($a0)
/* 7E31FC 8028237C 8C450000 */ lw $a1, ($v0)
/* 7E3200 80282380 0C0B1EAF */ jal get_variable
/* 7E3204 80282384 8C900074 */ lw $s0, 0x74($a0)
/* 7E3208 80282388 00021080 */ sll $v0, $v0, 2
/* 7E320C 8028238C 02028021 */ addu $s0, $s0, $v0
/* 7E3210 80282390 0C0B1059 */ jal does_script_exist
/* 7E3214 80282394 8E04004C */ lw $a0, 0x4c($s0)
/* 7E3218 80282398 2C420001 */ sltiu $v0, $v0, 1
/* 7E321C 8028239C 8FBF0014 */ lw $ra, 0x14($sp)
/* 7E3220 802823A0 8FB00010 */ lw $s0, 0x10($sp)
/* 7E3224 802823A4 00021040 */ sll $v0, $v0, 1
/* 7E3228 802823A8 03E00008 */ jr $ra
/* 7E322C 802823AC 27BD0018 */ addiu $sp, $sp, 0x18
/* 7E3230 802823B0 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 7E3234 802823B4 AFB00010 */ sw $s0, 0x10($sp)
/* 7E3238 802823B8 0080802D */ daddu $s0, $a0, $zero
/* 7E323C 802823BC AFBF001C */ sw $ra, 0x1c($sp)
/* 7E3240 802823C0 AFB20018 */ sw $s2, 0x18($sp)
/* 7E3244 802823C4 AFB10014 */ sw $s1, 0x14($sp)
/* 7E3248 802823C8 8E11000C */ lw $s1, 0xc($s0)
/* 7E324C 802823CC 8E120074 */ lw $s2, 0x74($s0)
/* 7E3250 802823D0 8E250000 */ lw $a1, ($s1)
/* 7E3254 802823D4 0C0B1EAF */ jal get_variable
/* 7E3258 802823D8 26310004 */ addiu $s1, $s1, 4
/* 7E325C 802823DC 0200202D */ daddu $a0, $s0, $zero
/* 7E3260 802823E0 8E250000 */ lw $a1, ($s1)
/* 7E3264 802823E4 0C0B1EAF */ jal get_variable
/* 7E3268 802823E8 0040802D */ daddu $s0, $v0, $zero
/* 7E326C 802823EC 00108080 */ sll $s0, $s0, 2
/* 7E3270 802823F0 02509021 */ addu $s2, $s2, $s0
/* 7E3274 802823F4 AE42004C */ sw $v0, 0x4c($s2)
/* 7E3278 802823F8 8FBF001C */ lw $ra, 0x1c($sp)
/* 7E327C 802823FC 8FB20018 */ lw $s2, 0x18($sp)
/* 7E3280 80282400 8FB10014 */ lw $s1, 0x14($sp)
/* 7E3284 80282404 8FB00010 */ lw $s0, 0x10($sp)
/* 7E3288 80282408 24020002 */ addiu $v0, $zero, 2
/* 7E328C 8028240C 03E00008 */ jr $ra
/* 7E3290 80282410 27BD0020 */ addiu $sp, $sp, 0x20
/* 7E3294 80282414 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 7E3298 80282418 AFB10014 */ sw $s1, 0x14($sp)
/* 7E329C 8028241C 0080882D */ daddu $s1, $a0, $zero
/* 7E32A0 80282420 AFBF001C */ sw $ra, 0x1c($sp)
/* 7E32A4 80282424 AFB20018 */ sw $s2, 0x18($sp)
/* 7E32A8 80282428 AFB00010 */ sw $s0, 0x10($sp)
/* 7E32AC 8028242C 10A0000A */ beqz $a1, .L80282458
/* 7E32B0 80282430 8E320088 */ lw $s2, 0x88($s1)
/* 7E32B4 80282434 8E220084 */ lw $v0, 0x84($s1)
/* 7E32B8 80282438 54400007 */ bnezl $v0, .L80282458
/* 7E32BC 8028243C AE200074 */ sw $zero, 0x74($s1)
/* 7E32C0 80282440 962400C2 */ lhu $a0, 0xc2($s1)
/* 7E32C4 80282444 2405FFFF */ addiu $a1, $zero, -1
/* 7E32C8 80282448 24060001 */ addiu $a2, $zero, 1
/* 7E32CC 8028244C 0C046E54 */ jal func_8011B950
/* 7E32D0 80282450 00C0382D */ daddu $a3, $a2, $zero
/* 7E32D4 80282454 AE200074 */ sw $zero, 0x74($s1)
.L80282458:
/* 7E32D8 80282458 8E220074 */ lw $v0, 0x74($s1)
/* 7E32DC 8028245C 24420020 */ addiu $v0, $v0, 0x20
/* 7E32E0 80282460 AE220074 */ sw $v0, 0x74($s1)
/* 7E32E4 80282464 28420100 */ slti $v0, $v0, 0x100
/* 7E32E8 80282468 14400002 */ bnez $v0, .L80282474
/* 7E32EC 8028246C 240200FF */ addiu $v0, $zero, 0xff
/* 7E32F0 80282470 AE220074 */ sw $v0, 0x74($s1)
.L80282474:
/* 7E32F4 80282474 8E220084 */ lw $v0, 0x84($s1)
/* 7E32F8 80282478 14400004 */ bnez $v0, .L8028248C
/* 7E32FC 8028247C 240200FF */ addiu $v0, $zero, 0xff
/* 7E3300 80282480 8E300074 */ lw $s0, 0x74($s1)
/* 7E3304 80282484 080A0926 */ j .L80282498
/* 7E3308 80282488 0000202D */ daddu $a0, $zero, $zero
.L8028248C:
/* 7E330C 8028248C 8E230074 */ lw $v1, 0x74($s1)
/* 7E3310 80282490 00438023 */ subu $s0, $v0, $v1
/* 7E3314 80282494 0000202D */ daddu $a0, $zero, $zero
.L80282498:
/* 7E3318 80282498 0080282D */ daddu $a1, $a0, $zero
/* 7E331C 8028249C 0080302D */ daddu $a2, $a0, $zero
/* 7E3320 802824A0 0C046F97 */ jal func_8011BE5C
/* 7E3324 802824A4 320700FF */ andi $a3, $s0, 0xff
/* 7E3328 802824A8 240600FF */ addiu $a2, $zero, 0xff
/* 7E332C 802824AC 8E420040 */ lw $v0, 0x40($s2)
/* 7E3330 802824B0 00D03023 */ subu $a2, $a2, $s0
/* 7E3334 802824B4 00460018 */ mult $v0, $a2
/* 7E3338 802824B8 00001012 */ mflo $v0
/* 7E333C 802824BC 8E450044 */ lw $a1, 0x44($s2)
/* 7E3340 802824C0 00000000 */ nop
/* 7E3344 802824C4 00A60018 */ mult $a1, $a2
/* 7E3348 802824C8 00002812 */ mflo $a1
/* 7E334C 802824CC 3C078080 */ lui $a3, 0x8080
/* 7E3350 802824D0 34E78081 */ ori $a3, $a3, 0x8081
/* 7E3354 802824D4 00470018 */ mult $v0, $a3
/* 7E3358 802824D8 00001810 */ mfhi $v1
/* 7E335C 802824DC 00000000 */ nop
/* 7E3360 802824E0 00000000 */ nop
/* 7E3364 802824E4 00A70018 */ mult $a1, $a3
/* 7E3368 802824E8 00004010 */ mfhi $t0
/* 7E336C 802824EC 8E440048 */ lw $a0, 0x48($s2)
/* 7E3370 802824F0 00621821 */ addu $v1, $v1, $v0
/* 7E3374 802824F4 00860018 */ mult $a0, $a2
/* 7E3378 802824F8 000319C3 */ sra $v1, $v1, 7
/* 7E337C 802824FC 000217C3 */ sra $v0, $v0, 0x1f
/* 7E3380 80282500 00621823 */ subu $v1, $v1, $v0
/* 7E3384 80282504 3C06800B */ lui $a2, 0x800b
/* 7E3388 80282508 24C61D80 */ addiu $a2, $a2, 0x1d80
/* 7E338C 8028250C 00002012 */ mflo $a0
/* 7E3390 80282510 01051021 */ addu $v0, $t0, $a1
/* 7E3394 80282514 000211C3 */ sra $v0, $v0, 7
/* 7E3398 80282518 00870018 */ mult $a0, $a3
/* 7E339C 8028251C 00052FC3 */ sra $a1, $a1, 0x1f
/* 7E33A0 80282520 00451023 */ subu $v0, $v0, $a1
/* 7E33A4 80282524 A4C3002C */ sh $v1, 0x2c($a2)
/* 7E33A8 80282528 A4C2002E */ sh $v0, 0x2e($a2)
/* 7E33AC 8028252C 00001810 */ mfhi $v1
/* 7E33B0 80282530 00641021 */ addu $v0, $v1, $a0
/* 7E33B4 80282534 000211C3 */ sra $v0, $v0, 7
/* 7E33B8 80282538 000427C3 */ sra $a0, $a0, 0x1f
/* 7E33BC 8028253C 00441023 */ subu $v0, $v0, $a0
/* 7E33C0 80282540 A4C20030 */ sh $v0, 0x30($a2)
/* 7E33C4 80282544 8E220074 */ lw $v0, 0x74($s1)
/* 7E33C8 80282548 284200FF */ slti $v0, $v0, 0xff
/* 7E33CC 8028254C 1440000B */ bnez $v0, .L8028257C
/* 7E33D0 80282550 0000102D */ daddu $v0, $zero, $zero
/* 7E33D4 80282554 8E230084 */ lw $v1, 0x84($s1)
/* 7E33D8 80282558 24020003 */ addiu $v0, $zero, 3
/* 7E33DC 8028255C 14620007 */ bne $v1, $v0, .L8028257C
/* 7E33E0 80282560 24020002 */ addiu $v0, $zero, 2
/* 7E33E4 80282564 962400C2 */ lhu $a0, 0xc2($s1)
/* 7E33E8 80282568 2405FFFF */ addiu $a1, $zero, -1
/* 7E33EC 8028256C 0000302D */ daddu $a2, $zero, $zero
/* 7E33F0 80282570 0C046E54 */ jal func_8011B950
/* 7E33F4 80282574 24070001 */ addiu $a3, $zero, 1
/* 7E33F8 80282578 24020002 */ addiu $v0, $zero, 2
.L8028257C:
/* 7E33FC 8028257C 8FBF001C */ lw $ra, 0x1c($sp)
/* 7E3400 80282580 8FB20018 */ lw $s2, 0x18($sp)
/* 7E3404 80282584 8FB10014 */ lw $s1, 0x14($sp)
/* 7E3408 80282588 8FB00010 */ lw $s0, 0x10($sp)
/* 7E340C 8028258C 03E00008 */ jr $ra
/* 7E3410 80282590 27BD0020 */ addiu $sp, $sp, 0x20
/* 7E3414 80282594 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 7E3418 80282598 AFBF0010 */ sw $ra, 0x10($sp)
/* 7E341C 8028259C 8C82000C */ lw $v0, 0xc($a0)
/* 7E3420 802825A0 0C0B210B */ jal get_float_variable
/* 7E3424 802825A4 8C450000 */ lw $a1, ($v0)
/* 7E3428 802825A8 46000086 */ mov.s $f2, $f0
/* 7E342C 802825AC 3C02800B */ lui $v0, 0x800b
/* 7E3430 802825B0 24421D80 */ addiu $v0, $v0, 0x1d80
/* 7E3434 802825B4 44800000 */ mtc1 $zero, $f0
/* 7E3438 802825B8 00000000 */ nop
/* 7E343C 802825BC 4602003E */ c.le.s $f0, $f2
/* 7E3440 802825C0 00000000 */ nop
/* 7E3444 802825C4 45000006 */ bc1f .L802825E0
/* 7E3448 802825C8 0040182D */ daddu $v1, $v0, $zero
/* 7E344C 802825CC C4400490 */ lwc1 $f0, 0x490($v0)
/* 7E3450 802825D0 E4420490 */ swc1 $f2, 0x490($v0)
/* 7E3454 802825D4 3C018028 */ lui $at, 0x8028
/* 7E3458 802825D8 080A097B */ j .L802825EC
/* 7E345C 802825DC E4206540 */ swc1 $f0, 0x6540($at)
.L802825E0:
/* 7E3460 802825E0 3C018028 */ lui $at, 0x8028
/* 7E3464 802825E4 C4206540 */ lwc1 $f0, 0x6540($at)
/* 7E3468 802825E8 E4600490 */ swc1 $f0, 0x490($v1)
.L802825EC:
/* 7E346C 802825EC 8FBF0010 */ lw $ra, 0x10($sp)
/* 7E3470 802825F0 24020002 */ addiu $v0, $zero, 2
/* 7E3474 802825F4 03E00008 */ jr $ra
/* 7E3478 802825F8 27BD0018 */ addiu $sp, $sp, 0x18
/* 7E347C 802825FC 24020001 */ addiu $v0, $zero, 1
/* 7E3480 80282600 3C018015 */ lui $at, 0x8015
/* 7E3484 80282604 AC221310 */ sw $v0, 0x1310($at)
/* 7E3488 80282608 03E00008 */ jr $ra
/* 7E348C 8028260C 24020002 */ addiu $v0, $zero, 2
/* 7E3490 80282610 24020002 */ addiu $v0, $zero, 2
/* 7E3494 80282614 3C018015 */ lui $at, 0x8015
/* 7E3498 80282618 AC221310 */ sw $v0, 0x1310($at)
/* 7E349C 8028261C 03E00008 */ jr $ra
/* 7E34A0 80282620 00000000 */ nop
/* 7E34A4 80282624 3C018015 */ lui $at, 0x8015
/* 7E34A8 80282628 AC201310 */ sw $zero, 0x1310($at)
/* 7E34AC 8028262C 03E00008 */ jr $ra
/* 7E34B0 80282630 24020002 */ addiu $v0, $zero, 2
/* 7E34B4 80282634 27BDFFD8 */ addiu $sp, $sp, -0x28
/* 7E34B8 80282638 AFBF0020 */ sw $ra, 0x20($sp)
/* 7E34BC 8028263C AFB3001C */ sw $s3, 0x1c($sp)
/* 7E34C0 80282640 AFB20018 */ sw $s2, 0x18($sp)
/* 7E34C4 80282644 AFB10014 */ sw $s1, 0x14($sp)
/* 7E34C8 80282648 AFB00010 */ sw $s0, 0x10($sp)
/* 7E34CC 8028264C 8C820074 */ lw $v0, 0x74($a0)
/* 7E34D0 80282650 8C51005C */ lw $s1, 0x5c($v0)
/* 7E34D4 80282654 12200022 */ beqz $s1, .L802826E0
/* 7E34D8 80282658 0000802D */ daddu $s0, $zero, $zero
/* 7E34DC 8028265C 2413FFFC */ addiu $s3, $zero, -4
/* 7E34E0 80282660 3C120080 */ lui $s2, 0x80
.L80282664:
/* 7E34E4 80282664 0C00E2B7 */ jal get_npc_by_index
/* 7E34E8 80282668 0200202D */ daddu $a0, $s0, $zero
/* 7E34EC 8028266C 0040182D */ daddu $v1, $v0, $zero
/* 7E34F0 80282670 50600009 */ beql $v1, $zero, .L80282698
/* 7E34F4 80282674 26100001 */ addiu $s0, $s0, 1
/* 7E34F8 80282678 8C640000 */ lw $a0, ($v1)
/* 7E34FC 8028267C 10800006 */ beqz $a0, .L80282698
/* 7E3500 80282680 26100001 */ addiu $s0, $s0, 1
/* 7E3504 80282684 806200A4 */ lb $v0, 0xa4($v1)
/* 7E3508 80282688 10530003 */ beq $v0, $s3, .L80282698
/* 7E350C 8028268C 00000000 */ nop
/* 7E3510 80282690 00921025 */ or $v0, $a0, $s2
/* 7E3514 80282694 AC620000 */ sw $v0, ($v1)
.L80282698:
/* 7E3518 80282698 2A020040 */ slti $v0, $s0, 0x40
/* 7E351C 8028269C 1440FFF1 */ bnez $v0, .L80282664
/* 7E3520 802826A0 00000000 */ nop
/* 7E3524 802826A4 2412FFFF */ addiu $s2, $zero, -1
/* 7E3528 802826A8 3C10FF7F */ lui $s0, 0xff7f
/* 7E352C 802826AC 3610FFFF */ ori $s0, $s0, 0xffff
.L802826B0:
/* 7E3530 802826B0 8E240000 */ lw $a0, ($s1)
/* 7E3534 802826B4 1092000B */ beq $a0, $s2, .L802826E4
/* 7E3538 802826B8 24020002 */ addiu $v0, $zero, 2
/* 7E353C 802826BC 0C00EAD2 */ jal get_npc_safe
/* 7E3540 802826C0 26310004 */ addiu $s1, $s1, 4
/* 7E3544 802826C4 0040182D */ daddu $v1, $v0, $zero
/* 7E3548 802826C8 1060FFF9 */ beqz $v1, .L802826B0
/* 7E354C 802826CC 00000000 */ nop
/* 7E3550 802826D0 8C620000 */ lw $v0, ($v1)
/* 7E3554 802826D4 00501024 */ and $v0, $v0, $s0
/* 7E3558 802826D8 080A09AC */ j .L802826B0
/* 7E355C 802826DC AC620000 */ sw $v0, ($v1)
.L802826E0:
/* 7E3560 802826E0 24020002 */ addiu $v0, $zero, 2
.L802826E4:
/* 7E3564 802826E4 8FBF0020 */ lw $ra, 0x20($sp)
/* 7E3568 802826E8 8FB3001C */ lw $s3, 0x1c($sp)
/* 7E356C 802826EC 8FB20018 */ lw $s2, 0x18($sp)
/* 7E3570 802826F0 8FB10014 */ lw $s1, 0x14($sp)
/* 7E3574 802826F4 8FB00010 */ lw $s0, 0x10($sp)
/* 7E3578 802826F8 03E00008 */ jr $ra
/* 7E357C 802826FC 27BD0028 */ addiu $sp, $sp, 0x28
/* 7E3580 80282700 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 7E3584 80282704 AFBF0018 */ sw $ra, 0x18($sp)
/* 7E3588 80282708 AFB10014 */ sw $s1, 0x14($sp)
/* 7E358C 8028270C AFB00010 */ sw $s0, 0x10($sp)
/* 7E3590 80282710 8C820074 */ lw $v0, 0x74($a0)
/* 7E3594 80282714 8C42005C */ lw $v0, 0x5c($v0)
/* 7E3598 80282718 10400010 */ beqz $v0, .L8028275C
/* 7E359C 8028271C 0000802D */ daddu $s0, $zero, $zero
/* 7E35A0 80282720 3C11FF7F */ lui $s1, 0xff7f
/* 7E35A4 80282724 3631FFFF */ ori $s1, $s1, 0xffff
.L80282728:
/* 7E35A8 80282728 0C00E2B7 */ jal get_npc_by_index
/* 7E35AC 8028272C 0200202D */ daddu $a0, $s0, $zero
/* 7E35B0 80282730 0040182D */ daddu $v1, $v0, $zero
/* 7E35B4 80282734 10600006 */ beqz $v1, .L80282750
/* 7E35B8 80282738 26100001 */ addiu $s0, $s0, 1
/* 7E35BC 8028273C 8C620000 */ lw $v0, ($v1)
/* 7E35C0 80282740 10400003 */ beqz $v0, .L80282750
/* 7E35C4 80282744 00000000 */ nop
/* 7E35C8 80282748 00511024 */ and $v0, $v0, $s1
/* 7E35CC 8028274C AC620000 */ sw $v0, ($v1)
.L80282750:
/* 7E35D0 80282750 2A020040 */ slti $v0, $s0, 0x40
/* 7E35D4 80282754 1440FFF4 */ bnez $v0, .L80282728
/* 7E35D8 80282758 00000000 */ nop
.L8028275C:
/* 7E35DC 8028275C 24020002 */ addiu $v0, $zero, 2
/* 7E35E0 80282760 8FBF0018 */ lw $ra, 0x18($sp)
/* 7E35E4 80282764 8FB10014 */ lw $s1, 0x14($sp)
/* 7E35E8 80282768 8FB00010 */ lw $s0, 0x10($sp)
/* 7E35EC 8028276C 03E00008 */ jr $ra
/* 7E35F0 80282770 27BD0020 */ addiu $sp, $sp, 0x20
/* 7E35F4 80282774 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 7E35F8 80282778 AFBF0014 */ sw $ra, 0x14($sp)
/* 7E35FC 8028277C AFB00010 */ sw $s0, 0x10($sp)
/* 7E3600 80282780 0C04D090 */ jal func_80134240
/* 7E3604 80282784 8C900074 */ lw $s0, 0x74($a0)
/* 7E3608 80282788 86040008 */ lh $a0, 8($s0)
/* 7E360C 8028278C 0C04D08C */ jal func_80134230
/* 7E3610 80282790 A602000A */ sh $v0, 0xa($s0)
/* 7E3614 80282794 8FBF0014 */ lw $ra, 0x14($sp)
/* 7E3618 80282798 8FB00010 */ lw $s0, 0x10($sp)
/* 7E361C 8028279C 24020002 */ addiu $v0, $zero, 2
/* 7E3620 802827A0 03E00008 */ jr $ra
/* 7E3624 802827A4 27BD0018 */ addiu $sp, $sp, 0x18
/* 7E3628 802827A8 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 7E362C 802827AC AFBF0010 */ sw $ra, 0x10($sp)
/* 7E3630 802827B0 8C820074 */ lw $v0, 0x74($a0)
/* 7E3634 802827B4 0C04D08C */ jal func_80134230
/* 7E3638 802827B8 8444000A */ lh $a0, 0xa($v0)
/* 7E363C 802827BC 8FBF0010 */ lw $ra, 0x10($sp)
/* 7E3640 802827C0 24020002 */ addiu $v0, $zero, 2
/* 7E3644 802827C4 03E00008 */ jr $ra
/* 7E3648 802827C8 27BD0018 */ addiu $sp, $sp, 0x18
/* 7E364C 802827CC 8C830074 */ lw $v1, 0x74($a0)
/* 7E3650 802827D0 8C620004 */ lw $v0, 4($v1)
/* 7E3654 802827D4 AC82008C */ sw $v0, 0x8c($a0)
/* 7E3658 802827D8 C460000C */ lwc1 $f0, 0xc($v1)
/* 7E365C 802827DC 4600008D */ trunc.w.s $f2, $f0
/* 7E3660 802827E0 E4820090 */ swc1 $f2, 0x90($a0)
/* 7E3664 802827E4 C4600010 */ lwc1 $f0, 0x10($v1)
/* 7E3668 802827E8 4600008D */ trunc.w.s $f2, $f0
/* 7E366C 802827EC E4820094 */ swc1 $f2, 0x94($a0)
/* 7E3670 802827F0 C4600014 */ lwc1 $f0, 0x14($v1)
/* 7E3674 802827F4 4600008D */ trunc.w.s $f2, $f0
/* 7E3678 802827F8 E4820098 */ swc1 $f2, 0x98($a0)
/* 7E367C 802827FC C4600018 */ lwc1 $f0, 0x18($v1)
/* 7E3680 80282800 4600008D */ trunc.w.s $f2, $f0
/* 7E3684 80282804 E482009C */ swc1 $f2, 0x9c($a0)
/* 7E3688 80282808 C460001C */ lwc1 $f0, 0x1c($v1)
/* 7E368C 8028280C 4600008D */ trunc.w.s $f2, $f0
/* 7E3690 80282810 E48200A0 */ swc1 $f2, 0xa0($a0)
/* 7E3694 80282814 C4600020 */ lwc1 $f0, 0x20($v1)
/* 7E3698 80282818 4600008D */ trunc.w.s $f2, $f0
/* 7E369C 8028281C E48200A4 */ swc1 $f2, 0xa4($a0)
/* 7E36A0 80282820 C4600024 */ lwc1 $f0, 0x24($v1)
/* 7E36A4 80282824 4600008D */ trunc.w.s $f2, $f0
/* 7E36A8 80282828 E48200A8 */ swc1 $f2, 0xa8($a0)
/* 7E36AC 8028282C C4600028 */ lwc1 $f0, 0x28($v1)
/* 7E36B0 80282830 4600008D */ trunc.w.s $f2, $f0
/* 7E36B4 80282834 E48200AC */ swc1 $f2, 0xac($a0)
/* 7E36B8 80282838 8C62002C */ lw $v0, 0x2c($v1)
/* 7E36BC 8028283C AC8200B0 */ sw $v0, 0xb0($a0)
/* 7E36C0 80282840 8C620030 */ lw $v0, 0x30($v1)
/* 7E36C4 80282844 AC8200B4 */ sw $v0, 0xb4($a0)
/* 7E36C8 80282848 8C620034 */ lw $v0, 0x34($v1)
/* 7E36CC 8028284C AC8200B8 */ sw $v0, 0xb8($a0)
/* 7E36D0 80282850 8C620038 */ lw $v0, 0x38($v1)
/* 7E36D4 80282854 AC8200BC */ sw $v0, 0xbc($a0)
/* 7E36D8 80282858 8C62003C */ lw $v0, 0x3c($v1)
/* 7E36DC 8028285C AC8200C0 */ sw $v0, 0xc0($a0)
/* 7E36E0 80282860 03E00008 */ jr $ra
/* 7E36E4 80282864 24020002 */ addiu $v0, $zero, 2
/* 7E36E8 80282868 8C820074 */ lw $v0, 0x74($a0)
/* 7E36EC 8028286C AC820088 */ sw $v0, 0x88($a0)
/* 7E36F0 80282870 03E00008 */ jr $ra
/* 7E36F4 80282874 24020002 */ addiu $v0, $zero, 2
/* 7E36F8 80282878 00000000 */ nop
/* 7E36FC 8028287C 00000000 */ nop

1514
papermario/asm/code_7E3700.s Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -2246,6 +2246,10 @@
.global func_802409F4
.global func_80240AA8
.global func_80241190
.global func_80242D94
.global func_80242BA0
.global func_80242DEC
.global func_80242E00
.global func_802431A0
.global func_80244060
.global func_80244424
@ -2253,6 +2257,9 @@
.global func_802448E0
.global func_80244B00
.global func_80244BC4
.global func_8024997C
.global func_80249AA4
.global func_80249AB8
.global func_8024E40C
.global func_80263268
.global func_80263300

View File

@ -42,11 +42,16 @@ SECTIONS
build/asm/code_3bf0_len_6f0.o(.text800287F0);
}
/* 0x80028EE0 0042E0-006240 [1F60] */
/* 0x80028EE0 0042E0-006000 [1D20] */
.text80028EE0 0x80028EE0 : AT(0x0042E0) {
build/asm/code_42e0_len_1f60.o(.text80028EE0);
}
/* 0x8002AC00 006000-006240 [240] */
.text8002AC00 0x8002AC00 : AT(0x006000) {
build/asm/code_6000.o(.text8002AC00);
}
/* 0x8002AE40 006240-006E40 [C00] */
.text8002AE40 0x8002AE40 : AT(0x006240) {
build/asm/code_6240_len_c00.o(.text8002AE40);
@ -792,11 +797,16 @@ SECTIONS
build/asm/code_48c00_len_5c0.o(.text8006D800);
}
/* 0x8006DDC0 0491C0-04A140 [F80] */
/* 0x8006DDC0 0491C0-049C70 [AB0] */
.text8006DDC0 0x8006DDC0 : AT(0x0491C0) {
build/asm/code_491c0_len_f80.o(.text8006DDC0);
}
/* 0x8006E870 049C70-04A140 [4D0] */
.text8006E870 0x8006E870 : AT(0x049C70) {
build/asm/code_49C70.o(.text8006E870);
}
/* 0x8006ED40 04A140-04A1B0 [70] */
.text8006ED40 0x8006ED40 : AT(0x04A140) {
build/asm/code_4a140_len_70.o(.text8006ED40);
@ -1037,11 +1047,26 @@ SECTIONS
build/bin/papermario.10A9F0.bin_10A9F0.o(.data);
}
/* 0x80242BA0 163400-16A3E0 [6FE0] */
/* 0x80242BA0 163400-167570 [4170] */
.text80242BA0 0x80242BA0 : AT(0x163400) {
build/asm/code_163400.o(.text80242BA0);
}
/* 0x80246D10 167570-168590 [1020] */
.text80246D10 0x80246D10 : AT(0x167570) {
build/asm/code_167570.o(.text80246D10);
}
/* 0x80247D30 168590-169BE0 [1650] */
.text80247D30 0x80247D30 : AT(0x168590) {
build/asm/code_168590.o(.text80247D30);
}
/* 0x80249380 169BE0-16A3E0 [800] */
.text80249380 0x80249380 : AT(0x169BE0) {
build/asm/code_169BE0.o(.text80249380);
}
/* 0x00000000 16A3E0-16C8E0 [2500] */
.data0016A3E0 0x0016A3E0 : AT(0x16A3E0) {
build/bin/papermario.16A3E0.bin_16a3e0.o(.data);
@ -1097,11 +1122,21 @@ SECTIONS
build/bin/papermario.4200C0.bin_4200C0.o(.data);
}
/* 0x80280000 7E0E80-7E4D00 [3E80] */
/* 0x80280000 7E0E80-7E2AA0 [1C20] */
.text80280000 0x80280000 : AT(0x7E0E80) {
build/asm/code_7e0e80.o(.text80280000);
}
/* 0x80281C20 7E2AA0-7E3700 [C60] */
.text80281C20 0x80281C20 : AT(0x7E2AA0) {
build/asm/code_7E2AA0.o(.text80281C20);
}
/* 0x80282880 7E3700-7E4D00 [1600] */
.text80282880 0x80282880 : AT(0x7E3700) {
build/asm/code_7E3700.o(.text80282880);
}
/* 0x00000000 7E4D00-E20EB0 [63C1B0] */
.data007E4D00 0x007E4D00 : AT(0x7E4D00) {
build/bin/papermario.7E4D00.bin_7e4d00.o(.data);