mirror of
https://github.com/zeldaret/oot
synced 2026-08-30 17:29:30 -04:00
229e0c8629
* Update asm processor * Migrate or improve rodata for a few files
196 lines
8.8 KiB
ArmAsm
196 lines
8.8 KiB
ArmAsm
.rdata
|
|
glabel D_8013C60C
|
|
.asciz "../z_kankyo.c"
|
|
.balign 4
|
|
|
|
glabel D_8013C61C
|
|
.asciz "../z_kankyo.c"
|
|
.balign 4
|
|
|
|
glabel D_8013C62C
|
|
.asciz "../z_kankyo.c"
|
|
.balign 4
|
|
|
|
glabel D_8013C63C
|
|
.asciz "../z_kankyo.c"
|
|
.balign 4
|
|
|
|
.late_rodata
|
|
glabel D_8013C7F4
|
|
.float 0.02
|
|
|
|
.text
|
|
glabel func_80074D6C
|
|
/* AEBF0C 80074D6C 27BDFF98 */ addiu $sp, $sp, -0x68
|
|
/* AEBF10 80074D70 3C010001 */ lui $at, 1
|
|
/* AEBF14 80074D74 AFBF001C */ sw $ra, 0x1c($sp)
|
|
/* AEBF18 80074D78 AFB00018 */ sw $s0, 0x18($sp)
|
|
/* AEBF1C 80074D7C 00814821 */ addu $t1, $a0, $at
|
|
/* AEBF20 80074D80 91221E14 */ lbu $v0, 0x1e14($t1)
|
|
/* AEBF24 80074D84 00808025 */ move $s0, $a0
|
|
/* AEBF28 80074D88 50400005 */ beql $v0, $zero, .L80074DA0
|
|
/* AEBF2C 80074D8C 2401001D */ li $at, 29
|
|
/* AEBF30 80074D90 848E07B2 */ lh $t6, 0x7b2($a0)
|
|
/* AEBF34 80074D94 29C103D4 */ slti $at, $t6, 0x3d4
|
|
/* AEBF38 80074D98 14200003 */ bnez $at, .L80074DA8
|
|
/* AEBF3C 80074D9C 2401001D */ li $at, 29
|
|
.L80074DA0:
|
|
/* AEBF40 80074DA0 54410065 */ bnel $v0, $at, .L80074F38
|
|
/* AEBF44 80074DA4 912E0B0D */ lbu $t6, 0xb0d($t1)
|
|
.L80074DA8:
|
|
/* AEBF48 80074DA8 8E050000 */ lw $a1, ($s0)
|
|
/* AEBF4C 80074DAC 3C068014 */ lui $a2, %hi(D_8013C60C) # $a2, 0x8014
|
|
/* AEBF50 80074DB0 24C6C60C */ addiu $a2, %lo(D_8013C60C) # addiu $a2, $a2, -0x39f4
|
|
/* AEBF54 80074DB4 AFA90028 */ sw $t1, 0x28($sp)
|
|
/* AEBF58 80074DB8 27A40050 */ addiu $a0, $sp, 0x50
|
|
/* AEBF5C 80074DBC 24070BD8 */ li $a3, 3032
|
|
/* AEBF60 80074DC0 0C031AB1 */ jal Graph_OpenDisps
|
|
/* AEBF64 80074DC4 AFA50060 */ sw $a1, 0x60($sp)
|
|
/* AEBF68 80074DC8 0C024E2D */ jal func_800938B4
|
|
/* AEBF6C 80074DCC 8E040000 */ lw $a0, ($s0)
|
|
/* AEBF70 80074DD0 860F07B2 */ lh $t7, 0x7b2($s0)
|
|
/* AEBF74 80074DD4 241803E8 */ li $t8, 1000
|
|
/* AEBF78 80074DD8 8FA90028 */ lw $t1, 0x28($sp)
|
|
/* AEBF7C 80074DDC 030FC823 */ subu $t9, $t8, $t7
|
|
/* AEBF80 80074DE0 44992000 */ mtc1 $t9, $f4
|
|
/* AEBF84 80074DE4 3C018014 */ lui $at, %hi(D_8013C7F4)
|
|
/* AEBF88 80074DE8 C428C7F4 */ lwc1 $f8, %lo(D_8013C7F4)($at)
|
|
/* AEBF8C 80074DEC 468021A0 */ cvt.s.w $f6, $f4
|
|
/* AEBF90 80074DF0 912A1E14 */ lbu $t2, 0x1e14($t1)
|
|
/* AEBF94 80074DF4 2401001D */ li $at, 29
|
|
/* AEBF98 80074DF8 8FA80060 */ lw $t0, 0x60($sp)
|
|
/* AEBF9C 80074DFC 3C0CFA00 */ lui $t4, 0xfa00
|
|
/* AEBFA0 80074E00 27A40050 */ addiu $a0, $sp, 0x50
|
|
/* AEBFA4 80074E04 46083002 */ mul.s $f0, $f6, $f8
|
|
/* AEBFA8 80074E08 15410004 */ bne $t2, $at, .L80074E1C
|
|
/* AEBFAC 80074E0C 3C068014 */ lui $a2, %hi(D_8013C61C) # $a2, 0x8014
|
|
/* AEBFB0 80074E10 3C013F80 */ li $at, 0x3F800000 # 0.000000
|
|
/* AEBFB4 80074E14 44810000 */ mtc1 $at, $f0
|
|
/* AEBFB8 80074E18 00000000 */ nop
|
|
.L80074E1C:
|
|
/* AEBFBC 80074E1C 3C013F80 */ li $at, 0x3F800000 # 0.000000
|
|
/* AEBFC0 80074E20 44811000 */ mtc1 $at, $f2
|
|
/* AEBFC4 80074E24 24C6C61C */ addiu $a2, %lo(D_8013C61C) # addiu $a2, $a2, -0x39e4
|
|
/* AEBFC8 80074E28 24070BE3 */ li $a3, 3043
|
|
/* AEBFCC 80074E2C 4600103C */ c.lt.s $f2, $f0
|
|
/* AEBFD0 80074E30 00000000 */ nop
|
|
/* AEBFD4 80074E34 45020003 */ bc1fl .L80074E44
|
|
/* AEBFD8 80074E38 8D0202C0 */ lw $v0, 0x2c0($t0)
|
|
/* AEBFDC 80074E3C 46001006 */ mov.s $f0, $f2
|
|
/* AEBFE0 80074E40 8D0202C0 */ lw $v0, 0x2c0($t0)
|
|
.L80074E44:
|
|
/* AEBFE4 80074E44 3C01437F */ li $at, 0x437F0000 # 0.000000
|
|
/* AEBFE8 80074E48 44815000 */ mtc1 $at, $f10
|
|
/* AEBFEC 80074E4C 244B0008 */ addiu $t3, $v0, 8
|
|
/* AEBFF0 80074E50 AD0B02C0 */ sw $t3, 0x2c0($t0)
|
|
/* AEBFF4 80074E54 46005402 */ mul.s $f16, $f10, $f0
|
|
/* AEBFF8 80074E58 AC4C0000 */ sw $t4, ($v0)
|
|
/* AEBFFC 80074E5C 921907AF */ lbu $t9, 0x7af($s0)
|
|
/* AEC000 80074E60 920E07B1 */ lbu $t6, 0x7b1($s0)
|
|
/* AEC004 80074E64 920D07B0 */ lbu $t5, 0x7b0($s0)
|
|
/* AEC008 80074E68 00195600 */ sll $t2, $t9, 0x18
|
|
/* AEC00C 80074E6C 000EC200 */ sll $t8, $t6, 8
|
|
/* AEC010 80074E70 030A5825 */ or $t3, $t8, $t2
|
|
/* AEC014 80074E74 24180001 */ li $t8, 1
|
|
/* AEC018 80074E78 4459F800 */ cfc1 $t9, $31
|
|
/* AEC01C 80074E7C 44D8F800 */ ctc1 $t8, $31
|
|
/* AEC020 80074E80 000D7400 */ sll $t6, $t5, 0x10
|
|
/* AEC024 80074E84 016E7825 */ or $t7, $t3, $t6
|
|
/* AEC028 80074E88 460084A4 */ cvt.w.s $f18, $f16
|
|
/* AEC02C 80074E8C 3C014F00 */ lui $at, 0x4f00
|
|
/* AEC030 80074E90 3C0BF64F */ li $t3, 0xF64F0000 # 0.000000
|
|
/* AEC034 80074E94 4458F800 */ cfc1 $t8, $31
|
|
/* AEC038 80074E98 00000000 */ nop
|
|
/* AEC03C 80074E9C 33180078 */ andi $t8, $t8, 0x78
|
|
/* AEC040 80074EA0 53000013 */ beql $t8, $zero, .L80074EF0
|
|
/* AEC044 80074EA4 44189000 */ mfc1 $t8, $f18
|
|
/* AEC048 80074EA8 44819000 */ mtc1 $at, $f18
|
|
/* AEC04C 80074EAC 24180001 */ li $t8, 1
|
|
/* AEC050 80074EB0 46128481 */ sub.s $f18, $f16, $f18
|
|
/* AEC054 80074EB4 44D8F800 */ ctc1 $t8, $31
|
|
/* AEC058 80074EB8 00000000 */ nop
|
|
/* AEC05C 80074EBC 460094A4 */ cvt.w.s $f18, $f18
|
|
/* AEC060 80074EC0 4458F800 */ cfc1 $t8, $31
|
|
/* AEC064 80074EC4 00000000 */ nop
|
|
/* AEC068 80074EC8 33180078 */ andi $t8, $t8, 0x78
|
|
/* AEC06C 80074ECC 17000005 */ bnez $t8, .L80074EE4
|
|
/* AEC070 80074ED0 00000000 */ nop
|
|
/* AEC074 80074ED4 44189000 */ mfc1 $t8, $f18
|
|
/* AEC078 80074ED8 3C018000 */ lui $at, 0x8000
|
|
/* AEC07C 80074EDC 10000007 */ b .L80074EFC
|
|
/* AEC080 80074EE0 0301C025 */ or $t8, $t8, $at
|
|
.L80074EE4:
|
|
/* AEC084 80074EE4 10000005 */ b .L80074EFC
|
|
/* AEC088 80074EE8 2418FFFF */ li $t8, -1
|
|
/* AEC08C 80074EEC 44189000 */ mfc1 $t8, $f18
|
|
.L80074EF0:
|
|
/* AEC090 80074EF0 00000000 */ nop
|
|
/* AEC094 80074EF4 0700FFFB */ bltz $t8, .L80074EE4
|
|
/* AEC098 80074EF8 00000000 */ nop
|
|
.L80074EFC:
|
|
/* AEC09C 80074EFC 330A00FF */ andi $t2, $t8, 0xff
|
|
/* AEC0A0 80074F00 01EA6025 */ or $t4, $t7, $t2
|
|
/* AEC0A4 80074F04 AC4C0004 */ sw $t4, 4($v0)
|
|
/* AEC0A8 80074F08 8D0302C0 */ lw $v1, 0x2c0($t0)
|
|
/* AEC0AC 80074F0C 356BC3BC */ ori $t3, $t3, 0xc3bc
|
|
/* AEC0B0 80074F10 44D9F800 */ ctc1 $t9, $31
|
|
/* AEC0B4 80074F14 246D0008 */ addiu $t5, $v1, 8
|
|
/* AEC0B8 80074F18 AD0D02C0 */ sw $t5, 0x2c0($t0)
|
|
/* AEC0BC 80074F1C AC600004 */ sw $zero, 4($v1)
|
|
/* AEC0C0 80074F20 AC6B0000 */ sw $t3, ($v1)
|
|
/* AEC0C4 80074F24 8E050000 */ lw $a1, ($s0)
|
|
/* AEC0C8 80074F28 0C031AD5 */ jal Graph_CloseDisps
|
|
/* AEC0CC 80074F2C AFA90028 */ sw $t1, 0x28($sp)
|
|
/* AEC0D0 80074F30 8FA90028 */ lw $t1, 0x28($sp)
|
|
/* AEC0D4 80074F34 912E0B0D */ lbu $t6, 0xb0d($t1)
|
|
.L80074F38:
|
|
/* AEC0D8 80074F38 3C068014 */ lui $a2, %hi(D_8013C62C) # $a2, 0x8014
|
|
/* AEC0DC 80074F3C 24C6C62C */ addiu $a2, %lo(D_8013C62C) # addiu $a2, $a2, -0x39d4
|
|
/* AEC0E0 80074F40 11C00027 */ beqz $t6, .L80074FE0
|
|
/* AEC0E4 80074F44 27A40034 */ addiu $a0, $sp, 0x34
|
|
/* AEC0E8 80074F48 8E050000 */ lw $a1, ($s0)
|
|
/* AEC0EC 80074F4C AFA90028 */ sw $t1, 0x28($sp)
|
|
/* AEC0F0 80074F50 24070BE8 */ li $a3, 3048
|
|
/* AEC0F4 80074F54 0C031AB1 */ jal Graph_OpenDisps
|
|
/* AEC0F8 80074F58 AFA50044 */ sw $a1, 0x44($sp)
|
|
/* AEC0FC 80074F5C 0C024E2D */ jal func_800938B4
|
|
/* AEC100 80074F60 8E040000 */ lw $a0, ($s0)
|
|
/* AEC104 80074F64 8FA80044 */ lw $t0, 0x44($sp)
|
|
/* AEC108 80074F68 8FA90028 */ lw $t1, 0x28($sp)
|
|
/* AEC10C 80074F6C 3C18FA00 */ lui $t8, 0xfa00
|
|
/* AEC110 80074F70 8D0302C0 */ lw $v1, 0x2c0($t0)
|
|
/* AEC114 80074F74 3C068014 */ lui $a2, %hi(D_8013C63C) # $a2, 0x8014
|
|
/* AEC118 80074F78 24C6C63C */ addiu $a2, %lo(D_8013C63C) # addiu $a2, $a2, -0x39c4
|
|
/* AEC11C 80074F7C 24790008 */ addiu $t9, $v1, 8
|
|
/* AEC120 80074F80 AD1902C0 */ sw $t9, 0x2c0($t0)
|
|
/* AEC124 80074F84 AC780000 */ sw $t8, ($v1)
|
|
/* AEC128 80074F88 912D0B0E */ lbu $t5, 0xb0e($t1)
|
|
/* AEC12C 80074F8C 912A0B11 */ lbu $t2, 0xb11($t1)
|
|
/* AEC130 80074F90 91380B0F */ lbu $t8, 0xb0f($t1)
|
|
/* AEC134 80074F94 000D5E00 */ sll $t3, $t5, 0x18
|
|
/* AEC138 80074F98 014B7025 */ or $t6, $t2, $t3
|
|
/* AEC13C 80074F9C 912A0B10 */ lbu $t2, 0xb10($t1)
|
|
/* AEC140 80074FA0 00187C00 */ sll $t7, $t8, 0x10
|
|
/* AEC144 80074FA4 01CF6025 */ or $t4, $t6, $t7
|
|
/* AEC148 80074FA8 000A5A00 */ sll $t3, $t2, 8
|
|
/* AEC14C 80074FAC 018BC825 */ or $t9, $t4, $t3
|
|
/* AEC150 80074FB0 AC790004 */ sw $t9, 4($v1)
|
|
/* AEC154 80074FB4 8D0302C0 */ lw $v1, 0x2c0($t0)
|
|
/* AEC158 80074FB8 3C0EF64F */ lui $t6, (0xF64FC3BC >> 16) # lui $t6, 0xf64f
|
|
/* AEC15C 80074FBC 35CEC3BC */ ori $t6, (0xF64FC3BC & 0xFFFF) # ori $t6, $t6, 0xc3bc
|
|
/* AEC160 80074FC0 24780008 */ addiu $t8, $v1, 8
|
|
/* AEC164 80074FC4 AD1802C0 */ sw $t8, 0x2c0($t0)
|
|
/* AEC168 80074FC8 AC600004 */ sw $zero, 4($v1)
|
|
/* AEC16C 80074FCC AC6E0000 */ sw $t6, ($v1)
|
|
/* AEC170 80074FD0 8E050000 */ lw $a1, ($s0)
|
|
/* AEC174 80074FD4 27A40034 */ addiu $a0, $sp, 0x34
|
|
/* AEC178 80074FD8 0C031AD5 */ jal Graph_CloseDisps
|
|
/* AEC17C 80074FDC 24070BF0 */ li $a3, 3056
|
|
.L80074FE0:
|
|
/* AEC180 80074FE0 8FBF001C */ lw $ra, 0x1c($sp)
|
|
/* AEC184 80074FE4 8FB00018 */ lw $s0, 0x18($sp)
|
|
/* AEC188 80074FE8 27BD0068 */ addiu $sp, $sp, 0x68
|
|
/* AEC18C 80074FEC 03E00008 */ jr $ra
|
|
/* AEC190 80074FF0 00000000 */ nop
|
|
|