Waveterm Tastatur
Nach oben / Up Waveterm Tastatur Waveterm Seriell Waveterm Kommunikation Floppy-Interface

 

Das ist Teil eins der Serie "Wie macht man aus dem Waveterm einen richtigen Computer".
Teil 2, "Aktivieren der seriellen Schnittstelle", befindet sich hier.

Wie macht man aus dem Waveterm einen richtigen Computer?

Der allererste Schritt dazu... es braucht eine ordentliche Tastatur. Die kann man entweder mittels Spezialadapter oder durch brutale Zweckentfremdung des PC-Parallel Ports angeschlossen werden.

Hier steht, wie's geht. Unter Anderem :-)

Hier können Anfragen wegen Andreas Voigts Keyboard-Adapter gestellt werden.
Das Parallelport-Programm plus Adapterkabelbeschreibung gibt's hier.

Einleitung

Wie man seit einigen Jahren bei Antarctica (auf der Tech- und der Eltec-Seite) nachlesen kann, und auch sehen kann, wenn man sich die Mühe macht, das Waveterm umzudrehen, ist das Waveterm A theoretisch ein vollwertiger Computer, der auf einem ELTEC EUROCOM II Motherboard basiert. Dieser Computer bietet einige Schnittstellen, die für den Betrieb im PPG-System nicht unbedingt erforderlich sind und daher stiefmütterlich behandelt (bzw. schamhaft verschwiegen) wurden. Eine davon ist die Tastaturschnittstelle... und die haben wir jetzt endlich geknackt.

Und wozu soll das gut sein?

Nun - fangen wir mal mit ein paar hypothetischen Fragen an:

bulletWäre es nicht angenehm, die Waveterm-Software abändern zu können?
bulletWäre es nicht schön, Klänge zwischen dem Waveterm und dem allgegenwärtigen PC austauschen zu können?
bulletFür die Hacker: wäre es nicht nett, das Waveterm abseits der PPG-Software als Computer verwenden zu können?
bulletWäre es nicht gut, dem Waveterm neue Software hinzufügen zu können?

Geht alles. Theoretisch. Praktisch fehlt normalerweise eine klitzekleine Kleinigkeit... man kommt nicht in das System hinein, und man bekommt auch nichts aus dem System heraus. Das Herausbekommen habe ich schon zum Teil gelöst (siehe dazu die Soundbibliothek), aber der andere Weg ist noch nicht beschritten. Wie bekommt man etwas in das Waveterm hinein?

Ah, Moment - was wäre, wenn man eine Tastatur anhängen würde? Könnte man dann nicht vielleicht etwas machen? Klar! Aber warte mal... wo soll man denn eine passende Tastatur herbekommen?

Die Suche

Ich habe jetzt seit mindestens 5 Jahren versucht, eine ELTEC PAT-09-Tastatur aufzutreiben. Die Dinger sind praktisch nicht zu bekommen; seitens der Firma ELTEC fand ich zwar einen Ansprechpartner, der aber höchstens zu... nun, sagen wir, speziellen Preisen eine gebrauchte PAT-09 herausrücken würde, mit dem Hinweis, daß es sich dabei nun mal nicht um PC-Massenware handle.

(Anmerkung 9.3.2002: ich hab' endlich eine! Ein freundlicher Mann, der sie seit 15 Jahren im Keller stehen hatte, hat sie mir überlassen! Gratis! Nochmals vielen Dank, Herr Kremser!)

Licht am Horizont

Letztes Jahr hab' ich dann mit Andreas Voigt diesbezüglich geplaudert, worauf er - für mich völlig verblüffend - meinte, er hätte vielleicht noch so ein Ding im Keller. Elektrisierend! Nach soviel Jahren einfach so ein Zufallstreffer? Wäre doch zu schön, um wahr zu sein... hatte er dann auch leider doch nicht mehr, dafür hat er in erstaunlich kurzer Zeit einen Tastaturadapter auf die Beine gestellt, der es erlaubt, eine Standard-PS/2-Tastatur an das Waveterm anzuschließen.

Genial.

Mittlerweile hab' ich einen Adapter bekommen... und es geht! Es geht! Wenn man beim Waveterm-Start Strg+X drückt (und sich nicht allzu lange damit Zeit läßt), landet man im Monitorprogramm des Waveterm. Ein Druck auf D startet dann FLEX, ohne die darüberliegende Waveterm-Software zu laden.

Endlich. Endlich! Die Suche ist vorbei - wenn auch anders, als erwartet - der Hack kann beginnen.

Retro-Feeling

Der erste Anfang war schnell gemacht - eine Waveterm-Systemdiskette kopiert und als Basteldiskette beschriftet. Durch meine Forschungsarbeiten mit der Soundbibliothek wußte ich schon, welche Dateien auf der Waveterm-Systemdiskette herumlungern... und welche nicht... also blitzartig auf der Systemdiskette die Datei ST.TXT gelöscht. Die startet nämlich die Waveterm-Software. Sooo... nun habe ich also eine Waveterm-Bootdiskette, die schön brav auf dem FLEX-Prompt landet. Das Spiel kann beginnen... wie also bekomme ich die Dinge, die zum Arbeiten notwendig sind, in das Waveterm hinein?

Simpel... wie vor 20 Jahren. Damals hab' ich Hex-Listings abgetippt, und siehe da - es funktioniert auch heute noch :-)

Gut, was also ist notwendig, um Dateien aus dem Nichts auf die Diskette zu zaubern? Unter FLEX erstaunlich wenig... zwei Dateien: SAVE.CMD bzw. SAVE.LOW - zwei Programme, die den Hauptspeicherinhalt als Binärdatei auf der Diskette ablegen können. Den Hauptspeicherinhalt kann man mit dem Monitorprogramm beliebig verändern.

SAVE.CMD ist im Waveterm-System bereits vorhanden, da die Waveterm-Software über genau diesen Mechanismus die diversen Sound/Event/Wasauchimmer-Dateien anlegt. Leider kann SAVE.CMD natürlich keine Dateien erzeugen, die den Speicherinhalt seiner eigenen Ladeadresse widerspiegeln... und das sind praktisch alle Utilities, wie ich zu meinem Leidwesen sofort herausgefunden habe... dafür gibt's SAVE.LOW, das sich im Speicher an eine andere Stelle lädt. SAVE.LOW ist leider nicht vorhanden, also ran ans Tippen!

Eine Stunde später...

zwei Stunden später ...

drei Stunden später ...

na endlich geschafft. Erstaunlicherweise auf Anhieb fehlerfrei. So - ich habe beide SAVE-Programme! Hurra, mein erstes selbstgetipptes FLEX-Programm! :-)

Mühsam, das... um zu testen, ob's wirklich funktioniert, noch ein kurzes Programm eingehämmert. CAT.CMD - damit ich endlich live sehen kann, was denn so auf der Diskette liegt.

Zehn Minuten später ... fertig. DAS war leicht, eine leicht mißlungene Version war schon da, mit dem SAVE.LOW - Befehl war's dann möglich, eine modifizierte, fehlerfreie Version abzuspeichern.

Muß es denn wirklich so mühsam sein?

Ich bin faul. Ich lege keinen Wert darauf, stundenlang Hex-Ziffern einzutippen. Geht's denn wirklich nicht besser? Hmmm, Faulheit ist die Mutter vieler Ideen - wie wäre es, meinen PC als Schreiber abzustellen? Der kann so etwas viel besser (und macht dabei auch noch weniger Fehler)!

Wie also verdonnere ich den Rechenknecht zum Schreiben? Ah ja, da haben wir ja etwas, was einem Gegenstück zum Waveterm-Tastaturinterface verdächtig ähnlich sieht - den Parallel Port! HA! Kann das denn sein? Kann das denn wirklich gehen?

Wir nehmen den Parallel Port. Jawoll.

Nach kurzer Konversation mit Andreas, der meinte, es sollte wohl kein Problem sein, bin ich dann ans Löten gegangen. Heraus kam folgendes Adapterkabel (Pin-Nummern wie auf den Steckern aufgedruckt):

ASCII-Keyboard Pin Parallel Port Pin
+5V 1
Data 7 2 ---- 9
Data 5 3 ---- 7
Data 3 4 ---- 5
Data 1 5 ---- 3
NC 6
Ground 7 ---- 18-25
Data 6 8 ---- 8
Data 4 9 ---- 6
Data 2 10 ---- 4
Data 0 11 ---- 2
Strobe 12 ---- 1
+12V 13
NC 14

Nochmal nervös durchgeprüft, angesteckt (Achtung: immer das Waveterm bei derartigen Manipulationen ausschalten! Sonst empfiehlt es sich, die Bezeichnung 68A21P (bzw. 68B21P) auswendig zu lernen, und die Dinger sind heutzutage nicht mehr so leicht zu bekommen :-) ... und NUN zum lustigen Teil der Sache - wir schreiben eine kleine DOS-Applikation. Retro-Feeling die zweite, aber was solls, mehr braucht's einfach nicht.

Zehn Minuten später - erster Test: GEHT! Mein Testprogramm schreibt "Hello, World!"!

Nun habe ich also plötzlich nicht nur eine, sondern gleich zwei Möglichkeiten, eine Tastatur an das Waveterm anzuschließen. Wer hätte das für möglich gehalten?

Hier gibt's ein kleines Programm, das es zusammen mit dem beschriebenen Adapterkabel erlaubt, die PC-Tastatur als Waveterm-Tastatur zu verwenden. Inklusive Quellcode als kleiner Einstieg.

So. Und jetzt kann der PC das Eintippen übernehmen!

Was ist mit dem Waveterm B?

Nun... Pascal Thiault aus Frankreich hat festgestellt, daß das beschriebene Adapterkabel auch mit dem Waveterm B funktioniert... solange es im Waveterm A-Modus betrieben wird. Bedauerlicherweise scheint es im Waveterm B-Modus keinerlei Vorkehrungen für die ASCII-Tastatur zu geben, obwohl die Schnittstelle ordnungsgemäß verkabelt ist. Eines schönen Tages werde ich mit diesem Manko auch noch aufräumen :-)

File Transfer - auf absonderliche Art

Nachdem mir der Aufbau der FLEX-Dateien mittlerweile recht gut vertraut ist, war's ein Leichtes, ein Programm zu schreiben, das imstande ist, FLEX-Binärdateien im EUROCOM-Monitor einzutippen und dann mittels Flex abzuspeichern.

Es läuft. Gut, zufriedenstellend, einigermaßen betriebssicher... und natürlich langsam. Auf diese Art können etwa 4 Bytes pro Sekunde übertragen werden... aber immer noch weit schneller und sicherer, als ich's mit der Hand machen könnte. Und dem PC ist's egal, dem wird nicht langweilig :-)

Der nächste Schritt ist dann die Aktivierung der seriellen Schnittstelle, um das Ganze etwas schneller zu gestalten. Details finden Sie hier.

Click here for the English version!

Stand: 15.09.02