Klaus Schneider Oliver Steinmeier
PC-SPEED Know how
Darmstadt 1990
Heim-Verlag
290 Seiten
DM 34,-
ISBN 3-923250-84-3
Für alle Besitzer oder zukünftigen Eigner von PC SPEED haben die beiden Autoren das Buch geschrieben. Die ersten Seiten des Buchs beschreiben die Funktionsweise von Emulatoren grundsätzlich und zeigen, größtenteils recht witzig geschrieben, die Entwicklung der Emulatoren auf dem ST auf, um dann in einem gesonderten Kapitel speziell auf die Entwicklung des PC-Speed einzugehen. Nach diesem Abschnitt weiß der geneigte Leser (fast) alles über die Entwicklungsgeschichte der Emulatoren für den ST.
Kapitel 2 erläutert den Werdegang von MS-DOS und PCs. Leicht verständlich wird auch der grobe Aufbau eines PCs dokumentiert, dabei kommen zuletzt auch die Unterschiede zwischen DOS 3.3 und der Version 4.01 nicht zu kurz. In diesem Abschnitt des Buches werden alle wichtigen Dinge aufgezählt, die man wissen sollte, um einen PC verstehen und bedienen zu können. Dabei kommen weder die verschiedenen Grafikstandards noch die unterschiedlichen Tastaturen zu kurz - sogar das Diskettenformat wird kurz angerissen.
Auch das nächste Kapitel ist als eine Art Einführung zu verstehen, denn es beschreibt den Einbau des Emulators in die verschiedenen Rechner, beim 1040 sind sogar zwei verschiedene Platinenversionen beschrieben. Probleme, die durch den Einbau entstehen können, werden in einem eigenen Abschnitt sofort mit Lösungshilfen beschrieben, es kann also eigentlich nichts mehr schiefgehen. Wer eine FPU 68881, Hypercache oder ein ROM-Port Modul sein eigen nennt, erhält ebenfalls Hinweise zum Betrieb von PC-SPEED mit den genannten Erweiterungen. Kapitel 4 gehört eigentlich noch zum vorigen, denn hier wird die Installation des Emulators beschrieben. Alles, was zum korrekten Funktionieren des emulierten PC beachtet werden muß, ist beschrieben.
Die folgenden drei Abschnitte des Buches befassen sich mit einer Einführung in MS-DOS (nach der man wirklich mit MS-DOS arbeiten kann), der Anpassung von PC-SPEED an MS-DOS und auf knapp 50 Seilen mit einer kompletten Befehlsbeschreibung sowie dem Umgang mit der DOS-Shell, die ab Version 4.0 mit MS-DOS ausgeliefert wird. Tips und Tricks, wie man geschickter mit MS-DOS und den dazugehörigen Programmen umgeht, runden diese Kapitelreihe ab.
In den umfänglichen Anhängen findet sich alles, was das Herz eines MS-DOS-Anwenders begehrt: Benchmarks, DOS-Befehlsübersicht, ANSI-Code-Tabelle, ASCII-Tabelle, Literaturverzeichnis und einen recht ausführlichen Index.
Das Buch ist leicht verständlich geschrieben, lediglich die Schrift könnte etwas hübscher sein - es schaut aus wie Signum! auf einem 24-Nadler und ist vielleicht für ein Buch doch nicht so ganz geeignet. Dieser „Nachteil“ wird jedoch durch die Qualität des Buches und seine umfassende Darstellung vollkommen aufgehoben. Klaus Schneider und Oliver Steinmeier haben ein Buch geschrieben, das nicht nur für Besitzereines PC-SPEED interessant ist.
Stefan Dürholt
Jochem Schnur
ATARI ST-Modula-2-Programmierhandbuch
Haar bei München,
1990
Markt & Technik
527 Seiten, 2 Disketten
DM 69.-
ISBN 3-89090-775-X
Mit dem „Programmierhandbuch“ wollen die Autoren sowohl den Anfänger ohne tiefere Programmierkenntnisse an Modula heranführen, als auch dem erfahrenen Benutzer ST-Interna in Modula öffnen. Dementsprechend gliedert sich das Buch in eine Modula Einführung, einen Ausflug in den 68000-Assembler des Megamax-Systems, GEM-Programmierung und ein Fallbeispiel eines größeren Programms in Modula unter GEM-Benutzung.
Die Einführung stellt nach einem Überblick die Basis-Datentypen vor, behandelt Schleifen, Fallunterscheidungen und Prozeduren und schließt mit zusammengesetzten Datentypen und Modulen ab.
Hinzu kommen zwei - leider etwas kurz ausgefallene -Abschnitte zu Coroutinen und empfehlenswertem Programmierstil. Wer schon Pascal beherrscht, findet in einem eigenen Abschnitt schnell zu den Änderungen in Modula.
Das zweite Kapitel beschäftigt sich mit Datenstrukturen, wobei Felder, Stapel, Schlangen und Bäume behandelt werden. Damit zusammenhängend wird beispielsweise auf Quicksort zum schnellen Sortieren und Hashing-Methoden eingegangen. Auch das Verwalten von Dateien auf Massenspeicher nach einem ISAM-Modell findet sich hier.
Im dritten Kapitel beschäftigen sich die Autoren mit 68000-Assembler in Modula. Man mag zu Assembler in einer Hochsprache geteilter Meinung sein wer Megamax oder MSM2 benutzt, kann damit systemnah programmieren, die Benutzer anderer Systeme werden Assembler nicht einsetzen und damit auch dieses Kapitel nicht nutzen können.
Kapitel vier hebt das Buch für den ATARI-Besitzer von anderen Lehrbüchern ab, denn es geht auf Line-A, VDI und AES ein. Auch mit der Programmierung des Soundchips gehen die Autoren sehr tief auf die verwendete Maschine ein. Das Dilemma der weitestgehend inkompatiblen GEM-Module der verschiedenen Systeme schlägt hier natürlich durch. Die Autoren haben sich für Megamax entschieden, gehen aber auch das SWISS-System vom SPC ein.
Die Programme benutzen immer wieder Grafik und beschäftigen sich beispielsweise mit Fraktalen. Tortendiagrammen oder der Simulation von Satellitenbahnen. Dabei beschreiben die Autoren gründlich die mathematische Basis der Beispiele und scheuen sich auch nicht, etwas kompliziertere Formeln zu benutzen. Wer sich vom Anblick eines Bruchstrichs abgeschreckt fühlt, kann sich an die eigentliche Programmierung halten.
Den Abschluß bildet ein größeres Programmierprojekt, in dem als Fallstudie ein Funktionsplotter implementiert wird. Dieser akzeptiert Formeln als Eingabe, stellt den Funktionsverlauf als Grafik dar und kann auch Ableitungen und Integrale errechnen. In diesem Projekt wer den verschiedene Programmierprobleme elegant dargestellt, so findet die in anderen Büchern als alleinstehendes Beispiel verwendete Parsierung eines Ausdrucks eine praktische Anwendung.
Die Anhänge bilden eine Literaturliste, Syntaxdiagramme, eine Liste des 68CXK)-Assemblers und eine ASCII Tabelle, deren Übersichtlichkeit sich allerdings durch Vertauschen der Spalten und Reihen steigern ließe. Ein siebenseitiges Register beschließt das Buch, kann aber nicht überzeugen. Unter „Listen“ findet sich nicht etwa eine Referenz auf die verzeigerte Datenstruktur, sondern auf die Prozedur SYSTEM.LISTEN. Der eine Erfinder der AVL-Bäume Adelson-Velskii steht im Register, sein im Text genannter Partner Landis (von ihm stammt das „L“) jedoch nicht.
Auf den zwei beiliegenden Disketten finden sich alle im Buch abgedruckten Programme wieder, die mit einem Megamax-Compiler sofort zu verwenden sind. Wer ein anderes System benutzt, muß leider Anpassungen vornehmen. Bei den Unterschieden der auf dem Markt befindlichen Modula-Implementierungen kann dieser Fakt nicht als Minuspunkt gelten - würden die Autoren Anpassungen für alle Systeme mitliefern, wären sicherlich zehn Disketten gefüllt. Damit ein Leser ohne Megamax aber nicht gänzlich auf dem Trockenen sitzt, liegt ein Programm bei, das die einzelnen Module ausführen kann. Damit brauchen nicht alle Programme das Laufzeitsystem als vollständiges Compilat zu tragen - als PRGs würden sie wiederum nicht auf die zwei Disketten passen.
Der Text ist übersichtlich dargestellt, und fast zu jedem Konzept findet sich ein Beispielprogramm (in Megamax). Werden in den Beispielen Grundlagen beispielsweise aus der Physik verwendet, so beschreiben die Autoren diese sehr gründlich, in der Gliederungsreihenfolge könnte man einige Umstellungen erwägen, so tauchen die Felder bei den zusammengesetzten Datentypen in der Einführung auf, werden im Kapitel über Datenstrukturen -dessen eigentlicher Schwerpunkt bei verzeigerten Strukturen liegt - erneut verhandelt. Zur Unterstützung der Programmanpassung an andere Systeme wäre eine - sicher mühselig zu erstellende - tabellarische Aufstellung der korrespondierenden Bibliotheksprozeduren der verschiedenen Modula-Implementierungen hilfreich.
Die über 500 Seiten sind ein empfehlenswerter Einstieg in Modula-2. Megamax-Benutzer können sofort mit den beiliegenden Disketten loslegen, die anderen sind gezwungen, sich mit Modula auseinanderzusetzen, um die mitgelieferten Programme anzupassen.
Nimmt der Einsteiger die Modula-Einführung ernst, wird er umfassendes Wissen erwerben und dieses anhand der Beispiele anwenden können. Wer schon Programmiererfahrung hat. lernt, sein System zu benutzen, und erfahrt aufgrund der praktischen Benutzung von GEM erheblich mehr als in anderen Modula-Büchern.
Das Modula-Programmierhandbuch lohnt sich und ist es wert, neben einem mit Modula ausgestatteten ST zu stehen.
RT