DrawFix32  1.00 (05 Oct 2019)  nemo 2019
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This module provides a fix for a 32bit issue with the Draw module API prior
to version 1.17.


Draw_ProcessPath and 32bit
~~~~~~~~~~~~~~~~~~~~~~~~~~
R7 takes a flag in b31 in what is otherwise an address. This is not compatible
with 32bit OSes, or even with high Dynamic Areas on 26bit OSes.

The new 32bit-safe API for this call moves this flag to R1 b25, but only when
R1 b26 ("new API") is set.

DrawFix32 is a compatibility module that provides the new API for older Draw
modules. If it detects the Draw module is version 1.17 or later it quits,
otherwise it performs the following compatibility actions if R1 b26 is set:

   Moves R1 b26 to R7 b0
   Swaps R7 b0 with b31
   Clears R1 b25 & b26

This allows the new API to be used, and returns an "Invalid address" error if
an attempt is made to return the bounding box to an address with b31 set, which
is not possible with the old API.

nemo