--------------------------------------------------------------------------- Z U S A M M E N F A S S U N G der dokumentierten und undokumentierten F�higkeiten von Novell DOS 7 NWDOS7UN.TXT: Copyright (C) 04/1994-06/1997 bei Matthias Paul Die Hilfstexte des Kommandoprozessors (Kapitel 6) sind weitestgehend der COMMAND.COM internen Hilfe entnommen und wurden aus Gr�nden der Vollst�ndigkeit hier aufgenommen, allerdings korrigiert und um undoku- mentierte Eigenschaften erg�nzt, daher zum Teil: Copyright (C) 1993 bei Novell Inc. EMail : <[email protected]> Letzte �nderung: 1997-06-07 Revision 85 Die in diesem Dokument wiedergegebenen Fakten und Ansichten basieren auf unabh�ngigen eigenen oder �bermittelten Erfahrungen mit dem Betriebs- system und stellen kein offizielles Dokument der Hersteller dar. Die Anwendung der Informationen geschieht daher auf eigene Gefahr, ich �bernehme keinerlei Garantie f�r die Richtigkeit der Daten. Jegliche Haftung f�r Sch�den etc. beliebiger Art ist ausgeschlossen. Verwendete Warenzeichen etc. sind Eigentum der jeweiligen Eigent�mer. Die kostenfreie Weitergabe dieser Datei ist ausdr�cklich erlaubt. Die Ver�ffentlichung dieser Hinweise in anderen Listen etc. erfordert meine vorherige Zustimmung. F�r Hinweise auf Fehler bin ich jederzeit dankbar. Bitte beachten Sie README.1ST f�r weitere Bestimmungen. --------------------------------------------------------------------------- 1. Inhalt: ========== 0. Titel 1. Inhalt 2. �berblick 3. Unterschiede gegen�ber DR DOS 6.0 / Tips und Tricks i. Vergleich von TASKMRG mit TASKMAX ii. VIEWMAX - Verwendung von VIEWMAX unter Novell DOS - Ausf�hren von GEM-Applikationen unter VIEWMAX - Konfigurierung f�r SuperVGA-Bildschirmaufl�sungen iii. Umstieg von PC-Kwik auf NWCACHE iv. Umstieg von SuperStor auf STACKER v. �bersicht �ber undokumentierte Befehle vi. DELWATCH/PASSWORD vii. Codeseitenunterst�tzung viii. <F5>/<F8>-Trace-Modus beim Booten ix. CD-ROM-Unterst�tzung x. Power-Management xi. �berlange Pfade xii. Updates und Weiterentwicklungen xiii. Diverses 4. Direktiven in CONFIG.SYS 5. Interne Kommandos von COMMAND.COM 6. Hilfe zu internen Kommandos von COMMAND.COM 7. Hinweise f�r Novell DOS Fans f�r weitere Untersuchungen i. Spezielle Dateien ii. Tips f�r nach versteckten Eigenschaften Suchende iii. Patches f�r COMMAND.COM iv. Offene Fragen --------------------------------------------------------------------------- 2. �berblick: ============= Novell DOS 7 von Novell ist der Nachfolger des bekannten DOS-Alternativ- Betriebssystems DR DOS 6.0 von Digital Research (dann Novell); selbst mittlerweile abgel�st von Caldera OpenDOS. Der Inhalt dieser Datei befa�t sich ausschlie�lich mit den internen (d.h. residenten) Kommandos von Novell DOS (also interne Befehle sowie spezielle Kommandos f�r CONFIG.SYS und Batchjobs) sowie einigen Tips und Tricks. F�r weitergehende Hinweise sei auf das Dokument NWDOSTIP.TXT verwiesen! Da das Betriebssystem auf den Grundlagen fr�herer DOS-Versionen aufge- baut ist, hat es nach au�en eine praktisch identische Funktionalit�t gegen�ber dem Konkurrent MS-DOS 6.2x. Dar�berhinaus bietet es aber eine gro�e Vielzahl von Erweiterungen und viele Verbesserungen im Detail, die den Komfort und die M�glichkeiten von DOS steigern: - Integrierte Novell Personal NetWare Netzwerk-Software (als Nachfolger von NetWare Lite). - Preemptives Multitasking/Proze�umschaltung unter DOS mittels TASKMGR (als Nachfolger von TASKMAX bei DR DOS 6.0) - Verbesserte Speicherausnutzung f�r DOS und Anwendungsprogramme: EMS, VCPI, DPMI und das neue Novell DPMS (DOS Protected Mode Services) werden unterst�tzt. - Hochentwickelter und sicherer Plattencache NWCACHE - Tief ins Betriebssystem integrierter Online-Festplattenkompressor STACKER (im Gegensatz zum bei Auslieferung von Novell DOS 7 nicht mehr ausgelieferten DBLSPACE bei MS-DOS 6.21 (um 04/1994); bei MS-DOS 6.22 liegt allerdings als Ersatz DRVSPACE bei). - Komfortables SETUP-Programm - �bergreifende Hilfefunktionen mit HyperText - Viele Verbesserungen im Detail und eine Reihe neuer Kommandos (insb. gegen�ber MS-DOS 6.2x) wie RENDIR, TOUCH, XDIR, DELPURGE, DELWATCH, DISKMAP, FBX, FBXW, MEMMAX, CURSOR, LOCK, NWCDEX, PASSWORD, SCRIPT, SERNO usw. - Fortgef�hrter Support f�r eine Reihe �lterer externer DOS-Kommandos, die bei der Konkurrenz MS-DOS 6.0/6.2x weggefallen sind (beziehungs- weise nur noch als Zusatz erh�ltlich sind), wie z.B. Codeseitenunter- st�tzung f�r Drucker PRINTER.SYS sowie JOIN, ASSIGN, COMP, GRAFTABL, EXE2BIN, BACKUP, RESTORE. - G�nstiger Preis: ca. DM 15,- (!!!) bis DM 80,- --------------------------------------------------------------------------- 3. Unterschiede gegen�ber DR DOS 6.0 / Tips und Tricks: [97-03-22] ================================================================== Als Nachfolger dieses Betriebssystems besteht weitestgehend Kompatibi- lit�t. Allerdings sind auch einige wenige M�glichkeiten weggefallen oder haben sich in der Handhabung ge�ndert: (Eine Vielzahl weiterer Tips zu Novell DOS und PNW befinden sich in der Datei NWDOSTIP.TXT.) i. Vergleich von TASKMGR mit TASKMAX: ------------------------------------- Der Proze�umschalter TASKMAX ist durch TASKMGR ersetzt worden, der neben der Betriebsart Proze�umschalter auch einen echten Multitasking- Modus kennt, der allerdings recht viel Zusatzspeicher pro ausgef�hrten Proze� ben�tigt, so da� sich wesentlich weniger Tasks als mit dem Proze�umschalter gleichzeitig starten lassen (4 MByte ca. 3 Prozesse, 8 MByte ca. 7 Prozesse, also �hnlich wie unter MS Windows 3.1). F�r DOS bleibt jedoch allemal gen�gend Speicher �brig, der Kernel des Multitaskers zwackt dem DOS gerademal 6 KByte Speicher ab. Der TASKMGR kennt (auch im Proze�umschaltmodus) leider nicht mehr die Daten- Import/Export-Funktionen des alten TASKMAX (<F5>/<F7>), d.h. die �bernahme von Daten aus anderen Tasks l��t sich nur indirekt �ber Dateien auf der Platte abwickeln. Zwangsl�ufig waren die direkten Import-Export-Funktionen recht spartanisch (z.B. �ber simulierte Tastatureingaben in anderen Task), aber trotzdem wird der eine oder andere dieses Feature vermissen. Der alte TASKMAX l��t sich �brigens nicht unter Novell DOS starten - auch nicht mit SETVER. Und TASKMGR l�dt ebenfalls nicht unter DR DOS 6.0. Das d�rfte angesichts der internen �nderungen auch berechtigt sein. ii. VIEWMAX: ------------ Verwendung von VIEWMAX unter Novell DOS: Die VIEWMAX-Software wird nicht mehr (wie noch bei DR DOS 6.0) mit- geliefert, d.h. es existiert nun keine graphische DOS-Shell mehr (�brigens auch nicht mehr bei der Konkurrenz MS-DOS 6.2), daf�r gibt's aber von Fremdfirmen gen�gend Ersatz: angefangen von MS Windows, IBM OS/2, Geoworks Ensemble, Quarterdesk DESQview(/X) bis hin zu reinen DOS-Oberfl�chen wie Norton Commander und CP-Tools. In der Ger�chtek�che hielt sich auch l�ngere Zeit die Meldung, da� Novell selbst auch eine graphische Oberfl�che als Windows-Konkurrent heraus- bringen wollte, mittlerweile (ab 10/1994) ist aber die Weiter- entwicklung von Novell DOS im Zuge von Produktstraffungen eingestellt worden (Bugfixes/Updates f�r Novell DOS und PNW waren davon allerdings bis Anfang 1996 noch nicht betroffen). Caldera, die in 07/1996 die Rechte an DR DOS etc. von Novell �bernommen haben, reden allerdings wieder von einem GUI (OpenView), so da� vielleicht doch etwas an diesen Ger�chten wahr ist. Der TASKMGR von Novell DOS 7 verh�lt sich jedenfalls in einigen Punkten sehr Windows-konform (Start/Exit-Broadcasts; Nach- bildung des Installations-Check-APIs; Laden virtueller Ger�tetreiber, sogar WIN32S.386 funktioniert). Mit dem Wegfall von VIEWMAX ist leider die naheliegendste M�glichkeit weggefallen, Programme f�r die alte Digital Research Oberfl�che GEM (urspr�nglich von Atari-Computern her bekannt) unter DOS auszuf�hren; diese konnten n�mlich innerhalb der auf GEM basierenden Oberfl�che VIEWMAX gestartet werden (nat�rlich nicht die Atari-Programme, die 68000-Maschinencode verwenden, aber Hochsprachen-Quellcode (meist C) sollte sich recht leicht portieren lassen). VIEWMAX ist aber nicht an DR DOS 6.0 gebunden, es l�uft auch einwand- frei mit Novell DOS oder MS-DOS, allerdings f�hrte die Steuerung des neuen Taskmanagers durch VIEWMAX im Multitasking-Modus des �fteren zu Abst�rzen (die sich evtl. doch noch umgehen lassen - das Verhalten hat sich mit den Novell DOS 7 Updates 9 und 12 stark stabilisiert: Wenn man alle Tasks mit dem herk�mmlichen TASKMGR-Men� �ffnet und schlie�t, in einem Task VIEWMAX l�dt und dort nur tempor�r die TASKMAX/TASKMGR- Steuerung aktiviert, um zwischen den Prozessen hin und her zu schalten, arbeitet TASKMGR zumindest bis zum Beenden stabil, sogar unter 4DOS). Der Proze�umschaltmodus wird in jedem Fall von VIEWMAX sauber unter- st�tzt, auch wenn man VIEWMAX h�here GEM-Grafikaufl�sungen unterschiebt (wie weiter unten beschrieben). Mit Update 15 kann man ziemlich stabile Konfigurationen von VIEWMAX, TASKMGR (und evtl. 4DOS) erreichen. Solange man VIEWMAX nicht anweist, den TASKMAX/TASKMGR zu steuern, ist die Kommunikation sowieso v�llig problemlos (aber damit auch nicht so interessant). Damit VIEWMAX seine Konfigurationsdatei VIEWMAX.INI findet, legt man diese am besten in das \NWDOS\INI\ Verzeichnis und setzt zus�tzlich die ehemalige Umgebungsvariable %DRDOSCFG% auf den Wert von %NWDOSCFG% (z.B. in AUTOEXEC.BAT nach dem Eintrag f�r %NWDOSCFG% mit SET DRDOSCFG=%NWDOSCFG%). Unter Umst�nden erzeugt VIEWMAX dort auch eine Datei TASKMAX.INI, die aber vom neuen TASKMGR ignoriert wird. Will man zwischen TASKMAX.INI und TASKMGR.INI Konsistenz erzeugen, so mu� man VIEWMAX �ber einen Batchjob aufrufen, der vorher TASKMGR.INI in TASKMAX.INI umkopiert und nachher TASKMAX.INI in TASKMGR.INI zur�ckkopiert. Vorher mu� man noch manuell den Eintrag aus TASKMAX.INI in TASKMGR.INI aufnehmen. Ausf�hren von GEM-Applikationen unter VIEWMAX: Zu VIEWMAX noch ein paar weitere Hinweise: VIEWMAX �hnelt dem GEM 3.0 Desktop derma�en, da� man es sofort als eine 'Weiterentwicklung' bzw. Modifikation dieser graphischen Oberfl�che erkennt. VIEWMAX kann problemlos GEM-Anwendungen ausf�hren. Konfigurierung f�r SuperVGA-Bildschirmaufl�sungen: Eigene Versuche haben ergeben, da� es sogar eine undokumentierte M�glichkeit gibt, VIEWMAX in h�heren Bildschirmaufl�sungen als Standard-VGA zu betreiben: Dazu ben�tigt man lediglich die passenden GEM 3.0 oder 3.1 SuperVGA-Treiber (etwa SD800.SYS/.VGA oder SD1024.SYS/.VGA, die auf den �blichen Treiberdisketten zu Ihrer Grafikkarte zu finden sein sollten. Bei neueren Karten (ab ca. 1994) k�nnte es allerdings sein, da� GEM-Treiber nicht mehr mitgeliefert werden, da diese Multitasking-Oberfl�che schlie�lich auch den Weg in die 'ewigen Jagdgr�nde' gefunden hat). Die Instal- lation ist denkbar einfach: Die Datei UDUNI9.VGA, die zu VIEWMAX geh�rt, ersetzt man durch den GEM 3.1. Treiber SDxxxx.VGA, au�erdem kopiert man den Treiber SDxxxx.SYS ins gleiche Verzeichnis. Beim n�chsten Start von VIEWMAX wird die Oberfl�che in der hohen Auf- l�sung aufgebaut. Da VIEWMAX auch die DOS-Proze�umschaltung unter- st�tzt, bekommen Anwender eine recht angenehme Arbeitsumgebung ge- liefert. Wirklich: Wenn es denn schon eine graphische Oberfl�che sein mu� und Sie noch keinen 486er (oder besser) Ihr Eigen nennen, w�rde ich die M�glichkeiten von VIEWMAX in jedem Fall denen eines Windows-Dateimanagers vorziehen, besonders wenn Sie noch einige der klassischen GEM-Anwendungen 'auf Lager' haben. Die Bedienung ist sehr viel einfacher. In anderen Belangen kann Windows nat�rlich mehr... Noch besser ist es jedoch, statt den Originaltreiber zu �berschreiben, die zus�tzlichen Treiber einfach ins VIEWMAX-Verzeichnis zu kopieren und eine Erg�nzung in der Datei VIEWMAX.INI vorzunehmen: In der Sektion [Drivers] erh�ht man die Anzahl der MaxDrv= um die Anzahl der zus�tzlichen Treiber, dann erg�nzt man die Tabelle um DriverX= entsprechend um die neuen Aufl�sungen und Treiber (z.B. auf SD800.VGA verweisen) und setzt CurrentDrv= auf die gew�nschte Aufl�sung (X entspricht der jeweiligen Nummer. Achtung: Gro�- und Kleinschreibung mu� angeblich beachtet werden, meine Ausgabe von VIEWMAX kommt aber auch mit durchg�ngiger Gro�schrift zurecht). Danach startet VIEWMAX in der gew�nschten Aufl�sung. Weitere Hinweise finden sich in DRDOS6UN.TXT (auch im Hinblick auf M�glichkeiten, mit Bugs in den Bildschirmtreibern zu leben). Summa summarum f�r alle 'Windows-Ver�chter': Nach einigen Basteleien und unter Beachtung einiger Verhaltensregeln kann man sich - wenn man so will - selbst eine graphische Multitasking-Oberfl�che f�r Novell DOS bauen, nicht mit den M�glichkeiten von MS Windows, daf�r aber sehr viel schneller und trotz gewisser Beschr�nkungen recht leistungsf�hig (f�r den Privatgebrauch). Z.B. ist es schon erstaunlich, wie winzig sich GEM-Klassiker wie GRAPH PLUS, DRAW oder WORDCHART (unter 100 - 200 KByte!!!) oder auch Fremdprodukte wie VENTURA PUBLISHER neben MegaByte-gro�en Windows-Boliden ausmachen und welchen Funktionsumfang sie dennoch bieten. Bleibt zu hoffen... �brigens: Auch die DOSSHELL von MS-DOS 6.0 funktioniert unter Novell DOS 7. iii. Umstieg von PC-Kwik auf NWCACHE: ------------------------------------- Der PC-KWIK-Platten-Cache (PCKWIK.SYS) wurde ersetzt durch NWCACHE. PC-KWIK arbeitet prinzipiell auch mit Novell DOS, trotzdem ist er nicht mehr zu empfehlen, weil NWCACHE moderner ist und mehr M�glichkeiten bietet, z.B. die Nutzung des Erweiterungsspeichers via DPMS. iv. Umstieg von SuperStor auf STACKER: -------------------------------------- Der SUPERSTOR-Online-Plattenkompressor (SSTORDRV) wurde ersetzt durch STACKER. SUPERSTOR arbeitet prinzipiell auch mit Novell DOS, es liegen aber Konverter von DBLSPACE und SUPERSTOR nach STACKER bei. Da Microsoft sein DBLSPACE (von MS-DOS 6.0/6.20) aufgrund von Copyright-Verletzungen bei MS-DOS 6.21 nicht mehr ausliefern durfte (bei MS-DOS 6.22 wird der ann�hernd identische Ersatz DRVSPAVE mit- geliefert), ist der Umstieg auf STACKER sowieso zu empfehlen. STACKER ist auch noch etwas tiefer ins System eingebettet (zumindest bez�glich der damaligen DBLSPACE/DRVSPACE Version), kann DPMS nutzen und bietet damit eine gr��ere Sicherheit und Kompatibilit�t mit Programmen (vgl. c't-Artikel 1994). Auch zu IBMs OS/2 und zu PC-DOS 7 wird eine �hnliche Stacker-Version mitgeliefert. Allerdings ist Novell DOS in der urspr�nglich ausgelieferten Version nicht vollst�ndig mit dem externen Stacker 4.0 kompatibel (Novell DOS liegt eine angepa�te Stacker 3.12 Version bei). Insbesondere das SETUP-Programm und CHKDSK f�hrten hier zu Problemen, daher ist in solchen F�llen dringend eines der aktuellen Updates notwendig. v. �bersicht �ber undokumentierte Befehle: ------------------------------------------ Die bislang undokumentierten und i. allg. gesperrten Befehle ECHOERR, PAUSEERR und DBG von DR DOS 6.0 existieren nicht mehr, sind aber in CCI Multiuser DOS 7.22 Gold immer noch enthalten (Hinweise dazu in DRDOS6UN.TXT, bez�glich anderer undokumentierter Befehle fr�herer DR DOS Versionen auch DRDOSTIP.TXT). Das IF-Statement wurde erheblich erweitert, u.a. wurden die bislang undokumentierten Funktionen IF DIREXIST dir (immer noch nicht in der /? Hilfe dokumentiert) und IF bed OR bed nun dokumentiert und eine Vielzahl weitere M�glichkeiten hinzugef�gt. Leider fehlen die Bedingungen EQ, NE, GT, LE, GE, die Multiuser DOS 7 als auch 4DOS/NDOS anbieten bei Novell DOS 7. Das interne Kommando IDLE (ab DR DOS 5.0 vorhanden), die dynamische Wartezeiterkennung, und das zugeh�rige Ger�t $IDLE$ funktionieren nun (mit TASKMGR), sind aber weiterhin undokumentiert. Wenn der Multitasker geladen wird, wird IDLE automatisch auf ON gesetzt (Eintrag IDLE=on in TASKMGR.INI), kann aber manuell auf OFF geschaltet werden (s.u.). Die CONFIG.SYS-Kommandos ONERROR= und GETKEY= sind weiterhin undokumentiert (s.u.), ihre Funktionen sind ausf�hrlich in NWDOSTIP.TXT beschrieben. Es sind die neuen undokumentierten CONFIG.SYS-Eintr�ge YESCHAR= und DEBLOCK= hinzugekommen (s.u.), ebenfalls in NWDOSTIP.TXT dokumentiert. Die Eintr�ge NUMLOCK= und SWITCHES= und die spezielle Gruppen- �berschrift [COMMON] in CONFIG.SYS (mit MS-DOS 6.2 eingef�hrt bzw. erweitert), werden auch von Novell DOS 7 akzeptiert, sind allerdings undokumentiert (s.u.). Weiterhin existent sind die alten DR DOS-Eintr�ge HIBUFFERS= und HIDOS=, die aber durch Erweiterungen von BUFFERS= (l�dt nach M�glichkeit automatisch hoch) und DOS (mit den gleichen Ein- stellungen wie bei MS-DOS) �berfl�ssig werden und daher ab sofort undokumentiert sind. Die Marken :DRDOSBEG und :DRDOSEND in AUTOEXEC.BAT (bei DR DOS f�r die Eingrenzung des Analysebereich des Programms SETUP zust�ndig) existieren offiziell nun nicht mehr. SETUP speichert die zugeh�rigen Informationen wohl gr��tenteils in seiner SETUP.INI-Datei. Ver- schiedenen Novell-Publikationen ist jedoch zu entnehmen, da� die Marken :NWDOSBEG und :NWDOSEND innerhalb der AUTOEXEC.BAT jetzt eine Bedeutung haben, notwendig sind sie aber definitiv nicht. Die externen Kommandos BACKUP und RESTORE sind weiterhin vertreten, allerdings nicht mehr im Handbuch und DOSBOOK dokumentiert. Hilfe kann man mit /? anfordern. Als Neuerung liegt FastBackup-Express FBX als Sicherungs-Software in DOS- und Windows-Versionen bei. Au�erdem sind eine gro�e Anzahl Umgebungsvariablen und System- informationskonstanten hinzugekommen (insbesondere im Hinblick auf das integrierte Netzwerk), einige sind allerdings auch weg- gefallen (%HomeDir%, %Beta%) (s.u.). Erg�nzende Hinweise finden sich teilweise in weiteren Verlauf dieses Dokuments, aber auch in NWDOSTIP.TXT. vi. DELWATCH/PASSWORD: ---------------------- Bei DELWATCH und PASSWORD gibt es geringe Inkompatibilit�ten zu DR DOS 6.0. Diesbez�glich sei auf NWDOSTIP.TXT verwiesen. vii. Codeseitenunterst�tzung: ----------------------------- Die bei MS-DOS undokumentierte Codeseite 853 wird auch bei Novell DOS und DR DOS 6.0 unterst�tzt, die ebenfalls undokumentierte Codeseite 851 jedoch nicht. 853 ist bis auf wenige Zeichen eine Mischung aus 850, 852 und 857. Das zugeh�rige Land ist mir nicht bekannt, d�rfte aber grob gesch�tzt zum Mittleren Osten geh�ren. Demgegen�ber kennt MS-DOS 6.22 mit seiner im Vergleich zu MS-DOS 5.0 und 6.0 erweiterten L�nderunterst�tzung nun eine Reihe weiterer Code- seiten und Tastaturunterst�tzungen sowie einige neue L�nderkennungen, die Novell DOS 7 (zumindest in der europ�ischen und der US-Version) noch fremd sind: 855 = Kyrillisch (I) 861 = Island 869 = Griechenland (I) 737 = Griechenland (II) 936 = VR-China (nur spezielle MS-DOS Versionen) 938 = Taiwan (nur spezielle MS-DOS Versionen) Es ist aber m�glich, sich die entsprechenden .CPI-Dateien von einer MS-DOS Version auszuleihen (mehr dazu in NWDOSTIP.TXT). viii. <F5>/<F8>-Trace-Modus beim Booten: ---------------------------------------- Dieses Boot-Feature f�r CONFIG.SYS (und AUTOEXEC.BAT) wird �hnlich wie bei MS-DOS 6.2 unterst�tzt. ix. CD-ROM-Unterst�tzung: ------------------------- Das Einbinden eines CD-ROM-Laufwerks geschieht in zwei Stufen: In der CONFIG.SYS wird mittels DEVICE[HIGH] ein Hardware-Ger�tetreiber (getarnt als Zeichentreiber) f�r das jeweilige Laufwerk geladen. Der Name dieses Treibers kann i. allg. mit dem Parameter /M vorge- geben werden, default-m��ig hei�t das erste CD-ROM meist MSCD001. In der AUTOEXEC.BAT wird dann ein TSR-Treiber geladen, der das CD-File-System auf das DOS-Dateisystem abbildet (DOS-Umadressierer, von der Funktion her �hnlich der Net-Shell NETX bei Novell-Netzen). Microsoft liefert daf�r i. allg. einen Treiber namens MSCDEX mit MS-DOS mit. Dieser Treiber kann auch f�r Novell DOS verwendet werden, allerdings gibt es eine erheblich bessere Alternative: Bei Novell DOS liegt ein Treiber NWCDEX bei, der die gleiche Funktion wie MSCDEX hat; er kann problemlos ausgetauscht werden, die Parameter sind identisch. Dieser Treiber kann jedoch auch Extended-Memory via DPMS nutzen und braucht so selbst bei maximaler Pufferanzahl nur ca. 7 KByte im ersten MegaByte. Dieser Rest l��t sich nat�rlich hochladen (wobei NWCDEX das auch automatisch probiert - leider aber nur schafft, wenn noch sehr viel Platz in dem UMBs ist). Wenn man NWCDEX verwenden m�chte, sollte man sich allerdings unbedingt die aktuelle Version 2.80+ besorgen (ab Update 11). x. Power-Management: -------------------- Novell DOS bringt keinen eigenen Treiber f�r APMS (Advanced Power Management Specification) mit; der Treiber POWER.EXE von MS-DOS arbeitet jedoch auch problemlos mit Novell DOS zusammen. Das System an sich ist aber sehr wohl f�r LapTops etc. geeignet (seit DR PalmDOS), wie man dem BatteryMAX API entnehmen kann, das Caldera mittlerweile ver�ffentlicht hat. xi. �berlange Pfade: -------------------- Novell DOS 7 besitzt eine CDS im Stil von MS-DOS. Daher gibt es neuerdings eine Beschr�nkung in der Pfadl�nge auf maximal 67 Zeichen (bei DR DOS wurden die Pfade nur in Ausgaben vorne gek�rzt, intern waren prinzipiell beliebig lange Pfade m�glich, wobei irgendwann die internen Puffer nicht mehr mitgemacht h�tten. Ich hatte jedenfalls Pfade mit �ber 120 Zeichen auf meinem Rechner). Unter Novell DOS 7, MS-DOS/PC-DOS etc. sind derartige Pfade nicht ansprechbar, daher sollte man unter DR DOS booten und diese Pfade auf maximal 67 Zeichen k�rzen. Die meisten Anwendungen hatten sowieso Probleme mit solchen Pfaden, da auch ein Gro�teil der Bibliotheken von Hochsprachen-Compilern nur Routinen bis zu 67 Zeichen L�nge anbietet. Unter Zuhilfenahme von SUBST-Laufwerken konnte man jedoch auch mit solchen Laufwerken arbeiten. xii. Updates und Weiterentwicklungen: ------------------------------------- Leider hat Novell nach einem Managementwechsel in 10/1994 entschieden, die Weiterentwicklung von Novell DOS im Zuge von Produktstraffungen einzustellen, d.h. Novell DOS 7 wurde bis Anfang 1996 noch weiter vertrieben und gepflegt. Mittlerweile ist es vielerorts f�r ca. DM 15,- (!!!) (inkl. Personal NetWare 1.0) zu bekommen. Die Weiterentwicklung wurde, wie Novell selbst datiert, offenbar schon 04/1994 eingestellt. Die Grundlage f�r diese Entscheidung war nach der Aussage von Novell- Insidern eine Regelung mit Microsoft (die durch Novell DOS 7 zumindest im deutschen Raum ziemlich empfindlich getroffen wurden), sich im Gegenzug aus dem Netzwerkgesch�ft weitestgehend zur�ckzuziehen. Jeder mag sich selbst seinen Teil dabei denken... Ein schwacher Trost: Im Prinzip wurde seit MS-DOS 5.0 immer nur hinter der jeweiligen DR DOS/Novell DOS Version 'hinterher entwickelt' und um entsprechende Features erg�nzt, so da� Standards in bezug auf generelle DOS-Features eigentlich eher durch Digital Research/Novell gesetzt wurden. Man denke an das vergleichsweise freundliche Benutzer-Interface mit verschiedenen M�glichkeiten f�r kompakte bis ausf�hrliche HyperText-Hilfe; eigentlich �ber das ganze System eingestreute pfiffige Ideen im Detail, etwa beim Fehlermanagement, bei der Parameterauswahl, Dateilisten; das �berhaupt erste DOS-Hochladekonzept, sowie sp�ter DPMS und Multitasking usw. Multitasking und Multiuser-DOS Varianten gab es bei Digital Research �brigens schon sehr lange. Paradoxerweise sind DR DOS/Novell DOS und seine �lteren Ableger Concurrent DOS, DOS Plus, DR Multiuser DOS immer 'nur' Konkurrenz von MS-DOS geblieben. Es sind (durch das mittlerweile bis auf Anschlag ausgereizte 'Konzept DOS') aber unter anderem gerade durch diesen Wegfall der Konkurrenz auch von anderer Seite keine gro�en Erweiterungen f�r DOS mehr zu erwarten: MS-DOS 7 wird aus MS Windows (Chicago alias Windows95) heraus gebootet und PC-DOS 7 wurde mit M�glichkeiten (REXX) f�r IBMs OS/2 ausgestattet und d�rfte ab diesem Zeitpunkt von den verbliebenen DOS-Herstellern wohl zur Kompatibilit�ts-Box f�r alte Programme degradiert werden. Dadurch wird nat�rlich auch die fehlende Weiterentwicklung von Novell DOS relativiert, d.h. man wird im Endeffekt noch lange gut damit auskommen, schlie�lich ist ein Betriebssystem in erster Linie ja zum sicheren Benutzen und nicht zum Warten auf die n�chste Version gedacht ;-). Novell DOS erf�llt diesen Zweck - auch zwei Jahre nach seiner Einf�hrung und angesichts des k�rzlich erschienenen MS-DOS 7 (alias Windows95) - mehr als gut (auch wenn gerade durch die neuen F�higkeiten dieses Systems noch manche gute Erweiterungsidee am Horizont st�nden). Updates sind nur dann wirklich *notwendig*, wenn es mit zuk�nftigen Programmen/Oberfl�chen Kompatibilit�tsprobleme geben sollte. Wie und wo Sie Updates f�r Novell DOS 7 erhalten k�nnen (und es wurden eine Gro�zahl von Fixes und Detailverbesserungen vorgenommen), wird in dem Dokument NWDOSTIP.TXT beschrieben. In 07/1996 hat die durch die kommerzielle Vermarktung einer Linux- Variante bekannte Caldera Inc. von Novell alle Rechte an DR DOS etc. �bernommen und haben die englische Version des Betriebssystem unter dem neuen Namen Caldera OpenDOS 7.01 am 1997-02-03 wieder heraus- gegeben. Im Mai 1997 wurden die Quelltexte des Kernels ver�ffentlicht worden, die Quelltexte der gesamten Digital Research Betriebssystem- palette soll nach und nach folgen, um eine solide Basis f�r zuk�nftige DOS-Entwicklungen zu schaffen. Weitere, mit zus�tzlichen Funktionen versehene Versionen von Caldera OpenDOS sollen folgen. xiii. Diverses: --------------- Neben allerhand Erg�nzungen sind einige wenige Kommandozeilen- optionen von DR DOS 6.0 und fr�her weggefallen oder haben sich (aus Kompatibilit�t zu MS-DOS) ge�ndert (etwa SHARE /X). Die meisten dieser �nderungen sind allerdings schon mit DR DOS 6.0 vorgenommen worden, so da� wohl nur Umsteiger aus �lteren Versionen die Unterschiede �berhaupt bemerken werden (etwa kennt das heute bekannte CHKDSK abgesehen von den alten MS-DOS Optionen v�llig unterschiedliche Optionen als CHKDSK von DR DOS 3.41). Auch auf API-Ebene wurden einige alte undokumentierte APIs '�ber Bord geworfen' (etwa SHARE, HILOAD, Owner-IDs) und aus Kompatibilit�tsgr�nden neue APIs eingef�hrt. --------------------------------------------------------------------------- 4. Direktiven in CONFIG.SYS: ============================ Erlaubte Kommandos in CONFIG.SYS: Eine gro�e Anzahl dieser Kommandos sind zwar allgemein bekannt, aber bei Novell DOS/DR DOS kann man viele sonst nur in Batchjobs gewohnte Anweisungen auch in CONFIG.SYS verwenden, z.B. um flexible Bildschirm- ausgaben zu programmieren oder um Boot-Men�s zu konstruieren. Viele dieser M�glichkeiten waren bisher noch undokumentiert, sind jetzt aber offengelegt worden. Bez�glich der Einzelheiten (besonders bei den undokumentierten Kommandos) sei auf NWDOSTIP.TXT verwiesen. Attribute: x = Bei Novell DOS vorhanden. u = Undokumentiert. d = Dokumentiert (in Handbuch, DOSBOOK und evtl. auch /? Hilfe). - = Entfernt gegen�ber Vorg�ngerversion(en). + = Neu hinzugekommen gegen�ber Vorg�ngerversion(en). e = Erweitert gegen�ber Vorg�ngerversion(en). m = Modifiziert gegen�ber Vorg�ngerversion(en). < = Funktionsumfang geringer als bei MS-DOS 6.2. > = Funktionsumfang gr��er als bei MS-DOS 6.2. ! = Funktion existiert nur bei Novell DOS/DR DOS, nicht bei MS-DOS. = = Funktionsumfang identisch MS-DOS 6.2, h�chstens unterschiedliche Bildschirmausgaben (verst�ndlicherweise). / = Funktion vergleichbar mit MS-DOS 6.2, aber z.B. andere Syntax, andere Vorgehensweise, anderes Konzept. L��t sich aber mit den Mitteln des anderen Systems nachbilden. Tabelle: Direktive: Attribute: Bemerkung: (Novell DOS) : x de = Wie REM, allerdings gleichzeitig auch f�r Label verwendbar (an DR DOS 5.0+). ; x d + = Vgl. REM (ab DR DOS 6.0+) ? ["text"] x d !/ Zeilenweises Ausf�hren mit Frage in ?= x u + = CONFIG.SYS und AUTOEXEC.BAT, vgl. Eintrag ?= Parameter bei MS-DOS 6.2. Ab DR DOS 5.0+ (ohne den optionalen Text sogar schon ab DR DOS 3.41+) /L:region[,minsize][;[...]] Au�erdem werden die MS-DOS MEMMAKER- x u + < Optionen /L:... und /S akzeptiert. /S x u + < Bis vor Update 14 galt: Diese Optionen hatten im Prinzip keine Funktion, da Novell DOS 7 keinen Region- Support bot, wurden aber auch nicht zur�ck- gewiesen. Wurden andere Regionen als 1 angegeben, so wurde der Treiber in den Basisspeicher geladen (Region 0 ist sowieso der Basisspeicher). Die Angabe der Gr��e size mu� dezimal er- folgen (im Gegensatz zu SIZE=size). Die Option /S mu� *ohne* Leerfeld an die /L:... Anweisung angeh�ngt werden, sonst wird die Zeile von Novell DOS 7 nicht akzeptiert. Besonders tragisch war die fehlende Unterst�tzung nicht, da die Speicher- verwaltung hier schon ohne MEMMAKER, SIZER und CHKSTATE erheblich komfortabler mit SETUP, MEM und MEMMAX arbeitete und i. allg. gleiche oder bessere Resultate brachte. Ab Update 14 (sicher aber Update 15) gilt: Novell DOS 7 unterst�tzt - wie MS-DOS - (offenbar in vollem Umfang) auch UMB- Regions. N�heres hierzu siehe NWDOSTIP.TXT. Syntax: DEVICEHIGH= [/L:region[,minsize] [;region[,minsize] [;...]]] [/S]] =driver driverparameter SIZE=size x u + = Undokumentierte Option ab DR DOS 6.0+ f�r DEVICEHIGH analog zu der Option von MS-DOS 5.0, die auch bei MS-DOS 6.x wieder undoku- mentiert vorhanden ist. Diese Option er- laubt die Angabe einer Gr��e size (hexa- dezimal), die minimal in UMBs vorhanden sein mu�, damit DOS den Treiber hochl�dt. Ist soviel Speicher in den UMBs nicht (mehr) vorhanden, wird der Treiber auto- matisch in den Basisspeicher geladen. Diese Option ist dann wichtig, wenn ein Treiber w�hrend seiner Initialisierung mehr Speicher ben�tigt, als die Dateigr��e vermuten l��t. Ist der Treiber dann n�mlich bereits in die UMBs geladen und steht der zus�tzliche Speicher nicht zur Verf�gung, kann die Initialisierung des Treibers eventuell ganz versagen. Achtung: Die Angabe der Gr��e ist willk�rlich, d.h. mu� nicht der tats�chlich vom Treiber ben�tigten Menge entsprechen (sinnvolle Anwendung setzt allerdings voraus, da� man hier den wirklichen Bedarf angibt). Die Syntax lautet: DEVICEHIGH [SIZE=xxxx] =driver driverparams [COMMON] x u + / Aus Kompatibilit�t zu MS-DOS 6.2 und div. zuk�nftigen Setup-Programmen wird diese Gruppenbezeichnung nicht als Syntaxfehler gewertet und kann sogar in das abweichende, aber flexiblere Konzept von Novell DOS eingebettet werden (vgl. SUBMENU=), so da� man die [COMMON]-Gruppe als eine m�gliche Konfiguration laden kann. Andere Gruppen werden allerdings nicht akzeptiert. ( AVAILDEV ) - AVAIDEV [=] [TRUE|FALSE]. Nur bei MS-DOS 2.xx. ( SWITCHAR ) - SWITCHAR [character]. Nur bei MS-DOS 2.xx. COUNTRY x d / Zu MS-DOS 6.2 andere m�gliche Datendateien. SHELL x d = LASTDRIVE x du => Erlaubt (zumindest ab Update 11 �berpr�ft) Laufwerksbuchstaben gr��er Z: durch alter- native Angabe einer Anzahl, dies insb. zur Unterst�tzung von Netz-Mappings [: bis `: mit dem neuen Requester VLM, z.B. LASTDRIVE=32. Diese Erweiterung fehlte bei DR DOS 6.0 (zumindest bei der Original- Ausgabe von 1991 noch). BREAK x d / Zu MS-DOS 6.2 leicht andere BREAK-Bedingung BUFFERS x du > L�dt - wenn m�glich - automatisch hoch. Akzeptiert wie bei DR DOS 6.0 zwei Para- meter. Bei DR DOS 3.4x und 5.0 wurde nur ein Parameter akzeptiert. HIBUFFERS x u !> Obsolet, arbeitet �hnlich wie BUFFERS, aber gilt nur f�r hochgeladene BUFFERS und ab- h�ngig von BUFFERS. Ab DR DOS 6.0+ FCBS x du = Akzeptiert von DR DOS 3.4x bis Novell DOS 7 (Update 15) nur einen Parameter, auch wenn in der Dokumentation von zwei Parametern die Rede ist. FILES x d = Entgegen der Beschreibung im DOSBOOK sind Werte von 8 bis 255 m�glich. Default ist 20. (Einige Versionen von IBMBIO.COM lie�en auch bis herab zu 5 Dateien zu.) STACKS x d = Identisch zu MS-DOS, zwei funktionale Parameter m�glich. (bei DR DOS 3.41-5.0 noch STACK= und bei DR DOS 6.0 STACKS=, wobei sie dort aber nur absolut funktionslose Kompatibilit�ts- Dummies waren.) FASTOPEN x d / Analog zu MS-DOS 6.2 FASTOPEN= in CONFIG.SYS. M�gliche Werte von 128 bis 32768. Das Kommando FASTOPEN.EXE ist dagegen lediglich ein Kompatibilit�ts- Dummy. DEBUG u -! Undok. Feature von DR DOS 3.41-6.0, ent- fernt bei Novell DOS 7 (Syntax DEBUG=ON|OFF). War gleichbedeutend mit dem undokumen- tierten und meist gesperrten Kommando DBG, das aber ebenfalls nicht mehr existiert. DRIVPARM x du = HISTORY x du !> Zu MS-DOS 6.2 vgl. DOSKEY, NUMLOCK, HISTORY=ON|OFF[,nnn[[[,ON|OFF][,ON|OFF] [,ON|OFF]]]] Ab DR DOS 3.41+ drei Parameter, bei DR DOS 6.0 vier Parameter, bei Novell DOS 7 f�nf Parameter. INSTALL x d = Gibt's bereits ab DR DOS 3.41 (und MS-DOS 4.0)!!! HIINSTALL x d !/ Zu MS-DOS 6.2 vgl. INSTALLHIGH (ab DR DOS 5.0+) INSTALLHIGH x d = HIDOS x u / Ab sofort undokumentiert aus Kompatibilit�t zu DR DOS 5.0/6.0, vgl. DOS=HIGH,UMB DOS x d + = M�gliche Parameter: HIGH, LOW, UMB, NOUMB (mit Parameter HIGH ab DR DOS 6.0+) SET x d > Bei Novell DOS/DR DOS 6.0+ auch in CONFIG.SYS SWITCHES x u + / Aus Kompatibilit�t zu MS-DOS 6.0/6.2 und MS-Windows. Zumindest ab Update 13 verbirgt sich dahinter auch teilweise Funktionalit�t. HIDEVICE x d !/ Zu MS-DOS 6.2 vgl. DEVICEHIGH, Syntax: HIDEVICE [SIZE=nnnn] [=] dateispez. (ab DR DOS 5.0+) DEVICEHIGH x d = Ab sofort dokumentiert (ab DR DOS 6.0+ vorhanden). DEVICE x d = REM x d = Vgl. auch ';' (ab DR DOS 3.41+) zu MS-DOS wie REM, COMMENT bis MS-DOS 6.0, und ';' ab MS-DOS 6.2 CHAIN x d ! Verkettung von verschiedenen Konfigura- tionsdateien zu einer CONFIG.SYS, ab DR DOS 5.0+, zu MS-DOS 6.2 vgl. MENUxxxx GOTO x d ! Spr�nge in CONFIG.SYS, ab DR DOS 5.0+, zu MS-DOS 6.2 vgl. MENUxxxx GOSUB x d ! Spr�nge mit R�cksprung in CONFIG.SYS, ab DR DOS 6.0+, zu MS-DOS 6.2 vgl. MENUxxxx RETURN x du ! R�ckspr�nge in CONFIG.SYS, ab DR DOS 6.0+, zu MS-DOS 6.2 vgl. MENUxxxx CLS x d !> Novell DOS/DR DOS 6.0+ auch in CONFIG.SYS CPOS x du ! Cursorposition setzen mit NN,MM wobei NN=zeile, MM=spalte (ab DR DOS 6.0+) TIMEOUT x du !> Zu MS-DOS 6.2 vgl. MENUDEFAULT, TIMEOUT besitzt sehr leistungsf�hige un- dokumentierte Erweiterungen (ab DR DOS 6.0+ vorhanden). SWITCH x du !> Zu MS-DOS 6.2 vgl. MENUITEM, MENUDEFAULT SWITCH besitzt sehr leistungsf�hige undoku- mentierte Erweiterungen (ab DR DOS 6.0+ vorhanden). ONERROR x u ! Extrem leistungsf�higes Kommando in etwa analog zu IF ERRORLEVEL in Batchjobs (ab DR DOS 6.0+). ECHO x d !> Zu MS-DOS 6.2 vgl. MENUITEM, ECHO gibt exakt das aus, was ab dem ersten sichtbaren Zeichen als Parameter angegeben wurde, also durchaus vom Batchjob-Kommando ziemlich abweichend (ein evtl. f�hrendes '=' wird verschluckt!!). Ab DR DOS 5.0+ EXIT x d !> CONFIG.SYS beenden vgl. CHAIN und SWITCH, ab DR DOS 6.0+ ERROR x u ! Setzt einen Errorlevel (ab DR DOS 6.0+). GETKEY x u ! Wartet auf Tastendruck oder Timeout und setzt einen entsprechenden Errorlevel (ab DR DOS 6.0+). YESCHAR x u +! YESCHAR=chr, wobei chr das Zeichen ist, nach dem in den �blichen (J/N)?-Abfragen innerhalb von CONFIG.SYS reagiert wird. Default bei deutscher Version ist J. DEBLOCK [hex-value] Wird zur Einstellung der Methode f�r die x u +! 'Disk Deblocking' benutzt. Fr�here sichere, aber langsame Einstellung war A000 (640 KByte-Grenze), mittlerweile wird aber MS-DOS' schnellere, aber gef�hrlichere Einstellung als Default verwendet (FFFF). N�heres siehe in NWDOSTIP.TXT bei NWCACHE. NUMLOCK x u + / NUMLOCK[[=][on|off]], Default ist keine Ver�nderung. ( COMMENT ) / Nur MS-DOS 5.0/6.0 wie REM und ';'. ( INCLUDE ) /< Nur MS-DOS 6.2, kann aber mit GOSUB/RETURN flexibler. ( MENUCOLOR ) /< nachgebildet werden, MENUDEFAULT arbeitet �hnlich ( MENUDEFAULT ) /< wie TIMEOUT und SWITCH, MENUITEM und ( MENUITEM ) /< SUBMENU wie ECHO und SWITCH. Das einzige, ( SUBMENU ) /< was bei Novell DOS komplizierter in der Handhabung ist, sind Untermen�s. Daf�r werden aber - insbesondere unter Zuhilfe- nahme der undokumentierten Kommandos - sehr viel mehr M�glichkeiten geboten. --------------------------------------------------------------------------- 5. Interne Kommandos von COMMAND.COM: ===================================== >> Dieser Abschnitt ist noch nicht in allen Belangen aktualisiert!!! << Au�er div. syntaktischen M�glichkeiten sind alle 'echten' internen Befehle, also residente und Batch-Kommandos aufgef�hrt! Ausf�hrlichere und aktuelle Informationen finden Sie in NWDOSTIP.TXT. �bersicht: Kommando: Attribute: Vergleich zu MS-DOS 5.0/6.xx: (Novell DOS) ; wie REM, ab Update 11 ? DR DOS/Novel DOS (Individuelles Ausf�hren von Befehlen in CONFIG.SYS u. Batchjobs nach Tastendr�cken). /? /H /HELP xu+! Ruft eine �bersicht �ber alle (dokumen- tierten) Befehle von COMMAND.COM auf Einfach am Prompt /? eingeben. COMMAND > sonst, wie gewohnt. APPEND - > sonst, wie gewohnt. BATCH u-! undok. Funktion zum Aufrufen von Batchjobs (nur bei DR DOS 3.41 und Multiuser DOS vorhanden). �hnlich wie CALL. BREAK = wie gewohnt (Break-Bedingung leicht anders). CALL = wie gewohnt. CHCP = CHDIR | CD = wie gewohnt. CLS > wie gewohnt. COPY /= > wie gewohnt. CTTY = wie gewohnt. DATE = wie gewohnt. DBG - nur DR DOS 3.41: undokumentiert (i. allg. gesperrt) bei Multiuser DOS dokumentiert und funktionsf�hig. DEL > wie gewohnt. DELQ ab DR DOS 3.41+. DIR /= > wie gewohnt. ECHO > (bei DR DOS/Novell DOS auch in CONFIG.SYS). Die Ausgabe von ECHO. wich in fr�hen Ausgabe von Novell DOS (vor Update 8) leider von MS-DOS ab, was verschiedene Probleme bereitete. ECHOERR - nur DR DOS 6.0: undokumentiert (i. allg. gesperrt) bei Multiuser DOS dokumentiert und funktionsf�hig ERAQ ab DR DOS 3.41+ ERASE | ERA > wie gewohnt. (ERA ab DR DOS 3.41+ und CP/M) EXIT = wie gewohnt. FOR IN ( ) DO > wie gewohnt. GOTO > (bei DR DOS/Novell DOS auch in CONFIG.SYS) GOSUB DR DOS/Novell DOS (CONFIG.SYS u. Batchjobs) HILOAD | LOADHIGH | LH DR DOS/Novell DOS (wie LOADHIGH/LH) unterst�tzt undokumentiert die Parameter /L: und /S IDLE nur DR DOS 5.0+: undokumentiert (i. allg. 'off') IF [NOT] bed1 [[AND|OR] [NOT] bed2] [[AND|OR] bed3] cmd AND und OR bei Novell DOS und DR DOS 6.0, aus Kompatibilit�t zu MS-DOS sollte man f�r AND ein verschachteltes IF verwenden: IF bed1 [IF bed2 [IF bed3]], OR kann man durch GOTOs simulieren. (Ein Fehler im OR-Handling wurde mit Update 12 behoben.) mit bedx = ERRORLEVEL lvl Errorlevel >= lvl EXIST file Wildcards sind zul�ssig DIREXIST dir Novell DOS 7 und DR DOS 6.0, aus Kompatibilit�t zu MS-DOS sollte man aber stattdessen EXIST dir\NUL verwenden. Allerdings ist sichergestellt, da� DIREXIST auch auf Netzlaufwerken funktioniert, wohingegen EXIST\nul offenbar nicht immer den gleichen Erfolg bringt (k�nnte an NET.CFG: ShowDots=On|Off liegen). str1 op str2 #val1 op #val2 Novell DOS 7 Feature!!! mit file = Dateiname (Wildcards zul�ssig???) dir = Verzeichnisname cmd = auszuf�hrendes Kommando strx = bel. Zeichenkette z.B. aus Variable, m�glichst in "" einschlie�en!! valx = bel. Zeichenkette, die als absoluter Wert interpretiert wird. op = =|==|!=|<> Vergleichsoperationen, aus Kompatibi- lit�t zu MS-DOS sollte man aber nur == (Identit�t) verwenden. Die Ungleichheit kann man auch mit NOT bedx ausdr�cken, <|>|>=|<= sind ebenfalls sowohl f�r strx als auch f�r valx zul�ssig und werden von Novell DOS 7 evaluiert, sind aber nicht dokumen- tiert!!! Damit hat man wirklich eine M�glichkeit f�r vergleichsweise komplizierte Vergleiche, allerdings k�nnen keine Ausdr�cke berechnet werden. Da MS-DOS aber diese Spielarten nicht erkennt, sollte man �u�erst vorsichtig damit umgehen, weil die Zeichen > und < bei MS-DOS nur Umleitung be- deuten und damit etwas ganz anderes bewirken (bis Update 11 war auch noch ! m�glich). Multiuser DOS bietet die von Novell DOS 7 nicht unterst�tzten Konditionen EQ, NE, LT, GT, LE und GE an. MKDIR | MD = wie gewohnt. MORE = wie gewohnt. PATH > wie gewohnt. PAUSE >= wie gewohnt. PAUSEERR - nur DR DOS 6.0: undok. (i. allg. gesperrt) Bei Multiuser DOS dokumentiert und funktionsf�hig. PROMPT > wie gewohnt (teilweise undok.). REM = wie gewohnt (auch CONFIG.SYS) RENAME | REN > wie gewohnt. RETURN DR DOS/Novell DOS (CONFIG.SYS u. Batchjobs) RMDIR | RD = wie gewohnt. SET = wie gewohnt. SHIFT = wie gewohnt. SWITCH DR DOS/Novell DOS: (Verzweigung in CONFIG.SYS u. Batchjobs) TIME = wie gewohnt. TRUENAME undok. ab Update 8 TYPE > wie gewohnt. VER = (DR DOS/Novell DOS haben andere Versionspolitik vgl. Variable %Ver%) VERIFY = wie gewohnt. VOL = wie gewohnt. --------------------------------------------------------------------------- 6. Hilfe zu internen Kommandos von COMMAND.COM: =============================================== Beim Wechsel von DR DOS 6.0 zu Novell DOS 7 wurden einige bisher interne Kommandos ausgelagert: APPEND Anlegen eines Suchpfads f�r Dateien und Overlays. %Append%-Variable. MORE Seitenweise Aufbereitung der Ausgaben einer Anwendung auf der Konsole. Weiterhin existieren die folgenden drei bei DR DOS 6.0 noch undoku- mentierten, aber bei Multiuser DOS dokumentierten und funktionsf�higen internen Kommandos nicht mehr: DBG, ECHOERR und PAUSEERR. Nun die �bersicht �ber alle internen Kommandos: �nderungen haben sich bei DEL, ERASE, HILOAD/LOADHIGH/LH, IF, IDLE, PROMPT ergeben, weiterhin sind einige bei DR DOS 6.0 neue Kommandos nun in die integrierte Hilfe aufgenommen worden. COMMAND Ausf�hren einer zweiten Kopie des Standardkommandoprozessors. Syntax: COMMAND /H COMMAND [verzpfad][ /E:n][ /P[:dateiname]][/Mx][ /Ckommando] /H Anzeige dieses Hilfetexts verzpfad Laufwerk und Pfad, von dem COMMAND.COM geladen wird. /E:n Belegen von n Bytes f�r die Umgebung (Standard: 512) /P Dauerhaftes Laden von COMMAND.COM (EXIT hat keine Wirkung) Ein optionaler Dateiname f�hrt zur Ausf�hrung von dateiname anstelle von AUTOEXEC.BAT. /C Ausf�hren von "kommando" und dann beenden /ML Residenter Teil wird in unteren konvent. Speicher geladen. /MU Residenter Teil wird in den oberen Speicher geladen. /MH Resid. Teil wird in d. unteren Teil d. Zusatzspeichers geladen Beispiele: COMMAND /E:1024 /P COMMAND /Cdir c: Hinweis: %ComSpec% Umgebungsvariable. BREAK Steuerung des Abbruchs von Programmen mit <Ctrl>+<Break> oder <Ctrl>+<c>. Syntax: BREAK /H BREAK [ON|OFF] /H Anzeige dieses Hilfetexts ON Einschalten des Pr�fens der Abbruchbedingung (Standard) OFF Ausschalten des Pr�fens der Abbruchbedingung nichts Ohne Parameter: Anzeige des Status' von Break (ON oder OFF) Beispiele: BREAK OFF BREAK CALL Beim Aufruf innerhalb einer Stapeldatei ruft CALL eine andere Stapeldatei auf und kehrt nach deren Beendigung zur ersten Datei zur�ck. Syntax: CALL /H CALL [d:][pfad]datei[.BAT][ params[...]] /H Anzeige dieses Hilfetexts d: Laufwerk der Stapeldatei pfad Pfad der Stapeldatei datei Name der aufzurufenden Stapeldatei .BAT Optionale Dateitypangabe params Von aufgerufener Datei als %1 %2 ... etc. gelesene Parameter Beispiele: CALL tues.bat CALL stelldat 5 Nov 90 CHCP Wechseln der aktiven Codetabelle. Syntax: CHCP /H CHCP [cp] /H Anzeige dieses Hilfetexts cp neue aktive Codetabelle nichts Ohne Parameter: Anzeige der aktuellen Codetabelle Beispiel: CHCP 850 CHDIR Anzeige des Pfads oder Wechseln des aktuellen Verzeichnisses. Kann mit CD abgek�rzt werden. Syntax: CHDIR /H CHDIR [[d:]verzpfad] /H Anzeige dieses Hilfetexts d: Laufwerk, auf dem verzpfad liegt verzpfad Gew�nschtes neues aktuelles Verzeichnis nichts Ohne Parameter: Anzeige des aktuellen Laufwerks/ Verzeichnisses Beispiele: CHDIR c:\strtverz CD .. CD Hinweise: /A undokumentierte Option zur Ausgabe aller Laufwerke CLS L�schen des Bildschirms. Syntax: CLS /H /H Anzeige dieses Hilfetexts Beispiel: CLS Hinweis: %$Cls% Umgebungsvariable (evtl. auch %$On% und %$Off% ???) COPY Kopieren oder Kombinieren von Dateien Syntax: COPY /H COPY ger�t|ersatzspez[+ersatzspez...][schalter] [ger�t|dateispez[schalter]] ger�t Ist CON, LPTn, PRN, NUL, COMn oder AUX ersatzspez Zu verwendendes Quellger�t, -datei oder Dateiliste dateispez Zieldatei oder -ger�t schalter /A Betrachte Datei als ASCII-Datei /B Betrachte Quelldatei als bin�r (ignoriere ^Z in Datei) /V Pr�fen der �bereinstimmung von Quelle und Ziel /S Auch System- und versteckte Dateien kopieren /C Fragen vor dem Kopieren jeder Datei /Z Nullsetzen des h�chstwertigen Bits jedes Bytes im Ziel Beispiele: COPY datei1+datei2 datei3 COPY *.txt c:dir1 CTTY Umsteuerung der Konsolen-Ein-/Ausgabe auf eine Schnittstelle. Syntax: CTTY /H CTTY schnittstelle /H Anzeige dieses Hilfetexts schnittstelle Schnittstelle, zu der umgesteuert wird Beispiel: CTTY COM1: DATE Anzeige und �nderung des Datums. Syntax: DATE /H DATE [mm-tt-jj] (US-Format) DATE [tt.mm.jj] (Europ�isches Format) DATE [jj-mm-tt] (Japanisches Format) /H Anzeige dieses Hilfetexts mm Monat 1 bis 12 tt Tag 1 bis 31 jj Jahr mit 2 oder 4 Ziffern nichts Ohne Parameter: Anzeige des Datums und Frage nach neuem Datum Beispiele: DATE 16.11.90 (im europ�ischen Datumsformat) DATE DEL L�schen von Dateien. Syntax: DEL /H DEL ersatzspez [/C|/P][/S] /H Anzeige dieses Hilfetexts /C|/P Fragen vor dem L�schen /S Einbeziehen von Systemdateien ersatzspez Zu l�schende Datei (Ersatzzeichen sind erlaubt) Beispiele: DEL *.EXE /CS DEL MEINTEXT.TXT Hinweis: /C ist die alte DR DOS Option, /P die identische neue Option aus Kompatibilit�t zu MS-DOS 6.2. DELQ L�schen von Dateien mit expliziter Freigabe jeder Datei. Syntax: DELQ /H DELQ ersatzspez [/S] /H Anzeige dieses Hilfetexts /S Einbeziehen von Systemdateien ersatzspez Zu l�schende Datei (Ersatzzeichen sind erlaubt) Beispiele: DELQ *.EXE /S DELQ MEINTEXT.TXT DIR Anzeige der Dateien in einem Verzeichnis. Syntax: DIR /H DIR [ersatzspez] [/L|/2|/W] [/P|/N] [/A|/D|/S] [/C|/R] /H Anzeige dieses Hilfetexts ersatzspez Anzuzeigende Dateien (Ersatzzeichen sind erlaubt) /A Anzeige aller Dateien /C oder /R Speichern d. anderen Schalter als Standard f�r Aufrufe /D Anzeige d. Dateien ohne gesetztes Systemattribut (Standard) /L Langformat. Beinhaltet Gr��e, Datum und Zeit (Standard) /2 wie oben, jedoch werden Dateien in zwei Spalten dargestellt /N R�cksetzen der seitenweisen Anzeige auf Standardwert /P Pause am Ende einer vollen Seite. Standard: "keine Pause" /S Anzeige der Dateien mit gesetztem Systemattribut /W Breites Format. Anzeige nur der Datei- und Verzeichnisnamen nichts Ohne Parameter: Anzeige aller Dateien unter Verwendung der aktuellen Standardschalter Beispiel: DIR /C /W Hinweis: %DIRCmd% Umgebungsvariable bei MS-DOS 6.0 / 6.2, nur bei STACKERs DIR.COM von Novell DOS, aber es gibt ja als Ersatz die Novell DOS Optionen /C bzw. /R, die schon seit DR DOS 3.41+ existieren! ECHO Wird in Stapeldateien verwendet und zeigt eine Meldung auf dem Bildschirm an. Syntax: ECHO /H ECHO [ON|OFF|text] /H Anzeige dieses Hilfetexts ON Einschalten des Bildschirmechos (Standard) OFF Ausschalten des Bildschirmechos text Anzeige von "text" Beispiele: ECHO OFF ECHO Sie verwenden das Betriebssystem %OS% Hinweis: ECHO. erzeugt Leerzeile (nur in Batchjobs) aus Zeichenfolge $20 $0D $0A im Gegensatz zu $0D $0A bei MS-DOS (kann zu Problemen f�hren). Dieses Problem wurde mit Update 8 behoben, die Zeichenfolge ist nun identisch. ERAQ L�schen von Dateien mit expliziter Freigabe jeder Datei. ERAQ ersatzspez [/S] /H Anzeige dieses Hilfetexts /S Einbeziehen von Systemdateien ersatzspez Zu l�schende Datei (Ersatzzeichen sind erlaubt) Beispiele: ERAQ *.EXE /S ERAQ MEINTEXT.TXT ERASE L�schen von Dateien. Kann mit ERA abgek�rzt werden (allerdings nur bei DR DOS/Novell DOS). Syntax: ERASE /H ERASE ersatzspez [/C|/P][/S] /H Anzeige dieses Hilfetexts /C|/P Fragen vor dem L�schen /S Einbeziehen von Systemdateien ersatzspez Zu l�schende Datei (Ersatzzeichen sind erlaubt) Beispiele: ERASE *.EXE /CS ERA MEINTEXT.TXT Hinweis: /C ist die alte DR DOS Option, /P die neue Option aus Kompatibilit�t zu MS-DOS 6.2. EXIT Beendet eine Stapeldatei oder einen zweiten Kommandoprozessor. Syntax: EXIT [/H] /H Anzeige dieses Hilfetexts Beispiel: EXIT FOR Meistens in Stapeldateien verwendet, wird dieses Kommando benutzt, um eine Kommandofolge zu wiederholen, wobei bei jedem Durchlauf ein Dateiname aus einer Liste ersetzt wird. Syntax: FOR /H FOR %[%]var IN (dateiset) DO kommando %%var In Stapeldatei als Zeiger auf Dateinamen verwendete Variable %var In Kommandozeile als Zeiger auf Dateinamen verwendete Variable dateiset Liste von zu bearbeitenden Dateien kommando Auszuf�hrende Operation Beispiele: FOR %%f IN (meinprog.asm acct.bas acct2.bas) DO TYPE %%f FOR %f IN (meinprog.asm acct.bas acct2.bas) DO TYPE %f GOTO In Stapeldateien verwendet, f�hrt dieses Kommando zur Verzweigung der Befehlsausf�hrung zu einer angegebenen Stelle der Stapeldatei. Syntax: GOTO /H GOTO marke /H Anzeige dieses Hilfetexts marke Anzuspringende Marke Beispiel: :start type meintext.txt goto start GOSUB/RETURN Mit dem Kommando GOSUB verzweigt die Kommandoausf�hrung zu einem angegebenen Punkt in der Stapeldatei. Sobald ein RETURN-Kommando auftritt, kehrt die Kommandoausf�hrung zur�ck zur Zeile hinter GOSUB, die dann als n�chste ausgef�hrt wird. Syntax: GOSUB marke Beispiel: GOSUB meinefunktion GOTO beendet :meinefunktion ECHO Hallo RETURN :beendet HILOAD Laden und Ausf�hren eines Programmes im oberen Speicher (upper mem.). Syntax: HILOAD /H HILOAD dname /H Anzeige dieses Hilfetexts dname Dateiname des zu ladenden Programmes (LOADHIGH und LH k�nnen anstelle von HILOAD verwendet werden) HILOAD hat nur dann einen Effekt, wenn die MemoryMAX-Software geladen und oberer Speicher (upper memory) verf�gbar ist. Ist dies nicht der Fall, dann wird das Programm im konventionellen Speicher geladen und ausgef�hrt. Beispiel: HILOAD CURSOR IDLE Ein-/Ausschalten der dynamischen Erkennung von Warteschleifen. Syntax: IDLE /H IDLE [= ][ON|OFF] /H Anzeige dieses Hilfetexts ON Einschalten der dynamischen Erkennung von Warteschleifen OFF Ausschalten der dynamischen Erkennung von Warteschleifen nichts Ohne Parameterangabe: Anzeige des Status' (ON oder OFF) Beispiel: IDLE = ON IDLE OFF IF Verwendet in Stapeldateien, erlaubt dieses Kommando die bedingte Abarbeitung von Kommandos, abh�ngig von angegebenen Bedingungen. Syntax: IF /H IF [NOT] bedingung [AND [NOT] bedingung][OR [NOT] bedingung] kommando /H Anzeige dieses Hilfetextes bedingung ERRORLEVEL [==] zahl EXIST [==] dateispez zeichenkette1 ==|!=|>|>=|<|<=|<> zeichenkette2 #wert1 ==|!=|>|>=|<|<=|<> #wert2 DIREXIST [==] pfadspez (nur DR DOS 6.0 und Novell DOS 7 wie EXIST ...\NUL !) Beispiele: IF EXIST c:\bin\editor.exe c:\bin\editor %1 IF NOT "%1" == "deutsch" ECHO Falsche Sprache angegeben IF #%mem% < #540 ECHO Zuwenig freier Speicher Hinweise: AND gibt es erst ab Novell DOS 7, OR bereits seit DR DOS 6.0 MKDIR Anlegen eines Unterverzeichnisses. Kann mit MD abgek�rzt werden. Syntax: MKDIR /H MKDIR [d:]verzpfad /H Anzeige dieses Hilfetexts d: Laufwerk verzpfad Anzulegendes Unterverzeichnis Beispiele: MKDIR \BENUTZER\JOACHIM MD ..\BENUTZER\DORIS PATH Anzeigen oder Einstellen eines Suchpfades f�r Kommandos oder Stapeldateien. Syntax: PATH /H PATH [[d:]verzpfad[;[d:]verzpfad...]] d: Laufwerk, auf dem sich der Verzeichnispfad befindet verzpfad Unterverzeichnispfad ; Pfadtrennzeichen; L�scht, falls alleine verwendet, die Pfadangabe nichts Ohne Parameterangabe: Anzeige des aktuellen Pfades Beispiele: PATH PATH c:\osutils;c:\bin;d:\benutzer\joachim PATH; Hinweis: %Path% Umgebungsvariable (bei MS-DOS ab 6.0 nur mit /E, sonst immer) PAUSE Verwendet in Stapeldateien, h�lt dieses Kommando die Ausf�hrung der Stapeldatei an, bis eine Taste gedr�ckt wird. Syntax: PAUSE /H PAUSE [kommentar] /H Anzeige dieses Hilfetexts kommentar Anzeige von "kommentar", falls ECHO eingeschaltet ist nichts Ohne Parameterangabe: Anzeige der Standardmeldung von pause Beispiele: PAUSE Weiter mit beliebiger Taste . . . PAUSE Legen Sie Diskette Nummer 2 in Laufwerk A: ein Weiter mit beliebiger Taste . . . PROMPT Modifizieren des Kommando-Prompts. Syntax: PROMPT /H oder PROMPT [$liste] Liste kann dabei sein: $ das Zeichen $ t Zeit d Datum p aktuelles Verzeichnis v BS-Versionsnummer n Laufwerksbuchstabe g das Zeichen ">" l das Zeichen "<" b das Zeichen "|" q das Zeichen "=" h R�cktaste e das Zeichen Escape (ASCII-27) x startet das in der Umgebungsvariablen %PExec% definierte Programm - schaltet den Prompt aus _ springt in eine neue Zeile Beispiel: PROMPT $p$g ==> C:\DIR> Hinweis: Bei DR DOS 6.0 und Novell DOS 7 hei�t die Umgebungsvariable %PExec%, nicht %Exec% (wie f�lschlicherweise in der /? Hilfe ausgegeben wird); Umgebungsvariable %Prompt%. Undokumentierte M�glichkeit bei Novell DOS plus PNW: $u zur Anzeige des Anmeldenamens eines Benutzers (einfach eine Online- Ersetzung des Variableninhaltes der Variablen %LoginName%, nicht zu verwechseln mit der Systeminformationskonstanten %Login_Name%). Nur in der eingebauten Hilfe von COMMAND.COM dokumentiert ist $- zum Ausschalten des Prompts (deshalb wird hier nochmal extra darauf hingewiesen). REM Verwendet in Stapeldateien, f�hrt dieses Kommando dazu, da� der Rest der Zeile ignoriert wird. Syntax: REM /H REM [kommentar] /H Anzeige dieses Hilfetexts kommentar Kommentartext Beispiele: REM Ignoriere den Rest dieser Zeile REM XDEL \*.* /sdrn DIES IST SICHER, DA ES NICHT AUSGEF�HRT WIRD RENAME Umbenennen von Dateien oder Verschieben von Dateien zwischen Unterverzeichnissen auf derselben Platte. Kann mit REN abgek�rzt werden. Syntax: RENAME /H RENAME alteersatzspez neueersatzspez /H Anzeige dieses Hilfetexts alteersatzspez Vollst�ndiger Pfad und Dateiname der Quelldatei(en) neueersatzspez Vollst�ndiger Pfad und Dateiname der Zieldatei(en) Beispiele: RENAME *.TXT *.DOK REN AUTOEXEC.BAT *.SAV REN \MEINTEXT.BAT \ARCHIV\MEINTEXT.BAT RMDIR Entfernen des angegebenen Unterverzeichnisses. Mit RD abk�rzbar. Syntax: RMDIR /H RMDIR [d:]verzpfad /H Anzeige dieses Hilfetexts d: Laufwerk, auf dem der Verzeichnispfad liegt verzpfad Zu entfernendes Unterverzeichnis Beispiele: RMDIR \benutzer\bert RD \arbeit\test SET Einf�gen von Zeichenketten in die Umgebung des Kommando- prozessors. Syntax: SET /H SET [name=[zeichenkette]] /H Anzeige dieses Hilfetexts name= Name der zu belegenden Umgebungsvariablen zeichenkette Die der Variablen zuzuordnende Zeichenkette nichts Ohne Parameterangabe: Anzeige aller Umgebungs- Zeichenketten Beispiele: SET archiv=c:\archiv\ SET flags=-b-t$r SET backup= SHIFT Verwendet in Stapeldateien, erlaubt dieses Kommando das �ndern der Position von Kommandozeilenparametern, wodurch Sie auf mehr als 10 (%0 bis %9) Ersetzungswerte zugreifen k�nnen. Syntax: SHIFT [/H] /H Anzeige dieses Hilfetexts Beispiel: :schleife if "%1" == "" goto fertig copy %1 c:\archiv shift goto schleife :fertig SWITCH Dieses Kommando erlaubt dem Benutzer die Auswahl eines Eintrags aus einem Men� in einer Stapeldatei. Die Zeichen 1 - 9 w�hlen die entsprechende Marke aus der Kommandozeile heraus. Ein RETURN-Kommando verlagert die Kommandoausf�hrung wieder zur�ck zur Zeile nach dem SWITCH-Kommando. Syntax: SWITCH marke [,marke..] Beispiel: SWITCH marke1,marke2,marke3,marke4 GOTO beendet :marke1 ECHO Hallo RETURN :marke2 ECHO Welt RETURN ... TIME Anzeigen und �ndern der Tageszeit. Syntax: TIME /H TIME [hh[:mm[:ss]]] [/C] /H Anzeige dieses Hilfetexts hh Stunden: 0 bis 23 mm Minuten: 0 bis 59 ss Sekunden: 0 bis 59 /C zeigt die Zeit kontinuierlich an nichts Ohne Parameter: Anzeige der aktuellen Uhrzeit und Ein- gabem�glichkeit f. neue Zeitangabe. Enter l��t die Zeit unge�ndert Beispiele: TIME 5:23:8 TIME 7:32 TIME TYPE Anzeigen des Inhalts einer Textdatei auf dem Bildschirm. Syntax: TYPE /H TYPE ersatzspez [/P] /H Anzeige dieses Hilfetexts ersatzspez Anzuzeigende Datei (Ersatzzeichen sind erlaubt) /P Pause am Ende jeder Bildschirmseite Beispiele: TYPE *.TXT /P TYPE C:\AUTOEXEC.BAT VER Anzeigen der Versionsnummer des benutzten Betriebssystems. Syntax: VER [/H] /H Anzeige dieses Hilfetexts Beispiel: VER Hinweis: %Ver% Umgebungsvariable VERIFY Ein-/Ausschalten der Verify-Option, die das Betriebssystem veranla�t, nach jeder Schreiboperation die Korrektheit der auf Platte geschriebenen Daten zu �berpr�fen. Syntax: VERIFY /H VERIFY [ON|OFF] /H Anzeige dieses Hilfetexts ON Einschalten von VERIFY OFF Ausschalten von VERIFY (Standard) nichts Ohne Parameter: Anzeige des aktuellen Status' von VERIFY (ON / OFF) Beispiele: VERIFY ON VERIFY Hinweise: Sollte normalerweise eingeschaltet sein. Wird ein Cache in Verbindung mit Netzen (wie PNW) verwendet, empfiehlt Novell allerdings VERIFY OFF zu setzen, da sonst die Wirkung des Caches zunichte gemacht wird. VOL Anzeigen des Bereichsnamens der Diskette/Festplatte. Syntax: VOL /H VOL [d:] /H Anzeige dieses Hilfetexts d: Laufwerk, dessen Bereichsname angezeigt werden soll nichts Ohne Parameter: Anzeige d. Bereichsnamens des Standardlaufwerks Beispiel: VOL --------------------------------------------------------------------------- 7. Hinweise f�r Novell DOS Fans f�r weitere Untersuchungen: [97-03-22] ====================================================================== i. Spezielle Dateien (verwendet in IBMBIO.COM): ----------------------------------------------- DCONFIG.SYS DRDOS 3.41+ Vor-CONFIG.SYS-Datei zum Laden von Superstor-Plattenkomprimierer (Stacker bei Novell DOS) vor dem Ausf�hren der CONFIG.SYS. Der Namen (D)CONFIG.SYS stammt daher, da� diese CONFIG.SYS Datei nach der Ausf�hrung auf Laufwerk D: statt C: wiederzufinden ist. A:\DRDOS.COM DRDOS 3.41+ (statt IBMDOS.COM) ii. Tips f�r nach versteckten Eigenschaften Suchende: ----------------------------------------------------- Wer mit einem Hex-Dumper, DEBUG (oder einem Disassembler) die (ent- packten) externen Utilities von DR DOS/Novell DOS untersucht, wird in einigen Kommandos auf Zeichenketten sto�en, die auf undokumentierte Umgebungsvariablen schlie�en lassen (DR DOS 3.41/5.0 FORMAT enth�lt MEDIA=, DR DOS 3.41+/Novell DOS 7 FIND enth�lt z.B. DISPLAY=A/B, �hnliches gilt auch f�r andere Tools). Soweit ich bisher feststellen konnte, handelt es sich hierbei jedoch lediglich um interne Flaggen, die zu Debug-Zwecken speziell gekennzeichnet wurden, um sie im Code auch zur Laufzeit schneller wiederzufinden. DISPLAY= ist z.B. ein Toggle, das offenbar die Bildschirmausgabe von FIND steuert und intern permanent umgesetzt wird. Viele externe Utilities, die mit Turbo/Borland C geschrieben wurden (erkennbar am Copyright-Vermerk des Compilers im Code) enthalten in den Hilfstexten (in C-Syntax) viele Zeichenketten mit vorangestelltem '%'-Zeichen. Entsprechend mu� f�r die Ausgabe dieser Zeichenketten auch eine Parse-Routine der Runtime-Library des Compilers im Code enthalten sein, die die Zeichenketten auswertet, die mit '%' beginnen. In diesem Zusammenhang werden insbesondere '#', '-', '*', '.', '0'..'9' aus- gewertet. Nat�rlich w�re es m�glich, da� diese Routine von den Utilities auch f�r andere Zwecke w�hrend der Auswertung anderer Zeichenketten benutzt wird, jedoch konnte ich bisher keine Hinweise darauf finden. iii. Patches f�r COMMAND.COM: ----------------------------- In COMMAND.COM finden sich die m�glichen Optionen vieler interner Kommandos in Form von aufeinanderfolgenden Buchstaben. Sollte es notwendig sein, ein Option auf einen anderen Buchstaben zu legen, kann man diese Zeichenketten patchen: A f�r CHDIR, CD DSAWLPRCN2 f�r DIR CPS f�r DEL, ERA, ERASE VSZCAB f�r COPY VSZC evtl. auch f�r COPY??? YTPMKHEDC? f�r COMMAND.COM selbst C wahrscheinlich f�r TIME P wahrscheinlich f�r TYPE iv. Offene Fragen: ------------------ DEBUG.EXE: In NWDOSTIP.TXT wird ausf�hrlich auf die unglaubliche Zahl un- dokumentierter Erweiterungen von Novells DEBUG eingegangen. Ein paar (wichtige) Details sind aber nach wie vor ungekl�rt, etwa das Dateiformat von .SYM Dateien und ob - auf irgendeine Weise - doch noch das Intel-Hex-Format (.HEX), evtl. mit Symbolerg�nzungen, unterst�tzt wird. Au�erdem k�nnen Symbole wahrscheinlich auch innerhalb des Debuggers definiert werden und DEBUG erlaubt Remote-Debuggen. Wer hierzu eine Vermutung hat, sollte mir diese bitte mitteilen. --------------------------------------------------------------------------- Converted to HTML by TXT2HTML (�Thomas Antoni), 29.06.2011, 17:35:55 |