    Kurzinformationen zu TOS2GEM vom 19.01.1995, Stand: 19.01.1994
    --------------------------------------------------------------


    1. Was ist TOS2GEM?
    -------------------

    TOS2GEM ist ein Programm fr den AUTO-Ordner, das es GEM-Applikationen 
    auf flexible Weise ermglicht, die Ausgaben von .TOS bzw. .TTP-
    Programmen in ein Fenster umzulenken, was durch Benutzung von VDI-
    Textbefehlen erreicht wird. Somit knnen Programmierer von Shells oder 
    alternativen Desktops ohne groen Aufwand eine Art Console-Fenster 
    einrichten.

    Dadurch ergibt sich natrlich, da TOS2GEM hauptschlich fr den 
    Einsatz unter SingleTOS gedacht ist. Allerdings luft es auch unter 
    Geneva, MagiC und MultiTOS, wobei hier natrlich der Nutzen sehr 
    eingeschrnkt ist, da die TOS-Programme unter diesen Systemen sowieso 
    in Fenstern laufen (wenn sie richtig gestartet werden).

    Die wichtigsten Eigenschaften von TOS2GEM auf einen Blick:
    - bietet saubere Mglichkeit fr Programmierer, Ausgaben von 
      nachgestarteten TOS-Programmen in ein GEM-Fenster zu lenken
    - simuliert TOS-Bildschirme beliebiger Gre (also nicht nur 
      langweilige 80x25), die auch nur teilweise sichtbar sein drfen
    - arbeitet mit allen nicht-proportionalen Zeichenstzen in beliebiger 
      Gre zusammen
    - bietet auf Wunsch einen Puffer fr ltere Ausgaben ("Scrollback")
    - hat fast vollstndige VT52-Emulation (mit Ausnahme der Farbsequenzen)


    2. Wie wird's installiert?
    --------------------------

    TOS2GEM.PRG wird einfach in den AUTO-Ordner der Bootpartition kopiert 
    und richtet dann bei jedem Booten einen Cookie ein, ber den 
    Programmierer die Benutzung von TOS2GEM steuern knnen. Bei Bedarf kann 
    TOS2GEM.PRG aber auch vom Desktop gestartet werden.


    3. Was ist T2GRESET.PRG?
    -------------------------

    Programme mssen TOS2GEM fr sich reservieren; bis zur Freigabe knnen 
    andere Programme die Dienste von TOS2GEM nicht in Anspruch nehmen. 
    Sollte nun ein Programm, das TOS2GEM fr sich reserviert hatte, 
    abstrzen oder am Ende die Freigabe vergessen, kann durch Aufruf von 
    T2GRESET diese Blockade aufgehoben werden. Es ist nicht sehr ratsam, 
    T2GRESET aufzurufen, wenn die Applikation, die TOS2GEM reserviert hat, 
    noch luft, da es dann zwangslufig zu schweren Komplikationen kommt. 
    Kennzeichen fr eine vorliegende Blockade ist, wenn kein Programm 
    luft, das TOS2GEM benutzt und ein neu gestartetes meldet, es knne die 
    Reservierung nicht vornehmen.


    4. Was sind T2G_BSP.PRG und PRIMZAHL.TOS?
    -----------------------------------------

    Da sich anhand der theoretischen Beschreibung der Funktionsweise von 
    TOS2GEM wohl niemand genau ein Bild davon machen kann, was TOS2GEM 
    eigentlich macht, habe ich ein kleines Beispielprogramm geschrieben 
    (eben T2G_BSP.PRG oder ausgeschrieben TOS2GEM-Beispiel). Die beiden 
    Dateien sind im kleinen Archiv (siehe Punkt 7) brigens nicht enthalten!

    Nach dem Start des Programms (TOS2GEM mu natrlich vorher gestartet 
    worden sein) erscheint eine Dialogbox, in der man die Ausmae des von 
    TOS2GEM zu simulierenden TOS-Bildschirms angibt und wieviel davon 
    maximal sichtbar sein soll. Im Anschlu wird ein entsprechendes Fenster 
    geffnet, in das (bereits per TOS2GEM-Umlenkung) die realisierten 
    Ausmae geschrieben werden. Direkt danach wird das Programm 
    PRIMZAHL.TOS (das sich daher im gleichen Verzeichnis befinden mu) 
    gestartet, das eine simple Primzahlberechnung mit dem "Sieb des 
    Eratosthenes" realisiert (man kann auch jedes andere TOS-Programm 
    nehmen, es mu nur als PRIMZAHL.TOS im richtigen Verzeichnis stehen). 
    Nach Ende des Primzahlprogramms kann man das Fenster, in das die 
    Ausgaben ja sauber umgelenkt wurden, nach Lust und Laune auf dem 
    Bildschirm plazieren. Ein Druck auf den Closer beendet das Programm, 
    nach einem Klick in den Arbeitsbereich des Fensters erscheint eine 
    Alertbox mit drei Wahlmglichkeiten: "Resize" erlaubt eine nderung der 
    TOS2GEM-Bildschirmgre (mit dem gleichen Dialog wie zu Beginn; dabei 
    wird der Bildschirm gelscht, wenn seine Gesamtgre verndert wird). 
    Mit "Rerun" kann nochmal PRIMZAHL.TOS gestartet werden und "Nichts" 
    macht genau dies...

    Das Beispielprogramm ist bewut einfach gehalten, u.a. damit man sieht, 
    da eine TOS2GEM-Untersttzung relativ einfach mglich ist (der 
    Sourcecode hat etwas mehr als 10K). Es werden nicht alle Mglichkeiten 
    von TOS2GEM demonstriert (insbesondere werden weder verschiedene 
    Zeichenstze in unterschiedlichen Gren benutzt noch ein "Scrollback" 
    geboten), allerdings sollte es trotzdem gut verdeutlichen, welche 
    Mglichkeiten TOS2GEM bietet.


    5. Wo ist die Doku fr Programmierer?
    -------------------------------------

    Leider mu ich diejenigen, die nun Programme mit TOS2GEM-Untersttzung 
    entwickeln wollen, immer noch ein wenig enttuschen. Die endgltige 
    Dokumentation im ST-Guide-Format, die auch ausfhrliche Informationen 
    ber die Benutzung von TOS2GEM aus eigenen Programmen heraus enthlt, 
    ist bislang noch nicht fertig. Wer nicht warten kann/will, soll mir 
    schreiben, ich schicke dann die unvollstndige Version, die aber 
    keinesfalls ohne meine ausdrckliche Genehmigung weitergegeben werden 
    darf.


    6. Rechtliches
    --------------

    TOS2GEM wurde mit groer Sorgfalt programmiert und eingehend getestet. 
    Es ist jedoch nicht auszuschlieen, da es noch Fehler enthlt. Ich 
    kann daher weder fr die einwandfreie Funktionsfhigkeit von TOS2GEM, 
    noch fr dessen Tauglichkeit fr einen bestimmten Zweck garantieren.

    Desweiteren erfolgt die Benutzung von TOS2GEM auf eigene Gefahr! Ich 
    bernehme keinerlei Haftung fr Schden, die direkt oder indirekt aus 
    der sach- oder unsachgemen Anwendung von TOS2GEM resultieren.

    Gleiches gilt selbstverstndlich auch fr die anderen im Archiv 
    enthaltenen Programme.


    7. Zum Kopieren von TOS2GEM
    ---------------------------

    TOS2GEM ist frei kopier- und benutzbar. Allerdings darf die Weitergabe 
    nur in folgenden zwei Varianten erfolgen, wobei jeweils alle 
    angegebenen Dateien unverndert kopiert werden mssen (Archivierung ist 
    erlaubt):

    a) Komplettpaket
    Enthlt TOS2GEM.PRG, T2GRESET.PRG, TOS2GEM.H, TOS2GEM.TXT, T2G_BSP.PRG, 
    PRIMZAHL.TOS sowie, sobald vorhanden, TOS2GEM.HYP und TOS2GEM.REF. 
    Dieses Paket ist hauptschlich fr die alleinige Weitergabe von TOS2GEM 
    gedacht (wenn es also nicht einem anderen Programm beigelegt ist).

    b) Minipaket
    Enthlt nur TOS2GEM.PRG, T2GRESET.PRG und TOS2GEM.TXT. Diese Variante 
    sollte nur dann gewhlt werden, wenn man TOS2GEM als Zugabe zu einem 
    Programm benutzen will, das es bentigt.

    Wer eigene Programme entwickelt hat, die TOS2GEM bentigen bzw. 
    untersttzen, darf TOS2GEM seinem Programmpaket beilegen (in einer der 
    beiden o.g. Formen), wenn er folgendes beachtet:

    - TOS2GEM mu in einen eigenen Ordner kopiert werden
    - In der Dokumentation oder im Programm mu ein Hinweis auf die 
      Benutzung von TOS2GEM erfolgen
    - In der Dokumentation mu deutlich erkennbar sein, da es sich bei 
      TOS2GEM um ein eigenstndiges, von mir entwickeltes Utility handelt, 
      das nicht zum eigentlichen Programm gehrt.

    Auerdem wre ich fr die Zusendung eines Exemplars des Programms sehr 
    dankbar.


    8. Kontakt mit dem Autor
    ------------------------

    Wer Fehler gefunden hat, die unvollstndige Doku braucht, Hilfe bei der 
    Programmierung von TOS2GEM-Applikationen bentigt, Lob, Kritik und/oder 
    Vorschlge loswerden oder einfach nur mit mir "reden" mchte, kann sich 
    an folgende Adressen wenden:

    Thomas Binder
    Johann-Valentin-May-Strae 7
    64665 Alsbach-Hhnlein
    Deutschland

    InterNet: binder@rbg.informatik.th-darmstadt.de
    IRC: Gryf

    Wer die bislang unvollstndige Doku haben will, sollte mir entweder 
    einen adressierten und frankierten Rckumschlag samt Diskette zusenden, 
    oder in der Lage sein, Binaries per EMail zu empfangen.

    Da TOS2GEM einen nicht unerheblich Teil meiner Freizeit beansprucht hat 
    und wohl auch weiter beanspruchen wird, bitte ich um Spenden, die mir 
    meine Arbeit honorieren und so gleichzeitig die Weiterentwicklung von 
    TOS2GEM sichern (dies richtet sich insbesondere, aber nicht 
    ausschlielich, an diejenigen, die TOS2GEM in eigenen Programmen 
    untersttzen wollen).

    Meine Bankverbindung lautet:
    Dresdner Bank AG Frankfurt am Main
    Konto-Nummer: 9 024 050 00
    Bankleitzahl: 500 800 00

    Vielen Dank!


    9. Welche Programme untersttzen TOS2GEM?
    -----------------------------------------

    Bislang gibt es zwei Programme, die per TOS2GEM die Ausgaben von TOS-
    Programmen in ein Fenster umlenken:

    - Die POVShell von Dirk Klemmt (klemmt@informatik.uni-frankfurt.de) ab 
      Version 1.3
    - Der alternative Desktop Thing von Arno Welzel (aw@zaphot.augusta.de)

    Die neue POVShell befindet sich (leider) noch im Beta-Stadium und ist 
    daher noch nicht ffentlich erhltlich!

    Auerdem haben sich bereits weitere Interessenten gemeldet, die ihre 
    Prgramme mit TOS2GEM-Untersttzung ausstatten wollen. Nheres kann ich 
    dazu aber erst sagen, wenn es 100%ig feststeht.


    10. Danksagungen
    ----------------

    Folgende Leute hatten, direkt oder indirekt, Anteil an der Entwicklung 
    von TOS2GEM (alphabetische Reihenfolge):

    - Alexander Clauss
    - Frank Danapfel
    - Dirk Klemmt
    - Harald Schnfeld
    - Thomas Schulze
    - Arno Welzel


    11. History
    -----------

    In der History sind nur die nderungen ab der letzten Pre-Release-Beta-
    Version von TOS2GEM enthalten, da es sonst etwas lnglich wrde...

    TOS2GEM vom 19.01.1995
    - Mute TOS2GEM den Cookie-Jar anlegen oder erweitern, ging dieser 
      bei der ersten Aktivierung der Ausgabeumlenkung verloren, da er im 
      gleichen Speicherbereich wie die VDI-Arrays lag.

    TOS2GEM vom 03.01.1995
    - Bei der Reaktivierung der Ausgabebumlenkung mittels switch_output 
      wurde y_offset nicht korrekt angepat. Da dies ein nicht 
      unerheblicher Fehler war, ist es ratsam, in Programmen, bei denen das 
      TOS2GEM-Fenster in der Gre gendert werden kann, mindestens diese 
      TOS2GEM-Version vorauszusetzen (Cookie-Element date beachten!)
    - TOS2GEM.PRG hat jetzt wieder das Speicherschutzflag "Global" (hatte 
      ich das letzte Mal vergessen, weil der Pure C-Linker das ja leider 
      nicht kann (zumindenst nicht der von PC 1.0))
    - Die Headerdatei wurde verbessert: Fr das reserved-Feld des Cookies 
      existiert jetzt die Konstante RESERVED_SIZE, die die Gre des Feldes 
      angibt.

    TOS2GEM vom 12.12.1994:
    - Bei der Berechnung zweier interner Variablen war mir ein kleiner 
      Fehler unterlaufen, der unter bestimmten Umstnden zu fehlerhaftem 
      Scrolling fhrte (wenn von einer Zeile nur die erste Pixelreihe 
      sichtbar war)
    - TOS2GEM-Beispiel in's "groe" Archiv aufgenommen, damit man sich auch 
      ein Bild davon machen kann, welchen Zweck TOS2GEM berhaupt hat und 
      wie es arbeitet. Daran hatte ich zuerst nicht gedacht (Dank an Dirk 
      Klemmt, der mich auf dieses Versumnis hingewiesen hat).

    TOS2GEM vom 22.11.1994:
    - Erste offizielle Version, leider noch ohne ST-Guide-Doku (ich wollte 
      TOS2GEM halt auf der proTOS "releasen"...)
    - Unter MagiC wird jetzt das Problem umgangen, da ein Aufruf von Fread 
      fr die Console den "echten" Cursor einschaltet und den von TOS2GEM 
      vllig falsch plaziert. Die Lsung ist zwar unsauber (Schreibzugriff 
      auf die negativen LineA-Variablen), allerdings habe ich keine andere 
      verlliche Methode gefunden.
    - TOS2GEM hat jetzt das Speicherschutz-Flag "Global", damit es in 
      dieser Hinsicht keine Probleme mit MiNT/MultiTOS gibt.

