home *** CD-ROM | disk | FTP | other *** search
/ Falcon 030 Power 2 / F030_POWER2.iso / ST_STE / MAGS / ICTARI03.ARJ / ictari.03 / MISC / CHMELEON / CHMELEON.TXT < prev   
Text File  |  1992-03-07  |  12KB  |  258 lines

  1.             The Chameleon  Vers. 1.19
  2.            ---------------------------
  3.                Karsten Isakovic
  4.               Wilmersdorferstr.82
  5.                D-1000 Berlin 12
  6.             Federal Republic of Germany
  7.  
  8.        published at Markt&Technik-Verlag,
  9.            all rights by the author
  10.  
  11. Everybody knows the following problems:
  12. ---------------------------------------
  13. - There are many, many useful DA, but one can't install them
  14.   all at the same time. To install a new DA, you have to
  15.   reboot the system. This is the reason, why the MultiDAs came
  16.   up. They allowed us to install more DAs than six and there are
  17.   some MonsterDAs that give you everything you ever could need
  18.   under just one menu entry. These solutions often need lots
  19.   of memory, which is a rare on normal STs.
  20. - If you programm DAs it is very bad that you have to reboot
  21.   for every test. This costs time and nerves.
  22.  
  23. Now there is a new solution to this problem:
  24. --------------------------------------------
  25.   The CHAMELEON is an extrem short DA - about 5 KB -, that
  26.   allows to load in every DA you need and - that's the advantage
  27.   of the Chameleon - can unload DA if you don't need it
  28.   any more. Not only the main memory is freed, the Chameleon
  29.   frees all resources the DA demanded from the system.
  30.  
  31. Usage
  32. -----
  33.   Copy the CHMELEON.ACC onto the boot disc and reboot. If you
  34.   choose 'The Chameleon' from the DA-menu a file selector
  35.   appears and you can select the DA, which is then loaded and
  36.   started.
  37.  
  38.   If you don't want to open the DA, hold down the left shift-
  39.   key, while selecting the name in the file selector by double-
  40.   clicking or while pressing the return key.
  41.  
  42.   After the DA is started, the Chameleon menu entry is replaced
  43.   by the menu entry of the DA. An arrow on the left side of the
  44.   entry shows that this DA was loaded with 'The Chameleon'.
  45.  
  46.   If the DA normally  uses 2 menu entries the menu text is split
  47.   in the middle. The right entry is selected if you hold down
  48.   one of the shift keys while selecting the menu entry. If the
  49.   DA normally uses 3 menu entries you can select the middle entry
  50.   with the left shift key and the right entry with the right
  51.   shift key.
  52.  
  53.   Now you can use the DA, as if it was loaded after a reboot.
  54.  
  55.   If you want to remove the DA, just hold down the shift and
  56.   alternate keys and select the menu entry. If the DA had
  57.   opened some windows, these are closed. All memory the DA
  58.   demanded is freed up and the normal 'The Chameleon' menu
  59.   entry appears in the DA menu.
  60.  
  61.   If you want to remove the DA and immediately load another DA,
  62.   hold down the right mouse button in addition to the shift and
  63.   alternate keys while selecting the menu entry. After the DA is
  64.   unloaded, the file selector comes up.
  65.  
  66. Installation for GEMINI users:
  67. ------------------------------
  68.   Test with 'env' in the MUPFEL, whether the SUFFIX contains
  69.   'acc'. If not insert it with 'setenv SUFFIX "$SUFFIX;acc" '.
  70.   The best way to do this is in the file MUPFEL.MUP.
  71.   Now you can select the CHMELEON.ACC and install it as default-
  72.   application for '*.AC?'.
  73.   The next step is to rename all other DAs to ACX, because with
  74.   the SUFFIX '*.ACC', GEMINI only tests whether the DA is already
  75.   loaded. If you double click onto a file with the SUFFIX '*.ACX',
  76.   'The Chameleon' gets a message from GEMINI. The Chameleon loads
  77.   the selected DA and opens it. If there was already a DA loaded,
  78.   this DA is removed first.
  79.  
  80.   If you put a 'The Chameleon' icon onto the desktop of GEMINI,
  81.   you can drag DA onto the icon to load them in. If you drag
  82.   a text file onto the icon, this GEMINI message is passed to
  83.   to loaded DA.
  84.   If the DA has also an icon on the desktop, you can load the
  85.   DA by dragging the DA icon onto the Chameleon icon.
  86.   If the DA receives GEMINI messages, it does not matter whether
  87.   you drag text files onto the icon of the DA or onto the
  88.   Chameleon icon.
  89.  
  90. Default-DA:
  91. -----------
  92.   Another speciality hides in the patch variables of Chameleon.
  93.   You can specify a default-DA that is loaded in at boot time.
  94.   So you can set up your normal configuration without losing
  95.   the flexibility 'The Chameleon' offers you.
  96.   The default is the ATARI control panel with the file name
  97.   CONTROL.ACX on the boot device. All preferences are set up
  98.   by the control panel. If you need another DA, just unload the
  99.   control panel and load the other DA.
  100.  
  101. Patch variables:
  102. ----------------
  103.   First: Make a copy of CHMELEON.ACC, before starting to
  104.   experiment! You can only change the patch variables with a
  105.   disc monitor.
  106.  
  107.   It is very likely that there are collisions with the shift codes
  108.   that Chameleon uses, so you can change the combination.
  109.  
  110.   Right before the string 'V1.19 ©K.Isakovic Berlin 09.10.90' you
  111.   find a '^', which is the delimiter between the patch variables.
  112.   It marks the longest possible space that you have to enter
  113.   path names, you should not overwrite it.
  114.   The first 2 bytes ($0A $02) in front of the ^ are the
  115.   shift combinations. The first bytes ($0A) are the combination
  116.   to remove a DA, the second ($02) is the combination that
  117.   tells Chameleon not to open up the DA, when you load it in.
  118.   If you set this value to $00, the DA is not opened up
  119.   automatically, only if you press a shift key.
  120.  
  121.   These values are the hexadecimal value of the sum out of the
  122.   following table:
  123.  
  124.      value | key
  125.      ------+--------
  126.        1   | right shift
  127.        2   | left  shift
  128.        4   | control
  129.        8   | alternate
  130.  
  131.   The bytes $0A stand for the value 10, which stands for left
  132.   shift - alternate.
  133.  
  134.   In front of these two shift combinations you find the name of
  135.   the default DA. If the first byte after the '^' is $00 (default),
  136.   no DA is loaded in. Enter the absolute pathname of the DA
  137.   (i.e.  A:\CONTROL.ACX,  the drive specification is necessary!).
  138.   If the drive 'A:\' is automatically replaced with the boot drive.
  139.   If there is another drive letter than 'A', no modification takes
  140.   place. Don't forget to end the name with a NULL ($00) !
  141.  
  142.   In front of this you find yet another field separated with
  143.   a '^'. In this field you can fill in the path that is used
  144.   if you first select a DA in the file selctor. This feature
  145.   is very good, if all the DAs reside in a sub-directory. The
  146.   drive letter is modified (or not) in the same manner as for the
  147.   default DA.
  148.  
  149.   The last patch variable is a byte value that tells the file
  150.   handle that Chameleon uses for output redirection. The value
  151.   $00 means no redirection at all. On the ST there is no NULL-
  152.   device that takes all input and does nothing, so Chameleon
  153.   redirects STDOUT to a file handle that is not opened. If the
  154.   DA writes to STDOUT, it only gets error-messages (and it
  155.   normally ignores them). The GEMDOS supports 75 open files, the
  156.   default redirect handle is handle 74 ($4A). Chameleon also tests
  157.   whether this handle is in use and only redirects the STDOUT
  158.   output if not.
  159.  
  160. Some details:
  161. -------------
  162.   'The Chameleon' is TOS independent, it uses no illegal system-
  163.   variables. It hooks into the GEM- and GEMDOS-vector with the
  164.   XBRA-ID 'Cham'. The trap handler supports all from 68000 up
  165.   to 68030.
  166.  
  167.   If you choose the menu entry, a file selector appears and you
  168.   can select a DA. This DA is now loaded and started. In the
  169.   vectors, Chameleon protocols every demand of system resources:
  170.   Windows, VDI-workstations, resource files, memory blocks and
  171.   also the loading of GDOS-fonts, hiding of the mouse...
  172.   With this information 'The Chameleon' can restore the original
  173.   state.
  174.  
  175.   If the user want's to unload the DA, all system vectors are
  176.   tested, whether they point into one of the memory blocks of
  177.   the DA. Chameleon follows XBRA chain.
  178.   If the DA hooked into the system, Chameleon can't remove it.
  179.   You get an alert with a warning. If the DA uses the XBRA
  180.   convention to hook into the traps, 'The Chameleon' can unhook
  181.   it from the vectors.
  182.  
  183.   If a GEMINI-message arrives with the string '$KILL', the DA is
  184.   unloaded.
  185.  
  186.   If you change the resolution, a loaded DA is unloaded and the
  187.   chameleon trap handlers unhook from the system. This is only
  188.   possible if the XBRA-convention is used. If chameleon can't
  189.   unhook, the system bombs. This is because all DAs are removed
  190.   but the now no-longer-existing trap handler is called.
  191.  
  192.   Some DAs write a text message to the screen. If you load in
  193.   such a DA from the desktop, this would overwrite the menu bar.
  194.   This is the reason why 'The Chameleon' redirects these
  195.   output to an unopened file.
  196.  
  197. Known problems:
  198. ---------------
  199. - You can limit the memory segmentation if you free the DA on
  200.   the desktop. If you now select a text file and show it up, the
  201.   desktop reorganises its memory.
  202. - If you load in reset resident ram disks, these ram disks modify
  203.   the MEMTOP-variable which is not restored by Chameleon. If you
  204.   load the DA again, the ram disk data has not changed.
  205. - If the DA doesn't use a menu entry, 'The Chameleon' writes
  206.   the file name with two arrows into the menu entry.
  207.  
  208. A little hint:
  209. --------------
  210.   If you install two Chameleons, you only need 11 KB memory, but
  211.   you always can load the DAs that you need.
  212.  
  213. History
  214. -------
  215. The Chameleon had a very long testing phase. It could load DAs
  216. since the version 0.00. Up to the version 0.37, many improvements
  217. were made. The publishing date came nearer and nearer, so I named
  218. the next version 1.00. Some testers were already happy with the
  219. version 0.11, after 0.28 no tester had any problems. The next
  220. versions (0.28--0.37, 1.00-1.19) only small changes were made.
  221. Since the version 1.07 the chameleon can load a default DA,
  222. 1.12 was the first version that could free DAs that use no
  223. menu entry. Since 1.13 the STDOUT redirection is implemented.
  224.  
  225. Near future:
  226. ------------
  227. I am already testing a 2.00 version, that offers code-sharing.
  228. Only the first Chameleon needs 6 KB. You also have 'little'
  229. Chameleons with 450 bytes, that use the code of the 'big' one.
  230. Redirection is done with another trick and there are other
  231. improvements. I will release the version 2.00 at XMAS 1990.
  232.  
  233. ******************************************************************
  234. *                                                                *
  235. *  Only if the files                                             *
  236. *                                                                *
  237. *    CHMELEON.ACC and CHMELEON.TXT                               *
  238. *                                                                *
  239. * are not modified, private users are allowed to copy and use    *
  240. * 'The Chameleon' for free.                                      *
  241. *                                                                *
  242. * All rights (copyright,distribution...) for 'The Chameleon'     *
  243. * remain at the author (K.Isakovic).                             *
  244. * A commercial use in any form (also includes the distribution   *
  245. * on public-domain discs or simular) is NOT ALLOWED.             *
  246. *                                                                *
  247. * You get the latest version from the author or in the german    *
  248. * MAUS mailbox net.                                              *
  249. *                                                                *
  250. ******************************************************************
  251.  
  252. I know that my English is not good, but I hope that you understood,
  253. what I meant. A 'bad' manual is better than 'no' manual.
  254.  
  255. Yours
  256.  
  257.    Karsten Isakovic,          11.12.1990 very late at night
  258.