home *** CD-ROM | disk | FTP | other *** search
/ APDL Public Domain 1 / APDL_PD1A.iso / program / dragaspr / DragHelp < prev   
Encoding:
Text File  |  1994-02-15  |  10.0 KB  |  199 lines

  1. <============================================================================
  2.  
  3.                          D R A G   A   S P R I T E  +
  4.                            Version 2.02, 15 Feb 1994
  5.                          © Andrew Clover of DoggySoft
  6.  
  7. ============================================================================>
  8.  
  9. If you have been using version 1.09, you might like a quick summary of the
  10. updates. Skip this if you are a new user.
  11.  
  12. ===> Changes from 1.09 to 1.10
  13.  
  14. --> Fix of bug that stopped the dragging of sprites within window work area.
  15.     I was not able to test this previously as I couldn't find a program
  16.     which did it. (Thanks to Thomas Olsson for spotting this one.)
  17.  
  18. ===> Changes from 1.10 to 2.02 - TOTAL RECODE
  19.  
  20. --> New *DragType command provides much greater configurability than the old
  21.     *SemiDrags. Drop-shadows are now supported, because the new *DragType
  22.     command enables them to be at a different solidity than the sprite, so
  23.     they actually look good. Distance of shadows changeable.
  24. --> Applications can choose whether to have drop-shadows themselves, or you
  25.     can force them to use whatever setting you like.
  26. --> Five-fold algorithm for speed. It's now about as fast as is possible.
  27.     There shouldn't be any flicker at all. It's certainly smoother than RISC
  28.     OS 3 DragASprite.
  29. --> New method in the draw code when bbox is not in graphics window - doesn't
  30.     change the graphics window like RISC OS 3 DragASprite (PRMs say you
  31.     shouldn't anyway).
  32. --> Demessification of error handling
  33. --> Demessification of memory management
  34. --> Disadvantage: All the new code means its length has increased to a
  35.     (comparatively) whopping 6K!
  36.  
  37. <============================================================================
  38.  
  39. This program is Freeware. You are allowed to copy it and hand it around to
  40. your friends as much as you like, but you must supply the module with this
  41. help file, unedited. If you are a PD library, please write to us for the
  42. latest versions of all our programs.
  43.  
  44. ===> Introduction
  45.  
  46. DragASprite+ is an improved version of Acorn's DragASprite module that is
  47. supplied in ROM on RISC OS 3. The main advantages of this module over that
  48. in RISC OS 3 are:
  49.  
  50. -> You can run it on any version of RISC OS. Acorn's DragASprite will not
  51.    run if soft-loaded on RISC OS 2.
  52. -> It is quicker, providing a faster screen update and smoother movement of
  53.    icons.
  54. -> It fixes a minor bug present in unusual modes such as 22, and a strange
  55.    bug that popped up in StrongEd for some reason.
  56. -> It allows dragging of 256 colour sprites, unlike Acorn's which fails
  57.    either by producing incorrect colours or not letting you drag at all.
  58. -> It allows semi-transparent sprite drags, and instead of just masking out
  59.    every other pixel, it creates an alternating pattern providing no loss of
  60.    detail. The alternation also stops dithered icons looking completely
  61.    useless.
  62. -> It gives you the facility to set the CMOS flag to use solid drags by the
  63.    use of a star command.
  64. -> It is configurable to give many types of sprite drags. Either the sprite
  65.    or the shadow can be semi-transparent or solid, or shadows can be forced
  66.    off if you don't like them. The distance of the shadow from the sprite
  67.    may also be configured.
  68.  
  69. ===> Use
  70.  
  71. After you have loaded the new DragASprite module, the first thing to do is to
  72. make sure the DragASprite flag in battery-backed RAM is set on your computer.
  73. To do this enter the following command:
  74.  
  75.   *Configure SpriteDrags On
  76.  
  77. If you decide that solid drags are not for you then you can turn it off by
  78. using the above command with "Off".
  79.  
  80. Now it's time to choose what sort of sprite drags you want. The default is
  81. to have semi-transparent sprites with drop-shadows forced off, but there are
  82. many options. Enter *Help DragType to find out what they are, and *DragType
  83. to see the current settings. Some combinations to try:
  84.  
  85. *DragType -Sprite 2 -Shadow 2 -Offset 8 -ForceOff
  86.   This command sets DragASprite to emulate the RISC OS 3 ROM DragASprite
  87.   module, with a solid sprite and shadow 8 OS units away from it. It also
  88.   allows applications to choose whether to have a drop-shadow themselves.
  89.   This, however, is not recommended, as some applications will use them and
  90.   some not, which leads to an inconsistent desktop.
  91. *DragType -Sprite 1 -Shadow 1 -Offset 8 -ForceOff
  92.   This command emulates the patched DragASprites that come from Acorn User,
  93.   Acorn Computing, various PD programs, and certain other sources (ahem).
  94.   Both the sprite and the shadow are semi-transparent, which doesn't look all
  95.   that good, but it is better than the others with its alternating dither
  96.   pattern.
  97. *DragType -Sprite 1 -Shadow 0 -Offset 12 -ForceOn
  98.   This command is the default setup, a semi-transparent sprite with no
  99.   shadow. Looks good and has the useful advantage of allowing you to see the
  100.   icon you are dropping the sprite on to.
  101. *DragType -Sprite 2 -Shadow 1 -Offset 12 -ForceOn
  102.   This command gives a solid sprite with a semi-transparent shadow, which
  103.   looks good (IMHO better than the default) if you don't mind more
  104.   icon-obscuring. The shadow is also further away from the sprite than RISC
  105.   OS has it, I think it looks clearer at this distance.
  106.  
  107. Feel free to experiment with the DragType settings, but I don't recommend
  108. solid shadows with semi-transparent sprites, or huge shadow offsets! If you
  109. always work in high-resolution modes, you may prefer an offset of 10.
  110.  
  111. Once you've decided what you like, we recommend you put DragASprite+ in your
  112. boot sequence, if you have one. If your favourite DragType is not the default
  113. put the new command in to. If you have no boot sequence, it's a bit of a pain
  114. double-clicking on DragASprite and maybe entering a command every time you
  115. turn on, so make a boot sequence today!
  116.  
  117. Some applications will ignore the setting of the battery-backed RAM
  118. DragASprite flags, and either use sprite drags when they shouldn't, or use
  119. an old-style dash-box when they should drag a sprite. The first case is
  120. easy to deal with - Just enter *DragType -Sprite 0, and all sprite drags will
  121. get a dash-box instead. The second case is not so easy - applications built
  122. for RISC OS 2, including Acorn's applications, will not know about
  123. DragASprite, and will make a dash-box themselves. This will also happen with
  124. applications that decide whether or not to use sprite drags by looking at the
  125. OS version number, if you are running RISC OS 2 - they assume that
  126. DragASprite is only available on RISC OS 3, and of course it used to be.
  127. To get these programs to use sprite drags, you'll have to get one of those
  128. programs that forces sprite drags on everything. I think there's one called
  129. WIMPPatch. Another thing that might be a good idea is a patch to make the
  130. filer and pinboard use sprite drags. Ahem.
  131.  
  132. ===> Interesting(ish) miscellany
  133.  
  134. Acorn decided that they would not allow people to soft-load a copy of RISC OS
  135. 3's DragASprite module into RISC OS 2 for some unknown reason. They did this
  136. by having an unnecessary SWI call at the start that crashed RISC OS 2. This
  137. implementation (which is, after all, a FULL re-code, no Acorn code has been
  138. used - actually, you wouldn't like to know what RISC OS 3 does when the
  139. sprite doesn't fit within graphics window, it's completely horrible :-6 )
  140. does not include this call and therefore you can use this module on all
  141. known operating systems to date.
  142.  
  143. For 256 colour sprites this version of DragASprite will correctly handle them
  144. in 256 colour modes, but in 16 colour modes it will produce a black 'ghost'
  145. sprite to represent the icon - the best you can do without using ColourTrans.
  146. I may produce a version that does use ColourTrans, if anyone cares.
  147.  
  148. This module is VIDC20 aware, but not VIDC20 tested. It should work properly
  149. with 16- and 32-bit colour modes, but I haven't got a machine that runs in
  150. these modes ...yet... so I can't test it.
  151.  
  152. Semi-transparent sprites look much better in high-res modes (although still
  153. looking fine, and much better than completely solid drags, in TV-res modes)
  154. because the gap between each pixel is smaller. You may find that dithered
  155. sprites appear to 'flash' a bit, as the colours displayed will go from one to
  156. the other - but it looks a lot better than non-alternating dithered sprites,
  157. which take up just one colour.
  158.  
  159. The reason for the configure option is because until now you had to use two
  160. calls to OS_Byte to set the configure bit and usually you cannot remember
  161. what location to alter. This call is purely a quick way of doing the above.
  162. NB: When you configure the option, the action might not take effect
  163. immediately.  This is because it is not DragASprite you are telling to not
  164. do solid drags but the tasks on the desktop, and some will only check to see
  165. if the configure option is set when they first load.
  166.  
  167. The reason for a higher version number, 2.01, as opposed to 1.01 (only one
  168. recode so far) which is the real version number, is to avoid confusion with
  169. Acorn's original DragASprite module. It is conceivable that Acorn will
  170. release a new OS with a new DragASprite built in version number higher than
  171. 0.05 but lower than 2.01, and if they widen the specification (a new SWI
  172. possibly, or service calls issued?), it may muck things up - that's a risk
  173. I'll have to take, I don't think it's very likely myself.
  174.  
  175. ==> Contacts
  176.  
  177. To contact me, for example to tell me your favourite DragType, to persuade
  178. me to change the default, or to suggest new bits to add, or, heaven forbid,
  179. to report a bug, please write to:
  180.  
  181.     Andrew Clover
  182.       DoggySoft,
  183.         7 Blackhorse Crescent,
  184.           Amersham,
  185.             Bucks.,
  186.               HP6 6HP.
  187.  
  188. You may phone me if you are one of those sad people who seem to phone me for
  189. no reason on 0494-431916, send a fax on 0494-675878, or even telex me on
  190. 83675 Brit G.
  191.  
  192. If you have a modem, you can download the latest version of this and other
  193. programs of DoggySoft, as well as talk to us, play silly games, and
  194. buy non-PD software, by ringing 0494-681711, 24hrs & all speeds to 14k4
  195. (ANSI 8N1). You might like to send me mail on Arcade BBS, Digital Databank
  196. or The World of Cryton. Finally, e-mail:
  197. ajc@doggysft.demon.co.uk
  198.  
  199. <============================================================================