home *** CD-ROM | disk | FTP | other *** search
/ ST-Computer Leser 1998 October / STC_CD_10_1998.iso / UTILITY / SILKMOUS / READ_ME.TXT next >
Text File  |  1998-09-26  |  13KB  |  277 lines

  1.  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  2.  +                      SilkMouse version 4.2                      +
  3.  +                   for Atari ST/STe/TT/Falcon                    +
  4.  +           FREEWARE, Copyright (c) 1997 by Mark Slagell          +
  5.  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  6.  
  7.  
  8.  Purpose
  9.  =======
  10.  
  11. SilkMouse is the definitive mouse accelerator for Atari TOS computers. 
  12. It may be used by itself or in conjunction with Codehead Software's
  13. popular Warp 9 package, replacing its mouse accelerator.  It is also
  14. fully compatible with serial mouse drivers.
  15.   
  16. The acceleration algorithm has been entirely reconceived since the
  17. release three years ago of version 3.2.  More sophisticated mathematics
  18. have been employed to help you control the mouse pointer with less
  19. effort.
  20.  
  21. A few options are included that you may find handy, but can be disabled
  22. where they are not needed.  These include a simple screen saver, a
  23. hold-screen switch for terminating applications, and a patch preventing
  24. a specific glitch that some Atari keyboards are prone to.  The options
  25. are detailed later in this document.
  26.  
  27. The resident part of SilkMouse is written entirely in assembly language
  28. for speed and compactness.
  29.  
  30.  
  31.  Installation
  32.  ============
  33.  
  34. Delete or otherwise disable any mouse accelerator currently installed
  35. on your system, including any previous version of SilkMouse.  If you
  36. are using a serial mouse or some other driver with acceleration that
  37. can't be entirely disabled, adjust it down (for MOUSE.PRG, set
  38. "speedup" to around 15).
  39.  
  40. Run SILKMOUS.PRG from the desktop, or copy it to your AUTO folder and
  41. reboot.
  42.  
  43. (Any conflicts can usually be cured by ordering your AUTO folder so
  44. SILKMOUS.PRG runs later.  To date I know of only one rather obscure
  45. combination like that: if you use Geneva, SilkMouse, and Word Perfect,
  46. GENEVA.PRG needs to run before SILKMOUS.PRG in the AUTO folder.)
  47.  
  48. When first installed, SilkMouse is inactive until you set preferences
  49. using SMCP.APP, the SilkMouse Control Panel.  It can be run from the
  50. desktop or renamed as SMCP.ACC and installed as an accessory.
  51.  
  52. After you have saved preferences, SILKMOUS.PRG finds that information
  53. by itself the next time it installs.  You do not need to leave SMCP
  54. installed to use SilkMouse.
  55.  
  56. A CPX version of SMCP is not currently planned for this version.
  57.  
  58.  
  59.  Some characteristics of the SilkMouse accelerator
  60.  =================================================
  61.  
  62. 1: extremely smooth response, without gears or plateaus
  63. 2: smaller physical motions needed to reach any point on screen
  64. 3: easy single-pixel control
  65. 4: fine adjustability of response curve
  66. 5: resolution independence, no adjusting for different aspect ratios
  67. 6: angle of motion faithfully reproduced
  68. 7: predictable operation of Alt-arrow keys.
  69.  
  70. SilkMouse is uniquely able to overcome the resolution limitations of
  71. both the screen and the mouse device.  Regardless of screen mode,
  72. coordinates are maintained internally on a virtual 1-micron grid, and
  73. adjustments are continuously made from accumulated rounding errors.
  74.  
  75. Physical mouse speed is determined not from the raw X and Y components
  76. reported by the IKBD processor, but from the magnitude of the resulting
  77. vector (the Pythagorean theorem is used, with fixed-point binary values
  78. taken from a table to avoid having to compute square roots on the fly),
  79. and the elapsed time between mouse motion reports.  This extra
  80. information allows discrimination between much lower physical speeds
  81. than is possible with a conventional accelerator, effectively
  82. increasing the resolution of the mouse and allowing you to expend less
  83. energy to get the results you want.
  84.  
  85.  
  86.  Accelerator configuration
  87.  =========================
  88.  
  89. To adjust mouse response, click on "Mouse accelerator: Config" in the
  90. SMCP accessory.  You will see five slider-based adjustments and two
  91. switches.
  92.  
  93. To understand the first four adjustments, think of a response curve
  94. plotted with physical mouse speed along the X axis and acceleration
  95. factor along the Y axis.  SMCP draws the curve to fit three points. 
  96. Think of these as (x0,y0), (x1,y1), and (x2,y2).
  97.  
  98. Of those sliders adjusting acceleration, Min, Avg and Max correspond
  99. respectively to y0, y1 and y2.  These should be adjusted according to
  100. work habits and personal taste.
  101.  
  102. Coordinate x0 is fixed at theoretical speed zero, and x2 at a speed
  103. Nolan Ryan, hurling the mouse across a desktop, could not have achieved
  104. in his prime.  The sensitivity adjustment corresponds to x1, though its
  105. slider is calibrated inversely to the graph axis so the description
  106. makes better intuitive sense.  I suggest setting this to reflect
  107. physical considerations; for instance, you might reduce it if using a
  108. high-resolution mouse, or increase it if you have small hands.
  109.  
  110. The sliders described above have been calibrated for a range of 0 to
  111. 100.  I suggest starting them around the middle and working outward
  112. until you find your best response curve.
  113.  
  114. The fifth adjustment, "Drag weight", causes acceleration to
  115. automatically decrease when a mouse button is being pressed.  This both
  116. enhances control of free-hand drawing and gives a sense of weight when
  117. something is being dragged, as the description suggests.  From a range
  118. of 0 to 12, the default setting is 1.  When set to zero, the mouse
  119. button state has no affect on acceleration.
  120.  
  121. Contour type I maintains strict resolution independence at all speeds;
  122. in some circumstances that means actually decelerating, not
  123. accelerating, the pointer response.  For those who find that behavior
  124. disconcerting, contour type II blends in raw pulse data at the low end
  125. of the response curve, preventing deceleration and making the "Min
  126. accel" adjustment less critical.  Choose the contour type that seems to
  127. give you better single-pixel control.
  128.  
  129. Leave "VDI pixel dimensions" on unless you experience odd behavior. 
  130. Atari maintains documented but seldom-used system variables for the
  131. height and width of a pixel.  If you have installed something that
  132. changes screen modes without updating those variables (SEBRA is guilty
  133. of this oversight), turn this switch off and SilkMouse will calculate
  134. pixel dimensions based on other information.
  135.  
  136. (My personal settings when using a standard Atari mouse are:
  137.   Min accel: 72
  138.   Avg accel: 62
  139.   Max accel: 50
  140.   Sensitivity: 50
  141.   Drag weight: 2
  142.   Contour type I
  143.   VDI pixel dimensions ON.)
  144.  
  145.  
  146.  The screen saver
  147.  ================
  148.  
  149. Included with SilkMouse is an optional screen saver whose purpose is
  150. not to entertain or amuse, but to extend the useful life of your
  151. monitor without getting in the way of your work.
  152.  
  153. When a color monitor is in use, the saver works as follows: after a
  154. given period where no input from the mouse or keyboard is received, the
  155. display inverts and goes to half intensity (black becomes gray, white
  156. becomes black, bright yellow becomes dark blue, etc.).  It remains in
  157. this state for a time that is some multiple of the initial delay, then
  158. goes blank.  Moving the mouse or pressing a key at any time returns the
  159. display to normal.  (As of version 4.1, the screen saver correctly
  160. recognizes activity of a serial mouse.)
  161.  
  162. The invert/dim algorithm is good for your monitor, because it assures
  163. even use of all areas of the screen to prevent phosphor burn-in; it is
  164. also convenient, since the information in the display remains viewable
  165. for a while even after protection begins.
  166.  
  167. When a monochrome monitor is in use, a screenful of memory may
  168. optionally be reserved during bootup.  (Note: turning the "mono
  169. reserve" switch on or off has no effect until after you save
  170. preferences and reboot.)  Having the extra memory available allows the
  171. saver to mimic its color behavior when the hardware does not support
  172. palette manipulation.  When changing states from normal to dimmed, the
  173. screen is inverted if the background was white, or every other pixel is
  174. turned off if the background was black.  In the former case, all screen
  175. activity remains continuously viewable.  In the latter, the display
  176. updates every five seconds.  In both cases the display blanks
  177. completely after a while.  If you tell the saver not to reserve the
  178. extra memory, it inverts (white->black->white) periodically without
  179. going blank.
  180.  
  181. When the "Watch modem" switch is set to "Port", the saver monitors the
  182. MFP (ST) serial port and resets whenever it sees activity there, as if
  183. a key had been pressed.  When set to "Buffer", it watches the serial
  184. input buffer instead.  Experiment for best results depending on what
  185. ports and programs you use.
  186.  
  187. The "Init delay" slider sets how long, in minutes, the saver waits
  188. before dimming the display.  "Dim factor" sets how long it stays in the
  189. dimmed state before going blank, and is multiplied by the delay value. 
  190. For example, if you set initial delay to 10 and dim factor to 5, the
  191. screen will go dim after 10 minutes of no input, and blank out 50
  192. minutes later.
  193.  
  194. New as of version 4.2 is a saver exemption feature.  Despite my best
  195. efforts in designing a trouble-free screen saver, there will always be
  196. some applications that can't coexist with it.  These typically
  197. intercept the vectors that serve as display-restoring triggers, or do
  198. direct hardware manipulation on the screen base address and/or color
  199. registers.  Such programs may be exempted from saver action by clicking
  200. the "Add..." button in the "Exempt applications" box.  Use the file
  201. selector to indicate the program.  SilkMouse will suppress its saver
  202. activity whenever that program is running, even if it is running in the
  203. background on a multitasking system.
  204.  
  205. SMCP maintains a list of up to twenty exempt programs.  It checks to
  206. make sure new additions to the list are actually executable files, but
  207. does not check for duplicates.  If you ever need to do this manually,
  208. browse the list with the "Prev" and "Next" buttons, clicking "Remove"
  209. when necessary.
  210.  
  211. Technical note: the exemption feature relies on the "p_run" system
  212. variable to find basepages of active GEMDOS processes.  Since a
  213. program's filename is not found in the basepage, the lengths of its
  214. text, data, and bss segments are used as a fingerprint.  A program not
  215. in the exemption list may prevent the saver from engaging if its file
  216. length and all segment lengths exactly match something in the list, but
  217. this is extremely unlikely to occur, and harmless if it does.
  218.  
  219.  
  220.  Function key debounce
  221.  =====================
  222.  
  223. When a shift key is held down and two other adjacent keys are pressed
  224. together, many Atari keyboards tend to erroneously report a shift-F1
  225. or shift-F3, in addition to one or both of the keys actually pressed. 
  226. If you've never noticed, it may be that you are an exceptionally
  227. careful typist, or none of your software does anything interesting
  228. when you press shift-F1 or shift-F3 anyway.  In any case, the debounce
  229. feature effectively cures the glitch.
  230.  
  231.  
  232.  R-hold screen after prg
  233.  =======================
  234.  
  235. This feature is intended for reading the output of a program run from
  236. the desktop when it was designed to run from a command line shell.
  237.  
  238. You know the feeling.  You run an unfamiliar program, it prints a
  239. screen full of something which immediately disappears, and you're back
  240. at the desktop.  You wonder if there's a command line option you can
  241. send to make the program wait for a keypress before exiting, but of
  242. course that's part of the information you aren't fast enough to read. 
  243. So you run it over and over, vainly trying to freeze the screen by
  244. hitting control-S or alt-Help at just the right millisecond.
  245.  
  246. If the R-hold option of SilkMouse is active, each application checks
  247. the status of the right mouse button when terminating.  If it is not
  248. being pressed, the application exits normally; otherwise the screen
  249. remains visible in whatever state the application left it, until you
  250. release the button.  You can also lock the screen and free your hands
  251. by clicking the left button while holding the right one down.  Then
  252. you can release both buttons, and the system will stay frozen until
  253. you click again with the right button.
  254.  
  255.  
  256.  Parting words
  257.  =============
  258.  
  259. SilkMouse may be freely distributed as long as it is unaltered and
  260. accompanied by this text file.
  261.  
  262. Up to version 3.0, SilkMouse was a shareware product with a $10 price
  263. tag.  It was sufficiently popular to pay for my first ST system. 
  264. Since then, a dwindling Atari market and my own improved financial
  265. circumstances persuaded me to make SilkMouse freeware; I still accept
  266. voluntary payments, but everyone is free from obligation.  Anyone who
  267. still wishes to contribute may do so with a check payable to Mark
  268. Slagell (not SilkWare--I've closed that account) and mailed to the
  269. address below.
  270.  
  271. Bug reports, suggestions, and other comments are all welcome.
  272.  
  273. Mark Slagell  (sluggo@ames.net)
  274. 3716 Ross Road
  275. Ames, IA  50014
  276. USA
  277.