home *** CD-ROM | disk | FTP | other *** search
/ Frozen Fish 1: Amiga / FrozenFish-Apr94.iso / bbs / alib / d5xx / d501 / autocli.lha / AutoCLI / AutoCLI.Doc < prev    next >
Text File  |  1991-06-27  |  19KB  |  398 lines

  1.             AutoCLI V1.99d 2nd June 1991 by Nic Wilson
  2.             ------------------------------------------
  3.         This program is now fully tested an all Amiga models including
  4.         the A3000.  Fully testing is also done with 'enforcer' a debugging
  5.         program that uses the MMU to look for and display invisible bugs.
  6.         I have found this program absolutely brilliant.
  7.         MMU stands for Memory Management Unit and is found as a seperate
  8.         chip on 68020's and labeled 68851 and is internal to a 68030.
  9.         Enforcer comes as one of the tools under V2.0 Developers disks.
  10.  
  11. CHANGES (LATEST FIRST)
  12. ----------------------
  13. V1.99d  Code optimisations managed to shrink code by over 1100 bytes. 
  14.  
  15. V1.99c  Added a permanent function, that checks the restart vectors
  16.     that are normally modified by viruses.  See WARNING WINDOW.
  17.     
  18. V1.99a/b Bug fix, see BUG FIXES below
  19.  
  20. V1.99   Added a new function by modifiying the -w slightly.  This new
  21.         function is window to front simply by moving the mouse into
  22.         that window.  This was done simply as a challenge given by
  23.         John E. Van der Brook, Cheyenne. WY United States of America.
  24.  
  25. V1.98   After V1.97 screen now activates when brought back to front.
  26.         NOTE: Dpaint for some reason will not re-activate, I do not
  27.         know why, anyone know the answer??
  28.  
  29. V1.97   Options window now pops Workbench to front and opens the
  30.         window on it.  The front screen will be replaced when the
  31.         options window closes.  This stops the problem on custom
  32.         screens bitmaps being destroyed or wierd size screens.
  33.         Sorry to all the NTSC users, I didn't realise that the 
  34.         options window was opening 3 pixels over the 200 boundary.
  35.         This is now fixed and option window will open on NTSC screens.
  36.  
  37. V1.96   Addition of mouse button swap function for left handed people.
  38.  
  39. V1.94   By fine tuning my macros, I knocked 700 bytes off the filesize.
  40.  
  41. V1.93   Re-write of the auto activation function (1.90) to correct problems.
  42.  
  43. V1.92   Added ability to change the AutoCLI task priority.
  44.  
  45. V1.91   New function added to mouse accelleration.  It now has a choice
  46.         of three different speeds.
  47.  
  48. V1.90   Addition of new Auto activation option (-k).  If a key is pressed 
  49.         the window that the mouse is currently in, will be activated.       
  50.  
  51. V1.88   Addition of new Lock Pointer option (-l or -lr).  This function 
  52.         allows you to freeze either vertical, horizontal or both mouse 
  53.         movements.  This is great for icon aligning or better control in 
  54.         paint programs.  How many times have you carefully placed the mouse 
  55.         and had it move slightly when the button was clicked. 
  56.         
  57. V1.85   Addition of options window that allows, changes to your options
  58.         without having to remove and relaunch.  See main docs below for
  59.         instructions on its use. 
  60.  
  61. BUG FIXES (LATEST FIRST) 
  62. ------------------------
  63. V1.99b  FIX FOR POSSIBLE BUG IN WINDOW SHUFFLE, ALTHOUGH I COULDN'T 
  64.     MAKE IT FAIL, BUT I FOUND A POSSIBLE CAUSE.
  65.  
  66. V1.99a  FIX FOR MOUSE BLANKING FAILURE UNDER V1.3 KICKSTART, CAUSED 
  67.         SINCE WE SWITCHED TO V2.0 INCLUDE FILES. A LABEL IN THE 
  68.         COPINIT STRUCTURE HAD CHANGED, GIVING THE WRONG OFFSET FOR
  69.         KICK 1.3.
  70.  
  71. 1.96    AN INTERMITTENT ENFORCER HIT, SOMETIMES WHEN SEARCHING THE LAYERS. 
  72.         FIXED THE MOUSE BLANKING QUIRK OF KICKSTART 1.3 WHEN AUTO ACTIVATE
  73.         WAS ON.  THIS VERSION HAS BEEN EXTREMELY STABLE, AND ALL TESTERS
  74.         HAVE FOUND NO FURTHER PROBLEMS.
  75.  
  76. 1.95    MODIFICATIONS DUE TO 'ENFORCER' HITS, CAUSED BY A REGISTER BEING
  77.         TRASHED SOMETIMES ON EVENT EXTRACTION.
  78.        
  79. KNOWN BUGS OR CONFLICTS
  80. -----------------------   
  81. 1. Problems have been encountered with non standard versions of the 
  82.    'RUN' command.  This command is called by dos.library's 'execute' 
  83.    command.  If you have problems with the Amiga crashing when a CLI 
  84.    is popped up then make sure the 'run' command is standard.  The one
  85.    I use came from an original 1.3.2 workbench and has a filesize of 
  86.    2568 bytes.  It is also recommended that ARP Library commands are 
  87.    not used, as they have found to be source of many problems. 
  88.  
  89. SUGGESTIONS
  90. -----------
  91. If AutoCLI does not have your favourite function, or you can think
  92. of any improvements, then write and tell me.  
  93.                         
  94. This program has been placed on the Public Domain for your enjoyment. 
  95. Permission is hereby given to distribute this program in any 
  96. way you see fit, as long as this doc file accompanies it.
  97. Please send any bug reports or ideas to the address at the bottom 
  98. of this file. Commercial companies may also distribute the program.
  99.  
  100. I not only write commercial programs, but as you see we write 
  101. non-commercial too.  If you like this program and you use it, 
  102. then help me by sending a donation to the address below.
  103.  
  104. NIC'S PROGRAM SUMMARY
  105. ---------------------
  106. This program was written because of problems with the similar program I
  107. had been using called 'popcli'.  Popcli crashes if used under
  108. WorkBench/KickStart 2.0, and if used on a PAL Amiga to open a CLI
  109. window with a vertical size greater than 200 lines, it will not open if
  110. your Amiga decides to start in NTSC mode.  Popcli also seems to waste 
  111. CPU time when waiting and doesn't allow you to remove it from memory 
  112. without crashing or a reboot. AutoCLI overcomes all of the above problems 
  113. and has many added features equivalent to other programs around, but 
  114. uses much less CPU time. The biggest problem with all the others is that
  115. they lose the Current directory, stack and path.  AutoCLI retains all these
  116. including the Current directory when the program was launched, it will
  117. place you in this directory every time you open a CLI or Shell.
  118.  
  119. AutoCLI was written in 100% Assembler using Devpac Amiga V2.14.
  120.  
  121.  
  122. FEATURES
  123. --------
  124.         * Kickstart / Workbench 1.2, 1.3, 2.0 compatible
  125.  
  126.         * Compatible with A500, A1000, A2000, A2500, A3000
  127.  
  128.         * Default or custom CLI / Shell windows
  129.  
  130.         * Default windows open to 1 pixel less than current screen
  131.  
  132.         * Automatically checks and warns of restart vector changes
  133.  
  134.     * Function key scripts option
  135.  
  136.         * Options window allows modification while running
  137.  
  138.         * Active window to front or point to front options
  139.  
  140.         * Screen & window shuffle option
  141.  
  142.         * Screen blanking after time period option
  143.  
  144.         * Mouse blanking on key press or time option
  145.  
  146.         * Mouse acceleration and button swap options
  147.  
  148.         * Auto Window activation on a key press and mouse position option.
  149.  
  150.         * Function to swap mouse buttons for left handed users
  151.  
  152.         * Selectable task priority
  153.  
  154.         * No CPU time wastage
  155.  
  156.         * 100% machine code
  157.  
  158.         * Freely distributable
  159.        
  160. PROGRAM USAGE FOR INSTALLING AutoCLI
  161. ------------------------------------
  162. AutoCLI [<optional switches>] [<optional seconds>] [<optional command>]
  163.  
  164. DO NOT USE RUN or RUNBACK as it will return the command
  165. line and allow the window it was launched from to close, when an
  166. ENDCLI command is given. Yet it still retains the directory it
  167. was launched from and does not lose the current path or stack as
  168. some programs do.  This means that when a CLI is popped up it will
  169. default to the directory that was current, when AutoCLI was launched.
  170. The path and stack that was set, will still be valid. 
  171.  
  172. The program is mainly designed to be used in your startup-sequence
  173. so you will always have a CLI or Shell window available very easily.  
  174. AutoCLI MUST reside in your C: directory.
  175.  
  176. OPTIONAL SWITCHES
  177. -----------------
  178.     The following switches do not have to be given in any particular order,
  179.     but must all be before the optional seconds and command parameters.
  180.     All options default to OFF and must be enabled with a switch.
  181.  
  182.     Any of these options can be modified after launch, by using the 
  183.     Option Window provided. (see OPTIONS WINDOW below)
  184.  
  185. -f          This switch enables function key trapping.  When your qualifier
  186.             (see below) is held down and a function key pressed, the       
  187.             program will execute a script file in the assigned S:          
  188.             directory with a filename of autocli.f1 to autocli.f10.      
  189.             This file must be a normal script (eg. startup-sequence).
  190.     
  191. -w[n]       This switch enables the window to front option.  The optional
  192.             parameter (n) selects the action required to bring it to the
  193.             front.  0 = use keyboard, 1 = use mouse.  To use keyboard (0)
  194.             select the window you want at the front by clicking the left 
  195.             mouse inside the window and then hold your qualifier key 
  196.             (see below) and press the Left ALT key. 
  197.             To use mouse (1) simply place the mouse in the window you
  198.             want at the front and the window will immediately appear at
  199.             the front.  Both can be temporary disabled via the option
  200.             window.
  201.             EG. for keyboard :-  -w0   or  -w
  202.                 for mouse    :-  -w1
  203.  
  204. -n          This switch enables the screen shuffle option.  To use this
  205.             function, hold down your qualifier key and use the cursor
  206.             up or down keys.  These keys rotate all screens in opposite
  207.             directions to each other.
  208.             This is different to the standard LEFT AMIGA N & M.  These
  209.             standard keys only swap between the front and rear most       
  210.             screens.
  211.  
  212. -m          This switch enables the window shuffle option.  To use this
  213.             function, hold down your qualifier key and use the cursor
  214.             left or right keys.  This will move the front most window to
  215.             the back or the back most window to the front respectively.
  216.             The window shuffle always occurs on the screen that is at
  217.             the front.  This allows you to easily move between windows
  218.             and screens by using the qualifier and all the cursor keys
  219.     
  220. -q[n]        This switch enables mouse acceleration (-q).  The optional
  221.              parameter (n) is a speed from 1 to 3.  Speed 1 will multiply
  222.              all mouse movements by a factor of 2.  Speed 2 will multiply
  223.              by a factor of 4, and speed 3 will multiply by a factor of 8.
  224.              This function works in conjunction with mouse speed under
  225.              preferences, so this can also be changed to find the best
  226.              possible combination that you like.
  227.              If this second paramter is not given then it will default to
  228.              speed 1.
  229.              EG. For speed 2 the switch should be -q2
  230.                  For default speed it should be   -q
  231.  
  232. -p[n]        This switch allows you to change the priority of AutoCLI.
  233.              Without this switch it will default to 21.  Valid values 
  234.              for (n) are 0 - 21, bad values will cause the default value
  235.              to be used.
  236.              EG. For a priority of 0  the switch should be -p0
  237.                  For a priority of 20 the switch should be -p20
  238.              NOTE
  239.              If the priority is changed from 21, some functions may not
  240.              work correctly. Use with caution.
  241.  
  242. -k          This switch enables auto window activation.  If enabled this
  243.             function will activate any window the mouse is currently in, 
  244.             when a key is pressed.  It will still work even if another 
  245.             screen is at the front, and you have dragged it down and placed 
  246.             the mouse over a window on the screen behind.
  247.  
  248. -l or -lr   This switch allows the mouse movements to be frozen in vertical,
  249.             horizontal or both directions.  If the CONTROL key is depressed
  250.             the horizontal movements are frozen.  If the LEFT ALT key is 
  251.             pressed then the vertical movements are frozen.  If both are
  252.             depressed then all movements are frozen.  When either of these
  253.             keys are released then movements continue in that direction.
  254.             If these keys conflict with your chosen qualifier key (see 
  255.             -s -c -a) then use the -lr switch instead, your keys with
  256.             then change to RIGHT SHIFT for horizontal and RIGHT ALT for
  257.             vertical.
  258.  
  259. -b          This switch enables mouse blanking.  When any key is pressed
  260.             the mouse pointer will be immediately blanked, or if no mouse
  261.             movement is detected within 30 seconds the mouse pointer will
  262.             be blanked.  As soon as the mouse is moved at all the pointer
  263.             will be returned immediately.  This overcomes the annoying
  264.             habit of the pointer always being in the way while typing.
  265.  
  266. -e          This switch physically exchanges the left and right hand buttons
  267.             on the mouse.  All programs that use the mouse correctly will
  268.             work.  If the mouse is checked by hardware then the swap will
  269.             not occur.  This switch is not available from the option window
  270.             as yet, maybe next version.  
  271.  
  272. -s  -c  -a  The default qualifier key is the LEFT AMIGA but this can be 
  273.             changed with a switch.  The -s switch changes the qualifier 
  274.             key to the SHIFT key.  The -c switch changes it to the CONTROL 
  275.             key, and the -a switch changes it to the ALT key.  To use the 
  276.             default key (LEFT AMIGA) then don't use any of these three 
  277.             switches.  Note that this qualifier key is also the same for 
  278.             the autocli function as well.
  279.             
  280. -r          The above qualifier is, by default, the key on the LEFT side   
  281.             of the keyboard.  To change this to the RIGHT side, use thi    
  282.             switch.                  
  283.  
  284. ?           If the switch is a single question mark, then AutoCLI
  285.             will display a USAGE string on the current CLI window.  
  286.             It will not install or remove itself.
  287.  
  288. remove      This switch should be used on its own.  It will signal
  289.             the current version of AutoCLI to shut down and remove 
  290.             itself.  Whenever it attempts this removal, a success
  291.             or failure message will be displayed on the CLI window.
  292.  
  293. WARNING WINDOW
  294. --------------
  295. The event handler constantly checks the restart vectors against values 
  296. that were there when AutoCLI was first launched.  These vectors are often 
  297. modified by viruses in order to survive a reboot.  If this happens during 
  298. normal operation, (ie. file virus gets launched) then AutoCLI will open a 
  299. small warning window and ask you if you wish to replace them with their 
  300. original values or leave them.   For example mounting RAD: will change 
  301. these vectors the first time is it accessed. You would answer NO to the 
  302. question, AutoCLI will then accept these changes as OK.
  303.  
  304. OPTIONS WINDOW
  305. --------------
  306. This function is always available, even if function key scripts (-f)
  307. is turned off.  It is accessed by holding the qualifier key and pressing
  308. HELP.  A window will open on the front most screen  with gadgets set with 
  309. your current options.
  310. Click on the gadgets to turn functions on or off.  Screen blanking time 
  311. can be changed by clicking in the gadget and changing it accordingly.
  312. If you turn screen blanking on, but give no time, then a default time
  313. of 300 seconds will be set.
  314. At the bottom of the window are two gadgets, 'OK' and 'REMOVE'.  The 
  315. remove gadget will remove AutoCLI from memory completely.  The ok gadget
  316. will set the new options you have made.
  317.  
  318. OPTIONAL SECONDS
  319. ----------------
  320. This is an optional time (in seconds) to blank the screen when no user
  321. input is detected.  The default is off, so if blanking is not wanted then
  322. do not give a time at all.  When the screen has been blanked, it can be
  323. turned on again by touching any key or moving the mouse.  Because it only
  324. requires a single rawmouse event, we have found that giving your computer
  325. table a nudge is sufficient to turn the display on again.
  326.  
  327. OPTIONAL COMMAND (command run when 'Qualifer ESC' is pressed)
  328. ----------------
  329. If no optional command is given then AutoCLI will use a default command.
  330. This default command is, AutoCLI will launch and wait for your qualifier 
  331. key and ESCAPE to be pressed.  When this event occurs AutoCLI will open 
  332. a CLI window 1 pixel less than the size of the WorkBench Screen at the 
  333. time it is opened.  So if resolution mode is changed AutoCLI will notice 
  334. the change.  If NEWCON: is available, a Shell window will open instead 
  335. of a CLI window.    
  336.  
  337. If an optional command is given, AutoCLI will execute that command
  338. in preference to the default CLI/SHELL window when your qualifier key 
  339. and ESCAPE is pressed (see EXAMPLES).  This allows custom commands or 
  340. custom size CLI/Shell windows to be used.  Note that if AutoCLI is already
  341. in memory it will display an error message on the current CLI
  342. window.
  343.  
  344. EXAMPLES
  345. --------  
  346.      AutoCLI -f -w0 -n -m -k -l -r -s 600 newshell newcon:0/10/640/150/MyShell
  347.      (opens a Shell window with a title of 'MyShell', enables function 
  348.      keys, selects the RIGHT SHIFT as your qualifier, enables the window 
  349.      to front option ,enables the screen shuffle option, enables the 
  350.      window shuffle, enables pointer lock, enables auto activation,
  351.      and will blank the screen after 10 mins of non use). 
  352.  
  353.      AutoCLI -f -w0 -q2 YourProg
  354.      (runs a file called YourProg.  When LEFT AMIGA/ESCAPE is pressed
  355.      enables function keys, window to front and will disable the screen 
  356.      blanking (ie. no time given), and will accellerate the mouse by
  357.      a factor of 4. 
  358.                                
  359.      AutoCLI remove
  360.      (attempts to remove the currently running version from memory
  361.      and displays a success or failure message).
  362.  
  363. REQUIREMENTS
  364. ------------
  365. The following commands MUST be available in the current C: directory :- 
  366.    
  367. run             ; c directory (called by the DOS Execute function)
  368. newcli          ; c directory (called by AutoCLI if NEWCON not available)
  369. newshell        ; c directory (called by AutoCLI if NEWCON is available)
  370. shell-seg       ; l directory (needed if newcon: is mounted)
  371. AutoCLI         ; c directory
  372.  
  373. The following commands, devices, files are optional :-
  374.  
  375. cli-startup     ; s directory (script executed by Newcli)
  376. shell-startup   ; s directory (script executed by NewShell)
  377. NEWCON:         ; (must be mounted to enable Shell instead of CLI)
  378. AutoCLI.F1      ; s directory (script file for qualifier/F1)
  379. AutoCLI.F2      ; s directory (script file for qualifier/F2)
  380. ...etc.
  381.  
  382. NOTE: 'Amiga' is a Trademark of Commodore Amiga Inc.
  383. The idea for Pointer Lock came from a program 'Tame Pointer' by JOHN ROWE,
  384. a very close and talented friend of mine.
  385.  
  386.  
  387. Nic Wilson Software
  388. 138d South Street
  389. TOOWOOMBA Queensland 4350
  390. Australia 
  391. Phone (076) 358539  Home,  
  392.       (076) 358384  Work or Fax
  393.       (076) 358522   "   "   "
  394.  
  395.       
  396.  
  397.                     
  398.