Line 11: |
Line 11: |
| | 1 || FsFile_Exists || Takes an X descriptor, and produces, 8 bytes output. | | | 1 || FsFile_Exists || Takes an X descriptor, and produces, 8 bytes output. |
| |- | | |- |
− | | 2 || || Takes 0x18 bytes of input, a B descriptor, and an X descriptor, and produces 0 bytes of output. | + | | 2 || FsFile_Read || Takes 0x18 bytes of input, a B descriptor, and an X descriptor, and produces 0 bytes of output. |
| |- | | |- |
− | | 3 || || Takes 0x18 bytes of input, an A descriptor, and an X descriptor, and produces 0 bytes of output. | + | | 3 || FsFile_Write || Takes 0x18 bytes of input, an A descriptor, and an X descriptor, and produces 0 bytes of output. |
| |- | | |- |
| | 4 || || Takes 4 bytes of input, and produces 0 bytes of output. | | | 4 || || Takes 4 bytes of input, and produces 0 bytes of output. |
Line 26: |
Line 26: |
| | | |
| == FsFile_Exists == | | == FsFile_Exists == |
− | Takes an input path string, returns 8-bytes for the output u8 flag. | + | Takes an input path string(type-0x9 buffer), returns 8-bytes for the output u8 flag. |
| | | |
| Checks whether the specified file exists. | | Checks whether the specified file exists. |
| | | |
| This is "FsFile::Exists" in SystemInitializer. | | This is "FsFile::Exists" in SystemInitializer. |
| + | |
| + | == FsFile_Read == |
| + | Takes a type-0x6 output buffer and a type-0x9 input string path buffer, and 3 u64s: <same size value from databuf>, unk, <same size value from databuf>. Where unk is probably offset? |
| + | |
| + | Reads data from the specified file. |
| + | |
| + | == FsFile_Write == |
| + | Same as FsFile_Read except the databuf is a type-0x5 input buffer. |
| + | |
| + | Writes data to the specified file. |
| + | |
| + | SystemInitializer also uses this as "FsFile::Create" with all input u64s set to 0. |