c: __osPfsGetInitData

This commit is contained in:
Mittenshugg
2020-08-01 04:09:58 -05:00
parent d62631d600
commit 06af1f5abf
19 changed files with 102 additions and 134 deletions
+1
View File
@@ -174,6 +174,7 @@ $(BUILD_DIR)/lib/%.o: OPT_FLAGS := -O2
$(BUILD_DIR)/lib/%.o: MIPSISET := -mips2
$(BUILD_DIR)/lib/src/unknown_0C91A0.o : OPT_FLAGS := -O1
$(BUILD_DIR)/lib/src/unknown_0D29F0.o: OPT_FLAGS := -O1
$(BUILD_DIR)/lib/src/unknown_0CDE90.o: OPT_FLAGS := -O1
$(BUILD_DIR)/lib/src/osCreateThread.o : OPT_FLAGS := -O1
$(BUILD_DIR)/lib/src/osGetThreadPri.o : OPT_FLAGS := -O1
$(BUILD_DIR)/lib/src/osPfsFreeBlocks.o: OPT_FLAGS := -O1
@@ -19,8 +19,8 @@ glabel func_80071D30
/* 072974 80071D74 8D240004 */ lw $a0, 4($t1)
/* 072978 80071D78 0C0322EC */ jal osRecvMesg
/* 07297C 80071D7C 24060001 */ li $a2, 1
/* 072980 80071D80 3C058013 */ lui $a1, %hi(D_8012CDE0) # $a1, 0x8013
/* 072984 80071D84 24A5CDE0 */ addiu $a1, %lo(D_8012CDE0) # addiu $a1, $a1, -0x3220
/* 072980 80071D80 3C058013 */ lui $a1, %hi(__osPfsPifRam) # $a1, 0x8013
/* 072984 80071D84 24A5CDE0 */ addiu $a1, %lo(__osPfsPifRam) # addiu $a1, $a1, -0x3220
/* 072988 80071D88 0C0335B0 */ jal __osSiRawStartDma
/* 07298C 80071D8C 00002025 */ move $a0, $zero
/* 072990 80071D90 8FAA0050 */ lw $t2, 0x50($sp)
@@ -29,9 +29,9 @@ glabel func_80071D30
/* 07299C 80071D9C 0C0322EC */ jal osRecvMesg
/* 0729A0 80071DA0 24060001 */ li $a2, 1
/* 0729A4 80071DA4 8FAB0050 */ lw $t3, 0x50($sp)
/* 0729A8 80071DA8 3C038013 */ lui $v1, %hi(D_8012CDE0) # $v1, 0x8013
/* 0729A8 80071DA8 3C038013 */ lui $v1, %hi(__osPfsPifRam) # $v1, 0x8013
/* 0729AC 80071DAC 8D640008 */ lw $a0, 8($t3)
/* 0729B0 80071DB0 2463CDE0 */ addiu $v1, %lo(D_8012CDE0) # addiu $v1, $v1, -0x3220
/* 0729B0 80071DB0 2463CDE0 */ addiu $v1, %lo(__osPfsPifRam) # addiu $v1, $v1, -0x3220
/* 0729B4 80071DB4 10800007 */ beqz $a0, .L80071DD4
/* 0729B8 80071DB8 27AC001C */ addiu $t4, $sp, 0x1c
/* 0729BC 80071DBC 18800005 */ blez $a0, .L80071DD4
@@ -19,8 +19,8 @@ glabel func_80071E58
/* 072A9C 80071E9C 8D240004 */ lw $a0, 4($t1)
/* 072AA0 80071EA0 0C0322EC */ jal osRecvMesg
/* 072AA4 80071EA4 24060001 */ li $a2, 1
/* 072AA8 80071EA8 3C058013 */ lui $a1, %hi(D_8012CDE0) # $a1, 0x8013
/* 072AAC 80071EAC 24A5CDE0 */ addiu $a1, %lo(D_8012CDE0) # addiu $a1, $a1, -0x3220
/* 072AA8 80071EA8 3C058013 */ lui $a1, %hi(__osPfsPifRam) # $a1, 0x8013
/* 072AAC 80071EAC 24A5CDE0 */ addiu $a1, %lo(__osPfsPifRam) # addiu $a1, $a1, -0x3220
/* 072AB0 80071EB0 0C0335B0 */ jal __osSiRawStartDma
/* 072AB4 80071EB4 00002025 */ move $a0, $zero
/* 072AB8 80071EB8 8FAA0050 */ lw $t2, 0x50($sp)
@@ -29,9 +29,9 @@ glabel func_80071E58
/* 072AC4 80071EC4 0C0322EC */ jal osRecvMesg
/* 072AC8 80071EC8 24060001 */ li $a2, 1
/* 072ACC 80071ECC 8FAB0050 */ lw $t3, 0x50($sp)
/* 072AD0 80071ED0 3C038013 */ lui $v1, %hi(D_8012CDE0) # $v1, 0x8013
/* 072AD0 80071ED0 3C038013 */ lui $v1, %hi(__osPfsPifRam) # $v1, 0x8013
/* 072AD4 80071ED4 8D640008 */ lw $a0, 8($t3)
/* 072AD8 80071ED8 2463CDE0 */ addiu $v1, %lo(D_8012CDE0) # addiu $v1, $v1, -0x3220
/* 072AD8 80071ED8 2463CDE0 */ addiu $v1, %lo(__osPfsPifRam) # addiu $v1, $v1, -0x3220
/* 072ADC 80071EDC 10800007 */ beqz $a0, .L80071EFC
/* 072AE0 80071EE0 27AC001C */ addiu $t4, $sp, 0x1c
/* 072AE4 80071EE4 18800005 */ blez $a0, .L80071EFC
+1 -2
View File
@@ -5,7 +5,7 @@
//should go somewhere else but
#define ARRLEN(x) ((s32)(sizeof(x) / sizeof(x[0])))
#define CHNL_ERR(format) ((format.rxsize & CHNL_ERR_MASK) >> 4)
#define CHNL_ERR(format) ((format.rxsize & 0xC0) >> 4)
typedef struct
{
@@ -130,4 +130,3 @@ typedef struct
__osSiRelAccess(); \
if (ret != 0) \
return ret;
@@ -89,8 +89,8 @@ glabel func_800CCC20
/* 0CD974 800CCD74 24060001 */ li $a2, 1
.L800CCD78:
/* 0CD978 800CCD78 24180004 */ li $t8, 4
/* 0CD97C 800CCD7C 3C018013 */ lui $at, %hi(D_8012CD91) # $at, 0x8013
/* 0CD980 800CCD80 A038CD91 */ sb $t8, %lo(D_8012CD91)($at)
/* 0CD97C 800CCD7C 3C018013 */ lui $at, %hi(__osMaxControllers) # $at, 0x8013
/* 0CD980 800CCD80 A038CD91 */ sb $t8, %lo(__osMaxControllers)($at)
/* 0CD984 800CCD84 0C0333BA */ jal func_800CCEE8
/* 0CD988 800CCD88 00002025 */ move $a0, $zero
/* 0CD98C 800CCD8C 3C058013 */ lui $a1, %hi(D_8012CD50) # $a1, 0x8013
@@ -1,6 +1,6 @@
glabel func_800CCE18
/* 0CDA18 800CCE18 3C0F8013 */ lui $t7, %hi(D_8012CD91) # $t7, 0x8013
/* 0CDA1C 800CCE1C 91EFCD91 */ lbu $t7, %lo(D_8012CD91)($t7)
/* 0CDA18 800CCE18 3C0F8013 */ lui $t7, %hi(__osMaxControllers) # $t7, 0x8013
/* 0CDA1C 800CCE1C 91EFCD91 */ lbu $t7, %lo(__osMaxControllers)($t7)
/* 0CDA20 800CCE20 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 0CDA24 800CCE24 3C0E8013 */ lui $t6, %hi(D_8012CD50) # $t6, 0x8013
/* 0CDA28 800CCE28 25CECD50 */ addiu $t6, %lo(D_8012CD50) # addiu $t6, $t6, -0x32b0
@@ -39,8 +39,8 @@ glabel func_800CCE18
/* 0CDAA8 800CCEA8 A3AD0007 */ sb $t5, 7($sp)
.L800CCEAC:
/* 0CDAAC 800CCEAC 8FAE0008 */ lw $t6, 8($sp)
/* 0CDAB0 800CCEB0 3C198013 */ lui $t9, %hi(D_8012CD91) # $t9, 0x8013
/* 0CDAB4 800CCEB4 9339CD91 */ lbu $t9, %lo(D_8012CD91)($t9)
/* 0CDAB0 800CCEB0 3C198013 */ lui $t9, %hi(__osMaxControllers) # $t9, 0x8013
/* 0CDAB4 800CCEB4 9339CD91 */ lbu $t9, %lo(__osMaxControllers)($t9)
/* 0CDAB8 800CCEB8 8FA80014 */ lw $t0, 0x14($sp)
/* 0CDABC 800CCEBC 25CF0001 */ addiu $t7, $t6, 1
/* 0CDAC0 800CCEC0 01F9082A */ slt $at, $t7, $t9
@@ -13,8 +13,8 @@ glabel func_800CCEE8
/* 0CDB10 800CCF10 2B210010 */ slti $at, $t9, 0x10
/* 0CDB14 800CCF14 1420FFF7 */ bnez $at, .L800CCEF4
/* 0CDB18 800CCF18 AFB90000 */ sw $t9, ($sp)
/* 0CDB1C 800CCF1C 3C198013 */ lui $t9, %hi(D_8012CD91) # $t9, 0x8013
/* 0CDB20 800CCF20 9339CD91 */ lbu $t9, %lo(D_8012CD91)($t9)
/* 0CDB1C 800CCF1C 3C198013 */ lui $t9, %hi(__osMaxControllers) # $t9, 0x8013
/* 0CDB20 800CCF20 9339CD91 */ lbu $t9, %lo(__osMaxControllers)($t9)
/* 0CDB24 800CCF24 3C098013 */ lui $t1, %hi(D_8012CD50) # $t1, 0x8013
/* 0CDB28 800CCF28 24080001 */ li $t0, 1
/* 0CDB2C 800CCF2C 3C018013 */ lui $at, %hi(D_8012CD8C) # $at, 0x8013
@@ -42,14 +42,14 @@ glabel func_800CCEE8
/* 0CDB80 800CCF80 27A90004 */ addiu $t1, $sp, 4
/* 0CDB84 800CCF84 8D210000 */ lw $at, ($t1)
/* 0CDB88 800CCF88 8FA8000C */ lw $t0, 0xc($sp)
/* 0CDB8C 800CCF8C 3C188013 */ lui $t8, %hi(D_8012CD91) # $t8, 0x8013
/* 0CDB8C 800CCF8C 3C188013 */ lui $t8, %hi(__osMaxControllers) # $t8, 0x8013
/* 0CDB90 800CCF90 A9010000 */ swl $at, ($t0)
/* 0CDB94 800CCF94 B9010003 */ swr $at, 3($t0)
/* 0CDB98 800CCF98 8D2B0004 */ lw $t3, 4($t1)
/* 0CDB9C 800CCF9C A90B0004 */ swl $t3, 4($t0)
/* 0CDBA0 800CCFA0 B90B0007 */ swr $t3, 7($t0)
/* 0CDBA4 800CCFA4 8FAE0000 */ lw $t6, ($sp)
/* 0CDBA8 800CCFA8 9318CD91 */ lbu $t8, %lo(D_8012CD91)($t8)
/* 0CDBA8 800CCFA8 9318CD91 */ lbu $t8, %lo(__osMaxControllers)($t8)
/* 0CDBAC 800CCFAC 8FAC000C */ lw $t4, 0xc($sp)
/* 0CDBB0 800CCFB0 25CF0001 */ addiu $t7, $t6, 1
/* 0CDBB4 800CCFB4 01F8082A */ slt $at, $t7, $t8
@@ -1,6 +1,6 @@
glabel func_800CD0A4
/* 0CDCA4 800CD0A4 3C0F8013 */ lui $t7, %hi(D_8012CD91) # $t7, 0x8013
/* 0CDCA8 800CD0A8 91EFCD91 */ lbu $t7, %lo(D_8012CD91)($t7)
/* 0CDCA4 800CD0A4 3C0F8013 */ lui $t7, %hi(__osMaxControllers) # $t7, 0x8013
/* 0CDCA8 800CD0A8 91EFCD91 */ lbu $t7, %lo(__osMaxControllers)($t7)
/* 0CDCAC 800CD0AC 3C0E8013 */ lui $t6, %hi(D_8012CD50) # $t6, 0x8013
/* 0CDCB0 800CD0B0 27BDFFF0 */ addiu $sp, $sp, -0x10
/* 0CDCB4 800CD0B4 25CECD50 */ addiu $t6, %lo(D_8012CD50) # addiu $t6, $t6, -0x32b0
@@ -31,8 +31,8 @@ glabel func_800CD0A4
/* 0CDD14 800CD114 A0880003 */ sb $t0, 3($a0)
.L800CD118:
/* 0CDD18 800CD118 8FB80000 */ lw $t8, ($sp)
/* 0CDD1C 800CD11C 3C0B8013 */ lui $t3, %hi(D_8012CD91) # $t3, 0x8013
/* 0CDD20 800CD120 916BCD91 */ lbu $t3, %lo(D_8012CD91)($t3)
/* 0CDD1C 800CD11C 3C0B8013 */ lui $t3, %hi(__osMaxControllers) # $t3, 0x8013
/* 0CDD20 800CD120 916BCD91 */ lbu $t3, %lo(__osMaxControllers)($t3)
/* 0CDD24 800CD124 8FA9000C */ lw $t1, 0xc($sp)
/* 0CDD28 800CD128 27190001 */ addiu $t9, $t8, 1
/* 0CDD2C 800CD12C 032B082A */ slt $at, $t9, $t3
@@ -15,8 +15,8 @@ glabel func_800CD14C
/* 0CDD7C 800CD17C 29010010 */ slti $at, $t0, 0x10
/* 0CDD80 800CD180 1420FFF7 */ bnez $at, .L800CD160
/* 0CDD84 800CD184 AFA80000 */ sw $t0, ($sp)
/* 0CDD88 800CD188 3C198013 */ lui $t9, %hi(D_8012CD91) # $t9, 0x8013
/* 0CDD8C 800CD18C 9339CD91 */ lbu $t9, %lo(D_8012CD91)($t9)
/* 0CDD88 800CD188 3C198013 */ lui $t9, %hi(__osMaxControllers) # $t9, 0x8013
/* 0CDD8C 800CD18C 9339CD91 */ lbu $t9, %lo(__osMaxControllers)($t9)
/* 0CDD90 800CD190 24090001 */ li $t1, 1
/* 0CDD94 800CD194 3C018013 */ lui $at, %hi(D_8012CD8C) # $at, 0x8013
/* 0CDD98 800CD198 240A00FF */ li $t2, 255
@@ -40,14 +40,14 @@ glabel func_800CD14C
/* 0CDDDC 800CD1DC 27A90004 */ addiu $t1, $sp, 4
/* 0CDDE0 800CD1E0 8D210000 */ lw $at, ($t1)
/* 0CDDE4 800CD1E4 8FA8000C */ lw $t0, 0xc($sp)
/* 0CDDE8 800CD1E8 3C188013 */ lui $t8, %hi(D_8012CD91) # $t8, 0x8013
/* 0CDDE8 800CD1E8 3C188013 */ lui $t8, %hi(__osMaxControllers) # $t8, 0x8013
/* 0CDDEC 800CD1EC A9010000 */ swl $at, ($t0)
/* 0CDDF0 800CD1F0 B9010003 */ swr $at, 3($t0)
/* 0CDDF4 800CD1F4 8D2B0004 */ lw $t3, 4($t1)
/* 0CDDF8 800CD1F8 A90B0004 */ swl $t3, 4($t0)
/* 0CDDFC 800CD1FC B90B0007 */ swr $t3, 7($t0)
/* 0CDE00 800CD200 8FAE0000 */ lw $t6, ($sp)
/* 0CDE04 800CD204 9318CD91 */ lbu $t8, %lo(D_8012CD91)($t8)
/* 0CDE04 800CD204 9318CD91 */ lbu $t8, %lo(__osMaxControllers)($t8)
/* 0CDE08 800CD208 8FAC000C */ lw $t4, 0xc($sp)
/* 0CDE0C 800CD20C 25CF0001 */ addiu $t7, $t6, 1
/* 0CDE10 800CD210 01F8082A */ slt $at, $t7, $t8
@@ -1,59 +0,0 @@
glabel __osPfsGetInitData
/* 0CE12C 800CD52C 3C0F8013 */ lui $t7, %hi(D_8012CD91) # $t7, 0x8013
/* 0CE130 800CD530 91EFCD91 */ lbu $t7, %lo(D_8012CD91)($t7)
/* 0CE134 800CD534 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 0CE138 800CD538 3C0E8013 */ lui $t6, %hi(D_8012CDE0) # $t6, 0x8013
/* 0CE13C 800CD53C 25CECDE0 */ addiu $t6, %lo(D_8012CDE0) # addiu $t6, $t6, -0x3220
/* 0CE140 800CD540 A3A00007 */ sb $zero, 7($sp)
/* 0CE144 800CD544 AFAE0014 */ sw $t6, 0x14($sp)
/* 0CE148 800CD548 19E00028 */ blez $t7, .L800CD5EC
/* 0CE14C 800CD54C AFA00008 */ sw $zero, 8($sp)
.L800CD550:
/* 0CE150 800CD550 8FB90014 */ lw $t9, 0x14($sp)
/* 0CE154 800CD554 27B8000C */ addiu $t8, $sp, 0xc
/* 0CE158 800CD558 8B210000 */ lwl $at, ($t9)
/* 0CE15C 800CD55C 9B210003 */ lwr $at, 3($t9)
/* 0CE160 800CD560 AF010000 */ sw $at, ($t8)
/* 0CE164 800CD564 8B290004 */ lwl $t1, 4($t9)
/* 0CE168 800CD568 9B290007 */ lwr $t1, 7($t9)
/* 0CE16C 800CD56C AF090004 */ sw $t1, 4($t8)
/* 0CE170 800CD570 93AA000E */ lbu $t2, 0xe($sp)
/* 0CE174 800CD574 314B00C0 */ andi $t3, $t2, 0xc0
/* 0CE178 800CD578 000B6103 */ sra $t4, $t3, 4
/* 0CE17C 800CD57C A0AC0003 */ sb $t4, 3($a1)
/* 0CE180 800CD580 90AD0003 */ lbu $t5, 3($a1)
/* 0CE184 800CD584 15A0000E */ bnez $t5, .L800CD5C0
/* 0CE188 800CD588 00000000 */ nop
/* 0CE18C 800CD58C 93AE0011 */ lbu $t6, 0x11($sp)
/* 0CE190 800CD590 93A80010 */ lbu $t0, 0x10($sp)
/* 0CE194 800CD594 240B0001 */ li $t3, 1
/* 0CE198 800CD598 000E7A00 */ sll $t7, $t6, 8
/* 0CE19C 800CD59C 01E8C025 */ or $t8, $t7, $t0
/* 0CE1A0 800CD5A0 A4B80000 */ sh $t8, ($a1)
/* 0CE1A4 800CD5A4 93B90012 */ lbu $t9, 0x12($sp)
/* 0CE1A8 800CD5A8 A0B90002 */ sb $t9, 2($a1)
/* 0CE1AC 800CD5AC 8FAA0008 */ lw $t2, 8($sp)
/* 0CE1B0 800CD5B0 93A90007 */ lbu $t1, 7($sp)
/* 0CE1B4 800CD5B4 014B6004 */ sllv $t4, $t3, $t2
/* 0CE1B8 800CD5B8 012C6825 */ or $t5, $t1, $t4
/* 0CE1BC 800CD5BC A3AD0007 */ sb $t5, 7($sp)
.L800CD5C0:
/* 0CE1C0 800CD5C0 8FAE0008 */ lw $t6, 8($sp)
/* 0CE1C4 800CD5C4 3C198013 */ lui $t9, %hi(D_8012CD91) # $t9, 0x8013
/* 0CE1C8 800CD5C8 9339CD91 */ lbu $t9, %lo(D_8012CD91)($t9)
/* 0CE1CC 800CD5CC 8FA80014 */ lw $t0, 0x14($sp)
/* 0CE1D0 800CD5D0 25CF0001 */ addiu $t7, $t6, 1
/* 0CE1D4 800CD5D4 01F9082A */ slt $at, $t7, $t9
/* 0CE1D8 800CD5D8 25180008 */ addiu $t8, $t0, 8
/* 0CE1DC 800CD5DC AFB80014 */ sw $t8, 0x14($sp)
/* 0CE1E0 800CD5E0 AFAF0008 */ sw $t7, 8($sp)
/* 0CE1E4 800CD5E4 1420FFDA */ bnez $at, .L800CD550
/* 0CE1E8 800CD5E8 24A50004 */ addiu $a1, $a1, 4
.L800CD5EC:
/* 0CE1EC 800CD5EC 93AB0007 */ lbu $t3, 7($sp)
/* 0CE1F0 800CD5F0 27BD0018 */ addiu $sp, $sp, 0x18
/* 0CE1F4 800CD5F4 03E00008 */ jr $ra
/* 0CE1F8 800CD5F8 A08B0000 */ sb $t3, ($a0)
/* 0CE1FC 800CD5FC 00000000 */ nop
@@ -15,12 +15,12 @@ glabel __osPfsRequestData
/* 0CE060 800CD460 2B210010 */ slti $at, $t9, 0x10
/* 0CE064 800CD464 1420FFF7 */ bnez $at, .L800CD444
/* 0CE068 800CD468 AFB90000 */ sw $t9, ($sp)
/* 0CE06C 800CD46C 3C198013 */ lui $t9, %hi(D_8012CD91) # $t9, 0x8013
/* 0CE070 800CD470 9339CD91 */ lbu $t9, %lo(D_8012CD91)($t9)
/* 0CE074 800CD474 3C098013 */ lui $t1, %hi(D_8012CDE0) # $t1, 0x8013
/* 0CE06C 800CD46C 3C198013 */ lui $t9, %hi(__osMaxControllers) # $t9, 0x8013
/* 0CE070 800CD470 9339CD91 */ lbu $t9, %lo(__osMaxControllers)($t9)
/* 0CE074 800CD474 3C098013 */ lui $t1, %hi(__osPfsPifRam) # $t1, 0x8013
/* 0CE078 800CD478 24080001 */ li $t0, 1
/* 0CE07C 800CD47C 3C018013 */ lui $at, %hi(D_8012CE1C) # $at, 0x8013
/* 0CE080 800CD480 2529CDE0 */ addiu $t1, %lo(D_8012CDE0) # addiu $t1, $t1, -0x3220
/* 0CE080 800CD480 2529CDE0 */ addiu $t1, %lo(__osPfsPifRam) # addiu $t1, $t1, -0x3220
/* 0CE084 800CD484 240A00FF */ li $t2, 255
/* 0CE088 800CD488 240B0001 */ li $t3, 1
/* 0CE08C 800CD48C 240C0003 */ li $t4, 3
@@ -44,14 +44,14 @@ glabel __osPfsRequestData
/* 0CE0D0 800CD4D0 27A90004 */ addiu $t1, $sp, 4
/* 0CE0D4 800CD4D4 8D210000 */ lw $at, ($t1)
/* 0CE0D8 800CD4D8 8FA8000C */ lw $t0, 0xc($sp)
/* 0CE0DC 800CD4DC 3C188013 */ lui $t8, %hi(D_8012CD91) # $t8, 0x8013
/* 0CE0DC 800CD4DC 3C188013 */ lui $t8, %hi(__osMaxControllers) # $t8, 0x8013
/* 0CE0E0 800CD4E0 A9010000 */ swl $at, ($t0)
/* 0CE0E4 800CD4E4 B9010003 */ swr $at, 3($t0)
/* 0CE0E8 800CD4E8 8D2B0004 */ lw $t3, 4($t1)
/* 0CE0EC 800CD4EC A90B0004 */ swl $t3, 4($t0)
/* 0CE0F0 800CD4F0 B90B0007 */ swr $t3, 7($t0)
/* 0CE0F4 800CD4F4 8FAE0000 */ lw $t6, ($sp)
/* 0CE0F8 800CD4F8 9318CD91 */ lbu $t8, %lo(D_8012CD91)($t8)
/* 0CE0F8 800CD4F8 9318CD91 */ lbu $t8, %lo(__osMaxControllers)($t8)
/* 0CE0FC 800CD4FC 8FAC000C */ lw $t4, 0xc($sp)
/* 0CE100 800CD500 25CF0001 */ addiu $t7, $t6, 1
/* 0CE104 800CD504 01F8082A */ slt $at, $t7, $t8
@@ -11,8 +11,8 @@ glabel osPfsIsPlug
.L800CD2B4:
/* 0CDEB4 800CD2B4 0C03350C */ jal __osPfsRequestData
/* 0CDEB8 800CD2B8 00002025 */ move $a0, $zero
/* 0CDEBC 800CD2BC 3C058013 */ lui $a1, %hi(D_8012CDE0) # $a1, 0x8013
/* 0CDEC0 800CD2C0 24A5CDE0 */ addiu $a1, %lo(D_8012CDE0) # addiu $a1, $a1, -0x3220
/* 0CDEBC 800CD2BC 3C058013 */ lui $a1, %hi(__osPfsPifRam) # $a1, 0x8013
/* 0CDEC0 800CD2C0 24A5CDE0 */ addiu $a1, %lo(__osPfsPifRam) # addiu $a1, $a1, -0x3220
/* 0CDEC4 800CD2C4 0C0335B0 */ jal __osSiRawStartDma
/* 0CDEC8 800CD2C8 24040001 */ li $a0, 1
/* 0CDECC 800CD2CC AFA2003C */ sw $v0, 0x3c($sp)
@@ -20,8 +20,8 @@ glabel osPfsIsPlug
/* 0CDED4 800CD2D4 27A50038 */ addiu $a1, $sp, 0x38
/* 0CDED8 800CD2D8 0C0322EC */ jal osRecvMesg
/* 0CDEDC 800CD2DC 24060001 */ li $a2, 1
/* 0CDEE0 800CD2E0 3C058013 */ lui $a1, %hi(D_8012CDE0) # $a1, 0x8013
/* 0CDEE4 800CD2E4 24A5CDE0 */ addiu $a1, %lo(D_8012CDE0) # addiu $a1, $a1, -0x3220
/* 0CDEE0 800CD2E0 3C058013 */ lui $a1, %hi(__osPfsPifRam) # $a1, 0x8013
/* 0CDEE4 800CD2E4 24A5CDE0 */ addiu $a1, %lo(__osPfsPifRam) # addiu $a1, $a1, -0x3220
/* 0CDEE8 800CD2E8 0C0335B0 */ jal __osSiRawStartDma
/* 0CDEEC 800CD2EC 00002025 */ move $a0, $zero
/* 0CDEF0 800CD2F0 AFA2003C */ sw $v0, 0x3c($sp)
@@ -32,8 +32,8 @@ glabel osPfsIsPlug
/* 0CDF04 800CD304 27A40037 */ addiu $a0, $sp, 0x37
/* 0CDF08 800CD308 0C03354B */ jal __osPfsGetInitData
/* 0CDF0C 800CD30C 27A50024 */ addiu $a1, $sp, 0x24
/* 0CDF10 800CD310 3C0F8013 */ lui $t7, %hi(D_8012CD91) # $t7, 0x8013
/* 0CDF14 800CD314 91EFCD91 */ lbu $t7, %lo(D_8012CD91)($t7)
/* 0CDF10 800CD310 3C0F8013 */ lui $t7, %hi(__osMaxControllers) # $t7, 0x8013
/* 0CDF14 800CD314 91EFCD91 */ lbu $t7, %lo(__osMaxControllers)($t7)
/* 0CDF18 800CD318 AFA00020 */ sw $zero, 0x20($sp)
/* 0CDF1C 800CD31C 19E00014 */ blez $t7, .L800CD370
/* 0CDF20 800CD320 00000000 */ nop
@@ -51,16 +51,16 @@ glabel osPfsIsPlug
/* 0CDF4C 800CD34C AFAB0018 */ sw $t3, 0x18($sp)
.L800CD350:
/* 0CDF50 800CD350 8FAC0020 */ lw $t4, 0x20($sp)
/* 0CDF54 800CD354 3C0E8013 */ lui $t6, %hi(D_8012CD91) # $t6, 0x8013
/* 0CDF58 800CD358 91CECD91 */ lbu $t6, %lo(D_8012CD91)($t6)
/* 0CDF54 800CD354 3C0E8013 */ lui $t6, %hi(__osMaxControllers) # $t6, 0x8013
/* 0CDF58 800CD358 91CECD91 */ lbu $t6, %lo(__osMaxControllers)($t6)
/* 0CDF5C 800CD35C 258D0001 */ addiu $t5, $t4, 1
/* 0CDF60 800CD360 AFAD0020 */ sw $t5, 0x20($sp)
/* 0CDF64 800CD364 01AE082A */ slt $at, $t5, $t6
/* 0CDF68 800CD368 1420FFEE */ bnez $at, .L800CD324
/* 0CDF6C 800CD36C 00000000 */ nop
.L800CD370:
/* 0CDF70 800CD370 3C0F8013 */ lui $t7, %hi(D_8012CD91) # $t7, 0x8013
/* 0CDF74 800CD374 91EFCD91 */ lbu $t7, %lo(D_8012CD91)($t7)
/* 0CDF70 800CD370 3C0F8013 */ lui $t7, %hi(__osMaxControllers) # $t7, 0x8013
/* 0CDF74 800CD374 91EFCD91 */ lbu $t7, %lo(__osMaxControllers)($t7)
/* 0CDF78 800CD378 8FB80020 */ lw $t8, 0x20($sp)
/* 0CDF7C 800CD37C 15F80002 */ bne $t7, $t8, .L800CD388
/* 0CDF80 800CD380 00000000 */ nop
@@ -69,8 +69,8 @@ glabel osPfsIsPlug
/* 0CDF88 800CD388 8FB90018 */ lw $t9, 0x18($sp)
/* 0CDF8C 800CD38C 1F20FFC9 */ bgtz $t9, .L800CD2B4
/* 0CDF90 800CD390 00000000 */ nop
/* 0CDF94 800CD394 3C088013 */ lui $t0, %hi(D_8012CD91) # $t0, 0x8013
/* 0CDF98 800CD398 9108CD91 */ lbu $t0, %lo(D_8012CD91)($t0)
/* 0CDF94 800CD394 3C088013 */ lui $t0, %hi(__osMaxControllers) # $t0, 0x8013
/* 0CDF98 800CD398 9108CD91 */ lbu $t0, %lo(__osMaxControllers)($t0)
/* 0CDF9C 800CD39C AFA00020 */ sw $zero, 0x20($sp)
/* 0CDFA0 800CD3A0 19000019 */ blez $t0, .L800CD408
/* 0CDFA4 800CD3A4 00000000 */ nop
@@ -93,8 +93,8 @@ glabel osPfsIsPlug
/* 0CDFE4 800CD3E4 A3AA001F */ sb $t2, 0x1f($sp)
.L800CD3E8:
/* 0CDFE8 800CD3E8 8FAB0020 */ lw $t3, 0x20($sp)
/* 0CDFEC 800CD3EC 3C0C8013 */ lui $t4, %hi(D_8012CD91) # $t4, 0x8013
/* 0CDFF0 800CD3F0 918CCD91 */ lbu $t4, %lo(D_8012CD91)($t4)
/* 0CDFEC 800CD3EC 3C0C8013 */ lui $t4, %hi(__osMaxControllers) # $t4, 0x8013
/* 0CDFF0 800CD3F0 918CCD91 */ lbu $t4, %lo(__osMaxControllers)($t4)
/* 0CDFF4 800CD3F4 256D0001 */ addiu $t5, $t3, 1
/* 0CDFF8 800CD3F8 AFAD0020 */ sw $t5, 0x20($sp)
/* 0CDFFC 800CD3FC 01AC082A */ slt $at, $t5, $t4
@@ -1,8 +1,8 @@
glabel __osContRamWrite
/* 0CE4F0 800CD8F0 27BDFFA0 */ addiu $sp, $sp, -0x60
/* 0CE4F4 800CD8F4 8FB80070 */ lw $t8, 0x70($sp)
/* 0CE4F8 800CD8F8 3C0E8013 */ lui $t6, %hi(D_8012CDE0) # $t6, 0x8013
/* 0CE4FC 800CD8FC 25CECDE0 */ addiu $t6, %lo(D_8012CDE0) # addiu $t6, $t6, -0x3220
/* 0CE4F8 800CD8F8 3C0E8013 */ lui $t6, %hi(__osPfsPifRam) # $t6, 0x8013
/* 0CE4FC 800CD8FC 25CECDE0 */ addiu $t6, %lo(__osPfsPifRam) # addiu $t6, $t6, -0x3220
/* 0CE500 800CD900 240F0002 */ li $t7, 2
/* 0CE504 800CD904 24010001 */ li $at, 1
/* 0CE508 800CD908 AFBF001C */ sw $ra, 0x1c($sp)
@@ -33,8 +33,8 @@ glabel __osContRamWrite
/* 0CE568 800CD968 97A5006A */ lhu $a1, 0x6a($sp)
/* 0CE56C 800CD96C 0C0336C8 */ jal __osPackRamWriteData
/* 0CE570 800CD970 8FA6006C */ lw $a2, 0x6c($sp)
/* 0CE574 800CD974 3C058013 */ lui $a1, %hi(D_8012CDE0) # $a1, 0x8013
/* 0CE578 800CD978 24A5CDE0 */ addiu $a1, %lo(D_8012CDE0) # addiu $a1, $a1, -0x3220
/* 0CE574 800CD974 3C058013 */ lui $a1, %hi(__osPfsPifRam) # $a1, 0x8013
/* 0CE578 800CD978 24A5CDE0 */ addiu $a1, %lo(__osPfsPifRam) # addiu $a1, $a1, -0x3220
/* 0CE57C 800CD97C 0C0335B0 */ jal __osSiRawStartDma
/* 0CE580 800CD980 24040001 */ li $a0, 1
/* 0CE584 800CD984 AFA2005C */ sw $v0, 0x5c($sp)
@@ -57,9 +57,9 @@ glabel __osContRamWrite
/* 0CE5C0 800CD9C0 1420FFF6 */ bnez $at, .L800CD99C
/* 0CE5C4 800CD9C4 AFAD0058 */ sw $t5, 0x58($sp)
/* 0CE5C8 800CD9C8 3C018013 */ lui $at, %hi(D_8012CE1C) # $at, 0x8013
/* 0CE5CC 800CD9CC 3C058013 */ lui $a1, %hi(D_8012CDE0) # $a1, 0x8013
/* 0CE5CC 800CD9CC 3C058013 */ lui $a1, %hi(__osPfsPifRam) # $a1, 0x8013
/* 0CE5D0 800CD9D0 AC20CE1C */ sw $zero, %lo(D_8012CE1C)($at)
/* 0CE5D4 800CD9D4 24A5CDE0 */ addiu $a1, %lo(D_8012CDE0) # addiu $a1, $a1, -0x3220
/* 0CE5D4 800CD9D4 24A5CDE0 */ addiu $a1, %lo(__osPfsPifRam) # addiu $a1, $a1, -0x3220
/* 0CE5D8 800CD9D8 0C0335B0 */ jal __osSiRawStartDma
/* 0CE5DC 800CD9DC 00002025 */ move $a0, $zero
/* 0CE5E0 800CD9E0 AFA2005C */ sw $v0, 0x5c($sp)
@@ -68,8 +68,8 @@ glabel __osContRamWrite
/* 0CE5EC 800CD9EC 0C0322EC */ jal osRecvMesg
/* 0CE5F0 800CD9F0 24060001 */ li $a2, 1
/* 0CE5F4 800CD9F4 8FAF0064 */ lw $t7, 0x64($sp)
/* 0CE5F8 800CD9F8 3C0E8013 */ lui $t6, %hi(D_8012CDE0) # $t6, 0x8013
/* 0CE5FC 800CD9FC 25CECDE0 */ addiu $t6, %lo(D_8012CDE0) # addiu $t6, $t6, -0x3220
/* 0CE5F8 800CD9F8 3C0E8013 */ lui $t6, %hi(__osPfsPifRam) # $t6, 0x8013
/* 0CE5FC 800CD9FC 25CECDE0 */ addiu $t6, %lo(__osPfsPifRam) # addiu $t6, $t6, -0x3220
/* 0CE600 800CDA00 11E0000C */ beqz $t7, .L800CDA34
/* 0CE604 800CDA04 AFAE0054 */ sw $t6, 0x54($sp)
/* 0CE608 800CDA08 19E0000A */ blez $t7, .L800CDA34
@@ -1,7 +1,7 @@
glabel __osPackRamWriteData
/* 0CE720 800CDB20 27BDFFB8 */ addiu $sp, $sp, -0x48
/* 0CE724 800CDB24 3C0E8013 */ lui $t6, %hi(D_8012CDE0) # $t6, 0x8013
/* 0CE728 800CDB28 25CECDE0 */ addiu $t6, %lo(D_8012CDE0) # addiu $t6, $t6, -0x3220
/* 0CE724 800CDB24 3C0E8013 */ lui $t6, %hi(__osPfsPifRam) # $t6, 0x8013
/* 0CE728 800CDB28 25CECDE0 */ addiu $t6, %lo(__osPfsPifRam) # addiu $t6, $t6, -0x3220
/* 0CE72C 800CDB2C AFBF0014 */ sw $ra, 0x14($sp)
/* 0CE730 800CDB30 AFA40048 */ sw $a0, 0x48($sp)
/* 0CE734 800CDB34 AFA5004C */ sw $a1, 0x4c($sp)
@@ -1,8 +1,8 @@
glabel __osContRamRead
/* 0CE8A0 800CDCA0 27BDFFA0 */ addiu $sp, $sp, -0x60
/* 0CE8A4 800CDCA4 3C0E8013 */ lui $t6, %hi(D_8012CDE0) # $t6, 0x8013
/* 0CE8A4 800CDCA4 3C0E8013 */ lui $t6, %hi(__osPfsPifRam) # $t6, 0x8013
/* 0CE8A8 800CDCA8 AFBF001C */ sw $ra, 0x1c($sp)
/* 0CE8AC 800CDCAC 25CECDE0 */ addiu $t6, %lo(D_8012CDE0) # addiu $t6, $t6, -0x3220
/* 0CE8AC 800CDCAC 25CECDE0 */ addiu $t6, %lo(__osPfsPifRam) # addiu $t6, $t6, -0x3220
/* 0CE8B0 800CDCB0 240F0002 */ li $t7, 2
/* 0CE8B4 800CDCB4 AFA40060 */ sw $a0, 0x60($sp)
/* 0CE8B8 800CDCB8 AFA50064 */ sw $a1, 0x64($sp)
@@ -19,8 +19,8 @@ glabel __osContRamRead
/* 0CE8E4 800CDCE4 8FA40064 */ lw $a0, 0x64($sp)
/* 0CE8E8 800CDCE8 0C0337B9 */ jal __osPackRamReadData
/* 0CE8EC 800CDCEC 97A5006A */ lhu $a1, 0x6a($sp)
/* 0CE8F0 800CDCF0 3C058013 */ lui $a1, %hi(D_8012CDE0) # $a1, 0x8013
/* 0CE8F4 800CDCF4 24A5CDE0 */ addiu $a1, %lo(D_8012CDE0) # addiu $a1, $a1, -0x3220
/* 0CE8F0 800CDCF0 3C058013 */ lui $a1, %hi(__osPfsPifRam) # $a1, 0x8013
/* 0CE8F4 800CDCF4 24A5CDE0 */ addiu $a1, %lo(__osPfsPifRam) # addiu $a1, $a1, -0x3220
/* 0CE8F8 800CDCF8 0C0335B0 */ jal __osSiRawStartDma
/* 0CE8FC 800CDCFC 24040001 */ li $a0, 1
/* 0CE900 800CDD00 AFA2005C */ sw $v0, 0x5c($sp)
@@ -43,9 +43,9 @@ glabel __osContRamRead
/* 0CE93C 800CDD3C 1420FFF6 */ bnez $at, .L800CDD18
/* 0CE940 800CDD40 AFAB0058 */ sw $t3, 0x58($sp)
/* 0CE944 800CDD44 3C018013 */ lui $at, %hi(D_8012CE1C) # $at, 0x8013
/* 0CE948 800CDD48 3C058013 */ lui $a1, %hi(D_8012CDE0) # $a1, 0x8013
/* 0CE948 800CDD48 3C058013 */ lui $a1, %hi(__osPfsPifRam) # $a1, 0x8013
/* 0CE94C 800CDD4C AC20CE1C */ sw $zero, %lo(D_8012CE1C)($at)
/* 0CE950 800CDD50 24A5CDE0 */ addiu $a1, %lo(D_8012CDE0) # addiu $a1, $a1, -0x3220
/* 0CE950 800CDD50 24A5CDE0 */ addiu $a1, %lo(__osPfsPifRam) # addiu $a1, $a1, -0x3220
/* 0CE954 800CDD54 0C0335B0 */ jal __osSiRawStartDma
/* 0CE958 800CDD58 00002025 */ move $a0, $zero
/* 0CE95C 800CDD5C AFA2005C */ sw $v0, 0x5c($sp)
@@ -54,8 +54,8 @@ glabel __osContRamRead
/* 0CE968 800CDD68 0C0322EC */ jal osRecvMesg
/* 0CE96C 800CDD6C 24060001 */ li $a2, 1
/* 0CE970 800CDD70 8FAD0064 */ lw $t5, 0x64($sp)
/* 0CE974 800CDD74 3C0C8013 */ lui $t4, %hi(D_8012CDE0) # $t4, 0x8013
/* 0CE978 800CDD78 258CCDE0 */ addiu $t4, %lo(D_8012CDE0) # addiu $t4, $t4, -0x3220
/* 0CE974 800CDD74 3C0C8013 */ lui $t4, %hi(__osPfsPifRam) # $t4, 0x8013
/* 0CE978 800CDD78 258CCDE0 */ addiu $t4, %lo(__osPfsPifRam) # addiu $t4, $t4, -0x3220
/* 0CE97C 800CDD7C 11A0000C */ beqz $t5, .L800CDDB0
/* 0CE980 800CDD80 AFAC0054 */ sw $t4, 0x54($sp)
/* 0CE984 800CDD84 19A0000A */ blez $t5, .L800CDDB0
@@ -1,7 +1,7 @@
glabel __osPackRamReadData
/* 0CEAE4 800CDEE4 27BDFFB8 */ addiu $sp, $sp, -0x48
/* 0CEAE8 800CDEE8 3C0E8013 */ lui $t6, %hi(D_8012CDE0) # $t6, 0x8013
/* 0CEAEC 800CDEEC 25CECDE0 */ addiu $t6, %lo(D_8012CDE0) # addiu $t6, $t6, -0x3220
/* 0CEAE8 800CDEE8 3C0E8013 */ lui $t6, %hi(__osPfsPifRam) # $t6, 0x8013
/* 0CEAEC 800CDEEC 25CECDE0 */ addiu $t6, %lo(__osPfsPifRam) # addiu $t6, $t6, -0x3220
/* 0CEAF0 800CDEF0 AFBF0014 */ sw $ra, 0x14($sp)
/* 0CEAF4 800CDEF4 AFA40048 */ sw $a0, 0x48($sp)
/* 0CEAF8 800CDEF8 AFA5004C */ sw $a1, 0x4c($sp)
@@ -6,8 +6,8 @@ glabel __osPfsGetStatus
/* 0CF9E4 800CEDE4 AFA00034 */ sw $zero, 0x34($sp)
/* 0CF9E8 800CEDE8 0C03350C */ jal __osPfsRequestData
/* 0CF9EC 800CEDEC 00002025 */ move $a0, $zero
/* 0CF9F0 800CEDF0 3C058013 */ lui $a1, %hi(D_8012CDE0) # $a1, 0x8013
/* 0CF9F4 800CEDF4 24A5CDE0 */ addiu $a1, %lo(D_8012CDE0) # addiu $a1, $a1, -0x3220
/* 0CF9F0 800CEDF0 3C058013 */ lui $a1, %hi(__osPfsPifRam) # $a1, 0x8013
/* 0CF9F4 800CEDF4 24A5CDE0 */ addiu $a1, %lo(__osPfsPifRam) # addiu $a1, $a1, -0x3220
/* 0CF9F8 800CEDF8 0C0335B0 */ jal __osSiRawStartDma
/* 0CF9FC 800CEDFC 24040001 */ li $a0, 1
/* 0CFA00 800CEE00 AFA20034 */ sw $v0, 0x34($sp)
@@ -15,8 +15,8 @@ glabel __osPfsGetStatus
/* 0CFA08 800CEE08 27A50030 */ addiu $a1, $sp, 0x30
/* 0CFA0C 800CEE0C 0C0322EC */ jal osRecvMesg
/* 0CFA10 800CEE10 24060001 */ li $a2, 1
/* 0CFA14 800CEE14 3C058013 */ lui $a1, %hi(D_8012CDE0) # $a1, 0x8013
/* 0CFA18 800CEE18 24A5CDE0 */ addiu $a1, %lo(D_8012CDE0) # addiu $a1, $a1, -0x3220
/* 0CFA14 800CEE14 3C058013 */ lui $a1, %hi(__osPfsPifRam) # $a1, 0x8013
/* 0CFA18 800CEE18 24A5CDE0 */ addiu $a1, %lo(__osPfsPifRam) # addiu $a1, $a1, -0x3220
/* 0CFA1C 800CEE1C 0C0335B0 */ jal __osSiRawStartDma
/* 0CFA20 800CEE20 00002025 */ move $a0, $zero
/* 0CFA24 800CEE24 AFA20034 */ sw $v0, 0x34($sp)
+28 -1
View File
@@ -3,7 +3,34 @@
#include "types.h"
#include "macros.h"
#include "libultra_internal.h"
#include "controller.h"
extern OSPifRam __osPfsPifRam; //__osPfsPifRam
extern u8 D_8012CD90; //__osContLastCmd
extern u8 __osMaxControllers;//__osMaxControllers
GLOBAL_ASM("lib/asm/non_matchings/unknown_0CDE90/osPfsIsPlug.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0CDE90/__osPfsRequestData.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0CDE90/__osPfsGetInitData.s")
void __osPfsGetInitData(u8 *pattern, OSContStatus *data)
{
u8 *ptr;
__OSContRequesFormat requestformat;
int i;
u8 bits;
bits = 0;
ptr = (u8 *)&__osPfsPifRam;
for (i = 0; i < __osMaxControllers; i++, ptr += sizeof(__OSContRequesFormat))
{
requestformat = *(__OSContRequesFormat *)ptr;
data->errno = CHNL_ERR(requestformat);
if (data->errno == 0)
{
data->type = (requestformat.typel << 8) | (requestformat.typeh);
data->status = requestformat.status;
bits |= 1 << i;
}
data++;
}
*pattern = bits;
}
+2 -2
View File
@@ -2814,10 +2814,10 @@ D_8012CCD0 = 0x8012CCD0;
D_8012CD50 = 0x8012CD50;
D_8012CD8C = 0x8012CD8C;
D_8012CD90 = 0x8012CD90;
D_8012CD91 = 0x8012CD91;
__osMaxControllers = 0x8012CD91;
D_8012CDB8 = 0x8012CDB8;
D_8012CDD0 = 0x8012CDD0;
D_8012CDE0 = 0x8012CDE0;
__osPfsPifRam = 0x8012CDE0;
D_8012CE1C = 0x8012CE1C;
D_8012CE20 = 0x8012CE20;
D_8012CE28 = 0x8012CE28;