____________________________________________________________________________ #on("b")##on ("u")# #center#Betriebssystem E U M E L #off ("u")# #center#MS-DOS-DAT #off("b")# #center#Lizenzfreie Software der #on ("b")# #center#Gesellschaft für Mathematik und Datenverarbeitung mbH, #center#5205 Sankt Augustin #off("b")# #center#Die Nutzung der Software ist nur im Schul- und Hochschulbereich für #center#nichtkommerzielle Zwecke gestattet. #center#Gewährleistung und Haftung werden ausgeschlossen ____________________________________________________________________________ #page# #free(4.5)# #center#Lesen und Schreiben #center#von #center#MS-DOS Dateien #on ("b")##center#MS-DOS-DAT#off ("b")# #free(1.5)# #center#Version 2.0 #center#Stand 10.09.87 #page# #pagenr ("%",1)##setcount (1)##block##pageblock##count per page# #headeven# % #center#MS-DOS-DAT #center#____________________________________________________________ #end# #headodd# #center#MS-DOS-DAT#right#% #center#____________________________________________________________ #end# #on("bold")# #ib#1. Allgemeines#ie# #off ("b")# Dieses Programm ermöglicht MS-DOS Dateien vom EUMEL aus von Disketten zu lesen und auf Disketten zu schreiben. Die Benutzerschnittstelle ist ähnlich der des EUMEL-Archivs organisiert. Der Benutzer kommuniziert mit einer Task des EUMEL-Systems, nämlich mit der Task 'DOS'. Diese wickelt dann über das Archiv­ laufwerk die Diskettenzugriffe ab. Der Benutzer meldet die MS-DOS Diskette mit 'reserve ("...", /"DOS")' an und kann dann mit 'list (/"DOS")', 'fetch ("...", /"DOS")', 'save ("...", /"DOS")' und weiteren Kommandos auf die MS-DOS Diskette zugreifen. Für das Schreiben und Lesen (save, fetch) stehen insgesamt 7 verschiedene Be­ triebsarten zur Verfügung. Man kann in eine Datei im ASCII Code mit und ohne Anpassung der Umlaute, im IBM-ASCII Code, im Atari-ST Code oder ganz ohne Codeumsetzung lesen bzw. schreiben. Die Betriebsart selbst wird beim Anmelden der MS-DOS Diskette durch den Textparameter des 'reserve'-Kommandos bestimmt. Die gleiche Benutzerschnittstelle gilt für die Kommunikation mit der Task 'DOS HD'. Diese Task liest und schreibt aber nicht auf der Diskette, sondern in der MS-DOS Partition der Festplatte (falls vorhanden). #on("bold")# #ib#2. Benutzeranleitung #ie# #off ("b")# Im Normalfall will man als Benutzer eine EUMEL-Textdatei auf eine MS-DOS Diskette schreiben oder eine mit z.B. Word-Star erstellte MS-DOS-Textdatei in das EUMEL-System einlesen (implementierte Formate siehe Abschnitt 3). Lesen einer MS-DOS-Datei: #linefeed (1.25)# #on ("b")# reserve ("file ascii german", /"DOS"); (* MS-DOS-Diskette ins Laufwerk einlegen *) fetch (filename, /"DOS"); release (/"DOS") #off ("b")# Schreiben einer MS-DOS-Datei: #on ("b")# reserve ("file ascii german", /"DOS"); (* MS-DOS-Diskette ins Laufwerk einlegen *) save (filename, /"DOS"); release (/"DOS") #off("b")# #linefeed (1.0)# Sollen statt der Umlaute []{|}\ verwendet werden, so ist statt "file ascii german" "file ascii" einzustellen. Eine genaue Beschreibung aller 7 möglichen Betriebsarten wird in Abschnitt 6 gegeben. Der Dateiname 'file name' unterliegt den im Abschnitt 4 be­ schriebenen Einschränkungen. #on("bold")# #ib#3. Implementierte Formate#ie# #off("b")# Diese Hardware ermöglicht das Bearbeiten von MS-DOS Disketten mit Hilfe der Task /"DOS" und (falls es sich um einen MS-DOS fähigen Rechner mit MS-DOS Parti­ tion auf der Festplatte handelt) das Bearbeiten von Daten in der MS-DOS Partition der Platte. #on("bold")# #ib#3.1 Arbeiten mit der Task /"DOS"#ie# #off ("b")# Die Task /"DOS" verwendet das Archivlaufwerk als MS-DOS Datenträger. Es sind alle mit dem IBM-Format der DOS Version 2 und 3 kompatiblen Formate für 5.25 Zoll und 3.5 Zoll Disketten implementiert, sofern diese 512 Byte große Sektoren verwenden und im ersten Sektor einen erweiterten BIOS-Parameterblock (BPB) enthalten (hierzu gehören auch mit dem Atari ST bearbeitete Disketten). Weiterhin sind die beiden von IBM verwendeten Formate der DOS Version 1 implementiert (5.25 Zoll, ein- bzw. zweiseitig, 40 Spuren a 8 Sektoren). Die einzige Hardwarevoraussetzung besteht darin, daß der Hardwareanpassungs­ modul (SHard) alle von DOS benutzten Sektoren lesen und schreiben können muß. #on("bold")# #ib#3.2 Arbeiten mit der Task /"DOS HD"#ie# #off ("b")# Die Task /"DOS HD" verwendet die MS-DOS Partition der Festplatte als Daten­ träger (falls eine solche vorhanden ist und das SHard diese ansprechen kann). Hier gibt es keine Beschränkungen bezüglich des Plattentyps. #on("bold")# #ib#4. Dateibenennung#ie# #off ("b")# Die Namen für MS-DOS Dateien unterliegen bestimmten Regeln. Ein Dateiname kann aus - einem bis acht Zeichen oder - einem bis acht Zeichen gefolgt von einem Punkt und einer Namenserweiterung von einem bis drei Zeichen bestehen. Gültige Zeichen sind - die Buchstaben A bis Z - die Ziffern 0 bis 9 - die Sonder- und Satzzeichen $ \# & § ! ( ) { } Da weitere Sonderzeichen in verschiedenen MS-DOS Versionen in unterschiedlich­ em Umfang erlaubt sind, ist ihre Verwendung beim Schreiben (save) vom EUMEL aus nicht zugelassen. Beim Lesen und Löschen dagegen sind sie erlaubt. Außerdem sind die Buchstaben a - z erlaubt. Diese werden beim Zugriff auf das MS-DOS Inhaltsverzeichnis (Directory) in große Buchstaben konvertiert. Durch das Kommando 'fetch ("Test", /"DOS")' wird also die MS-DOS Datei mit dem Namen 'TEST' in die EUMEL Datei mit dem Namen 'Test' gelesen; 'save ("test", /"DOS")' überschreibt dann die MS-DOS-Datei 'TEST' (natürlich nach Anfrage). #on("bold")# #ib#5. Beschreibung der Kommandos#ie# #off ("b")# In diesem Abschnitt steht der Begriff Dostask beim Arbeiten mit der Floppy für die Task /"DOS" und beim Arbeiten mit der MS-DOS Partition der Platte für die Task /"DOS HD". Analog steht der Begriff Dosbereich beim Arbeiten mit der Floppy für die Floppy und beim Arbeiten mit der MS-DOS Partition der Platte für diese Partition. #on("bold")# THESAURUS OP ALL (TASK CONST task) #off ("b")# Wird der 'ALL'-Operator für die Dostask aufgerufen, so wird ein Thesaurus ge­ liefert. In diesem Thesaurus sind alle im Dosbereich vorhandenen Dateien einge­ tragen. Die vorhandenen Unterinhaltsverzeichnisse (Subdirectories) werden nicht eingetragen. #on("bold")# PROC check (TEXT CONST filename, TASK CONST task) #off ("b")# Durch Aufruf dieser Prozedur für die Dostask wird die Datei 'filename' im Dosbe­ reich prüfgelesen. Es werden nur die mit Daten belegten Blöcke prüfgelesen. Sollen auch der Einträge im Inhaltsverzeichnis überprüft werden, so erreicht man dies durch vorheriges neues Anmelden mit der Prozedur 'reserve'. #on("bold")# PROC clear (TASK CONST task) #off ("b")# Durch Aufruf dieser Prozedur für die Task /"DOS" wird die gesamte Diskette ge­ löscht. Mit dieser Prozedur können #on ("u")#nur MS-DOS formatierte Disketten#off ("u")# behandelt werden. Soll eine Diskette dagegen für den Gebrauch unter MS-DOS initialisiert werden, so ist sie auf einem MS-DOS-Rechner zu formatieren. Der Aufruf dieser Prozedur für die Task /DOS HD" ist aus Sicherheitsgründen nicht erlaubt. #on("bold")# PROC erase (TEXT CONST filename, TASK CONST task) #off ("b")# Durch Aufruf dieser Prozedur für die Dostask wird die Datei 'filename' im Dosbe­ reich gelöscht. #on("bold")# BOOL PROC exists (TEXT CONST name, TASK CONST task) #off ("b")# Wird diese Prozedur für die Dostask aufgerufen, so liefert sie 'TRUE', falls eine Datei mit dem Namen 'name' im Dosbereich existiert. Andernfalls liefert sie 'FALSE'. #on("bold")# PROC fetch (TEXT CONST filename, TASK CONST task) #off ("b")# Durch Aufruf dieser Prozedur für die Dostask wird die Datei 'filename' aus dem Dosbereich gelesen. Hierbei wird in der beim Anmelden (reserve ("...", dostask)) bestimmten Betriebsart gelesen (siehe Abschnitt 6). #on("bold")# PROC list (TASK CONST task) #off ("b")# Wird diese Prozedur für die Dostask aufgerufen, so werden alle Dateien des In­ haltsverzeichnisses und alle Unterverzeichnisse des Dosbereichs aufgelistet. #on("bold")# PROC release (TASK CONST task) #off ("b")# Der Aufruf dieser Prozedur für die Task Dostask hebt deren Reservierung auf. Gleichzeitig wird auch der für block i/o benutzte Kanal freigegeben, so daß bei Benutzung der Task /"DOS" der Archivkanal durch das EUMEL-Archiv wieder benutzt werden kann. Um möglichst effizient arbeiten zu können, werden Inhaltsverzeichnis und Ket­ tungsblock des Dosbereichs als Kopie im EUMEL gehalten. Der hierdurch belegte Speicher wird beim 'release' wieder freigegeben. Dies ist bei kleinen Systemen besonders wichtig. #on("bold")# PROC reserve (TEXT CONST mode, TASK CONST task) #off ("b")# Durch Aufruf für die Dostask werden Operationen mit dem Dosbereich angemel­ det. Gleichzeitig koppelt sich die Dostask an den entsprechenden Kanal an. (/"DOS" an Kanal 31 und /"DOS HD" an Kanal 29). Die Anmeldung wird abge­ lehnt, wenn der für die MS-DOS Operationen benötigte Kanal belegt ist (z.B. bei Kanal 31 durch eine Archiv­Operation). Ähnlich wie beim EUMEL-Archiv bleibt diese Reservierung bis 5 Minuten nach dem letzten Zugriff gültig. Wird beim Arbeiten mit der Task /"DOS" die MS-DOS Diskette gewechselt, so muß erneut 'reserve ("...", /"DOS")' aufgerufen werden. Nur so ist gewährleistet, daß das Inhaltsverzeichnis der neuen Diskette geladen wird. Der Text 'mode' gibt die Betriebsart für das Schreiben und Lesen der Diskette sowie den Pfad für das Bearbeiten von Subdirectories an und nicht wie beim EUMEL-Archiv den Diskettennamen. Es gilt folgende Systax: modus :[\directory][\directory]...[\directory] Hierbei sind die Angaben in eckigen Klammern optional. Wird kein Pfad angege­ ben, so wird mit dem Hauptdirektory der Diskette gearbeitet. Ansonsten wird mit dem Directory gearbeitet, welches durch den hinter dem Doppelpunkt angegeben Pfad bezeichnet wird. Als 'modus' können alle in Abschnitt 6 beschriebenen Be­ triebsarten verwendet werden. #on("bold")# PROC save (TEXT CONST filename, TASK CONST task) #off ("b")# Durch Aufruf dieser Prozedur für die Dostask wird die Datei 'filename' in den Dosbereich geschrieben. Hierbei wird in der beim Anmelden (reserve ("...", dostask)) bestimmten Betriebsart geschrieben (siehe Abschnitt 6). #on("bold")# #ib#6. Die Betriebsarten von 'fetch' und 'save'#ie# #ib#6.1 Betriebsart: file ascii#ie# #on("bold")# fetch ("filename", dostask) #off ("b")# Die MS-DOS Datei 'filename' wird in die EUMEL-Datei 'filename' kopiert. Dabei werden von allen Zeichen nur die niederwertigen 7 Bit gemäß DIN 66 003, ASCII Code, internationale Referenzversion interpretiert. Die Datei wird so aufbereitet, daß ein Bearbeiten mit dem EUMEL-Editor möglich ist. Dies geschieht folgenderma­ ßen: - Alle im EUMEL darstellbaren Zeichen werden auf diese abgebildet. - Die Zeichenfolgen CR LF, LF CR, LF, CR (CR = carriage return, LF = line­ feed) beenden einen Satz in der MS-DOS-Datei. Dementsprechend wird eumelseitig die aktuelle Zeile beendet. - Das Zeichen FF (form feed) beendet eumelseitig die aktuelle Zeile. Außerdem wird ein Satz mit dem Inhalt "\#page\#" eingefügt. - TAB's (Code 9) werden mit Blanks zur nächsten 8ter-Position expandiert. - 'Ctrl z' in der MS-DOS Datei wird als Dateiende interpretiert. Fehlt dieses, so wird bis zum letzten Zeichen des letzten Sektors der Datei gelesen. - Alle anderen Zeichen mit 0 <= code (zeichen) <=  31 (Steuerzeichen) werden durch eine Ersatzdarstellung dargestellt (der Code des Zeichens wird als 3 stellige Dezimalzahl eingeschlossen von \#-Zeichen dargestellt). #on("bold")# save ("filename", dostask) #off ("b")# Die EUMEL-Datei 'filename' wird nach MS-DOS geschrieben. Unter MS-DOS wird der ASCII Code, internationale Referenzversion gemäß DIN 66 003 verwendet. Dies geschieht folgendermaßen: - Die EUMEL-spezifischen Druckzeichen (Trenn -, Trenn k, Druck \#, ge­ schütztes Blank) werden in -, k, \# und Blank umgesetzt. - Alle in der internationalen Referenzversion des ASCII Codes vorhandenen Eumel-Zeichen werden auf diese abgebildet. - Alle in der internationalen Referenzversion des ASCII Codes nicht vorhande­ nen Eumel-Zeichen werden durch eine Ersatzdarstellung dargestellt (der Code des Zeichens wird als 3 stellige Dezimalzahl eingeschlossen von \#-Zeichen dargestellt) - Steht in einer Zeile nur das Kommando '\#page\#' so wird dieses in ein Sei­ tenvorschubsteuerzeichen (""12"") umgewandelt. - Eine dreistellige Dezimalzahl eingeschlossen von \# Zeichen wird als Ersatz­ darstellung für das Zeichen mit dem durch die Dezimalzahl angegebenen Code betrachte. Diese Ersatzdarstellung wird beim Schreiben aufgelöst (d.h. durch das entsprechende Zeichen ersetzt). - Nach jeder Zeile wird 'carriage return' und ' linefeed' angefügt - Am Ende der Datei wird 'ctrl z' angehängt. #on("bold")# #ib#6.2 Betriebsart: file ascii german#ie# fetch ("filename", dostask) #off ("b")# Die MS-DOS Datei 'filename' wird in die EUMEL-Datei 'filename' kopiert. Dabei werden von allen Zeichen nur die niederwertigen 7 Bit gemäß DIN 66 003, ASCII Code, deutsche Referenzversion interpretiert. Die Datei wird so aufbereitet, daß ein Bearbeiten mit dem EUMEL-Editor möglich ist. Dies geschieht wie in der Be­ triebsart 'file ascii', jedoch stehen statt []{}|\ die Umlaute und ß zur Verfügung. #on("bold")# save ("filename", dostask) #off ("b")# Die EUMEL-Datei 'filename' wird nach MS-DOS geschrieben. Unter MS-DOS wird der ASCII Code, deutsche Referenzversion gemäß DIN 66 003 verwendet. Dies geschieht wie in der Betriebsart 'file ascii', jedoch stehen statt []{}|\ die Umlaute zur Verfügung. #on("bold")# #ib#6.3 Betriebsart: file ibm#ie# fetch ("filename", dostask) #off ("b")# Die MS-DOS Datei 'filename' wird in die EUMEL-Datei 'filename' kopiert. Dabei werden alle Zeichen wie in der von IBM verwendeten Version des ASCII Codes interpretiert. Die Datei wird so aufbereitet, daß ein Bearbeiten mit dem EUMEL- Editor möglich ist. Dies geschieht folgendermaßen: - Alle im EUMEL darstellbaren Zeichen werden auf diese abgebildet. - Die Zeichenfolgen CR LF, LF CR, LF, CR (CR = carriage return, LF = line­ feed) beenden einen Satz in der MS-DOS-Datei. Dementsprechend wird eumelseitig die aktuelle Zeile beendet. - Das Zeichen FF (form feed) beendet eumelseitig die aktuelle Zeile. Außerdem wird ein Satz mit dem Inhalt "\#page\#" eingefügt. - TAB's (Code 9) werden mit Blanks zur nächsten 8ter-Position expandiert. - Alle anderen Zeichen mit 0 <= code (zeichen) <=  31 (Steuerzeichen) werden durch eine Ersatzdarstellung dargestellt (der Code des Zeichens wird als 3 stellige Dezimalzahl eingeschlossen von \#-Zeichen dargestellt). #on("bold")# save ("filename", dostask) #off ("b")# Die EUMEL-Datei 'filename' wird nach MS-DOS geschrieben. Unter MS-DOS wird der ASCII Code in der von IBM verwendeten Version verwendet. Dies ge­ schieht folgendermaßen: - Die EUMEL-spezifischen Druckzeichen (Trenn -, Trenn k, Druck \#, ge­ schütztes Blank) werden in -, k, \# und Blank umgesetzt. - Alle in der IBM Version des ASCII Codes vorhandenen Eumel-Zeichen werden auf diese abgebildet. - Alle in der IBM Version des ASCII Codes nicht vorhandenen Eumel-Zeichen werden durch eine Ersatzdarstellung dargestellt (der Code des Zeichens wird als 3 stellige Dezimalzahl eingeschlossen von \#-Zeichen dargestellt) - Steht in einer Zeile nur das Kommando '\#page\#' so wird dieses in ein Sei­ tenvorschubsteuerzeichen (""12"") umgewandelt. - Eine dreistellige Dezimalzahl eingeschlossen von \# Zeichen wird als Ersatz­ darstellung für das Zeichen mit dem durch die Dezimalzahl angegebenen Code betrachte. Diese Ersatzdarstellung wird beim Schreiben aufgelöst (d.h. durch das entsprechende Zeichen ersetzt). - Nach jeder Zeile wird 'carriage return' und ' linefeed' angefügt #on("bold")# #ib#6.4 Betriebsart: file atari st#ie# fetch ("filename", dostask) #off ("b")# Die MS-DOS Datei 'filename' wird in die EUMEL-Datei 'filename' kopiert. Dabei werden alle Zeichen wie in der vom Atari ST verwendeten Version des ASCII Codes interpretiert. Die Datei wird so aufbereitet, daß ein Bearbeiten mit dem EUMEL- Editor möglich ist. Dies geschieht folgendermaßen: - Alle im EUMEL darstellbaren Zeichen werden auf diese abgebildet. - Die Zeichenfolgen CR LF, LF CR, LF, CR (CR = carriage return, LF = line­ feed) beenden einen Satz in der MS-DOS-Datei. Dementsprechend wird eumelseitig die aktuelle Zeile beendet. - Das Zeichen FF (form feed) beendet eumelseitig die aktuelle Zeile. Außerdem wird ein Satz mit dem Inhalt "\#page\#" eingefügt. - TAB's (Code 9) werden mit Blanks zur nächsten 8ter-Position expandiert. - Alle anderen Zeichen mit 0 <= code (zeichen) <=  31 (Steuerzeichen) werden durch eine Ersatzdarstellung dargestellt (der Code des Zeichens wird als 3 stellige Dezimalzahl eingeschlossen von \#-Zeichen dargestellt). #on("bold")# save ("filename", dostask) #off ("b")# Die EUMEL-Datei 'filename' wird nach MS-DOS geschrieben. Unter MS-DOS wird der ASCII Code in der vom Atari ST verwendeten Version verwendet. Dies geschieht folgendermaßen: - Die EUMEL-spezifischen Druckzeichen (Trenn -, Trenn k, Druck \#, ge­ schütztes Blank) werden in -, k, \# und Blank umgesetzt. - Alle in der vom Atari ST verwendeten Version des ASCII Codes vorhandenen Eumel-Zeichen werden auf diese abgebildet. - Alle in der vom Atari ST verwendeten Version des ASCII Codes nicht vorhandenen Eumel-Zeichen werden durch eine Ersatzdarstellung dargestellt (der Code des Zeichens wird als 3 stellige Dezimalzahl eingeschlossen von \#-Zeichen dargestellt) - Steht in einer Zeile nur das Kommando '\#page\#' so wird dieses in ein Sei­ tenvorschubsteuerzeichen (""12"") umgewandelt. - Eine dreistellige Dezimalzahl eingeschlossen von \# Zeichen wird als Ersatz­ darstellung für das Zeichen mit dem durch die Dezimalzahl angegebenen Code betrachte. Diese Ersatzdarstellung wird beim Schreiben aufgelöst (d.h. durch das entsprechende Zeichen ersetzt). - Nach jeder Zeile wird 'carriage return' und ' linefeed' angefügt #on("bold")# #ib#6.5 Betriebsart: file transparent#ie# fetch ("filename", dostask) #off ("b")# Die MS-DOS Datei 'filename' wird in die EUMEL-Datei 'filename' kopiert. Dabei werden von allen Zeichen alle 8 Bit interpretiert. Es werden keine Zeichen einge­ fügt, gelöscht oder gewandelt. Somit stehen dann auch CR und LF Zeichen in der EUMEL-Datei. Da eine solche Datei noch Steuerzeichen enthält, ist beim Bearbeiten mit dem Editor Vorsicht geboten. #on("bold")# save ("filename", dostask) #off ("b")# Die EUMEL-Datei 'filename' wird nach MS-DOS geschrieben. Es werden keine Codeumsetzungen durchgeführt. Insbesondere muß die EUMEL-Datei auch die CR LF Sequenzen für das Zeilenende enthalten. #on("bold")# #ib#6.6 Betriebsart: row text#ie# #off ("b")# Diese Betriebsart ist nur für Programmierer interessant. Sie ist für die Umsetzung exotischer Codes in den EUMEL-Code mittels ELAN-Programmen gedacht. #on("bold")# fetch ("filename", dostask) #off ("b")# Die MS-DOS Datei 'filename' wird in einen Datenraum mit folgender Struktur kopiert: STRUCT (INT benutzte texte, ROW 4000 TEXT datensatz) Dabei bekommt der Datenraum den Type 1000. Der Integer 'benutzte texte' gibt an, wieviele Elemente des ROW 4000 TEXT benutzt sind. In jedem benutzten Element des ROW 4000 TEXT steht der Inhalt einer logischen Gruppe der MS-DOS Disket­ te. (Eine logische Gruppe umfaßt bei einer einseitig beschriebenen MS-DOS Diskette 512 Byte und bei einer zweiseitig beschriebenen 1024 bzw. 2048 Byte). In dieser Betriebsart werden keine Zeichen der MS-DOS Datei konvertiert oder interpretiert, so daß also auch alle Steuerzeichen erhalten bleiben. #on("bold")# save ("filename", dostask) #off ("b")# Hier bezeichnet 'filename' einen Datenraum der Struktur: STRUCT (INT benutzte texte, ROW 4000 TEXT datensatz) Dieser Datenraum muß den Type 1000 haben. Es werden die benutzten Texte (1 bis benutzte texte) aneinandergehängt und ohne irgendwelche Konvertierungen bzw. Interpretationen als MS-DOS Datei 'filename' geschrieben. Dies bedeutet, daß die Texte auch alle von MS-DOS benötigten Steuerzeichen (z.B. 'ctrl z' als Dateiendekennzeichen) enthalten müssen. #on("bold")# #ib#6.7 Betriebsart: ds#ie# #off ("b")# Diese Betriebsart ist nur für den Programmierer interessant. Sie ermöglicht das Abbil­ den von Datenstrukturen zwischen MS-DOS und EUMEL. #on("bold")# fetch ("filename", dostask) #off ("b")# Die MS-DOS Datei 'filename' wird blockweise in den Datenraum 'filename' ko­ piert. Hierbei wird der erste Block der MS-DOS Datei in die 2. Seite des Daten­ raums kopiert. (Die 2. Seite eines Datenraums ist die erste, die von einer Daten­ struktur voll überdeckt werden kann). #on("bold")# save ("filename", dostask) #off ("b")# Der Datenraum 'filename' wird ab seiner 2. Seite in die MS-DOS Datei 'filename' geschrieben. Hierbei werden alle Seiten des Datenraums (auch die nicht allokier­ ten) bis einschließlich der letzten allokierten Datenraumseite geschrieben. #on("bold")# #ib#7. Installation#ie# #off ("b")# Die Software zur Generierung der Tasks /"DOS" und /"DOS HD" wird auf einem EUMEL-Archiv ausgeliefert. #on("bold")# #ib#7.1 Installation der Task /"DOS"#ie# #ib#7.1.1 Installation im Multi-User#ie# #off ("b")# Die Software muß in einer privilegierten Task mit dem Namen 'DOS' installiert wer­ den. Dies geschieht folgendermaßen: begin ("DOS", "SYSUR") archive ("austausch"); fetch ("dos inserter", archive); run ("dos inserter") Danach stehen die Prozeduren PROC dos manager PROC dos manager (INT CONST channel) zur Verfügung. Beide Prozeduren machen die aufrufende Task zur Kommunikations­ task für das Schreiben und Lesen von MS-DOS Disketten. Die erste benutzt dazu den Archivkanal (Kanal 31), bei der zweiten ist der Kanal über den Parameter ein­ stellbar. Eine dieser Prozeduren muß jetzt aufgerufen werden. #on("bold")# #ib#7.1.2. Installation im Single-User#ie# #off ("b")# Die Software wird im Monitor ('gib Kommando'-Modus) durch folgende Kommandos installiert: archive ("austausch"); fetch ("dos inserter", archive); run ("dos inserter") Für das Schreiben und Lesen von MS-DOS Disketten wird der Archivkanal (Kanal 31) benutzt. #on("bold")# #ib#7.2 Installation der Task /"DOS HD"#ie# #off ("b")# Die Software muß in einer privilegierten Task mit dem Namen 'DOS HD' installiert werden. Dies geschieht folgendermaßen: begin ("DOS HD", "SYSUR") archive ("austausch"); fetch ("dos hd inserter", archive); run ("dos hd inserter") Danach steht die Prozedur PROC dos manager zur Verfügung. Sie macht die aufrufende Task zur Kommunikationstask für das Schreiben und Lesen in der MS-DOS Partition der Platte. Sie benutzt dazu den Kanal 29, der, wie im Portierungshandbuch für den 8086 beschrieben, implementiert sein muß. #page# #headeven# #end# Herausgegeben von: Gesellschaft für Mathematik und Datenverarbeitung mbH (GMD) Schloß Birlinghoven 5205 Sankt Augustin 1 und Hochschulrechenzentrum der Universität Bielefeld (HRZ) Universitätsstraße 4800 Bielefeld 1 Autor: Frank Klapper überarbeitet von: Thomas Müller Hansgeorg Freese (GMD) Umschlaggestaltung: Hannelotte Wecken