|
SDL
2.0
|
#include "../SDL_internal.h"#include "SDL_video.h"#include "SDL_endian.h"#include "SDL_cpuinfo.h"#include "SDL_blit.h"#include "SDL_assert.h"
Include dependency graph for SDL_blit_N.c:Go to the source code of this file.
Data Structures | |
| struct | blit_table |
Macros | |
| #define | GetBlitFeatures() ((SDL_HasMMX() ? BLIT_FEATURE_HAS_MMX : 0) | (SDL_HasARMSIMD() ? BLIT_FEATURE_HAS_ARM_SIMD : 0)) |
| #define | HI 1 |
| #define | LO 0 |
| #define | RGB888_RGB332(dst, src) |
| #define | RGB101010_RGB332(dst, src) |
| #define | RGB888_RGB555(dst, src) |
| #define | RGB888_RGB555_TWO(dst, src) |
| #define | RGB888_RGB565(dst, src) |
| #define | RGB888_RGB565_TWO(dst, src) |
| #define | RGB565_32(dst, src, map) (map[src[LO]*2] + map[src[HI]*2+1]) |
| #define | MASKOK(x, y) (((x) == (y)) || ((y) == 0x00000000)) |
Enumerations | |
| enum | blit_features { BLIT_FEATURE_HAS_MMX = 1, BLIT_FEATURE_HAS_ALTIVEC = 2, BLIT_FEATURE_ALTIVEC_DONT_USE_PREFETCH = 4, BLIT_FEATURE_HAS_ARM_SIMD = 8 } |
Variables | |
| static const Uint32 | RGB565_ARGB8888_LUT [512] |
| static const Uint32 | RGB565_ABGR8888_LUT [512] |
| static const Uint32 | RGB565_RGBA8888_LUT [512] |
| static const Uint32 | RGB565_BGRA8888_LUT [512] |
| static const struct blit_table | normal_blit_1 [] |
| static const struct blit_table | normal_blit_2 [] |
| static const struct blit_table | normal_blit_3 [] |
| static const struct blit_table | normal_blit_4 [] |
| static const struct blit_table *const | normal_blit [] |
| #define GetBlitFeatures | ( | ) | ((SDL_HasMMX() ? BLIT_FEATURE_HAS_MMX : 0) | (SDL_HasARMSIMD() ? BLIT_FEATURE_HAS_ARM_SIMD : 0)) |
Definition at line 882 of file SDL_blit_N.c.
Referenced by SDL_CalculateBlitN().
| #define HI 1 |
Definition at line 919 of file SDL_blit_N.c.
| #define LO 0 |
Definition at line 920 of file SDL_blit_N.c.
Definition at line 2572 of file SDL_blit_N.c.
Referenced by SDL_CalculateBlitN().
Definition at line 1037 of file SDL_blit_N.c.
Referenced by Blit_RGB101010_index8().
Definition at line 1396 of file SDL_blit_N.c.
Referenced by Blit_RGB565_32().
Definition at line 927 of file SDL_blit_N.c.
Referenced by Blit_RGB888_index8().
Definition at line 1147 of file SDL_blit_N.c.
Referenced by Blit_RGB888_RGB555().
Definition at line 1152 of file SDL_blit_N.c.
Referenced by Blit_RGB888_RGB555().
Definition at line 1271 of file SDL_blit_N.c.
Referenced by Blit_RGB888_RGB565().
Definition at line 1276 of file SDL_blit_N.c.
Referenced by Blit_RGB888_RGB565().
| enum blit_features |
| Enumerator | |
|---|---|
| BLIT_FEATURE_HAS_MMX | |
| BLIT_FEATURE_HAS_ALTIVEC | |
| BLIT_FEATURE_ALTIVEC_DONT_USE_PREFETCH | |
| BLIT_FEATURE_HAS_ARM_SIMD | |
Definition at line 32 of file SDL_blit_N.c.
|
static |
Definition at line 2435 of file SDL_blit_N.c.
References ASSEMBLE_RGBA, SDL_PixelFormat::BytesPerPixel, SDL_BlitInfo::dst, SDL_BlitInfo::dst_fmt, SDL_BlitInfo::dst_h, SDL_BlitInfo::dst_skip, SDL_BlitInfo::dst_w, DUFFS_LOOP, RGBA_FROM_ARGB2101010, SDL_BlitInfo::src, and SDL_BlitInfo::src_skip.
Referenced by SDL_CalculateBlitN().
|
static |
Definition at line 2315 of file SDL_blit_N.c.
References SDL_PixelFormat::Amask, SDL_BlitInfo::colorkey, SDL_BlitInfo::dst, SDL_BlitInfo::dst_h, SDL_BlitInfo::dst_skip, SDL_BlitInfo::dst_w, DUFFS_LOOP, SDL_BlitInfo::src, SDL_BlitInfo::src_fmt, and SDL_BlitInfo::src_skip.
Referenced by SDL_CalculateBlitN().
|
static |
Definition at line 2159 of file SDL_blit_N.c.
References SDL_BlitInfo::dst, SDL_BlitInfo::dst_h, SDL_BlitInfo::dst_skip, SDL_BlitInfo::dst_w, DUFFS_LOOP, SDL_BlitInfo::src, and SDL_BlitInfo::src_skip.
Referenced by SDL_CalculateBlitN().
|
static |
Definition at line 2109 of file SDL_blit_N.c.
References SDL_BlitInfo::a, SDL_PixelFormat::Aloss, SDL_PixelFormat::Amask, SDL_PixelFormat::Ashift, SDL_PixelFormat::Bmask, SDL_BlitInfo::dst, SDL_BlitInfo::dst_fmt, SDL_BlitInfo::dst_h, SDL_BlitInfo::dst_skip, SDL_BlitInfo::dst_w, DUFFS_LOOP, SDL_PixelFormat::Gmask, SDL_PixelFormat::Rmask, SDL_BlitInfo::src, SDL_BlitInfo::src_fmt, and SDL_BlitInfo::src_skip.
Referenced by SDL_CalculateBlitN().
|
static |
Definition at line 1043 of file SDL_blit_N.c.
References SDL_BlitInfo::dst, SDL_BlitInfo::dst_h, SDL_BlitInfo::dst_skip, SDL_BlitInfo::dst_w, DUFFS_LOOP, if, map, NULL, RGB101010_RGB332, SDL_BlitInfo::src, SDL_BlitInfo::src_skip, and SDL_BlitInfo::table.
Referenced by SDL_CalculateBlitN().
|
static |
Definition at line 1398 of file SDL_blit_N.c.
References SDL_BlitInfo::dst, SDL_BlitInfo::dst_h, SDL_BlitInfo::dst_skip, SDL_BlitInfo::dst_w, DUFFS_LOOP, RGB565_32, SDL_BlitInfo::src, and SDL_BlitInfo::src_skip.
Referenced by Blit_RGB565_ABGR8888(), Blit_RGB565_ARGB8888(), Blit_RGB565_BGRA8888(), and Blit_RGB565_RGBA8888().
|
static |
Definition at line 1732 of file SDL_blit_N.c.
References Blit_RGB565_32(), and RGB565_ABGR8888_LUT.
|
static |
Definition at line 1594 of file SDL_blit_N.c.
References Blit_RGB565_32(), and RGB565_ARGB8888_LUT.
|
static |
Definition at line 2008 of file SDL_blit_N.c.
References Blit_RGB565_32(), and RGB565_BGRA8888_LUT.
|
static |
Definition at line 1870 of file SDL_blit_N.c.
References Blit_RGB565_32(), and RGB565_RGBA8888_LUT.
|
static |
Definition at line 933 of file SDL_blit_N.c.
References SDL_BlitInfo::dst, SDL_BlitInfo::dst_h, SDL_BlitInfo::dst_skip, SDL_BlitInfo::dst_w, DUFFS_LOOP, if, map, NULL, RGB888_RGB332, SDL_BlitInfo::src, SDL_BlitInfo::src_skip, and SDL_BlitInfo::table.
Referenced by SDL_CalculateBlitN().
|
static |
Definition at line 1161 of file SDL_blit_N.c.
References SDL_BlitInfo::dst, SDL_BlitInfo::dst_h, SDL_BlitInfo::dst_skip, SDL_BlitInfo::dst_w, DUFFS_LOOP, RGB888_RGB555, RGB888_RGB555_TWO, SDL_BlitInfo::src, and SDL_BlitInfo::src_skip.
|
static |
Definition at line 1285 of file SDL_blit_N.c.
References SDL_BlitInfo::dst, SDL_BlitInfo::dst_h, SDL_BlitInfo::dst_skip, SDL_BlitInfo::dst_w, DUFFS_LOOP, RGB888_RGB565, RGB888_RGB565_TWO, SDL_BlitInfo::src, and SDL_BlitInfo::src_skip.
|
static |
Definition at line 2014 of file SDL_blit_N.c.
References SDL_PixelFormat::BytesPerPixel, DISEMBLE_RGB, SDL_BlitInfo::dst, SDL_BlitInfo::dst_h, SDL_BlitInfo::dst_skip, SDL_BlitInfo::dst_w, DUFFS_LOOP, map, NULL, SDL_BlitInfo::src, SDL_BlitInfo::src_fmt, SDL_BlitInfo::src_skip, and SDL_BlitInfo::table.
Referenced by SDL_CalculateBlitN().
|
static |
Definition at line 2249 of file SDL_blit_N.c.
References SDL_PixelFormat::Amask, SDL_PixelFormat::BytesPerPixel, SDL_BlitInfo::colorkey, DISEMBLE_RGB, SDL_BlitInfo::dst, SDL_BlitInfo::dst_h, SDL_BlitInfo::dst_skip, SDL_BlitInfo::dst_w, DUFFS_LOOP, NULL, SDL_BlitInfo::src, SDL_BlitInfo::src_fmt, SDL_BlitInfo::src_skip, and SDL_BlitInfo::table.
Referenced by SDL_CalculateBlitN().
|
static |
Definition at line 2467 of file SDL_blit_N.c.
References ARGB2101010_FROM_RGBA, SDL_PixelFormat::BytesPerPixel, DISEMBLE_RGBA, SDL_BlitInfo::dst, SDL_BlitInfo::dst_h, SDL_BlitInfo::dst_skip, SDL_BlitInfo::dst_w, DUFFS_LOOP, SDL_BlitInfo::src, SDL_BlitInfo::src_fmt, and SDL_BlitInfo::src_skip.
Referenced by SDL_CalculateBlitN().
|
static |
Definition at line 2185 of file SDL_blit_N.c.
References SDL_BlitInfo::a, SDL_PixelFormat::Amask, ASSEMBLE_RGBA, SDL_PixelFormat::BytesPerPixel, DISEMBLE_RGB, SDL_BlitInfo::dst, SDL_BlitInfo::dst_fmt, SDL_BlitInfo::dst_h, SDL_BlitInfo::dst_skip, SDL_BlitInfo::dst_w, DUFFS_LOOP, SDL_BlitInfo::src, SDL_BlitInfo::src_fmt, and SDL_BlitInfo::src_skip.
Referenced by SDL_CalculateBlitN().
|
static |
Definition at line 2220 of file SDL_blit_N.c.
References ASSEMBLE_RGBA, SDL_PixelFormat::BytesPerPixel, DISEMBLE_RGBA, SDL_BlitInfo::dst, SDL_BlitInfo::dst_fmt, SDL_BlitInfo::dst_h, SDL_BlitInfo::dst_skip, SDL_BlitInfo::dst_w, SDL_BlitInfo::src, SDL_BlitInfo::src_fmt, and SDL_BlitInfo::src_skip.
Referenced by SDL_CalculateBlitN().
|
static |
Definition at line 2349 of file SDL_blit_N.c.
References SDL_BlitInfo::a, SDL_PixelFormat::Amask, ASSEMBLE_RGBA, SDL_PixelFormat::BytesPerPixel, SDL_BlitInfo::colorkey, SDL_BlitInfo::dst, SDL_BlitInfo::dst_fmt, SDL_BlitInfo::dst_h, SDL_BlitInfo::dst_skip, SDL_BlitInfo::dst_w, DUFFS_LOOP, RETRIEVE_RGB_PIXEL, RGB_FROM_PIXEL, SDL_BlitInfo::src, SDL_BlitInfo::src_fmt, and SDL_BlitInfo::src_skip.
Referenced by SDL_CalculateBlitN().
|
static |
Definition at line 2392 of file SDL_blit_N.c.
References SDL_PixelFormat::Amask, ASSEMBLE_RGBA, SDL_PixelFormat::BytesPerPixel, SDL_BlitInfo::colorkey, DISEMBLE_RGBA, SDL_BlitInfo::dst, SDL_BlitInfo::dst_fmt, SDL_BlitInfo::dst_h, SDL_BlitInfo::dst_skip, SDL_BlitInfo::dst_w, DUFFS_LOOP, SDL_BlitInfo::src, SDL_BlitInfo::src_fmt, and SDL_BlitInfo::src_skip.
Referenced by SDL_CalculateBlitN().
| SDL_BlitFunc SDL_CalculateBlitN | ( | SDL_Surface * | surface | ) |
Definition at line 2575 of file SDL_blit_N.c.
References blit_table::alpha, SDL_PixelFormat::Amask, SDL_PixelFormat::BitsPerPixel, Blit2101010toN(), Blit2to2Key(), Blit4to4CopyAlpha(), Blit4to4MaskAlpha(), blit_table::blit_features, Blit_RGB101010_index8(), Blit_RGB888_index8(), blit_table::blitfunc, BlitNto1(), BlitNto1Key(), BlitNto2101010(), BlitNtoN(), BlitNtoNCopyAlpha(), BlitNtoNKey(), BlitNtoNKeyCopyAlpha(), SDL_PixelFormat::Bmask, SDL_PixelFormat::BytesPerPixel, blit_table::COPY_ALPHA, SDL_BlitMap::dst, blit_table::dstB, blit_table::dstbpp, blit_table::dstG, blit_table::dstR, SDL_BlitInfo::flags, SDL_Surface::format, SDL_PixelFormat::format, GetBlitFeatures, SDL_PixelFormat::Gmask, SDL_BlitMap::identity, SDL_BlitMap::info, SDL_Surface::map, MASKOK, blit_table::NO_ALPHA, NULL, SDL_PixelFormat::Rmask, SDL_COPY_COLORKEY, SDL_COPY_RLE_MASK, SDL_HasAltiVec, SDL_PIXELFORMAT_ARGB2101010, blit_table::SET_ALPHA, blit_table::srcB, blit_table::srcG, and blit_table::srcR.
Referenced by SDL_CalculateBlit().
|
static |
Definition at line 2567 of file SDL_blit_N.c.
|
static |
Definition at line 2508 of file SDL_blit_N.c.
|
static |
Definition at line 2513 of file SDL_blit_N.c.
|
static |
Definition at line 2538 of file SDL_blit_N.c.
|
static |
Definition at line 2543 of file SDL_blit_N.c.
|
static |
Definition at line 1600 of file SDL_blit_N.c.
Referenced by Blit_RGB565_ABGR8888().
|
static |
Definition at line 1462 of file SDL_blit_N.c.
Referenced by Blit_RGB565_ARGB8888().
|
static |
Definition at line 1876 of file SDL_blit_N.c.
Referenced by Blit_RGB565_BGRA8888().
|
static |
Definition at line 1738 of file SDL_blit_N.c.
Referenced by Blit_RGB565_RGBA8888().