diff packages/services/gfx/mw/current/src/engine/devfont.caching.c @ 1189:e1afd37f2f1d

Support BGR233 mode
author gthomas
date Tue, 02 Sep 2003 02:42:36 +0000
parents e0c0827131d1
children
line wrap: on
line diff
--- a/packages/services/gfx/mw/current/src/engine/devfont.caching.c
+++ b/packages/services/gfx/mw/current/src/engine/devfont.caching.c
@@ -1080,6 +1080,16 @@ alphablend(PSD psd, OUTPIXELVAL *out, MW
 		    *out++ = (r << 5) | (g << 2) | b;
 		    break;
 
+	        case MWPF_TRUECOLOR233:
+		    d = BITS(dst, 0, 0x07);
+		    r = (unsigned char)(((BITS(src, 0, 0x07) - d)*a)>>8) + d;
+		    d = BITS(dst, 3, 0x07);
+		    g = (unsigned char)(((BITS(src, 3, 0x07) - d)*a)>>8) + d;
+		    d = BITS(dst, 6, 0x03);
+		    b = (unsigned char)(((BITS(src, 6, 0x03) - d)*a)>>8) + d;
+		    *out++ = (r << 0) | (g << 3) | (b << 6);
+		    break;
+
 	        case MWPF_PALETTE:
 		    /* reverse lookup palette entry for blend ;-)*/
 		    palsrc = GETPALENTRY(gr_palette, src);