Steuerzeichen senden und zeigen

Unter DOS ist es nicht immer einfach, Steuerzeichen, die sich hinter den ASCII-Codes 0 bis 31 verstecken, auf den Bildschirm oder auf den Drucker zu bringen. Dabei ist z.B. das Zeichen Escape (ASCII 27) oft von extremer Wichtigkeit, um Steueranweisungen an den Drucker, zum Programmieren des Zeichensatzes, oder etwa an ANSI.SYS zu schicken. EMIT.DEB ist universell verwendbar und schickt sämtliche Steuerzeichen an eine beliebige Einheit – ob Drucker, Bildschirm oder sonstige. Außer ASCII 7, 8, 9, 10, 13 und 27 bekommen Sie nun endlich auch seltene Zeichen wie z. B. »Männlich« (ASCII 11) oder »Weiblich« (ASCII 12) auf den Bildschirm. Falls Sie sämtliche Zeichen brauchen, hilft Ihnen übrigens DISPLAY.DEB im Kapitel »Bildschirm« weiter. Drucker lassen sich mit Hilfe der Pipe » >PRN« direkt voreinstellen – egal welcher ASCII-Code benötigt wird.

EMIT verträgt ASCII-Zeichen entweder als dezimalen Code oder direkt in Anführungszeichen. Sie können beide Varianten beliebig oft verwenden und in einem Aufruf mischen. Zur Abgrenzung mehrerer Zahlen ist jeweils ein Zeichen notwendig, das weder eine Ziffer noch ein Anführungszeichen ist. Es bieten sich Leerzeichen, Kommatas oder Semikolons an. Sogar Kommentare sind möglich, sofern diese keine Ziffern enthalten: »EMIT Drucker initialisieren: 27,“@“, Text anzeigen: „Hallo!“ 13 10 >prn« übergibt z. B. alles außer »Drucker initialisieren:« und »Text anzeigen:« an die parallele Schnittstelle. Probieren Sie alternativ zum DOS-Befehl CLS einmal »EMIT 27 „[2J“« aus! EMIT ist das Universal-Programm, mit dem Sie in Kombination mit anderen Tips bisher unmögliche Aktionen bequem realisieren können. So ergibt sich z. B. die Möglichkeit, Systemvariablen zu editieren. Näheres hierzu erfahren Sie am Schluß des Kapitels »Systemumgebung und Stapeljobs«.

Name: EMIT.DEB
Funktion: Schickt ASCII-Codes an eine beliebige Einheit.
Übersetzung: DEBUG <EMIT.DEB
Prüfsumme: 2CA8
Anwendung: EMIT [###] [„Text“] [Kommentar] […]### = ein ASCII-Code, z. B. 27 „Text“ = ein auszugebender Text

Kommentar = Text ohne Ziffern und Anführungszeichen

Einschränkungen: ./.
A
MOV SI,81           ;100
XOR CX,CX           ;103
XOR CL,1            ;105
CALL 136            ;108
JZ 13D              ;10B
CMP AL,22           ;10D
JZ 105              ;10F
MOV DL,AL           ;111
JCXZ 130            ;113
SUB AL,30           ;115
JB 108              ;117
CMP AL,9            ;119
JA 108              ;11B
MOV AH,0            ;11D
AAD                 ;11F
MOV AH,AL           ;121
CALL 136            ;123
SUB AL,30           ;126
JB 12E              ;128
CMP AL,A            ;12A
JB 11F              ;12C
MOV DL,AH           ;12E
MOV AH,2            ;130
INT 21              ;132
JMP 108             ;134
MOV AL,[SI]         ;136
CMP AL,D            ;138
JZ 13D              ;13A
INC SI              ;13C
RET                 ;13D

RCX
3E
NEMIT.COM
W
Q

Quelle: 200 Utilities für PC-/MS-DOS von Gerhard Schild und Thomas Jannot