Homepage von Michael Pieper
BeOS Programme
PalmBeach
PSION Link Protokollbeschreibung
RFSV Protokollbeschreibung

RFSV-Kommando FWRITE


Kommandobeschreibung

Das Kommando FWRITE wird verwendet um Daten in eine zuvor geöffnete Datei, zu schreiben. Es muß das gleiche Filehandle verwendet werden, wie beim Befehl FOPEN zurückgeliefert wurde.

Da bei FWRITE sehr große Datenmengen übertragen werden können, ist darauf zu achten, daß ein Kommando aus mehreren Frames bestehen kann! Im PLP-Protokoll ist dafür der Zähler eingebaut, der absteigend die Anzahl der noch zu erwartenden Blöcke (inclusive des eigenen) angibt.

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!


Senderichtung (Kommando) im Schnittstellenformat

Der Befehl FWRITE ist folgendermaßen in das PLP eingebaut:

Header PLP RFSV-FWRITE Footer CRC
16 10 02 32 03 02 01 Kommando
0a 00
Größe
12 34
Filehandle
01 00
Daten
01 02 03 04 05 ...
10 03 12 34

Ist der Befehl FWRITE auf mehrere Frames aufgeteilt, so wird das im Protokoll durch den Zähler markiert. Dieser befindet sich direkt vor dem RFSV-Protokoll und zählt abwärts. Folgendes Beispiel zeigt zwei Blöcke, die einen FWRITE-Befehl mit 512 Byte Daten zeigen. Der Zähler ist gelb markiert.

Header PLP Zähler RFSV-FWRITE Teil 1 Footer CRC
16 10 02 32 03 02 02 Kommando
0a 00
Größe
02 02
Filehandle
01 00
Daten
01 02 03 04 05 ...
10 03 12 34

Header PLP Zähler RFSV-FWRITE Teil 2 Footer CRC
16 10 02 33 03 02 01 Daten
06 07 08 09 0a ...
10 03 12 34

Bei der Realisierung fü das BeOS wird dieser Zähler allerdings bereits im Grundprogramm analysiert, sodaß die Blöcke immer zusammengefaßt and das add-on geliefert werden.


Empfangsrichtung (Ergebnis) im Schnittstellenformat

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
02 00
Ergebnis
00 00
10 03 12 34

Kommandobeschreibung

Das Kommando FWRITE besteht aus 4 Informationseinheiten. Diese haben folgende Bedeutungen:

Länge in Byte mögliche Werte Bedeutung
Kommando 2 Byte 00 0a (fest) Die Kommandokennung hat immer den gleichen Wert!
Größe 2 Byte variabel Es wird die Länge des kompletten Befehles angegeben. Wird dieser auf zwei Frames aufgeteilt, dann entspricht die Angabe der Länge beider Frames.
Filehandle 2 Byte variabel Es ist der Filehandle zu übergeben, in dessen Datei geschrieben werden soll.
Daten variabel variabel Hier folgen die Daten, die geschrieben werden sollen. Die Anzahl ist im Feld Größe angegeben.

Ergebnisbeschreibung

Das Kommando FWRITE wird mit einem RESPONSE beantwortet. Dieser liefert als Ergebnis einen Fehlercode zurück. Wird 00 00 zurückgeliefert, dann ist kein Fehler aufgetreten.

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:
NO_ERROR 00 00Kein Fehler aufgetreten
Du kannst Dir alle definierten Fehlermeldungen anschauen.

Homepage von Michael Pieper
BeOS Programme
PalmBeach
PSION Link Protokollbeschreibung
RFSV Protokollbeschreibung

Letzte Änderung 04.04.1999 von Michael Pieper