Nie mehr falsche DOS-Version

Nach dem Umstieg auf eine andere DOS-Version können Sie die meisten der Programme, die auf der alten Systemdiskette enthalten waren und unter der bisherigen Version tadellos liefen, nicht mehr verwenden. Normalerweise ist das nicht weiter schlimm, weil diese Programme auf der neuen Systemdiskette sowieso in ihrer neuen Version enthalten sind. Ärgerlich wird es aber, wenn das nicht der Fall ist.

So wird z. B. bei PC-DOS 3.3 das wichtige »EXE2BIN« nicht mehr mitgeliefert. Obwohl sich am Programm selbst kaum eine Änderung ergeben hat, kann es nicht mehr ohne weiteres eingesetzt werden, weil es die aktuelle DOS-Version ermittelt und die Ausführung mit der störenden Fehlermeldung »Falsche DOS-Version« beendet. Sie können nun entweder für teures Geld das neue Programm gesondert erwerben oder aber die alte Version patchen, wie wir das in unserem Tip »DOS 3.3 und EXE2BIN« beschrieben haben. Für EXE2BIN haben wir übrigens noch einige Patches parat, die Sie im entsprechenden Kapitel finden. Außerdem bieten wir im Kapitel »Systemumgebung und Stapeljobs« eine Möglichkeit, völlig unabhängig von EXE2BIN eine Umwandlung vorhnehmen zu können.

Ein universelleres Programm, das Ihnen den Patch-Vorgang erspart, ist »SETVER«. Damit können Sie jede beliebige DOS-Version simulieren, was Sie leicht mit dem »VER«-Befehl feststellen können. Rufen Sie beispielsweise »SETVER 5.0« auf, und »VER« gaukelt Ihnen vor, stolzer Besitzer der noch nicht vorhandenen DOS-Version 5.0 zu sein. Die Hauptversionsnummer muß beim Aufruf von »SETVER« einstellig sein. Nach einem beliebigen Trennzeichen, beispielsweise ».«, folgt die Nebenversionsnummer, die mehrere Stellen besitzen darf. Der Nutzen des Programms besteht – abgesehen davon, ahnungslose Kollegen zu ärgern – darin, Programme von anderen DOS-Versionen kurzfristig austesten zu können. Statt einer dauerhaften Benutzung ist natürlich ein echter Patch doch der bessere Weg. Sie sollten allerdings mit »SETVER« sparsam umgehen, da die Versionsabfrage von Programmen sehr oft eine wichtige Funktion erfüllt. Die Änderung dieser Nummer kann somit unvorhersehbare Folgen haben – bis zum endgültigen Datenverlust. Außerdem sollten Sie nicht vergessen, anschließend wieder die richtige DOS-Version zu setzen, weil sonst alle Programme – also beispielsweise auch »COMMAND.COM« – ihren Dienst verweigern. In diesem Fall hilft nämlich nur noch erneutes Booten. SETVER macht sich beim ersten Aufruf im Arbeitsspeicher Ihres PCs resident. Bei jedem weiteren Aufruf belegt es keinen zusätzlichen Speicher, sondern legt lediglich die neue Versionsnummer ab.

Name: SETVER.DEB
Funktion: Ändert die DOS-Version.
Übersetzung: DEBUG <SETVER.DEB
Prüfsumme: D82E
Anwendung: SETVER H.Nz.B. SETVER 3.20 H=Hauptversionsnummer (1-stellig)

N=Nebenversionsnummer (1- bis 3-stellig)

Einschränkungen: Das Programm sollte nur vorübergehend, zum kurzenTest von Programmen unter anderen DOS-Versionen

verwendet werden.

A
CLD                 ;100
MOV SI,82           ;101
LODSB               ;104
SUB AL,30           ;105
MOV [14C],AL        ;107
XOR AX,AX           ;10A
MOV DL,A            ;10C
INC SI              ;10E
MOV DH,[SI]         ;10F
SUB DH,30           ;111
JB 11C              ;114
MUL DL              ;116
ADD AL,DH           ;118
JMP 10E             ;11A
MOV [14D],AL        ;11C
MOV AX,3521         ;11F
INT 21              ;122
MOV DX,146          ;124
CMP BX,DX           ;127
JZ 13C              ;129
MOV [150],BX        ;12B
MOV [152],ES        ;12F
MOV AH,25           ;133
INT 21              ;135
MOV DX,154          ;137
INT 27              ;13A
MOV BX,[14C]        ;13C
ES:                 ;140
MOV [14C],BX        ;141
RET                 ;145
CMP AH,30           ;146
JNZ 14F             ;149
MOV AX,0            ;14B
IRET                ;14E
JMP 0:0             ;14F

RCX
54
NSETVER.COM
W
Q

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