diff src/video/SDL_blit_slow.c @ 5187:d976b67150c5

Restored SDL_BLENDMODE_MOD for MAME
author Sam Lantinga <slouken@libsdl.org>
date Fri, 04 Feb 2011 19:50:56 -0800
parents e743b9c3f6d6
children b530ef003506
line wrap: on
line diff
--- a/src/video/SDL_blit_slow.c	Fri Feb 04 19:18:08 2011 -0800
+++ b/src/video/SDL_blit_slow.c	Fri Feb 04 19:50:56 2011 -0800
@@ -117,7 +117,7 @@
                     srcB = (srcB * srcA) / 255;
                 }
             }
-            switch (flags & (SDL_COPY_BLEND | SDL_COPY_ADD)) {
+            switch (flags & (SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD)) {
             case 0:
                 dstR = srcR;
                 dstG = srcG;
@@ -140,6 +140,11 @@
                 if (dstB > 255)
                     dstB = 255;
                 break;
+            case SDL_COPY_MOD:
+                dstR = (srcR * dstR) / 255;
+                dstG = (srcG * dstG) / 255;
+                dstB = (srcB * dstB) / 255;
+                break;
             }
             if (dst_fmt->Amask) {
                 ASSEMBLE_RGBA(dst, dstbpp, dst_fmt, dstR, dstG, dstB, dstA);