Skip to content

Commit b956aea

Browse files
committed
shieldD revo fs mostly done
1 parent aa3a99f commit b956aea

File tree

3 files changed

+1003
-36
lines changed

3 files changed

+1003
-36
lines changed

configure.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1522,6 +1522,12 @@ def MatchingFor(*versions) -> bool:
15221522
Object(NonMatching, "revolution/nand/NANDErrorMessage.c"),
15231523
],
15241524
),
1525+
RevolutionLib(
1526+
"fs",
1527+
[
1528+
Object(NonMatching, "revolution/fs/fs.c"),
1529+
],
1530+
),
15251531
{
15261532
"lib": "Runtime.PPCEABI.H",
15271533
"mw_version": MWVersion(config.version),

include/revolution/fs.h

Lines changed: 24 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,6 @@ extern "C" {
3232

3333
#define ISFS_INODE_NAMELEN 12
3434

35-
3635
typedef s32 ISFSError;
3736
typedef void (*ISFSCallback) (ISFSError, void *ctxt);
3837

@@ -66,44 +65,33 @@ typedef struct {
6665
u8 path2[64];
6766
} ISFSPathsArgs;
6867

69-
s32 ISFS_Open(const u8 *, u32);
70-
s32 ISFS_OpenAsync(const u8 *, u32, ISFSCallback, void *);
71-
72-
s32 ISFS_Read(s32, u8 *, u32);
73-
s32 ISFS_ReadAsync(IOSFd, u8 *, u32, ISFSCallback, void *);
74-
s32 ISFS_ShutdownAsync(ISFSCallback, void *);
75-
s32 ISFS_ReadDir(const u8 *, u8 *, u32 *);
76-
s32 ISFS_ReadDirAsync(const u8 *, u8 *, u32 *, ISFSCallback, void *);
77-
s32 ISFS_Write(IOSFd, const u8 *, u32);
78-
s32 ISFS_WriteAsync(IOSFd, const u8 *, u32, ISFSCallback, void *);
79-
80-
s32 ISFS_CreateFileAsync(const u8 *, u32, u32, u32, u32, ISFSCallback, void *);
81-
s32 ISFS_CreateFile(const u8 *, u32, u32, u32, u32);
82-
83-
s32 ISFS_Seek(IOSFd, s32, u32);
84-
s32 ISFS_SeekAsync(IOSFd, s32 , u32, ISFSCallback, void *);
85-
86-
s32 ISFS_Close(IOSFd);
87-
s32 ISFS_CloseAsync(IOSFd, ISFSCallback, void *);
88-
89-
s32 ISFS_GetUsage(const u8 *, u32 *, u32 *);
90-
s32 ISFS_GetAttrAsync(const u8 *, IOSUid *, IOSGid *, u32 *, u32 *, u32 *, u32 *, ISFSCallback, void *);
91-
92-
s32 ISFS_CreateDirAsync(const u8 *, u32, u32, u32, u32, ISFSCallback, void *);
93-
s32 ISFS_CreateDir(const u8 *, u32, u32, u32, u32);
94-
95-
s32 ISFS_RenameAsync(const u8 *, const u8 *, ISFSCallback, void *);
96-
s32 ISFS_Rename(const u8 *, const u8 *);
97-
98-
s32 ISFS_Delete(const u8 *);
99-
s32 ISFS_DeleteAsync(const u8 *, ISFSCallback, void *);
100-
68+
ISFSError ISFS_OpenLib(void);
69+
s32 ISFS_CreateDir(const u8* dname, u32 dirAttr, u32 ownerAcc, u32 groupAcc, u32 othersAcc);
70+
s32 ISFS_CreateDirAsync(const u8* dname, u32 dirAttr, u32 ownerAcc, u32 groupAcc, u32 othersAcc, ISFSCallback cb, void* fsCtxt);
71+
s32 ISFS_ReadDir(const u8* dname, u8* nameList, u32* num);
72+
s32 ISFS_ReadDirAsync(const u8* dname, u8* nameList, u32* num, ISFSCallback cb, void* fsCtxt);
10173
s32 ISFS_GetAttr(const u8* name, IOSUid* ownerId, IOSGid* groupId, u32* attr, u32* ownerAcc, u32* groupAcc, u32* othersAcc);
102-
74+
s32 ISFS_GetAttrAsync(const u8* name, IOSUid* ownerId, IOSGid* groupId, u32* attr, u32* ownerAcc, u32* groupAcc, u32* othersAcc, ISFSCallback cb, void* fsCtxt);
75+
s32 ISFS_Delete(const u8* name);
76+
s32 ISFS_DeleteAsync(const u8* name, ISFSCallback cb, void* fsCtxt);
77+
s32 ISFS_Rename(const u8* oldName, const u8* newName);
78+
s32 ISFS_RenameAsync(const u8* oldName, const u8* newName, ISFSCallback cb, void* fsCtxt);
79+
s32 ISFS_GetUsage(const u8* dname, u32* nblocks, u32* ninodes);
80+
s32 ISFS_CreateFile(const u8* fname, u32 fileAttr, u32 ownerAcc, u32 groupAcc, u32 othersAcc);
81+
s32 ISFS_CreateFileAsync(const u8* fname, u32 fileAttr, u32 ownerAcc, u32 groupAcc, u32 othersAcc, ISFSCallback cb, void* fsCtxt);
82+
IOSFd ISFS_Open(const u8* fname, u32 access);
83+
IOSFd ISFS_OpenAsync(const u8* fname, u32 access, ISFSCallback cb, void* fsCtxt);
10384
s32 ISFS_GetFileStats(IOSFd fd, ISFSFileStats* stats);
10485
s32 ISFS_GetFileStatsAsync(IOSFd fd, ISFSFileStats* stats, ISFSCallback cb, void* fsCtxt);
105-
106-
ISFSError ISFS_OpenLib(void);
86+
s32 ISFS_Seek(IOSFd fd, s32 offset, u32 whence);
87+
s32 ISFS_SeekAsync(IOSFd fd, s32 offset, u32 whence, ISFSCallback cb, void* fsCtxt);
88+
s32 ISFS_Read(s32 fd, u8* pBuffer, u32 bufSize);
89+
s32 ISFS_ReadAsync(IOSFd fd, u8* buf, u32 size, ISFSCallback cb, void* fsCtxt);
90+
s32 ISFS_Write(IOSFd fd, const u8* buf, u32 size);
91+
s32 ISFS_WriteAsync(IOSFd fd, const u8* buf, u32 size, ISFSCallback cb, void* fsCtxt);
92+
s32 ISFS_Close(IOSFd fd);
93+
s32 ISFS_CloseAsync(IOSFd fd, ISFSCallback cb, void* fsCtxt);
94+
s32 ISFS_ShutdownAsync(ISFSCallback cb, void* fsCtxt);
10795

10896
#ifdef __cplusplus
10997
}

0 commit comments

Comments
 (0)