New working machines

--------------------
Micro Chess [hap, Berger, Achim]
This commit is contained in:
hap 2020-07-15 21:08:04 +02:00
parent fc2fa4aec7
commit ddd5408ffe
8 changed files with 760 additions and 10 deletions

View File

@ -3082,6 +3082,7 @@ files {
MAME_DIR .. "src/mame/drivers/novag_cforte.cpp", MAME_DIR .. "src/mame/drivers/novag_cforte.cpp",
MAME_DIR .. "src/mame/drivers/novag_const.cpp", MAME_DIR .. "src/mame/drivers/novag_const.cpp",
MAME_DIR .. "src/mame/drivers/novag_diablo.cpp", MAME_DIR .. "src/mame/drivers/novag_diablo.cpp",
MAME_DIR .. "src/mame/drivers/novag_micro.cpp",
MAME_DIR .. "src/mame/drivers/novag_micro2.cpp", MAME_DIR .. "src/mame/drivers/novag_micro2.cpp",
MAME_DIR .. "src/mame/drivers/novag_savant.cpp", MAME_DIR .. "src/mame/drivers/novag_savant.cpp",
MAME_DIR .. "src/mame/drivers/novag_sexpert.cpp", MAME_DIR .. "src/mame/drivers/novag_sexpert.cpp",

View File

@ -0,0 +1,246 @@
// license:BSD-3-Clause
// copyright-holders:hap
// thanks-to:Berger
/******************************************************************************
Novag Micro Chess
It's a portable chesscomputer with sensory board. The MCU says "(C) CAL R & O3",
though the program is supposedly by David Kittinger?
Hardware notes:
- Mostek 3875/42 (4KB ROM, 64 bytes executable RAM)
- buzzer, button sensors chessboard, 16+4 leds
TODO:
- memory switch? probably a hardware thing to power only the MCU
******************************************************************************/
#include "emu.h"
#include "cpu/f8/f8.h"
#include "machine/f3853.h"
#include "machine/sensorboard.h"
#include "sound/dac.h"
#include "sound/volt_reg.h"
#include "video/pwm.h"
#include "speaker.h"
// internal artwork
#include "novag_micro.lh" // clickable
namespace {
class micro_state : public driver_device
{
public:
micro_state(const machine_config &mconfig, device_type type, const char *tag) :
driver_device(mconfig, type, tag),
m_maincpu(*this, "maincpu"),
m_display(*this, "display"),
m_board(*this, "board"),
m_dac(*this, "dac"),
m_inputs(*this, "IN.0")
{ }
void micro(machine_config &config);
protected:
virtual void machine_start() override;
private:
// devices/pointers
required_device<cpu_device> m_maincpu;
required_device<pwm_display_device> m_display;
required_device<sensorboard_device> m_board;
required_device<dac_bit_interface> m_dac;
required_ioport m_inputs;
// address maps
void main_map(address_map &map);
void main_io(address_map &map);
// I/O handlers
void update_display();
void input_w(u8 data);
u8 input_r();
void control_w(u8 data);
u8 control_r();
void led_w(u8 data);
u8 m_led_data = 0;
u8 m_control = 0;
u8 m_inp_mux = 0;
};
void micro_state::machine_start()
{
// register for savestates
save_item(NAME(m_led_data));
save_item(NAME(m_control));
save_item(NAME(m_inp_mux));
// game relies on RAM filled with FF at power-on
for (int i = 0; i < 0x40; i++)
m_maincpu->space(AS_PROGRAM).write_byte(i + 0xfc0, 0xff);
}
/******************************************************************************
I/O
******************************************************************************/
void micro_state::update_display()
{
u8 sel = (m_control << 2 & 0x3c) | (m_led_data >> 6 & 3);
m_display->matrix(sel, m_led_data & 0x3f);
}
void micro_state::input_w(u8 data)
{
// P00-P01: MK3875 doesn't have these pins
// P02-P07: input mux part
m_inp_mux = data;
}
u8 micro_state::input_r()
{
u8 data = 0;
// P10-P17: multiplexed inputs
// read buttons
if (m_control & 0x10)
data |= m_inputs->read();
// read chessboard
u8 cb_mux = (m_inp_mux & 0xfc) | (m_control >> 5 & 3);
cb_mux = bitswap<8>(cb_mux,4,5,6,7,1,0,3,2);
for (int i = 0; i < 8; i++)
if (BIT(cb_mux, i))
data |= m_board->read_file(i);
return bitswap<8>(data,4,5,6,7,3,2,1,0);
}
void micro_state::control_w(u8 data)
{
// P40: led select part
// P41: white led
// P42: ?
// P43: black led
// P44-P46: input mux part
m_control = data;
update_display();
// P47: speaker out
m_dac->write(BIT(data, 7));
}
u8 micro_state::control_r()
{
return m_control;
}
void micro_state::led_w(u8 data)
{
// P50-P55: led data
// P56,P57: led select part
m_led_data = data;
update_display();
}
/******************************************************************************
Address Maps
******************************************************************************/
void micro_state::main_map(address_map &map)
{
map.global_mask(0xfff);
map(0x0000, 0x0fbf).rom();
map(0x0fc0, 0x0fff).ram();
}
void micro_state::main_io(address_map &map)
{
map(0x00, 0x00).w(FUNC(micro_state::input_w));
map(0x01, 0x01).r(FUNC(micro_state::input_r)).nopw();
map(0x04, 0x07).rw("psu", FUNC(f38t56_device::read), FUNC(f38t56_device::write));
}
/******************************************************************************
Input Ports
******************************************************************************/
static INPUT_PORTS_START( micro )
PORT_START("IN.0")
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_5) PORT_CODE(KEYCODE_5_PAD) PORT_NAME("Level / Bishop")
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_6) PORT_CODE(KEYCODE_6_PAD) PORT_NAME("Sound / Queen")
PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_7) PORT_CODE(KEYCODE_7_PAD) PORT_NAME("Take Back / King")
PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_8) PORT_CODE(KEYCODE_8_PAD) PORT_NAME("Go")
PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_4) PORT_CODE(KEYCODE_4_PAD) PORT_NAME("New Game / Knight")
PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_3) PORT_CODE(KEYCODE_3_PAD) PORT_NAME("Set Up / Rook")
PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_2) PORT_CODE(KEYCODE_2_PAD) PORT_NAME("Verify / Pawn")
PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_1) PORT_CODE(KEYCODE_1_PAD) PORT_NAME("B/W")
INPUT_PORTS_END
/******************************************************************************
Machine Configs
******************************************************************************/
void micro_state::micro(machine_config &config)
{
// basic machine hardware
F8(config, m_maincpu, 4500000/2); // approximation
m_maincpu->set_addrmap(AS_PROGRAM, &micro_state::main_map);
m_maincpu->set_addrmap(AS_IO, &micro_state::main_io);
f38t56_device &psu(F38T56(config, "psu", 4500000/2));
psu.read_a().set(FUNC(micro_state::control_r));
psu.write_a().set(FUNC(micro_state::control_w));
psu.write_b().set(FUNC(micro_state::led_w));
SENSORBOARD(config, m_board).set_type(sensorboard_device::BUTTONS);
m_board->init_cb().set(m_board, FUNC(sensorboard_device::preset_chess));
m_board->set_delay(attotime::from_msec(150));
// video hardware
PWM_DISPLAY(config, m_display).set_size(6, 6);
config.set_default_layout(layout_novag_micro);
// 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);
}
/******************************************************************************
ROM Definitions
******************************************************************************/
ROM_START( nmicro )
ROM_REGION( 0x1000, "maincpu", 0 )
ROM_LOAD("3875_42_mk17121n", 0x0000, 0x1000, CRC(f21189f7) SHA1(ba346177eaeddc87a03b1103f0299b5bcd4b6c27) )
ROM_END
} // anonymous namespace
/******************************************************************************
Drivers
******************************************************************************/
// YEAR NAME PARENT CMP MACHINE INPUT STATE INIT COMPANY, FULLNAME, FLAGS
CONS( 1981, nmicro, 0, 0, micro, micro, micro_state, empty_init, "Novag", "Micro Chess", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )

View File

@ -7,18 +7,18 @@ Novag Micro II (model 821)
This program was used in several Novag chesscomputers: This program was used in several Novag chesscomputers:
- Novag Micro II (1st use) - Novag Micro II (1st use)
- Novag Micro III
- Novag Presto - Novag Presto
- Novag Octo - Novag Octo
suspected, to be confirmed: suspected, to be confirmed:
- Novag Micro III
- Novag Allegro - Novag Allegro
- Novag Piccolo - Novag Piccolo
- Novag Alto - Novag Alto
Hardware notes: Hardware notes:
Micro II: Micro II, Micro III(same pcb):
- Mitsubishi M5L8049-079P-6, 6MHz XTAL - Mitsubishi M5L8049-079P-6, 6MHz XTAL
- buzzer, 20 leds, 8*8 chessboard buttons - buzzer, 20 leds, 8*8 chessboard buttons
@ -31,7 +31,7 @@ Octo (listed differences):
- speaker circuit is a bit different, not sure why - speaker circuit is a bit different, not sure why
Note that even though the MCUs are different, internal ROM contents is Note that even though the MCUs are different, internal ROM contents is
identical for Micro II, Presto, Octo. identical for Micro II/III, Presto, Octo.
TODO: TODO:
- controls are too sensitive, is there a bug in the CPU core timer emulation? - controls are too sensitive, is there a bug in the CPU core timer emulation?
@ -222,7 +222,7 @@ void micro2_state::micro2(machine_config &config)
ROM_START( nmicro2 ) ROM_START( nmicro2 )
ROM_REGION( 0x0800, "maincpu", 0 ) ROM_REGION( 0x0800, "maincpu", 0 )
ROM_LOAD("8049_8210", 0x0000, 0x0800, CRC(29a0eb4c) SHA1(e058d6018e53ddcaa3b5ec25b33b8bff091b04db) ) ROM_LOAD("8049_8210.u1", 0x0000, 0x0800, CRC(29a0eb4c) SHA1(e058d6018e53ddcaa3b5ec25b33b8bff091b04db) )
ROM_END ROM_END
} // anonymous namespace } // anonymous namespace

View File

@ -58,9 +58,11 @@ private:
output_finder<> m_battery; output_finder<> m_battery;
required_ioport_array<4> m_inputs; required_ioport_array<4> m_inputs;
// address maps
void main_map(address_map &map); void main_map(address_map &map);
void main_io(address_map &map); void main_io(address_map &map);
// I/O handlers
template<int N> void lcd_output_w(u64 data); template<int N> void lcd_output_w(u64 data);
void lcd_data_w(u8 data); void lcd_data_w(u8 data);

View File

@ -3,6 +3,16 @@
// thanks-to:Berger, Achim // thanks-to:Berger, Achim
/****************************************************************************** /******************************************************************************
Hardware notes:
- Synertek 6502A @ ~1.1MHz
- Synertek 6522 VIA
- 2*4KB ROM(Synertek 2332), 2KB RAM(4*M5L2114LP)
- 256 bytes PROM(MMI 6336-1J), 256x4 VRAM(2101-1), RF video
- MM74C923N keyboard encoder, 20 buttons
- tape deck with microphone
- 4-digit 7seg display
TODO: WIP TODO: WIP
******************************************************************************/ ******************************************************************************/
@ -220,21 +230,19 @@ void intchess_state::intchess(machine_config &config)
/****************************************************************************** /******************************************************************************
ROM Definitions ROM Definitions
******************************************************************************/ ******************************************************************************/
ROM_START( intchess ) ROM_START( intchess )
ROM_REGION( 0x10000, "maincpu", 0 ) ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD("lo.bin", 0xc000, 0x1000, CRC(eef04467) SHA1(5bdcb8d596b91aa06c6ef1ed53ef14d0d13f4194) ) // 2332 ROM_LOAD("c45015_ytv-lrom.u9", 0xc000, 0x1000, CRC(eef04467) SHA1(5bdcb8d596b91aa06c6ef1ed53ef14d0d13f4194) ) // 2332
ROM_LOAD("hi.bin", 0xd000, 0x1000, CRC(7e6f85b4) SHA1(4cd15257eae04067160026f9a062a28581f46227) ) // " ROM_LOAD("c45016_ytv-hrom.u8", 0xd000, 0x1000, CRC(7e6f85b4) SHA1(4cd15257eae04067160026f9a062a28581f46227) ) // "
ROM_REGION( 0x100, "gfx", 0 ) ROM_REGION( 0x100, "gfx", 0 )
ROM_LOAD( "prom.bin", 0x000, 0x100, CRC(bf8358e0) SHA1(880e0d9bd8a75874ba9e51dfb5999b8fcd321a4f) ) ROM_LOAD("igp.u15", 0x000, 0x100, CRC(bf8358e0) SHA1(880e0d9bd8a75874ba9e51dfb5999b8fcd321a4f) ) // 6336-1
ROM_END ROM_END
} // anonymous namespace } // anonymous namespace
@ -243,5 +251,5 @@ ROM_END
Drivers Drivers
******************************************************************************/ ******************************************************************************/
// YEAR NAME PARENT CMP MACHINE INPUT STATE INIT COMPANY, FULLNAME, FLAGS // YEAR NAME PARENT CMP MACHINE INPUT STATE INIT COMPANY, FULLNAME, FLAGS
CONS( 1980, intchess, 0, 0, intchess, intchess, intchess_state, empty_init, "SciSys / Intelligent Games", "Intelligent Chess", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK | MACHINE_NOT_WORKING ) CONS( 1980, intchess, 0, 0, intchess, intchess, intchess_state, empty_init, "SciSys / Intelligent Games", "Intelligent Chess", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK | MACHINE_NOT_WORKING )

View File

@ -0,0 +1,489 @@
<?xml version="1.0"?>
<!--
license:CC0
-->
<mamelayout version="2">
<!-- define elements -->
<element name="whitew"><rect><color red="1" green="1" blue="1" /></rect></element>
<element name="white2"><rect><color red="0.9" green="0.9" blue="0.92" /></rect></element>
<element name="whitem"><rect><color red="0.69" green="0.68" blue="0.67" /></rect></element>
<element name="blackb"><rect><color red="0" green="0" blue="0" /></rect></element>
<element name="blacka"><rect><color red="0.12" green="0.12" blue="0.12" /></rect></element>
<element name="ledr" defstate="0">
<disk state="1"><color red="1.0" green="0.1" blue="0.15" /></disk>
<disk state="0"><color red="0.17" green="0.015" blue="0.02" /></disk>
</element>
<element name="ledg" defstate="0">
<disk state="1"><color red="0.1" green="0.95" blue="0.05" /></disk>
<disk state="0"><color red="0.015" green="0.16" blue="0.01" /></disk>
</element>
<element name="button" defstate="0">
<rect state="0"><color red="1.0" green="1.0" blue="1.0" /></rect>
<rect state="1"><color red="0.82" green="0.82" blue="0.82" /></rect>
</element>
<element name="text_1"><text string="1"><color red="0.85" green="0.85" blue="0.85" /></text></element>
<element name="text_2"><text string="2"><color red="0.85" green="0.85" blue="0.85" /></text></element>
<element name="text_3"><text string="3"><color red="0.85" green="0.85" blue="0.85" /></text></element>
<element name="text_4"><text string="4"><color red="0.85" green="0.85" blue="0.85" /></text></element>
<element name="text_5"><text string="5"><color red="0.85" green="0.85" blue="0.85" /></text></element>
<element name="text_6"><text string="6"><color red="0.85" green="0.85" blue="0.85" /></text></element>
<element name="text_7"><text string="7"><color red="0.85" green="0.85" blue="0.85" /></text></element>
<element name="text_8"><text string="8"><color red="0.85" green="0.85" blue="0.85" /></text></element>
<element name="text_a"><text string="A"><color red="0.85" green="0.85" blue="0.85" /></text></element>
<element name="text_b"><text string="B"><color red="0.85" green="0.85" blue="0.85" /></text></element>
<element name="text_c"><text string="C"><color red="0.85" green="0.85" blue="0.85" /></text></element>
<element name="text_d"><text string="D"><color red="0.85" green="0.85" blue="0.85" /></text></element>
<element name="text_e"><text string="E"><color red="0.85" green="0.85" blue="0.85" /></text></element>
<element name="text_f"><text string="F"><color red="0.85" green="0.85" blue="0.85" /></text></element>
<element name="text_g"><text string="G"><color red="0.85" green="0.85" blue="0.85" /></text></element>
<element name="text_h"><text string="H"><color red="0.85" green="0.85" blue="0.85" /></text></element>
<element name="text_l1"><text string="CHECK" align="2"><color red="0.85" green="0.85" blue="0.85" /></text></element>
<element name="text_l2"><text string="MATE" align="2"><color red="0.85" green="0.85" blue="0.85" /></text></element>
<element name="text_l3"><text string="ERROR" align="2"><color red="0.85" green="0.85" blue="0.85" /></text></element>
<element name="text_l5"><text string="WHITE" align="1"><color red="0.85" green="0.85" blue="0.85" /></text></element>
<element name="text_l6"><text string="BLACK" align="1"><color red="0.85" green="0.85" blue="0.85" /></text></element>
<element name="text_l7"><text string="VERIFY" align="1"><color red="0.85" green="0.85" blue="0.85" /></text></element>
<element name="text_l8"><text string="SET UP" align="1"><color red="0.85" green="0.85" blue="0.85" /></text></element>
<element name="text_b1">
<rect><color red="1" green="1" blue="1" /></rect>
<text string="B/W"><color red="0" green="0" blue="0" /></text>
</element>
<element name="text_b2">
<rect><color red="1" green="1" blue="1" /></rect>
<text string="VERIFY"><color red="0" green="0" blue="0" /></text>
</element>
<element name="text_b3">
<rect><color red="1" green="1" blue="1" /></rect>
<text string="SET UP"><color red="0" green="0" blue="0" /></text>
</element>
<element name="text_b4">
<rect><color red="1" green="1" blue="1" /></rect>
<text string="NEW GAME"><color red="0" green="0" blue="0" /></text>
</element>
<element name="text_b5">
<rect><color red="1" green="1" blue="1" /></rect>
<text string="LEVEL"><color red="0" green="0" blue="0" /></text>
</element>
<element name="text_b6">
<rect><color red="1" green="1" blue="1" /></rect>
<text string="SOUND"><color red="0" green="0" blue="0" /></text>
</element>
<element name="text_b7">
<rect><color red="1" green="1" blue="1" /></rect>
<text string="TAKE BACK"><color red="0" green="0" blue="0" /></text>
</element>
<element name="text_b8">
<rect><color red="1" green="1" blue="1" /></rect>
<text string="GO"><color red="0" green="0" blue="0" /></text>
</element>
<element name="text_p1"><image file="chess/bk.png"></image></element>
<element name="text_p2"><image file="chess/bq.png"></image></element>
<element name="text_p3"><image file="chess/br.png"></image></element>
<element name="text_p4"><image file="chess/bb.png"></image></element>
<element name="text_p5"><image file="chess/bn.png"></image></element>
<element name="text_p6"><image file="chess/bp.png"></image></element>
<!-- sb board -->
<element name="cblack"><rect><color red="0.5" green="0.37" blue="0.3" /></rect></element>
<element name="cwhite"><rect><color red="0.81" green="0.8" blue="0.79" /></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>
<!-- sensors, pieces -->
<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>
<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.81" green="0.8" blue="0.79" /></rect>
<text string="RESET"><color red="0.01" green="0.01" blue="0.01" /></text>
</element>
<element name="text_uib3">
<rect><color red="0.81" green="0.8" blue="0.79" /></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.81" green="0.8" blue="0.79" /></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.81" green="0.8" blue="0.79" /></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.81" green="0.8" blue="0.79" /></rect>
<text string=" &lt; "><color red="0.01" green="0.01" blue="0.01" /></text>
</element>
<element name="text_uiu2c">
<rect><color red="0.81" green="0.8" blue="0.79" /></rect>
<text string=" &gt;"><color red="0.01" green="0.01" blue="0.01" /></text>
</element>
<element name="text_uiu2d">
<rect><color red="0.81" green="0.8" blue="0.79" /></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>
<!-- build screen -->
<view name="Internal Layout">
<bounds left="-16" right="87" top="-1" bottom="106.5" />
<group ref="sb_board"><bounds x="3" y="3" width="80" height="80" /></group>
<group ref="sb_ui"><bounds x="-14.5" y="3" width="10" height="80" /></group>
<!-- chessboard coords -->
<bezel element="text_8"><bounds x="83.5" y="7" width="2" height="2" /></bezel>
<bezel element="text_7"><bounds x="83.5" y="17" width="2" height="2" /></bezel>
<bezel element="text_6"><bounds x="83.5" y="27" width="2" height="2" /></bezel>
<bezel element="text_5"><bounds x="83.5" y="37" width="2" height="2" /></bezel>
<bezel element="text_4"><bounds x="83.5" y="47" width="2" height="2" /></bezel>
<bezel element="text_3"><bounds x="83.5" y="57" width="2" height="2" /></bezel>
<bezel element="text_2"><bounds x="83.5" y="67" width="2" height="2" /></bezel>
<bezel element="text_1"><bounds x="83.5" y="77" width="2" height="2" /></bezel>
<bezel element="text_a"><bounds x="7" y="0.4" width="2" height="2" /></bezel>
<bezel element="text_b"><bounds x="17" y="0.4" width="2" height="2" /></bezel>
<bezel element="text_c"><bounds x="27" y="0.4" width="2" height="2" /></bezel>
<bezel element="text_d"><bounds x="37" y="0.4" width="2" height="2" /></bezel>
<bezel element="text_e"><bounds x="47" y="0.4" width="2" height="2" /></bezel>
<bezel element="text_f"><bounds x="57" y="0.4" width="2" height="2" /></bezel>
<bezel element="text_g"><bounds x="67" y="0.4" width="2" height="2" /></bezel>
<bezel element="text_h"><bounds x="77" y="0.4" width="2" height="2" /></bezel>
<!-- chessboard leds, labels -->
<bezel name="2.0" element="ledr"><bounds x="0.5" y="7.25" width="1.5" height="1.5" /></bezel>
<bezel name="2.1" element="ledr"><bounds x="0.5" y="17.25" width="1.5" height="1.5" /></bezel>
<bezel name="2.2" element="ledr"><bounds x="0.5" y="27.25" width="1.5" height="1.5" /></bezel>
<bezel name="2.3" element="ledr"><bounds x="0.5" y="37.25" width="1.5" height="1.5" /></bezel>
<bezel name="2.4" element="ledr"><bounds x="0.5" y="47.25" width="1.5" height="1.5" /></bezel>
<bezel name="2.5" element="ledr"><bounds x="0.5" y="57.25" width="1.5" height="1.5" /></bezel>
<bezel name="1.0" element="ledr"><bounds x="0.5" y="67.25" width="1.5" height="1.5" /></bezel>
<bezel name="1.1" element="ledr"><bounds x="0.5" y="77.25" width="1.5" height="1.5" /></bezel>
<bezel name="0.0" element="ledr"><bounds x="7.25" y="84" width="1.5" height="1.5" /></bezel>
<bezel name="0.1" element="ledr"><bounds x="17.25" y="84" width="1.5" height="1.5" /></bezel>
<bezel name="0.2" element="ledr"><bounds x="27.25" y="84" width="1.5" height="1.5" /></bezel>
<bezel name="0.3" element="ledr"><bounds x="37.25" y="84" width="1.5" height="1.5" /></bezel>
<bezel name="0.4" element="ledr"><bounds x="47.25" y="84" width="1.5" height="1.5" /></bezel>
<bezel name="0.5" element="ledr"><bounds x="57.25" y="84" width="1.5" height="1.5" /></bezel>
<bezel name="1.4" element="ledr"><bounds x="67.25" y="84" width="1.5" height="1.5" /></bezel>
<bezel name="1.5" element="ledr"><bounds x="77.25" y="84" width="1.5" height="1.5" /></bezel>
<bezel name="3.a" element="ledg"><bounds x="12.25" y="87" width="1.5" height="1.5" /></bezel>
<bezel name="5.a" element="ledg"><bounds x="32.25" y="87" width="1.5" height="1.5" /></bezel>
<bezel name="1.3" element="ledg"><bounds x="52.25" y="87" width="1.5" height="1.5" /></bezel>
<bezel name="1.2" element="ledg"><bounds x="72.25" y="87" width="1.5" height="1.5" /></bezel>
<bezel element="text_l1"><bounds x="-5.8" y="79.5" width="8" height="2" /></bezel>
<bezel element="text_l2"><bounds x="-5.8" y="59.5" width="8" height="2" /></bezel>
<bezel element="text_l3"><bounds x="-5.8" y="19.5" width="8" height="2" /></bezel>
<bezel element="text_l5"><bounds x="14.5" y="86.8" width="8" height="2" /></bezel>
<bezel element="text_l6"><bounds x="34.5" y="86.8" width="8" height="2" /></bezel>
<bezel element="text_l7"><bounds x="54.5" y="86.8" width="8" height="2" /></bezel>
<bezel element="text_l8"><bounds x="74.5" y="86.8" width="8" height="2" /></bezel>
<!-- bottom side buttons -->
<element ref="whitew"><bounds x="-1" y="90" width="88" height="16.5" /></element>
<element ref="text_b1"><bounds x="3" y="92.5" width="10" height="2" /></element>
<element ref="text_b2"><bounds x="13" y="92.5" width="10" height="2" /></element>
<element ref="text_b3"><bounds x="23" y="92.5" width="10" height="2" /></element>
<element ref="text_b5"><bounds x="43" y="92.5" width="10" height="2" /></element>
<element ref="text_b6"><bounds x="53" y="92.5" width="10" height="2" /></element>
<element ref="text_b8"><bounds x="73" y="92.5" width="10" height="2" /></element>
<element ref="text_b4"><bounds x="32" y="92.5" width="12" height="2" /></element>
<element ref="text_b7"><bounds x="62" y="92.5" width="12" height="2" /></element>
<element ref="text_p6"><bounds x="15.75" y="98.8" width="4.5" height="4.5" /></element>
<element ref="text_p3"><bounds x="25.75" y="98.8" width="4.5" height="4.5" /></element>
<element ref="text_p5"><bounds x="35.75" y="98.8" width="4.5" height="4.5" /></element>
<element ref="text_p4"><bounds x="45.75" y="98.8" width="4.5" height="4.5" /></element>
<element ref="text_p2"><bounds x="55.75" y="98.8" width="4.5" height="4.5" /></element>
<element ref="text_p1"><bounds x="65.75" y="98.8" width="4.5" height="4.5" /></element>
<element ref="blackb"><bounds x="4.5" y="95" width="7" height="3.5" /></element>
<element ref="blackb"><bounds x="14.5" y="95" width="7" height="3.5" /></element>
<element ref="blackb"><bounds x="24.5" y="95" width="7" height="3.5" /></element>
<element ref="blackb"><bounds x="34.5" y="95" width="7" height="3.5" /></element>
<element ref="blackb"><bounds x="44.5" y="95" width="7" height="3.5" /></element>
<element ref="blackb"><bounds x="54.5" y="95" width="7" height="3.5" /></element>
<element ref="blackb"><bounds x="64.5" y="95" width="7" height="3.5" /></element>
<element ref="blackb"><bounds x="74.5" y="95" width="7" height="3.5" /></element>
<element ref="whitem" blend="multiply"><bounds x="-1" y="90" width="88" height="16.5" /></element>
<element ref="blacka" blend="add"><bounds x="-1" y="90" width="88" height="16.5" /></element>
<element ref="white2"><bounds x="4.9" y="95.4" width="6.2" height="2.7" /></element>
<element ref="white2"><bounds x="14.9" y="95.4" width="6.2" height="2.7" /></element>
<element ref="white2"><bounds x="24.9" y="95.4" width="6.2" height="2.7" /></element>
<element ref="white2"><bounds x="34.9" y="95.4" width="6.2" height="2.7" /></element>
<element ref="white2"><bounds x="44.9" y="95.4" width="6.2" height="2.7" /></element>
<element ref="white2"><bounds x="54.9" y="95.4" width="6.2" height="2.7" /></element>
<element ref="white2"><bounds x="64.9" y="95.4" width="6.2" height="2.7" /></element>
<element ref="white2"><bounds x="74.9" y="95.4" width="6.2" height="2.7" /></element>
<element ref="button" blend="multiply" inputtag="IN.0" inputmask="0x80"><bounds x="4.5" y="95" width="7" height="3.5" /></element>
<element ref="button" blend="multiply" inputtag="IN.0" inputmask="0x40"><bounds x="14.5" y="95" width="7" height="3.5" /></element>
<element ref="button" blend="multiply" inputtag="IN.0" inputmask="0x20"><bounds x="24.5" y="95" width="7" height="3.5" /></element>
<element ref="button" blend="multiply" inputtag="IN.0" inputmask="0x10"><bounds x="34.5" y="95" width="7" height="3.5" /></element>
<element ref="button" blend="multiply" inputtag="IN.0" inputmask="0x01"><bounds x="44.5" y="95" width="7" height="3.5" /></element>
<element ref="button" blend="multiply" inputtag="IN.0" inputmask="0x02"><bounds x="54.5" y="95" width="7" height="3.5" /></element>
<element ref="button" blend="multiply" inputtag="IN.0" inputmask="0x04"><bounds x="64.5" y="95" width="7" height="3.5" /></element>
<element ref="button" blend="multiply" inputtag="IN.0" inputmask="0x08"><bounds x="74.5" y="95" width="7" height="3.5" /></element>
</view>
</mamelayout>

View File

@ -32097,6 +32097,9 @@ supercon
diablo68 // diablo68 //
scorpio68 // scorpio68 //
@source:novag_micro.cpp
nmicro
@source:novag_micro2.cpp @source:novag_micro2.cpp
nmicro2 nmicro2

View File

@ -651,6 +651,7 @@ notetaker.cpp
novag_cforte.cpp novag_cforte.cpp
novag_const.cpp novag_const.cpp
novag_diablo.cpp novag_diablo.cpp
novag_micro.cpp
novag_micro2.cpp novag_micro2.cpp
novag_savant.cpp novag_savant.cpp
novag_sexpert.cpp novag_sexpert.cpp