Commit c5074988 authored by Jeffrey Lee's avatar Jeffrey Lee
Browse files

Improvement to previous commit

Detail:
  s/Wimp04, s/Wimp10 - cachespritedata & cachetoolspritedata now force SpriteExtend to be used if the sprite has an alpha channel, to ensure plotting an alpha'd sprite into an alpha'd framebuffer performs blending instead of potentially skipping it (and copying the sprite alpha channel to the screen alpha channel)
Admin:
  Builds, but untested


Version 5.33. Retagged as 'Wimp-5_33'
parent b5280514
...@@ -3386,6 +3386,7 @@ cachespritedata ...@@ -3386,6 +3386,7 @@ cachespritedata
ANDEQ R1,R1,LR ANDEQ R1,R1,LR
TEQEQ R1,R2 ; any colour space conversion or alpha blending needed? TEQEQ R1,R2 ; any colour space conversion or alpha blending needed?
LDREQ R1,sprite_lastmode LDREQ R1,sprite_lastmode
TSTEQ R2,#ModeFlag_DataFormatSub_Alpha ; does it have an alpha channel?
TSTEQ R1,#&80000000 ; does it have an alpha mask? TSTEQ R1,#&80000000 ; does it have an alpha mask?
LDR R1,sprite_log2bpp LDR R1,sprite_log2bpp
TEQEQ R1,R6 ; bpp differs? TEQEQ R1,R6 ; bpp differs?
......
...@@ -3290,6 +3290,7 @@ cachetoolspritedata ...@@ -3290,6 +3290,7 @@ cachetoolspritedata
ANDEQ R1,R1,LR ANDEQ R1,R1,LR
TEQEQ R1,R2 ; any colour space conversion or alpha blending needed? TEQEQ R1,R2 ; any colour space conversion or alpha blending needed?
LDREQ R1,tsprite_lastmode LDREQ R1,tsprite_lastmode
TSTEQ R2,#ModeFlag_DataFormatSub_Alpha ; does it have an alpha channel?
TSTEQ R1,#&80000000 ; does it have an alpha mask? TSTEQ R1,#&80000000 ; does it have an alpha mask?
LDR R1,tsprite_log2bpp LDR R1,tsprite_log2bpp
TEQEQ R1,R6 ; bpp differs? TEQEQ R1,R6 ; bpp differs?
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment