diff --git a/src/blitter/32bpp_anim.cpp b/src/blitter/32bpp_anim.cpp index 1342ed93e5..3a9a5fb178 100644 --- a/src/blitter/32bpp_anim.cpp +++ b/src/blitter/32bpp_anim.cpp @@ -98,7 +98,7 @@ inline void Blitter_32bppAnim::Draw(const Blitter::BlitterParams *bp, ZoomLevel draw:; switch (mode) { - case BM_COLOUR_REMAP: + case BlitterMode::ColourRemap: if (src_px->a == 255) { do { uint m = *src_n; @@ -135,7 +135,7 @@ inline void Blitter_32bppAnim::Draw(const Blitter::BlitterParams *bp, ZoomLevel } break; - case BM_CRASH_REMAP: + case BlitterMode::CrashRemap: if (src_px->a == 255) { do { uint m = *src_n; @@ -176,7 +176,7 @@ inline void Blitter_32bppAnim::Draw(const Blitter::BlitterParams *bp, ZoomLevel break; - case BM_BLACK_REMAP: + case BlitterMode::BlackRemap: do { *dst++ = Colour(0, 0, 0); *anim++ = 0; @@ -185,7 +185,7 @@ inline void Blitter_32bppAnim::Draw(const Blitter::BlitterParams *bp, ZoomLevel } while (--n != 0); break; - case BM_TRANSPARENT: + case BlitterMode::Transparent: /* Make the current colour a bit more black, so it looks like this image is transparent */ src_n += n; if (src_px->a == 255) { @@ -207,7 +207,7 @@ inline void Blitter_32bppAnim::Draw(const Blitter::BlitterParams *bp, ZoomLevel } break; - case BM_TRANSPARENT_REMAP: + case BlitterMode::TransparentRemap: /* Apply custom transparency remap. */ src_n += n; if (src_px->a != 0) { @@ -271,12 +271,12 @@ void Blitter_32bppAnim::Draw(Blitter::BlitterParams *bp, BlitterMode mode, ZoomL switch (mode) { default: NOT_REACHED(); - case BM_NORMAL: Draw (bp, zoom); return; - case BM_COLOUR_REMAP: Draw(bp, zoom); return; - case BM_TRANSPARENT: Draw (bp, zoom); return; - case BM_TRANSPARENT_REMAP: Draw(bp, zoom); return; - case BM_CRASH_REMAP: Draw (bp, zoom); return; - case BM_BLACK_REMAP: Draw (bp, zoom); return; + case BlitterMode::Normal: Draw(bp, zoom); return; + case BlitterMode::ColourRemap: Draw(bp, zoom); return; + case BlitterMode::Transparent: Draw(bp, zoom); return; + case BlitterMode::TransparentRemap: Draw(bp, zoom); return; + case BlitterMode::CrashRemap: Draw(bp, zoom); return; + case BlitterMode::BlackRemap: Draw(bp, zoom); return; } } diff --git a/src/blitter/32bpp_anim_sse4.cpp b/src/blitter/32bpp_anim_sse4.cpp index 2f930aedd0..e4a961e0c2 100644 --- a/src/blitter/32bpp_anim_sse4.cpp +++ b/src/blitter/32bpp_anim_sse4.cpp @@ -59,7 +59,7 @@ inline void Blitter_32bppSSE4_Anim::Draw(const BlitterParams *bp, ZoomLevel zoom for (int y = bp->height; y != 0; y--) { Colour *dst = dst_line; const Colour *src = src_rgba_line + META_LENGTH; - if (mode != BM_TRANSPARENT) src_mv = src_mv_line; + if (mode != BlitterMode::Transparent) src_mv = src_mv_line; uint16_t *anim = anim_line; if (read_mode == RM_WITH_MARGIN) { @@ -67,7 +67,7 @@ inline void Blitter_32bppSSE4_Anim::Draw(const BlitterParams *bp, ZoomLevel zoom anim += src_rgba_line[0].data; src += src_rgba_line[0].data; dst += src_rgba_line[0].data; - if (mode != BM_TRANSPARENT) src_mv += src_rgba_line[0].data; + if (mode != BlitterMode::Transparent) src_mv += src_rgba_line[0].data; const int width_diff = si->sprite_width - bp->width; effective_width = bp->width - (int) src_rgba_line[0].data; const int delta_diff = (int) src_rgba_line[1].data - width_diff; @@ -178,7 +178,7 @@ bmno_full_transparency: } break; - case BM_COLOUR_REMAP: + case BlitterMode::ColourRemap: for (uint x = (uint) effective_width / 2; x != 0; x--) { uint32_t mvX2 = *((uint32_t *) const_cast(src_mv)); __m128i srcABCD = _mm_loadl_epi64((const __m128i*) src); @@ -297,7 +297,7 @@ bmcr_alpha_blend_single: } break; - case BM_TRANSPARENT: + case BlitterMode::Transparent: /* Make the current colour a bit more black, so it looks like this image is transparent. */ for (uint x = (uint) bp->width / 2; x > 0; x--) { __m128i srcABCD = _mm_loadl_epi64((const __m128i*) src); @@ -318,7 +318,7 @@ bmcr_alpha_blend_single: } break; - case BM_TRANSPARENT_REMAP: + case BlitterMode::TransparentRemap: /* Apply custom transparency remap. */ for (uint x = (uint) bp->width; x > 0; x--) { if (src->a != 0) { @@ -333,7 +333,7 @@ bmcr_alpha_blend_single: break; - case BM_CRASH_REMAP: + case BlitterMode::CrashRemap: for (uint x = (uint) bp->width; x > 0; x--) { if (src_mv->m == 0) { if (src->a != 0) { @@ -352,7 +352,7 @@ bmcr_alpha_blend_single: } break; - case BM_BLACK_REMAP: + case BlitterMode::BlackRemap: for (uint x = (uint) bp->width; x > 0; x--) { if (src->a != 0) { *dst = Colour(0, 0, 0); @@ -367,7 +367,7 @@ bmcr_alpha_blend_single: } next_line: - if (mode != BM_TRANSPARENT && mode != BM_TRANSPARENT_REMAP) src_mv_line += si->sprite_width; + if (mode != BlitterMode::Transparent && mode != BlitterMode::TransparentRemap) src_mv_line += si->sprite_width; src_rgba_line = (const Colour*) ((const uint8_t*) src_rgba_line + si->sprite_line_size); dst_line += bp->pitch; anim_line += this->anim_buf_pitch; @@ -397,42 +397,42 @@ bm_normal: if (bp->skip_left != 0 || bp->width <= MARGIN_NORMAL_THRESHOLD) { const BlockType bt_last = (BlockType) (bp->width & 1); if (bt_last == BT_EVEN) { - if (sprite_flags & SF_NO_ANIM) Draw(bp, zoom); - else Draw(bp, zoom); + if (sprite_flags & SF_NO_ANIM) Draw(bp, zoom); + else Draw(bp, zoom); } else { - if (sprite_flags & SF_NO_ANIM) Draw(bp, zoom); - else Draw(bp, zoom); + if (sprite_flags & SF_NO_ANIM) Draw(bp, zoom); + else Draw(bp, zoom); } } else { #ifdef POINTER_IS_64BIT if (sprite_flags & SF_TRANSLUCENT) { - if (sprite_flags & SF_NO_ANIM) Draw(bp, zoom); - else Draw(bp, zoom); + if (sprite_flags & SF_NO_ANIM) Draw(bp, zoom); + else Draw(bp, zoom); } else { - if (sprite_flags & SF_NO_ANIM) Draw(bp, zoom); - else Draw(bp, zoom); + if (sprite_flags & SF_NO_ANIM) Draw(bp, zoom); + else Draw(bp, zoom); } #else - if (sprite_flags & SF_NO_ANIM) Draw(bp, zoom); - else Draw(bp, zoom); + if (sprite_flags & SF_NO_ANIM) Draw(bp, zoom); + else Draw(bp, zoom); #endif } break; } - case BM_COLOUR_REMAP: + case BlitterMode::ColourRemap: if (sprite_flags & SF_NO_REMAP) goto bm_normal; if (bp->skip_left != 0 || bp->width <= MARGIN_REMAP_THRESHOLD) { - if (sprite_flags & SF_NO_ANIM) Draw(bp, zoom); - else Draw(bp, zoom); + if (sprite_flags & SF_NO_ANIM) Draw(bp, zoom); + else Draw(bp, zoom); } else { - if (sprite_flags & SF_NO_ANIM) Draw(bp, zoom); - else Draw(bp, zoom); + if (sprite_flags & SF_NO_ANIM) Draw(bp, zoom); + else Draw(bp, zoom); } break; - case BM_TRANSPARENT: Draw(bp, zoom); return; - case BM_TRANSPARENT_REMAP: Draw(bp, zoom); return; - case BM_CRASH_REMAP: Draw(bp, zoom); return; - case BM_BLACK_REMAP: Draw(bp, zoom); return; + case BlitterMode::Transparent: Draw(bp, zoom); return; + case BlitterMode::TransparentRemap: Draw(bp, zoom); return; + case BlitterMode::CrashRemap: Draw(bp, zoom); return; + case BlitterMode::BlackRemap: Draw(bp, zoom); return; } } diff --git a/src/blitter/32bpp_optimized.cpp b/src/blitter/32bpp_optimized.cpp index 57308647d8..eebdece030 100644 --- a/src/blitter/32bpp_optimized.cpp +++ b/src/blitter/32bpp_optimized.cpp @@ -111,7 +111,7 @@ inline void Blitter_32bppOptimized::Draw(const Blitter::BlitterParams *bp, ZoomL draw:; switch (mode) { - case BM_COLOUR_REMAP: + case BlitterMode::ColourRemap: if (src_px->a == 255) { do { uint m = *src_n; @@ -142,7 +142,7 @@ inline void Blitter_32bppOptimized::Draw(const Blitter::BlitterParams *bp, ZoomL } break; - case BM_CRASH_REMAP: + case BlitterMode::CrashRemap: if (src_px->a == 255) { do { uint m = *src_n; @@ -176,7 +176,7 @@ inline void Blitter_32bppOptimized::Draw(const Blitter::BlitterParams *bp, ZoomL } break; - case BM_BLACK_REMAP: + case BlitterMode::BlackRemap: do { *dst = Colour(0, 0, 0); dst++; @@ -185,7 +185,7 @@ inline void Blitter_32bppOptimized::Draw(const Blitter::BlitterParams *bp, ZoomL } while (--n != 0); break; - case BM_TRANSPARENT: + case BlitterMode::Transparent: /* Make the current colour a bit more black, so it looks like this image is transparent */ src_n += n; if (src_px->a == 255) { @@ -203,7 +203,7 @@ inline void Blitter_32bppOptimized::Draw(const Blitter::BlitterParams *bp, ZoomL } break; - case BM_TRANSPARENT_REMAP: + case BlitterMode::TransparentRemap: /* Apply custom transparency remap. */ src_n += n; if (src_px->a != 0) { @@ -261,12 +261,12 @@ void Blitter_32bppOptimized::Draw(Blitter::BlitterParams *bp, BlitterMode mode, { switch (mode) { default: NOT_REACHED(); - case BM_NORMAL: Draw(bp, zoom); return; - case BM_COLOUR_REMAP: Draw(bp, zoom); return; - case BM_TRANSPARENT: Draw(bp, zoom); return; - case BM_TRANSPARENT_REMAP: Draw(bp, zoom); return; - case BM_CRASH_REMAP: Draw(bp, zoom); return; - case BM_BLACK_REMAP: Draw(bp, zoom); return; + case BlitterMode::Normal: Draw(bp, zoom); return; + case BlitterMode::ColourRemap: Draw(bp, zoom); return; + case BlitterMode::Transparent: Draw(bp, zoom); return; + case BlitterMode::TransparentRemap: Draw(bp, zoom); return; + case BlitterMode::CrashRemap: Draw(bp, zoom); return; + case BlitterMode::BlackRemap: Draw(bp, zoom); return; } } diff --git a/src/blitter/32bpp_simple.cpp b/src/blitter/32bpp_simple.cpp index c0c807dbcc..e55aadb6dc 100644 --- a/src/blitter/32bpp_simple.cpp +++ b/src/blitter/32bpp_simple.cpp @@ -37,7 +37,7 @@ void Blitter_32bppSimple::Draw(Blitter::BlitterParams *bp, BlitterMode mode, Zoo for (int x = 0; x < bp->width; x++) { switch (mode) { - case BM_COLOUR_REMAP: + case BlitterMode::ColourRemap: /* In case the m-channel is zero, do not remap this pixel in any way */ if (src->m == 0) { if (src->a != 0) *dst = ComposeColourRGBA(src->r, src->g, src->b, src->a, *dst); @@ -46,7 +46,7 @@ void Blitter_32bppSimple::Draw(Blitter::BlitterParams *bp, BlitterMode mode, Zoo } break; - case BM_CRASH_REMAP: + case BlitterMode::CrashRemap: if (src->m == 0) { if (src->a != 0) { uint8_t g = MakeDark(src->r, src->g, src->b); @@ -57,20 +57,20 @@ void Blitter_32bppSimple::Draw(Blitter::BlitterParams *bp, BlitterMode mode, Zoo } break; - case BM_BLACK_REMAP: + case BlitterMode::BlackRemap: if (src->a != 0) { *dst = Colour(0, 0, 0); } break; - case BM_TRANSPARENT: + case BlitterMode::Transparent: /* Make the current colour a bit more black, so it looks like this image is transparent */ if (src->a != 0) { *dst = MakeTransparent(*dst, 192); } break; - case BM_TRANSPARENT_REMAP: + case BlitterMode::TransparentRemap: /* Apply custom transparency remap. */ if (src->a != 0) { *dst = this->LookupColourInPalette(bp->remap[GetNearestColourIndex(*dst)]); diff --git a/src/blitter/32bpp_sse_func.hpp b/src/blitter/32bpp_sse_func.hpp index 39410ca0b9..f10d6677eb 100644 --- a/src/blitter/32bpp_sse_func.hpp +++ b/src/blitter/32bpp_sse_func.hpp @@ -259,13 +259,13 @@ inline void Blitter_32bppSSE4::Draw(const Blitter::BlitterParams *bp, ZoomLevel for (int y = bp->height; y != 0; y--) { Colour *dst = dst_line; const Colour *src = src_rgba_line + META_LENGTH; - if (mode == BM_COLOUR_REMAP || mode == BM_CRASH_REMAP) src_mv = src_mv_line; + if (mode == BlitterMode::ColourRemap || mode == BlitterMode::CrashRemap) src_mv = src_mv_line; if (read_mode == RM_WITH_MARGIN) { assert(bt_last == BT_NONE); // or you must ensure block type is preserved src += src_rgba_line[0].data; dst += src_rgba_line[0].data; - if (mode == BM_COLOUR_REMAP || mode == BM_CRASH_REMAP) src_mv += src_rgba_line[0].data; + if (mode == BlitterMode::ColourRemap || mode == BlitterMode::CrashRemap) src_mv += src_rgba_line[0].data; const int width_diff = si->sprite_width - bp->width; effective_width = bp->width - (int) src_rgba_line[0].data; const int delta_diff = (int) src_rgba_line[1].data - width_diff; @@ -300,7 +300,7 @@ inline void Blitter_32bppSSE4::Draw(const Blitter::BlitterParams *bp, ZoomLevel } break; - case BM_COLOUR_REMAP: + case BlitterMode::ColourRemap: #if (SSE_VERSION >= 3) for (uint x = (uint) effective_width / 2; x > 0; x--) { __m128i srcABCD = _mm_loadl_epi64((const __m128i*) src); @@ -382,7 +382,7 @@ bmcr_alpha_blend_single: } break; - case BM_TRANSPARENT: + case BlitterMode::Transparent: /* Make the current colour a bit more black, so it looks like this image is transparent. */ for (uint x = (uint) bp->width / 2; x > 0; x--) { __m128i srcABCD = _mm_loadl_epi64((const __m128i*) src); @@ -399,7 +399,7 @@ bmcr_alpha_blend_single: } break; - case BM_TRANSPARENT_REMAP: + case BlitterMode::TransparentRemap: /* Apply custom transparency remap. */ for (uint x = (uint) bp->width; x > 0; x--) { if (src->a != 0) { @@ -411,7 +411,7 @@ bmcr_alpha_blend_single: } break; - case BM_CRASH_REMAP: + case BlitterMode::CrashRemap: for (uint x = (uint) bp->width; x > 0; x--) { if (src_mv->m == 0) { if (src->a != 0) { @@ -428,7 +428,7 @@ bmcr_alpha_blend_single: } break; - case BM_BLACK_REMAP: + case BlitterMode::BlackRemap: for (uint x = (uint) bp->width; x > 0; x--) { if (src->a != 0) { *dst = Colour(0, 0, 0); @@ -441,7 +441,7 @@ bmcr_alpha_blend_single: } next_line: - if (mode == BM_COLOUR_REMAP || mode == BM_CRASH_REMAP) src_mv_line += si->sprite_width; + if (mode == BlitterMode::ColourRemap || mode == BlitterMode::CrashRemap) src_mv_line += si->sprite_width; src_rgba_line = (const Colour*) ((const uint8_t*) src_rgba_line + si->sprite_line_size); dst_line += bp->pitch; } @@ -469,30 +469,30 @@ void Blitter_32bppSSE4::Draw(Blitter::BlitterParams *bp, BlitterMode mode, ZoomL bm_normal: const BlockType bt_last = (BlockType) (bp->width & 1); switch (bt_last) { - default: Draw(bp, zoom); return; - case BT_ODD: Draw(bp, zoom); return; + default: Draw(bp, zoom); return; + case BT_ODD: Draw(bp, zoom); return; } } else { if (((const Blitter_32bppSSE_Base::SpriteData *) bp->sprite)->flags & SF_TRANSLUCENT) { - Draw(bp, zoom); + Draw(bp, zoom); } else { - Draw(bp, zoom); + Draw(bp, zoom); } return; } break; } - case BM_COLOUR_REMAP: + case BlitterMode::ColourRemap: if (((const Blitter_32bppSSE_Base::SpriteData *) bp->sprite)->flags & SF_NO_REMAP) goto bm_normal; if (bp->skip_left != 0 || bp->width <= MARGIN_REMAP_THRESHOLD) { - Draw(bp, zoom); return; + Draw(bp, zoom); return; } else { - Draw(bp, zoom); return; + Draw(bp, zoom); return; } - case BM_TRANSPARENT: Draw(bp, zoom); return; - case BM_TRANSPARENT_REMAP: Draw(bp, zoom); return; - case BM_CRASH_REMAP: Draw(bp, zoom); return; - case BM_BLACK_REMAP: Draw(bp, zoom); return; + case BlitterMode::Transparent: Draw(bp, zoom); return; + case BlitterMode::TransparentRemap: Draw(bp, zoom); return; + case BlitterMode::CrashRemap: Draw(bp, zoom); return; + case BlitterMode::BlackRemap: Draw(bp, zoom); return; } } #endif /* FULL_ANIMATION */ diff --git a/src/blitter/32bpp_sse_type.h b/src/blitter/32bpp_sse_type.h index 57de1d6d58..c9a05e5c08 100644 --- a/src/blitter/32bpp_sse_type.h +++ b/src/blitter/32bpp_sse_type.h @@ -28,8 +28,8 @@ #endif #define META_LENGTH 2 ///< Number of uint32_t inserted before each line of pixels in a sprite. -#define MARGIN_NORMAL_THRESHOLD (zoom == ZOOM_LVL_OUT_8X ? 8 : 4) ///< Minimum width to use margins with BM_NORMAL. -#define MARGIN_REMAP_THRESHOLD 4 ///< Minimum width to use margins with BM_COLOUR_REMAP. +#define MARGIN_NORMAL_THRESHOLD (zoom == ZOOM_LVL_OUT_8X ? 8 : 4) ///< Minimum width to use margins with BlitterMode::Normal. +#define MARGIN_REMAP_THRESHOLD 4 ///< Minimum width to use margins with BlitterMode::ColourRemap. #undef ALIGN diff --git a/src/blitter/40bpp_anim.cpp b/src/blitter/40bpp_anim.cpp index 77e5f2fbf1..154cfe625e 100644 --- a/src/blitter/40bpp_anim.cpp +++ b/src/blitter/40bpp_anim.cpp @@ -181,14 +181,14 @@ inline void Blitter_40bppAnim::Draw(const Blitter::BlitterParams *bp, ZoomLevel draw:; switch (mode) { - case BM_COLOUR_REMAP: - case BM_CRASH_REMAP: + case BlitterMode::ColourRemap: + case BlitterMode::CrashRemap: if (src_px->a == 255) { do { uint8_t m = GB(*src_n, 0, 8); /* In case the m-channel is zero, only apply the crash remap by darkening the RGB colour. */ if (m == 0) { - *dst = mode == BM_CRASH_REMAP ? this->MakeDark(*src_px) : *src_px; + *dst = mode == BlitterMode::CrashRemap ? this->MakeDark(*src_px) : *src_px; *anim = 0; } else { uint r = remap[m]; @@ -207,7 +207,7 @@ inline void Blitter_40bppAnim::Draw(const Blitter::BlitterParams *bp, ZoomLevel uint8_t m = GB(*src_n, 0, 8); Colour b = this->RealizeBlendedColour(*anim, *dst); if (m == 0) { - Colour c = mode == BM_CRASH_REMAP ? this->MakeDark(*src_px) : *src_px; + Colour c = mode == BlitterMode::CrashRemap ? this->MakeDark(*src_px) : *src_px; *dst = this->ComposeColourRGBANoCheck(c.r, c.g, c.b, src_px->a, b); *anim = 0; } else { @@ -225,7 +225,7 @@ inline void Blitter_40bppAnim::Draw(const Blitter::BlitterParams *bp, ZoomLevel } break; - case BM_BLACK_REMAP: + case BlitterMode::BlackRemap: do { *anim++ = 0; *dst++ = _black_colour; @@ -234,7 +234,7 @@ inline void Blitter_40bppAnim::Draw(const Blitter::BlitterParams *bp, ZoomLevel } while (--n != 0); break; - case BM_TRANSPARENT: + case BlitterMode::Transparent: /* Make the current colour a bit more black, so it looks like this image is transparent */ src_n += n; if (src_px->a == 255) { @@ -260,7 +260,7 @@ inline void Blitter_40bppAnim::Draw(const Blitter::BlitterParams *bp, ZoomLevel } break; - case BM_TRANSPARENT_REMAP: + case BlitterMode::TransparentRemap: /* Apply custom transparency remap. */ src_n += n; if (src_px->a != 0) { @@ -339,12 +339,12 @@ void Blitter_40bppAnim::Draw(Blitter::BlitterParams *bp, BlitterMode mode, ZoomL switch (mode) { default: NOT_REACHED(); - case BM_NORMAL: Draw (bp, zoom); return; - case BM_COLOUR_REMAP: Draw(bp, zoom); return; - case BM_TRANSPARENT: Draw (bp, zoom); return; - case BM_TRANSPARENT_REMAP: Draw(bp, zoom); return; - case BM_CRASH_REMAP: Draw (bp, zoom); return; - case BM_BLACK_REMAP: Draw (bp, zoom); return; + case BlitterMode::Normal: Draw(bp, zoom); return; + case BlitterMode::ColourRemap: Draw(bp, zoom); return; + case BlitterMode::Transparent: Draw(bp, zoom); return; + case BlitterMode::TransparentRemap: Draw(bp, zoom); return; + case BlitterMode::CrashRemap: Draw(bp, zoom); return; + case BlitterMode::BlackRemap: Draw(bp, zoom); return; } } diff --git a/src/blitter/8bpp_optimized.cpp b/src/blitter/8bpp_optimized.cpp index c4bef59b53..c46827d252 100644 --- a/src/blitter/8bpp_optimized.cpp +++ b/src/blitter/8bpp_optimized.cpp @@ -84,8 +84,8 @@ void Blitter_8bppOptimized::Draw(Blitter::BlitterParams *bp, BlitterMode mode, Z width -= pixels; switch (mode) { - case BM_COLOUR_REMAP: - case BM_CRASH_REMAP: { + case BlitterMode::ColourRemap: + case BlitterMode::CrashRemap: { const uint8_t *remap = bp->remap; do { uint m = remap[*src]; @@ -95,13 +95,13 @@ void Blitter_8bppOptimized::Draw(Blitter::BlitterParams *bp, BlitterMode mode, Z break; } - case BM_BLACK_REMAP: + case BlitterMode::BlackRemap: MemSetT(dst, 0, pixels); dst += pixels; break; - case BM_TRANSPARENT: - case BM_TRANSPARENT_REMAP: { + case BlitterMode::Transparent: + case BlitterMode::TransparentRemap: { const uint8_t *remap = bp->remap; src += pixels; do { diff --git a/src/blitter/8bpp_simple.cpp b/src/blitter/8bpp_simple.cpp index 6686ec0e2a..9451dcd944 100644 --- a/src/blitter/8bpp_simple.cpp +++ b/src/blitter/8bpp_simple.cpp @@ -36,17 +36,17 @@ void Blitter_8bppSimple::Draw(Blitter::BlitterParams *bp, BlitterMode mode, Zoom uint colour = 0; switch (mode) { - case BM_COLOUR_REMAP: - case BM_CRASH_REMAP: + case BlitterMode::ColourRemap: + case BlitterMode::CrashRemap: colour = bp->remap[*src]; break; - case BM_TRANSPARENT: - case BM_TRANSPARENT_REMAP: + case BlitterMode::Transparent: + case BlitterMode::TransparentRemap: if (*src != 0) colour = bp->remap[*dst]; break; - case BM_BLACK_REMAP: + case BlitterMode::BlackRemap: if (*src != 0) *dst = 0; break; diff --git a/src/blitter/base.hpp b/src/blitter/base.hpp index 24ccc3ac13..0beac4e259 100644 --- a/src/blitter/base.hpp +++ b/src/blitter/base.hpp @@ -14,13 +14,13 @@ #include "../spriteloader/spriteloader.hpp" /** The modes of blitting we can do. */ -enum BlitterMode { - BM_NORMAL, ///< Perform the simple blitting. - BM_COLOUR_REMAP, ///< Perform a colour remapping. - BM_TRANSPARENT, ///< Perform transparency darkening remapping. - BM_TRANSPARENT_REMAP, ///< Perform transparency colour remapping. - BM_CRASH_REMAP, ///< Perform a crash remapping. - BM_BLACK_REMAP, ///< Perform remapping to a completely blackened sprite +enum class BlitterMode : uint8_t { + Normal, ///< Perform the simple blitting. + ColourRemap, ///< Perform a colour remapping. + Transparent, ///< Perform transparency darkening remapping. + TransparentRemap, ///< Perform transparency colour remapping. + CrashRemap, ///< Perform a crash remapping. + BlackRemap, ///< Perform remapping to a completely blackened sprite }; /** diff --git a/src/gfx.cpp b/src/gfx.cpp index f6c3ceb51a..6c48b9be10 100644 --- a/src/gfx.cpp +++ b/src/gfx.cpp @@ -618,14 +618,14 @@ static int DrawLayoutLine(const ParagraphLayouter::Line &line, int y, int left, if (do_shadow && (glyph & SPRITE_GLYPH) != 0) continue; - GfxMainBlitter(sprite, begin_x + (do_shadow ? shadow_offset : 0), top + (do_shadow ? shadow_offset : 0), BM_COLOUR_REMAP); + GfxMainBlitter(sprite, begin_x + (do_shadow ? shadow_offset : 0), top + (do_shadow ? shadow_offset : 0), BlitterMode::ColourRemap); } } if (truncation && (!do_shadow || (dot_has_shadow && colour_has_shadow))) { int x = (_current_text_dir == TD_RTL) ? left : (right - 3 * dot_width); for (int i = 0; i < 3; i++, x += dot_width) { - GfxMainBlitter(dot_sprite, x + (do_shadow ? shadow_offset : 0), y + (do_shadow ? shadow_offset : 0), BM_COLOUR_REMAP); + GfxMainBlitter(dot_sprite, x + (do_shadow ? shadow_offset : 0), y + (do_shadow ? shadow_offset : 0), BlitterMode::ColourRemap); } } } @@ -908,7 +908,7 @@ void DrawCharCentered(char32_t c, const Rect &r, TextColour colour) GfxMainBlitter(GetGlyph(FS_NORMAL, c), CenterBounds(r.left, r.right, GetCharacterWidth(FS_NORMAL, c)), CenterBounds(r.top, r.bottom, GetCharacterHeight(FS_NORMAL)), - BM_COLOUR_REMAP); + BlitterMode::ColourRemap); } /** @@ -942,10 +942,10 @@ Dimension GetSpriteSize(SpriteID sprid, Point *offset, ZoomLevel zoom) static BlitterMode GetBlitterMode(PaletteID pal) { switch (pal) { - case PAL_NONE: return BM_NORMAL; - case PALETTE_CRASH: return BM_CRASH_REMAP; - case PALETTE_ALL_BLACK: return BM_BLACK_REMAP; - default: return BM_COLOUR_REMAP; + case PAL_NONE: return BlitterMode::Normal; + case PALETTE_CRASH: return BlitterMode::CrashRemap; + case PALETTE_ALL_BLACK: return BlitterMode::BlackRemap; + default: return BlitterMode::ColourRemap; } } @@ -963,7 +963,7 @@ void DrawSpriteViewport(SpriteID img, PaletteID pal, int x, int y, const SubSpri if (HasBit(img, PALETTE_MODIFIER_TRANSPARENT)) { pal = GB(pal, 0, PALETTE_WIDTH); _colour_remap_ptr = GetNonSprite(pal, SpriteType::Recolour) + 1; - GfxMainBlitterViewport(GetSprite(real_sprite, SpriteType::Normal), x, y, pal == PALETTE_TO_TRANSPARENT ? BM_TRANSPARENT : BM_TRANSPARENT_REMAP, sub, real_sprite); + GfxMainBlitterViewport(GetSprite(real_sprite, SpriteType::Normal), x, y, pal == PALETTE_TO_TRANSPARENT ? BlitterMode::Transparent : BlitterMode::TransparentRemap, sub, real_sprite); } else if (pal != PAL_NONE) { if (HasBit(pal, PALETTE_TEXT_RECOLOUR)) { SetColourRemap((TextColour)GB(pal, 0, PALETTE_WIDTH)); @@ -972,7 +972,7 @@ void DrawSpriteViewport(SpriteID img, PaletteID pal, int x, int y, const SubSpri } GfxMainBlitterViewport(GetSprite(real_sprite, SpriteType::Normal), x, y, GetBlitterMode(pal), sub, real_sprite); } else { - GfxMainBlitterViewport(GetSprite(real_sprite, SpriteType::Normal), x, y, BM_NORMAL, sub, real_sprite); + GfxMainBlitterViewport(GetSprite(real_sprite, SpriteType::Normal), x, y, BlitterMode::Normal, sub, real_sprite); } } @@ -991,7 +991,7 @@ void DrawSprite(SpriteID img, PaletteID pal, int x, int y, const SubSprite *sub, if (HasBit(img, PALETTE_MODIFIER_TRANSPARENT)) { pal = GB(pal, 0, PALETTE_WIDTH); _colour_remap_ptr = GetNonSprite(pal, SpriteType::Recolour) + 1; - GfxMainBlitter(GetSprite(real_sprite, SpriteType::Normal), x, y, pal == PALETTE_TO_TRANSPARENT ? BM_TRANSPARENT : BM_TRANSPARENT_REMAP, sub, real_sprite, zoom); + GfxMainBlitter(GetSprite(real_sprite, SpriteType::Normal), x, y, pal == PALETTE_TO_TRANSPARENT ? BlitterMode::Transparent : BlitterMode::TransparentRemap, sub, real_sprite, zoom); } else if (pal != PAL_NONE) { if (HasBit(pal, PALETTE_TEXT_RECOLOUR)) { SetColourRemap((TextColour)GB(pal, 0, PALETTE_WIDTH)); @@ -1000,7 +1000,7 @@ void DrawSprite(SpriteID img, PaletteID pal, int x, int y, const SubSprite *sub, } GfxMainBlitter(GetSprite(real_sprite, SpriteType::Normal), x, y, GetBlitterMode(pal), sub, real_sprite, zoom); } else { - GfxMainBlitter(GetSprite(real_sprite, SpriteType::Normal), x, y, BM_NORMAL, sub, real_sprite, zoom); + GfxMainBlitter(GetSprite(real_sprite, SpriteType::Normal), x, y, BlitterMode::Normal, sub, real_sprite, zoom); } } @@ -1178,7 +1178,7 @@ std::unique_ptr DrawSpriteToRgbaBuffer(SpriteID spriteId, ZoomLevel /* Temporarily disable screen animations while blitting - This prevents 40bpp_anim from writing to the animation buffer. */ Backup disable_anim(_screen_disable_anim, true); - GfxBlitter<1, true>(sprite, 0, 0, BM_NORMAL, nullptr, real_sprite, zoom, &dpi); + GfxBlitter<1, true>(sprite, 0, 0, BlitterMode::Normal, nullptr, real_sprite, zoom, &dpi); disable_anim.Restore(); if (blitter->GetScreenDepth() == 8) {