mirror of
https://github.com/pmret/papermario.git
synced 2024-11-18 17:02:46 +01:00
114 lines
4.4 KiB
ArmAsm
114 lines
4.4 KiB
ArmAsm
|
.set noat # allow manual use of $at
|
||
|
.set noreorder # don't insert nops after branches
|
||
|
|
||
|
|
||
|
glabel func_800E0FEC
|
||
|
/* 07A49C 800E0FEC 00041403 */ sra $v0, $a0, 0x10
|
||
|
/* 07A4A0 800E0FF0 304300FF */ andi $v1, $v0, 0xff
|
||
|
/* 07A4A4 800E0FF4 24020001 */ addiu $v0, $zero, 1
|
||
|
/* 07A4A8 800E0FF8 10620009 */ beq $v1, $v0, .L800E1020
|
||
|
/* 07A4AC 800E0FFC 0000282D */ daddu $a1, $zero, $zero
|
||
|
/* 07A4B0 800E1000 24020006 */ addiu $v0, $zero, 6
|
||
|
/* 07A4B4 800E1004 10620003 */ beq $v1, $v0, .L800E1014
|
||
|
/* 07A4B8 800E1008 2402000A */ addiu $v0, $zero, 0xa
|
||
|
/* 07A4BC 800E100C 14620009 */ bne $v1, $v0, .L800E1034
|
||
|
/* 07A4C0 800E1010 00000000 */ nop
|
||
|
.L800E1014:
|
||
|
/* 07A4C4 800E1014 24020001 */ addiu $v0, $zero, 1
|
||
|
/* 07A4C8 800E1018 14620008 */ bne $v1, $v0, .L800E103C
|
||
|
/* 07A4CC 800E101C 24020006 */ addiu $v0, $zero, 6
|
||
|
.L800E1020:
|
||
|
/* 07A4D0 800E1020 3C020001 */ lui $v0, 1
|
||
|
/* 07A4D4 800E1024 3442000C */ ori $v0, $v0, 0xc
|
||
|
/* 07A4D8 800E1028 0044102A */ slt $v0, $v0, $a0
|
||
|
/* 07A4DC 800E102C 1040003C */ beqz $v0, .L800E1120
|
||
|
/* 07A4E0 800E1030 00000000 */ nop
|
||
|
.L800E1034:
|
||
|
/* 07A4E4 800E1034 03E00008 */ jr $ra
|
||
|
/* 07A4E8 800E1038 0080102D */ daddu $v0, $a0, $zero
|
||
|
|
||
|
.L800E103C:
|
||
|
/* 07A4EC 800E103C 14620032 */ bne $v1, $v0, .L800E1108
|
||
|
/* 07A4F0 800E1040 2402000A */ addiu $v0, $zero, 0xa
|
||
|
/* 07A4F4 800E1044 3C020006 */ lui $v0, 6
|
||
|
/* 07A4F8 800E1048 3442000C */ ori $v0, $v0, 0xc
|
||
|
/* 07A4FC 800E104C 14820004 */ bne $a0, $v0, .L800E1060
|
||
|
/* 07A500 800E1050 3C020006 */ lui $v0, 6
|
||
|
/* 07A504 800E1054 3C050006 */ lui $a1, 6
|
||
|
/* 07A508 800E1058 08038448 */ j .L800E1120
|
||
|
/* 07A50C 800E105C 34A5000D */ ori $a1, $a1, 0xd
|
||
|
|
||
|
.L800E1060:
|
||
|
/* 07A510 800E1060 3442000E */ ori $v0, $v0, 0xe
|
||
|
/* 07A514 800E1064 14820004 */ bne $a0, $v0, .L800E1078
|
||
|
/* 07A518 800E1068 3C020006 */ lui $v0, 6
|
||
|
/* 07A51C 800E106C 3C050006 */ lui $a1, 6
|
||
|
/* 07A520 800E1070 08038448 */ j .L800E1120
|
||
|
/* 07A524 800E1074 34A5000F */ ori $a1, $a1, 0xf
|
||
|
|
||
|
.L800E1078:
|
||
|
/* 07A528 800E1078 34420010 */ ori $v0, $v0, 0x10
|
||
|
/* 07A52C 800E107C 14820004 */ bne $a0, $v0, .L800E1090
|
||
|
/* 07A530 800E1080 3C020006 */ lui $v0, 6
|
||
|
/* 07A534 800E1084 3C050006 */ lui $a1, 6
|
||
|
/* 07A538 800E1088 08038448 */ j .L800E1120
|
||
|
/* 07A53C 800E108C 34A50011 */ ori $a1, $a1, 0x11
|
||
|
|
||
|
.L800E1090:
|
||
|
/* 07A540 800E1090 34420012 */ ori $v0, $v0, 0x12
|
||
|
/* 07A544 800E1094 14820004 */ bne $a0, $v0, .L800E10A8
|
||
|
/* 07A548 800E1098 3C020006 */ lui $v0, 6
|
||
|
/* 07A54C 800E109C 3C050006 */ lui $a1, 6
|
||
|
/* 07A550 800E10A0 08038448 */ j .L800E1120
|
||
|
/* 07A554 800E10A4 34A50013 */ ori $a1, $a1, 0x13
|
||
|
|
||
|
.L800E10A8:
|
||
|
/* 07A558 800E10A8 34420014 */ ori $v0, $v0, 0x14
|
||
|
/* 07A55C 800E10AC 14820004 */ bne $a0, $v0, .L800E10C0
|
||
|
/* 07A560 800E10B0 3C020006 */ lui $v0, 6
|
||
|
/* 07A564 800E10B4 3C050006 */ lui $a1, 6
|
||
|
/* 07A568 800E10B8 08038448 */ j .L800E1120
|
||
|
/* 07A56C 800E10BC 34A50015 */ ori $a1, $a1, 0x15
|
||
|
|
||
|
.L800E10C0:
|
||
|
/* 07A570 800E10C0 34420016 */ ori $v0, $v0, 0x16
|
||
|
/* 07A574 800E10C4 14820004 */ bne $a0, $v0, .L800E10D8
|
||
|
/* 07A578 800E10C8 3C020006 */ lui $v0, 6
|
||
|
/* 07A57C 800E10CC 3C050006 */ lui $a1, 6
|
||
|
/* 07A580 800E10D0 08038448 */ j .L800E1120
|
||
|
/* 07A584 800E10D4 34A50017 */ ori $a1, $a1, 0x17
|
||
|
|
||
|
.L800E10D8:
|
||
|
/* 07A588 800E10D8 34420018 */ ori $v0, $v0, 0x18
|
||
|
/* 07A58C 800E10DC 14820004 */ bne $a0, $v0, .L800E10F0
|
||
|
/* 07A590 800E10E0 3C020006 */ lui $v0, 6
|
||
|
/* 07A594 800E10E4 3C050006 */ lui $a1, 6
|
||
|
/* 07A598 800E10E8 08038448 */ j .L800E1120
|
||
|
/* 07A59C 800E10EC 34A50019 */ ori $a1, $a1, 0x19
|
||
|
|
||
|
.L800E10F0:
|
||
|
/* 07A5A0 800E10F0 3442001A */ ori $v0, $v0, 0x1a
|
||
|
/* 07A5A4 800E10F4 1482000A */ bne $a0, $v0, .L800E1120
|
||
|
/* 07A5A8 800E10F8 00000000 */ nop
|
||
|
/* 07A5AC 800E10FC 3C050006 */ lui $a1, 6
|
||
|
/* 07A5B0 800E1100 08038448 */ j .L800E1120
|
||
|
/* 07A5B4 800E1104 34A5001B */ ori $a1, $a1, 0x1b
|
||
|
|
||
|
.L800E1108:
|
||
|
/* 07A5B8 800E1108 14620005 */ bne $v1, $v0, .L800E1120
|
||
|
/* 07A5BC 800E110C 3C02000A */ lui $v0, 0xa
|
||
|
/* 07A5C0 800E1110 34420006 */ ori $v0, $v0, 6
|
||
|
/* 07A5C4 800E1114 0044102A */ slt $v0, $v0, $a0
|
||
|
/* 07A5C8 800E1118 54400001 */ bnezl $v0, .L800E1120
|
||
|
/* 07A5CC 800E111C 24850001 */ addiu $a1, $a0, 1
|
||
|
.L800E1120:
|
||
|
/* 07A5D0 800E1120 14A00003 */ bnez $a1, .L800E1130
|
||
|
/* 07A5D4 800E1124 3C020100 */ lui $v0, 0x100
|
||
|
/* 07A5D8 800E1128 03E00008 */ jr $ra
|
||
|
/* 07A5DC 800E112C 00821025 */ or $v0, $a0, $v0
|
||
|
|
||
|
.L800E1130:
|
||
|
/* 07A5E0 800E1130 03E00008 */ jr $ra
|
||
|
/* 07A5E4 800E1134 00A0102D */ daddu $v0, $a1, $zero
|
||
|
|