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

RFSV-Kommando FDEVICEREAD


Kommandobeschreibung

Dieses Kommando fordert Informationen zu jedem einzelnen Device an. Vorher muß mit dem Kommando FOPEN ein Filedeskriptor für ein Device angefordert werden. Dieser Wert ist hier zu übergeben. Um Informationen zu einem bekannten Device zu erhalten, kann das Kommando STATUSDEVICE verwendet werden.

Es wird die Information des ersten Device zurueckgeliefert Bei einem weiteren Aufruf werden die Informationen des nächsten Devices geliefert. Das Ende der Liste ist dann erreicht, wenn die Meldung "EOF" als Ergebnis gesendet wird.

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 Kommando FDEVICEREAD hat immer das gleiche Format. Er ist folgendermaßen in das PLP eingebaut:

Header PLP RFSV-FDEVICEREAD Foot CRC
16 10 02 32 03 02 01 Kommando
08 00
Größe
02 00
Filehandle
01 00
10 03 12 34

Empfangsrichtung (Ergebnis) im Schnittstellenformat

Eine gültige Antwort erfolgt mit dem Kommando RESPONSE und liefert einen Fehlercode zurück. Pro Aufruf wird die Information von genau einem Device geliefert. Will man Informationen zum nächste Device haben, muß man das Kommando FDEVICEREAD erneut senden.

Header PLP RFSV-RESPONSE ...
16 10 02 33 02 03 01 Kommando
2a 00
Größe
5a 00
Ergebnis
00 00
...
...

... Deviceinfo
...
...
Version
02 00
Typ
02 00
wechselbar
00 00
Devicegröße
00 00 00 00
Freier Platz
00 00 00 00
Name
"boot"
Batterie
ff ff
Reserve
16 * ff
Devicename
"BeOS"
...
...

... Foot CRC
...
...
10 03 12 34

fette Werte stellen feste Werte dar, die exakt so verwendet werden!
kursive Werte stellen Beispiele dar, die anhand des Kommandos eine unterschiedliche Bedeutung haben.


Kommandobeschreibung

Das Kommando FDIRREAD besteht aus 3 Informationseinheiten. Diese haben folgende Bedeutungen:

Länge in Byte mögliche Werte Bedeutung
Kommando 2 Byte 00 08 (fest) Die Kommandokennung hat immer den gleichen Wert!
Größe 2 Byte 00 02 (fest) Es werden immer zwei Bytes übertragen.
Filename 2 Byte variabel Es ist der Filehandle zu übergeben, das zurückgeliefert wurde, als mit FOPEN das Device geöffnet wurde..

Ergebnisbeschreibung

Das Kommando FDEVICEREAD 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 variabel Abhängig von der Anzahl der übermittelten Informationseinheiten
Ergebnis 2 Byte variabel Das Ergebnis kann folgende Werte erhalten:
NO_ERROR 00 00Kein Fehler aufgetreten
Du kannst Dir alle definierten Fehlermeldungen anschauen.
Version 2 Byte 00 02 Derzeit wird nur die Version 2 unterstützt.
Typ 2 Byte variabel Legt fest, welcher Art das Device ist. Folgende Typen sind möglich:
P_FMEDIA_UNKNOWN 00 00Unbekanntes Medium
P_FMEDIA_FLOPPY 00 01Floppydisk
P_FMEDIA_HARDDISK00 02Harddiski
P_FMEDIA_FLASH 00 03Flash Prom
P_FMEDIA_RAM 00 04RAM
P_FMEDIA_ROM 00 05ROM
P_FMEDIA_WRITEPROTECTED 00 06Schreibgeschütztes Medium
P_FMEDIA_FORMATTABLE08 00Das Medium kann formatiert werden
P_FMEDIA_DUAL_DENSITY10 00das Medium hat doppelte Dichte
P_FMEDIA_INTERNAL 20 00Es ist ein internes Medium
P_FMEDIA_DYNAMIC 40 00Die größe wird dynamisch angepaßt
P_FMEDIA_COMPRESSIBLE80 00Gelöschte Daten können komprimiert werden
wechselbar 2 Byte variabel Wenn das Medium gewechselt werden kann, dann hat dieser Wert 00 01 (TRUE) ansonsten 00 00 (FALSE). Dieser Wert wird z.B: bei einem Diskettenlaufwerk gesetzt.
Devicegröße 4 Byte variabel Es wird die Größe des kompletten Devices in Bytes angegeben.
Freier Platz 4 Byte variabel Es wird die Anzahl des freien Speicherplatzes auf dem Devices in Bytes angegeben.
Volumenname 16 Byte 0-terminierter String Hier darf der Volumenname angegeben werden. Der Name darf maximal 15 Byte lang sein. das letzte Byte muß ein 0-Byte sein
Batteriestatus 2 Byte variabel Gibt den Status der Batterie des Devices an. (z.B: bei einem gepuffertem RAM)
Reserve 16 Byte 16 * ff Für Erweiterungen freigehaltener Platz
Devicename 16 Byte 0-terminierter String Hier wird der Devicename eingetragen

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

Letzte Änderung 04.04.1999 von Michael Pieper