Wimp_ReadSysInfo
================

Wimp_ReadSysInfo provides a generic means of reading different details from
the Window Manager about its capabilities, configuration and operation.
The SWI has been extended in most versions of the module to cover the new
features and allow them to be used in a more robust and reliable manner.

With Select 3, the list has again been extended to cover new features which
have been introduced. For completeness, the full list of reasons that
this SWI may take are (see elsewhere for details of their use) :

      0   Read number of active tasks
      1   Read current Wimp mode
      2   Read suffix to append to filenames
      3   Read status of commandwindow
      4   Current write direction
      5   Current task handle
      6   Reserved for internal use
      7   Wimp version number
      8   Outline font being used as system font
      9   Toolsprites sprite area
     10   Reserved for internal use
     11   Application space size
     12   Reserved for internal use
     13   Reserved for internal use
     14   Reserved for internal use
     15   Reserved for internal use
     16   Read user/ROM sprite pools
     17   Default autoscroll pause delay
     18   Reserved for internal use
     19   Read low/high/priority sprite pools
     20   Read special highlighting colours
     21   Reserved for internal use

Any reason which is not understood by the WindowManager will return an
error. The new Wimp_ReadSysInfo calls are documented here :

Wimp_ReadSysInfo 19
===================
=> R0 = 19
<= R0 = pointer to priority sprite pool
   R1 = pointer to high sprite pool
   R2 = pointer to low sprite pool

This SWI is used to read the sprite pools being used to locate sprites.
The sprites are searched in the order 'priority', 'high', 'low' before
the sprite is declared not found. The 'priority' sprite pool can be added
to with the '*IconSprites -priority' command. The 'high' sprite
pool is the pool to be looked at first. If 'Protect ROM sprites' is
enabled, the 'high' pool is the ROM pool, and the 'low' pool is the
standard RAM pool. If 'Protect ROM sprites' disabled, the 'high' pool is
the RAM pool, and the 'low' pool is the ROM pool.


Wimp_ReadSysInfo 20
===================
=> R0 = 20
<= R0 = special highlighting background colour, or -1 if disabled
   R1 = special highlighting foreground colour if R0 = -1

This SWI is used to read the 'special' highlighting colours defined with
*WimpVisualFlags. The special highlighting colours are used when an icon
uses the 'standard' colours (background of grey 1, and foreground of black)
and is selected. This can make selections easier to see for the user.
Where applications render icons themselves (without the WindowManager's
interaction) it may be necessary to read these settings to ensure that the
application follows the users configured choices.
