Difference between revisions of "FS:OpenFile"

From 3dbrew
Jump to navigation Jump to search
Line 107: Line 107:
 
| 4 (WCHAR)
 
| 4 (WCHAR)
 
| Specifies a text based path with a 16-bit short per character.
 
| Specifies a text based path with a 16-bit short per character.
 +
|}
 +
 +
== Binary LowPath ==
 +
The format of the data that a binary LowPath points to is custom per archive.
 +
 +
 +
=== SystemSaveData Archive Path Data Format ===
 +
{| class="wikitable" border="1"
 +
|-
 +
!  Index word
 +
!  Description
 +
|-
 +
| 0
 +
| Mediatype
 +
|-
 +
| 1
 +
| saveid
 +
|}
 +
 +
=== ExtSaveData Archive Path Data Format ===
 +
{| class="wikitable" border="1"
 +
|-
 +
!  Index word
 +
!  Description
 +
|-
 +
| 0
 +
| Mediatype
 +
|-
 +
| 1
 +
| Upper word saveid
 +
|-
 +
| 2
 +
| Lower word saveid
 
|}
 
|}

Revision as of 20:58, 20 April 2012

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

Type Description
0 (INVALID) Specifies an invalid path.
1 (EMPTY) Specifies an empty path.
2 (BINARY) Specifies a binary path, which is non-text based.
3 (CHAR) Specifies a text based path with a 8-bit byte per character.
4 (WCHAR) Specifies a text based path with a 16-bit short per character.

Binary LowPath

The format of the data that a binary LowPath points to is custom per archive.


SystemSaveData Archive Path Data Format

Index word Description
0 Mediatype
1 saveid

ExtSaveData Archive Path Data Format

Index word Description
0 Mediatype
1 Upper word saveid
2 Lower word saveid