Term95 Read.me

1. Term95
Term95 ist ein minimales Terminalprogramm zum Austesten von seriellen Verbindungen 
(binr oder ASCII transparent). Es dient ausserdem als Anschauungsobjekt fuer die Programmierung
einer seriellen Schnittstelle mit der Windows 32bit API (Windows95 und NT). 

2. Installation
Die entpackten dll's mssen nach c:\windows\system kompiert werden, 
Das Program term95.exe in ein beliebiges Verzeichnis
ber Start - Einstellungen - Taskleiste kann das Programm in das Startmenue aufgenommen werden

3. Bedienung
Fensteraufteilung:
Im oberen Fensterteil werden die Zustnde der Handshakeleitungen ueber LED's dargestellt.
Ausgaenge werden rot/grau und Eingaenge gruen/grau dargestellt.

Im darunterliegenden Eingabefeld werden die auszugebenden Zeichen eingegeben. Befindet sich 
das Programm im binaerem Modus (siehe Titelzeile) werden die Zeichen Hexadezimal mit Komma 
getrennt eingegeben (z.Bsp: 01,34,45,56,34,3A,FF). Sind die Hexadezimalen Zahlen lnger als 
2 Stellen, werden nur die ersten beiden Stellen benutzt.

Befindet sich das Programm im Text Modus (siehe Titelzeile) koennen alle Zeichen (als Text) von
Hex 20 bis Hex 7F direkt eingegeben werden (mit Ausnahme von /). Andere Zeichen koennen 
ueber folgende Syntax eingefuegt werden: zuerst das Zeichen / und anschliessend eine zweistellige
hexadezimale Zahl (z. Bsp kann mit  /0D ein Carrige Return auf einem angeschlossenen Terminal
erzwungen werden oder mit /0B eine Escape Sequenz fuer einen seriellen Drucker eingeleitet werden.
Ein komplettes Beispiel fuer den Text Modus waere: 
"Hallo Anna,/0Dwie geht es Dir?/0DTschuess/0DDein Freund/0D".

Das Eingabefeld wird auf die im "Setup" angegebene Zeichenzahl begrenzt. Nach Ueberschreiten
der vorgegebenen Zeilenlaenge erfolgt ein Umbruch. Im Textmodus wird bei Erkennung eines CR (hex 0D)
ebenfalls ein Umbruch ausgefuehrt.

Unter dem Eingabefeld befindet sich die Ausgabe. Alle ueber die konfigurierte seriell Schnittstelle
ankommenden Zeichen werden hier dargestellt. Die Darstellung erfolgt analog zum Eingabefeld.

Neben dem Eingabefeld befindet sich der "Send" Button. Mit diesem Button wird der Text im Eingabefeld 
umgesetzt in einen Datenstrom und an die serielle Schnittstelle geschickt.


Bedienung:
Setup:
Ueber Setup kann man die serielle Schnittstelle auswaehlen und ihre Parameter einstellen.
Asserdem laesst sich hier die Zeilenlaenge des Receivefeldes einstellen.

Clear:
Mit Clear laesst sich das Eingabefeld und das Ausgabefeld zuruecksetzen.

Select:
Mit Select laesst sich ein Text aus einer Liste in das Eingabefeld laden. (siehe File - Open Command File)

Switch Mode:
Mit "Switch Mode" kann man zwischen binaerem und Text Modus wechseln. Die augenblickliche
Einstellung erkennt man in der Titelzeile.

File - Open Command File
Mit diesem Befehl kann man ein Textfile (reines ASCII Format) von der Festplatte einlesen. Die
einzelnen Zeilen dieses Textfiles werden dann in eine Liste, die ueber den Load - Button
aufgerufen werden kann, aufgenommen. Mittels des Befehls "Select" kann dann ein Eintrag dieser
Liste in das Eingabefeld geladen werden (Jede Zeile des urspruenglichen Textfiles laesst sich
somit bequem in das Eingabefeld laden). Die Zeile wird dann je nach eingestelltem Modus
interpretiert.
Im Textfile darf am Anfang einer Zeile ein Kommentar stehen. Der Kommentar wird mit '[' eingeleitet
([ mu das erste Zeichen in der Zeile sein) und mit ']' abgeschlossen. Der Text unmittelbar nach ']'
wird dann aus der Liste in das Eingabefeld geladen.
Der Kommentar erscheint (solange der Eingabetext nicht veraendert wird) in der Titelzeile.

File - Exit
Mit diesem Befehl kann man das Programm verlassen.


Setup:
Ueber Setup ruft man eine Dialogbox auf mittels der die serielle Verbindung konfiguriert 
werden kann.


--------------------------------------------------------------------------------

Aenderungen in Version 1.1

Im Send-Feld kann jetzt zwischen einzelnen Zeichen eine Verzoegerung gewaehlt werden:
Im Binaeren Modus gibt man dazu einen Strichpunkt statt ein Komma als Trennzeichen ein
(es duerfen auch mehrere Strichpunkte aufeinanderfolgen).
Im Textmodus wird durch die Eingabe eines frei definierbaren Zeichens eine Verzoegerung
ausgeloest.
Die Verzoegerungszeit und das Verzoegerungszeichen im Textmodus kann im Setup Dialog
eingegeben werden.
Die Verzoegerungszeit wird in ms eingegeben. Die Zeit wird auf 100ms genau eingehalten.

Beispiel fuer binaerem Modus:
;10,20;30,40;;50;  (Bei jedem Strichpunkt wird die Pausenzeit eingehalten)

Beispiel fuer Textmodus (Zeichen '0' ist als Trennzeichen gewaehlt):
Anna 0hat 0keine /30Zeit/30 (Bei jeder 0 und bei /30 wird eine Pausenzeit eingehalten)


--------------------------------------------------------------------------------

Aenderungen in Version 1.2

1. Nach Drcken der "Send" Taste wird diese durch eine "Stop" Taste ersetzt.
Im Binaerem Modus kann durch Angabe eines Doppelpunktes als letztes Zeichen eine
Wiederholung der Ausgabe erzwingen. Die Ausgabe wird wiederholt bis die Stop Taste
gedrueckt wird.

Beispiel: 10,20,30;40;:
Es werden die Zeichen 10hex,20hex,30hex uebertragen, dann wird eine Pause eingehalten,
dann das Zeichen 40hex uebertragen, dann nochmals eine Pause eingehalten und wieder von
vorne begonnen, bis die Stoptaste gedrueckt wird.

Anmerkung: Der Doppelpunkt muss das letzte Zeichen im Eingabefeld sein.

2. Durch Angabe des Zeichens "#" wird im binaerem Modus die nachfolgende dezimale Zahl
(maximal vierstellig) wie folgt in zwei Bytes umgewandelt und uebertragen:

Byte 1:   Bitposition:                         7  6  5  4  3  2  1  0
          Bitposition der Zahl (max 11 Bit):  10  9  8  7  6  5  4  3

Byte 2:   Bitpositon:                          7  6  5  4  3  2  1  0
          Bitposition der Zahl (max 11 Bit):                  2  1  0

zum Beispiel wird die Zahl 513dez (10 0000 0001) in die Bytes  40hex (0100 0000) und
01 (0000 0001) konvertiert und uebertragen.

Beispiel fuer die Eingabe:
10,20,#513,30

Es werden die hexadezimalen Werte 10, 20, 40, 10 und 30 uebertragen.

3. Es ist jetzt nur noch eine DLL notwendig (ctl3d32.dll)

--------------------------------------------------------------------------------

Aenderungen in Version 1.3

Beseitigung zweier Fehler:

1. nach Umschalten von binary auf text und wieder zurueck auf binary wurde im
   Eingabefeld kein ";" und kein "#" akzeptiert.

2. Das Defaultzeichen fuer Pause ist im Textmodus jetzt das Zeichen ";"
--------------------------------------------------------------------------------

Aenderungen in Version 1.4

Bug in binaerer Uebertragung beseitigt: '#xxxx' wurde nicht richtig uebertragen

--------------------------------------------------------------------------------

Aenderungen in Version 1.5

Bug in binaerer Uebertragung beseitigt: nach Umschalten von binary auf text und
wieder zurueck auf binary wurde im Eingabefeld kein ":" akzeptiert.


