mirror of
https://github.com/zeldaret/oot
synced 2026-07-09 14:45:41 -04:00
Decompile sleep.c and printutils.c
- Decompile sleep.c (OK) - Decompile printutils.c (OK) - Fix 1 non-matching in z_room.c - Get rid of some magic numbers
This commit is contained in:
@@ -9,148 +9,6 @@
|
||||
|
||||
.align 4
|
||||
|
||||
glabel func_800FF340
|
||||
/* B764E0 800FF340 27BDFFE8 */ addiu $sp, $sp, -0x18
|
||||
/* B764E4 800FF344 AFA5001C */ sw $a1, 0x1c($sp)
|
||||
/* B764E8 800FF348 00802825 */ move $a1, $a0
|
||||
/* B764EC 800FF34C AFBF0014 */ sw $ra, 0x14($sp)
|
||||
/* B764F0 800FF350 AFA40018 */ sw $a0, 0x18($sp)
|
||||
/* B764F4 800FF354 00C03825 */ move $a3, $a2
|
||||
/* B764F8 800FF358 8FA6001C */ lw $a2, 0x1c($sp)
|
||||
/* B764FC 800FF35C 0C0014B8 */ jal _Printf
|
||||
/* B76500 800FF360 8C840000 */ lw $a0, ($a0)
|
||||
/* B76504 800FF364 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
/* B76508 800FF368 27BD0018 */ addiu $sp, $sp, 0x18
|
||||
/* B7650C 800FF36C 03E00008 */ jr $ra
|
||||
/* B76510 800FF370 00000000 */ nop
|
||||
|
||||
glabel func_800FF374
|
||||
/* B76514 800FF374 27BDFFE0 */ addiu $sp, $sp, -0x20
|
||||
/* B76518 800FF378 AFBF0014 */ sw $ra, 0x14($sp)
|
||||
/* B7651C 800FF37C AFA60028 */ sw $a2, 0x28($sp)
|
||||
/* B76520 800FF380 AFA50024 */ sw $a1, 0x24($sp)
|
||||
/* B76524 800FF384 AFA7002C */ sw $a3, 0x2c($sp)
|
||||
/* B76528 800FF388 0C03FCD0 */ jal func_800FF340
|
||||
/* B7652C 800FF38C 27A60028 */ addiu $a2, $sp, 0x28
|
||||
/* B76530 800FF390 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
/* B76534 800FF394 27BD0020 */ addiu $sp, $sp, 0x20
|
||||
/* B76538 800FF398 03E00008 */ jr $ra
|
||||
/* B7653C 800FF39C 00000000 */ nop
|
||||
|
||||
glabel func_800FF3A0
|
||||
/* B76540 800FF3A0 27BDFF98 */ addiu $sp, $sp, -0x68
|
||||
/* B76544 800FF3A4 AFBF0024 */ sw $ra, 0x24($sp)
|
||||
/* B76548 800FF3A8 AFA40068 */ sw $a0, 0x68($sp)
|
||||
/* B7654C 800FF3AC AFA5006C */ sw $a1, 0x6c($sp)
|
||||
/* B76550 800FF3B0 27A5004C */ addiu $a1, $sp, 0x4c
|
||||
/* B76554 800FF3B4 27A40050 */ addiu $a0, $sp, 0x50
|
||||
/* B76558 800FF3B8 0C001874 */ jal osCreateMesgQueue
|
||||
/* B7655C 800FF3BC 24060001 */ li $a2, 1
|
||||
/* B76560 800FF3C0 240E0000 */ li $t6, 0
|
||||
/* B76564 800FF3C4 240F0000 */ li $t7, 0
|
||||
/* B76568 800FF3C8 27B80050 */ addiu $t8, $sp, 0x50
|
||||
/* B7656C 800FF3CC AFB80018 */ sw $t8, 0x18($sp)
|
||||
/* B76570 800FF3D0 AFAF0014 */ sw $t7, 0x14($sp)
|
||||
/* B76574 800FF3D4 AFAE0010 */ sw $t6, 0x10($sp)
|
||||
/* B76578 800FF3D8 27A40028 */ addiu $a0, $sp, 0x28
|
||||
/* B7657C 800FF3DC 8FA60068 */ lw $a2, 0x68($sp)
|
||||
/* B76580 800FF3E0 8FA7006C */ lw $a3, 0x6c($sp)
|
||||
/* B76584 800FF3E4 0C0418B8 */ jal osSetTimer
|
||||
/* B76588 800FF3E8 AFA0001C */ sw $zero, 0x1c($sp)
|
||||
/* B7658C 800FF3EC 27A40050 */ addiu $a0, $sp, 0x50
|
||||
/* B76590 800FF3F0 00002825 */ move $a1, $zero
|
||||
/* B76594 800FF3F4 0C000CA0 */ jal osRecvMesg
|
||||
/* B76598 800FF3F8 24060001 */ li $a2, 1
|
||||
/* B7659C 800FF3FC 8FBF0024 */ lw $ra, 0x24($sp)
|
||||
/* B765A0 800FF400 27BD0068 */ addiu $sp, $sp, 0x68
|
||||
/* B765A4 800FF404 03E00008 */ jr $ra
|
||||
/* B765A8 800FF408 00000000 */ nop
|
||||
|
||||
glabel func_800FF40C
|
||||
/* B765AC 800FF40C 27BDFFE8 */ addiu $sp, $sp, -0x18
|
||||
/* B765B0 800FF410 AFBF0014 */ sw $ra, 0x14($sp)
|
||||
/* B765B4 800FF414 AFA40018 */ sw $a0, 0x18($sp)
|
||||
/* B765B8 800FF418 00802825 */ move $a1, $a0
|
||||
/* B765BC 800FF41C 24040000 */ li $a0, 0
|
||||
/* B765C0 800FF420 24060000 */ li $a2, 0
|
||||
/* B765C4 800FF424 0C000E1E */ jal __ll_mul
|
||||
/* B765C8 800FF428 24070003 */ li $a3, 3
|
||||
/* B765CC 800FF42C 00402025 */ move $a0, $v0
|
||||
/* B765D0 800FF430 00602825 */ move $a1, $v1
|
||||
/* B765D4 800FF434 24060000 */ li $a2, 0
|
||||
/* B765D8 800FF438 0C000DDE */ jal __ull_div
|
||||
/* B765DC 800FF43C 24070040 */ li $a3, 64
|
||||
/* B765E0 800FF440 00402025 */ move $a0, $v0
|
||||
/* B765E4 800FF444 0C03FCE8 */ jal func_800FF3A0
|
||||
/* B765E8 800FF448 00602825 */ move $a1, $v1
|
||||
/* B765EC 800FF44C 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
/* B765F0 800FF450 27BD0018 */ addiu $sp, $sp, 0x18
|
||||
/* B765F4 800FF454 03E00008 */ jr $ra
|
||||
/* B765F8 800FF458 00000000 */ nop
|
||||
|
||||
glabel func_800FF45C
|
||||
/* B765FC 800FF45C 27BDFFE8 */ addiu $sp, $sp, -0x18
|
||||
/* B76600 800FF460 AFBF0014 */ sw $ra, 0x14($sp)
|
||||
/* B76604 800FF464 AFA40018 */ sw $a0, 0x18($sp)
|
||||
/* B76608 800FF468 00802825 */ move $a1, $a0
|
||||
/* B7660C 800FF46C 24040000 */ li $a0, 0
|
||||
/* B76610 800FF470 24060000 */ li $a2, 0
|
||||
/* B76614 800FF474 0C000E1E */ jal __ll_mul
|
||||
/* B76618 800FF478 24070BB8 */ li $a3, 3000
|
||||
/* B7661C 800FF47C 00402025 */ move $a0, $v0
|
||||
/* B76620 800FF480 00602825 */ move $a1, $v1
|
||||
/* B76624 800FF484 24060000 */ li $a2, 0
|
||||
/* B76628 800FF488 0C000DDE */ jal __ull_div
|
||||
/* B7662C 800FF48C 24070040 */ li $a3, 64
|
||||
/* B76630 800FF490 00402025 */ move $a0, $v0
|
||||
/* B76634 800FF494 0C03FCE8 */ jal func_800FF3A0
|
||||
/* B76638 800FF498 00602825 */ move $a1, $v1
|
||||
/* B7663C 800FF49C 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
/* B76640 800FF4A0 27BD0018 */ addiu $sp, $sp, 0x18
|
||||
/* B76644 800FF4A4 03E00008 */ jr $ra
|
||||
/* B76648 800FF4A8 00000000 */ nop
|
||||
|
||||
glabel func_800FF4AC
|
||||
/* B7664C 800FF4AC 27BDFFE8 */ addiu $sp, $sp, -0x18
|
||||
/* B76650 800FF4B0 AFBF0014 */ sw $ra, 0x14($sp)
|
||||
/* B76654 800FF4B4 AFA40018 */ sw $a0, 0x18($sp)
|
||||
/* B76658 800FF4B8 00802825 */ move $a1, $a0
|
||||
/* B7665C 800FF4BC 3C0702CB */ lui $a3, (0x02CB4178 >> 16) # lui $a3, 0x2cb
|
||||
/* B76660 800FF4C0 34E74178 */ ori $a3, (0x02CB4178 & 0xFFFF) # ori $a3, $a3, 0x4178
|
||||
/* B76664 800FF4C4 24040000 */ li $a0, 0
|
||||
/* B76668 800FF4C8 0C000E1E */ jal __ll_mul
|
||||
/* B7666C 800FF4CC 24060000 */ li $a2, 0
|
||||
/* B76670 800FF4D0 00402025 */ move $a0, $v0
|
||||
/* B76674 800FF4D4 00602825 */ move $a1, $v1
|
||||
/* B76678 800FF4D8 24060000 */ li $a2, 0
|
||||
/* B7667C 800FF4DC 0C000DDE */ jal __ull_div
|
||||
/* B76680 800FF4E0 240703E8 */ li $a3, 1000
|
||||
/* B76684 800FF4E4 00402025 */ move $a0, $v0
|
||||
/* B76688 800FF4E8 0C03FCE8 */ jal func_800FF3A0
|
||||
/* B7668C 800FF4EC 00602825 */ move $a1, $v1
|
||||
/* B76690 800FF4F0 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
/* B76694 800FF4F4 27BD0018 */ addiu $sp, $sp, 0x18
|
||||
/* B76698 800FF4F8 03E00008 */ jr $ra
|
||||
/* B7669C 800FF4FC 00000000 */ nop
|
||||
|
||||
glabel func_800FF500
|
||||
/* B766A0 800FF500 27BDFFE8 */ addiu $sp, $sp, -0x18
|
||||
/* B766A4 800FF504 AFBF0014 */ sw $ra, 0x14($sp)
|
||||
/* B766A8 800FF508 AFA40018 */ sw $a0, 0x18($sp)
|
||||
/* B766AC 800FF50C 00802825 */ move $a1, $a0
|
||||
/* B766B0 800FF510 3C0702CB */ lui $a3, (0x02CB4178 >> 16) # lui $a3, 0x2cb
|
||||
/* B766B4 800FF514 34E74178 */ ori $a3, (0x02CB4178 & 0xFFFF) # ori $a3, $a3, 0x4178
|
||||
/* B766B8 800FF518 24040000 */ li $a0, 0
|
||||
/* B766BC 800FF51C 0C000E1E */ jal __ll_mul
|
||||
/* B766C0 800FF520 24060000 */ li $a2, 0
|
||||
/* B766C4 800FF524 00402025 */ move $a0, $v0
|
||||
/* B766C8 800FF528 0C03FCE8 */ jal func_800FF3A0
|
||||
/* B766CC 800FF52C 00602825 */ move $a1, $v1
|
||||
/* B766D0 800FF530 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
/* B766D4 800FF534 27BD0018 */ addiu $sp, $sp, 0x18
|
||||
/* B766D8 800FF538 03E00008 */ jr $ra
|
||||
/* B766DC 800FF53C 00000000 */ nop
|
||||
|
||||
glabel func_800FF540
|
||||
/* B766E0 800FF540 30C300FF */ andi $v1, $a2, 0xff
|
||||
/* B766E4 800FF544 00A03825 */ move $a3, $a1
|
||||
@@ -36,7 +36,7 @@ glabel func_800B1DBC
|
||||
/* B28F7C 800B1DDC 3C048014 */ lui $a0, %hi(D_80142F58) # $a0, 0x8014
|
||||
/* B28F80 800B1DE0 0C00084C */ jal osSyncPrintf
|
||||
/* B28F84 800B1DE4 24842F58 */ addiu $a0, %lo(D_80142F58) # addiu $a0, $a0, 0x2f58
|
||||
/* B28F88 800B1DE8 0C03FD2B */ jal func_800FF4AC
|
||||
/* B28F88 800B1DE8 0C03FD2B */ jal Sleep_Msec
|
||||
/* B28F8C 800B1DEC 24040064 */ li $a0, 100
|
||||
/* B28F90 800B1DF0 8E04000C */ lw $a0, 0xc($s0)
|
||||
/* B28F94 800B1DF4 3C058014 */ lui $a1, %hi(D_80142F68) # $a1, 0x8014
|
||||
|
||||
@@ -1,120 +0,0 @@
|
||||
.rdata
|
||||
glabel D_8013EF8C
|
||||
.asciz "JPEGデータを展開します\n"
|
||||
.balign 4
|
||||
|
||||
glabel D_8013EFA4
|
||||
.asciz "JPEGデータアドレス %08x\n"
|
||||
.balign 4
|
||||
|
||||
glabel D_8013EFC0
|
||||
.asciz "ワークバッファアドレス(Zバッファ)%08x\n"
|
||||
.balign 4
|
||||
|
||||
glabel D_8013EFEC
|
||||
.asciz "成功…だと思う。 time = %6.3f ms \n"
|
||||
.balign 4
|
||||
|
||||
glabel D_8013F010
|
||||
.asciz "ワークバッファから元のアドレスに書き戻します。\n"
|
||||
.balign 4
|
||||
|
||||
glabel D_8013F040
|
||||
.asciz "元のバッファのサイズが150キロバイト無いと暴走するでしょう。\n"
|
||||
.balign 4
|
||||
|
||||
glabel D_8013F080
|
||||
.asciz "失敗!なんで〜\n"
|
||||
.balign 4
|
||||
|
||||
.text
|
||||
glabel func_80096238
|
||||
/* B0D3D8 80096238 27BDFFE0 */ addiu $sp, $sp, -0x20
|
||||
/* B0D3DC 8009623C AFBF0014 */ sw $ra, 0x14($sp)
|
||||
/* B0D3E0 80096240 AFA40020 */ sw $a0, 0x20($sp)
|
||||
/* B0D3E4 80096244 8C8F0000 */ lw $t7, ($a0)
|
||||
/* B0D3E8 80096248 3C01FFD8 */ lui $at, (0xFFD8FFE0 >> 16) # lui $at, 0xffd8
|
||||
/* B0D3EC 8009624C 3421FFE0 */ ori $at, (0xFFD8FFE0 & 0xFFFF) # ori $at, $at, 0xffe0
|
||||
/* B0D3F0 80096250 15E10049 */ bne $t7, $at, .L80096378
|
||||
/* B0D3F4 80096254 3C048014 */ lui $a0, %hi(D_8013EF8C) # $a0, 0x8014
|
||||
/* B0D3F8 80096258 0C00084C */ jal osSyncPrintf
|
||||
/* B0D3FC 8009625C 2484EF8C */ addiu $a0, %lo(D_8013EF8C) # addiu $a0, $a0, -0x1074
|
||||
/* B0D400 80096260 3C048014 */ lui $a0, %hi(D_8013EFA4) # $a0, 0x8014
|
||||
/* B0D404 80096264 2484EFA4 */ addiu $a0, %lo(D_8013EFA4) # addiu $a0, $a0, -0x105c
|
||||
/* B0D408 80096268 0C00084C */ jal osSyncPrintf
|
||||
/* B0D40C 8009626C 8FA50020 */ lw $a1, 0x20($sp)
|
||||
/* B0D410 80096270 3C048014 */ lui $a0, %hi(D_8013EFC0) # $a0, 0x8014
|
||||
/* B0D414 80096274 3C058017 */ lui $a1, %hi(D_801759C0) # $a1, 0x8017
|
||||
/* B0D418 80096278 24A559C0 */ addiu $a1, %lo(D_801759C0) # addiu $a1, $a1, 0x59c0
|
||||
/* B0D41C 8009627C 0C00084C */ jal osSyncPrintf
|
||||
/* B0D420 80096280 2484EFC0 */ addiu $a0, %lo(D_8013EFC0) # addiu $a0, $a0, -0x1040
|
||||
/* B0D424 80096284 0C001A78 */ jal osGetTime
|
||||
/* B0D428 80096288 00000000 */ nop
|
||||
/* B0D42C 8009628C 3C058017 */ lui $a1, %hi(D_801759C0) # $a1, 0x8017
|
||||
/* B0D430 80096290 3C06801A */ lui $a2, %hi(gGfxSPTaskOutputBuffer) # $a2, 0x801a
|
||||
/* B0D434 80096294 3C070001 */ lui $a3, (0x00018000 >> 16) # lui $a3, 1
|
||||
/* B0D438 80096298 AFA20018 */ sw $v0, 0x18($sp)
|
||||
/* B0D43C 8009629C AFA3001C */ sw $v1, 0x1c($sp)
|
||||
/* B0D440 800962A0 34E78000 */ ori $a3, (0x00018000 & 0xFFFF) # ori $a3, $a3, 0x8000
|
||||
/* B0D444 800962A4 24C6B1C0 */ addiu $a2, %lo(gGfxSPTaskOutputBuffer) # addiu $a2, $a2, -0x4e40
|
||||
/* B0D448 800962A8 24A559C0 */ addiu $a1, %lo(D_801759C0) # addiu $a1, $a1, 0x59c0
|
||||
/* B0D44C 800962AC 0C01B906 */ jal func_8006E418
|
||||
/* B0D450 800962B0 8FA40020 */ lw $a0, 0x20($sp)
|
||||
/* B0D454 800962B4 1440002E */ bnez $v0, .L80096370
|
||||
/* B0D458 800962B8 3C048014 */ lui $a0, %hi(D_8013F080)
|
||||
/* B0D45C 800962BC 0C001A78 */ jal osGetTime
|
||||
/* B0D460 800962C0 00000000 */ nop
|
||||
/* B0D464 800962C4 8FB80018 */ lw $t8, 0x18($sp)
|
||||
/* B0D468 800962C8 8FB9001C */ lw $t9, 0x1c($sp)
|
||||
/* B0D46C 800962CC 24060000 */ li $a2, 0
|
||||
/* B0D470 800962D0 00584023 */ subu $t0, $v0, $t8
|
||||
/* B0D474 800962D4 0079082B */ sltu $at, $v1, $t9
|
||||
/* B0D478 800962D8 01012023 */ subu $a0, $t0, $at
|
||||
/* B0D47C 800962DC 00792823 */ subu $a1, $v1, $t9
|
||||
/* B0D480 800962E0 AFA5001C */ sw $a1, 0x1c($sp)
|
||||
/* B0D484 800962E4 AFA40018 */ sw $a0, 0x18($sp)
|
||||
/* B0D488 800962E8 0C000E1E */ jal __ll_mul
|
||||
/* B0D48C 800962EC 24070040 */ li $a3, 64
|
||||
/* B0D490 800962F0 00402025 */ move $a0, $v0
|
||||
/* B0D494 800962F4 00602825 */ move $a1, $v1
|
||||
/* B0D498 800962F8 24060000 */ li $a2, 0
|
||||
/* B0D49C 800962FC 0C000DDE */ jal __ull_div
|
||||
/* B0D4A0 80096300 24070BB8 */ li $a3, 3000
|
||||
/* B0D4A4 80096304 00402025 */ move $a0, $v0
|
||||
/* B0D4A8 80096308 0C0419CA */ jal __ull_to_f
|
||||
/* B0D4AC 8009630C 00602825 */ move $a1, $v1
|
||||
/* B0D4B0 80096310 3C01447A */ li $at, 0x447A0000 # 0.000000
|
||||
/* B0D4B4 80096314 44812000 */ mtc1 $at, $f4
|
||||
/* B0D4B8 80096318 3C048014 */ lui $a0, %hi(D_8013EFEC) # $a0, 0x8014
|
||||
/* B0D4BC 8009631C 2484EFEC */ addiu $a0, %lo(D_8013EFEC) # addiu $a0, $a0, -0x1014
|
||||
/* B0D4C0 80096320 46040183 */ div.s $f6, $f0, $f4
|
||||
/* B0D4C4 80096324 46003221 */ cvt.d.s $f8, $f6
|
||||
/* B0D4C8 80096328 44074000 */ mfc1 $a3, $f8
|
||||
/* B0D4CC 8009632C 44064800 */ mfc1 $a2, $f9
|
||||
/* B0D4D0 80096330 0C00084C */ jal osSyncPrintf
|
||||
/* B0D4D4 80096334 00000000 */ nop
|
||||
/* B0D4D8 80096338 3C048014 */ lui $a0, %hi(D_8013F010) # $a0, 0x8014
|
||||
/* B0D4DC 8009633C 0C00084C */ jal osSyncPrintf
|
||||
/* B0D4E0 80096340 2484F010 */ addiu $a0, %lo(D_8013F010) # addiu $a0, $a0, -0xff0
|
||||
/* B0D4E4 80096344 3C048014 */ lui $a0, %hi(D_8013F040) # $a0, 0x8014
|
||||
/* B0D4E8 80096348 0C00084C */ jal osSyncPrintf
|
||||
/* B0D4EC 8009634C 2484F040 */ addiu $a0, %lo(D_8013F040) # addiu $a0, $a0, -0xfc0
|
||||
/* B0D4F0 80096350 3C048017 */ lui $a0, %hi(D_801759C0) # $a0, 0x8017
|
||||
/* B0D4F4 80096354 3C060002 */ lui $a2, (0x00025800 >> 16) # lui $a2, 2
|
||||
/* B0D4F8 80096358 34C65800 */ ori $a2, (0x00025800 & 0xFFFF) # ori $a2, $a2, 0x5800
|
||||
/* B0D4FC 8009635C 248459C0 */ addiu $a0, %lo(D_801759C0) # addiu $a0, $a0, 0x59c0
|
||||
/* B0D500 80096360 0C001BC4 */ jal bcopy
|
||||
/* B0D504 80096364 8FA50020 */ lw $a1, 0x20($sp)
|
||||
/* B0D508 80096368 10000004 */ b .L8009637C
|
||||
/* B0D50C 8009636C 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
.L80096370:
|
||||
/* B0D510 80096370 0C00084C */ jal osSyncPrintf
|
||||
/* B0D514 80096374 2484F080 */ addiu $a0, %lo(D_8013F080)
|
||||
.L80096378:
|
||||
/* B0D518 80096378 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
.L8009637C:
|
||||
/* B0D51C 8009637C 27BD0020 */ addiu $sp, $sp, 0x20
|
||||
/* B0D520 80096380 00001025 */ move $v0, $zero
|
||||
/* B0D524 80096384 03E00008 */ jr $ra
|
||||
/* B0D528 80096388 00000000 */ nop
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
glabel func_8081F2FC
|
||||
/* 0BADC 8081F2FC 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 0BAE0 8081F300 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 0BAE4 8081F304 0C03FD2B */ jal func_800FF4AC
|
||||
/* 0BAE4 8081F304 0C03FD2B */ jal Sleep_Msec
|
||||
/* 0BAE8 8081F308 24040032 */ addiu $a0, $zero, 0x0032 ## $a0 = 00000032
|
||||
/* 0BAEC 8081F30C 3C048083 */ lui $a0, %hi(D_808321B0) ## $a0 = 80830000
|
||||
/* 0BAF0 8081F310 0C030DDC */ jal func_800C3770
|
||||
|
||||
Reference in New Issue
Block a user