summaryrefslogtreecommitdiff
path: root/arm9/lib/include/PXI_fifo.h
diff options
context:
space:
mode:
authorRevo <projectrevotpp@hotmail.com>2020-10-21 13:56:17 -0400
committerGitHub <noreply@github.com>2020-10-21 13:56:17 -0400
commit8ce8252467021df062d90f73c7834ed88d42423d (patch)
tree8a7dc3da6a66c25eeaed3bdf06272f1ac2db7749 /arm9/lib/include/PXI_fifo.h
parent4581af32be3e319a811e5551b7179ae4d0f18fc1 (diff)
parent945241d45eb302775eaa656a73e21072081a4f57 (diff)
Merge pull request #296 from red031000/master
arm9 pxi_fifo
Diffstat (limited to 'arm9/lib/include/PXI_fifo.h')
-rw-r--r--arm9/lib/include/PXI_fifo.h20
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