summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/video/xavix.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/video/xavix.cpp')
-rw-r--r--src/mame/video/xavix.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/mame/video/xavix.cpp b/src/mame/video/xavix.cpp
index 08dca3a2527..7730560db9f 100644
--- a/src/mame/video/xavix.cpp
+++ b/src/mame/video/xavix.cpp
@@ -86,14 +86,20 @@ void xavix_state::handle_palette(screen_device &screen, bitmap_ind16 &bitmap, co
//if (h_raw > 24)
// LOG("hraw >24 (%02x)\n", h_raw);
- //if (l_raw > 17)
- // LOG("lraw >17 (%02x)\n", l_raw);
+ //if (l_raw > 24)
+ // LOG("lraw >24 (%02x)\n", l_raw);
//if (s_raw > 7)
// LOG("s_raw >5 (%02x)\n", s_raw);
- double l = (double)l_raw / 17.0f;
+ double l = (double)l_raw / 24.0f; // ekara and drgqst go up to 23 during fades, expect that to be brightest
+ l = l * (std::atan(1)*2); // does not appear to be a linear curve
+ l = std::sin(l);
+
double s = (double)s_raw / 7.0f;
+ s = s * (std::atan(1)*2); // does not appear to be a linear curve
+ s = std::sin(s);
+
double h = (double)h_raw / 24.0f; // hue values 24-31 render as transparent
double r, g, b;