papermario/asm/nonmatchings/code_f270_len_1190/step_pause_menu.s
2020-08-12 22:37:16 -04:00

179 lines
8.1 KiB
ArmAsm

.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel step_pause_menu
/* 00FD7C 8003497C 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 00FD80 80034980 AFB00010 */ sw $s0, 0x10($sp)
/* 00FD84 80034984 3C10800A */ lui $s0, 0x800a
/* 00FD88 80034988 26100921 */ addiu $s0, $s0, 0x921
/* 00FD8C 8003498C AFBF0018 */ sw $ra, 0x18($sp)
/* 00FD90 80034990 AFB10014 */ sw $s1, 0x14($sp)
/* 00FD94 80034994 82110000 */ lb $s1, ($s0)
/* 00FD98 80034998 12200005 */ beqz $s1, .L800349B0
/* 00FD9C 8003499C 24020002 */ addiu $v0, $zero, 2
/* 00FDA0 800349A0 12220022 */ beq $s1, $v0, .L80034A2C
/* 00FDA4 800349A4 00000000 */ nop
/* 00FDA8 800349A8 0800D2F8 */ j .L80034BE0
/* 00FDAC 800349AC 00000000 */ nop
.L800349B0:
/* 00FDB0 800349B0 0C00F949 */ jal func_8003E524
/* 00FDB4 800349B4 00000000 */ nop
/* 00FDB8 800349B8 0C00E64C */ jal func_80039930
/* 00FDBC 800349BC 00000000 */ nop
/* 00FDC0 800349C0 0C037DD0 */ jal func_800DF740
/* 00FDC4 800349C4 00000000 */ nop
/* 00FDC8 800349C8 0C016754 */ jal func_80059D50
/* 00FDCC 800349CC 00000000 */ nop
/* 00FDD0 800349D0 3C02800A */ lui $v0, 0x800a
/* 00FDD4 800349D4 8C42A658 */ lw $v0, -0x59a8($v0)
/* 00FDD8 800349D8 8C430004 */ lw $v1, 4($v0)
/* 00FDDC 800349DC 3C02800A */ lui $v0, 0x800a
/* 00FDE0 800349E0 8C42A64C */ lw $v0, -0x59b4($v0)
/* 00FDE4 800349E4 1462007E */ bne $v1, $v0, .L80034BE0
/* 00FDE8 800349E8 24020004 */ addiu $v0, $zero, 4
/* 00FDEC 800349EC 3C01800A */ lui $at, 0x800a
/* 00FDF0 800349F0 A0220920 */ sb $v0, 0x920($at)
/* 00FDF4 800349F4 24020002 */ addiu $v0, $zero, 2
/* 00FDF8 800349F8 3C04800A */ lui $a0, 0x800a
/* 00FDFC 800349FC 2484A650 */ addiu $a0, $a0, -0x59b0
/* 00FE00 80034A00 A2020000 */ sb $v0, ($s0)
/* 00FE04 80034A04 3C058007 */ lui $a1, 0x8007
/* 00FE08 80034A08 8CA5419C */ lw $a1, 0x419c($a1)
/* 00FE0C 80034A0C 8C820000 */ lw $v0, ($a0)
/* 00FE10 80034A10 94A30148 */ lhu $v1, 0x148($a1)
/* 00FE14 80034A14 34420008 */ ori $v0, $v0, 8
/* 00FE18 80034A18 AC820000 */ sw $v0, ($a0)
/* 00FE1C 80034A1C 3063FF0F */ andi $v1, $v1, 0xff0f
/* 00FE20 80034A20 34630010 */ ori $v1, $v1, 0x10
/* 00FE24 80034A24 0800D2F8 */ j .L80034BE0
/* 00FE28 80034A28 A4A30148 */ sh $v1, 0x148($a1)
.L80034A2C:
/* 00FE2C 80034A2C 3C06800A */ lui $a2, 0x800a
/* 00FE30 80034A30 24C60920 */ addiu $a2, $a2, 0x920
/* 00FE34 80034A34 80C30000 */ lb $v1, ($a2)
/* 00FE38 80034A38 04600056 */ bltz $v1, .L80034B94
/* 00FE3C 80034A3C 90C20000 */ lbu $v0, ($a2)
/* 00FE40 80034A40 10600005 */ beqz $v1, .L80034A58
/* 00FE44 80034A44 2442FFFF */ addiu $v0, $v0, -1
/* 00FE48 80034A48 A0C20000 */ sb $v0, ($a2)
/* 00FE4C 80034A4C 00021600 */ sll $v0, $v0, 0x18
/* 00FE50 80034A50 1440004C */ bnez $v0, .L80034B84
/* 00FE54 80034A54 00000000 */ nop
.L80034A58:
/* 00FE58 80034A58 3C048007 */ lui $a0, 0x8007
/* 00FE5C 80034A5C 24847950 */ addiu $a0, $a0, 0x7950
/* 00FE60 80034A60 24050002 */ addiu $a1, $zero, 2
/* 00FE64 80034A64 2402FFFF */ addiu $v0, $zero, -1
/* 00FE68 80034A68 0C017CBC */ jal nuGfxSetCfb
/* 00FE6C 80034A6C A0C20000 */ sb $v0, ($a2)
/* 00FE70 80034A70 3C108007 */ lui $s0, 0x8007
/* 00FE74 80034A74 2610419C */ addiu $s0, $s0, 0x419c
/* 00FE78 80034A78 8E030000 */ lw $v1, ($s0)
/* 00FE7C 80034A7C 9462015C */ lhu $v0, 0x15c($v1)
/* 00FE80 80034A80 0C05260E */ jal func_80149838
/* 00FE84 80034A84 A462015E */ sh $v0, 0x15e($v1)
/* 00FE88 80034A88 0C00EC6A */ jal func_8003B1A8
/* 00FE8C 80034A8C 00000000 */ nop
/* 00FE90 80034A90 8E020000 */ lw $v0, ($s0)
/* 00FE94 80034A94 0C016BA8 */ jal allocate_hit_tables
/* 00FE98 80034A98 A0510070 */ sb $s1, 0x70($v0)
/* 00FE9C 80034A9C 0C00AB28 */ jal battle_heap_create
/* 00FEA0 80034AA0 00000000 */ nop
/* 00FEA4 80034AA4 0C018028 */ jal nuContRmbForceStop
/* 00FEA8 80034AA8 00000000 */ nop
/* 00FEAC 80034AAC 0C05259C */ jal func_80149670
/* 00FEB0 80034AB0 0000202D */ daddu $a0, $zero, $zero
/* 00FEB4 80034AB4 0C0B763E */ jal func_802DD8F8
/* 00FEB8 80034AB8 0000202D */ daddu $a0, $zero, $zero
/* 00FEBC 80034ABC 0C045751 */ jal clear_model_data
/* 00FEC0 80034AC0 00000000 */ nop
/* 00FEC4 80034AC4 0C052010 */ jal func_80148040
/* 00FEC8 80034AC8 00000000 */ nop
/* 00FECC 80034ACC 0C05177E */ jal func_80145DF8
/* 00FED0 80034AD0 00000000 */ nop
/* 00FED4 80034AD4 0C0482EC */ jal func_80120BB0
/* 00FED8 80034AD8 00000000 */ nop
/* 00FEDC 80034ADC 0C047889 */ jal func_8011E224
/* 00FEE0 80034AE0 00000000 */ nop
/* 00FEE4 80034AE4 0C048C2E */ jal func_801230B8
/* 00FEE8 80034AE8 00000000 */ nop
/* 00FEEC 80034AEC 3C048020 */ lui $a0, 0x8020
/* 00FEF0 80034AF0 24840000 */ addiu $a0, $a0, 0
/* 00FEF4 80034AF4 3C050003 */ lui $a1, 3
/* 00FEF8 80034AF8 0C0514BA */ jal func_801452E8
/* 00FEFC 80034AFC 34A58000 */ ori $a1, $a1, 0x8000
/* 00FF00 80034B00 0C050440 */ jal func_80141100
/* 00FF04 80034B04 00000000 */ nop
/* 00FF08 80034B08 0C03A6EC */ jal reset_status_menu
/* 00FF0C 80034B0C 00000000 */ nop
/* 00FF10 80034B10 0C04C3FC */ jal clear_item_entity_data
/* 00FF14 80034B14 00000000 */ nop
/* 00FF18 80034B18 0C0B0C77 */ jal clear_script_list
/* 00FF1C 80034B1C 00000000 */ nop
/* 00FF20 80034B20 0C00E12F */ jal func_800384BC
/* 00FF24 80034B24 00000000 */ nop
/* 00FF28 80034B28 0C04432E */ jal func_80110CB8
/* 00FF2C 80034B2C 0000202D */ daddu $a0, $zero, $zero
/* 00FF30 80034B30 0C0515A0 */ jal clear_trigger_data
/* 00FF34 80034B34 00000000 */ nop
/* 00FF38 80034B38 0C05260A */ jal func_80149828
/* 00FF3C 80034B3C 00000000 */ nop
/* 00FF40 80034B40 3C01800A */ lui $at, 0x800a
/* 00FF44 80034B44 AC220924 */ sw $v0, 0x924($at)
/* 00FF48 80034B48 0C0525FF */ jal func_801497FC
/* 00FF4C 80034B4C 0000202D */ daddu $a0, $zero, $zero
/* 00FF50 80034B50 0C052B17 */ jal func_8014AC5C
/* 00FF54 80034B54 00000000 */ nop
/* 00FF58 80034B58 3C048007 */ lui $a0, 0x8007
/* 00FF5C 80034B5C 0C018038 */ jal nuPiReadRomOverlay
/* 00FF60 80034B60 2484795C */ addiu $a0, $a0, 0x795c
/* 00FF64 80034B64 0C091018 */ jal func_80244060
/* 00FF68 80034B68 00000000 */ nop
/* 00FF6C 80034B6C 3C04800A */ lui $a0, 0x800a
/* 00FF70 80034B70 2484A650 */ addiu $a0, $a0, -0x59b0
/* 00FF74 80034B74 8C820000 */ lw $v0, ($a0)
/* 00FF78 80034B78 2403FFF7 */ addiu $v1, $zero, -9
/* 00FF7C 80034B7C 00431024 */ and $v0, $v0, $v1
/* 00FF80 80034B80 AC820000 */ sw $v0, ($a0)
.L80034B84:
/* 00FF84 80034B84 3C02800A */ lui $v0, 0x800a
/* 00FF88 80034B88 80420920 */ lb $v0, 0x920($v0)
/* 00FF8C 80034B8C 04410014 */ bgez $v0, .L80034BE0
/* 00FF90 80034B90 00000000 */ nop
.L80034B94:
/* 00FF94 80034B94 3C10800A */ lui $s0, 0x800a
/* 00FF98 80034B98 26100920 */ addiu $s0, $s0, 0x920
/* 00FF9C 80034B9C 82020000 */ lb $v0, ($s0)
/* 00FFA0 80034BA0 2842FFF6 */ slti $v0, $v0, -0xa
/* 00FFA4 80034BA4 14400007 */ bnez $v0, .L80034BC4
/* 00FFA8 80034BA8 0000202D */ daddu $a0, $zero, $zero
/* 00FFAC 80034BAC 0C091109 */ jal func_80244424
/* 00FFB0 80034BB0 0080282D */ daddu $a1, $a0, $zero
/* 00FFB4 80034BB4 92020000 */ lbu $v0, ($s0)
/* 00FFB8 80034BB8 2442FFFF */ addiu $v0, $v0, -1
/* 00FFBC 80034BBC 0800D2F6 */ j .L80034BD8
/* 00FFC0 80034BC0 A2020000 */ sb $v0, ($s0)
.L80034BC4:
/* 00FFC4 80034BC4 3C028007 */ lui $v0, 0x8007
/* 00FFC8 80034BC8 8C42419C */ lw $v0, 0x419c($v0)
/* 00FFCC 80034BCC 8C440010 */ lw $a0, 0x10($v0)
/* 00FFD0 80034BD0 0C091109 */ jal func_80244424
/* 00FFD4 80034BD4 8C450020 */ lw $a1, 0x20($v0)
.L80034BD8:
/* 00FFD8 80034BD8 3C01800A */ lui $at, 0x800a
/* 00FFDC 80034BDC A4200922 */ sh $zero, 0x922($at)
.L80034BE0:
/* 00FFE0 80034BE0 8FBF0018 */ lw $ra, 0x18($sp)
/* 00FFE4 80034BE4 8FB10014 */ lw $s1, 0x14($sp)
/* 00FFE8 80034BE8 8FB00010 */ lw $s0, 0x10($sp)
/* 00FFEC 80034BEC 03E00008 */ jr $ra
/* 00FFF0 80034BF0 27BD0020 */ addiu $sp, $sp, 0x20
/* 00FFF4 80034BF4 03E00008 */ jr $ra
/* 00FFF8 80034BF8 00000000 */ nop