From 017fd84f3661c7fad857788cb985c7a8a372dfbd Mon Sep 17 00:00:00 2001
From: Thomas Harte <thomas.harte@gmail.com>
Date: Thu, 7 Dec 2023 11:05:10 -0500
Subject: [PATCH] Also use output level for CRAM dots.

---
 Components/9918/Implementation/9918.cpp | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

diff --git a/Components/9918/Implementation/9918.cpp b/Components/9918/Implementation/9918.cpp
index eb32d691e..0def9e79b 100644
--- a/Components/9918/Implementation/9918.cpp
+++ b/Components/9918/Implementation/9918.cpp
@@ -667,14 +667,9 @@ void Base<personality>::output_border(int cycles, [[maybe_unused]] uint32_t cram
 		border_colour = Storage<personality>::colour_ram_[16 + background_colour_];
 
 		if(cram_dot) {
-			uint32_t *const pixel_target = reinterpret_cast<uint32_t *>(crt_.begin_data(1));
-			if(pixel_target) {
-				*pixel_target = border_colour | cram_dot;
-			}
-
 			// Four CRT cycles is one pixel width, so this doesn't need clock conversion.
 			// TODO: on the Mega Drive it may be only 3 colour cycles, depending on mode.
-			crt_.output_level(4);
+			crt_.output_level<uint32_t>(4, border_colour | cram_dot);
 			cycles -= 4;
 		}
 	} else {