diff options
Diffstat (limited to 'arm9/lib/include/PXI_fifo.h')
-rw-r--r-- | arm9/lib/include/PXI_fifo.h | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/arm9/lib/include/PXI_fifo.h b/arm9/lib/include/PXI_fifo.h index becba32e..b1ca33f3 100644 --- a/arm9/lib/include/PXI_fifo.h +++ b/arm9/lib/include/PXI_fifo.h @@ -2,6 +2,7 @@ #define POKEDIAMOND_ARM9_PXI_FIFO_H #include "nitro/PXI_fifo_shared.h" +#include "nitro/types.h" typedef enum { @@ -13,4 +14,23 @@ typedef enum PXI_FIFO_NO_CALLBACK_ENTRY = -5 } PXIFifoStatus; +typedef void (*PXIFifoCallback) (PXIFifoTag tag, u32 data, BOOL err); + +typedef union +{ + struct + { + u32 tag:5; + u32 err:1; + u32 data:26; + } e; + u32 raw; +} PXIFifoMessage; + +void PXI_InitFifo(void); +void PXI_SetFifoRecvCallback(s32 fifotag, PXIFifoCallback callback); +BOOL PXI_IsCallbackReady(s32 fifotag, PXIProc proc); +s32 PXI_SendWordByFifo(s32 fifotag, u32 data, BOOL err); +void PXIi_HandlerRecvFifoNotEmpty(void); + #endif //POKEDIAMOND_ARM9_PXI_FIFO_H |