• Robert Sprowson's avatar
    Change to RMA shrinkage in *ICONSPRITES pre Medusa · 46989188
    Robert Sprowson authored
    On completing the sprite area merge the Wimp would try to minimise the RMA by -256MB (to account for the fact that during the merge the RMA is enlarged to hold both the existing sprites and the new ones to be merged, in the case of duplicates).
    However, this meant that the common construct
      IconSprites MySprites
      Run MyApp
    where MyApp wanted to use more than a teaspoon of RMA would fail due to the lack of free pool and that the RMA can't be resized when an application is running as a result.
    Now, the Wimp notes the free space in the RMA, does the -256MB shrink, then ensures there's still the same free space after the event (ie. overall it may have grown by the size of any extra sprites added during the command).
    Tested on RISC OS 3.10.
    Version 5.26. Tagged as 'Wimp-5_26'
VersionASM 1010 Bytes