DOS mit Startmenü
« | 04 Apr 2021 | »Heute habe ich eine alte selbst gebrannte CD etwa aus dem Jahr 2000 gefunden und mich darüber gefreut, was ich damals alles eingebaut hatte:
Sie konnte DOS starten und dort ein Boot-Menü für unterschiedlichste Tools und Start-Varianten bereitstellen, um danach unterschiedliche Tools oder Betriebssysteme zu installieren.
Es ist ziemlich in Vergessenheit geraten … aber in
CONFIG.SYS
konnte
man Auswahlmenüs für unterschiedliche Startformen hinterlegen.
CONFIG.SYS als INI Datei
CONFIG.SYS
war in DOS Zeiten eine reine Text-Datei, in der definiert wurde,
welche Treiber (meist binäre .SYS
Dateien) beim Start geladen werden sollten.
Bekannt sind Zeilen wie DEVICE=HIMEM.SYS
oder DEVICE=RAMDRIVE.SYS
.
Man merkt hier schon den KEY=VALUE
Charakter.
Doch spätestens seit DOS 6 (keine Ahnung ob das schon früher ging), darf
CONFIG.SYS
auch die aus INI Dateien
bekannten “Sektionen” beinhalten.
Sobald eine solche “Sektion” mit Namen MENU
vorhanden war,
(wie z.B.: [MENU]
), die auch mehrere MENUITEM
Einträge hatte,
zeigte DOS beim BOOT ein Menü an, wo man einen dieser Einträge
auswählen konnte.
Der MENUITEM
Eintrag bestand aus dem zu startenden Sektions-Namen
gefolgt von Komma und dem Menüeintragstext, also
MENUITEM=SectionName, Menu-Text
Beim Start wurden dann nur die Kommandos der gewählten Sektion ausgeführt.
Damit man aber mehr Flexibilität hatte, gestattete die Zeile
INCLUDE=OtherSection
, dass eine Sektion alle Kommandos einer anderen
beinhalten können sollte.
Und so kam es, dass ich mir damals folgende CONFIG.SYS
gebaut hatte:
1[MENU] 2MENUITEM=Config1,(Normal) Start mit allgemeinem ATAPI-CDROM Treiber 3MENUITEM=Config2,(Minimal) Minimalstart ohne CD-Unterstützung 4MENUITEM=Config3,(Spezial 1) Normalstart mit RAM-Disk (2 MB) 5MENUITEM=Config4,(Spezial 2) Normalstart mit RAM-Disk (8 MB) 6MENUITEM=Config5,(Spezial 3) Normalstart mit Interlink-Client 7 8[Minimal] 9DEVICE=HIMEM.SYS /TESTMEM:OFF 10DEVICE=EMM386.EXE NOEMS 11BUFFERS=40 12FILES=35 13DOS=HIGH,UMB 14LASTDRIVE=Z 15COUNTRY = 49,,COUNTRY.SYS 16 17[Config1] 18INCLUDE=Minimal 19DEVICEHIGH=ATAPICD.SYS /D:CD003 20 21[Config2] 22INCLUDE=Minimal 23 24[Config3] 25INCLUDE=Minimal 26DEVICEHIGH=ATAPICD.SYS /D:CD003 27DEVICEHIGH=RAMDRIVE.SYS 2048 /e 28 29[Config4] 30INCLUDE=Minimal 31DEVICEHIGH=ATAPICD.SYS /D:CD003 32DEVICEHIGH=RAMDRIVE.SYS 8192 /e 33 34[Config5] 35INCLUDE=Minimal 36DEVICEHIGH=ATAPICD.SYS /D:CD003 37DEVICEHIGH=INTERLNK.EXE
Fortsetzung in AUTOEXEC.BAT
Nach der Abarbeitung von CONFIG.SYS
, wurde in DOS stets
AUTOEXEC.BAT
ausgeführt.
Damit man hier ebenso auf den “ausgewählten” Menüeintrag reagieren konnte,
wurde die Umgebungsvariable
CONFIG
auf den per Menü ausgewählten Sektionsnamen gesetzt.
Meine damalige Version sah so aus:
Und der bewirkte, dass in allen “normalen” Konfigurationen der CD-Mount durchgeführt wurde, jedoch im “Minimal-Fall” wurde dieser übersprungen.
Fazit
Auf dieser DOS-CD (eigentlich ein Disketten-Image, das beim Start von CD geladen wurde) hatte ich noch weitere BATCH Dateien um alles mögliche zu installieren.
Doch mit dem interaktiven Startmenü konnte ich spielend leicht auch
Remote-Zugriffe per INTERLINK
durchführen, oder RAM-Drives
für andere Funktionen einrichten.
Bevor ich das MENU
Feature entdeckt hatte, kam ich immer mit einer
Schachtel an Disketten angelaufen,
wo für jeden Notfall eine besondere Start-Variante fixiert war … nun hatte
ich eine einzige, die alles konnte.
Ach, Wahnsinn … über 20 Jahre ist das jetzt her. Doch jetzt erinnere ich mich daran, als ob es erst gestern gewesen wäre, als DOS Startmenüs meinen Experimentier-Alltag versüßten.
… und man merkt, dass ich stets immer 5-10 Jahre hinter der Zeit war, wo ich im Jahr 2000 immer noch mit DOS beschäftigt war. Aber … wir hatten damals ja nichts anderes im Provinzdorf.