CRCF 0.2.0 (Muster)
aus DerMoba, der Wissensdatenbank für Modellbahner
# Muster fuer einen Common Railroad Configaration File # auf Basis der Definition CRCF 0.2.0 # Die CRCF beschreiben einen Reihe von Dateien zur Konfiguration # von Serverprozessen zur Steuerung von digitalen Modelleisenbahnen. # Clientprozesse koennen auf diese Informationen ueber einen # entsprechenden Auskunftsbefehl zugreifen. # Die in CRCF zu speichernden Informationen ergeben sich aus dem # Bedarf des SRCP (Simple Railroad Command Protocol) wie von Torsten # Vogt &; anderen definiert. In diesem Sinne sind die CRCF eine # Ergaenzung zum SRCP. # Ziel ist es eine klare, auch vom Menschen lesbare Basis fuer die # F&aehigkeiten einer konkreten Serverimplementierung einerseits und # eine Beschreibung der verwendeten Dekoder mit ihren spezifischen # Eigenschaften andererseits zu schaffen. # Diese Fassung basiert auf SRCP Version 0.7.1 # http://www.der-moba.de/Digital/srcp-0.7.1/srcp.html # Konventionen # ------------ # Alle Informationen werden einzeilig mit variabler Laenge gespeichert. # Eine Zeile wird mit dem Zeichen '\n' (line feed, LF, #10) abgeschlossen. # Ein vorangestelltes '\r' (carriage return, CR, #13) wird akzeptiert. # Jede Informationszeile besteht aus Worten, die durch Whitespace # (Leerzeichen, Tabulatoren) getrennt sind. # Die Worte der Informationszeilen koennen aus der Menge der Zeichen # { '0', .., '9', '-', 'A', .., 'Z', 'a', .., 'z' } gebildet werden. # Der Server wertet die Informationszeilen case-sensitive aus, d.h. # zwischen Gross- und Kleinbuchstaben wird unterschieden. # Kommentarzeilen beginnen mit dem Zeichen '#' und enden mit dem Zeilenende. # Sie duerfen alle druckbaren Zeichen des ASCII Zeichensatzes enthalten. # Sie dienen ausschliesslich der besseren Lesbarkeit durch einen Menschen. # Sie werden ebenso ignoriert wie Leerzeilen (nur White Spaces und CR, LF). # Einzelne Bereiche werden durch Ueberschriften getrennt. Diese # beginnen (Zeilenanfang) mit '= ' und enden mit ' ='. Weiterer Text in der # Ueberschriftzeile ist Kommentar und wird ignoriert. # Alle Informationszeilen beginnen mit einer Kennung aus vier Buchstaben, # die die Art der Information kennzeichnet. Die weiteren Angaben sind je # nach Art der Information unterschiedlich. Informationen ueber Protokolle # enthalten eine weitere Angabe zur genauen Identifizierung (Protokoll/ # Modultyp). Informationen ueber Dekoder und Rueckmelder enthalten zwei # weitere Angaben zur genauen Identifizierung (Protokoll/Modultyp + # Adresse/Portnummer). Fuer jede vom Server unterstuetzte Funktion / # Eigenschaft gibt es eine Informationszeile. Fuer jeden dem Server # bekannten Dekoder / Rueckmelder gibt es eine Informationszeile. </P> # Die Informationen sind in Bereiche aufgeteilt. Jeder Bereich hat eine # Ueberschrift. Alle Informationen aus einem Bereich muessen hinter dieser # Ueberschrift stehen. Stehen sie an einer anderen Stelle, so werden sie # als Fehler gewertet. Innerhalb eines Bereichs ist eine angemessene # Ordnung sinnvoll (Name | Protokoll | Adresse | ...). Diese Ordnung ist # fuer die bessere Lesbarkeit und daher nicht zwingend vorgeschrieben. # Es steht im Ermessen des Erstellers, welche Ordnung, wenn ueberhaupt, # er/sie benutzt. # Servereigenschaften # =================== = Version = VERS errddcd v0.9.514; SRCP 0.7.2 CRCF 0.2.1 = Ports = PORT COMMAND BOTH PORT FEEDBACK SERVER PORT INFO SERVER = Server Commands = SCMD LOGOUT SCMD RESET SCMD SHUTDOWN SCMD POWER SCMD VOLTAGE SCMD TIME = General Commands = GCMD SET GL GCMD SET GA GCMD SET TIME GCMD SET POWER GCMD GET GL GCMD GET GA GCMD GET FB GCMD GET TIME GCMD GET ROWER GCMD WAIT FB GCMD WAIT TIME GCMD WAIT POWER GCMD INIT FB GCMD INIT TIME # GCMD TERM .. GCMD WRITE GL GCMD WRITE GA GCMD VERIFY GL GCMD VERIFY GA # GCMD READ GL # GCMD READ GL GCMD CONFGET VERS GCMD CONFGET PORT GCMD CONFGET SCMD GCMD CONFGET GCMD GCMD CONFGET PRGL GCMD CONFGET PRGA GCMD CONFGET PRFB GCMD CONFGET DCGL GCMD CONFGET DCGA GCMD CONFGET DCFB GCMD CONFGET FTXT GCMD CONFGET ITXT GCMD CONFGET LTXT # Protokolle # ========== # Protokolle Lokdekoder # PRGL <prot> <addr_max> <step_max> <dir> <nro_f> = Protocols Loco & Function = PRGL M1 80 14 rel 0 PRGL M2 80 14 rel 4 PRGL M3 256 28 rel 4 PRGL M4 256 14 rel 4 PRGL M5 80 27 rel 4 PRGL MF 80 -- --- 4 PRGL NB 99 14 abs 0 PRGL N1 99 28 abs 4 PRGL N2 99 128 abs 4 PRGL N3 9999 28 abs 4 PRGL N4 9999 128 abs 4 PRGL PS 999999 --- --- - # Protokolle Schaltdekoder # PRGA <prot> <addr_max> = Protocols Accessory = PRGA M 256 PRGA N 4096 # Protokolle Rueckmelder # PRFB <module-type> <port_max> <port_inc> = Feedback Types = PRFB S88 256 16 PRFB I8255 512 64 PRFB M6051 256 16 # ================== Ende der Servereigenschaften ================== # ====== Hier beginnt eigentlich eine neue Datei für die Dekoder ====== # Dekoder und Eigenschaften # ========================= # Lok- und Funktionsdekoder # DCGL <prot> <addr> <step> <dir> <func> <prog> <ps_addr> <V_max> <type> <name> = Locomotive & Function = # prot addr step dir func prog ps_addr V_max type name> DCGL M1 32 14 rel 01Sl ------- 038027 130 Delta P8-EpIV DCGL M2 13 14 abs 03------ ------- 236143 65 Delta2 236143 DCGL M3 132 28 abs 05Sl--Sa---- ------- 141543 120 6090 E41-543 DCGL M4 255 14 abs 05SlLiHo---- ------- 603012 140 6080 VT603 DCGL M5 73 27 abs 05SLGl--DaLT ------- 038345 130 Wiking P8-EpIII DCGL MF 27 00 rel 05--Li--Ta-- ------- 111111 160 MarFunk Tanzwagen DCGL NB 27 00 abs 00 ------- 111111 40 Le103xf --- DCGL N1 32 28 abs 05HlNb--BlWi ------- 2358 90 Dt601 F7-SFBN DCGL N2 93 128 abs 05HlNb--BlWi FW-VRV- 8765 90 ZiM61 F7-BN DCGL N3 1212 28 abs 05HlNb--BlWi ------- 1212 110 --- A8-MWRR DCGL N4 1234 128 abs 05HlNb--BlWi ------- 3456 100 DT601 GM-IRR DCGL N1 99 28 abs 05--KDKAKHKM ------- 1 90 Roco-K Kran-1 DCGL N4 99 28 abs 05SlDKHu---- ------- 260037 80 Roco-x V60 # Schaltdekoder # DCGA <prot> <addr_min> <addr_max> <type> <name> = Accessory = # prot a_min a_max type name DCGA M 21 24 Ma-K83 Hbf-links-1 DCGA M 153 156 Ma-K84 BW-Licht DCGA N 1021 1024 Le-xxx Ein-Adorf DCGA N 153 156 Dt-yyy Ein-Bstadt DCGA N 153 156 LD-zzz Licht-Bf # Rueckmelde Module # DCGA <modul-type> <port_min> <port_max> <type> <name> = Feedback Units = # mod-typ p_min p_max type name DCGA i8255 1 64 Conrad Belegung-Strecke DCGA S88 17 32 Mar-S88 Kontakte-Bahnhof DCGA M6051 33 48 Vie-S88 Faller-CarSystem # Texttabellen # <TEXT-TYPE> <short> <lang> <freetext> = Messages = # Langtext zu Funktionen (sortiert nach Sprache, Kuerzel) # [ Kuerzel zwei Zeichen, je nach Sprache verschieden ] FTXT Da de Dampf FTXT DK de Digital Kupplung FTXT Fh de Führerstand hinten Licht FTXT Fl de Fernlicht FTXT Fv de Führerstand vorne Licht FTXT Gl de Glocke FTXT KD de Kran Drehen FTXT KA de Kran Arm FTXT KH de Kran Hacken FTXT KM de Kran Magnet FTXT Li de Licht FTXT LT de Licht Triebwerk FTXT Lu de Lüfter FTXT Pf de Pfeife FTXT Sa de Stromabnehmer FTXT Sl de Spitzlicht FTXT So de Sound FTXT Ta de Tanzen FTXT Tx de Telex Kupplung FTXT AK en Automatic Knuckle (automatische Kupplung) FTXT Bl en Bell (Glocke) FTXT Hl en Headlight (Spitzlicht) FTXT Nb en Numberboard (Nummerntafel) FTXT ST en Steam (Dampf) FTXT Wh en Whistle (Pfeife) # Langtext zu INFO # [ Das Kürzel sind in der Regel negative Zahlen ] ITXT -1 de nicht unterstützt ITXT -2 de keine Daten ITXT -3 de Zeitlimit überschritten ITXT -1 en unsupported ITXT -2 en no data ITXT -3 en timeout # Langtext zu Sprachen # [ Das Kürzel besteht aus zwei Kleinbuchstaben ] LTXT de de deutsch LTXT en de englisch LTXT fr de franzoesisch LTXT en en english LTXT de en german LTXT fr en french LTXT fr fr francais LTXT de fr allemand LTXT en fr anglais # Einige andere Laenderkuerzel # LTXT at de Oesterreich # LTXT ch de Schweiz # LTXT it de Italien # LTXT us de USA # LTXT ca de Kanada # LTXT jp de Japan # LTXT hk de Hongkong # LTXT dk de Daenemark # LTXT se de Schweden # LTXT no de Norwegen # LTXT sf de Finnland # LTXT nl de Niederlande # LTXT be de Belgien # LTXT lu de Luxemburg # LTXT .. de ... # LTXT .. de ...