Homepage von Michael Pieper | |||||
BeOS Programme | |||||
PalmBeach | |||||
PSION Link Protokollbeschreibung | |||||
RFSV Protokollbeschreibung |
Das Kommando FSEEK positioniert den Filepointer auf eine angegebene Position innerhalb einer geöffneten Datei. Es gibt diverse Möglichkeiten die Position zu bestimmen. Um das Kommando korrekt ausführen zu können muß die Datei mit dem Parameter FRANDOM im Kommando FOPEN geöffnet worden sein!
Es ist zu beachten, daß alle Werte, die größer sind als 8 Bit in umgekehrter Reihenfolge übertragen werden. Das LOW-Byte wird als erstes über die Leitung geschickt und erst dann folgt das HIGH-Byte!
Der Befehl FSEEK ist folgendermaßen in das PLP eingebaut:
Header | PLP | RFSV-FSEEK | Footer | CRC | ||||
---|---|---|---|---|---|---|---|---|
16 10 02 | 32 03 02 01 | Kommando 0c 00 |
Größe 08 00 |
Filehandle 01 00 |
Position 00 00 00 00 |
Modus 02 00 |
10 03 | 12 34 |
Eine gültige Antwort erfolgt mit dem Kommando RESPONSE und liefert einen Fehlercode zurück.
Header | PLP | RFSV-RESPONSE | Footer | CRC | |||
---|---|---|---|---|---|---|---|
16 10 02 | 33 02 03 01 | Kommando 2a 00 |
Größe 06 00 |
Ergebnis 00 00 |
aktuelle Position bc 04 00 00 |
10 03 | 12 34 |
fette | Werte stellen feste Werte dar, die exakt so verwendet werden! |
kursive | Werte stellen Beispiele dar, die anhand des Befehls eine unterschiedliche Bedeutung haben. |
Das Kommando FSEEK besteht aus 5 Informationseinheiten. Diese haben folgende Bedeutungen:
Länge in Byte | mögliche Werte | Bedeutung | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Kommando | 2 Byte | 00 0c (fest) | Die Kommandokennung hat immer den gleichen Wert! | ||||||||||||||||||
Größe | 2 Byte | 00 08 (fest) | Es werden immer acht Bytes übertragen. | ||||||||||||||||||
Filehandle | 2 Byte | variabel | Es ist der Filehandle zu übergeben, den das aufrufende Programm mit dem Kommndo FOPEN erhalten hat. | ||||||||||||||||||
Position | 4 Byte | variabel | Abhängig vom Modus wird dieser Wert unterschiedlich interpretiert. Er gibt immer eine Länge in Bytes an. Ab welcher Position dieser allerdings gezählt wird, ergibt sich aus dem Inhalt von Modus. | ||||||||||||||||||
Modus | 2 Byte | variabel | Dieser Wert gibt an, wie die Bytelänge in Position zu betrachten ist. Folgende Werte sind möglich:
|
Das Kommando FSEEK wird mit einem RESPONSE beantwortet. Dieser liefert als Ergebnis einen Fehlercode zurück und die aktuelle Position innerhalb des Files als absoluter Wert vom Anfang der Datei.
Länge in Byte | mögliche Werte | Bedeutung | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Kommando | 2 Byte | 00 2a (fest) | Die Kommandokennung hat immer den gleichen Wert! | ||||||||
Größe | 2 Byte | 00 02 (fest) | Es werden immer 2 zsuätzliche Byte geliefert! | ||||||||
Ergebnis | 2 Byte | variabel | Das Ergebnis kann folgende Werte erhalten:
|
||||||||
Position | 4 Byte | variabel | Es wird die absolute Position in Bytes angegeben, an der der Filepointer nach dem Kommando steht. |
Homepage von Michael Pieper | |||||
BeOS Programme | |||||
PalmBeach | |||||
PSION Link Protokollbeschreibung | |||||
RFSV Protokollbeschreibung |