
   BOMBADIL - Modul zur Behebung einiger Calamus-Fehler
   -----------------------------------------------------------------------------

     >>> WICHTIG:
     >>>
     >>> Bitte lesen Sie auch die Dateien im Ordner INFO\MODULE\BOMBADIL!
     >>> Dort befinden sich:
     >>>
     >>> - BEDIEN.TXT     Bedienungsanleitung des Moduls
     >>> - FAQ.TXT        Fragen und Antworten zu BOMBADIL
     >>> - KONTAKT.TXT    Kontaktadresse des Programmautors
     >>> - NUTZUNG.TXT    Nutzungshinweise
     >>> - VERSION.TXT    bersicht aller bisher verffentlichten Versionen
     >>> - BOMBADIL.TXT   Ein wenig begleitende Lyrik :-)


   Wozu?
   -----
   In allen bekannten Versionen von Calamus S und SL steckt ein Fehler, der
   beim Transport von Objekten ber das Calamus-Clipboard die Datenstrukturen
   derselben beschdigen kann. Da erst eine ganze Reihe vom Umstnden
   zusammenkommen mu, damit dieser Bug zuschlgt, tritt er ziemlich
   selten auf, was ihn recht heimtckisch macht: Scheinbar ohne Zusammenhang
   lassen sich pltzlich Objekte nicht mehr ins Dokument bertragen.
   Aufgrund dieses nicht reproduzierbaren Verhaltens dauerte es nach der
   Verffentlichung von Calamus S/SL mehrere Jahre, bis dieser Fehler
   aufgedeckt und lokalisiert werden konnte.

   Schuld an diesem Fehlverhalten ist brigens nicht das Clipboard, sondern
   ein Teil der allgemeinen Dokumentstruktur-Verwaltung. Die zum Auslsen
   des Fehlers notwendigen Voraussetzungen konnten lange Zeit nur vom Clipboard
   eingebracht werden. Unerklrliche Effekte bei der Entwicklung des
   Texteditors "Eddie" brachten dann die Hintergrnde dieses Fehlers ans
   Licht. Es ist durchaus mglich, da noch andere Funktionen des Calamus-
   Systems davon betroffen sind.

   Der Fehler ist konzeptioneller Natur und leider nicht durch einen einfachen
   Patch zu beseitigen. Die Auswirkungen sind sehr komplex und ohne
   Erluterungen der technischen Zusammenhnge fast unmglich zu beschreiben.
   Nur soviel: Es gehen bestimmte Referenzen von Objekten in ihr Ursprungs-
   dokument verloren. Werden nderungen an Farb- oder Stilliste im Dokument
   vorgenommen, so erfolgt keine Aktualisierung der geclippten Objekte mehr.

   BOMBADIL ist jedenfalls als eine Art "Wchter" konzipiert: Das Modul
   "beobachtet" die Dokumentenstruktur und greift bei Fehlern ein, um diese
   zu korrigieren.


   Wozu noch?
   ----------
   Im Laufe der Zeit hat sich BOMBADIL zu einer regelrechten Sammlung von
   Bugfixes gemausert. Mittlerweile knnen zehn bekannte Fehler von
   Calamus und seinen Modulen umgangen bzw. deren Symptome beseitigt
   werden:

    Der Strukturfehler, der u.a. bei Clipboard-Operationen auftreten kann
     (Beschreibung siehe oben).

    Alle Versionen ab 1994 des Calamus Dokumentkonverters haben Probleme
     beim Laden mancher alter Dokumente, die mit Calamus 1.09 erzeugt
     wurden. Normalerweise wird fr diese Dokumente beim Laden eine Farb-
     sowie Farbebenenliste (fr die Schmuckfarben) erzeugt. Aus irgendeinem
     Grund lt der Konverter in einigen Fllen die Farbebenenliste weg.
     Ab Version 5 ist BOMBADIL in der Lage, diesen Zustand zu erkennen und
     zu beheben. Die Funktionalitt steckt im Clipboard-Bugfix und kann mit
     diesem zusammen ein- und ausgeschaltet werden.

    Mit Betriebssystemerweiterungen wie z.B. WinCom ist es mglich, Fenster
     auch ber den linken Bildschirmrand hinaus zu schieben. Leider reagiert
     Calamus auf solche Aktionen mit sprachloser Systemverwirrung: Das
     Fenster wird auf volle Gre aufgeblht und springt ber den Bildschirm.

     BOMBADIL sorgt dafr, da Fenster korrekt ber den linken Bildschirm-
     rand geschoben werden knnen.

     >>> In Calamus SL 96 wurde dieser Fehler behoben. <<<

    Manchmal gert die Stilliste eines Dokuments etwas durcheinander.
     Textrahmen lassen sich nicht mehr formatieren oder nderungen an Stilen
     haben keinerlei Auswirkungen mehr auf das Dokument. In solchen Fllen
     sollte die in BOMBADIL eingebaute Prffunktion auf den Text angewendet
     werden, die "verlorengegangene" Stile wieder richtig in die Stilliste
     einsortieren kann.

    Die vom Rastergenerator erzeugten Caches werden an das jeweilige
     Dokument gehngt und auch mit diesem abgespeichert. Unglcklicherweise
     enthlt der in der 1993er Calamus-Version eingebaute Mechanismus zum
     Lschen von Caches einen Fehler: Rastercaches werden NIE gelscht.
     Dadurch wchst ein Dokument im Laufe der Zeit durch immer mehr Raster-
     caches zu ungeahnten Gren an. Mit Hilfe von BOMBADIL kann man diese
     Caches wieder loswerden.

     In neueren Calamus-Versionen kann diese Funktion zum schnellen und
     bequemen Lschen der Rastercaches benutzt werden.

    Durch bestimmte Aktionen knnen im Dokument Farben mit einem ungltigen
     Format entstehen. Als Folge hiervon ist zum Beispiel der Zugang zum
     Farbformular nicht mehr mglich. Eine bekannte Ursache dieses Problems
     ist das Bridge-Modul: beim Konvertieren von Textrahmen mit unter-
     strichenem Text in Vektorrahmen entstehen regelmig defekte Objekt-
     farben. Dieser Bugfix ist in der Lage, solche Farben zu finden und zu
     reparieren.

    Unter MagiC bzw. MagiCMac kann es zum Absturz oder Systemhnger kommen,
     wenn das Task-Popup (das man beim Klick in die Menleiste erhlt)
     geffnet wird. Schuld daran ist die Tastencodeanzeige in der Kopfzeile
     von Calamus. Der Fehler lt sich auf folgende Art und Weise
     reproduzieren:

     - Klick in die Menleiste um das Popup zu ffnen
     - Mit der Maus in der Kopfzeile hin- und herfahren
     - Die Maus zurck in das Popup bewegen -> das System hngt sich auf
       oder strzt ab

     Mit dem entsprechenden Bugfix lt sich die Tastencodeanzeige abschalten,
     damit es nicht mehr zu diesem Effekt kommen kann.

     >>> In Calamus SL Versionen ab Mai 1997 wurde dieser Fehler behoben. <<<

    Wenn eine Reihe von Bedingungen erfllt ist, strzt Calamus bei der
     Ausgabe von Maskengruppen ab. Der Fehler tritt auf, wenn

     - es sich um invertierte Masken handelt
     - die Ausgabe gedreht erfolgt
     - in einer relativ hohen Auflsung ausgegeben wird

     Schlielich kommt noch ein weitgehend unberechenbares Zufallselement
     hinzu, da dieser Bug mit einer nicht initialisierten Programmvariable
     zusammenhngt. Je nachdem, was gerade an der entsprechenden Speicherstelle
     steht, kommt es zu einem Absturz (2 Bomben) oder nicht.

     >>> In Calamus SL Versionen ab Mai 1997 wurde dieser Fehler behoben. <<<

    Sehr sporadisch kommt es beim Belichten von Seiten mit groen RGB-
     oder CYMK-Bildern zu einem Absturz mit zwei Bomben und dem Zusatzcode
     "PICt, PICt, PICs, MOD SCOS". Je grer der vorhandene Arbeitsspeicher,
     die Bilddaten und die Ausgabeauflsung, desto wahrscheinlicher wird
     dieser Fehler. BOMBADIL ist in der Lage, den Defekt in der Bildausgabe
     zu finden und zu beheben.
     Dieser Bugfix arbeitet nur auf Calamus-Versionen ab 1994.

     >>> In Calamus SL Versionen ab Mai 1997 wurde dieser Fehler behoben. <<<

    Ebenfalls beim Belichten von groen Dokumenten (aber nicht nur dort) kann
     ein weiterer Fehler zuschlagen, der in der Speicherverwaltung steckt und
     zum Absturz des Systems fhrt. Bei knappem Speicherplatz (Druckvor-
     gnge in hoher Auflsung fhren praktisch immer zur Maximalauslastung
     des vorhandenen Arbeitsspeichers) bringt die Pack- und reorganisations-
     funktion der Speicherverwaltung unter spezifischen Umstnden einige
     Datenstrukturen durcheinander. Der Fehler trat nur sporadisch auf und
     war in der Tat auerordentlich schwierig zu reproduzieren - die
     unabdingbare Voraussetzung dafr, ihn finden und beheben zu knnen.
     Mehrere Tage lang haben Klaus Garms und ich damit verbracht, Test-
     belichtungen mit einer modifizierten Version des PostScript-
     Druckertreibers unter verschiedenen Calamus-Konfigurationen mit
     unterschiedlichen Dokumenten zu fahren, bis der Absturz erst sporadisch
     und schlielich kontrollierbar und beliebig oft auftrat. Erst
     bestimmte Aktionen (Dokument des Merge-Handbuchs laden, dann alle
     Bilder der Seiten 48 bis 64 mit dem Feindaten-Modul einlagern,
     Druckformular aufrufen und farbsepariert in 5000 dpi die Seiten 63
     und 64 rckwrtszhlend ausdrucken lassen...) schuf die kritische
     Konstellation an Speicherobjekten und -lcken, die zur Fehlfunktion
     beim Anfordern des Puffers fr die Ausgabe der zweiten zu druckenden
     Seite fhrte und in einen Busfehler (2 Bomben) mndete.

     (whrend ich diesen Text schreibe, luft gerade Queens "It's a kind
     of magic" von der gleichnamigen CD... nicht ganz unpassend ;-)

     >>> In Calamus SL Versionen ab August 1998 wurde dieser Fehler behoben. <<<



   Installation
   ------------
   Die Ordner auf dieser Diskette sind genauso gegliedert wie die Ihrer
   Calamus-Installation. Sie knnen also den gesamten Disketteninhalt
   mit Ausnahme dieser LIESMICH-Datei einfach zu Ihrem Calamus hinzukopieren;
   die Dateien sind bereits in die richtigen Ordner einsortiert.

   Unter Umstnden knnen einige Dateien bereits auf Ihrer Festplatte
   vorhanden sein. Kopieren Sie die neuen Versionen auf der Diskette
   einfach ber die vorhandenen.

   BOMBADIL wird wie jedes andere Modul im Modulformular von Calamus geladen:

    Starten Sie Calamus und laden Sie BOMBADIL.CXM im Formular
     "Externe Module".

    Wenn BOMBADIL beim Starten von Calamus automatisch geladen werden soll,
     dann whlen Sie bitte in der Menleiste unter "SONSTIGES" den Punkt
     "Einstellungen sichern..." an. Speichern Sie die Einstellungen der
     Gruppe "Module" wie gewohnt.

    Bitte beachten: Nicht alle Bugfixes sind per Voreinstellung auch gleich
     aktiviert! Insbesondere beim Update auf eine neue Version von BOMBADIL
     sind alle NEUEN Bugfixes erst einmal ausgeschaltet. Im Zweifelsfall
     in den entsprechenden Dialogboxen nachschauen.



   Credits
   -------
   Folgenden Personen mchte ich fr Bug-Reports (in Calamus), Bug-Reports
   (in BOMBADIL), Anregungen und Tips danken. Ich hoffe, die Liste ist
   einigermaen vollstndig geworden.

      Roland Behme
    Matthias Bracke
        Mark Coles
         Ulf Dunkel
       Klaus Garms
        Ulli Hahndorf
      Pierre Hansen
     Andreas Inckemann
      Werner Jrgensen
    Thorsten Liebold
     Hendrik Meinl
      Thomas Plasa
     Manfred Radijewski
   Christian Schwab
     Raimund Thiel

   (in alphabetischer Reihenfolge)

   Vielen Dank auch an alle, die mit der Entrichtung des Shareware-Beitrags
   zur Weiterentwicklung von BOMBADIL beigetragen haben.

   Last but not least: Special thanks an Michael Monscheuer, der durch Behebung
   der Fehler im Calamus-Rumpf daran arbeitet, BOMBADIL berflssig zu machen.



   Viel Erfolg mit BOMBADIL wnschen

      Harald Siegmund (Programmautor)
      Raimund Thiel (Textidee)
      Klaus Garms (Bugfix fr Speicherverwaltung)



   Calamus ist ein eingetragenes Warenzeichen der Firma MGI.

   -----------------------------------------------------------------------------
   Ein letztes Wort:

      "We apologise for the inconvenience"

   (Douglas Noel Adams, "So long and thanks for all the fish")
