diff options
Diffstat (limited to 'src/code')
| -rw-r--r-- | src/code/fault.c | 11 | ||||
| -rw-r--r-- | src/code/fault_drawer.c | 8 |
2 files changed, 18 insertions, 1 deletions
diff --git a/src/code/fault.c b/src/code/fault.c index 4a302d9f3..97aeaa75d 100644 --- a/src/code/fault.c +++ b/src/code/fault.c @@ -76,12 +76,21 @@ const char* sFpExceptionNames[] = { "Unimplemented operation", "Invalid operation", "Division by zero", "Overflow", "Underflow", "Inexact operation", }; -// TODO: import .bss (has reordering issues) +#ifndef NON_MATCHING +// TODO: match .bss (has reordering issues) extern FaultMgr* sFaultInstance; extern u8 sFaultAwaitingInput; extern STACK(sFaultStack, 0x600); extern StackEntry sFaultThreadInfo; extern FaultMgr gFaultMgr; +#else +// Non-matching version for struct shiftability +FaultMgr* sFaultInstance; +u8 sFaultAwaitingInput; +STACK(sFaultStack, 0x600); +StackEntry sFaultThreadInfo; +FaultMgr gFaultMgr; +#endif typedef struct { /* 0x00 */ s32 (*callback)(void*, void*); diff --git a/src/code/fault_drawer.c b/src/code/fault_drawer.c index 49bcdd689..121b7d29b 100644 --- a/src/code/fault_drawer.c +++ b/src/code/fault_drawer.c @@ -99,7 +99,15 @@ FaultDrawer sFaultDrawerDefault = { NULL, }; +#ifndef NON_MATCHING +// TODO: match .bss (has reordering issues) extern FaultDrawer sFaultDrawer; +extern char D_8016B6BC[0x24]; +#else +// Non-matching version for struct shiftability +FaultDrawer sFaultDrawer; +char D_8016B6BC[0x24]; +#endif void FaultDrawer_SetOsSyncPrintfEnabled(u32 enabled) { sFaultDrawer.osSyncPrintfEnabled = enabled; |
