Making the API simpler, the blend modes are "none, blend, add" and are supported by all renderers.
authorSam Lantinga <slouken@libsdl.org>
Mon, 31 Jan 2011 23:23:57 -0800
changeset 5140e743b9c3f6d6
parent 5139 57851a238c8f
child 5141 31e7f523ab3d
Making the API simpler, the blend modes are "none, blend, add" and are supported by all renderers.
include/SDL_blendmode.h
include/SDL_video.h
src/video/SDL_RLEaccel.c
src/video/SDL_blendfillrect.c
src/video/SDL_blendline.c
src/video/SDL_blendpoint.c
src/video/SDL_blit.c
src/video/SDL_blit.h
src/video/SDL_blit_auto.c
src/video/SDL_blit_auto.h
src/video/SDL_blit_slow.c
src/video/SDL_draw.h
src/video/SDL_renderer_gl.c
src/video/SDL_renderer_gles.c
src/video/SDL_renderer_sw.c
src/video/SDL_surface.c
src/video/SDL_video.c
src/video/directfb/SDL_DirectFB_render.c
src/video/dummy/SDL_nullrender.c
src/video/nds/SDL_ndsrender.c
src/video/photon/SDL_photon_render.c
src/video/qnxgf/SDL_gf_render.c
src/video/sdlgenblit.pl
src/video/windows/SDL_d3drender.c
test/automated/common/img_blitblend.c
test/automated/render/render.c
test/automated/surface/surface.c
test/common.c
test/testdraw2.c
test/testintersections.c
test/testsprite2.c
     1.1 --- a/include/SDL_blendmode.h	Mon Jan 31 22:53:45 2011 -0800
     1.2 +++ b/include/SDL_blendmode.h	Mon Jan 31 23:23:57 2011 -0800
     1.3 @@ -43,12 +43,8 @@
     1.4  typedef enum
     1.5  {
     1.6      SDL_BLENDMODE_NONE = 0x00000000,     /**< No blending */
     1.7 -    SDL_BLENDMODE_MASK = 0x00000001,     /**< dst = A ? src : dst 
     1.8 -                                              (alpha is mask) */
     1.9 -    
    1.10 -    SDL_BLENDMODE_BLEND = 0x00000002,    /**< dst = (src * A) + (dst * (1-A)) */
    1.11 -    SDL_BLENDMODE_ADD = 0x00000004,      /**< dst = (src * A) + dst */
    1.12 -    SDL_BLENDMODE_MOD = 0x00000008       /**< dst = src * dst */
    1.13 +    SDL_BLENDMODE_BLEND = 0x00000001,    /**< dst = (src * A) + (dst * (1-A)) */
    1.14 +    SDL_BLENDMODE_ADD = 0x00000002,      /**< dst = (src * A) + dst */
    1.15  } SDL_BlendMode;
    1.16  
    1.17  /* Ends C function definitions when using C++ */
     2.1 --- a/include/SDL_video.h	Mon Jan 31 22:53:45 2011 -0800
     2.2 +++ b/include/SDL_video.h	Mon Jan 31 23:23:57 2011 -0800
     2.3 @@ -187,7 +187,6 @@
     2.4      const char *name;           /**< The name of the renderer */
     2.5      Uint32 flags;               /**< Supported ::SDL_RendererFlags */
     2.6      Uint32 mod_modes;           /**< A mask of supported channel modulation */
     2.7 -    Uint32 blend_modes;         /**< A mask of supported blend modes */
     2.8      Uint32 num_texture_formats; /**< The number of available texture formats */
     2.9      Uint32 texture_formats[50]; /**< The available texture formats */
    2.10      int max_texture_width;      /**< The maximimum texture width */
     3.1 --- a/src/video/SDL_RLEaccel.c	Mon Jan 31 22:53:45 2011 -0800
     3.2 +++ b/src/video/SDL_RLEaccel.c	Mon Jan 31 23:23:57 2011 -0800
     3.3 @@ -1423,7 +1423,7 @@
     3.4      /* Pass on combinations not supported */
     3.5      if ((flags & SDL_COPY_MODULATE_COLOR) ||
     3.6          ((flags & SDL_COPY_MODULATE_ALPHA) && surface->format->Amask) ||
     3.7 -        (flags & (SDL_COPY_ADD | SDL_COPY_MOD)) ||
     3.8 +        (flags & SDL_COPY_ADD) ||
     3.9          (flags & SDL_COPY_NEAREST)) {
    3.10          return -1;
    3.11      }
     4.1 --- a/src/video/SDL_blendfillrect.c	Mon Jan 31 22:53:45 2011 -0800
     4.2 +++ b/src/video/SDL_blendfillrect.c	Mon Jan 31 23:23:57 2011 -0800
     4.3 @@ -37,9 +37,6 @@
     4.4      case SDL_BLENDMODE_ADD:
     4.5          FILLRECT(Uint16, DRAW_SETPIXEL_ADD_RGB555);
     4.6          break;
     4.7 -    case SDL_BLENDMODE_MOD:
     4.8 -        FILLRECT(Uint16, DRAW_SETPIXEL_MOD_RGB555);
     4.9 -        break;
    4.10      default:
    4.11          FILLRECT(Uint16, DRAW_SETPIXEL_RGB555);
    4.12          break;
    4.13 @@ -60,9 +57,6 @@
    4.14      case SDL_BLENDMODE_ADD:
    4.15          FILLRECT(Uint16, DRAW_SETPIXEL_ADD_RGB565);
    4.16          break;
    4.17 -    case SDL_BLENDMODE_MOD:
    4.18 -        FILLRECT(Uint16, DRAW_SETPIXEL_MOD_RGB565);
    4.19 -        break;
    4.20      default:
    4.21          FILLRECT(Uint16, DRAW_SETPIXEL_RGB565);
    4.22          break;
    4.23 @@ -83,9 +77,6 @@
    4.24      case SDL_BLENDMODE_ADD:
    4.25          FILLRECT(Uint32, DRAW_SETPIXEL_ADD_RGB888);
    4.26          break;
    4.27 -    case SDL_BLENDMODE_MOD:
    4.28 -        FILLRECT(Uint32, DRAW_SETPIXEL_MOD_RGB888);
    4.29 -        break;
    4.30      default:
    4.31          FILLRECT(Uint32, DRAW_SETPIXEL_RGB888);
    4.32          break;
    4.33 @@ -106,9 +97,6 @@
    4.34      case SDL_BLENDMODE_ADD:
    4.35          FILLRECT(Uint32, DRAW_SETPIXEL_ADD_ARGB8888);
    4.36          break;
    4.37 -    case SDL_BLENDMODE_MOD:
    4.38 -        FILLRECT(Uint32, DRAW_SETPIXEL_MOD_ARGB8888);
    4.39 -        break;
    4.40      default:
    4.41          FILLRECT(Uint32, DRAW_SETPIXEL_ARGB8888);
    4.42          break;
    4.43 @@ -132,9 +120,6 @@
    4.44          case SDL_BLENDMODE_ADD:
    4.45              FILLRECT(Uint16, DRAW_SETPIXEL_ADD_RGB);
    4.46              break;
    4.47 -        case SDL_BLENDMODE_MOD:
    4.48 -            FILLRECT(Uint16, DRAW_SETPIXEL_MOD_RGB);
    4.49 -            break;
    4.50          default:
    4.51              FILLRECT(Uint16, DRAW_SETPIXEL_RGB);
    4.52              break;
    4.53 @@ -148,9 +133,6 @@
    4.54          case SDL_BLENDMODE_ADD:
    4.55              FILLRECT(Uint32, DRAW_SETPIXEL_ADD_RGB);
    4.56              break;
    4.57 -        case SDL_BLENDMODE_MOD:
    4.58 -            FILLRECT(Uint32, DRAW_SETPIXEL_MOD_RGB);
    4.59 -            break;
    4.60          default:
    4.61              FILLRECT(Uint32, DRAW_SETPIXEL_RGB);
    4.62              break;
    4.63 @@ -178,9 +160,6 @@
    4.64          case SDL_BLENDMODE_ADD:
    4.65              FILLRECT(Uint32, DRAW_SETPIXEL_ADD_RGBA);
    4.66              break;
    4.67 -        case SDL_BLENDMODE_MOD:
    4.68 -            FILLRECT(Uint32, DRAW_SETPIXEL_MOD_RGBA);
    4.69 -            break;
    4.70          default:
    4.71              FILLRECT(Uint32, DRAW_SETPIXEL_RGBA);
    4.72              break;
     5.1 --- a/src/video/SDL_blendline.c	Mon Jan 31 22:53:45 2011 -0800
     5.2 +++ b/src/video/SDL_blendline.c	Mon Jan 31 23:23:57 2011 -0800
     5.3 @@ -53,9 +53,6 @@
     5.4          case SDL_BLENDMODE_ADD:
     5.5              HLINE(Uint16, DRAW_SETPIXEL_ADD_RGB, draw_end);
     5.6              break;
     5.7 -        case SDL_BLENDMODE_MOD:
     5.8 -            HLINE(Uint16, DRAW_SETPIXEL_MOD_RGB, draw_end);
     5.9 -            break;
    5.10          default:
    5.11              HLINE(Uint16, DRAW_SETPIXEL_RGB, draw_end);
    5.12              break;
    5.13 @@ -68,9 +65,6 @@
    5.14          case SDL_BLENDMODE_ADD:
    5.15              VLINE(Uint16, DRAW_SETPIXEL_ADD_RGB, draw_end);
    5.16              break;
    5.17 -        case SDL_BLENDMODE_MOD:
    5.18 -            VLINE(Uint16, DRAW_SETPIXEL_MOD_RGB, draw_end);
    5.19 -            break;
    5.20          default:
    5.21              VLINE(Uint16, DRAW_SETPIXEL_RGB, draw_end);
    5.22              break;
    5.23 @@ -83,9 +77,6 @@
    5.24          case SDL_BLENDMODE_ADD:
    5.25              DLINE(Uint16, DRAW_SETPIXEL_ADD_RGB, draw_end);
    5.26              break;
    5.27 -        case SDL_BLENDMODE_MOD:
    5.28 -            DLINE(Uint16, DRAW_SETPIXEL_MOD_RGB, draw_end);
    5.29 -            break;
    5.30          default:
    5.31              DLINE(Uint16, DRAW_SETPIXEL_RGB, draw_end);
    5.32              break;
    5.33 @@ -102,11 +93,6 @@
    5.34                     DRAW_SETPIXELXY2_ADD_RGB, DRAW_SETPIXELXY2_ADD_RGB,
    5.35                     draw_end);
    5.36              break;
    5.37 -        case SDL_BLENDMODE_MOD:
    5.38 -            AALINE(x1, y1, x2, y2,
    5.39 -                   DRAW_SETPIXELXY2_MOD_RGB, DRAW_SETPIXELXY2_MOD_RGB,
    5.40 -                   draw_end);
    5.41 -            break;
    5.42          default:
    5.43              AALINE(x1, y1, x2, y2,
    5.44                     DRAW_SETPIXELXY2_RGB, DRAW_SETPIXELXY2_BLEND_RGB,
    5.45 @@ -145,9 +131,6 @@
    5.46          case SDL_BLENDMODE_ADD:
    5.47              HLINE(Uint16, DRAW_SETPIXEL_ADD_RGB555, draw_end);
    5.48              break;
    5.49 -        case SDL_BLENDMODE_MOD:
    5.50 -            HLINE(Uint16, DRAW_SETPIXEL_MOD_RGB555, draw_end);
    5.51 -            break;
    5.52          default:
    5.53              HLINE(Uint16, DRAW_SETPIXEL_RGB555, draw_end);
    5.54              break;
    5.55 @@ -160,9 +143,6 @@
    5.56          case SDL_BLENDMODE_ADD:
    5.57              VLINE(Uint16, DRAW_SETPIXEL_ADD_RGB555, draw_end);
    5.58              break;
    5.59 -        case SDL_BLENDMODE_MOD:
    5.60 -            VLINE(Uint16, DRAW_SETPIXEL_MOD_RGB555, draw_end);
    5.61 -            break;
    5.62          default:
    5.63              VLINE(Uint16, DRAW_SETPIXEL_RGB555, draw_end);
    5.64              break;
    5.65 @@ -175,9 +155,6 @@
    5.66          case SDL_BLENDMODE_ADD:
    5.67              DLINE(Uint16, DRAW_SETPIXEL_ADD_RGB555, draw_end);
    5.68              break;
    5.69 -        case SDL_BLENDMODE_MOD:
    5.70 -            DLINE(Uint16, DRAW_SETPIXEL_MOD_RGB555, draw_end);
    5.71 -            break;
    5.72          default:
    5.73              DLINE(Uint16, DRAW_SETPIXEL_RGB555, draw_end);
    5.74              break;
    5.75 @@ -194,11 +171,6 @@
    5.76                     DRAW_SETPIXELXY_ADD_RGB555, DRAW_SETPIXELXY_ADD_RGB555,
    5.77                     draw_end);
    5.78              break;
    5.79 -        case SDL_BLENDMODE_MOD:
    5.80 -            AALINE(x1, y1, x2, y2,
    5.81 -                   DRAW_SETPIXELXY_MOD_RGB555, DRAW_SETPIXELXY_MOD_RGB555,
    5.82 -                   draw_end);
    5.83 -            break;
    5.84          default:
    5.85              AALINE(x1, y1, x2, y2,
    5.86                     DRAW_SETPIXELXY_RGB555, DRAW_SETPIXELXY_BLEND_RGB555,
    5.87 @@ -237,9 +209,6 @@
    5.88          case SDL_BLENDMODE_ADD:
    5.89              HLINE(Uint16, DRAW_SETPIXEL_ADD_RGB565, draw_end);
    5.90              break;
    5.91 -        case SDL_BLENDMODE_MOD:
    5.92 -            HLINE(Uint16, DRAW_SETPIXEL_MOD_RGB565, draw_end);
    5.93 -            break;
    5.94          default:
    5.95              HLINE(Uint16, DRAW_SETPIXEL_RGB565, draw_end);
    5.96              break;
    5.97 @@ -252,9 +221,6 @@
    5.98          case SDL_BLENDMODE_ADD:
    5.99              VLINE(Uint16, DRAW_SETPIXEL_ADD_RGB565, draw_end);
   5.100              break;
   5.101 -        case SDL_BLENDMODE_MOD:
   5.102 -            VLINE(Uint16, DRAW_SETPIXEL_MOD_RGB565, draw_end);
   5.103 -            break;
   5.104          default:
   5.105              VLINE(Uint16, DRAW_SETPIXEL_RGB565, draw_end);
   5.106              break;
   5.107 @@ -267,9 +233,6 @@
   5.108          case SDL_BLENDMODE_ADD:
   5.109              DLINE(Uint16, DRAW_SETPIXEL_ADD_RGB565, draw_end);
   5.110              break;
   5.111 -        case SDL_BLENDMODE_MOD:
   5.112 -            DLINE(Uint16, DRAW_SETPIXEL_MOD_RGB565, draw_end);
   5.113 -            break;
   5.114          default:
   5.115              DLINE(Uint16, DRAW_SETPIXEL_RGB565, draw_end);
   5.116              break;
   5.117 @@ -286,11 +249,6 @@
   5.118                     DRAW_SETPIXELXY_ADD_RGB565, DRAW_SETPIXELXY_ADD_RGB565,
   5.119                     draw_end);
   5.120              break;
   5.121 -        case SDL_BLENDMODE_MOD:
   5.122 -            AALINE(x1, y1, x2, y2,
   5.123 -                   DRAW_SETPIXELXY_MOD_RGB565, DRAW_SETPIXELXY_MOD_RGB565,
   5.124 -                   draw_end);
   5.125 -            break;
   5.126          default:
   5.127              AALINE(x1, y1, x2, y2,
   5.128                     DRAW_SETPIXELXY_RGB565, DRAW_SETPIXELXY_BLEND_RGB565,
   5.129 @@ -329,9 +287,6 @@
   5.130          case SDL_BLENDMODE_ADD:
   5.131              HLINE(Uint32, DRAW_SETPIXEL_ADD_RGB, draw_end);
   5.132              break;
   5.133 -        case SDL_BLENDMODE_MOD:
   5.134 -            HLINE(Uint32, DRAW_SETPIXEL_MOD_RGB, draw_end);
   5.135 -            break;
   5.136          default:
   5.137              HLINE(Uint32, DRAW_SETPIXEL_RGB, draw_end);
   5.138              break;
   5.139 @@ -344,9 +299,6 @@
   5.140          case SDL_BLENDMODE_ADD:
   5.141              VLINE(Uint32, DRAW_SETPIXEL_ADD_RGB, draw_end);
   5.142              break;
   5.143 -        case SDL_BLENDMODE_MOD:
   5.144 -            VLINE(Uint32, DRAW_SETPIXEL_MOD_RGB, draw_end);
   5.145 -            break;
   5.146          default:
   5.147              VLINE(Uint32, DRAW_SETPIXEL_RGB, draw_end);
   5.148              break;
   5.149 @@ -359,9 +311,6 @@
   5.150          case SDL_BLENDMODE_ADD:
   5.151              DLINE(Uint32, DRAW_SETPIXEL_ADD_RGB, draw_end);
   5.152              break;
   5.153 -        case SDL_BLENDMODE_MOD:
   5.154 -            DLINE(Uint32, DRAW_SETPIXEL_MOD_RGB, draw_end);
   5.155 -            break;
   5.156          default:
   5.157              DLINE(Uint32, DRAW_SETPIXEL_RGB, draw_end);
   5.158              break;
   5.159 @@ -378,11 +327,6 @@
   5.160                     DRAW_SETPIXELXY4_ADD_RGB, DRAW_SETPIXELXY4_ADD_RGB,
   5.161                     draw_end);
   5.162              break;
   5.163 -        case SDL_BLENDMODE_MOD:
   5.164 -            AALINE(x1, y1, x2, y2,
   5.165 -                   DRAW_SETPIXELXY4_MOD_RGB, DRAW_SETPIXELXY4_MOD_RGB,
   5.166 -                   draw_end);
   5.167 -            break;
   5.168          default:
   5.169              AALINE(x1, y1, x2, y2,
   5.170                     DRAW_SETPIXELXY4_RGB, DRAW_SETPIXELXY4_BLEND_RGB,
   5.171 @@ -421,9 +365,6 @@
   5.172          case SDL_BLENDMODE_ADD:
   5.173              HLINE(Uint32, DRAW_SETPIXEL_ADD_RGBA, draw_end);
   5.174              break;
   5.175 -        case SDL_BLENDMODE_MOD:
   5.176 -            HLINE(Uint32, DRAW_SETPIXEL_MOD_RGBA, draw_end);
   5.177 -            break;
   5.178          default:
   5.179              HLINE(Uint32, DRAW_SETPIXEL_RGBA, draw_end);
   5.180              break;
   5.181 @@ -436,9 +377,6 @@
   5.182          case SDL_BLENDMODE_ADD:
   5.183              VLINE(Uint32, DRAW_SETPIXEL_ADD_RGBA, draw_end);
   5.184              break;
   5.185 -        case SDL_BLENDMODE_MOD:
   5.186 -            VLINE(Uint32, DRAW_SETPIXEL_MOD_RGBA, draw_end);
   5.187 -            break;
   5.188          default:
   5.189              VLINE(Uint32, DRAW_SETPIXEL_RGBA, draw_end);
   5.190              break;
   5.191 @@ -451,9 +389,6 @@
   5.192          case SDL_BLENDMODE_ADD:
   5.193              DLINE(Uint32, DRAW_SETPIXEL_ADD_RGBA, draw_end);
   5.194              break;
   5.195 -        case SDL_BLENDMODE_MOD:
   5.196 -            DLINE(Uint32, DRAW_SETPIXEL_MOD_RGBA, draw_end);
   5.197 -            break;
   5.198          default:
   5.199              DLINE(Uint32, DRAW_SETPIXEL_RGBA, draw_end);
   5.200              break;
   5.201 @@ -470,11 +405,6 @@
   5.202                     DRAW_SETPIXELXY4_ADD_RGBA, DRAW_SETPIXELXY4_ADD_RGBA,
   5.203                     draw_end);
   5.204              break;
   5.205 -        case SDL_BLENDMODE_MOD:
   5.206 -            AALINE(x1, y1, x2, y2,
   5.207 -                   DRAW_SETPIXELXY4_MOD_RGBA, DRAW_SETPIXELXY4_MOD_RGBA,
   5.208 -                   draw_end);
   5.209 -            break;
   5.210          default:
   5.211              AALINE(x1, y1, x2, y2,
   5.212                     DRAW_SETPIXELXY4_RGBA, DRAW_SETPIXELXY4_BLEND_RGBA,
   5.213 @@ -513,9 +443,6 @@
   5.214          case SDL_BLENDMODE_ADD:
   5.215              HLINE(Uint32, DRAW_SETPIXEL_ADD_RGB888, draw_end);
   5.216              break;
   5.217 -        case SDL_BLENDMODE_MOD:
   5.218 -            HLINE(Uint32, DRAW_SETPIXEL_MOD_RGB888, draw_end);
   5.219 -            break;
   5.220          default:
   5.221              HLINE(Uint32, DRAW_SETPIXEL_RGB888, draw_end);
   5.222              break;
   5.223 @@ -528,9 +455,6 @@
   5.224          case SDL_BLENDMODE_ADD:
   5.225              VLINE(Uint32, DRAW_SETPIXEL_ADD_RGB888, draw_end);
   5.226              break;
   5.227 -        case SDL_BLENDMODE_MOD:
   5.228 -            VLINE(Uint32, DRAW_SETPIXEL_MOD_RGB888, draw_end);
   5.229 -            break;
   5.230          default:
   5.231              VLINE(Uint32, DRAW_SETPIXEL_RGB888, draw_end);
   5.232              break;
   5.233 @@ -543,9 +467,6 @@
   5.234          case SDL_BLENDMODE_ADD:
   5.235              DLINE(Uint32, DRAW_SETPIXEL_ADD_RGB888, draw_end);
   5.236              break;
   5.237 -        case SDL_BLENDMODE_MOD:
   5.238 -            DLINE(Uint32, DRAW_SETPIXEL_MOD_RGB888, draw_end);
   5.239 -            break;
   5.240          default:
   5.241              DLINE(Uint32, DRAW_SETPIXEL_RGB888, draw_end);
   5.242              break;
   5.243 @@ -562,11 +483,6 @@
   5.244                     DRAW_SETPIXELXY_ADD_RGB888, DRAW_SETPIXELXY_ADD_RGB888,
   5.245                     draw_end);
   5.246              break;
   5.247 -        case SDL_BLENDMODE_MOD:
   5.248 -            AALINE(x1, y1, x2, y2,
   5.249 -                   DRAW_SETPIXELXY_MOD_RGB888, DRAW_SETPIXELXY_MOD_RGB888,
   5.250 -                   draw_end);
   5.251 -            break;
   5.252          default:
   5.253              AALINE(x1, y1, x2, y2,
   5.254                     DRAW_SETPIXELXY_RGB888, DRAW_SETPIXELXY_BLEND_RGB888,
   5.255 @@ -605,9 +521,6 @@
   5.256          case SDL_BLENDMODE_ADD:
   5.257              HLINE(Uint32, DRAW_SETPIXEL_ADD_ARGB8888, draw_end);
   5.258              break;
   5.259 -        case SDL_BLENDMODE_MOD:
   5.260 -            HLINE(Uint32, DRAW_SETPIXEL_MOD_ARGB8888, draw_end);
   5.261 -            break;
   5.262          default:
   5.263              HLINE(Uint32, DRAW_SETPIXEL_ARGB8888, draw_end);
   5.264              break;
   5.265 @@ -620,9 +533,6 @@
   5.266          case SDL_BLENDMODE_ADD:
   5.267              VLINE(Uint32, DRAW_SETPIXEL_ADD_ARGB8888, draw_end);
   5.268              break;
   5.269 -        case SDL_BLENDMODE_MOD:
   5.270 -            VLINE(Uint32, DRAW_SETPIXEL_MOD_ARGB8888, draw_end);
   5.271 -            break;
   5.272          default:
   5.273              VLINE(Uint32, DRAW_SETPIXEL_ARGB8888, draw_end);
   5.274              break;
   5.275 @@ -635,9 +545,6 @@
   5.276          case SDL_BLENDMODE_ADD:
   5.277              DLINE(Uint32, DRAW_SETPIXEL_ADD_ARGB8888, draw_end);
   5.278              break;
   5.279 -        case SDL_BLENDMODE_MOD:
   5.280 -            DLINE(Uint32, DRAW_SETPIXEL_MOD_ARGB8888, draw_end);
   5.281 -            break;
   5.282          default:
   5.283              DLINE(Uint32, DRAW_SETPIXEL_ARGB8888, draw_end);
   5.284              break;
   5.285 @@ -654,11 +561,6 @@
   5.286                     DRAW_SETPIXELXY_ADD_ARGB8888, DRAW_SETPIXELXY_ADD_ARGB8888,
   5.287                     draw_end);
   5.288              break;
   5.289 -        case SDL_BLENDMODE_MOD:
   5.290 -            AALINE(x1, y1, x2, y2,
   5.291 -                   DRAW_SETPIXELXY_MOD_ARGB8888, DRAW_SETPIXELXY_MOD_ARGB8888,
   5.292 -                   draw_end);
   5.293 -            break;
   5.294          default:
   5.295              AALINE(x1, y1, x2, y2,
   5.296                     DRAW_SETPIXELXY_ARGB8888, DRAW_SETPIXELXY_BLEND_ARGB8888,
     6.1 --- a/src/video/SDL_blendpoint.c	Mon Jan 31 22:53:45 2011 -0800
     6.2 +++ b/src/video/SDL_blendpoint.c	Mon Jan 31 23:23:57 2011 -0800
     6.3 @@ -36,9 +36,6 @@
     6.4      case SDL_BLENDMODE_ADD:
     6.5          DRAW_SETPIXELXY_ADD_RGB555(x, y);
     6.6          break;
     6.7 -    case SDL_BLENDMODE_MOD:
     6.8 -        DRAW_SETPIXELXY_MOD_RGB555(x, y);
     6.9 -        break;
    6.10      default:
    6.11          DRAW_SETPIXELXY_RGB555(x, y);
    6.12          break;
    6.13 @@ -59,9 +56,6 @@
    6.14      case SDL_BLENDMODE_ADD:
    6.15          DRAW_SETPIXELXY_ADD_RGB565(x, y);
    6.16          break;
    6.17 -    case SDL_BLENDMODE_MOD:
    6.18 -        DRAW_SETPIXELXY_MOD_RGB565(x, y);
    6.19 -        break;
    6.20      default:
    6.21          DRAW_SETPIXELXY_RGB565(x, y);
    6.22          break;
    6.23 @@ -82,9 +76,6 @@
    6.24      case SDL_BLENDMODE_ADD:
    6.25          DRAW_SETPIXELXY_ADD_RGB888(x, y);
    6.26          break;
    6.27 -    case SDL_BLENDMODE_MOD:
    6.28 -        DRAW_SETPIXELXY_MOD_RGB888(x, y);
    6.29 -        break;
    6.30      default:
    6.31          DRAW_SETPIXELXY_RGB888(x, y);
    6.32          break;
    6.33 @@ -105,9 +96,6 @@
    6.34      case SDL_BLENDMODE_ADD:
    6.35          DRAW_SETPIXELXY_ADD_ARGB8888(x, y);
    6.36          break;
    6.37 -    case SDL_BLENDMODE_MOD:
    6.38 -        DRAW_SETPIXELXY_MOD_ARGB8888(x, y);
    6.39 -        break;
    6.40      default:
    6.41          DRAW_SETPIXELXY_ARGB8888(x, y);
    6.42          break;
    6.43 @@ -131,9 +119,6 @@
    6.44          case SDL_BLENDMODE_ADD:
    6.45              DRAW_SETPIXELXY2_ADD_RGB(x, y);
    6.46              break;
    6.47 -        case SDL_BLENDMODE_MOD:
    6.48 -            DRAW_SETPIXELXY2_MOD_RGB(x, y);
    6.49 -            break;
    6.50          default:
    6.51              DRAW_SETPIXELXY2_RGB(x, y);
    6.52              break;
    6.53 @@ -147,9 +132,6 @@
    6.54          case SDL_BLENDMODE_ADD:
    6.55              DRAW_SETPIXELXY4_ADD_RGB(x, y);
    6.56              break;
    6.57 -        case SDL_BLENDMODE_MOD:
    6.58 -            DRAW_SETPIXELXY4_MOD_RGB(x, y);
    6.59 -            break;
    6.60          default:
    6.61              DRAW_SETPIXELXY4_RGB(x, y);
    6.62              break;
    6.63 @@ -177,9 +159,6 @@
    6.64          case SDL_BLENDMODE_ADD:
    6.65              DRAW_SETPIXELXY4_ADD_RGBA(x, y);
    6.66              break;
    6.67 -        case SDL_BLENDMODE_MOD:
    6.68 -            DRAW_SETPIXELXY4_MOD_RGBA(x, y);
    6.69 -            break;
    6.70          default:
    6.71              DRAW_SETPIXELXY4_RGBA(x, y);
    6.72              break;
     7.1 --- a/src/video/SDL_blit.c	Mon Jan 31 22:53:45 2011 -0800
     7.2 +++ b/src/video/SDL_blit.c	Mon Jan 31 23:23:57 2011 -0800
     7.3 @@ -181,9 +181,7 @@
     7.4          }
     7.5  
     7.6          /* Check blend flags */
     7.7 -        flagcheck =
     7.8 -            (flags &
     7.9 -             (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD));
    7.10 +        flagcheck = (flags & (SDL_COPY_BLEND | SDL_COPY_ADD));
    7.11          if ((flagcheck & entries[i].flags) != flagcheck) {
    7.12              continue;
    7.13          }
     8.1 --- a/src/video/SDL_blit.h	Mon Jan 31 22:53:45 2011 -0800
     8.2 +++ b/src/video/SDL_blit.h	Mon Jan 31 23:23:57 2011 -0800
     8.3 @@ -52,10 +52,8 @@
     8.4  /* SDL blit copy flags */
     8.5  #define SDL_COPY_MODULATE_COLOR     0x00000001
     8.6  #define SDL_COPY_MODULATE_ALPHA     0x00000002
     8.7 -#define SDL_COPY_MASK               0x00000010
     8.8 -#define SDL_COPY_BLEND              0x00000020
     8.9 -#define SDL_COPY_ADD                0x00000040
    8.10 -#define SDL_COPY_MOD                0x00000080
    8.11 +#define SDL_COPY_BLEND              0x00000010
    8.12 +#define SDL_COPY_ADD                0x00000020
    8.13  #define SDL_COPY_COLORKEY           0x00000100
    8.14  #define SDL_COPY_NEAREST            0x00000200
    8.15  #define SDL_COPY_RLE_DESIRED        0x00001000
     9.1 --- a/src/video/SDL_blit_auto.c	Mon Jan 31 22:53:45 2011 -0800
     9.2 +++ b/src/video/SDL_blit_auto.c	Mon Jan 31 23:23:57 2011 -0800
     9.3 @@ -1,7 +1,7 @@
     9.4  /* DO NOT EDIT!  This file is generated by sdlgenblit.pl */
     9.5  /*
     9.6      SDL - Simple DirectMedia Layer
     9.7 -    Copyright (C) 1997-2010 Sam Lantinga
     9.8 +    Copyright (C) 1997-2011 Sam Lantinga
     9.9  
    9.10      This library is free software; you can redistribute it and/or
    9.11      modify it under the terms of the GNU Lesser General Public
    9.12 @@ -92,14 +92,7 @@
    9.13                      srcB = (srcB * srcA) / 255;
    9.14                  }
    9.15              }
    9.16 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
    9.17 -            case SDL_COPY_MASK:
    9.18 -                if (srcA) {
    9.19 -                    dstR = srcR;
    9.20 -                    dstG = srcG;
    9.21 -                    dstB = srcB;
    9.22 -                }
    9.23 -                break;
    9.24 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
    9.25              case SDL_COPY_BLEND:
    9.26                  dstR = srcR + ((255 - srcA) * dstR) / 255;
    9.27                  dstG = srcG + ((255 - srcA) * dstG) / 255;
    9.28 @@ -110,11 +103,6 @@
    9.29                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
    9.30                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
    9.31                  break;
    9.32 -            case SDL_COPY_MOD:
    9.33 -                dstR = (srcR * dstR) / 255;
    9.34 -                dstG = (srcG * dstG) / 255;
    9.35 -                dstB = (srcB * dstB) / 255;
    9.36 -                break;
    9.37              }
    9.38              dstpixel = ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
    9.39              *dst = dstpixel;
    9.40 @@ -172,14 +160,7 @@
    9.41                      srcB = (srcB * srcA) / 255;
    9.42                  }
    9.43              }
    9.44 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
    9.45 -            case SDL_COPY_MASK:
    9.46 -                if (srcA) {
    9.47 -                    dstR = srcR;
    9.48 -                    dstG = srcG;
    9.49 -                    dstB = srcB;
    9.50 -                }
    9.51 -                break;
    9.52 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
    9.53              case SDL_COPY_BLEND:
    9.54                  dstR = srcR + ((255 - srcA) * dstR) / 255;
    9.55                  dstG = srcG + ((255 - srcA) * dstG) / 255;
    9.56 @@ -190,11 +171,6 @@
    9.57                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
    9.58                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
    9.59                  break;
    9.60 -            case SDL_COPY_MOD:
    9.61 -                dstR = (srcR * dstR) / 255;
    9.62 -                dstG = (srcG * dstG) / 255;
    9.63 -                dstB = (srcB * dstB) / 255;
    9.64 -                break;
    9.65              }
    9.66              dstpixel = ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
    9.67              *dst = dstpixel;
    9.68 @@ -334,14 +310,7 @@
    9.69                      srcB = (srcB * srcA) / 255;
    9.70                  }
    9.71              }
    9.72 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
    9.73 -            case SDL_COPY_MASK:
    9.74 -                if (srcA) {
    9.75 -                    dstR = srcR;
    9.76 -                    dstG = srcG;
    9.77 -                    dstB = srcB;
    9.78 -                }
    9.79 -                break;
    9.80 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
    9.81              case SDL_COPY_BLEND:
    9.82                  dstR = srcR + ((255 - srcA) * dstR) / 255;
    9.83                  dstG = srcG + ((255 - srcA) * dstG) / 255;
    9.84 @@ -352,11 +321,6 @@
    9.85                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
    9.86                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
    9.87                  break;
    9.88 -            case SDL_COPY_MOD:
    9.89 -                dstR = (srcR * dstR) / 255;
    9.90 -                dstG = (srcG * dstG) / 255;
    9.91 -                dstB = (srcB * dstB) / 255;
    9.92 -                break;
    9.93              }
    9.94              dstpixel = ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
    9.95              *dst = dstpixel;
    9.96 @@ -426,14 +390,7 @@
    9.97                      srcB = (srcB * srcA) / 255;
    9.98                  }
    9.99              }
   9.100 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.101 -            case SDL_COPY_MASK:
   9.102 -                if (srcA) {
   9.103 -                    dstR = srcR;
   9.104 -                    dstG = srcG;
   9.105 -                    dstB = srcB;
   9.106 -                }
   9.107 -                break;
   9.108 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.109              case SDL_COPY_BLEND:
   9.110                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.111                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.112 @@ -444,11 +401,6 @@
   9.113                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.114                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.115                  break;
   9.116 -            case SDL_COPY_MOD:
   9.117 -                dstR = (srcR * dstR) / 255;
   9.118 -                dstG = (srcG * dstG) / 255;
   9.119 -                dstB = (srcB * dstB) / 255;
   9.120 -                break;
   9.121              }
   9.122              dstpixel = ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
   9.123              *dst = dstpixel;
   9.124 @@ -529,14 +481,7 @@
   9.125                      srcB = (srcB * srcA) / 255;
   9.126                  }
   9.127              }
   9.128 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.129 -            case SDL_COPY_MASK:
   9.130 -                if (srcA) {
   9.131 -                    dstR = srcR;
   9.132 -                    dstG = srcG;
   9.133 -                    dstB = srcB;
   9.134 -                }
   9.135 -                break;
   9.136 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.137              case SDL_COPY_BLEND:
   9.138                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.139                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.140 @@ -547,11 +492,6 @@
   9.141                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.142                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.143                  break;
   9.144 -            case SDL_COPY_MOD:
   9.145 -                dstR = (srcR * dstR) / 255;
   9.146 -                dstG = (srcG * dstG) / 255;
   9.147 -                dstB = (srcB * dstB) / 255;
   9.148 -                break;
   9.149              }
   9.150              dstpixel = ((Uint32)dstB << 16) | ((Uint32)dstG << 8) | dstR;
   9.151              *dst = dstpixel;
   9.152 @@ -609,14 +549,7 @@
   9.153                      srcB = (srcB * srcA) / 255;
   9.154                  }
   9.155              }
   9.156 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.157 -            case SDL_COPY_MASK:
   9.158 -                if (srcA) {
   9.159 -                    dstR = srcR;
   9.160 -                    dstG = srcG;
   9.161 -                    dstB = srcB;
   9.162 -                }
   9.163 -                break;
   9.164 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.165              case SDL_COPY_BLEND:
   9.166                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.167                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.168 @@ -627,11 +560,6 @@
   9.169                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.170                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.171                  break;
   9.172 -            case SDL_COPY_MOD:
   9.173 -                dstR = (srcR * dstR) / 255;
   9.174 -                dstG = (srcG * dstG) / 255;
   9.175 -                dstB = (srcB * dstB) / 255;
   9.176 -                break;
   9.177              }
   9.178              dstpixel = ((Uint32)dstB << 16) | ((Uint32)dstG << 8) | dstR;
   9.179              *dst = dstpixel;
   9.180 @@ -771,14 +699,7 @@
   9.181                      srcB = (srcB * srcA) / 255;
   9.182                  }
   9.183              }
   9.184 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.185 -            case SDL_COPY_MASK:
   9.186 -                if (srcA) {
   9.187 -                    dstR = srcR;
   9.188 -                    dstG = srcG;
   9.189 -                    dstB = srcB;
   9.190 -                }
   9.191 -                break;
   9.192 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.193              case SDL_COPY_BLEND:
   9.194                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.195                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.196 @@ -789,11 +710,6 @@
   9.197                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.198                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.199                  break;
   9.200 -            case SDL_COPY_MOD:
   9.201 -                dstR = (srcR * dstR) / 255;
   9.202 -                dstG = (srcG * dstG) / 255;
   9.203 -                dstB = (srcB * dstB) / 255;
   9.204 -                break;
   9.205              }
   9.206              dstpixel = ((Uint32)dstB << 16) | ((Uint32)dstG << 8) | dstR;
   9.207              *dst = dstpixel;
   9.208 @@ -863,14 +779,7 @@
   9.209                      srcB = (srcB * srcA) / 255;
   9.210                  }
   9.211              }
   9.212 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.213 -            case SDL_COPY_MASK:
   9.214 -                if (srcA) {
   9.215 -                    dstR = srcR;
   9.216 -                    dstG = srcG;
   9.217 -                    dstB = srcB;
   9.218 -                }
   9.219 -                break;
   9.220 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.221              case SDL_COPY_BLEND:
   9.222                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.223                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.224 @@ -881,11 +790,6 @@
   9.225                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.226                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.227                  break;
   9.228 -            case SDL_COPY_MOD:
   9.229 -                dstR = (srcR * dstR) / 255;
   9.230 -                dstG = (srcG * dstG) / 255;
   9.231 -                dstB = (srcB * dstB) / 255;
   9.232 -                break;
   9.233              }
   9.234              dstpixel = ((Uint32)dstB << 16) | ((Uint32)dstG << 8) | dstR;
   9.235              *dst = dstpixel;
   9.236 @@ -966,14 +870,7 @@
   9.237                      srcB = (srcB * srcA) / 255;
   9.238                  }
   9.239              }
   9.240 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.241 -            case SDL_COPY_MASK:
   9.242 -                if (srcA) {
   9.243 -                    dstR = srcR;
   9.244 -                    dstG = srcG;
   9.245 -                    dstB = srcB;
   9.246 -                }
   9.247 -                break;
   9.248 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.249              case SDL_COPY_BLEND:
   9.250                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.251                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.252 @@ -984,11 +881,6 @@
   9.253                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.254                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.255                  break;
   9.256 -            case SDL_COPY_MOD:
   9.257 -                dstR = (srcR * dstR) / 255;
   9.258 -                dstG = (srcG * dstG) / 255;
   9.259 -                dstB = (srcB * dstB) / 255;
   9.260 -                break;
   9.261              }
   9.262              dstpixel = ((Uint32)dstA << 24) | ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
   9.263              *dst = dstpixel;
   9.264 @@ -1046,14 +938,7 @@
   9.265                      srcB = (srcB * srcA) / 255;
   9.266                  }
   9.267              }
   9.268 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.269 -            case SDL_COPY_MASK:
   9.270 -                if (srcA) {
   9.271 -                    dstR = srcR;
   9.272 -                    dstG = srcG;
   9.273 -                    dstB = srcB;
   9.274 -                }
   9.275 -                break;
   9.276 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.277              case SDL_COPY_BLEND:
   9.278                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.279                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.280 @@ -1064,11 +949,6 @@
   9.281                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.282                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.283                  break;
   9.284 -            case SDL_COPY_MOD:
   9.285 -                dstR = (srcR * dstR) / 255;
   9.286 -                dstG = (srcG * dstG) / 255;
   9.287 -                dstB = (srcB * dstB) / 255;
   9.288 -                break;
   9.289              }
   9.290              dstpixel = ((Uint32)dstA << 24) | ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
   9.291              *dst = dstpixel;
   9.292 @@ -1208,14 +1088,7 @@
   9.293                      srcB = (srcB * srcA) / 255;
   9.294                  }
   9.295              }
   9.296 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.297 -            case SDL_COPY_MASK:
   9.298 -                if (srcA) {
   9.299 -                    dstR = srcR;
   9.300 -                    dstG = srcG;
   9.301 -                    dstB = srcB;
   9.302 -                }
   9.303 -                break;
   9.304 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.305              case SDL_COPY_BLEND:
   9.306                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.307                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.308 @@ -1226,11 +1099,6 @@
   9.309                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.310                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.311                  break;
   9.312 -            case SDL_COPY_MOD:
   9.313 -                dstR = (srcR * dstR) / 255;
   9.314 -                dstG = (srcG * dstG) / 255;
   9.315 -                dstB = (srcB * dstB) / 255;
   9.316 -                break;
   9.317              }
   9.318              dstpixel = ((Uint32)dstA << 24) | ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
   9.319              *dst = dstpixel;
   9.320 @@ -1300,14 +1168,7 @@
   9.321                      srcB = (srcB * srcA) / 255;
   9.322                  }
   9.323              }
   9.324 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.325 -            case SDL_COPY_MASK:
   9.326 -                if (srcA) {
   9.327 -                    dstR = srcR;
   9.328 -                    dstG = srcG;
   9.329 -                    dstB = srcB;
   9.330 -                }
   9.331 -                break;
   9.332 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.333              case SDL_COPY_BLEND:
   9.334                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.335                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.336 @@ -1318,11 +1179,6 @@
   9.337                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.338                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.339                  break;
   9.340 -            case SDL_COPY_MOD:
   9.341 -                dstR = (srcR * dstR) / 255;
   9.342 -                dstG = (srcG * dstG) / 255;
   9.343 -                dstB = (srcB * dstB) / 255;
   9.344 -                break;
   9.345              }
   9.346              dstpixel = ((Uint32)dstA << 24) | ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
   9.347              *dst = dstpixel;
   9.348 @@ -1403,14 +1259,7 @@
   9.349                      srcB = (srcB * srcA) / 255;
   9.350                  }
   9.351              }
   9.352 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.353 -            case SDL_COPY_MASK:
   9.354 -                if (srcA) {
   9.355 -                    dstR = srcR;
   9.356 -                    dstG = srcG;
   9.357 -                    dstB = srcB;
   9.358 -                }
   9.359 -                break;
   9.360 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.361              case SDL_COPY_BLEND:
   9.362                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.363                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.364 @@ -1421,11 +1270,6 @@
   9.365                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.366                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.367                  break;
   9.368 -            case SDL_COPY_MOD:
   9.369 -                dstR = (srcR * dstR) / 255;
   9.370 -                dstG = (srcG * dstG) / 255;
   9.371 -                dstB = (srcB * dstB) / 255;
   9.372 -                break;
   9.373              }
   9.374              dstpixel = ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
   9.375              *dst = dstpixel;
   9.376 @@ -1483,14 +1327,7 @@
   9.377                      srcB = (srcB * srcA) / 255;
   9.378                  }
   9.379              }
   9.380 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.381 -            case SDL_COPY_MASK:
   9.382 -                if (srcA) {
   9.383 -                    dstR = srcR;
   9.384 -                    dstG = srcG;
   9.385 -                    dstB = srcB;
   9.386 -                }
   9.387 -                break;
   9.388 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.389              case SDL_COPY_BLEND:
   9.390                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.391                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.392 @@ -1501,11 +1338,6 @@
   9.393                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.394                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.395                  break;
   9.396 -            case SDL_COPY_MOD:
   9.397 -                dstR = (srcR * dstR) / 255;
   9.398 -                dstG = (srcG * dstG) / 255;
   9.399 -                dstB = (srcB * dstB) / 255;
   9.400 -                break;
   9.401              }
   9.402              dstpixel = ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
   9.403              *dst = dstpixel;
   9.404 @@ -1645,14 +1477,7 @@
   9.405                      srcB = (srcB * srcA) / 255;
   9.406                  }
   9.407              }
   9.408 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.409 -            case SDL_COPY_MASK:
   9.410 -                if (srcA) {
   9.411 -                    dstR = srcR;
   9.412 -                    dstG = srcG;
   9.413 -                    dstB = srcB;
   9.414 -                }
   9.415 -                break;
   9.416 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.417              case SDL_COPY_BLEND:
   9.418                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.419                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.420 @@ -1663,11 +1488,6 @@
   9.421                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.422                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.423                  break;
   9.424 -            case SDL_COPY_MOD:
   9.425 -                dstR = (srcR * dstR) / 255;
   9.426 -                dstG = (srcG * dstG) / 255;
   9.427 -                dstB = (srcB * dstB) / 255;
   9.428 -                break;
   9.429              }
   9.430              dstpixel = ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
   9.431              *dst = dstpixel;
   9.432 @@ -1737,14 +1557,7 @@
   9.433                      srcB = (srcB * srcA) / 255;
   9.434                  }
   9.435              }
   9.436 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.437 -            case SDL_COPY_MASK:
   9.438 -                if (srcA) {
   9.439 -                    dstR = srcR;
   9.440 -                    dstG = srcG;
   9.441 -                    dstB = srcB;
   9.442 -                }
   9.443 -                break;
   9.444 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.445              case SDL_COPY_BLEND:
   9.446                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.447                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.448 @@ -1755,11 +1568,6 @@
   9.449                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.450                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.451                  break;
   9.452 -            case SDL_COPY_MOD:
   9.453 -                dstR = (srcR * dstR) / 255;
   9.454 -                dstG = (srcG * dstG) / 255;
   9.455 -                dstB = (srcB * dstB) / 255;
   9.456 -                break;
   9.457              }
   9.458              dstpixel = ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
   9.459              *dst = dstpixel;
   9.460 @@ -1835,14 +1643,7 @@
   9.461                      srcB = (srcB * srcA) / 255;
   9.462                  }
   9.463              }
   9.464 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.465 -            case SDL_COPY_MASK:
   9.466 -                if (srcA) {
   9.467 -                    dstR = srcR;
   9.468 -                    dstG = srcG;
   9.469 -                    dstB = srcB;
   9.470 -                }
   9.471 -                break;
   9.472 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.473              case SDL_COPY_BLEND:
   9.474                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.475                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.476 @@ -1853,11 +1654,6 @@
   9.477                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.478                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.479                  break;
   9.480 -            case SDL_COPY_MOD:
   9.481 -                dstR = (srcR * dstR) / 255;
   9.482 -                dstG = (srcG * dstG) / 255;
   9.483 -                dstB = (srcB * dstB) / 255;
   9.484 -                break;
   9.485              }
   9.486              dstpixel = ((Uint32)dstB << 16) | ((Uint32)dstG << 8) | dstR;
   9.487              *dst = dstpixel;
   9.488 @@ -1915,14 +1711,7 @@
   9.489                      srcB = (srcB * srcA) / 255;
   9.490                  }
   9.491              }
   9.492 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.493 -            case SDL_COPY_MASK:
   9.494 -                if (srcA) {
   9.495 -                    dstR = srcR;
   9.496 -                    dstG = srcG;
   9.497 -                    dstB = srcB;
   9.498 -                }
   9.499 -                break;
   9.500 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.501              case SDL_COPY_BLEND:
   9.502                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.503                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.504 @@ -1933,11 +1722,6 @@
   9.505                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.506                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.507                  break;
   9.508 -            case SDL_COPY_MOD:
   9.509 -                dstR = (srcR * dstR) / 255;
   9.510 -                dstG = (srcG * dstG) / 255;
   9.511 -                dstB = (srcB * dstB) / 255;
   9.512 -                break;
   9.513              }
   9.514              dstpixel = ((Uint32)dstB << 16) | ((Uint32)dstG << 8) | dstR;
   9.515              *dst = dstpixel;
   9.516 @@ -2077,14 +1861,7 @@
   9.517                      srcB = (srcB * srcA) / 255;
   9.518                  }
   9.519              }
   9.520 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.521 -            case SDL_COPY_MASK:
   9.522 -                if (srcA) {
   9.523 -                    dstR = srcR;
   9.524 -                    dstG = srcG;
   9.525 -                    dstB = srcB;
   9.526 -                }
   9.527 -                break;
   9.528 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.529              case SDL_COPY_BLEND:
   9.530                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.531                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.532 @@ -2095,11 +1872,6 @@
   9.533                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.534                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.535                  break;
   9.536 -            case SDL_COPY_MOD:
   9.537 -                dstR = (srcR * dstR) / 255;
   9.538 -                dstG = (srcG * dstG) / 255;
   9.539 -                dstB = (srcB * dstB) / 255;
   9.540 -                break;
   9.541              }
   9.542              dstpixel = ((Uint32)dstB << 16) | ((Uint32)dstG << 8) | dstR;
   9.543              *dst = dstpixel;
   9.544 @@ -2169,14 +1941,7 @@
   9.545                      srcB = (srcB * srcA) / 255;
   9.546                  }
   9.547              }
   9.548 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.549 -            case SDL_COPY_MASK:
   9.550 -                if (srcA) {
   9.551 -                    dstR = srcR;
   9.552 -                    dstG = srcG;
   9.553 -                    dstB = srcB;
   9.554 -                }
   9.555 -                break;
   9.556 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.557              case SDL_COPY_BLEND:
   9.558                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.559                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.560 @@ -2187,11 +1952,6 @@
   9.561                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.562                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.563                  break;
   9.564 -            case SDL_COPY_MOD:
   9.565 -                dstR = (srcR * dstR) / 255;
   9.566 -                dstG = (srcG * dstG) / 255;
   9.567 -                dstB = (srcB * dstB) / 255;
   9.568 -                break;
   9.569              }
   9.570              dstpixel = ((Uint32)dstB << 16) | ((Uint32)dstG << 8) | dstR;
   9.571              *dst = dstpixel;
   9.572 @@ -2272,14 +2032,7 @@
   9.573                      srcB = (srcB * srcA) / 255;
   9.574                  }
   9.575              }
   9.576 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.577 -            case SDL_COPY_MASK:
   9.578 -                if (srcA) {
   9.579 -                    dstR = srcR;
   9.580 -                    dstG = srcG;
   9.581 -                    dstB = srcB;
   9.582 -                }
   9.583 -                break;
   9.584 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.585              case SDL_COPY_BLEND:
   9.586                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.587                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.588 @@ -2290,11 +2043,6 @@
   9.589                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.590                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.591                  break;
   9.592 -            case SDL_COPY_MOD:
   9.593 -                dstR = (srcR * dstR) / 255;
   9.594 -                dstG = (srcG * dstG) / 255;
   9.595 -                dstB = (srcB * dstB) / 255;
   9.596 -                break;
   9.597              }
   9.598              dstpixel = ((Uint32)dstA << 24) | ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
   9.599              *dst = dstpixel;
   9.600 @@ -2352,14 +2100,7 @@
   9.601                      srcB = (srcB * srcA) / 255;
   9.602                  }
   9.603              }
   9.604 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.605 -            case SDL_COPY_MASK:
   9.606 -                if (srcA) {
   9.607 -                    dstR = srcR;
   9.608 -                    dstG = srcG;
   9.609 -                    dstB = srcB;
   9.610 -                }
   9.611 -                break;
   9.612 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.613              case SDL_COPY_BLEND:
   9.614                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.615                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.616 @@ -2370,11 +2111,6 @@
   9.617                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.618                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.619                  break;
   9.620 -            case SDL_COPY_MOD:
   9.621 -                dstR = (srcR * dstR) / 255;
   9.622 -                dstG = (srcG * dstG) / 255;
   9.623 -                dstB = (srcB * dstB) / 255;
   9.624 -                break;
   9.625              }
   9.626              dstpixel = ((Uint32)dstA << 24) | ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
   9.627              *dst = dstpixel;
   9.628 @@ -2514,14 +2250,7 @@
   9.629                      srcB = (srcB * srcA) / 255;
   9.630                  }
   9.631              }
   9.632 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.633 -            case SDL_COPY_MASK:
   9.634 -                if (srcA) {
   9.635 -                    dstR = srcR;
   9.636 -                    dstG = srcG;
   9.637 -                    dstB = srcB;
   9.638 -                }
   9.639 -                break;
   9.640 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.641              case SDL_COPY_BLEND:
   9.642                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.643                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.644 @@ -2532,11 +2261,6 @@
   9.645                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.646                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.647                  break;
   9.648 -            case SDL_COPY_MOD:
   9.649 -                dstR = (srcR * dstR) / 255;
   9.650 -                dstG = (srcG * dstG) / 255;
   9.651 -                dstB = (srcB * dstB) / 255;
   9.652 -                break;
   9.653              }
   9.654              dstpixel = ((Uint32)dstA << 24) | ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
   9.655              *dst = dstpixel;
   9.656 @@ -2606,14 +2330,7 @@
   9.657                      srcB = (srcB * srcA) / 255;
   9.658                  }
   9.659              }
   9.660 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.661 -            case SDL_COPY_MASK:
   9.662 -                if (srcA) {
   9.663 -                    dstR = srcR;
   9.664 -                    dstG = srcG;
   9.665 -                    dstB = srcB;
   9.666 -                }
   9.667 -                break;
   9.668 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.669              case SDL_COPY_BLEND:
   9.670                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.671                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.672 @@ -2624,11 +2341,6 @@
   9.673                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.674                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.675                  break;
   9.676 -            case SDL_COPY_MOD:
   9.677 -                dstR = (srcR * dstR) / 255;
   9.678 -                dstG = (srcG * dstG) / 255;
   9.679 -                dstB = (srcB * dstB) / 255;
   9.680 -                break;
   9.681              }
   9.682              dstpixel = ((Uint32)dstA << 24) | ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
   9.683              *dst = dstpixel;
   9.684 @@ -2709,14 +2421,7 @@
   9.685                      srcB = (srcB * srcA) / 255;
   9.686                  }
   9.687              }
   9.688 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.689 -            case SDL_COPY_MASK:
   9.690 -                if (srcA) {
   9.691 -                    dstR = srcR;
   9.692 -                    dstG = srcG;
   9.693 -                    dstB = srcB;
   9.694 -                }
   9.695 -                break;
   9.696 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.697              case SDL_COPY_BLEND:
   9.698                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.699                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.700 @@ -2727,11 +2432,6 @@
   9.701                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.702                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.703                  break;
   9.704 -            case SDL_COPY_MOD:
   9.705 -                dstR = (srcR * dstR) / 255;
   9.706 -                dstG = (srcG * dstG) / 255;
   9.707 -                dstB = (srcB * dstB) / 255;
   9.708 -                break;
   9.709              }
   9.710              dstpixel = ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
   9.711              *dst = dstpixel;
   9.712 @@ -2789,14 +2489,7 @@
   9.713                      srcB = (srcB * srcA) / 255;
   9.714                  }
   9.715              }
   9.716 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.717 -            case SDL_COPY_MASK:
   9.718 -                if (srcA) {
   9.719 -                    dstR = srcR;
   9.720 -                    dstG = srcG;
   9.721 -                    dstB = srcB;
   9.722 -                }
   9.723 -                break;
   9.724 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.725              case SDL_COPY_BLEND:
   9.726                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.727                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.728 @@ -2807,11 +2500,6 @@
   9.729                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.730                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.731                  break;
   9.732 -            case SDL_COPY_MOD:
   9.733 -                dstR = (srcR * dstR) / 255;
   9.734 -                dstG = (srcG * dstG) / 255;
   9.735 -                dstB = (srcB * dstB) / 255;
   9.736 -                break;
   9.737              }
   9.738              dstpixel = ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
   9.739              *dst = dstpixel;
   9.740 @@ -2951,14 +2639,7 @@
   9.741                      srcB = (srcB * srcA) / 255;
   9.742                  }
   9.743              }
   9.744 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.745 -            case SDL_COPY_MASK:
   9.746 -                if (srcA) {
   9.747 -                    dstR = srcR;
   9.748 -                    dstG = srcG;
   9.749 -                    dstB = srcB;
   9.750 -                }
   9.751 -                break;
   9.752 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.753              case SDL_COPY_BLEND:
   9.754                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.755                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.756 @@ -2969,11 +2650,6 @@
   9.757                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.758                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.759                  break;
   9.760 -            case SDL_COPY_MOD:
   9.761 -                dstR = (srcR * dstR) / 255;
   9.762 -                dstG = (srcG * dstG) / 255;
   9.763 -                dstB = (srcB * dstB) / 255;
   9.764 -                break;
   9.765              }
   9.766              dstpixel = ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
   9.767              *dst = dstpixel;
   9.768 @@ -3043,14 +2719,7 @@
   9.769                      srcB = (srcB * srcA) / 255;
   9.770                  }
   9.771              }
   9.772 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.773 -            case SDL_COPY_MASK:
   9.774 -                if (srcA) {
   9.775 -                    dstR = srcR;
   9.776 -                    dstG = srcG;
   9.777 -                    dstB = srcB;
   9.778 -                }
   9.779 -                break;
   9.780 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.781              case SDL_COPY_BLEND:
   9.782                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.783                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.784 @@ -3061,11 +2730,6 @@
   9.785                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.786                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.787                  break;
   9.788 -            case SDL_COPY_MOD:
   9.789 -                dstR = (srcR * dstR) / 255;
   9.790 -                dstG = (srcG * dstG) / 255;
   9.791 -                dstB = (srcB * dstB) / 255;
   9.792 -                break;
   9.793              }
   9.794              dstpixel = ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
   9.795              *dst = dstpixel;
   9.796 @@ -3146,14 +2810,7 @@
   9.797                      srcB = (srcB * srcA) / 255;
   9.798                  }
   9.799              }
   9.800 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.801 -            case SDL_COPY_MASK:
   9.802 -                if (srcA) {
   9.803 -                    dstR = srcR;
   9.804 -                    dstG = srcG;
   9.805 -                    dstB = srcB;
   9.806 -                }
   9.807 -                break;
   9.808 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.809              case SDL_COPY_BLEND:
   9.810                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.811                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.812 @@ -3164,11 +2821,6 @@
   9.813                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.814                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.815                  break;
   9.816 -            case SDL_COPY_MOD:
   9.817 -                dstR = (srcR * dstR) / 255;
   9.818 -                dstG = (srcG * dstG) / 255;
   9.819 -                dstB = (srcB * dstB) / 255;
   9.820 -                break;
   9.821              }
   9.822              dstpixel = ((Uint32)dstB << 16) | ((Uint32)dstG << 8) | dstR;
   9.823              *dst = dstpixel;
   9.824 @@ -3226,14 +2878,7 @@
   9.825                      srcB = (srcB * srcA) / 255;
   9.826                  }
   9.827              }
   9.828 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.829 -            case SDL_COPY_MASK:
   9.830 -                if (srcA) {
   9.831 -                    dstR = srcR;
   9.832 -                    dstG = srcG;
   9.833 -                    dstB = srcB;
   9.834 -                }
   9.835 -                break;
   9.836 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.837              case SDL_COPY_BLEND:
   9.838                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.839                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.840 @@ -3244,11 +2889,6 @@
   9.841                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.842                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.843                  break;
   9.844 -            case SDL_COPY_MOD:
   9.845 -                dstR = (srcR * dstR) / 255;
   9.846 -                dstG = (srcG * dstG) / 255;
   9.847 -                dstB = (srcB * dstB) / 255;
   9.848 -                break;
   9.849              }
   9.850              dstpixel = ((Uint32)dstB << 16) | ((Uint32)dstG << 8) | dstR;
   9.851              *dst = dstpixel;
   9.852 @@ -3388,14 +3028,7 @@
   9.853                      srcB = (srcB * srcA) / 255;
   9.854                  }
   9.855              }
   9.856 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.857 -            case SDL_COPY_MASK:
   9.858 -                if (srcA) {
   9.859 -                    dstR = srcR;
   9.860 -                    dstG = srcG;
   9.861 -                    dstB = srcB;
   9.862 -                }
   9.863 -                break;
   9.864 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.865              case SDL_COPY_BLEND:
   9.866                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.867                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.868 @@ -3406,11 +3039,6 @@
   9.869                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.870                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.871                  break;
   9.872 -            case SDL_COPY_MOD:
   9.873 -                dstR = (srcR * dstR) / 255;
   9.874 -                dstG = (srcG * dstG) / 255;
   9.875 -                dstB = (srcB * dstB) / 255;
   9.876 -                break;
   9.877              }
   9.878              dstpixel = ((Uint32)dstB << 16) | ((Uint32)dstG << 8) | dstR;
   9.879              *dst = dstpixel;
   9.880 @@ -3480,14 +3108,7 @@
   9.881                      srcB = (srcB * srcA) / 255;
   9.882                  }
   9.883              }
   9.884 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.885 -            case SDL_COPY_MASK:
   9.886 -                if (srcA) {
   9.887 -                    dstR = srcR;
   9.888 -                    dstG = srcG;
   9.889 -                    dstB = srcB;
   9.890 -                }
   9.891 -                break;
   9.892 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.893              case SDL_COPY_BLEND:
   9.894                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.895                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.896 @@ -3498,11 +3119,6 @@
   9.897                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.898                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.899                  break;
   9.900 -            case SDL_COPY_MOD:
   9.901 -                dstR = (srcR * dstR) / 255;
   9.902 -                dstG = (srcG * dstG) / 255;
   9.903 -                dstB = (srcB * dstB) / 255;
   9.904 -                break;
   9.905              }
   9.906              dstpixel = ((Uint32)dstB << 16) | ((Uint32)dstG << 8) | dstR;
   9.907              *dst = dstpixel;
   9.908 @@ -3578,14 +3194,7 @@
   9.909                      srcB = (srcB * srcA) / 255;
   9.910                  }
   9.911              }
   9.912 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.913 -            case SDL_COPY_MASK:
   9.914 -                if (srcA) {
   9.915 -                    dstR = srcR;
   9.916 -                    dstG = srcG;
   9.917 -                    dstB = srcB;
   9.918 -                }
   9.919 -                break;
   9.920 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.921              case SDL_COPY_BLEND:
   9.922                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.923                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.924 @@ -3596,11 +3205,6 @@
   9.925                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.926                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.927                  break;
   9.928 -            case SDL_COPY_MOD:
   9.929 -                dstR = (srcR * dstR) / 255;
   9.930 -                dstG = (srcG * dstG) / 255;
   9.931 -                dstB = (srcB * dstB) / 255;
   9.932 -                break;
   9.933              }
   9.934              dstpixel = ((Uint32)dstA << 24) | ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
   9.935              *dst = dstpixel;
   9.936 @@ -3658,14 +3262,7 @@
   9.937                      srcB = (srcB * srcA) / 255;
   9.938                  }
   9.939              }
   9.940 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.941 -            case SDL_COPY_MASK:
   9.942 -                if (srcA) {
   9.943 -                    dstR = srcR;
   9.944 -                    dstG = srcG;
   9.945 -                    dstB = srcB;
   9.946 -                }
   9.947 -                break;
   9.948 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.949              case SDL_COPY_BLEND:
   9.950                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.951                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.952 @@ -3676,11 +3273,6 @@
   9.953                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.954                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.955                  break;
   9.956 -            case SDL_COPY_MOD:
   9.957 -                dstR = (srcR * dstR) / 255;
   9.958 -                dstG = (srcG * dstG) / 255;
   9.959 -                dstB = (srcB * dstB) / 255;
   9.960 -                break;
   9.961              }
   9.962              dstpixel = ((Uint32)dstA << 24) | ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
   9.963              *dst = dstpixel;
   9.964 @@ -3820,14 +3412,7 @@
   9.965                      srcB = (srcB * srcA) / 255;
   9.966                  }
   9.967              }
   9.968 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.969 -            case SDL_COPY_MASK:
   9.970 -                if (srcA) {
   9.971 -                    dstR = srcR;
   9.972 -                    dstG = srcG;
   9.973 -                    dstB = srcB;
   9.974 -                }
   9.975 -                break;
   9.976 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   9.977              case SDL_COPY_BLEND:
   9.978                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   9.979                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   9.980 @@ -3838,11 +3423,6 @@
   9.981                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
   9.982                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
   9.983                  break;
   9.984 -            case SDL_COPY_MOD:
   9.985 -                dstR = (srcR * dstR) / 255;
   9.986 -                dstG = (srcG * dstG) / 255;
   9.987 -                dstB = (srcB * dstB) / 255;
   9.988 -                break;
   9.989              }
   9.990              dstpixel = ((Uint32)dstA << 24) | ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
   9.991              *dst = dstpixel;
   9.992 @@ -3912,14 +3492,7 @@
   9.993                      srcB = (srcB * srcA) / 255;
   9.994                  }
   9.995              }
   9.996 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   9.997 -            case SDL_COPY_MASK:
   9.998 -                if (srcA) {
   9.999 -                    dstR = srcR;
  9.1000 -                    dstG = srcG;
  9.1001 -                    dstB = srcB;
  9.1002 -                }
  9.1003 -                break;
  9.1004 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1005              case SDL_COPY_BLEND:
  9.1006                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1007                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1008 @@ -3930,11 +3503,6 @@
  9.1009                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1010                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1011                  break;
  9.1012 -            case SDL_COPY_MOD:
  9.1013 -                dstR = (srcR * dstR) / 255;
  9.1014 -                dstG = (srcG * dstG) / 255;
  9.1015 -                dstB = (srcB * dstB) / 255;
  9.1016 -                break;
  9.1017              }
  9.1018              dstpixel = ((Uint32)dstA << 24) | ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
  9.1019              *dst = dstpixel;
  9.1020 @@ -4015,14 +3583,7 @@
  9.1021                      srcB = (srcB * srcA) / 255;
  9.1022                  }
  9.1023              }
  9.1024 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1025 -            case SDL_COPY_MASK:
  9.1026 -                if (srcA) {
  9.1027 -                    dstR = srcR;
  9.1028 -                    dstG = srcG;
  9.1029 -                    dstB = srcB;
  9.1030 -                }
  9.1031 -                break;
  9.1032 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1033              case SDL_COPY_BLEND:
  9.1034                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1035                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1036 @@ -4033,11 +3594,6 @@
  9.1037                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1038                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1039                  break;
  9.1040 -            case SDL_COPY_MOD:
  9.1041 -                dstR = (srcR * dstR) / 255;
  9.1042 -                dstG = (srcG * dstG) / 255;
  9.1043 -                dstB = (srcB * dstB) / 255;
  9.1044 -                break;
  9.1045              }
  9.1046              dstpixel = ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
  9.1047              *dst = dstpixel;
  9.1048 @@ -4095,14 +3651,7 @@
  9.1049                      srcB = (srcB * srcA) / 255;
  9.1050                  }
  9.1051              }
  9.1052 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1053 -            case SDL_COPY_MASK:
  9.1054 -                if (srcA) {
  9.1055 -                    dstR = srcR;
  9.1056 -                    dstG = srcG;
  9.1057 -                    dstB = srcB;
  9.1058 -                }
  9.1059 -                break;
  9.1060 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1061              case SDL_COPY_BLEND:
  9.1062                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1063                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1064 @@ -4113,11 +3662,6 @@
  9.1065                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1066                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1067                  break;
  9.1068 -            case SDL_COPY_MOD:
  9.1069 -                dstR = (srcR * dstR) / 255;
  9.1070 -                dstG = (srcG * dstG) / 255;
  9.1071 -                dstB = (srcB * dstB) / 255;
  9.1072 -                break;
  9.1073              }
  9.1074              dstpixel = ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
  9.1075              *dst = dstpixel;
  9.1076 @@ -4257,14 +3801,7 @@
  9.1077                      srcB = (srcB * srcA) / 255;
  9.1078                  }
  9.1079              }
  9.1080 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1081 -            case SDL_COPY_MASK:
  9.1082 -                if (srcA) {
  9.1083 -                    dstR = srcR;
  9.1084 -                    dstG = srcG;
  9.1085 -                    dstB = srcB;
  9.1086 -                }
  9.1087 -                break;
  9.1088 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1089              case SDL_COPY_BLEND:
  9.1090                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1091                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1092 @@ -4275,11 +3812,6 @@
  9.1093                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1094                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1095                  break;
  9.1096 -            case SDL_COPY_MOD:
  9.1097 -                dstR = (srcR * dstR) / 255;
  9.1098 -                dstG = (srcG * dstG) / 255;
  9.1099 -                dstB = (srcB * dstB) / 255;
  9.1100 -                break;
  9.1101              }
  9.1102              dstpixel = ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
  9.1103              *dst = dstpixel;
  9.1104 @@ -4349,14 +3881,7 @@
  9.1105                      srcB = (srcB * srcA) / 255;
  9.1106                  }
  9.1107              }
  9.1108 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1109 -            case SDL_COPY_MASK:
  9.1110 -                if (srcA) {
  9.1111 -                    dstR = srcR;
  9.1112 -                    dstG = srcG;
  9.1113 -                    dstB = srcB;
  9.1114 -                }
  9.1115 -                break;
  9.1116 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1117              case SDL_COPY_BLEND:
  9.1118                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1119                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1120 @@ -4367,11 +3892,6 @@
  9.1121                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1122                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1123                  break;
  9.1124 -            case SDL_COPY_MOD:
  9.1125 -                dstR = (srcR * dstR) / 255;
  9.1126 -                dstG = (srcG * dstG) / 255;
  9.1127 -                dstB = (srcB * dstB) / 255;
  9.1128 -                break;
  9.1129              }
  9.1130              dstpixel = ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
  9.1131              *dst = dstpixel;
  9.1132 @@ -4452,14 +3972,7 @@
  9.1133                      srcB = (srcB * srcA) / 255;
  9.1134                  }
  9.1135              }
  9.1136 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1137 -            case SDL_COPY_MASK:
  9.1138 -                if (srcA) {
  9.1139 -                    dstR = srcR;
  9.1140 -                    dstG = srcG;
  9.1141 -                    dstB = srcB;
  9.1142 -                }
  9.1143 -                break;
  9.1144 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1145              case SDL_COPY_BLEND:
  9.1146                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1147                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1148 @@ -4470,11 +3983,6 @@
  9.1149                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1150                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1151                  break;
  9.1152 -            case SDL_COPY_MOD:
  9.1153 -                dstR = (srcR * dstR) / 255;
  9.1154 -                dstG = (srcG * dstG) / 255;
  9.1155 -                dstB = (srcB * dstB) / 255;
  9.1156 -                break;
  9.1157              }
  9.1158              dstpixel = ((Uint32)dstB << 16) | ((Uint32)dstG << 8) | dstR;
  9.1159              *dst = dstpixel;
  9.1160 @@ -4532,14 +4040,7 @@
  9.1161                      srcB = (srcB * srcA) / 255;
  9.1162                  }
  9.1163              }
  9.1164 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1165 -            case SDL_COPY_MASK:
  9.1166 -                if (srcA) {
  9.1167 -                    dstR = srcR;
  9.1168 -                    dstG = srcG;
  9.1169 -                    dstB = srcB;
  9.1170 -                }
  9.1171 -                break;
  9.1172 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1173              case SDL_COPY_BLEND:
  9.1174                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1175                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1176 @@ -4550,11 +4051,6 @@
  9.1177                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1178                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1179                  break;
  9.1180 -            case SDL_COPY_MOD:
  9.1181 -                dstR = (srcR * dstR) / 255;
  9.1182 -                dstG = (srcG * dstG) / 255;
  9.1183 -                dstB = (srcB * dstB) / 255;
  9.1184 -                break;
  9.1185              }
  9.1186              dstpixel = ((Uint32)dstB << 16) | ((Uint32)dstG << 8) | dstR;
  9.1187              *dst = dstpixel;
  9.1188 @@ -4694,14 +4190,7 @@
  9.1189                      srcB = (srcB * srcA) / 255;
  9.1190                  }
  9.1191              }
  9.1192 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1193 -            case SDL_COPY_MASK:
  9.1194 -                if (srcA) {
  9.1195 -                    dstR = srcR;
  9.1196 -                    dstG = srcG;
  9.1197 -                    dstB = srcB;
  9.1198 -                }
  9.1199 -                break;
  9.1200 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1201              case SDL_COPY_BLEND:
  9.1202                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1203                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1204 @@ -4712,11 +4201,6 @@
  9.1205                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1206                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1207                  break;
  9.1208 -            case SDL_COPY_MOD:
  9.1209 -                dstR = (srcR * dstR) / 255;
  9.1210 -                dstG = (srcG * dstG) / 255;
  9.1211 -                dstB = (srcB * dstB) / 255;
  9.1212 -                break;
  9.1213              }
  9.1214              dstpixel = ((Uint32)dstB << 16) | ((Uint32)dstG << 8) | dstR;
  9.1215              *dst = dstpixel;
  9.1216 @@ -4786,14 +4270,7 @@
  9.1217                      srcB = (srcB * srcA) / 255;
  9.1218                  }
  9.1219              }
  9.1220 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1221 -            case SDL_COPY_MASK:
  9.1222 -                if (srcA) {
  9.1223 -                    dstR = srcR;
  9.1224 -                    dstG = srcG;
  9.1225 -                    dstB = srcB;
  9.1226 -                }
  9.1227 -                break;
  9.1228 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1229              case SDL_COPY_BLEND:
  9.1230                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1231                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1232 @@ -4804,11 +4281,6 @@
  9.1233                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1234                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1235                  break;
  9.1236 -            case SDL_COPY_MOD:
  9.1237 -                dstR = (srcR * dstR) / 255;
  9.1238 -                dstG = (srcG * dstG) / 255;
  9.1239 -                dstB = (srcB * dstB) / 255;
  9.1240 -                break;
  9.1241              }
  9.1242              dstpixel = ((Uint32)dstB << 16) | ((Uint32)dstG << 8) | dstR;
  9.1243              *dst = dstpixel;
  9.1244 @@ -4889,14 +4361,7 @@
  9.1245                      srcB = (srcB * srcA) / 255;
  9.1246                  }
  9.1247              }
  9.1248 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1249 -            case SDL_COPY_MASK:
  9.1250 -                if (srcA) {
  9.1251 -                    dstR = srcR;
  9.1252 -                    dstG = srcG;
  9.1253 -                    dstB = srcB;
  9.1254 -                }
  9.1255 -                break;
  9.1256 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1257              case SDL_COPY_BLEND:
  9.1258                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1259                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1260 @@ -4907,11 +4372,6 @@
  9.1261                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1262                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1263                  break;
  9.1264 -            case SDL_COPY_MOD:
  9.1265 -                dstR = (srcR * dstR) / 255;
  9.1266 -                dstG = (srcG * dstG) / 255;
  9.1267 -                dstB = (srcB * dstB) / 255;
  9.1268 -                break;
  9.1269              }
  9.1270              dstpixel = ((Uint32)dstA << 24) | ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
  9.1271              *dst = dstpixel;
  9.1272 @@ -4969,14 +4429,7 @@
  9.1273                      srcB = (srcB * srcA) / 255;
  9.1274                  }
  9.1275              }
  9.1276 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1277 -            case SDL_COPY_MASK:
  9.1278 -                if (srcA) {
  9.1279 -                    dstR = srcR;
  9.1280 -                    dstG = srcG;
  9.1281 -                    dstB = srcB;
  9.1282 -                }
  9.1283 -                break;
  9.1284 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1285              case SDL_COPY_BLEND:
  9.1286                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1287                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1288 @@ -4987,11 +4440,6 @@
  9.1289                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1290                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1291                  break;
  9.1292 -            case SDL_COPY_MOD:
  9.1293 -                dstR = (srcR * dstR) / 255;
  9.1294 -                dstG = (srcG * dstG) / 255;
  9.1295 -                dstB = (srcB * dstB) / 255;
  9.1296 -                break;
  9.1297              }
  9.1298              dstpixel = ((Uint32)dstA << 24) | ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
  9.1299              *dst = dstpixel;
  9.1300 @@ -5131,14 +4579,7 @@
  9.1301                      srcB = (srcB * srcA) / 255;
  9.1302                  }
  9.1303              }
  9.1304 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1305 -            case SDL_COPY_MASK:
  9.1306 -                if (srcA) {
  9.1307 -                    dstR = srcR;
  9.1308 -                    dstG = srcG;
  9.1309 -                    dstB = srcB;
  9.1310 -                }
  9.1311 -                break;
  9.1312 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1313              case SDL_COPY_BLEND:
  9.1314                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1315                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1316 @@ -5149,11 +4590,6 @@
  9.1317                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1318                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1319                  break;
  9.1320 -            case SDL_COPY_MOD:
  9.1321 -                dstR = (srcR * dstR) / 255;
  9.1322 -                dstG = (srcG * dstG) / 255;
  9.1323 -                dstB = (srcB * dstB) / 255;
  9.1324 -                break;
  9.1325              }
  9.1326              dstpixel = ((Uint32)dstA << 24) | ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
  9.1327              *dst = dstpixel;
  9.1328 @@ -5223,14 +4659,7 @@
  9.1329                      srcB = (srcB * srcA) / 255;
  9.1330                  }
  9.1331              }
  9.1332 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1333 -            case SDL_COPY_MASK:
  9.1334 -                if (srcA) {
  9.1335 -                    dstR = srcR;
  9.1336 -                    dstG = srcG;
  9.1337 -                    dstB = srcB;
  9.1338 -                }
  9.1339 -                break;
  9.1340 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1341              case SDL_COPY_BLEND:
  9.1342                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1343                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1344 @@ -5241,11 +4670,6 @@
  9.1345                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1346                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1347                  break;
  9.1348 -            case SDL_COPY_MOD:
  9.1349 -                dstR = (srcR * dstR) / 255;
  9.1350 -                dstG = (srcG * dstG) / 255;
  9.1351 -                dstB = (srcB * dstB) / 255;
  9.1352 -                break;
  9.1353              }
  9.1354              dstpixel = ((Uint32)dstA << 24) | ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
  9.1355              *dst = dstpixel;
  9.1356 @@ -5326,14 +4750,7 @@
  9.1357                      srcB = (srcB * srcA) / 255;
  9.1358                  }
  9.1359              }
  9.1360 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1361 -            case SDL_COPY_MASK:
  9.1362 -                if (srcA) {
  9.1363 -                    dstR = srcR;
  9.1364 -                    dstG = srcG;
  9.1365 -                    dstB = srcB;
  9.1366 -                }
  9.1367 -                break;
  9.1368 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1369              case SDL_COPY_BLEND:
  9.1370                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1371                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1372 @@ -5344,11 +4761,6 @@
  9.1373                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1374                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1375                  break;
  9.1376 -            case SDL_COPY_MOD:
  9.1377 -                dstR = (srcR * dstR) / 255;
  9.1378 -                dstG = (srcG * dstG) / 255;
  9.1379 -                dstB = (srcB * dstB) / 255;
  9.1380 -                break;
  9.1381              }
  9.1382              dstpixel = ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
  9.1383              *dst = dstpixel;
  9.1384 @@ -5406,14 +4818,7 @@
  9.1385                      srcB = (srcB * srcA) / 255;
  9.1386                  }
  9.1387              }
  9.1388 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1389 -            case SDL_COPY_MASK:
  9.1390 -                if (srcA) {
  9.1391 -                    dstR = srcR;
  9.1392 -                    dstG = srcG;
  9.1393 -                    dstB = srcB;
  9.1394 -                }
  9.1395 -                break;
  9.1396 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1397              case SDL_COPY_BLEND:
  9.1398                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1399                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1400 @@ -5424,11 +4829,6 @@
  9.1401                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1402                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1403                  break;
  9.1404 -            case SDL_COPY_MOD:
  9.1405 -                dstR = (srcR * dstR) / 255;
  9.1406 -                dstG = (srcG * dstG) / 255;
  9.1407 -                dstB = (srcB * dstB) / 255;
  9.1408 -                break;
  9.1409              }
  9.1410              dstpixel = ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
  9.1411              *dst = dstpixel;
  9.1412 @@ -5568,14 +4968,7 @@
  9.1413                      srcB = (srcB * srcA) / 255;
  9.1414                  }
  9.1415              }
  9.1416 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1417 -            case SDL_COPY_MASK:
  9.1418 -                if (srcA) {
  9.1419 -                    dstR = srcR;
  9.1420 -                    dstG = srcG;
  9.1421 -                    dstB = srcB;
  9.1422 -                }
  9.1423 -                break;
  9.1424 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1425              case SDL_COPY_BLEND:
  9.1426                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1427                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1428 @@ -5586,11 +4979,6 @@
  9.1429                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1430                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1431                  break;
  9.1432 -            case SDL_COPY_MOD:
  9.1433 -                dstR = (srcR * dstR) / 255;
  9.1434 -                dstG = (srcG * dstG) / 255;
  9.1435 -                dstB = (srcB * dstB) / 255;
  9.1436 -                break;
  9.1437              }
  9.1438              dstpixel = ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
  9.1439              *dst = dstpixel;
  9.1440 @@ -5660,14 +5048,7 @@
  9.1441                      srcB = (srcB * srcA) / 255;
  9.1442                  }
  9.1443              }
  9.1444 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1445 -            case SDL_COPY_MASK:
  9.1446 -                if (srcA) {
  9.1447 -                    dstR = srcR;
  9.1448 -                    dstG = srcG;
  9.1449 -                    dstB = srcB;
  9.1450 -                }
  9.1451 -                break;
  9.1452 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1453              case SDL_COPY_BLEND:
  9.1454                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1455                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1456 @@ -5678,11 +5059,6 @@
  9.1457                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1458                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1459                  break;
  9.1460 -            case SDL_COPY_MOD:
  9.1461 -                dstR = (srcR * dstR) / 255;
  9.1462 -                dstG = (srcG * dstG) / 255;
  9.1463 -                dstB = (srcB * dstB) / 255;
  9.1464 -                break;
  9.1465              }
  9.1466              dstpixel = ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
  9.1467              *dst = dstpixel;
  9.1468 @@ -5763,14 +5139,7 @@
  9.1469                      srcB = (srcB * srcA) / 255;
  9.1470                  }
  9.1471              }
  9.1472 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1473 -            case SDL_COPY_MASK:
  9.1474 -                if (srcA) {
  9.1475 -                    dstR = srcR;
  9.1476 -                    dstG = srcG;
  9.1477 -                    dstB = srcB;
  9.1478 -                }
  9.1479 -                break;
  9.1480 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1481              case SDL_COPY_BLEND:
  9.1482                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1483                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1484 @@ -5781,11 +5150,6 @@
  9.1485                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1486                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1487                  break;
  9.1488 -            case SDL_COPY_MOD:
  9.1489 -                dstR = (srcR * dstR) / 255;
  9.1490 -                dstG = (srcG * dstG) / 255;
  9.1491 -                dstB = (srcB * dstB) / 255;
  9.1492 -                break;
  9.1493              }
  9.1494              dstpixel = ((Uint32)dstB << 16) | ((Uint32)dstG << 8) | dstR;
  9.1495              *dst = dstpixel;
  9.1496 @@ -5843,14 +5207,7 @@
  9.1497                      srcB = (srcB * srcA) / 255;
  9.1498                  }
  9.1499              }
  9.1500 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1501 -            case SDL_COPY_MASK:
  9.1502 -                if (srcA) {
  9.1503 -                    dstR = srcR;
  9.1504 -                    dstG = srcG;
  9.1505 -                    dstB = srcB;
  9.1506 -                }
  9.1507 -                break;
  9.1508 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1509              case SDL_COPY_BLEND:
  9.1510                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1511                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1512 @@ -5861,11 +5218,6 @@
  9.1513                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1514                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1515                  break;
  9.1516 -            case SDL_COPY_MOD:
  9.1517 -                dstR = (srcR * dstR) / 255;
  9.1518 -                dstG = (srcG * dstG) / 255;
  9.1519 -                dstB = (srcB * dstB) / 255;
  9.1520 -                break;
  9.1521              }
  9.1522              dstpixel = ((Uint32)dstB << 16) | ((Uint32)dstG << 8) | dstR;
  9.1523              *dst = dstpixel;
  9.1524 @@ -6005,14 +5357,7 @@
  9.1525                      srcB = (srcB * srcA) / 255;
  9.1526                  }
  9.1527              }
  9.1528 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1529 -            case SDL_COPY_MASK:
  9.1530 -                if (srcA) {
  9.1531 -                    dstR = srcR;
  9.1532 -                    dstG = srcG;
  9.1533 -                    dstB = srcB;
  9.1534 -                }
  9.1535 -                break;
  9.1536 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1537              case SDL_COPY_BLEND:
  9.1538                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1539                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1540 @@ -6023,11 +5368,6 @@
  9.1541                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1542                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1543                  break;
  9.1544 -            case SDL_COPY_MOD:
  9.1545 -                dstR = (srcR * dstR) / 255;
  9.1546 -                dstG = (srcG * dstG) / 255;
  9.1547 -                dstB = (srcB * dstB) / 255;
  9.1548 -                break;
  9.1549              }
  9.1550              dstpixel = ((Uint32)dstB << 16) | ((Uint32)dstG << 8) | dstR;
  9.1551              *dst = dstpixel;
  9.1552 @@ -6097,14 +5437,7 @@
  9.1553                      srcB = (srcB * srcA) / 255;
  9.1554                  }
  9.1555              }
  9.1556 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1557 -            case SDL_COPY_MASK:
  9.1558 -                if (srcA) {
  9.1559 -                    dstR = srcR;
  9.1560 -                    dstG = srcG;
  9.1561 -                    dstB = srcB;
  9.1562 -                }
  9.1563 -                break;
  9.1564 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1565              case SDL_COPY_BLEND:
  9.1566                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1567                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1568 @@ -6115,11 +5448,6 @@
  9.1569                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1570                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1571                  break;
  9.1572 -            case SDL_COPY_MOD:
  9.1573 -                dstR = (srcR * dstR) / 255;
  9.1574 -                dstG = (srcG * dstG) / 255;
  9.1575 -                dstB = (srcB * dstB) / 255;
  9.1576 -                break;
  9.1577              }
  9.1578              dstpixel = ((Uint32)dstB << 16) | ((Uint32)dstG << 8) | dstR;
  9.1579              *dst = dstpixel;
  9.1580 @@ -6200,14 +5528,7 @@
  9.1581                      srcB = (srcB * srcA) / 255;
  9.1582                  }
  9.1583              }
  9.1584 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1585 -            case SDL_COPY_MASK:
  9.1586 -                if (srcA) {
  9.1587 -                    dstR = srcR;
  9.1588 -                    dstG = srcG;
  9.1589 -                    dstB = srcB;
  9.1590 -                }
  9.1591 -                break;
  9.1592 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1593              case SDL_COPY_BLEND:
  9.1594                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1595                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1596 @@ -6218,11 +5539,6 @@
  9.1597                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1598                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1599                  break;
  9.1600 -            case SDL_COPY_MOD:
  9.1601 -                dstR = (srcR * dstR) / 255;
  9.1602 -                dstG = (srcG * dstG) / 255;
  9.1603 -                dstB = (srcB * dstB) / 255;
  9.1604 -                break;
  9.1605              }
  9.1606              dstpixel = ((Uint32)dstA << 24) | ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
  9.1607              *dst = dstpixel;
  9.1608 @@ -6280,14 +5596,7 @@
  9.1609                      srcB = (srcB * srcA) / 255;
  9.1610                  }
  9.1611              }
  9.1612 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1613 -            case SDL_COPY_MASK:
  9.1614 -                if (srcA) {
  9.1615 -                    dstR = srcR;
  9.1616 -                    dstG = srcG;
  9.1617 -                    dstB = srcB;
  9.1618 -                }
  9.1619 -                break;
  9.1620 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1621              case SDL_COPY_BLEND:
  9.1622                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1623                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1624 @@ -6298,11 +5607,6 @@
  9.1625                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1626                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1627                  break;
  9.1628 -            case SDL_COPY_MOD:
  9.1629 -                dstR = (srcR * dstR) / 255;
  9.1630 -                dstG = (srcG * dstG) / 255;
  9.1631 -                dstB = (srcB * dstB) / 255;
  9.1632 -                break;
  9.1633              }
  9.1634              dstpixel = ((Uint32)dstA << 24) | ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
  9.1635              *dst = dstpixel;
  9.1636 @@ -6442,14 +5746,7 @@
  9.1637                      srcB = (srcB * srcA) / 255;
  9.1638                  }
  9.1639              }
  9.1640 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1641 -            case SDL_COPY_MASK:
  9.1642 -                if (srcA) {
  9.1643 -                    dstR = srcR;
  9.1644 -                    dstG = srcG;
  9.1645 -                    dstB = srcB;
  9.1646 -                }
  9.1647 -                break;
  9.1648 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1649              case SDL_COPY_BLEND:
  9.1650                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1651                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1652 @@ -6460,11 +5757,6 @@
  9.1653                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1654                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1655                  break;
  9.1656 -            case SDL_COPY_MOD:
  9.1657 -                dstR = (srcR * dstR) / 255;
  9.1658 -                dstG = (srcG * dstG) / 255;
  9.1659 -                dstB = (srcB * dstB) / 255;
  9.1660 -                break;
  9.1661              }
  9.1662              dstpixel = ((Uint32)dstA << 24) | ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
  9.1663              *dst = dstpixel;
  9.1664 @@ -6534,14 +5826,7 @@
  9.1665                      srcB = (srcB * srcA) / 255;
  9.1666                  }
  9.1667              }
  9.1668 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1669 -            case SDL_COPY_MASK:
  9.1670 -                if (srcA) {
  9.1671 -                    dstR = srcR;
  9.1672 -                    dstG = srcG;
  9.1673 -                    dstB = srcB;
  9.1674 -                }
  9.1675 -                break;
  9.1676 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1677              case SDL_COPY_BLEND:
  9.1678                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1679                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1680 @@ -6552,11 +5837,6 @@
  9.1681                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1682                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1683                  break;
  9.1684 -            case SDL_COPY_MOD:
  9.1685 -                dstR = (srcR * dstR) / 255;
  9.1686 -                dstG = (srcG * dstG) / 255;
  9.1687 -                dstB = (srcB * dstB) / 255;
  9.1688 -                break;
  9.1689              }
  9.1690              dstpixel = ((Uint32)dstA << 24) | ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
  9.1691              *dst = dstpixel;
  9.1692 @@ -6637,14 +5917,7 @@
  9.1693                      srcB = (srcB * srcA) / 255;
  9.1694                  }
  9.1695              }
  9.1696 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1697 -            case SDL_COPY_MASK:
  9.1698 -                if (srcA) {
  9.1699 -                    dstR = srcR;
  9.1700 -                    dstG = srcG;
  9.1701 -                    dstB = srcB;
  9.1702 -                }
  9.1703 -                break;
  9.1704 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1705              case SDL_COPY_BLEND:
  9.1706                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1707                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1708 @@ -6655,11 +5928,6 @@
  9.1709                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1710                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1711                  break;
  9.1712 -            case SDL_COPY_MOD:
  9.1713 -                dstR = (srcR * dstR) / 255;
  9.1714 -                dstG = (srcG * dstG) / 255;
  9.1715 -                dstB = (srcB * dstB) / 255;
  9.1716 -                break;
  9.1717              }
  9.1718              dstpixel = ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
  9.1719              *dst = dstpixel;
  9.1720 @@ -6717,14 +5985,7 @@
  9.1721                      srcB = (srcB * srcA) / 255;
  9.1722                  }
  9.1723              }
  9.1724 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1725 -            case SDL_COPY_MASK:
  9.1726 -                if (srcA) {
  9.1727 -                    dstR = srcR;
  9.1728 -                    dstG = srcG;
  9.1729 -                    dstB = srcB;
  9.1730 -                }
  9.1731 -                break;
  9.1732 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1733              case SDL_COPY_BLEND:
  9.1734                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1735                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1736 @@ -6735,11 +5996,6 @@
  9.1737                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1738                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1739                  break;
  9.1740 -            case SDL_COPY_MOD:
  9.1741 -                dstR = (srcR * dstR) / 255;
  9.1742 -                dstG = (srcG * dstG) / 255;
  9.1743 -                dstB = (srcB * dstB) / 255;
  9.1744 -                break;
  9.1745              }
  9.1746              dstpixel = ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
  9.1747              *dst = dstpixel;
  9.1748 @@ -6879,14 +6135,7 @@
  9.1749                      srcB = (srcB * srcA) / 255;
  9.1750                  }
  9.1751              }
  9.1752 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1753 -            case SDL_COPY_MASK:
  9.1754 -                if (srcA) {
  9.1755 -                    dstR = srcR;
  9.1756 -                    dstG = srcG;
  9.1757 -                    dstB = srcB;
  9.1758 -                }
  9.1759 -                break;
  9.1760 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1761              case SDL_COPY_BLEND:
  9.1762                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1763                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1764 @@ -6897,11 +6146,6 @@
  9.1765                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1766                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1767                  break;
  9.1768 -            case SDL_COPY_MOD:
  9.1769 -                dstR = (srcR * dstR) / 255;
  9.1770 -                dstG = (srcG * dstG) / 255;
  9.1771 -                dstB = (srcB * dstB) / 255;
  9.1772 -                break;
  9.1773              }
  9.1774              dstpixel = ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
  9.1775              *dst = dstpixel;
  9.1776 @@ -6971,14 +6215,7 @@
  9.1777                      srcB = (srcB * srcA) / 255;
  9.1778                  }
  9.1779              }
  9.1780 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1781 -            case SDL_COPY_MASK:
  9.1782 -                if (srcA) {
  9.1783 -                    dstR = srcR;
  9.1784 -                    dstG = srcG;
  9.1785 -                    dstB = srcB;
  9.1786 -                }
  9.1787 -                break;
  9.1788 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1789              case SDL_COPY_BLEND:
  9.1790                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1791                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1792 @@ -6989,11 +6226,6 @@
  9.1793                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1794                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1795                  break;
  9.1796 -            case SDL_COPY_MOD:
  9.1797 -                dstR = (srcR * dstR) / 255;
  9.1798 -                dstG = (srcG * dstG) / 255;
  9.1799 -                dstB = (srcB * dstB) / 255;
  9.1800 -                break;
  9.1801              }
  9.1802              dstpixel = ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
  9.1803              *dst = dstpixel;
  9.1804 @@ -7074,14 +6306,7 @@
  9.1805                      srcB = (srcB * srcA) / 255;
  9.1806                  }
  9.1807              }
  9.1808 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1809 -            case SDL_COPY_MASK:
  9.1810 -                if (srcA) {
  9.1811 -                    dstR = srcR;
  9.1812 -                    dstG = srcG;
  9.1813 -                    dstB = srcB;
  9.1814 -                }
  9.1815 -                break;
  9.1816 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1817              case SDL_COPY_BLEND:
  9.1818                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1819                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1820 @@ -7092,11 +6317,6 @@
  9.1821                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1822                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1823                  break;
  9.1824 -            case SDL_COPY_MOD:
  9.1825 -                dstR = (srcR * dstR) / 255;
  9.1826 -                dstG = (srcG * dstG) / 255;
  9.1827 -                dstB = (srcB * dstB) / 255;
  9.1828 -                break;
  9.1829              }
  9.1830              dstpixel = ((Uint32)dstB << 16) | ((Uint32)dstG << 8) | dstR;
  9.1831              *dst = dstpixel;
  9.1832 @@ -7154,14 +6374,7 @@
  9.1833                      srcB = (srcB * srcA) / 255;
  9.1834                  }
  9.1835              }
  9.1836 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1837 -            case SDL_COPY_MASK:
  9.1838 -                if (srcA) {
  9.1839 -                    dstR = srcR;
  9.1840 -                    dstG = srcG;
  9.1841 -                    dstB = srcB;
  9.1842 -                }
  9.1843 -                break;
  9.1844 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1845              case SDL_COPY_BLEND:
  9.1846                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1847                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1848 @@ -7172,11 +6385,6 @@
  9.1849                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1850                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1851                  break;
  9.1852 -            case SDL_COPY_MOD:
  9.1853 -                dstR = (srcR * dstR) / 255;
  9.1854 -                dstG = (srcG * dstG) / 255;
  9.1855 -                dstB = (srcB * dstB) / 255;
  9.1856 -                break;
  9.1857              }
  9.1858              dstpixel = ((Uint32)dstB << 16) | ((Uint32)dstG << 8) | dstR;
  9.1859              *dst = dstpixel;
  9.1860 @@ -7316,14 +6524,7 @@
  9.1861                      srcB = (srcB * srcA) / 255;
  9.1862                  }
  9.1863              }
  9.1864 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1865 -            case SDL_COPY_MASK:
  9.1866 -                if (srcA) {
  9.1867 -                    dstR = srcR;
  9.1868 -                    dstG = srcG;
  9.1869 -                    dstB = srcB;
  9.1870 -                }
  9.1871 -                break;
  9.1872 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1873              case SDL_COPY_BLEND:
  9.1874                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1875                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1876 @@ -7334,11 +6535,6 @@
  9.1877                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1878                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1879                  break;
  9.1880 -            case SDL_COPY_MOD:
  9.1881 -                dstR = (srcR * dstR) / 255;
  9.1882 -                dstG = (srcG * dstG) / 255;
  9.1883 -                dstB = (srcB * dstB) / 255;
  9.1884 -                break;
  9.1885              }
  9.1886              dstpixel = ((Uint32)dstB << 16) | ((Uint32)dstG << 8) | dstR;
  9.1887              *dst = dstpixel;
  9.1888 @@ -7408,14 +6604,7 @@
  9.1889                      srcB = (srcB * srcA) / 255;
  9.1890                  }
  9.1891              }
  9.1892 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1893 -            case SDL_COPY_MASK:
  9.1894 -                if (srcA) {
  9.1895 -                    dstR = srcR;
  9.1896 -                    dstG = srcG;
  9.1897 -                    dstB = srcB;
  9.1898 -                }
  9.1899 -                break;
  9.1900 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1901              case SDL_COPY_BLEND:
  9.1902                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1903                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1904 @@ -7426,11 +6615,6 @@
  9.1905                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1906                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1907                  break;
  9.1908 -            case SDL_COPY_MOD:
  9.1909 -                dstR = (srcR * dstR) / 255;
  9.1910 -                dstG = (srcG * dstG) / 255;
  9.1911 -                dstB = (srcB * dstB) / 255;
  9.1912 -                break;
  9.1913              }
  9.1914              dstpixel = ((Uint32)dstB << 16) | ((Uint32)dstG << 8) | dstR;
  9.1915              *dst = dstpixel;
  9.1916 @@ -7511,14 +6695,7 @@
  9.1917                      srcB = (srcB * srcA) / 255;
  9.1918                  }
  9.1919              }
  9.1920 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1921 -            case SDL_COPY_MASK:
  9.1922 -                if (srcA) {
  9.1923 -                    dstR = srcR;
  9.1924 -                    dstG = srcG;
  9.1925 -                    dstB = srcB;
  9.1926 -                }
  9.1927 -                break;
  9.1928 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1929              case SDL_COPY_BLEND:
  9.1930                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1931                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1932 @@ -7529,11 +6706,6 @@
  9.1933                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1934                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1935                  break;
  9.1936 -            case SDL_COPY_MOD:
  9.1937 -                dstR = (srcR * dstR) / 255;
  9.1938 -                dstG = (srcG * dstG) / 255;
  9.1939 -                dstB = (srcB * dstB) / 255;
  9.1940 -                break;
  9.1941              }
  9.1942              dstpixel = ((Uint32)dstA << 24) | ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
  9.1943              *dst = dstpixel;
  9.1944 @@ -7591,14 +6763,7 @@
  9.1945                      srcB = (srcB * srcA) / 255;
  9.1946                  }
  9.1947              }
  9.1948 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1949 -            case SDL_COPY_MASK:
  9.1950 -                if (srcA) {
  9.1951 -                    dstR = srcR;
  9.1952 -                    dstG = srcG;
  9.1953 -                    dstB = srcB;
  9.1954 -                }
  9.1955 -                break;
  9.1956 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1957              case SDL_COPY_BLEND:
  9.1958                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1959                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1960 @@ -7609,11 +6774,6 @@
  9.1961                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1962                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1963                  break;
  9.1964 -            case SDL_COPY_MOD:
  9.1965 -                dstR = (srcR * dstR) / 255;
  9.1966 -                dstG = (srcG * dstG) / 255;
  9.1967 -                dstB = (srcB * dstB) / 255;
  9.1968 -                break;
  9.1969              }
  9.1970              dstpixel = ((Uint32)dstA << 24) | ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
  9.1971              *dst = dstpixel;
  9.1972 @@ -7753,14 +6913,7 @@
  9.1973                      srcB = (srcB * srcA) / 255;
  9.1974                  }
  9.1975              }
  9.1976 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.1977 -            case SDL_COPY_MASK:
  9.1978 -                if (srcA) {
  9.1979 -                    dstR = srcR;
  9.1980 -                    dstG = srcG;
  9.1981 -                    dstB = srcB;
  9.1982 -                }
  9.1983 -                break;
  9.1984 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.1985              case SDL_COPY_BLEND:
  9.1986                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.1987                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.1988 @@ -7771,11 +6924,6 @@
  9.1989                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.1990                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.1991                  break;
  9.1992 -            case SDL_COPY_MOD:
  9.1993 -                dstR = (srcR * dstR) / 255;
  9.1994 -                dstG = (srcG * dstG) / 255;
  9.1995 -                dstB = (srcB * dstB) / 255;
  9.1996 -                break;
  9.1997              }
  9.1998              dstpixel = ((Uint32)dstA << 24) | ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
  9.1999              *dst = dstpixel;
  9.2000 @@ -7845,14 +6993,7 @@
  9.2001                      srcB = (srcB * srcA) / 255;
  9.2002                  }
  9.2003              }
  9.2004 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
  9.2005 -            case SDL_COPY_MASK:
  9.2006 -                if (srcA) {
  9.2007 -                    dstR = srcR;
  9.2008 -                    dstG = srcG;
  9.2009 -                    dstB = srcB;
  9.2010 -                }
  9.2011 -                break;
  9.2012 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
  9.2013              case SDL_COPY_BLEND:
  9.2014                  dstR = srcR + ((255 - srcA) * dstR) / 255;
  9.2015                  dstG = srcG + ((255 - srcA) * dstG) / 255;
  9.2016 @@ -7863,11 +7004,6 @@
  9.2017                  dstG = srcG + dstG; if (dstG > 255) dstG = 255;
  9.2018                  dstB = srcB + dstB; if (dstB > 255) dstB = 255;
  9.2019                  break;
  9.2020 -            case SDL_COPY_MOD:
  9.2021 -                dstR = (srcR * dstR) / 255;
  9.2022 -                dstG = (srcG * dstG) / 255;
  9.2023 -                dstB = (srcB * dstB) / 255;
  9.2024 -                break;
  9.2025              }
  9.2026              dstpixel = ((Uint32)dstA << 24) | ((Uint32)dstR << 16) | ((Uint32)dstG << 8) | dstB;
  9.2027              *dst = dstpixel;
  9.2028 @@ -7881,131 +7017,131 @@
  9.2029  
  9.2030  SDL_BlitFuncEntry SDL_GeneratedBlitFuncTable[] = {
  9.2031      { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGB888_RGB888_Scale },
  9.2032 -    { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_RGB888_RGB888_Blend },
  9.2033 -    { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGB888_RGB888_Blend_Scale },
  9.2034 +    { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_RGB888_RGB888_Blend },
  9.2035 +    { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGB888_RGB888_Blend_Scale },
  9.2036      { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA), SDL_CPU_ANY, SDL_Blit_RGB888_RGB888_Modulate },
  9.2037      { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGB888_RGB888_Modulate_Scale },
  9.2038 -    { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_RGB888_RGB888_Modulate_Blend },
  9.2039 -    { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGB888_RGB888_Modulate_Blend_Scale },
  9.2040 +    { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_RGB888_RGB888_Modulate_Blend },
  9.2041 +    { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGB888_RGB888_Modulate_Blend_Scale },
  9.2042      { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGB888_BGR888_Scale },
  9.2043 -    { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_RGB888_BGR888_Blend },
  9.2044 -    { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGB888_BGR888_Blend_Scale },
  9.2045 +    { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_RGB888_BGR888_Blend },
  9.2046 +    { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGB888_BGR888_Blend_Scale },
  9.2047      { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA), SDL_CPU_ANY, SDL_Blit_RGB888_BGR888_Modulate },
  9.2048      { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGB888_BGR888_Modulate_Scale },
  9.2049 -    { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_RGB888_BGR888_Modulate_Blend },
  9.2050 -    { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGB888_BGR888_Modulate_Blend_Scale },
  9.2051 +    { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_RGB888_BGR888_Modulate_Blend },
  9.2052 +    { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGB888_BGR888_Modulate_Blend_Scale },
  9.2053      { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGB888_ARGB8888_Scale },
  9.2054 -    { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_RGB888_ARGB8888_Blend },
  9.2055 -    { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGB888_ARGB8888_Blend_Scale },
  9.2056 +    { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_RGB888_ARGB8888_Blend },
  9.2057 +    { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGB888_ARGB8888_Blend_Scale },
  9.2058      { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA), SDL_CPU_ANY, SDL_Blit_RGB888_ARGB8888_Modulate },
  9.2059      { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGB888_ARGB8888_Modulate_Scale },
  9.2060 -    { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_RGB888_ARGB8888_Modulate_Blend },
  9.2061 -    { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGB888_ARGB8888_Modulate_Blend_Scale },
  9.2062 +    { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_RGB888_ARGB8888_Modulate_Blend },
  9.2063 +    { SDL_PIXELFORMAT_RGB888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGB888_ARGB8888_Modulate_Blend_Scale },
  9.2064      { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGR888_RGB888_Scale },
  9.2065 -    { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_BGR888_RGB888_Blend },
  9.2066 -    { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGR888_RGB888_Blend_Scale },
  9.2067 +    { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_BGR888_RGB888_Blend },
  9.2068 +    { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGR888_RGB888_Blend_Scale },
  9.2069      { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA), SDL_CPU_ANY, SDL_Blit_BGR888_RGB888_Modulate },
  9.2070      { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGR888_RGB888_Modulate_Scale },
  9.2071 -    { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_BGR888_RGB888_Modulate_Blend },
  9.2072 -    { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGR888_RGB888_Modulate_Blend_Scale },
  9.2073 +    { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_BGR888_RGB888_Modulate_Blend },
  9.2074 +    { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGR888_RGB888_Modulate_Blend_Scale },
  9.2075      { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGR888_BGR888_Scale },
  9.2076 -    { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_BGR888_BGR888_Blend },
  9.2077 -    { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGR888_BGR888_Blend_Scale },
  9.2078 +    { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_BGR888_BGR888_Blend },
  9.2079 +    { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGR888_BGR888_Blend_Scale },
  9.2080      { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA), SDL_CPU_ANY, SDL_Blit_BGR888_BGR888_Modulate },
  9.2081      { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGR888_BGR888_Modulate_Scale },
  9.2082 -    { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_BGR888_BGR888_Modulate_Blend },
  9.2083 -    { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGR888_BGR888_Modulate_Blend_Scale },
  9.2084 +    { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_BGR888_BGR888_Modulate_Blend },
  9.2085 +    { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGR888_BGR888_Modulate_Blend_Scale },
  9.2086      { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGR888_ARGB8888_Scale },
  9.2087 -    { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_BGR888_ARGB8888_Blend },
  9.2088 -    { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGR888_ARGB8888_Blend_Scale },
  9.2089 +    { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_BGR888_ARGB8888_Blend },
  9.2090 +    { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGR888_ARGB8888_Blend_Scale },
  9.2091      { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA), SDL_CPU_ANY, SDL_Blit_BGR888_ARGB8888_Modulate },
  9.2092      { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGR888_ARGB8888_Modulate_Scale },
  9.2093 -    { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_BGR888_ARGB8888_Modulate_Blend },
  9.2094 -    { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGR888_ARGB8888_Modulate_Blend_Scale },
  9.2095 +    { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_BGR888_ARGB8888_Modulate_Blend },
  9.2096 +    { SDL_PIXELFORMAT_BGR888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGR888_ARGB8888_Modulate_Blend_Scale },
  9.2097      { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ARGB8888_RGB888_Scale },
  9.2098 -    { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_ARGB8888_RGB888_Blend },
  9.2099 -    { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ARGB8888_RGB888_Blend_Scale },
  9.2100 +    { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_ARGB8888_RGB888_Blend },
  9.2101 +    { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ARGB8888_RGB888_Blend_Scale },
  9.2102      { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA), SDL_CPU_ANY, SDL_Blit_ARGB8888_RGB888_Modulate },
  9.2103      { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ARGB8888_RGB888_Modulate_Scale },
  9.2104 -    { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_ARGB8888_RGB888_Modulate_Blend },
  9.2105 -    { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ARGB8888_RGB888_Modulate_Blend_Scale },
  9.2106 +    { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_ARGB8888_RGB888_Modulate_Blend },
  9.2107 +    { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ARGB8888_RGB888_Modulate_Blend_Scale },
  9.2108      { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ARGB8888_BGR888_Scale },
  9.2109 -    { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_ARGB8888_BGR888_Blend },
  9.2110 -    { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ARGB8888_BGR888_Blend_Scale },
  9.2111 +    { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_ARGB8888_BGR888_Blend },
  9.2112 +    { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ARGB8888_BGR888_Blend_Scale },
  9.2113      { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA), SDL_CPU_ANY, SDL_Blit_ARGB8888_BGR888_Modulate },
  9.2114      { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ARGB8888_BGR888_Modulate_Scale },
  9.2115 -    { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_ARGB8888_BGR888_Modulate_Blend },
  9.2116 -    { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ARGB8888_BGR888_Modulate_Blend_Scale },
  9.2117 +    { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_ARGB8888_BGR888_Modulate_Blend },
  9.2118 +    { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ARGB8888_BGR888_Modulate_Blend_Scale },
  9.2119      { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ARGB8888_ARGB8888_Scale },
  9.2120 -    { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_ARGB8888_ARGB8888_Blend },
  9.2121 -    { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ARGB8888_ARGB8888_Blend_Scale },
  9.2122 +    { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_ARGB8888_ARGB8888_Blend },
  9.2123 +    { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ARGB8888_ARGB8888_Blend_Scale },
  9.2124      { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA), SDL_CPU_ANY, SDL_Blit_ARGB8888_ARGB8888_Modulate },
  9.2125      { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ARGB8888_ARGB8888_Modulate_Scale },
  9.2126 -    { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_ARGB8888_ARGB8888_Modulate_Blend },
  9.2127 -    { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ARGB8888_ARGB8888_Modulate_Blend_Scale },
  9.2128 +    { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_ARGB8888_ARGB8888_Modulate_Blend },
  9.2129 +    { SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ARGB8888_ARGB8888_Modulate_Blend_Scale },
  9.2130      { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGBA8888_RGB888_Scale },
  9.2131 -    { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_RGBA8888_RGB888_Blend },
  9.2132 -    { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGBA8888_RGB888_Blend_Scale },
  9.2133 +    { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_RGBA8888_RGB888_Blend },
  9.2134 +    { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGBA8888_RGB888_Blend_Scale },
  9.2135      { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA), SDL_CPU_ANY, SDL_Blit_RGBA8888_RGB888_Modulate },
  9.2136      { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGBA8888_RGB888_Modulate_Scale },
  9.2137 -    { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_RGBA8888_RGB888_Modulate_Blend },
  9.2138 -    { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGBA8888_RGB888_Modulate_Blend_Scale },
  9.2139 +    { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_RGBA8888_RGB888_Modulate_Blend },
  9.2140 +    { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGBA8888_RGB888_Modulate_Blend_Scale },
  9.2141      { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGBA8888_BGR888_Scale },
  9.2142 -    { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_RGBA8888_BGR888_Blend },
  9.2143 -    { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGBA8888_BGR888_Blend_Scale },
  9.2144 +    { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_RGBA8888_BGR888_Blend },
  9.2145 +    { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGBA8888_BGR888_Blend_Scale },
  9.2146      { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA), SDL_CPU_ANY, SDL_Blit_RGBA8888_BGR888_Modulate },
  9.2147      { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGBA8888_BGR888_Modulate_Scale },
  9.2148 -    { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_RGBA8888_BGR888_Modulate_Blend },
  9.2149 -    { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGBA8888_BGR888_Modulate_Blend_Scale },
  9.2150 +    { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_RGBA8888_BGR888_Modulate_Blend },
  9.2151 +    { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGBA8888_BGR888_Modulate_Blend_Scale },
  9.2152      { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGBA8888_ARGB8888_Scale },
  9.2153 -    { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_RGBA8888_ARGB8888_Blend },
  9.2154 -    { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGBA8888_ARGB8888_Blend_Scale },
  9.2155 +    { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_RGBA8888_ARGB8888_Blend },
  9.2156 +    { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGBA8888_ARGB8888_Blend_Scale },
  9.2157      { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA), SDL_CPU_ANY, SDL_Blit_RGBA8888_ARGB8888_Modulate },
  9.2158      { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGBA8888_ARGB8888_Modulate_Scale },
  9.2159 -    { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_RGBA8888_ARGB8888_Modulate_Blend },
  9.2160 -    { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGBA8888_ARGB8888_Modulate_Blend_Scale },
  9.2161 +    { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_RGBA8888_ARGB8888_Modulate_Blend },
  9.2162 +    { SDL_PIXELFORMAT_RGBA8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_RGBA8888_ARGB8888_Modulate_Blend_Scale },
  9.2163      { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ABGR8888_RGB888_Scale },
  9.2164 -    { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_ABGR8888_RGB888_Blend },
  9.2165 -    { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ABGR8888_RGB888_Blend_Scale },
  9.2166 +    { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_ABGR8888_RGB888_Blend },
  9.2167 +    { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ABGR8888_RGB888_Blend_Scale },
  9.2168      { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA), SDL_CPU_ANY, SDL_Blit_ABGR8888_RGB888_Modulate },
  9.2169      { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ABGR8888_RGB888_Modulate_Scale },
  9.2170 -    { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_ABGR8888_RGB888_Modulate_Blend },
  9.2171 -    { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ABGR8888_RGB888_Modulate_Blend_Scale },
  9.2172 +    { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_ABGR8888_RGB888_Modulate_Blend },
  9.2173 +    { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ABGR8888_RGB888_Modulate_Blend_Scale },
  9.2174      { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ABGR8888_BGR888_Scale },
  9.2175 -    { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_ABGR8888_BGR888_Blend },
  9.2176 -    { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ABGR8888_BGR888_Blend_Scale },
  9.2177 +    { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_ABGR8888_BGR888_Blend },
  9.2178 +    { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ABGR8888_BGR888_Blend_Scale },
  9.2179      { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA), SDL_CPU_ANY, SDL_Blit_ABGR8888_BGR888_Modulate },
  9.2180      { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ABGR8888_BGR888_Modulate_Scale },
  9.2181 -    { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_ABGR8888_BGR888_Modulate_Blend },
  9.2182 -    { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ABGR8888_BGR888_Modulate_Blend_Scale },
  9.2183 +    { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_ABGR8888_BGR888_Modulate_Blend },
  9.2184 +    { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ABGR8888_BGR888_Modulate_Blend_Scale },
  9.2185      { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ABGR8888_ARGB8888_Scale },
  9.2186 -    { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_ABGR8888_ARGB8888_Blend },
  9.2187 -    { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ABGR8888_ARGB8888_Blend_Scale },
  9.2188 +    { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_ABGR8888_ARGB8888_Blend },
  9.2189 +    { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ABGR8888_ARGB8888_Blend_Scale },
  9.2190      { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA), SDL_CPU_ANY, SDL_Blit_ABGR8888_ARGB8888_Modulate },
  9.2191      { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ABGR8888_ARGB8888_Modulate_Scale },
  9.2192 -    { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_ABGR8888_ARGB8888_Modulate_Blend },
  9.2193 -    { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ABGR8888_ARGB8888_Modulate_Blend_Scale },
  9.2194 +    { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_ABGR8888_ARGB8888_Modulate_Blend },
  9.2195 +    { SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_ABGR8888_ARGB8888_Modulate_Blend_Scale },
  9.2196      { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGRA8888_RGB888_Scale },
  9.2197 -    { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_BGRA8888_RGB888_Blend },
  9.2198 -    { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGRA8888_RGB888_Blend_Scale },
  9.2199 +    { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_BGRA8888_RGB888_Blend },
  9.2200 +    { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGRA8888_RGB888_Blend_Scale },
  9.2201      { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA), SDL_CPU_ANY, SDL_Blit_BGRA8888_RGB888_Modulate },
  9.2202      { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGRA8888_RGB888_Modulate_Scale },
  9.2203 -    { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_BGRA8888_RGB888_Modulate_Blend },
  9.2204 -    { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGRA8888_RGB888_Modulate_Blend_Scale },
  9.2205 +    { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_BGRA8888_RGB888_Modulate_Blend },
  9.2206 +    { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_RGB888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGRA8888_RGB888_Modulate_Blend_Scale },
  9.2207      { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGRA8888_BGR888_Scale },
  9.2208 -    { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_BGRA8888_BGR888_Blend },
  9.2209 -    { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGRA8888_BGR888_Blend_Scale },
  9.2210 +    { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_BGRA8888_BGR888_Blend },
  9.2211 +    { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGRA8888_BGR888_Blend_Scale },
  9.2212      { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA), SDL_CPU_ANY, SDL_Blit_BGRA8888_BGR888_Modulate },
  9.2213      { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGRA8888_BGR888_Modulate_Scale },
  9.2214 -    { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_BGRA8888_BGR888_Modulate_Blend },
  9.2215 -    { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGRA8888_BGR888_Modulate_Blend_Scale },
  9.2216 +    { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_BGRA8888_BGR888_Modulate_Blend },
  9.2217 +    { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_BGR888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGRA8888_BGR888_Modulate_Blend_Scale },
  9.2218      { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGRA8888_ARGB8888_Scale },
  9.2219 -    { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_BGRA8888_ARGB8888_Blend },
  9.2220 -    { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGRA8888_ARGB8888_Blend_Scale },
  9.2221 +    { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_BGRA8888_ARGB8888_Blend },
  9.2222 +    { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGRA8888_ARGB8888_Blend_Scale },
  9.2223      { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA), SDL_CPU_ANY, SDL_Blit_BGRA8888_ARGB8888_Modulate },
  9.2224      { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGRA8888_ARGB8888_Modulate_Scale },
  9.2225 -    { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD), SDL_CPU_ANY, SDL_Blit_BGRA8888_ARGB8888_Modulate_Blend },
  9.2226 -    { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGRA8888_ARGB8888_Modulate_Blend_Scale },
  9.2227 +    { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD), SDL_CPU_ANY, SDL_Blit_BGRA8888_ARGB8888_Modulate_Blend },
  9.2228 +    { SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_ARGB8888, (SDL_COPY_MODULATE_COLOR | SDL_COPY_MODULATE_ALPHA | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_NEAREST), SDL_CPU_ANY, SDL_Blit_BGRA8888_ARGB8888_Modulate_Blend_Scale },
  9.2229      { 0, 0, 0, 0, NULL }
  9.2230  };
  9.2231  
    10.1 --- a/src/video/SDL_blit_auto.h	Mon Jan 31 22:53:45 2011 -0800
    10.2 +++ b/src/video/SDL_blit_auto.h	Mon Jan 31 23:23:57 2011 -0800
    10.3 @@ -1,7 +1,7 @@
    10.4  /* DO NOT EDIT!  This file is generated by sdlgenblit.pl */
    10.5  /*
    10.6      SDL - Simple DirectMedia Layer
    10.7 -    Copyright (C) 1997-2010 Sam Lantinga
    10.8 +    Copyright (C) 1997-2011 Sam Lantinga
    10.9  
   10.10      This library is free software; you can redistribute it and/or
   10.11      modify it under the terms of the GNU Lesser General Public
    11.1 --- a/src/video/SDL_blit_slow.c	Mon Jan 31 22:53:45 2011 -0800
    11.2 +++ b/src/video/SDL_blit_slow.c	Mon Jan 31 23:23:57 2011 -0800
    11.3 @@ -117,22 +117,13 @@
    11.4                      srcB = (srcB * srcA) / 255;
    11.5                  }
    11.6              }
    11.7 -            switch (flags &
    11.8 -                    (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD |
    11.9 -                     SDL_COPY_MOD)) {
   11.10 +            switch (flags & (SDL_COPY_BLEND | SDL_COPY_ADD)) {
   11.11              case 0:
   11.12                  dstR = srcR;
   11.13                  dstG = srcG;
   11.14                  dstB = srcB;
   11.15                  dstA = srcA;
   11.16                  break;
   11.17 -            case SDL_COPY_MASK:
   11.18 -                if (srcA) {
   11.19 -                    dstR = srcR;
   11.20 -                    dstG = srcG;
   11.21 -                    dstB = srcB;
   11.22 -                }
   11.23 -                break;
   11.24              case SDL_COPY_BLEND:
   11.25                  dstR = srcR + ((255 - srcA) * dstR) / 255;
   11.26                  dstG = srcG + ((255 - srcA) * dstG) / 255;
   11.27 @@ -149,11 +140,6 @@
   11.28                  if (dstB > 255)
   11.29                      dstB = 255;
   11.30                  break;
   11.31 -            case SDL_COPY_MOD:
   11.32 -                dstR = (srcR * dstR) / 255;
   11.33 -                dstG = (srcG * dstG) / 255;
   11.34 -                dstB = (srcB * dstB) / 255;
   11.35 -                break;
   11.36              }
   11.37              if (dst_fmt->Amask) {
   11.38                  ASSEMBLE_RGBA(dst, dstbpp, dst_fmt, dstR, dstG, dstB, dstA);
    12.1 --- a/src/video/SDL_draw.h	Mon Jan 31 22:53:45 2011 -0800
    12.2 +++ b/src/video/SDL_draw.h	Mon Jan 31 23:23:57 2011 -0800
    12.3 @@ -70,16 +70,6 @@
    12.4      setpixel; \
    12.5  } while (0)
    12.6  
    12.7 -#define DRAW_SETPIXEL_MOD(getpixel, setpixel) \
    12.8 -do { \
    12.9 -    unsigned sr, sg, sb, sa; sa; \
   12.10 -    getpixel; \
   12.11 -    sr = DRAW_MUL(sr, r); \
   12.12 -    sg = DRAW_MUL(sg, g); \
   12.13 -    sb = DRAW_MUL(sb, b); \
   12.14 -    setpixel; \
   12.15 -} while (0)
   12.16 -
   12.17  #define DRAW_SETPIXELXY(x, y, type, bpp, op) \
   12.18  do { \
   12.19      type *pixel = (type *)((Uint8 *)dst->pixels + (y) * dst->pitch \
   12.20 @@ -102,10 +92,6 @@
   12.21      DRAW_SETPIXEL_ADD(RGB_FROM_RGB555(*pixel, sr, sg, sb), \
   12.22                        RGB555_FROM_RGB(*pixel, sr, sg, sb))
   12.23  
   12.24 -#define DRAW_SETPIXEL_MOD_RGB555 \
   12.25 -    DRAW_SETPIXEL_MOD(RGB_FROM_RGB555(*pixel, sr, sg, sb), \
   12.26 -                      RGB555_FROM_RGB(*pixel, sr, sg, sb))
   12.27 -
   12.28  #define DRAW_SETPIXELXY_RGB555(x, y) \
   12.29      DRAW_SETPIXELXY(x, y, Uint16, 2, DRAW_SETPIXEL_RGB555)
   12.30  
   12.31 @@ -115,9 +101,6 @@
   12.32  #define DRAW_SETPIXELXY_ADD_RGB555(x, y) \
   12.33      DRAW_SETPIXELXY(x, y, Uint16, 2, DRAW_SETPIXEL_ADD_RGB555)
   12.34  
   12.35 -#define DRAW_SETPIXELXY_MOD_RGB555(x, y) \
   12.36 -    DRAW_SETPIXELXY(x, y, Uint16, 2, DRAW_SETPIXEL_MOD_RGB555)
   12.37 -
   12.38  /*
   12.39   * Define draw operators for RGB565
   12.40   */
   12.41 @@ -133,10 +116,6 @@
   12.42      DRAW_SETPIXEL_ADD(RGB_FROM_RGB565(*pixel, sr, sg, sb), \
   12.43                        RGB565_FROM_RGB(*pixel, sr, sg, sb))
   12.44  
   12.45 -#define DRAW_SETPIXEL_MOD_RGB565 \
   12.46 -    DRAW_SETPIXEL_MOD(RGB_FROM_RGB565(*pixel, sr, sg, sb), \
   12.47 -                      RGB565_FROM_RGB(*pixel, sr, sg, sb))
   12.48 -
   12.49  #define DRAW_SETPIXELXY_RGB565(x, y) \
   12.50      DRAW_SETPIXELXY(x, y, Uint16, 2, DRAW_SETPIXEL_RGB565)
   12.51  
   12.52 @@ -146,9 +125,6 @@
   12.53  #define DRAW_SETPIXELXY_ADD_RGB565(x, y) \
   12.54      DRAW_SETPIXELXY(x, y, Uint16, 2, DRAW_SETPIXEL_ADD_RGB565)
   12.55  
   12.56 -#define DRAW_SETPIXELXY_MOD_RGB565(x, y) \
   12.57 -    DRAW_SETPIXELXY(x, y, Uint16, 2, DRAW_SETPIXEL_MOD_RGB565)
   12.58 -
   12.59  /*
   12.60   * Define draw operators for RGB888
   12.61   */
   12.62 @@ -164,10 +140,6 @@
   12.63      DRAW_SETPIXEL_ADD(RGB_FROM_RGB888(*pixel, sr, sg, sb), \
   12.64                        RGB888_FROM_RGB(*pixel, sr, sg, sb))
   12.65  
   12.66 -#define DRAW_SETPIXEL_MOD_RGB888 \
   12.67 -    DRAW_SETPIXEL_MOD(RGB_FROM_RGB888(*pixel, sr, sg, sb), \
   12.68 -                      RGB888_FROM_RGB(*pixel, sr, sg, sb))
   12.69 -
   12.70  #define DRAW_SETPIXELXY_RGB888(x, y) \
   12.71      DRAW_SETPIXELXY(x, y, Uint32, 4, DRAW_SETPIXEL_RGB888)
   12.72  
   12.73 @@ -177,9 +149,6 @@
   12.74  #define DRAW_SETPIXELXY_ADD_RGB888(x, y) \
   12.75      DRAW_SETPIXELXY(x, y, Uint32, 4, DRAW_SETPIXEL_ADD_RGB888)
   12.76  
   12.77 -#define DRAW_SETPIXELXY_MOD_RGB888(x, y) \
   12.78 -    DRAW_SETPIXELXY(x, y, Uint32, 4, DRAW_SETPIXEL_MOD_RGB888)
   12.79 -
   12.80  /*
   12.81   * Define draw operators for ARGB8888
   12.82   */
   12.83 @@ -195,10 +164,6 @@
   12.84      DRAW_SETPIXEL_ADD(RGBA_FROM_ARGB8888(*pixel, sr, sg, sb, sa), \
   12.85                        ARGB8888_FROM_RGBA(*pixel, sr, sg, sb, sa))
   12.86  
   12.87 -#define DRAW_SETPIXEL_MOD_ARGB8888 \
   12.88 -    DRAW_SETPIXEL_MOD(RGBA_FROM_ARGB8888(*pixel, sr, sg, sb, sa), \
   12.89 -                      ARGB8888_FROM_RGBA(*pixel, sr, sg, sb, sa))
   12.90 -
   12.91  #define DRAW_SETPIXELXY_ARGB8888(x, y) \
   12.92      DRAW_SETPIXELXY(x, y, Uint32, 4, DRAW_SETPIXEL_ARGB8888)
   12.93  
   12.94 @@ -208,9 +173,6 @@
   12.95  #define DRAW_SETPIXELXY_ADD_ARGB8888(x, y) \
   12.96      DRAW_SETPIXELXY(x, y, Uint32, 4, DRAW_SETPIXEL_ADD_ARGB8888)
   12.97  
   12.98 -#define DRAW_SETPIXELXY_MOD_ARGB8888(x, y) \
   12.99 -    DRAW_SETPIXELXY(x, y, Uint32, 4, DRAW_SETPIXEL_MOD_ARGB8888)
  12.100 -
  12.101  /*
  12.102   * Define draw operators for general RGB
  12.103   */
  12.104 @@ -226,10 +188,6 @@
  12.105      DRAW_SETPIXEL_ADD(RGB_FROM_PIXEL(*pixel, fmt, sr, sg, sb), \
  12.106                        PIXEL_FROM_RGB(*pixel, fmt, sr, sg, sb))
  12.107  
  12.108 -#define DRAW_SETPIXEL_MOD_RGB \
  12.109 -    DRAW_SETPIXEL_MOD(RGB_FROM_PIXEL(*pixel, fmt, sr, sg, sb), \
  12.110 -                      PIXEL_FROM_RGB(*pixel, fmt, sr, sg, sb))
  12.111 -
  12.112  #define DRAW_SETPIXELXY2_RGB(x, y) \
  12.113      DRAW_SETPIXELXY(x, y, Uint16, 2, DRAW_SETPIXEL_RGB)
  12.114  
  12.115 @@ -248,12 +206,6 @@
  12.116  #define DRAW_SETPIXELXY4_ADD_RGB(x, y) \
  12.117      DRAW_SETPIXELXY(x, y, Uint32, 4, DRAW_SETPIXEL_ADD_RGB)
  12.118  
  12.119 -#define DRAW_SETPIXELXY2_MOD_RGB(x, y) \
  12.120 -    DRAW_SETPIXELXY(x, y, Uint16, 2, DRAW_SETPIXEL_MOD_RGB)
  12.121 -
  12.122 -#define DRAW_SETPIXELXY4_MOD_RGB(x, y) \
  12.123 -    DRAW_SETPIXELXY(x, y, Uint32, 4, DRAW_SETPIXEL_MOD_RGB)
  12.124 -
  12.125  
  12.126  /*
  12.127   * Define draw operators for general RGBA
  12.128 @@ -270,10 +222,6 @@
  12.129      DRAW_SETPIXEL_ADD(RGBA_FROM_PIXEL(*pixel, fmt, sr, sg, sb, sa), \
  12.130                        PIXEL_FROM_RGBA(*pixel, fmt, sr, sg, sb, sa))
  12.131  
  12.132 -#define DRAW_SETPIXEL_MOD_RGBA \
  12.133 -    DRAW_SETPIXEL_MOD(RGBA_FROM_PIXEL(*pixel, fmt, sr, sg, sb, sa), \
  12.134 -                      PIXEL_FROM_RGBA(*pixel, fmt, sr, sg, sb, sa))
  12.135 -
  12.136  #define DRAW_SETPIXELXY4_RGBA(x, y) \
  12.137      DRAW_SETPIXELXY(x, y, Uint32, 4, DRAW_SETPIXEL_RGBA)
  12.138  
  12.139 @@ -283,9 +231,6 @@
  12.140  #define DRAW_SETPIXELXY4_ADD_RGBA(x, y) \
  12.141      DRAW_SETPIXELXY(x, y, Uint32, 4, DRAW_SETPIXEL_ADD_RGBA)
  12.142  
  12.143 -#define DRAW_SETPIXELXY4_MOD_RGBA(x, y) \
  12.144 -    DRAW_SETPIXELXY(x, y, Uint32, 4, DRAW_SETPIXEL_MOD_RGBA)
  12.145 -
  12.146  /*
  12.147   * Define line drawing macro
  12.148   */
    13.1 --- a/src/video/SDL_renderer_gl.c	Mon Jan 31 22:53:45 2011 -0800
    13.2 +++ b/src/video/SDL_renderer_gl.c	Mon Jan 31 23:23:57 2011 -0800
    13.3 @@ -83,8 +83,6 @@
    13.4                                   SDL_Texture * texture);
    13.5  static int GL_SetTextureAlphaMod(SDL_Renderer * renderer,
    13.6                                   SDL_Texture * texture);
    13.7 -static int GL_SetTextureBlendMode(SDL_Renderer * renderer,
    13.8 -                                  SDL_Texture * texture);
    13.9  static int GL_UpdateTexture(SDL_Renderer * renderer, SDL_Texture * texture,
   13.10                              const SDL_Rect * rect, const void *pixels,
   13.11                              int pitch);
   13.12 @@ -122,8 +120,6 @@
   13.13        SDL_RENDERER_PRESENTVSYNC | SDL_RENDERER_ACCELERATED),
   13.14       (SDL_TEXTUREMODULATE_NONE | SDL_TEXTUREMODULATE_COLOR |
   13.15        SDL_TEXTUREMODULATE_ALPHA),
   13.16 -     (SDL_BLENDMODE_NONE | SDL_BLENDMODE_MASK |
   13.17 -      SDL_BLENDMODE_BLEND | SDL_BLENDMODE_ADD | SDL_BLENDMODE_MOD),
   13.18       15,
   13.19       {
   13.20        SDL_PIXELFORMAT_INDEX1LSB,
   13.21 @@ -175,7 +171,6 @@
   13.22      PFNGLPROGRAMSTRINGARBPROC glProgramStringARB;
   13.23  
   13.24      /* (optional) fragment programs */
   13.25 -    GLuint fragment_program_mask;
   13.26      GLuint fragment_program_UYVY;
   13.27  } GL_RenderData;
   13.28  
   13.29 @@ -298,7 +293,6 @@
   13.30      renderer->GetTexturePalette = GL_GetTexturePalette;
   13.31      renderer->SetTextureColorMod = GL_SetTextureColorMod;
   13.32      renderer->SetTextureAlphaMod = GL_SetTextureAlphaMod;
   13.33 -    renderer->SetTextureBlendMode = GL_SetTextureBlendMode;
   13.34      renderer->UpdateTexture = GL_UpdateTexture;
   13.35      renderer->LockTexture = GL_LockTexture;
   13.36      renderer->UnlockTexture = GL_UnlockTexture;
   13.37 @@ -546,18 +540,6 @@
   13.38  
   13.39  
   13.40  /*
   13.41 - * Fragment program that implements mask semantics
   13.42 - */
   13.43 -static const char *fragment_program_mask_source_code = "!!ARBfp1.0\n"
   13.44 -"OUTPUT output = result.color;\n"
   13.45 -"TEMP value;\n"
   13.46 -"TEX value, fragment.texcoord[0], texture[0], %TEXTURETARGET%;\n"
   13.47 -"MUL value, fragment.color, value;\n"
   13.48 -"SGE value.a, value.a, 0.001;\n"
   13.49 -"MOV output, value;\n"
   13.50 -"END";
   13.51 -
   13.52 -/*
   13.53   * Fragment program that renders from UYVY textures.
   13.54   * The UYVY to RGB equasion is:
   13.55   *   R = 1.164(Y-16) + 1.596(Cr-128)
   13.56 @@ -978,23 +960,6 @@
   13.57  }
   13.58  
   13.59  static int
   13.60 -GL_SetTextureBlendMode(SDL_Renderer * renderer, SDL_Texture * texture)
   13.61 -{
   13.62 -    switch (texture->blendMode) {
   13.63 -    case SDL_BLENDMODE_NONE:
   13.64 -    case SDL_BLENDMODE_MASK:
   13.65 -    case SDL_BLENDMODE_BLEND:
   13.66 -    case SDL_BLENDMODE_ADD:
   13.67 -    case SDL_BLENDMODE_MOD:
   13.68 -        return 0;
   13.69 -    default:
   13.70 -        SDL_Unsupported();
   13.71 -        texture->blendMode = SDL_BLENDMODE_NONE;
   13.72 -        return -1;
   13.73 -    }
   13.74 -}
   13.75 -
   13.76 -static int
   13.77  GL_UpdateTexture(SDL_Renderer * renderer, SDL_Texture * texture,
   13.78                   const SDL_Rect * rect, const void *pixels, int pitch)
   13.79  {
   13.80 @@ -1054,7 +1019,7 @@
   13.81  }
   13.82  
   13.83  static void
   13.84 -GL_SetBlendMode(GL_RenderData * data, int blendMode, int isprimitive)
   13.85 +GL_SetBlendMode(GL_RenderData * data, int blendMode)
   13.86  {
   13.87      if (blendMode != data->blendMode) {
   13.88          switch (blendMode) {
   13.89 @@ -1062,18 +1027,6 @@
   13.90              data->glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE);
   13.91              data->glDisable(GL_BLEND);
   13.92              break;
   13.93 -        case SDL_BLENDMODE_MASK:
   13.94 -            if (isprimitive) {
   13.95 -                /* The same as SDL_BLENDMODE_NONE */
   13.96 -                blendMode = SDL_BLENDMODE_NONE;
   13.97 -                data->glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE);
   13.98 -                data->glDisable(GL_BLEND);
   13.99 -            } else {
  13.100 -                data->glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE);
  13.101 -                data->glEnable(GL_BLEND);
  13.102 -                data->glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
  13.103 -            }
  13.104 -            break;
  13.105          case SDL_BLENDMODE_BLEND:
  13.106              data->glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE);
  13.107              data->glEnable(GL_BLEND);
  13.108 @@ -1084,11 +1037,6 @@
  13.109              data->glEnable(GL_BLEND);
  13.110              data->glBlendFunc(GL_SRC_ALPHA, GL_ONE);
  13.111              break;
  13.112 -        case SDL_BLENDMODE_MOD:
  13.113 -            data->glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE);
  13.114 -            data->glEnable(GL_BLEND);
  13.115 -            data->glBlendFunc(GL_ZERO, GL_SRC_COLOR);
  13.116 -            break;
  13.117          }
  13.118          data->blendMode = blendMode;
  13.119      }
  13.120 @@ -1116,7 +1064,7 @@
  13.121      GL_RenderData *data = (GL_RenderData *) renderer->driverdata;
  13.122      int i;
  13.123  
  13.124 -    GL_SetBlendMode(data, renderer->blendMode, 1);
  13.125 +    GL_SetBlendMode(data, renderer->blendMode);
  13.126  
  13.127      data->glColor4f((GLfloat) renderer->r * inv255f,
  13.128                      (GLfloat) renderer->g * inv255f,
  13.129 @@ -1139,7 +1087,7 @@
  13.130      GL_RenderData *data = (GL_RenderData *) renderer->driverdata;
  13.131      int i;
  13.132  
  13.133 -    GL_SetBlendMode(data, renderer->blendMode, 1);
  13.134 +    GL_SetBlendMode(data, renderer->blendMode);
  13.135  
  13.136      data->glColor4f((GLfloat) renderer->r * inv255f,
  13.137                      (GLfloat) renderer->g * inv255f,
  13.138 @@ -1207,7 +1155,7 @@
  13.139      GL_RenderData *data = (GL_RenderData *) renderer->driverdata;
  13.140      int i, x, y;
  13.141  
  13.142 -    GL_SetBlendMode(data, renderer->blendMode, 1);
  13.143 +    GL_SetBlendMode(data, renderer->blendMode);
  13.144  
  13.145      data->glColor4f((GLfloat) renderer->r * inv255f,
  13.146                      (GLfloat) renderer->g * inv255f,
  13.147 @@ -1245,7 +1193,7 @@
  13.148      GL_RenderData *data = (GL_RenderData *) renderer->driverdata;
  13.149      int i;
  13.150  
  13.151 -    GL_SetBlendMode(data, renderer->blendMode, 1);
  13.152 +    GL_SetBlendMode(data, renderer->blendMode);
  13.153  
  13.154      data->glColor4f((GLfloat) renderer->r * inv255f,
  13.155                      (GLfloat) renderer->g * inv255f,
  13.156 @@ -1267,7 +1215,6 @@
  13.157  {
  13.158      GL_RenderData *data = (GL_RenderData *) renderer->driverdata;
  13.159      GL_TextureData *texturedata = (GL_TextureData *) texture->driverdata;
  13.160 -    GLuint shader = 0;
  13.161      int minx, miny, maxx, maxy;
  13.162      GLfloat minu, maxu, minv, maxv;
  13.163  
  13.164 @@ -1319,28 +1266,12 @@
  13.165          data->glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
  13.166      }
  13.167  
  13.168 -    GL_SetBlendMode(data, texture->blendMode, 0);
  13.169 +    GL_SetBlendMode(data, texture->blendMode);
  13.170  
  13.171 -    /* Set up the shader for the copy, we have a special one for MASK */
  13.172 -    shader = texturedata->shader;
  13.173 -    if (texture->blendMode == SDL_BLENDMODE_MASK && !shader) {
  13.174 -        if (data->fragment_program_mask == 0) {
  13.175 -            data->fragment_program_mask =
  13.176 -                compile_shader(data, GL_FRAGMENT_PROGRAM_ARB,
  13.177 -                               fragment_program_mask_source_code);
  13.178 -            if (data->fragment_program_mask == 0) {
  13.179 -                /* That's okay, we'll just miss some of the blend semantics */
  13.180 -                data->fragment_program_mask = ~0;
  13.181 -            }
  13.182 -        }
  13.183 -        if (data->fragment_program_mask != ~0) {
  13.184 -            shader = data->fragment_program_mask;
  13.185 -        }
  13.186 -    }
  13.187 -
  13.188 -    if (shader) {
  13.189 +    /* Set up the shader for the copy, if any */
  13.190 +    if (texturedata->shader) {
  13.191          data->glEnable(GL_FRAGMENT_PROGRAM_ARB);
  13.192 -        data->glBindProgramARB(GL_FRAGMENT_PROGRAM_ARB, shader);
  13.193 +        data->glBindProgramARB(GL_FRAGMENT_PROGRAM_ARB, texturedata->shader);
  13.194      }
  13.195  
  13.196      data->glBegin(GL_TRIANGLE_STRIP);
  13.197 @@ -1354,7 +1285,7 @@
  13.198      data->glVertex2f((GLfloat) maxx, (GLfloat) maxy);
  13.199      data->glEnd();
  13.200  
  13.201 -    if (shader) {
  13.202 +    if (texturedata->shader) {
  13.203          data->glDisable(GL_FRAGMENT_PROGRAM_ARB);
  13.204      }
  13.205  
  13.206 @@ -1494,11 +1425,6 @@
  13.207              if (data->GL_ARB_fragment_program_supported) {
  13.208                  data->glDisable(GL_FRAGMENT_PROGRAM_ARB);
  13.209                  data->glBindProgramARB(GL_FRAGMENT_PROGRAM_ARB, 0);
  13.210 -                if (data->fragment_program_mask &&
  13.211 -                    data->fragment_program_mask != ~0) {
  13.212 -                    data->glDeleteProgramsARB(1,
  13.213 -                                              &data->fragment_program_mask);
  13.214 -                }
  13.215                  if (data->fragment_program_UYVY &&
  13.216                      data->fragment_program_UYVY != ~0) {
  13.217                      data->glDeleteProgramsARB(1,
    14.1 --- a/src/video/SDL_renderer_gles.c	Mon Jan 31 22:53:45 2011 -0800
    14.2 +++ b/src/video/SDL_renderer_gles.c	Mon Jan 31 23:23:57 2011 -0800
    14.3 @@ -71,8 +71,6 @@
    14.4                                     SDL_Texture * texture);
    14.5  static int GLES_SetTextureAlphaMod(SDL_Renderer * renderer,
    14.6                                     SDL_Texture * texture);
    14.7 -static int GLES_SetTextureBlendMode(SDL_Renderer * renderer,
    14.8 -                                    SDL_Texture * texture);
    14.9  static int GLES_UpdateTexture(SDL_Renderer * renderer, SDL_Texture * texture,
   14.10                                const SDL_Rect * rect, const void *pixels,
   14.11                                int pitch);
   14.12 @@ -108,8 +106,6 @@
   14.13        SDL_RENDERER_PRESENTVSYNC | SDL_RENDERER_ACCELERATED),
   14.14       (SDL_TEXTUREMODULATE_NONE | SDL_TEXTUREMODULATE_COLOR |
   14.15        SDL_TEXTUREMODULATE_ALPHA),
   14.16 -     (SDL_BLENDMODE_NONE | SDL_BLENDMODE_MASK |
   14.17 -      SDL_BLENDMODE_BLEND | SDL_BLENDMODE_ADD | SDL_BLENDMODE_MOD),
   14.18       {
   14.19        /* OpenGL ES 1.x supported formats list */
   14.20        SDL_PIXELFORMAT_RGBA4444,
   14.21 @@ -237,7 +233,6 @@
   14.22      renderer->GetTexturePalette = GLES_GetTexturePalette;
   14.23      renderer->SetTextureColorMod = GLES_SetTextureColorMod;
   14.24      renderer->SetTextureAlphaMod = GLES_SetTextureAlphaMod;
   14.25 -    renderer->SetTextureBlendMode = GLES_SetTextureBlendMode;
   14.26      renderer->UpdateTexture = GLES_UpdateTexture;
   14.27      renderer->LockTexture = GLES_LockTexture;
   14.28      renderer->UnlockTexture = GLES_UnlockTexture;
   14.29 @@ -514,23 +509,6 @@
   14.30  }
   14.31  
   14.32  static int
   14.33 -GLES_SetTextureBlendMode(SDL_Renderer * renderer, SDL_Texture * texture)
   14.34 -{
   14.35 -    switch (texture->blendMode) {
   14.36 -    case SDL_BLENDMODE_NONE:
   14.37 -    case SDL_BLENDMODE_MASK:
   14.38 -    case SDL_BLENDMODE_BLEND:
   14.39 -    case SDL_BLENDMODE_ADD:
   14.40 -    case SDL_BLENDMODE_MOD:
   14.41 -        return 0;
   14.42 -    default:
   14.43 -        SDL_Unsupported();
   14.44 -        texture->blendMode = SDL_BLENDMODE_NONE;
   14.45 -        return -1;
   14.46 -    }
   14.47 -}
   14.48 -
   14.49 -static int
   14.50  GLES_UpdateTexture(SDL_Renderer * renderer, SDL_Texture * texture,
   14.51                     const SDL_Rect * rect, const void *pixels, int pitch)
   14.52  {
   14.53 @@ -612,7 +590,7 @@
   14.54  }
   14.55  
   14.56  static void
   14.57 -GLES_SetBlendMode(GLES_RenderData * data, int blendMode, int isprimitive)
   14.58 +GLES_SetBlendMode(GLES_RenderData * data, int blendMode)
   14.59  {
   14.60      if (blendMode != data->blendMode) {
   14.61          switch (blendMode) {
   14.62 @@ -620,15 +598,6 @@
   14.63              data->glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE);
   14.64              data->glDisable(GL_BLEND);
   14.65              break;
   14.66 -        case SDL_BLENDMODE_MASK:
   14.67 -            if (isprimitive) {
   14.68 -                data->glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE);
   14.69 -                data->glDisable(GL_BLEND);
   14.70 -                /* The same as SDL_BLENDMODE_NONE */
   14.71 -                blendMode = SDL_BLENDMODE_NONE;
   14.72 -                break;
   14.73 -            }
   14.74 -            /* fall through */
   14.75          case SDL_BLENDMODE_BLEND:
   14.76              data->glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE);
   14.77              data->glEnable(GL_BLEND);
   14.78 @@ -639,11 +608,6 @@
   14.79              data->glEnable(GL_BLEND);
   14.80              data->glBlendFunc(GL_SRC_ALPHA, GL_ONE);
   14.81              break;
   14.82 -        case SDL_BLENDMODE_MOD:
   14.83 -            data->glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE);
   14.84 -            data->glEnable(GL_BLEND);
   14.85 -            data->glBlendFunc(GL_ZERO, GL_SRC_COLOR);
   14.86 -            break;
   14.87          }
   14.88          data->blendMode = blendMode;
   14.89      }
   14.90 @@ -657,7 +621,7 @@
   14.91      int i;
   14.92      GLshort *vertices;
   14.93  
   14.94 -    GLES_SetBlendMode(data, renderer->blendMode, 1);
   14.95 +    GLES_SetBlendMode(data, renderer->blendMode);
   14.96  
   14.97      data->glColor4f((GLfloat) renderer->r * inv255f,
   14.98                      (GLfloat) renderer->g * inv255f,
   14.99 @@ -684,7 +648,7 @@
  14.100      int i;
  14.101      GLshort *vertices;
  14.102  
  14.103 -    GLES_SetBlendMode(data, renderer->blendMode, 1);
  14.104 +    GLES_SetBlendMode(data, renderer->blendMode);
  14.105  
  14.106      data->glColor4f((GLfloat) renderer->r * inv255f,
  14.107                      (GLfloat) renderer->g * inv255f,
  14.108 @@ -717,7 +681,7 @@
  14.109      GLES_RenderData *data = (GLES_RenderData *) renderer->driverdata;
  14.110      int i;
  14.111  
  14.112 -    GLES_SetBlendMode(data, renderer->blendMode, 1);
  14.113 +    GLES_SetBlendMode(data, renderer->blendMode);
  14.114  
  14.115      data->glColor4f((GLfloat) renderer->r * inv255f,
  14.116                      (GLfloat) renderer->g * inv255f,
  14.117 @@ -754,7 +718,7 @@
  14.118      GLES_RenderData *data = (GLES_RenderData *) renderer->driverdata;
  14.119      int i;
  14.120  
  14.121 -    GLES_SetBlendMode(data, renderer->blendMode, 1);
  14.122 +    GLES_SetBlendMode(data, renderer->blendMode);
  14.123  
  14.124      data->glColor4f((GLfloat) renderer->r * inv255f,
  14.125                      (GLfloat) renderer->g * inv255f,
  14.126 @@ -853,7 +817,7 @@
  14.127          data->glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
  14.128      }
  14.129  
  14.130 -    GLES_SetBlendMode(data, texture->blendMode, 0);
  14.131 +    GLES_SetBlendMode(data, texture->blendMode);
  14.132  
  14.133      if (data->GL_OES_draw_texture_supported && data->useDrawTexture) {
  14.134          /* this code is a little funny because the viewport is upside down vs SDL's coordinate system */
    15.1 --- a/src/video/SDL_renderer_sw.c	Mon Jan 31 22:53:45 2011 -0800
    15.2 +++ b/src/video/SDL_renderer_sw.c	Mon Jan 31 23:23:57 2011 -0800
    15.3 @@ -49,8 +49,6 @@
    15.4                                   SDL_Texture * texture);
    15.5  static int SW_SetTextureAlphaMod(SDL_Renderer * renderer,
    15.6                                   SDL_Texture * texture);
    15.7 -static int SW_SetTextureBlendMode(SDL_Renderer * renderer,
    15.8 -                                  SDL_Texture * texture);
    15.9  static int SW_UpdateTexture(SDL_Renderer * renderer, SDL_Texture * texture,
   15.10                              const SDL_Rect * rect, const void *pixels,
   15.11                              int pitch);
   15.12 @@ -86,8 +84,6 @@
   15.13        SDL_RENDERER_PRESENTDISCARD | SDL_RENDERER_PRESENTVSYNC),
   15.14       (SDL_TEXTUREMODULATE_NONE | SDL_TEXTUREMODULATE_COLOR |
   15.15        SDL_TEXTUREMODULATE_ALPHA),
   15.16 -     (SDL_BLENDMODE_NONE | SDL_BLENDMODE_MASK |
   15.17 -      SDL_BLENDMODE_BLEND | SDL_BLENDMODE_ADD | SDL_BLENDMODE_MOD),
   15.18       14,
   15.19       {
   15.20        SDL_PIXELFORMAT_INDEX8,
   15.21 @@ -176,14 +172,12 @@
   15.22      renderer->GetTexturePalette = SW_GetTexturePalette;
   15.23      renderer->SetTextureColorMod = SW_SetTextureColorMod;
   15.24      renderer->SetTextureAlphaMod = SW_SetTextureAlphaMod;
   15.25 -    renderer->SetTextureBlendMode = SW_SetTextureBlendMode;
   15.26      renderer->UpdateTexture = SW_UpdateTexture;
   15.27      renderer->LockTexture = SW_LockTexture;
   15.28      renderer->UnlockTexture = SW_UnlockTexture;
   15.29      renderer->DestroyTexture = SW_DestroyTexture;
   15.30  
   15.31      renderer->info.mod_modes = SW_RenderDriver.info.mod_modes;
   15.32 -    renderer->info.blend_modes = SW_RenderDriver.info.blend_modes;
   15.33      renderer->info.num_texture_formats =
   15.34          SW_RenderDriver.info.num_texture_formats;
   15.35      SDL_memcpy(renderer->info.texture_formats,
   15.36 @@ -564,8 +558,7 @@
   15.37      data->surface.clip_rect.h = data->surface.h = rect.h;
   15.38  
   15.39      /* Draw the points! */
   15.40 -    if (renderer->blendMode == SDL_BLENDMODE_NONE ||
   15.41 -        renderer->blendMode == SDL_BLENDMODE_MASK) {
   15.42 +    if (renderer->blendMode == SDL_BLENDMODE_NONE) {
   15.43          Uint32 color = SDL_MapRGBA(data->surface.format,
   15.44                                     renderer->r, renderer->g, renderer->b,
   15.45                                     renderer->a);
   15.46 @@ -629,8 +622,7 @@
   15.47      data->surface.clip_rect.h = data->surface.h = rect.h;
   15.48  
   15.49      /* Draw the points! */
   15.50 -    if (renderer->blendMode == SDL_BLENDMODE_NONE ||
   15.51 -        renderer->blendMode == SDL_BLENDMODE_MASK) {
   15.52 +    if (renderer->blendMode == SDL_BLENDMODE_NONE) {
   15.53          Uint32 color = SDL_MapRGBA(data->surface.format,
   15.54                                     renderer->r, renderer->g, renderer->b,
   15.55                                     renderer->a);
   15.56 @@ -678,8 +670,7 @@
   15.57      clip.w = texture->w;
   15.58      clip.h = texture->h;
   15.59  
   15.60 -    if (renderer->blendMode == SDL_BLENDMODE_NONE ||
   15.61 -        renderer->blendMode == SDL_BLENDMODE_MASK) {
   15.62 +    if (renderer->blendMode == SDL_BLENDMODE_NONE) {
   15.63          color = SDL_MapRGBA(data->surface.format,
   15.64                              renderer->r, renderer->g, renderer->b,
   15.65                              renderer->a);
   15.66 @@ -705,8 +696,7 @@
   15.67          data->surface.clip_rect.w = data->surface.w = rect.w;
   15.68          data->surface.clip_rect.h = data->surface.h = rect.h;
   15.69  
   15.70 -        if (renderer->blendMode == SDL_BLENDMODE_NONE ||
   15.71 -            renderer->blendMode == SDL_BLENDMODE_MASK) {
   15.72 +        if (renderer->blendMode == SDL_BLENDMODE_NONE) {
   15.73              status = SDL_DrawRect(&data->surface, NULL, color);
   15.74          } else {
   15.75              status = SDL_BlendRect(&data->surface, NULL,
   15.76 @@ -736,8 +726,7 @@
   15.77      clip.w = texture->w;
   15.78      clip.h = texture->h;
   15.79  
   15.80 -    if (renderer->blendMode == SDL_BLENDMODE_NONE ||
   15.81 -        renderer->blendMode == SDL_BLENDMODE_MASK) {
   15.82 +    if (renderer->blendMode == SDL_BLENDMODE_NONE) {
   15.83          color = SDL_MapRGBA(data->surface.format,
   15.84                              renderer->r, renderer->g, renderer->b,
   15.85                              renderer->a);
   15.86 @@ -762,8 +751,7 @@
   15.87          data->surface.clip_rect.w = data->surface.w = rect.w;
   15.88          data->surface.clip_rect.h = data->surface.h = rect.h;
   15.89  
   15.90 -        if (renderer->blendMode == SDL_BLENDMODE_NONE ||
   15.91 -            renderer->blendMode == SDL_BLENDMODE_MASK) {
   15.92 +        if (renderer->blendMode == SDL_BLENDMODE_NONE) {
   15.93              status = SDL_FillRect(&data->surface, NULL, color);
   15.94          } else {
   15.95              status = SDL_BlendFillRect(&data->surface, NULL,
    16.1 --- a/src/video/SDL_surface.c	Mon Jan 31 22:53:45 2011 -0800
    16.2 +++ b/src/video/SDL_surface.c	Mon Jan 31 23:23:57 2011 -0800
    16.3 @@ -448,23 +448,16 @@
    16.4  
    16.5      status = 0;
    16.6      flags = surface->map->info.flags;
    16.7 -    surface->map->info.flags &=
    16.8 -        ~(SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD);
    16.9 +    surface->map->info.flags &= ~(SDL_COPY_BLEND | SDL_COPY_ADD);
   16.10      switch (blendMode) {
   16.11      case SDL_BLENDMODE_NONE:
   16.12          break;
   16.13 -    case SDL_BLENDMODE_MASK:
   16.14 -        surface->map->info.flags |= SDL_COPY_MASK;
   16.15 -        break;
   16.16      case SDL_BLENDMODE_BLEND:
   16.17          surface->map->info.flags |= SDL_COPY_BLEND;
   16.18          break;
   16.19      case SDL_BLENDMODE_ADD:
   16.20          surface->map->info.flags |= SDL_COPY_ADD;
   16.21          break;
   16.22 -    case SDL_BLENDMODE_MOD:
   16.23 -        surface->map->info.flags |= SDL_COPY_MOD;
   16.24 -        break;
   16.25      default:
   16.26          SDL_Unsupported();
   16.27          status = -1;
   16.28 @@ -496,21 +489,13 @@
   16.29          return 0;
   16.30      }
   16.31  
   16.32 -    switch (surface->map->
   16.33 -            info.flags & (SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD |
   16.34 -                          SDL_COPY_MOD)) {
   16.35 -    case SDL_COPY_MASK:
   16.36 -        *blendMode = SDL_BLENDMODE_MASK;
   16.37 -        break;
   16.38 +    switch (surface->map->info.flags & (SDL_COPY_BLEND | SDL_COPY_ADD)) {
   16.39      case SDL_COPY_BLEND:
   16.40          *blendMode = SDL_BLENDMODE_BLEND;
   16.41          break;
   16.42      case SDL_COPY_ADD:
   16.43          *blendMode = SDL_BLENDMODE_ADD;
   16.44          break;
   16.45 -    case SDL_COPY_MOD:
   16.46 -        *blendMode = SDL_BLENDMODE_MOD;
   16.47 -        break;
   16.48      default:
   16.49          *blendMode = SDL_BLENDMODE_NONE;
   16.50          break;
    17.1 --- a/src/video/SDL_video.c	Mon Jan 31 22:53:45 2011 -0800
    17.2 +++ b/src/video/SDL_video.c	Mon Jan 31 23:23:57 2011 -0800
    17.3 @@ -1703,7 +1703,7 @@
    17.4      } else {
    17.5          if (surface->format->Amask
    17.6              || !(surface->map->info.flags &
    17.7 -                 (SDL_COPY_COLORKEY | SDL_COPY_MASK | SDL_COPY_BLEND))) {
    17.8 +                 (SDL_COPY_COLORKEY | SDL_COPY_BLEND))) {
    17.9              Uint32 it;
   17.10              int pfmt;
   17.11  
    18.1 --- a/src/video/directfb/SDL_DirectFB_render.c	Mon Jan 31 22:53:45 2011 -0800
    18.2 +++ b/src/video/directfb/SDL_DirectFB_render.c	Mon Jan 31 23:23:57 2011 -0800
    18.3 @@ -55,8 +55,6 @@
    18.4                                         SDL_Texture * texture);
    18.5  static int DirectFB_SetTextureColorMod(SDL_Renderer * renderer,
    18.6                                         SDL_Texture * texture);
    18.7 -static int DirectFB_SetTextureBlendMode(SDL_Renderer * renderer,
    18.8 -                                        SDL_Texture * texture);
    18.9  static int DirectFB_UpdateTexture(SDL_Renderer * renderer,
   18.10                                    SDL_Texture * texture,
   18.11                                    const SDL_Rect * rect,
   18.12 @@ -100,8 +98,6 @@
   18.13        SDL_RENDERER_ACCELERATED),
   18.14       (SDL_TEXTUREMODULATE_NONE | SDL_TEXTUREMODULATE_COLOR |
   18.15        SDL_TEXTUREMODULATE_ALPHA),
   18.16 -     (SDL_BLENDMODE_NONE | SDL_BLENDMODE_MASK | SDL_BLENDMODE_BLEND |
   18.17 -      SDL_BLENDMODE_ADD | SDL_BLENDMODE_MOD),
   18.18       14,
   18.19       {
   18.20        SDL_PIXELFORMAT_INDEX4LSB,
   18.21 @@ -194,12 +190,6 @@
   18.22              SDL_DFB_CHECK(destsurf->SetSrcBlendFunction(destsurf, DSBF_ONE));
   18.23              SDL_DFB_CHECK(destsurf->SetDstBlendFunction(destsurf, DSBF_ZERO));
   18.24              break;
   18.25 -        case SDL_BLENDMODE_MASK:
   18.26 -            data->blitFlags = DSBLIT_BLEND_ALPHACHANNEL;
   18.27 -            data->drawFlags = DSDRAW_BLEND;
   18.28 -            SDL_DFB_CHECK(destsurf->SetSrcBlendFunction(destsurf, DSBF_SRCALPHA));
   18.29 -            SDL_DFB_CHECK(destsurf->SetDstBlendFunction(destsurf, DSBF_INVSRCALPHA));
   18.30 -            break;
   18.31          case SDL_BLENDMODE_BLEND:
   18.32              data->blitFlags = DSBLIT_BLEND_ALPHACHANNEL;
   18.33              data->drawFlags = DSDRAW_BLEND;
   18.34 @@ -218,12 +208,6 @@
   18.35                  SDL_DFB_CHECK(destsurf->SetSrcBlendFunction(destsurf, DSBF_ONE));
   18.36              SDL_DFB_CHECK(destsurf->SetDstBlendFunction(destsurf, DSBF_ONE));
   18.37              break;
   18.38 -        case SDL_BLENDMODE_MOD:
   18.39 -            data->blitFlags = DSBLIT_BLEND_ALPHACHANNEL;
   18.40 -            data->drawFlags = DSDRAW_BLEND;
   18.41 -            SDL_DFB_CHECK(destsurf->SetSrcBlendFunction(destsurf, DSBF_DESTCOLOR));
   18.42 -            SDL_DFB_CHECK(destsurf->SetDstBlendFunction(destsurf, DSBF_ZERO));
   18.43 -            break;
   18.44          }
   18.45          data->lastBlendMode = blendMode;
   18.46      }
   18.47 @@ -293,7 +277,6 @@
   18.48      renderer->GetTexturePalette = DirectFB_GetTexturePalette;
   18.49      renderer->SetTextureAlphaMod = DirectFB_SetTextureAlphaMod;
   18.50      renderer->SetTextureColorMod = DirectFB_SetTextureColorMod;
   18.51 -    renderer->SetTextureBlendMode = DirectFB_SetTextureBlendMode;
   18.52      renderer->UpdateTexture = DirectFB_UpdateTexture;
   18.53      renderer->LockTexture = DirectFB_LockTexture;
   18.54      renderer->UnlockTexture = DirectFB_UnlockTexture;
   18.55 @@ -665,40 +648,6 @@
   18.56  }
   18.57  
   18.58  static int
   18.59 -DirectFB_SetTextureBlendMode(SDL_Renderer * renderer, SDL_Texture * texture)
   18.60 -{
   18.61 -    switch (texture->blendMode) {
   18.62 -    case SDL_BLENDMODE_NONE:
   18.63 -    case SDL_BLENDMODE_MASK:
   18.64 -    case SDL_BLENDMODE_BLEND:
   18.65 -    case SDL_BLENDMODE_ADD:
   18.66 -    case SDL_BLENDMODE_MOD:
   18.67 -        return 0;
   18.68 -    default:
   18.69 -        SDL_Unsupported();
   18.70 -        texture->blendMode = SDL_BLENDMODE_NONE;
   18.71 -        return -1;
   18.72 -    }
   18.73 -}
   18.74 -
   18.75 -static int
   18.76 -DirectFB_SetDrawBlendMode(SDL_Renderer * renderer)
   18.77 -{
   18.78 -    switch (renderer->blendMode) {
   18.79 -    case SDL_BLENDMODE_NONE:
   18.80 -    case SDL_BLENDMODE_MASK:
   18.81 -    case SDL_BLENDMODE_BLEND:
   18.82 -    case SDL_BLENDMODE_ADD:
   18.83 -    case SDL_BLENDMODE_MOD:
   18.84 -        return 0;
   18.85 -    default:
   18.86 -        SDL_Unsupported();
   18.87 -        renderer->blendMode = SDL_BLENDMODE_NONE;
   18.88 -        return -1;
   18.89 -    }
   18.90 -}
   18.91 -
   18.92 -static int
   18.93  DirectFB_SetTextureScaleMode(SDL_Renderer * renderer, SDL_Texture * texture)
   18.94  {
   18.95  #if (DFB_VERSION_ATLEAST(1,2,0))
   18.96 @@ -852,11 +801,9 @@
   18.97  
   18.98      switch (renderer->blendMode) {
   18.99      case SDL_BLENDMODE_NONE:
  18.100 -    case SDL_BLENDMODE_MASK:
  18.101      case SDL_BLENDMODE_BLEND:
  18.102          break;
  18.103      case SDL_BLENDMODE_ADD:
  18.104 -    case SDL_BLENDMODE_MOD:
  18.105          r = ((int) r * (int) a) / 255;
  18.106          g = ((int) g * (int) a) / 255;
  18.107          b = ((int) b * (int) a) / 255;
    19.1 --- a/src/video/dummy/SDL_nullrender.c	Mon Jan 31 22:53:45 2011 -0800
    19.2 +++ b/src/video/dummy/SDL_nullrender.c	Mon Jan 31 23:23:57 2011 -0800
    19.3 @@ -150,8 +150,7 @@
    19.4          (SDL_DUMMY_RenderData *) renderer->driverdata;
    19.5      SDL_Surface *target = data->screens[data->current_screen];
    19.6  
    19.7 -    if (renderer->blendMode == SDL_BLENDMODE_NONE ||
    19.8 -        renderer->blendMode == SDL_BLENDMODE_MASK) {
    19.9 +    if (renderer->blendMode == SDL_BLENDMODE_NONE) {
   19.10          Uint32 color = SDL_MapRGBA(target->format,
   19.11                                     renderer->r, renderer->g, renderer->b,
   19.12                                     renderer->a);
   19.13 @@ -172,8 +171,7 @@
   19.14          (SDL_DUMMY_RenderData *) renderer->driverdata;
   19.15      SDL_Surface *target = data->screens[data->current_screen];
   19.16  
   19.17 -    if (renderer->blendMode == SDL_BLENDMODE_NONE ||
   19.18 -        renderer->blendMode == SDL_BLENDMODE_MASK) {
   19.19 +    if (renderer->blendMode == SDL_BLENDMODE_NONE) {
   19.20          Uint32 color = SDL_MapRGBA(target->format,
   19.21                                     renderer->r, renderer->g, renderer->b,
   19.22                                     renderer->a);
   19.23 @@ -194,8 +192,7 @@
   19.24          (SDL_DUMMY_RenderData *) renderer->driverdata;
   19.25      SDL_Surface *target = data->screens[data->current_screen];
   19.26  
   19.27 -    if (renderer->blendMode == SDL_BLENDMODE_NONE ||
   19.28 -        renderer->blendMode == SDL_BLENDMODE_MASK) {
   19.29 +    if (renderer->blendMode == SDL_BLENDMODE_NONE) {
   19.30          Uint32 color = SDL_MapRGBA(target->format,
   19.31                                     renderer->r, renderer->g, renderer->b,
   19.32                                     renderer->a);
   19.33 @@ -217,8 +214,7 @@
   19.34          (SDL_DUMMY_RenderData *) renderer->driverdata;
   19.35      SDL_Surface *target = data->screens[data->current_screen];
   19.36  
   19.37 -    if (renderer->blendMode == SDL_BLENDMODE_NONE ||
   19.38 -        renderer->blendMode == SDL_BLENDMODE_MASK) {
   19.39 +    if (renderer->blendMode == SDL_BLENDMODE_NONE) {
   19.40          Uint32 color = SDL_MapRGBA(target->format,
   19.41                                     renderer->r, renderer->g, renderer->b,
   19.42                                     renderer->a);
    20.1 --- a/src/video/nds/SDL_ndsrender.c	Mon Jan 31 22:53:45 2011 -0800
    20.2 +++ b/src/video/nds/SDL_ndsrender.c	Mon Jan 31 23:23:57 2011 -0800
    20.3 @@ -54,8 +54,6 @@
    20.4                                    SDL_Texture * texture);
    20.5  static int NDS_SetTextureAlphaMod(SDL_Renderer * renderer,
    20.6                                    SDL_Texture * texture);
    20.7 -static int NDS_SetTextureBlendMode(SDL_Renderer * renderer,
    20.8 -                                   SDL_Texture * texture);
    20.9  static int NDS_UpdateTexture(SDL_Renderer * renderer, SDL_Texture * texture,
   20.10                               const SDL_Rect * rect, const void *pixels,
   20.11                               int pitch);
   20.12 @@ -79,7 +77,6 @@
   20.13      {"nds",                     /* char* name */
   20.14       (SDL_RENDERER_SINGLEBUFFER | SDL_RENDERER_ACCELERATED | SDL_RENDERER_PRESENTDISCARD | SDL_RENDERER_PRESENTVSYNC),  /* u32 flags */
   20.15       (SDL_TEXTUREMODULATE_NONE),        /* u32 mod_modes */
   20.16 -     (SDL_BLENDMODE_MASK),      /* u32 blend_modes */
   20.17       3,                         /* u32 num_texture_formats */
   20.18       {
   20.19        SDL_PIXELFORMAT_INDEX8,
   20.20 @@ -180,14 +177,12 @@
   20.21      renderer->GetTexturePalette = NDS_GetTexturePalette;
   20.22      renderer->SetTextureColorMod = NDS_SetTextureColorMod;
   20.23      renderer->SetTextureAlphaMod = NDS_SetTextureAlphaMod;
   20.24 -    renderer->SetTextureBlendMode = NDS_SetTextureBlendMode;
   20.25      renderer->UpdateTexture = NDS_UpdateTexture;
   20.26      renderer->LockTexture = NDS_LockTexture;
   20.27      renderer->UnlockTexture = NDS_UnlockTexture;
   20.28      renderer->DestroyTexture = NDS_DestroyTexture;
   20.29  
   20.30      renderer->info.mod_modes = NDS_RenderDriver.info.mod_modes;
   20.31 -    renderer->info.blend_modes = NDS_RenderDriver.info.blend_modes;
   20.32      renderer->info.num_texture_formats =
   20.33          NDS_RenderDriver.info.num_texture_formats;
   20.34      SDL_memcpy(renderer->info.texture_formats,
   20.35 @@ -576,11 +571,4 @@
   20.36      return 0;
   20.37  }
   20.38  
   20.39 -static int
   20.40 -NDS_SetTextureBlendMode(SDL_Renderer * renderer, SDL_Texture * texture)
   20.41 -{
   20.42 -    /* stub! */
   20.43 -    return 0;
   20.44 -}
   20.45 -
   20.46  /* vi: set ts=4 sw=4 expandtab: */
    21.1 --- a/src/video/photon/SDL_photon_render.c	Mon Jan 31 22:53:45 2011 -0800
    21.2 +++ b/src/video/photon/SDL_photon_render.c	Mon Jan 31 23:23:57 2011 -0800
    21.3 @@ -58,8 +58,6 @@
    21.4                                       SDL_Texture * texture);
    21.5  static int photon_settexturealphamod(SDL_Renderer * renderer,
    21.6                                       SDL_Texture * texture);
    21.7 -static int photon_settextureblendmode(SDL_Renderer * renderer,
    21.8 -                                      SDL_Texture * texture);
    21.9  static int photon_settexturescalemode(SDL_Renderer * renderer,
   21.10                                        SDL_Texture * texture);
   21.11  static int photon_updatetexture(SDL_Renderer * renderer,
   21.12 @@ -74,7 +72,6 @@
   21.13                                  SDL_Texture * texture, int numrects,
   21.14                                  const SDL_Rect * rects);
   21.15  static int photon_setdrawcolor(SDL_Renderer * renderer);
   21.16 -static int photon_setdrawblendmode(SDL_Renderer * renderer);
   21.17  static int photon_renderpoint(SDL_Renderer * renderer, int x, int y);
   21.18  static int photon_renderline(SDL_Renderer * renderer, int x1, int y1, int x2,
   21.19                               int y2);
   21.20 @@ -102,8 +99,6 @@
   21.21        SDL_RENDERER_PRESENTVSYNC | SDL_RENDERER_PRESENTDISCARD |
   21.22        SDL_RENDERER_ACCELERATED),
   21.23       (SDL_TEXTUREMODULATE_NONE | SDL_TEXTUREMODULATE_ALPHA),
   21.24 -     (SDL_BLENDMODE_NONE | SDL_BLENDMODE_MASK | SDL_BLENDMODE_BLEND |
   21.25 -      SDL_BLENDMODE_ADD | SDL_BLENDMODE_MOD),
   21.26       10,
   21.27       {SDL_PIXELFORMAT_INDEX8,
   21.28        SDL_PIXELFORMAT_RGB555,
   21.29 @@ -151,13 +146,11 @@
   21.30      renderer->GetTexturePalette = photon_gettexturepalette;
   21.31      renderer->SetTextureAlphaMod = photon_settexturealphamod;
   21.32      renderer->SetTextureColorMod = photon_settexturecolormod;
   21.33 -    renderer->SetTextureBlendMode = photon_settextureblendmode;
   21.34      renderer->UpdateTexture = photon_updatetexture;
   21.35      renderer->LockTexture = photon_locktexture;
   21.36      renderer->UnlockTexture = photon_unlocktexture;
   21.37      renderer->DirtyTexture = photon_dirtytexture;
   21.38      renderer->SetDrawColor = photon_setdrawcolor;
   21.39 -    renderer->SetDrawBlendMode = photon_setdrawblendmode;
   21.40      renderer->RenderPoint = photon_renderpoint;
   21.41      renderer->RenderLine = photon_renderline;
   21.42      renderer->RenderFill = photon_renderfill;
   21.43 @@ -580,14 +573,6 @@
   21.44     /* Switch on requested graphics context modifiers */
   21.45     switch (blendmode)
   21.46     {
   21.47 -      case SDL_BLENDMODE_MASK:
   21.48 -           /* Enable and set chroma key */
   21.49 -           if (blendsource==SDL_PHOTON_TEXTURE_BLEND)
   21.50 -           {
   21.51 -              PgSetChromaCx(rdata->gc, PgRGB(255, 255, 255), Pg_CHROMA_SRC_MATCH | Pg_CHROMA_NODRAW);
   21.52 -              PgChromaOnCx(rdata->gc);
   21.53 -           }
   21.54 -           break;
   21.55        case SDL_BLENDMODE_BLEND:
   21.56             /* Enable and set chroma key and alpha blending */
   21.57             if (blendsource==SDL_PHOTON_TEXTURE_BLEND)
   21.58 @@ -608,11 +593,6 @@
   21.59             PgSetAlphaCx(rdata->gc, Pg_ALPHA_OP_SRC_GLOBAL | Pg_BLEND_SRC_As | Pg_BLEND_DST_1, NULL, NULL, globalalpha, 0);
   21.60             PgAlphaOnCx(rdata->gc);
   21.61             break;
   21.62 -      case SDL_BLENDMODE_MOD:
   21.63 -           /* Enable and set alpha blending */
   21.64 -           PgSetAlphaCx(rdata->gc, Pg_BLEND_SRC_0 | Pg_BLEND_DST_S, NULL, NULL, 0, 0);
   21.65 -           PgAlphaOnCx(rdata->gc);
   21.66 -           break;
   21.67        case SDL_BLENDMODE_NONE:
   21.68             /* Do nothing */
   21.69             break;
   21.70 @@ -630,13 +610,6 @@
   21.71     /* Switch off graphics context modifiers */
   21.72     switch (blendmode)
   21.73     {
   21.74 -      case SDL_BLENDMODE_MASK:
   21.75 -           /* Disable chroma key */
   21.76 -           if (blendsource==SDL_PHOTON_TEXTURE_BLEND)
   21.77 -           {
   21.78 -              PgChromaOffCx(rdata->gc);
   21.79 -           }
   21.80 -           break;
   21.81        case SDL_BLENDMODE_BLEND:
   21.82             /* Disable chroma key and alpha blending */
   21.83             if (blendsource==SDL_PHOTON_TEXTURE_BLEND)
   21.84 @@ -653,10 +626,6 @@
   21.85             }
   21.86             PgAlphaOffCx(rdata->gc);
   21.87             break;
   21.88 -      case SDL_BLENDMODE_MOD:
   21.89 -           /* Disable chroma key and alpha blending */
   21.90 -           PgAlphaOffCx(rdata->gc);
   21.91 -           break;
   21.92        case SDL_BLENDMODE_NONE:
   21.93             /* Do nothing */
   21.94             break;
   21.95 @@ -932,33 +901,6 @@
   21.96  }
   21.97  
   21.98  static int
   21.99 -photon_settextureblendmode(SDL_Renderer * renderer, SDL_Texture * texture)
  21.100 -{
  21.101 -    SDL_RenderData *rdata = (SDL_RenderData *) renderer->driverdata;
  21.102 -
  21.103 -    /* Check, if it is not initialized */
  21.104 -    if (rdata->surfaces_type==SDL_PHOTON_SURFTYPE_UNKNOWN)
  21.105 -    {
  21.106 -       SDL_SetError("Photon: can't set texture blend mode for OpenGL ES window");
  21.107 -       return -1;
  21.108 -    }
  21.109 -
  21.110 -    switch (texture->blendMode)
  21.111 -    {
  21.112 -        case SDL_BLENDMODE_NONE:
  21.113 -        case SDL_BLENDMODE_MASK:
  21.114 -        case SDL_BLENDMODE_BLEND:
  21.115 -        case SDL_BLENDMODE_ADD:
  21.116 -        case SDL_BLENDMODE_MOD:
  21.117 -             return 0;
  21.118 -        default:
  21.119 -             SDL_Unsupported();
  21.120 -             texture->blendMode = SDL_BLENDMODE_NONE;
  21.121 -             return -1;
  21.122 -    }
  21.123 -}
  21.124 -
  21.125 -static int
  21.126  photon_updatetexture(SDL_Renderer * renderer, SDL_Texture * texture,
  21.127                       const SDL_Rect * rect, const void *pixels, int pitch)
  21.128  {
  21.129 @@ -1110,35 +1052,6 @@
  21.130  }
  21.131  
  21.132  static int
  21.133 -photon_setdrawblendmode(SDL_Renderer * renderer)
  21.134 -{
  21.135 -    SDL_RenderData *rdata = (SDL_RenderData *) renderer->driverdata;
  21.136 -
  21.137 -    /* Check, if it is not initialized */
  21.138 -    if (rdata->surfaces_type==SDL_PHOTON_SURFTYPE_UNKNOWN)
  21.139 -    {
  21.140 -       SDL_SetError("Photon: can't set texture blend mode for OpenGL ES window");
  21.141 -       return -1;
  21.142 -    }
  21.143 -
  21.144 -    switch (renderer->blendMode)
  21.145 -    {
  21.146 -        case SDL_BLENDMODE_NONE:
  21.147 -        case SDL_BLENDMODE_MASK:
  21.148 -        case SDL_BLENDMODE_BLEND:
  21.149 -        case SDL_BLENDMODE_ADD:
  21.150 -        case SDL_BLENDMODE_MOD:
  21.151 -             return 0;
  21.152 -        default:
  21.153 -             SDL_Unsupported();
  21.154 -             renderer->blendMode = SDL_BLENDMODE_NONE;
  21.155 -             return -1;
  21.156 -    }
  21.157 -
  21.158 -    return 0;
  21.159 -}
  21.160 -
  21.161 -static int
  21.162  photon_renderpoint(SDL_Renderer * renderer, int x, int y)
  21.163  {
  21.164     SDL_RenderData *rdata = (SDL_RenderData *) renderer->driverdata;
    22.1 --- a/src/video/qnxgf/SDL_gf_render.c	Mon Jan 31 22:53:45 2011 -0800
    22.2 +++ b/src/video/qnxgf/SDL_gf_render.c	Mon Jan 31 23:23:57 2011 -0800
    22.3 @@ -52,8 +52,6 @@
    22.4                                   SDL_Texture * texture);
    22.5  static int gf_settexturealphamod(SDL_Renderer * renderer,
    22.6                                   SDL_Texture * texture);
    22.7 -static int gf_settextureblendmode(SDL_Renderer * renderer,
    22.8 -                                  SDL_Texture * texture);
    22.9  static int gf_settexturescalemode(SDL_Renderer * renderer,
   22.10                                    SDL_Texture * texture);
   22.11  static int gf_updatetexture(SDL_Renderer * renderer, SDL_Texture * texture,
   22.12 @@ -85,8 +83,6 @@
   22.13        SDL_RENDERER_ACCELERATED),
   22.14       (SDL_TEXTUREMODULATE_NONE | SDL_TEXTUREMODULATE_COLOR |
   22.15        SDL_TEXTUREMODULATE_ALPHA),
   22.16 -     (SDL_BLENDMODE_NONE | SDL_BLENDMODE_MASK |
   22.17 -      SDL_BLENDMODE_BLEND | SDL_BLENDMODE_ADD | SDL_BLENDMODE_MOD),
   22.18       13,
   22.19       {
   22.20        SDL_PIXELFORMAT_INDEX8,
   22.21 @@ -147,7 +143,6 @@
   22.22      renderer->GetTexturePalette = gf_gettexturepalette;
   22.23      renderer->SetTextureAlphaMod = gf_settexturealphamod;
   22.24      renderer->SetTextureColorMod = gf_settexturecolormod;
   22.25 -    renderer->SetTextureBlendMode = gf_settextureblendmode;
   22.26      renderer->UpdateTexture = gf_updatetexture;
   22.27      renderer->LockTexture = gf_locktexture;
   22.28      renderer->UnlockTexture = gf_unlocktexture;
   22.29 @@ -343,16 +338,6 @@
   22.30  }
   22.31  
   22.32  static int
   22.33 -gf_settextureblendmode(SDL_Renderer * renderer, SDL_Texture * texture)
   22.34 -{
   22.35 -}
   22.36 -
   22.37 -static int
   22.38 -gf_settexturescalemode(SDL_Renderer * renderer, SDL_Texture * texture)
   22.39 -{
   22.40 -}
   22.41 -
   22.42 -static int
   22.43  gf_updatetexture(SDL_Renderer * renderer, SDL_Texture * texture,
   22.44                   const SDL_Rect * rect, const void *pixels, int pitch)
   22.45  {
    23.1 --- a/src/video/sdlgenblit.pl	Mon Jan 31 22:53:45 2011 -0800
    23.2 +++ b/src/video/sdlgenblit.pl	Mon Jan 31 23:23:57 2011 -0800
    23.3 @@ -83,7 +83,7 @@
    23.4  /* DO NOT EDIT!  This file is generated by sdlgenblit.pl */
    23.5  /*
    23.6      SDL - Simple DirectMedia Layer
    23.7 -    Copyright (C) 1997-2009 Sam Lantinga
    23.8 +    Copyright (C) 1997-2011 Sam Lantinga
    23.9  
   23.10      This library is free software; you can redistribute it and/or
   23.11      modify it under the terms of the GNU Lesser General Public
   23.12 @@ -238,14 +238,7 @@
   23.13                      ${s}B = (${s}B * ${s}A) / 255;
   23.14                  }
   23.15              }
   23.16 -            switch (flags & (SDL_COPY_MASK|SDL_COPY_BLEND|SDL_COPY_ADD|SDL_COPY_MOD)) {
   23.17 -            case SDL_COPY_MASK:
   23.18 -                if (${s}A) {
   23.19 -                    ${d}R = ${s}R;
   23.20 -                    ${d}G = ${s}G;
   23.21 -                    ${d}B = ${s}B;
   23.22 -                }
   23.23 -                break;
   23.24 +            switch (flags & (SDL_COPY_BLEND|SDL_COPY_ADD)) {
   23.25              case SDL_COPY_BLEND:
   23.26                  ${d}R = ${s}R + ((255 - ${s}A) * ${d}R) / 255;
   23.27                  ${d}G = ${s}G + ((255 - ${s}A) * ${d}G) / 255;
   23.28 @@ -256,11 +249,6 @@
   23.29                  ${d}G = ${s}G + ${d}G; if (${d}G > 255) ${d}G = 255;
   23.30                  ${d}B = ${s}B + ${d}B; if (${d}B > 255) ${d}B = 255;
   23.31                  break;
   23.32 -            case SDL_COPY_MOD:
   23.33 -                ${d}R = (${s}R * ${d}R) / 255;
   23.34 -                ${d}G = (${s}G * ${d}G) / 255;
   23.35 -                ${d}B = (${s}B * ${d}B) / 255;
   23.36 -                break;
   23.37              }
   23.38  __EOF__
   23.39      }
   23.40 @@ -410,7 +398,7 @@
   23.41                                  }
   23.42                              }
   23.43                              if ( $blend ) {
   23.44 -                                $flag = "SDL_COPY_MASK | SDL_COPY_BLEND | SDL_COPY_ADD | SDL_COPY_MOD";
   23.45 +                                $flag = "SDL_COPY_BLEND | SDL_COPY_ADD";
   23.46                                  if ( $flags eq "" ) {
   23.47                                      $flags = $flag;
   23.48                                  } else {
    24.1 --- a/src/video/windows/SDL_d3drender.c	Mon Jan 31 22:53:45 2011 -0800
    24.2 +++ b/src/video/windows/SDL_d3drender.c	Mon Jan 31 23:23:57 2011 -0800
    24.3 @@ -146,8 +146,6 @@
    24.4        SDL_RENDERER_ACCELERATED),
    24.5       (SDL_TEXTUREMODULATE_NONE | SDL_TEXTUREMODULATE_COLOR |
    24.6        SDL_TEXTUREMODULATE_ALPHA),
    24.7 -     (SDL_BLENDMODE_NONE | SDL_BLENDMODE_MASK |
    24.8 -      SDL_BLENDMODE_BLEND | SDL_BLENDMODE_ADD | SDL_BLENDMODE_MOD),
    24.9       0,
   24.10       {0},
   24.11       0,
   24.12 @@ -160,7 +158,6 @@
   24.13      IDirect3DDevice9 *device;
   24.14      UINT adapter;
   24.15      D3DPRESENT_PARAMETERS pparams;
   24.16 -    LPDIRECT3DPIXELSHADER9 ps_mask;
   24.17      SDL_bool beginScene;
   24.18  } D3D_RenderData;
   24.19  
   24.20 @@ -603,45 +600,6 @@
   24.21      IDirect3DDevice9_SetTextureStageState(data->device, 1, D3DTSS_ALPHAOP,
   24.22                                            D3DTOP_DISABLE);
   24.23  
   24.24 -    {
   24.25 -#ifdef ASSEMBLE_SHADER
   24.26 -        const char *shader_text =
   24.27 -"ps_1_1\n"
   24.28 -"def c0, 0, 0, 0, 0.496\n"
   24.29 -"def c1, 0, 0, 0, 1\n"
   24.30 -"def c2, 0, 0, 0, -1\n"
   24.31 -"tex t0\n"
   24.32 -"mul r1, t0, v0\n"
   24.33 -"add r0, r1, c0\n"
   24.34 -"cnd r0, r0.a, c1, c2\n"
   24.35 -"add r0, r0, r1\n";
   24.36 -        LPD3DXBUFFER pCode;         // buffer with the assembled shader code
   24.37 -        LPD3DXBUFFER pErrorMsgs;    // buffer with error messages
   24.38 -        LPDWORD shader_data;
   24.39 -        DWORD   shader_size;
   24.40 -        result = D3DXAssembleShader( shader_text, SDL_strlen(shader_text), NULL, NULL, 0, &pCode, &pErrorMsgs );
   24.41 -        if (FAILED(result)) {
   24.42 -            D3D_SetError("D3DXAssembleShader()", result);
   24.43 -        }
   24.44 -        shader_data = (DWORD*)pCode->lpVtbl->GetBufferPointer(pCode);
   24.45 -        shader_size = pCode->lpVtbl->GetBufferSize(pCode);
   24.46 -#else
   24.47 -        const DWORD shader_data[] = {
   24.48 -            0xffff0101,0x00000051,0xa00f0000,0x00000000,0x00000000,0x00000000,
   24.49 -            0x3efdf3b6,0x00000051,0xa00f0001,0x00000000,0x00000000,0x00000000,
   24.50 -            0x3f800000,0x00000051,0xa00f0002,0x00000000,0x00000000,0x00000000,
   24.51 -            0xbf800000,0x00000042,0xb00f0000,0x00000005,0x800f0001,0xb0e40000,
   24.52 -            0x90e40000,0x00000002,0x800f0000,0x80e40001,0xa0e40000,0x00000050,
   24.53 -            0x800f0000,0x80ff0000,0xa0e40001,0xa0e40002,0x00000002,0x800f0000,
   24.54 -            0x80e40000,0x80e40001,0x0000ffff
   24.55 -        };
   24.56 -#endif
   24.57 -        result = IDirect3DDevice9_CreatePixelShader(data->device, shader_data, &data->ps_mask);
   24.58 -        if (FAILED(result)) {
   24.59 -            D3D_SetError("CreatePixelShader()", result);
   24.60 -        }
   24.61 -    }
   24.62 -
   24.63      return renderer;
   24.64  }
   24.65  
   24.66 @@ -782,23 +740,6 @@
   24.67  }
   24.68  
   24.69  static int
   24.70 -D3D_SetTextureBlendMode(SDL_Renderer * renderer, SDL_Texture * texture)
   24.71 -{
   24.72 -    switch (texture->blendMode) {
   24.73 -    case SDL_BLENDMODE_NONE:
   24.74 -    case SDL_BLENDMODE_MASK:
   24.75 -    case SDL_BLENDMODE_BLEND:
   24.76 -    case SDL_BLENDMODE_ADD:
   24.77 -    case SDL_BLENDMODE_MOD:
   24.78 -        return 0;
   24.79 -    default:
   24.80 -        SDL_Unsupported();
   24.81 -        texture->blendMode = SDL_BLENDMODE_NONE;
   24.82 -        return -1;
   24.83 -    }
   24.84 -}
   24.85 -
   24.86 -static int
   24.87  D3D_UpdateTexture(SDL_Renderer * renderer, SDL_Texture * texture,
   24.88                    const SDL_Rect * rect, const void *pixels, int pitch)
   24.89  {
   24.90 @@ -975,7 +916,6 @@
   24.91          IDirect3DDevice9_SetRenderState(data->device, D3DRS_ALPHABLENDENABLE,
   24.92                                          FALSE);
   24.93          break;
   24.94 -    case SDL_BLENDMODE_MASK:
   24.95      case SDL_BLENDMODE_BLEND:
   24.96          IDirect3DDevice9_SetRenderState(data->device, D3DRS_ALPHABLENDENABLE,
   24.97                                          TRUE);
   24.98 @@ -992,14 +932,6 @@
   24.99          IDirect3DDevice9_SetRenderState(data->device, D3DRS_DESTBLEND,
  24.100                                          D3DBLEND_ONE);
  24.101          break;
  24.102 -    case SDL_BLENDMODE_MOD:
  24.103 -        IDirect3DDevice9_SetRenderState(data->device, D3DRS_ALPHABLENDENABLE,
  24.104 -                                        TRUE);
  24.105 -        IDirect3DDevice9_SetRenderState(data->device, D3DRS_SRCBLEND,
  24.106 -                                        D3DBLEND_ZERO);
  24.107 -        IDirect3DDevice9_SetRenderState(data->device, D3DRS_DESTBLEND,
  24.108 -                                        D3DBLEND_SRCCOLOR);
  24.109 -        break;
  24.110      }
  24.111  }
  24.112  
  24.113 @@ -1316,10 +1248,6 @@
  24.114  
  24.115      D3D_SetBlendMode(data, texture->blendMode);
  24.116  
  24.117 -    if (texture->blendMode == SDL_BLENDMODE_MASK) {
  24.118 -        shader = data->ps_mask;
  24.119 -    }
  24.120 -
  24.121      IDirect3DDevice9_SetSamplerState(data->device, 0, D3DSAMP_MINFILTER,
  24.122                                       D3DTEXF_LINEAR);
  24.123      IDirect3DDevice9_SetSamplerState(data->device, 0, D3DSAMP_MAGFILTER,
    25.1 --- a/test/automated/common/img_blitblend.c	Mon Jan 31 22:53:45 2011 -0800
    25.2 +++ b/test/automated/common/img_blitblend.c	Mon Jan 31 23:23:57 2011 -0800
    25.3 @@ -1055,921 +1055,6 @@
    25.4    "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
    25.5  };
    25.6  
    25.7 -static const SurfaceImage_t img_blendMask = {
    25.8 -  80, 60, 3,
    25.9 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.10 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.11 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.12 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.13 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.14 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.15 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.16 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.17 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.18 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.19 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.20 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.21 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.22 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.23 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.24 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.25 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.26 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.27 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.28 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.29 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.30 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.31 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.32 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.33 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.34 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.35 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.36 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.37 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.38 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.39 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.40 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.41 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.42 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.43 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.44 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.45 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.46 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.47 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.48 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.49 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.50 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.51 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.52 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.53 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.54 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.55 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.56 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.57 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.58 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.59 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.60 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.61 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.62 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.63 -  "\0\0\0\0\0\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377"
   25.64 -  "\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0"
   25.65 -  "\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377"
   25.66 -  "\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377"
   25.67 -  "\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0"
   25.68 -  "\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\377\377\0"
   25.69 -  "\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0"
   25.70 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.71 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0"
   25.72 -  "\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0"
   25.73 -  "\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0"
   25.74 -  "\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0"
   25.75 -  "\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0"
   25.76 -  "\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0"
   25.77 -  "\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\377"
   25.78 -  "\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377"
   25.79 -  "\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.80 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\0\377\377"
   25.81 -  "\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377"
   25.82 -  "\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377"
   25.83 -  "\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377"
   25.84 -  "\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377"
   25.85 -  "\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377"
   25.86 -  "\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377"
   25.87 -  "\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0"
   25.88 -  "\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0"
   25.89 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.90 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.91 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.92 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.93 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.94 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.95 -  "\0\0\0\0\0\0\0\0\0\0\377\377\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0"
   25.96 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
   25.97 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0"
   25.98 -  "\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0"
   25.99 -  "\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377"
  25.100 -  "\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377"
  25.101 -  "\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0"
  25.102 -  "\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377"
  25.103 -  "\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377"
  25.104 -  "\0\0\0\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.105 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\0\377\377"
  25.106 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.107 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.108 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.109 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.110 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.111 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.112 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377"
  25.113 -  "\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0"
  25.114 -  "\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.115 -  "\0\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.116 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.117 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.118 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.119 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.120 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.121 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.122 -  "\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377"
  25.123 -  "\377\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0"
  25.124 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\0"
  25.125 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.126 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.127 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.128 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.129 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.130 -  "\0\0\0\0\0\0\0\0\0\377\377\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377"
  25.131 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.132 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0"
  25.133 -  "\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0"
  25.134 -  "\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377"
  25.135 -  "\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377"
  25.136 -  "\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0"
  25.137 -  "\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377"
  25.138 -  "\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377"
  25.139 -  "\0\0\0\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.140 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\0\377\377"
  25.141 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.142 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.143 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.144 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.145 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.146 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.147 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377"
  25.148 -  "\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0"
  25.149 -  "\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.150 -  "\0\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.151 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.152 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.153 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.154 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.155 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.156 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.157 -  "\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377"
  25.158 -  "\377\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0"
  25.159 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\0"
  25.160 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.161 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.162 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.163 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.164 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.165 -  "\0\0\0\0\0\0\0\0\0\377\377\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377"
  25.166 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.167 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0"
  25.168 -  "\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0"
  25.169 -  "\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377"
  25.170 -  "\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377"
  25.171 -  "\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0"
  25.172 -  "\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377"
  25.173 -  "\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377"
  25.174 -  "\0\0\0\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.175 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\0\377\377"
  25.176 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.177 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.178 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.179 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.180 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.181 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.182 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377"
  25.183 -  "\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0"
  25.184 -  "\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.185 -  "\0\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.186 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.187 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.188 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.189 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.190 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.191 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.192 -  "\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377"
  25.193 -  "\377\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0"
  25.194 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\0"
  25.195 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.196 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.197 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.198 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.199 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.200 -  "\0\0\0\0\0\0\0\0\0\377\377\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377"
  25.201 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.202 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0"
  25.203 -  "\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0"
  25.204 -  "\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377"
  25.205 -  "\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377"
  25.206 -  "\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0"
  25.207 -  "\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377"
  25.208 -  "\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377"
  25.209 -  "\0\0\0\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.210 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\0\377\377"
  25.211 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.212 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.213 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.214 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.215 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.216 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.217 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377"
  25.218 -  "\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0"
  25.219 -  "\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.220 -  "\0\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.221 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.222 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.223 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.224 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.225 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.226 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.227 -  "\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377"
  25.228 -  "\377\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0"
  25.229 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\0"
  25.230 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.231 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.232 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.233 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.234 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.235 -  "\0\0\0\0\0\0\0\0\0\377\377\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377"
  25.236 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.237 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0"
  25.238 -  "\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0"
  25.239 -  "\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377"
  25.240 -  "\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377"
  25.241 -  "\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0"
  25.242 -  "\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377"
  25.243 -  "\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377"
  25.244 -  "\0\0\0\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.245 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\0\377\377"
  25.246 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.247 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.248 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.249 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.250 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.251 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.252 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377"
  25.253 -  "\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0"
  25.254 -  "\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.255 -  "\0\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.256 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.257 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.258 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.259 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.260 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.261 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.262 -  "\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377"
  25.263 -  "\377\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0"
  25.264 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\0"
  25.265 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.266 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.267 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.268 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.269 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.270 -  "\0\0\0\0\0\0\0\0\0\377\377\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377"
  25.271 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.272 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0"
  25.273 -  "\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0"
  25.274 -  "\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377"
  25.275 -  "\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377"
  25.276 -  "\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0"
  25.277 -  "\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377"
  25.278 -  "\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377"
  25.279 -  "\0\0\0\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.280 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\0\377\377"
  25.281 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.282 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.283 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.284 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.285 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.286 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.287 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377"
  25.288 -  "\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0"
  25.289 -  "\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.290 -  "\0\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.291 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.292 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.293 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.294 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.295 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.296 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.297 -  "\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377"
  25.298 -  "\377\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0"
  25.299 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\0"
  25.300 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.301 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.302 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.303 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.304 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.305 -  "\0\0\0\0\0\0\0\0\0\377\377\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377"
  25.306 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.307 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0"
  25.308 -  "\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0"
  25.309 -  "\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377"
  25.310 -  "\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377"
  25.311 -  "\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0"
  25.312 -  "\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377"
  25.313 -  "\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377"
  25.314 -  "\0\0\0\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.315 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\0\377\377"
  25.316 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.317 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.318 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.319 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.320 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.321 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377"
  25.322 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377"
  25.323 -  "\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0"
  25.324 -  "\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.325 -  "\0\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.326 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.327 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.328 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.329 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.330 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.331 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.332 -  "\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377"
  25.333 -  "\377\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0"
  25.334 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\0"
  25.335 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.336 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.337 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.338 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.339 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.340 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.341 -  "\0\0\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377"
  25.342 -  "\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0"
  25.343 -  "\377\377\0\377\377\0\0\0\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.344 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.345 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.346 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.347 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.348 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.349 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.350 -  "\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0"
  25.351 -  "\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377"
  25.352 -  "\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377"
  25.353 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.354 -  "\0\0\0\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377"
  25.355 -  "\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377"
  25.356 -  "\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377"
  25.357 -  "\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377"
  25.358 -  "\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377"
  25.359 -  "\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377"
  25.360 -  "\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377"
  25.361 -  "\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\0\377\377"
  25.362 -  "\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.363 -  "\0\0\0\0\0\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377"
  25.364 -  "\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377"
  25.365 -  "\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377"
  25.366 -  "\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377"
  25.367 -  "\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377"
  25.368 -  "\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377"
  25.369 -  "\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\377"
  25.370 -  "\377\0\0\0\0\377\377\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377"
  25.371 -  "\0\0\0\0\377\377\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.372 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\0\377\377\0\377"
  25.373 -  "\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377"
  25.374 -  "\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377"
  25.375 -  "\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377"
  25.376 -  "\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377"
  25.377 -  "\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377"
  25.378 -  "\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377"
  25.379 -  "\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\0\377\377\0\377\377\0\377"
  25.380 -  "\377\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\0\377\377\0\377\377\0\377\377\0\0"
  25.381 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377"
  25.382 -  "\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377"
  25.383 -  "\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377"
  25.384 -  "\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377"
  25.385 -  "\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377"
  25.386 -  "\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377"
  25.387 -  "\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377"
  25.388 -  "\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377"
  25.389 -  "\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0"
  25.390 -  "\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0"
  25.391 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\0\377\377\0\377"
  25.392 -  "\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377"
  25.393 -  "\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377"
  25.394 -  "\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377"
  25.395 -  "\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377"
  25.396 -  "\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377"
  25.397 -  "\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377"
  25.398 -  "\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377"
  25.399 -  "\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0"
  25.400 -  "\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.401 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377"
  25.402 -  "\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377"
  25.403 -  "\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377"
  25.404 -  "\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377"
  25.405 -  "\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377"
  25.406 -  "\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377"
  25.407 -  "\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\377\377\0\377"
  25.408 -  "\377\0\377\377\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377"
  25.409 -  "\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377"
  25.410 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.411 -  "\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0"
  25.412 -  "\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0"
  25.413 -  "\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0"
  25.414 -  "\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0"
  25.415 -  "\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0"
  25.416 -  "\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0"
  25.417 -  "\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0"
  25.418 -  "\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\377\377\0\377\377\0"
  25.419 -  "\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0"
  25.420 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\0\377\377\0\377"
  25.421 -  "\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377"
  25.422 -  "\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377"
  25.423 -  "\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377"
  25.424 -  "\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377"
  25.425 -  "\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377"
  25.426 -  "\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377"
  25.427 -  "\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377"
  25.428 -  "\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0"
  25.429 -  "\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.430 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0"
  25.431 -  "\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0"
  25.432 -  "\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0"
  25.433 -  "\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0"
  25.434 -  "\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0"
  25.435 -  "\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0"
  25.436 -  "\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\377\377"
  25.437 -  "\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0"
  25.438 -  "\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\0"
  25.439 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.440 -  "\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0"
  25.441 -  "\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377"
  25.442 -  "\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377"
  25.443 -  "\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0"
  25.444 -  "\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377"
  25.445 -  "\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\377\377"
  25.446 -  "\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0"
  25.447 -  "\0\0\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.448 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\0\377\377"
  25.449 -  "\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0"
  25.450 -  "\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377"
  25.451 -  "\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377"
  25.452 -  "\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0"
  25.453 -  "\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0"
  25.454 -  "\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.455 -  "\0\0\0\0\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.456 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.457 -  "\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377"
  25.458 -  "\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377"
  25.459 -  "\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0"
  25.460 -  "\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377"
  25.461 -  "\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377"
  25.462 -  "\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.463 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.464 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.465 -  "\0\0\0\0\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0"
  25.466 -  "\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0"
  25.467 -  "\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0"
  25.468 -  "\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0"
  25.469 -  "\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0"
  25.470 -  "\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\377\377\0\377\377\0"
  25.471 -  "\377\377\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.472 -  "\0\0\0\0\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.473 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.474 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377"
  25.475 -  "\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0"
  25.476 -  "\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0"
  25.477 -  "\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377"
  25.478 -  "\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377"
  25.479 -  "\0\0\0\0\0\0\0\377\377\0\377\377\0\0\0\0\0\0\0\377\377\0\377\377\0\377\377"
  25.480 -  "\0\377\377\0\377\377\0\377\377\0\377\377\0\377\377\0\0\0\0\0\0\0\0\0\0\0"
  25.481 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.482 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.483 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.484 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.485 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.486 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.487 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.488 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.489 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.490 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.491 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.492 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.493 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.494 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.495 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.496 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.497 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.498 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.499 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.500 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.501 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.502 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.503 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.504 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.505 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.506 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.507 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.508 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.509 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.510 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.511 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.512 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.513 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.514 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.515 -  "\0\0",
  25.516 -};
  25.517 -
  25.518 -static const SurfaceImage_t img_blendMod = {
  25.519 -  80, 60, 3,
  25.520 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.521 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.522 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.523 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.524 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.525 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.526 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.527 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.528 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.529 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.530 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.531 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.532 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.533 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.534 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.535 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.536 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.537 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.538 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.539 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.540 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.541 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.542 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.543 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.544 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.545 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.546 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.547 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.548 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.549 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.550 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.551 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.552 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.553 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.554 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.555 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.556 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.557 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.558 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.559 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.560 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.561 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.562 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.563 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.564 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.565 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.566 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.567 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.568 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.569 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.570 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.571 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.572 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.573 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.574 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.575 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.576 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.577 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.578 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.579 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.580 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.581 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.582 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.583 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.584 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.585 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.586 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.587 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.588 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.589 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.590 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.591 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.592 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.593 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.594 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.595 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.596 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.597 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.598 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.599 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.600 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.601 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.602 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.603 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.604 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.605 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.606 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.607 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.608 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.609 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.610 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.611 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.612 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.613 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.614 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.615 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.616 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.617 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.618 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.619 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.620 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.621 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.622 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.623 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.624 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.625 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.626 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.627 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.628 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.629 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.630 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.631 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.632 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.633 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.634 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.635 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.636 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.637 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.638 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.639 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.640 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.641 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.642 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.643 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.644 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.645 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.646 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.647 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.648 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.649 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.650 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.651 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.652 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.653 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.654 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.655 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.656 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.657 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.658 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.659 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.660 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.661 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.662 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.663 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.664 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.665 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.666 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.667 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.668 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.669 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.670 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.671 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.672 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.673 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.674 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.675 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.676 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.677 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.678 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.679 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.680 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.681 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.682 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.683 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.684 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.685 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.686 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.687 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.688 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.689 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.690 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.691 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.692 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.693 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.694 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.695 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.696 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.697 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.698 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.699 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.700 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.701 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.702 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.703 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.704 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.705 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.706 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.707 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.708 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.709 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.710 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.711 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.712 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.713 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.714 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.715 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.716 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.717 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.718 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.719 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.720 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.721 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.722 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.723 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.724 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.725 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.726 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.727 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.728 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.729 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.730 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.731 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.732 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.733 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.734 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.735 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.736 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.737 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.738 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.739 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.740 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.741 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.742 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.743 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.744 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.745 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.746 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.747 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.748 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.749 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.750 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.751 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.752 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.753 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.754 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.755 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.756 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.757 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.758 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.759 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.760 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.761 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.762 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.763 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.764 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.765 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.766 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.767 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.768 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.769 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.770 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.771 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.772 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.773 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.774 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.775 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.776 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.777 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.778 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.779 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.780 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.781 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.782 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.783 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.784 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.785 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.786 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.787 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.788 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.789 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.790 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.791 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.792 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.793 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.794 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.795 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.796 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.797 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.798 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.799 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.800 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.801 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.802 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.803 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.804 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.805 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.806 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.807 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.808 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.809 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.810 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.811 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.812 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.813 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.814 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.815 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.816 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.817 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.818 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.819 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.820 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.821 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.822 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.823 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.824 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.825 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.826 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.827 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.828 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.829 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.830 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.831 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.832 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.833 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.834 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.835 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.836 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.837 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.838 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.839 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.840 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.841 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.842 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.843 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.844 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.845 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.846 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.847 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.848 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.849 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.850 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.851 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.852 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.853 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.854 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.855 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.856 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.857 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.858 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.859 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.860 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.861 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.862 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.863 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.864 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.865 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.866 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.867 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.868 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.869 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.870 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.871 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.872 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.873 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.874 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.875 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.876 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.877 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.878 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.879 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.880 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.881 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.882 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.883 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.884 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.885 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.886 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.887 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.888 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.889 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.890 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.891 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.892 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.893 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.894 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.895 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.896 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.897 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.898 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.899 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.900 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.901 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.902 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.903 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.904 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.905 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.906 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.907 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.908 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.909 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.910 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.911 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.912 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.913 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.914 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.915 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.916 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.917 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.918 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
  25.919 -  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
  25.920 -};
  25.921 -
  25.922  static const SurfaceImage_t img_blendNone = {
  25.923    80, 60, 3,
  25.924    "\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377"
    26.1 --- a/test/automated/render/render.c	Mon Jan 31 22:53:45 2011 -0800
    26.2 +++ b/test/automated/render/render.c	Mon Jan 31 23:23:57 2011 -0800
    26.3 @@ -190,24 +190,6 @@
    26.4     ret = (mode != SDL_BLENDMODE_ADD);
    26.5     if (!render_isSupported(ret))
    26.6        fail = 1;
    26.7 -   ret = SDL_SetRenderDrawBlendMode( SDL_BLENDMODE_MOD );
    26.8 -   if (!render_isSupported(ret))
    26.9 -      fail = 1;
   26.10 -   ret = SDL_GetRenderDrawBlendMode( &mode );
   26.11 -   if (!render_isSupported(ret))
   26.12 -      fail = 1;
   26.13 -   ret = (mode != SDL_BLENDMODE_MOD);
   26.14 -   if (!render_isSupported(ret))
   26.15 -      fail = 1;
   26.16 -   ret = SDL_SetRenderDrawBlendMode( SDL_BLENDMODE_MASK );
   26.17 -   if (!render_isSupported(ret))
   26.18 -      fail = 1;
   26.19 -   ret = SDL_GetRenderDrawBlendMode( &mode );
   26.20 -   if (!render_isSupported(ret))
   26.21 -      fail = 1;
   26.22 -   ret = (mode != SDL_BLENDMODE_MASK);
   26.23 -   if (!render_isSupported(ret))
   26.24 -      fail = 1;
   26.25     ret = SDL_SetRenderDrawBlendMode( SDL_BLENDMODE_NONE );
   26.26     if (!render_isSupported(ret))
   26.27        fail = 1;
   26.28 @@ -858,13 +840,6 @@
   26.29              &img_blendNone, ALLOWABLE_ERROR_OPAQUE ))
   26.30        return -1;
   26.31  
   26.32 -   /* Test Mask. */
   26.33 -   if (render_testBlitBlendMode( tface, SDL_BLENDMODE_MASK ))
   26.34 -      return -1;
   26.35 -   if (render_compare( "Blit blending output not the same (using SDL_BLENDMODE_MASK).",
   26.36 -            &img_blendMask, ALLOWABLE_ERROR_OPAQUE ))
   26.37 -      return -1;
   26.38 -
   26.39     /* Test Blend. */
   26.40     if (render_testBlitBlendMode( tface, SDL_BLENDMODE_BLEND ))
   26.41        return -1;
   26.42 @@ -879,13 +854,6 @@
   26.43              &img_blendAdd, ALLOWABLE_ERROR_BLENDED ))
   26.44        return -1;
   26.45  
   26.46 -   /* Test Mod. */
   26.47 -   if (render_testBlitBlendMode( tface, SDL_BLENDMODE_MOD ))
   26.48 -      return -1;
   26.49 -   if (render_compare( "Blit blending output not the same (using SDL_BLENDMODE_MOD).",
   26.50 -            &img_blendMod, ALLOWABLE_ERROR_BLENDED ))
   26.51 -      return -1;
   26.52 -
   26.53     /* Clear surface. */
   26.54     if (render_clearScreen())
   26.55        return -1;
   26.56 @@ -906,10 +874,10 @@
   26.57  
   26.58           /* Crazy blending mode magic. */
   26.59           mode = (i/4*j/4) % 4;
   26.60 -         if (mode==0) mode = SDL_BLENDMODE_MASK;
   26.61 +         if (mode==0) mode = SDL_BLENDMODE_NONE;
   26.62           else if (mode==1) mode = SDL_BLENDMODE_BLEND;
   26.63           else if (mode==2) mode = SDL_BLENDMODE_ADD;
   26.64 -         else if (mode==3) mode = SDL_BLENDMODE_MOD;
   26.65 +         else if (mode==3) mode = SDL_BLENDMODE_NONE;
   26.66           ret = SDL_SetTextureBlendMode( tface, mode );
   26.67           if (SDL_ATassert( "SDL_SetTextureBlendMode", ret == 0))
   26.68              return -1;
    27.1 --- a/test/automated/surface/surface.c	Mon Jan 31 22:53:45 2011 -0800
    27.2 +++ b/test/automated/surface/surface.c	Mon Jan 31 23:23:57 2011 -0800
    27.3 @@ -480,13 +480,6 @@
    27.4              surface_compare( testsur, &img_blendNone, 0 )==0 ))
    27.5        return;
    27.6  
    27.7 -   /* Test Mask. */
    27.8 -   if (surface_testBlitBlendMode( testsur, face, SDL_BLENDMODE_MASK ))
    27.9 -      return;
   27.10 -   if (SDL_ATassert( "Blitting blending output not the same (using SDL_BLENDMODE_MASK).",
   27.11 -            surface_compare( testsur, &img_blendMask, 0 )==0 ))
   27.12 -      return;
   27.13 -
   27.14     /* Test Blend. */
   27.15     if (surface_testBlitBlendMode( testsur, face, SDL_BLENDMODE_BLEND ))
   27.16        return;
   27.17 @@ -501,13 +494,6 @@
   27.18              surface_compare( testsur, &img_blendAdd, 0 )==0 ))
   27.19        return;
   27.20  
   27.21 -   /* Test Mod. */
   27.22 -   if (surface_testBlitBlendMode( testsur, face, SDL_BLENDMODE_MOD ))
   27.23 -      return;
   27.24 -   if (SDL_ATassert( "Blitting blending output not the same (using SDL_BLENDMODE_MOD).",
   27.25 -            surface_compare( testsur, &img_blendMod, 0 )==0 ))
   27.26 -      return;
   27.27 -
   27.28     /* Clear surface. */
   27.29     ret = SDL_FillRect( testsur, NULL,
   27.30           SDL_MapRGB( testsur->format, 0, 0, 0 ) );
   27.31 @@ -530,10 +516,10 @@
   27.32  
   27.33           /* Crazy blending mode magic. */
   27.34           mode = (i/4*j/4) % 4;
   27.35 -         if (mode==0) mode = SDL_BLENDMODE_MASK;
   27.36 +         if (mode==0) mode = SDL_BLENDMODE_NONE;
   27.37           else if (mode==1) mode = SDL_BLENDMODE_BLEND;
   27.38           else if (mode==2) mode = SDL_BLENDMODE_ADD;
   27.39 -         else if (mode==3) mode = SDL_BLENDMODE_MOD;
   27.40 +         else if (mode==3) mode = SDL_BLENDMODE_NONE;
   27.41           ret = SDL_SetSurfaceBlendMode( face, mode );
   27.42           if (SDL_ATassert( "SDL_SetSurfaceBlendMode", ret == 0))
   27.43              return;
    28.1 --- a/test/common.c	Mon Jan 31 22:53:45 2011 -0800
    28.2 +++ b/test/common.c	Mon Jan 31 23:23:57 2011 -0800
    28.3 @@ -357,31 +357,6 @@
    28.4  }
    28.5  
    28.6  static void
    28.7 -PrintBlendMode(Uint32 flag)
    28.8 -{
    28.9 -    switch (flag) {
   28.10 -    case SDL_BLENDMODE_NONE:
   28.11 -        fprintf(stderr, "None");
   28.12 -        break;
   28.13 -    case SDL_BLENDMODE_MASK:
   28.14 -        fprintf(stderr, "Mask");
   28.15 -        break;
   28.16 -    case SDL_BLENDMODE_BLEND:
   28.17 -        fprintf(stderr, "Blend");
   28.18 -        break;
   28.19 -    case SDL_BLENDMODE_ADD:
   28.20 -        fprintf(stderr, "Add");
   28.21 -        break;
   28.22 -    case SDL_BLENDMODE_MOD:
   28.23 -        fprintf(stderr, "Mod");
   28.24 -        break;
   28.25 -    default:
   28.26 -        fprintf(stderr, "0x%8.8x", flag);
   28.27 -        break;
   28.28 -    }
   28.29 -}
   28.30 -
   28.31 -static void
   28.32  PrintPixelFormat(Uint32 format)
   28.33  {
   28.34      switch (format) {
   28.35 @@ -503,21 +478,6 @@
   28.36      }
   28.37      fprintf(stderr, ")\n");
   28.38  
   28.39 -    fprintf(stderr, "    Blend: 0x%8.8X", info->blend_modes);
   28.40 -    fprintf(stderr, " (");
   28.41 -    count = 0;
   28.42 -    for (i = 0; i < sizeof(info->blend_modes) * 8; ++i) {
   28.43 -        Uint32 flag = (1 << i);
   28.44 -        if (info->blend_modes & flag) {
   28.45 -            if (count > 0) {
   28.46 -                fprintf(stderr, " | ");
   28.47 -            }
   28.48 -            PrintBlendMode(flag);
   28.49 -            ++count;
   28.50 -        }
   28.51 -    }
   28.52 -    fprintf(stderr, ")\n");
   28.53 -
   28.54      fprintf(stderr, "    Texture formats (%d): ", info->num_texture_formats);
   28.55      for (i = 0; i < (int) info->num_texture_formats; ++i) {
   28.56          if (i > 0) {
    29.1 --- a/test/testdraw2.c	Mon Jan 31 22:53:45 2011 -0800
    29.2 +++ b/test/testdraw2.c	Mon Jan 31 23:23:57 2011 -0800
    29.3 @@ -190,18 +190,12 @@
    29.4                      if (SDL_strcasecmp(argv[i + 1], "none") == 0) {
    29.5                          blendMode = SDL_BLENDMODE_NONE;
    29.6                          consumed = 2;
    29.7 -                    } else if (SDL_strcasecmp(argv[i + 1], "mask") == 0) {
    29.8 -                        blendMode = SDL_BLENDMODE_MASK;
    29.9 -                        consumed = 2;
   29.10                      } else if (SDL_strcasecmp(argv[i + 1], "blend") == 0) {
   29.11                          blendMode = SDL_BLENDMODE_BLEND;
   29.12                          consumed = 2;
   29.13                      } else if (SDL_strcasecmp(argv[i + 1], "add") == 0) {
   29.14                          blendMode = SDL_BLENDMODE_ADD;
   29.15                          consumed = 2;
   29.16 -                    } else if (SDL_strcasecmp(argv[i + 1], "mod") == 0) {
   29.17 -                        blendMode = SDL_BLENDMODE_MOD;
   29.18 -                        consumed = 2;
   29.19                      }
   29.20                  }
   29.21              } else if (SDL_strcasecmp(argv[i], "--cyclecolor") == 0) {
   29.22 @@ -217,7 +211,7 @@
   29.23          }
   29.24          if (consumed < 0) {
   29.25              fprintf(stderr,
   29.26 -                    "Usage: %s %s [--blend none|mask|blend|add|mod] [--cyclecolor] [--cyclealpha]\n",
   29.27 +                    "Usage: %s %s [--blend none|blend|add] [--cyclecolor] [--cyclealpha]\n",
   29.28                      argv[0], CommonUsage(state));
   29.29              return 1;
   29.30          }
    30.1 --- a/test/testintersections.c	Mon Jan 31 22:53:45 2011 -0800
    30.2 +++ b/test/testintersections.c	Mon Jan 31 23:23:57 2011 -0800
    30.3 @@ -231,18 +231,12 @@
    30.4                      if (SDL_strcasecmp(argv[i + 1], "none") == 0) {
    30.5                          blendMode = SDL_BLENDMODE_NONE;
    30.6                          consumed = 2;
    30.7 -                    } else if (SDL_strcasecmp(argv[i + 1], "mask") == 0) {
    30.8 -                        blendMode = SDL_BLENDMODE_MASK;
    30.9 -                        consumed = 2;
   30.10                      } else if (SDL_strcasecmp(argv[i + 1], "blend") == 0) {
   30.11                          blendMode = SDL_BLENDMODE_BLEND;
   30.12                          consumed = 2;
   30.13                      } else if (SDL_strcasecmp(argv[i + 1], "add") == 0) {
   30.14                          blendMode = SDL_BLENDMODE_ADD;
   30.15                          consumed = 2;
   30.16 -                    } else if (SDL_strcasecmp(argv[i + 1], "mod") == 0) {
   30.17 -                        blendMode = SDL_BLENDMODE_MOD;
   30.18 -                        consumed = 2;
   30.19                      }
   30.20                  }
   30.21              } else if (SDL_strcasecmp(argv[i], "--cyclecolor") == 0) {
   30.22 @@ -258,7 +252,7 @@
   30.23          }
   30.24          if (consumed < 0) {
   30.25              fprintf(stderr,
   30.26 -                    "Usage: %s %s [--blend none|mask|blend|add|mod] [--cyclecolor] [--cyclealpha]\n",
   30.27 +                    "Usage: %s %s [--blend none|blend|add] [--cyclecolor] [--cyclealpha]\n",
   30.28                      argv[0], CommonUsage(state));
   30.29              return 1;
   30.30          }
    31.1 --- a/test/testsprite2.c	Mon Jan 31 22:53:45 2011 -0800
    31.2 +++ b/test/testsprite2.c	Mon Jan 31 23:23:57 2011 -0800
    31.3 @@ -20,7 +20,7 @@
    31.4  static SDL_Rect *positions;
    31.5  static SDL_Rect *velocities;
    31.6  static int sprite_w, sprite_h;
    31.7 -static SDL_BlendMode blendMode = SDL_BLENDMODE_MASK;
    31.8 +static SDL_BlendMode blendMode = SDL_BLENDMODE_BLEND;
    31.9  
   31.10  /* Call this instead of exit(), so we can clean up SDL: atexit() is evil. */
   31.11  static void
   31.12 @@ -237,18 +237,12 @@
   31.13                      if (SDL_strcasecmp(argv[i + 1], "none") == 0) {
   31.14                          blendMode = SDL_BLENDMODE_NONE;
   31.15                          consumed = 2;
   31.16 -                    } else if (SDL_strcasecmp(argv[i + 1], "mask") == 0) {
   31.17 -                        blendMode = SDL_BLENDMODE_MASK;
   31.18 -                        consumed = 2;
   31.19                      } else if (SDL_strcasecmp(argv[i + 1], "blend") == 0) {
   31.20                          blendMode = SDL_BLENDMODE_BLEND;
   31.21                          consumed = 2;
   31.22                      } else if (SDL_strcasecmp(argv[i + 1], "add") == 0) {
   31.23                          blendMode = SDL_BLENDMODE_ADD;
   31.24                          consumed = 2;
   31.25 -                    } else if (SDL_strcasecmp(argv[i + 1], "mod") == 0) {
   31.26 -                        blendMode = SDL_BLENDMODE_MOD;
   31.27 -                        consumed = 2;
   31.28                      }
   31.29                  }
   31.30              } else if (SDL_strcasecmp(argv[i], "--cyclecolor") == 0) {
   31.31 @@ -264,7 +258,7 @@
   31.32          }
   31.33          if (consumed < 0) {
   31.34              fprintf(stderr,
   31.35 -                    "Usage: %s %s [--blend none|mask|blend|add|mod] [--cyclecolor] [--cyclealpha]\n",
   31.36 +                    "Usage: %s %s [--blend none|blend|add] [--cyclecolor] [--cyclealpha]\n",
   31.37                      argv[0], CommonUsage(state));
   31.38              quit(1);
   31.39          }