practic 3/88, S. 135-138
Ralf Künstler
Externe Cursorsteuerung: Maus selbst gebaut
International hat sich die Maus zur Cursorsteuerung einen, festen Platz erobert, bei einigen PC gehört sie sogar schon zur Standard-Hardware.
Das Prinzip einer Maus besteht darin, daß die Rollbewegung einer Kugel auf der Tischplatte in Steuerbefehle für den Cursor auf dem Bildschirm umgesetzt wird.
Ein Eigenbau läßt sich mit einfachen Mitteln bewerkstelligen, ohne daß Gebrauchswerteinschränkungen bemerkbar werden.
Elektronisch ist es kein Problem, zwei Lichtschranken mit Auswertung der Bewegungsrichtung (Bild 1) aufzubauen. Die Schwierigkeit besteht in der Mechanik. Eine Kugel ist so zu halten, daß sie nach allen Richtungen leicht gerollt werden kann und trotzdem zwei um 90° versetzte Achsen durch die Reibung eindeutig gedreht werden. Die Reibachsen dürfen keinen so starken Druck ausüben, daß die Kugel auf der Tischplatte rutscht.
Der vorliegende Musteraufbau umgeht diese Probleme durch die Verwendung von zwei getrennten Reibrädern für die beiden Bewegungsrichtungen.
Einfache Möbelgriffe wurden nach Entfernen der Original-Gewindestifte durchbohrt und auf neue, längere Gewindestangen aufgeschraubt. Etwa 1 cm entfernt wurde eine Segmentscheibe aus Halbzeug fest aufgeschraubt. Der Durchmesser der Segmentscheibe ist einige Millimeter kleiner als der Durchmesser des Möbelknopfes. Die Anzahl der Segmente ist proportional der Cursorgeschwindigkeit auf dem Bildschirm.
Ein Ende der Gewindestangen wird in die Bohrmaschine eingespannt und das freie Ende mit der Feile spitz geschliffen. Dann wird das andere Ende bearbeitet (Bild 2).
Diese Kombination wird in einen U-förmigen Metallwinkel eingespannt. Das Gegenstück für die Spitzenlager bilden einfache Schrauben mit angebohrtem Schaft. Eine LED und zwei Foto-Dioden bzw. Foto-Transistoren werden mit Hilfe einer Uni-Platine so befestigt, daß die Segmentscheibe das Licht der LED immer nur auf einen Fototransistor freigibt (Bild 3).
Zwei dieser Konstruktionen werden um 90° versetzt in ein geeignetes Gehäuse schwenkbar eingesetzt. Bild 4 zeigt eine schon über ein Jahr benutzte Maus mit etwas kleineren Möbelknöpfen in dem Oberteil einer Butterdose. Dadurch, daß die gesamte Konstruktion vertikal schwenkbar ist, stellt sich der notwendige Auflagendruck auf den Tisch selbst ein.
Komplettiert wird die Maus mit einem etwa 1,50 m langen Kabel und drei Drucktasten. Eine Drucktaste wird parallel zur „Enter-Taste“ geschalten. Die beiden anderen Tasten können jeweils eine LED abschalten. Notwendig ist dies nicht, erleichtert aber sehr das Beibehalten einer bestimmten Zeile oder Spalte.
Das Maus-Abfrageprogramm steht im Bereich von 3F00 bis 3F5A. Es ist frei verschiebbar, wenn die vier nötigen Variablen (5 Bytes) ihren festen Platz (0040-0044) behalten. Außer den 4 BIT für die Maus können die freien BIT für zusätzliche Tasten auf der Maus genutzt werden. Diese sind dann mit IN A, (PORT) & BIT x, A abzufragen.
Um eine gleichmäßige Bewegung des Cursors auf dem Bildschirm zu erreichen, darf die Abfragezeit nicht über 20 ms liegen.
Ralf Künstler
Das Maschinenprogramm ist für den Z 1013 geschrieben. Besitzer bzw. Nutzer von anderen Computertypen können die vollständige Quelle erhalten, wenn sie einen frankierten und mit der eigenen Adresse versehenen leeren Briefumschlag an die Redaktion senden.
3F00 DB 00 5F E6 0C 57 7B E6 3F08 03 5F 2A 43 00 CB 0C 06 3F10 03 7C E6 03 BB 28 04 CB 3F18 04 10 F6 05 05 58 CB 05 3F20 06 03 7D E6 0C BA 28 04 3F28 CB 0D 10 F6 05 05 22 43 3F30 00 50 4B 3A 42 00 47 3A 3F38 40 00 6F 91 10 FD FE 20 3F40 38 01 7D 32 40 00 4A 3A 3F48 42 00 47 3A 41 00 6F 91 3F50 10 FD FE 20 38 01 7D 32 3F58 41 00 C9
Bernd Matzke/Andreas Köhler
Mini-Synthesizer am Z 1013
Eine Möglichkeit, Töne mit dem Z 1013 zu erzeugen, ist in der Anlage 13 des Handbuches Teil II B beschrieben. Man kann aber auch die Tonerzeugung außerhalb vornehmen und den Computer zur Steuerung eines Synthesizers nutzen. Für etwa 55,— M ist diese kleine, vielseitig abwandelbare Zusatzbaugruppe schnell zu bauen.
Die Töne werden mit einem Timer-Schaltkreis B 555, der als astabiler Multivibrator betrieben wird, erzeugt (practic 4/87). Frequenzbestimmend sind die beiden Widerstände R13 und R14 sowie die Kondensatoren Cl…C5 (Bild 5).
Die Steuerung, von Tonhöhe, Lautstärke und Tonlänge erfolgt von der PIO über zwei CMOS-Schaltkreise V 4066. Diese Schaltkreise enthalten je vier voneinander unabhängige Analogsignalschalter. H-Pegel am Eingang bedeutet „Schalter geschlossen“ (niederohmiger Ausgang), L-Pegel dementsprechend „Schalter geöffnet“ (hochohmig). Mittels dieser Schalter werden die Kondensatoren C1…C5 nach Masse durchgeschaltet. Die Werte der Kondensatoren wurden so gewählt, daß der Frequenzbereich von rund 200 Hz bis 8 kHz in 32 Schritten überstrichen wird.
Die Lautstärke wird nach dem gleichen Prinzip eingestellt. Drei Widerstände R9…R11 bilden den Fußpunktwiderstand eines Spannungsteilers (mit R12).
Ein angeschlossener Verstärker macht die entstandenen Töne in der gewünschten Lautstärke hörbar. Eine Anpassung der Ausgangsspannung des Mini-Synthesizer an die Eingangsempfindlichkeit des Verstärkers wird durch eine Veränderung des Spannungsteilers R9…R12 erreicht.
Die Ziehwiderstände R1…R8 sorgen für definierte Zustände der Eingänge der beiden V4066 bei nicht angeeprochener PIO. Es entsteht die tiefstmögliche Frequenz mit der geringsten Lautstärke.
Die beiden Dioden VD1 und VD2 begrenzen das Ausgangssignal auf etwa 700 mV; falls durch einen Programmfehler keiner der Widerstände R9…R11 gegen die Masse geschaltet ist.
Bild 6 zeigt einen Leiterplattenentwurf. Er kann per Nachnahme bei Gerlich, Markscheiderweg 08/417, Neubrandenburg, 2000, bestellt werden. Die Bestückung erfolgt entsprechend Bild 7.
Das kurze Programmbeispiel in TINY-BASIC demonstriert die PIO-Initialisierung und die Verknüpfung von Lautstärke und Tonhöhe zu einem Byte.
10 REM Initialisierung PIO BITMODE/Ausgabe 20 OUT(1) = HEX(CF) 30 OUT(1) = 00 40 REM Erzeugung einer Zufallstonfolge 50 REM mit Z = 100 Toenen 60 REM T = Tonhoehe 70 REM L = Tonlaenge 80 REM I = Lautstaerke 100 FOR Z = 1 TO 100 110 T = RND(32) 120 L = RND (100) 130 I = RND (8) 140 OUT (0) = (T + 32 * I) 150 FOR A = 1 TO L 160 NEXT A 170 NEXT Z 180 STOP
R1…8 | 100 kΩ |
R9 | 10kΩ |
R10 | 5,1 kΩ |
R11 | 2,2 kΩ |
R12 | 100 kΩ |
R13 | 22 kΩ |
R14 | 39 kΩ |
C1 | 1 nF |
C2 | 2,2 nF |
C3 | 4,7 nF |
C4,8 | 10 nE |
C5 | 22 nF |
C6,7,9,10 | 10 pF |
VD1,2 | SAY32 o.ä. |
Bernd Matzke/Andreas Köhler
Erweiterter Service
Ab sofort werden Z 1013 und Ervveiterungsbaugruppen vom VEB Industrievertrieb Rundfunk und Fernsehen Berlin, Betriebsteil Friedrichshain, repariert. Die Annahme erfolgt von 10.00 bis 13.00 und von 15.00 bis 19.00 Uhr in der Neuen Bahnhofstraße 30, Berlin, 1035. Postversand ist möglich.
Volker Erlenbach
TINY-BASIC auf dem Z 1013.16
Wird die von robotron Riesa vorgeschlagene Variante des Anschlusses einer großen Tastatur mit einem DL 257 unter Nutzung des neuen Betriebssystem (zweite Hälfte des Monitors) realisiert, so sind im TINY-BASIC-Interpreter folgende Adressen mit 00 zu belegen: 0112, 0113, 0115, 0116.
Volker Erlenbach