• Jeffrey Lee's avatar
    Fix logic which decides whether to plot sprites using the Kernel or... · b5280514
    Jeffrey Lee authored
    Fix logic which decides whether to plot sprites using the Kernel or SpriteExtend to take into account the new sprite modes
    
    Detail:
      s/Wimp01 - Add NColour mode variable to the list of variables cached for the current screen mode. Add modeflags & ncolour to the sprite & tool sprite variables.
      s/Wimp04, s/Wimp10 - Update cachespritedata and cachetoolspritedata to look at the modeflags, ncolour and alpha mask flag when deciding if sprite_needsfactors should be set or not (i.e. whether the code ultimately uses OS_SpriteOp 52 or 34). This should allow the Wimp to correctly detect if a sprite can safely be rendered by the Kernel or not (except for double pixel vs. non-double pixel - but presumably nobody's using double pixel mode sprites for icons/tool sprites, otherwise it would be fixed by now?)
      s/Wimp04 - Add an extra safety check to icon text rendering after a crash was seen when calling Wimp_PlotIcon outside of a redraw loop
    Admin:
      Tested on BB-xM
      Fixes problem reported on forums with 32bpp, alpha-masked sm!Netsurf icon vanishing from filer when viewed in 32bpp modes
      https://www.riscosopen.org/forum/forums/3/topics/309?page=4#posts-25995
    
    
    Version 5.33. Tagged as 'Wimp-5_33'
    b5280514
VersionNum 803 Bytes