Ein Pausenfüller für DOS 1

Eine abwechslungsreiche Alternative zur PAUSE-Funktion stellt TICKER.DEB dar. Das Programm gibt an der aktuellen Cursorposition eine gepunktete Linie aus und läßt auf dieser den als Parameter übergebenen Text durchrollen. Drücken Sie irgendeine Taste, wird der Text wieder gelöscht und das Programm beendet. Der Tastendruck bleibt im Tastaturpuffer, damit Sie ihn nachträglich, z. B. mit ASK.DEB abfragen können. Wollen Sie nach TICKER eine »frische« Eingabe, können Sie auch einfach mit CLEARKBD.DEB den Tastaturpuffer löschen. Verwenden Sie TICKER ohne Parameter, erscheint der Standardtext »Bitte eine Taste drücken«. Außerdem besteht die Möglichkeit, die Anzahl der zu rollenden Zeichen von 1 bis 255 festzulegen. Standardmäßig rollen 40 Zeichen. Je nach BIOS-Version Ihres PCs kann diese Länge auch über bis zu drei Zeilen gehen, die dann »gescrollt« werden. Den Cursor können Sie bei Bedarf mit LOCATE.DEB an einer gewünschten Stelle plazieren.

Name: TICKER.DEB
Funktion: Fordert mit einem »rollenden« Text zur Eingabe auf.
Übersetzung: DEBUG <TICKER.DEB
Prüfsumme: B537
Anwendung: TICKER [#][:Text]# = 1 … 255 (Breite des rollenden Bildschirmausschnitts)

Text = Beliebiger Text

Einschränkungen: ./.
A
MOV AH,F            ;100
INT 10              ;102
MOV AH,3            ;104
INT 10              ;106
PUSH CX             ;108
MOV CX,1F00         ;109
CALL 17E            ;10C
XOR AX,AX           ;10F
MOV ES,AX           ;111
CMP By[80],2        ;113
JB 13F              ;118
MOV SI,82           ;11A
AAD                 ;11D
MOV AH,AL           ;11F
MOV AL,[SI]         ;121
INC SI              ;123
SUB AL,30           ;124
JB 12C              ;126
CMP AL,9            ;128
JBE 11D             ;12A
CMP AH,0            ;12C
JZ 135              ;12F
MOV [14E],AH        ;131
CMP By[SI-1],D      ;135
JZ 13F              ;139
MOV [14B],SI        ;13B
MOV AX,A2E          ;13F
CALL 183            ;142
PUSH DX             ;145
ADD DX,[14E]        ;146
MOV SI,1A9          ;14A
MOV DI,28           ;14D
MOV BL,[SI]         ;150
DEC DL              ;152
MOV AH,8            ;154
CALL 187            ;156
XCHG AL,BL          ;159
MOV CX,1            ;15B
MOV AH,A            ;15E
INT 10              ;160
DEC DI              ;162
JNZ 152             ;163
POP DX              ;165
CALL 18F            ;166
MOV CX,3            ;169
CALL 19C            ;16C
LOOP 16C            ;16F
MOV AH,1            ;171
INT 16              ;173
JZ 145              ;175
MOV AX,A20          ;177
CALL 183            ;17A
POP CX              ;17D
MOV AH,1            ;17E
INT 10              ;180
RET                 ;182
MOV CX,[14E]        ;183
PUSH AX             ;187
MOV AH,2            ;188
INT 10              ;18A
POP AX              ;18C
JMP 180             ;18D
INC SI              ;18F
CMP By[SI],D        ;190
JZ 198              ;193
CALL 18F            ;195
DEC SI              ;198
XCHG BL,[SI]        ;199
RET                 ;19B
ES:MOV SI,[46C]     ;19C
ES:CMP SI,[46C]     ;1A1
JZ 1A1              ;1A6
RET                 ;1A8
DB AF," Bitte Taste "
DB "drücken ",AE,D

RCX
C1
NTICKER.COM
W
Q

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

Matomo