Deluxe Gfa-Compiler Menu V1.5 (kurz DCM):
=========================================


ACHTUNG: DCM V1.5 IST KEIN GFA-BASIC COMPILER !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
         DCM IST NUR EINE BENUTZEROBERFLÄCHE FÜR DEN COMPILER !!!!!!!!!!!!!!!


Inhalt:
-------

1.  Programmänderungen
2.  Wozu DCM?
3.  Allgemeines
4.  Der Screen
4.1  Der obere Screenteil bzw. der Aktionsteil
4.2  Der untere Screenteil bzw. der Einstellungsteil
5.  Das Menu und die Tastaturbelegung
6.  Das Configfile
7.  DCM mit 512 K
8.  Fehler
9.  Kopierbestimmungen und Sonstiges


1. Programmänderungen:
----------------------

DCM V1.02: - Alle Eingaben wurden verbessert.
DCM V1.03: - Test File- und Gfa-Basic-Gadget eingebaut.
DCM V1.04: - Iconify eingebaut. (Das 1. Gfa-Prg mit Iconify!!!)
           - Screenaufbau nach LOAD beschleunigt.
DCM V1.05: - Man kann DCM nun auch von der Festplatte starten ohne eine Disk
             in DF0: haben zu müssen.
           - Mit RETURN kann man das Gfafile auswählen.
DCM V1.1:  - Configfile eingebaut! Man kann die Compilerfiles nun endlich da
             haben, wo man sie schon immer haben wollte! Das Zugriff-Gadget
             wurde nun aber nutzlos und ist rausgeschmissen worden.
           - DCM beendet sich nun auch nicht mehr selber, wenn ein eingege-
             bener Filename ein Directory oder ein Device war.
           - Bei "Test File" und "Gfa-Basic" wird der DCM-Screen geschlossen,
             was 42 KB mehr bringt.
           - Nach dem Laden eines DCM-Files kommt es zu keinem Fehler mehr
             auf dem Bildschirm (Hi Peter)
           - Der aktuelle Pfad (des Filerequester) wird nun auch beim Löschen
             übergeben.
           - Iconify-Fenster erscheint nun an einer anderen Stelle.
DCM V1.11: - Object- und Programmfile auf "RAM:..." geändert.
DCM V1.2:  - Fehler bei "MULS" (falscher Parameter) und bei "Optimierung von
             SELECT/CASE" ("Keine Optimierung" gab es gar nicht) behoben.
           - Es werden nun verschiedene Variablen für die Pfadnamen verwen-
             det (wie bei DPaint Pics, Brushs und Anims). Bei der Auswahl des
             Gfafiles und beim Laden/Speichern von Parametern wird jeweils
             der Pfad getrennt gespeichert. Beim Löschen wird der Pfad der
             letzten Diskoperation übergeben.
           - Nachdem man eine alte DCM-Version verlassen hat, war der aktu-
             elle Pfad (z.B. im CLI) geändert. Nun wird der aktuelle Pfad
             wieder hergestellt.
           - Will man das "Gfafile löschen"-Gadget aktivieren, so erscheint
             eine Sicherheitsabfrage. (Da mir ein Source Hops ging erschien
             mir dies nötig.)
           - Der Gfa-Filerequester ist rausgeflogen und durch den ARP-File-
             requester ersetzt worden. Es wird also die "arp.library" im
             "LIBS:"-Directory benötigt. DCM V1.2 ist dadurch immer noch
             3 KB kürzer als V1.1! (Danke an Frank für den Aufruf des ARP-
             Filerequesters)
           - Die Fehlerroutine läuft nun auch compiliert! DCM beendet sich
             z.B. durch eine schreibgeschützte Diskette nicht mehr selber.
           - "Objectfile ändern"-Gadget eingebaut.
           - Falls beim compilieren bzw. Linken Object- oder Gfafile gelöscht
             wurde, wird eine entsprechende Meldung ausgegeben.
           - Man kann nun auch das aktuelle Directory als Pfad angeben (also
             den Pfad z.B. im Configfile weglassen).
           - Im neuen Configfile (V1.1 Configfiles können nicht gelesen
             werden!) kann man nun Sourcesdirectory, Parameterdirectory,
             Objectfile, Programmfile und das neue Gadget "Objectfile ändern"
             nach seinen Wünschen konfigurieren.
DCM V1.3:  - Bei dem Object- und dem Programmfilenamen brauch nun kein Device
             mehr angegeben werden. Auch genügt nun ein Leerstring um diese
             Felder zu verlassen (Die vorherige Eingabe wird dann wieder dar-
             gestellt).
             (Dieser Punkt war auch schon in V1.2 eingebaut. Ich hatte nur
             vergessen es zu erwähnen :-)
           - Wenn man Gfa-Basic aufruft, wird das Gfa-File nicht mehr ge-
             startet. (Besonders praktisch wenn man den SYSTEM-Befehl be-
             nutzt.)
           - Falls DCM vom CLI aufgerufen wird, kann als Parameter das zu
             compilierende Gfa-File übergeben werden.
             Beispiel: "DCM DH1:Sources/DCM_V1.3/DCM.GFA"
           - Die Taskpriorität liegt nun bei -30! Beim arbeiten mit DCM be-
             merkt man zwar keinen Unterschied, aber wenn man mal kurz ins
             CLI springt um einige Befehle (z.B. dir) auszuführen, so ge-
             geschieht dies ohne Geschwindigkeitsverlust, da die anderen
             Tasks Vorrang haben!
           - Falls die manuell eingegebenen Parameter zu lang sind, wird nur
             der Teil angezeigt, der noch auf den Bildschirm paßt. (Beim
             Compileraufruf sind die Parameter aber komplett.)
           - Falls sich Run nicht im C: Directory befindet, beendet sich DCM
             mit einer Fehlermeldung.
           - Wird ein Gfa-File ausgewählt, so werden Nicht-Gfa-Basic-Files
             erkannt und nicht angenommen.
           - Falls das angewählte Gfa-File nicht mit ".GFA" endet (und somit
             sowieso nicht vom Compiler akzeptiert wird) kann man es automa-
             tisch umbenennen lassen. (Endlich!!!)
           - Man kann jetzt beim Programmstart direkt ein DCM-File laden
             lassen (siehe 6. "Parameterdirectory"). CLI-Parameter werden
             dann nicht mehr berücksichtigt!
           - Nach dem Linken wird die Länge des Programmfiles ausgegeben.
           - Screenaufbau nach "Load" und "Iconify" noch ein wenig be-
             schleunigt.
           - Speicherinfo-Menu eingebaut.
ACHTUNG!!! - Einige 1.3-Versionen stürzen ab, wenn man sie von der Workbench
             aufgerufen hat, da diese dann auf Speicherseite 0 einen Wert
             verändern. (Mal wieder ein Beispiel dafür, was der Compiler so
             alles anstellt) Bei V1.4 müßte dieser Fehler behoben sein.
DCM V1.4:  - Die Iconifyfensterposition kann nun im Configfile eingestellt
             werden.
           - Die Fehlerabfrage ist wieder besser geworden.
           - Da Gfa-Basic-Compilate höllig viel Rechenleistung beanspruchen,
             liegt die Taskpriorität nun bei -40. Beim Arbeiten mit DCM fällt
             dies nicht auf, aber andere Tasks (z.B. die Workbench) können
             nun weiterarbeiten. Bei Iconify liegt die Taskpriorität sogar
             bei -127, so daß man DCM ohne Gewissensbisse längere Zeit in
             Wartestellung lassen kann.
           - Iconify arbeitet nun nach Amigastandart! Man muß jetzt die
             rechte Maustaste drücken damit der DCM-Screen wieder geöffnet
             wird. Das Closegadget beendet DCM.
           - Der ARP-Filerequester ist durch den wesentlich besseren REQ-
             Filerequester ersetzt worden. Es wird also die "Req.Library" im
             "LIBS:"-Verzeichnis benötigt.
           - Beim Verlassen von DCM erscheint nun keine Sicherheitsabfrage
             mehr.
           - Bei "Speicherinfo" erscheint nun ein Requester.
DCM V1.41: - Screen-Fehler in der Fehlerabfrage (sehr witzig) behoben.
           - Da nun mit dem Compiler V3.52 compilierte wurde, dürften nach
             Workbench-Aufrufen keine Abstürze mehr auftreten.
DCM V1.5:  - DCM patcht auf Wunsch die compilierten Files, so daß man nicht
             mehr zu einen Disk/File-Monitor greifen muß. (siehe 4.2 "Pro-
             gramm patchen")
           - Das neue "Programm patchen"-Gadget muß im Configfile eingestellt
             werden.
           - DCM kann man nun endlich ohne Probleme von der Workbench ge-
             startet werden!!! Es treten keine Fehler mehr auf, da ich den
             Gfa-EXEC-Befehl durch den richtigen Execute-Befehl der Dos-
             Library ersetzt habe.
           - Wenn man DCM verläßt verschwindet auch wieder das Diskicon von
             der Diskette auf der DCM war. Der fehlerhafte Befehl war diesmal
             "DIR$(0)". Ich verwende nun Dos-Library-Befehle.
           - Der DCM-Screen reagiert nun nur noch auf Eingaben, wenn er auch
             wirklich aktiv ist. (Man sollte aber trotzdem lieber zu Iconify
             als zu "Linke Amiga + N" greifen, um auf andere Screens zu ge-
             langen.)
           - Die üblichen Amiga-Requester (z.B. No Disk in Drive) erscheinen
             nun nicht mehr auf der Workbench, sondern direkt auch dem DCM-
             Screen.
           - Iconify verbraucht nun keine Rechenzeit mehr!!! Jeder kann also,
             ohne Geschwindigkeitseinbußen, DCM im Hintergrund warten lassen.
           - Wer einmal in älteren Versionen von DCM einen Fehler an den Kopf
             bekam und dann in der "Gfa-Fehlerliste" nachsah um diesen Fehler
             zu "übersetzen" konnte manchmal den entsprechenden Fehler nicht
             finden. "-41" bedeutete z.B. "Diskette schreibgeschützt" und
             nicht "Cont nicht möglich". Nun werden die korrekten Fehlernum-
             mern ausgegeben.
           - Die TaskPriorität wird wieder restauriert, wenn DCM verlassen
             wird. (Ab V1.3 hatte man am Ende ein CLI mit der TaskPri von
             -40, bzw. -127.)


2. Wozu DCM?
------------

Jeder,  der  schon  mal mit dem Gfa-Basic Compiler rumgewerkelt hat, wird die
unkomfortabele Bedienung bemerkt haben. Die einzige Alternative war das  bei-
liegende  MENUX.  Aber MENUX war nur sehr beschränkt, und ich habe es nie ge-
mocht. Also entwickelte ich DCM. Mit DCM kann man eine große Anzahl von Para-
metern einfach mit der Maus einstellen und zusätzlich noch weitere  per  Hand
eingeben.  Außerdem besitzt DCM viele praktische Funktionen von denen man bei
MENUX nur träumen kann (Protz, Proll). Ich glaube jeder, der den Compiler be-
sitzt (und vor allem eine Festplatte hat) kann DCM gebrauchen. Falls dies der
Fall  ist,  würde ich mich über ein Briefchen mit Eurer Meinung über DCM (und
der Sharewaregebühr!) freuen.


3. Allgemeines:
---------------

Wichtig!!! DCM benötigt für alle Programmaufrufe (z.B. des Compilers oder des
Linkers)  den  CLI-Befehl  "Run" im C: Directory der Bootdiskette, denn "Run"
wird bei jedem EXECUTE-Aufruf der Dos-Library geladen.

DCM benötigt den Gfa-Compiler und den Gfa-Linker (siehe Configfile) um compi-
lieren  zu  können.  Der  Compiler  und der Linker greifen noch auf die Files
"GfaLib, GfaLibrary und GfaLibraray.Index" zu, die alle im  Zugriffsdirectory
vorhanden  sein  müßen,  daß im Configfile eingetragen wurde. Nicht notwendig
ist Gfa-Basic, aber ohne dieses File ist das Gfa-Basic-Gadget nutzlos.

DCM  sucht  nach  dem  Programmstart  ein Device, daß im Configfile angegeben
wird. Läßt sich dieses nicht öffnen (z.B. weil Device  und  Handler  fehlen),
so  beendet sich DCM selber. Dieses Device wird von DCM benötigt, um die Aus-
gaben des Compilers und des Linkers zwischenzuspeichern.

Nach dem Start von DCM ist die Parameterzeile leer, da alle DCM-Einstellungen
auf den Defaultstellungen des Compilers stehen. Es ist also nicht nötig Flags
wie "E#" zu setzen, da der Compiler diese sowieso verwendet.

Wenn in DCM Requester auftauchen, so ist immer ein Requestergadget dicker um-
randet als die anderen. Dieses dick umrandete Gadget kann man "anklicken" in-
dem man die Returntaste drückt.

Sollten irgendwo Fehler auftreten, so wird nur eine Fehlernummer  ausgegeben.
Ich  habe  auf Fehlertexte verzichtet, da DCM sonst unnötig länger würde. Die
Fehlertexte können aber in dem File "Gfa-Fehlerliste" nachgesehen werden. Sie
entsprechen meistens den AmigaDOS-Fehlernummern.

DCM läuft mit dem Gfa-Compiler 3.0 sowie mit dem Compiler 3.5 einwandfrei!


4. Der Screen:
--------------

Der Screen ist in zwei Teile unterteilt. Im oberen Teil findet man alle Anga-
ben  über  das zu bearbeitende File (Parameter, Name, ...) und die Compilier-
gadgets. Im unteren Teil kann man sämtliche Einstellungen (Parameter und  ein
paar Einstellungen, die den Compiliervorgang betreffen) vornehmen.

4.1  Der obere Screenteil bzw. der Aktionsteil:
-----------------------------------------------

Compilerparameter:
  Hier wird angezeigt, welche Parameter für den Compiliervorgang benutzt wer-
  den. Klickt man mit der Maus auf die Parameter, so kann  man  noch  weitere
  Parameter  per  Hand  eingeben. Hier kann man alle Parameter verwenden, die
  DCM nicht unterstützt und so z.B. auch den  Compiler  V3.5  ansprechen.  Da
  keine Abfrage stattfindet, sollte man hier nur sinnvolles eintragen.
Gfafile:
  Auf das hier eingetragene File greift der Compiler  zu.  Es  muß  also  vom
  Interpreter  mit  SAVE gespeichert worden sein. WICHTIG: Klickt man mit der
  Maus auf die Buchstaben "Gfafile", so kann man über ein Requester das  File
  auswählen.  Klickt man mit der Maus auf den Gfafilenamen (ob vorhanden oder
  nicht), so kann man den Namen auch selber eingeben. Drückt man RETURN (oder
  ENTER), so hat dies dieselbe Wirkung wie ein Mausklick auf "Gfafile".  DCM 
  prüft dann ob dieses File wirklich ein Gfa-Basic-File ist. Endet das ausge-
  wählte  File  nicht  mit ".GFA", so erscheint ein Requester, in dem man ge-
  fragt wird, ob man das File umbenennen möchte.
Objectfile:
  Das  hier  eingetragene  File  generiet der Compiler. Der Linker greift auf
  dieses zu, um das Programmfile zu generieren. Klickt  man  den  Objectfile-
  namen  an, so kann man den Objectfilenamen per Hand eingeben.
Programmfile:
  Das hier eingetragene File generiert der Linker. Klickt man den Programmfi-
  lenamen an, so kann man den Programmfilenamen per Hand eingeben.

Compile:
  Klickt man Compile an, so wird das in "Gfafile" eingetragene Gfafile zu dem
  in "Objectfile" eingetragenen  Objectfile  compiliert.  Ein  Window  öffnet
  sich, in dem die Länge des Compiliervorgangs und die Ausgaben des Compilers
  ausgegeben werden.  Der  Compiler  sollte normalerweise nur "GFA-BASIC x.xx
  Compiler" ausgeben. "x.xx" steht hier für die Version des Compilers.
Link:
  Klickt  man Link an, so wird das in "Objectfile" eingetragene Objectfile zu
  dem in "Programmfile" eingetragenen Programmfile gelinkt. Ein Window öffnet
  sich, in dem die Länge des Linkvorgangs und die Ausgaben des Linkers ausge-
  geben werden.  Der  Linker sollte normalerweise nur "GFA-BASIC x.xx Linker"
  ausgeben. "x.xx" steht hier für die Version des Linkers.
Compile & Link:
  Klickt man Compile & Link an, so werden Compile und Link direkt  hinterein-
  ander ausgeführt.
Test File:
  Klick man Test File an, so wird zuerst der DCM-Screen geschlossen (spart 42
  KB), und dann das in Programmfile eingetragende File gestartet.  Auf  diese
  Weise  kann man compilierte Programme direkt per Mausklick testen. DCM war-
  tet dann bis das gestartet Programm wieder beendet wurde.
Gfa-Basic:
  Klick  man  Gfa-Basic an, so sucht DCM nach dem im Configfile eingestellten
  Gfa-Basic-Namen (z.B. "Gfa-Basic3.0"). Ist  Gfa-Basic  vorhanden,  so  wird
  dieses  direkt  mit  dem  in Gfafile eingetragenen Gfafile aufgerufen (z.B.
  GFABASIC DF1:Sources/PRG1.8/PRG.GFA). Wie bei Test File wird der DCM-Screen
  geschlossen und gewartet bis Gfa-Basic wieder verlassen wurde.

4.2  Der untere Screenteil bzw. der Einstellungsteil:
-----------------------------------------------------

Da  ich von Natur aus faul bin, schreibe ich hier nichts zu den einzelnen Pa-
rametern. "Ausführliche" Informationen zu den Parametern findet ihr im Compi-
lerhandbuch.

Gfaname = Prgname:
  Ist  dieses  Gadget  auf  "an" gestellt, so wird der Objectfilename und der
  Programmfilename nach dem Gfafile benannt. Endet das  Gfafile  mit  ".GFA",
  so wird diese Endung weggelassen. Die Namen werden jeweils neu "berechnet",
  wenn  bei  "Gfafile"  Return gedrückt wurde, bzw. wenn eine Eingabe gemacht
  wurde. Hat das Gfafile z.B. den Namen "PRG.GFA" und das Objectfile den Nam-
  en "DF1:PRGs/TEST.o", so bekommt das Objectfile den Namen "DF1:PRGs/PRG.o".
  Das Programmfile wird natürlich auch entsprechend  umgewandelt.  Man  sieht
  aber, daß der Pfad, der vor dem Programmnamen steht, gleichgelassen wird.
Gfapfad = Prgpfad:
  Der Pfad und nicht der Name werden entsprechend geändert, wenn dieses  Gad-
  get  auf "an" gestellt ist. Auch hier werden die Namen jeweils neu "berech-
  net",  wenn bei "Gfafile" eine Eingabe gemacht wurde.

Sind beide Gadgets, also Gfaname und Gfapfad auf "an" gestellt, so  wird  das
nach dem Gfafile benannte File in das Directory des Gfafiles compiliert.

Objectfile löschen:
  Ist  dieses  Gadget auf "an" gestellt, so wird nach nach dem Linken das Ob-
  jectfile wieder gelöscht und eine entsprechende Meldung ausgegeben.
Objectfile ändern:
  Ist dieses Gadget auf "aus" gestellt, so wird der Objectfilename, nach aus-
  wählen  eines  Gfafiles, nicht verändert. Ich habe dieses Gadget eingebaut,
  da  man das Objectfile sowieso nicht benötigt und ich immer den Objectfile-
  namen manuell auf "RAM:..." ändern musste.
Gfafile Löschen:
  Ist dieses Gadget auf "an" gestellt, so wird nach dem Compiliervorgang  das
  Gfafile gelöscht und eine entsprechende Meldung ausgegeben. Will man dieses
  Gadget auf "an" stellen, so erscheint zuerst eine Sicherheitsabfrage, da es
  eher selten vorkommt, daß man seinen Source löscht.  Da ich aber den Source
  manchmal in der RAM-Disk habe, ist diese Funktion recht nützlich.
Daten ==> DF0:
  Klickt  man  dieses Gadget an, so wird das Device des Objectfilenamens (nur
  wenn "Objectfile ändern" auf "an" ist) und  des  Programmfilenamens  ausge-
  tauscht.  Im  Moment  sind  nur DF0:, DF1: RAM: und DH0: eingebaut. Es wird
  nicht überprüft ob dieses Device vorhanden ist!
Programm patchen:
  Bestimmt ist jedem schon einmal aufgefallen, daß Gfa-Basic und der Compiler
  geöffneten Screens oder Windows Defaultnamen geben. Screens haben immer den
  Titel "GFA-BASIC-Screen" und Windows haben immer den Titel "GFA-BASIC". Wer
  sich mal die Mühe gemacht hat,  sich ein Gfa-Basic-Compilat mit einem File-
  monitor (Filemaster,  Newzap, ...)  anzusehen,  der  hat warscheinlich ent-
  deckt,  daß am Ende des Files besagte Titel stehen.  Wenn man die Titel nun
  ändert,  bekommen  die Screens bzw. Windows automatisch die gewünschten Na-
  men,  so daß man nicht mehr den "TITLEW"- bzw. den "TITLES"-Befehl benutzen
  muß.  Da die Sache mit einen Filemonitor aber immer recht lästig ist,  habe
  ich diese Patch-Funktion geschrieben, die dies automatisch macht.
  Soviel zur Vorgeschichte. Unten rechts entdeckt man das "Programm patchen"-
  Gadget.  Ist diese Funktion "aus"-geschaltet, so wird  wie  gewohnt  compi-
  liert.  Die Window- und Screentitel bleiben also unverändert.  Ist das Gad-
  allerdings angeschaltet,  so werden die Titel gepatcht (also verändert) und
  eine entsprechende Meldung ausgegeben.  Unter dem "Programm patchen"-Gadget
  befinden sich die Titel, die beim linken eingesetzt werden sollen. Man kann
  diese einfach per Hand editieren  (anklicken und wie gehabt verändern) oder
  dies von DCM machen lassen. Ist das "Programm patchen"-Gadget nämlich "an",
  so wird jedesmal,  wenn ein Gfafile ausgewählt wird,  (siehe 4.1 "Gfafile")
  der Programmname als Screen- und Windowtitel eingesetzt. Windowtitel können
  maximal 9 Zeichen lang sein  (wie "GFA-BASIC");  Screentitel können maximal
  16 Zeichen lang sein  (wie "GFA-BASIC-Screen").  Ist  im  Screentitel  noch
  Platz,  so  hängt  DCM noch "-Screen" an den Programmnamen.  Ich habe diese
  Funktion mit älteren und neuen Gfa-Compiler-Versionen  (3.0/3.01/3.52)  ge-
  testet und keine Fehler entdeckt.  DCM prüft aber trotzdem,  ob "GFA-BASIC"
  im Programmfile steht.  (Das ganze hört sich jetzt ein wenig verwirrend an,
  ist aber ganz leicht und äußerst nützlich!)


5. Das Menu und die Tastaturbelegung:
-------------------------------------

Über die Rechte Maustaste gelangt man ins Menu, das folgende Funktionen hat:

Neu: Rechte Amiga + N
  Alle Einstellungen werden gelöscht. Danach sieht der Bildschirm wieder  wie
  nach  dem  Programmstart  aus.  Nach "Neu" wird aber das Configfile nochmal
  geladen, da alle Variablen gelöscht wurden.
Parameter laden: Rechte Amiga + L
  Einstellungen, die vorher mit `Einstellungen Speichern` gespeichert wurden,
  werden  wieder  geladen,  und der abgesavte Screen wird wieder hergestellt.
  Es können alle DCM-Files von älteren DCM-Version geladen werden! Man sollte
  diese aber "updaten",  damit auch die neuen Gadgets immer mitberücksichtigt
  werden können (z.B. Window- und Screentitel für Patch-Funktion).
Parameter speichern: Rechte Amiga + S
  Alle  Gadgetstellungen,  die Parameter und die Namen der Files werden abge-
  speichert. So kann man z.B. die Parameter zu einem Programm, das immer wie-
  der compiliert wird (weil es noch gar nicht fertig  ist),  schnell  abrufen
  und  braucht  nicht erst alle Parameter einzustellen und die Namen einzuge-
  ben.
File löschen: Rechte Amiga + D
  Hier kann man einfach Files löschen. (Ich HASSE Programme,  von  denen  aus
  man keine Files löschen kann. Muß an meinem destruktiven Charakter liegen.)
Info:
  Es erscheinen einige Information über DCM.
Speicherinfo: Rechte Amiga + M
  Ein Requester, an dem man den freien Speicher ablesen kann, erscheint.
Programmende: Rechte Amiga + Q  oder  ESC
  dürfte wohl jedem klar sein. (Oder !?)
Iconify: Rechte Amiga + I
  Der DCM-Screen wird geschlossen (spart 42 KB) und  auf  dem  WB-Screen  er-
  scheint ein kleines DCM-Window. Aktiviert man dieses Window und drückt dann
  die  rechte  Maustaste, so wird der DCM-Screen wieder geöffnet und man kann
  weiterarbeiten.  Klickt  man  das  Closegadget  an,  so wird DCM verlassen.
  Iconify  sollte  immer  benutzt,  wenn man auf andere Screens zurückgreifen
  möchte! Tastenkombination: Rechte Amiga + I.


6. Das Configfile:
------------------

DCM sucht nach dem Programmstart und nach  jedem  "Neu"  im  S-Directory  der
Bootdiskette  nach dem File "DCM.Config". Ist dieses nicht vorhanden, so wer-
den Default-Werte eingesetzt (siehe unten). Tritt im File ein Fehler auf,  so
wird eine Fehlermeldung ausgegeben und es werden die Default-Werte verwendet.

Ändert  man das Configfile, so dürfen nur hinter dem Gleichheitszeichen jeder
Zeile Veränderungen vorgenommen werden. Dabei sollten auch keine  Leerzeichen
am  Anfang  oder  am Ende der eigenen Eingaben stehen, da diese mitübernommen
werden. Bei den Gadgeteinstellungen dürfen nur "TRUE" und  "FALSE"  verwendet
werden.

Achtung!!! Das Configfile hat NICHTS mit den DCM-Files zu tun,  die  man  mit
dem Menupunkt "Parameter Speichern" abspeichern kann!

Zwischenspeicher:
  In dieser Zeile wird eingetragen, wo DCM Files zwischenspeichern  kann.  Es
  können  auch  Directorys  als  Zwischenspeicher angegeben werden, aber dann
  MUSS immer ein Schrägstrich mit angegeben werden.
  Beispiel: "SYS:t/"
  Default: "RAM:"
Zugriffsdirectory:
  Im Zugriffsdirectory müßen sich die Files GfaLib, GfaLibrary und  GfaLibra-
  ray.Index befinden. Meistens hat man hier auch den Compiler, den Linker und
  Gfa-Basic.
  Beispiel: "DH0:Gfa-Basic/Gfa-Compiler/"
  Default: "" (aktuelles Directory)
Sourcesdirectory:
  Hier trägt man  das  Directory  ein, in dem man seine Sources hat. Will man
  von DCM ein Gfafile auswählen, so wird dieses Directory  zuerst  angezeigt.
  Man kann auch Files angeben.
  Beispiel: "DH1:Sources/DCM_V1.5/DCM.GFA"
  Default: "" (aktuelles Directory bzw. Zugriffsdirectory)
Parameterdirectory:
  Hier  trägt man das Directory ein, in dem man seine DCM-Files hat. Will man
  von DCM ein DCM-File auswählen, so wird dieses Directory zuerst  angezeigt.
  Gibt man hier ein File an, so wird dieses direkt nach dem Programmstart ge-
  laden.
  Beispiel: "DH0:Basic/Default.DCM"
  Default: "" (aktuelles Directory bzw. Zugriffsdirectory)
Compiler:
  Hier gibt man den Namen des Compilers an. Befindet  sich  dieser  nicht  im
  Zugriffsdirectory, so muß der vollständige Pfad angegeben werden.
  Beispiel: "C:GfaCompiler"
  Default: "GFA_BCOM"
Linker:
  Hier  gibt  man  den  Namen  des  Linkers an. Befindet sich dieser nicht im
  Zugriffsdirectory, so muß der vollständige Pfad angegeben werden.
  Beispiel: "C:GfaLinker"
  Default: "Gl"
GFABASIC:
  Hier gibt man den Namen des Gfa-Basic Interpreters an. Befindet sich dieser
  nicht im Zugriffsdirectory, so muß der vollständige Pfad angegeben werden.
  Beispiel: "DH0:Basic/Gfa-Basic3.0"
  Default: "GFABASIC"
Objectfile:
  Hier  trägt  man  den Namen des Objectfiles ein. Dieser Name erscheint dann
  auch in DCM unter Objectfile.
  Default: "RAM:TEST.o"
Programmfile:
  Hier  trägt man den Namen des Programmfiles ein. Dieser Name erscheint dann
  auch in DCM unter Programmfile.
  Default: "RAM:TEST"
Gfaname = Prgname:
  Hier  wird  das  gleichnamige  Gadget gesetzt. Steht hier TRUE, so wird das
  Gadget im Programm auf "an" gestellt. FALSE bedeutet "aus".
  Default: "TRUE"
Gfapfad = Prgpfad:
  Siehe Gfaname = Prgname.
  Default: "TRUE"
Objectfile löschen:
  Siehe Gfaname = Prgname.
  Default: "TRUE"
Objectfile ändern:
  Siehe Gfaname = Prgname.
  Default: "FALSE"
Gfafile löschen:
  Siehe Gfaname = Prgname.
  Default: "FALSE"
Programm patchen:
  Siehe Gfaname = Prgname.
  Default: "TRUE"
Iconify-X:
  Hier trägt man den X-Wert des Iconify-Windows ein. Bei  "0"  erscheint  das
  Window  ganz  links und bei "492" ganz rechts. Da einige Leute ja mit Over-
  scan- oder Interlace-Screens arbeiten, findet hier KEINE Überprüfung statt.
  Im  eigenen  Interesse  sollte hier (wie auch in den anderen Einstellungen)
  nur ernstgemeinte Werte eingetragen werden.
  Default: "492"
Iconify-Y:
  Wie "Iconify-X", jedoch wird hier der Y-Wert des Iconify-Windows angegeben.
  Default: "11"


7. DCM mit 512 K:
-----------------

Wenn  man  nur  512  K hat und DCM benutzen will, muß man so vorgehen: Zuerst
erstellt man sich eine Compilerdisk, auf der alle benötigten Files (Compiler,
Linker, GfaLib, GfaLibrary, GfaLibraray.Index, DCM, Run  im  C-Directory  und
DCM-Config im S-Directory) sind.
Im  Configfile stellt man dann als Zwischenspeicher "DF0:" ein, denn die RAM-
Disk würde sofort voll sein!
Jetzt kopiert man noch das Gfafile, was man compilieren möchte, auf die Disk,
und  bootet  dann  von dieser. Wichtig dabei ist, daß alle weiteren Laufwerke
ausgeschaltet sein müssen und keine weiteren Programme, Fonts,  oder  Keymaps
(also  alles  was  Speicher  kostet) gestartet wurden. Jetzt kann man in Ruhe
alles compilieren.
Alle  die 1 MB oder mehr haben, können sich diese Procedure ersparen und auch
bei laufender Workbench und mehreren Laufwerken DCM starten.


8. Fehler:
----------

DCM ist nun fehlerfrei! Mir selber sind auf jeden Fall keine Fehler aufgefal-
len.  Wer  trotzdem  Fehler findet schicke mir bitte eine Fehlerbeschreibung.
Ich werde den Fehler dann im nächsten Update beheben.


9. Kopierbestimmungen und Sonstiges:
------------------------------------

Ein Dankeschön an Frank Wächter für das DCM-Icon.

DCM V1.5 ist Shareware!!!  Wenn Ihr es mögt und benutzt schickt mir bitte ei-
nen kleinen Betrag (10DM).  Wer einmal diesen Betrag bezahlt hat, erhällt von
mir jeweils  eine Benachrichtigung,  wenn eine weitere Version fertiggestellt
wurde.  Für 15 DM bekommt man die neuste Version incl. Source automatisch zu-
geschickt (incl. Disk & Porto!).  Wem  dieses  Programm  nichts wert ist, der
darf es auch nicht benutzen!!!

DCM V1.5 darf nicht ohne meine Erlaubnis in irgendeine  PD-Serie  aufgenommen
werden. Ich habe deshalb in jede Version einen Vermerk gesetzt, in dem steht,
für wen diese DCM Version ist. Andere PD-Anbieter, die nicht versuchen  einen
Gewinn zu erwirtschaften, können bei mir jeweils die neuste Version bekommen.

Kein Bestandteil von DCM darf verändert werden! DCM darf nicht  mehr  weiter-
gegeben  werden, wenn eines der folgenden Files, die alle unverändert im Dir-
ectory "DCM_V1.5" stehen sollten, fehlt:

DCM_V1.5               DCM_V1.5.info
DCM_V1.5.dok           DCM_V1.5.dok.info
DCM.Config             DCM.Config.info
Gfa-Fehlerliste        Gfa-Fehlerliste.info

Die Texticons dürfen beliebig sein, aber das DCM-Icon  darf  nicht  verändert
bzw.  ausgetauscht  werden.  In Mailboxen brauchen die Texticons nicht mitko-
piert werden.

DCM V1.5 ist vollständig in Gfa-Basic 3.0 geschrieben. (Version 3.05 für die
Interessierten.)

Sharewaregebühren, Spenden für den Verein hungerleidener Programmierer,  Hei-
ratsanträge, reproduzierbare  Fehlerbeschreibungen,  Wünsche  für  zukünftige
Versionen und sonstige Briefe bitte an:

     Sandro Paolini
     Freiligrathstr. 79
     W-5600 Wuppertal 2
     Tel.: 0202 / 62 88 66 (nachmittags)
