NSMBW-Decomp
A decompilation of New Super Mario Bros. Wii
Loading...
Searching...
No Matches
EXIBios.h
1#ifndef RVL_SDK_EXI_BIOS_H
2#define RVL_SDK_EXI_BIOS_H
3#include <revolution/EXI/EXICommon.h>
4#include <types.h>
5#ifdef __cplusplus
6extern "C" {
7#endif
8
9typedef struct EXIItem {
10 u32 dev; // at 0x0
11 EXICallback callback; // at 0x4
12} EXIItem;
13
14typedef struct EXIData {
15 EXICallback exiCallback; // at 0x0
16 EXICallback tcCallback; // at 0x4
17 EXICallback extCallback; // at 0x8
18 volatile s32 state; // at 0xC
19 s32 bytesRead; // at 0x10
20 void* buffer; // at 0x14
21 u32 dev; // at 0x18
22 u32 id; // at 0x1C
23 s32 lastInsert; // at 0x20
24 s32 numItems; // at 0x24
25 EXIItem items[3]; // at 0x28
26} EXIData;
27
28BOOL EXIImm(EXIChannel chan, void* buf, s32 len, u32 type,
29 EXICallback callback);
30BOOL EXIImmEx(EXIChannel chan, void* buf, s32 len, u32 type);
31BOOL EXIDma(EXIChannel chan, void* buf, s32 len, u32 type,
32 EXICallback callback);
33BOOL EXISync(EXIChannel chan);
34void EXIClearInterrupts(EXIChannel chan, BOOL exi, BOOL tc, BOOL ext);
35EXICallback EXISetExiCallback(EXIChannel chan, EXICallback callback);
36void EXIProbeReset(void);
37BOOL EXIProbe(EXIChannel chan);
38BOOL EXIAttach(EXIChannel chan, EXICallback callback);
39BOOL EXIDetach(EXIChannel chan);
40BOOL EXISelect(EXIChannel chan, u32 dev, u32 freq);
41BOOL EXIDeselect(EXIChannel chan);
42void EXIInit(void);
43BOOL EXILock(EXIChannel chan, u32 dev, EXICallback callback);
44BOOL EXIUnlock(EXIChannel chan);
45s32 EXIGetID(EXIChannel chan, u32 dev, u32* out);
46
47#ifdef __cplusplus
48}
49#endif
50#endif