Handbuch Teil IIB
Hier gibt es nur die Beschreibungen zu den Programmen. Die Programme selbst sind als Download verfügbar und müssen nicht mehr abgetippt werden!
Anlage 11: Liste des Reassemblers für U 880-Befehle
Da ein Teil der hier wiedergegebenen Anwenderprogramme, der Basic-Interpreter und das im ROM enthaltene Monitorprogramm im Maschinencode vorliegen, erhalten Sie mit diesem Reassemblerprogramm die Möglichkeit, eine Rückübersetzung in eine U880-Assemblerschreibweise vorzunehmen.
Der Reassembler steht ab Adresse 3600h bis Adresse 3fe4h. der Start erfolgt auf der Adresse 3600h. das Programm meldet sich mit der Aufschrift:
ROBOTRON Z 1013 REASS 1.02 AB BIS ORG-ADRESSE:
unter dieser Ausschrift können nun z.B. folgende Adressen eingegeben werden:
F000 F020 F000
D.h. es wird der Anfang des Monitorprogramms rückübersetzt. ist die letzte Adresse gleich der ersten, so kann diese entfallen ORG-Adresse bedeutet die Adresse, auf der das lauffähige Programm stehen müsste. Man kann also auch Programme reassemblieren, die eigentlich außerhalb des RAM-Bereiches laufen würden oder auf z.Z. belegten Speicherbereichen lauffähig sind. Sie können z.B. den in Anlage 13 nicht auf den Originaladressen ab 3C00H reassemblieren, weil dort der Reassembler steht. Wenn sie das tun wollen, so müssen sie den Zaehlermodul einlesen, anschließend mit dem T-Kommando z.B. auf die 1000H umladen und danach den Reassembler einlesen und starten. Kommandos nach dem Einlesen des Zaehlermoduls:
# T 3C00 1000 400 # L 3600 3FFF # J 3600 ;Umladen des Zaehlermoduls ;Einlesen des Reassemblers ;Starten des Reassemblers ROBOTRON Z 1013 REASS 1.02 AB BIS ORG-ADRESSE: 1000 1020 3C00
Zu beachten ist, dass der Reassembler auch bei ASCII-Zeichen eine Übersetzung versucht! Daraus können mitunter Verschiebungen entstehen, die dann auch bei richtigen Maschinenbefehlen zu einer falschen Rückübersetzung führen. Nach einigen Bytes fängt sich der Reassembler und arbeitet wieder korrekt. In der meisten nachfolgenden Programmen erfolgt der Abbruch mit S4/K (Shift 4/K).
Anlage 12: Liste des BASIC-Interpreters
Speicherbereich: 100H - BA6H, Start: 100H, Restart: 103H
Beachte: Bei Benutzung einer größeren Alpha-Tastatur ist bei der INPUT-Anweisung keine Umschaltung (HEXUM/ALPHA) erforderlich. Deshalb sind um BASIC die 3 Speicherplätze ab Adresse 43BH (CD 12 01) und ab Adresse 443H (CD 15 01) auf Null (00 00 00) zu setzen!
Leider habe ich bis jetzt (01.03.2000) noch keinen originalen BASIC-Interpreter. Aber die Version mit geaenderten CLOAD/CSAVE-Routinen unterscheidet sich kaum davon.
Anlage 13: MC-Beispielprogramme
1. Zaehlermodul
Mit diesem Programm können über den Tonbandeingang NF-Messungen ausgeführt werden. Startadresse: 3C00H
2. Musikmodul
Mit diesem Programm können sie Melodien über den Tonbandausgang abspielen, die sie vorher programmiert haben. Drehen sie also den Lautstärkeregler ihres angeschlossenen Magnetbandgerätes etwas auf und stellen sie „Aufnahme“ ein.
Das Programm besteht aus drei Teilen; dem eigentlichen Programm ab Adresse 100H und einer Hilfstabelle ab Adresse 170H.
Die Melodie wird im Speicher ab Adresse 190H abgelegt und nach folgender Vorschrift gebildet:
1. Ein Ton erfordert die Eingabe von 4 Hexdezimalziffern:
Tonlaenge - Tonhoehe - Pausenlaenge - Pausenzeichen (FFH)
2. Tonlänge (1/96 Note * Wert)
Als Hexa-Zahl!
1/1 | 60 |
1/2 | 30 |
1/4 | 18 |
1/8 | 0B |
1/16 | 06 |
3. Tonhöhe
Als Hexa-Zahl!
C | 00 |
CIS | 02 |
D | 04 |
DIS | 06 |
E | 08 |
F | 0A |
FIS | 0C |
G | 0E |
GIS | 10 |
A | 12 |
AIS | 14 |
H | 16 |
C' | 18 |
3. Orgel
Eine andere Möglichkeit des Musikmachens mit dem Z1013 bietet dieses kleine Programm. Wenn sie es ab Adresse 300H eingeben, das Tonbandgerät auf „Aufnahme“ drücken und die Lautstärke etwas aufdrehen, koennen sie die untere Reihe der Tastatur als kleine Orgeltastatur benutzen. Der Inhalt der Speicherzelle mit der Adresse 31FH bestimmt die Tonlänge eines Zyklus. Die Tonhöhe der einzelnen Tasten wird in der Tabelle ab Adresse 333H gespeichert. Sie können mit dem M-Kommando ab Adresse 333H auch eine andere Tonleiter eingeben. Zum Beispiel:
# M 333 0333 # 40 39 33 30 2B 26 22 1F ; (ist unguenstiger bei 2 MHz)
wollen sie selbst eine Tonleiter entwerfen, so beginnen sie mit dem Grundton und ändern sie die folgenden Töne nach Gehör.
4. Sirene
Wenn sie das ihr Tonbandgerät wie oben einrichten, so erhalten sie nach dem Starten als Ergebnis einen auf- und abschwellenden Ton. Dieser Sirenenton kann auch aufgezeichnet werden und für obiges Programm als Eingangsignal verwendet werden.
durch Veränderung der Speicherzellen auf den Adresse mit neuen Inhalten
381H 383H 385H 3ABH 30H...20H...10H 60H...40H...11H 01H...10H...04H 30H...20H...10H (bei 2 MHz) 60H E0H 10H 60H
ist der Sirenenton in weiten Grenzen variierbar.
5. Ohne Fleiß - kein Preis
Mit dem folgenden Programm können sie schon ein kleines Computerspiel durchführen. Das Programm wird ab Adresse 100H bis Adresse 353H eingegeben und auf Adresse 100H gestartet. mit „→“ wird die jeweilige Zahle nach rechts, mit „←“ nach links, Mit „U“ nach oben und mit „ “ (SPACE) nach unten bewegt.
Anlage 14: BASIC Beispielprogramme
Die hier angegebenen Programme in der Programmiersprache BASIC erfordern die Z1013 Variante mit 16K RAM und das Vorhandensein des „3K BASIC VON RER“. Eine Erlaeuterung der Programme erfolgte nur dort, wo es fuer erforderlich gehalten wurde. Ansonsten reicht die enthaltene Bedienerfuehrung fuer das Verstaendnis der Programme aus.
1. BASIC-Programm zum Speichern von Adressen und Telefonnummern
Mit diesem BASIC-Programm ist es möglich, ein Adressverzeichnis aufzubauen, anzuzeigen und zu korrigieren, Man kann aber auch nach einem bestimmten Namen suchen, alle Adressen nach dem Anfangsbuchstaben sortieren und ein Verzeichnis auf dem Bildschirm ausgeben lassen, in dem nur Telefonnummer und Name erscheinen. Wenn vor Programmstart die RAM-Grenze mit der Anweisung;
END HEX(3FFF)-64
im BASIC erweitert wird, sind maximal 80 Adressen speicherbar. Bei höheren Forderungen müssen die Daten auf Magnetbandkassette abgespeichert werden oder es ist ein anderes Satzformat zu wählen (im Programm ist die Satzlänge auf 100 Byte festgelegt). Der Dateianfang wurde in Zeile 40 mit E=8600 festgelegt, Dass der Wert für TOP kleiner als 8600 ist. Ansonsten müsste der Anfangswert für E erhöht werden.
2. BASIC-Programm "Begriffe raten"
Mit diesem BASIC-Programm können Begriffe, Sprichwörter oder Sätze abgespeichert werden. Die maximale Satzlänge sollte ein Vielfaches von 32 sein. Die maximale Anzahl der Sätze sollte nicht über 120 liegen. Entsprechend dem Menü kann der Spielmeister die Begriffe aufbauen, zur Kontrolle anzeigen, korrigieren, testen und auf Magnetbandkassette abspeichern.
Die Spielidee besteht darin, dass in einer Spielrunde vom Spielmeister Begriff für Begriff abgerufen werden kann. Dabei wird jeder Buchstabe des Begriffes durch einen Strich angezeigt. Die Mitspieler haben nun die Möglichkeit den Begriff zu erraten bzw. durch Eingabe eines Buchstabens diesen um Begriff an allen vorkommenden Stellen aufzublenden. Damit wird der Begriff immer vollstaendiger. Wurde der Begriff von einem Mitspieler richtig erraten, so kann dieser durch Betaetigung der ENTER-Taste zur Anzeige gebracht werden.
3. BASIC-Programm zum Raten einer durch die RND-Funktion ermittelten Zahl
In dem folgenden BASIC-Programm wird die Anwendung der Fensterfunktion des Monitors gezeigt. In dem Unterprogramm ab Zeile 600 werden auf ARG1(1BH) und ARG2(1DH) die Bildschirmadressen (EC00H bis F000H) mit der POKE-Anweisung gebracht (z.B.:volles Fenster). Mit der CALL-Anweisung auf Zeile 630 direkt in das Monitorprogramm (Adresse F6D1) werden die neuen Adressen des Rollfensters uebernommen. Ein anderes Rollfenster wird ab Zeile 350 eingestellt (ED40H bis F000H). Zu beachten ist, dass man vor Verlassen des Programmes wieder auf volles Rollfenster stellen muss (Zeile 580).
Bei diesem Zahlenratespiel besteht die Moeglichkeit den Zahlenbereich, in welchem die Zufallszahl ermittelt werden soll, durch die Eingabe in Zeile 400 festzulegen. Mit dem Test in Zeile 405 werden ab 1 alle positiven Zahlen bis 32768 akzeptiert. Mit der Variablen V wird die Anzahl der Versuche mitgezaehlt. In Zeile 570 und 575 wird eine Warteschleife abgearbeitt, damit die vorherige Ausschrift „Auf Wiederseh'n“ gelesen werden kann.