mm1: add buttons to layout (nw)

This commit is contained in:
hap 2019-08-13 22:47:32 +02:00
parent 82644e50ff
commit 245d7f11d0
3 changed files with 285 additions and 40 deletions

View File

@ -7,7 +7,8 @@ Mephisto MM I, the first H+G slide-in chesscomputer module
The module was included with either the Modular or Modular Exclusive chessboards.
Initially, the module itself didn't have a name. It was only later in retrospect,
after the release of Modul MM II that it became known as the MM I.
after the release of Modul MM II that it became known as the MM I. The program is
actually more like a prequel of III-S Glasgow, same chess engine authors too.
Hardware notes:
- PCB label: HGS 10 121 01
@ -28,7 +29,6 @@ expensive wooden chessboards like Modular Exclusive or Muenchen, as long as it
supports the higher voltage.
TODO:
- add buttons to artwork
- remove external interrupt hack when timer interrupt is added to CDP1806 device
- mmirage unknown_w
- mm1 unknown expansion rom at $c000?
@ -282,70 +282,70 @@ void mm1_state::mm1_io(address_map &map)
static INPUT_PORTS_START( mm1 )
PORT_START("IN.0")
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_1) // e5
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_2) // 9?
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_E) PORT_CODE(KEYCODE_5) PORT_CODE(KEYCODE_5_PAD) PORT_NAME("E / 5 / Rook")
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_9) PORT_CODE(KEYCODE_9_PAD) PORT_CODE(KEYCODE_LEFT) PORT_NAME("Left / Black / 9")
PORT_START("IN.1")
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_3) // info?
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_4) // cl?
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_I) PORT_NAME("INFO")
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_BACKSPACE) PORT_CODE(KEYCODE_DEL) PORT_NAME("CL")
PORT_START("IN.2")
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_5) // 0?
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_6) // c3
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_0) PORT_CODE(KEYCODE_0_PAD) PORT_CODE(KEYCODE_RIGHT) PORT_NAME("Right / White / 0")
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_C) PORT_CODE(KEYCODE_3) PORT_CODE(KEYCODE_3_PAD) PORT_NAME("C / 3 / Knight")
PORT_START("IN.3")
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_7) // pos?
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_8) // ent?
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_O) PORT_NAME("POS")
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_ENTER) PORT_CODE(KEYCODE_ENTER_PAD) PORT_NAME("ENT")
PORT_START("IN.4")
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_Q) // h8
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_W) // d4
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_H) PORT_CODE(KEYCODE_8) PORT_CODE(KEYCODE_8_PAD) PORT_NAME("H / 8")
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_D) PORT_CODE(KEYCODE_4) PORT_CODE(KEYCODE_4_PAD) PORT_NAME("D / 4 / Bishop")
PORT_START("IN.5")
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_E) // lev?
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_R) // a1
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_L) PORT_NAME("LEV")
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_A) PORT_CODE(KEYCODE_1) PORT_CODE(KEYCODE_1_PAD) PORT_NAME("A / 1")
PORT_START("IN.6")
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_T) // g7
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_Y) // f6
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_G) PORT_CODE(KEYCODE_7) PORT_CODE(KEYCODE_7_PAD) PORT_NAME("G / 7 / King")
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_F) PORT_CODE(KEYCODE_6) PORT_CODE(KEYCODE_6_PAD) PORT_NAME("F / 6 / Queen")
PORT_START("IN.7")
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_U) // memo?
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_I) // b2
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_M) PORT_NAME("MEM")
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_B) PORT_CODE(KEYCODE_2) PORT_CODE(KEYCODE_2_PAD) PORT_NAME("B / 2 / Pawn")
INPUT_PORTS_END
static INPUT_PORTS_START( mirage )
PORT_START("IN.0")
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_1) // cl?
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_2) // list?
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_BACKSPACE) PORT_CODE(KEYCODE_DEL) PORT_NAME("CL")
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_I) PORT_NAME("LIST")
PORT_START("IN.1")
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_3) // a1
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_4) // e5
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_A) PORT_CODE(KEYCODE_1) PORT_CODE(KEYCODE_1_PAD) PORT_NAME("A / 1")
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_E) PORT_CODE(KEYCODE_5) PORT_CODE(KEYCODE_5_PAD) PORT_NAME("E / 5 / Rook")
PORT_START("IN.2")
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_5) // ent
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_6) // white?
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_ENTER) PORT_CODE(KEYCODE_ENTER_PAD) PORT_NAME("ENT")
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_9) PORT_CODE(KEYCODE_9_PAD) PORT_NAME("Black / 9")
PORT_START("IN.3")
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_7) // b2
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_8) // f6
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_B) PORT_CODE(KEYCODE_2) PORT_CODE(KEYCODE_2_PAD) PORT_NAME("B / 2 / Pawn")
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_F) PORT_CODE(KEYCODE_6) PORT_CODE(KEYCODE_6_PAD) PORT_NAME("F / 6 / Queen")
PORT_START("IN.4")
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_Q) // sta?
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_W) // black?
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_SPACE) PORT_CODE(KEYCODE_PLUS_PAD) PORT_NAME("STA")
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_0) PORT_CODE(KEYCODE_0_PAD) PORT_NAME("White / 0")
PORT_START("IN.5")
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_E) // c3
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_R) // g7
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_C) PORT_CODE(KEYCODE_3) PORT_CODE(KEYCODE_3_PAD) PORT_NAME("C / 3 / Knight")
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_G) PORT_CODE(KEYCODE_7) PORT_CODE(KEYCODE_7_PAD) PORT_NAME("G / 7 / King")
PORT_START("IN.6")
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_T) // lev
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_Y) // rev?
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_L) PORT_NAME("LEV")
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_V) PORT_NAME("REV")
PORT_START("IN.7")
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_U) // d4
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_I) // h8
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_D) PORT_CODE(KEYCODE_4) PORT_CODE(KEYCODE_4_PAD) PORT_NAME("D / 4 / Bishop")
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_H) PORT_CODE(KEYCODE_8) PORT_CODE(KEYCODE_8_PAD) PORT_NAME("H / 8")
PORT_START("FAKE") // module came with buttons sensorboard by default
PORT_CONFNAME( 0x01, 0x00, "Board Sensors" ) PORT_CHANGED_MEMBER(DEVICE_SELF, mm1_state, mirage_switch_sensor_type, nullptr)
@ -355,7 +355,7 @@ INPUT_PORTS_END
INPUT_CHANGED_MEMBER(mm1_state::mirage_switch_sensor_type)
{
m_board->set_type(newval ? sensorboard_device::MAGNETS : sensorboard_device::BUTTONS);
m_board->set_type(newval ? sensorboard_device::MAGNETS : sensorboard_device::BUTTONS);
}

View File

@ -375,15 +375,123 @@
</group>
<!-- buttons -->
<element name="gray"><rect><color red="0.25" green="0.25" blue="0.25" /></rect></element>
<element name="white"><rect><color red="0.95" green="0.95" blue="0.95" /></rect></element>
<element name="keys" defstate="0">
<rect state="1"><color red="0.0" green="0.0" blue="0.0" /></rect>
</element>
<element name="text_b01"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="CL"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_b02"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="STA"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_b11"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="LIST"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_b12"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="ENT"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_b21"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="A1" align="2"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_b22"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="B2" align="2"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_b23"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="C3" align="2"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_b24"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="D4" align="2"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_b25"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="LEV"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_b26"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="REV"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_b31"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="E5" align="2"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_b32"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="F6" align="2"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_b33"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="G7" align="2"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_b34"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="H8" align="2"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_b35"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="9" align="2"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_b36"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="0" align="2"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_p1"><image file="chess/wk.png"><color alpha="0.95" /></image></element>
<element name="text_p2"><image file="chess/wq.png"><color alpha="0.95" /></image></element>
<element name="text_p3"><image file="chess/wr.png"><color alpha="0.95" /></image></element>
<element name="text_p4"><image file="chess/wb.png"><color alpha="0.95" /></image></element>
<element name="text_p5"><image file="chess/wn.png"><color alpha="0.95" /></image></element>
<element name="text_p6"><image file="chess/wp.png"><color alpha="0.95" /></image></element>
<group name="buttons">
<bounds x="0" y="0" width="23" height="12.25" />
<group ref="display"><bounds x="1.5" y="0.7" width="12" height="4.1" /></group>
<bezel element="gray"><bounds x="16" y="0.0" width="3" height="1.75" /></bezel>
<bezel element="gray"><bounds x="20" y="0.0" width="3" height="1.75" /></bezel>
<bezel element="gray"><bounds x="16" y="3.5" width="3" height="1.75" /></bezel>
<bezel element="gray"><bounds x="20" y="3.5" width="3" height="1.75" /></bezel>
<bezel element="gray"><bounds x="0" y="7.0" width="3" height="1.75" /></bezel>
<bezel element="gray"><bounds x="4" y="7.0" width="3" height="1.75" /></bezel>
<bezel element="gray"><bounds x="8" y="7.0" width="3" height="1.75" /></bezel>
<bezel element="gray"><bounds x="12" y="7.0" width="3" height="1.75" /></bezel>
<bezel element="gray"><bounds x="16" y="7.0" width="3" height="1.75" /></bezel>
<bezel element="gray"><bounds x="20" y="7.0" width="3" height="1.75" /></bezel>
<bezel element="gray"><bounds x="0" y="10.5" width="3" height="1.75" /></bezel>
<bezel element="gray"><bounds x="4" y="10.5" width="3" height="1.75" /></bezel>
<bezel element="gray"><bounds x="8" y="10.5" width="3" height="1.75" /></bezel>
<bezel element="gray"><bounds x="12" y="10.5" width="3" height="1.75" /></bezel>
<bezel element="gray"><bounds x="16" y="10.5" width="3" height="1.75" /></bezel>
<bezel element="gray"><bounds x="20" y="10.5" width="3" height="1.75" /></bezel>
<bezel element="text_b01"><bounds x="16" y="0.2" width="3" height="1.3" /></bezel>
<bezel element="text_b02"><bounds x="20" y="0.2" width="3" height="1.3" /></bezel>
<bezel element="text_b11"><bounds x="16" y="3.7" width="3" height="1.3" /></bezel>
<bezel element="text_b12"><bounds x="20" y="3.7" width="3" height="1.3" /></bezel>
<bezel element="text_b21"><bounds x="0" y="7.2" width="2.7" height="1.3" /></bezel>
<bezel element="text_b22"><bounds x="4" y="7.2" width="2.7" height="1.3" /></bezel>
<bezel element="text_b23"><bounds x="8" y="7.2" width="2.7" height="1.3" /></bezel>
<bezel element="text_b24"><bounds x="12" y="7.2" width="2.7" height="1.3" /></bezel>
<bezel element="text_b25"><bounds x="16" y="7.2" width="3" height="1.3" /></bezel>
<bezel element="text_b26"><bounds x="20" y="7.2" width="3" height="1.3" /></bezel>
<bezel element="text_b31"><bounds x="0" y="10.7" width="2.7" height="1.3" /></bezel>
<bezel element="text_b32"><bounds x="4" y="10.7" width="2.7" height="1.3" /></bezel>
<bezel element="text_b33"><bounds x="8" y="10.7" width="2.7" height="1.3" /></bezel>
<bezel element="text_b34"><bounds x="12" y="10.7" width="2.7" height="1.3" /></bezel>
<bezel element="text_b35"><bounds x="16" y="10.7" width="2.7" height="1.3" /></bezel>
<bezel element="text_b36"><bounds x="20" y="10.7" width="2.7" height="1.3" /></bezel>
<bezel element="white"><bounds x="17.2" y="10.925" width="0.6" height="0.9" /></bezel>
<bezel element="gray"><bounds x="17.325" y="11.05" width="0.35" height="0.65" /></bezel>
<bezel element="white"><bounds x="21.2" y="10.925" width="0.6" height="0.9" /></bezel>
<bezel element="text_p6"><bounds x="4" y="7.1" width="1.4" height="1.4" /></bezel>
<bezel element="text_p5"><bounds x="8" y="7.1" width="1.4" height="1.4" /></bezel>
<bezel element="text_p4"><bounds x="12" y="7.1" width="1.4" height="1.4" /></bezel>
<bezel element="text_p3"><bounds x="0" y="10.6" width="1.4" height="1.4" /></bezel>
<bezel element="text_p2"><bounds x="4" y="10.6" width="1.4" height="1.4" /></bezel>
<bezel element="text_p1"><bounds x="8" y="10.6" width="1.4" height="1.4" /></bezel>
<bezel element="keys" inputtag="IN.0" inputmask="0x01"><bounds x="16" y="0.0" width="3" height="1.75" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.4" inputmask="0x01"><bounds x="20" y="0.0" width="3" height="1.75" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.0" inputmask="0x02"><bounds x="16" y="3.5" width="3" height="1.75" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.2" inputmask="0x01"><bounds x="20" y="3.5" width="3" height="1.75" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.1" inputmask="0x01"><bounds x="0" y="7.0" width="3" height="1.75" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.3" inputmask="0x01"><bounds x="4" y="7.0" width="3" height="1.75" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.5" inputmask="0x01"><bounds x="8" y="7.0" width="3" height="1.75" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.7" inputmask="0x01"><bounds x="12" y="7.0" width="3" height="1.75" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.6" inputmask="0x01"><bounds x="16" y="7.0" width="3" height="1.75" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.6" inputmask="0x02"><bounds x="20" y="7.0" width="3" height="1.75" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.1" inputmask="0x02"><bounds x="0" y="10.5" width="3" height="1.75" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.3" inputmask="0x02"><bounds x="4" y="10.5" width="3" height="1.75" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.5" inputmask="0x02"><bounds x="8" y="10.5" width="3" height="1.75" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.7" inputmask="0x02"><bounds x="12" y="10.5" width="3" height="1.75" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.2" inputmask="0x02"><bounds x="16" y="10.5" width="3" height="1.75" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.4" inputmask="0x02"><bounds x="20" y="10.5" width="3" height="1.75" /><color alpha="0.25" /></bezel>
</group>
<!-- build screen -->
<view name="Internal Layout">
<bounds left="-11" right="88" top="-1" bottom="100" />
<bounds left="-11.5" right="88" top="-1" bottom="107" />
<group ref="sb_board"><bounds x="4" y="3" width="80" height="80" /></group>
<group ref="sb_ui"><bounds x="-10" y="3" width="10" height="80" /></group>
<group ref="display"><bounds x="4" y="90" width="22.5" height="7.4" /></group>
<group ref="buttons"><bounds x="29" y="88.5" width="30" height="16" /></group>
<bezel element="text_8"><bounds x="1.2" y="7" width="2" height="2" /></bezel>
<bezel element="text_7"><bounds x="1.2" y="17" width="2" height="2" /></bezel>

View File

@ -397,17 +397,154 @@
</group>
<!-- buttons -->
<element name="gray"><rect><color red="0.25" green="0.25" blue="0.25" /></rect></element>
<element name="white"><rect><color red="0.95" green="0.95" blue="0.95" /></rect></element>
<element name="keys" defstate="0">
<rect state="1"><color red="0.0" green="0.0" blue="0.0" /></rect>
</element>
<element name="text_info"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="INFO"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_pos"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="POS"> <color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_lev"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="LEV"> <color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_mem"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="MEM"> <color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_cl"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="CL"> <color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_ent"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="ENT"> <color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_stp"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="STP"> <color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_on"> <rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="ON"> <color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_a1"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="A"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_b2"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="B"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_c3"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="C"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_d4"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="D"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_e5"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="E"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_f6"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="F"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_g7"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="G"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_h8"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="H"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_l9"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="&#x2190;"> <color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_r0"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="&#x2192;"> <color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_1a"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="1"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_2b"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="2"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_3c"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="3"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_4d"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="4"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_5e"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="5"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_6f"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="6"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_7g"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="7"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_8h"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="8"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_9l"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="9"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_0r"><rect><color red="0.25" green="0.25" blue="0.25" /></rect><text string="0"><color red="0.95" green="0.95" blue="0.95" /></text></element>
<element name="text_p1"><image file="chess/wk.png"><color alpha="0.95" /></image></element>
<element name="text_p2"><image file="chess/wq.png"><color alpha="0.95" /></image></element>
<element name="text_p3"><image file="chess/wr.png"><color alpha="0.95" /></image></element>
<element name="text_p4"><image file="chess/wb.png"><color alpha="0.95" /></image></element>
<element name="text_p5"><image file="chess/wn.png"><color alpha="0.95" /></image></element>
<element name="text_p6"><image file="chess/wp.png"><color alpha="0.95" /></image></element>
<group name="buttons">
<bounds x="69" y="93" width="29" height="14" />
<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_info"><bounds x="69.3" y="94" width="3.68" height="2.2" /></bezel>
<bezel element="text_pos"> <bounds x="74.3" y="94" width="3.68" height="2.2" /></bezel>
<bezel element="text_lev"> <bounds x="79.3" y="94" width="3.68" height="2.2" /></bezel>
<bezel element="text_mem"> <bounds x="84.3" y="94" width="3.68" height="2.2" /></bezel>
<bezel element="text_cl"> <bounds x="89.3" y="94" width="3.68" height="2.2" /></bezel>
<bezel element="text_ent"> <bounds x="94.3" y="94" width="3.68" height="2.2" /></bezel>
<bezel element="text_stp"> <bounds x="89.3" y="99" width="3.68" height="2.2" /></bezel>
<bezel element="text_on"> <bounds x="94.3" y="99" width="3.68" height="2.2" /></bezel>
<bezel element="text_a1"><bounds x="69" y="98" width="2" height="2.2" /></bezel>
<bezel element="text_b2"><bounds x="74" y="98" width="2" height="2.2" /></bezel>
<bezel element="text_c3"><bounds x="79" y="98" width="2" height="2.2" /></bezel>
<bezel element="text_d4"><bounds x="84" y="98" width="2" height="2.2" /></bezel>
<bezel element="text_e5"><bounds x="69" y="103" width="2" height="2.2" /></bezel>
<bezel element="text_f6"><bounds x="74" y="103" width="2" height="2.2" /></bezel>
<bezel element="text_g7"><bounds x="79" y="103" width="2" height="2.2" /></bezel>
<bezel element="text_h8"><bounds x="84" y="103" width="2" height="2.2" /></bezel>
<bezel element="text_l9"><bounds x="90" y="103" width="2" height="1.8" /></bezel>
<bezel element="text_r0"><bounds x="95.2" y="103" width="2" height="1.8" /></bezel>
<bezel element="text_1a"><bounds x="71" y="99.5" width="1.98" height="2.2" /></bezel>
<bezel element="text_2b"><bounds x="76" y="99.5" width="1.98" height="2.2" /></bezel>
<bezel element="text_3c"><bounds x="81" y="99.5" width="1.98" height="2.2" /></bezel>
<bezel element="text_4d"><bounds x="86" y="99.5" width="1.98" height="2.2" /></bezel>
<bezel element="text_5e"><bounds x="71" y="104.5" width="1.98" height="2.2" /></bezel>
<bezel element="text_6f"><bounds x="76" y="104.5" width="1.98" height="2.2" /></bezel>
<bezel element="text_7g"><bounds x="81" y="104.5" width="1.98" height="2.2" /></bezel>
<bezel element="text_8h"><bounds x="86" y="104.5" width="1.98" height="2.2" /></bezel>
<bezel element="text_9l"><bounds x="91" y="104.5" width="1.98" height="2.2" /></bezel>
<bezel element="text_0r"><bounds x="96" y="104.5" width="1.98" height="2.2" /></bezel>
<bezel element="text_p6" ><bounds x="76" y="98" width="1.8" height="1.7" /></bezel>
<bezel element="text_p5" ><bounds x="81" y="98" width="1.8" height="1.7" /></bezel>
<bezel element="text_p4" ><bounds x="86" y="98" width="1.8" height="1.7" /></bezel>
<bezel element="text_p3" ><bounds x="71" y="103" width="1.8" height="1.7" /></bezel>
<bezel element="text_p2" ><bounds x="76" y="103" width="1.8" height="1.7" /></bezel>
<bezel element="text_p1" ><bounds x="81" y="103" width="1.8" height="1.7" /></bezel>
<bezel element="white"><bounds x="89.5" y="105.1" width="1.3" height="1.3" /></bezel>
<bezel element="gray"><bounds x="89.7" y="105.3" width="0.9" height="0.9" /></bezel>
<bezel element="white"><bounds x="94.5" y="105.1" width="1.3" height="1.3" /></bezel>
<bezel element="keys" inputtag="IN.1" inputmask="0x01"><bounds x="69" y="93" width="4" height="4" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.3" inputmask="0x01"><bounds x="74" y="93" width="4" height="4" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.5" inputmask="0x01"><bounds x="79" y="93" width="4" height="4" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.7" inputmask="0x01"><bounds x="84" y="93" width="4" height="4" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.1" inputmask="0x02"><bounds x="89" y="93" width="4" height="4" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.3" inputmask="0x02"><bounds x="94" y="93" width="4" height="4" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.5" inputmask="0x02"><bounds x="69" y="98" width="4" height="4" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.7" inputmask="0x02"><bounds x="74" y="98" width="4" height="4" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.2" inputmask="0x02"><bounds x="79" y="98" width="4" height="4" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.4" inputmask="0x02"><bounds x="84" y="98" width="4" height="4" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.X" inputmask="0x01"><bounds x="89" y="98" width="4" height="4" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.X" inputmask="0x02"><bounds x="94" y="98" width="4" height="4" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.0" inputmask="0x01"><bounds x="69" y="103" width="4" height="4" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.6" inputmask="0x02"><bounds x="74" y="103" width="4" height="4" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.6" inputmask="0x01"><bounds x="79" y="103" width="4" height="4" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.4" inputmask="0x01"><bounds x="84" y="103" width="4" height="4" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.0" inputmask="0x02"><bounds x="89" y="103" width="4" height="4" /><color alpha="0.25" /></bezel>
<bezel element="keys" inputtag="IN.2" inputmask="0x01"><bounds x="94" y="103" width="4" height="4" /><color alpha="0.25" /></bezel>
</group>
<!-- build screen -->
<view name="Internal Layout">
<bounds left="-13" right="88" top="-1.5" bottom="100" />
<bounds left="-13" right="88" top="-1.5" bottom="104.5" />
<bezel element="cblack"><bounds x="-1" y="-1.5" width="89" height="89" /></bezel>
<bezel element="cwhite"><bounds x="3" y="2.5" width="81" height="81" /></bezel>
<group ref="sb_board"><bounds x="3.5" y="3" width="80" height="80" /></group>
<group ref="sb_ui"><bounds x="-12" y="3" width="10" height="80" /></group>
<group ref="display"><bounds x="4" y="90" width="22.5" height="7.4" /></group>
<bezel element="lcd_bg"><bounds x="23.5" y="92" width="20" height="8" /></bezel>
<group ref="display"><bounds x="24" y="92.8" width="19" height="6.4" /></group>
<group ref="buttons"><bounds x="53.5" y="89" width="29" height="14" /></group>
<bezel element="text_8"><bounds x="0.2" y="7" width="2" height="2" /></bezel>
<bezel element="text_7"><bounds x="0.2" y="17" width="2" height="2" /></bezel>