home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #26 / NN_1992_26.iso / spool / comp / sys / acorn / 9525 < prev    next >
Encoding:
Internet Message Format  |  1992-11-12  |  6.2 KB

  1. Xref: sparky comp.sys.acorn:9525 comp.sys.acorn.tech:580
  2. Newsgroups: comp.sys.acorn,comp.sys.acorn.tech
  3. Path: sparky!uunet!pipex!pavo.csi.cam.ac.uk!nas20
  4. From: nas20@cl.cam.ac.uk (Nick Smith)
  5. Subject: Sprite dragging/New Filer/Replacement ToolSprites
  6. Message-ID: <1992Nov11.161338.28556@infodev.cam.ac.uk>
  7. Summary: Forcing sprite dragging in filer, replacement sprite & toolsets + related topics (!)
  8. Keywords: sprites dragging filer RISCOS
  9. Sender: news@infodev.cam.ac.uk (USENET news)
  10. Nntp-Posting-Host: ashley.cl.cam.ac.uk
  11. Reply-To: nas20@phx.cam.ac.uk (Nick Smith)
  12. Organization: U of Cambridge Comp Lab, UK
  13. Date: Wed, 11 Nov 1992 16:13:38 GMT
  14. Lines: 122
  15.  
  16. This post puts forth my ideas about Sprite dragging, an improved version
  17. of the RISC OS 3.10 filer, and a few related topics (toolsprites & replacement
  18. file/application sprites). It is rather long and rambles in places - you
  19. have been warned ! Follow ups to c.s.a.tech *only*, or email please.
  20. ---
  21.  
  22. There has been a lot of discussion over the last month or so in comp.sys.acorn
  23. and comp.sys.acorn.tech about real sprite dragging - specifically the 
  24. DragASprite module present in the RO3.00/3.10 ROM that allows applications
  25. that are aware of it, to use DragASprite_ SWI calls to solid-drag their
  26. icons from saveas dialogue boxes instead of using Wimp_DragBox and getting
  27. a rotating outline box.
  28.  
  29. Once c.s.a had agreed that using *FX 162,28,3 was *not* the way to turn on
  30. dragging, and that you should toggle a single bit in CMOS using something 
  31. like ;
  32.  
  33.    REM Toggle state of DragASprite bit in CMOS
  34.    REM From: mhardy@acorn.co.uk (Michael Hardy)
  35.  
  36.    REM Read byte
  37.    SYS "OS_Byte",161,&1C TO ,,byte%
  38.    REM EOR byte with mask for bit 1
  39.    byte% = byte% EOR 1<<1
  40.    REM Write byte back again
  41.    SYS "OS_Byte",162,&1C,byte%
  42.    END
  43.  
  44. the discussion moved on to more interesting things - like "why doesn't the
  45. filer solid drag its icons?", and "maybe we should do something about it".
  46. (I am summarising a month of discussion for those who haven't (or can't) 
  47. follow the various threads in c.s.a and c.s.a.t)
  48.  
  49. I wrote the RISC User module 'ForceADrag' module (back in January!) which
  50. forces all RO2 and RO3 applications to use the DragAsprite module by
  51. intercepting the SWI vector, and turning Wimp_DragBox into DragASprite_
  52. calls. This is no substitute for correctly written RO3 applications (like
  53. the Acorn ROM apps), but is useful if you like solid drags while you wait
  54. for everyone to upgrade their software ...
  55.  
  56. I have done a new version of this module which patches the RO3.10 'Filer'
  57. module and makes it use solid drags for dragging *single* files about
  58. the place (the old version does not do this, because the Filer directly
  59. plots its icons with Wimp_PlotIcon, rather than storing them as icons
  60. in the window definition, which results in you not knowing the name
  61. of the sprite you want to drag unless you patch the filer directly)
  62.  
  63. At the same time, Andrew Hersee <ahersee@uk.ac.warwick.dcs> has also
  64. done a patched filer module which lets you define a sprite for that
  65. directory (ala !app) rather than using the sprite 'directory' for
  66. all of them.
  67.  
  68. What I propose is the following:
  69.  
  70. A joint piece of PD software, between myself, Andrew and anyone else
  71. who wants to help (full source distributed) which ;
  72.  
  73.  * Forces all RO2 & RO3 apps to use DragASprite SWIs (also *Configure
  74.     SpriteDragging command to stop all the confusion with *FX's, etc!)
  75.  
  76.  * Lets you drag single files around with the Filer module as solid 
  77.     drags. Patches the RO3.10 filer module *only*, using something
  78.     like !Patch, and so you must load the patched filer module into
  79.     RAM. It is only 26kb or so. It has to be patched, rather than
  80.     distributing the new filer module because of Acorn's copyright.
  81.     In fact it may be breaking the license to *RMFaster the module
  82.     and 'copy' it into RAM 8-)
  83.  
  84.  * Lets you drag a selection of files around the filer using either
  85.     a) user definable sprite, b) sprite that bears some relation to
  86.     the filetypes dragged, or c) outline box as normal - all
  87.     configured by the user for a flame-free application ;-)
  88.  
  89.  * Lets you define sprites (and sprites22) files for inside directories
  90.  
  91.  * A set of replacement sprites (Resources:$.Resources.Wimp.Sprites)
  92.    See below for more details.
  93.  
  94.  * A set of toolsprites for 3D desktop, with a little app to switch
  95.    these on/off, etc.
  96.  
  97. Possiblities that require more work ;
  98.  
  99.  * A Filer which *displays* longer filenames (eg, upto 16 chars long)
  100.  
  101.    NOTE: This is very different to a replacement FileCore which lets
  102.    ADFS, etc. actually *have* filenames longer than 10 chars ! 
  103.    However, we now have FS's like MemFS, SparkFS, NFS, etc. which 
  104.    give us filing systems that can handle longer names.
  105.  
  106.    The mechanism I suggest for this is small/large icon displays 
  107.    which are staggered vertically (ala !Sticky), and a user 
  108.    definable full info mode which uses an environment variable to 
  109.    determine how the info appears (eg, 16 chars names on the right
  110.    of the window, rather than the left)
  111.  
  112.  * A new version of DragASprite (written from scratch) which works
  113.    better than Acorn's (which is a little buggy!)
  114.  
  115. Sprite/Tool sets
  116.  
  117. A similar discussion has gone on about why Acorn hasn't gone '3D'
  118. etc in RO3.10 - basically they have given the user the choice
  119. of going 3D if they want - you can replace all the sprites for
  120. standard file/app icons, and you can define your own window border
  121. set & load them in via *ToolSprites.
  122.  
  123. I would love to see a wave of sprite/tool set construction going on
  124. now more people have RO3.10, and then a vote for an 'official' 
  125. comp.sys.acorn set 8-) The comp.sys.acorn.advocacy group will be kept
  126. busy for months !! This set could be distributed along with all the
  127. 'failures' with the new filer patch/etc software.
  128.  
  129. I hope we can have some useful discussion about the above items - 
  130. I welcome all comments via email & news - but please post replies
  131. to comp.sys.acorn.tech, rather than comp.sys.acorn to allow those
  132. who can't read c.s.a (eg, SJ-Research people) Also I don't read 
  133. comp.sys.acorn.advocacy, so don't be surprised if I don't respond
  134. to anything posted there !
  135. --
  136. Nick Smith, Rm.226, Churchill College, Cambridge ! Email: nas20@uk.ac.cam.phx
  137. .sig quote wanted - must be under guarantee.     ! Tel: (0223) 465596
  138.