home *** CD-ROM | disk | FTP | other *** search
/ Media Share 9 / MEDIASHARE_09.ISO / hamradio / tfpcx200.zip / TF21C.DOC < prev    next >
Text File  |  1992-08-17  |  35KB  |  710 lines

  1.  
  2.  
  3.                          T H E  F I R M W A R E
  4.                          ======================
  5.  
  6.                             AX.25 Version 2
  7.                        Multi Channel TNC Firmware
  8.                              Version 2.1c
  9.  
  10.  
  11. Diese  Firmware unterstuetzt das vollstaendige AX.25 Protokoll,  Version
  12. 2.0,  der Link Ebene,  wie es in der ARRL Spezifikation vom Oktober 1984
  13. beschrieben  ist.  Die  alte Version 1.x wird  auch  verarbeitet.  Diese
  14. Software kann mehrere Verbindungen gleichzeitig in beiden  Protokollver-
  15. sionen bedienen. Das vorliegende Eprom  wurden fuer maximal vier gleich-
  16. zeitige Verbindungen assembliert.  Es ist aber jede beliebige Zahl durch
  17. Veraenderung eines Parameters im Quelltext moeglich.
  18. Zusaetzlich ist  in  dem  Eprom der KISS-Modus aus dem bekannten TCP/IP-
  19. Paket von  KA9Q implementiert.  Die Parameter der Hostmode-Firmware wer-
  20. den  n i c h t  veraendert  (KISS benutzt  eigene  andere  Parameter und
  21. ueberschreibt nicht  die Firmware-Variablen. Nach  einem Reset sind alle
  22. Parameter unveraendert (KISS wurde in  ein linkfaehiges Codesegement um-
  23. geschrieben). Das  KISS-Kommando 255, welches  wie  ein  Reset (Aus- und
  24. Einschalten des TNC) wirkt  und eine  programmgesteuerte  Rueckkehr  zur
  25. Firmware  ermoeglicht, ist  implementiert. Die  Firmware-Uhr  laeuft bei
  26. KISS-Betrieb nicht weiter.
  27.  
  28.  
  29. Nach  einem  Reset  wird  eine  Pruefsumme  errechnet, die in der Start-
  30. meldung ausgegeben wird. Sie muss mit der in Klammern aufgefuehrten Zahl
  31. uebereinstimmen  (auch  bei  veraenderten  Parametern im Eprom). Stimmen
  32. die Zahlen  nicht  ueberein,  so  muss ein Fehler beim Programmieren des
  33. Eprom's passiert sein.
  34.  
  35.  
  36. Das TNC-Rufzeichen ist leer und  kann mit dem 'I'-Befehl gesetzt werden.
  37. Ebenso koennen alle anderen  Standard Parameter  geaendert werden.  Die
  38. neuen Werte werden dann im RAM gesichert.
  39.  
  40.  
  41. Befehle  und Informationen werden dem TNC als  Zeilen  uebergeben.  Jede
  42. Zeile  darf bis zu 256 Zeichen lang sein,  wobei das Schlusszeichen <CR>
  43. mitzaehlt.  Wenn das 256.  Zeichen kein <CR> ist, wird es ueberlesen und
  44. ein <BEL> zum Terminal geschickt. Einzelne Zeichen koennen mit <BS> = 08
  45. HEX oder <DEL> = 7F HEX geloescht werden.  Mit <CTL-U> oder <CTL-X> kann
  46. die gesamte Zeile geloescht werden.  Ein <CTL-R> bringt die Schreibmarke
  47. ohne Loeschen an den Zeilenanfang,  so dass eingelaufene Meldungen ange-
  48. zeigt werden koennen.  Mit einem zweiten <CTL-R> kann dann wieder an das
  49. Ende der angefangenen Zeile gegangen werden,  um die Eingabe  fortzuset-
  50. zen.  Zwischen diesen beiden <CTL-R> werden alle Eingaben ausser <X-OFF>
  51. und  <X-ON>  ignoriert.  <BEL> Zeichen werden als <BEL> an das  Terminal
  52. weitergereicht,  sowohl bei der Eingabe als auch beim Loeschen.  Zeilen,
  53. die mit <ESC> beginnen (wird als '*' ausgegeben) werden als  Befehlszei-
  54. len interpretiert.  Wenn ein Befehl ohne Parameter eingegeben wird, wird
  55. der  augenblickliche  Wert dieses Parameters angezeigt. Alle Zeilen, die
  56. nicht mit <ESC> beginnen, werden als Information gesendet.
  57.  
  58.  
  59. Die Firmware stellt dem Benutzer fuenf logische TNC Kanaele bereit,  die
  60. von  0 bis 4 numeriert werden.  Das Terminal ist immer einem dieser  Ka-
  61. naele logisch zugeordnet,  die Auswahl erfolgt mit dem 'S'-Befehl. Kanal
  62. 0  ist reserviert fuer nicht protokollierte Sendungen  (CQ,  Bake).  Der
  63. Leitweg  fuer  Kanal  0 wird wie bei den anderen Kanaelen  mit  dem  'C'
  64. Befehl gewaehlt.  Die Kanaele 1-4 senden im Terminal-Modus auch an 'CQ',
  65. solange sie nicht mit anderen Stationen verbunden sind. Connect Versuche
  66. koennen auf jedem beliebigen, derzeit nicht belegten Kanal gesendet wer-
  67. den.  Einlaufende  Connect Versuche  anderer  Stationen werden  auf  den
  68. ersten  freien  Kanal gelegt, sofern dadurch nicht die durch den 'Y' Be-
  69. fehl gegebene maximale Zahl  gleichzeitiger Verbindungen  ueberschritten
  70. wird. Information,  die auf  einem  belegten, derzeit nicht mit dem Ter-
  71. minal verbundenen  Kanal einlaeuft,  wird  gespeichert, bis dieser Kanal
  72. auf das Terminal geschaltet  wird.  Mit dem 'L'-Befehl kann leicht fest-
  73. gestellt werden, ob  auf anderen Kanaelen Informationen eingelaufen sind
  74. und auf den Abruf  warten. Informationen werden nur auf dem gerade ange-
  75. waehlten Kanal  gesendet. Nach einem  Disconnect werden eingegangene In-
  76. formationen bis zum Abruf im TNC-RAM gespeichert.  Wenn der Leitweg oder
  77. das Ziel gewechselt werden sollen,  waehrend eine Verbindung gerade auf-
  78. gebaut wird oder besteht, muss nicht erst ein Disconnect ausgeloest wer-
  79. den,  es genuegt, mit einem neuen 'C'-Befehl  die Verbindung  neu aufzu-
  80. bauen. Es geht keine  Information dadurch  verloren. Es  ist aber  nicht
  81. zulaessig,  die gleiche  Station auf mehr  als  einem Kanal zur gleichen
  82. Zeit zu waehlen.
  83.  
  84.  
  85. Die Protokollversion,  mit der die Verbindung aufgebaut wird,  wird  mit
  86. dem 'V'-Befehl gewaehlt, wird aber automatisch auf die bei der Gegensta-
  87. tion  verwendete Version geaendert.  Version 2 ist besser fuer Netzwerke
  88. geeignet und erlaubt eine bessere Kanalausnutzung,  besonders unter  er-
  89. schwerten Bedingungen.  Version 2 sollte daher moeglichst immer gewaehlt
  90. werden. Bei Benutzung  der Version 2 des  Protokolls  wird ein Timer ge-
  91. startet,  sobald keine Information mehr zu uebertragen  ist.  Bei  einer
  92. Pause von mehr als drei Minuten wird der TNC der Gegenstation abgefragt,
  93. um sicherzustellen,  dass die Verbindung  noch existiert.  Wenn  die mit
  94. dem 'N'-Befehl vorgegebene Zahl  an  Versuchen erfolglos  geblieben ist,
  95. wird versucht,  die Verbindung neu aufzubauen. Hierdurch  wird  auch der
  96. Fall abgedeckt,  dass jemand  eine  Verbindung  aufbaut  und  dann  ohne
  97. Disconnect wieder verschwindet.  Es ist  nicht zulaessig  die Protokoll-
  98. version, waehrend eine Verbindung besteht, zu aendern.
  99.  
  100.  
  101. Fuer die  Befehle 'F', 'I', 'N', 'O' und 'V' werden  die  Parameter fuer
  102. jeden Kanal getrennt gespeichert. Der Wert des Kanals 0 wird  im RAM ge-
  103. speichert und wird  zur Initialisierung  der Kanaele  1-4 nach Reset und
  104. nach  Trennen der  Verbindung benutzt.  Man kann daher vor oder waehrend
  105. einer Verbindung diese Werte aendern und erhaelt automatisch am Ende der
  106. Verbindung  die Standard Werte wieder zurueck.  Mit dem 'D'-Befehl  kann
  107. ein freier Kanal auch wieder initialisiert werden.
  108.  
  109.  
  110. Mit  dem  'M'-Befehl kann  die Kanalaktivitaet  beobachtet  werden.  Der
  111. Parameter fuer diesen Befehl entscheidet,  welche Pakettypen  beobachtet
  112. werden sollen. Mehrere Parameter koennen gleichzeitig angegeben werden.
  113.  
  114.       Parameter     Paket-Typ
  115.       ---------     ---------
  116.           N         nichts
  117.           I         Informationen
  118.           U         unprotokolliert
  119.           S         Status (Kontroll Pakete)
  120.           C         auch beobachten, wenn eine Verbindung besteht
  121.           +         nur Pakete von/zu bestimmten Stationen (maximal 8)
  122.           -         keine Pakete von/zu bestimmten Stationen (maximal 8)
  123.  
  124. Die kombinierte Benutzung der '+' und '-' Parameter ist nicht zulaessig.
  125. Sie muessen als letzter  Parameter vor den Rufzeichen eingegeben werden.
  126. Die Eingabe von '+' oder '-' ohne Rufzeichen loescht die aktuelle Liste.
  127.  
  128. Ein '*',  der in einer Rufzeichenliste erscheint,  kennzeichnet die Sta-
  129. tion,  die  das Paket gesendet hat.  Der Pakettyp kann aus der folgenden
  130. Liste entnommen werden.
  131.  
  132.           Name           Beschreibung
  133.           ----           ------------
  134.           RRa            bereit zum Empfang
  135.           RNRa           nicht bereit zu Empfang
  136.           REJa           Paket nicht akzeptiert
  137.           UI             unprotokollierte Information (an alle)
  138.           DM             Verbindung besteht nicht
  139.           SABM           Aufforderung zum Verbindungsaufbau
  140.           DISC           Aufforderung zum Trennen der Verbindung
  141.           UA             Bestaetigung eines nicht numerierten Paketes
  142.           FRMR           Protokoll Fehler
  143.           Iab            Information
  144.           ?ccH           nicht definierter Typ
  145.  
  146. Hierbei bedeutet:
  147.           a  = Nummer des naechsten erwarteten Paketes
  148.           b  = Nummer dieses Paketes
  149.           cc = Hexadezimal Zahl
  150.  
  151. Ein  weiteres  Zeichen  gibt  die verwendete  Protokollversion  und  das
  152. Poll/Final sowie das Command/Response Bit an:
  153.  
  154.      <leer> = Protokollversion 1 ohne P/F Bit
  155.           ! = P/F Bit in Protokollversion 1
  156.           ^ = Kommando Paket in Protokollversion 2 ohne Poll Bit
  157.           + = Kommando Paket in Protokollversion 2 mit Poll Bit
  158.           - = Antwort Paket in Protokollversion 2 mit Final Bit
  159.           v = Antwort Paket in Protokollversion 2 ohne Final Bit
  160.  
  161. Das Protokoll Identifikationsfeld wird in hexadezimaler Form ausgegeben.
  162.  
  163.  
  164. Mit dem 'U'-Befehl kann ein Connect-Text ein- bzw. ausgeschaltet werden.
  165. Es ist moeglich,  einen frei waehlbaren Text an die anrufende Station zu
  166. senden  und dann der rufenden Station die Moeglichkeit  zu  geben,  eine
  167. kurze Nachricht zu hinterlassen. Dies kann auf allen Kanaelen gleichzei-
  168. tig  geschehen  und  beeinflusst in keiner Weise  die  Moeglichkeit  des
  169. Bedieners,  Informationen  in eine bestehende Verbindung einzugeben oder
  170. seinerseits  Verbindungen aufzubauen.  Wenn der Ctext eingeschaltet ist,
  171. werden  alle Zustandsmeldungen des  betreffenden  Kanals gespeichert und
  172. erst auf das Terminal gegeben,  wenn dieser Kanal angewaehlt  wird. Sta-
  173. tusmeldungen  werden  daher dann in zeitlich  richtiger Reihenfolge  zu-
  174. sammen  mit den eingelaufenen  Informationen  ausgegeben. Ausserdem wird
  175. der mit dem 'U'-Befehl eingegebene Text an jede anrufende Station gesen-
  176. det.  Wenn Kanal 0 als letztes gewaehlt wurde koennen  Stationen auf den
  177. Kanelen 1-4 anrufen und Meldungen hinterlassen, wobei die Zahl der maxi-
  178. mal gleichzeitig moeglichen Verbindungen mit 'Y' gewaehlt wurde. Mit dem
  179. 'L'-Befehl kann  festgestellt werden, welcher  Kanal  Informationen ent-
  180. haelt.  Wenn dann dieser Kanal gewaehlt  wird, werden alle gespeicherten
  181. Informationen und Meldungen dieses Kanals auf das Terminal gegeben. Wenn
  182. mit dem 'Z'-Befehl  X-ON/X-OFF-Protokoll  gewaehlt wurde, kann  die Aus-
  183. gabe mit <CTL-S> gestopt und mit <CTL-Q> wieder aufgenommen werden.
  184.  
  185.  
  186. Mit  dem 'H'-Befehl  wird  die  eingeaute  Heardliste  aktiviert.  Diese
  187. Liste unterscheidet sich aber von den bekannten Heardlisten anderer Pro-
  188. gramme  oder TNC-Betriebssoftware  in  einigen Punkten. Zunaechst ist es
  189. keine Liste der Art "die letzten 20 gehoerten Stationen". Diese Art Lis-
  190. te  hat  sich bei starkem  Betriebsaufkommen als nicht sehr sinnvoll er-
  191. wiesen.  Die bei der Firmware implementierte Liste ist  eine  dynamische
  192. Liste. Die Anzahl der Calls, die sie aufnehmen kann, wird nur  durch die
  193. Anzahl der freien Buffer bestimmt. Bei Bestueckung mit 32k RAM liegt die
  194. maximal moegliche Anzahl bei ueber 600 Rufzeichen. Das staendige Wachsen
  195. der Liste bis an die Buffergrenze kann durch Setzen eines Parameters be-
  196. grenzt werden. Fuer  jedes  im  Absenderfeld eines AX.25-Frames gehoerte
  197. Rufzeichen wird in der Liste gespeichert :
  198.  
  199.            - Rufzeichen und SSID
  200.            - Datum und Zeit wann zuerst gehoert
  201.            - Datum und Zeit wann zuletzt gehoert
  202.            - Anzahl der gehoerten I-Frames
  203.            - Anzahl der gehoerten RR-Frames
  204.            - Anzahl der gehoerten REJ-Frames
  205.            - Anzahl der gehoerten RNR-Frames
  206.  
  207. Die Speicherung  des  Digipeaterweges ist im  Zeitalter von TheNet nicht
  208. sinnvoll. Durch die Beobachtung der Frame-Anzahlen  koennen gewisse sehr
  209. einfache statistische Betrachtungen gewonnen  werden, z.B. was effektive
  210. Aktivitaet oder Qualitaet von Aussendungen angeht(Verhaeltnis I/RR/REJ).
  211.  
  212. Da  fuer  jedes  gehoerte  Paket  die  Liste (linear, weil dynamisch an-
  213. gelegt)  durchlaufen  werden muss, setzt das Fuehren einer grossen Liste
  214. die  Geschwindigkeit der Firmware herab. Mit 'H 0' stellt man das  auto-
  215. matische Updaten der Heardliste ab. Die  Liste bleibt im Speicher,  aber
  216. die empfangenen Pakete werden nicht fuer die Liste untersucht.
  217.  
  218. Der 'H'-Befehl laeuft auch im Hostmodus einwandfrei. Bei der Ausgabe der
  219. Heardliste gibt es aber einiges zu beachten. Die erste Zeile  (H, Anzahl
  220. gehoerte, maximal) wird mit dem Hostmodecode 1 (Success, Message follows
  221. null terminated) zurueckgegeben.  Die  eigentliche  Liste  wird dann auf
  222. G/G0 auf dem Kanal 0 wie Monitorheader  zurueckgegeben  (Code 5 Monitor-
  223. header, null  terminated, Info follows). Die  letzte  Zeile wird mit dem
  224. Code 4 (Monitorheader,  null terminiert) ausgegeben. Dieses Handling der
  225. Ausgabe ueber mehrere Zeilen  funktioniert  mit  den  meisten  Terminal-
  226. programmen fuer  den Hostmodus (z.B. TINA) ohne jede Aenderung in diesen
  227. Programmen.
  228.  
  229. Die Heardliste ist resident, d.h. sie  bleibt bei einem Reset oder einem
  230. Abschalten bei Pufferung des RAM mit Batterie erhalten.
  231.  
  232.  
  233. Die Firmware  2.1c  hat  eine  24-Stunden-Uhr  und  einen  Kalender  per
  234. Software  eingebaut. Man  kann wahlweise alle Statusmeldungen (also CON-
  235. NECT REQUEST fm, CONNECTED to, usw.) und  Monitormeldungen (Header gemo-
  236. nitorter  Pakete)  mit  einem  Datum/Uhrzeit-Stamp  versehen lassen. Mit
  237. 'K 0' schaltet  man  die  Ausgabe dieses Stamps ab. Trotzdem werden alle
  238. Meldungen/Header  mit einem  Stamp versehen, ein  Einschalten des Stamps
  239. wirkt also auch richtig bei laengere Zeit im Buffer stehenden Meldungen/
  240. Headern  mit  abgeschaltetem Stamp. Mit 'K 1' schaltet man die Stampaus-
  241. gabe fuer Statusmeldungen ein, mit  'K 2' die Stampausgabe  fuer Status-
  242. meldungen und Monitorheader. Eingabe von 'K' zeigt die aktuelle Einstel-
  243. lung gefolgt vom Datum und der Uhrzeit. Je nachdem wie man das Datum ge-
  244. setzt  hat,  wird  es  bei Stamps entweder im europaeischen oder  ameri-
  245. kanischen Format ausgegeben. Das Datum und die  Uhrzeit werden  bei QRES
  246. oder einem  Kaltstart  geloescht. Bei einem Warmstart laeuft die Zeit ab
  247. dem Zeitpunkt weiter, der beim Ausschalten des TNC vorlag. Anhand  einer
  248. nachgehenden  Uhr kann  man so leicht feststellen, ob sich ein Stromaus-
  249. fall waehrend des Betriebs  ereignet hat. Tests haben  ergeben, dass die
  250. Uhr ohne Korrekturen sehr genau laeuft.
  251.  
  252.  
  253.  
  254.  
  255.                        BEFEHLS-UEBERSICHT
  256.                        ==================
  257.  
  258. Mit [] sind moegliche, aber nicht notwendige Parameter markiert
  259.  
  260.  
  261. BEFEHL         PARAMETER               BESCHREIBUNG
  262. ------         ---------               ------------
  263.  
  264.   A (1)            0             Auto Linefeed ausgeschaltet
  265.                    1             Auto linefeed eingeschaltet
  266.  
  267.   C      Rufz1 [Rufz2 ... Rufz9] Connect-Weg (in Kanal 0: unproto)
  268.  
  269.   D                              Verbindung aufloesen
  270.  
  271.   E (1)            0             kein Echo fuer eingegebene Zeichen
  272.                    1             Echo fuer eingegebene Zeichen
  273.  
  274. * F (4)          1...15          Wartezeit fuer Antwort (Sekunden)
  275.  
  276.   G               [0]            Information im Host-Modus holen
  277.                   [1]            Status im Host-Modus holen
  278.  
  279.   H (0)                          Heardliste anzeigen
  280.                    0             Heardlisten-Update ausschalten
  281.                    1             Heardlisten-Update einschalten
  282.                    2             Heardliste loeschen
  283.                    n             Maximalanzahl Calls in Heardliste setzen
  284.  
  285. * I            Rufzeichen        eigenes Rufzeichen
  286.  
  287.   JHOST (0)        0             Terminal-Modus eingeschaltet
  288.                    1             Host-Modus eingeschaltet
  289.  
  290.   K (0)                          Stamp und Datum/Zeit anzeigen
  291.                    0             Stamp abschalten
  292.                    1             Stamp Statusmeldungen einschalten
  293.                    2             Stamp Status- und Monitormeldungen
  294.                                  einschalten
  295.                 TT.MM.JJ         Datum setzen, europaeische Form
  296.                 MM/DD/YY         Datum setzen, amerikanische Form
  297.                 HH:MM:SS         Uhrzeit setzen
  298.  
  299.   L              [0...4]         Statusanzeige fuer die Kanaele
  300.  
  301.   M (IU)         NIUSC+-         Monitor-Betriebsart
  302.  
  303. * N (10)         0...255         Anzahl der Versuche (0 = unendlich oft)
  304.  
  305. * O (4)          1...7           Anzahl der unbestaetigten Pakete
  306.  
  307.   P (64)         0...255         P-Persistenz Wert
  308.  
  309.   QRES                           Neu-Start der Firmware
  310.  
  311.   R (1)            0             Digipeater ausgeschaltet
  312.                    1             Digipeater eingeschaltet
  313.  
  314.   S (1)          0...4           Kanal-Nummer (0 = unproto)
  315.  
  316.   T (30)         0...127         Wartezeit von PTT ein bis Daten (10ms)
  317.  
  318.   U (0)   0      [Text]          kein unbeaufsichtigter Betrieb
  319.           1      [Text]          unbeaufsichtigter Betrieb
  320.  
  321. * V (2)            1             Protokoll Version 1
  322.                    2             Protokoll Version 2
  323.  
  324.   W (10)         0...127         Zeitschlitz fuer P-Persistenz (10 ms)
  325.  
  326.   X (1)            0             PTT fuer Sender unterdrueckt
  327.                    1             PTT fuer Sender freigegeben
  328.  
  329.   Y (1)          0...4           Maximale Anzahl von Verbindungen
  330.  
  331.   Z (3)            0             Flow  Aus    , Xon/off  Aus
  332.                    1             Flow  Ein    , Xon/off  Aus
  333.                    2             Flow  Aus    , Xon/off  Ein
  334.                    3             Flow  Ein    , Xon/off  Ein
  335.  
  336.   @  B                           Zeigt Anzahl der freien Puffer
  337.  
  338.   @  D (0)         0             Full duplex ausgeschaltet
  339.                    1             Full duplex eingeschaltet
  340.  
  341.   @  K                           TNC in Kiss-Modus schalten
  342.  
  343.   @  S                           Momentaner Link-Status
  344.  
  345.   @  T2 (100)    0...255         Timer T2 (10ms)
  346.  
  347.   @  T3 (18000)  0...32767       Timer T3 (10ms)
  348.  
  349.   @  V  (0)        0             Rufzeichencheck abgeschaltet
  350.                    1             Rufzeichencheck eingeschaltet
  351.  
  352.  
  353. Die  Grundeinstellungen (aus dem Eprom) stehen in runden  Klammern.  Mit
  354. '*' sind die Befehle markiert, die fuer jeden Kanal getrennt eingestellt
  355. werden  koennen (bei RESET werden aber die gespeicherten Werte von Kanal
  356. 0 fuer alle anderen Kanaele uebernommen).
  357.  
  358.  
  359.  
  360.  
  361.                         BESCHREIBUNG DER BEFEHLE
  362.                         ========================
  363.  
  364.  
  365. Mit dem 'A'-Befehl kann das automatische Einfuegen von  LINEFEED-Zeichen
  366. nach  einem CARRIAGE RETURN zum Terminal ein- bzw.  ausgeschaltet werden
  367. (AUTOLF).
  368.  
  369.  
  370. Der  'C'-Befehl  wird fuer den Aufbau einer Verbindung (Connect)  benoe-
  371. tigt.  Man  beachte,  dass kein 'v' oder 'via' zwischen der  Empfaenger-
  372. adresse und den Digipeater-Rufzeichen erforderlich ist.  Waehrend  einer
  373. bestehenden Verbindung ist es mit dem 'C'-Befehl moeglich,  die Digipea-
  374. ter-Rufzeichen  und somit den Connect-Weg zu aendern.  Ein  Aendern  der
  375. Empfaengeradresse  ist nicht moeglich.  Weiterhin ist es nicht zulaessig
  376. ein und die selbe Station in mehr als einem Kanal zu connecten. Ein Con-
  377. nect-Befehl  der  auf Kanal 0 ausgefuehrt,  wird setzt  den Weg fuer UI-
  378. Pakete.
  379.  
  380.  
  381. Zum  Trennen (Disconnect) einer Verbindung wird der 'D'-Befehl  benutzt.
  382. Sind bei der Eingabe des 'D'-Befehls noch  nicht alle Informationen aus-
  383. gesendet bzw. bestaetigt, dann wird der Disconnect erst nach Eingang der
  384. Bestaetigung fuer das  letzte Informationspaket  ausgefuehrt. Durch Wie-
  385. derholung  des 'D'-Befehls kann dieser Vorgang  abgebrochen werden. Wird
  386. der 'D'-Befehl waehrend des Aufbaus  einer Verbindung  (Connect-Versuch)
  387. oder des Beendens (Disconnect) einer Verbindung  eingegeben, dann  kehrt
  388. der TNC sofort in den Disconnect-Zustand  zurueck.  Wird  der 'D'-Befehl
  389. im Disconnected-Zustand  eingegeben, dann  werden alle Parameter des ge-
  390. rade  in Gebrauch  befindlichen Kanals  mit  den  Parameter  vom Kanal 0
  391. initialisiert.
  392.  
  393.  
  394. Mit  dem 'E'-Befehl wird das ECHO von Eingabe-Zeichen (Daten oder Befeh-
  395. le) zum Terminal ein- bzw. ausgeschaltet.
  396.  
  397.  
  398. Mit dem 'F'-Befehl wird die Wartezeit fuer Wiederholungen (FRACK) einge-
  399. stellt . Ist nach Ablauf dieser Zeit das Paket noch nicht bestaetigt, so
  400. wird es wiederholt. Die Formel lautet:
  401.  
  402.            Zeit (Sekunden) = FrameAck * (2 * Anzahl der Digipeater + 1)
  403.  
  404. Das  FRACK-Intervall  kann fuer jeden der 4 Connect-Kanaele jeweils  ge-
  405. trennt  eingestellt werden.  Nach einem RESET oder Disconnect wird  aber
  406. immer der Parameter von Kanal 0 uebernommen.
  407.  
  408.  
  409. Mit dem 'G'-Befehl koennen virtuelle Kanaele des TNC im Host-Modus abge-
  410. fragt werden.  Wird kein Parameter spezifiziert, dann wird die chronolo-
  411. gisch  naechste  Mitteilung (Information  oder  Linkstatus)  ausgegeben,
  412. vorausgesetzt,  dass ueberhaupt eine Mitteilung bereit steht.  Im Termi-
  413. nal-Modus wird dieser Befehl nicht erkannt und es kommt eine  Fehlermel-
  414. dung. Mehr darueber im Kapitel ueber den Host-Modus.
  415.  
  416.  
  417. Mit dem 'H'-Befehl  wird die eingebaute Heardliste abgefragt  oder Para-
  418. meter fuer  die Heardliste  uebergeben. Mit 'H 0' stellt man das automa-
  419. tische Updaten der Heardliste ab. Die Liste bleibt im Speicher, aber die
  420. empfangenen  Pakete werden nicht  fuer die Liste  untersucht.  Mit 'H 1'
  421. wird das  automatische Updaten  der Heardliste  eingeschaltet. Mit 'H 2'
  422. wird  die  Heardliste geloescht und  der benoetigte  Buffer freigegeben.
  423. Mit 'H n', n eine Zahl groesser 2, wird die maximale Anzahl der Eintrae-
  424. ge gesetzt. Mit 'H' ohne  Parameter wird  die Heardliste ausgegeben. Zu-
  425. naechst wird eine  Zeile ausgegeben, die angibt, ob  die Heardliste ein-
  426. oder ausgeschaltet (1  oder  0)  ist, die Anzahl Calls in der Liste, die
  427. maximale Anzahl moeglicher Calls in der Heardliste.  Dann  folgt die Li-
  428. ste,  fuer jedes  Call  eine  Zeile,  alphabetisch  sortiert. Die  erste
  429. Zeile kommt immer, die  Liste  nur  auf  Kanal 0. Die Ausgabe  der Liste
  430. kann  im  Terminalmodus durch  Eingabe  eines beliebigen Zeichens  abge-
  431. brochen  werden  (abgesehen von XON/XOFF zur Ausgabesteuerung bei einge-
  432. schaltetem  Flow), im  Hostmodus  durch Senden eines  Paketes an Kanal 0
  433. (ein <CR> bei  den meisten Hostmodeterminalprogrammen), das  Paket  wird
  434. nicht ausgesendet.
  435.  
  436.          Beispiele :
  437.  
  438.            H            -  Heardliste anzeigen
  439.            H 0          -  Heardlisten-Update ausschalten
  440.            H 1          -  Heardlisten-Update einschalten
  441.            H 2          -  Heardliste loeschen
  442.            H 10         -  Maximalanzahl Calls in Heardliste setzen
  443.  
  444. Die Heardliste ist resident, d.h. sie  bleibt bei einem Reset oder einem
  445. Abschalten bei Pufferung des RAM mit Batterie erhalten.
  446.  
  447. ACHTUNG: Bei einer langen  Heardliste kann der Neustart nach einem Reset
  448. sehr lange dauern,  da  bei  jedem dem Freispeicher zuzuordnenden Buffer
  449. erst  geprueft  werden muss, ob  es ein  Buffer der  Heardliste ist, der
  450. nicht zugeordnet werden darf.
  451.  
  452.  
  453. Mit dem 'I'-Befehl  wird das  Absenderrufzeichen des TNC eingegeben (MY-
  454. CALL).  Nach  der ersten Inbetriebnahme ist es mit Leerzeichen gefuellt.
  455. Fuer jeden Kanal kann ein beliebiges  Rufzeichen eingegeben werden. Nach
  456. einem  DISCONNECT  wird wieder  das Rufzeichen  von Kanal 0 uebernommen.
  457. Bei  einer  bestehenden Verbindung kann das Rufzeichen  nicht veraendert
  458. werden.
  459. ACHTUNG: Der TNC geht  nur  mit  eingegebenem  Rufzeichen  auf  Sendung!
  460.  
  461.  
  462. Mit  dem 'JHOST'-Befehl wird zwischen der Betriebsart Terminal-Modus und
  463. Host-Modus umgeschaltet.
  464.  
  465.  
  466. Mit dem 'K'-Befehl wird die  Stamp-Funktion ein- und  ausgeschaltet bzw.
  467. die  24-Stunden-Uhr  oder der Kalender gestellt. Mit 'K 0' schaltet  man
  468. die  Ausgabe  dieses Stamps ab.  Trotzdem  werden alle  Meldungen/Header
  469. mit einem  Stamp  versehen. Ein  Einschalten des Stamps wirkt  also auch
  470. richtig bei laengere Zeit im  Buffer stehenden Meldungen/Headern mit ab-
  471. geschaltetem Stamp. Mit 'K 1' schaltet man die Stampausgabe fuer Status-
  472. meldungen ein, mit  'K 2' die Stampausgabe  fuer Statusmeldungen und Mo-
  473. nitorheader. Die Eingabe von 'K' ohne Parameter  zeigt die aktuelle Ein-
  474. stellung gefolgt vom Datum und der Uhrzeit.
  475. Mit  'K hh:mm:ss'  setzt   man   die  Uhrzeit, hh = Stunde, mm = Minute,
  476. ss  =  Sekunde.  Mit 'K dd.mm.yy'  setzt  man  das  Datum, europaeisches
  477. Format,  dd  =  Tag,  mm  =  Monat, yy  = Jahr. Mit   'K mm/dd/yy' setzt
  478. man das Datum im amerikanischen Format. Je nachdem wie man das Datum ge-
  479. setzt  hat,  wird  es  bei Stamps entweder im europaeischen oder  ameri-
  480. kanischen Format ausgegeben.
  481.  
  482.          Beispiele :
  483.  
  484.            K            -  Stamp und Datum/Zeit anzeigen
  485.            K 0          -  Stamp abschalten
  486.            K 1          -  Stamp Statusmeldungen einschalten
  487.            K 2          -  Stamp Status- und Monitormeldungen
  488.                            einschalten
  489.            K 20.02.88   -  Datum setzen, europaeische Form
  490.            K 02/20/88   -  Datum setzen, amerikanische Form
  491.            K 17:36:00   -  Uhrzeit setzen
  492.  
  493.  
  494. Mit  dem 'L'-Befehl wird der Link-Status eines (Parameter = 0...4)  oder
  495. aller Kanaele (ohne Parameter) angezeigt.  Es werden Informationen ueber
  496. den Weg der Verbindung (Rufzeichen und Digipeaterliste),  Anzahl empfan-
  497. gener  Frames,  Anzahl noch nicht gesendeter Frames,  Anzahl noch  nicht
  498. bestaetigter  Frames und der jeweilige Retry-Zaehler angezeigt.  Der je-
  499. weils benutzte Kanal wird durch ein '+' Zeichen markiert.  Im Host-Modus
  500. funktioniert dieser Befehl etwas anders,  mehr darueber im Kapitel ueber
  501. den Host-Modus.
  502.  
  503.  
  504. Mit dem 'M'-Befehl wird der Monitor-Modus eingestellt.  Mit dem nachfol-
  505. genden  Parameter,  in diesem Falle ein oder mehrere Buchstaben aus  der
  506. folgenden Liste,  kann angegeben werden,  welche Frames angezeigt werden
  507. sollen.
  508.  
  509.        Buchstabe    Paket-Typ
  510.        ---------    ---------
  511.            N        keine
  512.            I        Informationen
  513.            U        unprotokollierte Sendungen
  514.            S        Kontroll Pakete
  515.            C        Monitor auch an wenn eine Verbindung besteht
  516.            +        <Liste von bis zu 8 Rufzeichen>: nur Pakete dieser
  517.                                                      Stationen
  518.            -        <Liste von bis zu 8 Rufzeichen>: keine Pakete dieser
  519.                                                      Stationen
  520.  
  521. Die kombinierte Benutzung der '+' und '-' Parameter ist nicht zulaessig.
  522. Sie muessen als letzter  Parameter vor dem Rufzeichen eingegeben werden.
  523. Die Eingabe von '+' oder '-' ohne Rufzeichen loescht die aktuelle Liste.
  524.  
  525.  
  526. Mit dem 'N'-Befehl wird angegeben,  wie oft die Zustellung eines Paketes
  527. versucht werden  soll, bevor  eine Fehlermeldung  erscheint.  Fuer jeden
  528. Kanal kann ein  eigener Wert angegeben  werden, jedoch wird der Wert aus
  529. Kanal 0 nach jedem Disconnect  oder RESET fuer alle Kanaele uebernommen.
  530.  
  531.  
  532. Mit  dem 'O'-Befehl wird die maximale Anzahl von ausstehenden und  unbe-
  533. antworteten  I-Frames  (MAXFRAME) vorgegeben.  Fuer jeden  der  Connect-
  534. Kanaele kann ein separater Wert vorgegeben werden.  Nach jedem Disconnet
  535. oder  RESET  wird  aber wieder der Parameter von  Kanal  0  uebernommen.
  536.  
  537.  
  538. Der 'P'-Befehl  wird  zur Einstellung  des P-Persistenz-Wertes  benutzt.
  539. Dieser Parameter dient  als Entscheidungsgrundlage fuer die Sendersteue-
  540. rung  und  zur  Kollisionsverminderung. Jedesmal  wenn  ein Paket ausge-
  541. sendet  werden soll, wird zunaechst  abgewartet  bis der Kanal frei wird
  542. (kein DCD). Ist der  Kanal frei, dann  wird  eine Zufallszahl zwischen 0
  543. und  255   erzeugt. Ist  diese  Zufallszahl  kleiner  oder gleich der P-
  544. Persistenz-Zahl,  dann  betaetigt  der  TNC die PTT-Leitung  und die In-
  545. formationsuebertragung  beginnt. Ist die Zufallszahl ausserhalb des Ent-
  546. schlossenheitsbereichs, dann  geht der  TNC nicht auf Sendung und wartet
  547. einen bestimmten Zeitraum, bis der beschrieben Vorgang  wiederholt wird.
  548. Die Zeitdauer der Verzoegerung wird  durch den Slot Time Intervall fest-
  549. gelegt (siehe auch 'W'-Befehl).
  550.  
  551.  
  552. Mit  dem  'QRES'-Befehl  wird die Firmware  neu  gestartet  (Kaltstart),
  553. aehnlich wie bei einem Hardware-Reset.
  554.  
  555.  
  556. Der 'R'-Befehl dient zum Ein- und Ausschalten der Digipeat-Funktion.
  557.  
  558.  
  559. Mit dem 'S'-Befehl wird die jeweilige Kanalnummer eingestellt.
  560.  
  561.  
  562. Mit dem 'T'-Befehl wird die Verzoegerung zwischen Hochtasten des Senders
  563. und  Start  der Datenassendung eingestellt  (TXDELAY).  Die  Einstellung
  564. erfolgt in 10 ms-Schritten.
  565.  
  566.  
  567. Mit  dem 'U'-Befehl hat man die Moeglichkeit, eine Meldung  an anrufende
  568. Stationen zu senden (U 1 Text).  Dieser  Text bleibt dann auch erhalten,
  569. wenn dieser Modus wieder abgeschaltet wird (U 0).
  570.  
  571.  
  572. Mit dem 'V'-Befehl wird die Protokoll-Version 1 oder 2 zum Aufbau  einer
  573. Verbindung vorgegeben,  wobei fuer jeden Kanal ein eigene Version vorge-
  574. geben werden kann.  Der Parameter fuer Kanal 0 wird nach Disconnect oder
  575. RESET  aus  dem  RAM  fuer  alle  Kanaele  uebernommen.  Ausserdem  kann
  576. waehrend einer Verbindung die gerade benutzte Protokollversion abgefragt
  577. werden.  Waehrend einer Verbindung darf die Protokoll-Version nicht  ge-
  578. aendert werden.
  579.  
  580.  
  581. Mit  dem 'W'- Befehl  kann  die  Dauer  des  Slot Time Intervalls (Zeit-
  582. schlitzintervall) fuer  die P-Persistenz  Steuerung  eingegeben  werden.
  583. Immer wenn der TNC  ein Paket austrahlen will und die unter P-Persistenz
  584. beschriebene Zufallszahl  ausserhalb des P-Persistenz-Bereichs lag, dann
  585. wird fuer  die Dauer des Zeitschlitzes  gewartet und  die  P-Persistenz-
  586. Prozedur erneut durchlaufen.
  587.  
  588.  
  589. Der 'X'-Befehl kontrolliert die PTT-Leitung des TNC.  Falls erforderlich
  590. kann  hiermit das Einschalten des Senders unterdrueckt werden,  wenn man
  591. z.B. die Frequenz beobachten moechte, aber verhindern will, dass der TNC
  592. bei einer Connect-Anfrage ein Busy-Paket zurueck sendet.
  593.  
  594.  
  595. Mit dem 'Y'-Befehl kann die maximale Anzahl von Verbindungen bezogen auf
  596. empfangene  Connect-Anfragen  eingestellt werden.  Der Wert  beeinflusst
  597. nicht die Connect-Anfragen des Operators an andere Stationen.  Bei 'Y 0'
  598. ist der TNC immer 'busy'.
  599.  
  600.  
  601. Mit  dem 'Z'-Befehl wird die Flowsteuerung und das  XON/XOFF-Handshaking
  602. zum Terminal ein- bzw.  ausgeschaltet. Ist die Flowsteuerung eingeschal-
  603. tet,  dann sendet der TNC solange keine Zeichen zum Terminal,  wie Daten
  604. oder Befehle eingegeben werden. Bei ausgeschalteter Flowsteuerung werden
  605. die Zeichen vom TNC sofort ausgesendet,  egal ob gerade eine  Text-Zeile
  606. oder ein Befehl eingegeben wird.  Arbeitet der TNC zeitweise ohne Termi-
  607. nal,  dann  sollte die Flowsteuerung und das XON/XOFF-Handshaking  immer
  608. abgeschaltet  sein,  um Probleme mit den internen Buffern zu  vermeiden.
  609. Ist die XON/XOFF-Steuerung eingeschaltet, so kann die Ausgabe zum Termi-
  610. nal mit CONTROL-S gestopt und mit CONTROL-Q wieder gestartet werden.  Im
  611. Host-Modus ist die  Flowsteuerung und das XON/XOFF-Handshaking immer ab-
  612. geschaltet.
  613.  
  614.  
  615. Ueber den '@'-Befehl  sind weitere  Befehle mit Parameteruebergabe moeg-
  616. lich:
  617.  
  618. Mit dem 'B'-Parameter wird die Anzahl der freien Puffer angezeigt.
  619.  
  620. Der 'D'-Parameter dient zum Ein- und Ausschalten des  Vollduplexbetriebs
  621. des HDLC Ports.
  622.  
  623. Mit dem 'S'-Parameter kann der momentane Link-Status  abgefragt  werden.
  624.  
  625. Mit  dem 'T2' Parameter wird  die  Zeit (in Schritten von 10 ms)  einge-
  626. stellt, die vergehen muss, bis ein eingegangenes Paket bestaetigt  wird.
  627. Durch  diese  Wartezeit koennen  unter  Umstaenden  mehrere  Pakete  mit
  628. einer gemeinsamen Bestaetigung bearbeitet werden.
  629.  
  630. Mit 'T3' wird die  Zeit (in Schritten von 10 ms) eingegeben, die der TNC
  631. bei  einer bestehenden  Verbindung auf ein Lebenszeichen der  Gegenseite
  632. wartet. Nachdem T3  abgelaufen ist, wird beim  Partner  angefragt, ob er
  633. noch empfangsbereit ist. Hierdurch werden auch die Probleme geloest, die
  634. dadurch entstehen, dass der Partner ohne Disconnect einfach abschaltet.
  635.  
  636. Mit dem Parameter 'K' versetzt man den TNC in den KISS-Modus.
  637.  
  638. Mit dem Parameter 'V' wird  der Rufzeichen-Check ein- bzw ausgeschaltet.
  639.  
  640.  
  641.  
  642.  
  643.                       Voreingestellte Parameter
  644.                       =========================
  645.  
  646. Bei einigen Parametern kann  man durch  Aendern  der Werte  im Eprom die
  647. Voreinstellung aendern. Die  Parameterliste beginnt bei Adresse 0040 hex
  648. im Eprom.
  649.  
  650.  
  651.            TYP       WERT          BESCHREIBUNG
  652.            ---       ----          ------------
  653.            BYTE      1BH           Kommando Zeichen
  654.            BYTE    '      ',60H    Eigenes Rufzeichen (s.Bemerkung 1)
  655.            BYTE    '      '        Mnemonic Rufzeichen
  656.            BYTE      04H           Maximale Anzahl von Connects
  657.            BYTE      03H           Monitor Modus (s.Bemerkung 2)
  658.            BYTE      01H           Digipeaten AUS/EIN
  659.            BYTE      40H           P-Persistenz Wert
  660.            BYTE      0AH           Zeitschlitz Intervall (10ms)
  661.            BYTE      1EH           Sender Verzoegerung (10ms)
  662.            BYTE      03H           Flow Steuerung (TNC/Terminal)
  663.            BYTE      01H           Sender PTT AUS/EIN
  664.            BYTE      01H           Automatischer Zeilenvorschub AUS/EIN
  665.            BYTE      01H           Echo-Befehl  AUS/EIN
  666.            BYTE      01H           AX25 Version2 AUS/EIN
  667.            BYTE      04H           Maximal unbestaetigte Pakete
  668.            BYTE      0AH           Maximale Anzahl der Retries
  669.            BYTE      04H           FRACK Intervall
  670.            BYTE      00H           Rufzeichen Check AUS/EIN
  671.            BYTE      00H           Vollduplex (HDLC) AUS/EIN
  672.            BYTE      00H           8-Bit Zeichen im Terminalmodus
  673.                                    (s. Bemerkung 3)
  674.            BYTE      00H           Einstellung des Stamp-Parameters
  675.                                    (K-Befehl)
  676.                                     0 - Stamp aus
  677.                                     1 - Stamp bei Statusmeldungen
  678.                                     2 - Stamp bei Status- und
  679.                                         Monitormeldungen
  680.            BYTE      00H           Einstellung des Heard-Parameters
  681.                                    (H-Befehl)
  682.                                     0 - Heardliste ausgeschaltet
  683.                                     1 - Heardliste eingeschaltet
  684.            WORD      64H           Maximale Anzahl Calls in Heardliste
  685.                                    (H-Befehl)
  686.            WORD      64H           Timer T2 Intervall (10ms)
  687.            WORD     4650H          Timer T3 Intervall (10ms)
  688.  
  689.  
  690.  
  691.         Ausgeschaltet = 00H / Eingeschaltet = 01H
  692.  
  693.         Bemerkung 1: Die SSID muss ein Bit linksgeschoben und mit 60H
  694.                      ge'oder't sein.
  695.  
  696.         Bemerkung 2: Der Monitormodus ist abhaengig von folgenden Bits:
  697.  
  698.            BIT       FRAME
  699.            ---       -----
  700.             0        I Pakete
  701.             1        UI Pakete
  702.             2        Kontroll Pakete
  703.             3        Monitor auch bei bestehendem Connect eingeschaltet
  704.  
  705.         Bemerkung 3: 00H = Bit 7 maskiert / 01H =  Bit 7 nicht maskiert
  706.  
  707.  
  708. Zusammengestellt aus Beschreibungen von DF2AU, DB2OS und DC4OX.
  709. (DG1AD Juni/1988)
  710.