                                                             Uster, 20.09.90
                                 TT-Tools 2

                      Einige weitere Tools fr den Atari TT

                                 Version 1.0



Zuerst ein bisschen Copyright:

Copyright (c) 1990 by Marcel Waldvogel. Alle Rechte vorbehalten. Diese
Programme drfen frei benutzt und kopiert werden, solange Sie

- die Copyright-Mitteilungen nicht verndern,
- GAR NICHTS fr das Kopieren verlangen (also keine kommerziellen PD-
  Versender und anderweitige -Verkufer), und
- diese Tools nicht mit irgendwelchen kommerziellen Produkten zusammen
  ausliefern,

ausser Sie haben dazu die schriftliche Erlaubnis des Autors. Der Autor
bernimmt keine Verantwortung fr irgendwelche Schden, die aus der Benutzung
dieser Programme entstehen. Sie benutzen diese Programme auf eigene Gefahr!

Bitte lassen Sie mich wissen, falls Sie irgendwelche Vernderungen an der
Source vornehmen. Auch Vorschlgen bin ich nicht abgeneigt.

Ich bin unter folgenden Adressen erreichbar:

Snail mail:                     E-mail:
Marcel Waldvogel                Fidonet: Marcel Waldvogel on 2:302/802.26
Hgestalstr.  37                UUCP:    mwaldvog@iiic.ethz.ch
CH - 6810  Uster


Und nun zur eigentlichen Dokumentation:




        TT-Tools 2 besteht aus folgenden zwei Programmen:

        * ScreenDown    - Ein "Kfig" fr den Bildschirm
        * SetFast       - Setzt/lscht FastLoad- und andere Bits




ScreenDown - Der Bildschirm bleibt "unten" im ST-RAM
****************************************************

Einige Programme, z.B. die integrierte Entwicklungsumgebung zu Turbo C von
Borland, versuchen den Bildschirmspeicher zu verschieben. Das TOS des Atari
TT kmmert sich nicht darum, ob der Bildschirmspeicher auch wirklich an eine
gltige Adresse verschoben wird. Nach dem Verschieben der Bildschirm-
basisadresse ins TT-RAM (auch als alternatives RAM oder Fast-RAM bekannt),
wird jedoch nur noch Pixelmll angezeigt. Einige dieser Programme, die die
Bildschirmadresse verschieben, testen nach dem Umsetzen, ob dies auch
gelungen ist (dies gelingt bei Grafikkarten und Grafikerweiterungen im
Allgemeinen nicht). Falls dies nicht gelungen ist, wird der
Bildschirmspeicher "von Hand" umkopiert. Dies macht z.B. Turbo C.
Dadurch wird es mglich, dass diese Programme ber den vollen
Speicherbereich des Atari TT verfgen knnen, was sich insbesondere auch auf
deren Geschwindigkeit auswirkt.



ScreenDown installieren

Sie knnen es zum einen vom Desktop starten oder in den AUTO-Ordner ihres
Bootlaufwerkes kopieren. Nachdem es die Copyrightmeldung angezeigt hat,
installiert es sich resident im Speicher. Installiert bentigt es weniger als
512 Bytes.



ScreenDown deinstallieren

Falls eine Ihrer Applikation zusammen mit BLiTSIM irgendwelche Probleme
bereiten sollte, starten Sie BLiTSIM einfach nochmals. Dieses teilt dem
residenten Teil mit, dass es sich deinstallieren soll. Um BLiTSIM wieder zu
installieren, starten Sie es einfach ein weiteres Mal, wodurch der residente
Teil wieder geweckt wird. Wann immer Sie es installieren oder deinstalliern,
erhalten Sie die entsprechende Mitteilung.



Wie ScreenDown funktioniert

Installiert:   Wann immer die XBIOS-Funktion Setscreen() aufgerufen wird,
               testet ScreenDown, ob die neue physikalische Bildadresse im
               ST-RAM liegt. Falls nicht, wird die physikalische Bildadresse
               auf -1 ("Adresse beibehalten") gendert.
Deinstalliert: BLiTSIM verhlt sich vollkommen transparent, ohne Auswirkungen
               auf die Funktion des Betriebssystems.
           


Kompatibilttsprobleme

Es sind keine unerwnschten Nebenwirkungen bekannt.



Einige technische Informationen

ScreenDown benutzt die XBRA ID "SDWN". Das Byte am Offset -14 relativ zum
Einsprungpunkt ist ein Flag, das seine Aktivitt anzeigt (Bit 7 gesetzt:
aktiv). Dieses Flag darf jederzeit gendert werden. nderungen daran wirken
sich sofort auf seine Funktion aus.





SetFast - Einfaches ndern der Attributbits im Programmheader
*************************************************************

Seit TOS 1.4 werden im Vorspann, der vor jedem Programm steht (sogenannter
Programmheader) bestimmte Bits benutzt, die entscheiden, ob und wie das
Programm mit einigen neuen Mglichkeiten des Betriebssystems umgehen kann:

- Das Fastload-Bit. Dieses drfte wohl den meisten unter uns bekannt sein.
  Es entscheidet darber, ob beim Programmstart der gesamte Speicher oder
  nur der Bereich, der auch wirklich vom Programm belegt wird ("BSS-Segment")
  gelscht werden soll. Bei einem Mega 4 spart das pro Programmstart ca.
  eine Sekunde Zeit. Dieses Bit existiert in allen TOS-Versionen seit 1.4.
- Das "FastCode-Bit". Fr dieses und das nchste Bit gibt es keine
  offiziellen Namen (zumindest ist mir dieser nicht bekannt), deshalb die
  Anfhrungsstriche. Das FastCode-Bit entscheidet darber, ob das Programm
  ins "alternative RAM" (auch "Fast-RAM" genannt) geladen werden kann. Dieser
  Speicher ist schneller (daher der Name), jedoch ist er fr gewisse Sachen
  nicht geeignet, die weiter unten erklrt werden. Dieses Bit wird beim
  Atari TT und bei der FAFST-Beschleunigerkarte benutzt.
- Das "FastData-Bit". Dieses Bit entscheidet darber, ob Speicher, den das
  Programm beim Betriebssystem anfordert, auch im Fast-RAM liegen darf.
  Dieses Bit wird ebenfalls vom TT und der FAFST-Karte benutzt.
- Das TpaSize-Feld. Dieses Feld gibt an, wieviel Speicher (ber den direkt
  vom Programm benutzten Speicher hinaus) noch im Fast-RAM frei sein soll,
  damit das Programm optimal luft. Diese zustzliche Grsse kann von 128
  Kilobytes bis 2 Megabytes in 128-KB-Schritten eingestellt werden. Dieses
  Feld wird nur beachtet, wenn das FastCode-Bit gesetzt ist. Bis jetzt wird
  dieses Feld nur beim Atari TT benutzt.



Die Konsequenzen aus der Benutzung von zwei Typen Speicher

- Der Bildschirmbereich darf nicht im Fast-RAM liegen. Dies hat keine
  direkten negativen Auswirkungen, abgesehen davon, dass Sie nicht sehen,
  was gerade auf dem Bildschirm dargestellt wird.
- Abspielen von DMA-Sound. Es wird Katzenmusik produziert, ansonsten hat
  dies keine negativen Auswirkungen.
- Direkte DMA-Zugriffe fr ACSI (Atari-Harddisk-Schnittstelle),
  Floppycontroller.
  +--------------------------------------------------------+
  | Dies hat mit hoher Wahrscheinlichkeit Datenverlust auf |
  |  dem angesprochenen Laufwerk oder Abstrze zur Folge!  |
  +--------------------------------------------------------+
  Bei Programmen, die die Floppy und/oder Harddisk direkt programmieren,
  wie Formatier- und Kopierprogramme sowie einige Diskettenmonitore
  sollten Sie deshalb nur nach genauen Abklrungen die FastCode- und
  FastData-Bits setzen.

  Programme, die die Bildschirmbasisadresse verschieben (z.B. SlideShows
  und einige Malprogramme sowie Debugger und Systemmonitore) mssen Sie
  selbst testen, ob sie den Programmcode und/oder die Daten ins Fast-RAM
  legen knnen. Merken Sie sich zuvor einfach eine Tastenkombination, mit
  der Sie das Programm verlassen knnen ([Alt-Ctrl-Delete] oder den
  Resetknopf knnen Sie zur Not auch benutzen.
  Als Faustregel knnen Sie versuchen, den Programmcode ins Fast-RAM zu
  verlegen, aber die Daten im ST-RAM zu lassen.



Wie bediene ich SetFast?

Nach dem Programmstart begrsst Sie SetFast mit einer Dialogbox, in der
Sie zwischen folgenden Punkten auswhlen knnen:

- Einzeln
- Rekursiv (fragen)
- Rekursiv
- Hilfe
- Abbruch

<Hilfe> und <Abbruch> sollten sich selbst erklren. Deshalb nun zu den
anderen Punkten:

- <Einzeln>: Nach dem Anklicken dieses Menpunktes erscheint ein Datei-
  auswahldialog (auch als Fileselectbox bekannt). Dort whlen Sie zum einen
  den Ordner, in dem SetFast arbeiten soll, und zum anderen die Datei oder
  Dateien, die SetFast bearbeiten soll. Folgende Eingaben sind als
  Dateiname mglich:
  - Ein Name eines Programmes. Dann wird, wie knnte es anders sein, dieses
    Programm bearbeitet.
  - Ein Name mit Wildcards (z.B. "*.PRG", "1ST*.*"). Dann werden alle
    Dateien bearbeitet, die auf diesen Namen passen. Vorsicht! Geben Sie
    nicht "*.*" ein, sonst mssen Sie bei allen Dateien, die keine Programme
    sind, einmal [Return] drcken. Vor allem bei <Rekursiv (fragen)> kann
    dies sehr umstndlich werden, dieser Vorgang kann aber abgebrochen
    werden.
  - Nichts. Dies ist die Option, die mir am besten gefllt. Wenn Sie das
    Feld fr den Dateinamen leer lassen, werden alle Dateien abgearbeitet,
    die auf "*.TOS", "*.TTP", "*.APP", "*.PRG", "*.PRX" oder "*.PR" hren.
  Nach dieser Auswahl erscheint fr jede ausgewhlte Datei eine Dialogbox
  mit folgendem Inhalt:
  - Der vollstndige Name der Datei, von zwei Pfeilen flankiert. Diese
    Pfeile treten in Aktion, falls der Name lnger ist als das Feld es
    erlauben wrde. Sie sind in ihrer Wirkungsweise mit den Pfeilen in den
    Dialogboxen des TT-Desktops und allen anderen Pfeilen verwandt.
    Zustzlich kann man durch einen Doppelklick auf den linken oder rechten
    Pfeil ganz an den Anfang oder ganz an den Schluss des Namens springen.
  - Darunter der aktuelle Zustand der Dateiflags. Die drei Flags sind je
    auf einer einzelnen Zeile zu finden und sind mit einem Haken versehen,
    falls sie bereits aktiv sind. Falls das FastCode-Bit aktiv ist, steht
    zudem noch die Wunschspeichergrsse dahinter (z.B. "+128 KB")
  - Weiter unten ist das eigentliche Bedienfeld anzutreffen. Fr jedes der
    drei Flags hat es ein <Ja/Nein>-Paar und einen "setzen"-Knopf. Falls
    der <setzen>-Knopf nicht aktiviert (schwarz) ist, wird der bei diesem
    Bit der alte Zustand belassen, ansonsten wird der neue Zustand,
    entsprechend der Einstellung des <Ja/Nein>-Paares bernommen.
    Zustzlich befindet sich unten ein Feld fr die Einstellung der Grsse
    des Zusatzspeichers, flankiert von je einem Pfeil nach rechts und nach
    links. Durch Anklicken dieser Pfeile erhht oder erniedrigt man die
    Wunschgrsse des Zusatzspeichers. Die Zahlen scheinen auf den ersten
    Blick sehr verwirrend, sie entsprechen jedoch diesen 12-8KB-Stufen,
    in denen der Wert verstellt werden kann. Ein Doppelklick auf die Pfeile
    stellt "128 K" oder "2 M" ein.
  - Ganz unten schliesslich sind die Knpfe <OK>, <berspringen> und
    <Abbruch>, die evt. schon durch den TT-Desktop oder andere Programme
    bekannt sind. Falls nicht, hier eine kleine bersicht:
    - <OK> setzt die gewnschten Einstellungen Programmkopf.
    - <berspringen> ndert das Programm nicht und geht weiter zum nchsten.
    - <Abbruch> kehrt schliesslich zum Eingangsmen zurck.
  Als ersten Trick kann man auch in die 3 Zeilen des aktuellen Zustandes
  klicken. Dadurch wird der dazugehrige Knopf <setzen> aktiv und das <Ja/
  Nein>-Paar wird so eingestellt, dass die Einstellung verndert wird.

  Nun stellen Sie fr alle angewhlten Programme ihre Wunschparameter ein
  und klicken danach auf <OK>. Falls sie ein Programm nicht ndern wollen,
  oder gar damit aufhren wollen, klicken Sie auf <berspringen> oder
  <Abbruch>. Am Schluss kehren Sie wieder zum Eingangsmen zurck.

  Was weiterhin nicht ganz unwichtig zu wissen ist: Falls irgendein Fehler
  auftritt, stellen einige Alertboxen zwei Mglichkeiten zur Auswahl:
  <Weiter>, welches die aktuelle Datei in Ruhe lsst und zur nchsten
  wechselt und <Abbruch>, womit man wieder zum Eingangsmen zurckkehren
  kann.

- <Rekursiv (fragen)>: Dies funktioniert ganz hnlich wie <Einzeln>,
  durchsucht aber zustzlich noch alle Ordner, die auf der gewhlten
  Ebene oder tiefer liegen. So kann man mit wenigen Handgriffen die ganze
  Harddisk neu setzen, indem man jeweils auf den obersten Stufe (im Root-
  Directory oder Wurzelverzeichnis) startet. So stbert SetFast alle
  Programme auf diesem Laufwerk auf und prsentiert sie Ihnen.

- <Rekursiv>: Damit knnen ohne Abfrage bei allen Programmen in einem Ordner
  oder einem ganzen Laufwerk die angewhlten Bits gesetzt oder gelscht
  werden. Dazu whlt man im leicht modifizierten Einstellungsdialog (der
  obere Teil mit der Anzeige der aktuellen Einstellungen fehlt) die Flags
  nach der bekannten Art und Weise und klickt danach, falls man sich
  wirklich sicher ist, auf <OK>. Danach whlt man (wie bei den anderen
  Punkten) mit der Fileselectbox den Dateipfad, wo nach Programmen gesucht
  werden soll. Danach rennt SetFast los und ndert alle gefundenen Dateien.




Und nun viel Spass mit Ihrem TT und den TT-Tools 2!
