summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--hash/mephisto.xml6
-rw-r--r--hash/smondial2.xml2
-rw-r--r--scripts/target/mame/mess.lua1
-rw-r--r--src/mame/drivers/ep64.cpp2
-rw-r--r--src/mame/drivers/fidel_chesster.cpp2
-rw-r--r--src/mame/drivers/fidel_phantom.cpp2
-rw-r--r--src/mame/drivers/mephisto_brikett.cpp484
-rw-r--r--src/mame/drivers/mephisto_glasgow.cpp124
-rw-r--r--src/mame/drivers/mephisto_mm2.cpp58
-rw-r--r--src/mame/drivers/mephisto_modena.cpp2
-rw-r--r--src/mame/drivers/mephisto_modular.cpp118
-rw-r--r--src/mame/drivers/mephisto_montec.cpp16
-rw-r--r--src/mame/drivers/mephisto_polgar.cpp14
-rw-r--r--src/mame/drivers/mephistp.cpp4
-rw-r--r--src/mame/drivers/saitek_risc2500.cpp4
-rw-r--r--src/mame/drivers/saitek_stratos.cpp2
-rw-r--r--src/mame/includes/saitek_stratos.h2
-rw-r--r--src/mame/layout/debutm.lay2
-rw-r--r--src/mame/layout/fidel_desdis.lay6
-rw-r--r--src/mame/layout/fidel_desdis_68kg.lay6
-rw-r--r--src/mame/layout/fidel_desdis_68kr.lay6
-rw-r--r--src/mame/layout/horseran.lay98
-rw-r--r--src/mame/layout/k28m2.lay2
-rw-r--r--src/mame/layout/mephisto_1.lay199
-rw-r--r--src/mame/layout/mephisto_3.lay607
-rw-r--r--src/mame/layout/mephisto_amsterdam.lay80
-rw-r--r--src/mame/layout/mephisto_bup.lay53
-rw-r--r--src/mame/layout/mephisto_glasgow.lay80
-rw-r--r--src/mame/layout/mephisto_megaiv.lay2
-rw-r--r--src/mame/layout/mephisto_mm2.lay63
-rw-r--r--src/mame/layout/mephisto_modena.lay2
-rw-r--r--src/mame/layout/mephisto_montec.lay2
-rw-r--r--src/mame/layout/mephisto_smondial2.lay2
-rw-r--r--src/mame/layout/novag_cforte.lay10
-rw-r--r--src/mame/layout/saitek_corona.lay6
-rw-r--r--src/mame/layout/saitek_stratos.lay6
-rw-r--r--src/mame/layout/saitek_tking.lay6
-rw-r--r--src/mame/mame.lst33
-rw-r--r--src/mame/mess.flt1
39 files changed, 1719 insertions, 396 deletions
diff --git a/hash/mephisto.xml b/hash/mephisto.xml
index 2c6e9dc306d..e0a0e510222 100644
--- a/hash/mephisto.xml
+++ b/hash/mephisto.xml
@@ -4,7 +4,7 @@
<software name="hg240">
<description>Mephisto HG 240 Opening Library</description>
<year>1984</year>
- <publisher>Hegener &amp; Glaser</publisher>
+ <publisher>Hegener + Glaser</publisher>
<sharedfeat name="compatibility" value="MM2" />
<part name="cart" interface="mephisto_cart">
<dataarea name="rom" size="0x4000">
@@ -16,7 +16,7 @@
<software name="hg440">
<description>Mephisto HG 440 Opening Library</description>
<year>1987</year>
- <publisher>Hegener &amp; Glaser</publisher>
+ <publisher>Hegener + Glaser</publisher>
<sharedfeat name="compatibility" value="MM4" />
<part name="cart" interface="mephisto_cart">
<dataarea name="rom" size="0x4000">
@@ -28,7 +28,7 @@
<software name="hg550">
<description>Mephisto HG 550 Opening Library</description>
<year>1990</year>
- <publisher>Hegener &amp; Glaser</publisher>
+ <publisher>Hegener + Glaser</publisher>
<sharedfeat name="compatibility" value="MM5" />
<part name="cart" interface="mephisto_cart">
<dataarea name="rom" size="0x4000">
diff --git a/hash/smondial2.xml b/hash/smondial2.xml
index d5672cdef81..49ce1ac73ce 100644
--- a/hash/smondial2.xml
+++ b/hash/smondial2.xml
@@ -4,7 +4,7 @@
<software name="college">
<description>College Module</description>
<year>1989</year>
- <publisher>Hegener &amp; Glaser</publisher>
+ <publisher>Hegener + Glaser</publisher>
<part name="cart" interface="smondial2_cart">
<dataarea name="rom" size="0x4000">
<rom name="college_module.bin" size="0x4000" crc="02fbdf33" sha1="7d1c87b446ef00f4a533f5193f33b3e05af9ff33" offset="0" />
diff --git a/scripts/target/mame/mess.lua b/scripts/target/mame/mess.lua
index 5eba7aecb5d..8110c60f3d2 100644
--- a/scripts/target/mame/mess.lua
+++ b/scripts/target/mame/mess.lua
@@ -2300,6 +2300,7 @@ files {
createMESSProjects(_target, _subtarget, "hegener")
files {
+ MAME_DIR .. "src/mame/drivers/mephisto_brikett.cpp",
MAME_DIR .. "src/mame/drivers/mephisto_glasgow.cpp",
MAME_DIR .. "src/mame/drivers/mephisto_mm2.cpp",
MAME_DIR .. "src/mame/drivers/mephisto_modena.cpp",
diff --git a/src/mame/drivers/ep64.cpp b/src/mame/drivers/ep64.cpp
index f16b62b3cb2..0e4fa76c27e 100644
--- a/src/mame/drivers/ep64.cpp
+++ b/src/mame/drivers/ep64.cpp
@@ -688,5 +688,5 @@ ROM_END
// YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY FULLNAME FLAGS
COMP( 1985, ep64, 0, 0, ep64, ep64, ep64_state, empty_init, "Enterprise Computers", "Enterprise Sixty Four", MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-COMP( 1985, phc64, ep64, 0, ep64, ep64, ep64_state, empty_init, "Hegener & Glaser", "Mephisto PHC 64 (Germany)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+COMP( 1985, phc64, ep64, 0, ep64, ep64, ep64_state, empty_init, "Hegener + Glaser", "Mephisto PHC 64 (Germany)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
COMP( 1986, ep128, ep64, 0, ep128, ep64, ep64_state, empty_init, "Enterprise Computers", "Enterprise One Two Eight", MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
diff --git a/src/mame/drivers/fidel_chesster.cpp b/src/mame/drivers/fidel_chesster.cpp
index 2c4214cee7b..323bcdc1a70 100644
--- a/src/mame/drivers/fidel_chesster.cpp
+++ b/src/mame/drivers/fidel_chesster.cpp
@@ -5,7 +5,7 @@
Fidelity Chesster Challenger
-These were made after Hegener & Glaser took over Fidelity(design phase started
+These were made after Hegener + Glaser took over Fidelity(design phase started
before that). Kishon Chesster was released under both Fidelity, and Mephisto brands.
*******************************************************************************
diff --git a/src/mame/drivers/fidel_phantom.cpp b/src/mame/drivers/fidel_phantom.cpp
index a131c5e277b..745bb7bb6ee 100644
--- a/src/mame/drivers/fidel_phantom.cpp
+++ b/src/mame/drivers/fidel_phantom.cpp
@@ -6,7 +6,7 @@ Fidelity Phantom (model 6100)
Fidelity licensed the design of the Milton/Phantom motorized chessboard and released
their own version. It has a small LCD panel added, the rest looks nearly the same from
-the outside. After Fidelity was taken over by H&G, it was rereleased in 1990 as the
+the outside. After Fidelity was taken over by H+G, it was rereleased in 1990 as the
Mephisto Phantom. This is assumed to be identical.
Hardware notes:
diff --git a/src/mame/drivers/mephisto_brikett.cpp b/src/mame/drivers/mephisto_brikett.cpp
new file mode 100644
index 00000000000..08799e9131d
--- /dev/null
+++ b/src/mame/drivers/mephisto_brikett.cpp
@@ -0,0 +1,484 @@
+// license:BSD-3-Clause
+// copyright-holders:hap
+// thanks-to:Berger
+/******************************************************************************
+
+Hegener + Glaser AG Mephisto (I)/1X/II/ESB II/III
+The base device is nicknamed the "Brikett"
+
+Mephisto is the 1st chess computer by H+G, chess engine by Thomas Nitsche & Elmar Henne.
+Initially, it didn't support an electronic chessboard. H+G released a dedicated ESB II
+in 1981, and in 1982 they released ESB 3000 and ESB 6000 for use with ESB II/III programs.
+
+Hardware notes:
+
+1st model (Mephisto, Mephisto II 1981):
+- 2 PCBs: DH 4001-C(computer), DH 4002-C(LCD/keypad)
+- CDP1802CE @ 3.579MHz
+- CDP1852CE (I/O port chip), external port
+- 8*MWS5101L3 (256x4 RAM)
+- 4-digit 7seg LCD
+- piezo, TTL, 16-button keypad
+
+2nd model (Mephisto II 1982, Mephisto III): (listed differences)
+- PCB label: DH 4005-101 01
+- CDP1802ACE @ 6.144MHz, later serials also seen with 1806 CPU
+- 2 XTALs (3.579MHz and 6.144MHz), lower speed when running on battery
+- 2*TC5514P (1KBx4 RAM), unpopulated on some Mephisto III
+
+Mephisto program module:
+- PCB label: DF 4003-B
+- 6*CDP1833CE (1KB ROM)
+
+Mephisto II program module:
+- PCB label: HG 4005 02 301 00
+- 3*TC5334P (4KB ROM)
+- 2*TC5514P (1KBx4 RAM)
+- 2*CDP1859CE (4bit latch)
+
+Mephisto III program module:
+- PCB label: HG 4005 02 401 00
+- 2*HN4827128G (16KB EPROM), also seen with HN613256P G81 (32KB ROM)
+- 2*CDM6116E1 (2KB RAM)
+- DM74LS373N (latch)
+- HCF4556BE (chip select?)
+
+ESB 6000 chessboard:
+- CD4017, 74373, 74374
+- 64 reed switches (magnet sensors)
+- 64 leds + power led
+
+ESB 3000 hardware is probably same as ESB 6000.
+There are no other known external port peripherals.
+
+TODO:
+- beeper is noisy on mephisto/mephisto2, is it normal? caused by interrupts triggering mid-beep
+ (mephisto3 disables interrupts during beep)
+
+******************************************************************************/
+
+#include "emu.h"
+#include "cpu/cosmac/cosmac.h"
+#include "machine/cdp1852.h"
+#include "machine/sensorboard.h"
+#include "machine/timer.h"
+#include "sound/dac.h"
+#include "sound/volt_reg.h"
+#include "video/pwm.h"
+#include "speaker.h"
+
+// internal artwork
+#include "mephisto_1.lh" // clickable
+#include "mephisto_3.lh" // clickable
+
+
+namespace {
+
+class brikett_state : public driver_device
+{
+public:
+ brikett_state(const machine_config &mconfig, device_type type, const char *tag) :
+ driver_device(mconfig, type, tag),
+ m_maincpu(*this, "maincpu"),
+ m_extport(*this, "extport"),
+ m_board(*this, "board"),
+ m_display(*this, "display"),
+ m_dac(*this, "dac"),
+ m_speaker_off(*this, "speaker_off"),
+ m_inputs(*this, "IN.%u", 0)
+ { }
+
+ DECLARE_INPUT_CHANGED_MEMBER(reset_button) { if (newval) machine_reset(); }
+ DECLARE_INPUT_CHANGED_MEMBER(switch_cpu_freq) { set_cpu_freq(); }
+
+ // machine drivers
+ void mephisto(machine_config &config);
+ void mephisto2(machine_config &config);
+ void mephisto3(machine_config &config);
+
+protected:
+ virtual void machine_start() override;
+ virtual void machine_reset() override;
+
+private:
+ // devices/pointers
+ required_device<cdp1802_device> m_maincpu;
+ required_device<cdp1852_device> m_extport;
+ optional_device<sensorboard_device> m_board;
+ required_device<pwm_display_device> m_display;
+ required_device<dac_bit_interface> m_dac;
+ required_device<timer_device> m_speaker_off;
+ optional_ioport_array<4+2> m_inputs;
+
+ // address maps
+ void mephisto_map(address_map &map);
+ void mephisto2_map(address_map &map);
+ void mephisto3_map(address_map &map);
+ void mephisto_io(address_map &map);
+
+ void set_cpu_freq();
+
+ // I/O handlers
+ INTERRUPT_GEN_MEMBER(interrupt);
+ DECLARE_READ_LINE_MEMBER(clear_r);
+ DECLARE_WRITE_LINE_MEMBER(q_w);
+ DECLARE_WRITE8_MEMBER(lcd_w);
+ DECLARE_READ8_MEMBER(input_r);
+ DECLARE_READ8_MEMBER(sound_r);
+
+ DECLARE_WRITE8_MEMBER(esb_w);
+ DECLARE_READ_LINE_MEMBER(esb_r);
+
+ TIMER_DEVICE_CALLBACK_MEMBER(speaker_off) { m_dac->write(0); }
+
+ u8 m_lcd_mask;
+ u8 m_digit_idx;
+ u8 m_digit_data[4];
+ bool m_reset;
+
+ u8 m_esb_led;
+ u8 m_esb_row;
+ u8 m_esb_select;
+};
+
+void brikett_state::machine_start()
+{
+ // zerofill
+ m_lcd_mask = 0;
+ m_digit_idx = 0;
+ memset(m_digit_data, 0, sizeof(m_digit_data));
+
+ m_esb_led = 0;
+ m_esb_row = 0;
+ m_esb_select = 0;
+
+ // register for savestates
+ save_item(NAME(m_lcd_mask));
+ save_item(NAME(m_digit_idx));
+ save_item(NAME(m_digit_data));
+
+ save_item(NAME(m_esb_led));
+ save_item(NAME(m_esb_row));
+ save_item(NAME(m_esb_select));
+}
+
+void brikett_state::machine_reset()
+{
+ m_reset = true;
+ m_digit_idx = 0;
+
+ set_cpu_freq();
+}
+
+void brikett_state::set_cpu_freq()
+{
+ // 2nd hardware model has 2 XTALs, it will increase CPU voltage (and speed) when running on mains power
+ m_maincpu->set_unscaled_clock((m_inputs[4].read_safe(0) & 1) ? 6.144_MHz_XTAL : 3.579545_MHz_XTAL);
+}
+
+
+
+/******************************************************************************
+ I/O
+******************************************************************************/
+
+INTERRUPT_GEN_MEMBER(brikett_state::interrupt)
+{
+ m_maincpu->set_input_line(COSMAC_INPUT_LINE_INT, HOLD_LINE);
+}
+
+READ_LINE_MEMBER(brikett_state::clear_r)
+{
+ // CLEAR low + RESET high resets cpu
+ int ret = (m_reset) ? 0 : 1;
+ m_reset = false;
+ return ret;
+}
+
+WRITE_LINE_MEMBER(brikett_state::q_w)
+{
+ // Q: LCD digit data mask
+ m_lcd_mask = state ? 0xff : 0;
+}
+
+WRITE8_MEMBER(brikett_state::lcd_w)
+{
+ // write/shift LCD digit (4*CD4015)
+ // note: last digit "dp" is the colon in the middle
+ m_digit_data[m_digit_idx] = (m_digit_data[m_digit_idx] & ~data) | (m_lcd_mask & data);
+
+ m_display->write_row(m_digit_idx, m_digit_data[m_digit_idx]);
+ m_display->update();
+
+ m_digit_idx = (m_digit_idx + 1) & 3;
+}
+
+READ8_MEMBER(brikett_state::sound_r)
+{
+ // port 1 read enables the speaker
+ if (!machine().side_effects_disabled())
+ {
+ m_dac->write(1);
+ m_speaker_off->adjust(attotime::from_usec(25));
+ }
+
+ return 0xff;
+}
+
+READ8_MEMBER(brikett_state::input_r)
+{
+ u8 data = 0;
+
+ // a0-a3,d0-d3: read keypad
+ for (int i = 0; i < 4; i++)
+ if (BIT(~offset, i))
+ data |= m_inputs[i]->read();
+
+ return data;
+}
+
+WRITE8_MEMBER(brikett_state::esb_w)
+{
+ if (!m_inputs[5].read_safe(0))
+ {
+ // chessboard disabled
+ m_display->matrix_partial(4, 8, 0, 0);
+ return;
+ }
+
+ // CDP1852 SR clocks CD4017, goes to external port together with DO0-DO7
+ // 4017 Q0: N/C
+ // 4017 Q1 + d0-d7: 74374 to led data
+ // 4017 Q2 + d0-d7: 74373 to row select
+ // 4017 Q2-Q9: column select
+ m_esb_select = (m_esb_select + 1) % 10;
+
+ // d0-d7 ANDed together: 4017 reset
+ if (data == 0xff)
+ m_esb_select = 0;
+
+ if (m_esb_select == 1)
+ m_esb_led = data;
+
+ if (m_esb_select == 2)
+ m_esb_row = data;
+
+ // update chessboard leds
+ m_display->matrix_partial(4, 8, ~m_esb_row, m_esb_led);
+}
+
+READ_LINE_MEMBER(brikett_state::esb_r)
+{
+ // EF1: read chessboard sensor
+ if (m_board && m_inputs[5].read_safe(0))
+ return (m_board->read_file(m_esb_select - 2) & ~m_esb_row) ? 0 : 1;
+ else
+ return 0;
+}
+
+
+
+/******************************************************************************
+ Address Maps
+******************************************************************************/
+
+void brikett_state::mephisto_map(address_map &map)
+{
+ map(0x0000, 0x17ff).rom();
+ map(0xf400, 0xf7ff).ram();
+ map(0xfb00, 0xfb00).mirror(0x00ff).w(FUNC(brikett_state::lcd_w));
+ map(0xfff0, 0xffff).r(FUNC(brikett_state::input_r));
+}
+
+void brikett_state::mephisto2_map(address_map &map)
+{
+ mephisto_map(map);
+ map(0x0000, 0x2fff).rom();
+ map(0xf000, 0xf3ff).ram();
+}
+
+void brikett_state::mephisto3_map(address_map &map)
+{
+ mephisto_map(map);
+ map(0x0000, 0x7fff).rom().nopw(); // dummy write with sound_r
+ map(0x8000, 0x8fff).ram();
+}
+
+void brikett_state::mephisto_io(address_map &map)
+{
+ map(0x01, 0x01).r(FUNC(brikett_state::sound_r));
+ map(0x02, 0x02).w(m_extport, FUNC(cdp1852_device::write));
+}
+
+
+
+/******************************************************************************
+ Input Ports
+******************************************************************************/
+
+static INPUT_PORTS_START( mephisto )
+ PORT_START("IN.0")
+ PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_BACKSPACE) PORT_CODE(KEYCODE_DEL) PORT_NAME("CL")
+ PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_A) PORT_CODE(KEYCODE_1) PORT_CODE(KEYCODE_1_PAD) PORT_NAME("A / 1")
+ PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_ENTER) PORT_CODE(KEYCODE_ENTER_PAD) PORT_NAME("ENT")
+ PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_B) PORT_CODE(KEYCODE_2) PORT_CODE(KEYCODE_2_PAD) PORT_NAME("B / 2 / Pawn")
+
+ PORT_START("IN.1")
+ PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_SPACE) PORT_CODE(KEYCODE_PLUS_PAD) PORT_NAME("STA") // enter move
+ PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_C) PORT_CODE(KEYCODE_3) PORT_CODE(KEYCODE_3_PAD) PORT_NAME("C / 3 / Knight")
+ PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_L) PORT_NAME("LEV")
+ PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_D) PORT_CODE(KEYCODE_4) PORT_CODE(KEYCODE_4_PAD) PORT_NAME("D / 4 / Bishop")
+
+ PORT_START("IN.2")
+ PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_I) PORT_NAME("LIST")
+ PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_E) PORT_CODE(KEYCODE_5) PORT_CODE(KEYCODE_5_PAD) PORT_NAME("E / 5 / Rook")
+ PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_S) PORT_CODE(KEYCODE_9) PORT_CODE(KEYCODE_9_PAD) PORT_NAME("SW / 9")
+ PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_F) PORT_CODE(KEYCODE_6) PORT_CODE(KEYCODE_6_PAD) PORT_NAME("F / 6 / Queen")
+
+ PORT_START("IN.3")
+ PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_W) PORT_CODE(KEYCODE_0) PORT_CODE(KEYCODE_0_PAD) PORT_NAME("WS / 0")
+ PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_G) PORT_CODE(KEYCODE_7) PORT_CODE(KEYCODE_7_PAD) PORT_NAME("G / 7 / King")
+ PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_V) PORT_NAME("REV")
+ PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_H) PORT_CODE(KEYCODE_8) PORT_CODE(KEYCODE_8_PAD) PORT_NAME("H / 8")
+
+ PORT_START("RESET")
+ PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_R) PORT_NAME("RES") PORT_CHANGED_MEMBER(DEVICE_SELF, brikett_state, reset_button, nullptr)
+INPUT_PORTS_END
+
+static INPUT_PORTS_START( mephisto2 )
+ PORT_INCLUDE( mephisto )
+
+ PORT_START("IN.4") // 2 XTALs on PCB
+ PORT_CONFNAME( 0x01, 0x01, "CPU Frequency" ) PORT_CHANGED_MEMBER(DEVICE_SELF, brikett_state, switch_cpu_freq, nullptr)
+ PORT_CONFSETTING( 0x00, "3.579MHz (Battery)" )
+ PORT_CONFSETTING( 0x01, "6.144MHz (Mains)" )
+INPUT_PORTS_END
+
+static INPUT_PORTS_START( mephisto3 )
+ PORT_INCLUDE( mephisto2 )
+
+ PORT_MODIFY("IN.1")
+ PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_I) PORT_NAME("INFO")
+
+ PORT_MODIFY("IN.2")
+ PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_O) PORT_NAME("POS")
+ PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_9) PORT_CODE(KEYCODE_9_PAD) PORT_CODE(KEYCODE_LEFT) PORT_NAME("Left / Black / 9")
+
+ PORT_MODIFY("IN.3")
+ PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_0) PORT_CODE(KEYCODE_0_PAD) PORT_CODE(KEYCODE_RIGHT) PORT_NAME("Right / White / 0")
+ PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_M) PORT_NAME("MEM")
+
+ PORT_START("IN.5") // optional
+ PORT_CONFNAME( 0x01, 0x01, "ESB 6000" )
+ PORT_CONFSETTING( 0x00, DEF_STR( Off ) )
+ PORT_CONFSETTING( 0x01, DEF_STR( On ) )
+INPUT_PORTS_END
+
+
+
+/******************************************************************************
+ Machine Drivers
+******************************************************************************/
+
+void brikett_state::mephisto(machine_config &config)
+{
+ /* basic machine hardware */
+ CDP1802(config, m_maincpu, 3.579545_MHz_XTAL);
+ m_maincpu->set_addrmap(AS_PROGRAM, &brikett_state::mephisto_map);
+ m_maincpu->set_addrmap(AS_IO, &brikett_state::mephisto_io);
+ m_maincpu->clear_cb().set(FUNC(brikett_state::clear_r));
+ m_maincpu->q_cb().set(FUNC(brikett_state::q_w));
+ m_maincpu->tpb_cb().set(m_extport, FUNC(cdp1852_device::clock_w));
+ m_maincpu->ef1_cb().set_constant(0); // external port
+ m_maincpu->ef3_cb().set_constant(0); // external port, but unused
+
+ const attotime irq_period = attotime::from_hz(3.579545_MHz_XTAL / 0x10000); // through SAJ300T
+ m_maincpu->set_periodic_int(FUNC(brikett_state::interrupt), irq_period);
+
+ CDP1852(config, m_extport);
+ m_extport->mode_cb().set_constant(1);
+ m_extport->do_cb().set_nop();
+
+ /* video hardware */
+ PWM_DISPLAY(config, m_display).set_size(4, 8);
+ m_display->set_segmask(0xf, 0x7f);
+ config.set_default_layout(layout_mephisto_1);
+
+ /* sound hardware */
+ SPEAKER(config, "speaker").front_center();
+ DAC_1BIT(config, m_dac).add_route(ALL_OUTPUTS, "speaker", 0.25);
+ VOLTAGE_REGULATOR(config, "vref").add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT);
+
+ TIMER(config, m_speaker_off).configure_generic(FUNC(brikett_state::speaker_off));
+}
+
+void brikett_state::mephisto2(machine_config &config)
+{
+ mephisto(config);
+
+ /* basic machine hardware */
+ m_maincpu->set_clock(6.144_MHz_XTAL); // see set_cpu_freq
+ m_maincpu->set_addrmap(AS_PROGRAM, &brikett_state::mephisto2_map);
+}
+
+void brikett_state::mephisto3(machine_config &config)
+{
+ mephisto2(config);
+
+ /* basic machine hardware */
+ m_maincpu->set_addrmap(AS_PROGRAM, &brikett_state::mephisto3_map);
+ m_maincpu->q_cb().set(FUNC(brikett_state::q_w)).invert();
+ m_maincpu->ef1_cb().set(FUNC(brikett_state::esb_r));
+ m_extport->do_cb().set(FUNC(brikett_state::esb_w));
+
+ SENSORBOARD(config, m_board).set_type(sensorboard_device::MAGNETS);
+ m_board->init_cb().set(m_board, FUNC(sensorboard_device::preset_chess));
+ m_board->set_delay(attotime::from_msec(250));
+
+ m_display->set_size(4+8, 8);
+ config.set_default_layout(layout_mephisto_3);
+}
+
+
+
+/******************************************************************************
+ ROM Definitions
+******************************************************************************/
+
+ROM_START( mephisto )
+ ROM_REGION( 0x10000, "maincpu", 0 )
+ ROM_LOAD("89810", 0x0000, 0x0400, CRC(6816be9e) SHA1(f5f1d5084925fe239f5b2ecf4724751e0dc4fc51) ) // CDP1833CE
+ ROM_LOAD("89811", 0x0400, 0x0400, CRC(15febc73) SHA1(10353a7f021993f2cf7d509a928425617e1786fb) ) // "
+ ROM_LOAD("89812", 0x0800, 0x0400, CRC(5e45eb65) SHA1(9d46e5f405bd48705d1e29826917522595fc9768) ) // "
+ ROM_LOAD("89813", 0x0c00, 0x0400, CRC(62da3d89) SHA1(a7f9ada7037e0bd61420358c147b2f57ee47ebcb) ) // "
+ ROM_LOAD("89814", 0x1000, 0x0400, CRC(8e212d9c) SHA1(5df221ce8ca4fbb74f34f31738db4c2efee7fb01) ) // "
+ ROM_LOAD("89815", 0x1400, 0x0400, CRC(072e0b01) SHA1(5b1074932b3f21ab01392250061c093de4af3624) ) // "
+ROM_END
+
+
+ROM_START( mephisto2 )
+ ROM_REGION( 0x10000, "maincpu", 0 )
+ ROM_LOAD("5619_03_351", 0x0000, 0x1000, CRC(5b13d7bf) SHA1(e1b7dee278a03f75e8a1554715fca4c7fbbc1cb8) ) // TC5334P
+ ROM_LOAD("5620_03_352", 0x1000, 0x1000, CRC(e93bf521) SHA1(42f9adce0d5e25b1b9d10217f8e3e0994d7b70d5) ) // "
+ ROM_LOAD("5621_03_353", 0x2000, 0x1000, CRC(430dac62) SHA1(a0e23fcb4cfa27778a9398bd4994a7792e4541d0) ) // "
+ROM_END
+
+
+ROM_START( mephisto3 )
+ ROM_REGION( 0x10000, "maincpu", 0 )
+ ROM_LOAD("101", 0x0000, 0x4000, CRC(923de04f) SHA1(ca7cb3e29aeb3432a815c9d58bb0ed45e7302581) ) // HN4827128G-45
+ ROM_LOAD("201", 0x4000, 0x4000, CRC(0c3cb8fa) SHA1(31449422142c19fc71474a057fc5d6af8a86be7d) ) // "
+ROM_END
+
+} // anonymous namespace
+
+
+
+/******************************************************************************
+ Drivers
+******************************************************************************/
+
+// YEAR NAME PARENT CMP MACHINE INPUT STATE INIT COMPANY, FULLNAME, FLAGS
+CONS( 1980, mephisto, 0, 0, mephisto, mephisto, brikett_state, empty_init, "Hegener + Glaser", "Mephisto", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1981, mephisto2, 0, 0, mephisto2, mephisto2, brikett_state, empty_init, "Hegener + Glaser", "Mephisto II", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1983, mephisto3, 0, 0, mephisto3, mephisto3, brikett_state, empty_init, "Hegener + Glaser", "Mephisto III", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
diff --git a/src/mame/drivers/mephisto_glasgow.cpp b/src/mame/drivers/mephisto_glasgow.cpp
index 3321ae73d0a..015740f5b55 100644
--- a/src/mame/drivers/mephisto_glasgow.cpp
+++ b/src/mame/drivers/mephisto_glasgow.cpp
@@ -8,7 +8,7 @@ sp_rinter@gmx.de
68000 CPU
64 KB ROM
16 KB RAM
-4 Digit LC Display
+4 Digit LCD
3* 74LS138 Decoder/Multiplexer
1*74LS74 Dual positive edge triggered D Flip Flop
@@ -238,7 +238,6 @@ void glasgow_state::glasgow_mem(address_map &map)
void amsterd_state::amsterd_mem(address_map &map)
{
- // ADDRESS_MAP_GLOBAL_MASK(0x7FFFF)
map(0x000000, 0x00ffff).rom();
map(0x800002, 0x800002).w(FUNC(amsterd_state::write_lcd));
map(0x800008, 0x800008).w(FUNC(amsterd_state::write_lcd_flag));
@@ -252,7 +251,6 @@ void amsterd_state::amsterd_mem(address_map &map)
void amsterd_state::dallas32_mem(address_map &map)
{
- // ADDRESS_MAP_GLOBAL_MASK(0x1FFFF)
map(0x000000, 0x00ffff).rom();
map(0x010000, 0x01ffff).ram(); // 64KB
map(0x800002, 0x800002).w(FUNC(amsterd_state::write_lcd32));
@@ -264,47 +262,47 @@ void amsterd_state::dallas32_mem(address_map &map)
map(0x800088, 0x800088).w("board", FUNC(mephisto_board_device::led_w));
}
-static INPUT_PORTS_START( new_keyboard ) //Amsterdam, Dallas 32, Roma, Roma 32
+static INPUT_PORTS_START( new_keyboard )
PORT_START("LINE0")
- PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("A 1") PORT_CODE(KEYCODE_A) PORT_CODE(KEYCODE_1) PORT_CODE(KEYCODE_1_PAD)
- PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("B 2") PORT_CODE(KEYCODE_B) PORT_CODE(KEYCODE_2) PORT_CODE(KEYCODE_2_PAD)
- PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("C 3") PORT_CODE(KEYCODE_C) PORT_CODE(KEYCODE_3) PORT_CODE(KEYCODE_3_PAD)
- PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("D 4") PORT_CODE(KEYCODE_D) PORT_CODE(KEYCODE_4) PORT_CODE(KEYCODE_4_PAD)
- PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("E 5") PORT_CODE(KEYCODE_E) PORT_CODE(KEYCODE_5) PORT_CODE(KEYCODE_5_PAD)
- PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("F 6") PORT_CODE(KEYCODE_F) PORT_CODE(KEYCODE_6) PORT_CODE(KEYCODE_6_PAD)
- PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("9") PORT_CODE(KEYCODE_9) PORT_CODE(KEYCODE_9_PAD)
- PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("0") PORT_CODE(KEYCODE_0) PORT_CODE(KEYCODE_0_PAD)
+ PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("A / 1") PORT_CODE(KEYCODE_A) PORT_CODE(KEYCODE_1) PORT_CODE(KEYCODE_1_PAD)
+ PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("B / 2 / Pawn") PORT_CODE(KEYCODE_B) PORT_CODE(KEYCODE_2) PORT_CODE(KEYCODE_2_PAD)
+ PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("C / 3 / Knight") PORT_CODE(KEYCODE_C) PORT_CODE(KEYCODE_3) PORT_CODE(KEYCODE_3_PAD)
+ PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("D / 4 / Bishop") PORT_CODE(KEYCODE_D) PORT_CODE(KEYCODE_4) PORT_CODE(KEYCODE_4_PAD)
+ PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("E / 5 / Rook") PORT_CODE(KEYCODE_E) PORT_CODE(KEYCODE_5) PORT_CODE(KEYCODE_5_PAD)
+ PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("F / 6 / Queen") PORT_CODE(KEYCODE_F) PORT_CODE(KEYCODE_6) PORT_CODE(KEYCODE_6_PAD)
+ PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Left / Black / 9") PORT_CODE(KEYCODE_9) PORT_CODE(KEYCODE_9_PAD) PORT_CODE(KEYCODE_LEFT)
+ PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Right / White / 0") PORT_CODE(KEYCODE_0) PORT_CODE(KEYCODE_0_PAD) PORT_CODE(KEYCODE_RIGHT)
PORT_START("LINE1")
- PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("INF") PORT_CODE(KEYCODE_I)
+ PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("INFO") PORT_CODE(KEYCODE_I)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("POS") PORT_CODE(KEYCODE_O)
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("LEV") PORT_CODE(KEYCODE_L)
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("MEM") PORT_CODE(KEYCODE_M)
- PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("CLR") PORT_CODE(KEYCODE_BACKSPACE) PORT_CODE(KEYCODE_DEL)
+ PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("CL") PORT_CODE(KEYCODE_BACKSPACE) PORT_CODE(KEYCODE_DEL)
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("ENT") PORT_CODE(KEYCODE_ENTER) PORT_CODE(KEYCODE_ENTER_PAD)
- PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("G 7") PORT_CODE(KEYCODE_G) PORT_CODE(KEYCODE_7) PORT_CODE(KEYCODE_7_PAD)
- PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("H 8") PORT_CODE(KEYCODE_H) PORT_CODE(KEYCODE_8) PORT_CODE(KEYCODE_8_PAD)
+ PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("G / 7 / King") PORT_CODE(KEYCODE_G) PORT_CODE(KEYCODE_7) PORT_CODE(KEYCODE_7_PAD)
+ PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("H / 8") PORT_CODE(KEYCODE_H) PORT_CODE(KEYCODE_8) PORT_CODE(KEYCODE_8_PAD)
INPUT_PORTS_END
-static INPUT_PORTS_START( old_keyboard ) //Glasgow,Dallas
+static INPUT_PORTS_START( old_keyboard )
PORT_START("LINE0")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("9") PORT_CODE(KEYCODE_9) PORT_CODE(KEYCODE_9_PAD)
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("Left / Black / 9") PORT_CODE(KEYCODE_9) PORT_CODE(KEYCODE_9_PAD) PORT_CODE(KEYCODE_LEFT)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("CL") PORT_CODE(KEYCODE_BACKSPACE) PORT_CODE(KEYCODE_DEL)
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("C 3") PORT_CODE(KEYCODE_C) PORT_CODE(KEYCODE_3) PORT_CODE(KEYCODE_3_PAD)
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("C / 3 / Knight") PORT_CODE(KEYCODE_C) PORT_CODE(KEYCODE_3) PORT_CODE(KEYCODE_3_PAD)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("ENT") PORT_CODE(KEYCODE_ENTER) PORT_CODE(KEYCODE_ENTER_PAD)
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("D 4") PORT_CODE(KEYCODE_D) PORT_CODE(KEYCODE_4) PORT_CODE(KEYCODE_4_PAD)
- PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("A 1") PORT_CODE(KEYCODE_A) PORT_CODE(KEYCODE_1) PORT_CODE(KEYCODE_1_PAD)
- PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("F 6") PORT_CODE(KEYCODE_F) PORT_CODE(KEYCODE_6) PORT_CODE(KEYCODE_6_PAD)
- PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("B 2") PORT_CODE(KEYCODE_B) PORT_CODE(KEYCODE_2) PORT_CODE(KEYCODE_2_PAD)
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("D / 4 / Bishop") PORT_CODE(KEYCODE_D) PORT_CODE(KEYCODE_4) PORT_CODE(KEYCODE_4_PAD)
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("A / 1") PORT_CODE(KEYCODE_A) PORT_CODE(KEYCODE_1) PORT_CODE(KEYCODE_1_PAD)
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("F / 6 / Queen") PORT_CODE(KEYCODE_F) PORT_CODE(KEYCODE_6) PORT_CODE(KEYCODE_6_PAD)
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("B / 2 / Pawn") PORT_CODE(KEYCODE_B) PORT_CODE(KEYCODE_2) PORT_CODE(KEYCODE_2_PAD)
PORT_START("LINE1")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("E 5") PORT_CODE(KEYCODE_E) PORT_CODE(KEYCODE_5) PORT_CODE(KEYCODE_5_PAD)
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INF") PORT_CODE(KEYCODE_I)
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("0") PORT_CODE(KEYCODE_0) PORT_CODE(KEYCODE_0_PAD)
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("E / 5 / Rook") PORT_CODE(KEYCODE_E) PORT_CODE(KEYCODE_5) PORT_CODE(KEYCODE_5_PAD)
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INFO") PORT_CODE(KEYCODE_I)
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("Right / White / 0") PORT_CODE(KEYCODE_0) PORT_CODE(KEYCODE_0_PAD) PORT_CODE(KEYCODE_RIGHT)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("POS") PORT_CODE(KEYCODE_O)
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("H 8") PORT_CODE(KEYCODE_H) PORT_CODE(KEYCODE_8) PORT_CODE(KEYCODE_8_PAD)
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("H / 8") PORT_CODE(KEYCODE_H) PORT_CODE(KEYCODE_8) PORT_CODE(KEYCODE_8_PAD)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("LEV") PORT_CODE(KEYCODE_L)
- PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("G 7") PORT_CODE(KEYCODE_G) PORT_CODE(KEYCODE_7) PORT_CODE(KEYCODE_7_PAD)
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("G / 7 / King") PORT_CODE(KEYCODE_G) PORT_CODE(KEYCODE_7) PORT_CODE(KEYCODE_7_PAD)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("MEM") PORT_CODE(KEYCODE_M)
INPUT_PORTS_END
@@ -358,44 +356,43 @@ void amsterd_state::dallas32(machine_config &config)
ROM_START( glasgow )
ROM_REGION( 0x10000, "maincpu", 0 )
- //ROM_LOAD("glasgow.rom", 0x000000, 0x10000, CRC(3e73eff3) )
- ROM_LOAD16_BYTE("me3_3_1u.410",0x00000, 0x04000,CRC(bc8053ba) SHA1(57ea2d5652bfdd77b17d52ab1914de974bd6be12))
- ROM_LOAD16_BYTE("me3_1_1l.410",0x00001, 0x04000,CRC(d5263c39) SHA1(1bef1cf3fd96221eb19faecb6ec921e26ac10ac4))
- ROM_LOAD16_BYTE("me3_4_2u.410",0x08000, 0x04000,CRC(8dba504a) SHA1(6bfab03af835cdb6c98773164d32c76520937efe))
- ROM_LOAD16_BYTE("me3_2_2l.410",0x08001, 0x04000,CRC(b3f27827) SHA1(864ba897d24024592d08c4ae090aa70a2cc5f213))
+ ROM_LOAD16_BYTE("me3_3_1u.410", 0x00000, 0x04000, CRC(bc8053ba) SHA1(57ea2d5652bfdd77b17d52ab1914de974bd6be12) )
+ ROM_LOAD16_BYTE("me3_1_1l.410", 0x00001, 0x04000, CRC(d5263c39) SHA1(1bef1cf3fd96221eb19faecb6ec921e26ac10ac4) )
+ ROM_LOAD16_BYTE("me3_4_2u.410", 0x08000, 0x04000, CRC(8dba504a) SHA1(6bfab03af835cdb6c98773164d32c76520937efe) )
+ ROM_LOAD16_BYTE("me3_2_2l.410", 0x08001, 0x04000, CRC(b3f27827) SHA1(864ba897d24024592d08c4ae090aa70a2cc5f213) )
ROM_END
ROM_START( amsterd )
ROM_REGION16_BE( 0x1000000, "maincpu", 0 )
- //ROM_LOAD16_BYTE("output.bin", 0x000000, 0x10000, CRC(3e73eff3) )
- ROM_LOAD16_BYTE("amsterda-u.bin",0x00000, 0x05a00,CRC(16cefe29) SHA1(9f8c2896e92fbfd47159a59cb5e87706092c86f4))
- ROM_LOAD16_BYTE("amsterda-l.bin",0x00001, 0x05a00,CRC(c859dfde) SHA1(b0bca6a8e698c322a8c597608db6735129d6cdf0))
+ ROM_LOAD16_BYTE("amsterda-u.bin", 0x00000, 0x08000, CRC(0a75514e) SHA1(27daf78b0aba4d7a293b96b3c1fa92f6ee9bcb59) )
+ ROM_LOAD16_BYTE("amsterda-l.bin", 0x00001, 0x08000, CRC(6e17d8fa) SHA1(e0f9e57aaa445f6ff7cbe868658ed7bcfa7e31fb) )
ROM_END
+ROM_START( amsterda )
+ ROM_REGION( 0x10000, "maincpu", 0 )
+ ROM_LOAD16_BYTE("vr_1_1", 0x00000, 0x04000, CRC(a186cc81) SHA1(903f93243536de3c2778ba3d38dcf46ae568862d) )
+ ROM_LOAD16_BYTE("vl_2_1", 0x00001, 0x04000, CRC(9b326226) SHA1(1b29319643d63a43ac84c1af08e02a4fc4fc6ffa) )
+ ROM_LOAD16_BYTE("br_3_1", 0x08000, 0x04000, CRC(372fd7fe) SHA1(c7c11796450fe202e9641170cd0625461cee24af) )
+ ROM_LOAD16_BYTE("bl_4_1", 0x08001, 0x04000, CRC(533e584a) SHA1(0e4510977dc627125c278920492bc137793a9554) )
+ROM_END
-ROM_START( dallas )
- ROM_REGION16_BE( 0x1000000, "maincpu", 0 )
- ROM_LOAD16_BYTE("dal_g_pr.dat",0x00000, 0x04000,CRC(66deade9) SHA1(07ec6b923f2f053172737f1fc94aec84f3ea8da1))
- ROM_LOAD16_BYTE("dal_g_pl.dat",0x00001, 0x04000,CRC(c5b6171c) SHA1(663167a3839ed7508ecb44fd5a1b2d3d8e466763))
- ROM_LOAD16_BYTE("dal_g_br.dat",0x08000, 0x04000,CRC(e24d7ec7) SHA1(a936f6fcbe9bfa49bf455f2d8a8243d1395768c1))
- ROM_LOAD16_BYTE("dal_g_bl.dat",0x08001, 0x04000,CRC(144a15e2) SHA1(c4fcc23d55fa5262f5e01dbd000644a7feb78f32))
+ROM_START( dallas32 )
+ ROM_REGION( 0x10000, "maincpu", 0 )
+ ROM_LOAD("dallas32.epr", 0x000000, 0x10000, CRC(83b9ff3f) SHA1(97bf4cb3c61f8ec328735b3c98281bba44b30a28) )
ROM_END
ROM_START( dallas16 )
ROM_REGION16_BE( 0x1000000, "maincpu", 0 )
- ROM_LOAD16_BYTE("dallas-u.bin",0x00000, 0x06f00,CRC(8c1462b4) SHA1(8b5f5a774a835446d08dceacac42357b9e74cfe8))
- ROM_LOAD16_BYTE("dallas-l.bin",0x00001, 0x06f00,CRC(f0d5bc03) SHA1(4b1b9a71663d5321820b4cf7da205e5fe5d3d001))
+ ROM_LOAD16_BYTE("dallas-u.bin", 0x00000, 0x08000, CRC(70b741f7) SHA1(23d55ed0fea127b727d725c367ee1932ff5af39f) )
+ ROM_LOAD16_BYTE("dallas-l.bin", 0x00001, 0x08000, CRC(69300ad3) SHA1(57ec1b955b1ddfe722011ff5da68a0cd71af9251) )
ROM_END
-ROM_START( roma )
+ROM_START( dallas16a )
ROM_REGION16_BE( 0x1000000, "maincpu", 0 )
- ROM_LOAD16_BYTE("roma16-u.bin", 0x00000, 0x08000, CRC(111d030f) SHA1(e027f7e7018d28ab794e7730392506056809db6b))
- ROM_LOAD16_BYTE("roma16-l.bin", 0x00001, 0x08000, CRC(8245ddd2) SHA1(ab048b60fdc4358913a5d07b6fee863b66dd6734))
-ROM_END
-
-ROM_START( dallas32 )
- ROM_REGION( 0x10000, "maincpu", 0 )
- ROM_LOAD("dallas32.epr", 0x000000, 0x10000, CRC(83b9ff3f) SHA1(97bf4cb3c61f8ec328735b3c98281bba44b30a28) )
+ ROM_LOAD16_BYTE("dal_g_pr", 0x00000, 0x04000, CRC(66deade9) SHA1(07ec6b923f2f053172737f1fc94aec84f3ea8da1) )
+ ROM_LOAD16_BYTE("dal_g_pl", 0x00001, 0x04000, CRC(c5b6171c) SHA1(663167a3839ed7508ecb44fd5a1b2d3d8e466763) )
+ ROM_LOAD16_BYTE("dal_g_br", 0x08000, 0x04000, CRC(e24d7ec7) SHA1(a936f6fcbe9bfa49bf455f2d8a8243d1395768c1) )
+ ROM_LOAD16_BYTE("dal_g_bl", 0x08001, 0x04000, CRC(144a15e2) SHA1(c4fcc23d55fa5262f5e01dbd000644a7feb78f32) )
ROM_END
ROM_START( roma32 )
@@ -403,16 +400,23 @@ ROM_START( roma32 )
ROM_LOAD("roma32.bin", 0x000000, 0x10000, CRC(587d03bf) SHA1(504e9ff958084700076d633f9c306fc7baf64ffd) )
ROM_END
+ROM_START( roma16 )
+ ROM_REGION16_BE( 0x1000000, "maincpu", 0 )
+ ROM_LOAD16_BYTE("roma16-u.bin", 0x00000, 0x08000, CRC(111d030f) SHA1(e027f7e7018d28ab794e7730392506056809db6b) )
+ ROM_LOAD16_BYTE("roma16-l.bin", 0x00001, 0x08000, CRC(8245ddd2) SHA1(ab048b60fdc4358913a5d07b6fee863b66dd6734) )
+ROM_END
+
/***************************************************************************
Game drivers
***************************************************************************/
-/* YEAR, NAME, PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY FULLNAME FLAGS */
-CONS( 1984, glasgow, 0, 0, glasgow, old_keyboard, glasgow_state, empty_init, "Hegener & Glaser", "Mephisto III-S Glasgow", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1985, amsterd, 0, 0, amsterd, new_keyboard, amsterd_state, empty_init, "Hegener & Glaser", "Mephisto Amsterdam", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1986, dallas, glasgow, 0, glasgow, old_keyboard, glasgow_state, empty_init, "Hegener & Glaser", "Mephisto Dallas", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1986, dallas16, amsterd, 0, amsterd, new_keyboard, amsterd_state, empty_init, "Hegener & Glaser", "Mephisto Dallas 16 Bit", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1986, dallas32, amsterd, 0, dallas32, new_keyboard, amsterd_state, empty_init, "Hegener & Glaser", "Mephisto Dallas 32 Bit", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1987, roma, amsterd, 0, amsterd, new_keyboard, amsterd_state, empty_init, "Hegener & Glaser", "Mephisto Roma", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1987, roma32, amsterd, 0, dallas32, new_keyboard, amsterd_state, empty_init, "Hegener & Glaser", "Mephisto Roma 32 Bit", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+/* YEAR, NAME, PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY FULLNAME FLAGS */
+CONS( 1984, glasgow, 0, 0, glasgow, old_keyboard, glasgow_state, empty_init, "Hegener + Glaser", "Mephisto III-S Glasgow", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1985, amsterd, 0, 0, amsterd, new_keyboard, amsterd_state, empty_init, "Hegener + Glaser", "Mephisto Amsterdam", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1985, amsterda, amsterd, 0, glasgow, old_keyboard, glasgow_state, empty_init, "Hegener + Glaser", "Mephisto Amsterdam (older)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1986, dallas32, 0, 0, dallas32, new_keyboard, amsterd_state, empty_init, "Hegener + Glaser", "Mephisto Dallas 68020", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1986, dallas16, dallas32, 0, amsterd, new_keyboard, amsterd_state, empty_init, "Hegener + Glaser", "Mephisto Dallas 68000", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1986, dallas16a, dallas32, 0, glasgow, old_keyboard, glasgow_state, empty_init, "Hegener + Glaser", "Mephisto Dallas 68000 (older)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1987, roma32, 0, 0, dallas32, new_keyboard, amsterd_state, empty_init, "Hegener + Glaser", "Mephisto Roma 68020", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1987, roma16, roma32, 0, amsterd, new_keyboard, amsterd_state, empty_init, "Hegener + Glaser", "Mephisto Roma 68000", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
diff --git a/src/mame/drivers/mephisto_mm2.cpp b/src/mame/drivers/mephisto_mm2.cpp
index bb3d8c4b660..fba62a0a70e 100644
--- a/src/mame/drivers/mephisto_mm2.cpp
+++ b/src/mame/drivers/mephisto_mm2.cpp
@@ -203,7 +203,7 @@ void mephisto_state::mm2_mem(address_map &map)
static INPUT_PORTS_START( mephisto )
PORT_START("KEY1_0") //Port $2c00
- PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("CLEAR") PORT_CODE(KEYCODE_DEL) PORT_CODE(KEYCODE_BACKSPACE)
+ PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("CL") PORT_CODE(KEYCODE_DEL) PORT_CODE(KEYCODE_BACKSPACE)
PORT_START("KEY1_1") //Port $2c01
PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("POS") PORT_CODE(KEYCODE_O)
PORT_START("KEY1_2") //Port $2c02
@@ -215,45 +215,45 @@ static INPUT_PORTS_START( mephisto )
PORT_START("KEY1_5") //Port $2c05
PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("ENT") PORT_CODE(KEYCODE_ENTER) PORT_CODE(KEYCODE_ENTER_PAD)
PORT_START("KEY1_6") //Port $2c06
- PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("0") PORT_CODE(KEYCODE_0) PORT_CODE(KEYCODE_0_PAD)
+ PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("Right / White / 0") PORT_CODE(KEYCODE_0) PORT_CODE(KEYCODE_0_PAD) PORT_CODE(KEYCODE_RIGHT)
PORT_START("KEY1_7") //Port $2c07
- PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("9") PORT_CODE(KEYCODE_9) PORT_CODE(KEYCODE_9_PAD)
+ PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("Left / Black / 9") PORT_CODE(KEYCODE_9) PORT_CODE(KEYCODE_9_PAD) PORT_CODE(KEYCODE_LEFT)
PORT_START("KEY2_0") //Port $2c08
- PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("E 5") PORT_CODE(KEYCODE_E) PORT_CODE(KEYCODE_5) PORT_CODE(KEYCODE_5_PAD)
+ PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("E / 5 / Queen") PORT_CODE(KEYCODE_E) PORT_CODE(KEYCODE_5) PORT_CODE(KEYCODE_5_PAD)
PORT_START("KEY2_1") //Port $2c09
- PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("F 6") PORT_CODE(KEYCODE_F) PORT_CODE(KEYCODE_6) PORT_CODE(KEYCODE_6_PAD)
+ PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("F / 6 / King") PORT_CODE(KEYCODE_F) PORT_CODE(KEYCODE_6) PORT_CODE(KEYCODE_6_PAD)
PORT_START("KEY2_2") //Port $2c0a
- PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("G 7") PORT_CODE(KEYCODE_G) PORT_CODE(KEYCODE_7) PORT_CODE(KEYCODE_7_PAD)
+ PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("G / 7") PORT_CODE(KEYCODE_G) PORT_CODE(KEYCODE_7) PORT_CODE(KEYCODE_7_PAD)
PORT_START("KEY2_3") //Port $2c0b
- PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("A 1") PORT_CODE(KEYCODE_A) PORT_CODE(KEYCODE_1) PORT_CODE(KEYCODE_1_PAD)
+ PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("A / 1 / Pawn") PORT_CODE(KEYCODE_A) PORT_CODE(KEYCODE_1) PORT_CODE(KEYCODE_1_PAD)
PORT_START("KEY2_4") //Port $2c0c
- PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("H 8") PORT_CODE(KEYCODE_H) PORT_CODE(KEYCODE_8) PORT_CODE(KEYCODE_8_PAD)
+ PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("H / 8") PORT_CODE(KEYCODE_H) PORT_CODE(KEYCODE_8) PORT_CODE(KEYCODE_8_PAD)
PORT_START("KEY2_5") //Port $2c0d
- PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("B 2") PORT_CODE(KEYCODE_B) PORT_CODE(KEYCODE_2) PORT_CODE(KEYCODE_2_PAD)
+ PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("B / 2 / Knight") PORT_CODE(KEYCODE_B) PORT_CODE(KEYCODE_2) PORT_CODE(KEYCODE_2_PAD)
PORT_START("KEY2_6") //Port $2c0e
- PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("C 3") PORT_CODE(KEYCODE_C) PORT_CODE(KEYCODE_3) PORT_CODE(KEYCODE_3_PAD)
+ PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("C / 3 / Bishop") PORT_CODE(KEYCODE_C) PORT_CODE(KEYCODE_3) PORT_CODE(KEYCODE_3_PAD)
PORT_START("KEY2_7") //Port $2c0f
- PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("D 4") PORT_CODE(KEYCODE_D) PORT_CODE(KEYCODE_4) PORT_CODE(KEYCODE_4_PAD)
+ PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("D / 4 / Rook") PORT_CODE(KEYCODE_D) PORT_CODE(KEYCODE_4) PORT_CODE(KEYCODE_4_PAD)
INPUT_PORTS_END
static INPUT_PORTS_START( bup )
PORT_START("KEY1_0")
- PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("1") PORT_CODE(KEYCODE_1) PORT_CODE(KEYCODE_1_PAD)
+ PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("1 / Pawn") PORT_CODE(KEYCODE_1) PORT_CODE(KEYCODE_1_PAD)
PORT_START("KEY1_1")
- PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("2") PORT_CODE(KEYCODE_2) PORT_CODE(KEYCODE_2_PAD)
+ PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("2 / Knight") PORT_CODE(KEYCODE_2) PORT_CODE(KEYCODE_2_PAD)
PORT_START("KEY1_2")
- PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("3") PORT_CODE(KEYCODE_3) PORT_CODE(KEYCODE_3_PAD)
+ PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("3 / Bishop") PORT_CODE(KEYCODE_3) PORT_CODE(KEYCODE_3_PAD)
PORT_START("KEY1_3")
- PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("4") PORT_CODE(KEYCODE_4) PORT_CODE(KEYCODE_4_PAD)
+ PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("4 / Rook") PORT_CODE(KEYCODE_4) PORT_CODE(KEYCODE_4_PAD)
PORT_START("KEY1_4")
- PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("5") PORT_CODE(KEYCODE_5) PORT_CODE(KEYCODE_5_PAD)
+ PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("5 / Queen") PORT_CODE(KEYCODE_5) PORT_CODE(KEYCODE_5_PAD)
PORT_START("KEY1_5")
- PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("6") PORT_CODE(KEYCODE_6) PORT_CODE(KEYCODE_6_PAD)
+ PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("6 / King") PORT_CODE(KEYCODE_6) PORT_CODE(KEYCODE_6_PAD)
PORT_START("KEY1_6")
- PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("WHITE") PORT_CODE(KEYCODE_W)
+ PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("White") PORT_CODE(KEYCODE_W)
PORT_START("KEY1_7")
- PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("BLACK") PORT_CODE(KEYCODE_B)
+ PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("Black") PORT_CODE(KEYCODE_B)
PORT_START("KEY2_0")
PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("CL") PORT_CODE(KEYCODE_DEL) PORT_CODE(KEYCODE_BACKSPACE)
@@ -395,16 +395,18 @@ ROM_END
ROM_START(mm2)
ROM_REGION(0x10000,"maincpu",0)
- ROM_DEFAULT_BIOS("v2a")
+ ROM_DEFAULT_BIOS("v4") // no official versioning, chronological order is assumed here from hex compare
ROM_SYSTEM_BIOS( 0, "v1", "V1" )
ROMX_LOAD("mm2_v1_1.bin", 0x8000, 0x4000, CRC(b91dab77) SHA1(67762304afe51fb8f1eb91259567b2451bf9bbfd), ROM_BIOS(0))
ROMX_LOAD("mm2_v1_2.bin", 0xc000, 0x4000, CRC(01143cc1) SHA1(f78474b410dbecb209aa23ef81e9f894e8b54942), ROM_BIOS(0))
ROM_SYSTEM_BIOS( 1, "v2", "V2" )
ROMX_LOAD("mm2_v2_1.bin", 0x8000, 0x4000, CRC(e2daac82) SHA1(c9fa59ca92362f8ee770733073bfa2ab8c7904ad), ROM_BIOS(1))
ROMX_LOAD("mm2_v2_2.bin", 0xc000, 0x4000, CRC(5e296939) SHA1(badd2a377259cf738cd076d8fb245c3dc284c24d), ROM_BIOS(1))
- ROM_SYSTEM_BIOS( 2, "v2a", "V2a" )
- ROMX_LOAD("mm2_1_v2a.bin", 0x8000, 0x4000, CRC(e9adcb8f) SHA1(498f48f96678f7bf429fd43e4f392ec6dd649fc6), ROM_BIOS(2))
- ROMX_LOAD("mm2_2_v2a.bin", 0xc000, 0x4000, CRC(d40cbfc2) SHA1(4e9b19b1a0ad97868b31d7a55143a1778110cc96), ROM_BIOS(2))
+ ROM_SYSTEM_BIOS( 2, "v3", "V3" )
+ ROMX_LOAD("300", 0x8000, 0x8000, CRC(60c777d4) SHA1(a77d678be60094073275558b4e8f0d34b43dd9ae), ROM_BIOS(2)) // D27C256D-20
+ ROM_SYSTEM_BIOS( 3, "v4", "V4" )
+ ROMX_LOAD("mm2_1_v2a.bin", 0x8000, 0x4000, CRC(e9adcb8f) SHA1(498f48f96678f7bf429fd43e4f392ec6dd649fc6), ROM_BIOS(3))
+ ROMX_LOAD("mm2_2_v2a.bin", 0xc000, 0x4000, CRC(d40cbfc2) SHA1(4e9b19b1a0ad97868b31d7a55143a1778110cc96), ROM_BIOS(3))
ROM_END
ROM_START(bup)
@@ -445,9 +447,9 @@ ROM_END
***************************************************************************/
/* YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY, FULLNAME, FLAGS */
-CONS( 1984, mm2, mm4, 0, mm2, mephisto, mephisto_state, empty_init, "Hegener & Glaser", "Mephisto MM II", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1985, bup, mm4, 0, bup, bup, mephisto_state, empty_init, "Hegener & Glaser", "Mephisto B&P", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1986, rebel5, mm4, 0, rebel5, mephisto, mephisto_state, empty_init, "Hegener & Glaser", "Mephisto Rebell 5.0", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1987, mm4, 0, 0, mephisto, mephisto, mephisto_state, empty_init, "Hegener & Glaser", "Mephisto MM IV", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1984, mm2, 0, 0, mm2, mephisto, mephisto_state, empty_init, "Hegener + Glaser", "Mephisto MM II", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1985, bup, 0, 0, bup, bup, mephisto_state, empty_init, "Hegener + Glaser", "Mephisto Blitz- und Problemloesungs-Modul", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1986, rebel5, 0, 0, rebel5, mephisto, mephisto_state, empty_init, "Hegener + Glaser", "Mephisto Rebell 5,0", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1987, mm4, 0, 0, mephisto, mephisto, mephisto_state, empty_init, "Hegener + Glaser", "Mephisto MM IV", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
CONS( 1987, mm4tk, mm4, 0, mm4tk, mephisto, mephisto_state, empty_init, "hack", "Mephisto MM IV (TurboKit)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1990, mm5, mm4, 0, mephisto, mephisto, mephisto_state, empty_init, "Hegener & Glaser", "Mephisto MM V", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1990, mm5, 0, 0, mephisto, mephisto, mephisto_state, empty_init, "Hegener + Glaser", "Mephisto MM V", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
diff --git a/src/mame/drivers/mephisto_modena.cpp b/src/mame/drivers/mephisto_modena.cpp
index 3f771f7bda7..bd7cba023fa 100644
--- a/src/mame/drivers/mephisto_modena.cpp
+++ b/src/mame/drivers/mephisto_modena.cpp
@@ -171,4 +171,4 @@ ROM_END
***************************************************************************/
/* YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY FULLNAME FLAGS */
-CONS( 1992, modena, 0, 0, modena, modena, mephisto_modena_state, empty_init, "Hegener & Glaser", "Mephisto Modena", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1992, modena, 0, 0, modena, modena, mephisto_modena_state, empty_init, "Hegener + Glaser", "Mephisto Modena", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
diff --git a/src/mame/drivers/mephisto_modular.cpp b/src/mame/drivers/mephisto_modular.cpp
index 259c8655739..6817a17f992 100644
--- a/src/mame/drivers/mephisto_modular.cpp
+++ b/src/mame/drivers/mephisto_modular.cpp
@@ -1,36 +1,45 @@
// license:LGPL-2.1+
// copyright-holders:Dirk Verwiebe, Cowering, Sandro Ronco
/******************************************************************************
- Mephisto Chess Computers using plugin modules
-
- (most of the magnetic sensor versions with 680x0 family modules)
-
- Almeria 68000 12Mhz
- Almeria 68020 12Mhz
- Portorose 68000 12Mhz
- Portorose 68020 12Mhz
- Lyon 68000 12Mhz
- Lyon 68020 12Mhz
- Vancouver 68000 12Mhz
- Vancouver 68020 12Mhz
- Genius 68030 V4.00 33.333 Mhz
- Genius 68030 V4.01 33.333 Mhz
- Berlin Pro 68020 24.576 Mhz (not modular board, but otherwise close to milano)
- Berlin Pro (London) 68020 24.576 Mhz (not modular board, but otherwise close to milano)
- London 68030 V5.00k 33.333 Mhz (probably the Genius 3/4 update ROM)
-
- Notes by Cowering (2011)
-
- TODO: add Bavaria sensor support (unknown1,2,3 handlers in current driver)
- proper 'bezel' for all games/cpuspeeds so 'Vancouver' does not say 'Almeria', etc
- custom handler to read/write the Battery RAM so 68000 can share files with 020/030 (real modular machine can do this)
- add the missing machines.. including the very rare overclocked 'TM' Tournament Machines
- match I/S= diag speed test with real hardware (good test for proper waitstates)
- remove gen32/lond030 ROM patch
-
- Undocumented buttons: holding ENTER and LEFT cursor on cold boot runs diagnostics on modular 680x0 boards
- holding UP and RIGHT cursor will clear the Battery Backed RAM on modular 680x0 boards
- holding CLEAR clears Battery Backed RAM on the Berlin (Pro) 68020
+
+Hegener + Glaser Mephisto Chess Computers using plugin modules
+
+(most of the magnetic sensor versions with 680x0 family modules)
+After Roma, H+G started naming the different versions 16 Bit/32 Bit instead of 68000/68020.
+With Genius and the TM versions, they still applied "68030".
+
+Almeria 16 Bit 12Mhz
+Almeria 32 Bit 12Mhz
+Portorose 16 Bit 12Mhz
+Portorose 32 Bit 12Mhz
+Lyon 16 Bit 12Mhz
+Lyon 32 Bit 12Mhz
+Vancouver 16 Bit 12Mhz
+Vancouver 32 Bit 12Mhz
+Genius 68030 V4.00 33.333 Mhz
+Genius 68030 V4.01 33.333 Mhz
+Berlin Pro 68020 24.576 Mhz (not modular board, but otherwise close to milano)
+Berlin Pro (London) 68020 24.576 Mhz (not modular board, but otherwise close to milano)
+London 68030 V5.00k 33.333 Mhz (probably the Genius 3/4 update ROM)
+
+The London program (1994 competition) is not a dedicated module, but an EPROM upgrade
+released by Richard Lang for Almeria, Lyon, Portorose and Vancouver modules, and also
+available as upgrades for Berlin/Berlin Pro and Genius.
+No Mephisto modules were released anymore after Saitek took over H+G, engine is assumed
+to be same as Saitek's 1996 Mephisto London 68030 (limited release TM version).
+
+TODO:
+- add Bavaria sensor support (unknown1,2,3 handlers in current driver)
+- custom handler to read/write the Battery RAM so 68000 can share files with 020/030 (real modular machine can do this)
+- add the missing machines.. including the very rare overclocked 'TM' Tournament Machines
+- match I/S= diag speed test with real hardware (good test for proper waitstates)
+- remove gen32/gen32l ROM patch
+- move berlin to its own driver file
+
+Undocumented buttons:
+- holding ENTER and LEFT cursor on cold boot runs diagnostics on modular 680x0 boards
+- holding UP and RIGHT cursor will clear the Battery Backed RAM on modular 680x0 boards
+- holding CLEAR clears Battery Backed RAM on the Berlin (Pro) 68020
******************************************************************************/
@@ -379,6 +388,11 @@ ROM_START( gen32 )
ROMX_LOAD("gen32_4.bin", 0x00000, 0x40000, CRC(6cc4da88) SHA1(ea72acf9c67ed17c6ac8de56a165784aa629c4a1), ROM_BIOS(1))
ROM_END
+ROM_START( gen32l )
+ ROM_REGION32_BE( 0x40000, "maincpu", 0 )
+ ROM_LOAD("gen32l.bin", 0x00000, 0x40000, CRC(853baa4e) SHA1(946951081d4e91e5bdd9e93d0769568a7fe79bad))
+ROM_END
+
ROM_START( van16 )
ROM_REGION16_BE( 0x40000, "maincpu", 0 )
ROM_LOAD16_BYTE("va16even.bin", 0x00000, 0x20000, CRC(e87602d5) SHA1(90cb2767b4ae9e1b265951eb2569b9956b9f7f44))
@@ -390,14 +404,15 @@ ROM_START( van32 )
ROM_LOAD("vanc32.bin", 0x00000, 0x40000, CRC(f872beb5) SHA1(9919f207264f74e2b634b723b048ae9ca2cefbc7))
ROM_END
-ROM_START( lond020 )
- ROM_REGION32_BE( 0x40000, "maincpu", 0 )
- ROM_LOAD("lond020.bin", 0x00000, 0x40000, CRC(3225b8da) SHA1(fd8f6f4e9c03b6cdc86d8405e856c26041bfad12))
+ROM_START( lond16 )
+ ROM_REGION16_BE( 0x40000, "maincpu", 0 )
+ ROM_LOAD16_BYTE("london_program_68000_module_even", 0x00000, 0x20000, CRC(68cfc2de) SHA1(93b551180f01f8ed6991c082795cd9ead922179a))
+ ROM_LOAD16_BYTE("london_program_68000_module_odd", 0x00001, 0x20000, CRC(2d75e2cf) SHA1(2ec9222c95f4be9667fb3b4be1b6f90fd4ad11c4))
ROM_END
-ROM_START( lond030 )
+ROM_START( lond32 )
ROM_REGION32_BE( 0x40000, "maincpu", 0 )
- ROM_LOAD("lond030.bin", 0x00000, 0x40000, CRC(853baa4e) SHA1(946951081d4e91e5bdd9e93d0769568a7fe79bad))
+ ROM_LOAD("london_program_68020_module", 0x00000, 0x40000, CRC(3225b8da) SHA1(fd8f6f4e9c03b6cdc86d8405e856c26041bfad12))
ROM_END
ROM_START( lyon16 )
@@ -438,21 +453,22 @@ ROM_END
Game driver(s)
***************************************************************************/
-/* YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY FULLNAME FLAGS */
-CONS( 1988, alm16, 0, 0, alm16, alm16, mmodular_state, empty_init, "Hegener & Glaser", "Mephisto Almeria 68000", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1988, alm32, 0, 0, alm32, alm32, mmodular_state, empty_init, "Hegener & Glaser", "Mephisto Almeria 68020", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1989, port16, alm16, 0, alm16, alm16, mmodular_state, empty_init, "Hegener & Glaser", "Mephisto Portorose 68000", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1989, port32, alm32, 0, alm32, alm32, mmodular_state, empty_init, "Hegener & Glaser", "Mephisto Portorose 68020", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1990, lyon16, alm16, 0, alm16, alm16, mmodular_state, empty_init, "Hegener & Glaser", "Mephisto Lyon 68000", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1990, lyon32, alm32, 0, alm32, alm32, mmodular_state, empty_init, "Hegener & Glaser", "Mephisto Lyon 68020", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1991, van16, alm16, 0, van16, alm16, mmodular_state, empty_init, "Hegener & Glaser", "Mephisto Vancouver 68000", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1991, van32, alm32, 0, van32, alm32, mmodular_state, empty_init, "Hegener & Glaser", "Mephisto Vancouver 68020", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1993, gen32, 0, 0, gen32, gen32, mmodular_state, init_gen32, "Hegener & Glaser", "Mephisto Genius 68030", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1996, lond020, alm32, 0, van32, alm32, mmodular_state, empty_init, "Hegener & Glaser", "Mephisto London 68020", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1996, lond030, gen32, 0, gen32, gen32, mmodular_state, init_gen32, "Hegener & Glaser", "Mephisto Genius 68030 London Upgrade", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK )
+/* YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY FULLNAME FLAGS */
+CONS( 1988, alm32, 0, 0, alm32, alm32, mmodular_state, empty_init, "Hegener + Glaser", "Mephisto Almeria 32 Bit", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1988, alm16, alm32, 0, alm16, alm16, mmodular_state, empty_init, "Hegener + Glaser", "Mephisto Almeria 16 Bit", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1989, port32, 0, 0, alm32, alm32, mmodular_state, empty_init, "Hegener + Glaser", "Mephisto Portorose 32 Bit", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1989, port16, port32, 0, alm16, alm16, mmodular_state, empty_init, "Hegener + Glaser", "Mephisto Portorose 16 Bit", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1990, lyon32, 0, 0, alm32, alm32, mmodular_state, empty_init, "Hegener + Glaser", "Mephisto Lyon 32 Bit", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1990, lyon16, lyon32, 0, alm16, alm16, mmodular_state, empty_init, "Hegener + Glaser", "Mephisto Lyon 16 Bit", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1991, van32, 0, 0, van32, alm32, mmodular_state, empty_init, "Hegener + Glaser", "Mephisto Vancouver 32 Bit", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1991, van16, van32, 0, van16, alm16, mmodular_state, empty_init, "Hegener + Glaser", "Mephisto Vancouver 16 Bit", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1993, gen32, 0, 0, gen32, gen32, mmodular_state, init_gen32, "Hegener + Glaser", "Mephisto Genius 68030", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1996, gen32l, gen32, 0, gen32, gen32, mmodular_state, init_gen32, "Richard Lang", "Mephisto Genius 68030 (London upgrade)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1996, lond32, 0, 0, van32, alm32, mmodular_state, empty_init, "Richard Lang", "Mephisto London 32 Bit", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK ) // for alm32/port32/lyon32/van32
+CONS( 1996, lond16, lond32, 0, van16, alm16, mmodular_state, empty_init, "Richard Lang", "Mephisto London 16 Bit", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK ) // for alm16/port16/lyon16/van16
// not modular boards
-CONS( 1992, berl16, 0, 0, berl16, berlinp, berlinp_state, empty_init, "Hegener & Glaser", "Mephisto Berlin 68000", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1994, berlinp, 0, 0, berlinp, berlinp, berlinp_state, empty_init, "Hegener & Glaser", "Mephisto Berlin Pro 68020", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1996, berl16l, berl16, 0, berl16, berlinp, berlinp_state, empty_init, "Hegener & Glaser", "Mephisto Berlin 68000 London Upgrade", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1996, bpl32, berlinp, 0, berlinp, berlinp, berlinp_state, empty_init, "Hegener & Glaser", "Mephisto Berlin Pro London Upgrade", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1992, berl16, 0, 0, berl16, berlinp, berlinp_state, empty_init, "Hegener + Glaser", "Mephisto Berlin 68000", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1994, berlinp, 0, 0, berlinp, berlinp, berlinp_state, empty_init, "Hegener + Glaser", "Mephisto Berlin Professional 68020", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1996, berl16l, berl16, 0, berl16, berlinp, berlinp_state, empty_init, "Richard Lang", "Mephisto Berlin 68000 (London upgrade)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1996, bpl32, berlinp, 0, berlinp, berlinp, berlinp_state, empty_init, "Richard Lang", "Mephisto Berlin Professional 68020 (London upgrade)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_TIMING | MACHINE_CLICKABLE_ARTWORK )
diff --git a/src/mame/drivers/mephisto_montec.cpp b/src/mame/drivers/mephisto_montec.cpp
index 246a5697294..700abb676de 100644
--- a/src/mame/drivers/mephisto_montec.cpp
+++ b/src/mame/drivers/mephisto_montec.cpp
@@ -647,11 +647,11 @@ ROM_END
/* YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY FULLNAME FLAGS */
-CONS( 1985, mondial, 0, 0, mondial, mondial2, mephisto_montec_state, empty_init, "Hegener & Glaser", "Mephisto Mondial", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1986, smondial, 0, 0, smondial, megaiv, mephisto_montec_state, empty_init, "Hegener & Glaser", "Mephisto Super Mondial (Ver A)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1986, smondialb, smondial, 0, megaiv, megaiv, mephisto_montec_state, empty_init, "Hegener & Glaser", "Mephisto Super Mondial (Ver B)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1987, montec, 0, 0, montec, montec, mephisto_montec_state, empty_init, "Hegener & Glaser", "Mephisto Monte Carlo", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1987, mondial2, 0, 0, mondial2, mondial2, mephisto_montec_state, empty_init, "Hegener & Glaser", "Mephisto Mondial II", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1989, smondial2, 0, 0, smondial2, smondial2, mephisto_montec_state, empty_init, "Hegener & Glaser", "Mephisto Super Mondial II", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1989, megaiv, 0, 0, megaiv, megaiv, mephisto_montec_state, empty_init, "Hegener & Glaser", "Mephisto Mega IV", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1990, monteciv, montec, 0, monteciv, montec, mephisto_montec_state, empty_init, "Hegener & Glaser", "Mephisto Monte Carlo IV LE", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1985, mondial, 0, 0, mondial, mondial2, mephisto_montec_state, empty_init, "Hegener + Glaser", "Mephisto Mondial", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1986, smondial, 0, 0, smondial, megaiv, mephisto_montec_state, empty_init, "Hegener + Glaser", "Mephisto Super Mondial (Ver A)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1986, smondialb, smondial, 0, megaiv, megaiv, mephisto_montec_state, empty_init, "Hegener + Glaser", "Mephisto Super Mondial (Ver B)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1987, montec, 0, 0, montec, montec, mephisto_montec_state, empty_init, "Hegener + Glaser", "Mephisto Monte Carlo", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1987, mondial2, 0, 0, mondial2, mondial2, mephisto_montec_state, empty_init, "Hegener + Glaser", "Mephisto Mondial II", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1989, smondial2, 0, 0, smondial2, smondial2, mephisto_montec_state, empty_init, "Hegener + Glaser", "Mephisto Super Mondial II", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1989, megaiv, 0, 0, megaiv, megaiv, mephisto_montec_state, empty_init, "Hegener + Glaser", "Mephisto Mega IV", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1990, monteciv, montec, 0, monteciv, montec, mephisto_montec_state, empty_init, "Hegener + Glaser", "Mephisto Monte Carlo IV LE", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
diff --git a/src/mame/drivers/mephisto_polgar.cpp b/src/mame/drivers/mephisto_polgar.cpp
index dbd7cede1aa..f270685a684 100644
--- a/src/mame/drivers/mephisto_polgar.cpp
+++ b/src/mame/drivers/mephisto_polgar.cpp
@@ -431,12 +431,12 @@ ROM_END
***************************************************************************/
/* YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY FULLNAME FLAGS */
-CONS( 1989, polgar, 0, 0, polgar, polgar, mephisto_polgar_state, empty_init, "Hegener & Glaser", "Mephisto Polgar", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1990, polgar10, polgar, 0, polgar10, polgar, mephisto_polgar_state, empty_init, "Hegener & Glaser", "Mephisto Polgar 10MHz", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1992, mrisc, 0, 0, mrisc, polgar, mephisto_risc_state, empty_init, "Hegener & Glaser", "Mephisto RISC 1MB", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1994, mrisc2, mrisc, 0, mrisc, polgar, mephisto_risc_state, empty_init, "Hegener & Glaser", "Mephisto RISC II", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1989, polgar, 0, 0, polgar, polgar, mephisto_polgar_state, empty_init, "Hegener + Glaser", "Mephisto Polgar", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1990, polgar10, polgar, 0, polgar10, polgar, mephisto_polgar_state, empty_init, "Hegener + Glaser", "Mephisto Polgar 10MHz", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1992, mrisc, 0, 0, mrisc, polgar, mephisto_risc_state, empty_init, "Hegener + Glaser", "Mephisto RISC 1MB", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1994, mrisc2, mrisc, 0, mrisc, polgar, mephisto_risc_state, empty_init, "Hegener + Glaser", "Mephisto RISC II", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
// not modular boards
-CONS( 1989, academy, 0, 0, academy, polgar, mephisto_academy_state, empty_init, "Hegener & Glaser", "Mephisto Academy", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1991, milano, 0, 0, milano, polgar, mephisto_milano_state, empty_init, "Hegener & Glaser", "Mephisto Milano", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
-CONS( 1993, nshort, milano, 0, milano, polgar, mephisto_milano_state, empty_init, "Hegener & Glaser", "Mephisto Nigel Short", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1989, academy, 0, 0, academy, polgar, mephisto_academy_state, empty_init, "Hegener + Glaser", "Mephisto Academy", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1991, milano, 0, 0, milano, polgar, mephisto_milano_state, empty_init, "Hegener + Glaser", "Mephisto Milano", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
+CONS( 1993, nshort, milano, 0, milano, polgar, mephisto_milano_state, empty_init, "Hegener + Glaser", "Mephisto Nigel Short", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
diff --git a/src/mame/drivers/mephistp.cpp b/src/mame/drivers/mephistp.cpp
index 25d927c0623..e671ba1195b 100644
--- a/src/mame/drivers/mephistp.cpp
+++ b/src/mame/drivers/mephistp.cpp
@@ -266,6 +266,6 @@ ROM_START(sport2k)
ROM_LOAD("s511_512.bin", 0x40000, 0x10000, CRC(ca9afa80) SHA1(6f219bdc1ad06e340b2930610897b70369a43684))
ROM_END
-GAME(1987, mephistp, 0, mephisto, mephisto, mephisto_pinball_state, empty_init, ROT0, "Stargame", "Mephisto (rev. 1.2)", MACHINE_IS_SKELETON_MECHANICAL)
-GAME(1987, mephistp1, mephistp, mephisto, mephisto, mephisto_pinball_state, empty_init, ROT0, "Stargame", "Mephisto (rev. 1.1)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1987, mephistp, 0, mephisto, mephisto, mephisto_pinball_state, empty_init, ROT0, "Stargame", "Mephisto (Stargame) (rev. 1.2)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1987, mephistp1, mephistp, mephisto, mephisto, mephisto_pinball_state, empty_init, ROT0, "Stargame", "Mephisto (Stargame) (rev. 1.1)", MACHINE_IS_SKELETON_MECHANICAL)
GAME(1988, sport2k, 0, sport2k, mephisto, mephisto_pinball_state, empty_init, ROT0, "Cirsa", "Sport 2000", MACHINE_IS_SKELETON_MECHANICAL)
diff --git a/src/mame/drivers/saitek_risc2500.cpp b/src/mame/drivers/saitek_risc2500.cpp
index 59a30a31718..53bb639e15d 100644
--- a/src/mame/drivers/saitek_risc2500.cpp
+++ b/src/mame/drivers/saitek_risc2500.cpp
@@ -6,7 +6,7 @@ Saitek RISC 2500, Mephisto Montreux
The chess engine is also compatible with Tasc's The ChessMachine software.
The hardware+software appears to have been subcontracted to Tasc. It has similarities
-with Tasc R30, and the Montreux repair manual schematics footnotes say TASC23C.
+with Tasc R30, PCB label and Montreux repair manual schematics footnotes say TASC23C.
notes:
- holding LEFT+RIGHT on boot load the QC TestMode
@@ -323,4 +323,4 @@ ROM_END
/* YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY FULLNAME FLAGS */
CONS( 1992, risc2500, 0, 0, risc2500, risc2500, risc2500_state, empty_init, "Saitek", "Kasparov RISC 2500", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK | MACHINE_IMPERFECT_SOUND )
-CONS( 1995, montreux, 0, 0, risc2500, risc2500, risc2500_state, empty_init, "Saitek", "Mephisto Montreux", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK | MACHINE_IMPERFECT_SOUND ) // after Saitek bought Hegener & Glaser
+CONS( 1995, montreux, 0, 0, risc2500, risc2500, risc2500_state, empty_init, "Saitek", "Mephisto Montreux", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK | MACHINE_IMPERFECT_SOUND ) // after Saitek bought Hegener + Glaser
diff --git a/src/mame/drivers/saitek_stratos.cpp b/src/mame/drivers/saitek_stratos.cpp
index f955f3e4174..3c7912a30f7 100644
--- a/src/mame/drivers/saitek_stratos.cpp
+++ b/src/mame/drivers/saitek_stratos.cpp
@@ -456,7 +456,7 @@ INPUT_PORTS_START( saitek_stratos )
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_F1) PORT_CHANGED_MEMBER(DEVICE_SELF, saitek_stratos_state, acl_button, nullptr) PORT_NAME("ACL")
PORT_START("FAKE")
- PORT_CONFNAME( 0x03, 0x00, "CPU Frequency" ) PORT_CHANGED_MEMBER(DEVICE_SELF, saitek_stratos_state, cpu_freq, nullptr) // factory set
+ PORT_CONFNAME( 0x03, 0x00, "CPU Frequency" ) PORT_CHANGED_MEMBER(DEVICE_SELF, saitek_stratos_state, switch_cpu_freq, nullptr) // factory set
PORT_CONFSETTING( 0x00, "5MHz" )
PORT_CONFSETTING( 0x01, "5.626MHz" )
PORT_CONFSETTING( 0x02, "5.67MHz" )
diff --git a/src/mame/includes/saitek_stratos.h b/src/mame/includes/saitek_stratos.h
index 37748a506d7..63ae6146ea7 100644
--- a/src/mame/includes/saitek_stratos.h
+++ b/src/mame/includes/saitek_stratos.h
@@ -32,7 +32,7 @@ public:
m_out_lcd(*this, "lcd%u.%u.%u", 0U, 0U, 0U)
{ }
- DECLARE_INPUT_CHANGED_MEMBER(cpu_freq) { set_cpu_freq(); }
+ DECLARE_INPUT_CHANGED_MEMBER(switch_cpu_freq) { set_cpu_freq(); }
DECLARE_INPUT_CHANGED_MEMBER(acl_button) { if (newval) power_off(); }
DECLARE_INPUT_CHANGED_MEMBER(go_button);
diff --git a/src/mame/layout/debutm.lay b/src/mame/layout/debutm.lay
index 83eb8ac3f77..4bbfd804300 100644
--- a/src/mame/layout/debutm.lay
+++ b/src/mame/layout/debutm.lay
@@ -8,7 +8,7 @@
<element name="lcd_bg"><rect><color red="0.54" green="0.57" blue="0.58" /></rect></element>
<element name="digit" defstate="0">
- <led7seg><color red="0.31" green="0.28" blue="0.29" /></led7seg>
+ <led7seg><color red="0.2" green="0.16" blue="0.16" /></led7seg>
</element>
<element name="led" defstate="0">
diff --git a/src/mame/layout/fidel_desdis.lay b/src/mame/layout/fidel_desdis.lay
index 93177c50ce8..ad19ceb437e 100644
--- a/src/mame/layout/fidel_desdis.lay
+++ b/src/mame/layout/fidel_desdis.lay
@@ -11,11 +11,11 @@
<element name="lcd_bg"><rect><color red="0.54" green="0.57" blue="0.58" /></rect></element>
<element name="digit" defstate="0">
- <led7seg><color red="0.31" green="0.28" blue="0.29" /></led7seg>
+ <led7seg><color red="0.2" green="0.16" blue="0.16" /></led7seg>
</element>
<element name="ldot" defstate="0">
- <rect state="1"><color red="0.31" green="0.28" blue="0.29" /></rect>
- <rect state="0"><color red="0.5098" green="0.5333" blue="0.5412" /></rect>
+ <rect state="1"><color red="0.2" green="0.16" blue="0.16" /></rect>
+ <rect state="0"><color red="0.49412" green="0.51765" blue="0.51765" /></rect>
</element>
<element name="led" defstate="0">
diff --git a/src/mame/layout/fidel_desdis_68kg.lay b/src/mame/layout/fidel_desdis_68kg.lay
index 742b0e7adb5..c5bc749033b 100644
--- a/src/mame/layout/fidel_desdis_68kg.lay
+++ b/src/mame/layout/fidel_desdis_68kg.lay
@@ -11,11 +11,11 @@
<element name="lcd_bg"><rect><color red="0.54" green="0.57" blue="0.58" /></rect></element>
<element name="digit" defstate="0">
- <led7seg><color red="0.31" green="0.28" blue="0.29" /></led7seg>
+ <led7seg><color red="0.2" green="0.16" blue="0.16" /></led7seg>
</element>
<element name="ldot" defstate="0">
- <rect state="1"><color red="0.31" green="0.28" blue="0.29" /></rect>
- <rect state="0"><color red="0.5098" green="0.5333" blue="0.5412" /></rect>
+ <rect state="1"><color red="0.2" green="0.16" blue="0.16" /></rect>
+ <rect state="0"><color red="0.49412" green="0.51765" blue="0.51765" /></rect>
</element>
<element name="led" defstate="0">
diff --git a/src/mame/layout/fidel_desdis_68kr.lay b/src/mame/layout/fidel_desdis_68kr.lay
index 80244176113..8bc89a2ca40 100644
--- a/src/mame/layout/fidel_desdis_68kr.lay
+++ b/src/mame/layout/fidel_desdis_68kr.lay
@@ -10,11 +10,11 @@
<element name="lcd_bg"><rect><color red="0.54" green="0.57" blue="0.58" /></rect></element>
<element name="digit" defstate="0">
- <led7seg><color red="0.31" green="0.28" blue="0.29" /></led7seg>
+ <led7seg><color red="0.2" green="0.16" blue="0.16" /></led7seg>
</element>
<element name="ldot" defstate="0">
- <rect state="1"><color red="0.31" green="0.28" blue="0.29" /></rect>
- <rect state="0"><color red="0.5098" green="0.5333" blue="0.5412" /></rect>
+ <rect state="1"><color red="0.2" green="0.16" blue="0.16" /></rect>
+ <rect state="0"><color red="0.49412" green="0.51765" blue="0.51765" /></rect>
</element>
<element name="led" defstate="0">
diff --git a/src/mame/layout/horseran.lay b/src/mame/layout/horseran.lay
index 49c4b39dad9..0e7b8edfcee 100644
--- a/src/mame/layout/horseran.lay
+++ b/src/mame/layout/horseran.lay
@@ -7,129 +7,129 @@
<element name="text_places" defstate="0">
<rect><color red="0.54" green="0.57" blue="0.58" /></rect>
- <text state="0" string="PLACES" align="1"><color red="0.5098" green="0.5333" blue="0.5412" /></text>
- <text state="1" string="PLACES" align="1"><color red="0.31" green="0.28" blue="0.29" /></text>
+ <text state="0" string="PLACES" align="1"><color red="0.49412" green="0.51765" blue="0.51765" /></text>
+ <text state="1" string="PLACES" align="1"><color red="0.2" green="0.16" blue="0.16" /></text>
</element>
<element name="text_shows" defstate="0">
<rect><color red="0.54" green="0.57" blue="0.58" /></rect>
- <text state="0" string="SHOWS" align="1"><color red="0.5098" green="0.5333" blue="0.5412" /></text>
- <text state="1" string="SHOWS" align="1"><color red="0.31" green="0.28" blue="0.29" /></text>
+ <text state="0" string="SHOWS" align="1"><color red="0.49412" green="0.51765" blue="0.51765" /></text>
+ <text state="1" string="SHOWS" align="1"><color red="0.2" green="0.16" blue="0.16" /></text>
</element>
<element name="text_earnings" defstate="0">
<rect><color red="0.54" green="0.57" blue="0.58" /></rect>
- <text state="0" string="EARNINGS" align="1"><color red="0.5098" green="0.5333" blue="0.5412" /></text>
- <text state="1" string="EARNINGS" align="1"><color red="0.31" green="0.28" blue="0.29" /></text>
+ <text state="0" string="EARNINGS" align="1"><color red="0.49412" green="0.51765" blue="0.51765" /></text>
+ <text state="1" string="EARNINGS" align="1"><color red="0.2" green="0.16" blue="0.16" /></text>
</element>
<element name="text_oflast5" defstate="0">
<rect><color red="0.54" green="0.57" blue="0.58" /></rect>
- <text state="0" string="OF LAST 5 RACES" align="1"><color red="0.5098" green="0.5333" blue="0.5412" /></text>
- <text state="1" string="OF LAST 5 RACES" align="1"><color red="0.31" green="0.28" blue="0.29" /></text>
+ <text state="0" string="OF LAST 5 RACES" align="1"><color red="0.49412" green="0.51765" blue="0.51765" /></text>
+ <text state="1" string="OF LAST 5 RACES" align="1"><color red="0.2" green="0.16" blue="0.16" /></text>
</element>
<element name="text_rating" defstate="0">
<rect><color red="0.54" green="0.57" blue="0.58" /></rect>
- <text state="0" string="RATING" align="1"><color red="0.5098" green="0.5333" blue="0.5412" /></text>
- <text state="1" string="RATING" align="1"><color red="0.31" green="0.28" blue="0.29" /></text>
+ <text state="0" string="RATING" align="1"><color red="0.49412" green="0.51765" blue="0.51765" /></text>
+ <text state="1" string="RATING" align="1"><color red="0.2" green="0.16" blue="0.16" /></text>
</element>
<element name="text_finpos" defstate="0">
<rect><color red="0.54" green="0.57" blue="0.58" /></rect>
- <text state="0" string="FINISH POSITION" align="1"><color red="0.5098" green="0.5333" blue="0.5412" /></text>
- <text state="1" string="FINISH POSITION" align="1"><color red="0.31" green="0.28" blue="0.29" /></text>
+ <text state="0" string="FINISH POSITION" align="1"><color red="0.49412" green="0.51765" blue="0.51765" /></text>
+ <text state="1" string="FINISH POSITION" align="1"><color red="0.2" green="0.16" blue="0.16" /></text>
</element>
<element name="text_finish" defstate="0">
<rect><color red="0.54" green="0.57" blue="0.58" /></rect>
- <text state="0" string="FINISH" align="1"><color red="0.5098" green="0.5333" blue="0.5412" /></text>
- <text state="1" string="FINISH" align="1"><color red="0.31" green="0.28" blue="0.29" /></text>
+ <text state="0" string="FINISH" align="1"><color red="0.49412" green="0.51765" blue="0.51765" /></text>
+ <text state="1" string="FINISH" align="1"><color red="0.2" green="0.16" blue="0.16" /></text>
</element>
<element name="text_3call" defstate="0">
<rect><color red="0.54" green="0.57" blue="0.58" /></rect>
- <text state="0" string="3RD CALL" align="1"><color red="0.5098" green="0.5333" blue="0.5412" /></text>
- <text state="1" string="3RD CALL" align="1"><color red="0.31" green="0.28" blue="0.29" /></text>
+ <text state="0" string="3RD CALL" align="1"><color red="0.49412" green="0.51765" blue="0.51765" /></text>
+ <text state="1" string="3RD CALL" align="1"><color red="0.2" green="0.16" blue="0.16" /></text>
</element>
<element name="text_curyear" defstate="0">
<rect><color red="0.54" green="0.57" blue="0.58" /></rect>
- <text state="0" string="CURRENT YEAR" align="1"><color red="0.5098" green="0.5333" blue="0.5412" /></text>
- <text state="1" string="CURRENT YEAR" align="1"><color red="0.31" green="0.28" blue="0.29" /></text>
+ <text state="0" string="CURRENT YEAR" align="1"><color red="0.49412" green="0.51765" blue="0.51765" /></text>
+ <text state="1" string="CURRENT YEAR" align="1"><color red="0.2" green="0.16" blue="0.16" /></text>
</element>
<element name="text_pastyear" defstate="0">
<rect><color red="0.54" green="0.57" blue="0.58" /></rect>
- <text state="0" string="PAST YEAR" align="1"><color red="0.5098" green="0.5333" blue="0.5412" /></text>
- <text state="1" string="PAST YEAR" align="1"><color red="0.31" green="0.28" blue="0.29" /></text>
+ <text state="0" string="PAST YEAR" align="1"><color red="0.49412" green="0.51765" blue="0.51765" /></text>
+ <text state="1" string="PAST YEAR" align="1"><color red="0.2" green="0.16" blue="0.16" /></text>
</element>
<element name="text_rsl" defstate="0">
<rect><color red="0.54" green="0.57" blue="0.58" /></rect>
- <text state="0" string="RACES SINCE LAYOFF" align="1"><color red="0.5098" green="0.5333" blue="0.5412" /></text>
- <text state="1" string="RACES SINCE LAYOFF" align="1"><color red="0.31" green="0.28" blue="0.29" /></text>
+ <text state="0" string="RACES SINCE LAYOFF" align="1"><color red="0.49412" green="0.51765" blue="0.51765" /></text>
+ <text state="1" string="RACES SINCE LAYOFF" align="1"><color red="0.2" green="0.16" blue="0.16" /></text>
</element>
<element name="text_distance" defstate="0">
<rect><color red="0.54" green="0.57" blue="0.58" /></rect>
- <text state="0" string="DISTANCE" align="2"><color red="0.5098" green="0.5333" blue="0.5412" /></text>
- <text state="1" string="DISTANCE" align="2"><color red="0.31" green="0.28" blue="0.29" /></text>
+ <text state="0" string="DISTANCE" align="2"><color red="0.49412" green="0.51765" blue="0.51765" /></text>
+ <text state="1" string="DISTANCE" align="2"><color red="0.2" green="0.16" blue="0.16" /></text>
</element>
<element name="text_postpos" defstate="0">
<rect><color red="0.54" green="0.57" blue="0.58" /></rect>
- <text state="0" string="POST POSITION" align="1"><color red="0.5098" green="0.5333" blue="0.5412" /></text>
- <text state="1" string="POST POSITION" align="1"><color red="0.31" green="0.28" blue="0.29" /></text>
+ <text state="0" string="POST POSITION" align="1"><color red="0.49412" green="0.51765" blue="0.51765" /></text>
+ <text state="1" string="POST POSITION" align="1"><color red="0.2" green="0.16" blue="0.16" /></text>
</element>
<element name="text_3rb" defstate="0">
<rect><color red="0.54" green="0.57" blue="0.58" /></rect>
- <text state="0" string="3RD RACE BACK" align="1"><color red="0.5098" green="0.5333" blue="0.5412" /></text>
- <text state="1" string="3RD RACE BACK" align="1"><color red="0.31" green="0.28" blue="0.29" /></text>
+ <text state="0" string="3RD RACE BACK" align="1"><color red="0.49412" green="0.51765" blue="0.51765" /></text>
+ <text state="1" string="3RD RACE BACK" align="1"><color red="0.2" green="0.16" blue="0.16" /></text>
</element>
<element name="text_2rb" defstate="0">
<rect><color red="0.54" green="0.57" blue="0.58" /></rect>
- <text state="0" string="2ND RACE BACK" align="1"><color red="0.5098" green="0.5333" blue="0.5412" /></text>
- <text state="1" string="2ND RACE BACK" align="1"><color red="0.31" green="0.28" blue="0.29" /></text>
+ <text state="0" string="2ND RACE BACK" align="1"><color red="0.49412" green="0.51765" blue="0.51765" /></text>
+ <text state="1" string="2ND RACE BACK" align="1"><color red="0.2" green="0.16" blue="0.16" /></text>
</element>
<element name="text_lastrace" defstate="0">
<rect><color red="0.54" green="0.57" blue="0.58" /></rect>
- <text state="0" string="LAST RACE" align="1"><color red="0.5098" green="0.5333" blue="0.5412" /></text>
- <text state="1" string="LAST RACE" align="1"><color red="0.31" green="0.28" blue="0.29" /></text>
+ <text state="0" string="LAST RACE" align="1"><color red="0.49412" green="0.51765" blue="0.51765" /></text>
+ <text state="1" string="LAST RACE" align="1"><color red="0.2" green="0.16" blue="0.16" /></text>
</element>
<element name="text_purse" defstate="0">
<rect><color red="0.54" green="0.57" blue="0.58" /></rect>
- <text state="0" string="PURSE" align="1"><color red="0.5098" green="0.5333" blue="0.5412" /></text>
- <text state="1" string="PURSE" align="1"><color red="0.31" green="0.28" blue="0.29" /></text>
+ <text state="0" string="PURSE" align="1"><color red="0.49412" green="0.51765" blue="0.51765" /></text>
+ <text state="1" string="PURSE" align="1"><color red="0.2" green="0.16" blue="0.16" /></text>
</element>
<element name="text_lback" defstate="0">
<rect><color red="0.54" green="0.57" blue="0.58" /></rect>
- <text state="0" string="LENGTHS BACK" align="1"><color red="0.5098" green="0.5333" blue="0.5412" /></text>
- <text state="1" string="LENGTHS BACK" align="1"><color red="0.31" green="0.28" blue="0.29" /></text>
+ <text state="0" string="LENGTHS BACK" align="1"><color red="0.49412" green="0.51765" blue="0.51765" /></text>
+ <text state="1" string="LENGTHS BACK" align="1"><color red="0.2" green="0.16" blue="0.16" /></text>
</element>
<element name="text_1call" defstate="0">
<rect><color red="0.54" green="0.57" blue="0.58" /></rect>
- <text state="0" string="1ST CALL" align="1"><color red="0.5098" green="0.5333" blue="0.5412" /></text>
- <text state="1" string="1ST CALL" align="1"><color red="0.31" green="0.28" blue="0.29" /></text>
+ <text state="0" string="1ST CALL" align="1"><color red="0.49412" green="0.51765" blue="0.51765" /></text>
+ <text state="1" string="1ST CALL" align="1"><color red="0.2" green="0.16" blue="0.16" /></text>
</element>
<element name="text_2call" defstate="0">
<rect><color red="0.54" green="0.57" blue="0.58" /></rect>
- <text state="0" string="2ND CALL" align="1"><color red="0.5098" green="0.5333" blue="0.5412" /></text>
- <text state="1" string="2ND CALL" align="1"><color red="0.31" green="0.28" blue="0.29" /></text>
+ <text state="0" string="2ND CALL" align="1"><color red="0.49412" green="0.51765" blue="0.51765" /></text>
+ <text state="1" string="2ND CALL" align="1"><color red="0.2" green="0.16" blue="0.16" /></text>
</element>
<element name="text_2bsr" defstate="0">
<rect><color red="0.54" green="0.57" blue="0.58" /></rect>
- <text state="0" string="2 BEST SPEED RATINGS" align="0"><color red="0.5098" green="0.5333" blue="0.5412" /></text>
- <text state="1" string="2 BEST SPEED RATINGS" align="0"><color red="0.31" green="0.28" blue="0.29" /></text>
+ <text state="0" string="2 BEST SPEED RATINGS" align="0"><color red="0.49412" green="0.51765" blue="0.51765" /></text>
+ <text state="1" string="2 BEST SPEED RATINGS" align="0"><color red="0.2" green="0.16" blue="0.16" /></text>
</element>
<element name="text_daysaway" defstate="0">
<rect><color red="0.54" green="0.57" blue="0.58" /></rect>
- <text state="0" string="DAYS AWAY" align="1"><color red="0.5098" green="0.5333" blue="0.5412" /></text>
- <text state="1" string="DAYS AWAY" align="1"><color red="0.31" green="0.28" blue="0.29" /></text>
+ <text state="0" string="DAYS AWAY" align="1"><color red="0.49412" green="0.51765" blue="0.51765" /></text>
+ <text state="1" string="DAYS AWAY" align="1"><color red="0.2" green="0.16" blue="0.16" /></text>
</element>
<element name="text_wins" defstate="0">
<rect><color red="0.54" green="0.57" blue="0.58" /></rect>
- <text state="0" string="WINS" align="1"><color red="0.5098" green="0.5333" blue="0.5412" /></text>
- <text state="1" string="WINS" align="1"><color red="0.31" green="0.28" blue="0.29" /></text>
+ <text state="0" string="WINS" align="1"><color red="0.49412" green="0.51765" blue="0.51765" /></text>
+ <text state="1" string="WINS" align="1"><color red="0.2" green="0.16" blue="0.16" /></text>
</element>
<element name="text_races" defstate="0">
<rect><color red="0.54" green="0.57" blue="0.58" /></rect>
- <text state="0" string="RACES" align="1"><color red="0.5098" green="0.5333" blue="0.5412" /></text>
- <text state="1" string="RACES" align="1"><color red="0.31" green="0.28" blue="0.29" /></text>
+ <text state="0" string="RACES" align="1"><color red="0.49412" green="0.51765" blue="0.51765" /></text>
+ <text state="1" string="RACES" align="1"><color red="0.2" green="0.16" blue="0.16" /></text>
</element>
<element name="digit" defstate="0">
- <led7seg><color red="0.31" green="0.28" blue="0.29" /></led7seg>
+ <led7seg><color red="0.2" green="0.16" blue="0.16" /></led7seg>
</element>
diff --git a/src/mame/layout/k28m2.lay b/src/mame/layout/k28m2.lay
index a2ec11abf42..e3eccf8a625 100644
--- a/src/mame/layout/k28m2.lay
+++ b/src/mame/layout/k28m2.lay
@@ -6,7 +6,7 @@
<element name="lcd_bg"><rect><color red="0.54" green="0.57" blue="0.58" /></rect></element>
<element name="digit" defstate="0">
- <led7seg><color red="0.31" green="0.28" blue="0.29" /></led7seg>
+ <led7seg><color red="0.2" green="0.16" blue="0.16" /></led7seg>
</element>
diff --git a/src/mame/layout/mephisto_1.lay b/src/mame/layout/mephisto_1.lay
new file mode 100644
index 00000000000..d4c5ef7feaf
--- /dev/null
+++ b/src/mame/layout/mephisto_1.lay
@@ -0,0 +1,199 @@
+<?xml version="1.0"?>
+<mamelayout version="2">
+
+<!-- NOTE: no chesspieces simulation here, H+G Mephisto/Mephisto II didn't have a built-in chessboard -->
+
+<!-- define elements -->
+
+<!-- display -->
+
+ <element name="lcd_bg"><rect><color red="0.54" green="0.57" blue="0.58" /></rect></element>
+
+ <element name="digit" defstate="0">
+ <led7seg><color red="0.2" green="0.16" blue="0.16" /></led7seg>
+ </element>
+ <element name="ldot" defstate="0">
+ <rect state="1"><color red="0.2" green="0.16" blue="0.16" /></rect>
+ <rect state="0"><color red="0.49412" green="0.51765" blue="0.51765" /></rect>
+ </element>
+
+ <group name="display">
+ <bounds x="31" y="90.3" width="22.5" height="7.4" />
+
+ <bezel element="lcd_bg"><bounds x="31" y="90.3" width="22.5" height="7.4" /></bezel>
+
+ <bezel name="digit3" element="digit"><bounds x="32" y="91" width="4" height="6" /></bezel>
+ <bezel name="digit2" element="digit"><bounds x="37.5" y="91" width="4" height="6" /></bezel>
+ <bezel name="digit1" element="digit"><bounds x="43" y="91" width="4" height="6" /></bezel>
+ <bezel name="digit0" element="digit"><bounds x="48.5" y="91" width="4" height="6" /></bezel>
+
+ <bezel name="3.7" element="ldot"><bounds x="36.25" y="96.42" width="0.6" height="0.6" /></bezel>
+ <bezel name="2.7" element="ldot"><bounds x="41.75" y="96.42" width="0.6" height="0.6" /></bezel>
+ <bezel name="1.7" element="ldot"><bounds x="47.25" y="96.42" width="0.6" height="0.6" /></bezel>
+
+ <bezel name="0.7" element="ldot"><bounds x="42.16" y="92.75" width="0.6" height="0.6" /></bezel>
+ <bezel name="0.7" element="ldot"><bounds x="41.94" y="94.55" width="0.6" height="0.6" /></bezel>
+ </group>
+
+
+<!-- buttons -->
+
+ <element name="hlb" defstate="0">
+ <rect state="1"><color red="1" green="1" blue="1" /></rect>
+ </element>
+
+ <element name="text_res"><text string="RES"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_cl"><text string="CL"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_list"><text string="LIST"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_lev"><text string="LEV"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_rev"><text string="REV"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_sta"><text string="STA"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_ent"><text string="ENT"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_sw"><text string="SW"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_ws"><text string="WS"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+
+ <element name="text_ba"><text string="A" align="1"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_bb"><text string="B" align="1"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_bc"><text string="C" align="1"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_bd"><text string="D" align="1"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_be"><text string="E" align="1"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_bf"><text string="F" align="1"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_bg"><text string="G" align="1"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_bh"><text string="H" align="1"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+
+ <element name="text_b0"><text string="0" align="2"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_b1"><text string="1" align="2"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_b2"><text string="2" align="2"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_b3"><text string="3" align="2"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_b4"><text string="4" align="2"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_b5"><text string="5" align="2"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_b6"><text string="6" align="2"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_b7"><text string="7" align="2"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_b8"><text string="8" align="2"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_b9"><text string="9" align="2"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+
+ <element name="text_p1"><image file="chess/wk.png"><color alpha="0.9" /></image></element>
+ <element name="text_p2"><image file="chess/wq.png"><color alpha="0.9" /></image></element>
+ <element name="text_p3"><image file="chess/wr.png"><color alpha="0.9" /></image></element>
+ <element name="text_p4"><image file="chess/wb.png"><color alpha="0.9" /></image></element>
+ <element name="text_p5"><image file="chess/wn.png"><color alpha="0.9" /></image></element>
+ <element name="text_p6"><image file="chess/wp.png"><color alpha="0.9" /></image></element>
+
+ <group name="buttons">
+ <bounds x="0" y="0" width="18.7" height="23.7" />
+
+ <bezel element="blackb"><bounds x="0" y="5" width="3.7" height="3.7" /></bezel>
+ <bezel element="blackb"><bounds x="5" y="5" width="3.7" height="3.7" /></bezel>
+ <bezel element="blackb"><bounds x="10" y="5" width="3.7" height="3.7" /></bezel>
+ <bezel element="blackb"><bounds x="15" y="5" width="3.7" height="3.7" /></bezel>
+ <bezel element="blackb"><bounds x="15" y="0" width="3.7" height="3.7" /></bezel>
+
+ <bezel element="blackb"><bounds x="0" y="10" width="3.7" height="3.7" /></bezel>
+ <bezel element="blackb"><bounds x="5" y="10" width="3.7" height="3.7" /></bezel>
+ <bezel element="blackb"><bounds x="10" y="10" width="3.7" height="3.7" /></bezel>
+ <bezel element="blackb"><bounds x="15" y="10" width="3.7" height="3.7" /></bezel>
+
+ <bezel element="blackb"><bounds x="0" y="15" width="3.7" height="3.7" /></bezel>
+ <bezel element="blackb"><bounds x="5" y="15" width="3.7" height="3.7" /></bezel>
+ <bezel element="blackb"><bounds x="10" y="15" width="3.7" height="3.7" /></bezel>
+ <bezel element="blackb"><bounds x="15" y="15" width="3.7" height="3.7" /></bezel>
+
+ <bezel element="blackb"><bounds x="0" y="20" width="3.7" height="3.7" /></bezel>
+ <bezel element="blackb"><bounds x="5" y="20" width="3.7" height="3.7" /></bezel>
+ <bezel element="blackb"><bounds x="10" y="20" width="3.7" height="3.7" /></bezel>
+ <bezel element="blackb"><bounds x="15" y="20" width="3.7" height="3.7" /></bezel>
+
+ <bezel element="text_cl"><bounds x="0" y="5.9" width="3.7" height="1.8" /></bezel>
+ <bezel element="text_list"><bounds x="5" y="5.9" width="3.7" height="1.8" /></bezel>
+ <bezel element="text_lev"><bounds x="10" y="5.9" width="3.7" height="1.8" /></bezel>
+ <bezel element="text_res"><bounds x="15" y="0.9" width="3.7" height="1.8" /></bezel>
+ <bezel element="text_rev"><bounds x="15" y="5.9" width="3.7" height="1.8" /></bezel>
+ <bezel element="text_sta"><bounds x="15" y="10.9" width="3.7" height="1.8" /></bezel>
+ <bezel element="text_ent"><bounds x="15" y="15.9" width="3.7" height="1.8" /></bezel>
+
+ <bezel element="text_sw"><bounds x="10" y="20.1" width="3.7" height="1.8" /></bezel>
+ <bezel element="text_ws"><bounds x="15" y="20.1" width="3.7" height="1.8" /></bezel>
+
+ <bezel element="text_ba"><bounds x="0.5" y="10.1" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_bb"><bounds x="5.5" y="10.1" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_bc"><bounds x="10.5" y="10.1" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_bd"><bounds x="0.5" y="15.1" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_be"><bounds x="5.5" y="15.1" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_bf"><bounds x="10.5" y="15.1" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_bg"><bounds x="0.5" y="20.1" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_bh"><bounds x="5.5" y="20.1" width="1.3" height="1.8" /></bezel>
+
+ <bezel element="text_b1"><bounds x="1.9" y="11.8" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_b2"><bounds x="6.9" y="11.8" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_b3"><bounds x="11.9" y="11.8" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_b4"><bounds x="1.9" y="16.8" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_b5"><bounds x="6.9" y="16.8" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_b6"><bounds x="11.9" y="16.8" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_b7"><bounds x="1.9" y="21.8" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_b8"><bounds x="6.9" y="21.8" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_b9"><bounds x="11.9" y="21.8" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_b0"><bounds x="16.9" y="21.8" width="1.3" height="1.8" /></bezel>
+
+ <bezel element="text_p6"><bounds x="6.8" y="10.05" width="1.8" height="1.8" /></bezel>
+ <bezel element="text_p5"><bounds x="11.8" y="10.05" width="1.8" height="1.8" /></bezel>
+ <bezel element="text_p4"><bounds x="1.8" y="15.05" width="1.8" height="1.8" /></bezel>
+ <bezel element="text_p3"><bounds x="6.8" y="15.05" width="1.8" height="1.8" /></bezel>
+ <bezel element="text_p2"><bounds x="11.8" y="15.05" width="1.8" height="1.8" /></bezel>
+ <bezel element="text_p1"><bounds x="1.8" y="20.05" width="1.8" height="1.8" /></bezel>
+
+ <bezel element="hlb" inputtag="IN.0" inputmask="0x01"><bounds x="0" y="5" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+ <bezel element="hlb" inputtag="IN.2" inputmask="0x01"><bounds x="5" y="5" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+ <bezel element="hlb" inputtag="IN.1" inputmask="0x04"><bounds x="10" y="5" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+ <bezel element="hlb" inputtag="IN.3" inputmask="0x04"><bounds x="15" y="5" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+ <bezel element="hlb" inputtag="RESET" inputmask="0x01"><bounds x="15" y="0" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+
+ <bezel element="hlb" inputtag="IN.0" inputmask="0x02"><bounds x="0" y="10" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+ <bezel element="hlb" inputtag="IN.0" inputmask="0x08"><bounds x="5" y="10" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+ <bezel element="hlb" inputtag="IN.1" inputmask="0x02"><bounds x="10" y="10" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+ <bezel element="hlb" inputtag="IN.1" inputmask="0x01"><bounds x="15" y="10" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+
+ <bezel element="hlb" inputtag="IN.1" inputmask="0x08"><bounds x="0" y="15" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+ <bezel element="hlb" inputtag="IN.2" inputmask="0x02"><bounds x="5" y="15" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+ <bezel element="hlb" inputtag="IN.2" inputmask="0x08"><bounds x="10" y="15" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+ <bezel element="hlb" inputtag="IN.0" inputmask="0x04"><bounds x="15" y="15" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+
+ <bezel element="hlb" inputtag="IN.3" inputmask="0x02"><bounds x="0" y="20" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+ <bezel element="hlb" inputtag="IN.3" inputmask="0x08"><bounds x="5" y="20" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+ <bezel element="hlb" inputtag="IN.2" inputmask="0x04"><bounds x="10" y="20" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+ <bezel element="hlb" inputtag="IN.3" inputmask="0x01"><bounds x="15" y="20" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+ </group>
+
+
+<!-- brikett -->
+
+ <element name="blackb"><rect><color red="0" green="0" blue="0" /></rect></element>
+ <element name="gray1"><rect><color red="0.75" green="0.75" blue="0.75" /></rect></element>
+ <element name="gray2"><rect><color red="0.11" green="0.105" blue="0.10" /></rect></element>
+ <element name="gray2d"><disk><color red="0.11" green="0.105" blue="0.10" /></disk></element>
+ <element name="gray3"><rect><color red="0.08" green="0.075" blue="0.075" /></rect></element>
+
+ <group name="brikett">
+ <bounds x="16.5" y="6" width="58.5" height="32" />
+
+ <bezel element="gray2"><bounds x="17.5" y="7" width="56.5" height="30" /></bezel>
+ <bezel element="gray3"><bounds x="47.5" y="10" width="0.5" height="24" /></bezel>
+ <bezel element="blackb"><bounds x="16.5" y="6" width="6" height="6" /></bezel>
+ <bezel element="gray2d"><bounds x="17.5" y="7" width="10" height="10" /></bezel>
+ <bezel element="blackb"><bounds x="69" y="6" width="6" height="6" /></bezel>
+ <bezel element="gray2d"><bounds x="64" y="7" width="10" height="10" /></bezel>
+ <bezel element="blackb"><bounds x="16.5" y="32" width="6" height="6" /></bezel>
+ <bezel element="gray2d"><bounds x="17.5" y="27" width="10" height="10" /></bezel>
+ <bezel element="blackb"><bounds x="69" y="32" width="6" height="6" /></bezel>
+ <bezel element="gray2d"><bounds x="64" y="27" width="10" height="10" /></bezel>
+
+ <group ref="display"><bounds x="22.5" y="15" width="20" height="6.85" /></group>
+ <group ref="buttons"><bounds x="50" y="10" width="19" height="24" /></group>
+ </group>
+
+
+<!-- build screen -->
+
+ <view name="Internal Layout">
+ <group ref="brikett"><bounds x="0" y="0" width="58.5" height="32" /></group>
+ </view>
+</mamelayout>
diff --git a/src/mame/layout/mephisto_3.lay b/src/mame/layout/mephisto_3.lay
new file mode 100644
index 00000000000..4f99ea3da73
--- /dev/null
+++ b/src/mame/layout/mephisto_3.lay
@@ -0,0 +1,607 @@
+<?xml version="1.0"?>
+<mamelayout version="2">
+
+<!-- define elements -->
+
+ <element name="led" defstate="0">
+ <disk state="1"><color red="1.0" green="0.1" blue="0.15" /></disk>
+ <disk state="0"><color red="0.1" green="0.01" blue="0.015" /></disk>
+ </element>
+ <element name="ledg" defstate="0">
+ <disk state="1"><color red="0.1" green="1.0" blue="0.15" /></disk>
+ <disk state="0"><color red="0.01" green="0.1" blue="0.015" /></disk>
+ </element>
+
+ <element name="text_1">
+ <rect><color red="0.56" green="0.33" blue="0.12" /></rect>
+ <text string="1"><color red="0.87" green="0.87" blue="0.84" /></text>
+ </element>
+ <element name="text_2">
+ <rect><color red="0.56" green="0.33" blue="0.12" /></rect>
+ <text string="2"><color red="0.87" green="0.87" blue="0.84" /></text>
+ </element>
+ <element name="text_3">
+ <rect><color red="0.56" green="0.33" blue="0.12" /></rect>
+ <text string="3"><color red="0.87" green="0.87" blue="0.84" /></text>
+ </element>
+ <element name="text_4">
+ <rect><color red="0.56" green="0.33" blue="0.12" /></rect>
+ <text string="4"><color red="0.87" green="0.87" blue="0.84" /></text>
+ </element>
+ <element name="text_5">
+ <rect><color red="0.56" green="0.33" blue="0.12" /></rect>
+ <text string="5"><color red="0.87" green="0.87" blue="0.84" /></text>
+ </element>
+ <element name="text_6">
+ <rect><color red="0.56" green="0.33" blue="0.12" /></rect>
+ <text string="6"><color red="0.87" green="0.87" blue="0.84" /></text>
+ </element>
+ <element name="text_7">
+ <rect><color red="0.56" green="0.33" blue="0.12" /></rect>
+ <text string="7"><color red="0.87" green="0.87" blue="0.84" /></text>
+ </element>
+ <element name="text_8">
+ <rect><color red="0.56" green="0.33" blue="0.12" /></rect>
+ <text string="8"><color red="0.87" green="0.87" blue="0.84" /></text>
+ </element>
+
+ <element name="text_a">
+ <rect><color red="0.56" green="0.33" blue="0.12" /></rect>
+ <text string="A"><color red="0.87" green="0.87" blue="0.84" /></text>
+ </element>
+ <element name="text_b">
+ <rect><color red="0.56" green="0.33" blue="0.12" /></rect>
+ <text string="B"><color red="0.87" green="0.87" blue="0.84" /></text>
+ </element>
+ <element name="text_c">
+ <rect><color red="0.56" green="0.33" blue="0.12" /></rect>
+ <text string="C"><color red="0.87" green="0.87" blue="0.84" /></text>
+ </element>
+ <element name="text_d">
+ <rect><color red="0.56" green="0.33" blue="0.12" /></rect>
+ <text string="D"><color red="0.87" green="0.87" blue="0.84" /></text>
+ </element>
+ <element name="text_e">
+ <rect><color red="0.56" green="0.33" blue="0.12" /></rect>
+ <text string="E"><color red="0.87" green="0.87" blue="0.84" /></text>
+ </element>
+ <element name="text_f">
+ <rect><color red="0.56" green="0.33" blue="0.12" /></rect>
+ <text string="F"><color red="0.87" green="0.87" blue="0.84" /></text>
+ </element>
+ <element name="text_g">
+ <rect><color red="0.56" green="0.33" blue="0.12" /></rect>
+ <text string="G"><color red="0.87" green="0.87" blue="0.84" /></text>
+ </element>
+ <element name="text_h">
+ <rect><color red="0.56" green="0.33" blue="0.12" /></rect>
+ <text string="H"><color red="0.87" green="0.87" blue="0.84" /></text>
+ </element>
+
+
+<!-- sb board -->
+
+ <element name="cblack"><rect><color red="0.56" green="0.33" blue="0.12" /></rect></element>
+ <element name="cwhite"><rect><color red="0.84" green="0.75" blue="0.50" /></rect></element>
+
+ <element name="hlbb" defstate="0">
+ <text string=" "><bounds x="0" y="0" width="1" height="1" /></text>
+ <disk state="1">
+ <bounds x="0.12" y="0.12" width="0.76" height="0.76" />
+ <color red="0" green="0" blue="0" />
+ </disk>
+ </element>
+
+ <element name="piece" defstate="0">
+ <image file="chess/wp.png" state="1"/>
+ <image file="chess/wn.png" state="2"/>
+ <image file="chess/wb.png" state="3"/>
+ <image file="chess/wr.png" state="4"/>
+ <image file="chess/wq.png" state="5"/>
+ <image file="chess/wk.png" state="6"/>
+
+ <image file="chess/bp.png" state="7"/>
+ <image file="chess/bn.png" state="8"/>
+ <image file="chess/bb.png" state="9"/>
+ <image file="chess/br.png" state="10"/>
+ <image file="chess/bq.png" state="11"/>
+ <image file="chess/bk.png" state="12"/>
+
+ <!-- selected pieces -->
+ <image file="chess/wp.png" state="13"><color alpha="0.5" /></image>
+ <image file="chess/wn.png" state="14"><color alpha="0.5" /></image>
+ <image file="chess/wb.png" state="15"><color alpha="0.5" /></image>
+ <image file="chess/wr.png" state="16"><color alpha="0.5" /></image>
+ <image file="chess/wq.png" state="17"><color alpha="0.5" /></image>
+ <image file="chess/wk.png" state="18"><color alpha="0.5" /></image>
+
+ <image file="chess/bp.png" state="19"><color alpha="0.5" /></image>
+ <image file="chess/bn.png" state="20"><color alpha="0.5" /></image>
+ <image file="chess/bb.png" state="21"><color alpha="0.5" /></image>
+ <image file="chess/br.png" state="22"><color alpha="0.5" /></image>
+ <image file="chess/bq.png" state="23"><color alpha="0.5" /></image>
+ <image file="chess/bk.png" state="24"><color alpha="0.5" /></image>
+ </element>
+
+ <group name="sb_board">
+ <bounds x="0" y="0" width="80" height="80" />
+
+ <!-- squares (avoid seams) -->
+ <bezel element="cwhite"><bounds x="0" y="0" width="11" height="11" /></bezel>
+ <bezel element="cblack"><bounds x="10" y="0" width="11" height="11" /></bezel>
+ <bezel element="cwhite"><bounds x="20" y="0" width="11" height="11" /></bezel>
+ <bezel element="cblack"><bounds x="30" y="0" width="11" height="11" /></bezel>
+ <bezel element="cwhite"><bounds x="40" y="0" width="11" height="11" /></bezel>
+ <bezel element="cblack"><bounds x="50" y="0" width="11" height="11" /></bezel>
+ <bezel element="cwhite"><bounds x="60" y="0" width="11" height="11" /></bezel>
+ <bezel element="cblack"><bounds x="70" y="0" width="10" height="11" /></bezel>
+
+ <bezel element="cblack"><bounds x="0" y="10" width="11" height="11" /></bezel>
+ <bezel element="cwhite"><bounds x="10" y="10" width="11" height="11" /></bezel>
+ <bezel element="cblack"><bounds x="20" y="10" width="11" height="11" /></bezel>
+ <bezel element="cwhite"><bounds x="30" y="10" width="11" height="11" /></bezel>
+ <bezel element="cblack"><bounds x="40" y="10" width="11" height="11" /></bezel>
+ <bezel element="cwhite"><bounds x="50" y="10" width="11" height="11" /></bezel>
+ <bezel element="cblack"><bounds x="60" y="10" width="11" height="11" /></bezel>
+ <bezel element="cwhite"><bounds x="70" y="10" width="10" height="11" /></bezel>
+
+ <bezel element="cwhite"><bounds x="0" y="20" width="11" height="11" /></bezel>
+ <bezel element="cblack"><bounds x="10" y="20" width="11" height="11" /></bezel>
+ <bezel element="cwhite"><bounds x="20" y="20" width="11" height="11" /></bezel>
+ <bezel element="cblack"><bounds x="30" y="20" width="11" height="11" /></bezel>
+ <bezel element="cwhite"><bounds x="40" y="20" width="11" height="11" /></bezel>
+ <bezel element="cblack"><bounds x="50" y="20" width="11" height="11" /></bezel>
+ <bezel element="cwhite"><bounds x="60" y="20" width="11" height="11" /></bezel>
+ <bezel element="cblack"><bounds x="70" y="20" width="10" height="11" /></bezel>
+
+ <bezel element="cblack"><bounds x="0" y="30" width="11" height="11" /></bezel>
+ <bezel element="cwhite"><bounds x="10" y="30" width="11" height="11" /></bezel>
+ <bezel element="cblack"><bounds x="20" y="30" width="11" height="11" /></bezel>
+ <bezel element="cwhite"><bounds x="30" y="30" width="11" height="11" /></bezel>
+ <bezel element="cblack"><bounds x="40" y="30" width="11" height="11" /></bezel>
+ <bezel element="cwhite"><bounds x="50" y="30" width="11" height="11" /></bezel>
+ <bezel element="cblack"><bounds x="60" y="30" width="11" height="11" /></bezel>
+ <bezel element="cwhite"><bounds x="70" y="30" width="10" height="11" /></bezel>
+
+ <bezel element="cwhite"><bounds x="0" y="40" width="11" height="11" /></bezel>
+ <bezel element="cblack"><bounds x="10" y="40" width="11" height="11" /></bezel>
+ <bezel element="cwhite"><bounds x="20" y="40" width="11" height="11" /></bezel>
+ <bezel element="cblack"><bounds x="30" y="40" width="11" height="11" /></bezel>
+ <bezel element="cwhite"><bounds x="40" y="40" width="11" height="11" /></bezel>
+ <bezel element="cblack"><bounds x="50" y="40" width="11" height="11" /></bezel>
+ <bezel element="cwhite"><bounds x="60" y="40" width="11" height="11" /></bezel>
+ <bezel element="cblack"><bounds x="70" y="40" width="10" height="11" /></bezel>
+
+ <bezel element="cblack"><bounds x="0" y="50" width="11" height="11" /></bezel>
+ <bezel element="cwhite"><bounds x="10" y="50" width="11" height="11" /></bezel>
+ <bezel element="cblack"><bounds x="20" y="50" width="11" height="11" /></bezel>
+ <bezel element="cwhite"><bounds x="30" y="50" width="11" height="11" /></bezel>
+ <bezel element="cblack"><bounds x="40" y="50" width="11" height="11" /></bezel>
+ <bezel element="cwhite"><bounds x="50" y="50" width="11" height="11" /></bezel>
+ <bezel element="cblack"><bounds x="60" y="50" width="11" height="11" /></bezel>
+ <bezel element="cwhite"><bounds x="70" y="50" width="10" height="11" /></bezel>
+
+ <bezel element="cwhite"><bounds x="0" y="60" width="11" height="11" /></bezel>
+ <bezel element="cblack"><bounds x="10" y="60" width="11" height="11" /></bezel>
+ <bezel element="cwhite"><bounds x="20" y="60" width="11" height="11" /></bezel>
+ <bezel element="cblack"><bounds x="30" y="60" width="11" height="11" /></bezel>
+ <bezel element="cwhite"><bounds x="40" y="60" width="11" height="11" /></bezel>
+ <bezel element="cblack"><bounds x="50" y="60" width="11" height="11" /></bezel>
+ <bezel element="cwhite"><bounds x="60" y="60" width="11" height="11" /></bezel>
+ <bezel element="cblack"><bounds x="70" y="60" width="10" height="11" /></bezel>
+
+ <bezel element="cblack"><bounds x="0" y="70" width="11" height="10" /></bezel>
+ <bezel element="cwhite"><bounds x="10" y="70" width="11" height="10" /></bezel>
+ <bezel element="cblack"><bounds x="20" y="70" width="11" height="10" /></bezel>
+ <bezel element="cwhite"><bounds x="30" y="70" width="11" height="10" /></bezel>
+ <bezel element="cblack"><bounds x="40" y="70" width="11" height="10" /></bezel>
+ <bezel element="cwhite"><bounds x="50" y="70" width="11" height="10" /></bezel>
+ <bezel element="cblack"><bounds x="60" y="70" width="11" height="10" /></bezel>
+ <bezel element="cwhite"><bounds x="70" y="70" width="10" height="10" /></bezel>
+
+ <!-- leds -->
+ <repeat count="8">
+ <param name="y" start="8.3" increment="10" />
+ <param name="i1" start="11" increment="-1" />
+
+ <repeat count="8">
+ <param name="x" start="8.3" increment="10" />
+ <param name="i2" start="0" increment="1" />
+ <bezel name="~i1~.~i2~" element="led"><bounds x="~x~" y="~y~" width="1.5" height="1.5" /></bezel>
+ </repeat>
+ </repeat>
+
+ <!-- sensors -->
+ <repeat count="8">
+ <param name="y" start="0" increment="10" />
+ <param name="i" start="8" increment="-1" />
+
+ <bezel element="hlbb" inputtag="board:RANK.~i~" inputmask="0x01"><bounds x="0" y="~y~" width="10" height="10" /><color alpha="0.04" /></bezel>
+ <bezel element="hlbb" inputtag="board:RANK.~i~" inputmask="0x02"><bounds x="10" y="~y~" width="10" height="10" /><color alpha="0.04" /></bezel>
+ <bezel element="hlbb" inputtag="board:RANK.~i~" inputmask="0x04"><bounds x="20" y="~y~" width="10" height="10" /><color alpha="0.04" /></bezel>
+ <bezel element="hlbb" inputtag="board:RANK.~i~" inputmask="0x08"><bounds x="30" y="~y~" width="10" height="10" /><color alpha="0.04" /></bezel>
+ <bezel element="hlbb" inputtag="board:RANK.~i~" inputmask="0x10"><bounds x="40" y="~y~" width="10" height="10" /><color alpha="0.04" /></bezel>
+ <bezel element="hlbb" inputtag="board:RANK.~i~" inputmask="0x20"><bounds x="50" y="~y~" width="10" height="10" /><color alpha="0.04" /></bezel>
+ <bezel element="hlbb" inputtag="board:RANK.~i~" inputmask="0x40"><bounds x="60" y="~y~" width="10" height="10" /><color alpha="0.04" /></bezel>
+ <bezel element="hlbb" inputtag="board:RANK.~i~" inputmask="0x80"><bounds x="70" y="~y~" width="10" height="10" /><color alpha="0.04" /></bezel>
+ </repeat>
+
+ <!-- power led at A1 -->
+ <bezel element="ledg" inputtag="IN.5" inputmask="0x01" inputraw="1"><bounds x="0.2" y="78.3" width="1.5" height="1.5" /></bezel>
+
+ <!-- pieces -->
+ <repeat count="8">
+ <param name="y" start="0" increment="10" />
+ <param name="i" start="8" increment="-1" />
+
+ <bezel name="piece_a~i~" element="piece"><bounds x="0" y="~y~" width="10" height="10" /></bezel>
+ <bezel name="piece_b~i~" element="piece"><bounds x="10" y="~y~" width="10" height="10" /></bezel>
+ <bezel name="piece_c~i~" element="piece"><bounds x="20" y="~y~" width="10" height="10" /></bezel>
+ <bezel name="piece_d~i~" element="piece"><bounds x="30" y="~y~" width="10" height="10" /></bezel>
+ <bezel name="piece_e~i~" element="piece"><bounds x="40" y="~y~" width="10" height="10" /></bezel>
+ <bezel name="piece_f~i~" element="piece"><bounds x="50" y="~y~" width="10" height="10" /></bezel>
+ <bezel name="piece_g~i~" element="piece"><bounds x="60" y="~y~" width="10" height="10" /></bezel>
+ <bezel name="piece_h~i~" element="piece"><bounds x="70" y="~y~" width="10" height="10" /></bezel>
+ </repeat>
+ </group>
+
+
+<!-- sb ui -->
+
+ <element name="hlub" defstate="0">
+ <rect state="1"><color red="0" green="0" blue="0" /></rect>
+ </element>
+
+ <element name="text_uit1"><text string="S.BOARD"><color red="0.81" green="0.8" blue="0.79" /></text></element>
+ <element name="text_uit2"><text string="INTERFACE"><color red="0.81" green="0.8" blue="0.79" /></text></element>
+ <element name="text_uib1"><text string="BOARD:"><color red="0.81" green="0.8" blue="0.79" /></text></element>
+ <element name="text_uib2">
+ <rect><color red="0.84" green="0.75" blue="0.50" /></rect>
+ <text string="RESET"><color red="0.01" green="0.01" blue="0.01" /></text>
+ </element>
+ <element name="text_uib3">
+ <rect><color red="0.84" green="0.75" blue="0.50" /></rect>
+ <text string="CLEAR"><color red="0.01" green="0.01" blue="0.01" /></text>
+ </element>
+ <element name="text_uis1"><text string="SPAWN:"><color red="0.81" green="0.8" blue="0.79" /></text></element>
+ <element name="text_uih1"><text string="HAND:"><color red="0.81" green="0.8" blue="0.79" /></text></element>
+ <element name="text_uih2">
+ <rect><color red="0.84" green="0.75" blue="0.50" /></rect>
+ <text string="REMOVE"><color red="0.01" green="0.01" blue="0.01" /></text>
+ </element>
+ <element name="text_uiu1"><text string="UNDO:"><color red="0.81" green="0.8" blue="0.79" /></text></element>
+ <element name="text_uiu2a">
+ <rect><color red="0.84" green="0.75" blue="0.50" /></rect>
+ <text string=" &lt;&lt;"><color red="0.01" green="0.01" blue="0.01" /></text>
+ </element>
+ <element name="text_uiu2b">
+ <rect><color red="0.84" green="0.75" blue="0.50" /></rect>
+ <text string=" &lt; "><color red="0.01" green="0.01" blue="0.01" /></text>
+ </element>
+ <element name="text_uiu2c">
+ <rect><color red="0.84" green="0.75" blue="0.50" /></rect>
+ <text string=" &gt;"><color red="0.01" green="0.01" blue="0.01" /></text>
+ </element>
+ <element name="text_uiu2d">
+ <rect><color red="0.84" green="0.75" blue="0.50" /></rect>
+ <text string=" &gt;&gt;"><color red="0.01" green="0.01" blue="0.01" /></text>
+ </element>
+ <element name="text_uiu3a" defstate="0">
+ <simplecounter maxstate="999" digits="1" align="2">
+ <color red="0.81" green="0.8" blue="0.79" />
+ </simplecounter>
+ </element>
+ <element name="text_uiu3b"><text string="/"><color red="0.81" green="0.8" blue="0.79" /></text></element>
+ <element name="text_uiu3c" defstate="0">
+ <simplecounter maxstate="999" digits="1" align="1">
+ <color red="0.81" green="0.8" blue="0.79" />
+ </simplecounter>
+ </element>
+
+ <group name="sb_ui">
+ <bounds x="0" y="0" width="10" height="80" />
+ <bezel element="cblack"><bounds x="0" y="0" width="10" height="1" /></bezel>
+ <bezel element="cblack"><bounds x="0" y="7" width="10" height="1" /></bezel>
+ <bezel element="cblack"><bounds x="0" y="79" width="10" height="1" /></bezel>
+ <bezel element="text_uit1"><bounds x="0" y="2" width="10" height="2" /></bezel>
+ <bezel element="text_uit2"><bounds x="0" y="4" width="10" height="2" /></bezel>
+
+ <!-- board -->
+ <bezel element="text_uib1"><bounds x="0" y="9" width="10" height="2" /></bezel>
+ <bezel element="cwhite"><bounds x="1" y="11.5" width="8" height="2.5" /></bezel>
+ <bezel element="cwhite"><bounds x="1" y="15" width="8" height="2.5" /></bezel>
+
+ <bezel element="text_uib2"><bounds x="1.5" y="11.75" width="7" height="2" /></bezel>
+ <bezel element="text_uib3"><bounds x="1.5" y="15.25" width="7" height="2" /></bezel>
+
+ <bezel element="hlub" inputtag="board:UI" inputmask="0x200"><bounds x="1" y="11.5" width="8" height="2.5" /><color alpha="0.25" /></bezel>
+ <bezel element="hlub" inputtag="board:UI" inputmask="0x100"><bounds x="1" y="15" width="8" height="2.5" /><color alpha="0.25" /></bezel>
+
+ <!-- spawn -->
+ <bezel element="text_uis1"><bounds x="0" y="20.5" width="10" height="2" /></bezel>
+ <bezel element="cwhite"><bounds x="1" y="23" width="8" height="12" /></bezel>
+ <bezel element="cwhite"><bounds x="1" y="36" width="8" height="12" /></bezel>
+
+ <bezel name="piece_ui1" element="piece"><bounds x="1" y="23" width="4" height="4" /></bezel>
+ <bezel name="piece_ui2" element="piece"><bounds x="1" y="27" width="4" height="4" /></bezel>
+ <bezel name="piece_ui3" element="piece"><bounds x="1" y="31" width="4" height="4" /></bezel>
+ <bezel name="piece_ui4" element="piece"><bounds x="5" y="23" width="4" height="4" /></bezel>
+ <bezel name="piece_ui5" element="piece"><bounds x="5" y="27" width="4" height="4" /></bezel>
+ <bezel name="piece_ui6" element="piece"><bounds x="5" y="31" width="4" height="4" /></bezel>
+ <bezel name="piece_ui7" element="piece"><bounds x="1" y="36" width="4" height="4" /></bezel>
+ <bezel name="piece_ui8" element="piece"><bounds x="1" y="40" width="4" height="4" /></bezel>
+ <bezel name="piece_ui9" element="piece"><bounds x="1" y="44" width="4" height="4" /></bezel>
+ <bezel name="piece_ui10" element="piece"><bounds x="5" y="36" width="4" height="4" /></bezel>
+ <bezel name="piece_ui11" element="piece"><bounds x="5" y="40" width="4" height="4" /></bezel>
+ <bezel name="piece_ui12" element="piece"><bounds x="5" y="44" width="4" height="4" /></bezel>
+
+ <bezel element="hlub" inputtag="board:SPAWN" inputmask="0x0001"><bounds x="1" y="23" width="4" height="4" /><color alpha="0.25" /></bezel>
+ <bezel element="hlub" inputtag="board:SPAWN" inputmask="0x0002"><bounds x="1" y="27" width="4" height="4" /><color alpha="0.25" /></bezel>
+ <bezel element="hlub" inputtag="board:SPAWN" inputmask="0x0004"><bounds x="1" y="31" width="4" height="4" /><color alpha="0.25" /></bezel>
+ <bezel element="hlub" inputtag="board:SPAWN" inputmask="0x0008"><bounds x="5" y="23" width="4" height="4" /><color alpha="0.25" /></bezel>
+ <bezel element="hlub" inputtag="board:SPAWN" inputmask="0x0010"><bounds x="5" y="27" width="4" height="4" /><color alpha="0.25" /></bezel>
+ <bezel element="hlub" inputtag="board:SPAWN" inputmask="0x0020"><bounds x="5" y="31" width="4" height="4" /><color alpha="0.25" /></bezel>
+ <bezel element="hlub" inputtag="board:SPAWN" inputmask="0x0040"><bounds x="1" y="36" width="4" height="4" /><color alpha="0.25" /></bezel>
+ <bezel element="hlub" inputtag="board:SPAWN" inputmask="0x0080"><bounds x="1" y="40" width="4" height="4" /><color alpha="0.25" /></bezel>
+ <bezel element="hlub" inputtag="board:SPAWN" inputmask="0x0100"><bounds x="1" y="44" width="4" height="4" /><color alpha="0.25" /></bezel>
+ <bezel element="hlub" inputtag="board:SPAWN" inputmask="0x0200"><bounds x="5" y="36" width="4" height="4" /><color alpha="0.25" /></bezel>
+ <bezel element="hlub" inputtag="board:SPAWN" inputmask="0x0400"><bounds x="5" y="40" width="4" height="4" /><color alpha="0.25" /></bezel>
+ <bezel element="hlub" inputtag="board:SPAWN" inputmask="0x0800"><bounds x="5" y="44" width="4" height="4" /><color alpha="0.25" /></bezel>
+
+ <!-- hand -->
+ <bezel element="text_uih1"><bounds x="0" y="51" width="10" height="2" /></bezel>
+ <bezel element="cblack"><bounds x="1" y="53.5" width="8" height="6" /></bezel>
+ <bezel name="piece_ui0" element="piece"><bounds x="2" y="53.5" width="6" height="6" /></bezel>
+
+ <bezel element="cwhite"><bounds x="1" y="60.5" width="8" height="2.5" /></bezel>
+ <bezel element="text_uih2"><bounds x="1.5" y="60.75" width="7" height="2" /></bezel>
+ <bezel element="hlub" inputtag="board:UI" inputmask="0x08"><bounds x="1" y="60.5" width="8" height="2.5" /><color alpha="0.25" /></bezel>
+
+ <!-- undo -->
+ <bezel element="text_uiu1"><bounds x="0" y="66" width="10" height="2" /></bezel>
+ <bezel element="cwhite"><bounds x="1" y="68.5" width="1.7" height="6" /></bezel>
+ <bezel element="cwhite"><bounds x="3.1" y="68.5" width="1.7" height="6" /></bezel>
+ <bezel element="cwhite"><bounds x="5.2" y="68.5" width="1.7" height="6" /></bezel>
+ <bezel element="cwhite"><bounds x="7.3" y="68.5" width="1.7" height="6" /></bezel>
+ <bezel element="text_uiu2a"><bounds x="1" y="69.5" width="1.7" height="4" /></bezel>
+ <bezel element="text_uiu2b"><bounds x="3.1" y="69.5" width="1.7" height="4" /></bezel>
+ <bezel element="text_uiu2c"><bounds x="5.2" y="69.5" width="1.7" height="4" /></bezel>
+ <bezel element="text_uiu2d"><bounds x="7.3" y="69.5" width="1.7" height="4" /></bezel>
+
+ <bezel element="hlub" inputtag="board:UI" inputmask="0x10"><bounds x="1" y="68.5" width="1.7" height="6" /><color alpha="0.25" /></bezel>
+ <bezel element="hlub" inputtag="board:UI" inputmask="0x20"><bounds x="3.1" y="68.5" width="1.7" height="6" /><color alpha="0.25" /></bezel>
+ <bezel element="hlub" inputtag="board:UI" inputmask="0x40"><bounds x="5.2" y="68.5" width="1.7" height="6" /><color alpha="0.25" /></bezel>
+ <bezel element="hlub" inputtag="board:UI" inputmask="0x80"><bounds x="7.3" y="68.5" width="1.7" height="6" /><color alpha="0.25" /></bezel>
+
+ <bezel name="count_ui0" element="text_uiu3a"><bounds x="0" y="75" width="4" height="2" /></bezel>
+ <bezel name="count_ui1" element="text_uiu3c"><bounds x="6" y="75" width="4" height="2" /></bezel>
+ <bezel element="text_uiu3b"><bounds x="4" y="75" width="2" height="2" /></bezel>
+ </group>
+
+
+<!-- display -->
+
+ <element name="lcd_bg"><rect><color red="0.54" green="0.57" blue="0.58" /></rect></element>
+
+ <element name="digit" defstate="0">
+ <led7seg><color red="0.2" green="0.16" blue="0.16" /></led7seg>
+ </element>
+ <element name="ldot" defstate="0">
+ <rect state="1"><color red="0.2" green="0.16" blue="0.16" /></rect>
+ <rect state="0"><color red="0.49412" green="0.51765" blue="0.51765" /></rect>
+ </element>
+
+ <group name="display">
+ <bounds x="31" y="90.3" width="22.5" height="7.4" />
+
+ <bezel element="lcd_bg"><bounds x="31" y="90.3" width="22.5" height="7.4" /></bezel>
+
+ <bezel name="digit3" element="digit"><bounds x="32" y="91" width="4" height="6" /></bezel>
+ <bezel name="digit2" element="digit"><bounds x="37.5" y="91" width="4" height="6" /></bezel>
+ <bezel name="digit1" element="digit"><bounds x="43" y="91" width="4" height="6" /></bezel>
+ <bezel name="digit0" element="digit"><bounds x="48.5" y="91" width="4" height="6" /></bezel>
+
+ <bezel name="3.7" element="ldot"><bounds x="36.25" y="96.42" width="0.6" height="0.6" /></bezel>
+ <bezel name="2.7" element="ldot"><bounds x="41.75" y="96.42" width="0.6" height="0.6" /></bezel>
+ <bezel name="1.7" element="ldot"><bounds x="47.25" y="96.42" width="0.6" height="0.6" /></bezel>
+
+ <bezel name="0.7" element="ldot"><bounds x="42.16" y="92.75" width="0.6" height="0.6" /></bezel>
+ <bezel name="0.7" element="ldot"><bounds x="41.94" y="94.55" width="0.6" height="0.6" /></bezel>
+ </group>
+
+
+<!-- buttons -->
+
+ <element name="hlb" defstate="0">
+ <rect state="1"><color red="1" green="1" blue="1" /></rect>
+ </element>
+
+ <element name="text_res"><text string="RES"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_cl"><text string="CL"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_pos"><text string="POS"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_lev"><text string="LEV"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_mem"><text string="MEM"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_info"><text string="INFO"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_ent"><text string="ENT"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_l9"><text string="&#x2190;"><color red="0.75" green="0.75" blue="0.75" /></text> </element>
+ <element name="text_r0"><text string="&#x2192;"><color red="0.75" green="0.75" blue="0.75" /></text> </element>
+
+ <element name="text_ba"><text string="A" align="1"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_bb"><text string="B" align="1"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_bc"><text string="C" align="1"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_bd"><text string="D" align="1"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_be"><text string="E" align="1"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_bf"><text string="F" align="1"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_bg"><text string="G" align="1"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_bh"><text string="H" align="1"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+
+ <element name="text_b0"><text string="0" align="2"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_b1"><text string="1" align="2"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_b2"><text string="2" align="2"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_b3"><text string="3" align="2"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_b4"><text string="4" align="2"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_b5"><text string="5" align="2"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_b6"><text string="6" align="2"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_b7"><text string="7" align="2"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_b8"><text string="8" align="2"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+ <element name="text_b9"><text string="9" align="2"><color red="0.75" green="0.75" blue="0.75" /></text></element>
+
+ <element name="text_p1"><image file="chess/wk.png"><color alpha="0.9" /></image></element>
+ <element name="text_p2"><image file="chess/wq.png"><color alpha="0.9" /></image></element>
+ <element name="text_p3"><image file="chess/wr.png"><color alpha="0.9" /></image></element>
+ <element name="text_p4"><image file="chess/wb.png"><color alpha="0.9" /></image></element>
+ <element name="text_p5"><image file="chess/wn.png"><color alpha="0.9" /></image></element>
+ <element name="text_p6"><image file="chess/wp.png"><color alpha="0.9" /></image></element>
+
+ <group name="buttons">
+ <bounds x="0" y="0" width="18.7" height="23.7" />
+
+ <bezel element="blackb"><bounds x="0" y="5" width="3.7" height="3.7" /></bezel>
+ <bezel element="blackb"><bounds x="5" y="5" width="3.7" height="3.7" /></bezel>
+ <bezel element="blackb"><bounds x="10" y="5" width="3.7" height="3.7" /></bezel>
+ <bezel element="blackb"><bounds x="15" y="5" width="3.7" height="3.7" /></bezel>
+ <bezel element="blackb"><bounds x="15" y="0" width="3.7" height="3.7" /></bezel>
+
+ <bezel element="blackb"><bounds x="0" y="10" width="3.7" height="3.7" /></bezel>
+ <bezel element="blackb"><bounds x="5" y="10" width="3.7" height="3.7" /></bezel>
+ <bezel element="blackb"><bounds x="10" y="10" width="3.7" height="3.7" /></bezel>
+ <bezel element="blackb"><bounds x="15" y="10" width="3.7" height="3.7" /></bezel>
+
+ <bezel element="blackb"><bounds x="0" y="15" width="3.7" height="3.7" /></bezel>
+ <bezel element="blackb"><bounds x="5" y="15" width="3.7" height="3.7" /></bezel>
+ <bezel element="blackb"><bounds x="10" y="15" width="3.7" height="3.7" /></bezel>
+ <bezel element="blackb"><bounds x="15" y="15" width="3.7" height="3.7" /></bezel>
+
+ <bezel element="blackb"><bounds x="0" y="20" width="3.7" height="3.7" /></bezel>
+ <bezel element="blackb"><bounds x="5" y="20" width="3.7" height="3.7" /></bezel>
+ <bezel element="blackb"><bounds x="10" y="20" width="3.7" height="3.7" /></bezel>
+ <bezel element="blackb"><bounds x="15" y="20" width="3.7" height="3.7" /></bezel>
+
+ <bezel element="text_cl"><bounds x="0" y="5.9" width="3.7" height="1.8" /></bezel>
+ <bezel element="text_pos"><bounds x="5" y="5.9" width="3.7" height="1.8" /></bezel>
+ <bezel element="text_lev"><bounds x="10" y="5.9" width="3.7" height="1.8" /></bezel>
+ <bezel element="text_res"><bounds x="15" y="0.9" width="3.7" height="1.8" /></bezel>
+ <bezel element="text_mem"><bounds x="15" y="5.9" width="3.7" height="1.8" /></bezel>
+ <bezel element="text_info"><bounds x="15" y="10.9" width="3.7" height="1.8" /></bezel>
+ <bezel element="text_ent"><bounds x="15" y="15.9" width="3.7" height="1.8" /></bezel>
+
+ <bezel element="text_l9"><bounds x="10" y="20.1" width="3.7" height="1.8" /></bezel>
+ <bezel element="text_r0"><bounds x="15" y="20.1" width="3.7" height="1.8" /></bezel>
+ <bezel element="gray1"><bounds x="10.6" y="22.15" width="1.2" height="1.2" /></bezel>
+ <bezel element="blackb"><bounds x="10.75" y="22.3" width="0.9" height="0.9" /></bezel>
+ <bezel element="gray1"><bounds x="15.6" y="22.15" width="1.2" height="1.2" /></bezel>
+
+ <bezel element="text_ba"><bounds x="0.5" y="10.1" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_bb"><bounds x="5.5" y="10.1" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_bc"><bounds x="10.5" y="10.1" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_bd"><bounds x="0.5" y="15.1" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_be"><bounds x="5.5" y="15.1" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_bf"><bounds x="10.5" y="15.1" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_bg"><bounds x="0.5" y="20.1" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_bh"><bounds x="5.5" y="20.1" width="1.3" height="1.8" /></bezel>
+
+ <bezel element="text_b1"><bounds x="1.9" y="11.8" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_b2"><bounds x="6.9" y="11.8" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_b3"><bounds x="11.9" y="11.8" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_b4"><bounds x="1.9" y="16.8" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_b5"><bounds x="6.9" y="16.8" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_b6"><bounds x="11.9" y="16.8" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_b7"><bounds x="1.9" y="21.8" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_b8"><bounds x="6.9" y="21.8" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_b9"><bounds x="11.9" y="21.8" width="1.3" height="1.8" /></bezel>
+ <bezel element="text_b0"><bounds x="16.9" y="21.8" width="1.3" height="1.8" /></bezel>
+
+ <bezel element="text_p6"><bounds x="6.8" y="10.05" width="1.8" height="1.8" /></bezel>
+ <bezel element="text_p5"><bounds x="11.8" y="10.05" width="1.8" height="1.8" /></bezel>
+ <bezel element="text_p4"><bounds x="1.8" y="15.05" width="1.8" height="1.8" /></bezel>
+ <bezel element="text_p3"><bounds x="6.8" y="15.05" width="1.8" height="1.8" /></bezel>
+ <bezel element="text_p2"><bounds x="11.8" y="15.05" width="1.8" height="1.8" /></bezel>
+ <bezel element="text_p1"><bounds x="1.8" y="20.05" width="1.8" height="1.8" /></bezel>
+
+ <bezel element="hlb" inputtag="IN.0" inputmask="0x01"><bounds x="0" y="5" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+ <bezel element="hlb" inputtag="IN.2" inputmask="0x01"><bounds x="5" y="5" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+ <bezel element="hlb" inputtag="IN.1" inputmask="0x04"><bounds x="10" y="5" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+ <bezel element="hlb" inputtag="IN.3" inputmask="0x04"><bounds x="15" y="5" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+ <bezel element="hlb" inputtag="RESET" inputmask="0x01"><bounds x="15" y="0" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+
+ <bezel element="hlb" inputtag="IN.0" inputmask="0x02"><bounds x="0" y="10" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+ <bezel element="hlb" inputtag="IN.0" inputmask="0x08"><bounds x="5" y="10" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+ <bezel element="hlb" inputtag="IN.1" inputmask="0x02"><bounds x="10" y="10" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+ <bezel element="hlb" inputtag="IN.1" inputmask="0x01"><bounds x="15" y="10" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+
+ <bezel element="hlb" inputtag="IN.1" inputmask="0x08"><bounds x="0" y="15" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+ <bezel element="hlb" inputtag="IN.2" inputmask="0x02"><bounds x="5" y="15" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+ <bezel element="hlb" inputtag="IN.2" inputmask="0x08"><bounds x="10" y="15" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+ <bezel element="hlb" inputtag="IN.0" inputmask="0x04"><bounds x="15" y="15" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+
+ <bezel element="hlb" inputtag="IN.3" inputmask="0x02"><bounds x="0" y="20" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+ <bezel element="hlb" inputtag="IN.3" inputmask="0x08"><bounds x="5" y="20" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+ <bezel element="hlb" inputtag="IN.2" inputmask="0x04"><bounds x="10" y="20" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+ <bezel element="hlb" inputtag="IN.3" inputmask="0x01"><bounds x="15" y="20" width="3.7" height="3.7" /><color alpha="0.08" /></bezel>
+ </group>
+
+
+<!-- brikett -->
+
+ <element name="blackb"><rect><color red="0" green="0" blue="0" /></rect></element>
+ <element name="gray1"><rect><color red="0.75" green="0.75" blue="0.75" /></rect></element>
+ <element name="gray2"><rect><color red="0.11" green="0.105" blue="0.10" /></rect></element>
+ <element name="gray2d"><disk><color red="0.11" green="0.105" blue="0.10" /></disk></element>
+ <element name="gray3"><rect><color red="0.08" green="0.075" blue="0.075" /></rect></element>
+
+ <group name="brikett">
+ <bounds x="16.5" y="6" width="58.5" height="32" />
+
+ <bezel element="gray2"><bounds x="17.5" y="7" width="56.5" height="30" /></bezel>
+ <bezel element="gray3"><bounds x="47.5" y="10" width="0.5" height="24" /></bezel>
+ <bezel element="blackb"><bounds x="16.5" y="6" width="6" height="6" /></bezel>
+ <bezel element="gray2d"><bounds x="17.5" y="7" width="10" height="10" /></bezel>
+ <bezel element="blackb"><bounds x="69" y="6" width="6" height="6" /></bezel>
+ <bezel element="gray2d"><bounds x="64" y="7" width="10" height="10" /></bezel>
+ <bezel element="blackb"><bounds x="16.5" y="32" width="6" height="6" /></bezel>
+ <bezel element="gray2d"><bounds x="17.5" y="27" width="10" height="10" /></bezel>
+ <bezel element="blackb"><bounds x="69" y="32" width="6" height="6" /></bezel>
+ <bezel element="gray2d"><bounds x="64" y="27" width="10" height="10" /></bezel>
+
+ <group ref="display"><bounds x="22.5" y="15" width="20" height="6.85" /></group>
+ <group ref="buttons"><bounds x="50" y="10" width="19" height="24" /></group>
+ </group>
+
+
+<!-- build screen -->
+
+ <view name="Internal Layout (Full)">
+ <bounds left="-13" right="150.5" top="-1.5" bottom="87.5" />
+
+ <element ref="gray3"><bounds x="80" y="61" width="60" height="14" /></element>
+ <group ref="brikett"><bounds x="90" y="52" width="58.5" height="32" /></group>
+
+ <bezel element="cblack"><bounds x="-1" y="-1.5" width="89" height="89" /></bezel>
+ <bezel element="cwhite"><bounds x="3" y="2.5" width="81" height="81" /></bezel>
+ <group ref="sb_board"><bounds x="3.5" y="3" width="80" height="80" /></group>
+
+ <group ref="sb_ui"><bounds x="-12" y="3" width="10" height="80" /></group>
+
+ <bezel element="text_8"><bounds x="0.2" y="7" width="2" height="2" /></bezel>
+ <bezel element="text_7"><bounds x="0.2" y="17" width="2" height="2" /></bezel>
+ <bezel element="text_6"><bounds x="0.2" y="27" width="2" height="2" /></bezel>
+ <bezel element="text_5"><bounds x="0.2" y="37" width="2" height="2" /></bezel>
+ <bezel element="text_4"><bounds x="0.2" y="47" width="2" height="2" /></bezel>
+ <bezel element="text_3"><bounds x="0.2" y="57" width="2" height="2" /></bezel>
+ <bezel element="text_2"><bounds x="0.2" y="67" width="2" height="2" /></bezel>
+ <bezel element="text_1"><bounds x="0.2" y="77" width="2" height="2" /></bezel>
+
+ <bezel element="text_a"><bounds x="7.5" y="84.5" width="2" height="2" /></bezel>
+ <bezel element="text_b"><bounds x="17.5" y="84.5" width="2" height="2" /></bezel>
+ <bezel element="text_c"><bounds x="27.5" y="84.5" width="2" height="2" /></bezel>
+ <bezel element="text_d"><bounds x="37.5" y="84.5" width="2" height="2" /></bezel>
+ <bezel element="text_e"><bounds x="47.5" y="84.5" width="2" height="2" /></bezel>
+ <bezel element="text_f"><bounds x="57.5" y="84.5" width="2" height="2" /></bezel>
+ <bezel element="text_g"><bounds x="67.5" y="84.5" width="2" height="2" /></bezel>
+ <bezel element="text_h"><bounds x="77.5" y="84.5" width="2" height="2" /></bezel>
+ </view>
+
+ <view name="Internal Layout (Brikett)">
+ <group ref="brikett"><bounds x="0" y="0" width="58.5" height="32" /></group>
+ </view>
+</mamelayout>
diff --git a/src/mame/layout/mephisto_amsterdam.lay b/src/mame/layout/mephisto_amsterdam.lay
index 5cb0125e210..49bd610dbda 100644
--- a/src/mame/layout/mephisto_amsterdam.lay
+++ b/src/mame/layout/mephisto_amsterdam.lay
@@ -4,7 +4,7 @@
<element name="lcd_bg"><rect><color red="0.54" green="0.57" blue="0.58" /></rect></element>
<element name="digit" defstate="0">
- <led7seg><color red="0.31" green="0.28" blue="0.29" /></led7seg>
+ <led7seg><color red="0.2" green="0.16" blue="0.16" /></led7seg>
</element>
<element name="led" defstate="0">
@@ -359,49 +359,48 @@
<!-- buttons -->
<element name="gray"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect></element>
- <element name="black"><rect><color red="0" green="0" blue="0" /></rect></element>
- <element name="white"><rect><color red="1" green="1" blue="1" /></rect></element>
+ <element name="white"><rect><color red="0.95" green="0.95" blue="0.95" /></rect></element>
<element name="keys" defstate="0">
<rect state="1"><color red="0.0" green="0.0" blue="0.0" /></rect>
</element>
- <element name="text_info"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="INFO"><color red="1" green="1" blue="1" /></text> </element>
- <element name="text_pos"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="POS"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_lev"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="LEV"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_mem"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="MEM"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_cl"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="CL"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_ent"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="ENT"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_res"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="RES"> <color red="1" green="1" blue="1" /></text> </element>
-
- <element name="text_a1"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="A"><color red="1" green="1" blue="1" /></text> </element>
- <element name="text_b2"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="B"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_c3"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="C"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_d4"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="D"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_e5"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="E"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_f6"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="F"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_g7"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="G"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_h8"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="H"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_l9"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="&#x2190;"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_r0"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="&#x2192;"> <color red="1" green="1" blue="1" /></text> </element>
-
- <element name="text_1a"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="1"><color red="1" green="1" blue="1" /></text> </element>
- <element name="text_2b"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="2"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_3c"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="3"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_4d"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="4"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_5e"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="5"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_6f"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="6"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_7g"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="7"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_8h"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="8"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_9l"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="9"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_0r"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="0"> <color red="1" green="1" blue="1" /></text> </element>
-
- <element name="text_p1"><image file="chess/wk.png"/></element>
- <element name="text_p2"><image file="chess/wq.png"/></element>
- <element name="text_p3"><image file="chess/wr.png"/></element>
- <element name="text_p4"><image file="chess/wb.png"/></element>
- <element name="text_p5"><image file="chess/wn.png"/></element>
- <element name="text_p6"><image file="chess/wp.png"/></element>
+ <element name="text_info"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="INFO"><color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_pos"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="POS"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_lev"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="LEV"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_mem"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="MEM"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_cl"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="CL"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_ent"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="ENT"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_res"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="RES"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+
+ <element name="text_a1"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="A"><color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_b2"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="B"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_c3"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="C"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_d4"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="D"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_e5"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="E"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_f6"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="F"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_g7"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="G"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_h8"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="H"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_l9"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="&#x2190;"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_r0"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="&#x2192;"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+
+ <element name="text_1a"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="1"><color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_2b"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="2"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_3c"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="3"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_4d"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="4"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_5e"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="5"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_6f"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="6"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_7g"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="7"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_8h"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="8"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_9l"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="9"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_0r"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="0"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+
+ <element name="text_p1"><image file="chess/wk.png"><color alpha="0.95" /></image></element>
+ <element name="text_p2"><image file="chess/wq.png"><color alpha="0.95" /></image></element>
+ <element name="text_p3"><image file="chess/wr.png"><color alpha="0.95" /></image></element>
+ <element name="text_p4"><image file="chess/wb.png"><color alpha="0.95" /></image></element>
+ <element name="text_p5"><image file="chess/wn.png"><color alpha="0.95" /></image></element>
+ <element name="text_p6"><image file="chess/wp.png"><color alpha="0.95" /></image></element>
<group name="buttons">
<bounds x="69" y="93" width="29" height="14" />
@@ -464,7 +463,8 @@
<bezel element="text_p3" ><bounds x="91" y="98" width="1.8" height="1.7" /></bezel>
<bezel element="text_p2" ><bounds x="96" y="98" width="1.8" height="1.7" /></bezel>
<bezel element="text_p1" ><bounds x="81" y="103" width="1.8" height="1.7" /></bezel>
- <bezel element="black"><bounds x="89.5" y="105.1" width="1.3" height="1.3" /></bezel>
+ <bezel element="white"><bounds x="89.5" y="105.1" width="1.3" height="1.3" /></bezel>
+ <bezel element="gray"><bounds x="89.7" y="105.3" width="0.9" height="0.9" /></bezel>
<bezel element="white"><bounds x="94.5" y="105.1" width="1.3" height="1.3" /></bezel>
<!-- Buttons (new_keyboard)-->
diff --git a/src/mame/layout/mephisto_bup.lay b/src/mame/layout/mephisto_bup.lay
index e4cbb99148e..1220c19ef35 100644
--- a/src/mame/layout/mephisto_bup.lay
+++ b/src/mame/layout/mephisto_bup.lay
@@ -5,7 +5,7 @@
<element name="lcd_bg"><rect><color red="0.54" green="0.57" blue="0.58" /></rect></element>
<element name="digit" defstate="0">
- <led7seg><color red="0.31" green="0.28" blue="0.29" /></led7seg>
+ <led7seg><color red="0.2" green="0.16" blue="0.16" /></led7seg>
</element>
<element name="led" defstate="0">
@@ -393,35 +393,35 @@
<!-- buttons -->
<element name="gray"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect></element>
- <element name="white"><rect><color red="1" green="1" blue="1" /></rect></element>
+ <element name="white"><rect><color red="0.95" green="0.95" blue="0.95" /></rect></element>
<element name="keys" defstate="0">
<rect state="1"><color red="0.0" green="0.0" blue="0.0" /></rect>
</element>
- <element name="text_cl"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="CL"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_pos"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="POS"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_mem"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="MEM"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_info"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="INFO"><color red="1" green="1" blue="1" /></text> </element>
- <element name="text_lev"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="LEV"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_ent"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="ENT"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_res"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="RES"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_best"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="BEST"><color red="1" green="1" blue="1" /></text> </element>
- <element name="text_mon"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="MON"> <color red="1" green="1" blue="1" /></text> </element>
-
- <element name="text_b1"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="1"><color red="1" green="1" blue="1" /></text> </element>
- <element name="text_b2"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="2"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_b3"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="3"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_b4"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="4"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_b5"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="5"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_b6"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="6"> <color red="1" green="1" blue="1" /></text> </element>
-
- <element name="text_p1"><image file="chess/wk.png"/></element>
- <element name="text_p2"><image file="chess/wq.png"/></element>
- <element name="text_p3"><image file="chess/wr.png"/></element>
- <element name="text_p4"><image file="chess/wb.png"/></element>
- <element name="text_p5"><image file="chess/wn.png"/></element>
- <element name="text_p6"><image file="chess/wp.png"/></element>
+ <element name="text_cl"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="CL"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_pos"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="POS"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_mem"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="MEM"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_info"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="INFO"><color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_lev"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="LEV"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_ent"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="ENT"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_res"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="RES"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_best"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="BEST"><color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_mon"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="MON"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+
+ <element name="text_b1"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="1"><color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_b2"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="2"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_b3"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="3"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_b4"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="4"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_b5"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="5"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_b6"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="6"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+
+ <element name="text_p1"><image file="chess/wk.png"><color alpha="0.95" /></image></element>
+ <element name="text_p2"><image file="chess/wq.png"><color alpha="0.95" /></image></element>
+ <element name="text_p3"><image file="chess/wr.png"><color alpha="0.95" /></image></element>
+ <element name="text_p4"><image file="chess/wb.png"><color alpha="0.95" /></image></element>
+ <element name="text_p5"><image file="chess/wn.png"><color alpha="0.95" /></image></element>
+ <element name="text_p6"><image file="chess/wp.png"><color alpha="0.95" /></image></element>
<group name="buttons">
<bounds x="69" y="93" width="29" height="14" />
@@ -472,7 +472,8 @@
<bezel element="text_res"><bounds x="74.3" y="104" width="3.67" height="2.2" /></bezel>
<bezel element="text_best"><bounds x="79.3" y="104" width="3.67" height="2.2" /></bezel>
<bezel element="text_mon"><bounds x="84.3" y="104" width="3.67" height="2.2" /></bezel>
- <bezel element="black"><bounds x="90.35" y="104.5" width="1.3" height="1.3" /></bezel>
+ <bezel element="white"><bounds x="90.35" y="104.5" width="1.3" height="1.3" /></bezel>
+ <bezel element="gray"><bounds x="90.55" y="104.7" width="0.9" height="0.9" /></bezel>
<bezel element="white"><bounds x="95.35" y="104.5" width="1.3" height="1.3" /></bezel>
<bezel element="keys" inputtag="KEY1_0" inputmask="0x80"> <!-- 1 -->
diff --git a/src/mame/layout/mephisto_glasgow.lay b/src/mame/layout/mephisto_glasgow.lay
index acb34791ac5..0e389c5d42d 100644
--- a/src/mame/layout/mephisto_glasgow.lay
+++ b/src/mame/layout/mephisto_glasgow.lay
@@ -4,7 +4,7 @@
<element name="lcd_bg"><rect><color red="0.54" green="0.57" blue="0.58" /></rect></element>
<element name="digit" defstate="0">
- <led7seg><color red="0.31" green="0.28" blue="0.29" /></led7seg>
+ <led7seg><color red="0.2" green="0.16" blue="0.16" /></led7seg>
</element>
<element name="led" defstate="0">
@@ -359,49 +359,48 @@
<!-- buttons -->
<element name="gray"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect></element>
- <element name="black"><rect><color red="0" green="0" blue="0" /></rect></element>
- <element name="white"><rect><color red="1" green="1" blue="1" /></rect></element>
+ <element name="white"><rect><color red="0.95" green="0.95" blue="0.95" /></rect></element>
<element name="keys" defstate="0">
<rect state="1"><color red="0.0" green="0.0" blue="0.0" /></rect>
</element>
- <element name="text_info"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="INFO"><color red="1" green="1" blue="1" /></text> </element>
- <element name="text_pos"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="POS"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_lev"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="LEV"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_mem"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="MEM"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_cl"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="CL"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_ent"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="ENT"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_res"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="RES"> <color red="1" green="1" blue="1" /></text> </element>
-
- <element name="text_a1"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="A"><color red="1" green="1" blue="1" /></text> </element>
- <element name="text_b2"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="B"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_c3"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="C"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_d4"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="D"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_e5"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="E"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_f6"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="F"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_g7"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="G"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_h8"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="H"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_l9"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="&#x2190;"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_r0"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="&#x2192;"> <color red="1" green="1" blue="1" /></text> </element>
-
- <element name="text_1a"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="1"><color red="1" green="1" blue="1" /></text> </element>
- <element name="text_2b"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="2"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_3c"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="3"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_4d"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="4"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_5e"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="5"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_6f"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="6"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_7g"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="7"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_8h"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="8"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_9l"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="9"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_0r"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="0"> <color red="1" green="1" blue="1" /></text> </element>
-
- <element name="text_p1"><image file="chess/wk.png"/></element>
- <element name="text_p2"><image file="chess/wq.png"/></element>
- <element name="text_p3"><image file="chess/wr.png"/></element>
- <element name="text_p4"><image file="chess/wb.png"/></element>
- <element name="text_p5"><image file="chess/wn.png"/></element>
- <element name="text_p6"><image file="chess/wp.png"/></element>
+ <element name="text_info"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="INFO"><color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_pos"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="POS"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_lev"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="LEV"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_mem"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="MEM"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_cl"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="CL"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_ent"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="ENT"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_res"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="RES"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+
+ <element name="text_a1"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="A"><color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_b2"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="B"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_c3"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="C"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_d4"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="D"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_e5"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="E"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_f6"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="F"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_g7"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="G"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_h8"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="H"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_l9"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="&#x2190;"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_r0"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="&#x2192;"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+
+ <element name="text_1a"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="1"><color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_2b"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="2"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_3c"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="3"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_4d"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="4"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_5e"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="5"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_6f"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="6"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_7g"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="7"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_8h"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="8"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_9l"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="9"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_0r"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="0"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+
+ <element name="text_p1"><image file="chess/wk.png"><color alpha="0.95" /></image></element>
+ <element name="text_p2"><image file="chess/wq.png"><color alpha="0.95" /></image></element>
+ <element name="text_p3"><image file="chess/wr.png"><color alpha="0.95" /></image></element>
+ <element name="text_p4"><image file="chess/wb.png"><color alpha="0.95" /></image></element>
+ <element name="text_p5"><image file="chess/wn.png"><color alpha="0.95" /></image></element>
+ <element name="text_p6"><image file="chess/wp.png"><color alpha="0.95" /></image></element>
<group name="buttons">
<bounds x="69" y="93" width="29" height="14" />
@@ -462,7 +461,8 @@
<bezel element="text_p3" ><bounds x="71" y="103" width="1.8" height="1.7" /></bezel>
<bezel element="text_p2" ><bounds x="76" y="103" width="1.8" height="1.7" /></bezel>
<bezel element="text_p1" ><bounds x="81" y="103" width="1.8" height="1.7" /></bezel>
- <bezel element="black"><bounds x="89.5" y="105.1" width="1.3" height="1.3" /></bezel>
+ <bezel element="white"><bounds x="89.5" y="105.1" width="1.3" height="1.3" /></bezel>
+ <bezel element="gray"><bounds x="89.7" y="105.3" width="0.9" height="0.9" /></bezel>
<bezel element="white"><bounds x="94.5" y="105.1" width="1.3" height="1.3" /></bezel>
<!-- Buttons (old_keyboard)-->
diff --git a/src/mame/layout/mephisto_megaiv.lay b/src/mame/layout/mephisto_megaiv.lay
index ffd839a0100..d46e4d6e48e 100644
--- a/src/mame/layout/mephisto_megaiv.lay
+++ b/src/mame/layout/mephisto_megaiv.lay
@@ -3,7 +3,7 @@
<!-- define elements -->
<element name="digit" defstate="0">
- <led7seg><color red="0.31" green="0.28" blue="0.29" /></led7seg>
+ <led7seg><color red="0.2" green="0.16" blue="0.16" /></led7seg>
</element>
<element name="led" defstate="0">
diff --git a/src/mame/layout/mephisto_mm2.lay b/src/mame/layout/mephisto_mm2.lay
index aaa250ad310..8b8e4bae9d1 100644
--- a/src/mame/layout/mephisto_mm2.lay
+++ b/src/mame/layout/mephisto_mm2.lay
@@ -5,7 +5,7 @@
<element name="lcd_bg"><rect><color red="0.54" green="0.57" blue="0.58" /></rect></element>
<element name="digit" defstate="0">
- <led7seg><color red="0.31" green="0.28" blue="0.29" /></led7seg>
+ <led7seg><color red="0.2" green="0.16" blue="0.16" /></led7seg>
</element>
<element name="led" defstate="0">
@@ -393,40 +393,40 @@
<!-- buttons -->
<element name="gray"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect></element>
- <element name="white"><rect><color red="1" green="1" blue="1" /></rect></element>
+ <element name="white"><rect><color red="0.95" green="0.95" blue="0.95" /></rect></element>
<element name="keys" defstate="0">
<rect state="1"><color red="0.0" green="0.0" blue="0.0" /></rect>
</element>
- <element name="text_cl"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="CL"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_pos"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="POS"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_mem"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="MEM"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_info"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="INFO"><color red="1" green="1" blue="1" /></text> </element>
- <element name="text_lev"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="LEV"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_ent"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="ENT"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_res"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="RES"> <color red="1" green="1" blue="1" /></text> </element>
-
- <element name="text_a1"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="A1"><color red="1" green="1" blue="1" /></text> </element>
- <element name="text_b2"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="B2"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_c3"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="C3"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_d4"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="D4"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_e5"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="E5"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_f6"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="F6"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_g7"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="G7"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_h8"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="H8"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_9l"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="9"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_0r"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="0"> <color red="1" green="1" blue="1" /></text> </element>
-
- <element name="text_l9"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="&#x2190;"> <color red="1" green="1" blue="1" /></text> </element>
- <element name="text_r0"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="&#x2192;"> <color red="1" green="1" blue="1" /></text> </element>
-
- <element name="text_p1"><image file="chess/wk.png"/></element>
- <element name="text_p2"><image file="chess/wq.png"/></element>
- <element name="text_p3"><image file="chess/wr.png"/></element>
- <element name="text_p4"><image file="chess/wb.png"/></element>
- <element name="text_p5"><image file="chess/wn.png"/></element>
- <element name="text_p6"><image file="chess/wp.png"/></element>
+ <element name="text_cl"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="CL"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_pos"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="POS"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_mem"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="MEM"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_info"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="INFO"><color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_lev"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="LEV"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_ent"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="ENT"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_res"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="RES"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+
+ <element name="text_a1"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="A1"><color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_b2"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="B2"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_c3"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="C3"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_d4"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="D4"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_e5"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="E5"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_f6"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="F6"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_g7"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="G7"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_h8"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="H8"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_9l"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="9"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_0r"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="0"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+
+ <element name="text_l9"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="&#x2190;"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+ <element name="text_r0"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect> <text string="&#x2192;"> <color red="0.95" green="0.95" blue="0.95" /></text> </element>
+
+ <element name="text_p1"><image file="chess/wk.png"><color alpha="0.95" /></image></element>
+ <element name="text_p2"><image file="chess/wq.png"><color alpha="0.95" /></image></element>
+ <element name="text_p3"><image file="chess/wr.png"><color alpha="0.95" /></image></element>
+ <element name="text_p4"><image file="chess/wb.png"><color alpha="0.95" /></image></element>
+ <element name="text_p5"><image file="chess/wn.png"><color alpha="0.95" /></image></element>
+ <element name="text_p6"><image file="chess/wp.png"><color alpha="0.95" /></image></element>
<group name="buttons">
<bounds x="69" y="93" width="29" height="14" />
@@ -481,7 +481,8 @@
<bezel element="text_p3" ><bounds x="84" y="98" width="2" height="1.9" /></bezel>
<bezel element="text_p2" ><bounds x="89" y="98" width="2" height="1.9" /></bezel>
<bezel element="text_p1" ><bounds x="94" y="98" width="2" height="1.9" /></bezel>
- <bezel element="black"><bounds x="89.5" y="105.1" width="1.3" height="1.3" /></bezel>
+ <bezel element="white"><bounds x="89.5" y="105.1" width="1.3" height="1.3" /></bezel>
+ <bezel element="gray"><bounds x="89.7" y="105.3" width="0.9" height="0.9" /></bezel>
<bezel element="white"><bounds x="94.5" y="105.1" width="1.3" height="1.3" /></bezel>
<bezel element="keys" inputtag="KEY1_0" inputmask="0x80"> <!-- CL -->
diff --git a/src/mame/layout/mephisto_modena.lay b/src/mame/layout/mephisto_modena.lay
index e63e1cecf63..28927c7cc84 100644
--- a/src/mame/layout/mephisto_modena.lay
+++ b/src/mame/layout/mephisto_modena.lay
@@ -7,7 +7,7 @@
<element name="lcd_bg"><rect><color red="0.54" green="0.57" blue="0.58" /></rect></element>
<element name="digit" defstate="0">
- <led7seg><color red="0.31" green="0.28" blue="0.29" /></led7seg>
+ <led7seg><color red="0.2" green="0.16" blue="0.16" /></led7seg>
</element>
<element name="led" defstate="0">
diff --git a/src/mame/layout/mephisto_montec.lay b/src/mame/layout/mephisto_montec.lay
index 2ee29b0e721..ec5cd2e4d19 100644
--- a/src/mame/layout/mephisto_montec.lay
+++ b/src/mame/layout/mephisto_montec.lay
@@ -3,7 +3,7 @@
<!-- define elements -->
<element name="digit" defstate="0">
- <led7seg><color red="0.31" green="0.28" blue="0.29" /></led7seg>
+ <led7seg><color red="0.2" green="0.16" blue="0.16" /></led7seg>
</element>
<element name="led" defstate="0">
diff --git a/src/mame/layout/mephisto_smondial2.lay b/src/mame/layout/mephisto_smondial2.lay
index ec063bc24e7..b845d6a294f 100644
--- a/src/mame/layout/mephisto_smondial2.lay
+++ b/src/mame/layout/mephisto_smondial2.lay
@@ -3,7 +3,7 @@
<!-- define elements -->
<element name="digit" defstate="0">
- <led7seg><color red="0.31" green="0.28" blue="0.29" /></led7seg>
+ <led7seg><color red="0.2" green="0.16" blue="0.16" /></led7seg>
</element>
<element name="led" defstate="0">
diff --git a/src/mame/layout/novag_cforte.lay b/src/mame/layout/novag_cforte.lay
index ee24fb5397c..c03e5e85d98 100644
--- a/src/mame/layout/novag_cforte.lay
+++ b/src/mame/layout/novag_cforte.lay
@@ -8,17 +8,17 @@
<element name="lcd_bg"><rect><color red="0.54" green="0.57" blue="0.58" /></rect></element>
<element name="digit" defstate="0">
- <led7seg><color red="0.31" green="0.28" blue="0.29" /></led7seg>
+ <led7seg><color red="0.2" green="0.16" blue="0.16" /></led7seg>
</element>
<element name="seg_m" defstate="0">
<rect><color red="0.54" green="0.57" blue="0.58" /></rect>
- <text state="1" string="M"><color red="0.31" green="0.28" blue="0.29" /></text>
- <text state="0" string="M"><color red="0.5098" green="0.5333" blue="0.5412" /></text>
+ <text state="1" string="M"><color red="0.2" green="0.16" blue="0.16" /></text>
+ <text state="0" string="M"><color red="0.49412" green="0.51765" blue="0.51765" /></text>
</element>
<element name="seg_ap" defstate="0">
<rect><color red="0.54" green="0.57" blue="0.58" /></rect>
- <text state="1" string="'"><color red="0.31" green="0.28" blue="0.29" /></text>
- <text state="0" string="'"><color red="0.5098" green="0.5333" blue="0.5412" /></text>
+ <text state="1" string="'"><color red="0.2" green="0.16" blue="0.16" /></text>
+ <text state="0" string="'"><color red="0.49412" green="0.51765" blue="0.51765" /></text>
</element>
<element name="ledr" defstate="0">
diff --git a/src/mame/layout/saitek_corona.lay b/src/mame/layout/saitek_corona.lay
index fa3e97fbe05..cdb7d9538b4 100644
--- a/src/mame/layout/saitek_corona.lay
+++ b/src/mame/layout/saitek_corona.lay
@@ -8,11 +8,11 @@
<element name="text_mode"><text string="Mode" align="1"><color red="0.36" green="0.35" blue="0.35" /></text></element>
<element name="digit" defstate="0">
- <led7seg><color red="0.31" green="0.28" blue="0.29" /></led7seg>
+ <led7seg><color red="0.2" green="0.16" blue="0.16" /></led7seg>
</element>
<element name="ldot" defstate="0">
- <rect state="1"><color red="0.31" green="0.28" blue="0.29" /></rect>
- <rect state="0"><color red="0.5098" green="0.5333" blue="0.5412" /></rect>
+ <rect state="1"><color red="0.2" green="0.16" blue="0.16" /></rect>
+ <rect state="0"><color red="0.49412" green="0.51765" blue="0.51765" /></rect>
</element>
<element name="ledo">
diff --git a/src/mame/layout/saitek_stratos.lay b/src/mame/layout/saitek_stratos.lay
index 59ba13f7459..c505d3ad268 100644
--- a/src/mame/layout/saitek_stratos.lay
+++ b/src/mame/layout/saitek_stratos.lay
@@ -8,11 +8,11 @@
<element name="text_mode"><text string="Mode" align="1"><color red="0.36" green="0.35" blue="0.35" /></text></element>
<element name="digit" defstate="0">
- <led7seg><color red="0.31" green="0.28" blue="0.29" /></led7seg>
+ <led7seg><color red="0.2" green="0.16" blue="0.16" /></led7seg>
</element>
<element name="ldot" defstate="0">
- <rect state="1"><color red="0.31" green="0.28" blue="0.29" /></rect>
- <rect state="0"><color red="0.5098" green="0.5333" blue="0.5412" /></rect>
+ <rect state="1"><color red="0.2" green="0.16" blue="0.16" /></rect>
+ <rect state="0"><color red="0.49412" green="0.51765" blue="0.51765" /></rect>
</element>
<element name="ledo">
diff --git a/src/mame/layout/saitek_tking.lay b/src/mame/layout/saitek_tking.lay
index 59ba13f7459..c505d3ad268 100644
--- a/src/mame/layout/saitek_tking.lay
+++ b/src/mame/layout/saitek_tking.lay
@@ -8,11 +8,11 @@
<element name="text_mode"><text string="Mode" align="1"><color red="0.36" green="0.35" blue="0.35" /></text></element>
<element name="digit" defstate="0">
- <led7seg><color red="0.31" green="0.28" blue="0.29" /></led7seg>
+ <led7seg><color red="0.2" green="0.16" blue="0.16" /></led7seg>
</element>
<element name="ldot" defstate="0">
- <rect state="1"><color red="0.31" green="0.28" blue="0.29" /></rect>
- <rect state="0"><color red="0.5098" green="0.5333" blue="0.5412" /></rect>
+ <rect state="1"><color red="0.2" green="0.16" blue="0.16" /></rect>
+ <rect state="0"><color red="0.49412" green="0.51765" blue="0.51765" /></rect>
</element>
<element name="ledo">
diff --git a/src/mame/mame.lst b/src/mame/mame.lst
index 2fcb5ab68c5..e7510349ebf 100644
--- a/src/mame/mame.lst
+++ b/src/mame/mame.lst
@@ -12608,7 +12608,7 @@ klondkp // (c) 1999 Eolith
@source:ep64.cpp
ep128 // Enterprise 128
ep64 // Enterprise 64
-phc64 // Hegener & Glaser Mephisto PHC 64
+phc64 // Hegener + Glaser Mephisto PHC 64
@source:epic14e.cpp
epic14e //
@@ -21407,13 +21407,19 @@ meijinsn // (c) 1986 SNK
@source:mekd2.cpp
mekd2 // 1977 Motorola Evaluation Kit
+@source:mephisto_brikett.cpp
+mephisto
+mephisto2
+mephisto3
+
@source:mephisto_glasgow.cpp
amsterd // Amsterdam
-dallas // Dallas
+amsterda // Amsterdam
dallas16 // Dallas
+dallas16a // Dallas
dallas32 // Dallas
glasgow // Glasgow
-roma // Roma
+roma16 // Roma
roma32 // Roma
@source:mephisto_mm2.cpp
@@ -21428,17 +21434,18 @@ rebel5 // Mephisto Rebell 5.0
modena // 1992 Mephisto Modena
@source:mephisto_modular.cpp
-alm16 // 1988 Mephisto Almeria 68000
-alm32 // 1988 Mephisto Almeria 68020
-port16 // 1989 Mephisto Portorose 68000
-port32 // 1989 Mephisto Portorose 68020
-lyon16 // 1990 Mephisto Lyon 68000
-lyon32 // 1990 Mephisto Lyon 68020
-van16 // 1991 Mephisto Vancouver 68000
-van32 // 1991 Mephisto Vancouver 68020
+alm16 // 1988 Mephisto Almeria 16 Bit
+alm32 // 1988 Mephisto Almeria 32 Bit
+port16 // 1989 Mephisto Portorose 16 Bit
+port32 // 1989 Mephisto Portorose 32 Bit
+lyon16 // 1990 Mephisto Lyon 16 Bit
+lyon32 // 1990 Mephisto Lyon 32 Bit
+van16 // 1991 Mephisto Vancouver 16 Bit
+van32 // 1991 Mephisto Vancouver 32 Bit
gen32 // 1993 Mephisto Genius 68030
-lond020 // 1996 Mephisto London 68020
-lond030 // 1996 Mephisto Genius 68030 London Upgrade
+gen32l // 1996 Mephisto Genius 68030 London Upgrade
+lond16 // 1996 Mephisto London 16 Bit
+lond32 // 1996 Mephisto London 32 Bit
berl16 // 1992 Mephisto Berlin 68000
berlinp // 1994 Mephisto Berlin Pro 68020
berl16l // 1996 Mephisto Berlin 68000 London Upgrade
diff --git a/src/mame/mess.flt b/src/mame/mess.flt
index 4484334a622..34412a81660 100644
--- a/src/mame/mess.flt
+++ b/src/mame/mess.flt
@@ -458,6 +458,7 @@ mdisk.cpp
megadriv.cpp
megadriv_rad.cpp
mekd2.cpp
+mephisto_brikett.cpp
mephisto_glasgow.cpp
mephisto_mm2.cpp
mephisto_modena.cpp