Cursor in DOS beschleunigen

Manche Anwender von Textverarbeitungsprogrammen können oft nur neidisch sein, wenn sie sehen, wie schnell beispielsweise bei Word der Cursor durch den Text rast. Mit unserer Routine SPEEDAT ist es auf ATs möglich, die Wiederholung einer beliebigen Tastatureingabe so zu beschleunigen, daß zum Beispiel auch mit dem »persönlichen« Textprogramm eine höhere Cursorgeschwindigkeit erreicht wird. Wenn Sie »SPEEDAT A« eingeben, werden alle Tasten, die Sie gedrückt halten, deutlich schneller wiederholt, mit »SPEEDAT Z« langsamer. Selbstverständlich sind auch alle Zwischenwerte möglich. Sie erreichen so den Effekt, daß sich der Cursor schneller steuern läßt. Doch Vorsicht, auch die Wiederholung anderer Funktionen geschieht schneller! Wenn Sie zum Beispiel in einem Textprogramm mehrere Zeilen löschen, könnten Sie wegen »überhöhter Geschwindigkeit« unter Umständen ein paar Zeilen zuviel erwischen…

Name: SPEEDAT
Funktion: Erhöht die Tastaturgeschwindigkeit auf ATs
Übersetzung: DEBUG <SPEEDAT.DEB
Prüfsumme: 28DB
Anwendung: SPEEDAT CHR CHR = A (schnell) … Z (langsam)
Einschränkungen: Funktioniert nur auf ATs.
A
MOV BX,[5D]         ;100
SUB BX,2041         ;104
MOV AX,305          ;108
INT 16              ;10B
RET                 ;10D

RCX
E
NSPEEDAT.COM
W
Q

Verfügen Sie nur über einen XT, können Sie mit dem Programm SPEEDXT die Tastenwiederholung beschleunigen. Weil XTs im Gegensatz zu ATs nicht schon von Haus aus über eine derartige Möglichkeit verfügen, die nur z.B. mit SPEEDAT aktiviert zu werden braucht, ist hier ein kleines residentes Programm vonnöten. SPEEDXT klinkt sich in den Tastaturinterrupt 9 ein und überprüft, ob eine Taste längerfristig gedrückt wurde. Ist dies der Fall, verdoppelt es jeweils den Tastencode im Tastaturpuffer, sodaß die Geschwindigkeit der Tastatur effektiv auf das Doppelte steigt. Da SPEEDXT über keinen Parameter verfügt, ist es nicht nöglich, Geschwindigkeitsabstufungen wie bei SPEEDAT hervorzurufen. Sollte Ihnen die durch SPEEDXT erzeugte Rate jedoch nicht ausreichen, können Sie das Programm auch erneut in den Speicher laden, sodaß sich die Geschwindigkeit nun vervierfacht. Die von SPEEDXT angewendete Methode funktioniert zwar mit vielen Anwendungen und auch auf der DOS-Ebene recht gut – einige verweigern aber auch die Zusammenarbeit. So löscht der Norton-Editor zum Beispiel vor jeder Tastaturabfrage den Puffer, sodaß SPEEDXT ohne Wirkung bleibt. Aber auch hier gilt wie so oft: Probieren geht über Studieren!

Name: SPEEDXT
Funktion: Verdoppelt die Tastaturgeschwindigkeit auf XTs
Übersetzung: DEBUG <SPEEDXT.DEB
Prüfsumme: A178
Anwendung: SPEEDXT
Einschränkungen: Funktioniert nicht mit Programmen, die die Tastaturdirekt abfragen oder vor jeder Abfrage den Tastatur-

puffer löschen.

A
MOV AX,3509         ;100
INT 21              ;103
MOV [12A],BX        ;105
MOV [12C],ES        ;109
MOV DX,11A          ;10D
MOV AX,2509         ;110
INT 21              ;113
MOV DX,15F          ;115
INT 27              ;118
PUSH AX             ;11A
PUSH BX             ;11B
PUSH DS             ;11C
MOV BX,40           ;11D
MOV DS,BX           ;120
IN AL,60            ;122
MOV BX,[1C]         ;124
PUSHF               ;128
CALL 0:0            ;129
CMP AL,0            ;12E
CS:MOV [12F],AL     ;130
JNZ 15B             ;134
CMP BX,[1C]         ;136
JZ 15B              ;13A
MOV AX,[BX]         ;13C
MOV BX,[1C]         ;13E
MOV [BX],AX         ;142
ADD BX,2            ;144
CMP BX,[82]         ;147
JB 151              ;14B
MOV BX,[80]         ;14D
CMP BX,[1A]         ;151
JZ 15B              ;155
MOV [1C],BX         ;157
POP DS              ;15B
POP BX              ;15C
POP AX              ;15D
IRET                ;15E

RCX
5F
NSPEEDXT.COM
W
Q

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