
                                 SpriteFix
                                ===========

Introduction
------------

Many screen modes for the Archimedes are available as third-party modules,
in addition to those provided as standard in ROM.  If a sprite in a sprite
or drawing file has been created in a screen mode which is not available on
the system trying to display it, various undesirable effects can occur and
the result will not generally be what was intended.

For sprites to be portable between different systems, they should ideally be
in a screen mode which is always available (i.e. one of the standard
RiscOS2 modes).  However, sprites are often created by grabbing them from
the screen, which means that they take on the screen mode that was in use at
the time.  If this is an unusual mode, then if you pass the sprite on to
anyone who does not have that screen mode available then the sprite cannot
be displayed.

SpriteFix fixes this problem by automatically changing the screen mode
stored with a sprite into a mode that is available on all systems.  By
selecting a mode which is compatible with the original, the size and
appearance of the sprite does not change.


Running the application
-----------------------

Run SpriteFix in the usual way by double-clicking on its icon.  It will
appear on the icon bar.

To convert a file, drag it to the icon bar icon.  It will be scanned for
sprites, and any which have a mode conversion defined will be substituted
with a new screen mode.  When this is complete, a window with a standard
save box will pop up, allowing the new file to be saved.

The following types of files can be loaded and converted:

       Standard Draw or sprite files
       Draw files saved from DrawPlus
       Vector files, saved from that application
       Library files saved from DrawPlus or Vector
       Compressed Draw files, saved from ChameleonII or some other 4Mation
        applications
       Poster files, saved from that application.

The file is always saved back in the same format as it was loaded in.

The following types of files cannot be loaded or converted:

       Impression documents.  Don't blame me, or contact me suggesting that
        I should include support for this format, as it would be a lot of
        hard work and I don't fancy doing all that simply because Computer
        Concepts' programmers were too lazy to put the document in a single
        file like every other decent application...


Setting up conversions
----------------------

By choosing the "Setup" option from the icon bar menu, a window will open
showing all of the mode conversions currently defined.  This information is
saved within the application directory, and is loaded when SpriteFix starts
up.

Each line in this window lists the original screen mode, the bits-per-pixel
and scaling factors for that mode, and the mode that it will be translated
to (which should have the same bits-per-pixel and scaling factors).  This is
the only information that is necessary to identify a suitable new mode
(other mode parameters, such as screen size and VIDC setup, are not relevant
to sprites).

Entries in the list can be selected by clicking Select or Adjust on them, in
the standard RiscOS way.  The menu operations will act on the selected
entries.

To add a new mode is easy if it is available on the system.  Simply pop up
the menu and enter the mode number in the "New entry" entry box.  The mode
and its parameters will be added to the list, and a suitable standard mode
translation added in the last column (this will be blank if no standard mode
is suitable).

If the new mode is not available on your system, then you will have to find
out its parameters in some other way.  When you have these available, then
create the mode as before and then set the bits-per-pixel and scaling
factors using the menu options (described later).  When the parameters have
been set, a mode translation will be added as before.


Setup menu
----------

The following options appear on the Setup window menu:

Mode or Selection

   This item depends on how many entries are selected in the window.  If
   none are selected it will read "Mode''" and be shaded.  If one entry is
   selected it will read "Mode'number'" and the submenu can be used.  If
   more than one entry is selected it will read "Selection" and only some of
   the submenu options can be used.

   Bits per pixel

      This sets the number of bits-per-pixel for the selected mode, which in
      turn determines how many colours can be displayed.  The standard four
      options are available.

   Pixel scaling

      This sets the pixel scaling factor for the selected mode, which
      determines how the true size of a sprite is calculated.  There are two
      numbers, one for horizontal and one for vertical scaling, which are
      the numbers of OS units per sprite pixel.  The three most common
      settings (2x2, e.g. multisync modes such as 20;  2x4, e.g. normal "TV"
      modes such as 12;  and 4x4, e.g. "coarse" modes such as 1) are
      available on this menu;  unusual settings can be entered in the box
      leading off the "Specify" option.

   Like mode

      This sets the mode that the old, unknown mode will be translated to. 
      Normally, it will not be necessary to enter this explicitly, as it
      will be determined automatically from the bits-per-pixel and scaling
      factors.

   Delete

      Deletes the selected entries from the setup list.

Select all

   Selects all of the entries in the setup list.

Clear select

   Clears the current selection.

New entry

   Creates a new entry.  Enter the mode number in the entry box leading off
   this option.

Auto entry

   Automatically add entries for all of the screen mode currently available
   on the system.  An entry will be added for each mode available which does
   not already have an entry, and which does not translate to itself.

Save setup

   Save the setup list within the application directory;  it will be loaded
   again when the application is next run.


The boring bits
---------------

SpriteFix copyright  Jonathan Marten 1993.  Certain parts of the code,
namely the compressed file loading/saving routines, were written by
PaulLeBeau and are copyright 4Mation1992-1993.

The application and documentation is "FreeWare" (not PD).  It may be copied
and freely distributed by anyone, on any medium (including bulletin boards
and PD libraries), as long as no files within the application directory are
altered (except for adding details of new screen modes to the setup data). 
It may not be sold commercially, either alone or as part of another package
or application, without permission from the author.  It may be used by any
person for its intended purpose, or for any other purpose that it may turn
out to be useful for.

Bulletin boards, PD libraries and magazines are requested to contact the
author before distributing the application, to ensure that they have the
latest version.

SpriteFix runs under RiscOS3 only.  It was developed, and has been tested,
under RiscOS310;  it is believed that it will work under other versions.

The application is supplied in good faith, but with no guarantee.  Neither
the author, nor any provider or distributor of the software, can be held
responsible for any damage, loss of data, damage to files, wasted time or
any other adverse effects caused by using the software, or its failure to
perform as expected.


Please report any praise, bugs, shortcomings or useful suggestions to me:

Jonathan Marten                Post:         11 Carmarthen Close
                                             Farnborough
                                             Hampshire
                                             GU14 8TJ

Version 100                   E-mail:       jmarten@cix.compulink.co.uk
August 1993                    Arcade:       081-654-2212 user 387
