*****************************************************************************
**  Pinboard Rom Patch  (Version 0.70 29th July 1997)  by Matthew Bullock  **
*****************************************************************************

Pinboard rom patch is a patch for the pinboard.

The following new features are implented:

Fixes bug when dragging a group of selected icons with adjust.
      Previously, if you dragged a group of selected icons with adjust, it
      would drag all but the icon dragged on.

Allows dragging of iconised window icons with adjust.
      Previously only select worked and adjust was just ignored.

Fixes always claiming window closed messages.
      Whenever a window closes, the window manager broadcasts a message to tell
      applications. It is only used by pinboard like applications, so the
      pinboard always claimed it. But some patches need to use it.

Adds auto saving of pinboard state on shutdown.
      If the system variable SavePinboard$State contains a valid path, the
      current state of the pinboard is saved to that file when the computer is
      shut down.

Adds support for JPEG backdrops.
      JPEG files can now be used as backdrops and are rendered in real time.

Fixes bug in detecting mode change.
      Previously the pinboard would sometimes fail to redraw the screen when
      the mode changed, that could cause a scaled backdrop to stop filling the
      screen.

Fixes bug in spriteextend.
      Previously spriteextend would fail with an address exception error if you
      tried to render a JPEG while the current wimpslot was less than 24k.


Installation:
-------------

Copy the directory PinRomPtch into the !Boot.Utils directory on your
machine.
Then if you have RiscOS 3.7 copy the !PinPatch obey file into the
!Boot.Choices.Boot.PreDesk directory. For 3.6 it must go into
!Boot.Choices.Boot.Tasks .

Finally reset the machine and it should all be installed.

In the unlikely event that something goes wrong, you may find that your
machine refuses to start, getting as far as the startup screen then crashing.
If this happens, reset the machine holding down shift (press control + shift
+ break). This will start the machine without running the boot sequence. You
can then go into !Boot and remove the files you have just added, restart the
machine and try again.

It is possible to test it first to see the effect. To do so just double click
on !PinPatch and it will be temporarily installed.


Frequently Asked Questions
--------------------------

1) I have found a JPEG that doesn't appear to work as a backdrop, what should I    do?
      
   Firstly, you should try loading it into draw. If it doesn't work there, then
   it's format is incompatible with the JPEG rendering module. Load it into
   ChangeFSI and save it out again as a JPEG and it will be converted to the
   correct format.

2) I am trying to use a tiled JPEG backdrop, but the JPEG is rendered much
   smaller than it should be, why?
      
   This is caused by an incorrect header in the JPEG. I have found quite a
   large number of JPEG files that have incorrect DPI settings. For the moment,
   the only solution is to pass the JPEG through ChangeFSI, that will cure the
   problem. A future version of the patch will probably fix this.



Removing:
---------

The patch can be removed at any time by pressing F12 and typing
RMKill PinboardROMPatch

NOTE: before RMKilling the patch, you must remove the backdrop if it is a JPEG.
failure to do so will cause the machine to crash.

To permanently remove it you should delete the !PinPatch obey file and the
PinRomPtch directory that you installed in your boot sequence.


Auto state saving
-----------------

To automatically same the pinboard state at shutdown, set the variable
<SavePinboard$File> to point to a valid file. The state will then be saved to
that file on shutdown.

For example:

Set SavePinboard$File Boot:Choices.Boot.Tasks.!PinBoard

will make the state be saved on shutdown and reloaded automatically on startup.


NOTES:
------

1) If you are using one of Acorns rom patches then that must be run before my
   patch. If it is installed according to the standard instructions then
   there should be no problem.
   
2) This patch will only work on RiscOS 3.7 and 3.6. A RiscOS 3.5 version is
being worked on.


Version History
---------------

Version 0.60 (28th June 1997)
      
      First public release.

Version 0.61 (28th June 1997)
      
      Added SpriteExtend fix.

Version 0.70 (29th July 1997)
      
      Changed to not use error diffused dithering, for faster redraw in low
      colour modes.
      
      Added RiscOS 3.6 compatability.
      
      Fixed error in OS version detection code, no longer gives an "oflaofla"
      error.


Copyright:
----------

Pinboard Rom Patch is copyright Matthew Bullock July 1997.

It has been released as freeware, therefore it may be freely distributed by
anyone, as long as no charge is made for it except to cover the cost of media
and copying and all files are included. It may not be included on a magazine
cover disc or a CDRom without prior written permission from me.
Anyone wishing to distribute it on a large scale e.g. a PD library should
contact me first so I can keep them updated with new versions.


Thanks To:
----------

James Porrit and Marc Warne - for beta testing.

And to everyone else who has reported bugs or given suggestions


Other Rom Patches:
------------------

I hope for this to be one of several rom patches I will produce. Now I have written
one it is relatively easy to adapt it to other purposes. So, if anyone has another
patch that would benefit from converting into a rom patch, I would like to hear
from you.


Contacting me:
--------------

email: matthew.bullock@dial.pipex.com
web site: http://dialspace.dial.pipex.com/matthew.bullock/

snail mail: Matthew Bullock
	    46 Ibbett Close
	    Kempston
	    Bedford
	    MK43 9BU
