!Help file for !Steg
~~~~~~~~~~~~~~~~~~~~

       Version: 1.02 (2nd Dec 2002)
        Author: Paul Vigay <paul@vigay.com>
Available from: http://www.vigay.com/shareware/


Purpose
~~~~~~~
To give people back their basic human right of privacy!


What is it?
~~~~~~~~~~~
!Steg incorporates a simple form of steganography for RISC OS
users. Steganography is the process by which data can be hidden
within an image file so that no one suspects that anything 
hidden is being passed on. 

This RISC OS version will allow you to encode any text (or data)
file into a RISC OS sprite file. This sprite will be automatically
generated and will look like a random backdrop tile.


Why did I write it?
~~~~~~~~~~~~~~~~~~~
Mainly in response to the UK government's contravention of the
Universal Declaration of Human Rights, which states:-

  "No one shall be subjected to arbitrary interference with his
  privacy, family, home or correspondence..."
            - Article 12, Universal Declaration of Human Rights
            
I say, "Death to RIP!".


How to use it
~~~~~~~~~~~~~
Load it onto the icon bar by double-clicking on its icon.
Once it's loaded you can simply drag the file you wish to hide onto
its iconbar. A window will open, providing various options;

	Pass phase: Here you can enter a simple password to further
	            encode the data.

	 Grid size: Set the size of the resulting sprite file.
		    Initially this will be determined by the size of
		    the file you drag to it, but you can extend the
		    size if you wish.

	 Step size: The offset between each character of the source
	            file in the resulting sprite.
	            
	   Palette: Change the subtle colours of the resulting sprite.
	   
	      Plot: Display the sprite being constructed in slow
	            motion (This may take a long time, depending upon
	            the size of the grid)
	            
	   Pad out: If on, the resulting sprite will have all vacant
	            gaps filled in with random characters.
	            
	    Invert: Invert the final image (ie. unused pixels are 
	            either left black (normal) or changed to white
	            (inverted)
		    
 	    Cancel: Abort the process and close the window, resetting
 	            all the values to their defaults.
	
	        OK: Encode the data and generate a new random sprite.

When you've encoded the data, click MENU and you will have a 'save'
option available. This leads to a standard RISC OS dialogue box. You
can now drag the newly created sprite file into a directory viewer in
the usual RISC OS fashion.

To decode a previously encoded sprite file, simply drag a sprite file
to the iconbar icon. If hidden data is detected within the sprite you
will be asked to enter the pass phrase and the original data will be
restored. A save dialogue will allow you to save the original file in
the usual way.

The original file is exclusive ORed by a simple algorithm in order to
hide the data to binary examination, so there should be no provable
evidence that any data file is hidden within the sprite file. :-)


GIF conversion
~~~~~~~~~~~~~~
If you want to upload your encoded file to a web page, perhaps as a
tiled backdrop or something, you can convert the sprite to a GIF.
However, you have to follow a few guidelines for this to work correctly.
Firstly, the sprites created by !Steg do NOT have a palette, therefore
you can't use any conversion that will introduce palette information.

The best application I've found which works well with !Steg is John
Kortink's !Translatr (version 8.10) which is available to download from
http://web.inter.nl.net/users/J.Kortink/

To convert a sprite to a GIF
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Load !Translatr and drag your sprite file onto it. This will display the
sprite inside a Translatr window. Click MENU over this window and move
right from the 'Save' menu option.
Click MENU on the 'format' menu icon and select GIF format. Now ensure
that the colours option is set to "8 bit 8:8:8 palette" which should be 
the default - if not, select it from the relevant menu.
Now, enter a suitable filename for your GIF file and drag the icon to a
suitable directory window.

To convert a GIF image back to a sprite
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Again, drag the GIF image onto !Translatr. It will open it's usual
viewer window.
Click MENU on the 'format' menu icon and select Sprite format. 
You now need to make sure that you save using a 'fixed palette'. Click on
the colours menu icon and select "8 bit 4:4:4 fixed palette".
Now enter a suitable filename for your Sprite file and drag the icon to a
suitable directory window.
This should save the GIF image back into a format that will again be
recognised by !Steg.


Acknowledgements
~~~~~~~~~~~~~~~~
Many thanks are due to Jenny Queen for designing the 'Stegosaurus' icon. Her
artistic skills are infinitely better than my own so I'm happy to include her 
design.
Thanks also to her father Dr.Nat Queen for being a beta-tester and offering
some valuable comments. For more information on RISC OS cryptography, visit
his crypto homepage at http://web.bham.ac.uk/N.M.Queen/pgp/acorn.html


Comments
~~~~~~~~
If you find any bugs, or have any ideas for future versions or
enhancements, please feel free to contact me.


Contacting me
~~~~~~~~~~~~~
You can contact me in several ways:-
1. Email me at paul@vigay.com
2. Go my Acorn Shareware page on the internet at
   http://www.vigay.com/shareware/
3. Write to me at 104 Manners Road, Southsea, Hampshire, PO4 0BG, England


History
~~~~~~~
Changes made between versions:

v1.02  (2nd Dec 2002)    a) Re-compiled for 26/32-bit neutral code.

v1.01  (20th Jun 2000)
                         a) Fixed minor bug in encoding routine.
                         b) Added 'Pale blue', 'Pale Green' and 'Grey'
                            palettes.
                         c) Made default palette 'Grey'.
                         d) Closed any previous windows when a new file is
                            dragged to !Steg icon.
                         e) Changed template action to encode image when you
                            press <return> in a parameter icon (cursor keys
                            still move around)
                         f) Made step size automatically calculated when
                            moving between grid icons (step icon still
                            writable though)
                         g) Made parameter icons only accept digits 0-9.
                            
v1.00  (18th Jun 2000)   a) First release version, pretty much all working
                            and debugged, albeit the first version.

2000 Paul Vigay
