If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!
User:Kojin/PS2 Disassembly
Jump to navigation
Jump to search
To do: Everything |
Contents
- 1 C Standard Library
- 2 Sony Computer Entertainment Library
- 2.1 Vu0
- 2.1.1 sceVu0ApplyMatrix
- 2.1.2 sceVu0MulMatrix
- 2.1.3 sceVu0OuterProduct
- 2.1.4 sceVu0InnerProduct
- 2.1.5 sceVu0Normalize
- 2.1.6 sceVu0TransposeMatrix
- 2.1.7 sceVu0InversMatrix
- 2.1.8 sceVu0DivVectorXYZ
- 2.1.9 sceVu0DivVector
- 2.1.10 sceVu0InterVector
- 2.1.11 sceVu0AddVector
- 2.1.12 sceVu0SubVector
- 2.1.13 sceVu0MulVector
- 2.1.14 sceVu0ScaleVector
- 2.1.15 sceVu0TransMatrix
- 2.1.16 sceVu0CopyVector
- 2.1.17 sceVu0CopyMatrix
- 2.1.18 sceVu0FTOI4Vector
- 2.1.19 sceVu0FTOI0Vector
- 2.1.20 sceVu0ITOF4Vector
- 2.1.21 sceVu0ITOF0Vector
- 2.1.22 sceVu0UnitMatrix
- 2.1.23 _sceVu0ecossin
- 2.1.24 sceVu0RotMatrixZ
- 2.1.25 sceVu0RotMatrixX
- 2.1.26 sceVu0RotMatrixY
- 2.1.27 sceVu0RotMatrix
- 2.1.28 sceVu0ClampVector
- 2.1.29 sceVu0CameraMatrix
- 2.1.30 sceVu0NormalLightMatrix
- 2.1.31 sceVu0LightColorMatrix
- 2.1.32 sceVu0ViewSreenMatrix
- 2.1.33 sceVu0DropShadowMatrix
- 2.1.34 sceVu0RotTransPersN
- 2.1.35 sceVu0TorTransPers
- 2.1.36 sceVu0CopyVectorXYZ
- 2.1.37 sceVu0InterVectorXZY
- 2.1.38 sceVu0ScaleVectorXYZ
- 2.1.39 sceVu0ClipScreen
- 2.1.40 sceVu0ClipScreen3
- 2.1.41 sceVu0ClipAll
- 2.2 Vpu0
- 2.3 Adr
- 2.4 Cd
- 2.4.1 sceCdDelayThread
- 2.4.2 sceCdDriveCallback
- 2.4.3 sceCdInitEeCB
- 2.4.4 sceCdPOffCallback
- 2.4.5 sceCdSearchFile
- 2.4.6 sceCdNcmdDiskReady
- 2.4.7 sceCdInit
- 2.4.8 sceCdDiskReady
- 2.4.9 sceCdMmode
- 2.4.10 sceCdRead
- 2.4.11 sceCdSeek
- 2.4.12 sceCdGetError
- 2.4.13 sceCDBreak
- 2.4.14 sceCdPowerOff
- 2.4.15 sceCdStInit
- 2.4.16 sceCdStStart
- 2.4.17 sceCdStSeekF
- 2.4.18 sceCdStSeek
- 2.4.19 sceCdStRead
- 2.4.20 sceCdStPause
- 2.4.21 sceCdStResume
- 2.4.22 sceCdStStat
- 2.4.23 sceCdStream
- 2.5 Gs
- 2.6 Sif
- 2.1 Vu0
C Standard Library
string.h
memchr
Signature |
---|
# void *__cdecl memchr(const void *ptr, int value, unsigned int num) memchr: sltiu $v0, $a2, 0x10 bnez $v0, loc_2E32A8 andi $a1, 0xFF andi $v0, $a0, 0xF bnez $v0, loc_2E32A8 move $a3, $a0 dsll $v1, $a1, 8 li $v0, 0x1010101 dsll $v0, 16 ori $v0, 0x101 dsll $v0, 16 ori $v0, 0x101 daddu $t2, $v1, $a1 li $v1, 0x80808080 dsll $v1, 16 ori $v1, 0x8080 dsll $v1, 16 ori $v1, 0x8080 pcpyh $t0, $t2 pcpyld $t1, $t0, $t0 move $a0, $v0 pcpyld $t0, $v1, $v1 loc_2E3268: # CODE XREF: memchr+94 lq $v0, 0($a3) pxor $v0, $t1 pcpyld $t2, $a0, $a0 pnor $v1, $zero, $v0 psubb $v0, $t2 pand $v0, $v1 pand $v0, $t0 pcpyud $v1, $v0, $t1 or $v0, $v1 bnezl $v0, loc_2E32A8 move $a0, $a3 addiu $a2, -0x10 sltiu $v0, $a2, 0x10 beqz $v0, loc_2E3268 addiu $a3, 0x10 move $a0, $a3 loc_2E32A8: # CODE XREF: memchr+4, memchr+10 lui $v0, 0xFFFF addiu $a2, -1 li $v0, 0xFFFFFFFF beq $a2, $v0, locret_2E32D8 nop li $v1, 0xFFFFFFFF loc_2E32C4: # CODE XREF: memchr+C8 lbu $v0, 0($a0) beq $v0, $a1, locret_2E32E0 addiu $a2, -1 bne $a2, $v1, loc_2E32C4 addiu $a0, 1 locret_2E32D8: # CODE XREF: memchr+AC jr $ra move $v0, $zero # --------------------------------------------------------------------------- locret_2E32E0: # CODE XREF: memchr+C0 jr $ra move $v0, $a0 # End of function memchr |
memcmp
Signature |
---|
# int __cdecl memcmp(const void *ptr1, const void *ptr2, unsigned int num) memcmp: sltiu $v0, $a2, 0x10 bnez $v0, loc_2E3334 or $v0, $a0, $a1 andi $v0, 0xF bnez $v0, loc_2E3334 nop loc_2E3300: # CODE XREF: memcmp+44 lq $v1, 0($a0) sltiu $a3, $a2, 0x20 lq $v0, 0($a1) addiu $a0, 0x10 pxor $t0, $v0, $v1 addiu $v0, $a1, 0x10 pcpyud $t2, $t0, $a3 or $t1, $t2, $t0 movz $a1, $v0, $t1 bnezl $t1, loc_2E3334 addiu $a0, -0x10 beqz $a3, loc_2E3300 addiu $a2, -0x10 loc_2E3334: # CODE XREF: memcmp+4, memcmp+10, memcmp+3C lui $v0, 0xFFFF addiu $a2, -1 li $v0, 0xFFFFFFFF beq $a2, $v0, locret_2E3374 nop li $a3, 0xFFFFFFFF loc_2E3350: # CODE XREF: memcmp+84 lbu $v1, 0($a0) lbu $v0, 0($a1) beq $v1, $v0, loc_2E3368 addiu $a0, 1 jr $ra subu $v0, $v1, $v0 # --------------------------------------------------------------------------- loc_2E3368: # CODE XREF: memcmp+70 addiu $a2, -1 bne $a2, $a3, loc_2E3350 addiu $a1, 1 locret_2E3374: # CODE XREF: memcmp+58 jr $ra move $v0, $zero # End of function memcmp |
memcpy
Signature |
---|
# void *__cdecl memcpy(void *destination, const void *source, unsigned int num) memcpy: move $t0, $a0 sltiu $v0, $a2, 0x20 bnez $v0, loc_2E33FC move $v1, $t0 or $v0, $a1, $t0 andi $v0, 0xF bnezl $v0, loc_2E3400 addiu $a2, -1 move $a3, $t0 loc_2E33A4: # CODE XREF: memcpy+48 lq $v1, 0($a1) addiu $a2, -0x20 addiu $a1, 0x10 sltiu $a0, $a2, 0x20 sq $v1, 0($a3) addiu $a3, 0x10 lq $v0, 0($a1) addiu $a1, 0x10 sq $v0, 0($a3) beqz $a0, loc_2E33A4 addiu $a3, 0x10 sltiu $v0, $a2, 8 bnez $v0, loc_2E33FC move $v1, $a3 loc_2E33DC: # CODE XREF: memcpy+70 ld $v1, 0($a1) addiu $a2, -8 addiu $a1, 8 sltiu $v0, $a2, 8 sd $v1, 0($a3) beqz $v0, loc_2E33DC addiu $a3, 8 move $v1, $a3 loc_2E33FC: # CODE XREF: memcpy+8, memcpy+54 addiu $a2, -1 loc_2E3400: # CODE XREF: memcpy+18 dli $v0, 0xFFFFFFFFFFFFFFFF beq $a2, $v0, return move $a0, $v0 loc_2E340C: # CODE XREF: memcpy+A0 lbu $v0, 0($a1) addiu $a2, -1 addiu $a1, 1 sb $v0, 0($v1) addiu $v1, 1 bne $a2, $a0, loc_2E340C nop return: # CODE XREF: memcpy+84 jr $ra move $v0, $t0 # End of function memcpy |
memmove
Signature |
---|
# void *__cdecl memmove(void *destination, const void *source, unsigned int num) memmove: move $t0, $a0 sltu $v0, $a1, $t0 beqz $v0, loc_2E3488 move $v1, $t0 addu $a3, $a1, $a2 sltu $v0, $t0, $a3 beqz $v0, loc_2E3488 dli $v0, 0xFFFFFFFFFFFFFFFF addu $v1, $t0, $a2 addiu $a2, -1 beq $a2, $v0, locret_2E352C move $a1, $a3 move $a0, $v0 loc_2E3464: # CODE XREF: memmove+48 addiu $a1, -1 addiu $v1, -1 lbu $v0, 0($a1) addiu $a2, -1 sb $v0, 0($v1) bne $a2, $a0, loc_2E3464 nop jr $ra move $v0, $t0 # --------------------------------------------------------------------------- loc_2E3488: # CODE XREF: memmove+8, memmove+18 sltiu $v0, $a2, 0x20 bnezl $v0, loc_2E3504 addiu $a2, -1 or $v0, $a1, $v1 andi $v0, 0xF bnezl $v0, loc_2E3504 addiu $a2, -1 move $a3, $v1 loc_2E34A8: # CODE XREF: memmove+9C lq $v1, 0($a1) addiu $a2, -0x20 addiu $a1, 0x10 sltiu $a0, $a2, 0x20 sq $v1, 0($a3) addiu $a3, 0x10 lq $v0, 0($a1) addiu $a1, 0x10 sq $v0, 0($a3) beqz $a0, loc_2E34A8 addiu $a3, 0x10 sltiu $v0, $a2, 8 bnez $v0, loc_2E3500 move $v1, $a3 loc_2E34E0: # CODE XREF: memmove+C4 ld $v1, 0($a1) addiu $a2, -8 addiu $a1, 8 sltiu $v0, $a2, 8 sd $v1, 0($a3) beqz $v0, loc_2E34E0 addiu $a3, 8 move $v1, $a3 loc_2E3500: # CODE XREF: memmove+A8 addiu $a2, -1 loc_2E3504: # CODE XREF: memmove+5C, memmove+6C dli $v0, 0xFFFFFFFFFFFFFFFF beq $a2, $v0, locret_2E352C move $a0, $v0 loc_2E3510: # CODE XREF: memmove+F4 lbu $v0, 0($a1) addiu $a2, -1 addiu $a1, 1 sb $v0, 0($v1) addiu $v1, 1 bne $a2, $a0, loc_2E3510 nop locret_2E352C: # CODE XREF: memmove+28, memmove+D8 jr $ra move $v0, $t0 # End of function memmove |
memset
Signature |
---|
# void *__cdecl memset(void *ptr, int value, size_t num) memset: sltiu $v0, $a2, 8 bnez $v0, loc_2E35B8 move $v1, $a0 andi $v0, $a0, 0xF bnez $v0, loc_2E35B8 move $a3, $a0 andi $t1, $a1, 0xFF sltiu $t2, $a2, 0x20 move $t0, $t1 dsll $v1, $t0, 8 or $t0, $v1, $t1 pcpyh $v1, $t0 bnez $t2, loc_2E35A4 sltiu $v0, $a2, 8 pcpyld $t0, $v1, $v1 loc_2E3574: # CODE XREF: memset+50 sq $t0, 0($a3) addiu $a2, -0x20 addiu $a3, 0x10 sltiu $v0, $a2, 0x20 sq $t0, 0($a3) beqz $v0, loc_2E3574 addiu $a3, 0x10 b loc_2E35A4 sltiu $v0, $a2, 8 # --------------------------------------------------------------------------- loc_2E3598: # CODE XREF: memset+74 addiu $a2, -8 addiu $a3, 8 sltiu $v0, $a2, 8 loc_2E35A4: # CODE XREF: memset+30, memset+58 nop nop beqzl $v0, loc_2E3598 sd $v1, 0($a3) move $v1, $a3 loc_2E35B8: # CODE XREF: memset+4, memset+10 lui $v0, 0xFFFF addiu $a2, -1 li $v0, 0xFFFFFFFF beq $a2, $v0, locret_2E35F0 nop li $v0, 0xFFFFFFFF loc_2E35D4: # CODE XREF: memset+B0 sb $a1, 0($v1) addiu $a2, -1 addiu $v1, 1 nop nop bne $a2, $v0, loc_2E35D4 nop locret_2E35F0: # CODE XREF: memset+8C jr $ra move $v0, $a0 # End of function memset |
strcat
Signature |
---|
strcat: # addiu sp, sp, $ffe0 # 00128c20:27bdffe0 sq s0, $0000(sp) # 00128c24:7fb00000 daddu s0, a0, zero # 00128c28:0080802d andi v0, s0, $0007 # 00128c2c:32020007 bne v0, zero, $00128d14 # 00128c30:14400038 ¥$L15 sq ra, $0010(sp) # 00128c34:7fbf0010 andi v0, s0, $000f # 00128c38:3202000f lui v1, $0101 # 00128c3c:3c030101 v1=$01010000 ori v1, v1, $0101 # 00128c40:34630101 v1=$01010101 dsll v1, v1, 16 # 00128c44:00031c38 ori v1, v1, $0101 # 00128c48:34630101 v1=$01010101 dsll v1, v1, 16 # 00128c4c:00031c38 ori v1, v1, $0101 # 00128c50:34630101 v1=$01010101 lui a0, $8080 # 00128c54:3c048080 a0=$80800000 ori a0, a0, $8080 # 00128c58:34848080 a0=$80808080 dsll a0, a0, 16 # 00128c5c:00042438 ori a0, a0, $8080 # 00128c60:34848080 a0=$80808080 dsll a0, a0, 16 # 00128c64:00042438 ori a0, a0, $8080 # 00128c68:34848080 a0=$80808080 bne v0, zero, $00128cd0 # 00128c6c:14400018 ¥$L3 ld a2, $0000(s0) # 00128c70:de060000 lq v0, $0000(s0) # 00128c74:7a020000 pcpyld a3, v1, v1 # 00128c78:70633b89 pcpyld t0, a0, a0 # 00128c7c:70844389 psubb v1, v0, a3 # 00128c80:70471a48 pnor v0, zero, v0 # 00128c84:700214e9 pand v1, v1, v0 # 00128c88:70621c89 pand v1, v1, t0 # 00128c8c:70681c89 pcpyud v0, v1, v1 # 00128c90:706313a9 or v1, v0, v1 # 00128c94:00431825 bne v1, zero, $00128d14 # 00128c98:1460001e ¥$L15 daddu a0, s0, zero # 00128c9c:0200202d addiu a2, a0, $0010 # 00128ca0:24860010 $L14: # lq v0, $0000(a2) # 00128ca4:78c20000 pnor v1, zero, v0 # 00128ca8:70021ce9 psubb v0, v0, a3 # 00128cac:70471248 pand v0, v0, v1 # 00128cb0:70431489 pand v0, v0, t0 # 00128cb4:70481489 pcpyud v1, v0, v0 # 00128cb8:70421ba9 or v0, v0, v1 # 00128cbc:00431025 beql v0, zero, $00128ca4 # 00128cc0:5040fff8 £$L14 addiu a2, a2, $0010 # 00128cc4:24c60010 beq zero, zero, $00128d14 # 00128cc8:10000012 ¥$L15 daddu a0, a2, zero # 00128ccc:00c0202d $L3: # daddu a3, v1, zero # 00128cd0:0060382d daddu t0, a0, zero # 00128cd4:0080402d dsubu v1, a2, v1 # 00128cd8:00c3182f nor v0, zero, a2 # 00128cdc:00061027 and v1, v1, v0 # 00128ce0:00621824 and v1, v1, a0 # 00128ce4:00641824 bne v1, zero, $00128d14 # 00128ce8:1460000a ¥$L15 daddu a0, s0, zero # 00128cec:0200202d addiu a2, s0, $0008 # 00128cf0:26060008 $L16: # ld v0, $0000(a2) # 00128cf4:dcc20000 nor v1, zero, v0 # 00128cf8:00021827 dsubu v0, v0, a3 # 00128cfc:0047102f and v0, v0, v1 # 00128d00:00431024 and v0, v0, t0 # 00128d04:00481024 beql v0, zero, $00128cf4 # 00128d08:5040fffa £$L16 addiu a2, a2, $0008 # 00128d0c:24c60008 $L4: # daddu a0, a2, zero # 00128d10:00c0202d $L15: # lb v0, $0000(a0) # 00128d14:80820000 nop # 00128d18:00000000 nop # 00128d1c:00000000 nop # 00128d20:00000000 nop # 00128d24:00000000 bnel v0, zero, $00128d14 # 00128d28:5440fffa £$L15 addiu a0, a0, $0001 # 00128d2c:24840001 jal $00129028 # 00128d30:0c04a40a ¥strcpy nop # 00128d34:00000000 daddu v0, s0, zero # 00128d38:0200102d lq ra, $0010(sp) # 00128d3c:7bbf0010 lq s0, $0000(sp) # 00128d40:7bb00000 jr ra # 00128d44:03e00008 addiu sp, sp, $0020 # 00128d48:27bd0020 nop # 00128d4c:00000000 |
strncat
Signature |
---|
strncat: # daddu t0, a0, zero # 00129278:0080402d andi v0, t0, $0007 # 0012927c:31020007 bnel v0, zero, $00129394 # 00129280:54400044 ¥$L18 lb v0, $0000(a0) # 00129284:80820000 andi v1, t0, $000f # 00129288:3103000f bnel v1, zero, $00129324 # 0012928c:54600025 ¥$L17 ld v0, $0000(t0) # 00129290:dd020000 $L37: # lui a3, $0101 # 00129294:3c070101 a3=$01010000 ori a3, a3, $0101 # 00129298:34e70101 a3=$01010101 dsll a3, a3, 16 # 0012929c:00073c38 ori a3, a3, $0101 # 001292a0:34e70101 a3=$01010101 dsll a3, a3, 16 # 001292a4:00073c38 ori a3, a3, $0101 # 001292a8:34e70101 a3=$01010101 lq v0, $0000(t0) # 001292ac:79020000 pcpyld t1, a3, a3 # 001292b0:70e74b89 lui a0, $8080 # 001292b4:3c048080 a0=$80800000 ori a0, a0, $8080 # 001292b8:34848080 a0=$80808080 dsll a0, a0, 16 # 001292bc:00042438 ori a0, a0, $8080 # 001292c0:34848080 a0=$80808080 dsll a0, a0, 16 # 001292c4:00042438 ori a0, a0, $8080 # 001292c8:34848080 a0=$80808080 psubb v1, v0, t1 # 001292cc:70491a48 pnor v0, zero, v0 # 001292d0:700214e9 pcpyld t2, a0, a0 # 001292d4:70845389 pand v1, v1, v0 # 001292d8:70621c89 pand v1, v1, t2 # 001292dc:706a1c89 pcpyud v0, v1, a0 # 001292e0:706413a9 or v1, v1, v0 # 001292e4:00621825 bne v1, zero, $0012938c # 001292e8:14600028 ¥$L5 daddu a3, t0, zero # 001292ec:0100382d addiu a3, a3, $0010 # 001292f0:24e70010 nop # 001292f4:00000000 $L39: # lq v0, $0000(a3) # 001292f8:78e20000 pnor v1, zero, v0 # 001292fc:70021ce9 psubb v0, v0, t1 # 00129300:70491248 pand v0, v0, v1 # 00129304:70431489 pand v0, v0, t2 # 00129308:704a1489 pcpyud v1, v0, a0 # 0012930c:70441ba9 or v0, v0, v1 # 00129310:00431025 beq v0, zero, $001292f8 # 00129314:1040fff8 £$L39 addiu a3, a3, $0010 # 00129318:24e70010 beq zero, zero, $0012938c # 0012931c:1000001b ¥$L5 addiu a3, a3, $fff0 # 00129320:24e7fff0 $L17: # lui t1, $0101 # 00129324:3c090101 t1=$01010000 ori t1, t1, $0101 # 00129328:35290101 t1=$01010101 dsll t1, t1, 16 # 0012932c:00094c38 ori t1, t1, $0101 # 00129330:35290101 t1=$01010101 dsll t1, t1, 16 # 00129334:00094c38 ori t1, t1, $0101 # 00129338:35290101 t1=$01010101 lui a0, $8080 # 0012933c:3c048080 a0=$80800000 ori a0, a0, $8080 # 00129340:34848080 a0=$80808080 dsll a0, a0, 16 # 00129344:00042438 ori a0, a0, $8080 # 00129348:34848080 a0=$80808080 dsll a0, a0, 16 # 0012934c:00042438 ori a0, a0, $8080 # 00129350:34848080 a0=$80808080 dsubu v1, v0, t1 # 00129354:0049182f nor v0, zero, v0 # 00129358:00021027 and v1, v1, v0 # 0012935c:00621824 and v1, v1, a0 # 00129360:00641824 bne v1, zero, $0012938c # 00129364:14600009 ¥$L5 daddu a3, t0, zero # 00129368:0100382d addiu a3, a3, $0008 # 0012936c:24e70008 $L19: # ld v0, $0000(a3) # 00129370:dce20000 nor v1, zero, v0 # 00129374:00021827 dsubu v0, v0, t1 # 00129378:0049102f and v0, v0, v1 # 0012937c:00431024 and v0, v0, a0 # 00129380:00441024 beql v0, zero, $00129370 # 00129384:5040fffa £$L19 addiu a3, a3, $0008 # 00129388:24e70008 $L5: # daddu a0, a3, zero # 0012938c:00e0202d lb v0, $0000(a0) # 00129390:80820000 $L18: # beq v0, zero, $001293bc # 00129394:10400009 ¥$L9 addiu a2, a2, $ffff # 00129398:24c6ffff addiu a0, a0, $0001 # 0012939c:24840001 $L20: # lb v0, $0000(a0) # 001293a0:80820000 nop # 001293a4:00000000 nop # 001293a8:00000000 nop # 001293ac:00000000 nop # 001293b0:00000000 bnel v0, zero, $001293a0 # 001293b4:5440fffa £$L20 addiu a0, a0, $0001 # 001293b8:24840001 $L9: # lui v0, $ffff # 001293bc:3c02ffff v0=$ffff0000 ori v0, v0, $ffff # 001293c0:3442ffff v0=_heap_size beq a2, v0, $0012941c # 001293c4:10c20015 ¥$L13 nop # 001293c8:00000000 lbu v0, $0000(a1) # 001293cc:90a20000 addiu a1, a1, $0001 # 001293d0:24a50001 sb v0, $0000(a0) # 001293d4:a0820000 sll v0, v0, 24 # 001293d8:00021600 beq v0, zero, $0012941c # 001293dc:1040000f ¥$L13 addiu a0, a0, $0001 # 001293e0:24840001 lui v1, $ffff # 001293e4:3c03ffff v1=$ffff0000 ori v1, v1, $ffff # 001293e8:3463ffff v1=_heap_size nop # 001293ec:00000000 $L14: # beql a2, zero, $001293f8 # 001293f0:50c00001 ¥$L12 sb zero, $0000(a0) # 001293f4:a0800000 $L12: # addiu a2, a2, $ffff # 001293f8:24c6ffff beq a2, v1, $0012941c # 001293fc:10c30007 ¥$L13 nop # 00129400:00000000 lbu v0, $0000(a1) # 00129404:90a20000 addiu a1, a1, $0001 # 00129408:24a50001 sb v0, $0000(a0) # 0012940c:a0820000 sll v0, v0, 24 # 00129410:00021600 bne v0, zero, $001293f0 # 00129414:1440fff6 £$L14 addiu a0, a0, $0001 # 00129418:24840001 $L13: # jr ra # 0012941c:03e00008 daddu v0, t0, zero # 00129420:0100102d nop # 00129424:00000000 |
strchr
Signature |
---|
strchr: # andi v0, a0, $0007 # 00128d50:30820007 bne v0, zero, $00128ec0 # 00128d54:1440005a ¥$L24 andi a1, a1, $00ff # 00128d58:30a500ff dsll v1, a1, 8 # 00128d5c:00051a38 lui a2, $0101 # 00128d60:3c060101 a2=$01010000 ori a2, a2, $0101 # 00128d64:34c60101 a2=$01010101 dsll a2, a2, 16 # 00128d68:00063438 ori a2, a2, $0101 # 00128d6c:34c60101 a2=$01010101 dsll a2, a2, 16 # 00128d70:00063438 ori a2, a2, $0101 # 00128d74:34c60101 a2=$01010101 daddu t2, v1, a1 # 00128d78:0065502d andi v1, a0, $000f # 00128d7c:3083000f dsll v0, t2, 16 # 00128d80:000a1438 lui t0, $8080 # 00128d84:3c088080 t0=$80800000 ori t0, t0, $8080 # 00128d88:35088080 t0=$80808080 dsll t0, t0, 16 # 00128d8c:00084438 ori t0, t0, $8080 # 00128d90:35088080 t0=$80808080 dsll t0, t0, 16 # 00128d94:00084438 ori t0, t0, $8080 # 00128d98:35088080 t0=$80808080 daddu v0, v0, t2 # 00128d9c:004a102d dsll32 t2, v0, 0 # 00128da0:0002503c bne v1, zero, $00128e38 # 00128da4:14600024 ¥$L6 daddu a3, v0, t2 # 00128da8:004a382d $L16: # lq t1, $0000(a0) # 00128dac:78890000 pcpyld t2, a2, a2 # 00128db0:70c65389 pnor v1, zero, t1 # 00128db4:70091ce9 psubb v0, t1, t2 # 00128db8:712a1248 pcpyld a2, t0, t0 # 00128dbc:71083389 pand v0, v0, v1 # 00128dc0:70431489 pand v0, v0, a2 # 00128dc4:70461489 pcpyud v1, v0, v0 # 00128dc8:70421ba9 por v1, v0, v1 # 00128dcc:70431ca9 bnel v1, zero, $00128ec4 # 00128dd0:5460003c ¥$L25 lbu v0, $0000(a0) # 00128dd4:90820000 pcpyld t0, a3, a3 # 00128dd8:70e74389 pxor v0, t1, t0 # 00128ddc:712814c9 psubb v1, v0, t2 # 00128de0:704a1a48 pnor v0, zero, v0 # 00128de4:700214e9 lui t0, $8080 # 00128de8:3c088080 t0=$80800000 ori t0, t0, $8080 # 00128dec:35088080 t0=$80808080 dsll t0, t0, 16 # 00128df0:00084438 ori t0, t0, $8080 # 00128df4:35088080 t0=$80808080 dsll t0, t0, 16 # 00128df8:00084438 ori t0, t0, $8080 # 00128dfc:35088080 t0=$80808080 pand v1, v1, v0 # 00128e00:70621c89 pand v1, v1, a2 # 00128e04:70661c89 lui a2, $0101 # 00128e08:3c060101 a2=$01010000 ori a2, a2, $0101 # 00128e0c:34c60101 a2=$01010101 dsll a2, a2, 16 # 00128e10:00063438 ori a2, a2, $0101 # 00128e14:34c60101 a2=$01010101 dsll a2, a2, 16 # 00128e18:00063438 ori a2, a2, $0101 # 00128e1c:34c60101 a2=$01010101 pcpyud v0, v1, v1 # 00128e20:706313a9 por v0, v0, v1 # 00128e24:704314a9 beql v0, zero, $00128dac # 00128e28:5040ffe0 £$L16 addiu a0, a0, $0010 # 00128e2c:24840010 beq zero, zero, $00128ec4 # 00128e30:10000024 ¥$L25 lbu v0, $0000(a0) # 00128e34:90820000 $L6: # ld t1, $0000(a0) # 00128e38:dc890000 nor v1, zero, t1 # 00128e3c:00091827 dsubu v0, t1, a2 # 00128e40:0126102f and v0, v0, v1 # 00128e44:00431024 and v0, v0, t0 # 00128e48:00481024 bnel v0, zero, $00128ec4 # 00128e4c:5440001d ¥$L25 lbu v0, $0000(a0) # 00128e50:90820000 xor v0, t1, a3 # 00128e54:01271026 dsubu v1, v0, a2 # 00128e58:0046182f nor v0, zero, v0 # 00128e5c:00021027 and v1, v1, v0 # 00128e60:00621824 and v1, v1, t0 # 00128e64:00681824 bnel v1, zero, $00128ec4 # 00128e68:54600016 ¥$L25 lbu v0, $0000(a0) # 00128e6c:90820000 daddu t1, a2, zero # 00128e70:00c0482d t1=$01010101 addiu a0, a0, $0008 # 00128e74:24840008 $L26: # ld a2, $0000(a0) # 00128e78:dc860000 dsubu v0, a2, t1 # 00128e7c:00c9102f nor v1, zero, a2 # 00128e80:00061827 and v0, v0, v1 # 00128e84:00431024 and v0, v0, t0 # 00128e88:00481024 bne v0, zero, $00128ec0 # 00128e8c:1440000c ¥$L24 xor v0, a2, a3 # 00128e90:00c71026 nor v1, zero, v0 # 00128e94:00021827 dsubu v0, v0, t1 # 00128e98:0049102f and v0, v0, v1 # 00128e9c:00431024 and v0, v0, t0 # 00128ea0:00481024 beql v0, zero, $00128e78 # 00128ea4:5040fff4 £$L26 addiu a0, a0, $0008 # 00128ea8:24840008 beq zero, zero, $00128ec4 # 00128eac:10000005 ¥$L25 lbu v0, $0000(a0) # 00128eb0:90820000 $L17: # beql v0, a1, $00128ed0 # 00128eb4:50450006 ¥$L27 lbu v1, $0000(a0) # 00128eb8:90830000 addiu a0, a0, $0001 # 00128ebc:24840001 $L24: # lbu v0, $0000(a0) # 00128ec0:90820000 $L25: # bne v0, zero, $00128eb4 # 00128ec4:1440fffb £$L17 nop # 00128ec8:00000000 lbu v1, $0000(a0) # 00128ecc:90830000 $L27: # daddu v0, zero, zero # 00128ed0:0000102d xor v1, v1, a1 # 00128ed4:00651826 jr ra # 00128ed8:03e00008 movz v0, a0, v1 # 00128edc:0083100a |
strcmp
Signature |
---|
strcmp: # or t0, a0, a1 # 00128ee0:00854025 andi v0, t0, $0007 # 00128ee4:31020007 bnel v0, zero, $00129010 # 00128ee8:54400049 ¥$L19 lb v0, $0000(a0) # 00128eec:80820000 andi t1, t0, $000f # 00128ef0:3109000f lui a3, $0101 # 00128ef4:3c070101 a3=$01010000 ori a3, a3, $0101 # 00128ef8:34e70101 a3=$01010101 dsll a3, a3, 16 # 00128efc:00073c38 ori a3, a3, $0101 # 00128f00:34e70101 a3=$01010101 dsll a3, a3, 16 # 00128f04:00073c38 ori a3, a3, $0101 # 00128f08:34e70101 a3=$01010101 lui a2, $8080 # 00128f0c:3c068080 a2=$80800000 ori a2, a2, $8080 # 00128f10:34c68080 a2=$80808080 dsll a2, a2, 16 # 00128f14:00063438 ori a2, a2, $8080 # 00128f18:34c68080 a2=$80808080 dsll a2, a2, 16 # 00128f1c:00063438 ori a2, a2, $8080 # 00128f20:34c68080 a2=$80808080 bne t1, zero, $00128fa4 # 00128f24:1520001f ¥$L18 ld v0, $0000(a1) # 00128f28:dca20000 lq v1, $0000(a0) # 00128f2c:78830000 pcpyld t0, a3, a3 # 00128f30:70e74389 lq v0, $0000(a1) # 00128f34:78a20000 pcpyld t2, a2, a2 # 00128f38:70c65389 psubw a3, v0, v1 # 00128f3c:70433848 pcpyud a2, a3, a0 # 00128f40:70e433a9 or v1, a2, a3 # 00128f44:00c71825 v1=$81818181 bnel v1, zero, $00129010 # 00128f48:54600031 ¥$L19 lb v0, $0000(a0) # 00128f4c:80820000 lq v0, $0000(a0) # 00128f50:78820000 pnor v1, zero, v0 # 00128f54:70021ce9 $L2: # psubb v0, v0, t0 # 00128f58:70481248 pand v0, v0, v1 # 00128f5c:70431489 pand v0, v0, t2 # 00128f60:704a1489 pcpyud v1, v0, a0 # 00128f64:70441ba9 or a2, v1, v0 # 00128f68:00623025 beq a2, zero, $00128f7c # 00128f6c:10c00003 ¥$L5 addiu a0, a0, $0010 # 00128f70:24840010 jr ra # 00128f74:03e00008 daddu v0, zero, zero # 00128f78:0000102d $L5: # addiu a1, a1, $0010 # 00128f7c:24a50010 lq v0, $0000(a0) # 00128f80:78820000 lq v1, $0000(a1) # 00128f84:78a30000 psubw a3, v0, v1 # 00128f88:70433848 pcpyud a2, a3, a0 # 00128f8c:70e433a9 or t1, a2, a3 # 00128f90:00c74825 beql t1, zero, $00128f58 # 00128f94:5120fff0 £$L2 pnor v1, zero, v0 # 00128f98:70021ce9 beq zero, zero, $00129010 # 00128f9c:1000001c ¥$L19 lb v0, $0000(a0) # 00128fa0:80820000 $L18: # ld v1, $0000(a0) # 00128fa4:dc830000 bnel v1, v0, $00129010 # 00128fa8:54620019 ¥$L19 lb v0, $0000(a0) # 00128fac:80820000 ld v0, $0000(a0) # 00128fb0:dc820000 nor t0, zero, v0 # 00128fb4:00024027 $L21: # dsubu v0, v0, a3 # 00128fb8:0047102f and v0, v0, t0 # 00128fbc:00481024 and v0, v0, a2 # 00128fc0:00461024 beq v0, zero, $00128fd4 # 00128fc4:10400003 ¥$L6 addiu a0, a0, $0008 # 00128fc8:24840008 jr ra # 00128fcc:03e00008 daddu v0, zero, zero # 00128fd0:0000102d $L6: # addiu a1, a1, $0008 # 00128fd4:24a50008 ld v0, $0000(a0) # 00128fd8:dc820000 ld v1, $0000(a1) # 00128fdc:dca30000 beql v1, v0, $00128fb8 # 00128fe0:5062fff5 £$L21 nor t0, zero, v0 # 00128fe4:00024027 beq zero, zero, $00129010 # 00128fe8:10000009 ¥$L19 lb v0, $0000(a0) # 00128fec:80820000 $L12: # sll v0, v1, 24 # 00128ff0:00031600 lb v1, $0000(a1) # 00128ff4:80a30000 sra v0, v0, 24 # 00128ff8:00021603 bnel v0, v1, $00129018 # 00128ffc:54430006 ¥$L22 lbu v1, $0000(a0) # 00129000:90830000 addiu a0, a0, $0001 # 00129004:24840001 addiu a1, a1, $0001 # 00129008:24a50001 lb v0, $0000(a0) # 0012900c:80820000 $L19: # bne v0, zero, $00128ff0 # 00129010:1440fff7 £$L12 lbu v1, $0000(a0) # 00129014:90830000 $L22: # lbu v0, $0000(a1) # 00129018:90a20000 jr ra # 0012901c:03e00008 subu v0, v1, v0 # 00129020:00621023 nop # 00129024:00000000 |
strncmp
Signature |
---|
strncmp: # bne a2, zero, $00129438 # 00129428:14c00003 ¥$L3 or v1, a0, a1 # 0012942c:00851825 $L20: # jr ra # 00129430:03e00008 daddu v0, zero, zero # 00129434:0000102d $L3: # andi v0, v1, $0007 # 00129438:30620007 bne v0, zero, $00129594 # 0012943c:14400055 ¥$L22 daddu v0, a2, zero # 00129440:00c0102d andi v0, v1, $000f # 00129444:3062000f sltiu a3, a2, $0010 # 00129448:2cc70010 lui t1, $0101 # 0012944c:3c090101 t1=$01010000 ori t1, t1, $0101 # 00129450:35290101 t1=$01010101 dsll t1, t1, 16 # 00129454:00094c38 ori t1, t1, $0101 # 00129458:35290101 t1=$01010101 dsll t1, t1, 16 # 0012945c:00094c38 ori t1, t1, $0101 # 00129460:35290101 t1=$01010101 or v0, v0, a3 # 00129464:00471025 bne v0, zero, $00129510 # 00129468:14400029 ¥$L31 daddu a3, a0, zero # 0012946c:0080382d lq v1, $0000(a0) # 00129470:78830000 pcpyld t2, t1, t1 # 00129474:71295389 lq v0, $0000(a1) # 00129478:78a20000 lui t0, $8080 # 0012947c:3c088080 t0=$80800000 ori t0, t0, $8080 # 00129480:35088080 t0=$80808080 dsll t0, t0, 16 # 00129484:00084438 ori t0, t0, $8080 # 00129488:35088080 t0=$80808080 dsll t0, t0, 16 # 0012948c:00084438 ori t0, t0, $8080 # 00129490:35088080 t0=$80808080 psubw v1, v1, v0 # 00129494:70621848 pcpyld t1, t0, t0 # 00129498:71084b89 pcpyud v0, v1, a0 # 0012949c:706413a9 daddu t0, a1, zero # 001294a0:00a0402d or v1, v0, v1 # 001294a4:00431825 bne v1, zero, $00129594 # 001294a8:1460003a ¥$L22 daddu v0, a2, zero # 001294ac:00c0102d addiu a2, a2, $fff0 # 001294b0:24c6fff0 $L34: # beq a2, zero, $00129430 # 001294b4:10c0ffde £$L20 nop # 001294b8:00000000 lq v0, $0000(a3) # 001294bc:78e20000 pnor v1, zero, v0 # 001294c0:70021ce9 psubb v0, v0, t2 # 001294c4:704a1248 pand v0, v0, v1 # 001294c8:70431489 pand v1, v0, t1 # 001294cc:70491c89 pcpyud v0, v1, a0 # 001294d0:706413a9 or v0, v0, v1 # 001294d4:00431025 bne v0, zero, $00129430 # 001294d8:1440ffd5 £$L20 addiu a3, a3, $0010 # 001294dc:24e70010 sltiu v0, a2, $0010 # 001294e0:2cc20010 lq v1, $0000(a3) # 001294e4:78e30000 bne v0, zero, $00129588 # 001294e8:14400027 ¥$L6 addiu t0, t0, $0010 # 001294ec:25080010 lq v0, $0000(t0) # 001294f0:79020000 psubw v1, v1, v0 # 001294f4:70621848 pcpyud v0, v1, a0 # 001294f8:706413a9 or v0, v0, v1 # 001294fc:00431025 beql v0, zero, $001294b4 # 00129500:5040ffec £$L34 addiu a2, a2, $fff0 # 00129504:24c6fff0 beq zero, zero, $0012958c # 00129508:10000020 ¥$L23 daddu a0, a3, zero # 0012950c:00e0202d $L31: # sltiu v0, a2, $0008 # 00129510:2cc20008 bne v0, zero, $00129588 # 00129514:1440001c ¥$L6 daddu t0, a1, zero # 00129518:00a0402d ld v1, $0000(a0) # 0012951c:dc830000 ld v0, $0000(a1) # 00129520:dca20000 bne v1, v0, $00129594 # 00129524:1462001b ¥$L22 daddu v0, a2, zero # 00129528:00c0102d addiu a2, a2, $fff8 # 0012952c:24c6fff8 lui t2, $8080 # 00129530:3c0a8080 t2=$80800000 ori t2, t2, $8080 # 00129534:354a8080 t2=$80808080 dsll t2, t2, 16 # 00129538:000a5438 ori t2, t2, $8080 # 0012953c:354a8080 t2=$80808080 dsll t2, t2, 16 # 00129540:000a5438 ori t2, t2, $8080 # 00129544:354a8080 t2=$80808080 $L24: # beq a2, zero, $00129430 # 00129548:10c0ffb9 £$L20 nop # 0012954c:00000000 ld v0, $0000(a3) # 00129550:dce20000 nor v1, zero, v0 # 00129554:00021827 dsubu v0, v0, t1 # 00129558:0049102f and v0, v0, v1 # 0012955c:00431024 and v0, v0, t2 # 00129560:004a1024 bne v0, zero, $00129430 # 00129564:1440ffb2 £$L20 addiu a3, a3, $0008 # 00129568:24e70008 sltiu v0, a2, $0008 # 0012956c:2cc20008 bne v0, zero, $00129588 # 00129570:14400005 ¥$L6 addiu t0, t0, $0008 # 00129574:25080008 ld v1, $0000(a3) # 00129578:dce30000 ld v0, $0000(t0) # 0012957c:dd020000 beql v1, v0, $00129548 # 00129580:5062fff1 £$L24 addiu a2, a2, $fff8 # 00129584:24c6fff8 $L6: # daddu a0, a3, zero # 00129588:00e0202d $L23: # daddu a1, t0, zero # 0012958c:0100282d daddu v0, a2, zero # 00129590:00c0102d $L22: # beq v0, zero, $001295d0 # 00129594:1040000e ¥$L13 addiu a2, a2, $ffff # 00129598:24c6ffff beq zero, zero, $001295c4 # 0012959c:10000009 ¥$L21 lb v1, $0000(a0) # 001295a0:80830000 nop # 001295a4:00000000 $L14: # beq a2, zero, $00129430 # 001295a8:10c0ffa1 £$L20 nop # 001295ac:00000000 beq a3, zero, $00129430 # 001295b0:10e0ff9f £$L20 addiu a0, a0, $0001 # 001295b4:24840001 addiu a1, a1, $0001 # 001295b8:24a50001 lb v1, $0000(a0) # 001295bc:80830000 $L30: # addiu a2, a2, $ffff # 001295c0:24c6ffff $L21: # lb v0, $0000(a1) # 001295c4:80a20000 beq v1, v0, $001295a8 # 001295c8:1062fff7 £$L14 lbu a3, $0000(a0) # 001295cc:90870000 $L13: # lbu v0, $0000(a1) # 001295d0:90a20000 lbu v1, $0000(a0) # 001295d4:90830000 jr ra # 001295d8:03e00008 subu v0, v1, v0 # 001295dc:00621023 |
strcpy
Signature |
---|
strcpy: # daddu a3, a0, zero # 00129028:0080382d or t0, a1, a3 # 0012902c:00a74025 andi v0, t0, $0007 # 00129030:31020007 bne v0, zero, $00129118 # 00129034:14400038 ¥$L7 daddu v1, a3, zero # 00129038:00e0182d andi v0, t0, $000f # 0012903c:3102000f lui t1, $0101 # 00129040:3c090101 t1=$01010000 ori t1, t1, $0101 # 00129044:35290101 t1=$01010101 dsll t1, t1, 16 # 00129048:00094c38 ori t1, t1, $0101 # 0012904c:35290101 t1=$01010101 dsll t1, t1, 16 # 00129050:00094c38 ori t1, t1, $0101 # 00129054:35290101 t1=$01010101 lui a0, $8080 # 00129058:3c048080 a0=$80800000 ori a0, a0, $8080 # 0012905c:34848080 a0=$80808080 dsll a0, a0, 16 # 00129060:00042438 ori a0, a0, $8080 # 00129064:34848080 a0=$80808080 dsll a0, a0, 16 # 00129068:00042438 ori a0, a0, $8080 # 0012906c:34848080 a0=$80808080 bnel v0, zero, $001290d8 # 00129070:54400019 ¥$L3 ld t2, $0000(a1) # 00129074:dcaa0000 pcpyld t2, t1, t1 # 00129078:71295389 lq t1, $0000(a1) # 0012907c:78a90000 pcpyld t0, a0, a0 # 00129080:70844389 psubb v0, t1, t2 # 00129084:712a1248 pnor v1, zero, t1 # 00129088:70091ce9 pand v0, v0, v1 # 0012908c:70431489 pand v0, v0, t0 # 00129090:70481489 pcpyud a0, v0, t1 # 00129094:704923a9 or v1, v0, a0 # 00129098:00441825 bne v1, zero, $00129114 # 0012909c:1460001d ¥$L4 daddu a2, a3, zero # 001290a0:00e0302d $L2: # sq t1, $0000(a2) # 001290a4:7cc90000 addiu a1, a1, $0010 # 001290a8:24a50010 lq t1, $0000(a1) # 001290ac:78a90000 psubb v0, t1, t2 # 001290b0:712a1248 pnor v1, zero, t1 # 001290b4:70091ce9 pand v0, v0, v1 # 001290b8:70431489 pand v0, v0, t0 # 001290bc:70481489 pcpyud a0, v0, t1 # 001290c0:704923a9 or v1, v0, a0 # 001290c4:00441825 beq v1, zero, $001290a4 # 001290c8:1060fff6 £$L2 addiu a2, a2, $0010 # 001290cc:24c60010 beq zero, zero, $00129118 # 001290d0:10000011 ¥$L7 daddu v1, a2, zero # 001290d4:00c0182d $L3: # dsubu v0, t2, t1 # 001290d8:0149102f nor v1, zero, t2 # 001290dc:000a1827 and v0, v0, v1 # 001290e0:00431024 and v0, v0, a0 # 001290e4:00441024 bne v0, zero, $00129114 # 001290e8:1440000a ¥$L4 daddu a2, a3, zero # 001290ec:00e0302d $L5: # sd t2, $0000(a2) # 001290f0:fcca0000 addiu a1, a1, $0008 # 001290f4:24a50008 ld t2, $0000(a1) # 001290f8:dcaa0000 nor v0, zero, t2 # 001290fc:000a1027 dsubu v1, t2, t1 # 00129100:0149182f and v1, v1, v0 # 00129104:00621824 and v1, v1, a0 # 00129108:00641824 beq v1, zero, $001290f0 # 0012910c:1060fff8 £$L5 addiu a2, a2, $0008 # 00129110:24c60008 $L4: # daddu v1, a2, zero # 00129114:00c0182d $L7: # lbu v0, $0000(a1) # 00129118:90a20000 addiu a1, a1, $0001 # 0012911c:24a50001 sb v0, $0000(v1) # 00129120:a0620000 sll v0, v0, 24 # 00129124:00021600 nop # 00129128:00000000 bne v0, zero, $00129118 # 0012912c:1440fffa £$L7 addiu v1, v1, $0001 # 00129130:24630001 jr ra # 00129134:03e00008 daddu v0, a3, zero # 00129138:00e0102d nop # 0012913c:00000000 |
strlen
Signature |
---|
strlen: # andi v0, a0, $0007 # 00129140:30820007 bne v0, zero, $00129254 # 00129144:14400043 ¥$L15 daddu a3, a0, zero # 00129148:0080382d andi v1, a0, $000f # 0012914c:3083000f lui v0, $0101 # 00129150:3c020101 v0=$01010000 ori v0, v0, $0101 # 00129154:34420101 v0=$01010101 dsll v0, v0, 16 # 00129158:00021438 ori v0, v0, $0101 # 0012915c:34420101 v0=$01010101 dsll v0, v0, 16 # 00129160:00021438 ori v0, v0, $0101 # 00129164:34420101 v0=$01010101 bne v1, zero, $001291e4 # 00129168:1460001e ¥$L12 daddu a1, a0, zero # 0012916c:0080282d lq v1, $0000(a1) # 00129170:78a30000 pcpyld t0, v0, v0 # 00129174:70424389 lui a0, $8080 # 00129178:3c048080 a0=$80800000 ori a0, a0, $8080 # 0012917c:34848080 a0=$80808080 dsll a0, a0, 16 # 00129180:00042438 ori a0, a0, $8080 # 00129184:34848080 a0=$80808080 dsll a0, a0, 16 # 00129188:00042438 ori a0, a0, $8080 # 0012918c:34848080 a0=$80808080 psubb v0, v1, t0 # 00129190:70681248 pnor v1, zero, v1 # 00129194:70031ce9 pcpyld t1, a0, a0 # 00129198:70844b89 pand v0, v0, v1 # 0012919c:70431489 pand v0, v0, t1 # 001291a0:70491489 pcpyud v1, v0, t0 # 001291a4:70481ba9 or a2, v1, v0 # 001291a8:00623025 bnel a2, zero, $00129254 # 001291ac:54c00029 ¥$L15 daddu a0, a1, zero # 001291b0:00a0202d addiu a1, a1, $0010 # 001291b4:24a50010 $L14: # lq v0, $0000(a1) # 001291b8:78a20000 pnor v1, zero, v0 # 001291bc:70021ce9 psubb v0, v0, t0 # 001291c0:70481248 pand v0, v0, v1 # 001291c4:70431489 pand a0, v0, t1 # 001291c8:70492489 pcpyud v1, a0, a2 # 001291cc:70861ba9 or v1, v1, a0 # 001291d0:00641825 beql v1, zero, $001291b8 # 001291d4:5060fff8 £$L14 addiu a1, a1, $0010 # 001291d8:24a50010 beq zero, zero, $00129254 # 001291dc:1000001d ¥$L15 daddu a0, a1, zero # 001291e0:00a0202d $L12: # ld v1, $0000(a1) # 001291e4:dca30000 lui a0, $8080 # 001291e8:3c048080 a0=$80800000 ori a0, a0, $8080 # 001291ec:34848080 a0=$80808080 dsll a0, a0, 16 # 001291f0:00042438 ori a0, a0, $8080 # 001291f4:34848080 a0=$80808080 dsll a0, a0, 16 # 001291f8:00042438 ori a0, a0, $8080 # 001291fc:34848080 a0=$80808080 dsubu v0, v1, v0 # 00129200:0062102f nor v1, zero, v1 # 00129204:00031827 and v0, v0, v1 # 00129208:00431024 and v0, v0, a0 # 0012920c:00441024 bnel v0, zero, $00129254 # 00129210:54400010 ¥$L15 daddu a0, a1, zero # 00129214:00a0202d lui a2, $0101 # 00129218:3c060101 a2=$01010000 ori a2, a2, $0101 # 0012921c:34c60101 a2=$01010101 dsll a2, a2, 16 # 00129220:00063438 ori a2, a2, $0101 # 00129224:34c60101 a2=$01010101 dsll a2, a2, 16 # 00129228:00063438 ori a2, a2, $0101 # 0012922c:34c60101 a2=$01010101 addiu a1, a1, $0008 # 00129230:24a50008 $L16: # ld v0, $0000(a1) # 00129234:dca20000 nor v1, zero, v0 # 00129238:00021827 dsubu v0, v0, a2 # 0012923c:0046102f and v0, v0, v1 # 00129240:00431024 and v0, v0, a0 # 00129244:00441024 beql v0, zero, $00129234 # 00129248:5040fffa £$L16 addiu a1, a1, $0008 # 0012924c:24a50008 daddu a0, a1, zero # 00129250:00a0202d $L15: # lb v0, $0000(a0) # 00129254:80820000 nop # 00129258:00000000 nop # 0012925c:00000000 nop # 00129260:00000000 nop # 00129264:00000000 bnel v0, zero, $00129254 # 00129268:5440fffa £$L15 addiu a0, a0, $0001 # 0012926c:24840001 jr ra # 00129270:03e00008 subu v0, a0, a3 # 00129274:00871023 |
strrchr
Signature |
---|
strrchr: # lbu v1, $0000(a0) # 001297a0:90830000 sll a1, a1, 24 # 001297a4:00052e00 sra a1, a1, 24 # 001297a8:00052e03 daddu a2, zero, zero # 001297ac:0000302d beq v1, zero, $001297d8 # 001297b0:10600009 ¥__001297d8 daddu v0, v1, zero # 001297b4:0060102d __001297b8: # sll v0, v0, 24 # 001297b8:00021600 sra v0, v0, 24 # 001297bc:00021603 xor v0, v0, a1 # 001297c0:00451026 movz a2, a0, v0 # 001297c4:0082300a addiu a0, a0, $0001 # 001297c8:24840001 lbu v1, $0000(a0) # 001297cc:90830000 bne v1, zero, $001297b8 # 001297d0:1460fff9 £__001297b8 daddu v0, v1, zero # 001297d4:0060102d __001297d8: # sll v1, v1, 24 # 001297d8:00031e00 daddu v0, a0, zero # 001297dc:0080102d sra v1, v1, 24 # 001297e0:00031e03 xor v1, v1, a1 # 001297e4:00651826 jr ra # 001297e8:03e00008 movn v0, a2, v1 # 001297ec:00c3100b |
strstr
Signature |
---|
strstr: # lb v0, $0000(a0) # 001297f0:80820000 bne v0, zero, $00129810 # 001297f4:14400006 ¥__00129810 lb v1, $0000(a1) # 001297f8:80a30000 daddu v0, zero, zero # 001297fc:0000102d jr ra # 00129800:03e00008 movz v0, a0, v1 # 00129804:0083100a __00129808: # jr ra # 00129808:03e00008 daddu v0, a0, zero # 0012980c:0080102d __00129810: # beq v1, zero, $00129808 # 00129810:1060fffd £__00129808 daddu a3, zero, zero # 00129814:0000382d lb v0, $0000(a0) # 00129818:80820000 bnel v1, v0, $00129848 # 0012981c:5462000a ¥__00129848 addiu a0, a0, $0001 # 00129820:24840001 addiu a3, a3, $0001 # 00129824:24e70001 a3=$00000001 __00129828: # addu v0, a1, a3 # 00129828:00a71021 lb a2, $0000(v0) # 0012982c:80460000 beq a2, zero, $00129808 # 00129830:10c0fff5 £__00129808 addu v0, a0, a3 # 00129834:00871021 lb v1, $0000(v0) # 00129838:80430000 beql a2, v1, $00129828 # 0012983c:50c3fffa £__00129828 addiu a3, a3, $0001 # 00129840:24e70001 a3=$00000002 addiu a0, a0, $0001 # 00129844:24840001 __00129848: # lb v0, $0000(a0) # 00129848:80820000 bnel v0, zero, $00129810 # 0012984c:5440fff0 £__00129810 lb v1, $0000(a1) # 00129850:80a30000 jr ra # 00129854:03e00008 daddu v0, zero, zero # 00129858:0000102d nop # 0012985c:00000000 |
signal.h
raise
Signature |
---|
raise: # daddu a1, a0, zero # 001287f8:0080282d lui v0, $0033 # 001287fc:3c020033 v0=$00330000 addiu sp, sp, $fff0 # 00128800:27bdfff0 lw a0, $b984(v0) # 00128804:8c44b984 a0=_impure_ptr sd ra, $0000(sp) # 00128808:ffbf0000 jal $00128650 # 0012880c:0c04a194 £_raise_r nop # 00128810:00000000 ld ra, $0000(sp) # 00128814:dfbf0000 jr ra # 00128818:03e00008 addiu sp, sp, $0010 # 0012881c:27bd0010 |
signal
Signature |
---|
signal: # daddu v0, a0, zero # 00128820:0080102d lui v1, $0033 # 00128824:3c030033 v1=$00330000 addiu sp, sp, $fff0 # 00128828:27bdfff0 daddu a2, a1, zero # 0012882c:00a0302d lw a0, $b984(v1) # 00128830:8c64b984 a0=_impure_ptr sd ra, $0000(sp) # 00128834:ffbf0000 jal $001285c0 # 00128838:0c04a170 £_signal_r daddu a1, v0, zero # 0012883c:0040282d ld ra, $0000(sp) # 00128840:dfbf0000 jr ra # 00128844:03e00008 addiu sp, sp, $0010 # 00128848:27bd0010 nop # 0012884c:00000000 |
stdio.h
fflush
Signature |
---|
fflush: # addiu sp, sp, $ffc0 # 001255a0:27bdffc0 sd s1, $0010(sp) # 001255a4:ffb10010 sd ra, $0030(sp) # 001255a8:ffbf0030 daddu s1, a0, zero # 001255ac:0080882d sd s2, $0020(sp) # 001255b0:ffb20020 bne s1, zero, $001255d8 # 001255b4:16200008 ¥__001255d8 sd s0, $0000(sp) # 001255b8:ffb00000 lui v0, $0033 # 001255bc:3c020033 v0=$00330000 lui a1, $0012 # 001255c0:3c050012 a1=$00120000 lw a0, $b984(v0) # 001255c4:8c44b984 a0=_impure_ptr jal $00126200 # 001255c8:0c049880 ¥_fwalk addiu a1, a1, $55a0 # 001255cc:24a555a0 a1=fflush beq zero, zero, $00125690 # 001255d0:1000002f ¥__00125690 ld ra, $0030(sp) # 001255d4:dfbf0030 __001255d8: # lw v1, $0054(s1) # 001255d8:8e230054 bnel v1, zero, $001255f8 # 001255dc:54600006 ¥__001255f8 lw v0, $0038(v1) # 001255e0:8c620038 lui v0, $0033 # 001255e4:3c020033 v0=$00330000 lw v1, $b984(v0) # 001255e8:8c43b984 v1=_impure_ptr sw v1, $0054(s1) # 001255ec:ae230054 lw v0, $0038(v1) # 001255f0:8c620038 v0=$0032b6d0 nop # 001255f4:00000000 __001255f8: # bnel v0, zero, $0012560c # 001255f8:54400004 ¥__0012560c lh v1, $000c(s1) # 001255fc:8623000c jal $00125870 # 00125600:0c04961c ¥__sinit daddu a0, v1, zero # 00125604:0060202d lh v1, $000c(s1) # 00125608:8623000c __0012560c: # andi v0, v1, $0008 # 0012560c:30620008 beq v0, zero, $0012568c # 00125610:1040001e ¥__0012568c daddu v0, zero, zero # 00125614:0000102d lw s2, $0010(s1) # 00125618:8e320010 bnel s2, zero, $00125640 # 0012561c:56400008 ¥__00125640 lw v0, $0000(s1) # 00125620:8e220000 beq zero, zero, $00125690 # 00125624:1000001a ¥__00125690 ld ra, $0030(sp) # 00125628:dfbf0030 __0012562c: # lhu v1, $000c(s1) # 0012562c:9623000c addiu v0, zero, $ffff # 00125630:2402ffff v0=_heap_size ori v1, v1, $0040 # 00125634:34630040 beq zero, zero, $0012568c # 00125638:10000014 ¥__0012568c sh v1, $000c(s1) # 0012563c:a623000c __00125640: # andi v1, v1, $0003 # 00125640:30630003 sw s2, $0000(s1) # 00125644:ae320000 daddu a0, zero, zero # 00125648:0000202d bne v1, zero, $00125658 # 0012564c:14600002 ¥__00125658 subu s0, v0, s2 # 00125650:00528023 lw a0, $0014(s1) # 00125654:8e240014 __00125658: # blez s0, $00125688 # 00125658:1a00000b ¥__00125688 sw a0, $0008(s1) # 0012565c:ae240008 __00125660: # lw v0, $0024(s1) # 00125660:8e220024 daddu a1, s2, zero # 00125664:0240282d lw a0, $001c(s1) # 00125668:8e24001c jalr v0 # 0012566c:0040f809 daddu a2, s0, zero # 00125670:0200302d daddu v1, v0, zero # 00125674:0040182d blez v1, $0012562c # 00125678:1860ffec £__0012562c subu s0, s0, v1 # 0012567c:02038023 bgtz s0, $00125660 # 00125680:1e00fff7 £__00125660 addu s2, s2, v1 # 00125684:02439021 __00125688: # daddu v0, zero, zero # 00125688:0000102d __0012568c: # ld ra, $0030(sp) # 0012568c:dfbf0030 __00125690: # ld s2, $0020(sp) # 00125690:dfb20020 ld s1, $0010(sp) # 00125694:dfb10010 ld s0, $0000(sp) # 00125698:dfb00000 jr ra # 0012569c:03e00008 addiu sp, sp, $0040 # 001256a0:27bd0040 nop # 001256a4:00000000 |
printf
Signature |
---|
printf: # addiu sp, sp, $ff70 # 00128400:27bdff70 lui t4, $0033 # 00128404:3c0c0033 t4=$00330000 sd a1, $0058(sp) # 00128408:ffa50058 sd a2, $0060(sp) # 0012840c:ffa60060 daddu a1, a0, zero # 00128410:0080282d sd ra, $0000(sp) # 00128414:ffbf0000 addiu a2, sp, $0058 # 00128418:27a60058 sd a3, $0068(sp) # 0012841c:ffa70068 sd t0, $0070(sp) # 00128420:ffa80070 sd t1, $0078(sp) # 00128424:ffa90078 sd t2, $0080(sp) # 00128428:ffaa0080 sd t3, $0088(sp) # 0012842c:ffab0088 lw v0, $b984(t4) # 00128430:8d82b984 v0=_impure_ptr lw v1, $0008(v0) # 00128434:8c430008 v1=$0032b6a0 sw v0, $0054(v1) # 00128438:ac620054 [0032b928] jal $0012ab48 # 0012843c:0c04aad2 ¥vfprintf lw a0, $0008(v0) # 00128440:8c440008 a0=$0032b6a0 ld ra, $0000(sp) # 00128444:dfbf0000 jr ra # 00128448:03e00008 addiu sp, sp, $0090 # 0012844c:27bd0090 |
fprintf
Signature |
---|
fprintf: # addiu sp, sp, $ff80 # 00125900:27bdff80 sd a2, $0050(sp) # 00125904:ffa60050 sd ra, $0000(sp) # 00125908:ffbf0000 addiu a2, sp, $0050 # 0012590c:27a60050 sd a3, $0058(sp) # 00125910:ffa70058 sd t0, $0060(sp) # 00125914:ffa80060 sd t1, $0068(sp) # 00125918:ffa90068 sd t2, $0070(sp) # 0012591c:ffaa0070 jal $0012ab48 # 00125920:0c04aad2 ¥vfprintf sd t3, $0078(sp) # 00125924:ffab0078 ld ra, $0000(sp) # 00125928:dfbf0000 jr ra # 0012592c:03e00008 addiu sp, sp, $0080 # 00125930:27bd0080 nop # 00125934:00000000 |
sprintf
Signature |
---|
sprintf: # lui v0, $0033 # 00128988:3c020033 v0=$00330000 addiu sp, sp, $ff20 # 0012898c:27bdff20 lw t5, $b984(v0) # 00128990:8c4db984 t5=_impure_ptr lui v1, $7fff # 00128994:3c037fff v1=$7fff0000 daddu t4, a0, zero # 00128998:0080602d ori v1, v1, $ffff # 0012899c:3463ffff v1=$7fffffff sd a2, $00b0(sp) # 001289a0:ffa600b0 addiu v0, zero, $0208 # 001289a4:24020208 v0=$00000208 sd ra, $0060(sp) # 001289a8:ffbf0060 daddu a0, sp, zero # 001289ac:03a0202d sd a3, $00b8(sp) # 001289b0:ffa700b8 addiu a2, sp, $00b0 # 001289b4:27a600b0 sd t0, $00c0(sp) # 001289b8:ffa800c0 sd t1, $00c8(sp) # 001289bc:ffa900c8 sd t2, $00d0(sp) # 001289c0:ffaa00d0 sd t3, $00d8(sp) # 001289c4:ffab00d8 sh v0, $000c(sp) # 001289c8:a7a2000c sw t4, $0010(sp) # 001289cc:afac0010 sw v1, $0014(sp) # 001289d0:afa30014 sw t5, $0054(sp) # 001289d4:afad0054 sw t4, $0000(sp) # 001289d8:afac0000 jal $0012ab48 # 001289dc:0c04aad2 ¥vfprintf sw v1, $0008(sp) # 001289e0:afa30008 lw v1, $0000(sp) # 001289e4:8fa30000 ld ra, $0060(sp) # 001289e8:dfbf0060 sb zero, $0000(v1) # 001289ec:a0600000 jr ra # 001289f0:03e00008 addiu sp, sp, $00e0 # 001289f4:27bd00e0 |
vfprintf
Signature |
---|
vfprintf: # addiu sp, sp, $ffc0 # 0012ab48:27bdffc0 sd s2, $0020(sp) # 0012ab4c:ffb20020 sd s1, $0010(sp) # 0012ab50:ffb10010 daddu s2, a2, zero # 0012ab54:00c0902d sd s0, $0000(sp) # 0012ab58:ffb00000 sd ra, $0030(sp) # 0012ab5c:ffbf0030 daddu s0, a0, zero # 0012ab60:0080802d lw v1, $0054(s0) # 0012ab64:8e030054 bne v1, zero, $0012ab80 # 0012ab68:14600005 ¥__0012ab80 daddu s1, a1, zero # 0012ab6c:00a0882d lui v0, $0033 # 0012ab70:3c020033 v0=$00330000 lw v1, $b984(v0) # 0012ab74:8c43b984 v1=_impure_ptr sw v1, $0054(s0) # 0012ab78:ae030054 nop # 0012ab7c:00000000 __0012ab80: # lw v0, $0038(v1) # 0012ab80:8c620038 v0=$0032b6d0 bnel v0, zero, $0012ab98 # 0012ab84:54400004 ¥__0012ab98 lw a0, $0054(s0) # 0012ab88:8e040054 jal $00125870 # 0012ab8c:0c04961c £__sinit daddu a0, v1, zero # 0012ab90:0060202d a0=impure_data lw a0, $0054(s0) # 0012ab94:8e040054 __0012ab98: # daddu a1, s0, zero # 0012ab98:0200282d daddu a2, s1, zero # 0012ab9c:0220302d jal $0012abc0 # 0012aba0:0c04aaf0 ¥_vfprintf_r daddu a3, s2, zero # 0012aba4:0240382d ld ra, $0030(sp) # 0012aba8:dfbf0030 ld s2, $0020(sp) # 0012abac:dfb20020 ld s1, $0010(sp) # 0012abb0:dfb10010 ld s0, $0000(sp) # 0012abb4:dfb00000 jr ra # 0012abb8:03e00008 addiu sp, sp, $0040 # 0012abbc:27bd0040 |
stdlib.h
rand
Signature |
---|
rand: # lui v0, $0033 # 00128460:3c020033 v0=$00330000 lui a0, $41c6 # 00128464:3c0441c6 a0=$41c60000 lw a1, $b984(v0) # 00128468:8c45b984 a1=_impure_ptr ori a0, a0, $4e6d # 0012846c:34844e6d a0=$41c64e6d lui v0, $7fff # 00128470:3c027fff v0=$7fff0000 lw v1, $0058(a1) # 00128474:8ca30058 v1=$0032b6f0 ori v0, v0, $ffff # 00128478:3442ffff v0=$7fffffff mult v1, v1, a0 # 0012847c:00641818 addiu v1, v1, $3039 # 00128480:24633039 and v0, v1, v0 # 00128484:00621024 jr ra # 00128488:03e00008 sw v1, $0058(a1) # 0012848c:aca30058 [0032b6f0] |
srand
Signature |
---|
srand: # lui v0, $0033 # 00128450:3c020033 v0=$00330000 lw v1, $b984(v0) # 00128454:8c43b984 v1=_impure_ptr jr ra # 00128458:03e00008 sw a0, $0058(v1) # 0012845c:ac640058 [0032b6f0] |
Sony Computer Entertainment Library
Vu0
sceVu0ApplyMatrix
Signature |
---|
sceVu0ApplyMatrix: # lqc2 vf4, $0000(a1) # 00106ec0:d8a40000 lqc2 vf5, $0010(a1) # 00106ec4:d8a50010 lqc2 vf6, $0020(a1) # 00106ec8:d8a60020 lqc2 vf7, $0030(a1) # 00106ecc:d8a70030 lqc2 vf8, $0000(a2) # 00106ed0:d8c80000 vmulax.xyzw ACC, vf4, vf8x # 00106ed4:4be821bc vmadday.xyzw ACC, vf5, vf8y # 00106ed8:4be828bd vmaddaz.xyzw ACC, vf6, vf8z # 00106edc:4be830be vmaddw.xyzw vf9, vf7, vf8w # 00106ee0:4be83a4b jr ra # 00106ee4:03e00008 sqc2 vf9, $0000(a0) # 00106ee8:f8890000 nop # 00106eec:00000000 |
sceVu0MulMatrix
Signature |
---|
sceVu0MulMatrix: # lqc2 vf4, $0000(a1) # 00106ef0:d8a40000 lqc2 vf5, $0010(a1) # 00106ef4:d8a50010 lqc2 vf6, $0020(a1) # 00106ef8:d8a60020 lqc2 vf7, $0030(a1) # 00106efc:d8a70030 addiu a3, zero, $0004 # 00106f00:24070004 a3=$00000004 _loopMulMatrix: # lqc2 vf8, $0000(a2) # 00106f04:d8c80000 vmulax.xyzw ACC, vf4, vf8x # 00106f08:4be821bc vmadday.xyzw ACC, vf5, vf8y # 00106f0c:4be828bd vmaddaz.xyzw ACC, vf6, vf8z # 00106f10:4be830be vmaddw.xyzw vf9, vf7, vf8w # 00106f14:4be83a4b sqc2 vf9, $0000(a0) # 00106f18:f8890000 addi a3, a3, $ffff # 00106f1c:20e7ffff a3=$00000003 addi a2, a2, $0010 # 00106f20:20c60010 bne zero, a3, $00106f04 # 00106f24:1407fff7 £_loopMulMatrix addi a0, a0, $0010 # 00106f28:20840010 jr ra # 00106f2c:03e00008 nop # 00106f30:00000000 nop # 00106f34:00000000 |
sceVu0OuterProduct
Signature |
---|
sceVu0OuterProduct: # lqc2 vf4, $0000(a1) # 00106f38:d8a40000 lqc2 vf5, $0000(a2) # 00106f3c:d8c50000 vopmula.xyz ACC, vf4, vf5 # 00106f40:4bc522fe vopmsub.xyz vf6, vf5, vf4 # 00106f44:4bc429ae vsub.w vf6, vf6, vf6 # 00106f48:4a2631ac jr ra # 00106f4c:03e00008 sqc2 vf6, $0000(a0) # 00106f50:f8860000 nop # 00106f54:00000000 |
sceVu0InnerProduct
Signature |
---|
sceVu0InnerProduct: # lqc2 vf4, $0000(a0) # 00106f58:d8840000 lqc2 vf5, $0000(a1) # 00106f5c:d8a50000 vmul.xyz vf5, vf4, vf5 # 00106f60:4bc5216a vaddy.x vf5, vf5, vf5y # 00106f64:4b052941 vaddz.x vf5, vf5, vf5z # 00106f68:4b052942 qmfc2 v0, vf5 # 00106f6c:48222800 mtc1 v0, $f0 # 00106f70:44820000 jr ra # 00106f74:03e00008 nop # 00106f78:00000000 |
sceVu0Normalize
Signature |
---|
sceVu0Normalize: # lqc2 vf4, $0000(a1) # 00106f80:d8a40000 vmul.xyz vf5, vf4, vf4 # 00106f84:4bc4216a vaddy.x vf5, vf5, vf5y # 00106f88:4b052941 vaddz.x vf5, vf5, vf5z # 00106f8c:4b052942 vsqrt Q, vf5x # 00106f90:4a0503bd vwaitq # 00106f94:4a0003bf vaddq.x vf5, vf0, Q # 00106f98:4b000160 vnop # 00106f9c:4a0002ff vnop # 00106fa0:4a0002ff vdiv Q, vf0w, vf5x # 00106fa4:4a6503bc vsub.xyzw vf6, vf0, vf0 # 00106fa8:4be001ac vwaitq # 00106fac:4a0003bf vmulq.xyz vf6, vf4, Q # 00106fb0:4bc0219c jr ra # 00106fb4:03e00008 sqc2 vf6, $0000(a0) # 00106fb8:f8860000 nop # 00106fbc:00000000 |
sceVu0TransposeMatrix
Signature |
---|
002026b8 78a80000 // lq t0, $0000(a1) 002026bc 78a90010 // lq t1, $0010(a1) 002026c0 78aa0020 // lq t2, $0020(a1) 002026c4 78ab0030 // lq t3, $0030(a1) 002026c8 71286488 // pextlw t4, t1, t0 002026cc 71286ca8 // pextuw t5, t1, t0 002026d0 716a7488 // pextlw t6, t3, t2 002026d4 716a7ca8 // pextuw t7, t3, t2 002026d8 71cc4389 // pcpyld t0, t6, t4 002026dc 718e4ba9 // pcpyud t1, t4, t6 002026e0 71ed5389 // pcpyld t2, t7, t5 002026e4 71af5ba9 // pcpyud t3, t5, t7 002026e8 7c880000 // sq t0, $0000(a0) 002026ec 7c890010 // sq t1, $0010(a0) 002026f0 7c8a0020 // sq t2, $0020(a0) 002026f4 03e00008 // jr ra 002026f8 7c8b0030 // sq t3, $0030(a0) |
credit: Maori-Jigglypuff
sceVu0InversMatrix
Signature |
---|
sceVu0InversMatrix: # lq t0, $0000(a1) # 00107008:78a80000 lq t1, $0010(a1) # 0010700c:78a90010 lq t2, $0020(a1) # 00107010:78aa0020 lqc2 vf4, $0030(a1) # 00107014:d8a40030 vmove.xyzw vf5, vf4 # 00107018:4be5233c vsub.xyz vf4, vf4, vf4 # 0010701c:4bc4212c vmove.xyzw vf9, vf4 # 00107020:4be9233c qmfc2 t3, vf4 # 00107024:482b2000 pextlw t4, t1, t0 # 00107028:71286488 pextuw t5, t1, t0 # 0010702c:71286ca8 pextlw t6, t3, t2 # 00107030:716a7488 pextuw t7, t3, t2 # 00107034:716a7ca8 pcpyld t0, t6, t4 # 00107038:71cc4389 pcpyud t1, t4, t6 # 0010703c:718e4ba9 pcpyld t2, t7, t5 # 00107040:71ed5389 qmtc2 t0, vf6 # 00107044:48a83000 qmtc2 t1, vf7 # 00107048:48a93800 qmtc2 t2, vf8 # 0010704c:48aa4000 vmulax.xyz ACC, vf6, vf5x # 00107050:4bc531bc vmadday.xyz ACC, vf7, vf5y # 00107054:4bc538bd vmaddz.xyz vf4, vf8, vf5z # 00107058:4bc5410a vsub.xyz vf4, vf9, vf4 # 0010705c:4bc4492c sq t0, $0000(a0) # 00107060:7c880000 sq t1, $0010(a0) # 00107064:7c890010 sq t2, $0020(a0) # 00107068:7c8a0020 jr ra # 0010706c:03e00008 sqc2 vf4, $0030(a0) # 00107070:f8840030 nop # 00107074:00000000 |
sceVu0DivVectorXYZ
sceVu0DivVector
Signature |
---|
sceVu0DivVector: # lqc2 vf4, $0000(a1) # 00107078:d8a40000 mfc1 t0, $f12 # 0010707c:44086000 qmtc2 t0, vf5 # 00107080:48a82800 vdiv Q, vf0w, vf5x # 00107084:4a6503bc vwaitq # 00107088:4a0003bf vmulq.xyzw vf4, vf4, Q # 0010708c:4be0211c jr ra # 00107090:03e00008 sqc2 vf4, $0000(a0) # 00107094:f8840000 |
sceVu0InterVector
Signature |
---|
sceVu0InterVector: # lqc2 vf4, $0000(a1) # 001070b8:d8a40000 lqc2 vf5, $0000(a2) # 001070bc:d8c50000 mfc1 t0, $f12 # 001070c0:44086000 qmtc2 t0, vf6 # 001070c4:48a83000 vaddw.x vf7, vf0, vf0w # 001070c8:4b0001c3 vsub.x vf8, vf7, vf6 # 001070cc:4b063a2c vmulax.xyzw ACC, vf4, vf6x # 001070d0:4be621bc vmaddx.xyzw vf9, vf5, vf8x # 001070d4:4be82a48 jr ra # 001070d8:03e00008 sqc2 vf9, $0000(a0) # 001070dc:f8890000 |
sceVu0AddVector
Signature |
---|
sceVu0AddVector: # lqc2 vf4, $0000(a1) # 001070e0:d8a40000 lqc2 vf5, $0000(a2) # 001070e4:d8c50000 vadd.xyzw vf6, vf4, vf5 # 001070e8:4be521a8 jr ra # 001070ec:03e00008 sqc2 vf6, $0000(a0) # 001070f0:f8860000 nop # 001070f4:00000000 |
sceVu0SubVector
Signature |
---|
sceVu0SubVector: # lqc2 vf4, $0000(a1) # 001070f8:d8a40000 lqc2 vf5, $0000(a2) # 001070fc:d8c50000 vsub.xyzw vf6, vf4, vf5 # 00107100:4be521ac jr ra # 00107104:03e00008 sqc2 vf6, $0000(a0) # 00107108:f8860000 nop # 0010710c:00000000 |
sceVu0MulVector
Signature |
---|
sceVu0MulVector: # lqc2 vf4, $0000(a1) # 00107110:d8a40000 lqc2 vf5, $0000(a2) # 00107114:d8c50000 vmul.xyzw vf6, vf4, vf5 # 00107118:4be521aa jr ra # 0010711c:03e00008 sqc2 vf6, $0000(a0) # 00107120:f8860000 nop # 00107124:00000000 |
sceVu0ScaleVector
Signature |
---|
sceVu0ScaleVector: # lqc2 vf4, $0000(a1) # 00107128:d8a40000 mfc1 t0, $f12 # 0010712c:44086000 qmtc2 t0, vf5 # 00107130:48a82800 vmulx.xyzw vf6, vf4, vf5x # 00107134:4be52198 jr ra # 00107138:03e00008 sqc2 vf6, $0000(a0) # 0010713c:f8860000 |
sceVu0TransMatrix
sceVu0CopyVector
Signature |
---|
sceVu0CopyVector: # lq a2, $0000(a1) # 00107170:78a60000 jr ra # 00107174:03e00008 sq a2, $0000(a0) # 00107178:7c860000 nop # 0010717c:00000000 |
sceVu0CopyMatrix
Signature |
---|
sceVu0CopyMatrix: # lq a2, $0000(a1) # 00107180:78a60000 lq a3, $0010(a1) # 00107184:78a70010 lq t0, $0020(a1) # 00107188:78a80020 lq t1, $0030(a1) # 0010718c:78a90030 sq a2, $0000(a0) # 00107190:7c860000 sq a3, $0010(a0) # 00107194:7c870010 sq t0, $0020(a0) # 00107198:7c880020 jr ra # 0010719c:03e00008 sq t1, $0030(a0) # 001071a0:7c890030 nop # 001071a4:00000000 |
sceVu0FTOI4Vector
sceVu0FTOI0Vector
sceVu0ITOF4Vector
sceVu0ITOF0Vector
sceVu0UnitMatrix
_sceVu0ecossin
sceVu0RotMatrixZ
sceVu0RotMatrixX
sceVu0RotMatrixY
sceVu0RotMatrix
Signature |
---|
sceVu0RotMatrix: # addiu sp, sp, $ffd0 # 00107480:27bdffd0 sd s1, $0010(sp) # 00107484:ffb10010 sd s0, $0000(sp) # 00107488:ffb00000 daddu s1, a2, zero # 0010748c:00c0882d sd ra, $0020(sp) # 00107490:ffbf0020 daddu s0, a0, zero # 00107494:0080802d jal $00107288 # 00107498:0c041ca2 £sceVu0RotMatrixZ lwc1 $f12, $0008(s1) # 0010749c:c62c0008 lwc1 $f12, $0004(s1) # 001074a0:c62c0004 daddu a0, s0, zero # 001074a4:0200202d jal $001073d8 # 001074a8:0c041cf6 £sceVu0RotMatrixY daddu a1, s0, zero # 001074ac:0200282d daddu a0, s0, zero # 001074b0:0200202d lwc1 $f12, $0000(s1) # 001074b4:c62c0000 ld ra, $0020(sp) # 001074b8:dfbf0020 daddu a1, a0, zero # 001074bc:0080282d ld s1, $0010(sp) # 001074c0:dfb10010 ld s0, $0000(sp) # 001074c4:dfb00000 j $00107330 # 001074c8:08041ccc £sceVu0RotMatrixX addiu sp, sp, $0030 # 001074cc:27bd0030 |
sceVu0ClampVector
Signature |
---|
sceVu0ClampVector: # mfc1 t0, $f12 # 001074d0:44086000 mfc1 t1, $f13 # 001074d4:44096800 lqc2 vf6, $0000(a1) # 001074d8:d8a60000 qmtc2 t0, vf4 # 001074dc:48a82000 qmtc2 t1, vf5 # 001074e0:48a92800 vmaxx.xyzw vf6, vf6, vf4x # 001074e4:4be43190 vminix.xyzw vf6, vf6, vf5x # 001074e8:4be53194 jr ra # 001074ec:03e00008 sqc2 vf6, $0000(a0) # 001074f0:f8860000 nop # 001074f4:00000000 |
sceVu0CameraMatrix
Signature |
---|
sceVu0CameraMatrix: # addiu sp, sp, $ff50 # 001074f8:27bdff50 sd s4, $0090(sp) # 001074fc:ffb40090 daddu s4, a0, zero # 00107500:0080a02d sd s3, $0080(sp) # 00107504:ffb30080 sd s2, $0070(sp) # 00107508:ffb20070 daddu s3, a1, zero # 0010750c:00a0982d sd s1, $0060(sp) # 00107510:ffb10060 daddu s2, a2, zero # 00107514:00c0902d daddu s1, a3, zero # 00107518:00e0882d sd s0, $0050(sp) # 0010751c:ffb00050 sd ra, $00a0(sp) # 00107520:ffbf00a0 jal $001071e8 # 00107524:0c041c7a £sceVu0UnitMatrix daddu a0, sp, zero # 00107528:03a0202d addiu s0, sp, $0040 # 0010752c:27b00040 daddu a1, s1, zero # 00107530:0220282d daddu a0, s0, zero # 00107534:0200202d jal $00106f38 # 00107538:0c041bce £sceVu0OuterProduct daddu a2, s2, zero # 0010753c:0240302d daddu a1, s0, zero # 00107540:0200282d jal $00106f80 # 00107544:0c041be0 £sceVu0Normalize daddu a0, sp, zero # 00107548:03a0202d addiu s0, sp, $0020 # 0010754c:27b00020 daddu a1, s2, zero # 00107550:0240282d jal $00106f80 # 00107554:0c041be0 £sceVu0Normalize daddu a0, s0, zero # 00107558:0200202d daddu a1, s0, zero # 0010755c:0200282d addiu a0, sp, $0010 # 00107560:27a40010 jal $00106f38 # 00107564:0c041bce £sceVu0OuterProduct daddu a2, sp, zero # 00107568:03a0302d daddu a2, s3, zero # 0010756c:0260302d daddu a0, sp, zero # 00107570:03a0202d jal $00107140 # 00107574:0c041c50 £sceVu0TransMatrix daddu a1, sp, zero # 00107578:03a0282d daddu a0, s4, zero # 0010757c:0280202d jal $00107008 # 00107580:0c041c02 £sceVu0InversMatrix daddu a1, sp, zero # 00107584:03a0282d ld ra, $00a0(sp) # 00107588:dfbf00a0 ld s4, $0090(sp) # 0010758c:dfb40090 ld s3, $0080(sp) # 00107590:dfb30080 ld s2, $0070(sp) # 00107594:dfb20070 ld s1, $0060(sp) # 00107598:dfb10060 ld s0, $0050(sp) # 0010759c:dfb00050 jr ra # 001075a0:03e00008 addiu sp, sp, $00b0 # 001075a4:27bd00b0 |
sceVu0NormalLightMatrix
sceVu0LightColorMatrix
sceVu0ViewSreenMatrix
sceVu0DropShadowMatrix
sceVu0RotTransPersN
sceVu0TorTransPers
sceVu0CopyVectorXYZ
sceVu0InterVectorXZY
sceVu0ScaleVectorXYZ
sceVu0ClipScreen
sceVu0ClipScreen3
sceVu0ClipAll
Vpu0
sceVpu0Reset
Signature |
---|
sceVpu0Reset: # lui v0, $1000 # 00107ba8:3c021000 v0=$10000000 lui a0, $1000 # 00107bac:3c041000 a0=$10000000 ori v0, v0, $3830 # 00107bb0:34423830 v0=$10003830 ori a0, a0, $3820 # 00107bb4:34843820 a0=$10003820 sw zero, $0000(v0) # 00107bb8:ac400000 [10003830] lui v1, $1000 # 00107bbc:3c031000 v1=$10000000 sw zero, $0000(a0) # 00107bc0:ac800000 [10003820] ori v1, v1, $3810 # 00107bc4:34633810 v1=$10003810 addiu v0, zero, $0001 # 00107bc8:24020001 v0=$00000001 sw v0, $0000(v1) # 00107bcc:ac620000 [10003810] cfc2 t0, FBRST # 00107bd0:4848e000 ori t0, t0, $0002 # 00107bd4:35080002 ctc2 t0, FBRST # 00107bd8:48c8e000 sync.p # 00107bdc:0000040f lui a0, $0033 # 00107be0:3c040033 a0=$00330000 lui a1, $1000 # 00107be4:3c051000 a1=$10000000 addiu a0, a0, $8230 # 00107be8:24848230 a0=init_vif_regs.126 ori a1, a1, $4000 # 00107bec:34a54000 a1=$10004000 lq v0, $0000(a0) # 00107bf0:78820000 v0=init_vif_regs.126 sq v0, $0000(a1) # 00107bf4:7ca20000 [10004000] lq v1, $0010(a0) # 00107bf8:78830010 v1=$00328240 jr ra # 00107bfc:03e00008 sq v1, $0000(a1) # 00107c00:7ca30000 [10004000] nop # 00107c04:00000000 nop # 00107c08:00000000 nop # 00107c0c:00000000 |
Adr
sceAdrDrive
Signature |
---|
sceAddDrv: # addiu sp, sp, $ff70 # 00115940:27bdff70 sd s1, $0050(sp) # 00115944:ffb10050 daddu s1, a0, zero # 00115948:0080882d sd s3, $0070(sp) # 0011594c:ffb30070 sd s0, $0040(sp) # 00115950:ffb00040 addiu a0, zero, $000f # 00115954:2404000f a0=$0000000f sd ra, $0080(sp) # 00115958:ffbf0080 lui s3, $0037 # 0011595c:3c130037 s3=rbuf sd s2, $0060(sp) # 00115960:ffb20060 jal $00113f08 # 00115964:0c044fc2 £_sceFsWaitS addiu s0, s3, $1cc0 # 00115968:26701cc0 s0=_send_data lui v1, $0033 # 0011596c:3c030033 v1=$00330000 lw v0, $8d20(v1) # 00115970:8c628d20 v0=_fs_init bnel v0, zero, $00115988 # 00115974:54400004 ¥__00115988 sw s1, $000c(s0) # 00115978:ae11000c [00371ccc] jal $00114008 # 0011597c:0c045002 £sceFsInit nop # 00115980:00000000 sw s1, $000c(s0) # 00115984:ae11000c [00371ccc] __00115988: # addiu v0, zero, $0001 # 00115988:24020001 v0=$00000001 sw v0, $0014(sp) # 0011598c:afa20014 addiu a0, sp, $0010 # 00115990:27a40010 sw zero, $0018(sp) # 00115994:afa00018 jal $001100e0 # 00115998:0c044038 £CreateSema sw zero, $0024(sp) # 0011599c:afa00024 daddu s1, v0, zero # 001159a0:0040882d s1=$00000001 addiu v1, sp, $0030 # 001159a4:27a30030 lui v0, $0037 # 001159a8:3c020037 v0=rbuf sw s1, $1cc0(s3) # 001159ac:ae711cc0 _send_data addiu s2, v0, $2900 # 001159b0:24522900 s2=_rcv_data_rpc lui a0, $0037 # 001159b4:3c040037 a0=rbuf addiu v0, zero, $0004 # 001159b8:24020004 v0=$00000004 sw v1, $0004(s0) # 001159bc:ae030004 [00371cc4] sw v0, $0008(s0) # 001159c0:ae020008 [00371cc8] addiu a0, a0, $2f80 # 001159c4:24842f80 a0=_cd daddu a3, s0, zero # 001159c8:0200382d a3=_send_data addiu a1, zero, $000f # 001159cc:2405000f a1=$0000000f sw zero, $0000(sp) # 001159d0:afa00000 daddu a2, zero, zero # 001159d4:0000302d addiu t0, zero, $0010 # 001159d8:24080010 t0=$00000010 daddu t1, s2, zero # 001159dc:0240482d t1=_rcv_data_rpc addiu t2, zero, $0004 # 001159e0:240a0004 t2=$00000004 jal $00113280 # 001159e4:0c044ca0 £sceSifCallRpc daddu t3, zero, zero # 001159e8:0000582d bgez v0, $00115a0c # 001159ec:04410007 ¥__00115a0c lui v0, $2000 # 001159f0:3c022000 v0=$20000000 jal $001100f0 # 001159f4:0c04403c £DeleteSema daddu a0, s1, zero # 001159f8:0220202d a0=$00000001 jal $00113f38 # 001159fc:0c044fce £_sceFsSigSema nop # 00115a00:00000000 beq zero, zero, $00115a44 # 00115a04:1000000f ¥__00115a44 addiu v0, zero, $ffff # 00115a08:2402ffff v0=_heap_size __00115a0c: # or v0, s2, v0 # 00115a0c:02421025 v0=_heap_size jal $00113f38 # 00115a10:0c044fce £_sceFsSigSema lw s0, $0000(v0) # 00115a14:8c500000 s0=_heap_size bne s0, zero, $00115a30 # 00115a18:16000005 ¥__00115a30 nop # 00115a1c:00000000 jal $001100f0 # 00115a20:0c04403c £DeleteSema daddu a0, s1, zero # 00115a24:0220202d a0=$00000001 beq zero, zero, $00115a44 # 00115a28:10000006 ¥__00115a44 addiu v0, zero, $ffff # 00115a2c:2402ffff v0=_heap_size __00115a30: # jal $00110120 # 00115a30:0c044048 £WaitSema daddu a0, s1, zero # 00115a34:0220202d jal $001100f0 # 00115a38:0c04403c £DeleteSema daddu a0, s1, zero # 00115a3c:0220202d lw v0, $0030(sp) # 00115a40:8fa20030 __00115a44: # ld ra, $0080(sp) # 00115a44:dfbf0080 ld s3, $0070(sp) # 00115a48:dfb30070 ld s2, $0060(sp) # 00115a4c:dfb20060 ld s1, $0050(sp) # 00115a50:dfb10050 ld s0, $0040(sp) # 00115a54:dfb00040 jr ra # 00115a58:03e00008 addiu sp, sp, $0090 # 00115a5c:27bd0090 |
Cd
sceCdDelayThread
Signature |
---|
sceCdDelayThread: # addiu sp, sp, $ffb0 # 0011f440:27bdffb0 addiu v0, zero, $0001 # 0011f444:24020001 v0=$00000001 sd s1, $0030(sp) # 0011f448:ffb10030 andi s1, a0, $ffff # 0011f44c:3091ffff sd s0, $0020(sp) # 0011f450:ffb00020 sw v0, $0004(sp) # 0011f454:afa20004 sw zero, $0008(sp) # 0011f458:afa00008 sw zero, $0014(sp) # 0011f45c:afa00014 sd ra, $0040(sp) # 0011f460:ffbf0040 jal $001100e0 # 0011f464:0c044038 £CreateSema daddu a0, sp, zero # 0011f468:03a0202d daddu s0, v0, zero # 0011f46c:0040802d s0=$00000001 lui a1, $0012 # 0011f470:3c050012 a1=$00120000 daddu a2, s0, zero # 0011f474:0200302d a2=$00000001 daddu a0, s1, zero # 0011f478:0220202d jal $0010fe60 # 0011f47c:0c043f98 £SetAlarm addiu a1, a1, $f418 # 0011f480:24a5f418 a1=gcc2_compiled. jal $00110120 # 0011f484:0c044048 £WaitSema daddu a0, s0, zero # 0011f488:0200202d a0=$00000001 jal $001100f0 # 0011f48c:0c04403c £DeleteSema daddu a0, s0, zero # 0011f490:0200202d a0=$00000001 ld ra, $0040(sp) # 0011f494:dfbf0040 ld s1, $0030(sp) # 0011f498:dfb10030 ld s0, $0020(sp) # 0011f49c:dfb00020 jr ra # 0011f4a0:03e00008 addiu sp, sp, $0050 # 0011f4a4:27bd0050 |
sceCdDriveCallback
Signature |
---|
sceCdCallback: # addiu sp, sp, $ffd0 # 0011f4a8:27bdffd0 sd s1, $0010(sp) # 0011f4ac:ffb10010 daddu s1, a0, zero # 0011f4b0:0080882d sd ra, $0020(sp) # 0011f4b4:ffbf0020 sd s0, $0000(sp) # 0011f4b8:ffb00000 jal $0011ff10 # 0011f4bc:0c047fc4 ¥sceCdSync addiu a0, zero, $0001 # 0011f4c0:24040001 a0=$00000001 bne v0, zero, $0011f4e8 # 0011f4c4:14400008 ¥__0011f4e8 daddu v0, zero, zero # 0011f4c8:0000102d jal $00118be0 # 0011f4cc:0c0462f8 £DIntr nop # 0011f4d0:00000000 lui v1, $0037 # 0011f4d4:3c030037 v1=rbuf lw s0, $48c0(v1) # 0011f4d8:8c7048c0 s0=sceCdCbfunc jal $00118c28 # 0011f4dc:0c04630a £EIntr sw s1, $48c0(v1) # 0011f4e0:ac7148c0 sceCdCbfunc daddu v0, s0, zero # 0011f4e4:0200102d __0011f4e8: # ld ra, $0020(sp) # 0011f4e8:dfbf0020 ld s1, $0010(sp) # 0011f4ec:dfb10010 ld s0, $0000(sp) # 0011f4f0:dfb00000 jr ra # 0011f4f4:03e00008 addiu sp, sp, $0030 # 0011f4f8:27bd0030 nop # 0011f4fc:00000000 |
sceCdInitEeCB
Signature |
---|
sceCdInitEeCB: # addiu sp, sp, $ffa0 # 0011f660:27bdffa0 sd s4, $0040(sp) # 0011f664:ffb40040 sd s1, $0010(sp) # 0011f668:ffb10010 lui s4, $0033 # 0011f66c:3c140033 s4=$00330000 daddu s1, a0, zero # 0011f670:0080882d sd s3, $0030(sp) # 0011f674:ffb30030 sd s2, $0020(sp) # 0011f678:ffb20020 addiu s3, zero, $0001 # 0011f67c:24130001 s3=$00000001 sd s0, $0000(sp) # 0011f680:ffb00000 daddu s2, a1, zero # 0011f684:00a0902d lw a0, $9bd4(s4) # 0011f688:8e849bd4 a0=cb_thid daddu s0, a2, zero # 0011f68c:00c0802d bne a0, zero, $0011f704 # 0011f690:1480001c ¥__0011f704 sd ra, $0050(sp) # 0011f694:ffbf0050 jal $0010ffd0 # 0011f698:0c043ff4 £GetThreadId nop # 0011f69c:00000000 lui v1, $0037 # 0011f6a0:3c030037 v1=rbuf lui a1, $0037 # 0011f6a4:3c050037 a1=rbuf sw v0, $48d0(v1) # 0011f6a8:ac6248d0 my_thid daddu a0, v0, zero # 0011f6ac:0040202d jal $0010ffe0 # 0011f6b0:0c043ff8 £ReferThreadStatus addiu a1, a1, $48d8 # 0011f6b4:24a548d8 a1=my_th_info lui v1, $0037 # 0011f6b8:3c030037 v1=rbuf lui v0, $0037 # 0011f6bc:3c020037 v0=rbuf lui a1, $0012 # 0011f6c0:3c050012 a1=$00120000 addiu v1, v1, $4908 # 0011f6c4:24634908 v1=cb_tp addiu v0, v0, $4c70 # 0011f6c8:24424c70 v0=_gp addiu a1, a1, $f5a0 # 0011f6cc:24a5f5a0 a1=_Cdvd_cbLoop sw s0, $000c(v1) # 0011f6d0:ac70000c [00374914] daddu a0, v1, zero # 0011f6d4:0060202d a0=cb_tp sw v0, $0010(v1) # 0011f6d8:ac620010 [00374918] sw a1, $0004(v1) # 0011f6dc:ac650004 [0037490c] sw s2, $0008(v1) # 0011f6e0:ac720008 [00374910] jal $0010fee0 # 0011f6e4:0c043fb8 £CreateThread sw s1, $0014(v1) # 0011f6e8:ac710014 [0037491c] daddu a1, zero, zero # 0011f6ec:0000282d sw v0, $9bd4(s4) # 0011f6f0:ae829bd4 cb_thid jal $0010ff00 # 0011f6f4:0c043fc0 £StartThread daddu a0, v0, zero # 0011f6f8:0040202d a0=_gp beq zero, zero, $0011f714 # 0011f6fc:10000005 ¥__0011f714 daddu v0, s3, zero # 0011f700:0260102d v0=$00000001 __0011f704: # daddu a1, s1, zero # 0011f704:0220282d jal $0010ff70 # 0011f708:0c043fdc £ChangeThreadPriority daddu s3, zero, zero # 0011f70c:0000982d daddu v0, s3, zero # 0011f710:0260102d __0011f714: # ld ra, $0050(sp) # 0011f714:dfbf0050 ld s4, $0040(sp) # 0011f718:dfb40040 ld s3, $0030(sp) # 0011f71c:dfb30030 ld s2, $0020(sp) # 0011f720:dfb20020 ld s1, $0010(sp) # 0011f724:dfb10010 ld s0, $0000(sp) # 0011f728:dfb00000 jr ra # 0011f72c:03e00008 addiu sp, sp, $0060 # 0011f730:27bd0060 nop # 0011f734:00000000 |
sceCdPOffCallback
Signature |
---|
sceCdPOffCallback: # addiu sp, sp, $ffc0 # 0011f8f0:27bdffc0 lui v0, $0033 # 0011f8f4:3c020033 v0=$00330000 sd s2, $0020(sp) # 0011f8f8:ffb20020 sd s1, $0010(sp) # 0011f8fc:ffb10010 daddu s2, a0, zero # 0011f900:0080902d lw v1, $9bfc(v0) # 0011f904:8c439bfc v1=_icmd_bind daddu s1, a1, zero # 0011f908:00a0882d sd ra, $0030(sp) # 0011f90c:ffbf0030 bgez v1, $0011f920 # 0011f910:04610003 ¥__0011f920 sd s0, $0000(sp) # 0011f914:ffb00000 jal $0011f9a0 # 0011f918:0c047e68 ¥PowerOffCB nop # 0011f91c:00000000 __0011f920: # jal $00118be0 # 0011f920:0c0462f8 £DIntr nop # 0011f924:00000000 lui v1, $0037 # 0011f928:3c030037 v1=rbuf lui v0, $0037 # 0011f92c:3c020037 v0=rbuf lw s0, $48c4(v1) # 0011f930:8c7048c4 s0=sceCdPoffCbfunc sw s1, $48c8(v0) # 0011f934:ac5148c8 sceCdPoffCbdata jal $00118c28 # 0011f938:0c04630a £EIntr sw s2, $48c4(v1) # 0011f93c:ac7248c4 sceCdPoffCbfunc daddu v0, s0, zero # 0011f940:0200102d ld ra, $0030(sp) # 0011f944:dfbf0030 ld s2, $0020(sp) # 0011f948:dfb20020 ld s1, $0010(sp) # 0011f94c:dfb10010 ld s0, $0000(sp) # 0011f950:dfb00000 jr ra # 0011f954:03e00008 addiu sp, sp, $0040 # 0011f958:27bd0040 nop |
sceCdSearchFile
Signature |
---|
sceCdSearchFile: # addiu sp, sp, $ff50 # 0011fa08:27bdff50 sd s3, $0040(sp) # 0011fa0c:ffb30040 sd s2, $0030(sp) # 0011fa10:ffb20030 daddu s3, a0, zero # 0011fa14:0080982d sd s6, $0070(sp) # 0011fa18:ffb60070 daddu s2, a1, zero # 0011fa1c:00a0902d sd ra, $00a0(sp) # 0011fa20:ffbf00a0 lui s6, $0033 # 0011fa24:3c160033 s6=$00330000 sd fp, $0090(sp) # 0011fa28:ffbe0090 sd s7, $0080(sp) # 0011fa2c:ffb70080 sd s5, $0060(sp) # 0011fa30:ffb50060 sd s4, $0050(sp) # 0011fa34:ffb40050 sd s1, $0020(sp) # 0011fa38:ffb10020 jal $0011f7d8 # 0011fa3c:0c047df6 £cmd_sem_init sd s0, $0010(sp) # 0011fa40:ffb00010 lw a0, $9be8(s6) # 0011fa44:8ec49be8 a0=_sceCd_ncmd_semid jal $00110130 # 0011fa48:0c04404c £PollSema nop # 0011fa4c:00000000 lw v1, $9be8(s6) # 0011fa50:8ec39be8 v1=_sceCd_ncmd_semid bne v1, v0, $0011fcd4 # 0011fa54:1462009f ¥__0011fcd4 daddu v0, zero, zero # 0011fa58:0000102d lui v0, $0037 # 0011fa5c:3c020037 v0=rbuf lui a2, $0033 # 0011fa60:3c060033 a2=$00330000 addiu v1, zero, $0001 # 0011fa64:24030001 v1=$00000001 lw a0, $48d0(v0) # 0011fa68:8c4448d0 a0=my_thid lui a1, $0037 # 0011fa6c:3c050037 a1=rbuf sw v1, $9bdc(a2) # 0011fa70:acc39bdc ncmd_sema_keep_cmd jal $0010ffe0 # 0011fa74:0c043ff8 £ReferThreadStatus addiu a1, a1, $48d8 # 0011fa78:24a548d8 a1=my_th_info jal $0011ff10 # 0011fa7c:0c047fc4 ¥sceCdSync addiu a0, zero, $0001 # 0011fa80:24040001 a0=$00000001 bne v0, zero, $0011fc08 # 0011fa84:14400060 ¥__0011fc08 daddu a0, zero, zero # 0011fa88:0000202d jal $00112a40 # 0011fa8c:0c044a90 £sceSifInitRpc lui s1, $0033 # 0011fa90:3c110033 s1=$00330000 lw v0, $9c00(s1) # 0011fa94:8e229c00 v0=_sf_bind bgez v0, $0011fb4c # 0011fa98:0441002c ¥__0011fb4c lui s7, $0037 # 0011fa9c:3c170037 s7=rbuf lui s4, $0033 # 0011faa0:3c140033 s4=$00330000 lui s5, $0037 # 0011faa4:3c150037 s5=rbuf beq zero, zero, $0011fad4 # 0011faa8:1000000a ¥__0011fad4 lui fp, $0037 # 0011faac:3c1e0037 fp=rbuf __0011fab0: # addiu v1, zero, $ffff # 0011fab0:2403ffff v1=_heap_size nop # 0011fab4:00000000 __0011fab8: # addiu v0, v0, $ffff # 0011fab8:2442ffff v0=$fffffffe nop # 0011fabc:00000000 nop # 0011fac0:00000000 nop # 0011fac4:00000000 nop # 0011fac8:00000000 bne v0, v1, $0011fab8 # 0011facc:1443fffa £__0011fab8 nop # 0011fad0:00000000 __0011fad4: # addiu s0, s7, $4ac0 # 0011fad4:26f04ac0 s0=cdrdsf __0011fad8: # lui a1, $8000 # 0011fad8:3c058000 a1=$80000000 daddu a0, s0, zero # 0011fadc:0200202d a0=cdrdsf ori a1, a1, $0597 # 0011fae0:34a50597 a1=$80000597 jal $001130b0 # 0011fae4:0c044c2c £sceSifBindRpc daddu a2, zero, zero # 0011fae8:0000302d bgezl v0, $0011fb3c # 0011faec:04430013 ¥__0011fb3c lw v0, $0024(s0) # 0011faf0:8e020024 v0=$00374ae4 lw v0, $9bd0(s4) # 0011faf4:8e829bd0 v0=SCE_CD_debug blez v0, $0011fb10 # 0011faf8:18400005 ¥__0011fb10 lui v0, $0010 # 0011fafc:3c020010 v0=.text lui a0, $0036 # 0011fb00:3c040036 a0=$00360000 jal $00112298 # 0011fb04:0c0448a6 £scePrintf addiu a0, a0, $8c50 # 0011fb08:24848c50 a0="Libcdvd bind err CdSearchFile\n" lui v0, $0010 # 0011fb0c:3c020010 v0=.text __0011fb10: # addiu v1, zero, $ffff # 0011fb10:2403ffff v1=_heap_size nop # 0011fb14:00000000 __0011fb18: # addiu v0, v0, $ffff # 0011fb18:2442ffff v0=$000fffff nop # 0011fb1c:00000000 nop # 0011fb20:00000000 nop # 0011fb24:00000000 nop # 0011fb28:00000000 bne v0, v1, $0011fb18 # 0011fb2c:1443fffa £__0011fb18 nop # 0011fb30:00000000 beq zero, zero, $0011fad8 # 0011fb34:1000ffe8 £__0011fad8 addiu s0, s7, $4ac0 # 0011fb38:26f04ac0 s0=cdrdsf __0011fb3c: # beq v0, zero, $0011fab0 # 0011fb3c:1040ffdc £__0011fab0 lui v0, $0010 # 0011fb40:3c020010 v0=.text beq zero, zero, $0011fb58 # 0011fb44:10000004 ¥__0011fb58 sw zero, $9c00(s1) # 0011fb48:ae209c00 __0011fb4c: # lui s4, $0033 # 0011fb4c:3c140033 s4=$00330000 lui s5, $0037 # 0011fb50:3c150037 s5=rbuf lui fp, $0037 # 0011fb54:3c1e0037 fp=rbuf __0011fb58: # lbu v1, $0000(s2) # 0011fb58:92430000 addiu a0, s5, $4940 # 0011fb5c:26a44940 a0=_sf_data daddu a1, zero, zero # 0011fb60:0000282d sll v0, v1, 24 # 0011fb64:00031600 beq v0, zero, $0011fb9c # 0011fb68:1040000c ¥__0011fb9c sb v1, $0024(a0) # 0011fb6c:a0830024 [00374964] addiu a2, a0, $0024 # 0011fb70:24860024 a2=$00374964 addiu a1, a1, $0001 # 0011fb74:24a50001 a1=$00000001 __0011fb78: # slti v0, a1, $0100 # 0011fb78:28a20100 beq v0, zero, $0011fb9c # 0011fb7c:10400007 ¥__0011fb9c addu v0, s2, a1 # 0011fb80:02451021 addu a0, a1, a2 # 0011fb84:00a62021 a0=$00374965 lbu v1, $0000(v0) # 0011fb88:90430000 sb v1, $0000(a0) # 0011fb8c:a0830000 [00374965] sll v1, v1, 24 # 0011fb90:00031e00 bnel v1, zero, $0011fb78 # 0011fb94:5460fff8 £__0011fb78 addiu a1, a1, $0001 # 0011fb98:24a50001 a1=$00000002 __0011fb9c: # addiu v0, zero, $0100 # 0011fb9c:24020100 v0=$00000100 bne a1, v0, $0011fbb0 # 0011fba0:14a20003 ¥__0011fbb0 addiu s0, s5, $4940 # 0011fba4:26b04940 s0=_sf_data addiu v0, s5, $4940 # 0011fba8:26a24940 v0=_sf_data sb zero, $0123(v0) # 0011fbac:a0400123 [00374a63] __0011fbb0: # lw v0, $9bd0(s4) # 0011fbb0:8e829bd0 v0=SCE_CD_debug blez v0, $0011fbcc # 0011fbb4:18400005 ¥__0011fbcc sw s0, $0124(s0) # 0011fbb8:ae100124 [00374a64] lui a0, $0036 # 0011fbbc:3c040036 a0=$00360000 addiu a1, s0, $0024 # 0011fbc0:26050024 a1=$00374964 jal $00112298 # 0011fbc4:0c0448a6 £scePrintf addiu a0, a0, $8c70 # 0011fbc8:24848c70 a0="ee call cmd search %s\n" __0011fbcc: # daddu a0, s0, zero # 0011fbcc:0200202d a0=_sf_data jal $00112990 # 0011fbd0:0c044a64 £sceSifWriteBackDCache addiu a1, zero, $0128 # 0011fbd4:24050128 a1=$00000128 addiu a0, s7, $4ac0 # 0011fbd8:26e44ac0 sw zero, $0000(sp) # 0011fbdc:afa00000 daddu a1, zero, zero # 0011fbe0:0000282d daddu a2, zero, zero # 0011fbe4:0000302d daddu a3, s0, zero # 0011fbe8:0200382d a3=_sf_data addiu t0, zero, $0128 # 0011fbec:24080128 t0=$00000128 addiu t1, fp, $4a80 # 0011fbf0:27c94a80 t1=sfrdata addiu t2, zero, $0004 # 0011fbf4:240a0004 t2=$00000004 jal $00113280 # 0011fbf8:0c044ca0 £sceSifCallRpc daddu t3, zero, zero # 0011fbfc:0000582d bgez v0, $0011fc1c # 0011fc00:04410006 ¥__0011fc1c lui v0, $2000 # 0011fc04:3c022000 v0=$20000000 __0011fc08: # lw a0, $9be8(s6) # 0011fc08:8ec49be8 jal $00110100 # 0011fc0c:0c044040 £SignalSema nop # 0011fc10:00000000 beq zero, zero, $0011fcd4 # 0011fc14:1000002f ¥__0011fcd4 daddu v0, zero, zero # 0011fc18:0000102d __0011fc1c: # or v0, s0, v0 # 0011fc1c:02021025 ldl v1, $0007(v0) # 0011fc20:68430007 ldr v1, $0000(v0) # 0011fc24:6c430000 ldl a0, $000f(v0) # 0011fc28:6844000f ldr a0, $0008(v0) # 0011fc2c:6c440008 ldl a1, $0017(v0) # 0011fc30:68450017 ldr a1, $0010(v0) # 0011fc34:6c450010 ldl a2, $001f(v0) # 0011fc38:6846001f ldr a2, $0018(v0) # 0011fc3c:6c460018 sdl v1, $0007(s3) # 0011fc40:b2630007 sdr v1, $0000(s3) # 0011fc44:b6630000 sdl a0, $000f(s3) # 0011fc48:b264000f sdr a0, $0008(s3) # 0011fc4c:b6640008 sdl a1, $0017(s3) # 0011fc50:b2650017 sdr a1, $0010(s3) # 0011fc54:b6650010 sdl a2, $001f(s3) # 0011fc58:b266001f sdr a2, $0018(s3) # 0011fc5c:b6660018 lwl v1, $0023(v0) # 0011fc60:88430023 lwr v1, $0020(v0) # 0011fc64:98430020 swl v1, $0023(s3) # 0011fc68:aa630023 swr v1, $0020(s3) # 0011fc6c:ba630020 lw v1, $9bd0(s4) # 0011fc70:8e839bd0 blez v1, $0011fcb8 # 0011fc74:18600010 ¥__0011fcb8 lui a0, $0036 # 0011fc78:3c040036 a0=$00360000 addiu a1, s3, $0008 # 0011fc7c:26650008 jal $00112298 # 0011fc80:0c0448a6 £scePrintf addiu a0, a0, $8c88 # 0011fc84:24848c88 a0="search name %s\n" lw v0, $9bd0(s4) # 0011fc88:8e829bd0 blez v0, $0011fcb8 # 0011fc8c:1840000a ¥__0011fcb8 lui a0, $0036 # 0011fc90:3c040036 a0=$00360000 lw a1, $0004(s3) # 0011fc94:8e650004 jal $00112298 # 0011fc98:0c0448a6 £scePrintf addiu a0, a0, $8c98 # 0011fc9c:24848c98 a0="search size %d\n" lw v0, $9bd0(s4) # 0011fca0:8e829bd0 blez v0, $0011fcb8 # 0011fca4:18400004 ¥__0011fcb8 lui a0, $0036 # 0011fca8:3c040036 a0=$00360000 lw a1, $0000(s3) # 0011fcac:8e650000 jal $00112298 # 0011fcb0:0c0448a6 £scePrintf addiu a0, a0, $8ca8 # 0011fcb4:24848ca8 a0="search loc lbn %d\n" __0011fcb8: # lui v1, $2000 # 0011fcb8:3c032000 v1=$20000000 addiu v0, fp, $4a80 # 0011fcbc:27c24a80 v0=sfrdata or v0, v0, v1 # 0011fcc0:00431025 v0=$20374a80 lw a0, $9be8(s6) # 0011fcc4:8ec49be8 jal $00110100 # 0011fcc8:0c044040 £SignalSema lw s0, $0000(v0) # 0011fccc:8c500000 s0=$20374a80 daddu v0, s0, zero # 0011fcd0:0200102d __0011fcd4: # ld ra, $00a0(sp) # 0011fcd4:dfbf00a0 ld fp, $0090(sp) # 0011fcd8:dfbe0090 ld s7, $0080(sp) # 0011fcdc:dfb70080 ld s6, $0070(sp) # 0011fce0:dfb60070 ld s5, $0060(sp) # 0011fce4:dfb50060 ld s4, $0050(sp) # 0011fce8:dfb40050 ld s3, $0040(sp) # 0011fcec:dfb30040 ld s2, $0030(sp) # 0011fcf0:dfb20030 ld s1, $0020(sp) # 0011fcf4:dfb10020 ld s0, $0010(sp) # 0011fcf8:dfb00010 jr ra # 0011fcfc:03e00008 addiu sp, sp, $00b0 # 0011fd00:27bd00b0 nop # 0011fd04:00000000 |
sceCdNcmdDiskReady
Signature |
---|
sceCdNcmdDiskReady: # addiu sp, sp, $ffd0 # 0011fe78:27bdffd0 addiu a0, zero, $0002 # 0011fe7c:24040002 a0=$00000002 sd ra, $0020(sp) # 0011fe80:ffbf0020 jal $0011fd08 # 0011fe84:0c047f42 £_sceCd_ncmd_prechk sd s0, $0010(sp) # 0011fe88:ffb00010 bne v0, zero, $0011fe9c # 0011fe8c:14400003 ¥__0011fe9c lui v0, $0033 # 0011fe90:3c020033 v0=$00330000 beq zero, zero, $0011ff00 # 0011fe94:1000001a ¥__0011ff00 daddu v0, zero, zero # 0011fe98:0000102d __0011fe9c: # lui a0, $0033 # 0011fe9c:3c040033 a0=$00330000 addiu s0, v0, $9c40 # 0011fea0:24509c40 s0=$ffff9c40 addiu a0, a0, $ad90 # 0011fea4:2484ad90 a0=_sceCd_cd_ncmd sw zero, $0000(sp) # 0011fea8:afa00000 addiu a1, zero, $000e # 0011feac:2405000e a1=$0000000e daddu a2, zero, zero # 0011feb0:0000302d daddu a3, zero, zero # 0011feb4:0000382d daddu t0, zero, zero # 0011feb8:0000402d daddu t1, s0, zero # 0011febc:0200482d t1=$ffff9c40 addiu t2, zero, $0004 # 0011fec0:240a0004 t2=$00000004 jal $00113280 # 0011fec4:0c044ca0 £sceSifCallRpc daddu t3, zero, zero # 0011fec8:0000582d bgez v0, $0011fee8 # 0011fecc:04410006 ¥__0011fee8 lui v1, $0033 # 0011fed0:3c030033 v1=$00330000 lui v0, $0033 # 0011fed4:3c020033 v0=$00330000 jal $00110100 # 0011fed8:0c044040 £SignalSema lw a0, $9be8(v0) # 0011fedc:8c449be8 a0=_sceCd_ncmd_semid beq zero, zero, $0011ff00 # 0011fee0:10000007 ¥__0011ff00 daddu v0, zero, zero # 0011fee4:0000102d __0011fee8: # lui v0, $2000 # 0011fee8:3c022000 v0=$20000000 or v0, s0, v0 # 0011feec:02021025 v0=$ffff9c40 lw a0, $9be8(v1) # 0011fef0:8c649be8 a0=_sceCd_ncmd_semid jal $00110100 # 0011fef4:0c044040 £SignalSema lw s0, $0000(v0) # 0011fef8:8c500000 s0=$ffff9c40 daddu v0, s0, zero # 0011fefc:0200102d __0011ff00: # ld ra, $0020(sp) # 0011ff00:dfbf0020 ld s0, $0010(sp) # 0011ff04:dfb00010 jr ra # 0011ff08:03e00008 addiu sp, sp, $0030 # 0011ff0c:27bd0030 |
sceCdInit
Signature |
---|
sceCdInit: # addiu sp, sp, $ff50 # 00120190:27bdff50 sd s3, $0040(sp) # 00120194:ffb30040 daddu s3, a0, zero # 00120198:0080982d sd ra, $00a0(sp) # 0012019c:ffbf00a0 sd fp, $0090(sp) # 001201a0:ffbe0090 addiu a0, zero, $0001 # 001201a4:24040001 a0=$00000001 sd s7, $0080(sp) # 001201a8:ffb70080 sd s6, $0070(sp) # 001201ac:ffb60070 sd s5, $0060(sp) # 001201b0:ffb50060 sd s4, $0050(sp) # 001201b4:ffb40050 sd s2, $0030(sp) # 001201b8:ffb20030 sd s1, $0020(sp) # 001201bc:ffb10020 jal $0011ffb0 # 001201c0:0c047fec £sceCdSyncS sd s0, $0010(sp) # 001201c4:ffb00010 bne v0, zero, $00120440 # 001201c8:1440009d ¥__00120440 daddu v0, zero, zero # 001201cc:0000102d daddu a0, zero, zero # 001201d0:0000202d jal $00112a40 # 001201d4:0c044a90 £sceSifInitRpc lui s5, $0033 # 001201d8:3c150033 s5=$00330000 jal $0010ffd0 # 001201dc:0c043ff4 £GetThreadId lui s4, $0033 # 001201e0:3c140033 s4=$00330000 lui s0, $0037 # 001201e4:3c100037 s0=rbuf lw a1, $9c10(s5) # 001201e8:8ea59c10 a1=c_cnt.57 addiu v1, zero, $0001 # 001201ec:24030001 v1=$00000001 lui a0, $0033 # 001201f0:3c040033 a0=$00330000 lui a2, $0037 # 001201f4:3c060037 a2=rbuf sw v1, $9be4(a0) # 001201f8:ac839be4 Init_seq addiu a1, a1, $0001 # 001201fc:24a50001 addiu a0, zero, $ffff # 00120200:2404ffff a0=_heap_size lui a3, $0033 # 00120204:3c070033 a3=$00330000 lui t0, $0033 # 00120208:3c080033 t0=$00330000 lui t1, $0033 # 0012020c:3c090033 t1=$00330000 lui t3, $0033 # 00120210:3c0b0033 t3=$00330000 lui v1, $0033 # 00120214:3c030033 v1=$00330000 lui t2, $0033 # 00120218:3c0a0033 t2=$00330000 sw v0, $48d0(a2) # 0012021c:acc248d0 my_thid lui v0, $0037 # 00120220:3c020037 v0=rbuf sw a0, $9bfc(v1) # 00120224:ac649bfc _icmd_bind sw a0, $9c00(a3) # 00120228:ace49c00 _sf_bind addiu s1, v0, $4ae8 # 0012022c:24514ae8 s1=cdit sw a0, $9bf8(t0) # 00120230:ad049bf8 _ncmd_bind addiu s2, s0, $4b40 # 00120234:26124b40 s2=_i_mode sw a0, $9c08(t1) # 00120238:ad249c08 _scmd_bind lui fp, $0033 # 0012023c:3c1e0033 fp=$00330000 sw a0, $9c04(t3) # 00120240:ad649c04 _scmd_dr_bind lui s7, $0033 # 00120244:3c170033 s7=$00330000 sw zero, $9bf4(t2) # 00120248:ad409bf4 _sceCd_ee_read_mode lui s6, $0036 # 0012024c:3c160036 s6=$00360000 sw a1, $9c10(s5) # 00120250:aea59c10 c_cnt.57 sw a0, $9c0c(s4) # 00120254:ae849c0c _it_bind __00120258: # lui a1, $8000 # 00120258:3c058000 a1=$80000000 daddu a0, s1, zero # 0012025c:0220202d a0=cdit ori a1, a1, $0592 # 00120260:34a50592 a1=$80000592 jal $001130b0 # 00120264:0c044c2c £sceSifBindRpc daddu a2, zero, zero # 00120268:0000302d daddu a1, v0, zero # 0012026c:0040282d a1=rbuf bgezl a1, $001202bc # 00120270:04a30012 ¥__001202bc lw v0, $0024(s1) # 00120274:8e220024 v0=$00374b0c lw v0, $9bd0(s7) # 00120278:8ee29bd0 v0=SCE_CD_debug blez v0, $0012028c # 0012027c:18400003 ¥__0012028c lw a2, $9c10(s5) # 00120280:8ea69c10 jal $00112298 # 00120284:0c0448a6 £scePrintf addiu a0, s6, $8d60 # 00120288:26c48d60 a0="Libcdvd bind err %d CD_Init %d\n" __0012028c: # lui v0, $0010 # 0012028c:3c020010 v0=.text addiu v1, zero, $ffff # 00120290:2403ffff v1=_heap_size nop # 00120294:00000000 __00120298: # addiu v0, v0, $ffff # 00120298:2442ffff v0=$000fffff nop # 0012029c:00000000 nop # 001202a0:00000000 nop # 001202a4:00000000 nop # 001202a8:00000000 bne v0, v1, $00120298 # 001202ac:1443fffa £__00120298 nop # 001202b0:00000000 beq zero, zero, $00120258 # 001202b4:1000ffe8 £__00120258 nop # 001202b8:00000000 __001202bc: # beq v0, zero, $00120314 # 001202bc:10400015 ¥__00120314 daddu a0, s2, zero # 001202c0:0240202d sw s3, $4b40(s0) # 001202c4:ae134b40 sw zero, $9c0c(s4) # 001202c8:ae809c0c jal $00112990 # 001202cc:0c044a64 £sceSifWriteBackDCache addiu a1, zero, $0004 # 001202d0:24050004 a1=$00000004 addiu s0, fp, $adc0 # 001202d4:27d0adc0 s0=_sceCd_scmdrdata daddu a0, s1, zero # 001202d8:0220202d daddu a3, s2, zero # 001202dc:0240382d sw zero, $0000(sp) # 001202e0:afa00000 daddu a1, zero, zero # 001202e4:0000282d daddu a2, zero, zero # 001202e8:0000302d addiu t0, zero, $0004 # 001202ec:24080004 t0=$00000004 daddu t1, s0, zero # 001202f0:0200482d t1=_sceCd_scmdrdata addiu t2, zero, $0010 # 001202f4:240a0010 t2=$00000010 jal $00113280 # 001202f8:0c044ca0 £sceSifCallRpc daddu t3, zero, zero # 001202fc:0000582d bgez v0, $00120344 # 00120300:04410010 ¥__00120344 lui v0, $0033 # 00120304:3c020033 v0=$00330000 sw zero, $9be4(v0) # 00120308:ac409be4 Init_seq beq zero, zero, $00120440 # 0012030c:1000004c ¥__00120440 daddu v0, zero, zero # 00120310:0000102d __00120314: # lui v0, $0010 # 00120314:3c020010 v0=.text addiu v1, zero, $ffff # 00120318:2403ffff v1=_heap_size nop # 0012031c:00000000 __00120320: # addiu v0, v0, $ffff # 00120320:2442ffff v0=$000fffff nop # 00120324:00000000 nop # 00120328:00000000 nop # 0012032c:00000000 nop # 00120330:00000000 bne v0, v1, $00120320 # 00120334:1443fffa £__00120320 nop # 00120338:00000000 beq zero, zero, $00120258 # 0012033c:1000ffc6 £__00120258 nop # 00120340:00000000 __00120344: # lui a1, $2000 # 00120344:3c052000 a1=$20000000 addiu v0, s0, $000c # 00120348:2602000c v0=$0032adcc or v0, v0, a1 # 0012034c:00451025 v0=$2032adcc addiu v1, s0, $0004 # 00120350:26030004 v1=$0032adc4 addiu a0, s0, $0008 # 00120354:26040008 a0=$0032adc8 lw a2, $0000(v0) # 00120358:8c460000 a2=$2032adcc or a0, a0, a1 # 0012035c:00852025 a0=$2032adc8 or v1, v1, a1 # 00120360:00651825 v1=$2032adc4 lw a1, $0000(v1) # 00120364:8c650000 a1=$2032adc4 addiu s0, zero, $0001 # 00120368:24100001 s0=$00000001 addiu v0, zero, $00ff # 0012036c:240200ff v0=$000000ff beq a2, v0, $001203cc # 00120370:10c20016 ¥__001203cc lw a0, $0000(a0) # 00120374:8c840000 a0=$2032adc8 addiu v0, zero, $00fe # 00120378:240200fe v0=$000000fe bne a2, v0, $00120390 # 0012037c:14c20004 ¥__00120390 addiu a2, zero, $ffff # 00120380:2406ffff a2=_heap_size lui v0, $0033 # 00120384:3c020033 v0=$00330000 beq zero, zero, $001203cc # 00120388:10000010 ¥__001203cc sw s0, $9bd0(v0) # 0012038c:ac509bd0 SCE_CD_debug __00120390: # addiu v0, a1, $00ff # 00120390:24a200ff slt v1, a2, a1 # 00120394:00c5182a movn v0, a1, v1 # 00120398:00a3100b sra v0, v0, 8 # 0012039c:00021203 slti v0, v0, $0002 # 001203a0:28420002 bnel v0, zero, $001203cc # 001203a4:54400009 ¥__001203cc addiu s0, zero, $0002 # 001203a8:24100002 s0=$00000002 slt v1, a2, a0 # 001203ac:00c4182a addiu v0, a0, $00ff # 001203b0:248200ff movn v0, a0, v1 # 001203b4:0083100b sra v0, v0, 8 # 001203b8:00021203 slti v0, v0, $0002 # 001203bc:28420002 beq v0, zero, $001203d0 # 001203c0:10400003 ¥__001203d0 lui a0, $0033 # 001203c4:3c040033 a0=$00330000 addiu s0, zero, $0002 # 001203c8:24100002 s0=$00000002 __001203cc: # lui a0, $0033 # 001203cc:3c040033 a0=$00330000 __001203d0: # sw zero, $9be4(a0) # 001203d0:ac809be4 Init_seq bltz s3, $0012042c # 001203d4:06600015 ¥__0012042c slti v0, s3, $0002 # 001203d8:2a620002 bne v0, zero, $0012042c # 001203dc:14400013 ¥__0012042c addiu v0, zero, $0005 # 001203e0:24020005 v0=$00000005 bne s3, v0, $0012042c # 001203e4:16620011 ¥__0012042c lui v0, $0033 # 001203e8:3c020033 v0=$00330000 lw v1, $9bd0(v0) # 001203ec:8c439bd0 v1=SCE_CD_debug blez v1, $00120400 # 001203f0:18600003 ¥__00120400 lui a0, $0036 # 001203f4:3c040036 a0=$00360000 jal $00112298 # 001203f8:0c0448a6 £scePrintf addiu a0, a0, $8d80 # 001203fc:24848d80 a0="Libcdvd Exit\n" __00120400: # jal $0011f870 # 00120400:0c047e1c £cdvd_exit nop # 00120404:00000000 addiu a0, zero, $ffff # 00120408:2404ffff a0=_heap_size lui v0, $0033 # 0012040c:3c020033 v0=$00330000 sw a0, $9be8(v0) # 00120410:ac449be8 _sceCd_ncmd_semid lui v1, $0033 # 00120414:3c030033 v1=$00330000 sw a0, $9bec(v1) # 00120418:ac649bec _sceCd_scmd_semid lui v0, $0033 # 0012041c:3c020033 v0=$00330000 sw a0, $9be0(v0) # 00120420:ac449be0 cb_semid beq zero, zero, $00120440 # 00120424:10000006 ¥__00120440 daddu v0, s0, zero # 00120428:0200102d v0=$00000002 __0012042c: # jal $0011f7d8 # 0012042c:0c047df6 £cmd_sem_init nop # 00120430:00000000 jal $0011f9a0 # 00120434:0c047e68 £PowerOffCB nop # 00120438:00000000 daddu v0, s0, zero # 0012043c:0200102d v0=$00000002 __00120440: # ld ra, $00a0(sp) # 00120440:dfbf00a0 ld fp, $0090(sp) # 00120444:dfbe0090 ld s7, $0080(sp) # 00120448:dfb70080 ld s6, $0070(sp) # 0012044c:dfb60070 ld s5, $0060(sp) # 00120450:dfb50060 ld s4, $0050(sp) # 00120454:dfb40050 ld s3, $0040(sp) # 00120458:dfb30040 ld s2, $0030(sp) # 0012045c:dfb20030 ld s1, $0020(sp) # 00120460:dfb10020 ld s0, $0010(sp) # 00120464:dfb00010 jr ra # 00120468:03e00008 addiu sp, sp, $00b0 # 0012046c:27bd00b0 |
sceCdDiskReady
Signature |
---|
sceCdDiskReady: # addiu sp, sp, $ff60 # 00120470:27bdff60 sd s6, $0070(sp) # 00120474:ffb60070 lui s6, $0033 # 00120478:3c160033 s6=$00330000 sd s2, $0030(sp) # 0012047c:ffb20030 lw v0, $9bd0(s6) # 00120480:8ec29bd0 v0=SCE_CD_debug daddu s2, a0, zero # 00120484:0080902d sd ra, $0090(sp) # 00120488:ffbf0090 sd s7, $0080(sp) # 0012048c:ffb70080 sd s5, $0060(sp) # 00120490:ffb50060 sd s4, $0050(sp) # 00120494:ffb40050 sd s3, $0040(sp) # 00120498:ffb30040 sd s1, $0020(sp) # 0012049c:ffb10020 blez v0, $001204b4 # 001204a0:18400004 ¥__001204b4 sd s0, $0010(sp) # 001204a4:ffb00010 lui a0, $0036 # 001204a8:3c040036 a0=$00360000 jal $00112298 # 001204ac:0c0448a6 £scePrintf addiu a0, a0, $8d90 # 001204b0:24848d90 a0="DiskReady 0\n" __001204b4: # jal $0011f7d8 # 001204b4:0c047df6 £cmd_sem_init lui s3, $0033 # 001204b8:3c130033 s3=$00330000 lw a0, $9bec(s3) # 001204bc:8e649bec a0=_sceCd_scmd_semid jal $00110130 # 001204c0:0c04404c £PollSema nop # 001204c4:00000000 lw v1, $9bec(s3) # 001204c8:8e639bec v1=_sceCd_scmd_semid bne v1, v0, $0012063c # 001204cc:1462005b ¥__0012063c addiu v0, zero, $0006 # 001204d0:24020006 v0=$00000006 jal $0011ffb0 # 001204d4:0c047fec £sceCdSyncS addiu a0, zero, $0001 # 001204d8:24040001 a0=$00000001 bne v0, zero, $001205f4 # 001204dc:14400045 ¥__001205f4 daddu a0, zero, zero # 001204e0:0000202d jal $00112a40 # 001204e4:0c044a90 £sceSifInitRpc lui s1, $0033 # 001204e8:3c110033 s1=$00330000 lw v0, $9c04(s1) # 001204ec:8e229c04 v0=_scmd_dr_bind bgez v0, $001205a4 # 001204f0:0441002c ¥__001205a4 lui s5, $0037 # 001204f4:3c150037 s5=rbuf lui s4, $0037 # 001204f8:3c140037 s4=rbuf beq zero, zero, $0012052c # 001204fc:1000000b ¥__0012052c lui s7, $0033 # 00120500:3c170033 s7=$00330000 nop # 00120504:00000000 __00120508: # addiu v1, zero, $ffff # 00120508:2403ffff v1=_heap_size nop # 0012050c:00000000 __00120510: # addiu v0, v0, $ffff # 00120510:2442ffff v0=$fffffffe nop # 00120514:00000000 nop # 00120518:00000000 nop # 0012051c:00000000 nop # 00120520:00000000 bne v0, v1, $00120510 # 00120524:1443fffa £__00120510 nop # 00120528:00000000 __0012052c: # addiu s0, s5, $4b10 # 0012052c:26b04b10 s0=cddr __00120530: # lui a1, $8000 # 00120530:3c058000 a1=$80000000 daddu a0, s0, zero # 00120534:0200202d a0=cddr ori a1, a1, $059a # 00120538:34a5059a a1=$8000059a jal $001130b0 # 0012053c:0c044c2c £sceSifBindRpc daddu a2, zero, zero # 00120540:0000302d bgezl v0, $00120594 # 00120544:04430013 ¥__00120594 lw v0, $0024(s0) # 00120548:8e020024 v0=$00374b34 lw v0, $9bd0(s6) # 0012054c:8ec29bd0 blez v0, $00120568 # 00120550:18400005 ¥__00120568 lui v0, $0010 # 00120554:3c020010 v0=.text lui a0, $0036 # 00120558:3c040036 a0=$00360000 jal $00112298 # 0012055c:0c0448a6 £scePrintf addiu a0, a0, $8da0 # 00120560:24848da0 a0="Libcdvd bind err CdDiskReady\n" lui v0, $0010 # 00120564:3c020010 v0=.text __00120568: # addiu v1, zero, $ffff # 00120568:2403ffff v1=_heap_size nop # 0012056c:00000000 __00120570: # addiu v0, v0, $ffff # 00120570:2442ffff v0=$000fffff nop # 00120574:00000000 nop # 00120578:00000000 nop # 0012057c:00000000 nop # 00120580:00000000 bne v0, v1, $00120570 # 00120584:1443fffa £__00120570 nop # 00120588:00000000 beq zero, zero, $00120530 # 0012058c:1000ffe8 £__00120530 addiu s0, s5, $4b10 # 00120590:26b04b10 s0=cddr __00120594: # beq v0, zero, $00120508 # 00120594:1040ffdc £__00120508 lui v0, $0010 # 00120598:3c020010 v0=.text beq zero, zero, $001205ac # 0012059c:10000003 ¥__001205ac sw zero, $9c04(s1) # 001205a0:ae209c04 __001205a4: # lui s4, $0037 # 001205a4:3c140037 s4=rbuf lui s7, $0033 # 001205a8:3c170033 s7=$00330000 __001205ac: # addiu s0, s4, $4b50 # 001205ac:26904b50 s0=_dr_mode sw s2, $4b50(s4) # 001205b0:ae924b50 _dr_mode daddu a0, s0, zero # 001205b4:0200202d a0=_dr_mode jal $00112990 # 001205b8:0c044a64 £sceSifWriteBackDCache addiu a1, zero, $0004 # 001205bc:24050004 a1=$00000004 addiu s1, s7, $adc0 # 001205c0:26f1adc0 s1=_sceCd_scmdrdata addiu a0, s5, $4b10 # 001205c4:26a44b10 daddu a3, s0, zero # 001205c8:0200382d a3=_dr_mode sw zero, $0000(sp) # 001205cc:afa00000 daddu a1, zero, zero # 001205d0:0000282d daddu a2, zero, zero # 001205d4:0000302d addiu t0, zero, $0004 # 001205d8:24080004 t0=$00000004 daddu t1, s1, zero # 001205dc:0220482d t1=_sceCd_scmdrdata addiu t2, zero, $0004 # 001205e0:240a0004 t2=$00000004 jal $00113280 # 001205e4:0c044ca0 £sceSifCallRpc daddu t3, zero, zero # 001205e8:0000582d bgezl v0, $00120614 # 001205ec:04430009 ¥__00120614 lw v0, $9bd0(s6) # 001205f0:8ec29bd0 __001205f4: # lw a0, $9bec(s3) # 001205f4:8e649bec jal $00110100 # 001205f8:0c044040 £SignalSema nop # 001205fc:00000000 xori a0, s2, $0008 # 00120600:3a440008 addiu v1, zero, $ffff # 00120604:2403ffff v1=_heap_size addiu v0, zero, $0006 # 00120608:24020006 v0=$00000006 beq zero, zero, $0012063c # 0012060c:1000000b ¥__0012063c movz v0, v1, a0 # 00120610:0064100a __00120614: # blez v0, $00120624 # 00120614:18400003 ¥__00120624 lui a0, $0036 # 00120618:3c040036 a0=$00360000 jal $00112298 # 0012061c:0c0448a6 £scePrintf addiu a0, a0, $8dc0 # 00120620:24848dc0 a0="DiskReady ended\n" __00120624: # lui v0, $2000 # 00120624:3c022000 v0=$20000000 lw a0, $9bec(s3) # 00120628:8e649bec or v0, s1, v0 # 0012062c:02221025 v0=$2032adc0 jal $00110100 # 00120630:0c044040 £SignalSema lw s0, $0000(v0) # 00120634:8c500000 s0=$2032adc0 daddu v0, s0, zero # 00120638:0200102d __0012063c: # ld ra, $0090(sp) # 0012063c:dfbf0090 ld s7, $0080(sp) # 00120640:dfb70080 ld s6, $0070(sp) # 00120644:dfb60070 ld s5, $0060(sp) # 00120648:dfb50060 ld s4, $0050(sp) # 0012064c:dfb40050 ld s3, $0040(sp) # 00120650:dfb30040 ld s2, $0030(sp) # 00120654:dfb20030 ld s1, $0020(sp) # 00120658:dfb10020 ld s0, $0010(sp) # 0012065c:dfb00010 jr ra # 00120660:03e00008 addiu sp, sp, $00a0 # 00120664:27bd00a0 |
sceCdMmode
Signature |
---|
sceCdMmode: # addiu sp, sp, $ffb0 # 00120668:27bdffb0 sd s1, $0020(sp) # 0012066c:ffb10020 sd s0, $0010(sp) # 00120670:ffb00010 lui s1, $0033 # 00120674:3c110033 s1=$00330000 sd s2, $0030(sp) # 00120678:ffb20030 daddu s0, a0, zero # 0012067c:0080802d sd ra, $0040(sp) # 00120680:ffbf0040 addiu s2, s1, $b200 # 00120684:2632b200 s2=_sceCd_scmdsdata jal $00120020 # 00120688:0c048008 £_sceCd_scmd_prechk addiu a0, zero, $0022 # 0012068c:24040022 a0=$00000022 bnel v0, zero, $001206a0 # 00120690:54400003 ¥__001206a0 sw s0, $b200(s1) # 00120694:ae30b200 _sceCd_scmdsdata beq zero, zero, $00120714 # 00120698:1000001e ¥__00120714 daddu v0, zero, zero # 0012069c:0000102d __001206a0: # daddu a0, s2, zero # 001206a0:0240202d a0=_sceCd_scmdsdata jal $00112990 # 001206a4:0c044a64 £sceSifWriteBackDCache addiu a1, zero, $0004 # 001206a8:24050004 a1=$00000004 lui v0, $0033 # 001206ac:3c020033 v0=$00330000 lui a0, $0033 # 001206b0:3c040033 a0=$00330000 addiu s0, v0, $adc0 # 001206b4:2450adc0 s0=_sceCd_scmdrdata addiu a0, a0, $b608 # 001206b8:2484b608 a0=_sceCd_cd_scmd daddu a3, s2, zero # 001206bc:0240382d a3=_sceCd_scmdsdata sw zero, $0000(sp) # 001206c0:afa00000 addiu a1, zero, $0022 # 001206c4:24050022 a1=$00000022 daddu a2, zero, zero # 001206c8:0000302d addiu t0, zero, $0004 # 001206cc:24080004 t0=$00000004 daddu t1, s0, zero # 001206d0:0200482d t1=_sceCd_scmdrdata addiu t2, zero, $0004 # 001206d4:240a0004 t2=$00000004 jal $00113280 # 001206d8:0c044ca0 £sceSifCallRpc daddu t3, zero, zero # 001206dc:0000582d bgez v0, $001206fc # 001206e0:04410006 ¥__001206fc lui v1, $0033 # 001206e4:3c030033 v1=$00330000 lui v0, $0033 # 001206e8:3c020033 v0=$00330000 jal $00110100 # 001206ec:0c044040 £SignalSema lw a0, $9bec(v0) # 001206f0:8c449bec a0=_sceCd_scmd_semid beq zero, zero, $00120714 # 001206f4:10000007 ¥__00120714 daddu v0, zero, zero # 001206f8:0000102d __001206fc: # lui v0, $2000 # 001206fc:3c022000 v0=$20000000 or v0, s0, v0 # 00120700:02021025 v0=$2032adc0 lw a0, $9bec(v1) # 00120704:8c649bec a0=_sceCd_scmd_semid jal $00110100 # 00120708:0c044040 £SignalSema lw s0, $0000(v0) # 0012070c:8c500000 s0=$2032adc0 daddu v0, s0, zero # 00120710:0200102d __00120714: # ld ra, $0040(sp) # 00120714:dfbf0040 ld s2, $0030(sp) # 00120718:dfb20030 ld s1, $0020(sp) # 0012071c:dfb10020 ld s0, $0010(sp) # 00120720:dfb00010 jr ra # 00120724:03e00008 addiu sp, sp, $0050 # 00120728:27bd0050 nop # 0012072c:00000000 |
sceCdRead
Signature |
---|
sceCdRead: # addiu sp, sp, $ff80 # 00120730:27bdff80 lui v1, $0033 # 00120734:3c030033 v1=$00330000 sd s5, $0060(sp) # 00120738:ffb50060 lui s5, $0033 # 0012073c:3c150033 s5=$00330000 sd s4, $0050(sp) # 00120740:ffb40050 lw v0, $9bf4(s5) # 00120744:8ea29bf4 v0=_sceCd_ee_read_mode daddu s4, a2, zero # 00120748:00c0a02d sd s3, $0040(sp) # 0012074c:ffb30040 sd s2, $0030(sp) # 00120750:ffb20030 daddu s3, a0, zero # 00120754:0080982d sd s1, $0020(sp) # 00120758:ffb10020 addiu s2, v1, $9cc0 # 0012075c:24729cc0 s2=_sceCd_ncmdsdata sd s0, $0010(sp) # 00120760:ffb00010 daddu s1, a1, zero # 00120764:00a0882d sd ra, $0070(sp) # 00120768:ffbf0070 andi v0, v0, $0001 # 0012076c:30420001 bne v0, zero, $0012078c # 00120770:14400006 ¥__0012078c daddu s0, a3, zero # 00120774:00e0802d jal $0011fe78 # 00120778:0c047f9e £sceCdNcmdDiskReady nop # 0012077c:00000000 addiu v1, zero, $0006 # 00120780:24030006 v1=$00000006 beq v0, v1, $001208ec # 00120784:10430059 ¥__001208ec daddu v0, zero, zero # 00120788:0000102d __0012078c: # jal $0011fd08 # 0012078c:0c047f42 £_sceCd_ncmd_prechk addiu a0, zero, $0004 # 00120790:24040004 a0=$00000004 beq v0, zero, $001208cc # 00120794:1040004d ¥__001208cc lui t0, $0033 # 00120798:3c080033 t0=$00330000 sw s3, $0000(s2) # 0012079c:ae530000 _sceCd_ncmdsdata sw s1, $0004(s2) # 001207a0:ae510004 [00329cc4] lui s3, $0033 # 001207a4:3c130033 s3=$00330000 sw s4, $0008(s2) # 001207a8:ae540008 [00329cc8] addiu a0, s3, $acc0 # 001207ac:2664acc0 a0=_sceCd_rd_intr_data addiu a1, t0, $ad80 # 001207b0:2505ad80 a1=_sceCd_Read_cur_pos addiu a2, zero, $0001 # 001207b4:24060001 a2=$00000001 lbu v0, $0000(s0) # 001207b8:92020000 sb v0, $000c(s2) # 001207bc:a242000c [00329ccc] lbu v1, $0001(s0) # 001207c0:92030001 sb v1, $000d(s2) # 001207c4:a243000d [00329ccd] lbu v0, $0002(s0) # 001207c8:92020002 sw a0, $0010(s2) # 001207cc:ae440010 [00329cd0] sb v0, $000e(s2) # 001207d0:a242000e [00329cce] sw a1, $0014(s2) # 001207d4:ae450014 [00329cd4] lbu a3, $0002(s0) # 001207d8:92070002 beq a3, a2, $00120800 # 001207dc:10e60008 ¥__00120800 slti v0, a3, $0002 # 001207e0:28e20002 bne v0, zero, $00120810 # 001207e4:1440000a ¥__00120810 sll a1, s1, 11 # 001207e8:00112ac0 addiu v0, zero, $0002 # 001207ec:24020002 v0=$00000002 beq a3, v0, $0012080c # 001207f0:10e20006 ¥__0012080c addiu v0, zero, $0924 # 001207f4:24020924 v0=$00000924 beq zero, zero, $00120810 # 001207f8:10000005 ¥__00120810 nop # 001207fc:00000000 __00120800: # addiu v0, zero, $0918 # 00120800:24020918 v0=$00000918 beq zero, zero, $00120810 # 00120804:10000002 ¥__00120810 mult a1, s1, v0 # 00120808:02222818 __0012080c: # mult a1, s1, v0 # 0012080c:02222818 __00120810: # lw v0, $9bf4(s5) # 00120810:8ea29bf4 addiu s0, t0, $ad80 # 00120814:2510ad80 s0=_sceCd_Read_cur_pos andi v0, v0, $0002 # 00120818:30420002 bne v0, zero, $0012082c # 0012081c:14400003 ¥__0012082c sw zero, $ad80(t0) # 00120820:ad00ad80 _sceCd_Read_cur_pos jal $00112990 # 00120824:0c044a64 £sceSifWriteBackDCache daddu a0, s4, zero # 00120828:0280202d __0012082c: # addiu s3, s3, $acc0 # 0012082c:2673acc0 s3=_sceCd_rd_intr_data addiu a1, zero, $0090 # 00120830:24050090 a1=$00000090 daddu a0, s3, zero # 00120834:0260202d a0=_sceCd_rd_intr_data jal $00112990 # 00120838:0c044a64 £sceSifWriteBackDCache lui s4, $0033 # 0012083c:3c140033 s4=$00330000 daddu a0, s2, zero # 00120840:0240202d jal $00112990 # 00120844:0c044a64 £sceSifWriteBackDCache addiu a1, zero, $0018 # 00120848:24050018 a1=$00000018 daddu a0, s0, zero # 0012084c:0200202d jal $00112990 # 00120850:0c044a64 £sceSifWriteBackDCache addiu a1, zero, $0004 # 00120854:24050004 a1=$00000004 lw v0, $9bd0(s4) # 00120858:8e829bd0 v0=SCE_CD_debug blez v0, $0012086c # 0012085c:18400003 ¥__0012086c lui a0, $0036 # 00120860:3c040036 a0=$00360000 jal $00112298 # 00120864:0c0448a6 £scePrintf addiu a0, a0, $8dd8 # 00120868:24848dd8 a0="call cdread cmd\n" __0012086c: # addiu v0, zero, $0001 # 0012086c:24020001 v0=$00000001 lui s0, $0033 # 00120870:3c100033 s0=$00330000 sw v0, $9c14(s0) # 00120874:ae029c14 sceCdCbfunc_num lui s1, $0033 # 00120878:3c110033 s1=$00330000 lui a0, $0033 # 0012087c:3c040033 a0=$00330000 lui t3, $0012 # 00120880:3c0b0012 t3=$00120000 sw v0, $9bf0(s1) # 00120884:ae229bf0 _sceCd_c_cb_sem addiu a0, a0, $ad90 # 00120888:2484ad90 a0=_sceCd_cd_ncmd sw s3, $0000(sp) # 0012088c:afb30000 daddu a3, s2, zero # 00120890:0240382d addiu t3, t3, $f738 # 00120894:256bf738 t3=_sceCd_cd_read_intr addiu a1, zero, $0001 # 00120898:24050001 a1=$00000001 addiu a2, zero, $0001 # 0012089c:24060001 a2=$00000001 addiu t0, zero, $0018 # 001208a0:24080018 t0=$00000018 daddu t1, zero, zero # 001208a4:0000482d jal $00113280 # 001208a8:0c044ca0 £sceSifCallRpc daddu t2, zero, zero # 001208ac:0000502d bgezl v0, $001208d4 # 001208b0:04430008 ¥__001208d4 lw v0, $9bd0(s4) # 001208b4:8e829bd0 v0=SCE_CD_debug sw zero, $9c14(s0) # 001208b8:ae009c14 sceCdCbfunc_num lui v0, $0033 # 001208bc:3c020033 v0=$00330000 sw zero, $9bf0(s1) # 001208c0:ae209bf0 _sceCd_c_cb_sem jal $00110100 # 001208c4:0c044040 £SignalSema lw a0, $9be8(v0) # 001208c8:8c449be8 a0=_sceCd_ncmd_semid __001208cc: # beq zero, zero, $001208ec # 001208cc:10000007 ¥__001208ec daddu v0, zero, zero # 001208d0:0000102d __001208d4: # blez v0, $001208ec # 001208d4:18400005 ¥__001208ec addiu v0, zero, $0001 # 001208d8:24020001 v0=$00000001 lui a0, $0036 # 001208dc:3c040036 a0=$00360000 jal $00112298 # 001208e0:0c0448a6 £scePrintf addiu a0, a0, $8df0 # 001208e4:24848df0 a0="cdread end\n" addiu v0, zero, $0001 # 001208e8:24020001 v0=$00000001 __001208ec: # ld ra, $0070(sp) # 001208ec:dfbf0070 ld s5, $0060(sp) # 001208f0:dfb50060 ld s4, $0050(sp) # 001208f4:dfb40050 ld s3, $0040(sp) # 001208f8:dfb30040 ld s2, $0030(sp) # 001208fc:dfb20030 ld s1, $0020(sp) # 00120900:dfb10020 ld s0, $0010(sp) # 00120904:dfb00010 jr ra # 00120908:03e00008 addiu sp, sp, $0080 # 0012090c:27bd0080 |
sceCdSeek
Signature |
---|
sceCdSeek: # addiu sp, sp, $ffb0 # 00120910:27bdffb0 sd s0, $0010(sp) # 00120914:ffb00010 sd s2, $0030(sp) # 00120918:ffb20030 daddu s0, a0, zero # 0012091c:0080802d sd s1, $0020(sp) # 00120920:ffb10020 sd ra, $0040(sp) # 00120924:ffbf0040 jal $0011fe78 # 00120928:0c047f9e £sceCdNcmdDiskReady lui s1, $0033 # 0012092c:3c110033 s1=$00330000 addiu v1, zero, $0006 # 00120930:24030006 v1=$00000006 beq v0, v1, $001209c0 # 00120934:10430022 ¥__001209c0 addiu s2, s1, $9cc0 # 00120938:26329cc0 s2=_sceCd_ncmdsdata jal $0011fd08 # 0012093c:0c047f42 £_sceCd_ncmd_prechk addiu a0, zero, $0009 # 00120940:24040009 a0=$00000009 beq v0, zero, $001209c0 # 00120944:1040001e ¥__001209c0 daddu a0, s2, zero # 00120948:0240202d a0=_sceCd_ncmdsdata sw s0, $9cc0(s1) # 0012094c:ae309cc0 _sceCd_ncmdsdata addiu a1, zero, $0004 # 00120950:24050004 a1=$00000004 jal $00112990 # 00120954:0c044a64 £sceSifWriteBackDCache lui s0, $0033 # 00120958:3c100033 s0=$00330000 lui s1, $0033 # 0012095c:3c110033 s1=$00330000 addiu a1, s0, $9c14 # 00120960:26059c14 a1=sceCdCbfunc_num addiu v0, zero, $0004 # 00120964:24020004 v0=$00000004 sw v0, $9c14(s0) # 00120968:ae029c14 sceCdCbfunc_num addiu v1, zero, $0001 # 0012096c:24030001 v1=$00000001 lui a0, $0033 # 00120970:3c040033 a0=$00330000 lui t3, $0012 # 00120974:3c0b0012 t3=$00120000 sw a1, $0000(sp) # 00120978:afa50000 addiu a0, a0, $ad90 # 0012097c:2484ad90 a0=_sceCd_cd_ncmd sw v1, $9bf0(s1) # 00120980:ae239bf0 _sceCd_c_cb_sem daddu a3, s2, zero # 00120984:0240382d a3=_sceCd_ncmdsdata addiu t3, t3, $f500 # 00120988:256bf500 t3=_sceCd_cd_callback addiu a1, zero, $0005 # 0012098c:24050005 a1=$00000005 addiu a2, zero, $0001 # 00120990:24060001 a2=$00000001 addiu t0, zero, $0004 # 00120994:24080004 t0=$00000004 daddu t1, zero, zero # 00120998:0000482d jal $00113280 # 0012099c:0c044ca0 £sceSifCallRpc daddu t2, zero, zero # 001209a0:0000502d bgezl v0, $001209c4 # 001209a4:04430007 ¥__001209c4 addiu v0, zero, $0001 # 001209a8:24020001 v0=$00000001 sw zero, $9c14(s0) # 001209ac:ae009c14 sceCdCbfunc_num lui v0, $0033 # 001209b0:3c020033 v0=$00330000 sw zero, $9bf0(s1) # 001209b4:ae209bf0 _sceCd_c_cb_sem jal $00110100 # 001209b8:0c044040 £SignalSema lw a0, $9be8(v0) # 001209bc:8c449be8 a0=_sceCd_ncmd_semid __001209c0: # daddu v0, zero, zero # 001209c0:0000102d __001209c4: # ld ra, $0040(sp) # 001209c4:dfbf0040 ld s2, $0030(sp) # 001209c8:dfb20030 ld s1, $0020(sp) # 001209cc:dfb10020 ld s0, $0010(sp) # 001209d0:dfb00010 jr ra # 001209d4:03e00008 addiu sp, sp, $0050 # 001209d8:27bd0050 nop # 001209dc:00000000 |
sceCdGetError
Signature |
---|
sceCdGetError: # addiu sp, sp, $ffd0 # 001209e0:27bdffd0 addiu a0, zero, $0003 # 001209e4:24040003 a0=$00000003 sd ra, $0020(sp) # 001209e8:ffbf0020 jal $00120020 # 001209ec:0c048008 £_sceCd_scmd_prechk sd s0, $0010(sp) # 001209f0:ffb00010 bne v0, zero, $00120a04 # 001209f4:14400003 ¥__00120a04 lui v0, $0033 # 001209f8:3c020033 v0=$00330000 beq zero, zero, $00120a68 # 001209fc:1000001a ¥__00120a68 addiu v0, zero, $ffff # 00120a00:2402ffff v0=_heap_size __00120a04: # lui a0, $0033 # 00120a04:3c040033 a0=$00330000 addiu s0, v0, $adc0 # 00120a08:2450adc0 s0=$ffffadbf addiu a0, a0, $b608 # 00120a0c:2484b608 a0=_sceCd_cd_scmd sw zero, $0000(sp) # 00120a10:afa00000 addiu a1, zero, $0004 # 00120a14:24050004 a1=$00000004 daddu a2, zero, zero # 00120a18:0000302d daddu a3, zero, zero # 00120a1c:0000382d daddu t0, zero, zero # 00120a20:0000402d daddu t1, s0, zero # 00120a24:0200482d t1=$ffffadbf addiu t2, zero, $0004 # 00120a28:240a0004 t2=$00000004 jal $00113280 # 00120a2c:0c044ca0 £sceSifCallRpc daddu t3, zero, zero # 00120a30:0000582d bgez v0, $00120a50 # 00120a34:04410006 ¥__00120a50 lui v1, $0033 # 00120a38:3c030033 v1=$00330000 lui v0, $0033 # 00120a3c:3c020033 v0=$00330000 jal $00110100 # 00120a40:0c044040 £SignalSema lw a0, $9bec(v0) # 00120a44:8c449bec a0=_sceCd_scmd_semid beq zero, zero, $00120a68 # 00120a48:10000007 ¥__00120a68 addiu v0, zero, $ffff # 00120a4c:2402ffff v0=_heap_size __00120a50: # lui v0, $2000 # 00120a50:3c022000 v0=$20000000 or v0, s0, v0 # 00120a54:02021025 v0=$ffffadbf lw a0, $9bec(v1) # 00120a58:8c649bec a0=_sceCd_scmd_semid jal $00110100 # 00120a5c:0c044040 £SignalSema lw s0, $0000(v0) # 00120a60:8c500000 s0=$ffffadbf daddu v0, s0, zero # 00120a64:0200102d __00120a68: # ld ra, $0020(sp) # 00120a68:dfbf0020 ld s0, $0010(sp) # 00120a6c:dfb00010 jr ra # 00120a70:03e00008 addiu sp, sp, $0030 # 00120a74:27bd0030 |
sceCDBreak
Signature |
---|
sceCdBreak: # addiu sp, sp, $ffc0 # 00120a78:27bdffc0 addiu a0, zero, $001e # 00120a7c:2404001e a0=$0000001e sd ra, $0030(sp) # 00120a80:ffbf0030 sd s1, $0020(sp) # 00120a84:ffb10020 jal $00120020 # 00120a88:0c048008 £_sceCd_scmd_prechk sd s0, $0010(sp) # 00120a8c:ffb00010 bne v0, zero, $00120aa0 # 00120a90:14400003 ¥__00120aa0 lui v0, $0033 # 00120a94:3c020033 v0=$00330000 beq zero, zero, $00120b1c # 00120a98:10000020 ¥__00120b1c daddu v0, zero, zero # 00120a9c:0000102d __00120aa0: # lui s0, $0033 # 00120aa0:3c100033 s0=$00330000 addiu s1, v0, $adc0 # 00120aa4:2451adc0 s1=$ffffadc0 addiu v1, zero, $0008 # 00120aa8:24030008 v1=$00000008 lui a0, $0033 # 00120aac:3c040033 a0=$00330000 sw v1, $9c14(s0) # 00120ab0:ae039c14 sceCdCbfunc_num addiu a0, a0, $b608 # 00120ab4:2484b608 a0=_sceCd_cd_scmd sw zero, $0000(sp) # 00120ab8:afa00000 addiu a1, zero, $0016 # 00120abc:24050016 a1=$00000016 daddu a2, zero, zero # 00120ac0:0000302d daddu a3, zero, zero # 00120ac4:0000382d daddu t0, zero, zero # 00120ac8:0000402d daddu t1, s1, zero # 00120acc:0220482d t1=$ffffadc0 addiu t2, zero, $0004 # 00120ad0:240a0004 t2=$00000004 jal $00113280 # 00120ad4:0c044ca0 £sceSifCallRpc daddu t3, zero, zero # 00120ad8:0000582d bgez v0, $00120afc # 00120adc:04410007 ¥__00120afc lui v0, $0033 # 00120ae0:3c020033 v0=$00330000 lw a0, $9bec(v0) # 00120ae4:8c449bec a0=_sceCd_scmd_semid jal $00110100 # 00120ae8:0c044040 £SignalSema nop # 00120aec:00000000 sw zero, $9c14(s0) # 00120af0:ae009c14 sceCdCbfunc_num beq zero, zero, $00120b1c # 00120af4:10000009 ¥__00120b1c daddu v0, zero, zero # 00120af8:0000102d __00120afc: # sw zero, $9c14(s0) # 00120afc:ae009c14 sceCdCbfunc_num lui v1, $0033 # 00120b00:3c030033 v1=$00330000 lui v0, $2000 # 00120b04:3c022000 v0=$20000000 or v0, s1, v0 # 00120b08:02221025 v0=$ffffadc0 lw a0, $9bec(v1) # 00120b0c:8c649bec a0=_sceCd_scmd_semid jal $00110100 # 00120b10:0c044040 £SignalSema lw s0, $0000(v0) # 00120b14:8c500000 s0=$ffffadc0 daddu v0, s0, zero # 00120b18:0200102d __00120b1c: # ld ra, $0030(sp) # 00120b1c:dfbf0030 ld s1, $0020(sp) # 00120b20:dfb10020 ld s0, $0010(sp) # 00120b24:dfb00010 jr ra # 00120b28:03e00008 addiu sp, sp, $0040 # 00120b2c:27bd0040 |
sceCdPowerOff
Signature |
---|
sceCdPowerOff: # addiu sp, sp, $ffc0 # 00120b30:27bdffc0 sd s1, $0020(sp) # 00120b34:ffb10020 daddu s1, a0, zero # 00120b38:0080882d sd ra, $0030(sp) # 00120b3c:ffbf0030 sd s0, $0010(sp) # 00120b40:ffb00010 jal $00120020 # 00120b44:0c048008 £_sceCd_scmd_prechk addiu a0, zero, $0021 # 00120b48:24040021 a0=$00000021 bne v0, zero, $00120b5c # 00120b4c:14400003 ¥__00120b5c lui v0, $0033 # 00120b50:3c020033 v0=$00330000 beq zero, zero, $00120bd0 # 00120b54:1000001e ¥__00120bd0 daddu v0, zero, zero # 00120b58:0000102d __00120b5c: # lui a0, $0033 # 00120b5c:3c040033 a0=$00330000 addiu s0, v0, $adc0 # 00120b60:2450adc0 s0=$ffffadc0 addiu a0, a0, $b608 # 00120b64:2484b608 a0=_sceCd_cd_scmd sw zero, $0000(sp) # 00120b68:afa00000 addiu a1, zero, $0021 # 00120b6c:24050021 a1=$00000021 daddu a2, zero, zero # 00120b70:0000302d daddu a3, zero, zero # 00120b74:0000382d daddu t0, zero, zero # 00120b78:0000402d daddu t1, s0, zero # 00120b7c:0200482d t1=$ffffadc0 addiu t2, zero, $0008 # 00120b80:240a0008 t2=$00000008 jal $00113280 # 00120b84:0c044ca0 £sceSifCallRpc daddu t3, zero, zero # 00120b88:0000582d bgez v0, $00120ba8 # 00120b8c:04410006 ¥__00120ba8 lui v1, $2000 # 00120b90:3c032000 v1=$20000000 lui v0, $0033 # 00120b94:3c020033 v0=$00330000 jal $00110100 # 00120b98:0c044040 £SignalSema lw a0, $9bec(v0) # 00120b9c:8c449bec a0=_sceCd_scmd_semid beq zero, zero, $00120bd0 # 00120ba0:1000000b ¥__00120bd0 daddu v0, zero, zero # 00120ba4:0000102d __00120ba8: # addiu v0, s0, $0004 # 00120ba8:26020004 v0=$ffffadc4 or v0, v0, v1 # 00120bac:00431025 v0=$ffffadc4 lui a1, $0033 # 00120bb0:3c050033 a1=$00330000 lw a0, $0000(v0) # 00120bb4:8c440000 a0=$ffffadc4 or v1, s0, v1 # 00120bb8:02031825 v1=$ffffadc0 sw a0, $0000(s1) # 00120bbc:ae240000 lw a0, $9bec(a1) # 00120bc0:8ca49bec a0=_sceCd_scmd_semid jal $00110100 # 00120bc4:0c044040 £SignalSema lw s0, $0000(v1) # 00120bc8:8c700000 s0=$ffffadc0 daddu v0, s0, zero # 00120bcc:0200102d __00120bd0: # ld ra, $0030(sp) # 00120bd0:dfbf0030 ld s1, $0020(sp) # 00120bd4:dfb10020 ld s0, $0010(sp) # 00120bd8:dfb00010 jr ra # 00120bdc:03e00008 addiu sp, sp, $0040 # 00120be0:27bd0040 nop # 00120be4:00000000 |
sceCdStInit
Signature |
---|
sceCdStInit: # addiu sp, sp, $fff0 # 00120be8:27bdfff0 lui v0, $0033 # 00120bec:3c020033 v0=$00330000 lui t0, $0037 # 00120bf0:3c080037 t0=rbuf sd ra, $0000(sp) # 00120bf4:ffbf0000 sw zero, $b630(v0) # 00120bf8:ac40b630 stm_status addiu t0, t0, $4b58 # 00120bfc:25084b58 t0=dum_mode jal $00120f60 # 00120c00:0c0483d8 ¥sceCdStream addiu a3, zero, $0005 # 00120c04:24070005 a3=$00000005 ld ra, $0000(sp) # 00120c08:dfbf0000 jr ra # 00120c0c:03e00008 addiu sp, sp, $0010 # 00120c10:27bd0010 nop # 00120c14:00000000 |
sceCdStStart
Signature |
---|
sceCdStStart: # addiu sp, sp, $fff0 # 00120c18:27bdfff0 lui v1, $0033 # 00120c1c:3c030033 v1=$00330000 addiu v0, zero, $0001 # 00120c20:24020001 v0=$00000001 daddu t0, a1, zero # 00120c24:00a0402d sd ra, $0000(sp) # 00120c28:ffbf0000 daddu a1, zero, zero # 00120c2c:0000282d sw v0, $b630(v1) # 00120c30:ac62b630 stm_status daddu a2, zero, zero # 00120c34:0000302d jal $00120f60 # 00120c38:0c0483d8 ¥sceCdStream addiu a3, zero, $0001 # 00120c3c:24070001 a3=$00000001 ld ra, $0000(sp) # 00120c40:dfbf0000 jr ra # 00120c44:03e00008 addiu sp, sp, $0010 # 00120c48:27bd0010 nop # 00120c4c:00000000 |
sceCdStSeekF
Signature |
---|
sceCdStSeekF: # addiu sp, sp, $fff0 # 00120c50:27bdfff0 lui t0, $0037 # 00120c54:3c080037 t0=rbuf sd ra, $0000(sp) # 00120c58:ffbf0000 addiu t0, t0, $4b58 # 00120c5c:25084b58 t0=dum_mode daddu a1, zero, zero # 00120c60:0000282d daddu a2, zero, zero # 00120c64:0000302d jal $00120f60 # 00120c68:0c0483d8 ¥sceCdStream addiu a3, zero, $0009 # 00120c6c:24070009 a3=$00000009 ld ra, $0000(sp) # 00120c70:dfbf0000 jr ra # 00120c74:03e00008 addiu sp, sp, $0010 # 00120c78:27bd0010 nop # 00120c7c:00000000 |
sceCdStSeek
Signature |
---|
sceCdStSeek: # addiu sp, sp, $fff0 # 00120c80:27bdfff0 lui t0, $0037 # 00120c84:3c080037 t0=rbuf sd ra, $0000(sp) # 00120c88:ffbf0000 addiu t0, t0, $4b58 # 00120c8c:25084b58 t0=dum_mode daddu a1, zero, zero # 00120c90:0000282d daddu a2, zero, zero # 00120c94:0000302d jal $00120f60 # 00120c98:0c0483d8 ¥sceCdStream addiu a3, zero, $0004 # 00120c9c:24070004 a3=$00000004 ld ra, $0000(sp) # 00120ca0:dfbf0000 jr ra # 00120ca4:03e00008 addiu sp, sp, $0010 # 00120ca8:27bd0010 nop # 00120cac:00000000 |
sceCdStRead
Signature |
---|
sceCdStRead: # addiu sp, sp, $ff60 # 00120ce8:27bdff60 sd s6, $0060(sp) # 00120cec:ffb60060 lui s6, $0033 # 00120cf0:3c160033 s6=$00330000 sd fp, $0080(sp) # 00120cf4:ffbe0080 sd s4, $0040(sp) # 00120cf8:ffb40040 daddu fp, a3, zero # 00120cfc:00e0f02d sd s2, $0020(sp) # 00120d00:ffb20020 daddu s4, a1, zero # 00120d04:00a0a02d sd s0, $0000(sp) # 00120d08:ffb00000 daddu s2, a0, zero # 00120d0c:0080902d lw v0, $9bd0(s6) # 00120d10:8ec29bd0 v0=SCE_CD_debug daddu s0, a2, zero # 00120d14:00c0802d sd ra, $0090(sp) # 00120d18:ffbf0090 sd s7, $0070(sp) # 00120d1c:ffb70070 sd s5, $0050(sp) # 00120d20:ffb50050 sd s3, $0030(sp) # 00120d24:ffb30030 blez v0, $00120d40 # 00120d28:18400005 ¥__00120d40 sd s1, $0010(sp) # 00120d2c:ffb10010 lui a0, $0036 # 00120d30:3c040036 a0=$00360000 daddu a1, s2, zero # 00120d34:0240282d jal $00112298 # 00120d38:0c0448a6 £scePrintf addiu a0, a0, $8e00 # 00120d3c:24848e00 a0="sceCdStRead call read size= %d mode= %d\n" __00120d40: # lui v0, $0033 # 00120d40:3c020033 v0=$00330000 lw v1, $b630(v0) # 00120d44:8c43b630 v1=stm_status bne v1, zero, $00120d58 # 00120d48:14600003 ¥__00120d58 daddu s7, zero, zero # 00120d4c:0000b82d beq zero, zero, $00120e40 # 00120d50:1000003b ¥__00120e40 daddu v0, zero, zero # 00120d54:0000102d __00120d58: # daddu s3, zero, zero # 00120d58:0000982d daddu a0, s4, zero # 00120d5c:0280202d jal $00112990 # 00120d60:0c044a64 £sceSifWriteBackDCache sll a1, s2, 11 # 00120d64:00122ac0 beq s0, zero, $00120e14 # 00120d68:1200002a ¥__00120e14 lui s5, $0037 # 00120d6c:3c150037 s5=rbuf beq zero, zero, $00120d8c # 00120d70:10000006 ¥__00120d8c sll a2, s3, 11 # 00120d74:001332c0 __00120d78: # beq s0, zero, $00120d8c # 00120d78:12000004 ¥__00120d8c sll a2, s3, 11 # 00120d7c:001332c0 beq s1, zero, $00120dfc # 00120d80:1220001e ¥__00120dfc lw v0, $9bd0(s6) # 00120d84:8ec29bd0 v0=SCE_CD_debug sll a2, s3, 11 # 00120d88:001332c0 __00120d8c: # subu a1, s2, s3 # 00120d8c:02532823 addu a2, s4, a2 # 00120d90:02863021 daddu a0, zero, zero # 00120d94:0000202d addiu a3, zero, $0002 # 00120d98:24070002 a3=$00000002 jal $00120f60 # 00120d9c:0c0483d8 ¥sceCdStream addiu t0, s5, $4b58 # 00120da0:26a84b58 t0=dum_mode andi s1, v0, $ffff # 00120da4:3051ffff srl s0, v0, 16 # 00120da8:00028402 beq s0, zero, $00120de4 # 00120dac:1200000d ¥__00120de4 addu s3, s3, s1 # 00120db0:02719821 lw v0, $9bd0(s6) # 00120db4:8ec29bd0 blez v0, $00120df4 # 00120db8:1840000e ¥__00120df4 daddu s7, s0, zero # 00120dbc:0200b82d lui a0, $0036 # 00120dc0:3c040036 a0=$00360000 daddu a1, s3, zero # 00120dc4:0260282d addiu a0, a0, $8e30 # 00120dc8:24848e30 a0="sceCdStRead BLK Read cur_size= %d read_size= %d req_size= %d err 0x%x\n" daddu a2, s1, zero # 00120dcc:0220302d daddu a3, s2, zero # 00120dd0:0240382d jal $00112298 # 00120dd4:0c0448a6 £scePrintf daddu t0, s0, zero # 00120dd8:0200402d beq zero, zero, $00120df4 # 00120ddc:10000005 ¥__00120df4 nop # 00120de0:00000000 __00120de4: # bne s1, zero, $00120df4 # 00120de4:16200003 ¥__00120df4 nop # 00120de8:00000000 jal $0011f440 # 00120dec:0c047d10 £sceCdDelayThread addiu a0, zero, $0008 # 00120df0:24040008 a0=$00000008 __00120df4: # bne s3, s2, $00120d78 # 00120df4:1672ffe0 £__00120d78 lw v0, $9bd0(s6) # 00120df8:8ec29bd0 __00120dfc: # blez v0, $00120e0c # 00120dfc:18400003 ¥__00120e0c lui a0, $0036 # 00120e00:3c040036 a0=$00360000 jal $00112298 # 00120e04:0c0448a6 £scePrintf addiu a0, a0, $8e78 # 00120e08:24848e78 a0="sceCdStRead BLK Read Ended\n" __00120e0c: # beq zero, zero, $00120e3c # 00120e0c:1000000b ¥__00120e3c sw s7, $0000(fp) # 00120e10:afd70000 rbuf __00120e14: # lui t0, $0037 # 00120e14:3c080037 t0=rbuf daddu a1, s2, zero # 00120e18:0240282d daddu a2, s4, zero # 00120e1c:0280302d addiu t0, t0, $4b58 # 00120e20:25084b58 t0=dum_mode daddu a0, zero, zero # 00120e24:0000202d jal $00120f60 # 00120e28:0c0483d8 ¥sceCdStream addiu a3, zero, $0002 # 00120e2c:24070002 a3=$00000002 srl s0, v0, 16 # 00120e30:00028402 andi s3, v0, $ffff # 00120e34:3053ffff sw s0, $0000(fp) # 00120e38:afd00000 rbuf __00120e3c: # daddu v0, s3, zero # 00120e3c:0260102d __00120e40: # ld ra, $0090(sp) # 00120e40:dfbf0090 ld fp, $0080(sp) # 00120e44:dfbe0080 ld s7, $0070(sp) # 00120e48:dfb70070 ld s6, $0060(sp) # 00120e4c:dfb60060 ld s5, $0050(sp) # 00120e50:dfb50050 ld s4, $0040(sp) # 00120e54:dfb40040 ld s3, $0030(sp) # 00120e58:dfb30030 ld s2, $0020(sp) # 00120e5c:dfb20020 ld s1, $0010(sp) # 00120e60:dfb10010 ld s0, $0000(sp) # 00120e64:dfb00000 jr ra # 00120e68:03e00008 addiu sp, sp, $00a0 # 00120e6c:27bd00a0 |
sceCdStPause
Signature |
---|
sceCdStPause: # lui v0, $0033 # 00120e70:3c020033 v0=$00330000 addiu sp, sp, $fff0 # 00120e74:27bdfff0 lui v1, $0033 # 00120e78:3c030033 v1=$00330000 lw a0, $9bd0(v0) # 00120e7c:8c449bd0 a0=SCE_CD_debug sd ra, $0000(sp) # 00120e80:ffbf0000 blez a0, $00120e98 # 00120e84:18800004 ¥__00120e98 sw zero, $b630(v1) # 00120e88:ac60b630 stm_status lui a0, $0036 # 00120e8c:3c040036 a0=$00360000 jal $00112298 # 00120e90:0c0448a6 £scePrintf addiu a0, a0, $8e98 # 00120e94:24848e98 a0="sceCdStPause call\n" __00120e98: # lui t0, $0037 # 00120e98:3c080037 t0=rbuf daddu a0, zero, zero # 00120e9c:0000202d addiu t0, t0, $4b58 # 00120ea0:25084b58 t0=dum_mode daddu a1, zero, zero # 00120ea4:0000282d daddu a2, zero, zero # 00120ea8:0000302d jal $00120f60 # 00120eac:0c0483d8 ¥sceCdStream addiu a3, zero, $0007 # 00120eb0:24070007 a3=$00000007 ld ra, $0000(sp) # 00120eb4:dfbf0000 jr ra # 00120eb8:03e00008 addiu sp, sp, $0010 # 00120ebc:27bd0010 |
sceCdStResume
Signature |
---|
sceCdStResume: # lui v1, $0033 # 00120ec0:3c030033 v1=$00330000 addiu sp, sp, $fff0 # 00120ec4:27bdfff0 lui a0, $0033 # 00120ec8:3c040033 a0=$00330000 addiu v0, zero, $0001 # 00120ecc:24020001 v0=$00000001 lw a1, $9bd0(v1) # 00120ed0:8c659bd0 a1=SCE_CD_debug sd ra, $0000(sp) # 00120ed4:ffbf0000 blez a1, $00120eec # 00120ed8:18a00004 ¥__00120eec sw v0, $b630(a0) # 00120edc:ac82b630 stm_status lui a0, $0036 # 00120ee0:3c040036 a0=$00360000 jal $00112298 # 00120ee4:0c0448a6 £scePrintf addiu a0, a0, $8eb0 # 00120ee8:24848eb0 a0="sceCdStResume call\n" __00120eec: # lui t0, $0037 # 00120eec:3c080037 t0=rbuf daddu a0, zero, zero # 00120ef0:0000202d addiu t0, t0, $4b58 # 00120ef4:25084b58 t0=dum_mode daddu a1, zero, zero # 00120ef8:0000282d daddu a2, zero, zero # 00120efc:0000302d jal $00120f60 # 00120f00:0c0483d8 ¥sceCdStream addiu a3, zero, $0008 # 00120f04:24070008 a3=$00000008 ld ra, $0000(sp) # 00120f08:dfbf0000 jr ra # 00120f0c:03e00008 addiu sp, sp, $0010 # 00120f10:27bd0010 nop # 00120f14:00000000 |
sceCdStStat
Signature |
---|
sceCdStStat: # lui v0, $0033 # 00120f18:3c020033 v0=$00330000 addiu sp, sp, $fff0 # 00120f1c:27bdfff0 lw v1, $9bd0(v0) # 00120f20:8c439bd0 v1=SCE_CD_debug blez v1, $00120f38 # 00120f24:18600004 ¥__00120f38 sd ra, $0000(sp) # 00120f28:ffbf0000 lui a0, $0036 # 00120f2c:3c040036 a0=$00360000 jal $00112298 # 00120f30:0c0448a6 £scePrintf addiu a0, a0, $8ec8 # 00120f34:24848ec8 a0="sceCdStStat call\n" __00120f38: # lui t0, $0037 # 00120f38:3c080037 t0=rbuf daddu a0, zero, zero # 00120f3c:0000202d addiu t0, t0, $4b58 # 00120f40:25084b58 t0=dum_mode daddu a1, zero, zero # 00120f44:0000282d daddu a2, zero, zero # 00120f48:0000302d jal $00120f60 # 00120f4c:0c0483d8 ¥sceCdStream addiu a3, zero, $0006 # 00120f50:24070006 a3=$00000006 ld ra, $0000(sp) # 00120f54:dfbf0000 jr ra # 00120f58:03e00008 addiu sp, sp, $0010 # 00120f5c:27bd0010 |
sceCdStream
Signature |
---|
sceCdStream: # addiu sp, sp, $ff60 # 00120f60:27bdff60 sd s7, $0080(sp) # 00120f64:ffb70080 sd s5, $0060(sp) # 00120f68:ffb50060 lui s7, $0033 # 00120f6c:3c170033 s7=$00330000 sd s4, $0050(sp) # 00120f70:ffb40050 daddu s5, a0, zero # 00120f74:0080a82d sd s3, $0040(sp) # 00120f78:ffb30040 daddu s4, a3, zero # 00120f7c:00e0a02d sd s2, $0030(sp) # 00120f80:ffb20030 daddu s3, a2, zero # 00120f84:00c0982d sd s1, $0020(sp) # 00120f88:ffb10020 daddu s2, a1, zero # 00120f8c:00a0902d sd s0, $0010(sp) # 00120f90:ffb00010 addiu s1, s7, $9cc0 # 00120f94:26f19cc0 s1=_sceCd_ncmdsdata sd ra, $0090(sp) # 00120f98:ffbf0090 daddu s0, t0, zero # 00120f9c:0100802d sd s6, $0070(sp) # 00120fa0:ffb60070 jal $0011fd08 # 00120fa4:0c047f42 £_sceCd_ncmd_prechk addiu a0, zero, $000f # 00120fa8:2404000f a0=$0000000f bne v0, zero, $00120fbc # 00120fac:14400003 ¥__00120fbc lui s6, $0033 # 00120fb0:3c160033 s6=$00330000 beq zero, zero, $0012109c # 00120fb4:10000039 ¥__0012109c daddu v0, zero, zero # 00120fb8:0000102d __00120fbc: # lw a0, $9bd0(s6) # 00120fbc:8ec49bd0 a0=SCE_CD_debug blezl a0, $00120fdc # 00120fc0:58800006 ¥__00120fdc sw s5, $9cc0(s7) # 00120fc4:aef59cc0 _sceCd_ncmdsdata lui a0, $0036 # 00120fc8:3c040036 a0=$00360000 jal $00112298 # 00120fcc:0c0448a6 £scePrintf addiu a0, a0, $8ee0 # 00120fd0:24848ee0 a0="call cdreadstm call\n" lw a0, $9bd0(s6) # 00120fd4:8ec49bd0 a0=SCE_CD_debug sw s5, $9cc0(s7) # 00120fd8:aef59cc0 _sceCd_ncmdsdata __00120fdc: # sw s2, $0004(s1) # 00120fdc:ae320004 [00329cc4] sw s3, $0008(s1) # 00120fe0:ae330008 [00329cc8] beq s0, zero, $00121004 # 00120fe4:12000007 ¥__00121004 sw s4, $000c(s1) # 00120fe8:ae34000c [00329ccc] lbu v0, $0000(s0) # 00120fec:92020000 sb v0, $0010(s1) # 00120ff0:a2220010 [00329cd0] lbu v1, $0001(s0) # 00120ff4:92030001 sb v1, $0011(s1) # 00120ff8:a2230011 [00329cd1] lbu v0, $0002(s0) # 00120ffc:92020002 sb v0, $0012(s1) # 00121000:a2220012 [00329cd2] __00121004: # blez a0, $00121014 # 00121004:18800003 ¥__00121014 lui a0, $0036 # 00121008:3c040036 a0=$00360000 jal $00112298 # 0012100c:0c0448a6 £scePrintf addiu a0, a0, $8ef8 # 00121010:24848ef8 a0="call cdreadstm cmd\n" __00121014: # daddu a0, s1, zero # 00121014:0220202d jal $00112990 # 00121018:0c044a64 £sceSifWriteBackDCache addiu a1, zero, $0014 # 0012101c:24050014 a1=$00000014 lui v0, $0033 # 00121020:3c020033 v0=$00330000 lui a0, $0033 # 00121024:3c040033 a0=$00330000 addiu s0, v0, $9c40 # 00121028:24509c40 s0=_sceCd_ncmdrdata addiu a0, a0, $ad90 # 0012102c:2484ad90 a0=_sceCd_cd_ncmd daddu a3, s1, zero # 00121030:0220382d sw zero, $0000(sp) # 00121034:afa00000 addiu a1, zero, $0009 # 00121038:24050009 a1=$00000009 daddu a2, zero, zero # 0012103c:0000302d addiu t0, zero, $0014 # 00121040:24080014 t0=$00000014 daddu t1, s0, zero # 00121044:0200482d t1=_sceCd_ncmdrdata addiu t2, zero, $0004 # 00121048:240a0004 t2=$00000004 jal $00113280 # 0012104c:0c044ca0 £sceSifCallRpc daddu t3, zero, zero # 00121050:0000582d bgezl v0, $00121070 # 00121054:04430006 ¥__00121070 lw v0, $9bd0(s6) # 00121058:8ec29bd0 lui v0, $0033 # 0012105c:3c020033 v0=$00330000 jal $00110100 # 00121060:0c044040 £SignalSema lw a0, $9be8(v0) # 00121064:8c449be8 a0=_sceCd_ncmd_semid beq zero, zero, $0012109c # 00121068:1000000c ¥__0012109c daddu v0, zero, zero # 0012106c:0000102d __00121070: # blez v0, $00121080 # 00121070:18400003 ¥__00121080 lui a0, $0036 # 00121074:3c040036 a0=$00360000 jal $00112298 # 00121078:0c0448a6 £scePrintf addiu a0, a0, $8f10 # 0012107c:24848f10 a0="cdread end\n" __00121080: # lui v1, $0033 # 00121080:3c030033 v1=$00330000 lui v0, $2000 # 00121084:3c022000 v0=$20000000 or v0, s0, v0 # 00121088:02021025 v0=$20329c40 lw a0, $9be8(v1) # 0012108c:8c649be8 a0=_sceCd_ncmd_semid jal $00110100 # 00121090:0c044040 £SignalSema lw s0, $0000(v0) # 00121094:8c500000 s0=$20329c40 daddu v0, s0, zero # 00121098:0200102d __0012109c: # ld ra, $0090(sp) # 0012109c:dfbf0090 ld s7, $0080(sp) # 001210a0:dfb70080 ld s6, $0070(sp) # 001210a4:dfb60070 ld s5, $0060(sp) # 001210a8:dfb50060 ld s4, $0050(sp) # 001210ac:dfb40050 ld s3, $0040(sp) # 001210b0:dfb30040 ld s2, $0030(sp) # 001210b4:dfb20030 ld s1, $0020(sp) # 001210b8:dfb10020 ld s0, $0010(sp) # 001210bc:dfb00010 jr ra # 001210c0:03e00008 addiu sp, sp, $00a0 # 001210c4:27bd00a0 |
Gs
sceGsSyncV
Signature |
---|
sceGsSyncV: # addiu sp, sp, $ffe0 # 00231450:27bdffe0 sd s0, $0000(sp) # 00231454:ffb00000 sd ra, $0010(sp) # 00231458:ffbf0010 jal $00230ee0 # 0023145c:0c08c3b8 ^ sceGsGetGParam nop # 00231460:00000000 daddu s0, v0, zero # 00231464:0040802d s0=$00000006 lw v0, $0008(s0) # 00231468:8e020008 v0=$0000000e bne v0, zero, $002314b0 # 0023146c:14400010 v __002314b0 nop # 00231470:00000000 jal $00246970 # 00231474:0c091a5c v VSync nop # 00231478:00000000 lh v1, $0000(s0) # 0023147c:86030000 v1=$00000006 addiu v0, zero, $0001 # 00231480:24020001 v0=$00000001 bne v1, v0, $002314d8 # 00231484:14620014 v __002314d8 ld ra, $0010(sp) # 00231488:dfbf0010 lui v1, $1200 # 0023148c:3c031200 v1=$12000000 ori v1, v1, $1000 # 00231490:34631000 v1=$12001000 ld v0, $0000(v1) # 00231494:dc620000 v0=$12001000 dsrl v0, v0, 13 # 00231498:0002137a andi v0, v0, $0001 # 0023149c:30420001 dsll32 v0, v0, 0 # 002314a0:0002103c dsra32 v0, v0, 0 # 002314a4:0002103f beq zero, zero, $002314dc # 002314a8:1000000c v __002314dc ld s0, $0000(sp) # 002314ac:dfb00000 __002314b0: # jal $002469b0 # 002314b0:0c091a6c v VSync2 nop # 002314b4:00000000 dsra v0, v0, 13 # 002314b8:0002137b lh v1, $0000(s0) # 002314bc:86030000 andi a0, v0, $0001 # 002314c0:30440001 addiu v0, zero, $0001 # 002314c4:24020001 v0=$00000001 bne v1, v0, $002314d8 # 002314c8:14620003 v __002314d8 ld ra, $0010(sp) # 002314cc:dfbf0010 dsll32 v0, a0, 0 # 002314d0:0004103c dsra32 v0, v0, 0 # 002314d4:0002103f __002314d8: # ld s0, $0000(sp) # 002314d8:dfb00000 __002314dc: # jr ra # 002314dc:03e00008 addiu sp, sp, $0020 # 002314e0:27bd0020 |
Sif
sceSifSendCmd
Signature |
---|
sceSifSendCmd: # daddu v0, a2, zero # 00248960:00c0102d daddu v1, a3, zero # 00248964:00e0182d daddu t3, t0, zero # 00248968:0100582d addiu sp, sp, $fff0 # 0024896c:27bdfff0 daddu t2, t1, zero # 00248970:0120502d daddu a2, a1, zero # 00248974:00a0302d sd ra, $0000(sp) # 00248978:ffbf0000 daddu a3, v0, zero # 0024897c:0040382d daddu t0, v1, zero # 00248980:0060402d daddu t1, t3, zero # 00248984:0160482d jal $00248828 # 00248988:0c09220a ^ _sceSifSendCmd daddu a1, zero, zero # 0024898c:0000282d ld ra, $0000(sp) # 00248990:dfbf0000 jr ra # 00248994:03e00008 addiu sp, sp, $0010 # 00248998:27bd0010 |