diff --git a/RedBookPlayer.Models/Hardware/Karaoke/KaraokeDisplay.cs b/RedBookPlayer.Models/Hardware/Karaoke/KaraokeDisplay.cs
index a8e03ab..051b177 100644
--- a/RedBookPlayer.Models/Hardware/Karaoke/KaraokeDisplay.cs
+++ b/RedBookPlayer.Models/Hardware/Karaoke/KaraokeDisplay.cs
@@ -1,3 +1,5 @@
+using System;
+
namespace RedBookPlayer.Models.Hardware.Karaoke
{
///
@@ -7,6 +9,9 @@ namespace RedBookPlayer.Models.Hardware.Karaoke
/// Display data as a 2-dimensional byte array
///
///
+ /// Coordinate (0,0) is the upper left corner of the display
+ /// Coordinate (299, 215) is the lower right corner of the display
+ ///
// CONFLICTING INFO:
///
/// In the top part of the document, it states:
@@ -57,6 +62,23 @@ namespace RedBookPlayer.Models.Hardware.Karaoke
this.TransparentColor = 0x00;
}
+ ///
+ /// Print the current color map to console
+ ///
+ public void DebugPrintScreen()
+ {
+ string screenDump = string.Empty;
+ for(int y = 0; y < 216; y++)
+ {
+ for(int x = 0; x < 300; x++)
+ {
+ screenDump += $"{this.DisplayData[x,y]:X}";
+ }
+
+ screenDump += Environment.NewLine;
+ }
+ }
+
///
/// Process a subchannel packet and update the display as necessary
///
@@ -106,7 +128,9 @@ namespace RedBookPlayer.Models.Hardware.Karaoke
break;
};
}
-
+
+ #region Command Processors
+
///
/// Set the screen to a particular color
///
@@ -337,5 +361,7 @@ namespace RedBookPlayer.Models.Hardware.Karaoke
this.ColorTable[start + 6] = tableData.ColorSpec[6];
this.ColorTable[start + 7] = tableData.ColorSpec[7];
}
+
+ #endregion
}
}
\ No newline at end of file