The Chameleon Vers. 1.19 --------------------------- Karsten Isakovic geb. Gerlach Wilmersdorferstr 82 1000 Berlin 12 Ver”ffentlicht im Markt&Technik-Verlag, alle Rechte liegen beim Autor Jeder kennt folgene Probleme: ----------------------------- - Es gibt viele ACCs, die man gerne benutzen m”chte, nur kann man leider nicht alle gleichzeitig laden. Um ein neues ACC zu in- stallieren ist sogar ein Neubooten notwendig. Aus diesem Grunde gibt es MultiAcc's, die es erlauben mehrere ACCs nachzuladen oder gar riesige MonsterACCs, die Alles was man je gebrauchen k”nnte unter einem einzigen Menpunkt anbieten. Diese L”sungen kosten aber immer sehr viel Speicherplatz, der bei den meisten ATARI-ST Benutzern eher Mangelware sein drfte. - Das Programmieren von ACCs ist eine sehr l„stige Angelegenheit, da man fr jeden Test erst einmal neu booten muž. Dies kostet den Programmierer sehr viel Zeit und Nerven. Fr diese Probleme gibt es nun eine neue L”sung: ------------------------------------------------ Das CHAMELEON ist ein extrem kurzes ACC - knapp 5KB -, welches in der Lage ist, jedes beliebige ACC nachzuladen und - dies ist der Clou am Chameleon - auch wieder freigeben kann. Dabei wird nicht nur der Hauptspeicher des ACCs entfernt, sondern alle Resourcen, die das ACC vom Rechner angefordert hat. Bedienung --------- Kopieren Sie einfach das CHMELEON.ACC auf die Bootdiskette und booten Sie neu. Wenn Sie nun den 'The Chameleon'-Meneintrag ausw„hlen, erscheint eine FileSelectorBox, in der Sie das nach- zuladende ACC ausw„hlen k”nnen. Wenn Sie nicht m”chten, daž das ACC gleich ge”ffnet wird, so k”nnen Sie beim Anw„hlen des Filenamens in der FileSelectorBox durch Return oder einen Doppelklick die linke Shifttaste ge- drckt halten. Nachdem das ACC gestartet ist, erscheint dessen Eintrag anstatt des Chameleon-Meneintrags. Der Pfeil am Anfang des Mentextes zeigt an, daž dieses ACC von Chameleon nachgeladen wurde. Sollte das ACC normalerweise 2 Meneintr„ge belegen, so wird der Mentext in der Mitte gesplittet. Wenn Sie nun zus„tzlich zum Mausklick eine Shifttaste gedrckt halten, wird der rechte Eintrag ausgew„hlt. Belegt das ACC normalerweise 3 Eintr„ge, so k”nnen Sie den mittleren Eintrag mit der linken Shifttaste und den rechten Eintrag mit der rechten Shifttaste ausw„hlen. Sie k”nnen nun ganz normal mit dem ACC arbeiten, als h„tten Sie es schon seit dem Booten geladen. M”chten Sie das ACC wieder entfernen, so w„hlen Sie einfach den Mentitel an und halten dabei die Shift-Alternate Tasten ge- drckt. Sollte das ACC noch Fenster ge”ffnet haben, so werden diese automatisch geschlossen. Aller vom ACC belegter Speicher wird freigegeben und es erscheint wieder der 'The Chameleon' Meneintrag. Wenn Sie das ACC nicht nur entfernen, sondern gleich ein neues ACC laden wollen, so halten Sie w„hrend des Klicks in die Men- leiste zus„tzlich zu den Shift-Alternate tasten noch die rechte Maustaste gedrckt. Nach dem Entfernen des ACCs erscheint so automatisch die FileSelctorBox. Installation fr GEMINI-Benutzer: --------------------------------- šberprfen Sie in der Mupfel mit 'env', ob im SUFFIX auch 'acc' vorkommt. Wenn nein, fgen Sie den Suffix 'acc' mit dem Befehl 'setenv SUFFIX "$SUFFIX;acc" ' hinzu. Am Besten ist es, wenn Sie in dem File MUPFEL.MUP die Zeile mit dem SUFFIX um 'acc' erweitern. Nun k”nnen Sie CHMELEON.ACC anw„hlen und als Defaultanwendung fr '*.AC?' anmelden. Als n„chstes sollten Sie die zu ladenden ACCs in ACX umbennen, da GEMINI bei dem SUFFIX '*.ACC' nur testet, ob das ACC schon geladen ist. Bei einem Doppelklick auf ein File mit dem SUFFIX '*.ACX' wird hingegen eine Mitteilung an 'The Chameleon' ver- schickt, welches daraufhin das angeklickte File nachl„dt und ”ffnet. War vorher ein anderes ACC durch Chameleon geladen, so wird dieses vorher entfernt. Wenn Sie 'The Chameleon' auf dem Desktop von GEMINI als Icon installieren, k”nnen Sie ACCs auch laden, indem Sie sie auf das Chameleon Icon ziehen. Verschieben Sie hingegen ein Textfile auf das 'The Chameleon'-Icon, so wird die GEMINI-Message an das nachgeladene ACC durchgereicht. Ist das nachzuladende ACC auch als Icon auf dem Desktop instal- liert, so k”nnen sie auch dessen Icon auf das Chameleon-Icon ziehen. Nimmt das ACC GEMINI-Messages entgegen, so ist es egal, ob Sie Files auf das Chameleon-Icon oder auf das ACC-Icon ziehen. Default-ACC: ------------ Bei den Patchvariablen versteckt sich eine weitere Besonderheit von 'The Chameleon'. Es ist in der Lage, ein Default-ACC beim Booten zu laden. Somit k”nnen Sie Ihre Lieblingskonfiguration von ACCs vorgeben, ohne auf die neue Flexibilit„t verzichten zu mssen. Als Default ist das ATARI-Kontrollfeld als CONTROL.ACX einge- tragen, es werden beim Booten wie gewohnt alle Voreinstellungen vorgenommen. Ben”tigen Sie nun ein anderes ACC, entfernen Sie einfach das Kontrollfeld und laden Sie das andere ACC. Patchvariablen: --------------- Es ist gnstig, wenn Sie erst eine Kopie des CHMELEON.ACC an- fertigen und mit dieser experimentieren. Alle Eingaben in den Patchbereich mssen Sie mit einem Diskmonitor vornehmen. Da es warscheinlich immer Kollisionen bei der Festlegung von Tastencodes gibt, k”nnen Sie die Shiftkombinationen von 'The Chamelon' „ndern. Vor dem String 'V1.19 ½K.Isakovic Berlin 09.10.90' finden Sie ein '^', welches das Trennzeichen zwischen den Patchbereichen ist. Bei Pfadangaben markiert es so den l„ngst m”glichen Eintrag, da es nicht berschrieben werden darf. Die ersten zwei Bytes ($0A $02) vor dem ^ bestimmen die Shift- Kombinationen. Das erste Byte ($0A) bestimmt die Kombination zum Entfernen eines ACCs, das zweite Bytes ($02) bestimmt die Kombination die beim Nachladen des ACCs gedrckt werden kann, damit dieses nicht gleich ge”ffnet wird. Tr„gt man hier den Wert $00 ein, so wird ein ACC nicht automatisch ge”ffnet, sondern nur, wenn eine Shifttaste gedrckt wird. Die Werte sind jeweils der hexadezimale Wert der Summe aus der folgenden Tabelle: Wert | Taste ------+-------- 1 | rechts Shift 2 | links Shift 4 | Control 8 | Alternate Das Byte $0A entspricht dem Wert 10, was wiederrum Linksshift- Alternate entspricht. Vor diesen beiden Shiftkombinationen befindet sich der Name des ACCs, welches beim Booten automatisch nachgeladen wird. Ist das erste Byte nach dem '^' gleich $00 (Default), so wird kein ACC nachgeladen. Tragen Sie hier den absoluten Pfadnamen des ACCs ein (z.B. A:\CONTROL.ACX, die Laufwerksangabe ist wichtig!). Die Laufwerksangabe 'A:\' wird beim Booten durch das Boot- Laufwerk ersetzt. Ist ein hier anderer Buchstabe als 'A' einge- tragen, so wird der Wert nicht ver„ndert. Vergessen Sie bitte nicht das NULL-Byte ($00) am Ende des Namens. Vor dieser Angabe kann man in einem weiteren durch ^ getrennten Feld den Pfad bestimmen, der beim ersten ™ffnen der FileSelect- Box benutzt wird. Dies ist praktisch, wenn Sie ihre ACCs in ein Unter-Direktory verbannt haben. Fr die Laufwerksangabe gilt dasselbe wie bei der vorherigen Patchvariablen. Die letzte Patchvariable ist ein Byte-Wert, der den neuen Aus- gabe-Kanal angibt, der bei der Ausgabenumlenkung benutzt werden soll. Ist der Wert $00 eingetragen, findet keine Umlenkung statt. Da es bei ST leider kein NULL-Device gibt, daž alle Aus- gaben einfach schluckt, ist die Nummer eines Files einge- tragen, daž warscheinlich nicht ge”ffnet ist: Das Gemdos ver- waltet maximal 75 offene Dateien, die Umleitung findet auf das letzte Handle mit der Nummer $4A (74) statt. Vor dem Umlenken wird berprft, ob dieses Handle doch schon ge”ffnet ist. Falls ja, findet keine Umleitung der Ausgaben statt. Ein paar Details: ----------------- Das Chameleon ist TOS-unabh„nig, da es keine illegalen System- variablen benutzt. Es h„ngt sich in den GEM- und GEMDOS-Trap mit der XBRA-Kennung 'Cham' ein, die Traphandler sind so ge- schrieben, daž sie auch mit einem 68010 bis 68030 laufen. Wird der Meneintrag ausgew„hlt, erscheint eine FSelBox, in der man das nachzuladende ACC bestimmt. Das ACC wird nun geladen und direkt gestartet. In den Traps protokolliert das Chameleon alle Anforderungen von Systemresourcen des nachgeladenen ACCs mit: Dazu z„hlen Fenster, VDI-Workstations, Resourcen und Speicherbl”cke. Auch das Nachladen von GDOS-Fonts, (un)sichtbar machen des Mauszeiger usw... wird protokolliert, damit 'The Chameleon' den Orginalzustand wieder herstellen kann. Wenn der Benutzer das ACC wieder entfernen m”chte, so werden vorher alle Systemvektoren berprft, ob sie in einen der Speicherbereiche des ACC zeigen. Dabei findet eine Verfolgung von XBRA-Ketten statt. Sollte sich das ACC in das System eingeklinkt haben, so kann es nicht entfernt werden und es erscheint eine Warnmeldung. Wird allerdings zum Einh„ngen in die Vektoren das XBRA-Verfahren be- nutzt, so kann das ACC trotzdem entfernt werden. Wird in einer GEMINI-Message der String '$KILL' verschickt, so wird ein nachgeladenes ACC entfernt. Bei einem Aufl”sungswechsel wird ein nachgeladenes ACC entfernt und die eigenen Traphandler werden ausgeklinkt. Dies ist nur m”glich, wenn das XBRA-Protokoll benutzt wird. Konnte das Chameleon nicht ausgeh„ngt werden, so h„ngt sich der Rechner auf, da bei einem Aufl”sungswechsel alle ACCs entfernt, der nun nicht mehr existierende Traphandler aber weiterhin angespr- ungen wird. Manche ACCs geben beim Starten eine Text-Meldung auf dem Bild- schirm aus. Wenn Sie ein solches ACC im Desktop nachladen, wrde es die Menzeile berschreiben. 'The Chameleon' lenkt diese Ausgaben in ein nicht ge”ffnetes File um. Bekannte Probleme: ------------------ - Der Speichersegmentierung k”nnen Sie wirksam begegnen, indem Sie die ACCs auf dem Desktop wieder freigeben. Wenn Sie nun ein Textfile zum Ansehen anw„hlen und kurz ansehen, so organisiert der Desktop seinen Speicher neu. - Beim Nachladen von resetfesten RamDisks kann es Probleme geben, da diese auch die MEMTOP-Variable ver„ndern, die von Chameleon nicht wieder restauriert wird. Bei erneutem Start wird die Ram- Disk ihre Daten unver„ndert vorfinden. - Wenn ein ACC keinen Mentitel anmeldet, tr„gt 'The Chameleon' zumindest den File-Namen in der Menleiste ein. Als Kennzeichen werden nun 2 Pfeile vor den Namen gesetzt. Ein kleiner Tip: ---------------- Wenn Sie zwei Chameleon's installieren, kostet Sie dies nur ~11 KB Hauptspeicher. Auf diese Art und Weise haben Sie immer die ACCs, die Sie gerade ben”tigen. Geschichte ---------- The Chameleon hat eine sehr lange und ausgiebige Testphase hinter sich. ACCs nachladen konnte es schon ab der Version 0.00, es folgten dann viele Erweiterungen bis zur Version 0.37. Da der Ver”ffentlichungstermin immer n„her rckte, wurde als n„chste Version die 1.00 gew„hlt. Einige Tester waren schon ab Version 0.11 restlos zufrieden, ab der 0.28 gab es keine Klagen mehr. In den restlichen Versionen (0.28--0.37, 1.00--1.19) wurden nur noch kleine Ver„nderungen vorgenommen. Ab der Version 1.07 kann das Cham„leon beim Booten ein Default- ACC nachladen. Ab 1.12 k”nnen auch ACCs freigegeben werden, die keinen Meneintrag belegen, ab 1.13 wurde die Standardausgabe umgelenkt. ****************************************************************** * * * Unter der Voraussetzung, daž die Dateien * * * * CHMELEON.ACC und CHMELEON.TXT * * * * unver„ndert kopiert werden, darf 'The Chameleon' fr private * * Anwender frei kopiert und benutzt werden. * * * * Alle Rechte (Copyright,Vertrieb...) fr 'The Chameleon' liegen * * beim Autor (K.Isakovic). Das Erstver”ffentlichungsrecht liegt * * beim Markt&Technik Verlag. Diesem ist auch Vertrieb auf einer * * Monatsdiskette gestattet. (Nicht aber auf der Jahres- oder * * Sonder-Disk!) * * Eine kommerzielle Nutzung in jeder Form (dies schliežt auch * * den Vertrieb ber Public-Domain-Sammeldisketten oder „hn- * * liches ein) ist NICHT GESTATTET. * * * * Die neuste Version kann man direkt beim Autor oder in den MAUS * * Mailboxen beziehen. * * * ****************************************************************** Mit freundlichen Gržen Karsten Isakovic