Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
EXIBios.h
Go to the documentation of this file.
1#ifndef EXIBIOS_H
2#define EXIBIOS_H
3
4#include "dolphin/types.h"
5
6#ifdef __cplusplus
7extern "C" {
8#endif
9
10typedef struct OSContext OSContext;
11
12vu32 __EXIRegs[16] AT_ADDRESS(0xCC006800);
13
14#define EXI_MEMORY_CARD_59 0x00000004
15#define EXI_MEMORY_CARD_123 0x00000008
16#define EXI_MEMORY_CARD_251 0x00000010
17#define EXI_MEMORY_CARD_507 0x00000020
18
19#define EXI_MEMORY_CARD_1019 0x00000040
20#define EXI_MEMORY_CARD_2043 0x00000080
21
22#define EXI_MEMORY_CARD_1019A 0x00000140
23#define EXI_MEMORY_CARD_1019B 0x00000240
24#define EXI_MEMORY_CARD_1019C 0x00000340
25#define EXI_MEMORY_CARD_1019D 0x00000440
26#define EXI_MEMORY_CARD_1019E 0x00000540
27#define EXI_MEMORY_CARD_1019F 0x00000640
28#define EXI_MEMORY_CARD_1019G 0x00000740
29
30#define EXI_MEMORY_CARD_2043A 0x00000180
31#define EXI_MEMORY_CARD_2043B 0x00000280
32#define EXI_MEMORY_CARD_2043C 0x00000380
33#define EXI_MEMORY_CARD_2043D 0x00000480
34#define EXI_MEMORY_CARD_2043E 0x00000580
35#define EXI_MEMORY_CARD_2043F 0x00000680
36#define EXI_MEMORY_CARD_2043G 0x00000780
37
38#define EXI_USB_ADAPTER 0x01010000
39#define EXI_NPDP_GDEV 0x01020000
40
41#define EXI_MODEM 0x02020000
42#define EXI_ETHER 0x04020200
43#define EXI_ETHER_VIEWER 0x04220001
44#define EXI_STREAM_HANGER 0x04130000
45
46#define EXI_MARLIN 0x03010000
47
48#define EXI_IS_VIEWER 0x05070000
49
50#define EXI_FREQ_1M 0
51#define EXI_FREQ_2M 1
52#define EXI_FREQ_4M 2
53#define EXI_FREQ_8M 3
54#define EXI_FREQ_16M 4
55#define EXI_FREQ_32M 5
56
57#define EXI_READ 0
58#define EXI_WRITE 1
59
60#define EXI_STATE_IDLE 0x00
61#define EXI_STATE_DMA 0x01
62#define EXI_STATE_IMM 0x02
63#define EXI_STATE_BUSY (EXI_STATE_DMA | EXI_STATE_IMM)
64#define EXI_STATE_SELECTED 0x04
65#define EXI_STATE_ATTACHED 0x08
66#define EXI_STATE_LOCKED 0x10
67
69
86
87s32 EXIImm(s32 chan, void* buf, s32 len, u32 type, EXICallback callback);
88s32 EXIImmEx(s32 chan, void* buf, s32 len, u32 mode);
89BOOL EXIDma(s32 chan, void* buf, s32 len, u32 type, EXICallback callback);
90BOOL EXISync(s32 chan);
92BOOL EXIProbe(s32 chan);
93s32 EXIProbeEx(s32 chan);
94BOOL EXIAttach(s32 chan, EXICallback extCallback);
95BOOL EXIDetach(s32 chan);
96BOOL EXISelect(s32 chan, u32 dev, u32 freq);
97BOOL EXIDeselect(s32 chan);
98void EXIInit(void);
100BOOL EXIUnlock(s32 chan);
101u32 EXIGetState(s32 chan);
103s32 EXIGetID(s32 chan, u32 dev, u32* id);
104
105#ifdef __cplusplus
106};
107#endif
108
109#endif /* EXIBIOS_H */
BOOL EXIAttach(s32 chan, EXICallback extCallback)
Definition EXIBios.c:317
BOOL EXIDma(s32 chan, void *buf, s32 len, u32 type, EXICallback callback)
Definition EXIBios.c:117
BOOL EXILock(s32 chan, u32 dev, EXICallback unlockedCallback)
Definition EXIBios.c:546
static void UnlockedHandler(s32 chan, OSContext *context)
s32 EXIImm(s32 chan, void *buf, s32 len, u32 type, EXICallback callback)
Definition EXIBios.c:57
void EXIInit(void)
Definition EXIBios.c:504
void(* EXICallback)(s32 chan, OSContext *context)
Definition EXIBios.h:68
BOOL EXIUnlock(s32 chan)
Definition EXIBios.c:577
s32 EXIImmEx(s32 chan, void *buf, s32 len, u32 mode)
Definition EXIBios.c:97
BOOL EXISync(s32 chan)
Definition EXIBios.c:164
BOOL EXISelect(s32 chan, u32 dev, u32 freq)
Definition EXIBios.c:356
vu32 __EXIRegs[16] AT_ADDRESS(0xCC006800)
u32 EXIGetState(s32 chan)
Definition EXIBios.c:603
EXICallback EXISetExiCallback(s32 chan, EXICallback exiCallback)
Definition EXIBios.c:208
BOOL EXIDetach(s32 chan)
Definition EXIBios.c:335
BOOL EXIProbe(s32 chan)
Definition EXIBios.c:272
s32 EXIGetID(s32 chan, u32 dev, u32 *id)
Definition EXIBios.c:617
s32 EXIProbeEx(s32 chan)
Definition EXIBios.c:286
BOOL EXIDeselect(s32 chan)
Definition EXIBios.c:392
static OSContext context
Definition JUTException.cpp:233
T cLib_calcTimer(T *value)
Definition c_lib.h:74
Definition EXIBios.h:70
int immLen
Definition EXIBios.h:75
EXICallback exiCallback
Definition EXIBios.h:71
struct EXIControl::@91 queue[3]
s32 idTime
Definition EXIBios.h:79
int items
Definition EXIBios.h:80
u32 id
Definition EXIBios.h:78
vu32 state
Definition EXIBios.h:74
EXICallback callback
Definition EXIBios.h:83
EXICallback extCallback
Definition EXIBios.h:73
EXICallback tcCallback
Definition EXIBios.h:72
u8 * immBuf
Definition EXIBios.h:76
u32 dev
Definition EXIBios.h:77
Definition OSContext.h:137
int BOOL
Definition types.h:27
unsigned long u32
Definition types.h:10
volatile u32 vu32
Definition types.h:15
signed long s32
Definition types.h:6
unsigned char u8
Definition types.h:8