Wenn Sie selbstgeschriebene Programme testen wollen, die ihre Bildschirmausgaben auch ohne ANSI.SYS korrekt meistern müssen, brauchen Sie eine Möglichkeit, ANSI.SYS vorübergehend abzuschalten. Sie könnten natürlich die betreffende Zeile aus der CONFIG.SYS entfernen – NOANSI ist jedoch eleganter. Das Programm sichert den Interruptvektor 29h, über den sämtliche Ausgaben auf den Bildschirm laufen. Wenn ANSI.SYS installiert ist, befindet sich dort eine Routine, die die Interpretation der Escape-Sequenzen vornimmt. Statt dieser installiert NOANSI eine eigene Routine, die nun jedes Zeichen direkt über das BIOS, also ohne weitere Interpretation auf den Bildschirm ausgibt.
Das Program reagiert nur auf Bildschirmausgaben, nicht aber auf Eingaben. Deshalb bleiben z. B. alle bereits vorhandenen Tastenumbelegungen weiterhin wirksam. Da überhaupt keine Bildschirm-Steueranweisungen mehr interpretiert werden, funktioniert übrigens auch der interne DOS-Befehl CLS nicht mehr. Statt des üblichen Bildschirmlöschens, gelangt lediglich die entsprechende Steuersequenz auf den Monitor. Sind Sie auf CLS angewiesen, verwenden Sie einfach unseren Tip SETVIDEO.DEB oder den externen DOS-Befehl MODE. Wenn Sie ANSI.SYS wieder aktivieren wollen, verwenden Sie ANSI.DEB. Das Programm setzt den gesicherten Interruptvektor wieder auf den alten Wert und »kickt« NOANSI aus dem Speicher.
Name: | NOANSI.DEB |
Funktion: | Disaktiviert den Konsolentreiber ANSI.SYS. |
Übersetzung: | DEBUG <NOANSI.DEB |
Prüfsumme: | D17E |
Anwendung: | NOANSI |
Einschränkungen: | ISANSI erkennt nicht, ob ANSI.SYS mit NOANSI disaktiviert wurde. |
A MOV AX,3529 ;100 INT 21 ;103 MOV [80],BX ;105 MOV [82],ES ;109 MOV AX,2529 ;10D MOV DX,11A ;110 INT 21 ;113 MOV DX,121 ;115 INT 27 ;118 PUSH AX ;11A MOV AH,E ;11B INT 10 ;11D POP AX ;11F IRET ;120 RCX 21 NNOANSI.COM W Q
Name: | ANSI.DEB |
Funktion: | Reaktiviert den per NOANSI abgeschalteten Konsolen- treiber ANSI.SYS. |
Übersetzung: | DEBUG <ANSI.DEB |
Prüfsumme: | DE7E |
Anwendung: | ANSI |
Einschränkungen: | ./. |
A MOV AX,3529 ;100 INT 21 ;103 ES:CMP Wo[BX],B450 ;105 JNZ 122 ;10A ES:LDS DX,[80] ;10C MOV AX,2529 ;111 INT 21 ;114 CALL 11E ;116 ES:MOV ES,[2C] ;119 MOV AH,49 ;11E INT 21 ;120 RET ;122 RCX 23 NANSI_ON.COM W Q
Quelle: 200 Utilities für PC-/MS-DOS von Gerhard Schild und Thomas Jannot
Dies ist eine von Unterstützern finanzierte Veröffentlichung. Um neue Beiträge zu erhalten und meine Arbeit zu fördern, werden Sie Abonnent: