summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author hap <happppp@users.noreply.github.com>2014-12-09 20:43:23 +0100
committer hap <happppp@users.noreply.github.com>2014-12-09 20:43:23 +0100
commitf8bd4aa26df818646f617390763fd50e22375243 (patch)
tree51ba45ee49e9f23d489014e7b0b8a8e492844d87
parent37195d9a8534509d321a30c22752186d44c70010 (diff)
small update for wizatron layout
-rw-r--r--src/mess/drivers/ticalc1x.c12
-rw-r--r--src/mess/layout/wizatron.lay58
2 files changed, 41 insertions, 29 deletions
diff --git a/src/mess/drivers/ticalc1x.c b/src/mess/drivers/ticalc1x.c
index 414c8c6fb75..84c80c6dac7 100644
--- a/src/mess/drivers/ticalc1x.c
+++ b/src/mess/drivers/ticalc1x.c
@@ -103,8 +103,13 @@ void ticalc1x_state::leds_update()
// on difference, send to output
for (int i = 0; i < 0x10; i++)
if (m_leds_cache[i] != active_state[i])
+ {
output_set_digit_value(i, active_state[i]);
-
+
+ for (int j = 0; j < 8; j++)
+ output_set_lamp_value(i*10 + j, active_state[i] >> j & 1);
+ }
+
memcpy(m_leds_cache, active_state, sizeof(m_leds_cache));
}
@@ -221,13 +226,10 @@ READ8_MEMBER(ticalc1x_state::wizatron_read_k)
WRITE16_MEMBER(ticalc1x_state::wizatron_write_r)
{
// R0-R8: select digit (right-to-left)
+ // note: 3rd digit is custom(not 7seg), for math symbols
for (int i = 0; i < 9; i++)
m_leds_state[i] = (data >> i & 1) ? m_o : 0;
- // 3rd digit has more segments, for math symbols
- // let's assume it's a 14-seg led
- m_leds_state[6] = BITSWAP16(m_leds_state[6],15,14,2,1,6,4,3,0,5,5,11,10,9,13,12,8);
-
// 6th digit only has A and G for =
m_leds_state[3] &= 0x41;
diff --git a/src/mess/layout/wizatron.lay b/src/mess/layout/wizatron.lay
index d44016c2f66..8e5550757e9 100644
--- a/src/mess/layout/wizatron.lay
+++ b/src/mess/layout/wizatron.lay
@@ -2,21 +2,36 @@
<mamelayout version="2">
<!-- note: the digits were very small, wide space between them, and not the same style as (MAME's-)default -->
-<!-- note 2: yes, the PLUS sign is supposed to be lopsided like that -->
-<!-- note 3: yes, the EQUALS sign is supposed to be that high up, but newer releases improved this -->
+<!-- note 2: the PLUS sign is supposed to be lop sided like that (theoretically, this could have been avoided) -->
+<!-- note 3: the EQUALS sign digit is lower than the others, 1st version had it on the same height level -->
- <element name="static_black">
- <rect><color red="0.0" green="0.0" blue="0.0" /></rect>
- </element>
+<!-- define elements -->
<element name="digit" defstate="0">
<led7seg><color red="1.0" green="0.3" blue="0.2" /></led7seg>
</element>
- <element name="digit14" defstate="0">
- <led14seg><color red="1.0" green="0.3" blue="0.2" /></led14seg>
+
+ <element name="lamp_dot" defstate="0">
+ <disk state="1"><color red="1.0" green="0.3" blue="0.2" /></disk>
+ <disk state="0"><color red="0.125490" green="0.035294" blue="0.0235294" /></disk>
+ </element>
+ <element name="lamp_dash" defstate="0">
+ <rect state="1"><color red="1.0" green="0.3" blue="0.2" /></rect>
+ <rect state="0"><color red="0.125490" green="0.035294" blue="0.0235294" /></rect>
+ </element>
+ <element name="lamp_slash" defstate="0">
+ <text string="/" state="1"><color red="1.0" green="0.3" blue="0.2" /></text>
+ <text string="/" state="0"><color red="0.125490" green="0.035294" blue="0.0235294" /></text>
</element>
+ <element name="lamp_backslash" defstate="0">
+ <text string="\" state="1"><color red="1.0" green="0.3" blue="0.2" /></text>
+ <text string="\" state="0"><color red="0.125490" green="0.035294" blue="0.0235294" /></text>
+ </element>
+
+<!-- build screen -->
+
<view name="Internal Layout">
<bounds left="0" right="90" top="0" bottom="15" />
@@ -26,9 +41,7 @@
<bezel name="digit7" element="digit">
<bounds x="10" y="0" width="10" height="15" />
</bezel>
- <bezel name="digit6" element="digit14">
- <bounds x="20" y="0" width="10" height="15" />
- </bezel>
+
<bezel name="digit5" element="digit">
<bounds x="30" y="0" width="10" height="15" />
</bezel>
@@ -36,7 +49,7 @@
<bounds x="40" y="0" width="10" height="15" />
</bezel>
<bezel name="digit3" element="digit">
- <bounds x="50" y="0" width="10" height="15" />
+ <bounds x="50" y="3.5" width="10" height="15" />
</bezel>
<bezel name="digit2" element="digit">
<bounds x="60" y="0" width="10" height="15" />
@@ -48,21 +61,18 @@
<bounds x="80" y="0" width="10" height="15" />
</bezel>
-<!-- mask out DIVIDE sign -->
+<!-- math symbols custom digit -->
- <bezel element="static_black">
- <bounds x="24.5" y="1.80" width="1.8" height="2.00" />
- </bezel>
- <bezel element="static_black">
- <bounds x="24.3" y="5.1" width="1.75" height="1.3" />
- </bezel>
+ <bezel name="lamp65" element="lamp_dash"><bounds x="21.5" y="7.25" width="7" height="0.5" /></bezel>
- <bezel element="static_black">
- <bounds x="23.75" y="11.25" width="1.8" height="2.00" />
- </bezel>
- <bezel element="static_black">
- <bounds x="23.95" y="8.65" width="1.75" height="1.3" />
- </bezel>
+ <bezel name="lamp61" element="lamp_slash"><bounds x="24" y="-0.5" width="5" height="7.5" /></bezel>
+ <bezel name="lamp64" element="lamp_slash"><bounds x="21" y="7" width="5" height="7.5" /></bezel>
+
+ <bezel name="lamp66" element="lamp_backslash"><bounds x="21" y="-0.5" width="5" height="7.5" /></bezel>
+ <bezel name="lamp62" element="lamp_backslash"><bounds x="24" y="7" width="5" height="7.5" /></bezel>
+
+ <bezel name="lamp60" element="lamp_dot"><bounds x="24.25" y="2.25" width="1.5" height="1.5" /></bezel>
+ <bezel name="lamp63" element="lamp_dot"><bounds x="24.25" y="11.75" width="1.5" height="1.5" /></bezel>
</view>
</mamelayout>