GFA-SHELL Version 1.04 von Gregor Duchalski, Baueracker 15a, W-4690 Herne 1, Germany (ab 1.7.93: 44628 Herne) ------------------------------------------------------------------------------ Systemkonfiguration... Die GFA-SHELL l„uft auf jeder offiziellen TOS-Version inkl. MultiTOS und in jeder Aufl”sung. Die Verwendung einer Festplatte ist ratsam, aber keine Grundvoraussetzung zum Betrieb. Programmzweck... Vielleicht hat jeder GFA-BASIC-Programmierer in seinem Leben schon mal eine Shell geschrieben. Leider hat aber keine von den sicher existierenden super-praktischen und sauber programmierten Shells den Weg auf meine Fest- platte gefunden. Getrieben von Ungestm und Abenteuerlust machte ich mich daher auf, dieses Manko zu beheben... Diese Shell verfgt ber einige sehr praktische, aus dem t„glichen šberle- benskrampf des GFA-BASIC-Programmierers heraus entstandene Features. Programmstatus... Die GFA-SHELL ist Freeware, die Weitergabe erwnscht. Der Vertrieb ber PD- Versender ist ohne mein Einverst„ndnis verboten! Folgende Dateien mssen weitergegeben werden: -GFASHELL.PRG Die Programmdatei. -GFASHELL.RSC Die Resource-Datei. -GFASHELL.TXT Dieser Text. -GFASHELL.UPL Der Text fr den Mailbox-Upload, thanx. ------------------------------------------------------------------------------ Bedienung... Zu Beginn ”ffnen sich zwei Fenster: Eines davon, im folgenden Pfad-Fenster genannt, enth„lt die aktuell eingestellten Namen fr die GFA-, C-, ASS- RSC-Dateien und den Namen des zu erzeugenden Programmes. Die Eintr„ge k”nnen mit der Maus angeklickt werden und rufen dann die entsprechenden Meneintr„ge auf. Ein Doppelklick auf den PRG-Namen entspricht dem Anklicken des Buttons 'Extender' im 'Linkeroptionen'-Dialog und wechselt zwischen dem PRG- und ACC- Namen. Das zweite Fenster ist fr die Ausgaben von Compiler und Linker gedacht. Beide Fenster k”nnen frei verschoben und ihre Positionen im INF-File gespeichert werden. In fast jeder Dialogbox gibt ein Druck auf die Taste eine erkl„rende Beschreibung der jeweiligen Situation aus, aužerdem l„žt sich Shell weitgehend intuitiv bedienen. Ich m”chte daher nur einige Punkte herausgreifen, die mir einer weitergehenden Erkl„rung zu bedrfen scheinen: Ausgabe-Umlenkung... Die Ausgaben von Compiler und Linker werden in eine Datei umgelenkt. Nach Beendigung des Compilier-Vorgangs wird diese Datei im Fenster ausgegeben. Der Pfad und Name der Datei kann im Dialog 'Zugriffspade', Punkt 'Tempor„r' frei gew„hlt werden und sollte sich nach M”glichkeit auf einer Ramdisk befinden. Projekt-Dateien... Fr jede GFA-Datei kann ber den Menpunkt 'PRJ speichern' ein Projektdatei gespeichert, die alle relevanten Einstellungen der Shell enth„lt. Diese Datei wird sp„ter beim Ausw„hlen der GFA-Datei automatisch geladen und die Shell-Umgebung damit an das jeweilige Projekt angepažt. Z.B. sehr ntzlich, wenn Sie fr einige GFA-Dateien eine LINE-A-frei-gepatchte Lib verwenden, ein umst„ndliches Ausw„hlen der passenden Lib entf„llt. Funktionstasten-Belegung... Auf die 10 Funktionstasten k”nnen beliebige GFA-Dateien gelegt werden. Ein Drcken dieser Taste entspricht dann quasi dem Anw„hlen des Menpunkts 'GFA-Datei...' mit anschliežender Dateiauswahl. Eine eventuell vorhandene Projektdatei wird selbstverst„ndich ebenfalls geladen. Dies und das... Die Men-Shortcuts k”nnen Sie mit einem geeigneten RCS an Ihre Bedrfnisse anpassen. Achtung, MENUX-Fans: Es ist auch m”glich, den Menpunkt 'Erstellen' mit zu belegen, Shortcuts haben n„mlich immer Vorrang. INF- und PRJ-Dateien sind kompatibel, zum Laden wird exakt die gleiche Routine benutzt. Was bedeutet das fr Sie? Ganz einfach: Sollte eine Einstellung default-m„ssig nicht im PRJ-File gespeichert werden, die Sie aber gerne dort sehen wrden, k”nnen Sie sie einfach mit einem geeigneten ASCII-Editor einfgen. Der Menpunkt 'Erstellen' ist nicht anw„hlbar, wenn die Shell erkennt, daž die ausgew„hlten GFA-Datei „lteren Datum als das zugeh”rige Programm ist, eine erneute Compilierung also berflssig w„re. Noch Fragen?... Wie kann eine eingestellte Datei (z.B. im Dialog 'Zugriffspfade') wieder entfernt werden? Wenn ich in der Dateiauswahl "Abbruch" anw„hle, passiert gar nichts? Ganz einfach, lassen Sie dazu in der Dateiauswahlbox den File- namen einfach leer (ggf. drcken) und w„hlen Sie "OK" an. ------------------------------------------------------------------------------ Eigenwerbung... Die Routinen fr 'fliegende Dialoge', die dieses Programm benutzt, k”nnen Sie fr Ihr GFA-BASIC erhalten. Sie sind Shareware und liegen z.B. in der Maus DO unter dem Namen 'GFA_FLY4.TOS'. N„here Infos erhalten Sie unter der oben bzw. unten angegebenen Adresse bei mir. GFA-BASIC unter MultiTOS... Diese Shell l„uft prima unter MultiTOS, schade daž sich GFABASIC 3.x nicht genauso verh„lt. Zumindest im gewissen Maže kann man aber die Lauff„higkeit verbessern bzw. berhaupt erm”glichen: Interpreter, Compiler und Linker mssen mit dem Memory-Protection-Flag SUPER versehen werden (geht z.B. mit GD-FLAG). Um einigermažen mit dem Interpreter arbeiten zu k”nnen, sollte ihm zus„tzlich mit einem geeigneten Programm (z.B. PS_CONTRL) die h”chste Priorit„t (20) gegeben werden. Die Shell erkennt, wenn sie unter MultiTOS gestartet wurde und pažt einige Eigenschaften daran an. So wird z.B. keine Zeilennummer w„hrend des Compilie- rens ausgegeben. ------------------------------------------------------------------------------ Release-History... 1.00 (07.03.93): Erste ”ffentliche Version. 1.01 (08.03.93): -Der eingestellte BASIC-Interpreter-Zugriffspfad wird jetzt auch im Projekt-File gespeichert. 1.02 (10.03.93): -Neue Menpunkt 'Information...' gibt einige Infos ber das aktuelle Projekt aus (Mike Steffl). 1.03 (11.03.93): -Die AES-Nachricht WM_BOTTOMED wird untersttzt, d.h. ein Fenster kann durch Anklicken der Titelleiste in den Hintergrund gelegt werden. Momentan nur mit WINX 2.1 m”glich. 1.04 (24.03.93): -Beim Starten von Programmen wurde unter allen TOS-Versionen WIND_NEW() aufgerufen, diese Funktion existiert aber erst seit TOS 1.04. -Beim Belegen der Funktionstasten wurde die alte Datei nicht in der Datei- auswahlbox angezeigt. -Das File zur Ausgabeumlenkung wird, sofern nicht anders angegeben, unter "F_FORCE.TXT" im Ordner der Shell angelegt. Es hat sich gezeigt, daž einige Anwender mit dem Fehler -34 nichts anzufangen wužten (Lothar Buchen). -Auch die vom Compiler erzeugte Objektdatei wird defaultm„žig unter 'GFABASIC.O' im Shellordner angelegt. -Die Datei zur Ausgabeumlenkung und das vom Compiler erzeugte O-File k”nnen jetzt wahlweise nach dem Compilieren gel”scht werden. -Neuer Menpunkt 'Shell...' erm”glicht den Aufruf einer Kommandozeilen- shell, die sich bereits im Speicher befindet, Stichwort shell_p-Vektor (Michael Heng). -Die Belegung der Funktionstasten wird jetzt st„ndig im Fenster angezeigt, Anklicken mit der Maus entspricht dem Drcken der jeweiligen Taste. -Die Projekt-Information kann jetzt wahlweise immer nach dem Compilieren ausgegeben werden, Einstellung in 'Allgemeine...' (Mike Steffl). -Dem aktuellen Programm kann beim Starten bzw. Testen eine Kommandozeile bergeben werden. Dazu gibt es den neuen Menpunkt 'Kommandozeile...', die Zeile wird auch im PRJ-File gespeichert (Michael Heng). -Redraw-Probleme nach der Dateiauswahlbox mit normalen Dialogen beseitigt (Arne Schween). -Programme bekommen beim Start jetzt eine Kopie des aktuellen Environments bergeben (Arne Schween). ------------------------------------------------------------------------------ Probleme, Fragen und Bugreports k”nnen Sie auch per Modem loswerden: E-Mail an GREGOR DUCHALSKI @ DO im Mausnetz. Send bugreports and other recommendations to e-mail adress: Gregor_Duchalski@do.maus.de Herne 1, 24.03.93