diff options
| author | Max Roncace <me@caseif.net> | 2026-01-29 17:18:08 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-01-29 14:18:08 -0800 |
| commit | 050ebb447137e7077903e208b41deccbf0ee23f6 (patch) | |
| tree | c54e4676aca9283aa11628e714ce9cc18d6b304c /include/NdevExi2A | |
| parent | c161523338fedf22e206a1c85d2777b4e6f667d0 (diff) | |
Add missing TUs for Wii/Shield retail (+ filename cleanup) (#3072)
* Fix GCN_mem_alloc.c filename capitalization
* Fix up TRK file names in Wii/Shield splits
* Add string_TRK
* Add cc_gdev
* Add Shield-only wstring TUs
* Implement NdevExi2A
* Add missing JSystem TUs (more are still missing from ShieldD)
* Clean up includes
Diffstat (limited to 'include/NdevExi2A')
| -rw-r--r-- | include/NdevExi2A/DebuggerDriver.h | 54 | ||||
| -rw-r--r-- | include/NdevExi2A/exi2.h | 34 |
2 files changed, 88 insertions, 0 deletions
diff --git a/include/NdevExi2A/DebuggerDriver.h b/include/NdevExi2A/DebuggerDriver.h new file mode 100644 index 0000000000..44cf7daad7 --- /dev/null +++ b/include/NdevExi2A/DebuggerDriver.h @@ -0,0 +1,54 @@ +#ifndef NDEVEXI2A_DEBUGGERDRIVER_H +#define NDEVEXI2A_DEBUGGERDRIVER_H + +#include <dolphin/os.h> +#include "types.h" + +typedef void (*MtrCallback)(s32, OSContext*); +typedef void (*IntrCallback)(s16, OSContext*); + +#include <NdevExi2A/DebuggerDriver.h> + +static u32 ODEMUGetSize(u32 mail); + +static void __DBMtrHandler(s32 param_0, OSContext* ctx); + +static void __DBIntrHandler(s16 param_0, OSContext* ctx); + +u8 __DBReadUSB_CSR(); + +void __DBReadMailbox(u32* out); + +void __DBCheckMailBox(void); + +BOOL __DBWriteMailbox(u32 val); + +BOOL __DBRead(u32 param_0, void* dst, u32 count); + +BOOL __DBWrite(u32 param_0, void* src, u32 count); + +void DBInitComm(u8** a, MtrCallback callback); + +void DBInitInterrupts(void); + +BOOL ODEMUIsValidMail(u32 mail); + +u32 DBQueryData(void); + +u32 ODEMUGetPage(u32 v); + +u32 ODEMUGetPc2NngcOffset(u32 v); + +BOOL DBRead(u32* buffer, s32 count); + +void __DBWaitForSendMail(); + +u32 ODEMUGenMailData(u32 v, u32 size); + +BOOL DBWrite(void* src, u32 size); + +void DBOpen(void); + +void DBClose(void); + +#endif /* NDEVEXI2A_DEBUGGERDRIVER_H */ diff --git a/include/NdevExi2A/exi2.h b/include/NdevExi2A/exi2.h new file mode 100644 index 0000000000..3781ab50d5 --- /dev/null +++ b/include/NdevExi2A/exi2.h @@ -0,0 +1,34 @@ +#ifndef NDEVEXI2A_EXI2_H +#define NDEVEXI2A_EXI2_H + +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif + +BOOL __EXI2Select(); + +BOOL __EXI2Deselect(); + +BOOL __EXI2Sync(); + +BOOL __EXI2Imm(u32* param_0, int width, int param_2); + +void __DBEXIInit(); + +BOOL __DBEXIReadReg(u32 param_0, void* dst, u32 param_2); + +BOOL __DBEXIWriteReg(u32 param_0, void* src, u32 width); + +BOOL __DBEXIReadRam(u32 param_0, void* dst, int count); + +BOOL __DBEXIWriteRam(u32 param_0, void* src, int count); + +u32 __EXISwap32(u32 v); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* NDEVEXI2A_EXI2_H */ |
