*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#


         ô SysMon der ATARI-ST SystemMonitor Version 1.0.9 ô
         |-------------------------------------------------|
         õ    Copyright (C) by Karsten Isakovic, Berlin    õ

                  ist ein Shareware Programm von

                  Karsten Isakovic geb. Gerlach
                      Wilmersdorfer Str. 82
                           10629 Berlin


*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#

ALLGEMEINES


     WAS IST SYSMON

     SysMon ist ein  System Monitor, der genau an der Schnittstelle
     zwischen Betriebssystem und anderen Programmen sitzt, die mit diesem
     Betriebssystem arbeiten. SysMon erm”glicht es, die Aufrufe an das
     Betriebssystem mitzuprotokollieren. Er ist auch in der Lage, den
     Zustand einzelner Systemresourcen - wie Speicherbl”cke und System-
     vektoren - anzuzeigen.

     Monitor bedeutet aber auch, daž der Zustand des Systems nur
     beobachtet und nicht ver„ndert werden kann.


     WAS LEISTET SYSMON

     SysMon gliedert sich in zwei generelle Teile. Der erste Teil kann die
     Aufrufe von Systemfunktionen mitprotokollieren ( Der Tracer ) und der
     zweite Teil ist fr die Anzeige von Systemresourcen zust„ndig ( Der
     Monitor ).


     TRACER

     Der Tracer untersttzt alle dokumentierten Systemfunktionen und ist
     in weiten Bereichen konfigurierbar. Der Tracer kann alle Aufrufe von
     Systemfunktionen durch das Betriebssystem oder von Programmen mit-
     protokollieren. Einzelne Systemaufrufe k”nnen bei der Ausgabe unter-
     drckt und einzelne Programme vom Tracen ausgenommen werden. Die
     Ausgaben k”nnen ber verschiedene Einstellungen den jeweiligen
     Bedrfnissen angepažt werden. Es sind sehr viele Erweiterungen in den
     Tracer eingebaut, es werden zum Beispiel alle bekannten Message-
     Protokolle, die zur Kommunikation zwischen Applikationen und den
     quasiparallen Accessories dienen, untersttzt.


     MONITOR

     Der Monitor zeigt mehrere Informationen wie Speicherbl”cke, System-
     vektoren und Strukturen, die teilweise nur systemintern dokumentiert
     sind. Die Systemvektoren bestimmen, welche Programme auf einzelne
     Funktionen des Systems Einfluž nehmen. Die Speicheranzeige zeigt
     nicht nur die L„nge der einzelnen Bereiche, sondern macht auch
     Aussagen ber deren Inhalt und das Programm, welches den Bereich
     angefordert hat. Aužerdem werden s„mtliche dokumentierten System-
     variablen und Strukturen angezeigt.

     Beim Starten installiert sich SysMon in den Systemvektoren und unter-
     sucht den Speicher nach vorher geladenen Programmen. Wird SysMon dann
     ber eine bestimmte Tastenkombination aktiviert, kann man alle
     folgenden Systemaufrufe dokumentieren.

     Da SysMon ziemlich viel Speicher ben”tigt (ca 300 KB) und somit auf
     Rechnern mit wenig Speicher nicht permanent geladen werden kann, ist
     er in der Lage, sich selber wieder komplett aus dem System zu
     entfernen.

     Durch diese M”glichkeiten eigenet sich SysMon vorzglich zum Debuggen
     von eigenen Programmen oder zur Analyse von fremden Programmen. Auch
     frher besonders schwer zu debuggende Probleme, wie die Kommunikation
     zwischen verschiedenen Prozessen, sind mit SysMon schnell und einfach
     zu bewerkstelligen.


*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#

DIE BENUTZERSCHNITTSTELLE VON SYSMON

     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     BEDIENUNGSKONZEPT

     Die Benutzeroberfl„che von SysMon ist als einfaches Men- und
     Fenstersystem ausgefhrt, daž an die bekannte Benutzeroberfl„che des
     Atari ST angelehnt ist.

     Die Menleiste und die Fenster sind durch Zeichen aus Character-
     Graphiken nachgebildet. Die Bedienung erfolgt - im Gegensatz zum
     Vorbild, das mit der Maus bedient wird -  komplett ber die Tastatur.

     Die SysMon Oberfl„che wird auf einer zweiten, verdeckten Bildschirm-
     Speicherseite des Atari ST dargestellt, damit die Ausgaben der
     debuggten Programme ohne St”rungen auf der normalen Bildschirm-
     Speicherseite geschehen k”nnen. Auf diese Weise ist der SysMon
     transparent (d.h. fr das System nicht sichtbar), kann aber trotzdem
     eigene Ausgaben machen.

     Zwischen dem Orginal- und dem SysMon-Bildschirm kann jederzeit durch
     eine einfache Tastenkombination umgeschaltet werden.

     Die Vorteile dieses Konzeptes sind
     - einfache Bedienung, da bekannte Vorgehensweisen nachgeahmt werden.
     - die Men- und Fensterstruktur verdeutlicht den hierarchischen
       Aufbau des SysMon
     - durch die Reduktion auf Tastaturbedienung und einfache Character-
       Graphiken wird der SysMon nicht mit Funktionen der Oberfl„che
       berladen, sondern beh„lt den Charakter eines Tools (Werkzeugs)
     - komplett eigene Routinen zur Ein- und Ausgabe auf der eigenen
       Bildschirmseite, dadurch ist SysMon vom Betriebssystem abgekoppelt.

     In jedem Fenster oder Untermen wird die aktuelle Zeile durch
     Invertierung gesondert hervorgehoben. Dort bewegt man sich mit Hilfe
     des Cursotasten. Der selektierte Eintrag wird mit der RETURN-Taste
     angew„hlt. Um eine schnellere Bedienung der Mens zu erm”glichen,
     sind die Eintr„ge in den Mens einerseits ber den jeweiligen
     Anfangsbuchstaben anw„hlbar, andererseits kann der Cursor mit Hilfe
     von Sondertasten in gr”žeren Sprngen bewegt werden.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     MENUELEISTE

     Die Menleiste befindet sich am oberen Bildschirmrand, wie es unter
     GEM blich ist. Die einzelnen Eintr„ge verbergen Untermens, die beim
     Anw„hlen des Mentitels heruntergeklappt werden.
       ___________________________________________________________________
       ô  Sys-Mon  Aes  Vdi  Gemdos  Bios  Xbios  LineA   1:SysMon       ô
       õ-ô-----------------ô------------------------------------Run-Mode-õ
         | Config. tracer  |
         | Program setup   |
         | New     prog.   |
         | Used    traps   |
         | proFile menu    |
         | Display conf.   |
         |-----------------|
         | Traps & vectors |
         | Memory  list    |
         | OS-var. list    |
         |-----------------|
         | Edit    notepad |
         | ReRead  setup   |
         | Write   setup   |
         |-----------------|
         | regIstration    |
         |-----------------|
         | QUIT    sysmon  |
         õ-----------------õ

     Der Meneintrag mit dem Titel SysMon verbirgt ein Untermen, von dem
     aus die einzelnen Fenster des SysMon ge”ffnet werden. Der linke
     Mentitel entspricht dem Desktop-Titel einer normalen GEM-Menleiste.
     Die anderen Meneintr„ge ( Aes bis LineA ) enthalten die Funktions-
     listen, in denen die einzelnen Systemfunktionen aufgefhrt sind.

     Die Menleiste dient noch einem anderen Zweck; sie bietet einen
     šberblick ber die wichtigsten Einstellungen des Tracers.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     FUNKTIONSLISTEN

     Entsprechend der Unterteilung des Betriebssystems in verschiedene
     Funktionsbereiche  ( Aes, Vdi...LineA ) gibt es im SysMon fr jeden
     Bereich eine Funktionsgruppen, die jeweils eine Liste der angebotenen
     Systemfunktionen enth„lt.
       ___________________________________________________________________
       ô  Sys-Mon  AES  Vdi  Gemdos  Bios  Xbios  LineA   1:SysMon       ô
       õ---------ô------------------ô---------------------------Run-Mode-õ
                 | 10 appl_init   + |
                 | 11 appl_read   + |
                 | 12 appl_write  + |
                 | 13 appl_find   + |
                 | 14 appl_tplay  + |
                 | 15 appl_trec.  + |
                 | 16 appl_bvset  + |
                 | 17 appl_yield  + |
                 | 18 appl_search + |
                 | 19 appl_exit   + |
                 | 20 evnt_keybd  + |
                 | 21 evnt_button + |
                 | 22 evnt_mouse  + |
                 | 23 evnt_mesag  + |
                 | 24 evnt_timer  + |
                 | 25 evnt_multi  + |
                 | 26 evnt_dclick + |
                 | 30 menu_bar    + |
                 õ------------------õ

     Diese Funktionslisten sind als Untermens ausgefhrt, wobei eine zum
     GEM abweichende Bedienung vorliegt. Die Vielzahl der Unterfunktionen
     macht es notwendig, daž die Funktionslisten gescrollt werden mssen,
     wenn der untere Rand mit dem Cursor erreicht ist.

     Jede Unterfunktion ist rechts mit einem Symbol versehen, das den
     Trace-Zustand dieser Unterfunktion angibt. Es ist in Funktionslisten
     auch m”glich, mehrere Funktionen auf einmal zu beeinflužen, indem man
     mit Control-Cursortaste einen Block markiert.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     FENSTER

     Die Fenster von SysMon lassen sich weder in der Gr”že ver„ndern, noch
     an anderen Stellen positionieren. Sie sollen lediglich den
     hierarchischen Aufbau verdeutlichen und Informationen zusammenfassen.
       ___________________________________________________________________
       ô  Sys-Mon  Aes  Vdi  Gemdos  Bios  Xbios  LineA   1:SysMon       ô
       õ-ô-----------------ô------------------------------------Run-Mode-õ
         | Config. tracer  |
         | Program ô Start      End        Name         Aes Vdi Stat  ô
         | New     |--------------------------------------------------|
         | Used    |$01000030 - $01019D58  TOS         |   |   | TOS  |
         | proFile |$01019D5A - $01025872  GEM         | 1 | 1 | TOS  |
         | Display |$0001F296 - $0004238E  HardDrv   + |   |   | LPrg |
         |---------|$00067F76 - $0006FABE  MDISK     + |   |   | Acc. |
         | Traps & |$0006FC42 - $0007CDE8  XCONTROL  + |   |   | Acc. |
         | Memory  |$010268BE - $010387EE  SLECTRIC    |   |   | Auto |
         | OS-var. |$0103883A - $01039224  LEDPANEL    |   |   | Auto |
         |---------|$01039270 - $0104975E  NVDI        |   |   | Auto |
         | Edit    |$01049C28 - $0105EF10  TEMPLMON    |   |   | Auto |
         | ReRead  |$01084F56 - $010E3F16  GEMINI    + |   |   | Prg  |
         | Write   |$011721A6 - $011A1542  EDISON    + ¾   |   | Prg  |
         |---------|$0125C352 - $0128FCCA  SYS_MON     |   |   | Auto |
         | regIstra|                        Unknown  + |   |   | ???  |
         |---------õ--------------------------------------------------õ
         | QUIT    sysmon  |
         õ-----------------õ


     Wie bei den Mens wird die aktuelle Zeile durch Invertierung hervor-
     gehoben. Sind mehr Zeilen in einem Fenster vorhanden, als auf dem
     Bildschirm dargestellt werden kann, so wird der Fensterinhalt
     gescrollt, wenn man den unteren oder oberen Rand erreicht.

     Hat ein Fenster nur Dialog-Funktion, so k”nnen die Funktionen auch
     durch den jeweiligen Anfangsbuchstaben ausgel”st werden. Der Cursor
     wird automatisch auf dem ausgew„hlten Eintrag positioniert.

     Ein Fenster wird mit der UNDO-Taste wieder geschlossen.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     OPTIONEN LISTE

     In manchen Fenstern kann man die Darstellungsart der Informationen
     beeinflussen bzw. Informationen ausblenden. In solchen Fenstern wird
     in der rechten oberen Ecke die Liste der m”glichen Schalter
     dargestellt. Diese Schalter werden als Optionen bezeichnet.

     Die Umschaltung der einzelnen Optionen erfolgt ber die angegebenen
     Kennbuchstaben, die nach memnonischen Gesichtspunkten zugeordnet
     sind. Eine Option ist eingeschaltet, wenn der jeweilige Kennbuchstabe
     grož geschrieben wird.

     In manchen Optionen-Fenstern werden die einzelnen Informationsbl”cke
     durch Titelzeilen getrennt. Damit einzelne Informationen schneller
     gefunden werden k”nnen, wird mit der Tastenkombination Control-
     Cursortaste zur jeweils n„chsten/vorherigen Titelzeile gesprungen.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     KONTROLLTASTEN

     Die Effizienz eines Debugging-Tool h„ngt besonders von den
     M”glichkeiten ab, das Tool schnell und unkompliziert bedienen zu
     k”nnen. Wenn man erst mehrere Fenster ”ffnen mžte, um die
     wichtigsten Einstellungen vornehmen zu k”nnen, artet die
     eigentliche Fehlersuche zu einem reinen Puzzlespiel aus.

     Aus diesem Grunde sind alle wichtigen Einstellungen des SysMon
     ber Kontrollsequencen zu beeinflussen, die in jedem Fenster und
     jedem Submen gelten. Die Zuordnung erfolgte wieder auf memnonischer
     Basis, damit eine schnelle Einarbeitung gew„hrleistet ist.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     KONZEPT DES MONITORS

     Der Monitor-Teil des SysMon besteht aus einer Reihe von Fenstern, in
     denen Informationen angezeigt werden. Dadurch, daž SysMon jederzeit
     aufgerufen werden kann, kann man auch jederzeit einen šberblick ber
     den Zustand des Systems erhalten.

     Die zum Monitor geh”renden Fenster sind mit Optionenleisten versehen,
     damit die Vielzahl der dargestellen Informationen schnell auf ein
     bersichtliches Maž reduziert werden kann. Jede Systemstruktur wird
     als einzelner Block dargestellt, wobei die einzelnen Elemente der
     Strukturen mit Namen aufgefhrt werden.

     Um einen Eindruck von der Menge der jederzeit verfgbaren
     Informationen zu geben, sei an dieser Stelle erw„hnt, daž das Fenster
     fr die Systemvariablen aus ber 1200 Zeilen  besteht, wenn man den
     alternativen Desktop Gemini nachl„dt.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     KONZEPT DES TRACERS

     Welche Anforderungen sollten an einen Tracer gestellt werden?

     - Er soll auf einfache Weise erm”glichen, die Aufrufe von Programmen
       zu protokollieren.
     - Da zu jeder Zeit eine Vielzahl von Systemfunktionen aufgerufen
       werden, mssen Informationen ausgeblendet werden, die fr das
       Debugging nicht relevant sind. Dazu z„hlen z.B. die Systemaufrufe
       der anderen geladenen Programme oder unkritische Aufrufe des zu
       beobachtenden Programms.
     - In vielen F„llen laufen die Vorg„nge zu schnell ab, so das eine
       schrittweise Ausfhrung ( Step-Modus ) des kritischen
       Bereiches m”glich sein muž.
     - Diese kritischen Bereiche sollen m”glichst schnell 'angesteuert'
       werden k”nnen, ein Tracer sollte automatisch vor solch einem
       Bereich gestoppt werden k”nnen ( Wait-Modus ).
     - Die Protokollausgabe sollte auf verschiedenen Ausgabeger„ten
       m”glich sein. Die M”glichkeit des Abspeicherns von Ausgaben
       ( Protokolldatei ) erleichtert die Fehlersuche.
     - Die Einstellungen ( Setup ) sollten abspeicherbar sein, damit ein
       erneuter Test keine Neukonfiguration des Tracers notwendig macht.
     - Die Bedienung sollte nicht durch unn”tigen Ballast gest”rt werden,
       die wichtigen Funktionen des Tracers sollten ber kurze Tasten-
       kommandos erreichbar sein.

     Alle diese Anforderungen werden vom SysMon erfllt. Der Tracer stellt
     die Hauptfunktion des SysMon dar. Die vielf„ltigen M”glichkeiten
     bedingen, daž die einzelnen Einstellungen strukturiert werden.

     - Die am h„ufigsten ben”tigten Funktionen, das Ein-/Ausschalten des
       Tracers, das Umschalten von ganzen Funktionsgruppen und die
       Einstellung des Trace-Modus sind ber Kontrolltasten realisiert.
     - Der Trace-Zustand der einzelnen Systemfunktionen kann in Submens
       vorgenommen werden, die direkt von der Menleiste aufgeklappt werden.
       Durch die Verwendung von Submens ist jede Funktion schnell zu
       erreichen, desweiteren ist der Bildschirm nicht durch unn”tige
       Informationen berladen.
     - Der Trace-Zustand der geladenen Programme kann beeinflužt werden.
     - Die Ausgabezeile des Tracers kann frei konfiguriert werden.
     - SysMon bietet 10 verschieden Setups an, die abgespeichert werden
       k”nnen. Einzelnen Setups kann ein Namen zuzuordnet werden.
     - Es gibt eine šbersicht ber deren gesamte Einstellung.
     - Die verschiedenen M”glichkeiten der Ein-/Ausgabe werden in einem
       Dialog-Fenster bestimmt.

       Der grože Teil des Bildschirms unterhalb der Menleiste ist fr
       die Ausgaben des Tracers vorgesehen. Da zus„tzliche Zeilen ab-
       gespeichert werden, kann in den Tracerausgaben auch zurck-
       gebl„ttert werden.

       Die Ausgaben k”nnen aber auch auf ein anderes Ger„t ( RS232-
       Schnittstelle, Drucker, MIDI... ) umgeleitet oder zus„tzlich in
       einem Protokollfile abgelegt werden.
     - Der interne Zustand des Tracers kann dargestellt werden.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     MODI DES TRACERS

     SysMon bietet vier verschiedene Trace-Modi an.

     RUN   Der Run-Modus ist der normale Trace-Modus. Zwischen den
           einzelnen Ausgaben kann eine Pause gemacht werden, falls
           diese zu schnell ablaufen.
     STEP  Im Step-Modus wird hinter jeder Funktion auf einen
           Tastendruck gewartet. Dadurch ist eine schrittweise
           Ausfhrung eines Programms m”glich. Das Step-Men bietet
           auch noch weitere M”glichkeiten an, z.B. werden alle
           Kontrolltasten-Befehle erkannt.
     WAIT  In diesem Modus wird das SysMon-Men betreten, sobald
           eine Funktion aufgerufen wird, fr die der Wait-Modus
           gesetzt ist. Vorher finden keine Ausgaben statt, auch wenn
           Funktionen aufgerufen werden, die im Run-Modus Ausgaben
           erzeugen. Auf diese Weise lassen sich die Ausgaben von
           SysMon unterdrcken, bis der 'kritische' Programmteil
           erreicht ist.
     HALT  In diesem Modus wird sofort hinter dem n„chsten angezeigten
           Funktionsaufruf das SysMon-Men betreten. Wenn die Ausgaben
           nur auf die 'kritischen' Funktionen begrenzt sind, ist dies
           die schnellste M”glichkeit, einen 'kritischen' Programmteil
           abzuwarten.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     HIERARCHIE DES TRACERS

     Die Tracer-Ausgaben k”nnen in mehreren Ebenen ausgeblendet werden:

       Ebene | Erl„uterung
       ------+------------------------------------------------------------
        1    | Der Tracer kann komplett ausgeschaltet werden.
        2    | Die Funktionsaufrufe von einzelnen Programmen k”nnen
             | ausgeblendet werden.
        3    | Einzelne Funktionsgruppen ( Aes, Vdi, Gemdos... ) k”nnen
             | ausgeblendet werden.
        4    | Einzelne Funktionsaufrufe k”nnen ausgeschaltet werden.
       ------+------------------------------------------------------------

     Ein Funktionsaufruf wird nur angezeigt, wenn der Tracer eingeschaltet
     ist, das aufrufende Programm getraced wird, die Funktionsgruppe des
     Aufrufs eingeschaltet ist und die Funktion zum Tracen markiert ist.

     Diese starre Hirarchie wird durch zus„tzliche Funktionsmodi durch-
     brochen. In manchen F„llen ist es sinnvoll, daž einzelne Aufrufe
     immer angezeigt werden, auch wenn das aufrufende Programm nicht
     getraced wird.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     AUSGABEZEILE DES TRACERS

     Die Ausgabezeile eines Tracers soll soviel Informationen bieten wie
     m”glich, aber nur soviel wie n”tig. Aus diesem Grund kann die Ausgabe
     von einzelnen, nicht ben”tigten Informationen abgeschaltet werden.

     Wird nur ein einzelnes Programm getraced, ist es unn”tig, in jeder
     Zeile den Programmnamen auszugeben. Die Ausgabe der Funktionsnummer,
     des Supervisor-Stackpointers oder der Rcksprungadresse wird in den
     meisten F„llen auch nicht ben”tigt.

     Die einzelnen Elemente der Ausgabezeile k”nnen ber Kontrolltasten
     umgeschaltet werden.


*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#

ALLGEMEINE FUNKTIONEN

     In diesem Abschnitt werden die Funktionen des SysMon behandelt, die
     nicht direkt mit dem Monitor oder Tracer zu tun haben.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     STARTEN DES SYSMON

     SysMon kann entweder aus dem Auto-Ordner oder vom Desktop gestartet
     werden. Das Programm belegt ca. 220 Kb an Programmcode und ca. 75 Kb
     fr Daten.

     H„lt man w„hrend des Programmstarts die Alternate-Taste gedrckt, so
     bricht die Installation ab. Das Laden der SYS_MON.INF Setup-Datei
     kann durch Gedrckthalten der Control-Taste unterbunden werden. Bei
     Gedrckter Shift-Shift-Alternate Taste wird in die Autopatch-Sequence
     verzweigt, auch wenn das TOS schon bekannt sein sollte.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     AUFRUFEN VON SYSMON

     SysMon wird durch die Tastenkombination Rechts-Shift-HELP aufgerufen.

     W„hrend Diskzugriffen kann der SysMon nicht betreten werden, da es
     ansonsten zu Timing-Problemen kommen k”nnte. Die Auswertung eines
     Diskzugriffs erfolgt ber eine Systemvariable ( flock ). Wenn SysMon
     trotzdem aufgerufen werden soll, muž zus„tzlich zu Rechts-Shift-HELP
     die Caps-Lock Taste drckt werden.

     Wenn der SysMon aufgerufen ist, wird der Rechner angehalten. Einzig
     die Interrupts laufen weiter.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     UMSCHALTEN DES BILDSCHIRMS

     SysMon legt fr seine Ausgaben eine 2. Bildschirmseite an. Diese wird
     beim Aufruf SysMons automatisch angezeigt. Die 2. Seite kann beim
     Tracen jederzeit durch Drcken der rechten Shift-Taste angezeigt
     werden. Wenn der Tracer ausgeschaltet ist, ist auch die rechte Shift-
     Taste nicht aktiv.

     Sollen haupts„chlich die Ausgaben des SysMon dargestellt werden, kann
     durch gleichzeitiges Drcken der rechten Shift-Taste und der
     CapsLock-Taste den aktuellen Bildschirm umgeschaltet werden. Der
     Original-Bildschirm wird nun beim Drcken der rechten Shift-Taste
     dargestellt.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     SETUPS

     SysMon bietet 10 verschiedene Setups an, zwischen denen mit den
     Funktionstasten F1..F10 umgeschaltet werden kann. Da fast alle
     Einstellungen in SysMon vom Setup abh„ngig sind, hat man es nach dem
     Umschalten mit einer komplett anderen Umgebung zu tun.

     Es ist m”glich fr jeden Anwendungsfall ein neues Setup anzulegen,
     auf daž sp„ter bei Bedarf zurckgegriffen werden kann.

     Beim Wechseln des Setups werden folgende Werte umgeschaltet:
     - Der Zustand der einzelnen Programme.
     - Der Zustand der einzelnen Funktionsgruppen.
     - Der Zustand der einzelnen Funktionen.
     - Der Tracemodus.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     WRITE

     Der Menpunkt 'Write' speichert die aktuelle Einstellung in eine
     Datei SYS_MON.INF. Diese Datei wird beim Programmstart von SysMon
     automatisch eingelesen und die darin enthaltenen Einstellungen
     werden bernommen.

     Wenn ein Schreiben des Files gerade nicht m”glich ist, wird eine
     Warnung ausgegeben.

     Es werden alle Einstellungen aus den 10 Setups gespeichert. Eine
     Besonderheit ist das zus„tzliche Speichern des Zustandes der
     einzelnen Programme. Da beim n„chsten Starten nicht unbedingt
     dieselben Programme gestartet werden, wird fr jede Gruppe von
     Programmen ( Tos, Auto, Acc, Res, Prg, LPrg, Cart, Unknown ) ein
     Modus bestimmt:
     - Wenn kein Programm der Gruppe angew„hlt ist, wird 'nicht Tracen'
       fr diese Gruppe gespeichert.
     - Wird mindestens ein Programm der Gruppe getraced, wird 'Tracen' fr
       diese Gruppe gespeichert.
     - Ist mindestens ein Programm der Gruppe mit einem Haltpunkt versehen,
       wird fr diese Gruppe ein Haltepunkt gespeichert.
     - Ist kein Programm der Gruppe vorhanden, wird 'Tracen' fr diese
       Gruppe gespeichert.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     REREAD

     Der Menpunkt 'reRead' liest die SYS_MON.INF Datei nochmals ein. Wenn
     ein Lesen des Files gerade nicht m”glich ist oder die Datei nicht
     existiert wird eine Warnung ausgegeben.

     Nach dem Einlesen werden alle Einstellungen aus der Datei bernommen.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     VERLASSEN DES SYSMON MENUES

     Der SysMon wird durch Drcken der SPACE-Taste verlassen. Dies
     funktioniert auch innerhalb der Funktionslisten und dem SysMon-Men.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     REGISTRATION

     SysMon ist ein ShareWare-Program. Um alle M”glichkeiten nutzen zu
     k”nnen, muž man SysMon erst registrieren. Im 'regIstration' Fenster
     gibt man seinen Namen und den Schlssel ein und Verl„žt danach
     SysMon ber den Menpunkt QUIT.

     Beim n„chsten Start ist SysMon auf diesen Namen registriert und hat
     keine Einschr„nkungen mehr.

     SysMon kostet 50 DM fr private Nutzer und 100 DM fr Nutzer aus dem
     professionellen Umfeld.

     Meine Bankverbindung lautet:
       Karsten Isakovic
       Sparkasse der Stadt Berlin
       Kto: 0950128864
       Blz: 10050000

     Bitte senden Sie zu„tzlich einen kurzen Brief mit Ihrer Adresse an
     mich, damit ich ihnen den Schlssel per Postkarte zuschicken kann. Ein
     Update von SysMon erhalten Sie in Mailboxen oder auf FTP-Servern. Sie
     k”nnen mir aber auch eine DD-Diskette mit einem frankiertem, selbst-
     adressierten Rckumschlag zuschicken, auf die ich Ihnen dann neuste
     Version des SysMon und ein paar weitere Programme kopiere.

     Meine Adresse lautet:
       Karsten Isakovic
       Wilmersdorfer Straže 82
       10629 Berlin

     Per Email bin ich ber folgende Adressen erreichbar:
       Subnetz:   ki@cs.tu-berlin.de
       Mausnetz:  Karsten Isakovic @ B


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     BEENDEN VON SYSMON

     Der Menpunkt Quit beendet SysMon nach einer Rckfrage.

     Danach wird ausgegeben, ob ein kleiner Teil vom SysMon (der SysTable),
     resident im Speicher verbleiben muž. Dieser Programmteil wird beim
     n„chsten Start von SysMon erkannt und mitbenutzt, beim n„chsten
     Beenden von SysMon kann dann der ganze Speicher freigegeben werden.

     Ein akustisches Signal weist auf die Freigabe des residenten
     Programmteils hin.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     PROTOKOLLFILE

     Alle Ausgaben des SysMon k”nnen auch in einem File mitprotokolliert
     werden. Das An- und Abschalten des Protokollfiles und die Festlegung
     des Namens wird im Display-Fenster vorgenommen.

     Folgende Besonderheiten gelten im Zusammenhang mit dem Protokollfile:
     - Alle Fenster von SysMon lassen sich mit der Taste * des Zehner-
       blocks in das Protokollfile schreiben. Auf diese Art und Weise kann
       man z.B. den Ist-Zustand des Systems dokumentieren.
     - Auch die Funktionslisten lassen sich im File ablegen, um festzu-
       halten, welche Funktionen im folgenden Protokoll nicht auftauchen
       k”nnen, da sie nicht angew„hlt sind.
     - Wenn kein Fenster ge”ffnet und nur die Menleiste sichtbar ist,
       wird durch die Dumptaste der globale Zustand des SysMon im
       Protokollfile abgelegt.
     - Das Notepad bietet die M”glichkeit, Kommentare w„hrend des
       laufenden Fileprotokolls in das Protokollfile einfgen zu k”nnen.
     - Wurde das Setup gespeichert, w„hrend ein Protokollfile ge”ffnet
       war, wird dieses beim n„chsten Starten von SysMon nicht wieder
       ge”ffnet, da sonst ein schon bestehendes Protokollfile ber-
       schreiben wrde.

     Es wird nur in das Protokollfile gespeichert, wenn dieses vorher
     ge”ffnet wurde.
	 
     Bei einem MediaChange werden alle offenen Dateien eines Laufwerks
     automatisch geschlossen. M”chte man den Aufbau eines Desktop-Fensters
     mitprotokollieren, muž das Protokollfile auf einem anderen Laufwerk
     angelegt werden, da ein Druck auf die ESC-Taste zum Neuaufbau eines
     Desktopfenster einen MediaChange ausl”st und die Protokolldatei
     geschlossen wrde.

     Die Bios-Aufrufe des Gemdos ( unter TOS ) werden alle ber denselben
     Stack abgewickelt; es ist nicht m”glich, w„hrend eines solchen Bios-
     Aufrufs einen Gemdos-Aufruf zu machen, da dieser wieder Bios-Aufrufe
     zur Folge h„tte, welche den Stack berschreiben wrden. Aus diesem
     Grunde wird in einem solchen Fall beim ™ffnen oder Schliežen des
     Protokollfiles eine Warnung ausgegeben und die Funktion nicht aus-
     gefhrt.

     Das Mitprotokollieren dieser Aufrufe ist nur m”glich, weil SysMon die
     Ausgaben in solch einem Fall in einen Puffer schreibt und den Puffer
     leert, sobald es wieder m”glich ist. Die Gr”že des Puffers l„žt sich
     durch eine Patchvariable ver„ndern. Findet ein Puffer-šberlauf statt,
     wird dieses im Protokollfile vermerkt.

     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     DRUCKERAUSGABE

     Neben dem Dump des Fensterinhaltes in das Protokollfile, kann der
     Fensterinhalt auch direkt auf dem Drucker ausgegeben werden. Dazu
     muž man zus„tzlich zur * Taste des Zehnerblocks noch die Alternate-
     Taste gedrckt halten.

     Bei der Tastenkombination Links Shift Alternate Zehnerblock * wird
     eine Hardcopy des SysMon-Bildschirms ber den normalen Hardcopy-
     Vektor des TOS auf dem Drucker ausgegeben. Ist dort zb ein Programm
     zur Image-Hardcopy installiert, wird der SysMon-Bildschirm in ein
     IMG-File abgespeichert.


*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#

DER MONITOR

     Die Fenster des Monitors (Traps, Memory, Os-Vars) erreicht
     man unter dem SysMon-Menpunkt.

     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     TRAPS UND VEKTOREN

     In dem Traps-Fenster wird die Liste der Systemvektoren ausgegeben,
     wobei XBRA-Listen weiterverfolgt werden und die jeweiligen
     Sprungziele mit dem dazugeh”rigem Programmnamen versehen sind.

     Es werden alle Traps und Vektoren des ST ausgegeben, auch diejenigen,
     die nicht vom Betriebssystem benutzt werden.

     Auf dem TT und FALCON werden Vektoren mit 32 Bit angezeigt, auf den
     anderen Rechnern mit 24 Bit.

     Da die Liste sehr lang werden kann, kann man die Anzeige bestimmter
     Informationen auf Tastendruck aus-, bzw einblenden.

       Option                | Umschalten der Anzeige        TRAPS-FENSTER
       ----------------------+--------------------------------------------
       H - Hardware          | Hardware Vektoren
       U - Unused Exceptions | Unbenutzen Vektoren
       I - Interrupt         | Interrupt Vektoren
       T - Trap              | Trap Vektoren
       M - MFP               | MFP Vektoren
       E - ETV               | Etv Vektoren
       S - Special           | Special Vektoren
       V - VBL               | VBL Vektoren
       X - Xcon              | Xcon Device Vektoren
       K - Kbd               | Kbdvbase Vektoren
       L - LineA             | LineA Funktions Vektoren
       ----------------------+--------------------------------------------
       R - ROM               | Sprnge, die in das Betriebssystem zeigen
       N - NotValid          | Vektoren mit ungltiger Zieladresse
       ----------------------+--------------------------------------------


     LIMITIERTE AUSGABE

     Mit der RETURN Taste kann die Trap-Anzeige auf die Traps des Programm
     der aktuell selektierten Cursorzeile begrenzt werden. Um alle Vektoren
     des Programms anzuzeigen, werden alle Optionen gesetzt. Mit der RETURN
     Taste kann wieder auf das normale Anzeigenformat umgeschaltet werden.

     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     SPEICHERBEREICHE

     In dem Memory-Fenster wird eine sortierte Liste der Speicherbereiche
     ausgegeben, in der auch die residenten Bl”cke enthalten sind. Die
     Liste ist dabei so sortiert, daž das Ende des Hauptspeichers oben und
     der Anfang unten ausgegeben wird. Auf dem TT wird der FastRAM-
     Speicherbereich durch eine durchgezogene Line abgetrennt.

     Jede Ausgabezeile ist nach folgendem Format aufgebaut:
     - Der Adresse des Memory Descriptors wird ausgegeben.
     - Auf dem TT und Falcon wird ein kleiner Kreis ausgegeben, wenn es
       sich um Fast- oder Alternate-Memory handelt.
     - Die Startadresse, Endadresse und die L„nge des Blocks wird
       ausgegeben.
     - Der 'Owner' des Blocks wird ausgegeben. Bei freien Bl”cken wird
       stattdessen 'free', bei residenten Bl”cken 'res' ausgegeben. Es
       wird zus„tzlich die HideMem-Konvention erkannt, d.h. wenn alle 4
       Bytes des Longwords Ascii-Buchstaben sind, werden diese ausgegeben.
     - Wenn m”glich, wird dem Speicherbereich ein Programm zugeordnet und
       dessen Name ausgegeben.
     - Es werden folgende Arten unterschieden:
         Programm Code         Basepages       Environments
         Resource-Bl”cke       Aes-Bl”cke      Vdi-Bl”cke
         geladene Vdi-Fonts    LineF-Handler   Directory-Buffer
         CPX Bl”cke            CPX Code
       Alles Andere wird als Data bezeichnet. Da jeweils nur wenige Bytes
       zur Identifikation herangezogen werden, kann die Einordnung auch
       mal daneben gehen.

     In dem Memory-Fenster sind folgende Optionen m”glich:

       Option  | Erl„uterung                                MEMORY-FENSTER
       --------+----------------------------------------------------------
       L,$     | Schaltet die L„ngenangabe zwischen Hex. und Dez. um
       O       | Schaltet die Angabe des 'Owners' zwischen Hex. und Name
               | des Programms um
       --------+----------------------------------------------------------


     MEMORY DUMP

     Im Memory-Fenster kann der aktuell angew„hlte Speicherbereich als
     Hex- und Ascii-Dump ausgegeben werden, indem die RETURN Taste
     gedrckt wird. Dies ist nur m”glich, wenn die L„nge des Speicherblock
     kleiner als 524272 Bytes ist.

     Jede Ausgabezeile ist nach folgendem Format aufgebaut:
     - Vorne steht die Speicheradresse.
     - Dahinter folgen 16 Hex-Bytes.
     - Am Ende jeder Ausgabezeile werden die 16-Hex-Bytes in
       Ascii-Form ausgegeben.

     Mit den Cursortasten kann ein anderer Speicherabschnitt innerhalb des
     Speicherblocks angew„hlt werden. Wird eine Cursortaste zusammen mit
     der Kontrolltaste gedrckt, so wird der Cursor in gr”žeren Sprngen
     bewegt. Die Sprungweite wird ber folgende Optionen gesteuert:

       Option     | Umschalten der Sprungweite                DUMP-FENSTER
       -----------+-------------------------------------------------------
       D - Double | Zwischen $2000 und $4000
       F - Fast   | Zwischen  $400 und $1000
       -----------+-------------------------------------------------------


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     SYSTEMVARIABLEN

     In dem Os Vars-Fenster werden verschiedene Variablen und Strukturen
     des Betriebsystems ausgegeben.

     Die Ausgabe der einzelnen Bl”cke k”nnen ber die Option Kommandos
     umgeschaltet werden.

       Option              | Umschalten der Ausgabe        OS-VARS-FENSTER
       --------------------+----------------------------------------------
       S - Systemvariables | Systemvariablen von $400 bis $5A0
       N - Negativ LineA   | Negativen LineA Variablen.
       L - LineA           | Positiven LineA Variablen.
       V - VDI             | Daten der geladenen VDI-Workstations.
       C - Cookies         | Cookies der CookieJars.
       U - Pun Pointer     | Harddisk-PunPointer Struktur.
       P - Programms       | Program-, Basepage- oder Cartridge-Header.
       F - Fonts           | Daten der geladenen Fonts.
       H - Header          | Header des Betriebssystems.
       --------------------+----------------------------------------------

     Die Vektoren zwischen $400 bis $5A0, die schon unter dem Menpunkt
     Traps ausgegeben werden, werden der Vollst„ndigkeit halber wiederholt.
     Es findet kein Verfolgen von XBRA-Ketten statt.



*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#

DER TRACER

     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     ALLGEMEINE BEDIENUNG

     Der Zustand des Tracers kann direkt in der Menleiste von SysMon
     abgelesen werden.

       ___________________________________________________________________
       ô  Sys-Mon  Aes  Vdi  Gemdos  Bios  Xbios  LineA   1:SysMon       ô
       õ--------------------------------------------------------Run-Mode-õ

     Der Tracer wird mit der ESC-Taste ein-/ausgeschaltet. Im ein-
     geschalteten Zustand wird der SysMon-Meneintrag vollst„ndig grož
     geschrieben.

     Die einzelnen Funktionsgruppen werden durch die entsprechende Kontroll-
     taste ( ^A fr AES,  ^V fr VDI... ) ein-/ausgeschaltet. Auch hierbei
     gilt, daž der Name der Funktionsgruppe vollst„ndig grož geschrieben
     wird, wenn die Funktionsgruppe getraced wird.

     Die Nummer und der Name des aktuellen Setups werden rechts ausgegeben.
     Zwischen den 10 Setups kann mit den Funktionstasten umgeschaltet
     werden.

     In der zweiten Zeile wird der Trace-Modus ausgegeben. Dieser kann
     mit der TAB-Taste zwischen den 4 Modi umgeschaltet werden.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     FUNKTIONSLISTEN

     In den Funktionslisten jeder Funktionsgruppe kann fr jede einzelne
     Funktion ein Modus angegeben werden. Dieser Modus bestimmt das
     Verhalten des Tracers beim Aufruf der jeweiligen Funktion.

     Am Ende jeder Funktionsliste findet sich ein Eintrag 'Unknown
     Function'. Der Modus dieses Eintrags bestimmt den Modus von
     Funktionen, die zwar der jeweiligen Funktionsgruppe angeh”ren, aber
     keine Betriebssystem-Funktionen sind (Einige residente Programme
     bieten erweiterte Funktionen ber vom Betriebssystem unbenutze
     Funktionsnummern an.).

     Die Tabelle zeigt alle Modi, die fr die einzelnen Funktionen
     m”glich sind. Die zugeh”rige Taste wird nur angegeben, wenn sie
     nicht mit dem dargestellten Zeichen bereinstimmt.

       Zeichen | Modus         | Erl„uterung                 FUNKTIONSMODI
       --------+---------------+------------------------------------------
       Leer    | Nicht Tracen  | Aufrufe dieser Funktion werden nicht
               |               | angezeigt. Dieser Modus wird mit der
               |               | DELETE-Taste eingeschaltet.
       Plus    | Tracen        | Alle Aufrufe dieser Funktion werden
               |               | angezeigt, sofern sie von Programmen
               |               | stammen, die auch angew„hlt sind. Das
               |               | Tracen wird mit der Insert-Taste
               |               | eingeschaltet.
       Kreis   | Breakpoint    | Kennzeichnet einen Haltepunkt. Wenn der
               |               | Tracer im Wait-Modus arbeitet, wird hinter
               |               | diesem Funktions-Aufruf automatisch der
               |               | SysMon betreten. Dieser Modus wird mit der
               |               | ~ (Tilde)-Taste eingeschaltet.
       --------+---------------+------------------------------------------
       0...9   | Setup-Mode    | Aufrufe dieser Funktion werden ausgegeben,
               |               | wenn das aufrufende Programm im
               |               | angegebenen Setup angew„hlt ist.
       *       | All-Mode      | Alle Aufrufe dieser Funktion werden
               |               | angezeigt, auch wenn das zugeh”rige
               |               | Programm nicht angew„hlt ist.
       I und O | Debugger-Mode | Vor bzw. nach Ausfhrung der Funktion
               |               | wird in den Maschinensprache-Debugger
               |               | verzweigt.
       --------+---------------+------------------------------------------

     Der komplexeren Modi 'Setup-Mode', 'All-Mode' und 'Debugger-Mode'
     werden im Abschnitt KOMPLEXERE TRACER-MODI n„her erl„utert.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     PROGRAMM FENSTER

     Im Programs-Fenster findet man eine Liste der geladenen Programme.
     Fr jedes Programm kann bestimmt werden, ob die Systemaufrufe
     ausgegeben werden sollen.

     Der Eintrag 'Unknown Program' bestimmt den Modus von Aufrufen, die
     nicht aus dem Codebereich der geladenen Programme stammen.


     Die Ausgabezeilen des Fensters sind folgendermažen aufgebaut:

     - Am Anfang der Zeile wird der Speicherbereich des Programms
       ausgegeben.
     - Bei den Programmnamen gelten folgende Konventionen:
       - Der Programmname wird grož geschrieben, wenn SysMon der genaue
         Name bekannt ist.
       - Die Namen in gemischter Grož/Kleinschreibung werden von SysMon
         vergeben, wenn das Programm eine XBRA-Kennung benutzt.
       - Die Namen Acc_A, Auto_A, Prg_A usw. werden vergeben, wenn SysMon
         nur den Typ des Programms erkennt.
       Ein Name in gemischter Schreibweise kann editiert werden. Die
       Editierm”glichkeit eines Names ist auch an der Klammerung in
       >>..<< zu erkennen. Es k”nnen nur Grožbuchstaben eingegeben werden.
       Um Zeichen zu l”schen ist nur die Backspace-Taste zugelassen. Ein
       leerer Name ist unzul„ssig und wird daher durch Fragezeichen
       ersetzt.
     - Der Trace Zustand des Progamms wird mit den blichen Symbolen
       aus Tabelle FUNKTIONSMODI angezeigt.
     - Bei Programm, auf das der ActPd Vektor zeigt, wird ein R-Symbol
       ausgegeben. Bei Funktionsaufrufen durch Accessories ist das GEM der
       aktuelle Prozež.
     - Die Appl-Id wird ausgegeben. Bei Stuffer und „hnlichen Multi-
       Accessories oder bei mehreren verschachtelt geladenen Programmen
       werden manche Ids mehrfach ausgegeben. Diese Angabe ist nur
       m”glich, wenn SysMon den AES-Trap mittraced, oder wenn SysMon den
       internen Aufbau der AES-Listen des Betriebssystems kennt.
     - Die benutzen Vdi-Handles werden ausgegeben. Diese Angabe ist nur
       m”glich, wenn SysMon den VDI-Trap mittraced.
     - Am Ende der Zeile wird die Art des Programms ausgegeben:

       Art  | Erl„uterung                                    PROGRAMMARTEN
       -----+-------------------------------------------------------------
       TOS  | wird nur fr die beiden Betriebssystem-Teile TOS und GEM
            | und GEM benutzt.
       Auto | wird ausgegeben, wenn das Programm im Auto-Ordner gestartet
            | wurde. Diese Programme sind resident geladen.
       Acc  | wird fr Accessories verwendet.
       Prg  | wird bei normal geladenen Programmen benutzt.
       Res  | wird bei resident geladenen Programmen benutzt.
       LPrg | wird bei Programmen benutzt, deren Codebereich einem anderen
            | Prozež geh”ren. (loaded program)
       Cart | wird bei Programmen benutzt, die in einer Cartridge gefunden
            | wurden.
       -----+-------------------------------------------------------------


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     DARSTELLUNGS FENSTER

     Das Display-Fenster enth„lt alle Einstellungen, die die Ein-/Ausgabe
     betreffen.

     Die Umschaltungen des Ein-/Ausgabe-Ger„tes gelten nur fr die Tracer-
     Ausgaben, die Darstellung der SysMon-Benutzeroberfl„che erfolgt immer
     auf der 2. Bildschirmseite. Žnderungen des Ein-/Ausgabe-Ger„tes
     sind erst nach Verlassen des SysMon Bildschirms gltig.

       Taste           | Erl„uterung                       DISPLAY-FENSTER
       ----------------+--------------------------------------------------
       I - Input       | schaltet die Eingabe zwischen Tastatur, RS-232,
                       | Parallelport und Midiport um.
       O - Output      | schaltet die Ausgabe zwischen 2. Bildschirmseite,
                       | RS-232, Parallelport und Midiport um.
       F - FileOutput  | schaltet das Protokollfile an/aus. Ist ein ™ffnen
                       | oder Schliežen zur Zeit nicht m”glich, wird eine
                       | Warnung ausgegeben. Siehe Abschnitt PROTOKOLLFILE.
                       | Sollte das File schon existieren, so hat man die
                       | M”glichkeit, es zu berschreiben, die Ausgaben
                       | anzuh„ngen oder abzubrechen.
       N - Name        | wechselt in den Editiermodus fr den Namen des
                       | Protokollfiles. Gltige Eingaben sind Buchstaben,
                       | Zahlen, Punkt, Doppelpunkt, Unterstrich und der
                       | Backslash. Andere Eingaben beenden die
                       | Namenseingabe.
       J - JumpScroll  | gibt an, wieviele Zeilen im Run-Modus auf einmal
                       | gescrollt werden sollen. Bei einem Wert von 10
                       | wird der Bildschirm um 10 Zeilen nach oben
                       | gescrollt und 10 Zeilen ohne Scrollen ausgegeben.
                       | Da die Scrollroutine jetzt nur alle 10 Zeilen
                       | aufgerufen werden muž, ist die Ausgabe-
                       | geschwindigkeit wesentlich erh”ht.
       S - STEP-Filter | gibt an, wieviele Zeilen im Step-Modus ohne
                       | Nachfrage ausgefhrt werden sollen.
       P - Pause       | schaltet die Pausen Option um. Wenn Pause
                       | angew„hlt ist, wird bei jedem Drcken der rechten
                       | Shifttaste und dem damit verbundenen Anzeigen
                       | des SysMon-Bildschirms gewartet, bis die Shift-
                       | Taste wieder losgelassen wird. Ausserdem kann man
                       | eine Wartezeit in ms anw„hlen, die hinter jeder
                       | dargestellten Ausgabezeile gewartet wird. Ist der
                       | SysMon--Bildschirm nicht sichtbar, wird die
                       | Ausgabe nicht verz”gert.
       L - List output | bestimmt die Art der Sortierung in den Funktions-
                       | listen. Diese k”nnen entweder nach Funktions-
                       | nummern oder nach Funktionsnamen sortiert werden.
       ----------------+--------------------------------------------------


     Bei 'JumpScroll', 'STEP-Filer' und 'Pause' kann durch zus„tzliches
     Gedrckthalten der Shifttaste der eingestellte Wert auch vermindert
     werden.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     KONFIGURATIONS FENSTER

     Das Configuration-Fenster ist eine šbersicht ber alle 10 Setups. Die
     Umschaltung der einzelnen Elemente der Ausgabezeile erfolgt mit den
     Kontrolltasten, die der Tabelle KONTROLLTASTEN zu entnehmen sind.

     Jede Zeile des Fensters hat folgenden Aufbau:
     - Zuerst kommt der Name des Setups, der editiert werden kann.
       Um Zeichen zu L”schen ist nur die Backspace-Taste zugelassen.
     - Beim Tracermodus wird entweder Run, Step, Wait oder Halt
       ausgegeben.
     - Der Zustand der einzelnen Betriebssystemfunktionen wird durch
       die Anfangsbuchstaben verdeutlicht, bei AGX wird folglich AES,
       GEMDOS und XBIOS getraced.
     - Das Format jeder Tracer-Ausgabezeile wird durch die Anfangsbuch-
       staben der Optionen ausgegeben. Hierbei steht R fr ReturnAddr,
       C fr Caller, N fr Number, O fr OutputStack, F fr FlagSuper,
       E fr Extra und W fr WatchBypass.
     - Der Zustand der šberwachungsfunktionen fr Pd-Wechsel und Trap-
       Žnderungen werden mit den Buchstaben P und T ausgegeben.

     Das aktuelle Setup kann mit den Cursortasten oder durch die
     Funktionstasten gewechselt werden.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     PROFILING FENSTER

     Im proFile-Fenster kann das Profiling ein/aus geschaltet werden.
     Profiling bedeutet, daž die Anzahl jedes Aufrufs mitgez„hlt wird. Die
     Ausgabe der Aufruf-Anzahl erfolgt in den Funkionslisten rechts neben
     der jeweiligen Funktion.
     Durch Profiling erh„lt man einen šberblick ber die am h„ufigsten
     verwendeten Aufrufe.

       Taste         | Erl„uterung                         PROFILE-FENSTER
       --------------+----------------------------------------------------
       P - Profile   | schaltet das Profiling an/aus. Die Daten werden
                     | hierbei nicht gel”scht, so daž eine Z„hlpause
                     | m”glich ist.
       D - Dump      | schreibt die beim Profiling gewonnenen Daten in das
                     | Protokollfile. Sollte kein Protokollfile ge”ffnet
                     | sein, so wird es ge”ffnet und nach dem Schreiben
                     | wieder geschlossen.
       S - ShowFunc. | schaltet um, ob die einzelnen Funktionen  w„hrend
                     | des Z„hlens ausgegeben werden sollen.
       C - Clear     | L”scht alle Profiling-Daten.
       --------------+----------------------------------------------------


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     NOTIZBLOCK FENSTER

     Das Notepad-Fenster bietet eine M”glichkeit Kommentare einzugeben.
     Dieser Kommentar kann dann in das Protokollfile eingefgt werden, um
     so zus„tzliche Informationen und Bemerkungen gleich bei der Erstellung
     des Protokollfiles eingeben zu k”nnen.

     Die aktuelle Eingabezeile wird durch >>...<< geklammert. Als Eingaben
     sind alle ASCII-Zeichen zul„ssig. Es sind nur minimale M”glichkeiten
     zum Editieren vorgesehen, aužer den Cursortasten haben folgende
     Tasten eine Sonderfunktionen:

       Taste | Erl„uterung                                 NOTEPAD-FENSTER
       ------+------------------------------------------------------------
       CLR   | l”scht das ganze Fenster.
       BS    | l”scht den letzten Buchstaben. Zusammen mit einer Shift-
             | Taste wird eine ganze Zeile gel”scht.
       CR    | bewegt den Cursor eine Zeile nach unten.
       ------+------------------------------------------------------------

     Bei einem Dump in ein Protokollfile werden nur diejenigen Zeilen aus-
     gegeben, in denen auch etwas eingegeben wurde. M”chte man eine
     Leerzeile im Kommentar erzeugen, muž man zumindest ein Leerzeichen in
     die Zeile einfgen.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     STATUS FENSTER

     Das Used-Traps-Fenster liefert eine šbersicht ber die von SysMon
     benutzten Traps und Bypasse und ber die Funktionen, die zwar auf-
     gerufen, aber noch nicht vom Betriebssystem abgearbeitet wurden.

     Das Format der Bypass- und Trap-Ausgabe ist:
     - Links wird der Vorg„nger aufgefhrt, also ein Trap oder ein
       Programm, daž daraufhin den SysTable anspringt.
     - In der Mitte wird die Adresse des SysTable Sprungziels ausgegeben.
     - Rechts wird der Nachfolger ausgegeben, der von der SysTable
       angesprungen wird.
     - Ganz rechts gibt es noch einen Buchstabenkrzel, der den Vektor
       kennzeichnet. A/V steht fr AesVdi, G fr Gemdos usw.

     Durch die Taste 'M' wird zwischen den 2 Darstellungsarten
     umgeschaltet:
     - Die aktiven Traps und Bypasse werden getrennt ausgegeben. Dabei
       werden die Bypasse in der Reihenfolge aufgefhrt, in der sie auch
       angesprungen werden.
     - Die Traps und Bypasse eines Vektors werden vermischt ausgegeben,
       so daž die Reihenfolge von der Trap Adresse bis zum letzten Bypass
       der Ansprungreihenfolge entsprechen.

     In einer weiteren Liste werden diejenigen Funktionen angezeigt, die
     noch nicht aus den Traps zurckgekehrt sind. Siehe dazu das Kapitel
     INTERNA.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     DAS STEP MENUE

     Beim Tracen im Step-Modus stoppt SysMon nach jeder ausgegebenen
     Funktion und wartet auf eine Eingabe.

       Taste         | Erl„uterung                               STEP-Men
       --------------+----------------------------------------------------
       M - Men      | betritt das SysMon-Men. Wird das SysMon-Men durch
                     | SPACE verlassen, gelangt man wieder in das
                     | Step-Men.
       0--9          | w„hlt, genauso wie die 10 Funktionstasten, das
                     | aktuelle Setup aus. Die Tasten 0-9 sind zus„tzlich
                     | notwendig, da die Funktionstasten nicht ber alle
                     | Eingabedevices eingegeben werden k”nnen.
       Kontrolltaste | Die SysMon KONTROLLTASTEN gelten auch im Step-Men.
       --------------+----------------------------------------------------

     Jede andere Taste beendet das Step-Men und fhrt das laufende
     Programm fort.

     Im Display-Fenster kann unter Step-Filter die Anzahl der Zeilen ein-
     gestellt werden, die ohne Anzuhalten im Step-Modus durchlaufen werden
     sollen.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     TRACE AUSGABE

     Die grože Fl„che unter der Menleiste steht fr die Ausgaben des
     Tracers zur Verfgung. Es gibt auch die M”glichkeit in den Trace-
     Ausgaben zurckzubl„ttern.

     Der ansonsten unsichtbare Cursor kann mit den Cursor-Kommandos aus
     der Tabelle TASTEN bewegt werden, wenn kein Fenster ge”ffnet ist.
     Der Cursor bleibt solange sichtbar, bis SysMon mit SPACE verlassen
     wird. Der Bildschirm springt dann wieder an das Ende der Tracer-
     Ausgaben.

     Die Anzahl der gepufferten Zeilen kann man durch eine Patchvariable
     festlegen (Siehe Abschnitt PATCHVARIABLEN). Als Default werden 50
     Zeilen zus„tzlich zu den sichtbaren Bilschirmzeilen angelegt.


*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#

DIE AUSGABEZEILE DES TRACERS

     Die Elemente der Ausgabezeile k”nnen ber Kontrolltasten ein-/aus-
     geschaltet werden. Der Anfangsbuchstabe des Namens eines Elementes
     entspricht dabei der Kontrolltaste.

     Die Ausgabezeile hat folgendes Format, wenn alle Elemente ein-
     geschaltet sind:

       Element     | Erl„uterung                              AUSGABEZEILE
       ------------+------------------------------------------------------
       >           | Wird ausgegeben, wenn beim Tracen ein Taskwechsel
                   | stattgefunden hat. Diese Ausgabe l„žt sich nicht
                   | abschalten.
       ReturnAddr  | gibt die Rcksprungaddresse der Funktion aus.
       Caller      | gibt den Namen des aufrufenden Programms aus.
       Number      | zeigt hinter einem Kennbuchstaben fr die Funktions-
                   | gruppe ( A fr Aes ... L fr LineA und O fr Other )
                   | die Funktionsnummer an.
       OutputStack | gibt den aktuellen Stackpointer aus.
       FlagSuper   | gibt einen kleinen Punkt aus, wenn der Aufruf aus dem
                   | Supervisormodus stattgefunden hat.
       ------------+------------------------------------------------------

     Hinter diesem Header wird der Funktionsname ausgegeben. Treten bei
     den Aufrufen Verschachtelungen auf, werden die Funktionsnamen ein-
     gerckt. Kehrt die Funktion dann sp„ter zurck, wird der Header noch
     einmal ausgegeben.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     EINGABE PARAMETER

     Hinter dem Funktionsnamen werden die Eingabe-Parameter ausgegeben,
     wobei Werte, die als Konstanten definiert sind, im Klartext ausgegeben
     werden. Hat eine Funktion mehrere Eingabe-Parameter, so werden vor
     jedem Parameter kurze Texte ausgegeben. Die Reihenfolge der Parameter
     entspricht der C-Deklaration dieser Funktion. Bei 'Call by Reference'
     Parametern wird deren Wert erst bei den Ausgabeparametern angegeben.

     Entsprechend der C-Notation werden Character-Variablen in '...',
     Strings in "..." und Strukturen in {...} eingeschlossen. Vor jeder
     Struktur wird der Name und Adresse der Datenstruktur ausgegeben. Fr
     die meisten Strukturen muž die Ausgabe der einzelnen Elemente erst
     ber die Kontrolltaste 'ExtraOutput' aktiviert werden. Bitsets werden
     als ( xxx + yyy + zzz  ) ausgegeben.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     TRENNZEICHEN

     Um die Ausgabe Parameter optisch von den Eingabe-Parameten abzuheben,
     wird ein '->' als Trennzeichen ausgegeben. Dies geschieht erst, wenn
     die Funktion aus dem Trap zurckkehrt. Das Trennzeichen wird auch
     ausgegeben, wenn eine Funktion keine Ausgabe-Parameter hat.

     Im Sondermodus 'WatchBypass' wird das Trennzeichen '->' durch
     '-[ProgrammName]->' ersetzt, falls die Funktion von einem anderen
     Programm abgefangen wurde. Hat sich ein Programm hinter einen Aufruf
     geh„ngt, so wird '-{ProgrammName}->' verwendet.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     AUSGABE PARAMETER

     Hinter dem Trennzeichen werden die Ausgabe-Parameter der Funktion
     ausgegeben. Bei mehreren 'Call by Reference' Parametern werden vor
     jedem Parameter kurze Texte zur Identifikation ausgegeben.

     Die Notation der Ausgabe-Parameter entspricht der Notation fr die
     Eingabe-Parameter.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     RUECKGABEWERT

     Der Rckgabewert einer Funktion wird immer am Ende ausgegeben, sind
     Ausgabeparameter vorhanden, so wird ein 'Ret' vorrangestellt. Fehler-
     meldungen des Betriebssystems werden im Klartext ausgegeben.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     WEITERE TRACER AUSGABE MOEGLICHKEITEN

     Beim Tracer existieren noch weitere M”glichkeiten, um die Ausgabezeile
     zu beeinflussen oder erweiterte Tracer-Ausgaben zu erzeugen.

       Element     | Erl„uterung                           TRACER-AUSGABEN
       ------------+------------------------------------------------------
       ExtraOutput | schaltet zus„tzliche Ausgaben ein.
       WatchBypass | beeinflusst die šerwachung des Funktionsablaufes.
       TrapChange  | erzeugt Ausgaben, wenn sich die vom SysMon
                   | beobachteten Systemvektoren ver„ndern.
       PD_Change   | erzeugt Ausgaben, wenn sich der ActPD ver„ndert.
       ------------+------------------------------------------------------


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     ERWEITERTE AUSGABEN

     Mit der Kontrolltaste Taste ^E (ExtraOutput) kann die Ausgabe von
     zus„tzlichen Informationen eingeschaltet werden. Dies sind Werte, die
     nicht direkt auf dem Stack liegen, aber im Zusammenhang mit der
     Funktion stehen. Das ist z.B die Ausgabe des Filenamens bei Gemdos
     Funktionen, die nur einen Filehandle benutzen, der Text von
     selektierten AES-Objekten oder die Ausgabe der Elemente von ber-
     gebenen Strukturen, z.B. der DTA-Struktur bei den Gemdos Funktionen
     Fsfirst und Fsnext oder dem MFDB bei Vdi Funktionen.

     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     PD UND TRAP WECHSEL

     Ein Wechseln des aktuellen Prozežes und Ver„nderungen der SysMon-Traps
     werden vom Tracer angezeigt, wenn die Anzeige mit den Kontrolltasten
     ^P (fr Pd-Change) und ^T (fr Trap-Change) aktiviert ist.

     Die Problematik der Trap-šberwachung wird im Abschnitt INTERNA
     behandelt.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     SETUP ABHAENGIGES TRACEN

     Das setup-abh„ngige Tracen kann ber die Modi 0..9 in den Funktions-
     listen eingestellt werden. Unabh„ngig von der Einstellung im Program-
     Fenster wird ein Aufruf ausgegeben, wenn das aufrufende Programm im
     angegebenen Setup angew„hlt ist.

     Da dies ziemlich kompliziert ist, hier ein Beispiel:

       Man m”chte das Vdi-Tracen und zwar nicht nur die Aufrufe von
       Programmen, sondern auch die Aufrufe des GEM durch das AES.

       Einige Vdi-Aufrufe des Gem finden aber permanent statt:

         vq_mouse, vrq_string usw...

       M”chte man diese 'permanenten' Aufrufe nicht sehen, so k”nnten
       sie ohne setup-abh„ngiges Tracen nur komplett abgeschaltet werden.

     Fr dieses Problem ist das setup-abh„ngige Tracen gedacht:

       Das aktuelle Setup sei '1', es sind alle Programme angew„hlt, auch
       Tos/Gem. Im Setup '2' sind auch alle Programme angew„hlt, aber
       Tos/Gem nicht. Wird nun bei den 'permanenten' Aufrufen der Modus
       '2' vergeben, so gilt bei diesen die Einstellung des Setups '2'.
       D.h. wenn sie durch das Tos/Gem ausgel”st wurden, werden sie nicht
       ausgegeben, wohl aber aber allen anderen Programmen.
       Die anderen Vdi-Funktionen werden entsprechend der Einstellung von
       Setup '1' ausgegeben, also auch, wenn sie von Tos/Gem stammen.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     PROGRAMM UNABHAENGIGES TRACEN

     Das programm-unabh„ngige Tracen kann ber den Modus '*' in den
     Funktionslisten eingestellt werden. Ein Aufruf wird ausgegeben, auch
     wenn das aufrufende Programm nicht angew„hlt ist.

     Der All-Modus ist sinnvoll einzusetzen, wenn es egal ist, welches
     Programm den Aufruf ausl”st. Im Zusammenhang mit dem Step-Modus kann
     der Rechner vor der Ausfhrung des Aufrufs angehalten werden.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     DEBUGGER MODI

     In manchen F„llen ist es sinnvoll, einen einzelnen Aufruf auf
     Maschinensprache-Ebene verfolgen zu k”nnen. SysMon bietet deshalb
     zwei Debugger-Modi an, die beim Auftreten der Funktion einen
     Maschinensprache-Debugger aufrufen. Die beiden Modi k”nnen mit den
     Tasten 'I' und 'O' in den Funktionslisten eingestellt werden.

     Im Groben entsprechen die Modi dem Modus 'Tracen', die Parameter
     werden ganz normal ausgegeben. Die Modi unterscheiden sich nur
     hinsichtlich des Zeitpunktes, an dem in den Debugger verzweigt wird.

        Modus  | Erl„uterung                                 DEBUGGER-MODI
       --------+----------------------------------------------------------
       I - In  | Es wird vor dem Aufruf der eigentlichen Funktion, aber
               | nach der Ausgabe der Eingabeparameter in den Debugger
               | gesprungen.
       O - Out | Es wird erst in den Debugger gesprungen, nachdem der
               | Aufruf aus dem Trap zurckgekehrt ist und die Ausgabe-
               | parameter ausgegeben wurden.
       --------+----------------------------------------------------------

     Der 'I' Modus wird zur Zeit nur vom TempleMon, der 'O' Modus vom
     TempleMon und BugaBoo untersttzt. Ist kein Debugger geladen, so wird
     wie bei dem Modus 'Tracen' verfahren.


*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#

DIE TASTENKOMBINATIONEN VON SYSMON

     Dieses Kapitel bietet eine šbersicht ber alle in SysMon benutzen
     Tastaturkommandos.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     CURSOR KOMMANDOS

     Der Cursor kann in den Mens und Fenstern mit folgenden Tasten-
     kombinationen bewegt werden:

       Zustand       |  Taste        | Bedeutung           CURSOR-BEWEGUNG
       --------------+---------------+------------------------------------
                     | Links, Rechts | Wechseln des Menpunktes
                     | Rauf,  Runter | Rauf bzw. Runter
       Shift         | Rauf,  Runter | Seitenweise Rauf / Runter
                     | Home          | Anfang
       Shift         | Home          | Ende
       --------------+---------------+------------------------------------
       Control       | Rauf,  Runter | Ausw„hlen eines Blocks
       Control       | Home          | Block bis Anfang
       Control-Shift | Home          | Block bis Ende
       --------------+---------------+------------------------------------

     Das  Ausw„hlen eines Blocks ist nur in den Funktionslisten m”glich.
     Die Blockauswahl wird durch eine beliebige andere Cursortaste ab-
     gebrochen.

     Die Eintr„ge in Mens und Dialog-Fenstern werden ausgew„hlt, indem
     sie mit dem Cursor selektiert und durch die RETURN-Taste best„tigt
     werden. Eine andere M”glichkeit ist die Eingabe des Kennbuchstabens
     des Eintrags. Der Kennbuchstabe ist jeweils der einzige Grožbuchstabe
     innerhalb des Eintrags.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     OPTION KOMMANDOS

     In Optionen-Fenstern werden die einzelnen Optionen durch die
     jeweiligen Kennbuchstaben, die oben rechts in der Ecke des Fensters
     ausgeben werden, umgeschaltet. Wird ein Buchstabe in der Optionen-Liste
     grož geschrieben, so ist die zugeh”rige Option angeschaltet.

     Zus„tzlich gelten folgende Tastaturkommandos:

       Zustand | Taste        | Bedeutung                 OPTION-KOMMANDOS
       --------+--------------+-------------------------------------------
       Control | Rauf, Runter | Zum n„chsten Blockanfang springen
               | Delete       | Alle Optionen l”schen
               | Insert       | Alle Optionen setzen
       --------+--------------+-------------------------------------------


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     FUNKTIONSLISTEN KOMMANDOS

     In Funktionslisten kann der Modus der aktuellen Funktion oder des
     angew„hlten Blockes durch Drcken der folgenden Tasten bestimmt
     werden:

       Taste  | Darstellung  | Bedeutung                  LISTEN-KOMMANDOS
       -------+--------------+--------------------------------------------
       Delete | Leerzeichen  | Ignorieren
       Insert | Pluszeichen  | Anzeigen
       Tilde  | Kreiszeichen | Haltepunkt
       -------+--------------+--------------------------------------------
       0..9   | 0..9         | setup-abh„ngiges Tracen
       I,O    | I,O          | Debugger-Modi
       *      | *            | All-Mode
       -------+--------------+--------------------------------------------


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     KONTROLLTASTEN KOMANDOS

     Die Kontrolltasten sind die wichtigsten Tastenkombinationen des
     SysMon. Sie gelten in allen Fenstern und Mens und auch im Step-Men.

       Taste  | Erl„uterung          |                      KONTROLLTASTEN
       -------+----------------------+------------------------------------
       ESCAPE | Tracer an/aus        |
       TAB    | Tracer Modus „ndern  |
       F1-F10 | Setup Žnderung       |
       -------+----------------------+------------------------------------
       ^A     | Aes                  | Funktionsgruppen an/aus
       ^V     | Vdi                  |
       ^G     | Gemdos               |
       ^B     | Bios                 |
       ^X     | Xbios                |
       ^L     | LineA                |
       -------+----------------------+------------------------------------
       ^R     | Return address       | Tracerausgaben umschalten
       ^C     | Caller name          |
       ^N     | Number of function   |
       ^O     | Output stack pointer |
       ^F     | Flag supervisor mode |
       ^E     | Extra output         |
       ^W     | WatchBypass          |
       -------+----------------------+------------------------------------
       ^P     | Pd-changes           | Tracerausgaben umschalten
       ^T     | Trap-changes         |
       -------+----------------------+------------------------------------


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     SONSTIGE KOMANDOS

       Taste          | Beschreibung                    SONSTIGE-KOMMANDOS
       ---------------+---------------------------------------------------
       UNDO           | Aktuelles Fenster schliežen
       SPACE          | SysMon verlassen, Programm fortfahren
       HELP           | Kurze šbersicht ber die Bedienung von SysMon
       ---------------+---------------------------------------------------
       ^Z             | Tracerschirm l”schen (Nur wenn kein anderes
                      | Fenster offen ist)
       Re. Shift      | Umschalten des aktuell dargestellten Bildschirms
       Re. Shift-CAPS | Festlegen des Default-Bildschirms
       Re. Shift-HELP | SysMon-Bildschirm festlegen
       Li. Shift-HELP | Maschinensprache-Debugger anspringen
       ---------------+---------------------------------------------------
       Zehnerblock  * | Dump des aktuellen Fensters in das Protokollfile
       Alt. Zehnbl. * | Dump des aktuellen Fensters auf den Drucker
       Li. Sh. Alt. * | Hardcopy des SysMon-Bildschirms ber den TOS-
                      | Hardcopy-Vektor.
       ---------------+---------------------------------------------------

*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#

PROGRAMM INTERNA

     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     SYSMON UND DIE TRAPS

     Wenn der Tracer ausgeschaltet ist, h„ngt SysMon im Keyboard-, Vbl-
     und Gemdos-Vektor.

     - Im Keyboard-Vektor werden die Tastendrcke auf die Kombination
       Rechts-Shift-HELP untersucht.
     - Aufgerufen wird SysMon dann im Vbl-Interrupt.
     - Der Gemdos-Vektor wird ben”tigt, um das Starten und Beenden von
       Programmen protokollieren zu k”nnen. Auf diese Weise kennt SysMon
       alle nach ihm gestarteten Programme beim richtigen Namen.

     Wird der Tracer eingeschaltet, so installiert sich SysMon zus„tzlich
     in den AesVdi, Bios, Xbios und LineA Vektoren.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     FUNCTION TABLE

     Um die Ausgabe-Parameter von Funktionen ausgeben zu k”nnen, h„ngt
     sich SysMon hinter jede Funktion, indem die Rcksprung-Adresse
     modifiziert wird.

     Die einfache Annahme, fr jeden Trap genau eine Rcksprung-Adresse
     zum jeweiligen Programm vermerken, ist leider falsch. Unter den
     Multitasking-Systemen wie MagiX, MiNT und MultiTos ist sofort
     einsichtig. Aber auch das alte Betriebssystem besitzt zum Teil
     Multitasking-Funktionen ( Z.B das Aes-Taskswitching ). Es ist daher
     es nicht so, daž derselbe Prozež aus dem Trap-Aufruf zurckkehrt, der
     den Trap ausgel”st hat. Auch die Gemdos-Funktion Pexec, die ein
     Programm als Kind-Prozež nachstartet, kehrt erst zurck, wenn der
     Kind-Prozež beendet ist. Der Kind-Prozež kann (und wird sogar sehr
     warscheinlich...) Gemdos}-Aufrufe benutzen, also ist auch hier ein
     anderes Verfahren notwendig.

     SysMon legt jeden Aufruf in einer Tabelle ( Function-Table ) ab.
     Sobald der Aufruf zurckkehrt, wird der Tabelleneintrag gel”scht und
     das ausl”sende Programm an der richtigen Adresse fortgesetzt.

     Auf diese Weise k”nnen auch verschachtelte Aufrufe und Aufrufe aus
     Interrupts heraus korrekt ausgegeben werden.

     Im UsedTraps-Fenster wird eine šbersicht ber die Funktionen gegeben,
     die noch nicht aus dem Trap zurckgekehrt sind. Im Normalfall wird
     dies fr jedes Accessory und fr das Hauptprogramm genau eine
     Funktion sein. Wird das TOS oder GEM getraced oder sind residente
     Treiber vorhanden, so sind Verschachtelungen von Funktionen m”glich.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     BYPASS TABLE

     SysMon versucht immer, der Erste in einem Trap zu sein, da sonst
     Aufrufe von anderen Trap-Programmen abgefangen werden k”nnten. Aus
     diesem Grunde werden die Traps laufend vom SysMon berwacht, dies
     geschieht auch, wenn der Tracer nicht angeschaltet ist.

       Programm ruft einen Trap auf
        \
         \
          SysMon - Traphandler
           \
            \
             TOS - Traphandler
            /
           /
          SysMon - Function Table
         /
        /
       Programm wird fortgesetzt

     Wenn ein anderes Programm einen Trap-Handler installiert, wird der
     SysMon Trap-Handler in eine Umleitung ( Bypass ) umgewandelt. Diese
     springt lediglich die nachfolgende Adresse an. SysMon installiert
     dann vorne im Trap einen neuen Trap-Handler.

       Programm ruft einen Trap auf
        \
         \
          SysMon - Traphandler
           \
            \
             fremder Traphandler
              \
               \
                SysMon Bypass (alter SysMon - Traphandler)
                 \
                  \
                   TOS - Traphandler
                  /
             ....
           /
          SysMon - Function Table
         /
        /
       Programm wird fortgesetzt

     H„ngen sich mehrere Programme hintereinander in denselben Trap ein,
     so wird zwischen jedem Programm ein Bypass im Trap installiert.

     Wird der Trap vom anderen Programm auf die alte Adresse zurck-
     gesetzt, so wandelt SysMon den Trap-Handler in einen Bypass um.
     Der Bypass wird noch nicht freigegeben, da er vielleicht noch einmal
     ben”tigt wird. Erst wenn der Speicherblock freigegeben wird, in dem
     sich das Sprungziel des Bypasses befindet, wird dieser freigegeben.
     Der Bypass, der an der alten Adresse vorhanden war, wird wieder in
     einen Trap-Handler umgewandet.

     Im UsedTraps-Fenster werden die vorhanden Bypasse und deren Sprung-
     ziele aufgelistet.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     WATCH BYPASS FUNKTION

     Ist die Sonderoption WatchBypass, die ber die Controlltaste ^W
     aktiviert wird, eingeschaltet, springt der Bypass nicht nur zur
     n„chsten Adresse weiter. Es wird in jeden Bypass eine Funktion
     eingebunden, die die Funktionsnummer und die Rcksprung-Adresse des
     Aufrufs auf Ver„nderungen berprft.

     Aužerdem wird vermerkt, welcher Bypass eines Traps berhaupt an-
     gesprungen wurde.

     - Anhand des zuletzt angesprungenen Bypasses kann SysMon entscheiden,
       ob ein anderes Programm als das Betriebsystem den Aufruf
       beantwortet hat.
     - Wurde die Rcksprungadresse ver„ndert, so kann SysMon ausgeben,
       welches Programm sich hinter den Aufruf geh„ngt hat.
     - Wurde die Funktionsnummer ver„ndert oder ein Aufruf nicht ber
       einen Trap, sondern nur ber den Stack abgewickelt, so werden
       diese Aufrufe ausgegeben.

     Damit die WatchBypass-Funktion optimal funktioniert, muž sie schon
     beim Starten von SysMon aktiviert sein. Dies wird erreicht, indem der
     Sondermodus WatchBypass und der Tracer eingeschaltet und dann das
     Setup gespeichert wird. Beim n„chsten Start installiert SysMon nicht
     nur Bypasse vor dem aktuellen Trap-Handler, sondern auch zus„tzliche
     Bypasse hinter jedem Programm, das das XBRA-Verfahren verwendet.

     Wenn der Tracer nicht angeschaltet ist, sind die WatchBypass-
     Funktionen nicht eingebunden und es geht keine Rechenzeit verloren.

     Wird SysMon beendet, so k”nnen die zus„tzlich angelegten Bypasse
     nicht ohne weiteres entfernt werden.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     SYSTABLE

     Der SysTable ist ein eigenst„ndiger Programmteil von SysMon. Er
     befindet sich ganz vorne im SysMon Programm und besteht aus dem
     Bypass- und dem Function-Table und einigen Funktionen, die zur
     Verwaltung des Function-Table geh”ren.

     Die Notwendigkeit eines eigenst„ndigen Programmteils innerhalb des
     SysMon-Programms l„st sich am einfachsten Zeigen, indem man die
     Nachteile aufzeigt, die ein 'ungeteilter' SysMon mit sich bringen
     wrde.

     Wrde SysMon bei der Quit-Option komplett aus dem Speicher entfernt
     werden, erg„ben sich folgende Probleme:

     - Sind Bypasse angelegt worden, so werden diese weiterhin von den
       anderen Programmen angesprungen.
     - Wenn Funktionen im Function-Table eingetragen sind, so kehren diese
       erst noch zum SysMon zurck, wo sie an die richtige Rcksprung-
       adresse weitergeleitet werden mssen.

     Es w„re also fatal den dafr notwendigen Programmcode aus dem
     Speicher zu entfernen!

     Der nur 4 KB grože SysTable Programmteil bernimmt genau diese beiden
     Aufgaben. Er entfernt sich sogar selber aus dem Speicher, wenn er
     nicht mehr ben”tigt wird. Dies ist der Fall, wenn keine Bypasse an-
     gelegt wurden und die letzte im Function-Table vorhandene Funktion
     zurckgekehrt ist. Um auf die Freigabe hinzuweisen, wird ein
     akustisches Signal erzeugt.

     Bei der Quit-Option wird angezeigt, ob der SysTable im Speicher
     verbleiben muž, oder ob SysMon komplett entfernt werden konnte.

     Findet SysMon beim erneuten Start einen SysTable im Speicher, wird
     dieser vollst„ndig benutzt. Alle Aktionen im Zusammenhang mit den
     Traps, dem Umlenken der Funktionen und das Beenden von SysMon werden
     ber den alten SysTable abgewickelt. Auf diese Weise braucht bei
     wiederholtem SysMon-Start keine neuer Bypass- oder Function-Table
     angelegt werden. SysMon kann dann immer komplett aus dem Speicher
     entfernt werden.

     Die Bypass-Tabelle wird nicht von SysTable berwacht, da diese šber-
     wachung zu aufwendig w„re und den Programmcode des SysTable unn”tig
     vergr”žern wrde. SysMon untersucht einen beim Starten vorgefundenen
     Bypass-Table und gibt die nicht mehr ben”tigten Bypasse wieder frei.

     Das UsedTraps-Fenster, das Angaben ber den Zustand des Bypass- und
     des Functions-Table ausgibt, zeigt genau genommen nicht den SysMon-
     sondern den SysTable-Zustand an.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     AUTOPATCH SEQUENCE

     Ein paar der Angaben des SysMon sind von undokumentierten System-
     variablen abh„ngig. Dazu z„hlt zB die Speicherliste und das Scannen
     nach schon geladenen Programmen beim Programmstart. SysMon l„uft
     auch, wenn keine dieser Systemvariablen gefunden wurde.

     Fr die bisherigen Tos-Versionen sind deren Adressen schon in SysMon
     enthalten. Fr das MagiX-Betriebssystem wurde eine generelle
     Anpassung vorgenommen, die unabh„ngig von der eigentlichen Versions-
     nummer sein sollte.

     Wird SysMon auf einem Rechner mit unbekanntem Tos gestartet, so
     stellt SysMon dies fest und versucht nun die Adressen der folgenden
     Systemvariablen auf analytische Weise herauszufinden:

       Element | Erl„uterung                               SYSTEMVARIABLEN
       --------+----------------------------------------------------------
       ActPD   | Der Zeiger auf den aktuellen Prozež.
       MBP     | Die Basisadresse der Speicherlisten.
       AesBase | Die Basisadresse der ersten 3 Aes-Bl”cke.
       AesList | Die Zeigerliste auf die restlichen Aes-Bl”cke.
       VdiList | Der Zeiger auf die erste Vdi-Workstation.
       --------+----------------------------------------------------------

     Damit die Aes- und Vdi-Adressen sicher erkannt werden, mžen
     mindestens drei Accessories geladen sein. Aužerdem darf kein externer
     Vdi-Treiber (zB NVDI, GDOS...) benutzt werden.

     Nachdem SysMon die Adressen gefunden hat, werden diese direkt in das
     SYS_MON.PRG gepatcht, so daž die Installation des neuen Tos nur
     einmal geschehen muž.

     SysMon bietet vor der Suche noch eine Liste der Tos-Versionen mit
     demselben Datum und Versionsnummer, aber zT unterschiedlichen L„nder-
     kennungen an. Diese sollten zuerst ausprobiert werden, aber die
     Einstellung noch nicht in SysMon gespeichert werden (d.h. nicht
     patchen lassen!).

     Testen Sie einmal das Memory-Fenster und berprfen Sie, ob beim
     Starten alle Accessories korrekt erkannt wurden. Ist dies nicht der
     Fall, booten Sie neu und versuchen Sie eine der anderen angebotenen
     Versionen.

     SysMon legt zus„tzlich eine AUTOPTCH.LOG Datei an, die die Daten des
     TOS enth„lt. Wenn Sie ein neues TOS korrekt installieren konnten,
     schicken Sie mir bitte die AUTOPTCH.LOG Datei per Email oder per
     Diskette ( falls Sie eh ein Update machen wollten ). Die TOS-Version
     kann dann in den SysMon bernommen werden und den anderen Benutzern
     dieser TOS-Version bleibt das Ausprobieren mittels der Autopatch-
     Sequence erspart.

     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     PATCHVARIABLEN

     Um SysMon an besondere Gegebenheiten und Wnsche anpassen zu k”nnen,
     besitzt SysMon eine Reihe von Patchvariablen, deren Wert mit einem
     Diskettenmonitor ver„ndert werden k”nnen.

     Am Anfang des SYS_MON.PRG Files findet sich der String 'SysMon_Var'.
     Dieser markiert den Beginn der Patchvariablen, die der folgenden
     Tabelle zu entnehmen sind:

       L„nge | Wert  | Art         |           | Bedeutung PATCH-VARIABLEN
       ------+-------+-------------+-----------+--------------------------
       Byte  | 98    | Scancode    | Help      | Aufruf von SysMon
       Byte  | 1     | Shiftstatus | re.Shift  | Aufruf von SysMon
       Byte  | 8     | Shiftstatus | Alternate | Abbruch der Installation
       Byte  | 4     | Shiftstatus | Control   | SYS_MON.INF nicht laden
       Byte  | 0     | Flag        | weiss     | Menfarbe
       Byte  | 1     | Flag        | schwarz   | Hintergrundefarbe
       Long  | 10000 |             |           | L„nge des File Puffers
       Long  | 0     |             |           | Offset Logbase
       Long  | 0     |             |           | Offset Physbase
       Word  | 50    | Anz. Zeilen |           | Gepufferte Tracerzeilen
       Byte  | 102   | Scancode    | Block *   | Fensterdump-Taste
       Byte  | 0     | Flag        |           | externe Tastatur
       Word  | 0     | Anz.Zeilen  |           | Maximale Tracerzeilen
       Byte  | 1     | Flag        |           | Sound bei Quit
       ------+-------+-------------+-----------+--------------------------

     Wird zum Beispiel fr den Abbruch Shiftstatus der Wert 0 gew„hlt, so
     Installiert sich SysMon nur, wenn beim Starten mindestens eine der
     Sondertasten gedrckt gehalten wurde.

     Die beiden Offsets sind bei „lteren OverScan-Versionen ( < 1.7 )
     einzutragen.

     Die anderen Patchvariablen werden jeweils im Zusammenhang bei den
     betroffenen Funktionen erl„utert oder sind selbsterkl„rend.


*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#

FEATURES

     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     UNTERSTUETZTE TOS VERSIONEN

     Der SysMon arbeitet mit allen bekannten Single-Tos Versionen. Bei
     Versionen, die nicht in der folgenden Tabelle aufgefhrt sind, muž
     SysMon erst die undokumentierten System-Variablen herausfinden. Siehe
     Abschnitt AUTOPATCH SEQUENCE.

       Art | Version  |  Datum   | Bemerkung           SINGLETOS VERSIONEN
       ----+----------+----------+----------------------------------------
       ROM |  4.02    | 26.01.93 | Falcon-Tos
       ROM |  4.01    | 21.10.92 | Falcon-Tos
       ROM |  3.06    | 24.09.91 | TT-Tos
       ROM |  3.05    | 05.12.90 |
       ROM |  3.01    | 29.08.90 |
       ROM |  3.01    | 09.08.90 |
       ROM |  3.00    | 23.05.89 |
       ROM |  2.06    | 14.11.91 | Mega-STe-Tos
       ROM |  2.05    | 05.12.90 |
       ROM |  1.62    | 11.01.90 |
       ROM |  1.6     | 29.07.89 | STe-Tos
       ROM |  1.4     | 06.04.89 |
       ROM |  1.4     | 06.04.89 | Kaos-Tos 1.42
       RAM |  1.4     | 06.04.89 | Kaos-Tos 1.41
       ROM |  1.4     | 22.02.89 |
       RAM |  1.4     | 06.04.89 | reloziertes Rom-Tos
       RAM |  1.4     | 18.05.88 | Beta-Tos
       RAM |  1.4     | 22.02.88 |
       ROM |  1.2     | 22.04.87 | Blitter-Tos
       RAM |  1.2     | 22.04.87 | Kaos-Tos
       ROM |  1.0     | 06.02.86 |
       RAM |  1.0     | 06.02.86 |
       RAM |  1.0     | 20.11.85 |
       RAM |  1.0     | 29.05.85 | Mushroom-Tos
       ----+----------+----------+----------------------------------------

     Das Multitasking-System MAGIX wird ab Version 2.0 untersttzt.

     Die TOS-Erweiterung MiNT und das neue MultiTOS wird bisher noch nicht
     untersttzt. Zwar werden die neuen Aufrufe schon erkannt und korrekt
     ausgegeben, aber die Speicher- und Prozežverwaltung von MiNT wird
     noch nicht untersttzt, so daž keinerlei Informationen ber geladene
     Programme und deren Speicherbereiche vorliegt. Ein Tracen einzelner
     Programme ist daher nicht m”glich. Auch gibt es noch Probleme mit
     der Memory-Protektion.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     UNTERSTUETZTE HARDWARE

     Der SysMon arbeitet auf allen Atari-St Rechnern und unter allen
     Standard-ST-Aufl”sungen.

     FARBBILDSCHIRMEN

     Bei SC1224 Farbbildschirmen arbeitet SysMon grunds„tzlich in der
     mittleren Aufl”sung; beim Wechseln der dargestellten Bildschirmseite
     wird die vorherige Aufl”sung wieder eingestellt.


     GROSSBILDSCHIRME

     Bei Grožbildschirmen wird zur Ausgabe der zus„tzlich angeschlossene
     SM124, SC1224 oder TTM195 benutzt.


     OVERSCAN ST

     Unter OverScan und AutoSwitch-OverScan wird die beim Starten von
     SysMon vorliegende Aufl”sung benutzt. Wird SysMon nach OverScan
     gestartet, so werden die zus„tzlichen Ausgabezeilen ausgenutzt.


     OVERSCAN TT

     Unter OverScanTT wird die beim Starten von SysMon vorliegende Auf-
     l”sung benutzt. Wird SysMon nach OverScanTT gestartet, so werden die
     zus„tzlichen Ausgabezeilen ausgenutzt.


     STE

     Beim STe gibt es neue Shifterregister, die es z.B. erlauben den Bild-
     schirm byteweise zu positionieren. Diese Register werden beim Um-
     schalten des aktuellen Bildschirms gesichert und beim Zurckschalten
     wieder hergestellt. Trotzdem kommt es bei einige STE-Ger„ten zu einem
     Versatz in der Darstellung.


     TT
     Auf dem TT wird bei Benutzung des VGA-Monitors oder bei Benutzung
     einer externen Graphikkarte unabh„ngig von der aktuellen Aufl”sung
     immer im ST-High Modus gearbeitet.

     Bei Verwendung des hochaufl”senden TTL-Monitors, wird die gr”žere
     Fl„che ausgenutzt. Da die, auf dem TT enorme, Scrollgeschwindigkeit
     bei 128 KB Bildschirmspeicher stark nachl„žt, kann bei den Patch-
     variablen eine maximale Zeilenzahl fr den Tracer festgelegt werden.
     Der Wert von 24 Zeilen bedeutet einen gr”žen Geschwindigkeitsgewinn,
     die Fenster des SysMon benutzen weiterhin die gr”žere Fl„che.


     FALCON

     Auf dem Falcon wird immer im ST-High Modus gearbeitet. Die Um-
     schaltung der neuen Videorigister auf diese definierte Aufl”sung
     funktioniert auch bei Verwendung von Graphikerweiterungen wie Screen-
     Blaster, BlowUp, HighVidelity etc. Untersttzt werden dabei der VGA-,
     SC1224-, SM124- und TV-Modus. Unter Umst„nden kann es zu einem
     Umklappen des Bildschirmrandes auf dem SysMon-Bildschirm kommen.


     68000 68030

     Fr die verschiedenen Prozessoren werden jeweils die Trap-Handler an-
     gepažt. Wenn SysMon auf dem TT oder Falcon l„uft, werden alle
     Vektoren als 32 bit-clean betrachtet, ansonsten werden nur die
     unteren 24 Bit eines Vektors beachtet.


     EXTERNE PC TASTATUREN

     SysMon benutzt keine Bios-Funktionen, um die RechtsShift-HELP Tasten-
     kombination festzustellen, sondern er installiert sich im Tastatur-
     Interrupt. Benutzt man nun eine externe PC-Tastatur, die keine Inter-
     rupts ausl”st (Man muž einen Treiber booten, damit die Tastatur
     l„uft), so kann SysMon nicht aufgerufen werden. Aus diesem Grunde
     kann man bei den Patch-Variablen ein Flag setzen, damit SysMon ber-
     prft, ob ALT-RechtsShift-HELP gedrckt wurde. Žndert man bei den
     Patch-Variablen den 'Aufruf-Scancode', so hat dies keinen Einfluž,
     „ndert man den 'Aufruf-Shiftcode', so muž man ALT-HELP plus den
     gew„hlten Shiftcode drcken, damit SysMon betreten wird.


     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
     BESONDERERE TRACER AUSGABEN


     AES MESSAGES

     Die benutzerdefinierten Messages von GEMINI, CLIPBRD, KOBOLD, TRACER,
     WATCHDOG, CAD-3D, DEGAS, CYBERSMASH, TDIMODULA, 1STADRESS, CHAMELEON,
     SECURITY, MANAGER und auch das XACC-, IDC- und SCRAP-Protokoll werden
     erkannt und mit Konstanten und Strukturen ausgegeben.

     Die Systemmessages von TOS, MTOS und MAGIX werden natrlich auch
     untersttzt.

     Bei unbekannte AES-Messages wird der Message-Buffer komplett aus-
     gegeben.


     AES WINDGET WINDSET

     Alle neuen TOS, MTOS, MAGIX und WINX Konstanten werden mit Konstanten
     ausgegeben.


     AES ERWEITERTEN AUSGABEN

     Zu den erweiterten Ausgaben z„hlt die Ausgabe des Objekttyps und des
     Strings eines Objektes bei den Objekt- und auch den Men-Funktionen.
     Aužerdem werden einige der neueren MTOS Strukturen ausgegeben, z.B.
     MENU und MN_SET.

     Die undokumentierte, aber in allen bisherigen Tos-Versionen vor-
     handene Funktion appl_yield (ausgegeben als $C9_yield ) z„hlt
     eigentlich nicht zu den Aes-Funktionen. Die Ausgabe dieser Funktionen
     kann durch die Funktion 'Unknown' in der Aes-Funktionsliste
     beeinflužt werden.

     Bei unbekannten Aes-Funktionen werden vor dem Trap die laut Control-
     Feld belegten Eintr„ge des Intin- und Adrin-Feldes und nach dem Trap
     die Intout- und Adrout-Feldes ausgeben.


     VDI

     Die erweiterten Vdi-Metafile Escapes und der Inhalt der MDFB-Struktur
     werden ausgegeben. SysMon zeigt auch die neuen Vdi-Funktionen des
     FSM-GDOS, SPEEDO-GDOS und die Bezier-Funktionen an. Die Funktionen
     vex_timer, vex_button, vex_mouse Funktionen drfen nicht stepweise
     getraced werden. Beim Steppen werden sie daher bersprungen.

     Die Funktionen vq_gdos und vq_driver sind eigentlich keine Vdi-
     Funktionen, weil sie eine andere Stack-Konvention fr den Aufruf
     benutzen. Die Ausgabe dieser Funktionen kann durch die Funktion
     'Unknown' in der Vdi-Funktionsliste beeinflužt werden.

     Bei unbekannten Vdi-Funktionen werden vor dem Trap die laut Control-
     Feld belegten Eintr„ge des Intin- und Ptsin-Feldes und nach dem Trap
     die Intout- und Ptsout-Feldes ausgeben.


     GEMDOS

     Alle Netzwerk-Funktionen werden erkannt und mit den richtigen
     Parametern ausgegeben. Als erweiterten Ausgaben k”nnen die DTA bei
     Fsfirst, Fsnext, die Filenamen bei allen Operationen mit Filehandles,
     die vorherige Blockgr”že bei Mfree und Mshrink und die Ausgabe der
     Strukturen DISKINFO, DOSINFO und DOSVARS angezeigt werden.

     Unter Color-OverScan ist es notwendig, bei den Funktionen Pterm0,
     Pterm oder Ptermres kurz auf den GEM Bildschirm umzuschalten, wenn
     gerade der SysMon Bildschirm dargestellt wurde.

     Bei unbekannten Gemdos-Funktionen werden vor dem Trap die sechs
     obersten Worte des Systemstacks und nach dem Trap der Rckgabewert
     ausgegeben.


     BIOS

     Die Funktionen Setexc und Ticcal drfen nicht stepweise getraced
     werden und werden deshalb beim Steppen bersprungen. Die BPB Struktur
     kann ber die erweiterten Ausgaben angezeigt werden.

     Bei unbekannten Bios-Funktionen werden vor dem Trap die sechs
     obersten Worte des Systemstacks und nach dem Trap der Rckgabewert
     ausgegeben.


     XBIOS

     Neben der Untersttzung der TT-Videofunktionen werden die neuen
     Funktionen des Falcon komplett mit Konstanten und Strukturen aus-
     gegeben. Bei den DSP-Funktionen kann ber die erweiterten Ausgaben
     der Kommunikations-Buffer ausgegeben werden. Bei den Falcon-Video-
     funktionen wird mit den im TOS vorgegebenen Konstanten fr die
     Bildschirmmodi gearbeitet.

     Die Funktionen des Metados-Treibers werden untersttzt.

     Die Funktion Floprate wird untersttzt, und auch die erweiterten
     XBIOS-Funktionen des OverScan ST werden erkannt. Die Strukturen
     PARAM, IOREC, KEYTABLE, KBDVECS und PBDEF k”nnen ber die erweiteten
     Ausgaben angezeigt werden.

     Wenn die Funktionen Physbase, Getrez, Setscreen aufgerufen werden und
     gerade der SysMon Bildschirm dargestellt wird, ist es notwendig kurz-
     zeitig auf den GEM Bildschirm umzuschalten.

     Bei unbekannten XBios-Funktionen werden vor dem Trap die sechs
     obersten Worte des Systemstacks und nach dem Trap der Rckgabewert
     ausgegeben.


     LINEA

     Alle zu der jeweiligen Funktion geh”rigen LineA Variablen werden aus-
     gegeben. Die Strukuren MFORM, SDB und BITBLT k”nnen ber die
     erweiteten Ausgaben angezeigt werden.


*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#

SHAREWARE HINWEIS

     Unter der Voraussetzung, daž die Dateien

       README.TXT, SYS_MON.PRG, SYS_MON.MAN, SYS_MON.GEN und SYSTEM.MAN

     unver„ndert und vollst„ndig bernommen werden, darf SysMon fr
     private Anwender frei kopiert und benutzt werden. Kommerzielle
     Nutzung in jeder Form (dies schliežt auch den Vertrieb ber Public-
     Domain-Sammeldisketten oder „hnliches ein) ist NICHT GESTATTET.

     Eine Verbreitung ber Mailbox-Systeme und FTP-Server ist ab Version
     1.0.9 wieder erlaubt, da SysMon ohne Registrierung nur eingeschr„nkt
     genutzt werden kann.

     Die neueste SysMon Version ist nur durch Zusendung einer DD-Diskette
     und eines frankierten und adressierten Rckumschlages an meine oben
     angegebene Adresse erh„ltlich.

     Die Entwicklung von SysMon hat bisher 4 Jahre in Anspruch genommen,
     aus diesem Grunde sehe ich mich nicht in der Lage, SysMon kostenlos
     (als PD oder Freeware) zu vertreiben.

     Da SysMon ein sehr komplexes Produkt ist, dessen Benutzung schon
     einiges an Wissen vorraussetzt, habe ich mich fr das Konzept der
     Shareware entschieden, wonach SysMon frei kopiert und ausprobiert
     werden darf, fr eine vollst„ndige Nutzung jedoch ein Shareware-
     Betrag von DM 50,- f„llig wird.

     Wird SysMon im professionellen Umfeld eingesetzt, so ist ein erh”hter
     Shareware-Betrag von 100 DM f„llig. Fr diese 100 DM erh„lt die/der
     jeweilige Firma/Softwareentwickler einen automatischen Update-Service
     fr die n„chsten 5 Versionen (nach gr”žeren Žnderungen) und eine
     Rechnung/Quittung, damit sie SysMon von der Steuer absetzen k”nnen.

     Meine Bankverbindung lautet :

       Karsten Isakovic
       Sparkasse der Stadt Berlin
       Kto: 0950128864
       Blz: 10050000

     Bitte senden Sie mir zus„tzlich eine kurze Mitteilung mit ihrer voll-
     st„ndigen Adresse, damit ich Ihnen den Schssel per Postkarte zu-
     schicken kann.

     Ich bernehme keine Haftung fr irgendwelche direkten oder indirekten
     Sch„den - einschliesslich und nicht beschr„nkt auf materielle oder
     finanzielle - die durch die Benutzung von SysMon oder die Untaug-
     lichkeit von SysMon fr einen bestimmten Zweck entstehen.

     Bei Fragen und Problemen bin ich ber folgende E-Mail-Adressen
     erreichbar:

       Internet       ki@cs.tu-berlin.de
       Subnet         ki@tubopal.UUCP
       Fido-Net       K.I. % MAUS B @ 2:242/2.6
       Maus-Net       Karsten Isakovic @ B
       Zerberus-Netz  Karsten_Isakovic % MAUS B @ ZERMAUS.ZER


     Berlin, 6 M„rz 1994

       Karsten Isakovic
