1#ifndef RVL_SDK_NWC24_FILE_API_H
2#define RVL_SDK_NWC24_FILE_API_H
3#include <revolution/NAND.h>
4#include <revolution/NWC24/NWC24Types.h>
5#include <revolution/VF.h>
13 NWC24_OPEN_WRITE = (1 << 0),
14 NWC24_OPEN_READ = (1 << 1),
15 NWC24_OPEN_RW = (1 << 2),
18 NWC24_OPEN_BUFF = (1 << 3),
19 NWC24_OPEN_VF = (1 << 8),
22 NWC24_OPEN_NAND_W = NWC24_OPEN_WRITE,
23 NWC24_OPEN_NAND_R = NWC24_OPEN_READ,
24 NWC24_OPEN_NAND_RW = NWC24_OPEN_RW,
27 NWC24_OPEN_VF_W = NWC24_OPEN_WRITE | NWC24_OPEN_VF,
28 NWC24_OPEN_VF_R = NWC24_OPEN_READ | NWC24_OPEN_VF,
29 NWC24_OPEN_VF_RW = NWC24_OPEN_RW | NWC24_OPEN_VF,
32 NWC24_OPEN_NAND_WBUFF = NWC24_OPEN_NAND_W | NWC24_OPEN_BUFF,
33 NWC24_OPEN_NAND_RBUFF = NWC24_OPEN_NAND_R | NWC24_OPEN_BUFF,
34 NWC24_OPEN_NAND_RWBUFF = NWC24_OPEN_NAND_RW | NWC24_OPEN_BUFF,
37 NWC24_OPEN_VF_WBUFF = NWC24_OPEN_VF_W | NWC24_OPEN_BUFF,
38 NWC24_OPEN_VF_RBUFF = NWC24_OPEN_VF_R | NWC24_OPEN_BUFF,
39 NWC24_OPEN_VF_RWBUFF = NWC24_OPEN_VF_RW | NWC24_OPEN_BUFF,
56NWC24Err NWC24FOpen(
NWC24File* file,
const char* path, u32 mode);
57NWC24Err NWC24iFOpenNand(
NWC24File* file,
const char* path, u32 mode);
58NWC24Err NWC24iFOpenVF(
NWC24File* file,
const char* path, u32 mode);
61NWC24Err NWC24iFCloseNand(
NWC24File* file) DECOMP_DONT_INLINE;
64NWC24Err NWC24FSeek(
NWC24File* file, s32 offset, NWC24SeekMode whence);
65NWC24Err NWC24FRead(
void* dst, s32 size,
NWC24File* file);
66NWC24Err NWC24FWrite(
const void* src, s32 size,
NWC24File* file);
67NWC24Err NWC24FGetLength(
NWC24File* file, u32* lengthOut);
68NWC24Err NWC24FDeleteVF(
const char* path);
69NWC24Err NWC24MountVF(
const char* drive,
const char* filename);
70NWC24Err NWC24UnmountVF(
const char* drive);
71NWC24Err NWC24CheckSizeVF(
const char* drive, u32* sizeOut);