  1.00  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Startschu ! Die Erste Version, die alles kann und Module auch konfiguriert.
(12 Module)

  1.01  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Kleine nderungen wie z.B. die Anwhlbarkeit der Cross-Buttons ber den Text.
(22 Module)

  1.02  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Alle 25 Module sind da ! Einige Module liefen nicht unter MultiTOS, das ist
nun auch behoben.
(25 Module)

  1.03  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
MIDI heit das Zauberwort. 'midnight' interpretierte wegen einer seltsamen
Abarbeitungsweise des TOS ein einkommendes MIDI-Zeichen als Tastendruck
(??!?). Deshalb kam es nie zum Schonen, wenn z.B. ein MIDI-Netz installiert
war. Das ist nun passe und ein weiterer berwachungsknopf ist dazugekommen:
die MIDI-berwachung !
(28 Module)

  1.04  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Da etliche Programme whrend sie lange Berechnungen machen eine Statusanzeige
zur "Benutzerberuhigung" verwenden und diese Anzeige jeweils mit BEG_UPDATE/
END_UPDATE klammern, knnen diese Programme auch im 'Timesharing'-Mode nicht
auf den Bildschirm ausgeben whrend 'midnight' schont. Deshalb ist der Button
'Timesharing' einem Popup 'Kompatibel:' mit den Eintrgen
       Systemstop       <- Nur 'midnight' luft. Andere Prozesse stehen.
       Timesharing      <- Durch 'evnt_timer'-Aufrufe drfen auch Andere.
       Screenshare      <- Screenausgaben hinter dem Fenster werden ermglicht.
gewichen.
Da bei 'Screenshare' nun auch ein Fenster aufgehen knnte, whrend
'midnight' schont, kann das Schonerbild schon mal beschrieben werden, obwohl
noch geschont wird. Aber z.B. MetaFont-Berechnungen fr TeX drften nun auch
whrend des Schonens weiterlaufen (diverse 'Whlprobleme' von
Terminalprogrammen knnten auch weg sein).

Auerdem wird das CLIPBRD jetzt korrekt angelegt, wenn es noch nicht
existierte. ^C beim Schonen fhrt jetzt also nicht mehr zu Bomben.

  1.1  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
'midnight' hat Zuwachs bekommen. Er heit MID_AUTO.PRG, ist ein
AUTO-Ordner-Programm und sorgt fr noch mehr Kompatibilitt. Nun luft z.B.
auch "Tempus" wieder !
Das Programm legt auf allen TOSsen einen XSSI-Cookie an (eXtendes Screen Saver
Interface) und verbiegt alle ntigen Vektoren. Das XSSI geht auf einen
Vorschlag von Julian Reschke zurck und ist volgendermaen aufgebaut:

Der Bildschirmschoner richtet den XSSI-Cookie (e_X_tenden _S_creen_S_aver
_I_nterface) ein. Mit diesem Cookie signalisiert der Bildschirmschoner
den laufenden Prozessen, dass gerade geschont wird. Hierauf koennen die
anderen Prozesse ihre Bildschirmausgaben z.B. anhalten, und erst dann,
wenn die gerade ablaufende Aktion beendet ist, dem Schoner z.B. mitteilen,
dass das Schonen beendet werden soll.

Der Inhalt des Cookies mit der ID 'XSSI' ist ein Zeiger auf die folgende
Struktur:

typedef struct {
   LONG  id;               /* Analog zum Vorgehen beim XBRA-Verfahren
                              die ID des Bildschirmschoners               */
   WORD  version;          /* Version des XSSI-Protokolls -
                              zunaechst 0x100                             */
   WORD  save_stat;        /* Mitteilung, ob gerade geschont wird. 0=nein */
   WORD  prg_stat;         /* Status des Programms:
                              0= normal schonen,
                              1= niemals schonen bzw sofort aufhren,
                             -1= sofort schonen.                          */
} INFOXSSI;

In _id_ sollte jeder Bildschirmschoner eine Kennung eintragen, die wie eine XBRA-Kennung aus druckbaren Zeichen
bestehen soll. Am sinnvollsten ist es, die XBRA-Kennung des Schoners zu
verwenden - 'midnight' setzt hier 'midn' ein.

_version_ kennzeichnet die Version des XSSI-Protokolls. Dieser Eintrag ist
erst ab einer Erweiterung der Struktur von Bedeutung. Hier steht vorerst
$0100, also Version 1.00.

_save_stat gibt an, ob der Bildschirmschoner gerade schont, und die aktiven
Prozesse daher - wenn moeglich - Grafikausgeban verhindern sollen. Steht in
'save_stat "0", wird nicht geschont, steht hier ein negativer Wert, wird
gerade geschont.

Mit _prg_stat_ kann ein Programm dem Schoner Mitteilungen schicken:

 prg_stat = 0   Der Schoner soll ganz normal aktiv sein.
 prg_stat = 1   Der Schoner soll auf keinen Fall schonen bzw er soll sofort
                mit dem momentanen 'Schongang' aufhren.
 prg_stat = -1  Der Schoner soll sofort aktiv werden (z.B. weil das
                Programm weiss, dass es eine laengere Pause machen wird
                - Bsp.: eine Textverarbeitung beim Drucken).


  1.11  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Wie das Leben so spielt: Wenn die .INF-Datei fehlte, wurde trotz vorhandenem
.RSC der spartanische Alert zur Zeiteinstellung aufgerufen. Und bei diesem
konnte man ber 000 hinaus eine (etwas seltsame) Zeit anwhlen. Diese negative
Zeit bewirkte dann, da im richtigen Dialog garkeine Zeit mehr einstellbar
war...
Auerdem Bombte es auf Cash-Rechnern (STE's o..), wenn ein Modul
ge'Doppelklick'ed wurde, das ein Edit-Feld hatte (wie z.B.KUGEL, MESSAGE,
STELL).
Auerdem installiert sich 'midnight' nicht mehr, wenn das 'MID_AUTO.PRG' nicht
im AUTO-Ordner mitgebootet wurde und gibt eine Meldung aus.


  1.12  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Groes SORRY ! 'midnight' luft nun mit Mag!X (R), dem MultiTasking-Betriebs-
system von BELA. Ein ganz blder und winziger Speicherfehler unsererseits
hatte riesige Folgen... Jetzt geht's aber !

