EUMEL-Betriebssystem für den Atari ST - Teil 2: Installation

Nachdem in der vergangenen Ausgabe das neue Multitasking-Betriebssystem EUMEL theoretisch vorgestellt wurde, soll dem Trockenschwimmen nun der Sprung ins kalte Wasser folgen. Unser Testexemplar kam in einem großen Paket: Drei Schuber mit jeweils rund 300 Seiten hervorragend aufbereiteter Anleitung, ein ROM-Modul und 6 Disketten. Die gelieferte Software bestand aus

Wir testeten die EUMEL-Version 1.8/M. Das „M“ steht für Multiuser und bedeutet, daß eine Festplatte unbedingt erforderlich ist. An dieser Stelle bedanke ich mich herzlich bei der Firma CSF in Bielefeld, die mir freundlicherweise eine Festplatte zur Verfügung stellte, da meine defekt war. Auch ein System im „Mini-Mode“ ist lieferbar, auf den Festplatteneinsatz kann dann - zu Lasten der Arbeitsgeschwindigkeit - verzichtet werden.

Die Installation von EUMEL verlief insgesamt recht problemlos. Zunächst wurde die zweite Partition der Harddisk (Laufwerk D) für das neue Betriebssystem reserviert, d. h. das Desktop-Icon gelöscht. Dieser Schritt ist unbedingt notwendig, um eine (absturzträchtige) Kollision von GEM und EUMEL zu verhindern. Aus dem ROM-Modul konnte EUMEL mit einem Klick gestartet werden. Dann fordert ein Installationsmenü den sogenannten EUMEL-„Hintergrund“ und den „Urlader“ von zwei Disketten an, und endlich meldet sich das Betriebssystem mit der typischen „EUMEL-Tapete“, die auf Bild 1 wiedergegeben ist. Nur am Rande bemerkt: Die Bildschirmhardcopies haben mir zwei schlaflose Nächte bereitet, da EUMEL die VBL-Queue kappt, die das DUMP-Programm von Peter Melzer benötigt. Daß es dennoch geklappt hat, verdanke ich einem Tip von Oliver Schildmann - merci beaucoup!

Bild 1: Die „EUMEL-Tapete“ am Anfang einer Arbeitssitzung

Damit ist die Installationsphase keinesfalls beendet. Da EUMEL - wie in der letzten Folge bereits erwähnt -mit fast jedem Terminal zusammenarbeitet, muß man das EUMEL-System bei der Inbetriebnahme konfigurieren. Aus den 30 (!) mitgelieferten Terminalvoreinstellungen wählten wir für den Atari ST den „psi“-Modus für Kanal 1 (Bildschirm). Zwei kleine Programme waren erforderlich, um EUMEL beizubringen, daß der ST-Rechner über einen 25-Zeilen-Bildschirm verfügt. An der seriellen Schnittstelle (Kanal 2) ist ein weiteres Terminal im Multiuser-Betrieb anschließbar; prinzipiell sollte es mit einer Erweiterungsbox möglich sein, bis zu zehn Terminals an der EUMEL-Atari-Station zu betreiben.

Als Supervisor-Tasks wurden Archiv und Drucker (Kanal 15) eingerichtet. Für letzteren sieht man in der Regel eine Spool-Task vor, die alle Benutzeraufträge sammelt (der Anwender kann in seiner Task sofort Weiterarbeiten) und in der Reihenfolge des Eintreffens zum Drucker schickt. Die eigentliche Druckeranpassung unter EUMEL ist erheblich komplizierter als bei herkömmlichen Textprogrammen; für den NEC P 6 war ein ELAN-Programm mit 550 Zeilen erforderlich (ausschnittsweise in Bild 2 dargestellt). Glücklicherweise findet man auf den Disketten fertige Treiber, u. a. für alle EPSON-kompatiblen Geräte, den Apple-Imagewriter und auch für zwei Laserdrucker: Den HP-Laserjet (plus) und den Kyocera F1010.

Soweit die wesentlichen Installationsschritte. Bei Bedarf kann jeder Benutzer zusätzliche Funktionen implementieren, auf die später teilweise eingegangen wird (Vernetzung, MS-DOS-Dateitransfer). Bis zur Inbetriebnahme der EUMEL-Station brauchte ich ungefähr drei Tage. Zwar sind in den Handbüchern alle Prozeduren detailliert erklärt, aber wer sich zum erstenmal mit EUMEL beschäftigt, sollte schon vorher wissen, daß eine gründliche theoretische Einarbeitung in das neue Betriebssystem notwendig ist. EUMEL ist weitaus komplexer als MS-DOS (geschweige denn GEM-DESKTOP) und ähnelt in vielen Punkten UNIX. Wer wollte da an einem Tag durchstarten?

Bild 2: Druckeranpassung einmal anders: Ein ELAN-Programm für den NEC

Unsere EUMEL-Station arbeitet jetzt so: Bei eingesteckter ROM-Cartridge können GEM und alle ST-Programme ganz normal aufgerufen werden, wir verwenden dazu die Partitions C und E der Festplatte. Partition D nimmt für EUMEL 10 MByte ein und ist unter GEM nicht ansprechbar. Der Start von EUMEL geschieht durch einen Doppelklick auf das ROM-lcon, dort erscheint „EUMEL.PRG“, und mit einem weiteren Doppelklick fährt man EUMEL von der Festplatte hoch (Bild 3). Leider kann man von EUMEL aus nicht mehr zum Desktop zurück -dazu ist ein Reset erforderlich.

Doch nun zurück zu EUMEL. Das Betriebssystem besitzt gewissermaßen drei Benutzeroberflächen. Der Supervisor meldet sich als „Platzanweiser“ zum Arbeitsbeginn. Flier kann man einen Überblick über alle laufenden Tasks gewinnen („task info“ in Bild 4), eine neue Task einrichten („begin“) oder sich an eine alte ankoppeln („continue“), wenn diese verlassen wurde oder einen Batch-Auftrag bearbeitete. Mit der Taste „SV“ (auf dem Atari: F1) wird der Supervisor jederzeit aufgerufen, auch wenn gerade ein Programm läuft. Da EUMEL seinen Betriebszustand ständig auf Festplatte konserviert, ist es nicht notwendig, einmal insertierte Programme erneut zu laden. Vielmehr landet man nach dem Ankoppeln einer Task immer dort, wo man zum Schluß aufgehört hat.

In der Regel ist dies die Monitorebene, die den Benutzer mit „gib kommando“ begrüßt. Diese Ebene ähnelt etwas der MS-DOS Oberfläche, ist aber viel raffinierter gebaut. Neben den Standardfunktionen - Taskinhalt zeigen („list“), Dateien verschicken („save“) oder holen („fetch“), kopieren („copy“) oder löschen („forget“) - gibt es ein besonderes Bonbon: Als Kommandobefehle stellt die Monitorebene nahezu den gesamten Sprachumfang von ELAN zur Verfügung. Während unter MS-DOS jeder Anwender mindestens zwei Sprachen lernen muß (Programmiersprache und Monitorsprache), reicht es für alle EUMEL-Benutzer völlig aus, eine einzige Sprache zu kennen: ELAN.

Bild 3: Statusinformationen beim „Hochfahren“
Bild 4: Ein Überblick aller Tasks. Beachten Sie bitte die Schachtelung, die Väter, Söhne und Enkel angibt.

Mit diesem Prinzip ist die Erstellung von Batch-Aufträgen ein Kinderspiel. Ein Beispiel mag dies erläutern. In Task 1 befindet sich ein Text, für den der Zeilen- und Seitenumbruch vorzunehmen ist. Anschließend soll der fertige Text ausgedruckt werden. Aus der Supervisorebene loggen wir uns in Task 1 ein und geben folgendes Kommando: »autoform („dateiname“);autopageform; print«. Damit wird der Text automatisch umgebrochen und gedruckt. Da unser Text sehr lang ist, verlassen wir die Task durch die Taste SV (Supervisor) und begeben uns in Task 2. Dort wird ein Programm mit dem Kommando »insert („programmname“)« übersetzt. Auch diese Prozedur nimmt viel Zeit in Anspruch, deshalb verlassen wir auch hier die Task und arbeiten schließlich in Task 3, wo ein Text getippt werden soll. EUMEL erledigt nun drei Jobs gleichzeitig: Zum einen wird der Text von Task 1 bearbeitet und zur Spool-Task geschickt. Zum anderen ist Task 2 mit der Abarbeitung des Programms beschäftigt. Eventuelle Fehlermeldungen werden automatisch in ein „Notizbuch“ geschrieben, das zu jeder Zeit einsehbar ist. Und schließlich tippen wir in Task 3 an einem Text, ohne von den beiden anderen Aufträgen gestört zu werden. Bequemer geht es wohl nicht.

Ein weiteres Feature der Monitorebene soll nicht unerwähnt bleiben: Der „Thesaurus“. Auch dazu ein Beispiel. Unser Taskinhalt soll dargestellt werden; dazu benötigen wir den Befehl „list“. In der Monitorebene erscheint nun ein Fenster, das alle Dateinamen aufführt (Bild 5). Das wäre nichts besonderes, wenn dieses Fenster kein Editorfenster wäre. Wir können nämlich mit den Editorkommandos beliebig durch den Text scrollen, Teile markieren, in eine andere Datei kopieren und/oder ausdrucken lassen. Das Thesaurusprinzip wird auch bei größeren Operationen geschickt genutzt: Angenommen, ein Benutzer will eine Auswahl von Dateien aus der Vatertask holen. Er gibt dazu ein: »fetch (SOME public, public)« und es werden zunächst alle Dateien aufgeführt. Mit den Editorfunktionen Zeile oder Bereich löschen werden nicht benötigte Dateinamen gelöscht, und sobald das Fenster verlassen wird (ESC-q), werden genau diejenigen Dateien in die Task geholt, deren Name zum Schluß noch im Fenster stand.

Das Archiv

Zur dauerhaften Speicherung von Dateien oder Programmen wird auch beim Betriebssystem EUMEL auf Disketten zurückgegriffen. Es empfiehlt sich insbesondere bei fast belegter Festplatte, einige Dateien auszulagern, da ansonsten die Arbeitsgeschwindigkeit stark nachläßt. EUMEL unterstützt alle gängigen Floppyformate (8, 5,25 und 3,5 Zoll), aber das Aufzeichnungsformat ist weder Atari- noch MS-DOS-kompatibel. Das Archiv wird in der Regel aus der Monitorebene aufgerufen. Zunächst erfolgt die Reservierung aus einer Task mit »archive („archivname“)«. Sollte im Multiuser-Betrieb gerade ein anderer Benutzer auf die Diskettenstation zurückgreifen, wird eine Fehlermeldung ausgegeben. Dateien und Programme können einzeln »save („dateiname“,archive)« oder mit dem Thesaurus »save (SOME myself, archive)« gespeichert bzw. geholt (analog mit „fetch“) werden. Vor ungewolltem Uberschreiben schützt eine Sicherheitsabfrage. Das Archiv wird schließlich für andere Benutzer mit »release (archive)« freigegeben.

Zwei Besonderheiten müssen erwähnt werden. Zum einen überschreibt EUMEL nicht immer die alten Dateien. Vielmehr werden diese als gelöscht gekennzeichnet (das sieht man auf Bild 6 an dem Bindestrich), was die negative Auswirkung hat, daß oftmals eine Diskette bereits voll zu sein scheint, obwohl die tatsächlich vorhandenen Dateien nur sehr wenig Platz in Anspruch nehmen. In diesem Fall müssen alle Dateien in die Task geholt, das Archiv gelöscht und die Dateien zurückgeschrieben werden. Zum anderen ist, wie gesagt, das EUMEL-Aufzeichnungs-format weder zu MS-DOS noch zum Atari ST kompatibel. Um dennoch alte Texte zu überspielen, existiert ein (mitgeliefertes) Transferpaket von Frank Klapper, mit dem unter MS-DOS formatierte Disketten gelesen und beschrieben werden können. Mit den neuen Befehlen war es auch möglich, ASCII-Files auf Atari ST-Disketten zu lesen bzw. zu schreiben - kein Wunder, da das Aufzeichnungsformat von MS-DOS und TOS fast identisch ist.

Der Editor

Der EUMEL-Editor ist zentral für das gesamte Betriebssystem. Mit ihm werden nicht nur Texte bearbeitet, sondern auch alle ELAN-Programme und Druckvorlagen für die Dateiverwaltung. Die am häufigsten verwendeten Tasten bei der Editierung sind zunächst die Cursortasten, die ESC-Taste, die „Verstärkungstaste“ HOP und die beiden Tasten RUBOUT und RUBIN. Die letzten drei Tastaturbezeichnungen kennt der Atari ST nicht. In unserer Konfiguration wurde folgende Umbelegung vorgenommen:

Nach dem Aufruf des Editors aus der Kommandoebene mit ”edit („Dateiname“) erscheint das in Bild 7 wiedergegebene Fenster. Die erste Zeile informiert über die gesetzten Tabulatoren, den Dateinamen, den Einfüge- oder Überschreibmodus und schließlich die aktuell bearbeitete Zeile.

Mit den beiden Tastaturkombinationen ESC-1 und ESC-9 läßt sich an den Anfang oder das Ende des Textes springen. Die HOP-Taste wirkt für die Cursorbewegungen als „Verstärkung“: Mit HOP-Cursorrichtung springt man an den Anfang oder das Ende der Zeile bzw. blättert im Text auf- oder abwärts. Einfaches Löschen von Buchstaben erfolgt mit RUBOUT; mit RUBIN kann der Einfügemodus ein- oder ausgeschaltet werden, so wie bei Ist Word Plus. Auch diese beiden Tasten besitzen in Kombination mit HOP eine Verstärkungsfunktion: HOP-RUB-OUT löschte eine Zeile rechts vom Cursor. Mit HOP-RUBIN kann äußerst einfach zusätzlicher Text eingefügt werden: Ab der aktuellen Cursorposition verschwindet der restliche Text und ausreichend Platz für die neue Texteingabe wird freigegeben. Die Anzeige REST in der Titelzeile erinnert daran, daß noch ein Resttext existiert. Dieser erscheint nach einem neuerlichen Betätigen der beiden Tasten HOP und RUBIN. Wer bereits mit VIZAWRITE gearbeitet hat, wird dieses Prinzip kennen. Das wortweise Springen im Text ist beim EUMEL-Editor mit den Tasten ESC-Cursor links/rechts implementiert.

Bild 5: Der Taskinhalt mit dem Kommando „list“
Bild 6: Datenmüll auf der Diskette

Der Tabulator ist gleichermaßen Zahlen- und Texttabulator. Er wird mit der TAB-Taste angesprochen und richtet Ziffern automatisch rechtsbündig aus. Besondere Markierungen im Text werden übrigens nicht hinterlassen, vielmehr gilt bei allen Einrückungen und Tabellen das Prinzip „What you see is what you get“ - obwohl die Textverarbeitung sonst mit Klartextbefehlen arbeitet.

Daß Blöcke markiert, verschoben, dupliziert und unter anderem Namen in den Hintergrund geschrieben werden können, ist bei EUMEL selbstverständlich. Alle Blockoperationen laufen mit der Taste MARK, die zeichengenaues Markieren von Textausschnitten erlaubt. Nicht so selbstverständlich sind jedoch die Lernfähigkeiten des EUMEL-Editors. So können nicht nur einzelne Tasten mit Floskeln vorbelegt werden, vielmehr existiert auch die Möglichkeit, ganze Kommandos mit einem Tastendruck zu programmieren.

Das ist auch unbedingt notwendig, denn das Portabilitätsprinzip (jedes Terminal ist anschließbar) verlangt, daß in einem Text keine Steuerzeichen Vorkommen. Somit muß für alle Textattribute (fett, kursiv, unterstrichen, indiziert) eine Klartextanweisung eingefügt werden. Diese Anweisungen sind auch für die Textkosmetik unerläßlich.

Textkosmetik und viele Anweisungen

Zur Textgestaltung existieren auf gängigen Computersystemem zwei unterschiedliche Prinzipien. Das eine ist derzeit in aller Munde und heißt „What you see is what you get“ („WYSIWYG“). Damit ist gemeint, daß unterschiedliche Textattribute, Schriftgrößen und -arten genau so auf dem Bildschirm erschienen, wie der Drucker sie ausgibt. Für den Atari ST ist SIGNUM ein Textprogramm, das ohne Ausnahmen in diesem Modus arbeitet. Die andere Möglichkeit sind Klartexteditoren, bei denen mit einer eigenen Programmiersprache die Textformatierung erfolgt. Ein Musterbeispiel stellt TEX dar, das jetzt auch für den Atari ST lieferbar ist.

EUMEL ist eine Mischung aus beiden Grundprinzipien. Man kann mit seiner Textverarbeitung einige Zeilen unformatiert zum Drucker schicken, ohne Textkommandos eingefügt zu haben (das geht mit TEX nicht), aber man muß Anweisungen verwenden, sobald man Kopf- und Fußzeilen bzw. unterschiedliche Zeichensätze oder Textattribute einsetzen möchte.

Alle Anweisungen werden bei EUMEL in die Lattenkreuze eingeschlossen, zwischen diesen befinden sich die Kommandos zur Druckeransteuerung im Klartext. Ein Beispiel mag dieses Prinzip erläutern. Der Textanfang könnte so aussehen, wie in Bild 8 wiedergegeben.

Die erste Zeile weist den Drucker an, in der Schriftart „prop“ auf einer Zeilenbreite von 14 cm zu drucken. Die zweite Zeile gibt einen doppelten Zeilenabstand vor. Die dritte Zeile legt das Prozentzeichen als Marker für die Seitennummer fest und setzt den Zähler auf Eins. Die vierte bis siebte Zeile definieren eine Kopfzeile, deren erste Zeile die zentrierte Seitennummer enthält und der dann eine Leerzeile bis zum Textanfang folgt. Die achte und neunte Zeile geben an, daß der Text horizontal und vertikal im Blocksatz ausgedruckt werden soll.

Bild 7: Ein typisches Editorfenster mit Tabulatoren, Statusinformationen und Einrückung.

Das allgemeine Prinzip der Klartextkommandos gilt auch für die verschiedenen Textattribute. Soll ein Wort unterstrichen werden, so ist einzugeben: :#:on(„u“):#:unterstrichen:#:off(„u“):#:. Da es sich bei allen Steuerkommandos ausschließlich um Textstrings handelt, ist die Portabilität von einem Terminal (oder Computer) zum anderen gewährleistet. Ein weiterer Vorteil liegt auf der Hand: Alle Anweisungen lassen sich mit der Suchoption finden und ersetzen oder können schnell neuen Erfordernissen angepaßt werden. Ein Beispiel: Wer auf einem „WYSIWYG“-System den äquidistanten Zeichensatz in einen proportionalen ändern möchte, muß in der Regel den gesamten Text neu formatieren. Bei EUMEL reicht es völlig aus, die „type“-Anweisung am Anfang des Textes zu modifizieren - eine Arbeit von Sekunden. Allerdings erkennt man jetzt auch, warum der EUMEL-Editor unbedingt lernfähig sein muß: Ohne Ta-stenvorbelegung müßte für jede Kosmektikanweisung ein Wort eingetippt werden.

Mit den Anweisungen lassen sich alle Formatierunsmöglichkeiten ausschöpfen, die auch Buchdrucker auf ihrer Satzmaschine vorfinden. Tabelle 1 liefert einen kleinen Ausschnitt aller Funktionen:

Die Formatierungsanweisungen erscheinen, wie gesagt, ausgeschrieben auf dem Terminal. Dies zeigt Bild 9 als Hardcopy. Man sieht, daß durch die vielen Anweisungen der Überblick auf dem Monitor zwangsläufig zurücktritt. Dazu kommt als weiteres Manko, daß alle Anweisungen den Platz eines Wortes einnehmen. Hat man beispielsweise zweimal innerhalb einer Zeile unterstrichen, so rollt der Text über den rechten Bildschirmrand hinweg und ist - bei einer Zeilenbreite von 65 Zeichen auf dem 80 Zeichen-Monitor -nur durch seitliches Blättern ganz zu überschauen.

Im Gegensatz zu TEX verfügt EUMEL nicht über einen Modus, bei dem man sich den endgültigen Ausdruck auf dem Schirm anschauen kann: Dazu benötigt man immer den Graphikmodus eines Terminals und dies widerspräche dem Portabilitätsprinzip. Somit ist der Anwender auf zahlreiche Ausdrucke angewiesen, bis ein Text endgültig „steht“. Nach meinen Erfahrungen steigt die Zahl der Vorabdrucke mit der Zahl der Anweisungen an - auch ein EUMEL-Experte kann nie sicher sein, daß der Text so gedruckt wird, wie er es wünscht.

Bild 8: Der Textanfang mit Druckeranweisungen.

Zeilen- und Seitenumbruch

Wie der Zeilen- und Seitenumbruch vorgenommen wird, zeigt Bild 10. Mit „lineform“ oder „autoform“ sorgt EUMEL dafür, daß die Zeilen den verwendeten Schrifttypen entsprechend umgebrochen werden. Während „lineform“ dem Benutzer Trennvorgaben anbietet (mit dem besten Algorithmus, den ich je gesehen habe), verwendet „autoform“ die dem Trennalgorithmus entsprechenden Vorgaben ohne Benutzereingriffe und schreibt (zum Nachschauen) alle Trennungen in das „Notizbuch“. Ein Ausnahmelexikon für falsche Trennvorgaben kann eingeladen und die Trennbreite kann zwischen 4 und 20 Prozent der Zeilenbreite festgelegt werden. Für den Seitenumbruch gilt das gleiche Prinzip: „pageform“ liefert dem Benutzer Vorgaben zum Seitenumbruch und „autopageform“ nimmt diesen automatisch vor. Erst mit dem Seitenumbruch liegt der Text in seiner endgültigen Fassung vor: Die Fußnoten befinden sich dann unten auf der Seite, und sofern man Macros (z. B. für einen Briefkopf) benutzt hat, sind diese durch den Klartext ersetzt worden.

# Tabelle 1: Textformatierungen mit EUMEL
Bild 9: Steuerzeichengewirr auf dem Bildschirm - ein Minuspunkt der Textverarbeitung

Mit dem Programm „index“ können Stichwort- und Inhaltsverzeichnisse erstellt und sortiert werden. Dazu müssen natürlich die entsprechenden Überschriften oder Worte im Text selbst markiert sein. Auch dies geschieht mit Klartextanweisungen, in Bild 9 sind dies die Anweisungen ^ibÜ)#1 und ^ieÜ)#. Eine Zusammenfassung von Kapitelüberschriften und Stichworten liefert die Routine „outline“, mit der eine Datei erzeugt wird, die die Kapitel und zugehörige Stichworte numeriert und einrückt. Damit kann ein Text auf logische Konsistenz überprüft werden.

Soweit die wesentlichen Möglichkeiten der Textgestaltung. Nicht alle Fälligkeiten können hier aufgeführt werden, denn EUMEL ist ein Textsystem, bei dem die Regel gilt: Es gibt nichts, was es nicht gibt. Und wer tatsächlich eine Kleinigkeit vermißt, kann mit ELAN auch exotische Sonderwünsche ohne großen Programmieraufwand realisieren. Doch dazu mehr in der nächsten Folge.

Bild 10: So läuft der Zeilen- und Seitenumbruch ab

Michael Spehr
Aus: ST-Computer 09 / 1987, Seite 30

Links

Copyright-Bestimmungen: siehe Über diese Seite