Ein Pausenfüller für DOS 2

Eine weitere alternative zur PAUSE-Funktion bekommen Sie mit BIGTIME.DEB. Das Programm zeigt mit Hilfe der Blockgrafikzeichen an der aktuellen Cursorposition eine vergrößerte Digitaluhr im Format »hh:mm:ss,nn« an. Nach einem beliebigen Tastendruck kehrt die Uhr auf die DOS-Ebene zurück und hinterläßt außerdem die gedrückte Taste im Tastaturpuffer. Diese können Sie anschließend z. B. mit ASK.DEB auswerten. Wenn Sie das nicht wollen, löschen Sie den Puffer mit Hilfe unseres Tips CLEARKBD.DEB. Die Uhrzeit entspricht natürlich der Systemzeit, die entsprechend – beispielsweise per Echtzeituhr – aktualisiert sein sollte.

Name: BIGTIME.DEB
Funktion: Zeigt eine überdimensionale Digitaluhr und wartet auf eine beliebige Taste.
Übersetzung: DEBUG <BIGTIME.DEB
Prüfsumme: 264A
Anwendung: BIGTIME
Einschränkungen: ./.
A
MOV CX,8            ;100
MOV AX,E0A          ;103
INT 10              ;106
LOOP 103            ;108
MOV AH,F            ;10A
INT 10              ;10C
MOV AH,3            ;10E
INT 10              ;110
PUSH CX             ;112
MOV CX,1F00         ;113
CALL 143            ;116
PUSH DX             ;119
MOV BP,DX           ;11A
MOV AH,2C           ;11C
INT 21              ;11E
MOV DI,5D           ;120
MOV AL,CH           ;123
CALL 151            ;125
MOV CH,A            ;128
CALL 148            ;12A
MOV CL,DH           ;12D
CALL 148            ;12F
MOV CL,DL           ;132
CALL 148            ;134
POP DX              ;137
MOV AH,1            ;138
INT 16              ;13A
JZ 119              ;13C
MOV AH,2            ;13E
INT 10              ;140
POP CX              ;142
MOV AH,1            ;143
INT 10              ;145
RET                 ;147
MOV AL,CH           ;148
CALL 15A            ;14A
INC CH              ;14D
MOV AL,CL           ;14F
AAM                 ;151
PUSH AX             ;153
XCHG AL,AH          ;154
CALL 15A            ;156
POP AX              ;159
PUSH CX             ;15A
PUSH DX             ;15B
CMP AL,[DI]         ;15C
JZ 190              ;15E
MOV [DI],AL         ;160
CBW                 ;162
MOV SI,AX           ;163
MOV DX,BP           ;165
DEC DH              ;167
MOV AH,2            ;169
INT 10              ;16B
MOV AX,A20          ;16D
TEST By[SI+197],80  ;170
JZ 179              ;175
MOV AL,DB           ;177
MOV CX,1            ;179
INT 10              ;17C
ROR By[174],1       ;17E
JNB 167             ;182
ADD DX,801          ;184
ADD SI,D            ;188
CMP SI,34           ;18B
JB 167              ;18E
INC DI              ;190
ADD BP,6            ;191
POP DX              ;194
POP CX              ;195
RET                 ;196
DB 7F,0,79,49,F,4F,7F
DB 1,7F,4F,0,0,0,41,0
DB 49,49,8,49,49,71,49
DB 49,0,0,0,41,0,49,49
DB 8,49,49,9,49,49,14
DB 40,C0,7F,7F,4F,7F,7F
DB 79,79,7,7F,7F,0,0,0

RCX
CB
NBIGTIME.COM
W
Q

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