From 52f473c94febcb051480f7235ea82c7aa7567e4a Mon Sep 17 00:00:00 2001 From: Ryan Myers Date: Thu, 30 Sep 2021 10:52:10 -0400 Subject: [PATCH] Define names for the undefined_syms.txt where possible --- .../unknown_0255E0/func_80024D54.s | 4 +- .../unknown_032760/func_8003B4BC.s | 4 +- lib/asm/exception/__osDispatchThread.s | 4 +- lib/asm/exception/__osEnqueueAndYield.s | 4 +- lib/asm/exception/__osException.s | 32 ++++----- .../unknown_0CA530/osSetIntMask.s | 8 +-- .../unknown_0CCF90/osInitialize.s | 12 ++-- .../unknown_0CE200/__osSiRawStartDma.s | 8 +-- .../unknown_0D3020/__osDpDeviceBusy.s | 4 +- .../unknown_0D3020/__osSiDeviceBusy.s | 4 +- .../unknown_0D3020/__osSpDeviceBusy.s | 4 +- .../unknown_0D3020/__osSpRawStartDma.s | 12 ++-- .../unknown_0D3020/__osSpSetPc.s | 4 +- .../unknown_0D3020/__osViSwapContext.s | 44 ++++++------- .../unknown_0D3020/osEPiRawWriteIo.s | 8 +-- .../non_matchings/unknown_0D3160/__osViInit.s | 8 +-- .../unknown_0D4270/__osAiDeviceBusy.s | 4 +- .../unknown_0D5390/osPiRawWriteIo.s | 8 +-- lib/src/os/unknown_0CE200.c | 2 +- lib/src/unknown_0D3020.c | 4 +- src/camera.c | 3 +- src/camera.h | 4 -- undefined_syms.txt | 66 ++++++++----------- 23 files changed, 120 insertions(+), 135 deletions(-) diff --git a/asm/non_matchings/unknown_0255E0/func_80024D54.s b/asm/non_matchings/unknown_0255E0/func_80024D54.s index a53579c5..6174d799 100644 --- a/asm/non_matchings/unknown_0255E0/func_80024D54.s +++ b/asm/non_matchings/unknown_0255E0/func_80024D54.s @@ -159,11 +159,11 @@ glabel func_80024D54 /* 025BA0 80024FA0 A3A00083 */ sb $zero, 0x83($sp) /* 025BA4 80024FA4 304B0004 */ andi $t3, $v0, 4 /* 025BA8 80024FA8 11600003 */ beqz $t3, .L80024FB8 -/* 025BAC 80024FAC 3C0FA000 */ lui $t7, %hi(D_A0000200) # $t7, 0xa000 +/* 025BAC 80024FAC 3C0FA000 */ lui $t7, %hi(THREAD_S6) # $t7, 0xa000 /* 025BB0 80024FB0 240C0001 */ li $t4, 1 /* 025BB4 80024FB4 A3AC0083 */ sb $t4, 0x83($sp) .L80024FB8: -/* 025BB8 80024FB8 8DED0200 */ lw $t5, %lo(D_A0000200)($t7) +/* 025BB8 80024FB8 8DED0200 */ lw $t5, %lo(THREAD_S6)($t7) /* 025BBC 80024FBC 3C01AC29 */ lui $at, 0xac29 /* 025BC0 80024FC0 11A10002 */ beq $t5, $at, .L80024FCC /* 025BC4 80024FC4 240E0001 */ li $t6, 1 diff --git a/asm/non_matchings/unknown_032760/func_8003B4BC.s b/asm/non_matchings/unknown_032760/func_8003B4BC.s index 02afdf05..5a63d62f 100644 --- a/asm/non_matchings/unknown_032760/func_8003B4BC.s +++ b/asm/non_matchings/unknown_032760/func_8003B4BC.s @@ -23,8 +23,8 @@ glabel func_8003B4BC /* 03C0FC 8003B4FC 46283282 */ mul.d $f10, $f6, $f8 /* 03C100 8003B500 462050A0 */ cvt.s.d $f2, $f10 .L8003B504: -/* 03C104 8003B504 3C18A000 */ lui $t8, %hi(D_A0000284) # $t8, 0xa000 -/* 03C108 8003B508 8F190284 */ lw $t9, %lo(D_A0000284)($t8) +/* 03C104 8003B504 3C18A000 */ lui $t8, %hi(THREAD_PC) # $t8, 0xa000 +/* 03C108 8003B508 8F190284 */ lw $t9, %lo(THREAD_PC)($t8) /* 03C10C 8003B50C 3C01240B */ lui $at, (0x240B17D7 >> 16) # lui $at, 0x240b /* 03C110 8003B510 342117D7 */ ori $at, (0x240B17D7 & 0xFFFF) # ori $at, $at, 0x17d7 /* 03C114 8003B514 13210002 */ beq $t9, $at, .L8003B520 diff --git a/lib/asm/exception/__osDispatchThread.s b/lib/asm/exception/__osDispatchThread.s index fe45b6bb..72943148 100644 --- a/lib/asm/exception/__osDispatchThread.s +++ b/lib/asm/exception/__osDispatchThread.s @@ -87,8 +87,8 @@ glabel __osDispatchThread /* 0D4174 800D3574 275A94D0 */ addiu $k0, %lo(D_800E94D0) # addiu $k0, $k0, -0x6b30 /* 0D4178 800D3578 037AD821 */ addu $k1, $k1, $k0 /* 0D417C 800D357C 977B0000 */ lhu $k1, ($k1) -/* 0D4180 800D3580 3C1AA430 */ lui $k0, %hi(D_A430000C) # $k0, 0xa430 -/* 0D4184 800D3584 275A000C */ addiu $k0, %lo(D_A430000C) # addiu $k0, $k0, 0xc +/* 0D4180 800D3580 3C1AA430 */ lui $k0, %hi(MI_INTR_MASK_REG) # $k0, 0xa430 +/* 0D4184 800D3584 275A000C */ addiu $k0, %lo(MI_INTR_MASK_REG) # addiu $k0, $k0, 0xc /* 0D4188 800D3588 AF5B0000 */ sw $k1, ($k0) /* 0D418C 800D358C 00000000 */ nop /* 0D4190 800D3590 00000000 */ nop diff --git a/lib/asm/exception/__osEnqueueAndYield.s b/lib/asm/exception/__osEnqueueAndYield.s index 38b921ee..3a5bef63 100644 --- a/lib/asm/exception/__osEnqueueAndYield.s +++ b/lib/asm/exception/__osEnqueueAndYield.s @@ -45,8 +45,8 @@ glabel __osEnqueueAndYield /* 0D3F74 800D3374 0369D825 */ or $k1, $k1, $t1 /* 0D3F78 800D3378 ACBB0118 */ sw $k1, 0x118($a1) .L800D337C: -/* 0D3F7C 800D337C 3C1BA430 */ lui $k1, %hi(D_A430000C) # $k1, 0xa430 -/* 0D3F80 800D3380 8F7B000C */ lw $k1, %lo(D_A430000C)($k1) +/* 0D3F7C 800D337C 3C1BA430 */ lui $k1, %hi(MI_INTR_MASK_REG) # $k1, 0xa430 +/* 0D3F80 800D3380 8F7B000C */ lw $k1, %lo(MI_INTR_MASK_REG)($k1) /* 0D3F84 800D3384 1360000B */ beqz $k1, .L800D33B4 /* 0D3F88 800D3388 00000000 */ nop /* 0D3F8C 800D338C 3C1A800E */ lui $k0, %hi(__OSGlobalIntMask) # $k0, 0x800e diff --git a/lib/asm/exception/__osException.s b/lib/asm/exception/__osException.s index 12038ec8..753995fb 100644 --- a/lib/asm/exception/__osException.s +++ b/lib/asm/exception/__osException.s @@ -95,8 +95,8 @@ glabel __osException /* 0D39D0 800D2DD0 0369D825 */ or $k1, $k1, $t1 /* 0D39D4 800D2DD4 AF5B0118 */ sw $k1, 0x118($k0) .L800D2DD8: -/* 0D39D8 800D2DD8 3C09A430 */ lui $t1, %hi(D_A430000C) # $t1, 0xa430 -/* 0D39DC 800D2DDC 8D29000C */ lw $t1, %lo(D_A430000C)($t1) +/* 0D39D8 800D2DD8 3C09A430 */ lui $t1, %hi(MI_INTR_MASK_REG) # $t1, 0xa430 +/* 0D39DC 800D2DDC 8D29000C */ lw $t1, %lo(MI_INTR_MASK_REG)($t1) /* 0D39E0 800D2DE0 1120000B */ beqz $t1, .L800D2E10 /* 0D39E4 800D2DE4 00000000 */ nop /* 0D39E8 800D2DE8 3C08800E */ lui $t0, %hi(__OSGlobalIntMask) # $t0, 0x800e @@ -211,21 +211,21 @@ glabel __osException /* 0D3B74 800D2F74 3C08800E */ lui $t0, %hi(__OSGlobalIntMask) # $t0, 0x800e /* 0D3B78 800D2F78 250838AC */ addiu $t0, %lo(__OSGlobalIntMask) # addiu $t0, $t0, 0x38ac /* 0D3B7C 800D2F7C 8D080000 */ lw $t0, ($t0) -/* 0D3B80 800D2F80 3C11A430 */ lui $s1, %hi(D_A4300008) # $s1, 0xa430 -/* 0D3B84 800D2F84 8E310008 */ lw $s1, %lo(D_A4300008)($s1) +/* 0D3B80 800D2F80 3C11A430 */ lui $s1, %hi(MI_INTR_REG) # $s1, 0xa430 +/* 0D3B84 800D2F84 8E310008 */ lw $s1, %lo(MI_INTR_REG)($s1) /* 0D3B88 800D2F88 00084402 */ srl $t0, $t0, 0x10 /* 0D3B8C 800D2F8C 02288824 */ and $s1, $s1, $t0 /* 0D3B90 800D2F90 32290001 */ andi $t1, $s1, 1 /* 0D3B94 800D2F94 11200013 */ beqz $t1, .L800D2FE4 /* 0D3B98 800D2F98 00000000 */ nop -/* 0D3B9C 800D2F9C 3C0CA404 */ lui $t4, %hi(D_A4040010) # $t4, 0xa404 -/* 0D3BA0 800D2FA0 8D8C0010 */ lw $t4, %lo(D_A4040010)($t4) +/* 0D3B9C 800D2F9C 3C0CA404 */ lui $t4, %hi(SP_STATUS_REG) # $t4, 0xa404 +/* 0D3BA0 800D2FA0 8D8C0010 */ lw $t4, %lo(SP_STATUS_REG)($t4) /* 0D3BA4 800D2FA4 24090008 */ li $t1, 8 -/* 0D3BA8 800D2FA8 3C01A404 */ lui $at, %hi(D_A4040010) # $at, 0xa404 +/* 0D3BA8 800D2FA8 3C01A404 */ lui $at, %hi(SP_STATUS_REG) # $at, 0xa404 /* 0D3BAC 800D2FAC 318C0300 */ andi $t4, $t4, 0x300 /* 0D3BB0 800D2FB0 3231003E */ andi $s1, $s1, 0x3e /* 0D3BB4 800D2FB4 11800007 */ beqz $t4, .L800D2FD4 -/* 0D3BB8 800D2FB8 AC290010 */ sw $t1, %lo(D_A4040010)($at) +/* 0D3BB8 800D2FB8 AC290010 */ sw $t1, %lo(SP_STATUS_REG)($at) /* 0D3BBC 800D2FBC 0C034C79 */ jal send_mesg /* 0D3BC0 800D2FC0 24040020 */ li $a0, 32 /* 0D3BC4 800D2FC4 12200038 */ beqz $s1, .L800D30A8 @@ -240,9 +240,9 @@ glabel __osException .L800D2FE4: /* 0D3BE4 800D2FE4 32290008 */ andi $t1, $s1, 8 /* 0D3BE8 800D2FE8 11200007 */ beqz $t1, .L800D3008 -/* 0D3BEC 800D2FEC 3C01A440 */ lui $at, %hi(D_A4400010) # $at, 0xa440 +/* 0D3BEC 800D2FEC 3C01A440 */ lui $at, %hi(VI_CURRENT_REG) # $at, 0xa440 /* 0D3BF0 800D2FF0 32310037 */ andi $s1, $s1, 0x37 -/* 0D3BF4 800D2FF4 AC200010 */ sw $zero, %lo(D_A4400010)($at) +/* 0D3BF4 800D2FF4 AC200010 */ sw $zero, %lo(VI_CURRENT_REG)($at) /* 0D3BF8 800D2FF8 0C034C79 */ jal send_mesg /* 0D3BFC 800D2FFC 24040038 */ li $a0, 56 /* 0D3C00 800D3000 12200029 */ beqz $s1, .L800D30A8 @@ -252,9 +252,9 @@ glabel __osException /* 0D3C0C 800D300C 11200009 */ beqz $t1, .L800D3034 /* 0D3C10 800D3010 00000000 */ nop /* 0D3C14 800D3014 24090001 */ li $t1, 1 -/* 0D3C18 800D3018 3C01A450 */ lui $at, %hi(D_A450000C) # $at, 0xa450 +/* 0D3C18 800D3018 3C01A450 */ lui $at, %hi(AI_STATUS_REG) # $at, 0xa450 /* 0D3C1C 800D301C 3231003B */ andi $s1, $s1, 0x3b -/* 0D3C20 800D3020 AC29000C */ sw $t1, %lo(D_A450000C)($at) +/* 0D3C20 800D3020 AC29000C */ sw $t1, %lo(AI_STATUS_REG)($at) /* 0D3C24 800D3024 0C034C79 */ jal send_mesg /* 0D3C28 800D3028 24040030 */ li $a0, 48 /* 0D3C2C 800D302C 1220001E */ beqz $s1, .L800D30A8 @@ -262,9 +262,9 @@ glabel __osException .L800D3034: /* 0D3C34 800D3034 32290002 */ andi $t1, $s1, 2 /* 0D3C38 800D3038 11200007 */ beqz $t1, .L800D3058 -/* 0D3C3C 800D303C 3C01A480 */ lui $at, %hi(D_A4800018) # $at, 0xa480 +/* 0D3C3C 800D303C 3C01A480 */ lui $at, %hi(SI_STATUS_REG) # $at, 0xa480 /* 0D3C40 800D3040 3231003D */ andi $s1, $s1, 0x3d -/* 0D3C44 800D3044 AC200018 */ sw $zero, %lo(D_A4800018)($at) +/* 0D3C44 800D3044 AC200018 */ sw $zero, %lo(SI_STATUS_REG)($at) /* 0D3C48 800D3048 0C034C79 */ jal send_mesg /* 0D3C4C 800D304C 24040028 */ li $a0, 40 /* 0D3C50 800D3050 12200015 */ beqz $s1, .L800D30A8 @@ -274,9 +274,9 @@ glabel __osException /* 0D3C5C 800D305C 11200009 */ beqz $t1, .L800D3084 /* 0D3C60 800D3060 00000000 */ nop /* 0D3C64 800D3064 24090002 */ li $t1, 2 -/* 0D3C68 800D3068 3C01A460 */ lui $at, %hi(D_A4600010) # $at, 0xa460 +/* 0D3C68 800D3068 3C01A460 */ lui $at, %hi(PI_STATUS_REG) # $at, 0xa460 /* 0D3C6C 800D306C 3231002F */ andi $s1, $s1, 0x2f -/* 0D3C70 800D3070 AC290010 */ sw $t1, %lo(D_A4600010)($at) +/* 0D3C70 800D3070 AC290010 */ sw $t1, %lo(PI_STATUS_REG)($at) /* 0D3C74 800D3074 0C034C79 */ jal send_mesg /* 0D3C78 800D3078 24040040 */ li $a0, 64 /* 0D3C7C 800D307C 1220000A */ beqz $s1, .L800D30A8 diff --git a/lib/asm/non_matchings/unknown_0CA530/osSetIntMask.s b/lib/asm/non_matchings/unknown_0CA530/osSetIntMask.s index ec4e2972..80b4b75b 100644 --- a/lib/asm/non_matchings/unknown_0CA530/osSetIntMask.s +++ b/lib/asm/non_matchings/unknown_0CA530/osSetIntMask.s @@ -8,8 +8,8 @@ glabel osSetIntMask /* 0CA648 800C9A48 01614026 */ xor $t0, $t3, $at /* 0CA64C 800C9A4C 3108FF00 */ andi $t0, $t0, 0xff00 /* 0CA650 800C9A50 00481025 */ or $v0, $v0, $t0 -/* 0CA654 800C9A54 3C0AA430 */ lui $t2, %hi(D_A430000C) # $t2, 0xa430 -/* 0CA658 800C9A58 8D4A000C */ lw $t2, %lo(D_A430000C)($t2) +/* 0CA654 800C9A54 3C0AA430 */ lui $t2, %hi(MI_INTR_MASK_REG) # $t2, 0xa430 +/* 0CA658 800C9A58 8D4A000C */ lw $t2, %lo(MI_INTR_MASK_REG)($t2) /* 0CA65C 800C9A5C 11400005 */ beqz $t2, .L800C9A74 /* 0CA660 800C9A60 000B4C02 */ srl $t1, $t3, 0x10 /* 0CA664 800C9A64 2401FFFF */ li $at, -1 @@ -26,8 +26,8 @@ glabel osSetIntMask /* 0CA68C 800C9A8C 3C0A800F */ lui $t2, %hi(D_800E94D0) # $t2, 0x800f /* 0CA690 800C9A90 01485021 */ addu $t2, $t2, $t0 /* 0CA694 800C9A94 954A94D0 */ lhu $t2, %lo(D_800E94D0)($t2) -/* 0CA698 800C9A98 3C01A430 */ lui $at, %hi(D_A430000C) # $at, 0xa430 -/* 0CA69C 800C9A9C AC2A000C */ sw $t2, %lo(D_A430000C)($at) +/* 0CA698 800C9A98 3C01A430 */ lui $at, %hi(MI_INTR_MASK_REG) # $at, 0xa430 +/* 0CA69C 800C9A9C AC2A000C */ sw $t2, %lo(MI_INTR_MASK_REG)($at) /* 0CA6A0 800C9AA0 3088FF01 */ andi $t0, $a0, 0xff01 /* 0CA6A4 800C9AA4 3169FF00 */ andi $t1, $t3, 0xff00 /* 0CA6A8 800C9AA8 01094024 */ and $t0, $t0, $t1 diff --git a/lib/asm/non_matchings/unknown_0CCF90/osInitialize.s b/lib/asm/non_matchings/unknown_0CCF90/osInitialize.s index a422c429..b53100c1 100644 --- a/lib/asm/non_matchings/unknown_0CCF90/osInitialize.s +++ b/lib/asm/non_matchings/unknown_0CCF90/osInitialize.s @@ -140,22 +140,22 @@ glabel osInitialize /* 0CD3B4 800CC7B4 0C034138 */ jal bzero /* 0CD3B8 800CC7B8 24050040 */ li $a1, 64 .L800CC7BC: -/* 0CD3BC 800CC7BC 3C0DA460 */ lui $t5, %hi(D_A4600010) # $t5, 0xa460 -/* 0CD3C0 800CC7C0 8DAC0010 */ lw $t4, %lo(D_A4600010)($t5) +/* 0CD3BC 800CC7BC 3C0DA460 */ lui $t5, %hi(PI_STATUS_REG) # $t5, 0xa460 +/* 0CD3C0 800CC7C0 8DAC0010 */ lw $t4, %lo(PI_STATUS_REG)($t5) /* 0CD3C4 800CC7C4 318F0003 */ andi $t7, $t4, 3 /* 0CD3C8 800CC7C8 11E00008 */ beqz $t7, .L800CC7EC /* 0CD3CC 800CC7CC AFAC0030 */ sw $t4, 0x30($sp) .L800CC7D0: -/* 0CD3D0 800CC7D0 3C0EA460 */ lui $t6, %hi(D_A4600010) # $t6, 0xa460 -/* 0CD3D4 800CC7D4 8DD80010 */ lw $t8, %lo(D_A4600010)($t6) +/* 0CD3D0 800CC7D0 3C0EA460 */ lui $t6, %hi(PI_STATUS_REG) # $t6, 0xa460 +/* 0CD3D4 800CC7D4 8DD80010 */ lw $t8, %lo(PI_STATUS_REG)($t6) /* 0CD3D8 800CC7D8 AFB80030 */ sw $t8, 0x30($sp) /* 0CD3DC 800CC7DC 8FA80030 */ lw $t0, 0x30($sp) /* 0CD3E0 800CC7E0 31190003 */ andi $t9, $t0, 3 /* 0CD3E4 800CC7E4 1720FFFA */ bnez $t9, .L800CC7D0 /* 0CD3E8 800CC7E8 00000000 */ nop .L800CC7EC: -/* 0CD3EC 800CC7EC 3C0AA500 */ lui $t2, %hi(D_A5000508) # $t2, 0xa500 -/* 0CD3F0 800CC7F0 8D4B0508 */ lw $t3, %lo(D_A5000508)($t2) +/* 0CD3EC 800CC7EC 3C0AA500 */ lui $t2, %hi(LEO_STATUS) # $t2, 0xa500 +/* 0CD3F0 800CC7F0 8D4B0508 */ lw $t3, %lo(LEO_STATUS)($t2) /* 0CD3F4 800CC7F4 3169FFFF */ andi $t1, $t3, 0xffff /* 0CD3F8 800CC7F8 1520000A */ bnez $t1, .L800CC824 /* 0CD3FC 800CC7FC AFAB0034 */ sw $t3, 0x34($sp) diff --git a/lib/asm/non_matchings/unknown_0CE200/__osSiRawStartDma.s b/lib/asm/non_matchings/unknown_0CE200/__osSiRawStartDma.s index 843c6d0c..c022a219 100644 --- a/lib/asm/non_matchings/unknown_0CE200/__osSiRawStartDma.s +++ b/lib/asm/non_matchings/unknown_0CE200/__osSiRawStartDma.s @@ -26,14 +26,14 @@ glabel __osSiRawStartDma /* 0CE318 800CD718 00000000 */ nop /* 0CE31C 800CD71C 3C191FC0 */ lui $t9, (0x1FC007C0 >> 16) # lui $t9, 0x1fc0 /* 0CE320 800CD720 373907C0 */ ori $t9, (0x1FC007C0 & 0xFFFF) # ori $t9, $t9, 0x7c0 -/* 0CE324 800CD724 3C08A480 */ lui $t0, %hi(D_A4800004) # $t0, 0xa480 +/* 0CE324 800CD724 3C08A480 */ lui $t0, %hi(SI_PIF_ADDR_RD64B_REG) # $t0, 0xa480 /* 0CE328 800CD728 10000005 */ b .L800CD740 -/* 0CE32C 800CD72C AD190004 */ sw $t9, %lo(D_A4800004)($t0) +/* 0CE32C 800CD72C AD190004 */ sw $t9, %lo(SI_PIF_ADDR_RD64B_REG)($t0) .L800CD730: /* 0CE330 800CD730 3C091FC0 */ lui $t1, (0x1FC007C0 >> 16) # lui $t1, 0x1fc0 /* 0CE334 800CD734 352907C0 */ ori $t1, (0x1FC007C0 & 0xFFFF) # ori $t1, $t1, 0x7c0 -/* 0CE338 800CD738 3C0AA480 */ lui $t2, %hi(D_A4800010) # $t2, 0xa480 -/* 0CE33C 800CD73C AD490010 */ sw $t1, %lo(D_A4800010)($t2) +/* 0CE338 800CD738 3C0AA480 */ lui $t2, %hi(SI_PIF_ADDR_WR64B_REG) # $t2, 0xa480 +/* 0CE33C 800CD73C AD490010 */ sw $t1, %lo(SI_PIF_ADDR_WR64B_REG)($t2) .L800CD740: /* 0CE340 800CD740 8FAB0018 */ lw $t3, 0x18($sp) /* 0CE344 800CD744 15600004 */ bnez $t3, .L800CD758 diff --git a/lib/asm/non_matchings/unknown_0D3020/__osDpDeviceBusy.s b/lib/asm/non_matchings/unknown_0D3020/__osDpDeviceBusy.s index 1dce4002..f582e5ce 100644 --- a/lib/asm/non_matchings/unknown_0D3020/__osDpDeviceBusy.s +++ b/lib/asm/non_matchings/unknown_0D3020/__osDpDeviceBusy.s @@ -1,6 +1,6 @@ glabel __osDpDeviceBusy -/* 0D6C50 800D6050 3C0EA410 */ lui $t6, %hi(D_A410000C) # $t6, 0xa410 -/* 0D6C54 800D6054 8DC4000C */ lw $a0, %lo(D_A410000C)($t6) +/* 0D6C50 800D6050 3C0EA410 */ lui $t6, %hi(DPC_STATUS_REG) # $t6, 0xa410 +/* 0D6C54 800D6054 8DC4000C */ lw $a0, %lo(DPC_STATUS_REG)($t6) /* 0D6C58 800D6058 27BDFFF8 */ addiu $sp, $sp, -8 /* 0D6C5C 800D605C 308F0100 */ andi $t7, $a0, 0x100 /* 0D6C60 800D6060 11E00003 */ beqz $t7, .L800D6070 diff --git a/lib/asm/non_matchings/unknown_0D3020/__osSiDeviceBusy.s b/lib/asm/non_matchings/unknown_0D3020/__osSiDeviceBusy.s index 20774a0b..fc29f57b 100644 --- a/lib/asm/non_matchings/unknown_0D3020/__osSiDeviceBusy.s +++ b/lib/asm/non_matchings/unknown_0D3020/__osSiDeviceBusy.s @@ -1,6 +1,6 @@ glabel __osSiDeviceBusy -/* 0D5EC0 800D52C0 3C0EA480 */ lui $t6, %hi(D_A4800018) # $t6, 0xa480 -/* 0D5EC4 800D52C4 8DC40018 */ lw $a0, %lo(D_A4800018)($t6) +/* 0D5EC0 800D52C0 3C0EA480 */ lui $t6, %hi(SI_STATUS_REG) # $t6, 0xa480 +/* 0D5EC4 800D52C4 8DC40018 */ lw $a0, %lo(SI_STATUS_REG)($t6) /* 0D5EC8 800D52C8 27BDFFF8 */ addiu $sp, $sp, -8 /* 0D5ECC 800D52CC 308F0003 */ andi $t7, $a0, 3 /* 0D5ED0 800D52D0 11E00003 */ beqz $t7, .L800D52E0 diff --git a/lib/asm/non_matchings/unknown_0D3020/__osSpDeviceBusy.s b/lib/asm/non_matchings/unknown_0D3020/__osSpDeviceBusy.s index 758cbf11..a6148e0b 100644 --- a/lib/asm/non_matchings/unknown_0D3020/__osSpDeviceBusy.s +++ b/lib/asm/non_matchings/unknown_0D3020/__osSpDeviceBusy.s @@ -1,6 +1,6 @@ glabel __osSpDeviceBusy -/* 0D70D0 800D64D0 3C0EA404 */ lui $t6, %hi(D_A4040010) # $t6, 0xa404 -/* 0D70D4 800D64D4 8DC40010 */ lw $a0, %lo(D_A4040010)($t6) +/* 0D70D0 800D64D0 3C0EA404 */ lui $t6, %hi(SP_STATUS_REG) # $t6, 0xa404 +/* 0D70D4 800D64D4 8DC40010 */ lw $a0, %lo(SP_STATUS_REG)($t6) /* 0D70D8 800D64D8 27BDFFF8 */ addiu $sp, $sp, -8 /* 0D70DC 800D64DC 308F001C */ andi $t7, $a0, 0x1c /* 0D70E0 800D64E0 11E00003 */ beqz $t7, .L800D64F0 diff --git a/lib/asm/non_matchings/unknown_0D3020/__osSpRawStartDma.s b/lib/asm/non_matchings/unknown_0D3020/__osSpRawStartDma.s index 9dd2b4fd..33e5605a 100644 --- a/lib/asm/non_matchings/unknown_0D3020/__osSpRawStartDma.s +++ b/lib/asm/non_matchings/unknown_0D3020/__osSpRawStartDma.s @@ -16,21 +16,21 @@ glabel __osSpRawStartDma /* 0D7074 800D6474 ADEE0000 */ sw $t6, ($t7) /* 0D7078 800D6478 0C03233C */ jal osVirtualToPhysical /* 0D707C 800D647C 8FA40020 */ lw $a0, 0x20($sp) -/* 0D7080 800D6480 3C18A404 */ lui $t8, %hi(D_A4040004) # $t8, 0xa404 -/* 0D7084 800D6484 AF020004 */ sw $v0, %lo(D_A4040004)($t8) +/* 0D7080 800D6480 3C18A404 */ lui $t8, %hi(SP_DRAM_ADDR_REG) # $t8, 0xa404 +/* 0D7084 800D6484 AF020004 */ sw $v0, %lo(SP_DRAM_ADDR_REG)($t8) /* 0D7088 800D6488 8FB90018 */ lw $t9, 0x18($sp) /* 0D708C 800D648C 17200006 */ bnez $t9, .L800D64A8 /* 0D7090 800D6490 00000000 */ nop /* 0D7094 800D6494 8FA80024 */ lw $t0, 0x24($sp) -/* 0D7098 800D6498 3C0AA404 */ lui $t2, %hi(D_A404000C) # $t2, 0xa404 +/* 0D7098 800D6498 3C0AA404 */ lui $t2, %hi(SP_WR_LEN_REG) # $t2, 0xa404 /* 0D709C 800D649C 2509FFFF */ addiu $t1, $t0, -1 /* 0D70A0 800D64A0 10000005 */ b .L800D64B8 -/* 0D70A4 800D64A4 AD49000C */ sw $t1, %lo(D_A404000C)($t2) +/* 0D70A4 800D64A4 AD49000C */ sw $t1, %lo(SP_WR_LEN_REG)($t2) .L800D64A8: /* 0D70A8 800D64A8 8FAB0024 */ lw $t3, 0x24($sp) -/* 0D70AC 800D64AC 3C0DA404 */ lui $t5, %hi(D_A4040008) # $t5, 0xa404 +/* 0D70AC 800D64AC 3C0DA404 */ lui $t5, %hi(SP_RD_LEN_REG) # $t5, 0xa404 /* 0D70B0 800D64B0 256CFFFF */ addiu $t4, $t3, -1 -/* 0D70B4 800D64B4 ADAC0008 */ sw $t4, %lo(D_A4040008)($t5) +/* 0D70B4 800D64B4 ADAC0008 */ sw $t4, %lo(SP_RD_LEN_REG)($t5) .L800D64B8: /* 0D70B8 800D64B8 00001025 */ move $v0, $zero .L800D64BC: diff --git a/lib/asm/non_matchings/unknown_0D3020/__osSpSetPc.s b/lib/asm/non_matchings/unknown_0D3020/__osSpSetPc.s index 5dfa9740..21c1baff 100644 --- a/lib/asm/non_matchings/unknown_0D3020/__osSpSetPc.s +++ b/lib/asm/non_matchings/unknown_0D3020/__osSpSetPc.s @@ -1,6 +1,6 @@ glabel __osSpSetPc -/* 0D7000 800D6400 3C0EA404 */ lui $t6, %hi(D_A4040010) # $t6, 0xa404 -/* 0D7004 800D6404 8DC50010 */ lw $a1, %lo(D_A4040010)($t6) +/* 0D7000 800D6400 3C0EA404 */ lui $t6, %hi(SP_STATUS_REG) # $t6, 0xa404 +/* 0D7004 800D6404 8DC50010 */ lw $a1, %lo(SP_STATUS_REG)($t6) /* 0D7008 800D6408 27BDFFF8 */ addiu $sp, $sp, -8 /* 0D700C 800D640C 30AF0001 */ andi $t7, $a1, 1 /* 0D7010 800D6410 15E00003 */ bnez $t7, .L800D6420 diff --git a/lib/asm/non_matchings/unknown_0D3020/__osViSwapContext.s b/lib/asm/non_matchings/unknown_0D3020/__osViSwapContext.s index 85c395bf..81d5c099 100644 --- a/lib/asm/non_matchings/unknown_0D3020/__osViSwapContext.s +++ b/lib/asm/non_matchings/unknown_0D3020/__osViSwapContext.s @@ -6,9 +6,9 @@ glabel __osViSwapContext /* 0D6CA0 800D60A0 AFB00018 */ sw $s0, 0x18($sp) /* 0D6CA4 800D60A4 AFA00030 */ sw $zero, 0x30($sp) /* 0D6CA8 800D60A8 3C11800E */ lui $s1, %hi(__osViNext) # $s1, 0x800e -/* 0D6CAC 800D60AC 3C0EA440 */ lui $t6, %hi(D_A4400010) # $t6, 0xa440 +/* 0D6CAC 800D60AC 3C0EA440 */ lui $t6, %hi(VI_CURRENT_REG) # $t6, 0xa440 /* 0D6CB0 800D60B0 8E314874 */ lw $s1, %lo(__osViNext)($s1) -/* 0D6CB4 800D60B4 8DCF0010 */ lw $t7, %lo(D_A4400010)($t6) +/* 0D6CB4 800D60B4 8DCF0010 */ lw $t7, %lo(VI_CURRENT_REG)($t6) /* 0D6CB8 800D60B8 8E300008 */ lw $s0, 8($s1) /* 0D6CBC 800D60BC 31F80001 */ andi $t8, $t7, 1 /* 0D6CC0 800D60C0 AFB80030 */ sw $t8, 0x30($sp) @@ -150,43 +150,43 @@ glabel __osViSwapContext /* 0D6EB8 800D62B8 AFA2003C */ sw $v0, 0x3c($sp) .L800D62BC: /* 0D6EBC 800D62BC 8FAA003C */ lw $t2, 0x3c($sp) -/* 0D6EC0 800D62C0 3C0BA440 */ lui $t3, %hi(D_A4400020) # $t3, 0xa440 -/* 0D6EC4 800D62C4 3C08A440 */ lui $t0, %hi(D_A440002C) # $t0, 0xa440 -/* 0D6EC8 800D62C8 AD6A0004 */ sw $t2, %lo(D_A4400004)($t3) +/* 0D6EC0 800D62C0 3C0BA440 */ lui $t3, %hi(VI_LEAP_REG) # $t3, 0xa440 +/* 0D6EC4 800D62C4 3C08A440 */ lui $t0, %hi(VI_V_BURST_REG) # $t0, 0xa440 +/* 0D6EC8 800D62C8 AD6A0004 */ sw $t2, %lo(VI_ORIGIN_REG)($t3) /* 0D6ECC 800D62CC 8E0C0008 */ lw $t4, 8($s0) -/* 0D6ED0 800D62D0 3C0FA440 */ lui $t7, %hi(D_A4400014) # $t7, 0xa440 -/* 0D6ED4 800D62D4 3C18A440 */ lui $t8, %hi(D_A4400018) # $t8, 0xa440 -/* 0D6ED8 800D62D8 AD0C0008 */ sw $t4, %lo(D_A4400008)($t0) +/* 0D6ED0 800D62D0 3C0FA440 */ lui $t7, %hi(VI_BURST_REG) # $t7, 0xa440 +/* 0D6ED4 800D62D4 3C18A440 */ lui $t8, %hi(VI_V_SYNC_REG) # $t8, 0xa440 +/* 0D6ED8 800D62D8 AD0C0008 */ sw $t4, %lo(VI_WIDTH_REG)($t0) /* 0D6EDC 800D62DC 8E0D000C */ lw $t5, 0xc($s0) -/* 0D6EE0 800D62E0 3C09A440 */ lui $t1, %hi(D_A440001C) # $t1, 0xa440 +/* 0D6EE0 800D62E0 3C09A440 */ lui $t1, %hi(VI_H_SYNC_REG) # $t1, 0xa440 /* 0D6EE4 800D62E4 3C01800E */ lui $at, %hi(__osViNext) # $at, 0x800e -/* 0D6EE8 800D62E8 ADED0014 */ sw $t5, %lo(D_A4400014)($t7) +/* 0D6EE8 800D62E8 ADED0014 */ sw $t5, %lo(VI_BURST_REG)($t7) /* 0D6EEC 800D62EC 8E0E0010 */ lw $t6, 0x10($s0) -/* 0D6EF0 800D62F0 AF0E0018 */ sw $t6, %lo(D_A4400018)($t8) +/* 0D6EF0 800D62F0 AF0E0018 */ sw $t6, %lo(VI_V_SYNC_REG)($t8) /* 0D6EF4 800D62F4 8E190014 */ lw $t9, 0x14($s0) -/* 0D6EF8 800D62F8 AD39001C */ sw $t9, %lo(D_A440001C)($t1) +/* 0D6EF8 800D62F8 AD39001C */ sw $t9, %lo(VI_H_SYNC_REG)($t1) /* 0D6EFC 800D62FC 8E0A0018 */ lw $t2, 0x18($s0) -/* 0D6F00 800D6300 3C19A440 */ lui $t9, %hi(D_A440000C) # $t9, 0xa440 -/* 0D6F04 800D6304 AD6A0020 */ sw $t2, %lo(D_A4400020)($t3) +/* 0D6F00 800D6300 3C19A440 */ lui $t9, %hi(VI_INTR_REG) # $t9, 0xa440 +/* 0D6F04 800D6304 AD6A0020 */ sw $t2, %lo(VI_LEAP_REG)($t3) /* 0D6F08 800D6308 8FAC0038 */ lw $t4, 0x38($sp) -/* 0D6F0C 800D630C AD0C0024 */ sw $t4, %lo(D_A4400024)($t0) +/* 0D6F0C 800D630C AD0C0024 */ sw $t4, %lo(VI_H_START_REG)($t0) /* 0D6F10 800D6310 8FAD0030 */ lw $t5, 0x30($sp) /* 0D6F14 800D6314 000D7880 */ sll $t7, $t5, 2 /* 0D6F18 800D6318 01ED7821 */ addu $t7, $t7, $t5 /* 0D6F1C 800D631C 000F7880 */ sll $t7, $t7, 2 /* 0D6F20 800D6320 020F7021 */ addu $t6, $s0, $t7 /* 0D6F24 800D6324 8DD80030 */ lw $t8, 0x30($t6) -/* 0D6F28 800D6328 AF380028 */ sw $t8, %lo(D_A4400028)($t9) +/* 0D6F28 800D6328 AF380028 */ sw $t8, %lo(VI_V_START_REG)($t9) /* 0D6F2C 800D632C 8FA90030 */ lw $t1, 0x30($sp) /* 0D6F30 800D6330 00095080 */ sll $t2, $t1, 2 /* 0D6F34 800D6334 01495021 */ addu $t2, $t2, $t1 /* 0D6F38 800D6338 000A5080 */ sll $t2, $t2, 2 /* 0D6F3C 800D633C 020A5821 */ addu $t3, $s0, $t2 /* 0D6F40 800D6340 8D6C0034 */ lw $t4, 0x34($t3) -/* 0D6F44 800D6344 3C0AA440 */ lui $t2, %hi(D_A4400030) # $t2, 0xa440 -/* 0D6F48 800D6348 AD0C002C */ sw $t4, %lo(D_A440002C)($t0) +/* 0D6F44 800D6344 3C0AA440 */ lui $t2, %hi(VI_X_SCALE_REG) # $t2, 0xa440 +/* 0D6F48 800D6348 AD0C002C */ sw $t4, %lo(VI_V_BURST_REG)($t0) /* 0D6F4C 800D634C 8FAD0030 */ lw $t5, 0x30($sp) -/* 0D6F50 800D6350 3C0CA440 */ lui $t4, %hi(D_A4400034) # $t4, 0xa440 +/* 0D6F50 800D6350 3C0CA440 */ lui $t4, %hi(VI_Y_SCALE_REG) # $t4, 0xa440 /* 0D6F54 800D6354 000D7880 */ sll $t7, $t5, 2 /* 0D6F58 800D6358 01ED7821 */ addu $t7, $t7, $t5 /* 0D6F5C 800D635C 000F7880 */ sll $t7, $t7, 2 @@ -194,13 +194,13 @@ glabel __osViSwapContext /* 0D6F64 800D6364 8DD80038 */ lw $t8, 0x38($t6) /* 0D6F68 800D6368 3C0DA440 */ lui $t5, 0xa440 /* 0D6F6C 800D636C 3C0F800E */ lui $t7, %hi(__osViCurr) # $t7, 0x800e -/* 0D6F70 800D6370 AF38000C */ sw $t8, %lo(D_A440000C)($t9) +/* 0D6F70 800D6370 AF38000C */ sw $t8, %lo(VI_INTR_REG)($t9) /* 0D6F74 800D6374 8E290020 */ lw $t1, 0x20($s1) /* 0D6F78 800D6378 3C18800E */ lui $t8, %hi(__osViCurr) # $t8, 0x800e /* 0D6F7C 800D637C 3C0E800E */ lui $t6, %hi(__osViNext) # $t6, 0x800e -/* 0D6F80 800D6380 AD490030 */ sw $t1, %lo(D_A4400030)($t2) +/* 0D6F80 800D6380 AD490030 */ sw $t1, %lo(VI_X_SCALE_REG)($t2) /* 0D6F84 800D6384 8E2B002C */ lw $t3, 0x2c($s1) -/* 0D6F88 800D6388 AD8B0034 */ sw $t3, %lo(D_A4400034)($t4) +/* 0D6F88 800D6388 AD8B0034 */ sw $t3, %lo(VI_Y_SCALE_REG)($t4) /* 0D6F8C 800D638C 8E28000C */ lw $t0, 0xc($s1) /* 0D6F90 800D6390 ADA80000 */ sw $t0, ($t5) /* 0D6F94 800D6394 8DEF4870 */ lw $t7, %lo(__osViCurr)($t7) diff --git a/lib/asm/non_matchings/unknown_0D3020/osEPiRawWriteIo.s b/lib/asm/non_matchings/unknown_0D3020/osEPiRawWriteIo.s index 76e1a859..6fc35ae7 100644 --- a/lib/asm/non_matchings/unknown_0D3020/osEPiRawWriteIo.s +++ b/lib/asm/non_matchings/unknown_0D3020/osEPiRawWriteIo.s @@ -1,13 +1,13 @@ glabel osEPiRawWriteIo -/* 0D7160 800D6560 3C0EA460 */ lui $t6, %hi(D_A4600010) # $t6, 0xa460 -/* 0D7164 800D6564 8DC70010 */ lw $a3, %lo(D_A4600010)($t6) +/* 0D7160 800D6560 3C0EA460 */ lui $t6, %hi(PI_STATUS_REG) # $t6, 0xa460 +/* 0D7164 800D6564 8DC70010 */ lw $a3, %lo(PI_STATUS_REG)($t6) /* 0D7168 800D6568 27BDFFF8 */ addiu $sp, $sp, -8 /* 0D716C 800D656C 30EF0003 */ andi $t7, $a3, 3 /* 0D7170 800D6570 11E00006 */ beqz $t7, .L800D658C /* 0D7174 800D6574 00000000 */ nop .L800D6578: -/* 0D7178 800D6578 3C18A460 */ lui $t8, %hi(D_A4600010) # $t8, 0xa460 -/* 0D717C 800D657C 8F070010 */ lw $a3, %lo(D_A4600010)($t8) +/* 0D7178 800D6578 3C18A460 */ lui $t8, %hi(PI_STATUS_REG) # $t8, 0xa460 +/* 0D717C 800D657C 8F070010 */ lw $a3, %lo(PI_STATUS_REG)($t8) /* 0D7180 800D6580 30F90003 */ andi $t9, $a3, 3 /* 0D7184 800D6584 1720FFFC */ bnez $t9, .L800D6578 /* 0D7188 800D6588 00000000 */ nop diff --git a/lib/asm/non_matchings/unknown_0D3160/__osViInit.s b/lib/asm/non_matchings/unknown_0D3160/__osViInit.s index 30c05010..e2a221a7 100644 --- a/lib/asm/non_matchings/unknown_0D3160/__osViInit.s +++ b/lib/asm/non_matchings/unknown_0D3160/__osViInit.s @@ -65,17 +65,17 @@ glabel __osViInit /* 0D3800 800D2C00 3C0C800E */ lui $t4, %hi(__osViNext) # $t4, 0x800e /* 0D3804 800D2C04 A56A0000 */ sh $t2, ($t3) /* 0D3808 800D2C08 8D8C4874 */ lw $t4, %lo(__osViNext)($t4) -/* 0D380C 800D2C0C 3C18A440 */ lui $t8, %hi(D_A4400010) # $t8, 0xa440 +/* 0D380C 800D2C0C 3C18A440 */ lui $t8, %hi(VI_CURRENT_REG) # $t8, 0xa440 /* 0D3810 800D2C10 8D8D0008 */ lw $t5, 8($t4) /* 0D3814 800D2C14 8DAF0004 */ lw $t7, 4($t5) /* 0D3818 800D2C18 AD8F000C */ sw $t7, 0xc($t4) -/* 0D381C 800D2C1C 8F0E0010 */ lw $t6, %lo(D_A4400010)($t8) +/* 0D381C 800D2C1C 8F0E0010 */ lw $t6, %lo(VI_CURRENT_REG)($t8) /* 0D3820 800D2C20 2DC1000B */ sltiu $at, $t6, 0xb /* 0D3824 800D2C24 14200006 */ bnez $at, .L800D2C40 /* 0D3828 800D2C28 00000000 */ nop .L800D2C2C: -/* 0D382C 800D2C2C 3C19A440 */ lui $t9, %hi(D_A4400010) # $t9, 0xa440 -/* 0D3830 800D2C30 8F280010 */ lw $t0, %lo(D_A4400010)($t9) +/* 0D382C 800D2C2C 3C19A440 */ lui $t9, %hi(VI_CURRENT_REG) # $t9, 0xa440 +/* 0D3830 800D2C30 8F280010 */ lw $t0, %lo(VI_CURRENT_REG)($t9) /* 0D3834 800D2C34 2D01000B */ sltiu $at, $t0, 0xb /* 0D3838 800D2C38 1020FFFC */ beqz $at, .L800D2C2C /* 0D383C 800D2C3C 00000000 */ nop diff --git a/lib/asm/non_matchings/unknown_0D4270/__osAiDeviceBusy.s b/lib/asm/non_matchings/unknown_0D4270/__osAiDeviceBusy.s index 03bc2dbc..e6bb2478 100644 --- a/lib/asm/non_matchings/unknown_0D4270/__osAiDeviceBusy.s +++ b/lib/asm/non_matchings/unknown_0D4270/__osAiDeviceBusy.s @@ -1,6 +1,6 @@ glabel __osAiDeviceBusy -/* 0D4270 800D3670 3C0EA450 */ lui $t6, %hi(D_A450000C) # $t6, 0xa450 -/* 0D4274 800D3674 8DC4000C */ lw $a0, %lo(D_A450000C)($t6) +/* 0D4270 800D3670 3C0EA450 */ lui $t6, %hi(AI_STATUS_REG) # $t6, 0xa450 +/* 0D4274 800D3674 8DC4000C */ lw $a0, %lo(AI_STATUS_REG)($t6) /* 0D4278 800D3678 3C018000 */ lui $at, 0x8000 /* 0D427C 800D367C 27BDFFF8 */ addiu $sp, $sp, -8 /* 0D4280 800D3680 00817824 */ and $t7, $a0, $at diff --git a/lib/asm/non_matchings/unknown_0D5390/osPiRawWriteIo.s b/lib/asm/non_matchings/unknown_0D5390/osPiRawWriteIo.s index 1aa4ed67..283eccdb 100644 --- a/lib/asm/non_matchings/unknown_0D5390/osPiRawWriteIo.s +++ b/lib/asm/non_matchings/unknown_0D5390/osPiRawWriteIo.s @@ -1,13 +1,13 @@ glabel osPiRawWriteIo -/* 0D5390 800D4790 3C0EA460 */ lui $t6, %hi(D_A4600010) # $t6, 0xa460 -/* 0D5394 800D4794 8DC60010 */ lw $a2, %lo(D_A4600010)($t6) +/* 0D5390 800D4790 3C0EA460 */ lui $t6, %hi(PI_STATUS_REG) # $t6, 0xa460 +/* 0D5394 800D4794 8DC60010 */ lw $a2, %lo(PI_STATUS_REG)($t6) /* 0D5398 800D4798 27BDFFF8 */ addiu $sp, $sp, -8 /* 0D539C 800D479C 30CF0003 */ andi $t7, $a2, 3 /* 0D53A0 800D47A0 11E00006 */ beqz $t7, .L800D47BC /* 0D53A4 800D47A4 00000000 */ nop .L800D47A8: -/* 0D53A8 800D47A8 3C18A460 */ lui $t8, %hi(D_A4600010) # $t8, 0xa460 -/* 0D53AC 800D47AC 8F060010 */ lw $a2, %lo(D_A4600010)($t8) +/* 0D53A8 800D47A8 3C18A460 */ lui $t8, %hi(PI_STATUS_REG) # $t8, 0xa460 +/* 0D53AC 800D47AC 8F060010 */ lw $a2, %lo(PI_STATUS_REG)($t8) /* 0D53B0 800D47B0 30D90003 */ andi $t9, $a2, 3 /* 0D53B4 800D47B4 1720FFFC */ bnez $t9, .L800D47A8 /* 0D53B8 800D47B8 00000000 */ nop diff --git a/lib/src/os/unknown_0CE200.c b/lib/src/os/unknown_0CE200.c index 1027d2b3..ec79252a 100644 --- a/lib/src/os/unknown_0CE200.c +++ b/lib/src/os/unknown_0CE200.c @@ -25,7 +25,7 @@ u16 retrace; //Used in viMgrMain, but it's supposed to be static in that functio u16 D_8012D192; s32 D_8012D194[2]; s32 D_8012D1A0[16]; -s32 D_8012D1E0[2]; +s32 piAccessBuf[2]; //Should be static, but this works for now s32 piAccessQueue[6]; OSTimer D_8012D200; OSTime __osCurrentTime; diff --git a/lib/src/unknown_0D3020.c b/lib/src/unknown_0D3020.c index c410d68e..0dd6be28 100644 --- a/lib/src/unknown_0D3020.c +++ b/lib/src/unknown_0D3020.c @@ -7,11 +7,11 @@ #define PI_Q_BUF_LEN 1 extern u32 __osPiAccessQueueEnabled;//__osPiAccessQueueEnabled -extern OSMesg D_8012D1E0[PI_Q_BUF_LEN];//piAccessBuf +extern OSMesg piAccessBuf[PI_Q_BUF_LEN];//piAccessBuf extern OSMesgQueue piAccessQueue; //__osPiAccessQueue void __osPiCreateAccessQueue(void) { __osPiAccessQueueEnabled = 1; - osCreateMesgQueue(&piAccessQueue, D_8012D1E0, PI_Q_BUF_LEN); + osCreateMesgQueue(&piAccessQueue, piAccessBuf, PI_Q_BUF_LEN); osSendMesg(&piAccessQueue, NULL, OS_MESG_NOBLOCK); } diff --git a/src/camera.c b/src/camera.c index cc8aa85d..10e8d457 100644 --- a/src/camera.c +++ b/src/camera.c @@ -142,7 +142,6 @@ u8 D_80121150[16]; /******************************/ #ifdef NON_MATCHING -extern s32 D_A4600010; extern s32 D_B0000578; void func_80065EA0(void) { @@ -163,7 +162,7 @@ void func_80065EA0(void) { D_80120D18 = 0; D_80120D15 = 0; D_800DD060 = 0; - while (D_A4600010 & 3) { + while (IO_READ(PI_STATUS_REG) & 3) { } if ((D_B0000578 & 0xFFFF) != 0x8965) { D_800DD060 = 1; diff --git a/src/camera.h b/src/camera.h index 285bea05..c5303459 100644 --- a/src/camera.h +++ b/src/camera.h @@ -79,10 +79,6 @@ extern s32 D_800DD300; extern s16 gButtonMask; -extern s32 D_A4000000; - -extern s32 SP_IMEM; - //TODO: Figure out where these functions live: unknown_070110? void func_8006F870(Matrix, Matrix); //unknown_070110 void func_800705F8(s32, f32, f32, f32); //From unknown_070110 diff --git a/undefined_syms.txt b/undefined_syms.txt index 9cc15528..431780e9 100755 --- a/undefined_syms.txt +++ b/undefined_syms.txt @@ -4,44 +4,34 @@ osResetType = 0x8000030C; osCicId = 0x80000310; osAppNMIBuffer = 0x8000031C; -D_A0000200 = 0xA0000200; -D_A0000284 = 0xA0000284; -D_A4000000 = 0xA4000000; -SP_IMEM = 0xA4001000; -D_A4040004 = 0xA4040004; -D_A4040008 = 0xA4040008; -D_A404000C = 0xA404000C; -D_A4040010 = 0xA4040010; -D_A4100004 = 0xA4100004; -D_A410000C = 0xA410000C; -D_A4300008 = 0xA4300008; -D_A430000C = 0xA430000C; -D_A4400004 = 0xA4400004; -D_A4400008 = 0xA4400008; -D_A440000C = 0xA440000C; -D_A4400010 = 0xA4400010; -D_A4400014 = 0xA4400014; -D_A4400018 = 0xA4400018; -D_A440001C = 0xA440001C; -D_A4400020 = 0xA4400020; -D_A4400024 = 0xA4400024; -D_A4400028 = 0xA4400028; -D_A440002C = 0xA440002C; -D_A4400030 = 0xA4400030; -D_A4400034 = 0xA4400034; -D_A4500004 = 0xA4500004; -D_A4500008 = 0xA4500008; -D_A450000C = 0xA450000C; -D_A4500010 = 0xA4500010; -D_A4500014 = 0xA4500014; -D_A4600004 = 0xA4600004; -D_A4600008 = 0xA4600008; -D_A460000C = 0xA460000C; -D_A4600010 = 0xA4600010; -D_A4800004 = 0xA4800004; -D_A4800010 = 0xA4800010; -D_A4800018 = 0xA4800018; -D_A5000508 = 0xA5000508; +THREAD_S6 = 0xA0000200; +THREAD_PC = 0xA0000284; +SP_DRAM_ADDR_REG = 0xA4040004; +SP_RD_LEN_REG = 0xA4040008; +SP_WR_LEN_REG = 0xA404000C; +SP_STATUS_REG = 0xA4040010; +DPC_STATUS_REG = 0xA410000C; +MI_INTR_REG = 0xA4300008; +MI_INTR_MASK_REG = 0xA430000C; +VI_ORIGIN_REG = 0xA4400004; +VI_WIDTH_REG = 0xA4400008; +VI_INTR_REG = 0xA440000C; +VI_CURRENT_REG = 0xA4400010; +VI_BURST_REG = 0xA4400014; +VI_V_SYNC_REG = 0xA4400018; +VI_H_SYNC_REG = 0xA440001C; +VI_LEAP_REG = 0xA4400020; +VI_H_START_REG = 0xA4400024; +VI_V_START_REG = 0xA4400028; +VI_V_BURST_REG = 0xA440002C; +VI_X_SCALE_REG = 0xA4400030; +VI_Y_SCALE_REG = 0xA4400034; +AI_STATUS_REG = 0xA450000C; +PI_STATUS_REG = 0xA4600010; +SI_PIF_ADDR_RD64B_REG = 0xA4800004; +SI_PIF_ADDR_WR64B_REG = 0xA4800010; +SI_STATUS_REG = 0xA4800018; +LEO_STATUS = 0xA5000508; D_B0000574 = 0xB0000574; D_B0000578 = 0xB0000578;