mephisto.cpp: moved opening library modules into a softlist. (nw)

New WORKING machines
--------------------
Mephisto B&P [CB-Emu, Sandro Ronco]
This commit is contained in:
Sandro Ronco 2019-07-14 22:23:48 +02:00
parent e03b298300
commit d783dd2e68
4 changed files with 704 additions and 46 deletions

39
hash/mephisto.xml Normal file
View File

@ -0,0 +1,39 @@
<?xml version="1.0"?>
<!DOCTYPE softwarelist SYSTEM "softwarelist.dtd">
<softwarelist name="mephisto" description="Mephisto Modular Board Modules">
<software name="hg240">
<description>Mephisto HG 240 Opening Library</description>
<year>1984</year>
<publisher>Hegener &amp; Glaser</publisher>
<sharedfeat name="compatibility" value="MM2" />
<part name="cart" interface="mephisto_cart">
<dataarea name="rom" size="0x4000">
<rom name="hg240.rom" size="0x4000" crc="38f62597" sha1="39ccc0f5d1b895e5334df0944639a886f9300f74" />
</dataarea>
</part>
</software>
<software name="hg440">
<description>Mephisto HG 440 Opening Library</description>
<year>1987</year>
<publisher>Hegener &amp; Glaser</publisher>
<sharedfeat name="compatibility" value="MM4" />
<part name="cart" interface="mephisto_cart">
<dataarea name="rom" size="0x4000">
<rom name="hg440.rom" size="0x4000" crc="81ffcdfd" sha1="b0f7bcc11d1e821daf92cde31e3446c8be0bbe19" />
</dataarea>
</part>
</software>
<software name="hg550">
<description>Mephisto HG 550 Opening Library</description>
<year>1990</year>
<publisher>Hegener &amp; Glaser</publisher>
<sharedfeat name="compatibility" value="MM5" />
<part name="cart" interface="mephisto_cart">
<dataarea name="rom" size="0x4000">
<rom name="hg550.rom" size="0x4000" crc="0359f13d" sha1="833cef8302ad8d283d3f95b1d325353c7e3b8614" />
</dataarea>
</part>
</software>
</softwarelist>

View File

@ -69,10 +69,13 @@ Mephisto 4 Turbo Kit 18mhz - (mm4tk)
#include "machine/timer.h"
#include "sound/dac.h"
#include "sound/volt_reg.h"
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
#include "speaker.h"
// internal artwork
#include "mephisto_mm2.lh"
#include "mephisto_bup.lh"
class mephisto_state : public driver_device
@ -91,6 +94,7 @@ public:
void rebel5(machine_config &config);
void mm4tk(machine_config &config);
void mm2(machine_config &config);
void bup(machine_config &config);
void mephisto(machine_config &config);
private:
@ -106,12 +110,10 @@ private:
DECLARE_READ8_MEMBER(read_keys);
DECLARE_WRITE_LINE_MEMBER(write_led7);
uint8_t m_lcd_shift_counter;
//uint8_t *m_p_ram;
uint8_t m_led7;
uint8_t m_allowNMI;
virtual void machine_start() override;
virtual void machine_reset() override;
DECLARE_MACHINE_START(mm2);
TIMER_DEVICE_CALLBACK_MEMBER(update_nmi);
TIMER_DEVICE_CALLBACK_MEMBER(update_nmi_r5);
TIMER_DEVICE_CALLBACK_MEMBER(update_irq);
@ -149,7 +151,7 @@ READ8_MEMBER(mephisto_state::read_keys)
data = m_key2[offset]->read();
}
logerror("Keyboard Port = %d-%d Data = %d\n ", !m_outlatch->q7_r() ? 0 : 1, offset, data);
//logerror("Keyboard Port = %d-%d Data = %d\n ", !m_outlatch->q7_r() ? 0 : 1, offset, data);
return data | 0x7f;
}
@ -181,7 +183,7 @@ void mephisto_state::mephisto_mem(address_map &map)
map(0x3000, 0x3000).r("board", FUNC(mephisto_board_device::input_r));
map(0x3400, 0x3407).w("outlatch", FUNC(hc259_device::write_d7)); // Status LEDs+ buzzer
map(0x3800, 0x3800).w(FUNC(mephisto_state::mephisto_NMI)); // NMI enable
map(0x4000, 0x7fff).rom(); // Opening Library
map(0x4000, 0x7fff).r("cartslot", FUNC(generic_slot_device::read_rom)); // Opening Library
map(0x8000, 0xffff).rom();
}
@ -194,7 +196,7 @@ void mephisto_state::mm2_mem(address_map &map)
map(0x2800, 0x2800).w(FUNC(mephisto_state::write_lcd));
map(0x3000, 0x3000).w("board", FUNC(mephisto_board_device::led_w));
map(0x3800, 0x3800).w("board", FUNC(mephisto_board_device::mux_w));
map(0x4000, 0x7fff).rom(); // Opening Library ?
map(0x4000, 0x7fff).r("cartslot", FUNC(generic_slot_device::read_rom)); // Opening Library
map(0x8000, 0xffff).rom();
}
@ -235,6 +237,42 @@ static INPUT_PORTS_START( mephisto )
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)
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_START("KEY1_1")
PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("2") 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_START("KEY1_3")
PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("4") 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_START("KEY1_5")
PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("6") 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_START("KEY1_7")
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)
PORT_START("KEY2_1")
PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("ENT") PORT_CODE(KEYCODE_ENTER) PORT_CODE(KEYCODE_ENTER_PAD)
PORT_START("KEY2_2")
PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("BEST") PORT_CODE(KEYCODE_S)
PORT_START("KEY2_3")
PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INFO") PORT_CODE(KEYCODE_I)
PORT_START("KEY2_4")
PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("MON") PORT_CODE(KEYCODE_N)
PORT_START("KEY2_5")
PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("POS") PORT_CODE(KEYCODE_O)
PORT_START("KEY2_6")
PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("LEV") PORT_CODE(KEYCODE_L)
PORT_START("KEY2_7")
PORT_BIT(0x080, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("MEM") PORT_CODE(KEYCODE_M)
INPUT_PORTS_END
TIMER_DEVICE_CALLBACK_MEMBER(mephisto_state::update_nmi)
{
@ -265,14 +303,7 @@ void mephisto_state::machine_start()
m_lcd_shift_counter = 3;
m_allowNMI = 1;
}
MACHINE_START_MEMBER(mephisto_state,mm2)
{
mephisto_state::machine_start();
m_led7=0xff;
m_allowNMI = 0;
m_led7 = 0xff;
}
void mephisto_state::machine_reset()
@ -285,7 +316,7 @@ void mephisto_state::machine_reset()
void mephisto_state::mephisto(machine_config &config)
{
/* basic machine hardware */
M65C02(config, m_maincpu, 4915200); /* 65C02 */
M65C02(config, m_maincpu, 4.9152_MHz_XTAL); /* 65C02 */
m_maincpu->set_addrmap(AS_PROGRAM, &mephisto_state::mephisto_mem);
HC259(config, m_outlatch);
@ -305,6 +336,9 @@ void mephisto_state::mephisto(machine_config &config)
TIMER(config, "nmi_timer").configure_periodic(FUNC(mephisto_state::update_nmi), attotime::from_hz(600));
GENERIC_CARTSLOT(config, "cartslot", generic_plain_slot, "mephisto_cart");
SOFTWARE_LIST(config, "cart_list").set_original("mephisto");
MEPHISTO_SENSORS_BOARD(config, "board");
config.set_default_layout(layout_mephisto_mm2);
}
@ -313,8 +347,12 @@ void mephisto_state::rebel5(machine_config &config)
{
mephisto(config);
m_maincpu->set_clock(9.8304_MHz_XTAL / 2);
m_maincpu->set_addrmap(AS_PROGRAM, &mephisto_state::rebel5_mem);
config.device_remove("cartslot");
config.device_remove("cart_list");
config.device_remove("nmi_timer");
TIMER(config, "nmi_timer_r5").configure_periodic(FUNC(mephisto_state::update_nmi_r5), attotime::from_hz(600));
}
@ -323,9 +361,8 @@ void mephisto_state::mm2(machine_config &config)
{
mephisto(config);
m_maincpu->set_clock(3700000);
m_maincpu->set_clock(7.3728_MHz_XTAL / 2);
m_maincpu->set_addrmap(AS_PROGRAM, &mephisto_state::mm2_mem);
MCFG_MACHINE_START_OVERRIDE(mephisto_state, mm2 )
config.device_remove("nmi_timer");
TIMER(config, "irq_timer").configure_periodic(FUNC(mephisto_state::update_irq), attotime::from_hz(450));
@ -333,6 +370,12 @@ void mephisto_state::mm2(machine_config &config)
m_outlatch->q_out_cb<7>().set(FUNC(mephisto_state::write_led7)).invert();
}
void mephisto_state::bup(machine_config &config)
{
mm2(config);
config.set_default_layout(layout_mephisto_bup);
}
void mephisto_state::mm4tk(machine_config &config)
{
mephisto(config);
@ -343,45 +386,55 @@ void mephisto_state::mm4tk(machine_config &config)
ROM_START(rebel5)
ROM_REGION(0x10000,"maincpu",0)
ROM_LOAD("rebel5.rom", 0x8000, 0x8000, CRC(8d02e1ef) SHA1(9972c75936613bd68cfd3fe62bd222e90e8b1083))
ROM_DEFAULT_BIOS("v2")
ROM_SYSTEM_BIOS( 0, "v1", "V1" )
ROMX_LOAD("rebel5_v1.rom", 0x8000, 0x8000, CRC(8d02e1ef) SHA1(9972c75936613bd68cfd3fe62bd222e90e8b1083), ROM_BIOS(0))
ROM_SYSTEM_BIOS( 1, "v2", "V2" )
ROMX_LOAD("rebel5_v2.rom", 0x8000, 0x8000, CRC(17232752) SHA1(3cd6893c0071f3dc02785bf99f1950eed81eba39), ROM_BIOS(1))
ROM_END
ROM_START(mm2)
ROM_REGION(0x10000,"maincpu",0)
ROM_LOAD("mm2_1.bin", 0x8000, 0x4000, CRC(e2daac82) SHA1(c9fa59ca92362f8ee770733073bfa2ab8c7904ad))
ROM_LOAD("mm2_2.bin", 0xc000, 0x4000, CRC(5e296939) SHA1(badd2a377259cf738cd076d8fb245c3dc284c24d))
ROM_DEFAULT_BIOS("v2a")
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_END
ROM_START(bup)
ROM_REGION(0x10000,"maincpu",0)
ROM_DEFAULT_BIOS("v2")
ROM_SYSTEM_BIOS( 0, "v1", "V1" )
ROMX_LOAD("bup_v1_1.bin", 0x8000, 0x4000, CRC(e1e9625a) SHA1(8a757e28b7afca2a092f8ff419087e06b07b743e), ROM_BIOS(0))
ROMX_LOAD("bup_v1_2.bin", 0xc000, 0x4000, CRC(708338ea) SHA1(d617c4aa2161865a22b4b0646ba793f8a1fda863), ROM_BIOS(0))
ROM_SYSTEM_BIOS( 1, "v2", "V2" )
ROMX_LOAD("bup_v2_1.bin", 0x8000, 0x4000, CRC(e1e9625a) SHA1(8a757e28b7afca2a092f8ff419087e06b07b743e), ROM_BIOS(1))
ROMX_LOAD("bup_v2_2.bin", 0xc000, 0x4000, CRC(6db30b80) SHA1(df4b379c4e916dff6b4110ec9c3591a9620c3424), ROM_BIOS(1))
ROM_END
ROM_START(mm4)
ROM_REGION(0x10000,"maincpu",0)
ROM_LOAD("mephisto4.rom", 0x8000, 0x8000, CRC(f68a4124) SHA1(d1d03a9aacc291d5cb720d2ee2a209eeba13a36c))
ROM_SYSTEM_BIOS( 0, "none", "No Opening Library" )
ROM_SYSTEM_BIOS( 1, "hg440", "HG440 Opening Library" )
ROMX_LOAD( "hg440.rom", 0x4000, 0x4000, CRC(81ffcdfd) SHA1(b0f7bcc11d1e821daf92cde31e3446c8be0bbe19), ROM_BIOS(1))
ROM_END
ROM_START(mm4tk)
ROM_REGION(0x10000,"maincpu",0)
ROM_LOAD("mm4tk.rom", 0x8000, 0x8000, CRC(51cb36a4) SHA1(9e184b4e85bb721e794b88d8657ae8d2ff5a24af))
ROM_SYSTEM_BIOS( 0, "none", "No Opening Library" )
ROM_SYSTEM_BIOS( 1, "hg440", "HG440 Opening Library" )
ROMX_LOAD( "hg440.rom", 0x4000, 0x4000, CRC(81ffcdfd) SHA1(b0f7bcc11d1e821daf92cde31e3446c8be0bbe19), ROM_BIOS(1))
ROM_END
ROM_START(mm5)
ROM_REGION(0x10000,"maincpu",0)
ROM_LOAD("mephisto5.rom", 0x8000, 0x8000, CRC(89c3d9d2) SHA1(77cd6f8eeb03c713249db140d2541e3264328048))
ROM_SYSTEM_BIOS( 0, "none", "No Opening Library" )
ROM_SYSTEM_BIOS( 1, "hg550", "HG550 Opening Library" )
ROMX_LOAD("hg550.rom", 0x4000, 0x4000, CRC(0359f13d) SHA1(833cef8302ad8d283d3f95b1d325353c7e3b8614), ROM_BIOS(1))
ROM_END
ROM_START(mm50)
ROM_REGION(0x10000,"maincpu",0)
ROM_LOAD("mm50.rom", 0x8000, 0x8000, CRC(fcfa7e6e) SHA1(afeac3a8c957ba58cefaa27b11df974f6f2066da))
ROM_SYSTEM_BIOS( 0, "none", "No Opening Library" )
ROM_SYSTEM_BIOS( 1, "hg550", "HG550 Opening Library" )
ROMX_LOAD("hg550.rom", 0x4000, 0x4000, CRC(0359f13d) SHA1(833cef8302ad8d283d3f95b1d325353c7e3b8614), ROM_BIOS(1))
ROM_DEFAULT_BIOS("v51")
ROM_SYSTEM_BIOS( 0, "v50", "V5.0" )
ROMX_LOAD("mm50.rom", 0x8000, 0x8000, CRC(fcfa7e6e) SHA1(afeac3a8c957ba58cefaa27b11df974f6f2066da), ROM_BIOS(0))
ROM_SYSTEM_BIOS( 1, "v51", "V5.1" )
ROMX_LOAD("mephisto5.rom", 0x8000, 0x8000, CRC(89c3d9d2) SHA1(77cd6f8eeb03c713249db140d2541e3264328048), ROM_BIOS(1))
ROM_END
@ -393,8 +446,8 @@ 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( 1987, mm4tk, mm4, 0, mm4tk, mephisto, mephisto_state, empty_init, "hack", "Mephisto MM IV (TurboKit + HG440)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
CONS( 1990, mm5, mm4, 0, mephisto, mephisto, mephisto_state, empty_init, "Hegener & Glaser", "Mephisto MM V (V5.1)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
CONS( 1990, mm50, mm4, 0, mephisto, mephisto, mephisto_state, empty_init, "Hegener & Glaser", "Mephisto MM V (V5.0)", 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 )

View File

@ -0,0 +1,566 @@
<?xml version="1.0"?>
<mamelayout version="2">
<!-- define elements -->
<!-- our digit element is bright-on-dark, this means the lcd panel is the wrong colour here -->
<element name="digit" defstate="0">
<led7seg>
<color red="1" green="1" blue="1" />
</led7seg>
</element>
<element name="led" defstate="0">
<disk state="0">
<color red="0.20" green="0.0" blue="0.0" />
</disk>
<disk state="1">
<color red="0.95" green="0.0" blue="0.0" />
</disk>
</element>
<element name="hlb" defstate="0">
<rect state="0">
<bounds x="0.0" y="0.0" width="1.0" height="1.0" />
<color red="0.4" green="0.4" blue="0.4" />
</rect>
<rect state="1">
<bounds x="0.0" y="0.0" width="1.0" height="1.0" />
<color red="0.4" green="0.4" blue="0.4" />
</rect>
</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>
<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>
<!-- 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>
<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="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="10" y="0" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="20" y="0" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="30" y="0" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="40" y="0" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="50" y="0" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="60" y="0" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="70" y="0" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="0" y="10" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="10" y="10" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="20" y="10" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="30" y="10" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="40" y="10" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="50" y="10" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="60" y="10" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="70" y="10" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="0" y="20" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="10" y="20" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="20" y="20" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="30" y="20" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="40" y="20" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="50" y="20" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="60" y="20" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="70" y="20" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="0" y="30" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="10" y="30" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="20" y="30" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="30" y="30" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="40" y="30" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="50" y="30" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="60" y="30" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="70" y="30" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="0" y="40" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="10" y="40" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="20" y="40" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="30" y="40" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="40" y="40" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="50" y="40" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="60" y="40" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="70" y="40" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="0" y="50" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="10" y="50" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="20" y="50" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="30" y="50" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="40" y="50" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="50" y="50" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="60" y="50" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="70" y="50" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="0" y="60" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="10" y="60" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="20" y="60" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="30" y="60" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="40" y="60" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="50" y="60" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="60" y="60" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="70" y="60" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="0" y="70" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="10" y="70" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="20" y="70" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="30" y="70" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="40" y="70" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="50" y="70" width="10" height="10" /></bezel>
<bezel element="cblack"><bounds x="60" y="70" width="10" height="10" /></bezel>
<bezel element="cwhite"><bounds x="70" y="70" width="10" height="10" /></bezel>
<!-- chessboard leds -->
<repeat count="8">
<param name="x" start="8.2" increment="10" />
<param name="la" start="0" increment="1" />
<param name="lb" start="8" increment="1" />
<param name="lc" start="16" increment="1" />
<param name="ld" start="24" increment="1" />
<param name="le" start="32" increment="1" />
<param name="lf" start="40" increment="1" />
<param name="lg" start="48" increment="1" />
<param name="lh" start="56" increment="1" />
<bezel name="led~la~" element="led"><bounds x="~x~" y="78.3" width="1.5" height="1.5" /></bezel>
<bezel name="led~lb~" element="led"><bounds x="~x~" y="68.3" width="1.5" height="1.5" /></bezel>
<bezel name="led~lc~" element="led"><bounds x="~x~" y="58.3" width="1.5" height="1.5" /></bezel>
<bezel name="led~ld~" element="led"><bounds x="~x~" y="48.3" width="1.5" height="1.5" /></bezel>
<bezel name="led~le~" element="led"><bounds x="~x~" y="38.3" width="1.5" height="1.5" /></bezel>
<bezel name="led~lf~" element="led"><bounds x="~x~" y="28.3" width="1.5" height="1.5" /></bezel>
<bezel name="led~lg~" element="led"><bounds x="~x~" y="18.3" width="1.5" height="1.5" /></bezel>
<bezel name="led~lh~" element="led"><bounds x="~x~" y="8.3" width="1.5" height="1.5" /></bezel>
</repeat>
<!-- sensors, pieces -->
<repeat count="8">
<param name="y" start="0" increment="10" />
<param name="i" start="8" increment="-1" />
<bezel element="hlbb" inputtag="board:board:RANK.~i~" inputmask="0x01"><bounds x="0" y="~y~" width="10" height="10" /><color alpha="0.04" /></bezel>
<bezel element="hlbb" inputtag="board:board:RANK.~i~" inputmask="0x02"><bounds x="10" y="~y~" width="10" height="10" /><color alpha="0.04" /></bezel>
<bezel element="hlbb" inputtag="board:board:RANK.~i~" inputmask="0x04"><bounds x="20" y="~y~" width="10" height="10" /><color alpha="0.04" /></bezel>
<bezel element="hlbb" inputtag="board:board:RANK.~i~" inputmask="0x08"><bounds x="30" y="~y~" width="10" height="10" /><color alpha="0.04" /></bezel>
<bezel element="hlbb" inputtag="board:board:RANK.~i~" inputmask="0x10"><bounds x="40" y="~y~" width="10" height="10" /><color alpha="0.04" /></bezel>
<bezel element="hlbb" inputtag="board:board:RANK.~i~" inputmask="0x20"><bounds x="50" y="~y~" width="10" height="10" /><color alpha="0.04" /></bezel>
<bezel element="hlbb" inputtag="board:board:RANK.~i~" inputmask="0x40"><bounds x="60" y="~y~" width="10" height="10" /><color alpha="0.04" /></bezel>
<bezel element="hlbb" inputtag="board:board:RANK.~i~" inputmask="0x80"><bounds x="70" y="~y~" width="10" height="10" /><color alpha="0.04" /></bezel>
<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: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: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:board:SPAWN" inputmask="0x0001"><bounds x="1" y="23" width="4" height="4" /><color alpha="0.25" /></bezel>
<bezel element="hlub" inputtag="board:board:SPAWN" inputmask="0x0002"><bounds x="1" y="27" width="4" height="4" /><color alpha="0.25" /></bezel>
<bezel element="hlub" inputtag="board:board:SPAWN" inputmask="0x0004"><bounds x="1" y="31" width="4" height="4" /><color alpha="0.25" /></bezel>
<bezel element="hlub" inputtag="board:board:SPAWN" inputmask="0x0008"><bounds x="5" y="23" width="4" height="4" /><color alpha="0.25" /></bezel>
<bezel element="hlub" inputtag="board:board:SPAWN" inputmask="0x0010"><bounds x="5" y="27" width="4" height="4" /><color alpha="0.25" /></bezel>
<bezel element="hlub" inputtag="board:board:SPAWN" inputmask="0x0020"><bounds x="5" y="31" width="4" height="4" /><color alpha="0.25" /></bezel>
<bezel element="hlub" inputtag="board:board:SPAWN" inputmask="0x0040"><bounds x="1" y="36" width="4" height="4" /><color alpha="0.25" /></bezel>
<bezel element="hlub" inputtag="board:board:SPAWN" inputmask="0x0080"><bounds x="1" y="40" width="4" height="4" /><color alpha="0.25" /></bezel>
<bezel element="hlub" inputtag="board:board:SPAWN" inputmask="0x0100"><bounds x="1" y="44" width="4" height="4" /><color alpha="0.25" /></bezel>
<bezel element="hlub" inputtag="board:board:SPAWN" inputmask="0x0200"><bounds x="5" y="36" width="4" height="4" /><color alpha="0.25" /></bezel>
<bezel element="hlub" inputtag="board:board:SPAWN" inputmask="0x0400"><bounds x="5" y="40" width="4" height="4" /><color alpha="0.25" /></bezel>
<bezel element="hlub" inputtag="board: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: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: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: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: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: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>
<!-- 7seg panel -->
<group name="panel1">
<bezel name="digit0" element="digit"><bounds x="0" y="0" width="10" height="15" /></bezel>
<bezel name="digit1" element="digit"><bounds x="10" y="0" width="10" height="15" /></bezel>
<bezel name="digit2" element="digit"><bounds x="20" y="0" width="10" height="15" /></bezel>
<bezel name="digit3" element="digit"><bounds x="30" y="0" width="10" height="15" /></bezel>
</group>
<!-- led panel -->
<element name="black"><rect><color red="0" green="0" blue="0" /></rect></element>
<element name="white2"><rect><color red="0.8" green="0.8" blue="0.8" /></rect></element>
<element name="dblack"><disk><color red="0" green="0" blue="0" /></disk></element>
<element name="dwhite"><disk><color red="0.8" green="0.8" blue="0.8" /></disk></element>
<element name="led_err"> <text string="Err" align="1"><color red="0.8" green="0.8" blue="0.8" /></text> </element>
<element name="led_end"> <text string="End" align="1"> <color red="0.8" green="0.8" blue="0.8" /></text> </element>
<element name="led_plus"><text string="+" align="1"> <color red="0.8" green="0.8" blue="0.8" /></text> </element>
<group name="panel2">
<bounds x="69.1" y="89.9" width="29" height="1.5" />
<bezel element="dwhite"><bounds x="70.7" y="89.9" width="1.4" height="1.4" /></bezel>
<bezel element="dblack"><bounds x="70.8" y="90.0" width="1.2" height="1.2" /></bezel>
<bezel element="dwhite"><bounds x="71.25" y="90.45" width="0.4" height="0.4" /></bezel>
<bezel element="led_end"> <bounds x="75.7" y="89.9" width="3.2" height="1.5" /></bezel>
<bezel element="led_err"> <bounds x="80.7" y="89.9" width="3.2" height="1.5" /></bezel>
<bezel element="led_plus"> <bounds x="86" y="89.9" width="2.2" height="1.5" /></bezel>
<bezel element="white2"><bounds x="90.9" y="90.0" width="1.2" height="1.2" /></bezel>
<bezel element="black"><bounds x="91.05" y="90.15" width="0.9" height="0.9" /></bezel>
<bezel element="white2"><bounds x="95.7" y="90.0" width="1.2" height="1.2" /></bezel>
<bezel name="led105" element="led"> <bounds x="69.1" y="90" width="1.3" height="1.3" /> </bezel>
<bezel name="led104" element="led"> <bounds x="74.1" y="90" width="1.3" height="1.3" /> </bezel>
<bezel name="led103" element="led"> <bounds x="79.1" y="90" width="1.3" height="1.3" /> </bezel>
<bezel name="led102" element="led"> <bounds x="84.1" y="90" width="1.3" height="1.3" /> </bezel>
<bezel name="led100" element="led"> <bounds x="89.1" y="90" width="1.3" height="1.3" /> </bezel>
<bezel name="led101" element="led"> <bounds x="94.1" y="90" width="1.3" height="1.3" /> </bezel>
</group>
<!-- 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="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>
<group name="buttons">
<bounds x="69" y="93" width="29" height="14" />
<bezel element="gray"><bounds x="69" y="93" width="4" height="4" /></bezel>
<bezel element="gray"><bounds x="74" y="93" width="4" height="4" /></bezel>
<bezel element="gray"><bounds x="79" y="93" width="4" height="4" /></bezel>
<bezel element="gray"><bounds x="84" y="93" width="4" height="4" /></bezel>
<bezel element="gray"><bounds x="89" y="93" width="4" height="4" /></bezel>
<bezel element="gray"><bounds x="94" y="93" width="4" height="4" /></bezel>
<bezel element="gray"><bounds x="69" y="98" width="4" height="4" /></bezel>
<bezel element="gray"><bounds x="74" y="98" width="4" height="4" /></bezel>
<bezel element="gray"><bounds x="79" y="98" width="4" height="4" /></bezel>
<bezel element="gray"><bounds x="84" y="98" width="4" height="4" /></bezel>
<bezel element="gray"><bounds x="89" y="98" width="4" height="4" /></bezel>
<bezel element="gray"><bounds x="94" y="98" width="4" height="4" /></bezel>
<bezel element="gray"><bounds x="69" y="103" width="4" height="4" /></bezel>
<bezel element="gray"><bounds x="74" y="103" width="4" height="4" /></bezel>
<bezel element="gray"><bounds x="79" y="103" width="4" height="4" /></bezel>
<bezel element="gray"><bounds x="84" y="103" width="4" height="4" /></bezel>
<bezel element="gray"><bounds x="89" y="103" width="4" height="4" /></bezel>
<bezel element="gray"><bounds x="94" y="103" width="4" height="4" /></bezel>
<bezel element="text_b1"> <bounds x="70.9" y="94" width="2.1" height="2.27" /></bezel>
<bezel element="text_b2"> <bounds x="75.9" y="94" width="2.1" height="2.27" /></bezel>
<bezel element="text_b3"> <bounds x="80.9" y="94" width="2.1" height="2.27" /></bezel>
<bezel element="text_b4"> <bounds x="85.9" y="94" width="2.1" height="2.27" /></bezel>
<bezel element="text_b5"> <bounds x="90.9" y="94" width="2.1" height="2.27" /></bezel>
<bezel element="text_b6"> <bounds x="95.9" y="94" width="2.1" height="2.27" /></bezel>
<bezel element="text_p6" ><bounds x="69.2" y="94.05" width="2.1" height="2.1" /></bezel>
<bezel element="text_p5" ><bounds x="74.2" y="94.05" width="2.1" height="2.1" /></bezel>
<bezel element="text_p4" ><bounds x="79.2" y="94.05" width="2.1" height="2.1" /></bezel>
<bezel element="text_p3" ><bounds x="84.2" y="94.05" width="2.1" height="2.1" /></bezel>
<bezel element="text_p2" ><bounds x="89.2" y="94.05" width="2.1" height="2.1" /></bezel>
<bezel element="text_p1" ><bounds x="94.2" y="94.05" width="2.1" height="2.1" /></bezel>
<bezel element="text_info"><bounds x="69.3" y="99" width="3.67" height="2.2" /></bezel>
<bezel element="text_pos"><bounds x="74.3" y="99" width="3.67" height="2.2" /></bezel>
<bezel element="text_lev"><bounds x="79.3" y="99" width="3.67" height="2.2" /></bezel>
<bezel element="text_mem"><bounds x="84.3" y="99" width="3.67" height="2.2" /></bezel>
<bezel element="text_cl"><bounds x="89.3" y="99" width="3.67" height="2.2" /></bezel>
<bezel element="text_ent"><bounds x="94.3" y="99" width="3.67" height="2.2" /></bezel>
<bezel element="text_res"><bounds x="69.3" y="104" width="3.67" height="2.2" /></bezel>
<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="95.35" y="104.5" width="1.3" height="1.3" /></bezel>
<bezel element="keys" inputtag="KEY1_0" inputmask="0x80"> <!-- 1 -->
<bounds x="69" y="93" width="4" height="4" /><color alpha="0.25" />
</bezel>
<bezel element="keys" inputtag="KEY1_1" inputmask="0x80"> <!-- 2 -->
<bounds x="74" y="93" width="4" height="4" /><color alpha="0.25" />
</bezel>
<bezel element="keys" inputtag="KEY1_2" inputmask="0x80"> <!-- 3 -->
<bounds x="79" y="93" width="4" height="4" /><color alpha="0.25" />
</bezel>
<bezel element="keys" inputtag="KEY1_3" inputmask="0x80"> <!-- 4 -->
<bounds x="84" y="93" width="4" height="4" /><color alpha="0.25" />
</bezel>
<bezel element="keys" inputtag="KEY1_4" inputmask="0x80"> <!-- 5 -->
<bounds x="89" y="93" width="4" height="4" /><color alpha="0.25" />
</bezel>
<bezel element="keys" inputtag="KEY1_5" inputmask="0x80"> <!-- 6 -->
<bounds x="94" y="93" width="4" height="4" /><color alpha="0.25" />
</bezel>
<bezel element="keys" inputtag="KEY2_3" inputmask="0x80"> <!-- INFO -->
<bounds x="69" y="98" width="4" height="4" /><color alpha="0.25" />
</bezel>
<bezel element="keys" inputtag="KEY2_5" inputmask="0x80"> <!-- POS -->
<bounds x="74" y="98" width="4" height="4" /><color alpha="0.25" />
</bezel>
<bezel element="keys" inputtag="KEY2_6" inputmask="0x80"> <!-- LEV -->
<bounds x="79" y="98" width="4" height="4" /><color alpha="0.25" />
</bezel>
<bezel element="keys" inputtag="KEY2_7" inputmask="0x80"> <!-- MEM -->
<bounds x="84" y="98" width="4" height="4" /><color alpha="0.25" />
</bezel>
<bezel element="keys" inputtag="KEY2_0" inputmask="0x80"> <!-- CL -->
<bounds x="89" y="98" width="4" height="4" /><color alpha="0.25" />
</bezel>
<bezel element="keys" inputtag="KEY2_1" inputmask="0x80"> <!-- ENT -->
<bounds x="94" y="98" width="4" height="4" /><color alpha="0.25" />
</bezel>
<bezel element="keys" inputtag="KEY2_2" inputmask="0x80"> <!-- BEST -->
<bounds x="79" y="103" width="4" height="4" /><color alpha="0.25" />
</bezel>
<bezel element="keys" inputtag="KEY2_4" inputmask="0x80"> <!-- MON -->
<bounds x="84" y="103" width="4" height="4" /><color alpha="0.25" />
</bezel>
<bezel element="keys" inputtag="KEY1_7" inputmask="0x80"> <!-- BLACK -->
<bounds x="89" y="103" width="4" height="4" /><color alpha="0.25" />
</bezel>
<bezel element="keys" inputtag="KEY1_6" inputmask="0x80"> <!-- WHITE -->
<bounds x="94" y="103" width="4" height="4" /><color alpha="0.25" />
</bezel>
</group>
<!-- build screen -->
<view name="Internal Layout">
<bounds left="0" right="101" top="0" bottom="106.5" />
<bezel element="cblack"><bounds x="14" y="0" width="87" height="87" /></bezel>
<bezel element="cwhite"><bounds x="17" y="2" width="81" height="81" /></bezel>
<group ref="panel1"><bounds x="37.5" y="91" width="23" height="8" /></group>
<group ref="panel2"><bounds x="67.5" y="88.25" width="29" height="1.5" /></group>
<group ref="buttons"><bounds x="67.5" y="91" width="29" height="14" /></group>
<group ref="sb_board"><bounds x="17.5" y="2.5" width="80" height="80" /></group>
<group ref="sb_ui"><bounds x="1.5" y="3" width="10" height="80" /></group>
<!-- chessboard coords -->
<bezel element="text_8"><bounds x="14.7" y="7" width="2" height="2" /></bezel>
<bezel element="text_7"><bounds x="14.7" y="17" width="2" height="2" /></bezel>
<bezel element="text_6"><bounds x="14.7" y="27" width="2" height="2" /></bezel>
<bezel element="text_5"><bounds x="14.7" y="37" width="2" height="2" /></bezel>
<bezel element="text_4"><bounds x="14.7" y="47" width="2" height="2" /></bezel>
<bezel element="text_3"><bounds x="14.7" y="57" width="2" height="2" /></bezel>
<bezel element="text_2"><bounds x="14.7" y="67" width="2" height="2" /></bezel>
<bezel element="text_1"><bounds x="14.7" y="77" width="2" height="2" /></bezel>
<bezel element="text_a"><bounds x="21.5" y="84" width="2" height="2" /></bezel>
<bezel element="text_b"><bounds x="31.5" y="84" width="2" height="2" /></bezel>
<bezel element="text_c"><bounds x="41.5" y="84" width="2" height="2" /></bezel>
<bezel element="text_d"><bounds x="51.5" y="84" width="2" height="2" /></bezel>
<bezel element="text_e"><bounds x="61.5" y="84" width="2" height="2" /></bezel>
<bezel element="text_f"><bounds x="71.5" y="84" width="2" height="2" /></bezel>
<bezel element="text_g"><bounds x="81.5" y="84" width="2" height="2" /></bezel>
<bezel element="text_h"><bounds x="91.5" y="84" width="2" height="2" /></bezel>
</view>
</mamelayout>

View File

@ -21389,12 +21389,12 @@ meijinsn // (c) 1986 SNK
mekd2 // 1977 Motorola Evaluation Kit
@source:mephisto.cpp
mm2 // Mephisto 2
mm4 // Mephisto 4
mm4tk // Mephisto 4 Turbo Kit
mm5 // Mephisto 5.1 ROM
mm50 // Mephisto 5.0 ROM
rebel5 // Mephisto 5
mm2 // Mephisto MM II
bup // Mephisto B&P
mm4tk // Mephisto MM IV (Turbo Kit)
mm4 // Mephisto MM IV
mm5 // Mephisto MM V
rebel5 // Mephisto Rebell 5.0
@source:mephisto_montec.cpp
mondial // 1985 Mephisto Mondial