Herunterladen Diese Seite drucken

Kleincomputer KC85/4 Systemhandbuch Seite 120

Vorschau ausblenden Andere Handbücher für KC85/4:

Werbung

Systemhandbuch
120
3. Software
Ausgelöst werden können die Funktionen HARDCOPY bzw. SCREENCOPY auch
aus einem Anwenderprogramm heraus durch die normale Ausgabe des
Steuercodes 0FH.
Von BASIC aus kann das z.B. mit
PRINT CHR$(15);
geschehen.
3.11.2. Duplexroutine (mit Empfangsinterrupt)
---------------------------------------------
Wie oben bereits beschrieben, wird der Kanal 2 eines vorhandenen V24-
Moduls beim Kalt- oder Warmstart auf Duplex initialisiert. Dabei ist
die Empfangsroutine interruptgesteuert. Wird also ein Zeichen von
außen an die V24 gesendet, wird ein Interrupt ausgelöst und das
Zeichen ausgewertet. Reagiert wird in der Interruptroutine prinzipiell
nur auf zwei Zeichen bzw. ASCII-Codes, und zwar sind das 0DH (ENTER)
und 1BH (ESC). Mit einem 0DH kann dem KC mitgeteilt werden, daß mit
einer anderen Tastatur gearbeitet werden soll (über V24). Nach einem
0DH-Empfang wird eine neue Interruptempfangsroutine (für Tastatur)
initialisiert. Die Zeichen, die danach über diese Schnittstelle
empfangen werden, sind wie bei der normalen Tastaturroutine in der
Zelle (IX + 13) abgelegt. Bei Empfang von ESC (1BH) wird vom
Interruptmodus in den Pollingmodus übergegangen, wobei das z.Z.
laufende Programm unterbrochen wird. Nach dem Senden von ESC muß vom
Sender eine kurze Sendepause eingeschoben werden, da sonst eventuell
bereits empfangene Zeichen durch die Uminitialisierung verlorengehen.
In BASIC kann das mit Pause 1 erfolgen. Weiterhin ist in BASIC darauf
zu achten, daß alle PRINT-Anweisungen mit einem ";" abgeschlossen sein
müssen, da sonst nach jedem PRINT zusätzlich ein 0DH und 0AH gesendet
wird. Mit der Anweisung NULL 0 muß die Ausgabe von Dummy-Zeichen
abgeschaltet werden.
Beispiel:
Der Pixel-RAM eines KC85/4 soll an einen anderen KC85/4 gesendet
werden. Dazu ist folgendes Sendeprogramm möglich:
10 PRINT#3 CHR$(27);: PAUSE 1
20 PRINT#3 "T";CHR$(0); CHR$(128);
30 PRINT#3 CHR$(0); CHR$(40);
40 FOR I = 0 TO 40 * 256 - 1
50 PRINT#3 CHR$(VPEEK(I));
60 NEXT
Das Zeichen nach ESC wird als Steuerzeichen interpretiert. Zulässig
sind "T" und "U". Bei allen anderen Codes wird wieder in den
Interruptmodus übergegangen. Mit ESC "T" kann direkt in den Speicher
geschrieben werden.

Werbung

loading