FS:OpenFile
Request
| Index Word | Description |
|---|---|
| 0 | Header code [0x080201C2] |
| 1 | Transaction (usually 0) |
| 2 | Archive handle lower word |
| 3 | Archive handle upper word |
| 4 | LowPath.Type |
| 5 | LowPath.Size |
| 6 | OpenFlags |
| 7 | Attributes (usually 0) |
| 8 | (LowPath.Size<<14) | 2 |
| 9 | LowPath.Data pointer |
Response
| Index Word | Description |
|---|---|
| 0 | Header code |
| 1 | Resultcode |
| 3 | File handle |
OpenFlags
| Bit | Description |
|---|---|
| 0 | Read |
| 1 | Write |
| 2 | Create |
Attributes
| Flag | Description |
|---|---|
| 0x00000001 | Is Read-Only |
| 0x00000100 | Is Archive |
| 0x00010000 | Is Hidden |
| 0x01000000 | Is Directory |
LowPath Types
| LowPath.Type | Description |
|---|---|
| 2 | ExeFS file path, first u32 in the LowPath.data buffer is an ID while the rest is the 8-byte filename |
| 3 | Path char* |
| 4 | Path wchar_t* |