home *** CD-ROM | disk | FTP | other *** search
Text File | 1994-10-10 | 114.5 KB | 2,593 lines |
- Amiga-FAQ
- *********
-
- Dieses Dokument enthält einige häufig gestellte Fragen und
- versucht, Antworten zu geben. Seine Absicht ist es, neuen Benutzern zu
- helfen und die Zahl der News-Artikel zu reduzieren, die erfahrene
- Benutzer nicht mehr sehen wollen.
-
- Bitte beachten Sie, daß viele Abschnitte bis jetzt noch fast
- völlig leer sind. Ich verstehe von den betreffenden Abschnitten nichts
- und habe nicht das Gefühl, als ob ich daran etwas ändern könnte.
- Damit sind Sie an der Reihe: Füllen Sie die Lücken und teilen Sie mir
- mit, was man hier noch aufnehmen kann!
-
-
- Disclaimer
-
- 1 Hardware
- 1 Was sind 68EC020, 68EC030 und 68LC040?
- 2 Was ist ein mathematischer Coprozessor (FPU) ?
- 3 Kann ich eine 3.5"-Festplatte im A1200 verwenden?
-
- 2 Das Betriebssystem
- 1 Kann ich eine andere als die eingebaute Kickstart benutzen?
- 2 Was entspricht unter AmigaDOS dem . (Aktuelles Directory)?
- 3 Der Queue-Handler PIPE:
- 1 Verwendung von PIPE: in einer AmigaShell
- 2 Das Pipe-Kommando
- 3 Das Pipe-Kommando in der AmigaShell
- 4 Die _mchar-Variable
- 5 Bekannte Probleme
-
- 3 Programmierung
- 1 Was ist die beste Dokumentation für Programmierer?
- 2 Was ist CATS?
- 3 Wo bekomme ich die Amiga-Include-Dateien?
- 4 Wie werde ich Developer?
- 5 Was für Compiler (und Assembler) gibt es?
- 6 Warum funktioniert keine Esc-Sequenz?
- 7 Kann ich AmigaBasic auf dem A1200 verwenden?
- 8 Wie lokalisiere ich mein Programm?
- 9 Wie erhält man einen Zeiger auf das Fenster einer Konsole?
- 10 Was sind Pragmas?
- 11 Mein Compiler/Linker vermißt Symbole.
- 12 Wie erfahre ich, was für Funktionen es gibt?
- 13 Der GNU C Compiler: Allgemeine Informationen und Installation
- 1 Aktuelle Version
- 2 Hardwareanforderungen
- 3 Wer hat es gemacht?
- 4 Wo finde ich die gcc-Quelltexte?
- 5 Inline-Dateien
- 6 Wie konvertiere ich die Amiga-Libraries für den gcc?
- 7 Wie installiere ich den gcc?
- 8 Wichtige Informationsquellen
-
- 4 Anwendungen
- 1 Text-Editoren
- 2 Was für Textverarbeitungsprogramme gibt es?
- 3 Desktop Publishing
- 4 Was ist TeX und wo bekomme ich es?
- 5 Gibt es PostScript-Interpreter auf dem Amiga?
-
- 5 Grafik
- 1 Was heißt Chunky- und Planar-Display?
- 2 Was ist Doublebuffering?
- 3 Was für Monitore arbeiten am Amiga 1200 oder 4000?
-
- 6 Emulationen
- 1 Kann ich meinen Amiga unter Unix benutzen?
- 2 Ist es möglich, den Amiga als X11-Terminal zu benutzen?
- 3 Wie kann ich MS-Dos-Programme starten?
-
- 7 Verschiedenes
- 1 Gibt es eine Unix-Version von LhA?
- 2 Was sind Dateien, die mit ... enden?
- 3 Gibt es ein Programm wie Stacker, um die Hard-Disk zu packen?
- 4 Wo bekomme ich Fish-Disk xxx?
- 5 Wie füllt man die Tintenkartuschen der HPDeskjet-Drucker nach?
- 6 Was ist MUI und wo bekomme ich es?
-
- 8 Software-Quellen und andere Informationen?
- 1 Dateien und Datenbanken zur frei kopierbaren Software
- 2 Eine Sammlung von Testberichten
- 3 Empfangen von Dateien von einem FTP-Server
- 4 Empfangen von Dateien von einem Mail-Server
- 5 Empfangen von Dateien von einer Mailbox
- 6 Die Fish-PD-Serie
- 1 Die Amiga-Library-Disks
- 2 Die Fresh-Fish-Serie
- 7 Wie kann ich MS-Dos-Disketten lesen und schreiben?
- 8 Wie transportiere ich sehr große Dateien
- 9 Diskussionen über Mail
- 10 Andere FAQ's
-
- Das Amiga-FAQ-Archiv
-
- Beiträge zur Amiga-FAQ
-
- Danksagungen
-
- Index
-
-
-
- Disclaimer
- **********
-
- Diese Datei steht unter dem
-
- Copyright (C) Ignaz Kellerer
- Georg-Habel-Str. 11
- 81241 München (Deutschland)
- Tel. (+49) 089 / 885147
- Internet: kellerer@informatik.tu-muenchen.de
-
- Es ist erlaubt, sowohl veränderte als auch unveränderte Kopien
- dieser Datei herzustellen und zu verteilen, vorausgesetzt, daß dabei
- die Bestimmungen der "GNU General Public License" eingehalten werden und
- die Copyright-Notiz sowie diese Erlaubnis unverändert auf allen Kopien
- enthalten sind.
-
- Der Autor gibt *absolut keine* Garantie, daß die hier gegebenen
- Antworten korrekt sind. Einige dieser Antworten sind von anderen
- Benutzern beigetragen worden und ich habe teilweise nicht einmal die
- Möglichkeit, auch nur die einfachsten Tests durchzuführen.
- Vorschläge, weitere Beiträge, neue Fragen und Antworten, Kritik und
- Beschimpfungen (oh, wie ich mein `nil:' liebe :-) sind aber sehr
- willkommen. Siehe Beiträge.
-
- 1 Hardware
- **********
-
- Dieses Kapitel enthält Fragen zur Amiga-Hardware.
-
- 1.1 Was sind 68EC020, 68EC030 und 68LC040?
- ==========================================
-
- Motorola, die Herstellerfirma der 680x0-Familie, bietet auch
- gestutzte Versionen ihrer Prozessoren an. Diese sind etwas
- preisgünstiger als die Originale, weshalb Commodore auch den 68EC020 in
- den A1200 und den 68EC030 in den A4000/030 einbaut. Dafür können sie
- aber auch etwas weniger.
-
- Der Unterschied zwischen 68020 und 68EC020 ist, daß letzterer nur
- 16MB Speicher adressieren kann. (Das ist der Grund, warum der A1200 nur
- maximal 10MB RAM haben kann.) In den meisten Fällen sollte man den
- Unterschied aber gar nicht bemerken.
-
- Das ist beim 68EC030 anders: Viele Benutzer werden feststellen, daß
- der 68030 eine MMU (Memory management unit) hat und der 68EC030 nicht.
- (Beim 68020 gibt es noch die Möglichkeit, eine externe MMU, den 68851
- nachzurüsten.) Es gibt einige wichtige Programme, die eine MMU
- brauchen, z.B. Enforcer (ein Hilfsprogramm zur Fehlersuche), GigaMem
- (ein Programm zur Emulation von virtuellem RAM) oder alle aktuellen
- Unix-Versionen (siehe Unix). Wer eines dieser Programme verwenden will
- und keinen A4000 oder A3000 hat, braucht deshalb eine Prozessorkarte
- mit einem 68030 oder 68040.
-
- Der 68LC040 ist ein 68040 ohne FPU. Siehe FPU.
-
- 1.2 Was ist ein mathematischer Coprozessor (FPU) ?
- ==================================================
-
- Die Prozessoren 68000 bis 68030 bieten ausschließlich Integer (=
- Ganzzahl) Arithmetik. Floating-Point (Fließkomma) Operationen werden
- über eine Befehlssequenz ausgeführt. Floating-Point Units (FPUs) bzw.
- mathematische Koprozessoren sind für diese Aufgaben optimiert.
-
- Im wesentlichen kann man drei FPU-Typen unterscheiden: Den 68881,
- 68882 und die interne FPU des 68040. Aufgrund der Trennung von
- Arithmetikeinheit und Konvertierlogik (notwenig zur Konversion
- anliegender Zahlenformate in das prozessoreigene 80bit-Format) ist die
- 68882 FPU bis zu 1.5 mal schneller als die 68881. Die interne FPU des
- 68040 besitzt darüber hinaus eine dreistufige Pipeline, allerdings
- sind in ihr nicht alle Befehle der 68881/68882 realisiert. Die
- fehlenden (trigonometrischen) Befehle werden per Software emuliert
- (z.B. über die 68040.library).
-
- Für viele Programme (Raytracing, DTP, Mathematik, TeX) existieren
- spezielle Coprozessorversionen. Je nach Auslastungsgrad kann damit eine
- Geschwindigkeitssteigerung bis zum Faktor 50 erreicht werden.
-
- Michael Kaiser (kaiser@ira.uka.de)
-
- 1.3 Kann ich eine 3.5"-Festplatte im A1200 verwenden?
- =====================================================
-
- Viele Leute würden statt der im A1200 üblichen 2.5"-Festplatten
- lieber eine 3.5"-Festplatte verwenden, da diese viel billiger sind. Das
- ist auch möglich, allerdings braucht man ein spezielles Kabel, um die
- Festplatte an den eingebauten IDE-Controller anzuschließen. Außerdem
- sollte man isolierendes Material zwischen die Festplatte und die
- Platine schieben. Es gibt Berichte über thermische Probleme, aber ich
- habe nichts davon bemerkt.
-
- Einige Händler bieten für ca. 40-50DM Kabel, Isoliermaterial und
- Informationen an, was sicherlich empfehlenswert ist. In den üblichen
- Magazinen sollte man diesbezügliche Anzeigen finden.
-
- Thomas Schuh (thomas@stepout.tynet.sub.org)
-
- 2 Das Betriebssystem
- ********************
-
- Dieses Kapitel behandelt Fragen sowohl zum Betriebssystem Kickstart
- als auch zur Oberfläche Workbench.
-
- 2.1 Kann ich eine andere als die eingebaute Kickstart benutzen?
- ===============================================================
-
- Zunächst ein paar Worte zur Legalität der Benutzung einer anderen
- Kickstart: Es ist *nicht* erlaubt, Kopien von Kickstarts fremder
- Computer zu erstellen und auf einem anderen Computer zu benutzen! (Es
- ist sogar fraglich, ob man das auf eigenen Maschinen darf, wenn man
- mehr als einen Amiga hat.)
-
- Natürlich ist es möglich und für gewisse Personen (z.B. Developer,
- siehe Developer) auch erlaubt. Es gibt zwei verschiedene
- Möglichkeiten, eine Hardware- und eine Softwarelösung. Erstere ist,
- eine Platine in den Computer einzubauen, die sowohl die eigene als auch
- eine andere Kickstart aufnehmen kann, zwischen denen man dann
- umschalten kann.
-
- Die Softwarelösung benötigt ein Programm (einen sogenannten
- Softkicker) und die Kopie der anderen Kickstart. Der Softkicker
- alloziert RAM, lädt die Kickstart-Kopie in dieses RAM und führt einen
- Reset aus. Natürlich fehlt dann nach dem Reboot unter der neuen
- Kickstart etwas RAM: 256KB weniger für Kickstart 1.2 oder 1.3 und
- 512KB für die neueren Kickstarts. Es gibt verschiedene Softkicker,
- von denen einige eine MMU benötigen (siehe 68EC0xx). Ich empfehle
- SKick 3.43 (Aminet, Directory `util/boot') empfehlen, das keine MMU
- braucht und viele verschiedene Kickstarts unterstützt. Die Kopie des
- ROM zu erzeugen ist mit einem Programm wie dem Folgendem möglich:
-
- #include <stdio.h>
-
- #define kickorig 0xf80000 /* 0xfc0000 für Kick 1.2 und 1.3 */
- #define kicklen 0x080000 /* 0x040000 für Kick 1.2 und 1.3 */
-
- void main(int argc, char*argv[])
- {
- FILE *fh;
-
- if ((fh = fopen("kickstart.file", "w")) != NULL) {
- result = fwrite(kickorig, kicklen, 1, fh);
- }
- fclose(fh);
- }
-
- 2.2 Was entspricht unter AmigaDOS dem . (Aktuelles Directory)?
- ==============================================================
-
- Unter AmigaDOS entspricht dem . (der das aktuelle Directory unter
- Unix und gewissen nicht-reentranten Interrupt-Handlern repräsentiert)
- der leere String, den man als "" schreibt.
-
- Beispiel:
- COPY S:Startup-Sequence ""
-
- Dies kopiert Ihre Startup-Sequence in das aktuelle Directory.
-
- Es gibt verschiedene Programme, die AmigaDOS so patchen, daß es .
- und .. wie unter Unix akzeptiert, z.B. UnixDirs. (Aminet,
- `os20/util/UnixDirsII.lha' oder Fish-Disk 837)
-
- Arno Eigenwillig (arno@yaps.dinoco.de)
-
- 2.3 Der Queue-Handler PIPE:
- ===========================
-
- In AmigaOS 2.04 wurde ein neuer Handler eingeführt, der es erlaubt,
- Daten zwischen verschiedenen Programmen auszutauschen. Dieser Handler
- heißt `L:Queue-Handler', ist aber besser als `PIPE:' bekannt.
-
- `PIPE:' implementiert eine echte, Unix-artige `Pipe', mit der man
- die Standardausgabe eines Programms als Standardeingabe eines anderen
- Programms verwenden kann. Es ist auch möglich, mehrere Programme über
- mehrere Pipes gleichzeitig zu verketten. Pipes brauchen weniger RAM
- für temporäre Dateien, und der Zugriff ist schneller.
-
- Allerdings unterscheidet sich `PIPE:' von Unix-Pipes in zwei
- wesentlichen Punkten:
- 1. Es handelt sich um ein Device; die Ein- und Ausgabe von Programmen
- muß also nicht unbedingt eine Datei sein, obwohl das meistens der
- Fall ist. Man kann auch `PIPE:' wie andere Devices verwenden, aber
- natürlich weder Directories lesen noch Seek-artige Zugriffe
- durchführen.
-
- 2. Es gibt keine Flush-Operation. Wenn nicht alle Daten gelesen
- wurden, die in `PIPE:' geschrieben wurden, dann bleiben sie
- stehen, bis sie evtl. von einem anderen Programm gelesen werden.
- Man muß also Pipes immer leeren, bevor man sie schließt.
-
- 3. Aus demselben Grund kann ein Programm blockiert werden, wenn es
- die interne Puffergröße überschreibt. Auch dies wird durch
- rechtzeitiges Leeren der Pipe vermieden.
-
- Der Handlername von PIPE: ist vollständig
- `PIPE:name/bufsize/bufnum', wobei `name' den verwendeten Pipekanal
- identifiziert und eindeutig sein sollte. Durch verschiedene Namen kann
- man also gleichzeitig mehrere Pipe-Kanäle öffnen. Die optionalen
- Argumente `bufsize' und `bufnum' geben die Größe und Anzahl der
- verwendeten Datenpuffer an. Meist schreibt man einfach `PIPE:name', die
- Vorgabegröße ist dann 4096 Bytes und die Anzahl unbegrenzt.
-
- Osma Ahvenlampi (Osma.Ahvenlampi@hut.fi)
-
- 2.3.1 Verwendung von PIPE: in einer AmigaShell
- ----------------------------------------------
-
- Zunächst muß `PIPE:' natürlich mit `Mount' angemeldet sein. Dies
- kann durch das Kommando
- 1> Mount PIPE:
-
- in der Shell geschehen, ab AmigaOS 2.1 auch dadurch, daß man die Datei
- `PIPE' nach `DEVS:DosDrivers' schiebt.
-
- In einem AmigaShell-Fenster kann man dann folgende Kommandos
- eingeben:
- 1> Run List SYS: >PIPE:Listoutput
- 1> More <PIPE:Listoutput
-
- (1)
-
- Diese beiden Kommandos erzeugen also zunächst eine Liste der Dateien
- in `SYS:' und geben diese dann mit Hilfe des More-Kommandos aus. Man
- könnte auch folgendes probieren:
- 1> Run List SYS: NOHEAD >PIPE:Listoutput
- 1> Run Sort PIPE:Listoutput PIPE:Sortedoutput
- 1> More <PIPE:Sortedoutput
-
- Dies würde also die Liste vor der Ausgabe noch sortieren.
-
- Beachten Sie die Verwendung von `Run' außer für das jeweils letzte
- Programm, durch die alle Programme gleichzeitig ablaufen. Man kann
- auch die Programme gleichzeitig in verschiedenen Shells ablaufen lassen.
-
- Das Leeren der Pipe kann auch manuell geschehen, vorausgesetzt man
- kennt den Namen des verwendeten Kanals, indem man folgendes eingibt:
- 1> Type PIPE:name TO NIL:
-
- ---------- Footnotes ----------
-
- (1) Dabei `1>' der Prompt der AmigaShell, die eine Eingabe
- erwartet. Die Nummer kann natürlich variieren.
-
- 2.3.2 Das Pipe-Kommando
- -----------------------
-
- Im vorigen Beispiel ist die Verwendung von Pipes recht kompliziert,
- vor allem verglichen mit Unix-Pipes. Es gibt aber eine bessere
- Möglichkeit.
-
- Andy Finkel, der früher bei Commodore gearbeitet hat, hat auch ein
- Kommando `Pipe' geschrieben (was man nicht mit `PIPE:' verwechseln
- sollte!), das die Benutzung von Pipes stark vereinfacht.
- Unglücklicherweise wurde dieses Programm letzten Endes dann doch nicht
- in die offizielle Workbench aufgenommen, allerdings mit Billigung von
- Commodore veröffentlicht (Quellen: Fish-Disk 637, Aminet,
- `util/cli/finkelshelltools.lha'). Dieses Programm arbeitet auch unter
- OS3.1 noch problemlos.
-
- Die Verwendung des Pipe-Kommandos ist einfach. Man übergibt die
- auszuführenden Programme als Argumente an Pipe, getrennt durch das
- Zeichen |, z.B.
- 1> Pipe List SYS: | More
- oder
- 1> Pipe List: SYS: NOHEAD | Sort IN: OUT: | More
-
- Beachten Sie die Verwendung von `IN:' und `OUT:', die nötig sind, weil
- das Sort-Kommando nicht von der Standardeingabe lesen und nicht auf die
- Standardausgabe schreiben kann. Diese Devices werden durch das
- Kommandos Pipe simuliert. Durch die Environment-Variable _PCHAR kann
- man auch ein anderes Zeichen anstelle von | verwenden.
-
- 2.3.3 Das Pipe-Kommando in der AmigaShell
- -----------------------------------------
-
- Es gibt ein sehr nützliches, allerdings undokumentiertes Feature
- der AmigaShell: Diese kennt das Pipe-Kommando! Ist die lokale Variable
- _PCHAR gesetzt, dann kann man Pipes sogar ohne Eingabe des
- Pipe-Kommandos benutzen. Die Shell erkennt das durch _PCHAR vorgegebene
- Zeichen und ruft für Kommandozeilen, die es enthalten, automatisch
- Pipe auf.
-
- Am besten wird das folgende Kommando in `s:Shell-Startup'
- eingetragen:
- 1> Set _pchar "|"
-
- (1) Man kann die vorigen Beispiele dann so ausführen:
- 1> List SYS: | More
- oder
- 1> List SYS: NOHEAD | Sort IN: OUT: | More
-
- Dies entspricht also völlig den Unix-Pipes.
-
- ---------- Footnotes ----------
-
- (1) Die Anführungsstriche sind wesentlich! Wenn _PCHAR bereits
- gesetzt ist, wird sonst angenommen, es handele sich bereits um einen
- Aufruf von Pipe. Dies kann etwa dann geschehen, wenn aus einer Shell
- eine neue gestartet wird.
-
- 2.3.4 Die _mchar-Variable
- -------------------------
-
- Die lokale Variable _mchar legt das Zeichen fest, das als
- Kommandotrenner dient. Setzt man also
- 1> Set _mchar ";"
- dann kann man in der Shell die Befehle hintereinanderfügen, durch
- den Strichpunkt getrennt.
-
- 2.3.5 Bekannte Probleme
- -----------------------
-
- *F:*
- Ich bekomme die Fehlermeldung
- PIPE: Unknown command
-
- wenn ich das Kommando `List SYS: | More' ausführe, obwohl `PIPE:'
- mit `Mount' angemeldet ist. Was ist falsch?
-
- *A:*
- Die Shell sucht nach dem Kommando `Pipe' in der Fehlermeldung,
- nicht nach dem `PIPE:'-Device. Dieses Kommando ist also nicht im
- Suchpfad (meist in `C:') installiert.
-
- *F:*
- Ein Requester meldet
- Please insert volume PIPE: in any drive
-
- wenn ich eines der Kommandos aus den Beispielen ausführen will.
-
- *A:*
- `PIPE:' ist nicht angemeldet. Dies kann mit `Mount PIPE:'
- geschehen.
-
- *F:*
- Wenn ich eines der Beispiele ausführe, dann eröffnet das
- `More'-Kommando ein Fenster, aber dort erscheint nichts/ eine
- Fehlermeldung erscheint/ein Filerequester erscheint.
-
- *A:*
- Sie verwenden ein anderes More-Kommando als das aus der Workbench.
- Verwenden Sie einen anderen Namen oder installieren Sie ein More,
- das Pipes unterstützt, z.B. das More von Commodore, Less oder
- Most.
-
- 3 Programmierung
- ****************
-
- In diesem Kapitel finden vermutlich nur Programmierer Interessantes.
-
- 3.1 Was ist die beste Dokumentation für Programmierer?
- ======================================================
-
- Die beste verfügbare Dokumentation sind sicherlich die RKM's (ROM
- Kernel Manuals, die schwarzen) von Commodore. Sie werden von
- Addison-Wesley veröffentlicht.
- The Amiga ROM Kernel Manual: Libraries, ISBN 0-201-56774-1
- The Amiga ROM Kernel Manual: Devices, ISBN 0-201-56775-X
- The Amiga ROM Kernel Manual: Includes and Autodocs, ISBN
- 0-201-56773-3
- The Amiga Hardware Manual, ISBN 0-201-56776-8
- The Amiga User Interface Style Guide, ISBN 0-201-57757-7
-
- Vor allem die Libraries sind ein Muß. Weniger nützlich sind die
- Includes und Autodocs: Sie sind auf Diskette als Online-Hilfe sicher
- nützlicher. Siehe Include-Dateien.
-
- AmigaDOS wird in diesen Büchern kaum behandelt. Die Autodocs geben
- einige Informationen, aber um tiefer einzusteigen braucht man das
- The AmigaDOS Manual, 3rd Edition, ISBN 0-553-35403-5
-
- ebenfalls von Commodore, das von Bantam Books herausgegeben wird.
-
- Eine gute Wahl ist auch
- The Amiga Guru Book
-
- von Ralph Babel. Das Buch beginnt mit einem ca. 250-seitigen
- allgemeinen Überblick über verschiedenste Aspekte der Programmierung
- des Amiga. Für Anfänger dürften vor allem die Abschnitte über die
- Amiga-Datentypen sowie die Amiga-Includes und die amiga.lib interessant
- sein, aber auch Erfahrene finden hier mit Sicherheit noch Neues, was
- zum Teil nicht einmal in den RKM's enthalten ist. Den größten Teil
- des Buches nehmen aber 500 Seiten nur zu AmigaDOS ein. Dieser Teil ist
- meines Erachtens der wichtigste, weil das AmigaDOS-Manual der
- schlechteste Teil der offiziellen Dokumentation ist. Das Buch ist sehr
- dicht geschrieben und deshalb weniger leicht lesbar als die RKM's, aber
- ich empfehle es als Zusatz und vor allem anstelle des AmigaDOS-Manuals.
- (Allerdings ist das Guru-Buch kein Ersatz für die Libraries & Devices,
- die hier nicht behandelt werden.) Unglücklicherweise hat das Buch
- keine ISBN-Nummer und ist deshalb nur bei den folgenden Adressen
- erhältlich:
-
- Hirsch & Wolf OHG; Mittelstrasse 33; D-56564 Neuwied; Germany
- Voice: +49 (2631) 8399-0; Fax: +49 (2631) 8399-31
- E-Mail: <hhhirsch@carla.adsp.sub.org> (fax preferred)
- (Eurocard/Mastercard/VISA)
-
- Periscope; Attn: Cody Lee; 1717 W Kirby Ave; Champaign, IL 61821, USA
- Voice: +1 (217) 398 4237; Fax: +1 (217) 398 4238
- E-Mail: <periscope@cei.com>
-
- Someware; 27 rue Gabriel Peri; 59186 Anor; France
- Voice: +33 27596000; Fax: +33 27595206
- E-Mail: <didierj@swad.adsp.sub.org>
-
- Für weitere Informationen empfehle ich auch die FAQ von Marc Atkins
- über Bücher zum Thema Amiga, die alle 4 Wochen in
- `comp.sys.amiga.misc' erscheint.
-
- 3.2 Was ist CATS?
- =================
-
- Dies ist eine Abteilung von Commodore West Chester, die früher
- `Commodore Amiga Technical Support' hieß und später in `Commodore
- Application and Technical Support' umbenannt wurde. Die Mitglieder
- arbeiten unabhängig von der Entwicklungsabteilung, aber eng mit ihr
- zusammen, und versuchen, Entwicklern außerhalb von Commodore beim
- Erstellen guter Amiga-Anwendungen zu helfen, sei das eine Hard- oder
- Software. Dazu hat CATS eine Menge an Informationen und Tools
- gesammelt, auf Floppy, CD oder Papier. Ein großer Teil dieses
- Materials ist auch der Allgemeinheit, d. h. für Nicht-Developer
- zugänglich. Aber bitte CATS nicht mit einer Hotline verwechseln!
-
- Amerikaner können das Material von
- CATS - Developer Applications
- Commodore
- 1200 Wilson Drive
- West Chester, PA. 19380
-
- bekommen, der Distributor für ganz Europa ist die
- Fa. Hirsch & Wolf
- Mittelstr. 33
- 56564 Neuwied
- Tel. 02631/83990
-
- Dr. Peter Kittel, peterk@cbmger.de.so.commodore.com
-
- 3.3 Wo bekomme ich die Amiga-Include-Dateien?
- =============================================
-
- Der einzige legale Weg, die Include-Dateien und die AutoDocs zu
- bekommen (und Sie sollten sie bekommen, sie sind *sehr* nützlich!),
- ist, Developer zu werden (siehe siehe Developer) oder das sogenannte
- `NDU' (Native developers update kit, auch als `NDUK', `NDK' bekannt oder
- `ADU' für Amiga Developer Update) bei CATS zu kaufen. Siehe CATS. Es
- kostet etwa 50DM, was sicher ein fairer Preis ist. Dabei handelt es
- sich um ein 5-Disketten-Set, das neben den aktuellen Includes und
- AutoDocs auch Tools für Programmierer, z.B. Enforcer, Mungwall, Sushi
- und die debug.libg (zum Debuggen) sowie anderes, z.B. CatComp (siehe
- Lokalisierung) oder Report (für Bug-Reports oder Vorschläge an
- Commodore) enthält. Die aktuelle Version ist 3.1 und für
- Programmierer beinahe obligatorisch.
-
- Wem die Includes genügen, der kann diese über ein Update seines
- Compilers (nur kommerzielle Compiler) oder von den Fish-CDs bekommen.
- Siehe Fish-CD.
-
- 3.4 Wie werde ich Developer?
- ============================
-
- Um Developer zu werden, braucht man die `ADSP'-Antragsformulare
- (Amiga developer support program). Um diese zu bekommen, sollte man
- einen Brief an die lokale Commodore-Niederlassung schreiben und nach
- diesen Papieren fragen, in denen das weitere erklärt wird. In
- Deutschland ist die Adresse folgende:
- Commodore
- Lyoner Straße 38
- 60528 Frankfurt
- Es gibt drei verschiedene Arten von Developern:
- *Registered*
- Hier bekommt man vor allem Zugang zum CBMNET (eine Art
- Commodore-internes Usenet), über das man direkt mit anderen
- Entwicklern auch von Commodore selber über seine Probleme
- diskutieren kann. Die Jahresgebühr beträgt 150 DM, die einmalige
- Aufnahmegebühr 50 DM.
-
- *Certified*
- Dies ist die interessanteste Klasse: Man bekommt von der meisten
- Systemsoftware die aktuellen Beta-Versionen (z. B. Kickstart und
- Workbench) sowie die dazugehörigen Includes und AutoDocs.
- Certifieds bekommen aber nicht jede Beta und in der Regel auch
- keine Hardware-Beta. Man bezahlt 400 DM pro Jahr dafür und eine
- einmalige Aufnahmegebühr von 100 DM.
-
- *Commercial*
- Kommerzielle Entwickler bekommen im wesentlichen dieselben
- Informationen wie die "Zertifizierten", allerdings kompletter,
- sprich auch Beta-Hardware, und etwas früher. Dies hat auch seinen
- Preis: 700DM pro Jahr plus einmalige Aufnahmegebühr von 100DM.
-
- Die Preise und die angebotenen Möglichkeiten können von Land zu Land
- verschieden sein, auch gibt es meines Wissens nicht in allen Ländern
- den "Registered". Ein guter Tip ist es, eine Gruppe zu bilden und damit
- die Kosten zu reduzieren.
-
- Alle Entwickler müssen Non-disclosure agreements (`NDA')
- unterzeichnen. Diese besagen, daß sie über die erhaltenen
- Informationen außerhalb von speziell dazu freigegebenen Orten oder
- Kanälen nicht einmal zu anderen Entwicklern sprechen dürfen, so lange
- sie nicht die explizite Erlaubnis dazu von Commodore haben.
-
- 3.5 Was für Compiler (und Assembler) gibt es?
- =============================================
-
- Es gibt viele Programmiersprachen auf dem Amiga, kommerzielle
- Compiler ebenso wie frei kopierbare. Ich möchte nur diejenigen
- aufzählen, die mir bekannt sind oder die ich aus einem anderem Grund
- für erwähnenswert halte.
-
- *Assembler*
- Alle C-Compiler beinhalten einen Assembler. Frei kopierbar und
- zuverlässig sind A68K und PhxAss. (Aminet, Directory `dev/asm'
- oder Fish-Disks 521 bzw. 906)
-
- *C*
- *C++*
- Frei kopierbare C-Compiler sind der `gcc' (der sein eigenes
- Directory `dev/gcc' auf dem Aminet hat) und die Probeversion (mit
- der man aber schon eine ganze Menge anfangen kann) von `Dice' (per
- FTP von `ftp.uni-paderborn.de', Directory
- `/news/comp.binaries.amiga/volume91/languages' oder auf Fish disk
- 491). Der große Vorteil von gcc ist, daß man ihn auf der ganzen
- Welt und auf nahezu jedem Computer findet. Ein weiterer Vorteil
- ist, daß er sogar einen C++-Compiler enthält! Aber er ist
- langsam und benötigt 4MB RAM oder mehr. Siehe Der GNU C Compiler.
- Siehe Mail-Listen.
-
- Kommerzielle C-Compiler sind `Aztec-C', `Dice' und `SAS-C'.
- `Aztec-C' wird jedoch leider nicht mehr weiterentwickelt. Was die
- kommerziellen Compiler auszeichnet, sind ihre hervorragenden
- Source-Level-Debugger, die den anderen fehlen.
-
- SAS hat leider angekündigt, den Amiga-Compiler nicht weiter zu
- unterstützen. Verkauft wird er aber noch, und da er gegenwärtig
- noch voll aktuell ist und sogar einen Crosscompiler von C++ in C
- enthält (der vom Debugger unterstützt wird), ist er meines
- Erachtens derzeit das beste Angebot, insbesondere zu dem äußerst
- günstigen Preis von 184.-DM für Studenten und Besitzer anderer
- Compiler. In Deutschland erhält man SAS/C bei
- SAS Institute GmbH
- Postfach 10 53 40
- 69043 Heidelberg
- Deutschland
-
- Telefon: 06221/4160
- EMail: eurdoc2@vm.sas.com
-
- Dice bietet wie SAS einen Sonderpreis für Schüler und Studenten
- von ca. 130.-DM. Der Compiler ist stabil und vor allem sehr
- schnell. Der größte Nachteil von Dice ist (verglichen mit den
- anderen kommerziellen Compilern) der Debugger, ein sogenannter
- Source-Line-Debugger: Dies bedeutet, daß man den Quelltext sieht
- und das Programm Schritt für Schritt abarbeiten kann, aber leider
- nur Speicher und nicht etwa bestimmte Variablen anzeigen kann.
- Informationen über Dice: info@oic.COM.
-
- Comeau C++ ist ebenfalls ein Crosscompiler, was an und für sich
- kein Problem wäre. Aber Comeau C++ hat keinen integrierten
- C-Compiler, man braucht also zusätzlich SAS-C, Aztec-C oder Dice.
- Dafür ist er kompatibel zu AT&T cfront 3.0, unterstützt
- Exceptions und läuft wie `gcc' auf vielen verschiedenen Systemen.
- In Deutschland wird auch Maxxon C++ angeboten, über das ich
- nichts sagen kann. Beide Compiler sind kommerziell. Comeau's
- Adresse ist:
- Comeau computing
- 91-34, 120th Street
- Richmond Hill, NY, 11418-3214
- USA
-
- EMail: Greg Comeau, comeau@bix.com
-
- *Forth*
- JForth soll eine exzellente Forth-Version sein. Unter anderem
- enthält es objektorientierte Erweiterungen, ein volles
- Amiga-Interface und einen Anwendungsgenerator. Es ist erhältlich
- von:
- Delta Research
- P.O. Box 151051
- San Rafael, CA 94915-1051
-
- Phone: (415) 453-4320
- EMail: Phil Burk, phil@ntg.com
- Mike Haas, haas@starnine.com
-
- *Fortran*
- (Seufz! Es gibt immer noch Leute, die es brauchen :-<) Frei
- kopierbar sind BCF (Fish disk 470) und f2c, der Fortran in
- C-Quelltext umwandelt. (Aminet, Directory `/dev/misc'). Ein
- kommerzieller Compiler ist von ABSoft erhältlich. Allerdings sind
- dies alles nur Fortran-77-Compiler, es gibt keine
- Fortran-90-Compiler auf dem Amiga.
-
- *Lisp*
- Frei kopierbare Lisp-Interpreter sind XLisp (Fish-Disk 181) und
- OakLisp (Fish-Disks 519 und 520) und CLISP
- (`/pub/lisp/clisp/binaries/amiga' at
- `ma2s2.mathematik.uni-karlsruhe.de'). Auch Compiler gibt es: Gambit
- (Fish-Disks 764 und 765) sowie Scheme-to-C (Fish-Disks 556-558).
- Von Interesse ist vielleicht eine Mail-Liste: Senden Sie dazu eine
- Mail mit dem Wort `Subscribe' an `amigalisp@contessa.phone.net'.
-
- *Prolog*
- `/dev/lang/UNSWProlog.lha' und `dev/lang/sbp3_1e' auf dem Aminet
- sowie `SBProlog' auf der Fish-Disk 141 und `SBProlog' auf der
- Fish-Disk 145 sind frei kopierbare Prolog-Interpreter.
-
- *Modula-2*
- M2Amiga wird in Europa und Benchmark Modula-2 in den USA
- angeboten. Beide sollen sehr gut sein und sowohl über gute
- Source-Level-Debugger als auch eine umfangreiche Bibliothek
- verfügen. Besonders M2Amiga wird sehr gut unterstützt durch eine
- deutsche Benutzergruppe (AMOK), die z.B. eine eigene PD-Serie
- anbieten. Siehe Mail-Listen.
-
- M2Amiga bekommt man bei
- A+L AG
- Daderiz 61
- 2540 Grenchen
- Schweiz
-
- Tel.: +41/65/52 03-11
- Fax: -79
-
- und Benchmark Modula-2 ist erhältlich von:
- Armadillo Computing
- 5225 Marymount Drive
- Austin, Texas 78723
- USA
-
- Phone/FAX: 512/926-0360.
- EMail: Jim Olinger, jolinger@bix.com
-
- *Oberon*
- *Oberon-2*
- Es gibt zwei Oberon-2-Compiler für den Amiga: AmigaOberon ist wie
- M2Amiga von A+L und kommerziell. Der Compiler kommt mit einer
- integrierten Entwicklungsumgebung (incl. freikonfigurierbarem
- Editor) und umfangreicher Modulbibliothek. Library Linker zum
- einfachen Erzeugen von AmigaOS Shared Libraries sowie Run-time
- Source-Level-Debugger sind ebenfalls erhältlich.
-
- Oberon-A ist ein Freeware-Compiler, allerdings erst in einer
- Beta-Version, insbesondere sind die Modulbibliotheken
- unvollständig. (Quelle: Aminet, Directory `dev/obero'). Siehe
- Mail-Listen.
-
- Für beide Compiler gibt es Unmengen von Modulen und Bsp.-Sourcen
- auf AMOK-Disks.
-
- *Pascal*
- Es gibt einen PD-Compiler namens PCQ (Aminet, Directory `dev/lang'
- oder Fish-Disk 511), der allerdings kein voller Pascal-Compiler
- ist und dem sehr wesentliche Dinge fehlen. P2C konvertiert Pascal
- in C und ist auf der Fish-Disk 341 zu finden. (Aminet:
- `/dev/misc/p2c120.lha') Ferner gibt es zwei kommerzielle Compiler
- namens HiSoft-Pascal (von der gleichnamigen Firma) und KickPascal
- von Maxxon. HiSoft und P2c behaupten, kompatibel zu Turbo-Pascal
- 5.0 zu sein. HiSoft hat außerdem einen guten
- Source-Level-Debugger.
-
- 3.6 Warum funktioniert keine Esc-Sequenz?
- =========================================
-
- Viele Drucker kommen mit einem Handbuch, das erklärt, welche
- Esc-Sequenzen welche Funktion auslösen. Aber wenn man diese Sequenzen
- dann einmal ausprobiert, passieren oft merkwürdige Sachen, nämlich
- entweder gar nichts oder etwas ganz anderes, als geplant war. Und das
- hat auch einen Grund, nämlich die Amiga-Druckertreiber. Diese Treiber
- sind so gebaut, daß sie nur einen bestimmten Satz `ANSI-Esc-Sequenzen'
- verstehen, nicht die (verschiedenen) druckereigenen, von den
- verschiedenen Druckerherstellern definierten. Der Sinn dabei ist, daß
- jede Anwendung auf dem Amiga nur diesen einen Standardsatz an Sequenzen
- verwendet und so nicht zu wissen braucht, welcher Drucker tatsächlich
- angeschloßen ist. Der Druckertreiber übersetzt dann diese
- Standardsequenzen in die druckereigenen. Eine Liste der verfügbaren
- ANSI-Esc-Sequenzen findet sich im aktuellen Workbench-Handbuch (oder in
- älteren AmigaDOS-Handbüchern). Wenn Du nun eine Steuersequenz an den
- Drucker schicken willst, die es nicht als ANSI-Sequenz gibt, so hast Du
- zwei Möglichkeiten, dies doch zu erreichen:
- 1. Umgeh den Druckertreiber (der erfolglos versuchen würde, die
- Sequenz zu interpretieren oder zu übersetzen) und sende die
- Ausgabe *nur* für die Länge dieser Sequenz an `PAR:' (bzw.
- `SER:'). Dabei muß man die Druckerausgabekanäle umständlich oft
- umschalten, und man muß wissen, wo der Drucker angeschlossen ist
- (`PAR:' oder `SER:').
-
- 2. Benutze eine spezielle ANSI-Sequenz, genau für diesen Fall
- gedacht:
- `Esc[<n>"<x>'
- wobei `<n>' die dezimal geschriebene Anzahl an Bytes in der Sequenz
- `<x>' ist, die gerade die spezielle Drucker-Sequenz enthält. Diese
- ANSI-Sequenz sagt dem Druckertreiber, daß er die nächsten `<n>'
- Bytes nicht interpretieren oder übersetzen soll.
- Aber beide Methoden haben einen grossen Nachteil, wenn sie in
- einem Anwendungsprogramm verwendet werden: Man verliert die
- Druckerunabhängigkeit! Solange man sich an die ANSI-Sequenzen hält,
- kann man jeden Drucker der Welt ansteuern, solange es einen
- Amiga-Druckertreiber für ihn gibt. Wenn man anfängt, druckereigene
- Sequenzen zu verwenden, ist das Programm an diesen einen Druckertyp
- gebunden und mit keinem anderen benutzbar (oder man müßte einige
- dutzend neue Druckertreiber für dieses Programm erstellen).
-
- Dr. Peter Kittel, peterk@cbmger.de.so.commodore.com
-
- 3.7 Kann ich AmigaBasic auf dem A1200 verwenden?
- ================================================
-
- Letztens ging eine Kontroverse über AmigaBasic durch die Netze: Ich
- sagte, auf dem A1200 läuft es einigermaßen problemlos, jemand anders
- berichtete, daß es bei jedem kleinsten Fehler sofort komplett
- abstürzt, was ich nicht nachvollziehen konnte.
-
- Jetzt kann ich es: Es liegt am Sound-Prefs-Editor. Wenn man in ihm
- die Sound-Ausgabe ganz abschaltet, kann man mit AmigaBasic arbeiten.
- Wenn hier ein Sound (z. B. Piepsen) angewählt ist, kollidiert das mit
- dem Sound, den AmigaBasic offensichtlich zu Fuß und nicht ganz korrekt
- selber erzeugen will, bumm.
-
- Abhilfe also:
- 1. Im Sound-Editor den Ton abstellen.
-
- 2. Auf einem A4000 (oder einem A1200 mit Fast-RAM-Erweiterung (1))
- muß man zusätzlich NoFastMem aktivieren.
-
- 3. Möglichst SUBs vermeiden und stattdessen herkömmliche GOSUBs
- benutzen, dann ist die Kompatibilität zu neueren Prozessoren
- höher.
-
- Dr. Peter Kittel, peterk@cbmger.de.so.commodore.co
-
- ---------- Footnotes ----------
-
- (1) Nur bei einem zusätzlichen Prozessor
-
- 3.8 Wie lokalisiere ich mein Programm?
- ======================================
-
- Nehmen wir an, wir wollen ein `HelloLocalWorld.c' schreiben. Das
- letztendliche Programm sieht dann ungefähr so aus:
-
- #include "HelloLocalWorld_Cat.h"
- #include <clib/exec_protos.h>
-
- struct Library *LocaleBase;
-
- void main(int argc, char *argv[])
-
- {
- /* Öffne die locale.library. (Kein Abbruch, wenn sie nicht
- da ist, weil dann einfach die eingebauten Strings verwendet
- werden. Aus diesem Grund auch keine Verwendung des
- AutoOpening, auch wenn es der Compiler beherrscht.)
- */
- LocaleBase = OpenLibrary("locale.library", 38);
- OpenHelloLocalWorldCatalogs(NULL, NULL);
-
- printf(GetString(MSG_Hello));
-
- CloseHelloLocalWorldCatalog();
- if (LocaleBase) CloseLibrary(LocaleBase);
- }
-
- Die Funktion GetString prüft, ob die gewünschten Kataloge
- vorhanden sind und liefert einen Zeiger auf einen String, entweder den
- eingebauten oder den Katalogstring. (In unserem Fall den deutschen
- String.)
-
- Der Hauptunterschied zum gewohnten HelloWorld.c ist also (abgesehen
- von der minimalen Initialisierung und dem Gegenstück am Programmende),
- Strings durch einen Funktionsaufruf zu ersetzen. Man braucht also eine
- Datei `HelloLocalWorld_Cat.c', die die Funktionen OpenHelloLocalWorld,
- GetString, CloseHelloLocalWorld_Cat.h und die eingebauten Strings
- enthält (dies könnte ein Array sein, das unter anderem
- array[MSG_Hello] = "Hello, local world.\n";
-
- enthält) und ein Includefile `HelloLocalWorld_Cat.h', das die ID's wie
- MSG_Hello definiert. Es ist nicht nötig zu wissen, wie diese Dateien
- intern arbeiten, insbesondere benötigt man auch keine Kenntnis der
- `locale.library'!
-
- Dazu gibt es verschiedene Kataloggeneratoren (im Folgenden KG),
- nämlich `CatComp' (nur für Developer), `KitCat' (nur deutsche
- Dokumentation, was hierzulande kein Problem ist), `MakeCat' (das ich
- nicht kenne) und `FlexCat' (das ich empfehle, einerseits, weil es sehr
- flexibel im erzeugten Source ist und z.B. Lokalisierung unter 2.0 sowie
- beliebige Programmiersprachen unterstützt, selbst Amiga-E, Cluster,
- Pascal, ... und andererseits, weil es von mir ist ;-) ), die diese
- Dateien sowie die Kataloge erzeugen. (Der obige Quelltext könnte je
- nach KG leicht unterschiedlich aussehen.) Siehe Aminet, directory
- `dev/misc'.
-
- Wie funktionieren diese KGs? Zunächst erzeugt man eine sogenannte
- `Katalogbeschreibung' (`Catalog description'), die so aussehen könnte:
- ; Mit einem Semikolon beginnende Zeilen sind Kommentare
- # language english
- ; die Sprache der eingebauten Strings
- # version 0
- ; die Katalogversion (0 = beliebig)
- MSG_Hello (1/15/30)
- Hello, local world
-
- Jeder String wird durch zwei Zeilen wie die letzten beiden definiert:
- MSG_Hello ist die String-ID, (1/15/30) gibt den Wert der ID sowie die
- minimale und maximale Länge an. (Diese Argumente können auch
- weggelassen werden, in welchem Fall einfach die nächste freie ID
- verwendet wird.)
-
- Nun schreiben wir das Programm. Sobald es fertig ist, wird mit dem
- KG eine sogenannte Katalogübersetzung (eine für jede andere Sprache
- als die eingebaute) erzeugt, die so aussehen könnte:
- ; Mit einem Semikolon beginnende Zeilen sind Kommentare
- ## language deutsch
- ; the catalog language
- ## version $VER: Deutsch.catalog 1.0 (22.12.93)
- ; the catalog files version string
- MSG_Hello
-
- ; Hello, local world
-
- Beachten Sie die leere Zeile nach der String-ID! (Die Argumente von ##
- language und ## version wären vielleicht leer.) Hier müssten jetzt
- die deutschen Strings eingesetzt werden. Mit dem KG wird daraus dann
- der eigentliche `Katalog' erzeugt. (Beachten Sie auch, daß hier die
- Angaben über String-ID und Stringlänge fehlen: Sie werden aus der
- Katalogbeschreibung übernommen.
-
- Wenn das Programm verändert wird (neue Strings, andere Längen) und
- die Katalogbeschreibung sich damit ebenfalls ändert, dann kann der KG
- analog benutzt werden, um auch die Katalogübersetzung und damit den
- Katalog auf den neuesten Stand zu bringen.
-
- 3.9 Wie erhält man einen Zeiger auf das Fenster einer Konsole?
- ==============================================================
-
- Die folgende Funktion liefert den Window-Zeiger eines CON-Fensters.
- Sie kann unter allen Versionen des Amiga-OS ausgeführt werden.
-
- struct Window *getConWindowPtr(BPTR fh)
- {
- struct Window *w;
- struct FileHandle *cfh;
- struct StandardPacket *sp;
- struct InfoData *id;
- struct MsgPort *mp;
-
- w = NULL;
-
- if ((cfh = BADDR(fh))->fh_Type != NULL) {
- if (sp = AllocMem(sizeof (struct StandardPacket),
- MEMF_PUBLIC | MEMF_CLEAR)) {
- if (id = AllocMem(sizeof (struct InfoData),
- MEMF_PUBLIC | MEMF_CLEAR)) {
- if (mp = CreatePort(NULL, 0)) {
- sp->sp_Msg.mn_Node.ln_Name = (char *) &sp->sp_Pkt;
- sp->sp_Pkt.dp_Link = &sp->sp_Msg;
- sp->sp_Pkt.dp_Port = mp;
- sp->sp_Pkt.dp_Type = ACTION_DISK_INFO;
- sp->sp_Pkt.dp_Arg1 = MKBADDR(id);
-
- PutMsg(cfh->fh_Type, &sp->sp_Msg);
- (void) WaitPort(mp);
- (void) GetMsg(mp);
-
- if (sp->sp_Pkt.dp_Res1)
- w = (struct Window *) id->id_VolumeNode;
-
- DeletePort(mp);
- }
- FreeMem(id, sizeof (struct InfoData));
- }
- FreeMem(sp, sizeof (struct StandardPacket));
- }
- }
-
- return w;
- }
-
- Anmerkungen:
- * Auf ein CON-Fenster direkt zuzugreifen kann Konflikte mit Aktionen
- des CON-Handlers hervorrufen. Seien Sie vorsichtig!
-
- * Um den Window-Zeiger einer CLI-Konsole zu erhalten, übergibt man
- ein durch Open("*", MODE_OLDFILE) gewonnenes FileHandle an obige
- Funktion.
-
- * Das Ergebnis der obigen Funktion kann sehr wohl NULL sein, etwa im
- Falle eines AUX-Handlers oder falls ein AUTO-CON-Handler sein
- Fenster nicht öffnen kann.
-
- * Schickt man ein ACTION_DISK_INFO-Paket an einen AUTO-CON-Handler
- (2.0+), so verliert dessen Fenster seine speziellen
- AUTO-Eigenschaften (es kann also nicht mehr durch das Betätigen
- des Close-Gadgets geschlossen werden), weil der in id_VolumeNode
- gelieferte Window-Zeiger gültig bleiben muß.
-
- * Alles in allem: Verwenden Sie diese Funktion nicht. :-)
-
- Weitere Informationen finden Sie auf den Seiten 273, 276, 435, 463,
- 485 und 629 im "Amiga Guru Book" (siehe Dokumentation).
-
- Ralph Babel, rbabel@babylon.pfm-mainz.de
-
- 3.10 Was sind Pragmas?
- ======================
-
- Pragmas sind spezielle Anweisungen an den C-Compiler. Zwei Probleme
- entstehen bei der Verwendung von Pragmas:
- 1. Pragmas sind hochgradig compilerspezifisch. Nicht einmal die
- Amiga-Compiler haben dieselben Pragmas, selbst wenn damit das
- gleiche bewirkt wird.
-
- 2. Man kann sich nicht darauf verlassen, daß ein Compiler Pragmas
- ignoriert, die er nicht versteht. Dies gilt selbst dann, wenn man
- einen Ausdruck wie den folgenden verwendet:
- #ifndef MY_COMPILER
- #pragma DoAnything
- #endif
-
- Das letztere Problem läßt sich umgehen, indem man Pragmas wie folgt
- in eigene Include-Files setzt. (Das gleiche gilt übrigens auch für
- Präprozessor-Kommandos wie #asm (Aztec-C) oder #extern (C++).)
- #ifndef MY_COMPUTER
- #include <mypragmas.h>
- #endif
-
- Aber was machen Pragmas auf dem Amiga? Meistens werden sie verwendet,
- um dem Compiler mitzuteilen, wie gewisse Library-Funktionen aufgerufen
- werden. (Tatsächlich wird fast immer diese Verwendung gemeint, wenn
- Amiga-Besitzer über Pragmas sprechen.) Gewöhnliche C-Funktionen
- erwarten ihre Argumente auf dem Stack, Library-Funktionen dagegen in
- bestimmten Registern. Ferner erwarten sie den `Library-Base-Pointer' in
- Register a6. Betrachten wir eine Pragma-Anweisung von Aztec-C:
- #pragma amicall(SysBase,0xd2,FreeMem(a1,d0))
-
- Dies weist den Compiler an, das erste Argument in Register a1 und das
- zweite in d0 zu laden. Ferner wird der Inhalt der Variablen SysBase in
- Register a6 geladen. Maxon-Pragmas sehen genauso aus, Dice- und
- SAS-Pragmas sind allerdings etwas komplizierter:
- #pragma libcall SysBase FreeMem d2 0902
-
- Hier ist d2 (wie 0xd2 oben) der `Library-Vektor-Offset' (siehe
- nächstes Beispiel). Die letzte Ziffer ist die Zahl der Argumente, die
- davorstehende 0 ein Code für das Register mit dem Ergebnis und die
- davor stehenden Ziffern sind Codes für die Register mit den Argumenten
- in verkehrter Reihenfolge. (Die Codes bedeuten 0=d0, 1=d1, .., 8=a0,
- 9=a1, a=a2, ..)
-
- Ein Kommando wie `FreeMem(fib,sizeof(*fib);' würde ein Compiler nun
- in folgenden Code übersetzen:
- move.l _fib,a1
- move.l 260,d1 ; sizeof(struct FileInfoBlock)
- move.l _SysBase,a6
- jsr -0xd2(a6) ; 0xd2 = _LVOFreeMem
-
- FreeMem in dieser Art aufzurufen ist kürzer und schneller als
- zunächst die Argumente auf den Stack zu legen und dann eine Funktion
- _FreeMem aufzurufen, die letzten Endes doch nur dasselbe tun und die
- Argumente vom Stack in dieselben Register laden würde.
-
- Das Portierungsproblem der Pragmas umgeht man, indem man sie
- folgendermaßen in den eigenen Quelltext einbindet:
- /* Lade den Funktionsprototyp. Dieser ist nicht vom */
- /* verwendeten Compiler abhängig. */
- #include <clib/exec_protos.h>
-
- /* Pragmas sind vom Compiler abhängig, aber wenigstens */
- /* die Namen der Dateien mit Pragmas sind relativ */
- /* einheitlich. */
- #ifdef AZTEC_C
- #include <pragmas/exec_lib.h>
- #endif
- #if defined(__SASC) || defined(_DCC) || defined(__MAXON__)
- #include <pragmas/exec_pragmas.h>
- #endif
- #ifdef __GNUC__
- #include <inline/exec_lib.h>
- #endif
-
- Das obige Beispiel kann problemlos mit allen angegebenen Compilern
- verwendet werden und produziert optimalen Code.
-
- Eine abschließende Frage bleibt allerdings: Wie bekommt man die
- Pragmas? Die meisten Compiler haben bereits fertige Pragmas im
- Lieferumfang. Allerdings hilft das nicht, wenn man z.B. eine neue
- Library benutzen möchte oder nur die Pragmas einer veralteten Version
- hat. In diesem Fall kann man die Pragmas selbst aus den sogenannten
- `FD'-Files erzeugen. Dazu haben die meisten Compiler ein Utility
- namens `fd2pragma'. (Das NDU hat z.B. ein Directory namens FD, in dem
- die FD-Files aller Libraries und Devices des OS enthalten sind. siehe
- Include-Dateien) Es gibt auch ein frei kopierbares fd2pragma, das
- Pragmas für Aztec, Dice, SAS und Maxon sowie LVO-Files für den
- Aztec-Assembler und eventuelle Tag-Versionen produziert. (Aminet,
- `dev/misc/fd2pragma2_0.lha' oder auf den Fish-CDs)
-
- Für Pragmas unter dem gcc siehe Inline-Dateien.
-
- 3.11 Mein Compiler/Linker vermißt Symbole.
- ==========================================
-
- Zunächst sollte man sich versichern, daß die Funktion tatsächlich
- fehlt: Z.B. Floating-Point-Funktionen befinden sich in einer speziellen
- Link-Library, die erst mit der Option `-lm' eingebunden wird. Ferner
- kann es eine fehlende Variable sein: Wenn man z.B. ohne es zu bemerken
- eine Intuition-Funktion benutzt, dann wird der Linker über das Fehlen
- eines Symbols `IntuitionBase' klagen. In diesem Fall muß man also
- lediglich das Folgende irgendwo im globalen Teil seines Quelltextes
- einbauen:
- struct Library *IntuitionBase;
-
- (Und vergessen Sie nicht, die Library mit OpenLibrary() zu eröffnen und
- mit CloseLibrary() zu schließen!) :-)
-
- Allerdings könnte die Funktion natürlich tatsächlich fehlen. Wenn
- man zum Beispiel nur die Version 2.0 der amiga.lib hat, dann fehlen
- etwa die Locale-Funktionen oder die Memory-Pool-Funktionen, obwohl sie
- prinzipiell verwendbar sind. (1) Die einfachste (und beste) Lösung
- ist, das sogenannte NDU zu kaufen. Siehe Include-Dateien. Wer nicht
- solange warten möchte, für den ist die Frage, welche Art von Funktion
- in seiner Link-Library fehlt:
- * Einfache Amiga-Library-Funktionen (z.B. `exec/AllocPooled' oder
- `locale/OpenCatalogA') kann man mit Pragmas aufrufen und braucht
- dann lediglich Informationen über die Aufrufkonventionen
- (Library-Base, Library-Vektor-Offset und Argumentregister)
-
- * Tag-Funktionen sind meistens einfach Zwischenfunktionen, die ihre
- Argumente auf dem Stack erwarten und dann die eigentliche
- Library-Funktion aufrufen. Wenn man z.B. die Funktion
- `dos/AllocDosObject', die eine Konstante und einen Zeiger auf ein
- Array als Argumente erwartet, nach der obigen Methode konstruiert
- hat, dann hat man damit auch ihre Stack-Variante! Dazu erzeugt man
- einfach die folgende Funktion:
- #include <clib/dos_protos.h>
- #include <pragmas/dos_pragmas.h> /* Evtl. anderer Name */
-
- void *AllocDosObjectTags(ULONG objtype, Tag tag1, ...)
- { return(AllocDosObject(objtype, (struct TagItem *) &tag1);
- }
-
- Mit fd2pragma kann das auch automatisch geschehen. Siehe Pragmas.
-
- * Einige Funktionen bleiben aber noch übrig: Amiga.lib enthält
- nämlich auch Funktionen, die für sich selbst interessant sind,
- z.B. die BOOPSI-Funktionen (`DoMethod', `DoSuperMethod'), die
- Memory-Pool-Funktionen (`LibAllocPooled', `LibCreatePool', die
- Ersatz für entsprechende 3.0-Funktionen sind) oder `HookEntry',
- das sehr hilfreich bei der Programmierung von Hooks ist. Diese
- kann man nur durch entsprechende, disassemblierte und neu
- assemblierte oder compilierter Versionen ersetzen. Im
- AmigaFAQ-Archiv sind einige dieser Funktionen bereits enthalten.
-
- ---------- Footnotes ----------
-
- (1) Dieses Problem betrifft vor allem Besitzer von Aztec-C, das
- seither nicht weiter unterstützt wird und von Dice, der manchmal etwas
- unvollständig ist. Ich besitze beide ..
-
- 3.12 Wie erfahre ich, was für Funktionen es gibt?
- =================================================
-
- Wenn Sie sich über den Namen einer für einen bestimmten Zweck
- geeigneten Funktion im Unklaren sind, dann gibt es folgende
- Möglichkeiten:
- * In den Autodocs der verschiedenen Libraries findet man am Anfang
- eine alphabetisch sortierte Tabelle aller Funktionen, die die
- betreffende Library bietet. Im Hauptteil findet man dann eine
- detaillierte Spezifikation aller Funktionen. Siehe Include-Dateien.
-
- * Die `.FD'-Dateien bieten eine sehr kompakte Übersicht über die
- Funktionen der diversen Libraries, sogar mit einer kurzen Angabe
- der Funktionsargumente. Wenn man schon grob weiß, wonach man
- sucht (z.B. nur die grobe Angabe der Argumente benötigt), dann
- findet man hier alle gewünschten Informationen. Siehe Pragmas.
-
- Dr. Peter Kittel, peterk@cbmger.de.so.commodore.com
-
- 3.13 Der GNU C Compiler: Allgemeine Informationen und Installation
- ==================================================================
-
- Dieser Abschnitt enthält Informationen über den Amiga-Port des GNU
- C Compilers generell und die Installation insbesondere.
-
- 3.13.1 Aktuelle Version
- -----------------------
-
- Die aktuelle gcc-Version (im Folgenden als <gcc-aktuell> bezeichnet)
- ist 2.5.8. Die Version 2.6 ist in Arbeit und wird unter anderem eine
- neue Version der beliebten ixemul.library (die Unix-Systemaufrufe auf
- dem Amiga emuliert) sowie eine absolut neue C-Library enthalten, die
- die ixemul.library nicht mehr benötigt.
-
- 3.13.2 Hardwareanforderungen
- ----------------------------
-
- Jeder Amiga (vom A1000 bis zum A4000/40) ist prinzipiell in der
- Lage, die GNU-Utilities für AmigaDOS zu benutzen. Allerdings braucht
- man wenigstens 4MB RAM, um kleinere oder mittlere Projekte zu
- übersetzen, für größere (z.B. für gcc selbst) entsprechend mehr.
- Gigamem arbeitet mit gcc zusammen, es *könnte* also evtl. auch mit
- weniger gehen. Dazu braucht man aber eine MMU. Siehe 68EC0xx.
-
- Eine volle Installation mitsamt C++ und Objective-C, inline-Dateien
- und Commodore Includes (siehe Include-Dateien) benötigt ca. 20 MB
- Platz auf der Festplatte.
-
- Gcc arbeitet auch unter Kickstart 1.2/1.3, die volle Funktionalität
- ist aber erst ab Kickstart 2.x+ vorhanden. Eine schnelle CPU (z.B.
- 68030@25MHz oder besser) ist ebenfalls sinnvoll.
-
- 3.13.3 Wer hat es gemacht?
- --------------------------
-
- Gcc und damit zusammenhängende Software wurde von den folgenden
- Personen auf den Amiga portiert (siehe Hilfe):
- Gcc v2.2.2: Markus Wild
- Gcc v2.3.3: Markus Wild
- Gcc v2.4.5: Philippe Brand, Lars Hecking, Fred Fish
- Gcc v2.5.0 und später: Philippe Brand, Fred Fish, Leonard Norrgard
-
- Ixemul.library: Markus Wild, Leonard Norrgard, R. Luebbert
- Libnix: Matthias Fleischer, Gunther Nikl
- Gerlib: Gerhard Müller
-
- 3.13.4 Wo finde ich die gcc-Quelltexte?
- ---------------------------------------
-
- Alle gcc-Quelltexte und alle Binärdateien findet man auf:
-
- 1. Aminet (wuarchive.wustl.edu und Mirror wie ftp.luth.se) in
- /pub/aminet/dev/gcc (siehe FTP)
-
- 2. Ramses The Amiga Flying BBS:
- +33-1-60037015 HST Dual v32 terbo 4800-21600
- +33-1-60037713 SupraFax v32bis 4800-14400
- +33-1-60037716 Tornado v22bis 1200-2400
- in Topic `Development', Area `Gcc' (are 156).
-
- Den originalen GNU-Quelltext bekommt man
-
- 1. von denselben FTP-Servern wie die Binaries
-
- 2. gnu.prep.ai.mit.edu (18.71.0.38) in `/pub/gnu'
-
- 3. Ramses The Amiga Flying BBS in Topic
- `AmigaUnix/Unix/Linux/NetBSD', Area `Gnu Source Code'
-
- Diese Archive sollten alles Nötige enthalten, mit Ausnahme der
- Quelltexte der ixemul.library. Diese erhält man ebenfalls auf dem
- Aminet, Directory `dev/gcc'. (Zur Zeit ist die Version 40 der
- ixemul.library in Arbeit. Die Quelltexte werden am gleichen Ort sein.)
-
- Durch Richard Stallman, Free Software Foundation, ist festgelegt:
-
- "The GPL says that any distribution of binaries must contain either
- the source code or a written offer to supply source code (see the GPL
- for details of what is required)."
-
- Übersetzt: Die GPL (GNU General Public License) legt fest, daß jede
- Distribution entweder den Quelltext oder das schriftliche (oder
- geschriebene?) Angebot, diese zu liefern, enthalten muß. (Näheres
- siehe in der GPL.)
-
- 3.13.5 Inline-Dateien
- ---------------------
-
- Die Inline-Dateien für den gcc kann man aus den originalen
- FD-Dateien von Commodore wie folgt erzeugen (Siehe Include-Dateien,
- siehe Pragmas):
-
- CLI> Assign INCLUDE: GCC:os-include
- CLI> Assign FD: INCLUDE:fd
- CLI> Makedir INCLUDE:inline
- CLI> cd USR:bin/geninline
- CLI> gen31
-
- Dies sollte alle Inline-Dateien in `GCC:os-include/inline' erzeugen.
- Falls man die 2.0- bzw. 3.0-Includes besitzt, sollte man gen20 bzw.
- gen30 benutzen. Inline-Dateien für OS3.1 (rev 40.13) sind in
- <gcc-aktuell> enthalten. Siehe Aktuelle Version. (1)
-
- Auch mit dem Programm fd2inline kann man Inline-Dateien erzeugen:
-
- CLI> fd2inline <fd_file> <proto_file>
-
- ---------- Footnotes ----------
-
- (1) Perl Skripte haben Schwierigkeiten, die Include-Dateien von
- AmigaDOS korrekt zu behandeln. Hier wäre etwas freiwillige Arbeit
- nötig ...
-
- 3.13.6 Wie konvertiere ich die Amiga-Libraries für den gcc?
- -----------------------------------------------------------
-
- Linklibraries im Amigastil wie amiga.lib können von gcc nicht ohne
- weiteres verwendet werden. Man muß sie zunächst mit hunk2gcc, einem
- Programm von Markus Wild, übersetzen.
-
- Dazu braucht man zunächst eine aktuelle Kopie der amiga.lib (aus
- dem NDU, siehe Include-Dateien). Nachdem man sich ein Directory für
- die konvertierten Dateien erstellt hat, wechselt man mit cd in dieses
- Directory und gibt das Folgende ein:
- hunk2gcc amiga.lib [..further libs if you like..]
-
- Dies erzeugt ein Objektfile wie a.out für jedes einzelne Modul, das
- die Library enthält. Diese Module muß man anschließend in einer
- gcc-Library zusammenfassen:
- ar qc libamiga.a obj.*
- ranlib libamiga.a
-
- Das Programm ranlib fügt eine Symboltabelle in die Library ein.
- (Dadurch wird der Zugriff auf die Library sehr viel schneller.)
-
- Solange man keine reinen AmigaDOS-Funktionen verwendet, kann man
- auch eine Pseudo-Library erzeugen:
- cat "int dummy;" >dummy.c
- gcc -c dummy.c
- ar crv libamiga.a dummy.o
- mv libamiga.a gcc:lib
-
- 3.13.7 Wie installiere ich den gcc?
- -----------------------------------
-
- Zunächst eine wichtige Bemerkung von Philippe Brand: Die meist
- gestellte Frage im Zusammenhang mit gcc-2.5.8 ist
-
- "Warum kann ich keine C++-Programme übersetzen?"
-
- Das liegt daran, daß ich einen Fehler bei der gcc-Distribution
- gemacht habe. Anstelle der 2.5.8-Versionen der C++- und
- Objective-C-Compiler habe ich die Version 2.5.7 verwendet. Um dies zu
- beheben, gibt es zwei Möglichkeiten:
- * `lib/gcc-lib/amigados/2.5.7' umbenennen in
- `lib/gcc-lib/amigados/2.5.8'
-
- * Die Datei `dev/gcc/gcc258ud.lha' von Aminet laden. Diese enthält
- die korrekten Versionen. Auf dem Aminet befindet sich auch die
- Datei `dev/gcc/gcc258ud1.lha', die einige korrigierte Libraries,
- Includes usw. enthält ...
-
- Und vergessen Sie nicht, die Datei `gcc258-readme.lha' ebenfalls von
- Aminet zu kopieren.
-
- 1. Falls dies die erste gcc-Installation ist:
-
- CLI> cd Disk_mit_viel_freiem_Platz:
- CLI> lha x gcc258-x.lha
-
- Dabei steht x für die Zahlen 1 bis 4, evtl. auch 5 bis 6, falls
- Sie auch die Quelltexte installieren wollen.
-
- Von der Workbench aus wird nun das Programm GCC-Install gestartet.
- Dies ist das von Vielen gewünschte Installer-Skript für den gcc.
- Man muss also nur die Archivdateien entpacken, der Rest (Erzeugen
- von Umgebungsvariablen, Assigns, Kopieren der Shared-Libraries
- usw.) wird vom Installationsskript erledigt.
-
- Bei dieser Gelegenheit:
-
- Installer and Installer project icon (C) Copyright 1991-93
- Commodore-Amiga, Inc. All Rights Reserved. Reproduced and
- distributed under license from Commodore.
-
- 2. Falls bereits eine ältere gcc-Version vorhanden ist: Löschen Sie
- einfach das alte gcc-Directory und führen Sie dann eine
- Neuinstallation durch. Es hat sich zu viel geändert. (Ein Backup
- vorher ist aber sicher keine schlechte Idee.)
-
- Bitte verwenden Sie *unbedingt* die ixemul.library in der Revision
- 45 und nicht die Revision 47! Letztere ignoriert `ENV:'.
-
- Um gcc zu verwenden, brauchen Sie einen Stack von wenigstens 50000
- Bytes. Dies sollte für die meisten Anwendungen ausreichen. Wollen Sie
- allerdings gcc selbst übersetzen, dann sollten Sie wenigstens 250000
- Bytes rechnen, für noch komplexere Dinge entsprechend mehr. Auch ar
- und ranlib brauchen einen großen Stack, wenigstens 200000 bis 300000
- Bytes, abhängig von der Größe der Library.
-
- 3.13.8 Wichtige Informationsquellen
- -----------------------------------
-
- Der aktuelle Betreuer des Amiga-Ports von gcc ist:
- Philippe BRAND
- Fidonet: Ramses The Amiga Flying BBS 2:320/104.21
- Email: phb@colombo.telesys-innov.fr (ONLY for personnal email).
- Ftp: colombo.telesys-innov.fr:/pub/amigados-gnu
- or /pub/incoming/uploads for uploads.
-
- Es gibt auch eine Mail-Liste in Finnland. Siehe Mail-Listen.
- Philippe Brand wird im Normalfall Fragen an diese Liste weiterleiten.
-
- 4 Anwendungen
- *************
-
- Dieses Kapitel enthält Informationen zu verschiedenen
- Anwendungsbereichen.
-
- 4.1 Text-Editoren
- =================
-
- Editoren sind Programme, die die Eingabe von unformatiertem Text
- ermöglichen. Dies ist meist Text, der anschließend durch den
- Computer verarbeitet wird. Programmierer benutzen etwa Editoren zur
- Eingabe der Quelltexte. Unter Unix beginnt Textverarbeitung meist mit
- einem Editor, dessen Ausgabe dann mit einer Textbearbeitungssprache
- (z.B. TeX) in gutaussehende Dokumente umgewandelt wird, da unter Unix
- Textverarbeitungsprogramme kaum verbreitet sind.
-
- *Kommerzielle Produkte*
- CygnusEd Professional und TurboText scheinen hier die Nase vorn zu
- haben. Auf den Fish-Disks gibt es Dutzende von
- Shareware-Editoren. Eine Demoversion von TurboText ist auf
- Fish-Disk 445 und eine allerdings sehr alte von CygnusEd auf
- Fish-Disk 95. Die folgenden Editoren sind frei kopierbar.
-
- *Emacs*
- Gnu Emacs (Aminet, Directory `util/gnu') kommt von Unix und ist
- möglicherweise der König der Editoren. Er ist riesig (über 1MB),
- enthält eine unglaubliche Vielfalt von Funktionen (z.B. ein
- eigenes Fenstersystem und sogar ein Spiel :-) ) und beliebig
- erweiterbar: Emacs enthält einen eigenen Lisp-Interpreter!
- Andererseits ist er dadurch schwer erlernbar und so beliebig
- konfigurierbar, daß man mit dem Emacs eines anderen oft nicht
- mehr umgehen kann...
-
- *Vi*
- Einfacher, aber weniger konfigurierbar und nicht erweiterbar ist
- Vi. Er ist vor allem bei Unix-Benutzern beliebt, weil es ihn auf
- *jeder* Unix-Maschine gibt. Die Wahl zwischen beiden ist eine
- Sache der persönlichen Vorliebe, kann einen allerdings fürs
- Leben kennzeichnen. Vim und Stevie (Fish-Disk 591 bzw. 256 und
- Aminet, Directory `util/edit') sind Vi-Versionen für den Amiga.
-
- *DME*
- Viele Amiga-Programmierer mögen DME. Er ist schnell und voll
- konfigurierbar: Menüs und Tastenbelegung sind beliebig. Er ist
- auch leichter erlernbar als Emacs und Vi. Es gibt drei
- verschiedene Versionen: AmokEd, DME und XDME. Die Wahl ist
- Geschmacksache. (Oberon- und Modula-Programmierer bevorzugen
- häufig den AmokEd, weil der in Oberon geschrieben ist und die
- Fehlermeldungen von AmigaOberon direkt anzeigen kann,
- C-Programmierer dagegen stehen öfter auf letzterem.) Quellen:
- Aminet, Directory `util/edit', Fish-Disk 776 (XDME) und 749
- (AmokEd), AMOK 90.
-
- 4.2 Was für Textverarbeitungsprogramme gibt es?
- ===============================================
-
- Textverarbeitungsprogramme benötigt man, um Briefe, Artikel oder
- ähnliches zu schreiben. Dies ist natürlich eine der wichtigsten
- Anwendungen eines Computers und eine für Sie geeignete Wahl bestimmt
- häufig, wie gut Sie mit Ihrem Computer überhaupt zurechtkommen.
- Textverarbeitungsprogramme besitzen teilweise Fähigkeiten, die sie
- sogar für DTP (siehe DTP) geeignet machen. Für einfacher
- strukturierte Texte, etwa Quelltexte benützt man allerdings meist
- besser einen Editor. Siehe Editoren.
-
- Man unterscheidet Wysiwyg-Programme (What you see is what you get)
- und Seitenbearbeitungssprachen. Wysiwyg-Programme sollten schnell,
- komfortabel und einfach erlernbar sein. Die meisten Anwender ziehen sie
- vor. Die Alternative funktioniert ähnlich wie ein Compiler: Man
- verarbeitet Text-Dateien mit einem Programm, das das Layout übernimmt
- und eine weitere Datei erzeugt, die dann auf dem Bildschirm angezeigt
- oder auf einem Drucker ausgegeben werden kann. LaTeX ist eines dieser
- Programme. Siehe TeX. Lout ist ein weiteres solches Programm,
- schneller und einfacher als LaTeX und mit vollständiger Dokumentation
- versehen, aber natürlich wesentlich weniger verbreitet. Lout erzeugt
- PostScript-Dateien. (Ob dies ein Vor- oder Nachteil ist, muß jeder
- selbst beurteilen. ;-) ) Siehe PostScript. Beide Programme sind frei
- kopierbar.
-
- Wysiwyg-Programme gibt es viele, allerdings alle kommerziell: Final
- Copy II, Wordworth, Word Perfect, AmiWrite, Beckertext II, Maxon Word
- und viele andere. Zur Wahl kann ich nur eines sagen: Lassen Sie sich
- viel Zeit bei der Auswahl.
-
- 4.3 Desktop Publishing
- ======================
-
- Die Stärke dieser Programme ist die beliebige Anordnung und
- Gestaltung von Text- oder Grafikelementen. Bei Textverarbeitungen sind
- diese Fähigkeiten meist unterentwickelt. Umgekehrt fehlen
- DTP-Programmen häufig wichtige Funktionen zur Manipulation des Textes
- selbst. Allerdings kommen die besten Textverarbeitungen sicher nahe an
- den DTP Bereich (etwa Microsoft Word auf dem Mac oder PC) und umgekehrt
- ist Framemaker (UNIX, Mac, DOS) ein Beispiel eines DTP-Programms, das
- die wichtigsten Textverarbeitungsfunktionen enthält. Auf dem Amiga
- gibt es leider weder in der einen noch in der anderen Richtung
- hervorragende Beispiele, wenn auch die wichtigsten Textverarbeitungen
- schon einiges leisten. Wenn man nicht gerade regelmäßig kleinere
- Zeitungen herausbringt, dann wird in den meisten Fällen ein
- Textverarbeitungsprogramm genügen. Und wer umgekehrt komplexere
- Funktionen wie mathematische Formeln, umfangreiche Indexe und
- Referenztabellen benötigt, der wird womöglich auf eine
- Seitenbearbeitungssprache angewiesen sein. Siehe Textverarbeitungen.
-
- Es gibt derzeit nur kommerzielle DTP-Systeme, vor allem ProPage und
- PageStream, die in den letzten Jahren wohl gegenseitig Hase und Igel
- miteinander gespielt haben. Derzeit scheint PageStream 3.0 vorne zu
- liegen. Beide Programme liegen im Preis um 300$, in den USA gibt es
- wohl auch Studentenermäßigung (um 40%). Eine ausführlichere
- Beschreibung wäre willkommen.
-
- 4.4 Was ist TeX und wo bekomme ich es?
- ======================================
-
- TeX ist eines der mächtigsten Textverarbeitungssysteme, die es gibt.
- Es kann praktisch beliebige mathematische Formeln ebenso darstellen wie
- komplexe Tabellen, Funktionen plotten (mit Hilfsprogrammen), Indexe oder
- Inhaltsverzeichnisse erzeugen und viele andere Dinge. Sein größter
- Vorteil ist, daß es frei kopierbar ist (TeX selbst, nicht unbedingt die
- Drucker- und Bildschirmtreiber) und sich dadurch auf der ganzen Welt und
- auf praktisch jeder Computerfamilie verbreitet hat. Sein größter
- Nachteil ist, daß es sehr unhandlich und schwer zu erlernen ist (Es
- arbeitet ähnlich wie ein Compiler) und keinerlei Wysiwyg-Fähigkeiten
- hat. Aber viele Leute mögen es. (Dieser Text ist übrigens mit TeX
- erstellt worden. 8-) ) Siehe Textverarbeitungen.
-
- Es gibt im wesentlichen zwei Implementationen auf dem Amiga.
- Amiga-TeX von Thomas Rockicki und Radical Eye Software ist kommerziell
- und kostet etwa 200-300$. Es soll wirklich exzellent sein und seine
- Besitzer schwören darauf.
-
- Ich persönlich empfehle PasTeX, eine frei kopierbare Version. Es
- gibt immer wieder Leute, die über Installationsprobleme klagen
- (besonders, was das Laden und die automatische Erzeugung von Fonts
- angeht), aber ich kenne niemanden, der unzufrieden ist, nachdem es erst
- einmal installiert ist. (Ein Freund mit TeX-Kenntnissen kann enorm
- hilfreich sein.) Wenn man sich an die Vorgaben des Installationsskripts
- hält, sollte es eigentlich keine Probleme geben. Wesentlich ist
- allerdings, daß man alles Nötige installiert und dazu braucht man:
- * 5 Disketten mit dem eigentlichen TeX-Compiler
-
- * 2 Disketten mit MetaFont
-
- * Nichts weiter Viele Leute fragen nach Fonts. Diese sind Teil des
- MetaFont-Paketes und werden automatisch erzeugt, wenn sie gebraucht
- werden, vorausgesetzt natürlich, daß TeX so wie in der Dokumentation
- beschrieben installiert ist. (Das Erzeugen der Fonts kann am Anfang
- natürlich dauern, bis die wichtigsten erst mal da sind.) Bitte
- beachten Sie, daß die PasTeX-Disketten mit Zoom gepackt sind. (siehe
- Endungen) PasTeX bekommt man per FTP z.B. bei `ftp.uni-passau.de' im
- Directory `/pub/amiga/tex/PasTeX1.3' und durch die Fish-CDs.
-
- 4.5 Gibt es PostScript-Interpreter auf dem Amiga?
- =================================================
-
- PostScript ist eine Programmiersprache für das Ausdrucken von
- ganzen Seiten. Apple hat PostScript populär gemacht, indem sie es in
- ihre Drucker eingebaut haben. Inzwischen gibt es viele Programme, die
- ihre Ausdrucke als PostScript-Quelltexte machen können. Bis vor kurzem
- brauchte man für PostScript einen relativ teuren Laserdrucker.
- Inzwischen gibt es aber auch Programme, die PostScript-Dateien auf
- anderen Druckern ausgeben können.
-
- Einer der Vorteile von PostScript ist, daß es unabhängig von der
- gewählten Auflösung ist. Man kann also die Vorteile der möglichen
- Auflösung auf dem Drucker ausnutzen und trotzdem dieselbe Datei auf
- dem Bildschirm mit seiner meist schlechteren Auflösung darstellen.
-
- Es gibt zwei frei kopierbare PostScript-Interpreter, Post und
- GhostScript. Post ist eine shared-Library mit Programmen zur Ausgabe
- auf Drucker und Bildschirm. Man kann damit beispielsweise in AmigaTeX
- PostScript-Dateien als Bilder in TeX-Dateien einbauen. Siehe TeX.
- GhostScript besteht ebenfalls aus zwei Programmen, GhostScript selbst
- (der eigentliche Interpreter) und GhostView, der Benutzeroberfläche.
- Quellen: Aminet (Directories `text/print' und `text/dtp'), Fish Disk
- 669.
-
- 5 Grafik
- ********
-
- Grafik ist eine der Stärken des Amiga. Warum hat es hier so wenig
- Fragen und Antworten?
-
- 5.1 Was heißt Chunky- und Planar-Display?
- =========================================
-
- Einfach gesagt stehen die Bezeichnungen `chunky' und `planar'
- (Kürzel für `bitplanar') für verschiedene Arten, graphische Daten im
- RAM des Computers zu speichern. Sie sind einfach zu verstehen, aber
- vielleicht etwas schwierig zu erklären.
-
- Die Anzeige eines Computers besteht aus einem Netz von Pixeln. Jedes
- Pixel kann man sich als eine Zahl denken, die für die Farbnummer des
- Pixels steht. Hier ist zum Beispiel eine ganz einfache Anzeige mit 4
- Farben:
-
- 00302132
-
- Der Amiga speichert dies im `bitplanaren' Modus, d.h. es werden
- verschiedene sogenannte Bitplanes verwendet, in denen zu jedem Pixel
- genau ein Bit gehört. Für eine Zahl zwischen 0 und 3 brauchen wir 2
- Bits, also auch zwei Bitplanes, die dann so aussehen:
-
- 00100110 Dies ist Bitplane 0
- 00101011 Dies ist Bitplane 1
- -------- Nun addieren wir sie, wobei wir die zweite mit 2
- 00302132 multiplizieren
-
- Das ist also die gewünschte Grafik. Nun gäbe es aber natürlich
- auch eine andere Möglichkeit: Wir könnten die jeweils 2 Bits direkt
- hintereinander anordnen in sogenannten Chunks:
-
- 00 00 11 00 01 10 11 01 = 00302132
-
- Dies ist das Prinzip des Chunky-Modus. Man kann im allgemeinen kaum
- sagen, daß eine dieser beiden Methoden besser oder schlechter ist.
- Allerdings haben natürlich beide ihre Vor- und Nachteile:
-
- Zunächst hat vielleicht jeder schon einmal gesehen, daß auf dem
- Amiga beim Scrollen von farbigem Text ein gewisses Flackern entsteht.
- Genauer gesagt ändern sich kurz die Farben. Was dabei passiert, ist,
- daß der Computer Bitplanes verschiebt, gleichzeitig aber dieselben
- Daten für die Anzeige verwendet werden. Wenn etwa gerade Bitplane 0
- verschoben wurde, aber Bitplane 1 noch nicht verschoben ist, so hätten
- wir kurzfristig im obigen Beispiel die folgende Anzeige:
- 01001100 Dies ist Bitplane 0 (nach links verschoben)
- 00101011 Dies ist Bitplane 1
- -------- Nun addieren wir sie wieder
- 01203122
- Sobald die zweite Bitplane ebenfalls verschoben ist, stimmt wieder
- alles, aber kurzfristig entsteht dabei eben jenes Flackern. Bei einer
- Chunky-Anzeige dagegen wäre eben nur ein Teil des Bildschirms schon
- verschoben und ein anderer Teil noch nicht.
-
- Umgekehrt ist es im Chunky-Modus schlecht möglich, mit beliebiger
- Anzahl von Farben zu arbeiten: Da ein Byte 8 Bits hat, gehören etwa
- bei 4 Farben zu jedem Byte 4 Pixel. Man muß also stets erst berechnen
- an welcher Stelle des Bytes die Informationen zu einem bestimmten Pixel
- sitzen. Das ist aufwendig. Noch schlimmer wird die Sache bei 8 Farben:
- Da beginnen die Pixel noch nicht mal an der gleichen Stelle. Das ist
- sehr umständlich und rechenzeitaufwendig. In der Praxis gibt es daher
- Chunky-Anzeigen nur im 8-Bit-Modus (256 Farben) und im 24-Bit-Modus (16
- Millionen Farben). Es ist allerdings möglich, daß die Anwender da gar
- nicht so unglücklich darüber sind...
-
- 5.2 Was ist Doublebuffering?
- ============================
-
- Bei animierter Grafik entsteht das Problem, daß gleichzeitig die
- Daten verändert und angezeigt werden. Dabei kommt es dann unweigerlich
- zu einem gewissen Flackern. (siehe Chunky vs. Planar)
-
- Die Lösung des Problems ist es, quasi zwei Bildschirme zu benutzen:
- Der eine wird immer angezeigt. Gleichzeitig wird auf dem anderen
- Bildschirm, der nicht angezeigt wird, das neue Bild gezeichnet. Es gibt
- kein Flackern, da die Grafik-Hardware nur auf das RAM des ersten
- Bildschirms zugreift und der Prozessor nur auf das des zweiten. Dann
- wird umgeschaltet und der zweite Bildschirm angezeigt. Auf dem ersten
- kann jetzt gezeichnet werden.
-
- 5.3 Was für Monitore arbeiten am Amiga 1200 oder 4000?
- ======================================================
-
- Monitore kann man klassifizieren nach der horizontalen Frequenz, die
- sie für ihre Anzeige benötigen. Fernseher und Commodore's 1084
- benötigen z.B. etwa 15 kHz, VGA und SVGA benötigen mindestens etwa 30
- kHz. Multisync-Monitore können verschiedene Frequenzen darstellen.
-
- Man kann also jeden dieser Monitore am A1200 verwenden, *aber*:
-
- - Mit einem gewöhnlichen VGA/SVGA-Monitor kann man nur einige
- Anzeige-Modi (DblPal, DblNTSC und/oder Productivity, d.h.
- (320|640) x (256|512|1024) Pixel) verwenden. Dies ist großartig
- für die Workbench und die meisten ernsthaften Anwendungen, aber
- manche grafikorientierten Programme, vor allem Spiele laufen fast
- sicher nicht: Sie benutzen nämlich die Preferences nicht,
- übernehmen statt dessen einfach die Maschine und gehen von einem
- 15 kHz Monitor aus. Ferner kann man das Bootmenü nicht verwenden:
- Das arbeitet nämlich ebenfalls nur mit 15 kHz. Schließlich haben
- VGA-Monitore keine Lautsprecher und die VGA-artigen Modi
- unterstützen keine Genlocks.
-
- - Das größte Problem eines 15 kHz-Monitors ist das ständige
- Flickern im Interlace-Modus. Ein kleiner Tip ist hier die
- Verwendung von NTSC anstelle von PAL. Dies erhöht die
- Refresh-Rate von 25 Hz auf 30 Hz, kostet allerdings einige
- darstellbare Zeilen. (Maximal möglich sind 482.) Die NTSC- und
- PAL-Modi sind aber nicht so schlecht, wie die Leute denken: Bei
- einem Monitor mit viel Phosphor (der also lange nachglüht) ist
- PAL-Laced einigermaßen akzeptabel und gibt eine Auflösung von
- 1448x566 in SuperHiRes. Mehr ist auf keinem AGA-Amiga möglich.
-
- - Die beste Lösung sind die Multisync-Monitore, vorausgesetzt sie
- unterützen die Bereiche von 15-31 kHz Horizontal- und 50-72
- Vertikalfrequenz. Die neuen 1940- und 1942-Monitore von Commodore
- sind nicht schlecht, allerdings etwas umständlich zu handhaben:
- Bei jedem Umschalten des Anzeige-Modus muß man nämlich auch die
- horizontale/vertikale Größe und den Offset von Hand einstellen.
- (1) Geeignet sind z.B. auch der Mitsubishi EUM 1491 oder der EIZO
- 9060S.
-
- Für einen VGA/SVGA- oder Multisync-Monitor braucht man ein Kabel,
- das etwa 30 DM kostet.
-
- ---------- Footnotes ----------
-
- (1) Es gibt einen Patch, der dies auch ohne manuelle Eingriffe
- möglich macht. Siehe `os30/util/Monitor30Patch.lha' auf dem Aminet.
-
- 6 Emulationen
- *************
-
- Was? Der Amiga ist nicht gut genug? Sie wollen noch eine andere
- Maschine? Also gut, dann schauen Sie hier...
-
- 6.1 Kann ich meinen Amiga unter Unix benutzen?
- ==============================================
-
- Es gibt derzeit drei Unix-Versionen für den Amiga. Alle benötigen
- mindestens einen 68030 wegen der MMU (siehe 68EC0xx),
- 68040-Unterstützung ist erst in Arbeit. Alle scheinen Probleme mit
- manchen Harddisk-Controllern zu haben, man sollte sich deshalb anhand
- der Dokumentation informieren, ob sie auf der eigenen Maschine
- überhaupt laufen. Unix benötigt natürlich eine ungeheure Menge von
- Resourcen, 8Mb RAM und eine 150Mb-Partition für Unix dürften eher die
- Untergrenze sein.
-
- 1. Commodore hat in der Vergangenheit ein System-V-Unix angeboten. Es
- enthielt TCP/IP, X11 und andere Software und hat eigentlich einen
- guten Eindruck gemacht, aber war teuer und wird vor allem nicht
- mehr weiterentwickelt. Commodore-Unix benötigt einen Streamer,
- denn es wird auf solchen Bändern ausgeliefert.
-
- 2. Ein Linux-Port wird vorbereitet, allerdings gibt es derzeit nur den
- Kernel, das heißt die untersten Funktionen des Betriebssystems.
- Für Spezialisten könnte es interessant sein, kann aber wohl
- nicht empfohlen werden. Linux ist frei kopierbar. Quellen:
- `ftp.uni-paderborn.de' oder `ftp.uni-erlangen.de', beide Directory
- `/pub/Linux/MIRROR.tsx-11/680x0'.
-
- 3. NetBSD ist ebenfalls frei kopierbar. Wie Linux ist es noch nicht
- fertig, aber macht derzeit gute Fortschritte. Beispielsweise
- läuft wohl schon die meiste GNU-Software, vor allem Emacs und gcc.
- Es ist auf jeden Fall einen Blick wert. Quellen:
- `ftp.uni-erlangen.de', Directory
- `/pub/amiga/unix/NetBSD-regensburg'. Siehe Fish-CD.
-
- 6.2 Ist es möglich, den Amiga als X11-Terminal zu benutzen?
- ===========================================================
-
- Es gibt zwei Softwarepakete, die das möglich machen:
-
- GfxBase bietet ein kommerzielles Paket an. Es enthält verschiedene
- Window-Manager und Clients. Eine Demo-Version ist auf dem Aminet.
- (`gfx/x11/GfxBase-X11-Demo.lha')
-
- Frei kopierbar ist DaggeX. Allerdings ist dieses möglicherweise noch
- nicht ganz fertig, zumindest wird die Versionsnummer mit 0.91 angegeben.
- Zu finden ist es ebenfalls auf dem Aminet. (`gfx/x11/DaggeX-0.91.lha'
- und `gfx/x11/twm_930531.lha')
-
- 6.3 Wie kann ich MS-Dos-Programme starten?
- ==========================================
-
- PC-Task ist ein softwaremäßiger IBM-Emulator für alle
- Amiga-Rechner. Die momentane Version 2.03 bietet die Emulation von
- 8086 mit MDA/CGA/EGA/VGA, seriellem und parallelem Port, Maus, zwei
- Festplatten und zwei Diskettenlaufwerke. Eine Demoversion liegt auf
- dem Aminet in `/pub/aminet/misc/emu/PCTaskDemo203a.lzh'. Chris Hames
- (bytey@melbourne.dialix.oz.au) (pctask@quasar.dialix.oz.au)
-
- 7 Verschiedenes
- ***************
-
- Dieses Kapitel enthält Dinge, die nicht in die anderen passen.
-
- 7.1 Gibt es eine Unix-Version von LhA?
- ======================================
-
- Ja. Siehe Endungen.
-
- 7.2 Was sind Dateien, die mit ... enden?
- ========================================
-
- Die meisten dieser Endungen besagen, daß die betreffende Datei
- komprimiert (gepackt) ist oder ein Archiv aus mehreren Dateien ist oder
- beides. (Einige Programme können sogar ganze Disketten archivieren.)
- Übliche Endungen und die dazugehörigen Programme sind:
- *.sfx*
- Gepackte Archive, die in ein ausführbares Programm eingebunden
- sind; dieses wird einfach aufgerufen, um sich selbst zu entpacken.
- (sfx = self extract)
-
- *.lha*
- *.lzh*
- Gepackte Archive; empfohlen: LhA (`util/arc/LhA_e138.run' auf
- Aminet oder Fish-Disk 715) oder Lx (`util/arc/lx100.lha' auf
- Aminet), es gibt auch eine Unix-Version
- (`misc/unix/lha-1.00.tar.Z')
-
- *.dms*
- Mit DMS komprimierte Disketten; Quellen: Aminet
- (`util/arc/dms111.sfx') oder Fish-Disk 406
-
- *.zom*
- Mit Zoom komprimierte Disketten; Quellen: Aminet
- (`util/arc/Zoom_5.4.lha' oder Fish-Disk 682); eine ältere Version
- findet man auf Fish-Disk 459, diese ist möglicherweise für das
- Entpacken von PasTeX nötig
-
- *.zoo*
- Komprimierte Archive; empfohlen: Zoo (`util/arc/zpp2-10.lzh' auf
- Aminet oder Fish-Disk 527)
-
- *.Z*
- *.z*
- *.gz*
- Komprimierte Dateien; empfohlen: Gzip (`util/pack/gzip124x.lha'
- auf dem Aminet). diese Dateien sind meist Unix-Dateien
-
- *.tar*
- Acrhive; empfohlen: tar (`util/arc/tar.lha' oder
- `util/arc/gtar10.lha' auf Aminet oder Fish-Disk 445), ebenfalls
- meist Unix-Dateien. Man findet häufig `.tar.Z' oder `.tar.gz'.
-
- *.arj*
- Komprimierte Archive; empfohlen unarj (`util/arc/unarj-0.5.lha' auf
- Aminet)
-
- *.zip*
- Komprimierte Archive; empfohlen UnZip (`util/arc/unzip-5.1.lha' auf
- Aminet). Dies sind meist MS-Dos-Archive.
-
- 7.3 Gibt es ein Programm wie Stacker, um die Hard-Disk zu packen?
- =================================================================
-
- XFH ist eine gute Möglichkeit. Es arbeitet als Handler und benützt
- die XPK-Libraries, man kann also zwischen verschiedenen (und in Zukunft
- vielleicht noch weiteren) Komprimiermodi wählen. (`NUKE' ist eine gute
- Wahl. Der einzige Nachteil ist, daß die Größe von Dateien durch das
- verfügbare RAM beschränkt ist, unter 2MBytes RAM kann man Probleme
- bekommen.)
-
- Eine andere Möglichkeit ist EPU. Es ist Shareware und sollte
- dasselbe wie XFH bieten und außerdem ohne die Probleme mit der
- Dateigröße.
-
- Quellen: Aminet, Directory `util/pack' und Fish-Disk 754 (XFH) sowie
- 858 (EPU).
-
- 7.4 Wo bekomme ich Fish-Disk xxx?
- =================================
-
- Einige FTP-Server haben genügend Platz oder ein CD-Rom gemounted und
- haben alle Fish-Disks online verfügbar:
- ftp.isca.uiowa.edu (USA, directory `/amiga/fx/fxxx')
- ftp.hawaii.edu (USA, directory `/pub/amiga/fish')
- ftp.dfv.rwth-aachen.de (Germany, directory `/pub/amiga/fish')
- ftp.funet.fi (Finland, directory `/pub/amiga/fish')
- Beachten Sie bitte, daß die CD-Roms nicht immer gemounted sind.
- Siehe FTP.
-
- Eine andere Möglichkeit wäre, Ihren örtlichen PD-Händler zu
- fragen. :-)
-
- 7.5 Wie füllt man die Tintenkartuschen der HPDeskjet-Drucker nach?
- ==================================================================
-
- Dies ist eigentlich keine Amiga-spezifische Frage, taucht aber in den
- Amiga-Newsgruppen so hartnäckig und regelmäßig auf, daß sie auch in
- dieser FAQ beantwortet wird.
-
- Die Drucker der Deskjet-Serie von HP besitzen einen in den Druckkopf
- integrierten Tinten-Vorratsbehälter. Wenn dieser Behälter leer ist,
- muß normalerweise der komplette Druckkopf ausgetauscht werden. Doch es
- geht auch billiger: Man kann den Tintenbehälter mit etwas Übung
- problemlos mehrfach nachfüllen.
-
- Man benötigt dazu eine Einwegspritze mit passender Nadel, etwas
- schwarze Füllfederhalter-Tinte (z.B. Pelikan 4001) sowie Isopropanol
- (a.k.a. Isopropylalkohol, erhältlich in jeder gutsortierten Apotheke).
-
- Als erstes gibt man in das neu gekaufte Tintenfäßchen einige
- Tropfen Isopropanol (ca. 0,5-1,0 ml pro 30 ml Tinte). Für eine
- Füllung des Druckkopfes zieht man dann etwa 10-15 ml der Tintenmischung
- in die Spritze, sticht mit der Nadel in die Öffnung im oberen
- (grünen) Teil des Druckkopfs und spritzt dann die Tinte langsam und
- vorsichtig in den Druckkopf. Achten Sie darauf, daß Sie die Nadel
- nicht ganz "bis zum Anschlag" einstechen, während des Einspritzens
- muß die verdrängte Luft noch durch die Öffnung entweichen können,
- sonst tritt die Tinte eventuell durch die Düsen am unteren Ende des
- Druckkopfs aus.
-
- Die Dosierung des Isopropanols ist etwas kitzlig; zuviel fördert
- das Verlaufen der Tinte auf dem Papier und führt zu einem unsauberen
- Schriftbild, zuwenig führt eventuell zu verstopften Düsen am
- Druckkopf.
-
- Es gibt mittlerweile von verschiedenen Herstellern auch sogenannte
- Nachfüllkits, die passende Spritzen und fertig vorbereitete
- Tintenmischungen enthalten. Preislich liegen diese "Fertiglösungen"
- etwa in der Mitte zwischen der Füllertinte und einem neuen Druckkopf.
-
- Die neuen Spezialdruckköpfe mit doppeltem Volumen lassen sich
- übrigens angeblich nicht mehr nachfüllen - es wäre schön, wenn das
- jemand mal aus eigener Erfahrung bestätigen oder verneinen könnte...?
-
- Jürgen Weinelt, jow@rz.uni-wuerzburg.de
-
- 7.6 Was ist MUI und wo bekomme ich es?
- ======================================
-
- MUI besteht aus einer Reihe von shared-Libraries, die eine sehr
- komfortable graphische Benutzeroberfläche (GUI = graphical user
- interface) ermöglichen. Die generelle Idee von MUI ist es, den
- Programmierer nur die logische Struktur des GUI festlegen zu lassen.
- Das konkrete Aussehen (Fonts, Fenstergroesse, Fenster auf Workbench,
- eigenem oder öffentlichem Screen usw.) wird durch den Benutzer
- bestimmt. Für den Programmierer ist MUI erheblich einfacher und
- umfangreicher als die `gadtools.library'. Andererseits sind mit MUI
- erzeugte GUI's langsamer als die mit der gadtools.library erzeugten,
- vor allem auf alten 68000er-Maschinen.
-
- MUI besteht aus zwei Archiven, eines für Programmierer und eines
- für normale Benutzer. Quellen: Aminet, `dev/misc'.
-
- 8 Software-Quellen und andere Informationen?
- ********************************************
-
- Drei Fragen entstehen in diesem Zusammenhang: Was für Programme
- gibt es überhaupt, wo und wie bekomme ich sie und wie kann ich sie
- dann nach Hause bringen?
-
- 8.1 Dateien und Datenbanken zur frei kopierbaren Software
- =========================================================
-
- Natürlich muß man wissen, wo man welche Software überhaupt findet.
- Viele wichtige Dinge sind bereits angegeben worden, wie ich hoffe.
- Weitere Informationen liefern:
-
- *AmigaSciUnixSchool*
- ist eine Software-Liste im Ascii-Format. Sie wird monatlich in den
- Newsgroups `comp.sys.amiga.applications', `comp.unix.amiga' und
- `news.answers' gepostet. (Aminet:
- `text/doc/AmigaSciUnixSchool-4.01'). Sie behandelt alles, was
- auch hier angegeben wurde und vieles mehr, z.B. GNU-Software,
- Libraries (Link-Libraries und shared Libraries), Shells,
- Unix-Kommandos, wissenschaftliche Software und vieles mehr.
-
- *FishCon*
- sind die gesammelten Inhaltsverzeichnisse der Fish-Disketten im
- Ascii-Format. (Aminet: `fish/doc/fishcon-???.lzh')
-
- *FishXref*
- ist ein Kreuzreferenzverzeichnis der FishCon-Dateien, ebenfalls im
- Ascii-Format (`fish/doc/fishxref-???.lzh' auf Aminet)
-
- *KingFisher*
- Eine Fish-Disk-Datenbank, getrennt in Programm (Fish-Disk 863 oder
- Aminet, `fish/doc/Kingfisher1_30.lha') und Datendatei
- `fish/doc/KFData850.lha', die die Suche nach Namen oder Kontext
- ermöglichen.
-
- 8.2 Eine Sammlung von Testberichten
- ===================================
-
- `Comp.sys.amiga.reviews' ist eine moderierte Newsgruppe, in der
- ausschließlich Testberichte über Soft- und Hardware, Bücher und alles
- mögliche Andere, den Amiga Betreffendes veröffentlicht werden. Es ist
- immer eine gute Idee, hier nachzuschauen, wenn man an etwas Bestimmtem
- interessiert ist. Natürlich findet man in der eigentlichen Newsgruppe
- nur die jeweils neuesten Berichte, aber die älteren werden archiviert
- und sind per FTP erhältlich bei `math.uh.edu', Directory
- `/pub/Amiga/comp.sys.amiga.reviews' oder auf den Fish-CD's.
-
- 8.3 Empfangen von Dateien von einem FTP-Server
- ==============================================
-
- Software zu laden ist einfach, wenn man Zugang zum Internet mit einem
- Programm namens FTP (File Transfer Program) hat. Unix-Computer haben
- häufig beides.
-
- FTP erlaubt Zugriffe auf andere Maschinen zum Speichern und/oder
- Laden von Dateien. Natürlich braucht man eine Zugangsberechtigung auf
- der anderen Maschine, aber viele Maschinen erlauben Zugang für jeden,
- wenn man sich als Benutzer `ftp' oder `anonymous' anmeldet und als
- Paßwort die eigene Mailadresse angibt. Für Amiga-Besitzer sind die
- wichtigsten FTP-Server die Aminet-Server, die sich gegenseitig Dateien
- übertragen und so im wesentlichen dieselben Dateien anbieten.
- Aminet-Server sind
- USA (MO) ftp.wustl.edu 128.252.135.4
- USA (CA) ftp.cdrom.com 192.153.46.2
- USA (TX) ftp.etsu.edu 192.43.199.20
- Scandinavia ftp.luth.se 130.240.18.2
- Germany ftp.uni-kl.de 131.246.9.95
- Germany ftp.uni-erlangen.de 131.188.1.43
- Germany ftp.cs.tu-berlin.de 130.149.17.7
- Germany ftp.uni-paderborn.de 131.234.2.32
- Germany ftp.uni-oldenburg.de 134.106.40.9
- Germany ftp.coli.uni-sb.de 134.96.68.11
- Switzerland ftp.eunet.ch 146.228.10.16
- Switzerland litamiga.epfl.ch 128.178.151.32
- UK ftp.doc.ic.ac.uk 146.169.2.1
- Alle diese Server haben ein Directory `/pub/aminet', wo man massig
- Software findet. Bitte benutzen Sie einen Server in Ihrer Nähe! Einige
- andere wichtige Server sind
- ftp.funet.fi (Finnland)
- ftp.isca.uiowa.edu (USA)
- ftp.hawaii.edu (USA)
- ftp.cso.uiuc.edu (USA)
- ftp.dfv.rwth-aachen.de (Deutschland)
- Grind, Aachen und Erlangen haben z.B. die komplette Fish-Disk-Serie
- parat! Siehe Fish-Disk xxx.
-
- Um sich mit einem Server in Verbindung zu setzen (z.B.
- `ftp.uni-erlangen.de'), gibt man ein:
- ftp ftp.uni-erlangen.de
-
- Der Server antwortet mit der Aufforderung, den Benutzernamen einzugeben.
- Als Benutzernamen gibt man
- ftp
-
- ein. Nun wird man nach einem Paßwort gefragt. Hier sollte man seine
- Mailadresse (wenn man eine hat, sonst einfach ftp) eingeben.
-
- Nun ist man mit dem Server verbunden und kann eine Reihe von
- Kommandos ausführen. Die wichtigsten sind:
- *?*
- Gibt einen Hilfstext aus. Man kann auch *? Kommando* eingeben, um
- Hilfe zu einem bestimmten Kommando zu verlangen.
-
- *bin*
- Informiert FTP, daß man binäre Dateien transportieren will. Es
- ist immer eine gute Idee, dies als allererstes Kommando
- einzugeben! Ohne dieses Kommando können empfangene Dateien
- verändert und damit nutzlos sein.
-
- *get <Datei>*
- Lädt die angegebene Datei vom Server. Auf den meisten
- Unix-Maschinen kann man auch `get file.txt -' oder `get file.txt
- |more' eingeben, um sich die angegebene Datei auf den Bildschirm
- ausgeben zu lassen. (Achtung: Hier darf *kein* Blank zwischen |
- und dem Wort more sein!)
-
- *mget <pat>*
- Lädt die angegebenen Dateien. Im Unterschied zu get dürfen hier
- auch Unix-Wildcards (* oder ?) verwendet werden.
-
- *put <file>*
- *mput <pat>*
- Wie get und mget, aber es werden Dateien *zum* Server geschoben.
- Dies ist meist nur in speziellen Directories mit Namen wie
- `incoming' oder `new' erlaubt. Man kann dort Dateien plazieren,
- die man auf dem Aminet frei zugänglich machen will.
-
- *cd <dir>*
- Wie das übliche cd. Die Kommandos get, mget, put, mput, dir und
- ls beziehen sich auf das angegebene Directory.
-
- *dir [<dir>]*
- *ls [<dir>]*
- Wie `list' und `dir' auf dem Amiga. Beachten Sie allerdings, daß
- FTP-dir dem Amiga-list entspricht.
-
- *bye*
- Verläßt das FTP-Programm.
-
- Wenn man FTP das erste Mal benutzt hat, wird man feststellen, daß
- immer die gleichen Schritte ausgeführt werden:
- 1. Benutzernamen eingeben (meist ftp)
-
- 2. Paßwort eingeben (meist die Mailadresse)
-
- 3. bin eingeben
-
- 4. In ein bestimmtes Directory wechseln (meist `/pub/aminet/...')
- Dies kann man automatisieren. Dazu braucht man eine Datei namens
- `.netrc' in seinem Home-Directory. Diese muß unbedingt nur für Sie
- selbst lesbar sein, FTP akzeptiert sie sonst nicht! (Dies erreichen Sie
- unter Unix mit dem Kommando `chmod go-rwx .netrc'.) Die .netrc-Datei
- enthält für eine Reihe von Servern je einen Eintrag, die durch
- Leerzeilen getrennt werden. Ein typischer Eintrag sieht etwa so aus:
- machine ftp.uni-erlangen.de
- login ftp
- password <Ihre Mailaddresse> oder <ftp>
- macdef init
- bin
- cd pub/aminet
- Auf einigen Computern ist auch der Servername `default' erlaubt, der
- für alle anderen Maschinen außer den Angegebenen gilt.
-
- 8.4 Empfangen von Dateien von einem Mail-Server
- ===============================================
-
- Eine andere Möglichkeit, Dateien zu empfangen, sind die
- Mail-Server. Dazu braucht man die Möglichkeit, an Internet-Adressen
- Mail zu verschicken und zu empfangen. Es funktioniert, indem man an den
- Server eine Mail schickt, in der man ihm sagt, was man haben möchte.
- Die Dateien werden dann ebenfalls als Mail geschickt, allerdings
- kodiert. Man braucht ein Programm namens `uudecode', um sie zu
- dekodieren.
-
- Die wichtigsten Mail-Server sind:
- ftpmail@decwrl.dec.com
- mailserver@nic.funet.fi
- ftp-mailer@ftp.informatik.tu-muenchen.de
- mrcserv@janus.mtroyal.ab.ca
- mail-server@ftp.cs.tu-berlin.de
- mail-server@rtfm.mit.edu
-
- Die an einen Server zu schickende Mail darf eine Reihe von Kommandos
- enthalten. Die wichtigsten sind:
- *Help*
- Veranlaßt den Server, einem einen Hilfstext zu mailen, in dem eine
- umfangreiche Anleitung enthalten ist.
-
- *Limit <Anzahl>*
- Gibt an, daß eine einzelne Mail höchstens <Anzahl> KByte lang
- sein darf. Größere Dateien werden in mehrere kleinere
- aufgeteilt, die als separate Mails verschickt werden. Beachten
- Sie, daß einzelne Mails durch die Deodierung und den Mailheader
- auch etwas länger sein können!
-
- *Cwd <dir>*
- Wie der cd-Befehl; das angegebene Directory wird von den Kommandos
- send und dir benutzt.
-
- *Index*
- liefert eine Liste von Dateien und/oder Directories, die der
- Server anbietet. Diese Liste kann *sehr* lang werden! (Berlin
- z.B. 1 MByte)
-
- *Index <item>*
- liefert eine Liste von Dateien, deren Namen <item> enthält.
-
- *Dir [<dir>]*
- liefert eine Liste von Dateien und Directories im angegebenen
- Directory
-
- *Send <file1> <file2> ... <fileN>*
- Liefert einem die angegebenen Dateien
-
- *Begin*
- Veranlaßt den Server, alle Zeilen oberhalb zu ignorieren.
-
- *End*
- Wie Begin, aber für die unten folgenden Zeilen. (Eine Signatur
- zum Beispiel!) Eine typische Mail an einen Mail-Server sieht also
- so aus:
- BEGIN
- CD /pub/aminet/util/arc
- SEND LhA_e138.run
- END
-
- 8.5 Empfangen von Dateien von einer Mailbox
- ===========================================
-
- Man kann sich auch Daten von einem der vielen BBS (`Bulletin Board
- System') holen. Zumeist werden diese von privaten Anwendern betrieben,
- und deshalb gibt es fast überall eine oder mehrere BBS, die man zum
- Ortstarif erreichen kann.
-
- Mailboxen bieten zumeist Möglichkeiten zum Meinungs- und
- Datenaustausch unter allen Teilnehmern, sie stellen eine Reihe von
- Programmen zum `Saugen' zur Verfügung, und sie bieten oft noch einige
- andere Serviceleistungen an.
-
- Hier folgt eine Liste aller mir bekannten Amiga-Mailboxen. Bitte
- schreibt mir die Namen und alle Telefonnummern der Euch bekannten
- Amiga-Mailboxen sowie (wo nötig) eine kleine Bemerkung, danke.
-
- Mailbox Vorwahl Nummer 1 Nummer 2 Nummer 3 Bemerkung
- ----------------------------------------------------------------------
- IMAGINE * de-089 6892721
- AMIGA WORK * de-089 6256183 6256159
- COMCOR * de-089 7141035 Computer Corner BBS
- FORTRESS de-089 8915316 8110130
- Black Empire de-089 472396 6885313
- AMIGA WORK II de-089 6258696
- KUCKUCKSNEST de-089 183000
- ERESSEA de-089 6888534
- MAGIC de-08121 45578
- NAMELESS de-08285 1008 1630 Burtenbach
- NATHAN de-08191 65542 Landsberg
- STAR BBS de-08232 6077 Schwabmünchen
- Shannara de-09931 72923 Plattling
-
- wobei `de' hier für Deutschland steht.
-
- 8.6 Die Fish-PD-Serie
- =====================
-
- Eine sehr gute Quelle ist die Fish-PD-Serie. Man muß zwischen
- Disketten und CDs unterscheiden.
-
- 8.6.1 Die Amiga-Library-Disks
- -----------------------------
-
- Fred Fish hat in der Mitte der Achtziger begonnen, frei kopierbare
- Software zu sammeln. Es gibt inzwischen 1000 Disketten und viele sehr
- gute Software darauf. Viele Amiga-Händler bieten sie an und die
- meisten Amiga-Zeitschriften enthalten Anbieter, die sie für ca. 3 DM
- pro Diskette mit der Post versenden. Die Disketten werden nicht mehr
- von Fred Fish selbst fortgeführt. Es gibt einen Drittanbieter, der
- die neu erscheinende Software auf den Fresh-Fish-CDs weiterhin in
- Diskettenform anbietet.
-
- Es gibt Dinge, die auf den Fish-Disketten, nicht aber auf dem Aminet
- verfügbar sind. Trotzdem ist es möglich, sie per FTP zu bekommen.
- Siehe Fish-Disk xxx.
-
- 8.6.2 Die Fresh-Fish-Serie
- --------------------------
-
- Fred Fish bietet weiterhin frei kopierbare Software an, allerdings
- jetzt auf CD. Es gibt zwei verschiedene Arten:
- 1. Die monatlichen CDs sind drei Teile unterteilt:
- 1. Neues Material, sowohl auf den Disketten erscheinende als
- auch dort nicht erscheinende Software. Auf der ersten CD sind
- das etwa 84Mb.
-
- 2. Nützliche, bereits installierte Software, die direkt von der
- CD benutzt werden können und damit Platz auf der Festplatte
- sparen. (GNU Emacs, Gnu C, GNU C++, Amiga E, PasTeX,
- AmigaGuide, Installer, 2.0 und 3.0-Includes, verschiedene
- Archivierprogramme, das AmiCDROM Filesystem, GNU und
- BSD-Utilities...) Dieser Teil macht etwa 150Mb auf der ersten
- Disk aus.
-
- 3. Älteres Material, das bereits früher erschienen ist.
- (Ungefähr 404Mb auf der ersten CD, entsprechend Fish-Disk
- 600-910.)
-
- 2. Die zweite Sorte enthält im wesentlichen mehr Software, dafür
- aber in gepacktem Format. (Diese CD's sind speziell für Mailboxen
- gedacht, die dadurch diese Software zum Downloaden anbieten.)
-
- Ich empfehle vor allem die erste Sorte. Sie kosten etwa 20$ plus 5$
- Versandkosten und können bei der folgenden Adresse bestellt werden:
- Amiga Library Services
- 610 N. Alma School Road, Suite 18
- Chandler, AZ 85224-3687
- U.S.A.
-
- Phone/FAX: (602) 917-0917
- Als beste Zahlungsweise haben sich angeblich Kreditkarten bewährt.
- Allerdings bin ich überfragt, welche von Fred akzeptiert werden.
-
- 8.7 Wie kann ich MS-Dos-Disketten lesen und schreiben?
- ======================================================
-
- Für Besitzer von Workbench 2.1 oder höher ist das kein Problem: Das
- Programm CrossDos ist da Teil der Workbench. Man muß lediglich `pc0:'
- mounten, indem man die Datei `Sys:Storage/DOSDrivers/pc0:' startet oder
- nach `Devs:Storage/DOSDrivers' verschiebt. MS-Dos-Disketten in `df0:'
- können nun ganz normal behandelt werden, indem man jeweils das Wort
- `df0:' durch `pc0:' ersetzt. Z.B. kann man das Directory mit `dir pc0:'
- anzeigen.
-
- Alle anderen benötigen ein Programm namens `msh' (Aminet, Directory
- `misc/emu' oder Fish-Disk 382). Nachdem man die Datei `devs:MountList'
- wie in der Dokumentation angegeben verändert hat, muß man lediglich
- im CLI das Kommando `mount msh:' eingeben und kann dann wie bei
- CrossDos damit verfahren, wobei man natürlich jeweils `msh:' anstelle
- von `pc0:' angeben muß.
-
- 8.8 Wie transportiere ich sehr große Dateien
- ============================================
-
- Es gibt einige Archive, die zu groß sind, um auf eine Diskette
- passen. (Das gcc-Archiv ist z.B. 3,5 MByte groß.) Um diese zu
- transportieren, benötigt man ein Programm, das sie in kleinere Teile
- aufteilt, die dann auf verschiedenen Dateien transportiert werden. Ich
- empfehle Martin Schlodders `Splitter'. (Aminet,
- `util/misc/splitter_121.lha') Das Archiv enthält Binaries für den
- Amiga und MS-DOS und der Quelltext sollte ohne Probleme auf jedem
- Unix-Rechner zu compilieren sein.
-
- 8.9 Diskussionen über Mail
- ==========================
-
- Eine Mail-Liste ist ein Server, der es ermöglicht, sich mit anderen
- Leuten über ein bestimmtes Thema via Mail zu unterhalten. Der Server
- unterhält eine Liste interessierter Teilnehmer, die am Thema
- interessiert sind. Z.B. geht es bei der gcc-Mailliste um Bugs, neue
- Features und andere Probleme rund um den gcc. (siehe Compiler) Wenn ein
- Teilnehmer eine Mail an den Server schickt, dann wird sie vom Server an
- alle anderen Teilnehmer weitergeleitet.
-
- Man meldet sich als Teilnehmer an, indem man eine Mail an den Server
- schickt, die z.B. das Wort `Subscribe' enthält. Umgekehrt kann man
- sich auf ähnliche Weise abmelden, wenn man an der Mail-Liste nicht
- mehr länger interessiert ist.
-
- Unglücklicherweise erwarten die Server zum Teil eine recht
- unterschiedliche Syntax bei der Anmeldung. Allerdings unterstützen sie
- alle eine Hilfefunktion: Schickt man eine Mail mit dem Wort `Help' an
- den Server, so antwortet dieser mit einer ausführlichen Beschreibung.
-
- Einige interessante Mail-Listen sind:
- Topic Server
-
- Amok listserv@amokle.stgt.sub.org
- Dice dice-request@hactar.hanse.de
- Gcc listserv@lists.funet.fi
- Lisp amigalisp@contessa.phone.net
- Mui mui-request@taloa.unice.fr
- Oberon-A oberon-a-request@wossname.apana.org.au
-
- 8.10 Andere FAQ's
- =================
-
- *Amiga related books FAQ*
- Enthält eine Liste von Büchern zum Amiga, komplett mit
- Kurzbesprechungen, Preisen und Herkunftsangaben. Newsgruppen:
- comp.sys.amiga.misc, comp.sys.amiga.introduction,
- comp.sys.amiga.programmer (monatlich) Ftp: rtfm.mit.edu,
- pub/usenet/comp.sys.amiga.misc Betreuer: Marc Atkins,
- atkin@cs.umass.edu
-
- *AmiTCP/IP FAQ*
- Dies ist für Anwender von AmiTCP/IP, einer Reihe von Programmen,
- die das Einbinden eines Amigas in ein TCP/IP-Netzwerk ermöglichen.
- (Die meisten bekannten Netze, das Internet z.B., benutzen TCP/IP.)
- Newsgruppen: comp.sys.amiga.misc, comp.sys.amiga.datacomm,
- comp.sys.amiga.networking (zweiwöchentlich) Ftp: rtfm.mit.edu,
- pub/usenet/comp.sys.amiga.networking Betreuer: Neil J. McRae
- (atcpfaq@domino.demon.co.uk)
-
- *Amiga Networking FAQ*
- Im Gegensatz zur AmiTCP/IP-FAQ möchte diese alle Aspekte des
- Netzwerkelns abdecken, z.B. auch Envoy. Newsgruppen:
- comp.sys.amiga.datacomm, comp.sys.amiga.hardware Ftp:
- rtfm.mit.edu, pub/usenet/comp.sys.amiga.networking Betreuer:
- Richard Norman (norman@afas.msfc.nasa.gov)
-
- *Point Manager FAQ*
- Netzwerke scheinen wirklich kompliziert zu sein: Dies ist die
- dritte FAQ zum Thema, diesmal zu einem speziellen FidoNet-Client
- (einem sogenannten Point), dem Point Manager. Newsgruppen:
- comp.sys.amiga.datacomm Ftp: rtfm.mit.edu,
- pub/usenet/comp.sys.amiga.datacomm Betreuer: Eric Krieger
- (pm_faq@quasar.hacktic.nl)
-
- *All about FTP*
- Erklärt den Umgang mit dem Filetransferprogramm FTP. Siehe FTP.
- Newsgruppen: comp.sys.amiga.misc (Monatlich) Ftp: Aminet,
- info/start Betreuer: Urban Dominik Müller
- (umueller@amiga.icu.net.ch)
-
- Das Amiga-FAQ-Archiv
- ********************
-
- Die Amiga-FAQ ist in verschiedenen Formaten erhältlich: Im
- Ascii-Format (wie sie in den Netzen gepostet wird), im
- AmigaGuide-Format (wie sie auf einem Amiga wohl am praktischsten ist)
- und im dvi-Format zum Ausdrucken. Weiter gibt es einige Dinge, die
- nützlich oder interessant sein könnten, die aber nicht in den Text
- eingebunden werden konnten:
- txt/amiga.history Zur Geschichte des Amiga
- txt/story.txt Die Commodore-Story (oder: Die Tramiel-
- Story ;-)
- txt/amiga.newsgroups Übersicht über comp.sys.amiga.*
- txt/amiga.sites Liste von FTP-Servern
- txt/AmigaOverview.tex Übersicht über die Amiga-Soft- und Hardware
- txt/Hardware.tips Für Hardware-Bastler
- txt/Nullmodem.txt Anleitung zum Bau eines Nullmodems
- src/JWSplit.c Der Quelltext eines Dateisplitters
- src/JWJoin.c Das Gegenstück zu JWSplit.c
- src/addtoc.c Fügt ein Inhaltsverzeichnis zu mit texinfo
- erzeugten doc's bei (dieser Text verwendet es)
-
- Um diese öffentlich zugänglich zu machen, habe ich mich dazu
- entschlossen, diese in einem Archiv zu sammeln. Es heißt
- `AmigaFAQxxxxxxg.lha', wobei xxxxxx das Datum der letzten Version ist.
- Sie finden es per FTP im Aminet, Directory `docs/misc'.
-
- Beiträge zur Amiga-FAQ
- **********************
-
- Die FAQ kann nicht nützlich sein und nicht weiterentwickelt werden
- ohne Ihre Hilfe. Vorschläge, Beiträge, neue Fragen und Antworten,
- Kritik, alles ist willkommen.
-
- Bitte beachten Sie, daß einige sehr wesentliche Themen bis jetzt
- unterrepräsentiert sind oder gänzlich fehlen: Nichts über Animation,
- Sound, Grafikkarten. (Alles über die *endgültige* Merlin-Software
- ...) Dies sind einige der Stärken des Amiga! Aber ich verstehe nichts
- davon :-(
-
- Also nehmen Sie ihre Tastatur (Ihren Bleistift? Na gut, wenn's sein
- muß...) und schreiben Sie an:
-
- Ignaz Kellerer
- Georg-Habel-Str. 11
- 81241 München (Deutschland)
- Tel. (+49) 089 / 885147
-
- Internet: kellerer@informatik.tu-muenchen.de
-
- Danksagungen
- ************
-
- Meinen Dank an:
- *Reinhard Spisser and Sebastiano Vigna*
- für die Amiga-Version von TexInfo. Dieser Text wurde damit
- erstellt.
-
- *The Free Software Foundation*
- für die Originalversion von TexInfo und viele andere
- hervorragende Programme.
-
- *Dylan McNamee*
- für die Abschnitte über Editoren, Textverarbeitungen, DTP und
- PostScript.
-
- *Joseph Luk*
- für die Abschnitte über Chunky/Planar und Double-Buffering
-
- *Urban Dominik Müller*
- für die FAQ über FTP- und Mail-Server
-
- *Lars Hecking (lhecking@nmrc.ucc.ie)*
- *Philippe Brand (phb@colombo.telesys-innov.fr)*
- für den Abschnitt über gcc
-
- *Jochen Wiedmann (zrawi01@decap2.zdv.uni-tuebingen.de)*
- für die Zusammenstellung und das Posten der Amiga FAQ bis Juli
- 1994.
-
- Index
- *****
-
-
-
- . (Ersatz für) Dot-Ersatz
- .arj Endungen
- .dms Endungen
- .gz Endungen
- .lha Endungen
- .lzh Endungen
- .netrc FTP
- .tar Endungen
- .Z Endungen
- .z Endungen
- .zip Endungen
- .zom Endungen
- .zoo Endungen
- 68EC020 68EC0xx
- 68EC030 68EC0xx
- 68LC040 68EC0xx
- A1200 (Festplatte) A1200-HD
- Aktuelles Directory Dot-Ersatz
- AmiBooksFAQ FAQs
- Amiga networking FAQ FAQs
- Amiga-FAQ-Archiv Amiga-FAQ-Archiv
- Amiga-libraries (gcc) Amiga-Libraries
- Amiga-Library-Disks Fish-Floppies
- AmigaBasic AmigaBasic
- AmigaSciSchool Infos
- Aminet FTP
- AmiTCP/IP FAQ FAQs
- Anonymous FTP
- Assembler Compiler
- AutoDocs Include-Dateien
- Autoren (gcc) Autoren
- BBS Mailbox
- Beiträge Beiträge
- C Compiler
- C++ Compiler
- Catalog description Lokalisierung
- Catalog translation Lokalisierung
- CatComp Lokalisierung
- CATS CATS
- Chunky Chunky vs. Planar
- Commodore, Frankfurt Developer
- Commodore, West Chester CATS
- Compiler Compiler
- Console window WindowPtr
- CrossDos MS-Dos-Disketten
- DaggeX X11
- Danksagungen Danksagungen
- Dateiendungen Endungen
- Desktop Publishing DTP
- Developer Developer
- Dokumentation Dokumentation
- DoMethod Fehlende Funktionen
- DoSuperMethod Fehlende Funktionen
- Doublebuffering Doublebuffering
- Druckersteuerung Druckersteuerung
- DTP DTP
- Editoren Editoren
- Emulationen Emulationen
- Endungen Endungen
- Enforcer 68EC0xx
- Esc-Sequenzen Druckersteuerung
- FAQ's, andere FAQs
- FD-files Pragmas
- fd2inline Inline-Dateien
- fd2pragma Pragmas
- Fehlende Funktionen Fehlende Funktionen
- Festplatte (A1200) A1200-HD
- Fish-CD-Rom Fish-CD
- Fish-Disketten Fish-Floppies
- Fish-Disks Fish-Disk xxx
- Fish-PD-Serie Fish
- FishCon Infos
- FishXref Infos
- FlexCat Lokalisierung
- Forth Compiler
- Fortran Compiler
- FPU FPU
- Fresh Fish CD-Rom Fish-CD
- FTP-FAQ FAQs
- FTP-Servers FTP
- GadTools MUI
- Gcc Der GNU C Compiler
- gen20 Inline-Dateien
- gen30 Inline-Dateien
- gen31 Inline-Dateien
- Geschichte Amiga-FAQ-Archiv
- GfxBase X11
- GigaMem 68EC0xx
- Grafik Grafik
- Hardwareanforderungen (gcc) Anforderungen
- HD-Kompression HD-Kompression
- Hilfe (gcc) Hilfe
- Hirsch & Wolf CATS
- HookEntry Fehlende Funktionen
- HP-Deskjet Tintenstrahldrucker
- hunk2gcc Amiga-Libraries
- IBM-Kompatible Emulator IBM-Kompatible
- Include-Dateien Include-Dateien
- Informationen (gcc) Hilfe
- Inline-Dateien (gcc) Inline-Dateien
- Installation (gcc) Installation
- Kartuschen Tintenstrahldrucker
- Kataloge Lokalisierung
- KingFisher Infos
- KitCat Lokalisierung
- Konsolenfenster WindowPtr
- LibAllocPooled Fehlende Funktionen
- Linux Unix
- Lisp Compiler
- locale.library Lokalisierung
- Localisierung Lokalisierung
- Mail-Listen Mail-Listen
- Mail-server Mail
- Mailbox Mailbox
- MakeCat Lokalisierung
- Manuale Dokumentation
- MMU 68EC0xx
- Modula-2 Compiler
- Monitore Monitore
- MS-Dos (Emulator) IBM-Kompatible
- MS-Dos-Disketten MS-Dos-Disketten
- Msh MS-Dos-Disketten
- MUI MUI
- Multiscan Monitore
- NDA Developer
- NDK Include-Dateien
- NDU Include-Dateien
- NDUK Include-Dateien
- NetBSD Unix
- Oberon Compiler
- Oberon-A Compiler
- Packer Endungen
- Packer on Unix Endungen
- Pascal Compiler
- Pipe (command) Pipe-Kommando
- PIPE: Pipes
- Planar Chunky vs. Planar
- Point manager FAQ FAQs
- PostScript PostScript
- Pragmas Pragmas
- Prolog Compiler
- Quelltexte (gcc) Gcc-Quellen
- Queue-handler Pipes
- RAM, virtuelles 68EC0xx
- RKM's Dokumentation
- ROM Kernel Manuals Dokumentation
- Splitten von Dateien Splitten
- Stacker HD-Kompression
- TeX TeX
- Text-Editoren Editoren
- Textbearbeitungssprachen Textverarbeitungen
- Textverarbeitung Textverarbeitungen
- Tintenstrahldrucker Tintenstrahldrucker
- Unix Unix
- Unix-LhA Unix-LhA
- Version (gcc) Aktuelle Version
- VGA Monitore
- Wysiwyg Textverarbeitungen
- X11 X11
- XFH HD-Kompression
- XPK HD-Kompression
- _mchar _mchar
- _pchar _pchar
-
-