----------------------------------------------------------------------

               /... und wieder ein wrdiger Nachfolger:/



                           *-Double Impact-*




                           /vom 'Dream-Team'/
       Christian 'chrisker' Krger  &  Kolja 'joust' Koischwitz

         /Modulares Kontrollfeld basierend auf der Arbeit von/
                  Christian 'Criss EGEM' Grunenberg



       Dokumentation (c) 1996-1998 von C. Krger, K. Koischwitz

----------------------------------------------------------------------

Inhaltsverzeichnis
==================

 1  Wie konnte es nur soweit kommen?

 2  Wozu brauch' ich denn das Papi?
    2.1  Fhigkeiten

 3  Warum diese Kombination?
    3.1  Der Preis fr noch mehr Freiheit...

 4  Die Installation

 5  Der Dateiselektor
    5.1  Der Autolocator - eine Wissenschaft fr sich..
    5.2  Das Klemmbrett
    5.3  Sechs kleine Helferlein
    5.4  Einige letzte Bemerkungen zur Bedienung
    5.5  Nebenlufigkeit
    5.6  Drag n' Drop
    5.7  Das Dateityp-Konzept

 6  Das modulare Kontrollfeld
    6.1  Bedienungselemente und Funktionen
    6.2  Erweiterte CPX-Flags von Freedom2

 7  Die EPXs
    7.1  Freedom2-Konfig
    7.2  Trouble Bubble
         7.2.1  Einstellungen
    7.3  Lines
    7.4  MODificaution
         7.4.1  Probleme
    7.5  Busblaster
         7.5.1  Systemvoraussetzungen
         7.5.2  Probleme
         7.5.3  Die CPX
    7.6  WindScreen

 8  Das ich das noch erleben mu...

 9  Wer nicht fragt beibt dumm...

10  Zurck in die Zukunft...

Anhang
======

 A  Wer darf was?
    A.1  Copyright
    A.2  Haftungsausschlu
    A.3  Warenzeichen

 B  Die Registrierung und ihr Preis
    B.1  Eine angebrachte(?) Rechtfertigung

 C  Die Tastaturbelegung (bersicht)

 D  'Changes'
    D.1  Version V2.04 ("Na endlich.... ")
    D.2  Version V2.03 ("...leider immer noch ein schwieriger Fehler...")
    D.3  Version V2.02 ("...es wird immer besser!")
    D.4  Version V2.01 ("Have more fun version...")
    D.5  Neu in der V2.00

 E  Der Formatstring
    E.1  Proportionale Fonts

 F  Informationen fr Leidensgenossen... (Programmierer)
    F.1  Zum Abfangteil
    F.2  EPX-Modul-Schnittstelle
    F.3  Dateiselektoraufruf
    F.4  Das "Trouble-Bubble" Protokoll



1  Wie konnte es nur soweit kommen?
***********************************

Die Entstehungsgeschichte von Freedom2 ist bestimmt genauso
interessant wie das Programm selbst. Daher plaudere ich mal fr die
neugierigen Leser ein bischen aus dem 'Nhkstchen': Schon bei der
Verffentlichung des Dateiselektors 'Freedom' von Kolja und mir
(chrisker) Anfang Januar '95, hatte ich den Gedanken einen XControl-
Clone zu programmieren, da im Zusammenhang mit Freedom diverse
Probleme mit CPXs existierten - Freedom-Fans wissen was ich meine. So
bekam Kolja denn auch am 15.01.1995 (ein Datum welches man sich auf
der Zunge zergehen lassen mu) von Ulrich Kaiser - einer der ersten
Registrierten - einen Brief, in dem er uns bat, ein alternatives
Kontrollfeld zu erstellen. Aus Zeit-, Lust- und Kenntnismangel wurde
dieses Projekt aber wieder schnell verworfen und wir haben uns auf die
Pflege von Freedom konzentriert, bis schlielich Ende Mrz einige
'geniale XControl-Clone-Ideen' von Kolja nach einer Umsetzung frmlich
schrieen. Wir beide waren aber immer noch mit anderen Arbeiten (ich
schrieb damals meine Diplomarbeit) ausgelastet, so da sich Christian
Grunenberg der Umsetzung unserer Konzepte annahm. Das grenzte fast
schon an ein Wunder, da Criss eigentlich schon im Dezember '94 das
Programmieren vollkommen einstellen wollte ('Es gibt schneres im
Leben...'), jedoch wohl von Freedom so angetan war, da er vorerst
weitermachte.
Aufgrund Christian Grunenbergs Neigung zu 'auerirdischem' und dem
Ziel Speicher mit dem XControl-Clone zu sparen, hat der Clone damals
von mir den Namen 'Space' bekommen. Das pate auch deswegen sehr gut,
weil man es als Abkrzung fr 'Superb Panel And Controling Extension'
betrachten konnte.

Das Hauptziel von Space war es, neben der Verarbeitung von normalen
CPXen, eine geeignete Umgebung fr kleinere bis mittlere EnhancedGEM-
Programme zu bieten. So sollte der Dateiselektor Freedom ein Modul fr
diesen XControl-Clone werden. Fast unerwartet ging die Entwicklung von
Space in der Anfagszeit recht zgig voran und Kolja schaffte es
tatschlich, Freedom als Modul fr Space (mit einigen Problemen) zu
realisieren. Leider machte dann Anfang August der Rechner von Criss
schlapp, was dazu fhrte, da Criss nun endgltig das Computern
aufgab. Sein 'Vermchtnis' war eine Space-Version, die unter
bestimmten Voraussetzungen schon recht stabil jedoch nicht problemfrei
lief. Diese durch 'Maus-Netz-Artikel' bekannte Version schwirrt noch
heute bei einigen der damaligen Beta-Tester herum.

Nach einer etwas lngeren Pause nahm ich schlielich Kontakt zu Criss
auf, um das Projekt nicht sterben zu lassen. Das Resultat: Kolja und
ich vereinbarten mit Criss das Programm zu Ende zu fhren. Eine
Entscheidung, die Kolja anschlieend oft verfluchte, denn
hauptschlich war er es, der sich durch die Flut an Programm-Quellcode
einen Weg bahnen mute, da ich berwiegend mit meinem Diplom
beschftigt war. Nach ersten tieferen Auseinandersetzungen mit Space
stellte Kolja schlielich fest, da es sich Criss an einigen Stellen
doch noch zu leicht gemacht hatte und viele unerkannte Probleme in
Space stecken. Auerdem zeichnete sich ab, da das perfekte
Funktionieren eines Freedom-Moduls unter Space nicht gewhrleistet
werden kann. Unmut und Programmierlustlosigkeit prgten diese Zeit,
bis mir schlielich /die/ Lsung einfiel: Freedom und Space mssen
verschmolzen werden!

Kolja war aufgrund der Vorteile dieses Konzepts schnell berzeugt und
gab begeistert 'grnes Licht'. Wir schpften neue Kraft und das
Programm, welches logischerweise Freedom2 (zweite Version, zwei
Funktionalitten) getauft wurde, nahm zusehends Gestalt an. Dabei
wurden Freedom und Space nicht einfach 'vermanscht', sondern die
Funktionen von Space berarbeitet und zusammen mit unseren neuen
Konzepten ordentlich in Freedom integriert - alles mit dem Ziel, auch
hchsten Ansprchen zu gengen.

Parallel zu dieser Entwicklung trieb ich mein Projekt, die
Systemerweiterung 'Liberty', voran. In der mittlerweilen fast
einjhrigen Entwicklungszeit lste ich viele Probleme und schrieb
Funktionen, von denen Freedom2 stark profitiert. Das Resultat:
Schwierigkeiten und Unschnheiten die in Freedom noch auftraten sind
in Freedom2 beseitigt!

Zustzlich, (als 'nette' Abwechslung) entstanden 'so nebenher' ein
paar sehr ntzliche Module fr Freedom2, die einen kleinen
Vorgeschmack auf noch kommendes geben. Freedom2 ist da, die
Entwicklung geht weiter...

Berlin, 30.09.1996



2  Wozu brauch' ich denn das Papi?
**********************************

Bei Freedom2 handelt es sich um den bewhrten multitaskenden Fenster-
dateiselektor Freedom, erweitert um eine Modulschnittstelle zur
Library 'EnhancedGEM'. Gleichzeitig bietet Freedom2 Ihnen komfortablen
Zugriff auf CPX-Module, wie Sie sie auch vom Atari-Kontrollfeld
'XControl' kennen. 'XControl' wird durch den Einsatz von Freedom2
berflssig, was sich positiv auf die Lauffhigkeit des Kontrollfeldes
unter 68040er Prozessoren (WBCache) auswirkt... ;-)


2.1  Fhigkeiten
================

Freedom2 beseitigt bei CPXs (*C*ontrol *P*anel E*x*tension*s*!)
Einschrnkungen und schafft zustzliche Freude durch folgende
Eigenschaften:

    beliebig viele CPXs gleichzeitig in seperaten Fenstern aktiv

    CPX-Fenster seperat ikonifizierbar und im Hintergrund bedienbar

    alle CPXs werden (durch eine "LetemFly" hnliche Logik)
     tastaturbedienbar!

    CPXs knnen einfach aus dem Dateiselektor heraus gestartet werden
     und mssen daher nicht (nur) in 'C:\CPX\' stehen oder eine
     spezielle Dateiendung haben

    der CPX-Pfad wird komplett 'ausgelesen', d.h. CPXs drfen sich
     auch in Unterordnern des Pfades befinden (mehr Ordnung und
     bersichtlichkeit)

    CPXs knnen optional auch aufwendige Vektoricons zugeordnet
     werden

    CPXs erscheinen (optional) im AES-3D-Look

    CPX-Popups und CPX-Slider sind deutlich komfortabler zu bedienen

    CPXs knnen auf dem Desktop angemeldet, als Icons abgelegt und
     gestartet werden (alternativer Desktop bzw. 'NEWDESK', 'MAGXDESK'
     erforderlich!)

    Optional werden CPXs in ihrer Gre an einen vernderten AES-Font
     angepasst (vernderter 'obfix')

Auerdem enthlt das Freedom2-Paket noch einige sinnvolle EPX-Module.
EPXs (*E*nhanced *P*anel E*x*tension*s*) sind praktisch EGEM-Programme, welche
die erweiterten GEM-Funktionen ber eine entsprechende Schnittstelle
in Freedom2 beziehen. Daher sind diese Module im Vergleich zu
'normalen' EGEM-Applikationen auch erheblich kompakter.
Im Gegensatz zu CPXs unterliegen EPXs auch nicht mehr alten
Restriktionen wie z.B. Fenstergre oder das Verbiegen von Betriebs-
systemsfunktionen.

Um erste Eindrcke von EPXs zu vermitteln, sind folgende Module
beigefgt:

    ein MOD-File-Player, der in der Falcon-Version den DSP nutzt

    ein Modul, das Ihnen das Online-Scrollen in Fenstern mit der
     rechten Maustaste ermglicht

    eine 'Sprechblasen'-Hilfe

    ein kleines Grafikdemo-Modul

    ein Modul um Freedom2 benutzerfreundlich konfigurieren zu knnen!
     (das Ende der lstigen Text-Konfig-Datei)

Selbstverstndlich werden weitere Module folgen. Einige sind in der
Entwicklung, andere in Planung.

Zustzlich zu den oben aufgefhrten Fhigkeiten, bleiben ihnen
natrlich die schon bekannten Dateiselektor-Funktionen erhalten, die
nun auch (wenn sinnvoll) Auswirkungen auf den CPX-Modus haben:

    ber 7 nonmodale Selektoren gleichzeitig!

    komplett nebenlufig!

    Alertboxen optional im Fenster

    Programme, die VA_START untersttzen/eine Menzeile haben, mssen
     z.T. nichtmal blockiert werden!

    Untersttzung von langen Dateinamen

    Font, Gre und Farben des Dateiselektors sind variabel

    Drag&Drop Fontprotokoll wird untersttzt

    Tastaturbelegung 99% 'Selectric'-kompatibel

    Mehrfachselektion (natrlich /auch/ Selectric-kompatibel)

    bis zu 40 voreinstellbare Dateinamen, Pfade und Extensions

    History der letzten 200 ausgewhlten Dateien

    maximal intuitive Bedienung, kurze Wege, wenig Klicks

    Popups noch und ncher...

    Linkshnder-Mode

    Unix-Patterns (*,?,[]) sowie Extensionlisten ("*.TOS,*.PRG")

    Dateien/Ordnern knnen Ikonen zugeordnet werden

    Drag&Drop-Untersttzung (Pfade & Dateien knnen auf den
     Dateiselektor gezogen werden (AV- bzw MTOS-D&D) und umgekehrt

    Nachrichen, die nderungen in Verzeichnissen bekanntgeben, werden
     ausgewertet (SH_WDRAW, AV_PATH_UPDATE, SC_CHANGED) und versendet!

    Fuzzy-Namenserkennung! Freedom2 tut alles, um der aufrufenden
     Applikation (auch unter SingelTOS) einen aussagekrftigen Namen
     zu geben (Menzeile, Xacc, AV-Protokoll...)

    Dateien lschen und touchen, neue Ordner/Dateien erzeugen und
     Datei/Ordner-Info

    Dateien nach Maske suchen, selektieren und deselektieren

    Pfad oder selektierte Dateien knnen ins Clipboard exportiert
     werden

    volle Kommunikation mit einem vorhandenen AV-Server (z.B. Thing)

    Dateien lschen und touchen

    Kopieren, verschieben per D&D (Drag&Drop) und Klemmbrett, Kobold
     2/3 wird automatisch benutzt, wenn er sich im Speicher befindet
     oder die Environment Variable KOBOLD_PATH unter Multitasking den
     Pfad zum Kobold weist..

...und immernoch werden mit Freedom2 folgende rgnisse, die bei den
normalen Alertboxen / Dateiselektoren auftreten, beseitigt:

    Terminalprogramme hren auf, anzuwhlen und kriegen
     bertragungs-Fehler beim Up-/Download

    GEM-Raytracer hren auf zu tracen

    GEM-Morpher hren auf zu morfen

    GEM-konforme Packer hren auf zu packen (es sei denn, sie sind
     von Christian Grunenberg...)

    die Zeit in Fenster-Uhren bleibt stehen

    bei Druck auf [F1] kommt nicht mehr der Kobold ;-)

    das MagiC-Popup ist nicht mehr erreichbar

    die Menzeile ist nicht mehr erreichbar

    Sie knnen beim Kopieren/Verschieben/Lschen und Formatieren
     nicht weiterarbeiten, wenn das Programm dafr einen Dialog
     ffnet, wie es bspw. die Shell Gemini tut



3  Warum diese Kombination?
***************************

Vielleicht sind Sie von der Idee Dateiauswahl und Kontrollfeld zu
verschmelzen nicht sonderlich begeistert. Folgendene Vorteile sollen
Sie von dem Konzept berzeugen:

    Freedom2 bentigt weniger Speicher als die Kombination XControl +
     Freedom

    Freedom2 ist trotz seines Umfangs handlich und schnell zu
     bedienen

    die Bedienung von Dateiauswahl und Kontrollfeld ist nahezu
     identisch

    einige der Freedom2-Fhigkeiten sind nur durch die Kombination
     realisierbar

    EPXs profitieren ebenfalls von den vielen permanent angebotenen
     Funktionen die durch die Kombination entstehen


3.1  Der Preis fr noch mehr Freiheit...
========================================

Bei der Entwicklung von Freedom2 muten einige vorteilhafte
Eigenschaften von Freedom zu Gunsten anderer Fhigkeiten gestrichen
werden. Diese bersicht klrt darber auf:

Leider mu auf dieses verzichtet werden...:

    Freedom2 kann nicht mehr im 'Nachlademodus' betrieben werden (der
     sowieso nur dann Speicher sparte, wenn man ihn nicht brauchte...)

    Freedom2 luft unter MiNT-Memory-Protection nur im 'Global'-
     Speichermodus; Programmflags von Freedom2 also nicht ndern!
     (kleiner Trost: Speicher den Freedom2 fr sich und seine Module
     anfordert, ist vorzugsweise 'Privat')

    Freedom2 darf (noch) nicht von einer virtuellen
     Speicherverwaltung (VRAM, Outside) ausgelagert werden; die
     nchste Freedom2-Version wird dieses Manko jedoch nicht mehr
     haben

...weil uns folgendes wichtiger war:

    Freedom2 lt sich problemlos deinstallieren

    Freedom2 kann sich das Auto-Ordner Programm 'Liberty' mit anderen
     Programmen teilen

    Freedom2 Module knnen/drfen OS-Funktionen ndern/abfangen.

    Freedom2 lt sich einfach ber ein Modul direkt konfigurieren!
     Die Konfiguration hat keine statischen Beschrnkungen mehr wie
     'max. 10 Programme' o..



4  Die Installation
*******************

Die Installation von Freedom2 gestalltet sich im Vergleich zu den
1.x-Versionen etwas anders:

    Installieren Sie zunchst 'Liberty'.
     'Liberty' ist eine residente Freeware-Systemlibrary von Christian
     Krger, die das System um einige essentielle, von vielen
     Applikationen bentigte Fhigkeiten erweitert. Dazu zhlen neben
     Funktionen zum einfachen Abfangen von Betriebsystemsaufrufen eine
     schnelle, komfortable und vor allem sichere Speicherverwaltung,
     die Accessories auch unter SingleTOS dauerhaften Speicher
     bereitstellt sowie eine ganze Reihe von hochoptimierten
     Grafikfunktionen zum Laden und Manipulieren von Raster- und
     Vektorgrafiken. Alle drei Funktionalitten werden von Freedom2
     und einigen seiner EPX-Module bentigt.
     Genaueres zur Installation der Systemlibrary entnehmen Sie bitte
     der Dokumentation die 'Liberty' beiliegt. (Im Freedom2-Paket
     entahlten.)


    Anschlieend kopieren Sie FREEDOM2.ACC dorthin, wo bisher
     [XZ]CONTROL.ACC stand und lschen oder umbenennen Sie letzteres
     in [XZ]CONTROL.ACX.
     /Falls Sie [XZ]CONTROL.ACC nicht installiert hatten: FREEDOM2.ACC
     gehrt in das Wurzelverzeichnis Ihres Bootlaufwerkes, bzw. in den
     Accessory-Ordner./

    Booten Sie nun den Rechner neu.

    Freedom2 sucht beim Start die CPXs im Ordner "C:\CPX" oder im
     Pfad der mit der Environmentvariablen "CPXPATH" angegeben wurde.
     Nur wenn der CPX-Ordner gefunden wird und sich in diesem das
     Freedom2-Konfigurations-CPX befindet, kann Freedom2 seine
     Konfigurationsdatei laden!

    Die Konfigurationsdatei wird vom Konfigurations-CPX mit
     'shel_find' gesucht. Das heit die Datei wird in den folgenden
     Verzeichnissen gesucht:

        - im aktuellen Verzeichnis

        - im Wurzelverzeichnis

        - in allen Verzeichnissen, die in der Variable PATH des AES-
          Environments angegeben sind

        - in dem Pfad, in welchem sich das Programm z.Zt. befindet (ab
          TOS-Version 1.04)

    Freedom2 erscheint als Acc-Eintrag "Freedom2" im ersten
     Pulldown-Menu. Whlen Sie den Eintrag an, so erscheint Freedom2
     im CPX-Modus, d.h. in seiner Funktion als Kontrollfeld. Whlen
     Sie den Acc-Eintrag an whrend Sie die rechte Shift-Taste
     gedrckt halten, so wird Freedom2 im gewohnten Dateiselektormodus
     geffnet.

Optional kann die Freedom2-Programmdatei auch in FREEDOM2.APP
umbenannt werden und als Applikation (etwa unter MagiC im APPS-Ordner)
gestartet werden. Sie trgt dann keinen Accessory-Menu-Eintrag ein und
kann nur ber einen Dateiselektor-Aufruf bzw. per VA_START-Nachricht
aktiviert werden. Auerdem besteht in diesem Fall nicht die
Mglichkeit der Deaktivierung von Freedom2 durch Anwahl des Acc-
Eintrages zusammen mit [Alternate].

Da von einigen Freedom-Benutzern der Wunsch geuert wurde, Freedom
zusammen mit Selectric zu installieren, besteht diese Mglichkeit
auch. Das zu diesem Zweck in Umlauf gebrachte Programm KILLFSEL,
welches nur Selectric's Eintrag im Cookiejar lscht, ist berfssig.
Freedom2 ist selbst dazu in der Lage: Wenn Freedom2 bei seiner
Installation einen FSEL-Cookie mit Versionsnummer <3.00 vorfindet,
ersetzt es dessen Wert durch einen Zeiger auf seine eigene Struktur.
Wenn Sie nun noch das Glck haben, das Freedom2 sich nach Selectric
ins GEM hngt, passiert genau das gewnschte: Freedom erscheint bei
allen sauberen Programmen, Selectric bernimmt den Rest sowie die
Behandlung des 'Programm starten..' Eintrags im MagiC-Popup.
/Die Installation zusammen mit Selectric bringt im Gegensatz zu den 1.x
Versionen bei Freedom2 so gut wie keinen Nutzen! Da 'Liberty'
unsaubere Aufrufe korrigiert und demzufolge (fast) immer Freedom2
aufgerufen wird, stellt die einzige Existenzberechtigung dieses
Features das MagiC-Popup dar./



5  Der Dateiselektor
********************

Freedom2 verfgt extra fr die Freunde der Mausbedienung ber eine
schier unendliche Zahl von Popups. Die Meisten davon sind bei Freedom
durch Klick auf die Box erreichbar, in der der aktuelle Pfad zu sehen
ist.


Wechsel des Laufwerks - per Maus                 - via Tastatur
-------------------------------------------------------------------------
Klick auf Laufwerksbuchstabenbestandteil des     Control-L ffnet
Pfades ffnet ein Popup mit den vorhandenen      das Popup ebenfalls
Laufwerkskennungen.
                                                 Alternativ:
                                                 Alt-Laufwerksbuchstabe
                                                 schaltet sofort um


Vernderung der Anzeigemaske - per Maus          - via Tastatur
-------------------------------------------------------------------------
Klick auf die Anzeigemaske des Pfades
zeigt bei einem ..
.. Linksklick:  die gerade sinnvollen Masken     Control-Y
.. Rechtsklick: die benutzerdefinierten Masken   Control-X
                                                 (+Shift, wenn Dateien
                                                 selektiert sind)
.. Doppelklick links: die Maskeneingabe          Control-E
...Doppelklick rechts: Wechsel zwischen '*.*'
          und der vom Programm bergebenen Maske

                                                 Alternativ:
                                                 Control-Tastenblock-1..0
                                                 schaltet zwischen den
                                                 ersten 10 benutzerdefin-
                                                 ierten Masken um,
                                                 Shift-Ctrl-Tastenblock-1..0
                                                 whlt Maske 11..20,
                                                 Control-Tastenblock-.
                                                 whlt die geklemmte Maske
                                                 Control-Tastenblock-*
                                                 whlt *.* als Maske


Verzeichnisebene wechseln - per Maus             - via Tastatur
-------------------------------------------------------------------------
Klick mitten in den Pfad mit der linken
Maustaste auf ..
.. Verzeichnis: Popup mit alternativen Ver-
                zeichnissen ffnet sich
.. Trenner (\): Der Pfad wird an dieser Stelle   Control-1..0 geht 1..10
                "abgeschnitten", was ein Ersatz  Ebenen zurck
                fr das schnelle zurcksetzen
                mittels "Mac-Path" darstellt
.. letzten \:   Die Verzeichnisse in der
                aktuellen Ebene kommen in einem
                Popup

Klick in den Closer (links neben dem Pfad)       Control-Backspace oder
geht eine Ebene zurck, mit einem Doppel-/       Control-Undo
Rechtsklick gehts ins Wurzelverzeichnis          Shift-Control-Backspace
                                                 o. Shift-Cobtrol-Undo

Direkter Einfach- oder Doppelklick (je nach      Ordner mit den Pfeil-
Einstellung) auf einen Ordner im Dateifenster     tasten anfahren und auf
wechselt in diesen Ordner                        Return/Enter hauen

Durch Doppel- bzw. Rechtsklick auf das Pfad-     Control-P
Objekt irgendwo vor dem letzen Trenner (\)
erreicht man das Popup mit den benutzerde-       Alternativ:
finierten Pfaden.                                Alternate-1..0
                                                 schaltet zwischen den
                                                 ersten 10 benutzerdefin-
                                                 ierten Pfaden um,
                                                 Alternate-Esc whlt den
                                                 geklemmten Pfad
                                                 Shift-Alternate-1..0
                                                 fr Pfad 11..20


Dateien (de-)selektieren - per Maus            - via Tastatur
-------------------------------------------------------------------------
Eine einzelne Datei kann durch einfachen
Linksklick selektiert werden.
Sollen mehrere Dateien selektiert werden, muss
die Maustaste gedrcktgehalten werden.
Dabei ist zu beachten, das die Aktion nach
einer gewissen Ruhephase zu Beginn als
'Greifen' zwecks Drag&Drop interpretiert wird.
Dieser Zeitraum ist jedoch konfigurierbar.
Das Fenster wird automatisch gescrollt, wenn
der Mauszeiger whrend des Selektierens an den
oberen bzw. unteren Rand stt.
Mchten Sie mehrere Dateien selektieren, die
nicht nicht direkt aufeinander folgen, so
klicken Sie sie einzeln an und halten dabei
die Shift-Taste fest. Sie verhindert, das die
schon selektierten Dateien wieder deselektiert
werden.
Alle Dateien knnen durch einfachen Links-      Control-A
klick auf den 'Alles selektieren'-Knopf rechts
vom Pfad-Objekt (de-)selektiert werden.
Durch einen Rechtsklick auf diesen Knopf wird   Shift-Control-A
die aktuelle Selektion invertiert.

Dateien selelektieren nach Maske.               Control-S
Ein Doppelklick links auf den 'Alles selek-
tieren'-Knopf ffnet einen Dialog, in dem Sie
eine Maske eingeben knnen. Bei Bettigen von
'Ok' werden die auf die Maske passenden Dateien
im aktuellen Dateiselektor zustzlich selektiert.

Dateien deselektieren nach Maske.               Shift-Control-S
Ein Doppelklick rechts auf denselben Knopf
ffnet den Dialog zum deselektieren.

Das Popup mit den voreingestellten Dateien lt    Control-M
sich durch Rechtsklick auf das Wort "Datei:"
vor dem Editfeld erreichen. Mit einem Links-
klick bekommt man das History-Popup, das die
letzen (max. 200) ausgewhlten Dateien zeigt.      Control-<
Wird beim Auswhlen einer Datei aus einem der
beiden Popup's eine Umschalttaste festgehalten,
so wird die Datei nur 'angefahren' und selek-
tiert, nicht jedoch der Dateiselektor geschlos-
sen.


                                                Mit den Pfeiltasten kann
                                                die aktuell selektierte
                                                Datei wie ein Cursor ver-
                                                ndert werden.

                                                Wird dabei Shift festge-
                                                halten, so gehts seiten-
                                                weise weiter, mit Control
                                                und auch mit ClrHome kann
                                                zum Anfang/Ende der Liste
                                                gesprungen werden, womit
                                                auch ein Scrollen per
                                                Tastatur ermglicht ist
                                                (s. folgender Abschnitt)


Wenn Sie Freedom so konfiguriert haben, knnen
Sie auch mit einen Rechtsklick ins Dateifenster
einem Linksklick mit gedrckter Shift-Taste
simulieren.

Aktuellen Zustand ins Klemmbrett sichern.        Control-C
Zustand aus dem Klemmbrett wiederherstellen.     Shift-Control-V


In den Dateien scrollen - per Maus               - via Tastatur
--------------------------------------------------------------------------
Die einfachste Mglichkeit: Sie nehmen den      (s.o.)
Slider durch einen einfachen Linksklick in die  Control-Up, Control-Down
Hand. Das Dateifenster wird beim Scrollen in
Echtzeit aktualisiert. Alle anderen Bedienele-
mente des Sliders entsprechen denen von GEM-
Fenstern.

Wenn Sie Freedom so konfiguriert haben, knnen
Sie auch durch einen Rechtsklick direkt in das
Dateifenster scrollen (hnlich wie beim Desktop
'Thing', allerdings mit dynam. Scrollweite)


Vernderung der Sortierung - per Maus            - via Tastatur
--------------------------------------------------------------------------
Rechts- oder Doppelklick auf den Slider          Control-J
ffnet das Sortierungspopup (Sehr praktisch,
denn wenn man eine Datei sucht und sich deshalb  Alternativ:
fr eine andere Sortierung entscheidet, hat man  Control-H: nach Namen
meist eh grad den Slider "in der Hand"           Control-Z: nach Datum
                                                 Control-G: nach Gre
                                                 Control-T: nach Typ
                                                 Control-K: Keine Sort.

                                                 Control-R: Sort. revers

Die Typsortierung kann zZt nur ber das Popup
an- und ausgeschaltet werden


Drag & Drop - per Maus                           - via Tastatur
--------------------------------------------------------------------------
Wird ber selektierten Dateien die linke Maus-   Alt-Taste festhalten,
taste festgehalten, erscheint nach kurzer Zeit   mit den Pfeiltasten den
ein Geisterrahmen mit den Umrissen der selek-    Mauszeiger ber die Da-
tieren Objekte. Wird die Maustaste losgelassen,  teien manvrieren, und
werden die Dateien an die Position unter dem     mit Alt-Insert 'greifen'.
Mauszeiger 'abgeworfen'. Freedom zeigt whrend   Dann knnen Sie mit den
der Drag&Drop Aktion unten im Infoobjekt an,     Pfeiltasten berall hin-
was fr eine Aktion durch das Drag&Drop ausge-   transportiert werden.
lst wird. Werden die Dateien auf eine fremde    (Zugegeben: Das ist kein
Applikationen gezogen, kann Freedom die Aus-     Feature von Freedom (o:)
wirkungen nicht voraussehen ("tun Sie nichts
unberlegtes" ;-)). Oft wird garnix passieren,
es sei denn, die Fenster eines AV-Servers (wie
'Thing' oder 'Gemini'), oder eines Programms,
das sich beim AV-Server angemeldet hat, sind
das Ziel.

Freedom kann auch mittels Drag&Drop kopieren bzw.
verschieben, wenn Sie Dateien aus oder auf Fenster
des AV-Servers ziehen, oder ein weiterer offener
Freedom-Dateiselektor das Ziel ist. Ein weiterer
(nicht an eine Applikation gebundener) Freedom-   auch mit Control-Help
Dateiselektor lt sich mit einem Doppel- bzw.     oder Shift-Help
Rechtsklick auf das Freedom-Logo rechts oben
ffnen.


Freedoms Funktionen - per Maus                   - via Tastatur
--------------------------------------------------------------------------
Lschen: Selektieren Sie die zu lschenden       Control-D
Objekte und klicken Sie auf den Mlleimer
unten links. Alternativ knnen Sie die Objekte
auch auf den Eimer ziehen.

Neues Objekt: Klicken Sie auf das Ordner-        Control-N
Symbol unten links (das 2.). Ein Dialog
erscheint, ber den Sie einen Ordner oder
eine (leere) Datei in dem aktuellen Verzeich-
nis anlegen knnen.

Objekt-Information: Selektieren Sie ein oder     Control-I (Tab)
mehrere Objekte, deren Namen und/oder Attribute
Sie verndern mchten und klicken Sie mit der
linken Maustaste auf das Info-Symbol unten links
(das 3.). Alternativ knnen Sie die Objekte
auch aufs Icon ziehen.

Gesamt-Information ("Dateien-Zhlung"):          Shift-Control-I
Whlen Sie, nachdem Sie eine oder mehrere
Dateien selektiert haben, das Info-Symbol mit
der rechten Maustaste an, so wird eine
(rekursive) Dateien-Zhlung ber alle zur Zeit
selektieren Objekte in Gang gebracht.

Laufwerks-Info ("Dateien-Zhlung"):              Shift-Control-I
Klicken Sie das Info-Icon (mit links oder
rechts), ohne das Dateien selektiert sind, so
werden alle Dateien auf dem Laufwerk gezhlt.

Touch:                                           Control-B
Eine Funktion, die eher fr Programmierer
interessant ist. Sie knnen sie nun auch per
Maus erreichen, indem Sie Dateien auf das
"Neuer Ordner"-Icon draggen.

Klemmbrett-Export:                               Control-C,Control-X
Der Zustand (Pfad und ggf. selektierte Dateien)
wird ins Klemmbrett exportiert. Dateien selektieren
und auf das Klemmbrett-Icon ziehen. Bei Control-X
wird zustzlich eine Verschiebe-Markierung gesetzt

Klemmbrett-Import (Kopieren/Verschieben)         Control-V
Klemmbrett mit links anklicken und Dateien ins
Verzeichnisfenster draggen. Bei gedrckter
Ctrl-Taste wird Verschoben. Wurden die Dateien
mit Control-X geklemmt und nun mit Control-V
geholt, wird ebenfalls verschoben.

Klemmbrett-Import (Zustand wiederherstellen):    Shift-Control-V
Zustand aus dem Klemmbrett wiederherstellen.
Klemmbrett-Icon mit rechts anklicken. So ist
auch ein "Austausch" mit dem Desktop Gemini
mglich: In Gemini kann die aktuelle Selektion
in einem Fenster mit ^C exportiert und dann in
Freedom mit ^V wieder importiert werden. Leider
geht's in die andere Richtung (wg. fehlender
Funktion in Gemini) nicht!

Auerdem kann nun wieder eine Dateiliste         Shift-Control-C
formatiert mit einem Formatstring (#NICEFORMAT)
ins Klemmbrett exportiert werden, etwa, um sie
in einem anderen Programm einzubinden. Dazu ist
nur das Anwhlen der gewnschten Dateien und
ein folgender Doppelklick auf das Klemmbrett-
Icon ntig. Die so exportierten Dateien knnen
nicht wieder mit ^V Importiert werden.


Dateien suchen: Lupe unten links anwhlen.       Control-F
Ein Dialog erscheint, in dem Sie eine Such-
Maske eintippen knnen, und angeben drfen,
wo gesucht werden soll. Die Environment-Var.
DRIVEMAP wird, wenn gesetzt, bei der Suche
auf allen Laufwerken beachtet. Mit 'Ok' wird
die Suche gestartet. ESC bricht die Suche ab.
Wurde eine Datei gefunden, erscheint ihr Name
in dem breiten Knopf unter der Suchmaske.
In diesem Fall haben Sie 4 Auswahlmglichkeiten:
breiter Knopf: Datei wird im aufrufenden
Dateiselektor selektiert und an die Applikation
ausgeliefert.
Ok: Datei wird im aufrufenden Selektor
selektiert. Bei einem Rechts-/Doppelklick die-
selbe Wirkung der 'breite Knopf'..
Weiter: Es wird eine Weitere auf die Maske
passende Datei gesucht.
Abbruch: Suchdialog ohne Aktion schlieen.

Freedom stellt normalerweise zwischen einem
Suchdialog und dem aufrufenden Dateiselektor
eine "unsichtbare" Verbindung her um dann, wenn
sie im Suchdialog eine Datei auswhlen, diese
im zugehrigen Dateiselektor zu selektieren. Da
Sie so nur einen Suchdialog pro Dateiselektor
ffnen knnen, gibt es noch die Mglichkeit,
bel. viele "ungebundenene" Suchdialoge mit       Shift-Control-F
einem Rechtsklick auf die Lupe zu ffnen.
(Wenn sie das ihrer Platte antun wollen.. ;-))

Objekt ffnen: Ist vor allem fr Benutzer von    Datei(en) selektieren
Multitasking-Betriebssystemen wie MagiC oder      und Control-O drcken
MTOS interessant: Ein rechter Doppelklick auf
ein Objekt bewirkt das 'ffnen' des Objektes,    Alternativ Control-Return
d.h.: Handelt es sich um ein Programm, so
wird es gestartet, ansonsten wird ggf. einem
konfigurierbaren Viewer eine Nachricht mit der
selektierten Datei gesendet.
Freedom startet den Viewer auch parallel nach,
wenn er ihn nicht im Speicher antrifft. Da
dies insgesamt nicht sehr flexibel ist,
berlt Freedom das ffnen dem AV-Server,
sofern ein solcher vorhanden ist. Der beachtet
dabei dann die angemeldeten Applikationen usw.
Ausserdem lassen sich dann auch Verzeichnisse
'ffnen'.



5.1  Der Autolocator - eine Wissenschaft fr sich..
===================================================

Der Autolocator eines gewissen anderen Dateiselektors war noch
einfach, doch durch Freedom ist auch das anders. Jetzt endlich kommen
auch eingeschworene Feinde des Autolocators in den Genuss seiner
Funktionalitt. Mit Freedom kommt der 'Einmal-Autolocator', wie man
ihn schon von diversen Commandline-Shells als 'Completion' kennt: Ist
der stndige Autolocator abgeschaltet, kann mit Tab ein einmaliger
Autolocator ausgelst werden. Da hier ein offensichtlicher Konflikt
mit der Funktionalitt 'Objekt-Info' (auch Tab) vorhanden ist, und wir
es (wie auch sonst) allen recht machen wollen, ist die Tab-Taste auf
eine der beiden Funktionalitten konfigurierbar. Objekt-Info ist ja
zustzlich mit Control-I erreichbar, der einmalige Autolocator liegt
zustzlich (fest) auf Control-Tab. Freedoms Autolocator sucht
standardmig nach Ordnern und Dateien. Wird zustzlich die Shift-
Taste gedrckthalten, wird nur auf Dateien gematcht. Eine nochmalige
Beschleunigung des Autolocatens bringt das 'Cycle'-Feature des
einmaligen Autolocators. Wird derselbe nmlich mehrfach hintereinander
ausgelst, geht er auch hintereinander alle Dateien durch, auf die das
schon Eingetippte passt.


5.2  Das Klemmbrett
===================

Prinzipiell dient das Klemmbrett dazu, Dateinamen zur spteren
Verwendung oder zur Weitergabe an andere Programme zwischenzuspeichern
(Die Datei SCRAP.TXT im System-Klemmbrett wird dazu benutzt). Um
Dateien auf dem Klemmbrett zwischenzuspeichern, selektieren Sie sie
einfach und ziehen sie dann auf das Klemmbretticon. Eine weitere
Mglichkeit ist, ^C oder ^X zu drcken. Zum Zurckholen der Dateien
klicken Sie mit links auf das Klemmbrett und halten sofort die Dateien
"in der Hand". Nun haben sie die schon von vorherigen Versionen
bekannten Mglichkeiten, die Dateien wieder abzuwerfen: ber anderen
Applikationen, ber dem Mlleimer/Info-Icon/Eingabefeld/Pfadfeld und
der Datei-Listbox (zum Kopieren). Das Kopieren/Verschieben bzw Dateien
auswhlen (mit Shift) knnen sie auch per Tastatur, mittels ^V. Je
nachdem, ob sie die Dateien mit ^C oder ^X auf das Klemmbrett
befrdert haben, werden sie Ihnen bei ^V zum Kopieren oder Verschieben
angeboten. Halten sie stattdessen zustzlich Shift fest, werden die
Datei aus dem Klemmbrett wie gehabt selektiert. Das ist nebenbei eine
gute Mglichkeit, wieder in den Herkunftspfad zu gelangen (Das, was
man bei Selectric einstellen konnte), nachdem Sie mit dem Kopieren
fertig sind. Das also, was in der Version 1.13 als "Zustand
wiederherstellen" auf ^V lag, ist nun mit +^V zu erreichen. Ausserdem
bietet Freedom ja auch noch das Feature, eine Dateiliste nach einem
Formatstring (ber die Konfig-CPX editierbar) formatiert ins System-
Klemmbrett zu sichern. Diese Funktion liegt wie gehabt auf +^C bzw.
Doppel/-Rechtsklick auf das Klemmbrett-Icon. Eine solche Dateiliste
lt sich im Normalfall _nicht_ nach der oben beschriebenen Methode,
etwa mit ^V, "zurckholen".

Um es nochmal zu betonen: Es wird bei ^C/^X lediglich eine Liste von
Dateinamen als SCRAP.TXT gemerkt. Es werden _keine_ Dateiinhalte
gespeichert. Es ist demnach nicht mglich, Dateien per ^C aufs
Klemmbrett zu sichern, zu lschen, und dann woanders wieder mit ^V
"einzukleben". Die Herkunftsdateien sind dann einfach nicht mehr
vorhanden!! Wer etwas verschieben will, sollte das zB ber ^X machen.
Die Dateien werden hier (im Gegensatz zum "normalen" Verstndnis der
Fkt. "Cut") erst whrend des spter angeworfenen Verschiebe-Vorgangs
gelscht. Fr die Interessierten: Ob eine Dateiliste mit ^X oder ^V
geklemmt wurde, merkt sich Freedom (frecherweise (o:) ber das
Archiv-Bit der Datei SCRAP.TXT. Bei ^X wird das (normalerweise
gesetzte) Bit gelscht.

Ganz nebenbei: Man kann nun auch Dateien draggen, wenn Freedom als
modaler Dialog erscheint!


5.3  Sechs kleine Helferlein
============================

 Das Dateipopup:    Mal ehrlich: Wie oft arbeiten sie tage- oder sogar
                    wochenlang immer nur mit den gleichen 4 Dateien,
                    und suchen sie aber tagtglich wieder mit ihrem
                    Dateiselektor. Das mu nicht sein! (o: In der
                    Freedom-Konfigurations- datei knnen Sie bis zu 40
                    Dateien mit ihrem vollen Pfad eintragen, die sie
                    dann in Freedom durch einen einfachen Klick aus
                    einem Popup holen. Ihr Dateiselektor nimmt ihnen
                    dann alles ab: Wechsel in das Verzeichnis, Datei
                    selektieren und 'Ok' drcken. Dieses Popup kann
                    gefiltert mit der aktuellen Maske und auch
                    ungefiltert geffnet werden (Doppelklick)!

 Das Historypopup:  Nun hat Freedom endlich auch eine History. Diese
                    bleibt (wenn in der Konfig-Datei ein History-Datei
                    angegeben ist) auch erhalten, wenn Sie den Rechner
                    ausschalten! In diesem Popup finden Sie immer die
                    letzten (max. 200) Dateien mit vollem Pfad, die
                    Sie in ihrem Dateiselektor ausgewhlt haben.
                    Dieses Popup kann gefiltert mit der aktuellen
                    Maske und auch ungefiltert geffnet werden
                    (Doppelklick)!

 Das Masken- & Pfadpopup: Hatte beides auch schon der Dateiselektor,
                    den Sie vor Freedom benutzt haben. Auch mit
                    Freedom knnen Sie Eintrge in diesen Popups
                    'ersetzen', indem Sie einen Doppel- oder Shift-
                    Klick machen. So wird die aktuelle Auswahlmaske
                    bzw. der komplette aktuelle Pfad in das jeweilige
                    Popup bernommen. Das hat allerdings nur
                    temporren Charakter, da es sich (noch) nicht
                    abspeichern lt. Mchten Sie also einen festen
                    Eintrag in eines der Popups neu aufnehmen, fhrt
                    zZt kein Weg an der Konfigurationsdatei vorbei.

 Das 'mgliche Masken'-Popup: In diesem Popup sind immer nur die
                    Masken zu sehen, zu denen im aktuellen Verzeichnis
                    auch passende Dateien existieren. Der erste
                    Eintrag in diesem Popup ist immer '*.*'.

 Das Dateityp-Popup: ..erreichen sie mit einem rechten Doppelklick auf
                    die Extension. Es zeigt die Namen von allen in der
                    Konfig- datei definierten Dateitypen. Whlen Sie
                    einen davon aus, so wird er in spitzen Klammern
                    als Extension bernommen. Halten sie Shift dabei
                    fest, so wird der ausgewhlte Typ mit Komma
                    getrennt an die aktuelle Extension angehngt.


5.4  Einige letzte Bemerkungen zur Bedienung
============================================

    Das kleine Symbol unten rechts im Dateiselektor dient dazu,
     Freedom in der Gre zu verndern. Dabei wird online die
     resultierende Gre des Dateifensters in Spalten/Zeilen
     angezeigt.

    An vielen Stellen ist der Dateiselektor so ausgelegt, das es
     'zwei-Wege'-bedienbar ist, will sagen: Die einen halten lieber
     whrend einer Aktion die ganze Zeit die Maustaste fest, die
     anderen klicken lieber am Anfang und am Ende einmal kurz. Freedom
     kann beides, und zwar fast berall: Bei allen Popups, beim
     Slider, bei der Fluchecke (falls Freedom mal modal kommen muss),
     beim Aufziehen ('Sizen') des Dateiselektors und schlielich sogar
     beim Drag&Drop (Ctrl o. Alt beim 'Greifen' festhalten).

    Der 'Weiter'-Knopf im Such-Dialog hat noch einige Besonderheiten:
     Fr Mausbenutzer ist er so gestaltet, das man die Maustaste auf
     ihm auch gedrckt halten kann, um so quasi schnell 'vorzuspulen',
     wenn viele Dateien gefunden werden, die einen eigentlich gar
     nicht interessieren. Dies lt sich auch per Tastatur (Alt-W)
     erreichen, wobei dabei der 'Nachlauf' von Tastatur-Events
     unterdrckt wird!

    Wenn angeschaltet, knnen Freedom und seine Alertboxen
     vollstndig im Hintergrund bedient werden, ohne das die rechte
     Maustaste dabei gedrcktgehalten werden muss. Wollen Sie trotzdem
     einmal ein Fenster von Freedom in den Vordergrund holen, brauchen
     Sie nicht unbedingt auf die Fenstertitelzeile klicken: Ein kurzer
     Klick auf irgendeine "funktionslose" Stelle im Dialog hat
     dieselbe Wirkung!


5.5  Nebenlufigkeit
====================

Freedom2 ist komplett nebenlufig. Genau wie in einem kooperativen
Betriebssystem "dispatcht" (also verteilt) Freedom2 intern die
Rechenzeit zwischen verschiedenen, gleichzeitig laufenden Aufgaben,
und gibt dabei natrlich auch regelmig Rechenzeit an das System ab.
Dadurch knnen sie nicht nur auch unter normalen (kooperativen) TOS-
Versionen weiterarbeiten, whrend Freedom2 Dateien sucht bzw. zhlt
oder gerade ein sehr langes Verzeichnis einliet, sondern sie knnen
sogar _innerhalb_ von Freedom2 weiterarbeiten! Jede Aktion, die sie in
Freedom2 anwerfen (Suchen, lschen, Touch, Dateien zhlen,
Verzeichniss einlesen, Kopieren, Verschieben, starten von CPXs) wird
durch Freedom2 als extra Aufgabe (Task) verwaltet. Sie knnen beliebig
viele dieser Aufgaben anwerfen, sie laufen alle parallel ab, und sogar
im Hintergrund weiter, wenn sie ein Popup geffnet haben bzw. gerade
ein Fenster oder einen Dialog verschieben! Beim nebenlufigen Kopieren
und Verschieben kann man leider aufgrund des langsamen GEMDOS nur auf
schnellen Rechnern mit schneller Platte einigermaen angenehm
innerhalb von Freedom2 weiterarbeiten, whrend er ackert...

Aus Grnden der bersichtlichkeit knnen Sie pro Dateiselektor nur
einen an diesen gebundenen Such-Dialog ffnen. Durch Rechtsklick auf
das Such-Icon bzw. durch Shift-Control-F lassen sich jedoch weitere
ungebundene Such-Dialoge ffnen, falls sie weitere Suchvorgnge
parallel starten wollen (Der Kopf ihrer Platte will beschftigt
werden! ;-)). Die Aktionen Datei-Zhlung, Laufwerks-Information,
Lschen, Touch und Datei-Info lassen sich beliebig oft anwerfen! (Wenn
Sie die bersicht behalten! ;-))

Die Dialoge "Neue Maske eingeben", "Dateien selektieren" und "Dateien
deselektieren" lassen sich (natrlich) nur einmal, gebunden an einen
Dateiselektor, ffnen und werden mit dem Schlieen desselben ebenfalls
geschlossen.


5.6  Drag n' Drop
=================

Freedom2 kann nicht nur per Drag&Drop Dateien an andere Applikationen
weitergeben, sondern auch selbst welche Empfangen (MTOS und AV-D&D).

Allgemein bedeutet dabei:

    Ein Drag mit Shift, das der Ziel-Dateiselektor sich schlieen und
     die 'abgeworfenen' Dateien der aufrufenden Applikation
     weitergeben soll (Wer die Shift-Taste nicht drcken will, mu die
     Dateien direkt auf das Eingabefeld ("Datei:") des entsprechenden
     Dateiselektors ziehen.)

    Ein Drag ohne Umschalttasten: Kopieren (wenn mglich).

    Ein Drag mit Control-Taste: Verschieben (wenn mglich).

    Eine zustzlich gedrcktes Alt-Taste beim Kopieren/Verschieben:
     Objekte vorher umbennen

    Drag auf die Icons: Je nach Icon ;-) BTW: Freedom2 Icons
     (Lschen, Info usw.) knnen nun auch von "auerhalb" benutzt
     werden (einfach mal was draufdraggen)

_Die Vorgehensweise_

Ziehen Sie Dateien auf eine andere, nicht blockierte Applikation, so
fragt Freedom zuallererst beim AV-Server nach, ob dem die Applikation
bekannt ist, und bergibt dann die Dateien ggf. ber den Umweg AV-
Server. Ist kein AV-Server da oder dem die Appl. unbekannt, wird (als
letzter Versuch) ein VA_START an den Besitzer des Fensters (wenn nicht
ermittelbar, an die Appl. 0) versendet. Einige Programme sind fhig,
Daten auch ber das MTOS-Drag&Drop (ber Pipes) zu empfangen (zB
GemView). Sie knnen diese Programm mit der Konfig-CPX bestimmen.
Freedom2 knnte immer erstmal das MTOS-Drag&Drop probieren, dann mte
der Benutzer aber bei den meisten Programmen eine Wartezeit von
einigen Sekunden ertragen.

Auch das Draggen auf das Pfad-Objekt des Dateiselektors ist mit einer
Bedeutung belegt: Objekt(e) selektieren. Es enspricht dem Draggen von
Objekten auf das Eingabefeld, mit dem Unterschied, das der
Dateiselektor nicht geschlossen wird.


5.7  Das Dateityp-Konzept
=========================

(STILL UNDER CONSTRUCTION!!!)

Konnte man in alten Freedom-Versionen einem bestimmten Dateityp nur
ein Bildchen zuordnen, so ist ab der V1.14 noch folgendes weitere
Dateityp-abhngig konfigurierbar:

    eine Typbezeichnung

    Eine Sortierprioritt

    Vorder- und Hintergrundfarben im de- und selektierten Zustand

Dieses erledigt man alles im Kofig-EPX. Mit den mitgelieferten
Vektoricondateien sind folgende Vektorbildchen (setzt man unter
'Dateitypen -> zugehriges Icon') definiert (darauf achten, da die
Vektorgrafikdatei unter 'Pfade' auch eingetragen ist!):

CPXEPX
EMPTY
EXEC
INFO
SOUND
PACKED
BITMAP
SYSTEM
TEXT
FONT
SOURCE
README
DISABLED
RESOURCE
VECTOR

Hinzufgen bzw. Lschen von Dateitypen macht man mit dem Popup im
Dateitypenauflistungsbereich welches erscheint, wenn man die rechte
Maustaste in diesem Bereich bettigt.

Die Beschreibung lt sehr zu wnschen brig (ich wei - leider), aber
die Doku ist ja auch alles andere als fertig...



6  Das modulare Kontrollfeld
****************************

(UNDER CONSTRUCTION - hier fehlt noch eine Menge...)

Das modulare Kontrollfeld von Freedom2 bekommt man zu Gesicht, wenn
man den Accessory-Eintrag "Freedom2" anwhlt. Will man Freedom2 wie
von den 1.x Versionen her gewohnt im Dateiselektormodus ffnen, kann
man dieses durch zustzliches Gedrckthalten der rechten Shift-Taste
beim Anwhlen des Acc-Eintrages tun.


6.1  Bedienungselemente und Funktionen
======================================

*Das Freedom2-Logo *
In gewohnter Freedom-Weise ist das Freedom2-Logo vierfach belegt:

 Einfachklick links:   Wechsel zwischen CPX- und Dateiselektormodus

 Einfachklick rechts:  Anzeige eines Informationsdialoges via Konfig-
                       EPX

 Doppelklick links:    ffnen eines weiteres Selektorfensters

 Doppelklick rechts:   ffnen/Starten der (siehe auch) Konfig-EPX

Befinden Sie sich im CPX-Modus, verhlt sich Freedom2 in einigen
Fllen anders als gewohnt:

    Im CPX-Modus sind (zustzlich zur eingestellten Extension) nur
     die Dateien sichtbar, bei denen es sich um CPX/EPX-Module oder
     Ordner handelt

    Die einzelnen Zeilen des Selektors werden mit einem anderen
     Formatstring (dem CPX-Formatstring) ausgegeben. Sofern fuer ein
     CPX kein benutzerdefiniertes Icon passt, wird das CPX-eigene Icon
     stattdessen davor eingeblendet. Module, deren Dateiextension auf
     'Z' endet, werden "disabled" (also grau) dargestellt. Im
     Normalfall werden Sie entweder alle Module (*.CP[XZ]), oder nur
     die aktivierten (*.CPX) sehen wollen

    Alle Aktionen, mit denen sie vorher eine oder mehrere Dateien an
     das aufrufende Programm gegeben haben, starten nun die
     ausgewhlten Dateien als CPXs. Der Text des Freedom-Buttons [Ok]
     ndert sich zu [ffnen]

    Ein einfacher Rechtsklick wechselt die Endung der ausgewhlten
     CPXs zwischen CPX und CPZ und aktualisiert sofort die CPX-Liste

    Ein doppelter Rechtsklick terminiert das ausgewhlte CPX-Modul

    Der Sortiermodus "nach Namen" sortiert im CPX-Modus die nach den
     langen CPX-Bezeichnungen, der Modus "unsortiert" wie in XCONTROL.
     Wnschen Sie also eine spezielle Sortierung, die keiner der in
     Freedom2 whlbaren entspricht, so whlen Sie den Modus
     "unsortiert" und verndern die physikalische Reihenfolge der
     CPX-Modul-Dateien auf ihrer Platte. Tools wie XBOOT3 ermglichen
     dies auf komfortable Weise.


6.2  Erweiterte CPX-Flags von Freedom2
======================================

Neben den 'normalen' und landlufig bekannten CPX-Flags 'Resident',
'Nur setzen' ('Set only') und 'Boot-Init', bietet Freedom2 zustzliche
Flags fr CPXs an, die bei Anwahl eines CPX mit anschlieendem Aufruf
der 'Info'-Funktion modifizierbar sind:

 Autostart:           Bewirkt den sofortigen Start der CPX nach
                      Abschlu der Initialisierungsphase. CPX-Module
                      haben zwei wichtige Routinen: Die eine dient der
                      Initialisierung der CPX (z.B. um beim Start
                      Systemeinstellungen vorzunehmen (Farben,
                      Baudraten etc.)) und die andere ist der
                      eigentliche Aufruf des CPX-Dialoges bzw. der
                      CPX-Funktionalitt. Ist zustzlich zur
                      Initialisierung beim Start (Boot-Init-Flag) ein
                      'richtiger' Start des CPX-Dialogs gewnscht
                      (z.B- weil die CPX die Uhrzeit zeigt...) so mu
                      dieses Option angewhlt sein. So ist z.B. bei
                      beigefgter 'WindScreen'-CPX das Abfangen von
                      Fensterverschiebungen etc. nur aus der
                      Hauptroutine mglich. Mit anderen Worten: Soll
                      WindScreen vom Systemstart an Fenster-
                      Echtzeitfunktionen bieten, mu bei dieser CPX
                      das 'Autostart-Flag' gesetzt sein (... und so
                      ist es auch beigefgt).

 8x16-Obfix:          Bewirkt einen an den Systemzeichensatz
                      angepassten 'Obfix'. Normalerweise werden CPXs
                      immer so an den Systemzeichensatz angepasst, da
                      der Standard 8x16 Zeichensatz in der CPX dort
                      normal Platz fnde. Daraus folgt die immer
                      gleichbleibende Gre des XControl-Fensters von
                      256x176 Bildschirmpunkten. Freedom2 kann eine
                      CPX nun so an den Systemzeichensatz anpassen,
                      da die Gre des CPX-Fensters je nach
                      Zeichensatz varriert und optimale Ausmae
                      annimmt. Da z.T. dann auch Icons in der CPX
                      skaliert werden, was nicht immer hbsch ist,
                      kann man diese Option getrennt fr jede CPX
                      einstellen.

 3D-Patch:            Die grafischen Bedienelemente einer CPX werden
                      mit 3D-Objektflags ausgegeben. Dadurch bekommt
                      das sonst 'flache' Aussehen der meisten CPX den
                      modernen 3D-Look verpasst. Da dieses Verfahren
                      von einigen, nicht immer zutreffenden
                      Voraussetzungen beim Patchen ausgeht, kann es
                      sein das einige CPX optisch nicht mehr
                      ansprechend sind. Deshalb kann man diese Option
                      im 'Objekt-Informations'-Dialog fr jede CPX
                      einzeln ndern.

 Tastatur-Krzel:     Alle betitelten Bedienelemente einer CPX werden
                      (soweit wie mglich) mit Tastaturkrzeln
                      versehen. Diese sind durch die entsprechend
                      unterstrichenen Buchstaben gekennzeichnet.

 Fensterpos. merken:  Ist leider im Moment noch nicht funktionsfhig,
                      soll aber einmal bewirken, da eine CPX an der
                      Stelle wieder auf dem Bildschirm erscheint, an
                      der sie geschlossen wurde.



7  Die EPXs
***********


7.1  Freedom2-Konfig
====================

Eines der Freedom2 beiliegenden Module ist das Konfigurations-EPX, mit
dem Sie Freedoms Optionen nun /endlich/ komfortabel manipulieren knnen.
Es lt sich von Freedom2 aus durch Anwahl des EPX-Eintrages oder
durch Doppelklick mit der rechten Maustaste auf das Freedom2-Logo
rechts oben aktivieren, und ffnet dann ein groes Fenster mit vielen
Auswahlmglichkeiten.

/Die meisten Optionen werden Sie evt. schon von Freedom 1.x kennen,
wenn Sie sich die .CNF-Datei denn mal angetan haben./

Neben dem erhhten Komfort besteht ein weiterer Vorteil darin, da der
Groteil der Optionen sofort auf ihre Wirkung hin getestet werden
kann, da mit dem Modul (bis auf wenige Ausnahmen) direkt die
Konfiguration von Freedom2 manipuliert wird.
Zustzlich kann mit Hilfe der Konfigurations-EPX die Konfiguration
auch dauerhaft gespeichert werden.

Auerdem sorgt es dafr, das die Konfiguration fr Freedom2 geladen
wird. Das heit, wenn Freedom2 die Konfigurations-EPX nicht findet, es
mit den Grundeinstellungen gestartet wird!

Freedom2 sucht beim Start das EPX ab dem Pfad "C:\CPX\" abwrts.
Auerdem wird der Pfad berprft, der bei der Envoirmentvariablen
"CPXPATH" angegeben ist.
/Ein Verstellen des CPX-Pfades aus der Konfig-EPX heraus ist nicht
mglich und wre auch Unsinn, da Freedom2 dieser Pfad vor dem Laden
der Konfig-EPX trotzdem unbekannt wre!/

Die Datei mit den Einstellungen die von der Konfig-EPX beim Start von
Freedom2 geladen wird, heit "FREEDOM2.CNF" und wird in folgenden
Pfaden gesucht:

    im aktuellen Verzeichnis

    im Wurzelverzeichnis

    in allen Verzeichnissen, die bei Envoirment-Variablen "PATH"
     angegeben wurden

Weil auch das Darstellen des Freedom2-Informationsdialoges von der
Konfig-EPX aus Speicherschonungsgrnden bernommen wird, kann der
Info-Dialog von Freedom2 (rechter Klick auf das Freedom2-Logo) auch
nur dann aufgerufen werden, wenn Freedom2 die Konfig-EPX finden
konnte.
*Wichtig! Alle Kontrollfeldmodule die beim Start von Freedom2 gefunden
werden sollen, mssen die Dateiendung "*.CPX" haben!!!*

Nun eine bersicht der einstellbaren Optionen:

_General (Generell):_

    Fenster von abgefangenen Applikationen ausblenden oder mit einem
     Bild kacheln

    Dateiselektor abfangen?

    Alertboxen auch abfangen?

    Boot-Lock: Freedom2 verriegelt beim Booten der CPXs den
     Bildschirm, damit parallel gestartete Programme mit den
     (richtigen) CPX-Einstellungen arbeiten (z.B. (Fenster-)Farben).

    Zeitscheibe [ms] fr Freedom's Aktions-Dispatcher (Genauigkeit
     5ms)

    Autolocator-Modus:

        - Aus (Einmaliger Autocator mit (Control-)Tab)

        - Autolocator matcht nur Dateien, keine Ordner

        - Autolocator matcht alles (Default)

    Ordner erst auf Doppelklick ffnen

    Hintergrundbedienung von Fensterdialogen

    Dialoge zur Maus, ansonsten Position merken

    voreingestellter Sortiermodus (1=Name, 2=Datum, 3=Gre, 4=Typ,
     5=Keine); negativer Wert: Sortiermodus rckwrts

    CPX-Sortiermodus

    Parent-Directory (..) anzeigen

    Mauszeiger explizit auf Pfeil setzen, wenn Freedom2 aktiviert
     wird

    Maske zur Erkennung von ausfhrbaren Dateien

    Tab-Tasten-Verhalten: (einmaliger) Autolocator oder Objekt-Info

    Wrapping = Beim Scrollen im Dateiselektor wird beim Erreichen des
     Endes an den Anfang gesprungen und umgekehrt

    Freedom verkneift sich alle 'Ping's.

    keine Tastendrcke per XAcc/AV versenden (Workaround fr Gemini)

    gerade verlassener Ordner wird selektiert (wie in Thing)

    im Eingabefeld alle Zeichen zulassen

    Funktion der rechte Maustaste im Dateiselektor:

          0 = Doppelklick
          1 = Echtzeitscrollen
          2 = Shift-Simulation (wie Linksklick mit Shift)


    (Fenster-)dialoge fliegen im Stile von "Let'em Fly"

    Dragdelay: Zeitraum [ms], in dem zwischen Selektion von Objekten
     und dem "Greifen" frs D&D unterschieden wird

    Scrolldelay: Initiale Verzgerung [ms] beim Bettigen der
     Scrollpfeile

    Scrollspeed: Scroll-Verzgerung [ms] beim Bettigen der
     Scrollpfeile

    DC-repeat: Gedrcktergehaltener Mausbutton nach einem Doppelklick
     fhrt zu einer Wiederholung des Doppelklicks bis zum Loslassen.
     Ist selten sinnvoll, dann aber um so mehr.

_Paths (Pfade):_

    Kobold-Pfad (zum Nachladen des Kobolds in einer Multitasking-
     Umgebung)

    Pfad zu einem Datei-Viewer

    History-Dateipfad

    Vektoricondateipfad (Vektoricondatei _mu_ mit 'C' oder 'M' enden!
     Freedom setzt diesen Buchstaben beim Laden dann automatisch um,
     um die korrekte Fassung (Monochrome oder Color) der Vektordatei
     zu laden!)

    Dateisuch(Finder)-Pfad

    Pfad zu den initial gestarteten CPXs (Auto-CPX-Pfad)

    Pfad fr Klemmbrett-Dateien (Scrap-Dir-Path)

    Dateiname/Pfad fr das 'Redraw-Kachel-Bild'

_Appearance (Optik):_
/(wenn sinnvoll jeweils getrennt fr den Dateiselektor- und
Kontrollfeldmodus einstellbar)/

    Font-ID

    Font-Size (in Punkt)

    Zeilenabstand (in Pixel)

    Hintergrundfarbe der Objektanzeige

    Textfarbe der Objektanzeige

    Textfarbe eines selektierten Objekts

    Hintergrundfarbe eines selektierten Objekts

    diverse Format-Strings (Erklrung der Zusammensetzung im Anhang):

        - fr lange Dateinamen

        - fr kurze Dateinamen

        - fr den Text-Export

        - fr den Kontrollfeld-Modus

    String im Closer

    String im SelectAll/InvertSel-Knopf

    String im Pfeil-Hoch-Knopf

    String im Pfeil-Runter-Knopf

    Farbe des Sizer-Symbols unten rechts

    aktuelle Sortierung im Slider anzeigen

    Anzahl der Zeilen im Dateiselektormodus

    Anzahl der Spalten im Dateiselektormodus

    Alertbox-Buttons gleich breit?

    Popups mit 3D-Effekt?

    Rahmenelemente mit 3D-Effekt? (nur in Verbindung mit einer 3D-
     fhigen Oberflche)

    die Position des "Ok" und "Abbruch" Buttons in Dialogen
     vertauschen

    Dateiselektor bekommt Fuller ("Volle-Gre-Box" ;-))

    Linkshnder-Scrollbar

    Dateien werden als Kleinbuchstaben angezeigt

_Functionkeys (Funktionstasten):_

    Funktionstastenbelegung (Liste)

_User-Popups (Benutzer-Popups):_

    voreingestellte Dateien (Liste)

    voreingestellte Pfade (Liste)

    voreingestellte Extensions (Liste)

_Filetypes (Dateitypen):_

    Dateitypen (komplexe Liste):

      *Name:* Bezeichnung fr den Dateityp (%X im Formatstring)

      *Sort:* Sortierreihenfolge bei aktiver Typsortierung

      *Icon:* Nummer des zugehrigen Icons in der Vektoricondatei

      *Farbe:* die vier Farben (bckcolor,txtcolor,sbckcolor,stxtcolor)

      *Maske:* die Maske; vorangestellter \ bedeutet: Ordner-Regel

_Lists (Listen): Kommen alle in eine Liste_

    IgnoreMCTRL: Ausnahmeliste (Liste)

    Modal: Ausnahmeliste (Liste)

    Exclude: Ausnahmeliste (Liste)

    Programme, die das Drag&Drop ber Pipes verstehen (Liste)

_Tricks (Tricks): Kommen beide in eine Liste_

    VA_START (Liste) Applikationen, die VA_START verstehen, erlauben
     mit diesem Trick eine uneingeschrnkt nonmodale Dateiselektion:
     Der Dateiselektor kehrt sofort mit "Abbruch" zurck, die
     ausgewhlten Dateien werden dann spter einfach per VA_START
     nachgereicht! Der Selektor-Titel mu sein, da z.B. "/BEISPRG:
     INF-Datei speichern/" wohl nicht per VA_START "emuliert" werden
     kann...

    Menubar: Ausnahmeliste (komplexe Liste) Applikationen, bei denen
     ein Dateiselektor-Aufruf direkt mit einem Men-Eintrag verbunden
     ist, knnen in dieser Liste fr eine unein- geschrnkt nonmodale
     _Mehrfach_selektion eingetragen werden. Dieses Verfahren hat
     gegenber dem VA_START-Trick den Vorteil, das die Applikation
     auch das neue Verzeichnis und die Extension mitbekommt. Die
     Nummern der Menueintrge knnen mit dem beiliegendem Programm
     MENU_ID.APP (luft auch als ACC) ermittelt werden. Wie bei der
     VA_START-Methode kehrt der Dateiselektor mit "Abbruch" zurck,
     und liefert die Dateien nachtrglich aus. Dazu wird an das
     Programm eine MN_SELECTED Nachricht gesendet, auf die das
     Programm fsel_[ex]input aufruft. Statt dann einen neuen
     Dateiselektor zu ffnen, wird einfach eins der selektierten
     Dateien zurckgegeben. Fertig ist die Mehrfachselektion. Auch
     dieses Verfahren klappt nicht immer, es gibt Programme ohne
     Menzeile und solche, die Dateiselektoren aus Dialogen aufrufen.
     Wir raten ausserdem davon ab, Dateiselektoraufrufe der Form
     "Speichern als..." hier einzutragen. Dieses Verfahren beinhaltet
     /kein/ Gedchtnis, welches Applikationsfenster zum Zeitpunkt des
     Dateiselektor-Aufrufs das oberste war. Genau das wird aber bei
     "Speichern als..." im Normalfall gesichert! Sinnvoll sind also in
     dieser Liste nur vollkommen kontextunabhngige Selektor-Aufrufe!

(UNDER CONSTRUCTION - hier fehlt noch eine Menge...)


7.2  Trouble Bubble
===================

/von Kolja Koischwitz & Christian Krger/
Bei "Trouble Bubble" handelt es sich um eine sogenannte Sprechblasen-
Hilfe. Ist "Trouble Bubble" aktiv, so erscheint immer wenn der
Mauszeiger innerhalb einer einstellbare Zeit seine Position nicht
verndert ein kleines Fenster mit Informationen (Hilfe) zu den unter
dem Mauszeiger liegenden Objekt. Diese Informationen kann "Trouble
Bubble" natrlich nur dann liefern, wenn das betreffende Objekt ihm
bekannt ist.
Mit Freedom2 kennt sich "Trouble Bubble" natrlich aus und die
Hilfetexte zu diesem Programm sind in "Trouble Bubble" integriert.
Fremde Applikationen knnen das "Trouble Bubble"-Protokoll
untersttzen und gelangen somit auf einfache Art auch in den Genu der
Sprechblasenhilfe. Programmierer finden im entsprechenden Kapitel die
ntigen Informationen dazu.

Seit der Version 2 unterstzt diese eCPX auch das Bubble-GEM
Protokoll. Mit anderen Worten: Man kann sich die Installation von
BubbleGEM (Speicher!) sparen und geniesst die
multitaskingfreundlicheren Hilfeblasen von 'Trouble Bubble', die
natrlich auch mit proportionalen Zeichenstzen sauber erscheinen.

Wenn Sie also z.B. bei Jinnee oder CAB die rechte Maustaste ber
Dialogen/Icons bettigen, erscheint der entsprechende Hilfetext in
einer 'Troubble Bubble Hilfeblase'.
Wenn Sie nicht wollen, da 'Troubble Bubble' diese Hilfetexte
darstellt, sondern nach wie vor ihr installiertes BubbleGEM, so bennen
Sie einfach das CPX von 'BUBBLE.CPX' in 'TBUBBLE.CPX' um. Andernfalls
knnen sie sorglos BubbleGEM deaktivieren/entfernen.


7.2.1  Einstellungen
--------------------

Im "Trouble Bubble"-Dialog kann man folgende Einstellungen vornehmen:

    "Send request...": Applikationen die "Trouble Bubble" nicht
     kennt, werden aufgefordert ihren Hilfetext an TB zu schicken. Das
     funktioniert natrlich erst, wenn es externe Applikationen gibt
     die TB untersttzen.

    "Delay": Zeit (in Zehntelsekunden) die bei Mauszeigerstillstand
     vergehen mu, bevor TB den Hilfetext darstellt.

    "Mouse Movement": Bewegungsbereich des Mauszeigers, der noch als
     "Stillstand" gewertet wird.

    "Look": Hier kann man den Zeichensatz der "Sprechblasen"
     einstellen. Ein sehr geeigneter Zeichensatz ist "WINTICAS.FNT"
     von Chrisker. Er liegt TB bei und hat die ID 223 (Gre 9). Um
     ihn fr die Sprechblasen zu erhalten, mu der Zeichensatz via
     GDOS installiert (wie man das macht entnehmen Sie bitte Ihrer
     GDOS-Dokumentation) und dann die ID und Gre des Fonts im Dialog
     eingestellt werden. (Diesen proportionalen Font verwendet
     Chrisker brigens auch fr seine Fensterelemente...)


7.3  Lines
==========

/von Christian Grunenberg und Christian Krger/
Ein kleines Grafikdemo, welches u.a. die kooperativen Multitasking-
Fhigkeiten von Freedom2 demonstriert. Starten, rumspielen, freuen...


7.4  MODificaution
==================

/von Patrick Ruiz, Steffen Scharfe und Christian Krger/

Hierbei handelt es sich um zwei EPXs die sogenannte "Soundtracker"-
Dateien abspielen knnen. Beide Player unterstzen das "Paula-
Protokoll" und knnen somit auch von anderen Applikationen zum Spielen
der MOD-Files aufgefordert werden.

Die Version im Ordner "STE" ist fr Rechner mit STE-kompatiblen DMA-
Sound geeignet. Die Bedienung mte eigentlich selbsterklrend sein.
Je nach vorhander Rechenleistung ist es jedoch mglich, da einige der
hheren Wiedergabefrequenzen nicht sauber abgespielt werden knnen.

Dieses Problem existiert nicht bei der DSP-Version die den im Falcon
eingebauten Chip nutzt. Daher ist diese Version auch nur fr den
Raubvogel geeignet.


7.4.1  Probleme
---------------

Mit der STE-Version kann es unter MagiC zu Problemen kommen, da sich
offensichtlich die benutzen Interrupts stren! Ein Umstand an dem ich
(chrisker) leider nichts ndern kann, da ich nur die frei verfgbaren
Player-Routinen in eine EPX gesteckt habe. Bei dieser Gelegenheit
weise ich darauf hin, da es sich bei beiden Playern um FREEWARE
handelt und ich keinerlei Rechte an den eigentlichen Abspiel-Routinen
habe.

So kommt es auch, da sich die DSP-Version wesentlich spartanischer
prsentiert. Die DSP-Wiedergaberoutinen von Steffen Scharfe boten
leider nicht die Mglichkeiten der Einflunahme wie die Routinen von
Patrick Ruiz. Auerdem ist es mglich, da bestimmte MOD-Files von
einem Player korrekt wiedergegeben werden und der andere 'bockt'.

Noch ein Problem der STE-Version auf FalconO3O-Rechnern mit
Alternativem/Fast-RAM:
Offensichtlich hat das (Single)-TOS einschlielich der Version 4.04
das Problem, Alternatives RAM nicht korrekt verwalten zu knnen,
weswegen der Player sich hier stumm stellt. Abhilfe: anderes
Betriebssytem (z.B. MiNT) oder den DSP-Player nutzen.


7.5  Busblaster
===============

/von Christian Krger/
Eigentlich war ich schon etwas verrgert, als ich in der ST-Computer
9/96 auf der Seite 57 den Bericht eines "Turbo-NOVA-Programms" fand.
Handelte es sich doch unfreiwillig um ein Plagiat meiner Busblaster-
CPX welche ich jetzt seit fast einem Jahr bei mir installiert habe.

Noch einmal zum Sinn des Programms:
Wie es sich vielleicht schon rumgesprochen hat, belastet der im
Falcon030 eingebaute Video-Chip den Bus des Rechners und bremst ihn
dadurch ab. Die Verwendung einer NOVA-Grafikkarte im Falcon030 ndert
an diesem Zustand nichts grundlegendes. Buszugriffe vom Original-
Grafiksystem finden weiterhin statt. Es ist daher ratsam eine BOOT-
Grafikauflsung im NV-RAM zu konfigurieren (die Grafikauflsung die
nach dem Einschalten des Rechners aktiv ist), die mglichst wenig
Bildschirmspeicher und daher auch wenig Buszugriffe braucht.

Es geht aber noch schneller!
Die Verwendung dieser CPX legt das Original-Grafiksystem fast voll-
kommen lahm und macht den Falcon mit Grafikkarte nocheinmal um ca. 3%
schneller (verglichen mit 320x240x4)! Bei einem getuneten Falcon (z.B.
32MHz CPU-Beschleuniger) macht sich der freiere Bus noch positiver
bemerkbar.

/Im Gegensatz zum Programm des Artikels in der STC 9/96 drfte diese
CPX sogar noch eine etwas hhere Beschleunigung bringen, da zustlich
das VBL-Timing verndert wird./


7.5.1  Systemvoraussetzungen
----------------------------

Zum sinnvollen Betrieb der BUSBLASTER-CPX bentigen Sie:

    einen Falcon030

    Falcon-NOVA-Grafikkarte

    XControl oder kompatibele Kontrollfelderweiterungen (ZControl,
     Freedom2)

(Die Anzahl der User die jetzt noch mitliest drfte ziemlich klein
sein ;-)...)

Garantien auf die Funktionstchtigkeit der CPX gebe ich nicht!
Die Nutzung des Programms geschieht auf eigene Gefahr. Ich hafte nicht
fr zerstrte Hard- oder Software.


7.5.2  Probleme
---------------

Bei Einsatz der Grafikkarte und Verzicht auf die 'Original-Grafik'
sind keine Einschrnkungen vorhanden. Es fllt einem evt. der etwas
strker 'ruckelnde' Mauszeiger auf. Dieses kommt durch die Streckung
der VBL-Takte (Zeilenrcklauftakt des Original-Grafiksystems in
welchem einige Systemfunktionen aufgerufen bzw. bestimmte Werte
aktualisiert werden (deswegen darf man den Falcon-Grafik-Chip auch
nicht vollkommen lahmgelegen)).

Die gleichzeitige Verwendung eines Monitors am Falcon-Videoausgang ist
_nicht_ mglich! Die durch die CPX umgestellten Horizontal- und
Vertikalfrequenzen sind nicht blich,so da ein Monitor am Original-
Aus- gang evt. sogar ZERSTRT werden kann!!!

Bevor also wieder (zum Demo-Testen oder Sysmon-Debuggen ;-)) der
Original-Ausgang (zustzlich) genutzt werden kann, mu das CPX
deaktivert und der Rechner neu gebootet werden. Die Beschleunigung ist
dann natrlich wieder pfutsch...

/(Einige ganz 'schlaue' Programme (Demos/Spiele) setzen zwar den
kompletten Kontext des Videochips neu (und deaktiveren damit
automatisch den BUSBLASTER) aber man wei ja nicht im Voraus welche
Programme dieses tun....)/


7.5.3  Die CPX
--------------

Bei der CPX handelt es sich um eine 'Set-Only' CPX. Das heit es
werden lediglich einige Einstellungen whrend der Startphase des
Kontrollfeldes vom CPX aus vorgenommen und dann wird die CPX wieder
beendet. Folglich erscheint die CPX auch nicht mehr spter in der
CPX-Auswahlliste des Kontrollfeldes. Konfigurierbare Werte sind eh
(noch?) nicht vorhanden. Das die CPX gestartet wurde, merkt man also
nur an der (mebar) hheren Rechnergeschwindigkeit!


7.6  WindScreen
===============

/Programm von C.Grunenberg, Konzept K.Koischwitz, Oberflche C.Krger/

Fr viele wohl *das* EPX-Highlight!
WindScreen ermglicht die Echt-Zeit-Bedienung von Fenstern mit der
_rechten_ Maustaste wie man es z.B. von WinCOM oder WinX kennt.
Im Gegensatz zu diesen Erweiterungen luft es aber mit jedem AES -
nmlich unter Single TOS, MTOS, Geneva, NAES, und MagiC und verbraucht
erheblich weniger Speicher!
Es bietet das solide Verschieben, Sizen und Scrollen der Fenster an.
Zu jedem dieser drei Operationen ist die Wiederholungszeit (entspricht
der Feinheit / Geschwindigkeit der Verschiebungen) in Zehhntelsekunden
getrennt einstellbar.
Selbstverstndlich ist auch die Hintergrundbedienung von Fenstern.

WindScreen prft beim Start das Vorhandensein von WinCOM bzw. WinX.
Sind diese Erweiterungen vorhanden, so bleibt WindScreen funktionslos
weil sinnlos. Andernfalls kann man gleich die Funktionstchtigkeit
mittels Bettigung der rechten Maustaste auf ein Fensterelement
erproben.

Whlt man den EPX-Eintrag an, so erscheint der Konfigurationsdialog,
in dem man die diversen Verzgerungszeiten der einzelnen
Fensterelemente einstellen kann (Kompromiss zwischen Aktualitt der
Darstellung und Rechenzeitverbrauch).

Soll WindScreen gleich beim Start von Freedom2 aktiviert sein, so mu
man einfach das Flag "Autostart" im CPX-Header setzen. Das geht ber
den Freedom2-Info-Dialog:

    E/CPX anwhlen (also z.B. WindScreen)

    Info-Icon unten anwhlen

    im Objekt-Informations-Dialog "CPX" anwhlen und

    "Autostart" ankreuzen



8  Das ich das noch erleben mu...
**********************************

Hier eine bersicht von bekannten Einschrnkungen und Programmen die
Probleme im Zusammenhang mit Freedom bereiten:

    Im MagiC-Single-Mode wird der Freedom-Server gefreezed, was zur
     Folge hat, da der trapverbiegende Teil ihn nicht erreicht
     (Systemselektor kommt).

    Signale unter MiNT werden vom residenten Teil nicht ausgewertet
     => mit jedem Prozess, den Sie mit offenem Dateiselektor/Alert
     terminieren, (KILL/TERM) geht ihnen einer der 8 'Slots' im
     Traphandler verloren.

    Alte Versionen der CD-Tools strzen beim Aufruf von Dxreaddir
     durch Freedom2 ab! Abhilfe: Neuere Version besorgen. Das gilt fr
     alle MetaDOS-Treiber, die mit Freedom2 Probleme machen. Freedom2
     ist nicht das einzige Programm, welches Dxreaddir benutzt, also
     dulden sie keinen Treiber, der kein Dxreaddir kann!!

    Falcon TOSe haben ein "erweitertes" Dsetdrv(), das im
     Zusammenspiel mit Metados bis zur Version 2.5 dazu fhren kann,
     das bei Programmen, die die Konstruktion Dsetdrv(Dgetdrv())
     benutzen (wie Freedom2 oder Gemini), uU Laufwerke pltzlich
     verschwinden. Metados 2.6 sollte mit diesem Feature umgehen
     knnen.

    MultiDialog. Gute Idee, drftige Umsetzung. Dieses Programm
     sollte berhaupt nicht verwendet werden!

    STZip (2.6) fhrt keine Redraws aus, wenn sein Fenster im
     Hintergrund liegt

    Fr das Menzeilen-Disablen wird das Men kurz ab- und wieder
     angemeldet, im Zusammenhang mit Let' em Fly's Nicelines gibt mit
     einigen Programmen das Problem, das sich Meneintrge verschieben
     (Bse!!). Daran ist Freedom nicht schuld, Letemfly eigentlich
     auch nicht. beltter: Pixart (1.2), Rastaman. Abhilfe: Nicelines
     abschalten.

    Let'emfly: Wenn sie es unbedingt installieren mssen, dann *nach*
     "Liberty", ansonsten kommt sich offensichtlich die
     Alertbehandlung beider Programme ins Gehege. Trotzdem bleibt der
     Aufruf von Alerts aus E/CPXs problematisch und kann zum
     Systemstillstand fhren!

    Das "CPX-Linker"-Modul aus dem CPX-Kurs von Richard Kurz im TOS-
     Magazin enthlt einen Fehler, der sich beim Verlassen eines
     aufgerufenen Dateiselektors mit "Abbruch" uert (->Absturz). Da
     dieses CPX-Modul nur mit Quelltext erhltlich war, knnen wir
     folgenden Patch anbieten ;-) :


     In der Datei "OP_FILE.C" Zeile 78 steckt der Fehler:
     pfad[s+1]=0;
     ist zu ndern in: *(s+1)=0;
     ...fertig!

     /Aus rechtlichen Grnden knnen wir leider nicht die fertig
     gepatchte Version beizufgen./

    Das 'Mucke'-CPX von Steffen Engel hat einen tiefgreifenden Fehler
     und ist daher nicht unter F2 lauffhig!

    Das 'NOVA'-CPX von John Mc Loud zeigt ein etwas seltsames
     Verhalten bei der Farbauswahl. Wir konnten bisher nicht festellen
     woran das liegt.

    Die CPXs zur Einstellung eines gewissen Falcon - Hardware -
     Beschleunigers laufen wohl nicht. Mangels Testexemplar kann ich
     das bei mir nicht nachvollziehen.



9  Wer nicht fragt beibt dumm...
********************************

Hier eine Auswahl von Antworten zu den hufigsten Fragen zu Freedom:

 F:   rgs! Freedoms Radiobuttons sind ja unter monochrom achteckig!

 A:   Chrisker hat bei dem Versuch, AES-Font-unabhngige runde
      Radiobuttons einzubauen, mehrere Stunden mit den VDI-Kreisen
      gekmpft. Man wird den Verdacht nicht los, das die Programmierer
      des VDI nichts von Algorithmen zum Kreisezeichnen wuten und
      stattdessen lieber auf die Random() zurckgegriffen haben.. )o:
      Der eigentliche Erfolg von Chriskers Mhen ist deshalb nur zu
      bewundern, wenn man Freedom unter >=16 Farben und einem 3D-AES
      startet. Die Achtecke sind bei kleinerem AES-Font jedoch nicht
      mehr von Kreisen bzw. Elipsen zu unterscheiden.




 F:   Warum kommt bei bestimmten Programmen ohne ersichtlichen Grund
      der Systemfileselektor ?

 A:   Durch die Fhigkeit von 'Liberty' defekte AES-Calls zu
      reparieren sollte obiger Zustand eigentlich nicht mehr
      auftreten. Falls dieses dennoch der Fall ist, gibt es eigentlich
      nur drei Grnde:

        1. Das Programm macht AES-Aufrufe vor dem appl_init bzw. macht
           gar kein appl_init (Fachbegriff: "Schweineprogramm"..)

        2. Bestimmte Programme machen AES-Aufrufe auf unsaubere Weise.
           Es wird bei einigen Aufrufen nicht dasselbe global-Feld im
           AES-Parameter-Block bergeben, das appl_init initialisiert
           hat. Oft liegt das daran, das die Programme mit einer GEM-
           Lib entwickelt sind, die fr einige "neuere" AES-Funktionen
           (zB fsel_exinput) keine Bindings hat, so das der
           Programmierer sich eigene Bindings machen muss. In denen
           benutzt er dann ein anderes global-Feld als die Lib, oft
           sogar gezwungenermassen, wenn nmlich gar keine Mglichkeit
           besteht, an den GEMPARBLK der Lib zu kommen, weil die Lib
           in Pascal, Basic o.ae. geschrieben ist. Die GEM-Lib von
           Pure Pascal benutzt sogar von sich aus schon falsche
           global-Felder. Unter Pure C dagegen ist es sehr einfach,
           fr eigene Bindings denselben GEMPARBLK wie die Lib zu
           verwenden. Unter MiNT macht das bergeben eines ungltigen
           global-Feldes sogar den AES selbst Probleme: In diesem Fall
           mu nmlich immer erst die MiNT-ID der Applikation in die
           Appl-ID gewandelt werden.

        3. Es haben bereits 8 Applikationen ein Freedom-
           Selektorfenster offen.




 F:   Freedom kommt ohne ersichtlichen Grund als modaler Dialog?!

 A:   Freedom benutzt die MCTRL-Semaphore der AES zur Erkennung von
      fliegenden Dialogen, da es in dieseme Fall natrlich nicht als
      Fenster kommen darf .. Einige wenige Programme klammern auch den
      Dateiselektor mit MCTRL (z.B. Gemini), so da Freedom annehmen
      mu, der Dateiselektor wurde aus einem fliegenden Dialog
      aufgerufen. Wenn dies bei einem Programm nie der Fall ist,
      knnen Sie es in die Ausnahmenliste ('#IGNOREMCTRL') in der
      Konfigurationsdatei eintragen, Kandidaten dafr sind zB Gemview,
      Imploid und Gemini, *nicht* jedoch z.B. CAT und Maxidat, die beide
      den Dateiselektor auch aus fliegenden Dialogen aufrufen. Fr
      Programmierer nochmal die folgende Richtlinie: Ist der FSEL-
      Cookie installiert und die Versionsnummer >= 2.00, sollte der
      fsel_[ex]input-Aufruf *nicht* mit MCTRL geklammert werden,
      ansonsten *immer*! Mit UPDATE sollte sowieso *immer* geklammert
      werden!




 F:   Wenn ich Freedom verschiebe, verschwinden urpltzlich die
      Fenster der aufrufenden Applikation oder werden 'vollgemalt',
      sind aber nach Schlieen von Freedom alle wieder da bzw. haben
      wieder ein korrektes Aussehen?

      oder:

      Als das Freedom-Fenster geschlossen wurde, ist 'Bildschirm-Mll'
      entstanden!?

 A:   Es handelt sich um ein prizipielles Problem von Freedom. Da die
      aufrufende Applikation auf den Dateiselektor wartet, ist niemand
      da, der ihre Fenster ggf. neuzeichnen kann. Um Bildschirm-Mll
      zu vermeiden, kann Freedom Fenster, fr die es eine Redraw-
      Anforderung bekommt entweder mit einem Bild fllen oder sie
      ausblenden. 'Verschwinden' die Fenster pltzlich, so ist die
      Ausblendmethode aktiv (kann mit dem Konfig-EPX gendert werden).
      Beide Methoden haben Vor- und Nachteile, stabiler und sicherer
      ist das Ausblendverfahren, da beim anderen Verfahren
      funktionslose Fenster auf dem Screen bleiben und der Benutzer in
      die 'Versuchung' kommt sie zu verschieben, um in
      darunterliegenden Fenstern etwas zu machen. Nach der
      Dateiauswahl kommen viele Programme nicht mit den genderten
      Fensterpositionen klar -> es entsteht Bildschirm-Mll.

      Fr Programmierer: Das Bild-Fll-Verfahren hat ein weiteres
      entscheidenes Problem: Freedom hat zwar nach dem Verschieben von
      Fenstern der Applikation ein WM_MOVED, gefolgt von einem
      WM_REDRAW nachgesendet. Aber 1. werten viele Applikationen
      direkt nach der Dateiselektion erst mal keine Nachrichten aus,
      und 2. kommt manchmal ein weiteres, von den AES verschicktes
      WM_REDRAW dazwischen, weshalb das WM_MOVED nicht mehr als erste
      Nachricht bei der Applikation ankommt und damit das Fenster an
      einer falschen Position neugezeichnet wird. Auch knnen bei
      etwas mehr durch Freedom nachgereichte Nachrichten, welche bei
      Protkollen wie XAcc zwangslufig anfallen, u.U. Nachrichten
      verlorengehen, was ab einer bestimmten Obergrenze mit alle
      bekannten AES-Versionen passiert. Der (mildeste) Effekt ist, das
      Applikations-Fenster, die sie whrend der Dateiselektion
      verschoben haben, keine Redraw/Moved-Nachrichten erhalten,
      obwohl diese (im Sysmon nachvollziehbar!) abgeschickt wurden.
      Unter MagiC whre bei vielen Fenstern u.U. als Workaround statt
      dem Versenden der vieler Redraws das Auslsen von SMC_TIDY_UP
      denkbar...




 F:   Wenn Kobold oder Parafin, von Freedom aufgerufen, ihr Fenster
      schliessen, toppt sich unter MagiC ein scheinbar zuflliges
      Fenster?

 A:   Dieses fehlerhafte Toppen geht von MagiC aus! MagiC versucht zu
      verhindern, das das Topwindow und die aktuelle Menzeile zu
      unterschiedlichen Programmen gehren. Dazu lt es (zur Freude
      des Users) beim Schlieen des letzten Fensters einer Applikation
      den Fensterstapel auer acht. Normalerweise wrde dieser Effekt
      auch jedesmal auftreten, wenn Freedom sein letztes Fenster
      schliet (und das tut es sehr oft!) Zum Glck ist uns da ein
      Trick eingefallen: Wenn MagiC vorhanden ist, lowert Freedom das
      entsprechende Fenster vor dem Schlieen (Wenn man ganz genau
      hinkuckt, sieht man das auch). Wenn das letzte Fenster nmlich
      beim Schlieen nicht das oberste ist, verhlt sich MagiC ganz
      "normal". Bleibt nur zu hoffen, das Andreas sich in diesem Punkt
      doch noch ber den Willen seine Betatester hinwegsetzt...
      Schlielich kann man doch nicht von allen Programmierern
      verlangen, diesen Trick einzusetzen...




 F:   bersteht Freedom eigentlich einen Auflsungswechsel?

 A:   Jein. Unter Multitasking Betriebssytemen (MTOS, MagiC, NAES,
      Genevea etc.) ist der Auflsungswechsel kein Problem. Unter
      SingleTOS sollten Sie _ auf jeden Fall_ Freedom vorher
      'terminieren'. Das machen Sie, indem Sie den Accessory-Eintrag
      zusammen mit der Control-Taste anwhlen. Freedom2 gibt dann in
      einer Alert-Box bekannt, das ein Auflsungswechsel mglich ist.


 F:   Warum kommt unter MiNT bei "Load ...." der Systemalert +
      Systemselektor?

 A:   Dieser Alert/Dateiselektor wird vom AESSYS aufgerufen, und
      diesem Prozess sollte man tunlichst *nicht* den Faden abnehmen...




 F:   Warum kommt beim MagiC-Popup "Programm starten.." der
      Systemfileselektor, obwohl Selectric da funktioniert?

 A:   Fr diesen Fall hat MagiC eine seperate
      Dateiselektorschnittstelle, die sich jedoch fr Freedom's Zwecke
      als nicht brauchbar herausgestellt hat. Deshalb wird an dieser
      Stelle immer der Systemselektor kommen! (bzw Selectric, wenn Sie
      den vor "Liberty" in den AUTO-Ordner packen)




 F:   Ab und zu mal strzt Gemini 1.a ab, wenn ich in Freedom Tasten
      drcke, die Freedom nicht belegt hat!

 A:   Freedom gibt Tastendrcke an den AV-Server weiter, wenn er sie
      nicht kennt. In Gemini 1.a scheint sich ein Fehler
      eingeschlichen zu haben, der es beim Emfang von AV_SENDKEY
      abstrzen lt. Siehe auch die Option 'kein AV_SENDKEY' in
      Freedom's Konfigurationsmodul.




 F:   Es gab einen Systemdeadlock/Absturz, whrend ich Freedom
      testete...

 A:   Wir selbst haben Freedom2 jetzt schon einige Monate bei uns im
      Einsatz und keine Schwierigkeiten festgestellt. Allerdings haben
      wir natrlich nur mit den Programmen und CPXs testen knnen, die
      wir selbst besitzen. Wenn Sie also einen "beltter" ausmachen
      knnen, der unbedingt noch in Problemkind-Liste oben reinmu:
      Programmname, Version und Effekte an uns schicken
      (Kontaktadresse im Appendix)



10  Zurck in die Zukunft...
****************************

Es ist natrlich immer schwer in die Zukunft zu schauen und
vorauszusehen in welche Richtung die Entwicklung von Freedom2 gehen
wird. Neben vielen Bugs die sicherlich in Freedom2 noch vorhanden sind
und darauf warten gefixed zu werden, sowie einer Vielzahl von
interessanten EPXs wren da noch:

    Ein "Set" Feature. Bei beiden Tricks (VA_START/Menubar) und beim
     Freedom-Protokoll selbst ist es durchaus mglich, die Dateien
     zwar an das betreffene Programm auszuliefern, den Selektor aber
     fr die Auswahl weiterer Dateien offen zu halten (eben ein Set)

    Beim Konflikt-Dialog (Kopieren/Verschieben) ist es auch denkbar,
     ein Umbennen der Originaldatei zuzulassen

    MTOS Path-Drag&Drop (fr NEWDESK)

    verbesserter Menubar-Trick

    Signal- und AP_TERM-Auswertung




A  Wer darf was?
****************

Auch wenn es sich wahrscheinlich genauso langweilig liest, wie es sich
schreibt, ist folgendes wohl (leider) ntig:


A.1  Copyright
==============

Das Copyright an Freedom2 und dieser Dokumentation liegen bei Kolja
Koischwitz und Christian Krger, Berlin.

Freedom2 ist Shareware und darf auf beliebige nichtkommerzielle Weise
an Dritte weitergegeben werden, wenn alle folgenden Voraussetzungen
erfllt werden:

    Das Programm darf nur mit allen zugehrigen Dateien und in
     unvernderter Form weitergegeben werden.

    Das Programm darf generell nur kostenlos weitergegeben werden.
     Der Upload in gebhrenfreie Mailboxen und auf nichtkommerzielle
     FTP-Server ist erlaubt und erwnscht.

    Dem Archiv drfen keine weiteren Dateien hinzugefgt werden,
     insbesondere keine Mailboxwerbung und keine Werbung fr PD-
     Serien. Die Umbenennung oder das Umpacken des Archivs ist
     unerwnscht.

    Fr die Weitergabe auf Disketten im Rahmen einer Public-Domain-
     Serie drfen keine Gebhren verlangt werden, die einen Betrag von
     10 DM (exklusive Versandkosten) berschreiten.

    Die Weitergabe via CD-ROM darf nur dann ohne schriftliche
     Genehmigung erfolgen, wenn der Preis pro bespieltem MegaByte
     0.10 DM nicht bersteigt!


A.2  Haftungsausschlu
======================

Trotz sorgfltiger Entwicklung und umfangreichen Tests kann keine
Gewhrleistung fr die Richtigkeit des Inhalts dieser Dokumentation
und die einwandfreie Funktion von "Freedom2" bernommen werden.

Die Autoren knnen keine Haftung fr irgendwelche direkten oder indi-
rekten Schden - einschlielich aber nicht beschrnkt auf materielle
oder finanzielle - bernehmen, die durch den Gebrauch, Nichtgebrauch
oder Mibrauch von "Freedom2" oder dessen Untauglichkeit fr einen
bestimmten Zweck entstehen.


A.3  Warenzeichen
=================

Innerhalb dieser Dokumentation wird auf Warenzeichen Bezug genommen,
die nicht explizit als solche ausgewiesen sind. Aus dem Fehlen einer
Kennzeichnung kann nicht geschlossen werden, da ein Name frei von den
Rechten Dritter ist.



B  Die Registrierung und ihr Preis
**********************************

Freedom2 kostet  70,- DM,  als Update von Freedom 1.x  40,- DM.

Es gelten dieselben Registrierungskonditionen wie fr Freedom, d.h.
die Gebhr

  1. ist bar

  2. per V-Scheck

  3. per berweisung/Einzahlung auf Chriskers Konto, Nummer: 1202227
     bei 'Bayrische Vereinsbank AG', BLZ 100 208 90

zu entrichten.

*Wichtig!*
Wer sein Geld berweist gibt dabei mglichst seine _komplette_ Anschrift
auf dem berweisungstrger und "FDM2" als Stichwort an, damit ich die
berweisung korrekt zuordnen kann.

Die Postadresse lautet:

     Christian Krger
     Im Erpelgrund 16
     13503 Berlin


Nachdem die Sharewaregebhr eingetroffen ist, vermerke ich den
Absender als registrierten Benutzer und habe fortan fr diesen ein
'offeneres Ohr' was Verbesserungswnsche und Bug-Reports angeht.

Wnscht man die aktuelle Version auf Diskette, sollte man auch eine
solche beilegen und - das wre besonders nett - den Sharewarebeitrag
etwas erhhen /(Den Rckumschlag bitte nicht vergessen!)/.

Nachfragen knnen gerichtet werden an:

Internet email:
Chrisker:   chris@pace.de

Mich kann man auch anrufen, aber (!B)(!U)bitte(!u)(!b) nur von
Mo-Do in der Zeit von 20:30-21:00 Uhr oder 22:00-22:30 Uhr! Wer zu anderen
Zeiten die (030) 436 27 85 whlt braucht sich nicht zu wundern, wenn er
entweder niemanden erreicht oder mich ziemlich sauer oder kurz angebunden an
die Strippe bekommt! (!nl)


B.1  Eine angebrachte(?) Rechtfertigung
=======================================

Wie kommt es zum stolzen Preis von  70,- DM? Nun, der Quellcode der
"CPX-Engine" wurde von Christian Grunenberg erworben, und auch fr die
excellente GEM-Library EnhancedGEM und ihre Weiterentwicklung (die
leider im Herbst 1995 endete) haben wir Criss mit einer vierstelligen
Summe belohnt. Gleichzeitig mssen von dem Rest gleich *zwei*
Programmierer ihre weiteren Entwicklungen auf dem Atari-Sektor finanz-
ieren/motivieren, weshalb der Preis nicht niedriger angelegt werden
konnte.

Nebenbei bemerkt: Ein so komfortabler XControl-Clone, der neben den
schon beiliegenden Modulen sogar die Einbindung von Modulen durch
Fremdanbietern ermglicht, und auerdem weiterentwickelt wird, ist die
40,- DM Upgrade durchaus wert. Htte Christian Grunenberg seinen
XControl-Clone nmlich vollendet, wren 40,- DM fr sein Programm
allein auch ein realistischer Preis gewesen.

Und schlielich: Es soll auch Benutzer geben, die fr fast den
doppelten Betrag ihr OS upgraden, nur um Online-Slider an den Fenstern
zu haben (die Ihnen das beiliegende WindScreen-EPX-Modul ebenfalls
bietet).



C  Die Tastaturbelegung (bersicht)
***********************************

^ bedeutet "zusammen mit Control"
+ bedeutet "zusammen mit Shift"
TB = Zahlentastenblock


 Alt A-Z        | Laufwerk umschalten                                                                                         
 ^BS,^Undo      | Eine Direktory-Ebene zurck                                                                                 
 ^1-0           | 1 bis 10 Verzeichnisebenen zurckgehen                                                                      
 ^A             | Alles Selektieren                                                                                           
 +^A            | Selektion Invertieren                                                                                       
 ^S             | Dateien selektieren nach Maske                                                                              
 +^S            | Dateien deselektieren nach Maske                                                                            
 ^E             | Neue Maske eingeben (E wie Extension)                                                                       
 ^D             | Selektierte Dateien lschen                                                                                 
 ^N             | Neues Objekt                                                                                                
 ^I             | Objekt-Information                                                                                          
 +^I            | Dateien-Zhlung bzw. Laufwerks-Infomation                                                                   
 ^B             | Touch                                                                                                       
 ^F             | An aktuellen Filselektor gebundenen Suchdialog ffnen (F wie finde)                                         
 +^F            | Ungebundenen Suchdialog ffnen                                                                              
 Tab            | Objekt-Information ODER Autolocator (Wenn '#SHELLTAB' gesetzt)                                              
 ^Tab           | einmaliger Autolocator (zyklisch, Ordner und Dateien)                                                       
 +^Tab          | einmaliger Autolocator (zyklisch, nur Dateien)                                                              
 ^C             | Momentanen Status ins Klemmbrett sichern                                                                    
 +^C            | Dateiliste nach Formatstring #NICEFORMAT ins Klemmbrett                                                     
 ^X             | Dateien auf dem Klemmbrett sichern (mit Verschiebe-Markierung)                                              
 ^V             | Dateien aus dem Klemmbrett kopieren/verschieben                                                             
 +^V            | Status aus dem Klemmbrett wiederherstellen                                                                  
 Alt Esc        | Den geklemmten Pfad auswhlen                                                                               
 ^TB .          | Die geklemmte Extension auswhlen                                                                           
 ^H             | Sortierung nach Namen  (H wie Selectric ;-))                                                                
 ^Z             | Sortierung nach Datum  (Z wie Zeit)                                                                         
 ^G             | Sortierung nach Gre                                                                                       
 ^T             | Sortierung nach Endung (T wie Typ)                                                                          
 ^K             | unsortiert             (K wie Keine)                                                                        
 ^R             | Sortierrichtung umkehren  (R wie Richtung)                                                                  
 ^Y             | Popup der vorhandenen Ext. ffnen (Y wie schn nah an Control ;-))                                          
 ^P             | Pfad-Popup ffnen                                                                                           
 ^J             | Sortierungs-Popup ffnen (J wie keine andere Taste mehr brig)                                              
 +^X            | Popup der User-Extensions ffnen (X wie eXtension)                                                          
 ^M             | Datei-Popup (gefiltert) ffnen                                                                              
 +^M            | Datei-Popup (ungefiltert) ffnen                                                                            
 ^<             | History-Popup (gefiltert) ffnen                                                                            
 +^<            | History-Popup (ungefiltert) ffnen                                                                          
 ^L             | Drive-Popup ffnen (L wie Laufwerk)                                                                         
 ^W             | Fenster wechseln                                                                                            
 +^W            | Fenster rckwrts wechseln                                                                                  
 Alt ^W         | Globaler Fensterwechsel (nur mit AV-Server)                                                                 
 ^Return,^O     | Selektiertes Objekt ffnen                                                                                  
 Alt 1-0        | Einen der ersten 10 Benutzer-Pfade auswahlen                                                                
 +Alt 1-0       | Benutzer-Pfad 11..20 auswhlen                                                                              
 ^TB 1-0        | Eine der ersten 10 Benutzer-Extensions whlen                                                               
 +^TB 1-0       | Benutzer-Extension 11..20 auswhlen                                                                         
 ^TB *          | *.* als Extension whlen                                                                                    
 TB +           | Entspricht: Crs-Dn+Klick auf 'Ok'                                                                           
 TB -           | Entspricht: Crs-Up+Klick auf 'Ok'                                                                           
 +Esc,^Esc      | Verzeichnis neu einlesen                                                                                    
 Esc            | Editfeld lschen                                                                                            
 Return,Enter   | Bedient "Ok" (Wenn ein Ordner selektiert ist, wird er geffnet)                                             
 +Return,+Enter | Bedient "Ok", deselektiert vorher alle Dateien, so das ggf. der im Editfeld eingegebene Name zum Zuge kommt 
 ^Q,^U,Undo     | Bedient "Abbruch"                                                                                           
 Help           | Freedom-Info                                                                                                
 +Help,^Help    | Neuen (nicht applikationsgebundenen) Dateiselektor aufmachen                                                
 Alt-^Space     | aktuellen Dateiselektor/Alert (de-)iconifizieren                                                            
 ^Up,^Dn        | Scrollpfeile bedienen                                                                                       
 Up,Dn          | Aktuell selektierte Datei wie einen Cursor bewegen                                                          
 +Up,+Dn        | Aktuell selektierte Datei wie einen Cursor seitenweise bewegen                                              
 ClrHome        | Ersten Eintrag im aktuellen Verzeichnis selektieren                                                         
 +ClrHome       | Letzten Eintrag im aktuellen Verzeichnis selektieren                                                        

                     Tabelle 1: Tastaturkommandos



Die Funktionstasten F1..F10, Shift-F1..F10 (F11..F20) sind frei
belegbar.



D  'Changes'
************

Anwender von Freedom 1.x sollten *unbedingt* diese Anleitung komplett
durchlesen um ber die Vielzahl von nderungen informiert zu sein.
Um jedoch einen berblick zu bekommen, sind hier die wichtigsten
nderungen seit der Version 1.15 aufgefhrt.


D.1  Version V2.04 ("Na endlich.... ")
======================================

    Den bsen Fehler gefunden, der seit dem ersten Release von
     Freedom2 das ordnungsgeme Speichern der Konfig auf Laufwerken
     mit langen Dateinamen verhinderte (Stichwort: LIBERTY E-f-int).
     Viele 'unerklrliche' Fehler bei Benutzern von Dateisystemen mit
     langen Dateinamen sollten damit der Vergangenheit angehren.

    Einen anstndig aussehenden Resizer eingebaut. Natrlich ist das
     Ding unten rechts ein Vektoricon...

    Der 'Finder' (das Suchprogramm) konnte zwar konfiguriert werden,
     wurde aber bei Bettigung der Lupe nicht aufgerufen. Bis das
     jemanden aufgefallen ist hat's lange gedauert. Benutzen wohl nur
     wenige. Wie auch immer, jetzt geht's!

    USERDEF-Stack vergrert. Ich hoffe das PCI-Macs bei knapp 8k :-(
     Stack endlich Ruhe geben! Freedom2 ist also schon deswegen jetzt
     4k grer.

    Neue 'Liberty'-Version beigefgt. Siehe 'Changes' in Liberty...
     (...es hat sich einiges getan!)

    Einen Uraltfehler ausgemerzt:
     Die (e)CPXs von Freedom2 konnten bisher zwar mit 'APPL_FIND'
     gefunden werden, aber nicht mit 'APPL_WRITE' Messages erhalten
     (was sie eigentlich sollten). Lppt nu!

    Das eCPX 'Trouble Bubble' geht nun in die Versionsnummer 2 und
     versteht das 'BubbleGEM'-Protokoll! (Man beachte den 'Trouble
     Bubble' Teil dieser Dokumentation.)
     Auerdem wurden einige Details und der Look von 'Trouble Bubble'
     etwas gendert.

    Auf vielfachen Wunsch die Dokumentation aufgebohrt. Besonders die
     Beschreibung der Formatstrings wurde vermisst. Ist jetzt im
     Anhang zu finden.

    Mir sind noch einige Fehler (nichts bses!) bekannt, aber da ich
     denke, da obige nderungen auch so schon ein Release Wert sind,
     gebe ich diese Zwischenversion heraus (noch ohne Zeichensatz-
     Auswahl-CPX).

...to be continued...


D.2  Version V2.03 ("...leider immer noch ein schwieriger Fehler...")
=====================================================================

    Aufgrund von Unschnheit, Fehlinterpretation sowie
     Stabilittsverlust (bestimmte Zeichen konnten die Konfig-
     Auswertung ganz schn durcheinander bringen) habe ich
     'Fuller','Closer' und den Hoch- und Runterpfeil gegen Vektoricons
     getauscht. (Die wohl augenflligste Neuerung von F2.) Damit
     entfllt die Konfigurierbarkeit der Symbole ber die Konfig-eCPX.
     (Konfigurierbar sind sie aber trotzdem... (wie verrate ich ein
     anderes Mal...))

    Bei einigen Dialogen von Freedom2 stimmte der Look der
     Eingabefelder nicht (z.B. bei der Objektinfo). Korrigiert.

    Der USERDEF-Stack wurde mal wieder vergrert weil es Probleme
     mit PCI-Macs gab. Der Stack ist nun von 3,2 auf 4kB gewachsen.
     Wenn immernoch Probleme auftreten sollten (Bildschirmmeldung),
     dann gebt mir bitte Bescheid. Mangels PCI-Mac kann ich das nicht
     testen.

    Konfig-CPX: Ob der Autolocator bei Laufwerken mit langen
     Dateinamen case-sensitiv oder insensitv vergleicht ist nun
     einstellbar. (Bedankt euch bei M.D. ;-) )

    Freedom2 sortiert jetzt Dateinamen und Dateiendungen unabhngig
     von Gro- und Kleinschreibung. Auf case-sensitiven Laufwerken
     sollte folglich die Datei 'ABC' jetzt bei der Datei 'abc' stehen;
     unabhngig davon ob Dateien mit anderen Anfangsbuchstaben
     existieren. ber die Gro- und Kleinschreibungsreihenfolge
     entscheidet die physikalische Reihenfolge der Dateien auf der
     Partition. Das gilt auch fr das Extension-Popup und
     Verzeichnisse.

    Freedom2 sollte nun besser mit MiNT-Memory-Protection
     zurechtkommen. Das ist u.a. darauf zurckzufhren, da
     vektorverbiegende eCPXs jetzt in globalen Speicher geladen werden
     (z.B. WindScreen). Daher unbedingt auch die beigelegten eCPXs neu
     installieren!

    neue 'Liberty'-Version beigefgt. Dadurch luft Freedom2 jetzt
     auch 'anstndig' unter N.AES.


D.3  Version V2.02 ("...es wird immer besser!")
===============================================

    _...wieder viele falsche Fehler gefunden:_

    Absturz bei Anwahl des 'leeren' Clipboards behoben
     (Fehler lag eigentlich bei Liberty - neue Liberty-Version also
     unbedingt installieren!)

    die bergabe von langen Dateinamen an Freedom sollte jetzt
     klappen

    CPX-Tastaturkrzel-Einstellung wird jetzt bercksichtigt

    'Alerts' bleiben auch nach Anwahl des ACC-Eintrages abgeschaltet
     sofern diese so konfiguriert sind

    F2-Konfig war noch nicht ganz fehlerfrei:
     - Sichern oder Setzen der Einstellungen ohne Icon-Datei fhrte zu
     einem Absturz
     - Sichern/Setzen im Konfig-Dialog "Listen" fhrte zu einem
     Absturz
     - $hid war doppelt belegt: 'Versteckte Dateien anzeigen' kann nun
     konfiguriert werden
     - Zeitscheibenwerte werden jetzt korrekt ausgewertet
     - Ok / Abbruch vertauschen funktioniert nun
     - die Selektor-Gre bei langen Dateinamen wird beachtet

    neue 'Liberty'-Version beigefgt


D.4  Version V2.01 ("Have more fun version...")
===============================================

    _Freedom und das Konfig-EPX grndlich entwanzt:_

    Versionsnummern der CPXs werden nun richtig angezeigt (hey,
     Highlander - das war Dir doch 40,-DM wert... ;-) )

    schlimmen Fehler beim Start von Freedom behoben, der das System
     zum Stillstand brachte (bei falschem CPX-Pfad oder keinem aktiven
     CPX)

    Freedom liefert nur noch groe Laufwerksbuchstaben

    bei aktivem Autolocator und Auswahl eines Ordners, wird das
     Editfeld jetzt gelscht

    Autolocator matcht jetzt bei langen Dateinamen immer
     'casesensitiv' (dadurch findet auch keine unerwnschte Klein-
     Grobuchstaben-Wandlung mehr statt)

    Workaround fr die Popup-Tastaturbedienung im Zusammen- hang mit
     Nova-Grafikkarten

    endlich sollte Freedom2 auch unter Monochrome anstndig zu
     bedienen sein: kein schwarzer Adler mehr auf schwarzem Grund...

    Konfig-EPX berarbeitet und (hoffentlich) fehlerfrei gemacht.
     U.a. sollten jetzt:
     - die Formatstrings
     - das Typenkonzept
     - die Menubar/VA-Start-Tricks
     - der Autolocator und Maustastenmodus
     endlich funktionieren!

    neue 'Liberty'-Version beigefgt


D.5  Neu in der V2.00
=====================

    XControl-kompatible Modulschnittstelle integriert (+50kB) Freedom
     kann nun als ACC oder im APPs-Ordner anstelle von XControl
     verwendet werden

    Die originale CPX Schnittstelle (knapp 20 Fkt.) wird dabei um ca.
     150 (!) weitere mchtige Funktionen der EnhancedGEM Bibliothek
     sowie eine komplette Liste von ermittelten Systemvariablen
     erweitert, die das Programmieren erweiterter CPX-Module (EPX-
     Module) ermglichen

    CPX-Header um Flags fr 3D-Patch, Obfix-Methode, Auto-Start (als
     Icon/Fenster), Tastaturbedienung und CPX-Fenster- Platzierung
     erweitert. Der Tastaturbedienungs-Patch fr CPX ist hnlich
     gelst wie bei "Let'em Fly"

    Konfigurations-EPX implementiert und gleichzeitig wieder einiges
     mehr konfigurierbar gemacht

    Eine kleine Sammlung (z.T. ntzlicher (o:) EPXs von Chrisker,
     Criss und Kolja ;-) liegen ebenfalls bei

    die Routinen aus dem frheren Auto-Ordner-Teil 'FFSEL' wurden in
     F2 integriert, die ganze Trap-Verbiegerei beruht nun auf dem
     System-Enhancer 'Liberty' (siehe entsprechender Ordner)

    Aufgrund des vorherigen und des ersten Punktes fllt nun der von
     F1.x bekannte Nachlademodus weg (=> >= 230kB resident)

    Das Iconkonzept von F2 baut statt auf die Image-Datei aus F1.x
     auf eine Vektoricondatei auf, die gut mit dem Vektor-
     Grafikprogramm 'Kandinsky' erstellt werden kann. Vektoricons sind
     ebenfalls ein Feature von Liberty

    Scrollbare Popups realisiert. Wird z.B. das Pfad-Popup-Men fr
     den Bildschirm zu gro, so kann dieses nun (Soft-)gescrollt
     werden.

    Es gibt nun auch eine Schwedische Version von Freedom

    Suchdialog verbessert

    Es kann nun auer dem Kobold auch wieder der AV-Server zum
     Kopieren benutzt werden. Mglich ist das aufgrund der neuesten
     Erweiterungen des AV-Protokolls (AV_COPY,AV_DELETE,AV_INFO),
     welche bisher aber nur vom Desktop Thing untersttzt werden (Ist
     z.Zt eh der einzige Desktop, der nonmodales Kopieren/ Lschen
     bietet). Die Freedom-eigenen Routinen zum Kopieren/ Lschen/Info
     stehen natrlich weiterhin zur Verfgung.

    Im Info-Dialog lassen sich die MiNT-Zugriffsflags (Global,
     Private etc.) fr Programme verndern sowie

    alte und durch Freedom2 neu eingefhrte CPX-Parameter einstellen
     (3D-Patch,rsrc_obfix,Tastaturbedienung, Platzierung usw.)

    Probleme mit Applikationen umgangen, die unter Single-TOS so tun,
     als seien sie der AV-Server (Interface, Kandinsky...)



E  Der Formatstring
*******************

Freedom erlaubt Ihnen, die Daten in dem Dateiselektor-Fenster auf fast
beliebige Weise zu formatieren. Ausserdem kann jeweils fr normale
8.3-Filesysteme und Filesysteme mit langen Dateinamen sowie der CPX-
Darstellung ein unterschiedlicher Formatstring angegeben werden. Es
handelt es sich dabei einfach nur um eine Aneinanderreihung von
Zeichen, wobei dem '%' (Prozent) eine Spezialbedeutung zukommt. Am
einfachsten geht's mit einem Beispiel:

Sie mchen, das die Dateien in einer Zeile wie folgt formatiert
werden:

:
EVEREST  PRG  154.510  29.10.94  09:41
EVEREST  INF      840  09.01.95  11:36
:

Also erst der Name, dann die Endung, dann die Gre (mit max. 9
Ziffern), dann das Datum und schlielich die Uhrzeit ohne Sekunden.
Der Formatstring dafr knnte etwa wie folgt aussehen:

%-F %-E%9P %2D.%2M.%2Y %T%h:%m

Die Stellen, an denen ein '%' steht, weisen Freedom an, eine ganz
bestimmtes Attribut (Name, Gre, Stunde, Minute usw.) der gerade
formatierten Datei an genau dieser Stelle einzusetzen. Welches
Attribut das ist, bestimmt Freedom aus den auf das '%'-Zeichen
folgenden Zeichen. Zur Auswahl stehen:

 F      Dateiname bis zum letzen Punkt (also ohne Endung)

 E      Dateiname ab dem letzten Punkt (also die Endung)

 N      Voller Dateiname (unformatiert)

 D      Tag (1..31)

 M      Monat (1..12)

 Y      Jahreszahl (ohne Jahrhundert, 00..99)

 h      Stunden

 m      Minuten

 s      Sekunden

 S      Gre (in Bytes) der Datei ("1345678"), bei Ordnern nichts

 P      'Punktierte' Gre der Datei ("1.345.678"), bei Ordnern nichts

 K      Gre (in Bytes) der Datei ("1345678"), bei Ordnern '<Ordner>'

 T      Das Uhrensymbol, wenn die Datei tagesaktuell ist, sonst nichts

 A[xx]  Attribut-Bit des Files, default-Zeichen: [-a]

 W[xx]  Schreibgeschtzt-Status eines Files, default-Zeichen: [-r]

 H[xx]  Versteckt-Bit des Files, default-Zeichen: [-h]

 Z[xx]  System-Bit des Files, default-Zeichen: [-s]

 X      Typname

 a      Beliebiges ASCII-Zeichen (zB %13a fr CR oder %10a fr LF)

 %      Das Prozentzeichen

Tabulatoren (als Pseudo-Attribute):

 L  linksbndiger Tabulator (zeichenweise)

 C  zentrierter Tabulator (zeichenweise)

 R  rechtsbndiger Tabulator (zeichenweise)

 l  linksbndiger Tabulator (pixelweise)

 c  zentrierter Tabulator (pixelweise)

 r  rechtsbndiger Tabulator (pixelweise)

(Listen ist fr Erweiterungsvorschlge offen)

Das jeweilige Attribut wird von Freedom2 auf eine Defaultbreite
formatiert. Mchten Sie das Attribut lieber breiter oder schmaler,
knnen Sie die gewnschte Breite als Wert zwischen dem '%' und dem
Attributbuchstaben eintragen. Freedom formatiert Attribute, die
schmaler als die angegebene Breite sind, rechtsbndig. Mchten Sie ein
Attribut lieber linksbndig formatiert haben, dann platzieren Sie ein
'-' (Minus) direkt hinter das '%' Symbol des Attributes (siehe auch
die noch folgenden Beispiele).

Auf einem Filesystem mit langen Dateinamen ist die Aufsplittung eines
Dateinamens in Prefix und Endung nicht mehr so sinnvoll, hier bietet
sich etwa folgender Formatstring an:

%-20N%9P %2D.%2M.%2Y

der als Ergebnis die folgende Ausgabe liefert:

:
EVEREST.PRG           154.510 29.10.94
EVEREST.INF               840 09.01.95
:

welche etwas mehr Platz auch fr lngere Dateinamen lt.


E.1  Proportionale Fonts
========================

Die Verwendung eines proportionalen Zeichensatzes in Freedom macht nur
im Zusammenspiel mit Freedom's Tabulatoren (%L,%C,%R,%l,%c,%r) Sinn.
Eigens fr die Tabulatoren merkt sich Freedom beim Parsen des
Formatstrings einen horizontalen "Cursor". Ein Tabulator in einem
Formatstring bewirkt dabei folgendes: Der Tabulator-Cursor wird um die
Breite des Tabulator- Attributes nach rechts bewegt und dann der Text
und die weiteren "normalen" Attribute hinter diese Tabulator
entsprechend der Ausrichtung dieses Tabulators um diese Cursorposition
herum formatiert. %l oder %L bewirken eine linksbndige Ausgabe rechts
von der Cursorposition, %c und %C bewirken eine zentrierte Ausgabe,
wobei die Cursorposition in der Mitte liegt und schlielich %r bzw. %R
bewirken eine rechtsbndige Ausgabe links vom Cursor. Ein Tabulator
formatiert alle Attribute, die nach ihm kommen, bis zum nchsten
Tabulator bzw. bis zum Ende des Formatstrings, als einen String. Der
Offset-Wert jedes weiteren Tabulators wird auf die aktuelle
Tabulator-Cursor-Position aufaddiert, der Wert ist also immer relativ
zum vorherigen Tabulator. Negative Tabulatoren sind erlaubt und Text
darf auch mehrfach bereinander ausgegeben werden, die Ausgabe erfolgt
dann transparent. Ist kein Tabulator aktiv, haben alle Attribute (wie
bisher) eine Default-Breite, bis zu der durch Einfgen von Leerzeichen
links oder rechts des Attributes aufgefllt wird. Dies ist bei
proportionalen Fonts nicht sinnvoll, weshalb bei aktivem Tabulator die
Attribute defaultmig alle ohne Leerzeichen ausgegeben werden (Die
Formatierung soll ja durch den Tabulator erledigt werden). Deshalb
sollte gleich das erste "Attribut" in einem Formatstring fr
proportionale Fonts ein Tabulator sein. Ein (hliches) Beispiel:

%12R%N%6C%P%6L%2D.%2M.%2Y %T%h:%m

das Teilstck "%N" des Formatstrings wird auf 12 Zeichenbreiten
rechtsbndig formatiert. Der Cursor steht dannach 12 Zeichenbreiten
vom linken Rand entfernt. Jetzt kommt ein Zentrier-Tabulator, der den
Cursor zuerst um weitere 4 Zeichen nach rechts bewegt, um dann das
Teilstck "%P" zentriert um diesen Cursor auszugeben. Schlielich
kommt ein linksbndiger Tabulator, der den Cursur um 6 Zeichenbreiten
bewegt, um dann rechts davon den Rest des Formatstrings ("%2D.%2M.%2Y
%T%h:%m") auszugeben.



F  Informationen fr Leidensgenossen... (Programmierer)
*******************************************************

Freedom2 besteht intern aus zwei Teilen:

  1. Einem Hauptteil, der als parallele Applikation bzw. Accessory
     luft, und darauf wartet, ber eine definierte Schnittstelle
     (bestehend aus einem Satz AES-Messages) aktiviert zu werden.
     Dieser Server kann (nur vom Speicherplatz und den verfgbaren
     Fenster-handles begrenzt) beliebig viele nonmodale Alertboxen,
     Dateiselektoren und Kontrollfeldfenster ffnen. Er meldet sich
     beim Start ber das XAcc-Protokoll an und fhrt im erweiterten
     XAcc-Namen (hochtrabend) "XFileSelect\0XFontAck".

  2. Einem Abfangteil, der Applikationen, die einen Dateiselektor bzw.
     eine Alertbox ausgeben wollen, den Programmfaden "abnimmt", einen
     entsprechenden Request an den Server sendet, den er ggf. vorher
     selbst parallel startet, und in einer Eventloop auf die Antwort-
     Nachricht des Servers wartet. Innerhalb dieser Eventloop wird
     gleichzeitig noch die Behandlung einiger anderer Messages
     (Fenster-Redraw, Moven, Sizen, Toppen, Lowern) fr die Zeit des
     aktiven Alerts/Dateiselektors durchgefhrt, sowie die Menzeile
     des aufrufenden Programms dis- und wieder enabled. Durch
     ausgeklgelte Programmierung ist dieser Teil bis zu 8 mal
     reentrant, dh es knnen bis zu 8 verschiedene Applikationen einen
     Alert bzw. einen Dateiselektor offen haben, bevor der Traphandler
     den Aufruf eines Dateiselektors ignoriert bzw. einen Alert zum
     System durchreicht.
     Dieser Teil bernimmt nebenbei ggf. noch das Umsetzen der Server-
     Antwort in eines der 3 Selectric- Protokolle. Das dabei
     entstehende Problem, da es nur einen Selectric-Cookie gibt, aber
     mglicherweise mehrere Applikationen gleichzeitig ber ihn
     kommunizieren, wurde auf ein Minimum reduziert...


F.1  Zum Abfangteil
===================

Da der Abfangteil im Namen der Dateiselektor aufrufenden Applikation
Nachrichten empfngt, werden alle Nachrichten, bei denen es Sinn
macht, der Applikation nachgereicht. Explizit 'geschluckt' werden die
folgenden:

      (AC_CLOSE)      ; Wegen Problemen mit dem Chameleon )o:
       AC_OPEN

       MN_SELECTED,

       WM_CLOSED, WM_FULLED, WM_ARROWED, WM_MOVED,
       WM_HSLID, WM_VSLID, WM_SIZED, WM_UNTOPPED, WM_TOPPED, WM_ONTOP,
       WM_NEWTOP, WM_ICONIFY, WM_UNICONIFY, WM_BOTTOMED

       VA_START, VA_STARTED, VA_DRAGACCWIND

       AV_SENDKEY     ; AV-Server sollten das Freedom-Protkoll
       AV_STARTPROG   ; untersttzen, wenn sie einen Dateiselektor
       AV_OPENWIND    ; aufrufen
       AV_OPENCONSOLE ;

       AP_DRAGDROP    ; wird mit DD_NAK beantwortet

Damit der Abfangteil von Freedom2 seinem Namen auch gerecht wird
klinkt er sich mittels Liberty in folgende AES-Aufrufe ein:



    fsel_[ex]input

    form_alert

    appl_find

    appl_write

    shel_write

    objc_draw

    objc_change

    graf_watchbox



Letztere drei, um bei Hintergrundbedienung von normalen CPX-Modulen
die Beachtung der Fensterrechteckliste zu erzwingen. Dies ist ntig,
da kein uns bekanntes CPX dieses von sich aus tut, obwohl Atari in
seiner XCONTROL-Schnittstelle zwei Funktionen (Get_First_Rect und
Get_Next_Rect) extra zu diesem Zweck angeboten hat. Der Grund hierfr
ist liegt wohl vor allem in den in dieser Hinsicht fehlerhaften
Beispielsourcen aus einigen verbreiteten CPX-Programmier- Kursen (etwa
dem im "Profibuch").

'objc_draw', 'objc_change' und 'graf_watchbox'-Aufrufe aus CPX-Modulen
werden von Freedom2 einfach auf eine Routine umgelenkt, die das
Zeichnen unter Beachtung der Rechteckliste des Fensters des
aufrufenden CPX durchfhrt.

CPX-Module erhalten auerdem einen Quasi-Applikationsstatus. Sie
bekommen eine eindeutige AES-Applikations-ID zugewiesen, und knnen
dann mittels 'appl_find' gefunden, mittels 'appl_write' mit
Nachrichten beschickt und via 'shel_write' gestartet werden.


F.2  EPX-Modul-Schnittstelle
============================

Freedom2 verfgt ber eine imposante Modulschnittstelle, die fast alle
EnhancedGEM2.25-Funktionen umfat und damit schon zu den 'Shared-
Libraries' zhlen darf. Vor allem Applikationen, die bereits mit
EnhancedGEM entwickelt wurden, lassen sich relativ einfach in
speicherschonende EPX-Module umbauen, whrend Autoren, die sich fr
das Neuschreiben einer EPX entscheiden, auf der Basis der
mitgelieferten Bespielsourcen und der vielen sinnvollen
Schnittstellen-Funktionen eine vor allem schnelle, effektive und
sichere Modulentwicklung ermglicht wird [Werbung off ;-)].

Nheres zur Modul-Schnittstelle kann direkt per email bei den Autoren
erfragt werden.


F.3  Dateiselektoraufruf
========================

Beim Aufruf des Dateiselektors kann Freedom2 auch direkt untersttzt
werden, so da dieser vollkommenen nonmodal ist! Genaueres dazu finden
Sie in der beiliegenden Datei 'FDMPROTO.H', sowie 'SLECTRIC.H' und
'BEISPIEL.C'.

Wichtig fr Programmierer, die ihrere Programme noch weiterentwickeln
und Konflikten mit Freedom(2) (bzw. seinen Benutzern ;-)) aus dem Weg
gehen wollen: Ist der FSEL-Cookie installiert und die Versionsnummer
>= 2.00, sollte der fsel_[ex]input Aufruf *nicht* mit BEG/END_MCTRL
geklammert werden, ansonsten *immer*! Mit BEG/END_UPDATE sollte sowieso
*immer* geklammert werden!


F.4  Das "Trouble-Bubble" Protokoll
===================================

Wie schon im Anleitungsteil zur CPX beschrieben, knnen Applikationen
das Sprechblasen-Hilfe-Protokoll unterstzen. Folgende Message-
Beschreibung ist wohl selbsterklrend:

Nachricht BA_BUBBLE_REQUEST:
(Versendet an den ermittelten/angenommenen Owner des Fensters)
msg[0]: 0x4600
msg[1]: ID des Bubble-Help-Servers
msg[2]: 0
msg[3]: Ermittelte Fenster-Id
msg[4]: x-Position der Maus
msg[5]: y-Position der Maus
msg[6/7]: reserviert

Nachricht AB_OPEN_BUBBLE
(mgliche Antwort der informierten Applikation)
msg[0]: 0x4601
msg[3/4]: Adresse einer NULL-terminierte Zeigerliste aus Zeilen des
        gewnschten Hilfetextes
msg[5]: gewnschte x-Position der Bubble (-1 = Mausposition)
msg[6]: gewnschte y-Position der Bubble (-1 = Mausposition)
msg[7]: reserviert
Deklaration in C: char *help[]={"Zeile1","Zeile2",NULL};

Nachricht BA_BUBBLE_OPENED
(Antwort auf Nachricht AB_OPEN_BUBBLE)
msg[0]: 0x4602
msg[3..7]: reserviert

Nachricht AB_CLOSE_BUBBLE
(Applikation kann aktuelle Bubble ggf. vorzeitig schlieen)
msg[0]: 0x4603
msg[3..7]: reserviert

Nachricht BA_BUBBLE_CLOSED
(Bubble-Hilfe-Fenster wurde geschlossen, nach AB_CLOSE_BUBBLE
oder durch Mausbewegung des Benutzers)
msg[0]: 0x4604
msg[3..7]: reserviert

----------------------------------
#define BA_BUBBLE_REQUEST       0x4600
#define AB_OPEN_BUBBLE          0x4601
#define BA_BUBBLE_OPENED        0x4602
#define AB_CLOSE_BUBBLE         0x4603
#define BA_BUBBLE_CLOSED        0x4604
----------------------------------






