diff --git a/src/blitter/32bpp_anim.cpp b/src/blitter/32bpp_anim.cpp
index 3a9a5fb178..6635d34d0f 100644
--- a/src/blitter/32bpp_anim.cpp
+++ b/src/blitter/32bpp_anim.cpp
@@ -532,7 +532,7 @@ void Blitter_32bppAnim::PaletteAnimate(const Palette &palette)
 
 Blitter::PaletteAnimation Blitter_32bppAnim::UsePaletteAnimation()
 {
-	return Blitter::PALETTE_ANIMATION_BLITTER;
+	return Blitter::PaletteAnimation::Blitter;
 }
 
 void Blitter_32bppAnim::PostResize()
diff --git a/src/blitter/32bpp_base.cpp b/src/blitter/32bpp_base.cpp
index 00c15214ce..58acafc35a 100644
--- a/src/blitter/32bpp_base.cpp
+++ b/src/blitter/32bpp_base.cpp
@@ -152,5 +152,5 @@ void Blitter_32bppBase::PaletteAnimate(const Palette &)
 
 Blitter::PaletteAnimation Blitter_32bppBase::UsePaletteAnimation()
 {
-	return Blitter::PALETTE_ANIMATION_NONE;
+	return Blitter::PaletteAnimation::None;
 }
diff --git a/src/blitter/40bpp_anim.cpp b/src/blitter/40bpp_anim.cpp
index 154cfe625e..65a5bcca31 100644
--- a/src/blitter/40bpp_anim.cpp
+++ b/src/blitter/40bpp_anim.cpp
@@ -528,7 +528,7 @@ size_t Blitter_40bppAnim::BufferSize(uint width, uint height)
 
 Blitter::PaletteAnimation Blitter_40bppAnim::UsePaletteAnimation()
 {
-	return Blitter::PALETTE_ANIMATION_VIDEO_BACKEND;
+	return Blitter::PaletteAnimation::VideoBackend;
 }
 
 bool Blitter_40bppAnim::NeedsAnimationBuffer()
diff --git a/src/blitter/8bpp_base.cpp b/src/blitter/8bpp_base.cpp
index a972a27d3d..a936138a1a 100644
--- a/src/blitter/8bpp_base.cpp
+++ b/src/blitter/8bpp_base.cpp
@@ -156,5 +156,5 @@ void Blitter_8bppBase::PaletteAnimate(const Palette &)
 
 Blitter::PaletteAnimation Blitter_8bppBase::UsePaletteAnimation()
 {
-	return Blitter::PALETTE_ANIMATION_VIDEO_BACKEND;
+	return Blitter::PaletteAnimation::VideoBackend;
 }
diff --git a/src/blitter/base.hpp b/src/blitter/base.hpp
index 0beac4e259..7ee97a6c20 100644
--- a/src/blitter/base.hpp
+++ b/src/blitter/base.hpp
@@ -47,10 +47,10 @@ public:
 	};
 
 	/** Types of palette animation. */
-	enum PaletteAnimation {
-		PALETTE_ANIMATION_NONE,           ///< No palette animation
-		PALETTE_ANIMATION_VIDEO_BACKEND,  ///< Palette animation should be done by video backend (8bpp only!)
-		PALETTE_ANIMATION_BLITTER,        ///< The blitter takes care of the palette animation
+	enum class PaletteAnimation : uint8_t {
+		None, ///< No palette animation
+		VideoBackend, ///< Palette animation should be done by video backend (8bpp only!)
+		Blitter, ///< The blitter takes care of the palette animation
 	};
 
 	/**
diff --git a/src/blitter/null.hpp b/src/blitter/null.hpp
index a0ecfbe8db..a9d59668d7 100644
--- a/src/blitter/null.hpp
+++ b/src/blitter/null.hpp
@@ -29,7 +29,7 @@ public:
 	void ScrollBuffer(void *, int &, int &, int &, int &, int, int) override {};
 	size_t BufferSize(uint, uint) override { return 0; };
 	void PaletteAnimate(const Palette &) override { };
-	Blitter::PaletteAnimation UsePaletteAnimation() override { return Blitter::PALETTE_ANIMATION_NONE; };
+	Blitter::PaletteAnimation UsePaletteAnimation() override { return Blitter::PaletteAnimation::None; };
 
 	std::string_view GetName() override { return "null"; }
 };
diff --git a/src/palette.cpp b/src/palette.cpp
index 87741706f1..c42f76c512 100644
--- a/src/palette.cpp
+++ b/src/palette.cpp
@@ -257,7 +257,7 @@ void DoPaletteAnimations()
 	const uint old_tc = palette_animation_counter;
 	uint j;
 
-	if (blitter != nullptr && blitter->UsePaletteAnimation() == Blitter::PALETTE_ANIMATION_NONE) {
+	if (blitter != nullptr && blitter->UsePaletteAnimation() == Blitter::PaletteAnimation::None) {
 		palette_animation_counter = 0;
 	}
 
@@ -342,7 +342,7 @@ void DoPaletteAnimations()
 		if (j >= EPV_CYCLES_GLITTER_WATER) j -= EPV_CYCLES_GLITTER_WATER;
 	}
 
-	if (blitter != nullptr && blitter->UsePaletteAnimation() == Blitter::PALETTE_ANIMATION_NONE) {
+	if (blitter != nullptr && blitter->UsePaletteAnimation() == Blitter::PaletteAnimation::None) {
 		palette_animation_counter = old_tc;
 	} else if (_cur_palette.count_dirty == 0 && memcmp(old_val, &_cur_palette.palette[PALETTE_ANIM_START], sizeof(old_val)) != 0) {
 		/* Did we changed anything on the palette? Seems so.  Mark it as dirty */
diff --git a/src/video/allegro_v.cpp b/src/video/allegro_v.cpp
index 8b0406acee..7f831e0da4 100644
--- a/src/video/allegro_v.cpp
+++ b/src/video/allegro_v.cpp
@@ -102,15 +102,15 @@ void VideoDriver_Allegro::CheckPaletteAnim()
 	Blitter *blitter = BlitterFactory::GetCurrentBlitter();
 
 	switch (blitter->UsePaletteAnimation()) {
-		case Blitter::PALETTE_ANIMATION_VIDEO_BACKEND:
+		case Blitter::PaletteAnimation::VideoBackend:
 			UpdatePalette(_local_palette.first_dirty, _local_palette.count_dirty);
 			break;
 
-		case Blitter::PALETTE_ANIMATION_BLITTER:
+		case Blitter::PaletteAnimation::Blitter:
 			blitter->PaletteAnimate(_local_palette);
 			break;
 
-		case Blitter::PALETTE_ANIMATION_NONE:
+		case Blitter::PaletteAnimation::None:
 			break;
 
 		default:
diff --git a/src/video/cocoa/cocoa_ogl.mm b/src/video/cocoa/cocoa_ogl.mm
index 4b6cdc68c1..fd458056cd 100644
--- a/src/video/cocoa/cocoa_ogl.mm
+++ b/src/video/cocoa/cocoa_ogl.mm
@@ -321,7 +321,7 @@ void VideoDriver_CocoaOpenGL::Paint()
 		/* Always push a changed palette to OpenGL. */
 		CGLSetCurrentContext(this->gl_context);
 		OpenGLBackend::Get()->UpdatePalette(_local_palette.palette, _local_palette.first_dirty, _local_palette.count_dirty);
-		if (blitter->UsePaletteAnimation() == Blitter::PALETTE_ANIMATION_BLITTER) {
+		if (blitter->UsePaletteAnimation() == Blitter::PaletteAnimation::Blitter) {
 			blitter->PaletteAnimate(_local_palette);
 		}
 	}
diff --git a/src/video/cocoa/cocoa_v.mm b/src/video/cocoa/cocoa_v.mm
index 7b08367cdc..ab425e2125 100644
--- a/src/video/cocoa/cocoa_v.mm
+++ b/src/video/cocoa/cocoa_v.mm
@@ -736,15 +736,15 @@ void VideoDriver_CocoaQuartz::CheckPaletteAnim()
 	Blitter *blitter = BlitterFactory::GetCurrentBlitter();
 
 	switch (blitter->UsePaletteAnimation()) {
-		case Blitter::PALETTE_ANIMATION_VIDEO_BACKEND:
+		case Blitter::PaletteAnimation::VideoBackend:
 			this->UpdatePalette(_local_palette.first_dirty, _local_palette.count_dirty);
 			break;
 
-		case Blitter::PALETTE_ANIMATION_BLITTER:
+		case Blitter::PaletteAnimation::Blitter:
 			blitter->PaletteAnimate(_local_palette);
 			break;
 
-		case Blitter::PALETTE_ANIMATION_NONE:
+		case Blitter::PaletteAnimation::None:
 			break;
 
 		default:
diff --git a/src/video/sdl2_default_v.cpp b/src/video/sdl2_default_v.cpp
index 221b0f2776..45108ac36d 100644
--- a/src/video/sdl2_default_v.cpp
+++ b/src/video/sdl2_default_v.cpp
@@ -101,16 +101,16 @@ void VideoDriver_SDL_Default::Paint()
 		Blitter *blitter = BlitterFactory::GetCurrentBlitter();
 
 		switch (blitter->UsePaletteAnimation()) {
-			case Blitter::PALETTE_ANIMATION_VIDEO_BACKEND:
+			case Blitter::PaletteAnimation::VideoBackend:
 				this->UpdatePalette();
 				break;
 
-			case Blitter::PALETTE_ANIMATION_BLITTER: {
+			case Blitter::PaletteAnimation::Blitter: {
 				blitter->PaletteAnimate(this->local_palette);
 				break;
 			}
 
-			case Blitter::PALETTE_ANIMATION_NONE:
+			case Blitter::PaletteAnimation::None:
 				break;
 
 			default:
diff --git a/src/video/sdl2_opengl_v.cpp b/src/video/sdl2_opengl_v.cpp
index eec52ef825..6c3fb5d430 100644
--- a/src/video/sdl2_opengl_v.cpp
+++ b/src/video/sdl2_opengl_v.cpp
@@ -180,7 +180,7 @@ void VideoDriver_SDL_OpenGL::Paint()
 
 		/* Always push a changed palette to OpenGL. */
 		OpenGLBackend::Get()->UpdatePalette(this->local_palette.palette, this->local_palette.first_dirty, this->local_palette.count_dirty);
-		if (blitter->UsePaletteAnimation() == Blitter::PALETTE_ANIMATION_BLITTER) {
+		if (blitter->UsePaletteAnimation() == Blitter::PaletteAnimation::Blitter) {
 			blitter->PaletteAnimate(this->local_palette);
 		}
 
diff --git a/src/video/win32_v.cpp b/src/video/win32_v.cpp
index 41402cd1b2..f29641cb65 100644
--- a/src/video/win32_v.cpp
+++ b/src/video/win32_v.cpp
@@ -1242,16 +1242,16 @@ void VideoDriver_Win32GDI::Paint()
 		Blitter *blitter = BlitterFactory::GetCurrentBlitter();
 
 		switch (blitter->UsePaletteAnimation()) {
-			case Blitter::PALETTE_ANIMATION_VIDEO_BACKEND:
+			case Blitter::PaletteAnimation::VideoBackend:
 				this->UpdatePalette(dc2, _local_palette.first_dirty, _local_palette.count_dirty);
 				break;
 
-			case Blitter::PALETTE_ANIMATION_BLITTER: {
+			case Blitter::PaletteAnimation::Blitter: {
 				blitter->PaletteAnimate(_local_palette);
 				break;
 			}
 
-			case Blitter::PALETTE_ANIMATION_NONE:
+			case Blitter::PaletteAnimation::None:
 				break;
 
 			default:
@@ -1586,7 +1586,7 @@ void VideoDriver_Win32OpenGL::Paint()
 
 		/* Always push a changed palette to OpenGL. */
 		OpenGLBackend::Get()->UpdatePalette(_local_palette.palette, _local_palette.first_dirty, _local_palette.count_dirty);
-		if (blitter->UsePaletteAnimation() == Blitter::PALETTE_ANIMATION_BLITTER) {
+		if (blitter->UsePaletteAnimation() == Blitter::PaletteAnimation::Blitter) {
 			blitter->PaletteAnimate(_local_palette);
 		}