|
SDL
2.0
|
#include "../SDL_internal.h"#include "SDL_video.h"#include "SDL_endian.h"#include "SDL_cpuinfo.h"#include "SDL_blit.h"
Include dependency graph for SDL_blit_N.c:Go to the source code of this file.
Data Structures | |
| struct | blit_table |
Macros | |
| #define | HAVE_FAST_WRITE_INT8 1 |
| #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_RGB565(dst, src) |
| #define | RGB565_32(dst, src, map) (map[src[LO]*2] + map[src[HI]*2+1]) |
| #define | NO_ALPHA 1 |
| #define | SET_ALPHA 2 |
| #define | COPY_ALPHA 4 |
| #define | MASKOK(x, y) (((x) == (y)) || ((y) == 0x00000000)) |
Enumerations | |
| enum | blit_features { BLIT_FEATURE_NONE = 0 , 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 COPY_ALPHA 4 |
Definition at line 3225 of file SDL_blit_N.c.
| #define GetBlitFeatures | ( | ) | ((SDL_HasMMX() ? BLIT_FEATURE_HAS_MMX : 0) | (SDL_HasARMSIMD() ? BLIT_FEATURE_HAS_ARM_SIMD : 0)) |
Definition at line 937 of file SDL_blit_N.c.
| #define HAVE_FAST_WRITE_INT8 1 |
Definition at line 32 of file SDL_blit_N.c.
| #define HI 1 |
Definition at line 974 of file SDL_blit_N.c.
| #define LO 0 |
Definition at line 975 of file SDL_blit_N.c.
Definition at line 3356 of file SDL_blit_N.c.
| #define NO_ALPHA 1 |
Definition at line 3223 of file SDL_blit_N.c.
Definition at line 1092 of file SDL_blit_N.c.
Definition at line 1457 of file SDL_blit_N.c.
Definition at line 1202 of file SDL_blit_N.c.
| #define SET_ALPHA 2 |
Definition at line 3224 of file SDL_blit_N.c.
| enum blit_features |
| Enumerator | |
|---|---|
| BLIT_FEATURE_NONE | |
| BLIT_FEATURE_HAS_MMX | |
| BLIT_FEATURE_HAS_ALTIVEC | |
| BLIT_FEATURE_ALTIVEC_DONT_USE_PREFETCH | |
| BLIT_FEATURE_HAS_ARM_SIMD | |
Definition at line 42 of file SDL_blit_N.c.
|
static |
Definition at line 2982 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 2572 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 2222 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 2172 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 3120 of file SDL_blit_N.c.
References SDL_BlitInfo::a, SDL_PixelFormat::Amask, SDL_PixelFormat::Ashift, SDL_PixelFormat::BytesPerPixel, SDL_BlitInfo::dst, SDL_BlitInfo::dst_fmt, SDL_BlitInfo::dst_h, SDL_BlitInfo::dst_skip, SDL_BlitInfo::dst_w, DUFFS_LOOP, i1, i2, j1, SDL_BlitInfo::src, SDL_BlitInfo::src_fmt, and SDL_BlitInfo::src_skip.
|
static |
Definition at line 3046 of file SDL_blit_N.c.
References SDL_BlitInfo::a, SDL_PixelFormat::Amask, SDL_PixelFormat::Ashift, SDL_PixelFormat::BytesPerPixel, SDL_BlitInfo::dst, SDL_BlitInfo::dst_fmt, SDL_BlitInfo::dst_h, SDL_BlitInfo::dst_skip, SDL_BlitInfo::dst_w, DUFFS_LOOP, i1, i2, j1, SDL_BlitInfo::src, SDL_BlitInfo::src_fmt, and SDL_BlitInfo::src_skip.
|
static |
Definition at line 1098 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 1459 of file SDL_blit_N.c.
References SDL_BlitInfo::dst, SDL_BlitInfo::dst_h, SDL_BlitInfo::dst_skip, SDL_BlitInfo::dst_w, DUFFS_LOOP, map, RGB565_32, SDL_BlitInfo::src, SDL_BlitInfo::src_skip, and USE_DUFFS_LOOP.
Referenced by Blit_RGB565_ABGR8888(), Blit_RGB565_ARGB8888(), Blit_RGB565_BGRA8888(), and Blit_RGB565_RGBA8888().
|
static |
Definition at line 1793 of file SDL_blit_N.c.
References Blit_RGB565_32(), and RGB565_ABGR8888_LUT.
|
static |
|
static |
|
static |
|
static |
Definition at line 988 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 1218 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, SDL_BlitInfo::src, and SDL_BlitInfo::src_skip.
|
static |
Definition at line 1344 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, SDL_BlitInfo::src, and SDL_BlitInfo::src_skip.
|
static |
Definition at line 2077 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 2506 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 3014 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 2329 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_PixelFormat::format, get_permutation(), NULL, SDL_PIXELFORMAT_ARGB2101010, SDL_BlitInfo::src, SDL_BlitInfo::src_fmt, and SDL_BlitInfo::src_skip.
Referenced by SDL_CalculateBlitN().
|
static |
Definition at line 2448 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, DUFFS_LOOP, SDL_PixelFormat::format, get_permutation(), NULL, SDL_PIXELFORMAT_ARGB2101010, SDL_BlitInfo::src, SDL_BlitInfo::src_fmt, and SDL_BlitInfo::src_skip.
Referenced by SDL_CalculateBlitN().
|
static |
Definition at line 2606 of file SDL_blit_N.c.
References SDL_BlitInfo::a, SDL_PixelFormat::Amask, SDL_PixelFormat::Ashift, ASSEMBLE_RGBA, SDL_PixelFormat::Bmask, 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, SDL_PixelFormat::format, get_permutation(), SDL_PixelFormat::Gmask, NULL, RETRIEVE_RGB_PIXEL, RGB_FROM_PIXEL, SDL_PixelFormat::Rmask, SDL_PIXELFORMAT_ARGB2101010, SDL_PIXELFORMAT_BGR24, SDL_PIXELFORMAT_RGB24, SDL_BlitInfo::src, SDL_BlitInfo::src_fmt, and SDL_BlitInfo::src_skip.
Referenced by SDL_CalculateBlitN().
|
static |
Definition at line 2878 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_PixelFormat::format, get_permutation(), NULL, SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_ARGB2101010, SDL_PIXELFORMAT_ARGB8888, SDL_PIXELFORMAT_BGRA8888, SDL_PIXELFORMAT_RGBA8888, SDL_BlitInfo::src, SDL_BlitInfo::src_fmt, and SDL_BlitInfo::src_skip.
Referenced by SDL_CalculateBlitN().
|
static |
Definition at line 2249 of file SDL_blit_N.c.
References SDL_PixelFormat::Amask, SDL_PixelFormat::BytesPerPixel, PIXEL_FROM_RGB, PIXEL_FROM_RGBA, RGB_FROM_PIXEL, and RGBA_FROM_PIXEL.
Referenced by BlitNtoN(), BlitNtoNCopyAlpha(), BlitNtoNKey(), and BlitNtoNKeyCopyAlpha().
| SDL_BlitFunc SDL_CalculateBlitN | ( | SDL_Surface * | surface | ) |
Definition at line 3359 of file SDL_blit_N.c.
References SDL_PixelFormat::Amask, SDL_PixelFormat::BitsPerPixel, Blit2101010toN(), Blit2to2Key(), Blit4to4CopyAlpha(), Blit4to4MaskAlpha(), Blit_RGB101010_index8(), Blit_RGB888_index8(), blit_table::blitfunc, BlitNto1(), BlitNto1Key(), BlitNto2101010(), BlitNtoN(), BlitNtoNCopyAlpha(), BlitNtoNKey(), BlitNtoNKeyCopyAlpha(), SDL_PixelFormat::Bmask, SDL_PixelFormat::BytesPerPixel, COPY_ALPHA, SDL_PixelFormat::format, GetBlitFeatures, SDL_PixelFormat::Gmask, MASKOK, NO_ALPHA, normal_blit, NULL, SDL_PixelFormat::Rmask, SDL_COPY_COLORKEY, SDL_COPY_RLE_MASK, SDL_HasAltiVec, SDL_PIXELFORMAT_ARGB2101010, and SET_ALPHA.
Referenced by SDL_CalculateBlit().
|
static |
Definition at line 3351 of file SDL_blit_N.c.
Referenced by SDL_CalculateBlitN().
|
static |
Definition at line 3120 of file SDL_blit_N.c.
|
static |
Definition at line 3120 of file SDL_blit_N.c.
|
static |
Definition at line 3120 of file SDL_blit_N.c.
|
static |
Definition at line 3120 of file SDL_blit_N.c.
|
static |
Definition at line 1661 of file SDL_blit_N.c.
Referenced by Blit_RGB565_ABGR8888().
|
static |
Definition at line 1523 of file SDL_blit_N.c.
Referenced by Blit_RGB565_ARGB8888().
|
static |
Definition at line 1937 of file SDL_blit_N.c.
Referenced by Blit_RGB565_BGRA8888().
|
static |
Definition at line 1799 of file SDL_blit_N.c.
Referenced by Blit_RGB565_RGBA8888().