summaryrefslogtreecommitdiff
path: root/include/SDK/NAND/nand.h
diff options
context:
space:
mode:
authorMax <mparisi@stevens.edu>2020-10-30 02:05:35 -0400
committerMax <mparisi@stevens.edu>2020-10-30 02:05:35 -0400
commitd96e18f2d6f0c92639929523051d3bd2c787333b (patch)
tree56edf2e9bdc02ac0cc56f1bde9693fdbb587e698 /include/SDK/NAND/nand.h
parent47a1bdea8872c79dd2cd7d75ca7f254b9ed13170 (diff)
match up to func_801DD294
Diffstat (limited to 'include/SDK/NAND/nand.h')
-rw-r--r--include/SDK/NAND/nand.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/include/SDK/NAND/nand.h b/include/SDK/NAND/nand.h
new file mode 100644
index 0000000..bc22279
--- /dev/null
+++ b/include/SDK/NAND/nand.h
@@ -0,0 +1,38 @@
+#ifndef POKEREVO_NAND_NAND_H
+#define POKEREVO_NAND_NAND_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+// TODO: size >= 0x8B
+typedef struct NANDFileInfo
+{
+ u8 unk0[0x8C];
+} NANDFileInfo;
+
+// TODO: no idea of size yet
+typedef struct NANDCommandBlock
+{
+ u8 unk0[0x4];
+} NANDCommandBlock;
+
+typedef void (*NANDCallback)(s32 result, NANDCommandBlock* block);
+
+s32 NANDGetLength(NANDFileInfo* info, u32* length);
+s32 NANDSeek(NANDFileInfo* info, s32 offset, s32 whence);
+s32 NANDSeekAsync(NANDFileInfo* info, s32 offset, s32 whence, NANDCallback cb, NANDCommandBlock* block);
+s32 NANDRead(NANDFileInfo* info, void* buf, u32 length);
+s32 NANDReadAsync(NANDFileInfo* info, void* buf, u32 length, NANDCallback cb, NANDCommandBlock* block);
+void* NANDGetUserData(const NANDCommandBlock* block);
+void NANDSetUserData(NANDCommandBlock* block, void* data);
+s32 NANDCreate(const char* fileName, u8 perm, u8 attr);
+s32 NANDWrite(NANDFileInfo* info, const void* buf, u32 length);
+
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif //POKEREVO_NAND_NAND_H