diff --git a/data/unknown_0D3160.rodata.s b/data/unknown_0D3160.rodata.s deleted file mode 100644 index b698a160..00000000 --- a/data/unknown_0D3160.rodata.s +++ /dev/null @@ -1,48 +0,0 @@ -.include "macros.inc" - -.macro .aligned_text ascii - .asciz "\ascii" - .balign 4 -.endm - -.section .rodata - -glabel D_800E9640 -.word 0x3F91DF46 -.word 0x9D353918 -.word 0x00000000 -.word 0x00000000 - -glabel D_800E9650 -.word 0x800D2A70 -.word 0x800D2964 -.word 0x800D29A4 -.word 0x800D2A90 -.word 0x800D2A90 -.word 0x800D29E0 -.word 0x800D2A28 -.word 0x00000000 - -glabel D_800E9670 -.word 0x00141818 -.word 0x1C1C1C1C -.word 0x20202020 -.word 0x20202020 -.word 0x00040808 -.word 0x0C0C0C0C -.word 0x10101010 -.word 0x10101010 - -glabel D_800E9690 -.word 0x800D3168 -.word 0x800D3130 -.word 0x800D3110 -.word 0x800D2F74 -.word 0x800D2F20 -.word 0x800D30B4 -.word 0x800D2EE8 -.word 0x800D2EF4 -.word 0x800D2F00 -.word 0x00000000 -.word 0x00000000 -.word 0x00000000 diff --git a/lib/asm/exception/__osException.s b/lib/asm/exception/__osException.s index b49a8d69..a6c15414 100644 --- a/lib/asm/exception/__osException.s +++ b/lib/asm/exception/__osException.s @@ -1,3 +1,28 @@ +.section .rodata + +glabel D_800E9670 +.word 0x00141818 +.word 0x1C1C1C1C +.word 0x20202020 +.word 0x20202020 +.word 0x00040808 +.word 0x0C0C0C0C +.word 0x10101010 +.word 0x10101010 + +glabel D_800E9690 +.word 0x800D3168 +.word 0x800D3130 +.word 0x800D3110 +.word 0x800D2F74 +.word 0x800D2F20 +.word 0x800D30B4 +.word 0x800D2EE8 +.word 0x800D2EF4 +.word 0x800D2F00 + +.section .text + glabel __osException /* 0D38C0 800D2CC0 3C1A8013 */ lui $k0, %hi(D_8012D240) # $k0, 0x8013 /* 0D38C4 800D2CC4 275AD240 */ addiu $k0, %lo(D_8012D240) # addiu $k0, $k0, -0x2dc0 diff --git a/lib/src/unknown_0D3160.c b/lib/src/unknown_0D3160.c index 3804eb00..3d95cfc6 100644 --- a/lib/src/unknown_0D3160.c +++ b/lib/src/unknown_0D3160.c @@ -6,6 +6,19 @@ #include "libultra_internal.h" #include "hardware.h" +/************ .rodata ************/ + +const DoubleLiteral D_800E9640 = { 0.017453292222222222 }; +const DoubleLiteral D_800E9648 = { 0.0 }; // This is probably a file boundary. This file needs to be split. + +// Jump table in __osDevMgrMain +const u32 D_800E9650[] = { + 0x800D2A70, 0x800D2964, 0x800D29A4, 0x800D2A90, + 0x800D2A90, 0x800D29E0, 0x800D2A28 +}; + +/*********************************/ + GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3160/__osDisableInt.s") GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3160/__osRestoreInt.s")