New working systems

-------------------
Electronic Trio [hap, Sean Riddle]
Kasparov Mk 12 [hap, Sean Riddle]

New working clones
------------------
Kasparov Pocket Chess [hap, Sean Riddle]
Pocket Checkers [hap, Sean Riddle]
Kasparov Pocket Plus [hap, Sean Riddle]
This commit is contained in:
hap 2024-10-16 20:23:48 +02:00
parent 0327678158
commit d252599e71
8 changed files with 3436 additions and 3 deletions

View File

@ -93,9 +93,9 @@ known chips:
*A04 HD44868 1984, SciSys Rapier
A07 HD44868 1984, Chess King Pocket Micro De-Luxe -> chessking/pmicrodx.cpp
*A12 HD44868 1985, SciSys Electronic Trio / Kasparov Pocket Chess
*A14 HD44868 1986, SciSys Kasparov Mk 12 / Kasparov Pocket Plus
*A16 HD44868 1988, Saitek Pocket Checkers
A12 HD44868 1985, SciSys Electronic Trio / Kasparov Pocket Chess -> saitek/electrio.cpp
A14 HD44868 1986, SciSys Kasparov Mk 12 / Kasparov Pocket Plus -> saitek/electrio.cpp
A16 HD44868 1988, Saitek Pocket Checkers -> saitek/electrio.cpp
(* means undumped unless noted, @ denotes it's in this driver)

View File

@ -0,0 +1,910 @@
<?xml version="1.0"?>
<!--
license:CC0-1.0
authors:hap
-->
<mamelayout version="2">
<!-- define elements -->
<element name="whitew"><rect><color red="1" green="1" blue="1" /></rect></element>
<element name="led" defstate="0">
<disk state="1"><color red="1.0" green="0.1" blue="0.15" /></disk>
<disk state="0"><color red="0.14" green="0.014" blue="0.021" /></disk>
</element>
<element name="text_1"><text string="1"></text></element>
<element name="text_2"><text string="2"></text></element>
<element name="text_3"><text string="3"></text></element>
<element name="text_4"><text string="4"></text></element>
<element name="text_5"><text string="5"></text></element>
<element name="text_6"><text string="6"></text></element>
<element name="text_7"><text string="7"></text></element>
<element name="text_8"><text string="8"></text></element>
<element name="text_a"><text string="A"></text></element>
<element name="text_b"><text string="B"></text></element>
<element name="text_c"><text string="C"></text></element>
<element name="text_d"><text string="D"></text></element>
<element name="text_e"><text string="E"></text></element>
<element name="text_f"><text string="F"></text></element>
<element name="text_g"><text string="G"></text></element>
<element name="text_h"><text string="H"></text></element>
<element name="text_l1"><text string="BLACK" align="2"></text></element>
<element name="text_l2"><text string="CHESS" align="2"></text></element>
<element name="text_l3"><text string="CHECK-" align="2"></text></element>
<element name="text_l3a"><text string="ERS" align="2"></text></element>
<element name="text_l4"><text string="TIC-TAC-" align="2"></text></element>
<element name="text_l4a"><text string="TOE" align="2"></text></element>
<element name="text_l5"><text string="WHITE" align="2"></text></element>
<element name="text_l6"><text string="CHECK"></text></element>
<element name="text_l7"><text string="DRAW"></text></element>
<element name="text_l8"><text string="MATE"></text></element>
<element name="text_l9"><text string=" GAME OVER"></text></element>
<!-- sb board -->
<element name="cblack"><rect><color red="0.41" green="0.4" blue="0.39" /></rect></element>
<element name="cwhite"><rect><color red="0.81" green="0.8" blue="0.79" /></rect></element>
<element name="cblue"><rect><color red="0.05" green="0.65" blue="0.9" /></rect></element>
<element name="hlbb" defstate="0">
<rect><color alpha="0" /></rect> <!-- force unit square element bounds -->
<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>
<!-- chess pieces -->
<element name="piece0" defstate="0">
<image file="chess/wp.svg" state="1"/>
<image file="chess/wn.svg" state="2"/>
<image file="chess/wb.svg" state="3"/>
<image file="chess/wr.svg" state="4"/>
<image file="chess/wq.svg" state="5"/>
<image file="chess/wk.svg" state="6"/>
<image file="chess/bp.svg" state="7"/>
<image file="chess/bn.svg" state="8"/>
<image file="chess/bb.svg" state="9"/>
<image file="chess/br.svg" state="10"/>
<image file="chess/bq.svg" state="11"/>
<image file="chess/bk.svg" state="12"/>
<!-- selected pieces -->
<image file="chess/wp.svg" state="13"><color alpha="0.5" /></image>
<image file="chess/wn.svg" state="14"><color alpha="0.5" /></image>
<image file="chess/wb.svg" state="15"><color alpha="0.5" /></image>
<image file="chess/wr.svg" state="16"><color alpha="0.5" /></image>
<image file="chess/wq.svg" state="17"><color alpha="0.5" /></image>
<image file="chess/wk.svg" state="18"><color alpha="0.5" /></image>
<image file="chess/bp.svg" state="19"><color alpha="0.5" /></image>
<image file="chess/bn.svg" state="20"><color alpha="0.5" /></image>
<image file="chess/bb.svg" state="21"><color alpha="0.5" /></image>
<image file="chess/br.svg" state="22"><color alpha="0.5" /></image>
<image file="chess/bq.svg" state="23"><color alpha="0.5" /></image>
<image file="chess/bk.svg" state="24"><color alpha="0.5" /></image>
</element>
<!-- checkers pieces -->
<element name="piece1" defstate="0">
<rect><color alpha="0" /></rect> <!-- force unit square element bounds -->
<disk state="1">
<bounds xc="0.5" yc="0.5" width="0.8" height="0.8" />
<color red="0" green="0" blue="0" />
</disk>
<disk state="1">
<bounds xc="0.5" yc="0.5" width="0.76" height="0.76" />
<color red="1" green="1" blue="1" />
</disk>
<disk state="1">
<bounds xc="0.5" yc="0.5" width="0.64" height="0.64" />
<color red="0.81" green="0.81" blue="0.81" />
</disk>
<disk state="1">
<bounds xc="0.5" yc="0.5" width="0.6" height="0.6" />
<color red="1" green="1" blue="1" />
</disk>
<disk state="2">
<bounds xc="0.5" yc="0.5" width="0.8" height="0.8" />
<color red="0" green="0" blue="0" />
</disk>
<disk state="2">
<bounds xc="0.5" yc="0.5" width="0.76" height="0.76" />
<color red="1" green="1" blue="1" />
</disk>
<disk state="2">
<bounds xc="0.5" yc="0.4" width="0.8" height="0.8" />
<color red="0" green="0" blue="0" />
</disk>
<disk state="2">
<bounds xc="0.5" yc="0.4" width="0.76" height="0.76" />
<color red="1" green="1" blue="1" />
</disk>
<disk state="2">
<bounds xc="0.5" yc="0.4" width="0.64" height="0.64" />
<color red="0.81" green="0.81" blue="0.81" />
</disk>
<disk state="2">
<bounds xc="0.5" yc="0.4" width="0.6" height="0.6" />
<color red="1" green="1" blue="1" />
</disk>
<disk state="3">
<bounds xc="0.5" yc="0.5" width="0.8" height="0.8" />
<color red="0" green="0" blue="0" />
</disk>
<disk state="3">
<bounds xc="0.5" yc="0.5" width="0.76" height="0.76" />
<color red="0.05" green="0.5" blue="0.85" />
</disk>
<disk state="3">
<bounds xc="0.5" yc="0.5" width="0.64" height="0.64" />
<color red="0.065" green="0.65" blue="1" />
</disk>
<disk state="3">
<bounds xc="0.5" yc="0.5" width="0.6" height="0.6" />
<color red="0.05" green="0.5" blue="0.85" />
</disk>
<disk state="4">
<bounds xc="0.5" yc="0.5" width="0.8" height="0.8" />
<color red="0" green="0" blue="0" />
</disk>
<disk state="4">
<bounds xc="0.5" yc="0.5" width="0.76" height="0.76" />
<color red="0.05" green="0.5" blue="0.85" />
</disk>
<disk state="4">
<bounds xc="0.5" yc="0.4" width="0.8" height="0.8" />
<color red="0" green="0" blue="0" />
</disk>
<disk state="4">
<bounds xc="0.5" yc="0.4" width="0.76" height="0.76" />
<color red="0.05" green="0.5" blue="0.85" />
</disk>
<disk state="4">
<bounds xc="0.5" yc="0.4" width="0.64" height="0.64" />
<color red="0.065" green="0.65" blue="1" />
</disk>
<disk state="4">
<bounds xc="0.5" yc="0.4" width="0.6" height="0.6" />
<color red="0.05" green="0.5" blue="0.85" />
</disk>
</element>
<element name="piece1_sel" defstate="0">
<rect><color alpha="0" /></rect> <!-- force unit square element bounds -->
<!-- selected pieces -->
<disk state="5">
<bounds xc="0.5" yc="0.5" width="0.8" height="0.8" />
<color red="0" green="0" blue="0" />
</disk>
<disk state="5">
<bounds xc="0.5" yc="0.5" width="0.76" height="0.76" />
<color red="1" green="1" blue="1" />
</disk>
<disk state="5">
<bounds xc="0.5" yc="0.5" width="0.64" height="0.64" />
<color red="0.81" green="0.81" blue="0.81" />
</disk>
<disk state="5">
<bounds xc="0.5" yc="0.5" width="0.6" height="0.6" />
<color red="1" green="1" blue="1" />
</disk>
<disk state="6">
<bounds xc="0.5" yc="0.5" width="0.8" height="0.8" />
<color red="0" green="0" blue="0" />
</disk>
<disk state="6">
<bounds xc="0.5" yc="0.5" width="0.76" height="0.76" />
<color red="1" green="1" blue="1" />
</disk>
<disk state="6">
<bounds xc="0.5" yc="0.4" width="0.8" height="0.8" />
<color red="0" green="0" blue="0" />
</disk>
<disk state="6">
<bounds xc="0.5" yc="0.4" width="0.76" height="0.76" />
<color red="1" green="1" blue="1" />
</disk>
<disk state="6">
<bounds xc="0.5" yc="0.4" width="0.64" height="0.64" />
<color red="0.81" green="0.81" blue="0.81" />
</disk>
<disk state="6">
<bounds xc="0.5" yc="0.4" width="0.6" height="0.6" />
<color red="1" green="1" blue="1" />
</disk>
<disk state="7">
<bounds xc="0.5" yc="0.5" width="0.8" height="0.8" />
<color red="0" green="0" blue="0" />
</disk>
<disk state="7">
<bounds xc="0.5" yc="0.5" width="0.76" height="0.76" />
<color red="0.05" green="0.5" blue="0.85" />
</disk>
<disk state="7">
<bounds xc="0.5" yc="0.5" width="0.64" height="0.64" />
<color red="0.065" green="0.65" blue="1" />
</disk>
<disk state="7">
<bounds xc="0.5" yc="0.5" width="0.6" height="0.6" />
<color red="0.05" green="0.5" blue="0.85" />
</disk>
<disk state="8">
<bounds xc="0.5" yc="0.5" width="0.8" height="0.8" />
<color red="0" green="0" blue="0" />
</disk>
<disk state="8">
<bounds xc="0.5" yc="0.5" width="0.76" height="0.76" />
<color red="0.05" green="0.5" blue="0.85" />
</disk>
<disk state="8">
<bounds xc="0.5" yc="0.4" width="0.8" height="0.8" />
<color red="0" green="0" blue="0" />
</disk>
<disk state="8">
<bounds xc="0.5" yc="0.4" width="0.76" height="0.76" />
<color red="0.05" green="0.5" blue="0.85" />
</disk>
<disk state="8">
<bounds xc="0.5" yc="0.4" width="0.64" height="0.64" />
<color red="0.065" green="0.65" blue="1" />
</disk>
<disk state="8">
<bounds xc="0.5" yc="0.4" width="0.6" height="0.6" />
<color red="0.05" green="0.5" blue="0.85" />
</disk>
</element>
<!-- tic-tac-toe pieces -->
<element name="piece2" defstate="0">
<rect><color alpha="0" /></rect> <!-- force unit square element bounds -->
<disk state="1">
<bounds xc="0.5" yc="0.5" width="0.8" height="0.8" />
<color red="0" green="0" blue="0" />
</disk>
<disk state="1">
<bounds xc="0.5" yc="0.5" width="0.76" height="0.76" />
<color red="0.15" green="0.15" blue="0.8" />
</disk>
<text state="1" string="x">
<bounds xc="0.5" yc="0.44" width="0.64" height="0.64" />
<color red="0.35" green="0.35" blue="1" />
</text>
<disk state="2">
<bounds xc="0.5" yc="0.5" width="0.8" height="0.8" />
<color red="0" green="0" blue="0" />
</disk>
<disk state="2">
<bounds xc="0.5" yc="0.5" width="0.76" height="0.76" />
<color red="0.15" green="0.15" blue="0.8" />
</disk>
<text state="2" string="o">
<bounds xc="0.5" yc="0.44" width="0.64" height="0.64" />
<color red="0.35" green="0.35" blue="1" />
</text>
</element>
<element name="piece2_sel" defstate="0">
<rect><color alpha="0" /></rect> <!-- force unit square element bounds -->
<!-- selected pieces -->
<disk state="3">
<bounds xc="0.5" yc="0.5" width="0.8" height="0.8" />
<color red="0" green="0" blue="0" />
</disk>
<disk state="3">
<bounds xc="0.5" yc="0.5" width="0.76" height="0.76" />
<color red="0.15" green="0.15" blue="0.8" />
</disk>
<text state="3" string="x">
<bounds xc="0.5" yc="0.44" width="0.64" height="0.64" />
<color red="0.35" green="0.35" blue="1" />
</text>
<disk state="4">
<bounds xc="0.5" yc="0.5" width="0.8" height="0.8" />
<color red="0" green="0" blue="0" />
</disk>
<disk state="4">
<bounds xc="0.5" yc="0.5" width="0.76" height="0.76" />
<color red="0.15" green="0.15" blue="0.8" />
</disk>
<text state="4" string="o">
<bounds xc="0.5" yc="0.44" width="0.64" height="0.64" />
<color red="0.35" green="0.35" blue="1" />
</text>
</element>
<!-- base -->
<group name="sb_board_base">
<bounds x="0" y="0" width="80" height="80" />
<!-- squares (avoid seams) -->
<element ref="cwhite"><bounds x="0" y="0" width="11" height="11" /></element>
<element ref="cblack"><bounds x="10" y="0" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="20" y="0" width="11" height="11" /></element>
<element ref="cblack"><bounds x="30" y="0" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="40" y="0" width="11" height="11" /></element>
<element ref="cblack"><bounds x="50" y="0" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="60" y="0" width="11" height="11" /></element>
<element ref="cblack"><bounds x="70" y="0" width="10" height="11" /></element>
<element ref="cblack"><bounds x="0" y="10" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="10" y="10" width="11" height="11" /></element>
<element ref="cblack"><bounds x="20" y="10" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="30" y="10" width="11" height="11" /></element>
<element ref="cblack"><bounds x="40" y="10" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="50" y="10" width="11" height="11" /></element>
<element ref="cblack"><bounds x="60" y="10" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="70" y="10" width="10" height="11" /></element>
<element ref="cwhite"><bounds x="0" y="20" width="11" height="11" /></element>
<element ref="cblack"><bounds x="10" y="20" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="20" y="20" width="11" height="11" /></element>
<element ref="cblack"><bounds x="30" y="20" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="40" y="20" width="11" height="11" /></element>
<element ref="cblack"><bounds x="50" y="20" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="60" y="20" width="11" height="11" /></element>
<element ref="cblack"><bounds x="70" y="20" width="10" height="11" /></element>
<element ref="cblack"><bounds x="0" y="30" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="10" y="30" width="11" height="11" /></element>
<element ref="cblack"><bounds x="20" y="30" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="30" y="30" width="11" height="11" /></element>
<element ref="cblack"><bounds x="40" y="30" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="50" y="30" width="11" height="11" /></element>
<element ref="cblack"><bounds x="60" y="30" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="70" y="30" width="10" height="11" /></element>
<element ref="cwhite"><bounds x="0" y="40" width="11" height="11" /></element>
<element ref="cblack"><bounds x="10" y="40" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="20" y="40" width="11" height="11" /></element>
<element ref="cblack"><bounds x="30" y="40" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="40" y="40" width="11" height="11" /></element>
<element ref="cblack"><bounds x="50" y="40" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="60" y="40" width="11" height="11" /></element>
<element ref="cblack"><bounds x="70" y="40" width="10" height="11" /></element>
<element ref="cblack"><bounds x="0" y="50" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="10" y="50" width="11" height="11" /></element>
<element ref="cblack"><bounds x="20" y="50" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="30" y="50" width="11" height="11" /></element>
<element ref="cblack"><bounds x="40" y="50" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="50" y="50" width="11" height="11" /></element>
<element ref="cblack"><bounds x="60" y="50" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="70" y="50" width="10" height="11" /></element>
<element ref="cwhite"><bounds x="0" y="60" width="11" height="11" /></element>
<element ref="cblack"><bounds x="10" y="60" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="20" y="60" width="11" height="11" /></element>
<element ref="cblack"><bounds x="30" y="60" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="40" y="60" width="11" height="11" /></element>
<element ref="cblack"><bounds x="50" y="60" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="60" y="60" width="11" height="11" /></element>
<element ref="cblack"><bounds x="70" y="60" width="10" height="11" /></element>
<element ref="cblack"><bounds x="0" y="70" width="11" height="10" /></element>
<element ref="cwhite"><bounds x="10" y="70" width="11" height="10" /></element>
<element ref="cblack"><bounds x="20" y="70" width="11" height="10" /></element>
<element ref="cwhite"><bounds x="30" y="70" width="11" height="10" /></element>
<element ref="cblack"><bounds x="40" y="70" width="11" height="10" /></element>
<element ref="cwhite"><bounds x="50" y="70" width="11" height="10" /></element>
<element ref="cblack"><bounds x="60" y="70" width="11" height="10" /></element>
<element ref="cwhite"><bounds x="70" y="70" width="10" height="10" /></element>
<!-- blue grid for tic-tac-toe can be distracting -->
<collection name="Blue Grid">
<element ref="cblue"><bounds xc="30" y="10" width="0.5" height="60" /></element>
<element ref="cblue"><bounds xc="50" y="10" width="0.5" height="60" /></element>
<element ref="cblue"><bounds x="10" yc="30" width="60" height="0.5" /></element>
<element ref="cblue"><bounds x="10" yc="50" width="60" height="0.5" /></element>
</collection>
</group>
<!-- chess -->
<group name="sb_board0">
<bounds x="0" y="0" width="80" height="80" />
<group ref="sb_board_base"><bounds x="0" y="0" width="80" height="80" /></group>
<!-- sensors, pieces -->
<repeat count="8">
<param name="y" start="0" increment="10" />
<param name="i" start="8" increment="-1" />
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x01"><bounds x="0" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x02"><bounds x="10" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x04"><bounds x="20" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x08"><bounds x="30" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x10"><bounds x="40" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x20"><bounds x="50" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x40"><bounds x="60" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x80"><bounds x="70" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element name="piece_a~i~" ref="piece0"><bounds x="0" y="~y~" width="10" height="10" /></element>
<element name="piece_b~i~" ref="piece0"><bounds x="10" y="~y~" width="10" height="10" /></element>
<element name="piece_c~i~" ref="piece0"><bounds x="20" y="~y~" width="10" height="10" /></element>
<element name="piece_d~i~" ref="piece0"><bounds x="30" y="~y~" width="10" height="10" /></element>
<element name="piece_e~i~" ref="piece0"><bounds x="40" y="~y~" width="10" height="10" /></element>
<element name="piece_f~i~" ref="piece0"><bounds x="50" y="~y~" width="10" height="10" /></element>
<element name="piece_g~i~" ref="piece0"><bounds x="60" y="~y~" width="10" height="10" /></element>
<element name="piece_h~i~" ref="piece0"><bounds x="70" y="~y~" width="10" height="10" /></element>
</repeat>
</group>
<!-- checkers -->
<group name="sb_board1">
<bounds x="0" y="0" width="80" height="80" />
<group ref="sb_board_base"><bounds x="0" y="0" width="80" height="80" /></group>
<!-- sensors, pieces -->
<repeat count="8">
<param name="y" start="0" increment="10" />
<param name="i" start="8" increment="-1" />
<element ref="hlbb" inputtag="board1:RANK.~i~" inputmask="0x01"><bounds x="0" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board1:RANK.~i~" inputmask="0x02"><bounds x="10" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board1:RANK.~i~" inputmask="0x04"><bounds x="20" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board1:RANK.~i~" inputmask="0x08"><bounds x="30" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board1:RANK.~i~" inputmask="0x10"><bounds x="40" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board1:RANK.~i~" inputmask="0x20"><bounds x="50" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board1:RANK.~i~" inputmask="0x40"><bounds x="60" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board1:RANK.~i~" inputmask="0x80"><bounds x="70" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element name="piece1_a~i~" ref="piece1"><bounds x="0" y="~y~" width="10" height="10" /></element>
<element name="piece1_b~i~" ref="piece1"><bounds x="10" y="~y~" width="10" height="10" /></element>
<element name="piece1_c~i~" ref="piece1"><bounds x="20" y="~y~" width="10" height="10" /></element>
<element name="piece1_d~i~" ref="piece1"><bounds x="30" y="~y~" width="10" height="10" /></element>
<element name="piece1_e~i~" ref="piece1"><bounds x="40" y="~y~" width="10" height="10" /></element>
<element name="piece1_f~i~" ref="piece1"><bounds x="50" y="~y~" width="10" height="10" /></element>
<element name="piece1_g~i~" ref="piece1"><bounds x="60" y="~y~" width="10" height="10" /></element>
<element name="piece1_h~i~" ref="piece1"><bounds x="70" y="~y~" width="10" height="10" /></element>
<element name="piece1_a~i~" ref="piece1_sel"><bounds x="0" y="~y~" width="10" height="10" /><color alpha="0.5" /></element>
<element name="piece1_b~i~" ref="piece1_sel"><bounds x="10" y="~y~" width="10" height="10" /><color alpha="0.5" /></element>
<element name="piece1_c~i~" ref="piece1_sel"><bounds x="20" y="~y~" width="10" height="10" /><color alpha="0.5" /></element>
<element name="piece1_d~i~" ref="piece1_sel"><bounds x="30" y="~y~" width="10" height="10" /><color alpha="0.5" /></element>
<element name="piece1_e~i~" ref="piece1_sel"><bounds x="40" y="~y~" width="10" height="10" /><color alpha="0.5" /></element>
<element name="piece1_f~i~" ref="piece1_sel"><bounds x="50" y="~y~" width="10" height="10" /><color alpha="0.5" /></element>
<element name="piece1_g~i~" ref="piece1_sel"><bounds x="60" y="~y~" width="10" height="10" /><color alpha="0.5" /></element>
<element name="piece1_h~i~" ref="piece1_sel"><bounds x="70" y="~y~" width="10" height="10" /><color alpha="0.5" /></element>
</repeat>
</group>
<!-- tic-tac-toe -->
<group name="sb_board2">
<bounds x="0" y="0" width="80" height="80" />
<group ref="sb_board_base"><bounds x="0" y="0" width="80" height="80" /></group>
<!-- sensors, pieces (use only 9 of them here) -->
<element ref="hlbb" inputtag="board2:RANK.7" inputmask="0x02"><bounds x="10" y="10" width="20" height="20" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board2:RANK.7" inputmask="0x08"><bounds x="30" y="10" width="20" height="20" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board2:RANK.7" inputmask="0x20"><bounds x="50" y="10" width="20" height="20" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board2:RANK.5" inputmask="0x02"><bounds x="10" y="30" width="20" height="20" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board2:RANK.5" inputmask="0x08"><bounds x="30" y="30" width="20" height="20" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board2:RANK.5" inputmask="0x20"><bounds x="50" y="30" width="20" height="20" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board2:RANK.3" inputmask="0x02"><bounds x="10" y="50" width="20" height="20" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board2:RANK.3" inputmask="0x08"><bounds x="30" y="50" width="20" height="20" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board2:RANK.3" inputmask="0x20"><bounds x="50" y="50" width="20" height="20" /><color alpha="0.04" /></element>
<element name="piece2_b7" ref="piece2"><bounds x="10" y="10" width="20" height="20" /></element>
<element name="piece2_d7" ref="piece2"><bounds x="30" y="10" width="20" height="20" /></element>
<element name="piece2_f7" ref="piece2"><bounds x="50" y="10" width="20" height="20" /></element>
<element name="piece2_b5" ref="piece2"><bounds x="10" y="30" width="20" height="20" /></element>
<element name="piece2_d5" ref="piece2"><bounds x="30" y="30" width="20" height="20" /></element>
<element name="piece2_f5" ref="piece2"><bounds x="50" y="30" width="20" height="20" /></element>
<element name="piece2_b3" ref="piece2"><bounds x="10" y="50" width="20" height="20" /></element>
<element name="piece2_d3" ref="piece2"><bounds x="30" y="50" width="20" height="20" /></element>
<element name="piece2_f3" ref="piece2"><bounds x="50" y="50" width="20" height="20" /></element>
<element name="piece2_b7" ref="piece2_sel"><bounds x="10" y="10" width="20" height="20" /><color alpha="0.5" /></element>
<element name="piece2_d7" ref="piece2_sel"><bounds x="30" y="10" width="20" height="20" /><color alpha="0.5" /></element>
<element name="piece2_f7" ref="piece2_sel"><bounds x="50" y="10" width="20" height="20" /><color alpha="0.5" /></element>
<element name="piece2_b5" ref="piece2_sel"><bounds x="10" y="30" width="20" height="20" /><color alpha="0.5" /></element>
<element name="piece2_d5" ref="piece2_sel"><bounds x="30" y="30" width="20" height="20" /><color alpha="0.5" /></element>
<element name="piece2_f5" ref="piece2_sel"><bounds x="50" y="30" width="20" height="20" /><color alpha="0.5" /></element>
<element name="piece2_b3" ref="piece2_sel"><bounds x="10" y="50" width="20" height="20" /><color alpha="0.5" /></element>
<element name="piece2_d3" ref="piece2_sel"><bounds x="30" y="50" width="20" height="20" /><color alpha="0.5" /></element>
<element name="piece2_f3" ref="piece2_sel"><bounds x="50" y="50" width="20" height="20" /><color alpha="0.5" /></element>
</group>
<!-- sb ui -->
<element name="hlub" defstate="0">
<rect state="1"><color red="0" green="0" blue="0" /></rect>
</element>
<element name="text_uit1a"><text string="SB.CHESS"><color red="0.81" green="0.8" blue="0.79" /></text></element>
<element name="text_uit1b"><text string="SB.CHECKERS"><color red="0.81" green="0.8" blue="0.79" /></text></element>
<element name="text_uit1c"><text string="SB.TIC-TAC-TOE"><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"><text string="RESET"><color red="0.01" green="0.01" blue="0.01" /></text></element>
<element name="text_uib3"><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"><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"><text string=" &lt;&lt;"><color red="0.01" green="0.01" blue="0.01" /></text></element>
<element name="text_uiu2b"><text string=" &lt; "><color red="0.01" green="0.01" blue="0.01" /></text></element>
<element name="text_uiu2c"><text string=" &gt;"><color red="0.01" green="0.01" blue="0.01" /></text></element>
<element name="text_uiu2d"><text string=" &gt;&gt;"><color red="0.01" green="0.01" blue="0.01" /></text></element>
<element name="text_uiu3b"><text string="/"><color red="0.81" green="0.8" blue="0.79" /></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_uiu3c" defstate="0">
<simplecounter maxstate="999" digits="1" align="1">
<color red="0.81" green="0.8" blue="0.79" />
</simplecounter>
</element>
<!-- chess -->
<group name="sb_ui0">
<bounds x="0" y="0" width="10" height="80" />
<element ref="cblack"><bounds x="0" y="0" width="10" height="1" /></element>
<element ref="cblack"><bounds x="0" y="7" width="10" height="1" /></element>
<element ref="cblack"><bounds x="0" y="79" width="10" height="1" /></element>
<element ref="text_uit1a"><bounds x="0" y="2" width="10" height="2" /></element>
<element ref="text_uit2"><bounds x="0" y="4" width="10" height="2" /></element>
<!-- board -->
<element ref="text_uib1"><bounds x="0" y="9" width="10" height="2" /></element>
<element ref="cwhite"><bounds x="1" y="11.5" width="8" height="2.5" /></element>
<element ref="cwhite"><bounds x="1" y="15" width="8" height="2.5" /></element>
<element ref="text_uib2"><bounds x="1.5" y="11.75" width="7" height="2" /></element>
<element ref="text_uib3"><bounds x="1.5" y="15.25" width="7" height="2" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x200"><bounds x="1" y="11.5" width="8" height="2.5" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x100"><bounds x="1" y="15" width="8" height="2.5" /><color alpha="0.25" /></element>
<!-- spawn -->
<element ref="text_uis1"><bounds x="0" y="20.5" width="10" height="2" /></element>
<element ref="cwhite"><bounds x="1" y="23" width="8" height="12" /></element>
<element ref="cwhite"><bounds x="1" y="36" width="8" height="12" /></element>
<element name="piece_ui1" ref="piece0"><bounds x="1" y="23" width="4" height="4" /></element>
<element name="piece_ui2" ref="piece0"><bounds x="1" y="27" width="4" height="4" /></element>
<element name="piece_ui3" ref="piece0"><bounds x="1" y="31" width="4" height="4" /></element>
<element name="piece_ui4" ref="piece0"><bounds x="5" y="23" width="4" height="4" /></element>
<element name="piece_ui5" ref="piece0"><bounds x="5" y="27" width="4" height="4" /></element>
<element name="piece_ui6" ref="piece0"><bounds x="5" y="31" width="4" height="4" /></element>
<element name="piece_ui7" ref="piece0"><bounds x="1" y="36" width="4" height="4" /></element>
<element name="piece_ui8" ref="piece0"><bounds x="1" y="40" width="4" height="4" /></element>
<element name="piece_ui9" ref="piece0"><bounds x="1" y="44" width="4" height="4" /></element>
<element name="piece_ui10" ref="piece0"><bounds x="5" y="36" width="4" height="4" /></element>
<element name="piece_ui11" ref="piece0"><bounds x="5" y="40" width="4" height="4" /></element>
<element name="piece_ui12" ref="piece0"><bounds x="5" y="44" width="4" height="4" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0001"><bounds x="1" y="23" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0002"><bounds x="1" y="27" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0004"><bounds x="1" y="31" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0008"><bounds x="5" y="23" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0010"><bounds x="5" y="27" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0020"><bounds x="5" y="31" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0040"><bounds x="1" y="36" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0080"><bounds x="1" y="40" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0100"><bounds x="1" y="44" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0200"><bounds x="5" y="36" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0400"><bounds x="5" y="40" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0800"><bounds x="5" y="44" width="4" height="4" /><color alpha="0.25" /></element>
<!-- hand -->
<element ref="text_uih1"><bounds x="0" y="51" width="10" height="2" /></element>
<element ref="cblack"><bounds x="1" y="53.5" width="8" height="6" /></element>
<element name="piece_ui0" ref="piece0"><bounds x="2" y="53.5" width="6" height="6" /></element>
<element ref="cwhite"><bounds x="1" y="60.5" width="8" height="2.5" /></element>
<element ref="text_uih2"><bounds x="1.5" y="60.75" width="7" height="2" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x08"><bounds x="1" y="60.5" width="8" height="2.5" /><color alpha="0.25" /></element>
<!-- undo -->
<element ref="text_uiu1"><bounds x="0" y="66" width="10" height="2" /></element>
<element ref="cwhite"><bounds x="1" y="68.5" width="1.7" height="6" /></element>
<element ref="cwhite"><bounds x="3.1" y="68.5" width="1.7" height="6" /></element>
<element ref="cwhite"><bounds x="5.2" y="68.5" width="1.7" height="6" /></element>
<element ref="cwhite"><bounds x="7.3" y="68.5" width="1.7" height="6" /></element>
<element ref="text_uiu2a"><bounds x="1" y="69.5" width="1.7" height="4" /></element>
<element ref="text_uiu2b"><bounds x="3.1" y="69.5" width="1.7" height="4" /></element>
<element ref="text_uiu2c"><bounds x="5.2" y="69.5" width="1.7" height="4" /></element>
<element ref="text_uiu2d"><bounds x="7.3" y="69.5" width="1.7" height="4" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x10"><bounds x="1" y="68.5" width="1.7" height="6" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x20"><bounds x="3.1" y="68.5" width="1.7" height="6" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x40"><bounds x="5.2" y="68.5" width="1.7" height="6" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x80"><bounds x="7.3" y="68.5" width="1.7" height="6" /><color alpha="0.25" /></element>
<element name="count_ui0" ref="text_uiu3a"><bounds x="0" y="75" width="4" height="2" /></element>
<element name="count_ui1" ref="text_uiu3c"><bounds x="6" y="75" width="4" height="2" /></element>
<element ref="text_uiu3b"><bounds x="4" y="75" width="2" height="2" /></element>
</group>
<!-- checkers -->
<group name="sb_ui1">
<bounds x="0" y="0" width="10" height="63" />
<element ref="cblack"><bounds x="0" y="0" width="10" height="1" /></element>
<element ref="cblack"><bounds x="0" y="7" width="10" height="1" /></element>
<element ref="cblack"><bounds x="0" y="62" width="10" height="1" /></element>
<element ref="text_uit1b"><bounds x="0" y="2" width="10" height="2" /></element>
<element ref="text_uit2"><bounds x="0" y="4" width="10" height="2" /></element>
<!-- board -->
<element ref="text_uib1"><bounds x="0" y="9" width="10" height="2" /></element>
<element ref="cwhite"><bounds x="1" y="11.5" width="8" height="2.5" /></element>
<element ref="cwhite"><bounds x="1" y="15" width="8" height="2.5" /></element>
<element ref="text_uib2"><bounds x="1.5" y="11.75" width="7" height="2" /></element>
<element ref="text_uib3"><bounds x="1.5" y="15.25" width="7" height="2" /></element>
<element ref="hlub" inputtag="board1:UI" inputmask="0x200"><bounds x="1" y="11.5" width="8" height="2.5" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board1:UI" inputmask="0x100"><bounds x="1" y="15" width="8" height="2.5" /><color alpha="0.25" /></element>
<!-- spawn -->
<element ref="text_uis1"><bounds x="0" y="20.5" width="10" height="2" /></element>
<element ref="cwhite"><bounds x="1" y="23" width="8" height="8" /></element>
<element name="piece1_ui1" ref="piece1"><bounds x="1" y="23" width="4" height="4" /></element>
<element name="piece1_ui2" ref="piece1"><bounds x="1" y="27" width="4" height="4" /></element>
<element name="piece1_ui3" ref="piece1"><bounds x="5" y="23" width="4" height="4" /></element>
<element name="piece1_ui4" ref="piece1"><bounds x="5" y="27" width="4" height="4" /></element>
<element ref="hlub" inputtag="board1:SPAWN" inputmask="0x0001"><bounds x="1" y="23" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board1:SPAWN" inputmask="0x0002"><bounds x="1" y="27" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board1:SPAWN" inputmask="0x0004"><bounds x="5" y="23" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board1:SPAWN" inputmask="0x0008"><bounds x="5" y="27" width="4" height="4" /><color alpha="0.25" /></element>
<!-- hand -->
<element ref="text_uih1"><bounds x="0" y="34" width="10" height="2" /></element>
<element ref="cblack"><bounds x="1" y="36.5" width="8" height="6" /></element>
<element name="piece1_ui0" ref="piece1"><bounds x="2" y="36.5" width="6" height="6" /></element>
<element ref="cwhite"><bounds x="1" y="43.5" width="8" height="2.5" /></element>
<element ref="text_uih2"><bounds x="1.5" y="43.75" width="7" height="2" /></element>
<element ref="hlub" inputtag="board1:UI" inputmask="0x08"><bounds x="1" y="43.5" width="8" height="2.5" /><color alpha="0.25" /></element>
<!-- undo -->
<element ref="text_uiu1"><bounds x="0" y="49" width="10" height="2" /></element>
<element ref="cwhite"><bounds x="1" y="51.5" width="1.7" height="6" /></element>
<element ref="cwhite"><bounds x="3.1" y="51.5" width="1.7" height="6" /></element>
<element ref="cwhite"><bounds x="5.2" y="51.5" width="1.7" height="6" /></element>
<element ref="cwhite"><bounds x="7.3" y="51.5" width="1.7" height="6" /></element>
<element ref="text_uiu2a"><bounds x="1" y="52.5" width="1.7" height="4" /></element>
<element ref="text_uiu2b"><bounds x="3.1" y="52.5" width="1.7" height="4" /></element>
<element ref="text_uiu2c"><bounds x="5.2" y="52.5" width="1.7" height="4" /></element>
<element ref="text_uiu2d"><bounds x="7.3" y="52.5" width="1.7" height="4" /></element>
<element ref="hlub" inputtag="board1:UI" inputmask="0x10"><bounds x="1" y="51.5" width="1.7" height="6" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board1:UI" inputmask="0x20"><bounds x="3.1" y="51.5" width="1.7" height="6" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board1:UI" inputmask="0x40"><bounds x="5.2" y="51.5" width="1.7" height="6" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board1:UI" inputmask="0x80"><bounds x="7.3" y="51.5" width="1.7" height="6" /><color alpha="0.25" /></element>
<element name="count1_ui0" ref="text_uiu3a"><bounds x="0" y="58" width="4" height="2" /></element>
<element name="count1_ui1" ref="text_uiu3c"><bounds x="6" y="58" width="4" height="2" /></element>
<element ref="text_uiu3b"><bounds x="4" y="58" width="2" height="2" /></element>
</group>
<!-- tic-tac-toe -->
<group name="sb_ui2">
<bounds x="0" y="0" width="10" height="55.5" />
<element ref="cblack"><bounds x="0" y="0" width="10" height="1" /></element>
<element ref="cblack"><bounds x="0" y="7" width="10" height="1" /></element>
<element ref="cblack"><bounds x="0" y="54.5" width="10" height="1" /></element>
<element ref="text_uit1c"><bounds x="0" y="2" width="10" height="2" /></element>
<element ref="text_uit2"><bounds x="0" y="4" width="10" height="2" /></element>
<!-- board -->
<element ref="text_uib1"><bounds x="0" y="9" width="10" height="2" /></element>
<element ref="cwhite"><bounds x="1" y="11.5" width="8" height="2.5" /></element>
<element ref="text_uib2"><bounds x="1.5" y="11.75" width="7" height="2" /></element>
<element ref="hlub" inputtag="board2:UI" inputmask="0x200"><bounds x="1" y="11.5" width="8" height="2.5" /><color alpha="0.25" /></element>
<!-- spawn -->
<element ref="text_uis1"><bounds x="0" y="17" width="10" height="2" /></element>
<element ref="cwhite"><bounds x="1" y="19.5" width="8" height="4" /></element>
<element name="piece2_ui1" ref="piece2"><bounds x="1" y="19.5" width="4" height="4" /></element>
<element name="piece2_ui2" ref="piece2"><bounds x="5" y="19.5" width="4" height="4" /></element>
<element ref="hlub" inputtag="board2:SPAWN" inputmask="0x0001"><bounds x="1" y="19.5" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board2:SPAWN" inputmask="0x0002"><bounds x="5" y="19.5" width="4" height="4" /><color alpha="0.25" /></element>
<!-- hand -->
<element ref="text_uih1"><bounds x="0" y="26.5" width="10" height="2" /></element>
<element ref="cblack"><bounds x="1" y="29" width="8" height="6" /></element>
<element name="piece2_ui0" ref="piece2"><bounds x="2" y="29" width="6" height="6" /></element>
<element ref="cwhite"><bounds x="1" y="36" width="8" height="2.5" /></element>
<element ref="text_uih2"><bounds x="1.5" y="36.25" width="7" height="2" /></element>
<element ref="hlub" inputtag="board2:UI" inputmask="0x08"><bounds x="1" y="36" width="8" height="2.5" /><color alpha="0.25" /></element>
<!-- undo -->
<element ref="text_uiu1"><bounds x="0" y="41.5" width="10" height="2" /></element>
<element ref="cwhite"><bounds x="1" y="44" width="1.7" height="6" /></element>
<element ref="cwhite"><bounds x="3.1" y="44" width="1.7" height="6" /></element>
<element ref="cwhite"><bounds x="5.2" y="44" width="1.7" height="6" /></element>
<element ref="cwhite"><bounds x="7.3" y="44" width="1.7" height="6" /></element>
<element ref="text_uiu2a"><bounds x="1" y="45" width="1.7" height="4" /></element>
<element ref="text_uiu2b"><bounds x="3.1" y="45" width="1.7" height="4" /></element>
<element ref="text_uiu2c"><bounds x="5.2" y="45" width="1.7" height="4" /></element>
<element ref="text_uiu2d"><bounds x="7.3" y="45" width="1.7" height="4" /></element>
<element ref="hlub" inputtag="board2:UI" inputmask="0x10"><bounds x="1" y="44" width="1.7" height="6" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board2:UI" inputmask="0x20"><bounds x="3.1" y="44" width="1.7" height="6" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board2:UI" inputmask="0x40"><bounds x="5.2" y="44" width="1.7" height="6" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board2:UI" inputmask="0x80"><bounds x="7.3" y="44" width="1.7" height="6" /><color alpha="0.25" /></element>
<element name="count2_ui0" ref="text_uiu3a"><bounds x="0" y="50.5" width="4" height="2" /></element>
<element name="count2_ui1" ref="text_uiu3c"><bounds x="6" y="50.5" width="4" height="2" /></element>
<element ref="text_uiu3b"><bounds x="4" y="50.5" width="2" height="2" /></element>
</group>
<!-- button panel -->
<element name="but" defstate="0">
<rect><color red="0.215" green="0.21" blue="0.21" /></rect>
<rect state="1"><color red="1" green="1" blue="1" alpha="0.17" /></rect>
</element>
<element name="text_b1"><text string="NEW"></text></element>
<element name="text_b1a"><text string="GAME"></text></element>
<element name="text_b2"><text string="LEVEL"></text></element>
<element name="text_b3"><text string="MULTI-"></text></element>
<element name="text_b3a"><text string="MOVE"></text></element>
<element name="text_b4"><text string="TAKE"></text></element>
<element name="text_b4a"><text string="BACK"></text></element>
<element name="text_b5"><text string="PLAY"></text></element>
<element name="text_p1"><image file="chess/wk.svg"></image></element>
<element name="text_p2"><image file="chess/wq.svg"></image></element>
<element name="text_p3"><image file="chess/wr.svg"></image></element>
<element name="text_p4"><image file="chess/wb.svg"></image></element>
<element name="text_p5"><image file="chess/wn.svg"></image></element>
<element name="text_p6"><image file="chess/wp.svg"></image></element>
<group name="buttons">
<bounds x="0" y="0" width="15" height="30" />
<element ref="text_b1"><bounds x="2" yc="13.805" width="4" height="0.391" /></element>
<element ref="text_b1a"><bounds x="2" yc="14.195" width="4" height="0.391" /></element>
<element ref="text_b2"><bounds x="2" yc="16" width="4" height="0.391" /></element>
<element ref="text_b3"><bounds x="2" yc="17.805" width="4" height="0.391" /></element>
<element ref="text_b3a"><bounds x="2" yc="18.195" width="4" height="0.391" /></element>
<element ref="text_b4"><bounds x="2" yc="19.805" width="4" height="0.391" /></element>
<element ref="text_b4a"><bounds x="2" yc="20.195" width="4" height="0.391" /></element>
<element ref="text_b5"><bounds x="2" yc="22" width="4" height="0.391" /></element>
<repeat count="6">
<param name="y" start="1.95" increment="2" />
<param name="i" start="1" increment="1" />
<element ref="text_p~i~"><bounds xc="4" yc="~y~" width="1.0" height="1.0" /></element>
</repeat>
<element ref="cwhite" blend="multiply"><bounds x="3" y="0" width="10" height="30" /></element>
<element ref="but" inputtag="IN.1" inputmask="0x20"><bounds x="4.9" yc="2" width="1.9" height="0.7" /></element>
<element ref="but" inputtag="IN.1" inputmask="0x10"><bounds x="4.9" yc="4" width="1.9" height="0.7" /></element>
<element ref="but" inputtag="IN.1" inputmask="0x08"><bounds x="4.9" yc="6" width="1.9" height="0.7" /></element>
<element ref="but" inputtag="IN.1" inputmask="0x04"><bounds x="4.9" yc="8" width="1.9" height="0.7" /></element>
<element ref="but" inputtag="IN.1" inputmask="0x02"><bounds x="4.9" yc="10" width="1.9" height="0.7" /></element>
<element ref="but" inputtag="IN.1" inputmask="0x01"><bounds x="4.9" yc="12" width="1.9" height="0.7" /></element>
<element ref="but" inputtag="IN.0" inputmask="0x01"><bounds x="4.9" yc="14" width="1.9" height="0.7" /></element>
<element ref="but" inputtag="IN.0" inputmask="0x02"><bounds x="4.9" yc="16" width="1.9" height="0.7" /></element>
<element ref="but" inputtag="IN.0" inputmask="0x10"><bounds x="4.9" yc="18" width="1.9" height="0.7" /></element>
<element ref="but" inputtag="IN.0" inputmask="0x08"><bounds x="4.9" yc="20" width="1.9" height="0.7" /></element>
<element ref="but" inputtag="IN.0" inputmask="0x04"><bounds x="4.9" yc="22" width="1.9" height="0.7" /></element>
</group>
<!-- common view -->
<group name="common">
<bounds x="-10" y="0" width="150" height="100" />
<group ref="buttons"><bounds x="77" y="-3" width="57.5" height="115" /></group>
<!-- chessboard coords/labels -->
<element ref="text_8"><bounds x="84.6" y="7" width="2" height="2" /></element>
<element ref="text_7"><bounds x="84.6" y="17" width="2" height="2" /></element>
<element ref="text_6"><bounds x="84.6" y="27" width="2" height="2" /></element>
<element ref="text_5"><bounds x="84.6" y="37" width="2" height="2" /></element>
<element ref="text_4"><bounds x="84.6" y="47" width="2" height="2" /></element>
<element ref="text_3"><bounds x="84.6" y="57" width="2" height="2" /></element>
<element ref="text_2"><bounds x="84.6" y="67" width="2" height="2" /></element>
<element ref="text_1"><bounds x="84.6" y="77" width="2" height="2" /></element>
<element ref="text_a"><bounds x="8" y="0.2" width="2" height="2" /></element>
<element ref="text_b"><bounds x="18" y="0.2" width="2" height="2" /></element>
<element ref="text_c"><bounds x="28" y="0.2" width="2" height="2" /></element>
<element ref="text_d"><bounds x="38" y="0.2" width="2" height="2" /></element>
<element ref="text_e"><bounds x="48" y="0.2" width="2" height="2" /></element>
<element ref="text_f"><bounds x="58" y="0.2" width="2" height="2" /></element>
<element ref="text_g"><bounds x="68" y="0.2" width="2" height="2" /></element>
<element ref="text_h"><bounds x="78" y="0.2" width="2" height="2" /></element>
<element ref="text_l1"><bounds x="-9.0" yc="8" width="10" height="1.5" /></element>
<element ref="text_l2"><bounds x="-9.0" yc="28" width="10" height="1.5" /></element>
<element ref="text_l3"><bounds x="-9.0" yc="37.25" width="10" height="1.5" /></element>
<element ref="text_l3a"><bounds x="-9.0" yc="38.75" width="9.5" height="1.5" /></element>
<element ref="text_l4"><bounds x="-9.0" yc="47.25" width="10" height="1.5" /></element>
<element ref="text_l4a"><bounds x="-9.0" yc="48.75" width="9.5" height="1.5" /></element>
<element ref="text_l5"><bounds x="-9.0" yc="78" width="10" height="1.5" /></element>
<element ref="text_l6"><bounds xc="14" yc="84.75" width="10" height="1.5" /></element>
<element ref="text_l7"><bounds xc="44" yc="84.75" width="10" height="1.5" /></element>
<element ref="text_l8"><bounds xc="74" yc="84.75" width="10" height="1.5" /></element>
<element ref="text_l9"><bounds xc="74" yc="86.25" width="10" height="1.5" /></element>
<element ref="cwhite" blend="multiply"><bounds x="-10" y="0" width="98" height="100" /></element>
<!-- chessboard leds -->
<element name="0.15" ref="led"><bounds x="1.5" y="7.25" width="1.5" height="1.5" /></element>
<element name="0.14" ref="led"><bounds x="1.5" y="17.25" width="1.5" height="1.5" /></element>
<element name="0.13" ref="led"><bounds x="1.5" y="27.25" width="1.5" height="1.5" /></element>
<element name="0.12" ref="led"><bounds x="1.5" y="37.25" width="1.5" height="1.5" /></element>
<element name="0.11" ref="led"><bounds x="1.5" y="47.25" width="1.5" height="1.5" /></element>
<element name="0.10" ref="led"><bounds x="1.5" y="57.25" width="1.5" height="1.5" /></element>
<element name="0.9" ref="led"><bounds x="1.5" y="67.25" width="1.5" height="1.5" /></element>
<element name="0.8" ref="led"><bounds x="1.5" y="77.25" width="1.5" height="1.5" /></element>
<element name="0.7" ref="led"><bounds x="8.5" y="84.0" width="1.5" height="1.5" /></element>
<element name="0.6" ref="led"><bounds x="18.5" y="84.0" width="1.5" height="1.5" /></element>
<element name="0.5" ref="led"><bounds x="28.5" y="84.0" width="1.5" height="1.5" /></element>
<element name="0.4" ref="led"><bounds x="38.5" y="84.0" width="1.5" height="1.5" /></element>
<element name="0.3" ref="led"><bounds x="48.5" y="84.0" width="1.5" height="1.5" /></element>
<element name="0.2" ref="led"><bounds x="58.5" y="84.0" width="1.5" height="1.5" /></element>
<element name="0.1" ref="led"><bounds x="68.5" y="84.0" width="1.5" height="1.5" /></element>
<element name="0.0" ref="led"><bounds x="78.5" y="84.0" width="1.5" height="1.5" /></element>
<element ref="cwhite"><bounds x="3.7" y="2.7" width="80.6" height="80.6" /></element>
</group>
<!-- build screen -->
<view name="Internal Layout (Chess)">
<bounds left="-16.5" right="108" top="-2" bottom="88" />
<group ref="common"><bounds x="-10" y="0" width="150" height="100" /></group>
<group ref="sb_board0"><bounds x="4" y="3" width="80" height="80" /></group>
<group ref="sb_ui0"><bounds x="-15" yc="43" width="10" height="80" /></group>
</view>
<view name="Internal Layout (Checkers)">
<bounds left="-16.5" right="108" top="-2" bottom="88" />
<group ref="common"><bounds x="-10" y="0" width="150" height="100" /></group>
<group ref="sb_board1"><bounds x="4" y="3" width="80" height="80" /></group>
<group ref="sb_ui1"><bounds x="-15" yc="43" width="10" height="63" /></group>
</view>
<view name="Internal Layout (Tic-Tac-Toe)">
<bounds left="-16.5" right="108" top="-2" bottom="88" />
<group ref="common"><bounds x="-10" y="0" width="150" height="100" /></group>
<group ref="sb_board2"><bounds x="4" y="3" width="80" height="80" /></group>
<group ref="sb_ui2"><bounds x="-15" yc="43" width="10" height="55.5" /></group>
</view>
</mamelayout>

View File

@ -0,0 +1,530 @@
<?xml version="1.0"?>
<!--
license:CC0-1.0
authors:hap
-->
<mamelayout version="2">
<!-- define elements -->
<element name="led" defstate="0">
<disk state="1"><color red="1.0" green="0.1" blue="0.15" /></disk>
<disk state="0"><color red="0.1" green="0.01" blue="0.015" /></disk>
</element>
<element name="box">
<rect>
<bounds xc="0" yc="0" width="1" height="1" />
<color red="0.31" green="0.4" blue="0.48" />
</rect>
<rect>
<bounds xc="0" yc="0" width="0.7" height="0.7" />
<color red="0.81" green="0.8" blue="0.79" />
</rect>
</element>
<element name="text_1"><text string="1"><color red="0.05" green="0.1" blue="0.3" /></text></element>
<element name="text_2"><text string="2"><color red="0.05" green="0.1" blue="0.3" /></text></element>
<element name="text_3"><text string="3"><color red="0.05" green="0.1" blue="0.3" /></text></element>
<element name="text_4"><text string="4"><color red="0.05" green="0.1" blue="0.3" /></text></element>
<element name="text_5"><text string="5"><color red="0.05" green="0.1" blue="0.3" /></text></element>
<element name="text_6"><text string="6"><color red="0.05" green="0.1" blue="0.3" /></text></element>
<element name="text_7"><text string="7"><color red="0.05" green="0.1" blue="0.3" /></text></element>
<element name="text_8"><text string="8"><color red="0.05" green="0.1" blue="0.3" /></text></element>
<element name="text_a"><text string="A"><color red="0.05" green="0.1" blue="0.3" /></text></element>
<element name="text_b"><text string="B"><color red="0.05" green="0.1" blue="0.3" /></text></element>
<element name="text_c"><text string="C"><color red="0.05" green="0.1" blue="0.3" /></text></element>
<element name="text_d"><text string="D"><color red="0.05" green="0.1" blue="0.3" /></text></element>
<element name="text_e"><text string="E"><color red="0.05" green="0.1" blue="0.3" /></text></element>
<element name="text_f"><text string="F"><color red="0.05" green="0.1" blue="0.3" /></text></element>
<element name="text_g"><text string="G"><color red="0.05" green="0.1" blue="0.3" /></text></element>
<element name="text_h"><text string="H"><color red="0.05" green="0.1" blue="0.3" /></text></element>
<element name="text_l1">
<rect><color red="0.81" green="0.8" blue="0.79" /></rect>
<text string="CHECK"><color red="0.05" green="0.1" blue="0.3" /></text>
</element>
<element name="text_l2">
<rect><color red="0.81" green="0.8" blue="0.79" /></rect>
<text string="DRAW"><color red="0.05" green="0.1" blue="0.3" /></text>
</element>
<element name="text_l3">
<rect><color red="0.81" green="0.8" blue="0.79" /></rect>
<text string="MATE"><color red="0.05" green="0.1" blue="0.3" /></text>
</element>
<element name="text_l4"><text string="COACH"><color red="0.56" green="0.28" blue="0.2" /></text></element>
<element name="text_l5"><text string="NORMAL"><color red="0.05" green="0.1" blue="0.3" /></text></element>
<element name="text_l6"><text string="SILENT"><color red="0.05" green="0.1" blue="0.3" /></text></element>
<!-- sb board -->
<element name="cblack"><rect><color red="0.31" green="0.4" blue="0.48" /></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.svg" state="1"/>
<image file="chess/wn.svg" state="2"/>
<image file="chess/wb.svg" state="3"/>
<image file="chess/wr.svg" state="4"/>
<image file="chess/wq.svg" state="5"/>
<image file="chess/wk.svg" state="6"/>
<image file="chess/bp.svg" state="7"/>
<image file="chess/bn.svg" state="8"/>
<image file="chess/bb.svg" state="9"/>
<image file="chess/br.svg" state="10"/>
<image file="chess/bq.svg" state="11"/>
<image file="chess/bk.svg" state="12"/>
<!-- selected pieces -->
<image file="chess/wp.svg" state="13"><color alpha="0.5" /></image>
<image file="chess/wn.svg" state="14"><color alpha="0.5" /></image>
<image file="chess/wb.svg" state="15"><color alpha="0.5" /></image>
<image file="chess/wr.svg" state="16"><color alpha="0.5" /></image>
<image file="chess/wq.svg" state="17"><color alpha="0.5" /></image>
<image file="chess/wk.svg" state="18"><color alpha="0.5" /></image>
<image file="chess/bp.svg" state="19"><color alpha="0.5" /></image>
<image file="chess/bn.svg" state="20"><color alpha="0.5" /></image>
<image file="chess/bb.svg" state="21"><color alpha="0.5" /></image>
<image file="chess/br.svg" state="22"><color alpha="0.5" /></image>
<image file="chess/bq.svg" state="23"><color alpha="0.5" /></image>
<image file="chess/bk.svg" state="24"><color alpha="0.5" /></image>
</element>
<group name="sb_board">
<bounds x="0" y="0" width="80" height="80" />
<!-- squares (avoid seams) -->
<element ref="cwhite"><bounds x="0" y="0" width="11" height="11" /></element>
<element ref="cblack"><bounds x="10" y="0" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="20" y="0" width="11" height="11" /></element>
<element ref="cblack"><bounds x="30" y="0" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="40" y="0" width="11" height="11" /></element>
<element ref="cblack"><bounds x="50" y="0" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="60" y="0" width="11" height="11" /></element>
<element ref="cblack"><bounds x="70" y="0" width="10" height="11" /></element>
<element ref="cblack"><bounds x="0" y="10" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="10" y="10" width="11" height="11" /></element>
<element ref="cblack"><bounds x="20" y="10" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="30" y="10" width="11" height="11" /></element>
<element ref="cblack"><bounds x="40" y="10" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="50" y="10" width="11" height="11" /></element>
<element ref="cblack"><bounds x="60" y="10" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="70" y="10" width="10" height="11" /></element>
<element ref="cwhite"><bounds x="0" y="20" width="11" height="11" /></element>
<element ref="cblack"><bounds x="10" y="20" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="20" y="20" width="11" height="11" /></element>
<element ref="cblack"><bounds x="30" y="20" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="40" y="20" width="11" height="11" /></element>
<element ref="cblack"><bounds x="50" y="20" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="60" y="20" width="11" height="11" /></element>
<element ref="cblack"><bounds x="70" y="20" width="10" height="11" /></element>
<element ref="cblack"><bounds x="0" y="30" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="10" y="30" width="11" height="11" /></element>
<element ref="cblack"><bounds x="20" y="30" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="30" y="30" width="11" height="11" /></element>
<element ref="cblack"><bounds x="40" y="30" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="50" y="30" width="11" height="11" /></element>
<element ref="cblack"><bounds x="60" y="30" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="70" y="30" width="10" height="11" /></element>
<element ref="cwhite"><bounds x="0" y="40" width="11" height="11" /></element>
<element ref="cblack"><bounds x="10" y="40" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="20" y="40" width="11" height="11" /></element>
<element ref="cblack"><bounds x="30" y="40" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="40" y="40" width="11" height="11" /></element>
<element ref="cblack"><bounds x="50" y="40" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="60" y="40" width="11" height="11" /></element>
<element ref="cblack"><bounds x="70" y="40" width="10" height="11" /></element>
<element ref="cblack"><bounds x="0" y="50" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="10" y="50" width="11" height="11" /></element>
<element ref="cblack"><bounds x="20" y="50" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="30" y="50" width="11" height="11" /></element>
<element ref="cblack"><bounds x="40" y="50" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="50" y="50" width="11" height="11" /></element>
<element ref="cblack"><bounds x="60" y="50" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="70" y="50" width="10" height="11" /></element>
<element ref="cwhite"><bounds x="0" y="60" width="11" height="11" /></element>
<element ref="cblack"><bounds x="10" y="60" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="20" y="60" width="11" height="11" /></element>
<element ref="cblack"><bounds x="30" y="60" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="40" y="60" width="11" height="11" /></element>
<element ref="cblack"><bounds x="50" y="60" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="60" y="60" width="11" height="11" /></element>
<element ref="cblack"><bounds x="70" y="60" width="10" height="11" /></element>
<element ref="cblack"><bounds x="0" y="70" width="11" height="10" /></element>
<element ref="cwhite"><bounds x="10" y="70" width="11" height="10" /></element>
<element ref="cblack"><bounds x="20" y="70" width="11" height="10" /></element>
<element ref="cwhite"><bounds x="30" y="70" width="11" height="10" /></element>
<element ref="cblack"><bounds x="40" y="70" width="11" height="10" /></element>
<element ref="cwhite"><bounds x="50" y="70" width="11" height="10" /></element>
<element ref="cblack"><bounds x="60" y="70" width="11" height="10" /></element>
<element ref="cwhite"><bounds x="70" y="70" width="10" height="10" /></element>
<!-- sensors, pieces -->
<repeat count="8">
<param name="y" start="0" increment="10" />
<param name="i" start="8" increment="-1" />
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x01"><bounds x="0" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x02"><bounds x="10" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x04"><bounds x="20" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x08"><bounds x="30" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x10"><bounds x="40" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x20"><bounds x="50" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x40"><bounds x="60" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x80"><bounds x="70" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element name="piece_a~i~" ref="piece"><bounds x="0" y="~y~" width="10" height="10" /></element>
<element name="piece_b~i~" ref="piece"><bounds x="10" y="~y~" width="10" height="10" /></element>
<element name="piece_c~i~" ref="piece"><bounds x="20" y="~y~" width="10" height="10" /></element>
<element name="piece_d~i~" ref="piece"><bounds x="30" y="~y~" width="10" height="10" /></element>
<element name="piece_e~i~" ref="piece"><bounds x="40" y="~y~" width="10" height="10" /></element>
<element name="piece_f~i~" ref="piece"><bounds x="50" y="~y~" width="10" height="10" /></element>
<element name="piece_g~i~" ref="piece"><bounds x="60" y="~y~" width="10" height="10" /></element>
<element name="piece_h~i~" ref="piece"><bounds x="70" y="~y~" width="10" height="10" /></element>
</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"><text string="RESET"><color red="0.01" green="0.01" blue="0.01" /></text></element>
<element name="text_uib3"><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"><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"><text string=" &lt;&lt;"><color red="0.01" green="0.01" blue="0.01" /></text></element>
<element name="text_uiu2b"><text string=" &lt; "><color red="0.01" green="0.01" blue="0.01" /></text></element>
<element name="text_uiu2c"><text string=" &gt;"><color red="0.01" green="0.01" blue="0.01" /></text></element>
<element name="text_uiu2d"><text string=" &gt;&gt;"><color red="0.01" green="0.01" blue="0.01" /></text></element>
<element name="text_uiu3b"><text string="/"><color red="0.81" green="0.8" blue="0.79" /></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_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" />
<element ref="cblack"><bounds x="0" y="0" width="10" height="1" /></element>
<element ref="cblack"><bounds x="0" y="7" width="10" height="1" /></element>
<element ref="cblack"><bounds x="0" y="79" width="10" height="1" /></element>
<element ref="text_uit1"><bounds x="0" y="2" width="10" height="2" /></element>
<element ref="text_uit2"><bounds x="0" y="4" width="10" height="2" /></element>
<!-- board -->
<element ref="text_uib1"><bounds x="0" y="9" width="10" height="2" /></element>
<element ref="cwhite"><bounds x="1" y="11.5" width="8" height="2.5" /></element>
<element ref="cwhite"><bounds x="1" y="15" width="8" height="2.5" /></element>
<element ref="text_uib2"><bounds x="1.5" y="11.75" width="7" height="2" /></element>
<element ref="text_uib3"><bounds x="1.5" y="15.25" width="7" height="2" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x200"><bounds x="1" y="11.5" width="8" height="2.5" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x100"><bounds x="1" y="15" width="8" height="2.5" /><color alpha="0.25" /></element>
<!-- spawn -->
<element ref="text_uis1"><bounds x="0" y="20.5" width="10" height="2" /></element>
<element ref="cwhite"><bounds x="1" y="23" width="8" height="12" /></element>
<element ref="cwhite"><bounds x="1" y="36" width="8" height="12" /></element>
<element name="piece_ui1" ref="piece"><bounds x="1" y="23" width="4" height="4" /></element>
<element name="piece_ui2" ref="piece"><bounds x="1" y="27" width="4" height="4" /></element>
<element name="piece_ui3" ref="piece"><bounds x="1" y="31" width="4" height="4" /></element>
<element name="piece_ui4" ref="piece"><bounds x="5" y="23" width="4" height="4" /></element>
<element name="piece_ui5" ref="piece"><bounds x="5" y="27" width="4" height="4" /></element>
<element name="piece_ui6" ref="piece"><bounds x="5" y="31" width="4" height="4" /></element>
<element name="piece_ui7" ref="piece"><bounds x="1" y="36" width="4" height="4" /></element>
<element name="piece_ui8" ref="piece"><bounds x="1" y="40" width="4" height="4" /></element>
<element name="piece_ui9" ref="piece"><bounds x="1" y="44" width="4" height="4" /></element>
<element name="piece_ui10" ref="piece"><bounds x="5" y="36" width="4" height="4" /></element>
<element name="piece_ui11" ref="piece"><bounds x="5" y="40" width="4" height="4" /></element>
<element name="piece_ui12" ref="piece"><bounds x="5" y="44" width="4" height="4" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0001"><bounds x="1" y="23" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0002"><bounds x="1" y="27" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0004"><bounds x="1" y="31" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0008"><bounds x="5" y="23" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0010"><bounds x="5" y="27" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0020"><bounds x="5" y="31" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0040"><bounds x="1" y="36" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0080"><bounds x="1" y="40" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0100"><bounds x="1" y="44" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0200"><bounds x="5" y="36" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0400"><bounds x="5" y="40" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0800"><bounds x="5" y="44" width="4" height="4" /><color alpha="0.25" /></element>
<!-- hand -->
<element ref="text_uih1"><bounds x="0" y="51" width="10" height="2" /></element>
<element ref="cblack"><bounds x="1" y="53.5" width="8" height="6" /></element>
<element name="piece_ui0" ref="piece"><bounds x="2" y="53.5" width="6" height="6" /></element>
<element ref="cwhite"><bounds x="1" y="60.5" width="8" height="2.5" /></element>
<element ref="text_uih2"><bounds x="1.5" y="60.75" width="7" height="2" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x08"><bounds x="1" y="60.5" width="8" height="2.5" /><color alpha="0.25" /></element>
<!-- undo -->
<element ref="text_uiu1"><bounds x="0" y="66" width="10" height="2" /></element>
<element ref="cwhite"><bounds x="1" y="68.5" width="1.7" height="6" /></element>
<element ref="cwhite"><bounds x="3.1" y="68.5" width="1.7" height="6" /></element>
<element ref="cwhite"><bounds x="5.2" y="68.5" width="1.7" height="6" /></element>
<element ref="cwhite"><bounds x="7.3" y="68.5" width="1.7" height="6" /></element>
<element ref="text_uiu2a"><bounds x="1" y="69.5" width="1.7" height="4" /></element>
<element ref="text_uiu2b"><bounds x="3.1" y="69.5" width="1.7" height="4" /></element>
<element ref="text_uiu2c"><bounds x="5.2" y="69.5" width="1.7" height="4" /></element>
<element ref="text_uiu2d"><bounds x="7.3" y="69.5" width="1.7" height="4" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x10"><bounds x="1" y="68.5" width="1.7" height="6" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x20"><bounds x="3.1" y="68.5" width="1.7" height="6" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x40"><bounds x="5.2" y="68.5" width="1.7" height="6" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x80"><bounds x="7.3" y="68.5" width="1.7" height="6" /><color alpha="0.25" /></element>
<element name="count_ui0" ref="text_uiu3a"><bounds x="0" y="75" width="4" height="2" /></element>
<element name="count_ui1" ref="text_uiu3c"><bounds x="6" y="75" width="4" height="2" /></element>
<element ref="text_uiu3b"><bounds x="4" y="75" width="2" height="2" /></element>
</group>
<!-- button panel -->
<element name="blackb"><rect><color red="0" green="0" blue="0" /></rect></element>
<element name="red"><rect><color red="0.6" green="0.2" blue="0.1" /></rect></element>
<element name="rmask"><rect><color red="0.21" green="0.6" blue="0.69" /></rect></element>
<element name="text_b1"><text string="KING"><color red="0.81" green="0.8" blue="0.79" /></text></element>
<element name="text_b2"><text string="QUEEN"><color red="0.81" green="0.8" blue="0.79" /></text></element>
<element name="text_b3"><text string="ROOK"><color red="0.81" green="0.8" blue="0.79" /></text></element>
<element name="text_b4"><text string="BISHOP"><color red="0.81" green="0.8" blue="0.79" /></text></element>
<element name="text_b5"><text string="KNIGHT"><color red="0.81" green="0.8" blue="0.79" /></text></element>
<element name="text_b6"><text string="PAWN"><color red="0.81" green="0.8" blue="0.79" /></text></element>
<element name="text_b7"><text string="NEW"><color red="0.81" green="0.8" blue="0.79" /></text></element>
<element name="text_b7a"><text string="GAME"><color red="0.81" green="0.8" blue="0.79" /></text></element>
<element name="text_b8"><text string="LEVEL"><color red="0.81" green="0.8" blue="0.79" /></text></element>
<element name="text_b9"><text string="PLAY"><color red="0.81" green="0.8" blue="0.79" /></text></element>
<element name="text_b10"><text string="TAKE"><color red="0.81" green="0.8" blue="0.79" /></text></element>
<element name="text_b10a"><text string="BACK"><color red="0.81" green="0.8" blue="0.79" /></text></element>
<element name="text_b11"><text string="NON"><color red="0.81" green="0.8" blue="0.79" /></text></element>
<element name="text_b11a"><text string="AUTO"><color red="0.81" green="0.8" blue="0.79" /></text></element>
<element name="text_b12"><text string="HELP"><color red="0.81" green="0.8" blue="0.79" /></text></element>
<element name="text_b13"><text string="STUDIES"><color red="0.81" green="0.8" blue="0.79" /></text></element>
<element name="text_b14"><text string="DISPLAY"><color red="0.81" green="0.8" blue="0.79" /></text></element>
<element name="text_b14a"><text string="MOVE"><color red="0.81" green="0.8" blue="0.79" /></text></element>
<element name="text_b15"><text string="EVALUATE"><color red="0.81" green="0.8" blue="0.79" /></text></element>
<element name="text_u1"><text string="VERIFY"><color red="0.48" green="0.16" blue="0.08" /></text></element>
<element name="text_u2"><text string="PLAY FUNCTIONS"><color red="0.05" green="0.1" blue="0.3" /></text></element>
<element name="text_u3"><text string="COACH FUNCTIONS"><color red="0.56" green="0.28" blue="0.2" /></text></element>
<element name="text_p1"><image file="chess/wk.svg"></image></element>
<element name="text_p2"><image file="chess/wq.svg"></image></element>
<element name="text_p3"><image file="chess/wr.svg"></image></element>
<element name="text_p4"><image file="chess/wb.svg"></image></element>
<element name="text_p5"><image file="chess/wn.svg"></image></element>
<element name="text_p6"><image file="chess/wp.svg"></image></element>
<element name="ribbon">
<rect>
<bounds x="-0.5" y="0" width="16" height="1" />
<color alpha="0" />
</rect>
<rect>
<bounds x="0" y="0" width="6" height="1" />
<color red="0.6" green="0.2" blue="0.1" />
</rect>
<rect>
<bounds x="6" y="0" width="5" height="1" />
<color red="0.1" green="0.2" blue="0.5" />
</rect>
<rect>
<bounds x="11" y="0" width="4" height="1" />
<color red="0.7" green="0.35" blue="0.25" />
</rect>
<rect><bounds xc="0" y="0" width="0.05" height="1" /><color red="0.81" green="0.8" blue="0.79" /></rect>
<rect><bounds xc="1" y="0" width="0.05" height="1" /><color red="0.81" green="0.8" blue="0.79" /></rect>
<rect><bounds xc="2" y="0" width="0.05" height="1" /><color red="0.81" green="0.8" blue="0.79" /></rect>
<rect><bounds xc="3" y="0" width="0.05" height="1" /><color red="0.81" green="0.8" blue="0.79" /></rect>
<rect><bounds xc="4" y="0" width="0.05" height="1" /><color red="0.81" green="0.8" blue="0.79" /></rect>
<rect><bounds xc="5" y="0" width="0.05" height="1" /><color red="0.81" green="0.8" blue="0.79" /></rect>
<rect><bounds xc="6" y="0" width="0.05" height="1" /><color red="0.81" green="0.8" blue="0.79" /></rect>
<rect><bounds xc="7" y="0" width="0.05" height="1" /><color red="0.81" green="0.8" blue="0.79" /></rect>
<rect><bounds xc="8" y="0" width="0.05" height="1" /><color red="0.81" green="0.8" blue="0.79" /></rect>
<rect><bounds xc="9" y="0" width="0.05" height="1" /><color red="0.81" green="0.8" blue="0.79" /></rect>
<rect><bounds xc="10" y="0" width="0.05" height="1" /><color red="0.81" green="0.8" blue="0.79" /></rect>
<rect><bounds xc="11" y="0" width="0.05" height="1" /><color red="0.81" green="0.8" blue="0.79" /></rect>
<rect><bounds xc="12" y="0" width="0.05" height="1" /><color red="0.81" green="0.8" blue="0.79" /></rect>
<rect><bounds xc="13" y="0" width="0.05" height="1" /><color red="0.81" green="0.8" blue="0.79" /></rect>
<rect><bounds xc="14" y="0" width="0.05" height="1" /><color red="0.81" green="0.8" blue="0.79" /></rect>
<rect><bounds xc="15" y="0" width="0.05" height="1" /><color red="0.81" green="0.8" blue="0.79" /></rect>
</element>
<element name="hlb" defstate="0">
<text string=" "><bounds x="0" y="0" width="1" height="1" /></text>
<disk state="1">
<bounds xc="0.5" yc="0.5" width="0.8" height="0.9" />
<color red="1" green="1" blue="1" />
</disk>
</element>
<group name="buttons">
<bounds x="0" y="0" width="16" height="15" />
<element ref="ribbon"><bounds x="0" y="1" width="16" height="8.5" /></element>
<element ref="cwhite"><bounds x="0" y="3.6" width="16" height="0.27" /></element>
<element ref="text_u1"><bounds x="0.5" y="10.4" width="6" height="1.8" /></element>
<element ref="text_u2"><bounds x="6.5" y="10.4" width="5" height="1.8" /></element>
<element ref="text_u3"><bounds x="11.5" y="10.4" width="4" height="1.8" /></element>
<element ref="text_b1"><bounds xc="1" y="1.5" width="0.9" height="1.5" /></element>
<element ref="text_b2"><bounds xc="2" y="1.5" width="0.9" height="1.5" /></element>
<element ref="text_b3"><bounds xc="3" y="1.5" width="0.9" height="1.5" /></element>
<element ref="text_b4"><bounds xc="4" y="1.5" width="0.9" height="1.5" /></element>
<element ref="text_b5"><bounds xc="5" y="1.5" width="0.9" height="1.5" /></element>
<element ref="text_b6"><bounds xc="6" y="1.5" width="0.9" height="1.5" /></element>
<element ref="text_b7"><bounds xc="7" y="0.9" width="0.9" height="1.5" /></element>
<element ref="text_b7a"><bounds xc="7" y="2.1" width="0.9" height="1.5" /></element>
<element ref="text_b8"><bounds xc="8" y="1.5" width="0.9" height="1.5" /></element>
<element ref="text_b9"><bounds xc="9" y="1.5" width="0.9" height="1.5" /></element>
<element ref="text_b10"><bounds xc="10" y="0.9" width="0.9" height="1.5" /></element>
<element ref="text_b10a"><bounds xc="10" y="2.1" width="0.9" height="1.5" /></element>
<element ref="text_b11"><bounds xc="11" y="0.9" width="0.9" height="1.5" /></element>
<element ref="text_b11a"><bounds xc="11" y="2.1" width="0.9" height="1.5" /></element>
<element ref="text_b12"><bounds xc="12" y="1.5" width="0.9" height="1.5" /></element>
<element ref="text_b13"><bounds xc="13" y="1.5" width="0.9" height="1.5" /></element>
<element ref="text_b14"><bounds xc="14" y="0.9" width="0.9" height="1.5" /></element>
<element ref="text_b14a"><bounds xc="14" y="2.1" width="0.9" height="1.5" /></element>
<element ref="text_b15"><bounds xc="15" y="1.5" width="0.9" height="1.5" /></element>
<repeat count="6">
<param name="x" start="1" increment="1" />
<param name="i" start="1" increment="1" />
<element ref="blackb"><bounds xc="~x~" y="4.5" width="0.75" height="4.045" /></element>
<element ref="text_p~i~"><bounds xc="~x~" y="4.5" width="0.75" height="4.045" /></element>
<element ref="rmask" blend="multiply"><bounds xc="~x~" y="4.5" width="0.75" height="4.045" /></element>
<element ref="red" blend="add"><bounds xc="~x~" y="4.5" width="0.75" height="4.045" /></element>
</repeat>
<element ref="hlb" inputtag="IN.1" inputmask="0x20"><bounds xc="1" y="1" width="1" height="8.5" /><color alpha="0.25" /></element>
<element ref="hlb" inputtag="IN.1" inputmask="0x10"><bounds xc="2" y="1" width="1" height="8.5" /><color alpha="0.25" /></element>
<element ref="hlb" inputtag="IN.1" inputmask="0x08"><bounds xc="3" y="1" width="1" height="8.5" /><color alpha="0.25" /></element>
<element ref="hlb" inputtag="IN.1" inputmask="0x04"><bounds xc="4" y="1" width="1" height="8.5" /><color alpha="0.25" /></element>
<element ref="hlb" inputtag="IN.1" inputmask="0x02"><bounds xc="5" y="1" width="1" height="8.5" /><color alpha="0.25" /></element>
<element ref="hlb" inputtag="IN.1" inputmask="0x01"><bounds xc="6" y="1" width="1" height="8.5" /><color alpha="0.25" /></element>
<element ref="hlb" inputtag="IN.0" inputmask="0x01"><bounds xc="7" y="1" width="1" height="8.5" /><color alpha="0.25" /></element>
<element ref="hlb" inputtag="IN.0" inputmask="0x02"><bounds xc="8" y="1" width="1" height="8.5" /><color alpha="0.25" /></element>
<element ref="hlb" inputtag="IN.0" inputmask="0x04"><bounds xc="9" y="1" width="1" height="8.5" /><color alpha="0.25" /></element>
<element ref="hlb" inputtag="IN.0" inputmask="0x08"><bounds xc="10" y="1" width="1" height="8.5" /><color alpha="0.25" /></element>
<element ref="hlb" inputtag="IN.0" inputmask="0x10"><bounds xc="11" y="1" width="1" height="8.5" /><color alpha="0.25" /></element>
<element ref="hlb" inputtag="IN.0" inputmask="0x20"><bounds xc="12" y="1" width="1" height="8.5" /><color alpha="0.25" /></element>
<element ref="hlb" inputtag="IN.0" inputmask="0x80"><bounds xc="13" y="1" width="1" height="8.5" /><color alpha="0.25" /></element>
<element ref="hlb" inputtag="IN.0" inputmask="0x40"><bounds xc="14" y="1" width="1" height="8.5" /><color alpha="0.25" /></element>
<element ref="hlb" inputtag="IN.1" inputmask="0x40"><bounds xc="15" y="1" width="1" height="8.5" /><color alpha="0.25" /></element>
</group>
<!-- build screen -->
<view name="Internal Layout">
<bounds left="-14" right="89" top="-2" bottom="102" />
<element ref="cwhite"><bounds x="-1" y="-2" width="90" height="104" /></element>
<element ref="cblack"><bounds x="3.7" y="2.7" width="80.6" height="80.6" /></element>
<group ref="sb_board"><bounds x="4" y="3" width="80" height="80" /></group>
<group ref="sb_ui"><bounds x="-12.5" y="3" width="10" height="80" /></group>
<group ref="buttons"><bounds x="0.9" y="89" width="86.3" height="15" /></group>
<!-- chessboard coords/labels -->
<element ref="text_8"><bounds x="-0.4" y="7" width="2" height="2" /></element>
<element ref="text_7"><bounds x="-0.4" y="17" width="2" height="2" /></element>
<element ref="text_6"><bounds x="-0.4" y="27" width="2" height="2" /></element>
<element ref="text_5"><bounds x="-0.4" y="37" width="2" height="2" /></element>
<element ref="text_4"><bounds x="-0.4" y="47" width="2" height="2" /></element>
<element ref="text_3"><bounds x="-0.4" y="57" width="2" height="2" /></element>
<element ref="text_2"><bounds x="-0.4" y="67" width="2" height="2" /></element>
<element ref="text_1"><bounds x="-0.4" y="77" width="2" height="2" /></element>
<element ref="text_a"><bounds x="8" y="85.6" width="2" height="2" /></element>
<element ref="text_b"><bounds x="18" y="85.6" width="2" height="2" /></element>
<element ref="text_c"><bounds x="28" y="85.6" width="2" height="2" /></element>
<element ref="text_d"><bounds x="38" y="85.6" width="2" height="2" /></element>
<element ref="text_e"><bounds x="48" y="85.6" width="2" height="2" /></element>
<element ref="text_f"><bounds x="58" y="85.6" width="2" height="2" /></element>
<element ref="text_g"><bounds x="68" y="85.6" width="2" height="2" /></element>
<element ref="text_h"><bounds x="78" y="85.6" width="2" height="2" /></element>
<element ref="cblack"><bounds x="1.6" y="4.75" width="1.5" height="1.5" /></element>
<element ref="box"><bounds x="1.6" y="79.75" width="1.5" height="1.5" /></element>
<element ref="cblack"><bounds x="9" yc="88" width="10" height="0.15" /></element>
<element ref="cblack"><bounds x="39" yc="88" width="10" height="0.15" /></element>
<element ref="cblack"><bounds x="69" yc="88" width="10" height="0.15" /></element>
<element ref="text_l1"><bounds xc="14" yc="88" width="4.5" height="1.5" /></element>
<element ref="text_l2"><bounds xc="44" yc="88" width="4.2" height="1.5" /></element>
<element ref="text_l3"><bounds xc="74" yc="88" width="4.0" height="1.5" /></element>
<element ref="cblack"><bounds x="56.5" yc="84.65" width="2.25" height="0.15" /></element>
<element ref="cblack"><bounds x="66.7" yc="84.65" width="2.25" height="0.15" /></element>
<element ref="cblack"><bounds x="76.5" yc="84.65" width="2.25" height="0.15" /></element>
<element ref="text_l4"><bounds xc="54" yc="84.65" width="10" height="1.5" /></element>
<element ref="text_l5"><bounds xc="64" yc="84.65" width="10" height="1.5" /></element>
<element ref="text_l6"><bounds xc="74" yc="84.65" width="10" height="1.5" /></element>
<!-- chessboard leds -->
<element name="0.15" ref="led"><bounds x="1.6" y="7.25" width="1.5" height="1.5" /></element>
<element name="0.14" ref="led"><bounds x="1.6" y="17.25" width="1.5" height="1.5" /></element>
<element name="0.13" ref="led"><bounds x="1.6" y="27.25" width="1.5" height="1.5" /></element>
<element name="0.12" ref="led"><bounds x="1.6" y="37.25" width="1.5" height="1.5" /></element>
<element name="0.11" ref="led"><bounds x="1.6" y="47.25" width="1.5" height="1.5" /></element>
<element name="0.10" ref="led"><bounds x="1.6" y="57.25" width="1.5" height="1.5" /></element>
<element name="0.9" ref="led"><bounds x="1.6" y="67.25" width="1.5" height="1.5" /></element>
<element name="0.8" ref="led"><bounds x="1.6" y="77.25" width="1.5" height="1.5" /></element>
<element name="0.7" ref="led"><bounds x="8.25" y="83.9" width="1.5" height="1.5" /></element>
<element name="0.6" ref="led"><bounds x="18.25" y="83.9" width="1.5" height="1.5" /></element>
<element name="0.5" ref="led"><bounds x="28.25" y="83.9" width="1.5" height="1.5" /></element>
<element name="0.4" ref="led"><bounds x="38.25" y="83.9" width="1.5" height="1.5" /></element>
<element name="0.3" ref="led"><bounds x="48.25" y="83.9" width="1.5" height="1.5" /></element>
<element name="0.2" ref="led"><bounds x="58.25" y="83.9" width="1.5" height="1.5" /></element>
<element name="0.1" ref="led"><bounds x="68.25" y="83.9" width="1.5" height="1.5" /></element>
<element name="0.0" ref="led"><bounds x="78.25" y="83.9" width="1.5" height="1.5" /></element>
</view>
</mamelayout>

View File

@ -0,0 +1,647 @@
<?xml version="1.0"?>
<!--
license:CC0-1.0
authors:hap
-->
<mamelayout version="2">
<!-- define elements -->
<element name="whitew"><rect><color red="1" green="1" blue="1" /></rect></element>
<element name="box">
<rect>
<bounds xc="0" yc="0" width="1" height="1" />
<color red="1" green="1" blue="1" />
</rect>
<rect>
<bounds xc="0" yc="0" width="0.7" height="0.7" />
<color red="0" green="0" blue="0" />
</rect>
</element>
<element name="led" defstate="0">
<disk state="1"><color red="1.0" green="0.1" blue="0.15" /></disk>
<disk state="0"><color red="0.14" green="0.014" blue="0.021" /></disk>
</element>
<element name="text_end"><text string="END"></text></element>
<element name="text_e00"><text string="32" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_e01"><text string="31" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_e02"><text string="30" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_e03"><text string="29" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_o00"><text string="28" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_o01"><text string="27" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_o02"><text string="26" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_o03"><text string="25" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_e10"><text string="24" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_e11"><text string="23" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_e12"><text string="22" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_e13"><text string="21" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_o10"><text string="20" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_o11"><text string="19" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_o12"><text string="18" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_o13"><text string="17" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_e20"><text string="16" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_e21"><text string="15" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_e22"><text string="14" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_e23"><text string="13" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_o20"><text string="12" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_o21"><text string="11" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_o22"><text string="10" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_o23"><text string="9" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_e30"><text string="8" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_e31"><text string="7" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_e32"><text string="6" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_e33"><text string="5" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_o30"><text string="4" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_o31"><text string="3" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_o32"><text string="2" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<element name="text_o33"><text string="1" align="1"><color red="0.86" green="0.85" blue="0.84" /></text></element>
<!-- sb board -->
<element name="cblack"><rect><color red="0.41" green="0.4" blue="0.39" /></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">
<rect><color alpha="0" /></rect> <!-- force unit square element bounds -->
<disk state="1">
<bounds xc="0.5" yc="0.5" width="0.8" height="0.8" />
<color red="0" green="0" blue="0" />
</disk>
<disk state="1">
<bounds xc="0.5" yc="0.5" width="0.76" height="0.76" />
<color red="1" green="1" blue="1" />
</disk>
<disk state="1">
<bounds xc="0.5" yc="0.5" width="0.64" height="0.64" />
<color red="0.81" green="0.81" blue="0.81" />
</disk>
<disk state="1">
<bounds xc="0.5" yc="0.5" width="0.6" height="0.6" />
<color red="1" green="1" blue="1" />
</disk>
<disk state="2">
<bounds xc="0.5" yc="0.5" width="0.8" height="0.8" />
<color red="0" green="0" blue="0" />
</disk>
<disk state="2">
<bounds xc="0.5" yc="0.5" width="0.76" height="0.76" />
<color red="1" green="1" blue="1" />
</disk>
<disk state="2">
<bounds xc="0.5" yc="0.4" width="0.8" height="0.8" />
<color red="0" green="0" blue="0" />
</disk>
<disk state="2">
<bounds xc="0.5" yc="0.4" width="0.76" height="0.76" />
<color red="1" green="1" blue="1" />
</disk>
<disk state="2">
<bounds xc="0.5" yc="0.4" width="0.64" height="0.64" />
<color red="0.81" green="0.81" blue="0.81" />
</disk>
<disk state="2">
<bounds xc="0.5" yc="0.4" width="0.6" height="0.6" />
<color red="1" green="1" blue="1" />
</disk>
<disk state="3">
<bounds xc="0.5" yc="0.5" width="0.8" height="0.8" />
<color red="0" green="0" blue="0" />
</disk>
<disk state="3">
<bounds xc="0.5" yc="0.5" width="0.76" height="0.76" />
<color red="0.5" green="0.05" blue="0.15" />
</disk>
<disk state="3">
<bounds xc="0.5" yc="0.5" width="0.64" height="0.64" />
<color red="0.67" green="0.07" blue="0.2" />
</disk>
<disk state="3">
<bounds xc="0.5" yc="0.5" width="0.6" height="0.6" />
<color red="0.5" green="0.05" blue="0.15" />
</disk>
<disk state="4">
<bounds xc="0.5" yc="0.5" width="0.8" height="0.8" />
<color red="0" green="0" blue="0" />
</disk>
<disk state="4">
<bounds xc="0.5" yc="0.5" width="0.76" height="0.76" />
<color red="0.5" green="0.05" blue="0.15" />
</disk>
<disk state="4">
<bounds xc="0.5" yc="0.4" width="0.8" height="0.8" />
<color red="0" green="0" blue="0" />
</disk>
<disk state="4">
<bounds xc="0.5" yc="0.4" width="0.76" height="0.76" />
<color red="0.5" green="0.05" blue="0.15" />
</disk>
<disk state="4">
<bounds xc="0.5" yc="0.4" width="0.64" height="0.64" />
<color red="0.67" green="0.07" blue="0.2" />
</disk>
<disk state="4">
<bounds xc="0.5" yc="0.4" width="0.6" height="0.6" />
<color red="0.5" green="0.05" blue="0.15" />
</disk>
</element>
<element name="piece_sel" defstate="0">
<rect><color alpha="0" /></rect> <!-- force unit square element bounds -->
<!-- selected pieces -->
<disk state="5">
<bounds xc="0.5" yc="0.5" width="0.8" height="0.8" />
<color red="0" green="0" blue="0" />
</disk>
<disk state="5">
<bounds xc="0.5" yc="0.5" width="0.76" height="0.76" />
<color red="1" green="1" blue="1" />
</disk>
<disk state="5">
<bounds xc="0.5" yc="0.5" width="0.64" height="0.64" />
<color red="0.81" green="0.81" blue="0.81" />
</disk>
<disk state="5">
<bounds xc="0.5" yc="0.5" width="0.6" height="0.6" />
<color red="1" green="1" blue="1" />
</disk>
<disk state="6">
<bounds xc="0.5" yc="0.5" width="0.8" height="0.8" />
<color red="0" green="0" blue="0" />
</disk>
<disk state="6">
<bounds xc="0.5" yc="0.5" width="0.76" height="0.76" />
<color red="1" green="1" blue="1" />
</disk>
<disk state="6">
<bounds xc="0.5" yc="0.4" width="0.8" height="0.8" />
<color red="0" green="0" blue="0" />
</disk>
<disk state="6">
<bounds xc="0.5" yc="0.4" width="0.76" height="0.76" />
<color red="1" green="1" blue="1" />
</disk>
<disk state="6">
<bounds xc="0.5" yc="0.4" width="0.64" height="0.64" />
<color red="0.81" green="0.81" blue="0.81" />
</disk>
<disk state="6">
<bounds xc="0.5" yc="0.4" width="0.6" height="0.6" />
<color red="1" green="1" blue="1" />
</disk>
<disk state="7">
<bounds xc="0.5" yc="0.5" width="0.8" height="0.8" />
<color red="0" green="0" blue="0" />
</disk>
<disk state="7">
<bounds xc="0.5" yc="0.5" width="0.76" height="0.76" />
<color red="0.5" green="0.05" blue="0.15" />
</disk>
<disk state="7">
<bounds xc="0.5" yc="0.5" width="0.64" height="0.64" />
<color red="0.67" green="0.07" blue="0.2" />
</disk>
<disk state="7">
<bounds xc="0.5" yc="0.5" width="0.6" height="0.6" />
<color red="0.5" green="0.05" blue="0.15" />
</disk>
<disk state="8">
<bounds xc="0.5" yc="0.5" width="0.8" height="0.8" />
<color red="0" green="0" blue="0" />
</disk>
<disk state="8">
<bounds xc="0.5" yc="0.5" width="0.76" height="0.76" />
<color red="0.5" green="0.05" blue="0.15" />
</disk>
<disk state="8">
<bounds xc="0.5" yc="0.4" width="0.8" height="0.8" />
<color red="0" green="0" blue="0" />
</disk>
<disk state="8">
<bounds xc="0.5" yc="0.4" width="0.76" height="0.76" />
<color red="0.5" green="0.05" blue="0.15" />
</disk>
<disk state="8">
<bounds xc="0.5" yc="0.4" width="0.64" height="0.64" />
<color red="0.67" green="0.07" blue="0.2" />
</disk>
<disk state="8">
<bounds xc="0.5" yc="0.4" width="0.6" height="0.6" />
<color red="0.5" green="0.05" blue="0.15" />
</disk>
</element>
<group name="sb_board">
<bounds x="0" y="0" width="80" height="80" />
<!-- squares (avoid seams) -->
<element ref="cwhite"><bounds x="0" y="0" width="11" height="11" /></element>
<element ref="cblack"><bounds x="10" y="0" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="20" y="0" width="11" height="11" /></element>
<element ref="cblack"><bounds x="30" y="0" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="40" y="0" width="11" height="11" /></element>
<element ref="cblack"><bounds x="50" y="0" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="60" y="0" width="11" height="11" /></element>
<element ref="cblack"><bounds x="70" y="0" width="10" height="11" /></element>
<element ref="cblack"><bounds x="0" y="10" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="10" y="10" width="11" height="11" /></element>
<element ref="cblack"><bounds x="20" y="10" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="30" y="10" width="11" height="11" /></element>
<element ref="cblack"><bounds x="40" y="10" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="50" y="10" width="11" height="11" /></element>
<element ref="cblack"><bounds x="60" y="10" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="70" y="10" width="10" height="11" /></element>
<element ref="cwhite"><bounds x="0" y="20" width="11" height="11" /></element>
<element ref="cblack"><bounds x="10" y="20" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="20" y="20" width="11" height="11" /></element>
<element ref="cblack"><bounds x="30" y="20" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="40" y="20" width="11" height="11" /></element>
<element ref="cblack"><bounds x="50" y="20" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="60" y="20" width="11" height="11" /></element>
<element ref="cblack"><bounds x="70" y="20" width="10" height="11" /></element>
<element ref="cblack"><bounds x="0" y="30" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="10" y="30" width="11" height="11" /></element>
<element ref="cblack"><bounds x="20" y="30" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="30" y="30" width="11" height="11" /></element>
<element ref="cblack"><bounds x="40" y="30" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="50" y="30" width="11" height="11" /></element>
<element ref="cblack"><bounds x="60" y="30" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="70" y="30" width="10" height="11" /></element>
<element ref="cwhite"><bounds x="0" y="40" width="11" height="11" /></element>
<element ref="cblack"><bounds x="10" y="40" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="20" y="40" width="11" height="11" /></element>
<element ref="cblack"><bounds x="30" y="40" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="40" y="40" width="11" height="11" /></element>
<element ref="cblack"><bounds x="50" y="40" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="60" y="40" width="11" height="11" /></element>
<element ref="cblack"><bounds x="70" y="40" width="10" height="11" /></element>
<element ref="cblack"><bounds x="0" y="50" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="10" y="50" width="11" height="11" /></element>
<element ref="cblack"><bounds x="20" y="50" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="30" y="50" width="11" height="11" /></element>
<element ref="cblack"><bounds x="40" y="50" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="50" y="50" width="11" height="11" /></element>
<element ref="cblack"><bounds x="60" y="50" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="70" y="50" width="10" height="11" /></element>
<element ref="cwhite"><bounds x="0" y="60" width="11" height="11" /></element>
<element ref="cblack"><bounds x="10" y="60" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="20" y="60" width="11" height="11" /></element>
<element ref="cblack"><bounds x="30" y="60" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="40" y="60" width="11" height="11" /></element>
<element ref="cblack"><bounds x="50" y="60" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="60" y="60" width="11" height="11" /></element>
<element ref="cblack"><bounds x="70" y="60" width="10" height="11" /></element>
<element ref="cblack"><bounds x="0" y="70" width="11" height="10" /></element>
<element ref="cwhite"><bounds x="10" y="70" width="11" height="10" /></element>
<element ref="cblack"><bounds x="20" y="70" width="11" height="10" /></element>
<element ref="cwhite"><bounds x="30" y="70" width="11" height="10" /></element>
<element ref="cblack"><bounds x="40" y="70" width="11" height="10" /></element>
<element ref="cwhite"><bounds x="50" y="70" width="11" height="10" /></element>
<element ref="cblack"><bounds x="60" y="70" width="11" height="10" /></element>
<element ref="cwhite"><bounds x="70" y="70" width="10" height="10" /></element>
<!-- labels -->
<repeat count="4">
<param name="yl" start="8.0" increment="20" />
<param name="yi" start="0" increment="1" />
<repeat count="4">
<param name="xl" start="10.5" increment="20" />
<param name="xi" start="0" increment="1" />
<element ref="text_e~yi~~xi~"><bounds x="~xl~" y="~yl~" width="3" height="1.75" /></element>
</repeat>
</repeat>
<repeat count="4">
<param name="yl" start="18.0" increment="20" />
<param name="yi" start="0" increment="1" />
<repeat count="4">
<param name="xl" start="0.5" increment="20" />
<param name="xi" start="0" increment="1" />
<element ref="text_o~yi~~xi~"><bounds x="~xl~" y="~yl~" width="3" height="1.75" /></element>
</repeat>
</repeat>
<!-- sensors, pieces -->
<repeat count="4">
<param name="y1" start="0" increment="20" />
<param name="y2" start="10" increment="20" />
<param name="i1" start="8" increment="-2" />
<param name="i2" start="7" increment="-2" />
<element ref="hlbb" inputtag="board0:RANK.~i2~" inputmask="0x01"><bounds x="0" y="~y2~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i1~" inputmask="0x02"><bounds x="10" y="~y1~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i2~" inputmask="0x04"><bounds x="20" y="~y2~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i1~" inputmask="0x08"><bounds x="30" y="~y1~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i2~" inputmask="0x10"><bounds x="40" y="~y2~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i1~" inputmask="0x20"><bounds x="50" y="~y1~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i2~" inputmask="0x40"><bounds x="60" y="~y2~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i1~" inputmask="0x80"><bounds x="70" y="~y1~" width="10" height="10" /><color alpha="0.04" /></element>
<element name="piece_a~i2~" ref="piece"><bounds x="0" y="~y2~" width="10" height="10" /></element>
<element name="piece_b~i1~" ref="piece"><bounds x="10" y="~y1~" width="10" height="10" /></element>
<element name="piece_c~i2~" ref="piece"><bounds x="20" y="~y2~" width="10" height="10" /></element>
<element name="piece_d~i1~" ref="piece"><bounds x="30" y="~y1~" width="10" height="10" /></element>
<element name="piece_e~i2~" ref="piece"><bounds x="40" y="~y2~" width="10" height="10" /></element>
<element name="piece_f~i1~" ref="piece"><bounds x="50" y="~y1~" width="10" height="10" /></element>
<element name="piece_g~i2~" ref="piece"><bounds x="60" y="~y2~" width="10" height="10" /></element>
<element name="piece_h~i1~" ref="piece"><bounds x="70" y="~y1~" width="10" height="10" /></element>
<element name="piece_a~i2~" ref="piece_sel"><bounds x="0" y="~y2~" width="10" height="10" /><color alpha="0.5" /></element>
<element name="piece_b~i1~" ref="piece_sel"><bounds x="10" y="~y1~" width="10" height="10" /><color alpha="0.5" /></element>
<element name="piece_c~i2~" ref="piece_sel"><bounds x="20" y="~y2~" width="10" height="10" /><color alpha="0.5" /></element>
<element name="piece_d~i1~" ref="piece_sel"><bounds x="30" y="~y1~" width="10" height="10" /><color alpha="0.5" /></element>
<element name="piece_e~i2~" ref="piece_sel"><bounds x="40" y="~y2~" width="10" height="10" /><color alpha="0.5" /></element>
<element name="piece_f~i1~" ref="piece_sel"><bounds x="50" y="~y1~" width="10" height="10" /><color alpha="0.5" /></element>
<element name="piece_g~i2~" ref="piece_sel"><bounds x="60" y="~y2~" width="10" height="10" /><color alpha="0.5" /></element>
<element name="piece_h~i1~" ref="piece_sel"><bounds x="70" y="~y1~" width="10" height="10" /><color alpha="0.5" /></element>
</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"><text string="RESET"><color red="0.01" green="0.01" blue="0.01" /></text></element>
<element name="text_uib3"><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"><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"><text string=" &lt;&lt;"><color red="0.01" green="0.01" blue="0.01" /></text></element>
<element name="text_uiu2b"><text string=" &lt; "><color red="0.01" green="0.01" blue="0.01" /></text></element>
<element name="text_uiu2c"><text string=" &gt;"><color red="0.01" green="0.01" blue="0.01" /></text></element>
<element name="text_uiu2d"><text string=" &gt;&gt;"><color red="0.01" green="0.01" blue="0.01" /></text></element>
<element name="text_uiu3b"><text string="/"><color red="0.81" green="0.8" blue="0.79" /></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_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="63" />
<element ref="cblack"><bounds x="0" y="0" width="10" height="1" /></element>
<element ref="cblack"><bounds x="0" y="7" width="10" height="1" /></element>
<element ref="cblack"><bounds x="0" y="62" width="10" height="1" /></element>
<element ref="text_uit1"><bounds x="0" y="2" width="10" height="2" /></element>
<element ref="text_uit2"><bounds x="0" y="4" width="10" height="2" /></element>
<!-- board -->
<element ref="text_uib1"><bounds x="0" y="9" width="10" height="2" /></element>
<element ref="cwhite"><bounds x="1" y="11.5" width="8" height="2.5" /></element>
<element ref="cwhite"><bounds x="1" y="15" width="8" height="2.5" /></element>
<element ref="text_uib2"><bounds x="1.5" y="11.75" width="7" height="2" /></element>
<element ref="text_uib3"><bounds x="1.5" y="15.25" width="7" height="2" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x200"><bounds x="1" y="11.5" width="8" height="2.5" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x100"><bounds x="1" y="15" width="8" height="2.5" /><color alpha="0.25" /></element>
<!-- spawn -->
<element ref="text_uis1"><bounds x="0" y="20.5" width="10" height="2" /></element>
<element ref="cwhite"><bounds x="1" y="23" width="8" height="8" /></element>
<element name="piece_ui1" ref="piece"><bounds x="1" y="23" width="4" height="4" /></element>
<element name="piece_ui2" ref="piece"><bounds x="1" y="27" width="4" height="4" /></element>
<element name="piece_ui3" ref="piece"><bounds x="5" y="23" width="4" height="4" /></element>
<element name="piece_ui4" ref="piece"><bounds x="5" y="27" width="4" height="4" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0001"><bounds x="1" y="23" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0002"><bounds x="1" y="27" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0004"><bounds x="5" y="23" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0008"><bounds x="5" y="27" width="4" height="4" /><color alpha="0.25" /></element>
<!-- hand -->
<element ref="text_uih1"><bounds x="0" y="34" width="10" height="2" /></element>
<element ref="cblack"><bounds x="1" y="36.5" width="8" height="6" /></element>
<element name="piece_ui0" ref="piece"><bounds x="2" y="36.5" width="6" height="6" /></element>
<element ref="cwhite"><bounds x="1" y="43.5" width="8" height="2.5" /></element>
<element ref="text_uih2"><bounds x="1.5" y="43.75" width="7" height="2" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x08"><bounds x="1" y="43.5" width="8" height="2.5" /><color alpha="0.25" /></element>
<!-- undo -->
<element ref="text_uiu1"><bounds x="0" y="49" width="10" height="2" /></element>
<element ref="cwhite"><bounds x="1" y="51.5" width="1.7" height="6" /></element>
<element ref="cwhite"><bounds x="3.1" y="51.5" width="1.7" height="6" /></element>
<element ref="cwhite"><bounds x="5.2" y="51.5" width="1.7" height="6" /></element>
<element ref="cwhite"><bounds x="7.3" y="51.5" width="1.7" height="6" /></element>
<element ref="text_uiu2a"><bounds x="1" y="52.5" width="1.7" height="4" /></element>
<element ref="text_uiu2b"><bounds x="3.1" y="52.5" width="1.7" height="4" /></element>
<element ref="text_uiu2c"><bounds x="5.2" y="52.5" width="1.7" height="4" /></element>
<element ref="text_uiu2d"><bounds x="7.3" y="52.5" width="1.7" height="4" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x10"><bounds x="1" y="51.5" width="1.7" height="6" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x20"><bounds x="3.1" y="51.5" width="1.7" height="6" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x40"><bounds x="5.2" y="51.5" width="1.7" height="6" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x80"><bounds x="7.3" y="51.5" width="1.7" height="6" /><color alpha="0.25" /></element>
<element name="count_ui0" ref="text_uiu3a"><bounds x="0" y="58" width="4" height="2" /></element>
<element name="count_ui1" ref="text_uiu3c"><bounds x="6" y="58" width="4" height="2" /></element>
<element ref="text_uiu3b"><bounds x="4" y="58" width="2" height="2" /></element>
</group>
<!-- button panel -->
<element name="but" defstate="0">
<rect><color red="0.215" green="0.21" blue="0.21" /></rect>
<rect state="1"><color red="1" green="1" blue="1" alpha="0.17" /></rect>
</element>
<element name="text_b1"><text string="LEVEL"></text></element>
<element name="text_b2"><text string="NEW"></text></element>
<element name="text_b2a"><text string="GAME"></text></element>
<element name="text_b3"><text string="TAKE"></text></element>
<element name="text_b3a"><text string="BACK"></text></element>
<element name="text_b4"><text string="NON"></text></element>
<element name="text_b4a"><text string="AUTO"></text></element>
<element name="text_b5"><text string="SOUND"></text></element>
<element name="text_b6"><text string="PLAY"></text></element>
<element name="piece_b1">
<rect>
<bounds xc="0" y="0" width="1" height="2" />
<color alpha="0" />
</rect>
<disk>
<bounds xc="0" y="0" width="1" height="0.34" />
<color red="1" green="1" blue="1" />
</disk>
<disk>
<bounds xc="0" y="0.06" width="0.88" height="0.22" />
<color red="0" green="0" blue="0" />
</disk>
<rect>
<bounds xc="0" y="0.17" width="1" height="0.4" />
<color red="1" green="1" blue="1" />
</rect>
<rect>
<bounds xc="0" y="0.17" width="0.88" height="0.4" />
<color red="0" green="0" blue="0" />
</rect>
<disk>
<bounds xc="0" yc="0.57" width="1" height="0.34" />
<color red="1" green="1" blue="1" />
</disk>
<disk>
<bounds xc="0" yc="0.57" width="0.88" height="0.22" />
<color red="0" green="0" blue="0" />
</disk>
<rect>
<bounds xc="0" y="0.57" width="1" height="0.4" />
<color red="1" green="1" blue="1" />
</rect>
<rect>
<bounds xc="0" y="0.57" width="0.88" height="0.4" />
<color red="0" green="0" blue="0" />
</rect>
<disk>
<bounds xc="0" yc="0.97" width="1" height="0.34" />
<color red="1" green="1" blue="1" />
</disk>
<disk>
<bounds xc="0" yc="0.97" width="0.88" height="0.22" />
<color red="0" green="0" blue="0" />
</disk>
</element>
<element name="piece_b2">
<rect>
<bounds xc="0" y="0" width="1" height="2" />
<color alpha="0" />
</rect>
<disk>
<bounds xc="0" y="0" width="1" height="0.34" />
<color red="1" green="1" blue="1" />
</disk>
<disk>
<bounds xc="0" y="0.06" width="0.88" height="0.22" />
<color red="0" green="0" blue="0" />
</disk>
<rect>
<bounds xc="0" y="0.17" width="1" height="0.4" />
<color red="1" green="1" blue="1" />
</rect>
<rect>
<bounds xc="0" y="0.17" width="0.88" height="0.4" />
<color red="0" green="0" blue="0" />
</rect>
<disk>
<bounds xc="0" yc="0.57" width="1" height="0.34" />
<color red="1" green="1" blue="1" />
</disk>
<disk>
<bounds xc="0" yc="0.57" width="0.88" height="0.22" />
<color red="0" green="0" blue="0" />
</disk>
</element>
<group name="buttons">
<bounds x="0" y="0" width="100" height="25" />
<repeat count="6">
<param name="x" start="30" increment="10" />
<param name="i" start="1" increment="1" />
<element ref="text_b~i~"><bounds xc="~x~" y="9.5" width="10" height="2" /></element>
</repeat>
<element ref="text_b2a"><bounds xc="40" y="11.5" width="10" height="2" /></element>
<element ref="text_b3a"><bounds xc="50" y="11.5" width="10" height="2" /></element>
<element ref="text_b4a"><bounds xc="60" y="11.5" width="10" height="2" /></element>
<element ref="piece_b1"><bounds xc="10" y="7.3" width="3" height="6" /><orientation rotate="180" /></element>
<element ref="piece_b2"><bounds xc="20" y="6.05" width="3" height="6" /><orientation rotate="180" /></element>
<element ref="cwhite" blend="multiply"><bounds x="0" y="0" width="100" height="25" /></element>
<element ref="but" inputtag="IN.1" inputmask="0x20"><bounds xc="10" y="0" width="2.8" height="9" /></element>
<element ref="but" inputtag="IN.1" inputmask="0x01"><bounds xc="20" y="0" width="2.8" height="9" /></element>
<element ref="but" inputtag="IN.0" inputmask="0x02"><bounds xc="30" y="0" width="2.8" height="9" /></element>
<element ref="but" inputtag="IN.0" inputmask="0x01"><bounds xc="40" y="0" width="2.8" height="9" /></element>
<element ref="but" inputtag="IN.0" inputmask="0x08"><bounds xc="50" y="0" width="2.8" height="9" /></element>
<element ref="but" inputtag="IN.0" inputmask="0x10"><bounds xc="60" y="0" width="2.8" height="9" /></element>
<element ref="but" inputtag="IN.0" inputmask="0x20"><bounds xc="70" y="0" width="2.8" height="9" /></element>
<element ref="but" inputtag="IN.0" inputmask="0x04"><bounds xc="80" y="0" width="2.8" height="9" /></element>
</group>
<!-- build screen -->
<view name="Internal Layout">
<bounds left="-14" right="89" top="-2" bottom="100" />
<!-- edge labels -->
<element ref="box"><bounds x="-1" yc="8" width="1.5" height="1.5" /></element>
<element ref="whitew"><bounds x="-1" yc="78" width="1.5" height="1.5" /></element>
<element ref="text_end"><bounds xc="74" y="0.25" width="10" height="2" /></element>
<element ref="cwhite" blend="multiply"><bounds x="-5" y="-5" width="100" height="100" /></element>
<!-- board leds -->
<element name="0.15" ref="led"><bounds x="1.5" y="7.25" width="1.5" height="1.5" /></element>
<element name="0.14" ref="led"><bounds x="1.5" y="17.25" width="1.5" height="1.5" /></element>
<element name="0.13" ref="led"><bounds x="1.5" y="27.25" width="1.5" height="1.5" /></element>
<element name="0.12" ref="led"><bounds x="1.5" y="37.25" width="1.5" height="1.5" /></element>
<element name="0.11" ref="led"><bounds x="1.5" y="47.25" width="1.5" height="1.5" /></element>
<element name="0.10" ref="led"><bounds x="1.5" y="57.25" width="1.5" height="1.5" /></element>
<element name="0.9" ref="led"><bounds x="1.5" y="67.25" width="1.5" height="1.5" /></element>
<element name="0.8" ref="led"><bounds x="1.5" y="77.25" width="1.5" height="1.5" /></element>
<element name="0.7" ref="led"><bounds x="8.25" y="0.5" width="1.5" height="1.5" /></element>
<element name="0.6" ref="led"><bounds x="18.25" y="0.5" width="1.5" height="1.5" /></element>
<element name="0.5" ref="led"><bounds x="28.25" y="0.5" width="1.5" height="1.5" /></element>
<element name="0.4" ref="led"><bounds x="38.25" y="0.5" width="1.5" height="1.5" /></element>
<element name="0.3" ref="led"><bounds x="48.25" y="0.5" width="1.5" height="1.5" /></element>
<element name="0.2" ref="led"><bounds x="58.25" y="0.5" width="1.5" height="1.5" /></element>
<element name="0.1" ref="led"><bounds x="68.25" y="0.5" width="1.5" height="1.5" /></element>
<element name="0.0" ref="led"><bounds x="78.25" y="0.5" width="1.5" height="1.5" /></element>
<group ref="buttons"><bounds x="-1" y="85.5" width="100" height="25" /></group>
<element ref="cwhite"><bounds x="3.7" y="2.7" width="80.6" height="80.6" /></element>
<group ref="sb_board"><bounds x="4" y="3" width="80" height="80" /></group>
<group ref="sb_ui"><bounds x="-12.5" yc="43" width="10" height="63" /></group>
</view>
</mamelayout>

View File

@ -0,0 +1,434 @@
<?xml version="1.0"?>
<!--
license:CC0-1.0
authors:hap
-->
<mamelayout version="2">
<!-- define elements -->
<element name="whitew"><rect><color red="1" green="1" blue="1" /></rect></element>
<element name="box">
<rect>
<bounds xc="0" yc="0" width="1" height="1" />
<color red="1" green="1" blue="1" />
</rect>
<rect>
<bounds xc="0" yc="0" width="0.7" height="0.7" />
<color red="0" green="0" blue="0" />
</rect>
</element>
<element name="led" defstate="0">
<disk state="1"><color red="1.0" green="0.1" blue="0.15" /></disk>
<disk state="0"><color red="0.14" green="0.014" blue="0.021" /></disk>
</element>
<element name="text_1"><text string="1"></text></element>
<element name="text_2"><text string="2"></text></element>
<element name="text_3"><text string="3"></text></element>
<element name="text_4"><text string="4"></text></element>
<element name="text_5"><text string="5"></text></element>
<element name="text_6"><text string="6"></text></element>
<element name="text_7"><text string="7"></text></element>
<element name="text_8"><text string="8"></text></element>
<element name="text_a"><text string="A"></text></element>
<element name="text_b"><text string="B"></text></element>
<element name="text_c"><text string="C"></text></element>
<element name="text_d"><text string="D"></text></element>
<element name="text_e"><text string="E"></text></element>
<element name="text_f"><text string="F"></text></element>
<element name="text_g"><text string="G"></text></element>
<element name="text_h"><text string="H"></text></element>
<element name="text_l1"><text string="CHECK"></text></element>
<element name="text_l2"><text string="DRAW"></text></element>
<element name="text_l3"><text string="MATE"></text></element>
<!-- sb board -->
<element name="cblack"><rect><color red="0.41" green="0.4" blue="0.39" /></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.svg" state="1"/>
<image file="chess/wn.svg" state="2"/>
<image file="chess/wb.svg" state="3"/>
<image file="chess/wr.svg" state="4"/>
<image file="chess/wq.svg" state="5"/>
<image file="chess/wk.svg" state="6"/>
<image file="chess/bp.svg" state="7"/>
<image file="chess/bn.svg" state="8"/>
<image file="chess/bb.svg" state="9"/>
<image file="chess/br.svg" state="10"/>
<image file="chess/bq.svg" state="11"/>
<image file="chess/bk.svg" state="12"/>
<!-- selected pieces -->
<image file="chess/wp.svg" state="13"><color alpha="0.5" /></image>
<image file="chess/wn.svg" state="14"><color alpha="0.5" /></image>
<image file="chess/wb.svg" state="15"><color alpha="0.5" /></image>
<image file="chess/wr.svg" state="16"><color alpha="0.5" /></image>
<image file="chess/wq.svg" state="17"><color alpha="0.5" /></image>
<image file="chess/wk.svg" state="18"><color alpha="0.5" /></image>
<image file="chess/bp.svg" state="19"><color alpha="0.5" /></image>
<image file="chess/bn.svg" state="20"><color alpha="0.5" /></image>
<image file="chess/bb.svg" state="21"><color alpha="0.5" /></image>
<image file="chess/br.svg" state="22"><color alpha="0.5" /></image>
<image file="chess/bq.svg" state="23"><color alpha="0.5" /></image>
<image file="chess/bk.svg" state="24"><color alpha="0.5" /></image>
</element>
<group name="sb_board">
<bounds x="0" y="0" width="80" height="80" />
<!-- squares (avoid seams) -->
<element ref="cwhite"><bounds x="0" y="0" width="11" height="11" /></element>
<element ref="cblack"><bounds x="10" y="0" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="20" y="0" width="11" height="11" /></element>
<element ref="cblack"><bounds x="30" y="0" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="40" y="0" width="11" height="11" /></element>
<element ref="cblack"><bounds x="50" y="0" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="60" y="0" width="11" height="11" /></element>
<element ref="cblack"><bounds x="70" y="0" width="10" height="11" /></element>
<element ref="cblack"><bounds x="0" y="10" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="10" y="10" width="11" height="11" /></element>
<element ref="cblack"><bounds x="20" y="10" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="30" y="10" width="11" height="11" /></element>
<element ref="cblack"><bounds x="40" y="10" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="50" y="10" width="11" height="11" /></element>
<element ref="cblack"><bounds x="60" y="10" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="70" y="10" width="10" height="11" /></element>
<element ref="cwhite"><bounds x="0" y="20" width="11" height="11" /></element>
<element ref="cblack"><bounds x="10" y="20" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="20" y="20" width="11" height="11" /></element>
<element ref="cblack"><bounds x="30" y="20" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="40" y="20" width="11" height="11" /></element>
<element ref="cblack"><bounds x="50" y="20" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="60" y="20" width="11" height="11" /></element>
<element ref="cblack"><bounds x="70" y="20" width="10" height="11" /></element>
<element ref="cblack"><bounds x="0" y="30" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="10" y="30" width="11" height="11" /></element>
<element ref="cblack"><bounds x="20" y="30" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="30" y="30" width="11" height="11" /></element>
<element ref="cblack"><bounds x="40" y="30" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="50" y="30" width="11" height="11" /></element>
<element ref="cblack"><bounds x="60" y="30" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="70" y="30" width="10" height="11" /></element>
<element ref="cwhite"><bounds x="0" y="40" width="11" height="11" /></element>
<element ref="cblack"><bounds x="10" y="40" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="20" y="40" width="11" height="11" /></element>
<element ref="cblack"><bounds x="30" y="40" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="40" y="40" width="11" height="11" /></element>
<element ref="cblack"><bounds x="50" y="40" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="60" y="40" width="11" height="11" /></element>
<element ref="cblack"><bounds x="70" y="40" width="10" height="11" /></element>
<element ref="cblack"><bounds x="0" y="50" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="10" y="50" width="11" height="11" /></element>
<element ref="cblack"><bounds x="20" y="50" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="30" y="50" width="11" height="11" /></element>
<element ref="cblack"><bounds x="40" y="50" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="50" y="50" width="11" height="11" /></element>
<element ref="cblack"><bounds x="60" y="50" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="70" y="50" width="10" height="11" /></element>
<element ref="cwhite"><bounds x="0" y="60" width="11" height="11" /></element>
<element ref="cblack"><bounds x="10" y="60" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="20" y="60" width="11" height="11" /></element>
<element ref="cblack"><bounds x="30" y="60" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="40" y="60" width="11" height="11" /></element>
<element ref="cblack"><bounds x="50" y="60" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="60" y="60" width="11" height="11" /></element>
<element ref="cblack"><bounds x="70" y="60" width="10" height="11" /></element>
<element ref="cblack"><bounds x="0" y="70" width="11" height="10" /></element>
<element ref="cwhite"><bounds x="10" y="70" width="11" height="10" /></element>
<element ref="cblack"><bounds x="20" y="70" width="11" height="10" /></element>
<element ref="cwhite"><bounds x="30" y="70" width="11" height="10" /></element>
<element ref="cblack"><bounds x="40" y="70" width="11" height="10" /></element>
<element ref="cwhite"><bounds x="50" y="70" width="11" height="10" /></element>
<element ref="cblack"><bounds x="60" y="70" width="11" height="10" /></element>
<element ref="cwhite"><bounds x="70" y="70" width="10" height="10" /></element>
<!-- sensors, pieces -->
<repeat count="8">
<param name="y" start="0" increment="10" />
<param name="i" start="8" increment="-1" />
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x01"><bounds x="0" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x02"><bounds x="10" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x04"><bounds x="20" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x08"><bounds x="30" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x10"><bounds x="40" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x20"><bounds x="50" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x40"><bounds x="60" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x80"><bounds x="70" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element name="piece_a~i~" ref="piece"><bounds x="0" y="~y~" width="10" height="10" /></element>
<element name="piece_b~i~" ref="piece"><bounds x="10" y="~y~" width="10" height="10" /></element>
<element name="piece_c~i~" ref="piece"><bounds x="20" y="~y~" width="10" height="10" /></element>
<element name="piece_d~i~" ref="piece"><bounds x="30" y="~y~" width="10" height="10" /></element>
<element name="piece_e~i~" ref="piece"><bounds x="40" y="~y~" width="10" height="10" /></element>
<element name="piece_f~i~" ref="piece"><bounds x="50" y="~y~" width="10" height="10" /></element>
<element name="piece_g~i~" ref="piece"><bounds x="60" y="~y~" width="10" height="10" /></element>
<element name="piece_h~i~" ref="piece"><bounds x="70" y="~y~" width="10" height="10" /></element>
</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"><text string="RESET"><color red="0.01" green="0.01" blue="0.01" /></text></element>
<element name="text_uib3"><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"><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"><text string=" &lt;&lt;"><color red="0.01" green="0.01" blue="0.01" /></text></element>
<element name="text_uiu2b"><text string=" &lt; "><color red="0.01" green="0.01" blue="0.01" /></text></element>
<element name="text_uiu2c"><text string=" &gt;"><color red="0.01" green="0.01" blue="0.01" /></text></element>
<element name="text_uiu2d"><text string=" &gt;&gt;"><color red="0.01" green="0.01" blue="0.01" /></text></element>
<element name="text_uiu3b"><text string="/"><color red="0.81" green="0.8" blue="0.79" /></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_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" />
<element ref="cblack"><bounds x="0" y="0" width="10" height="1" /></element>
<element ref="cblack"><bounds x="0" y="7" width="10" height="1" /></element>
<element ref="cblack"><bounds x="0" y="79" width="10" height="1" /></element>
<element ref="text_uit1"><bounds x="0" y="2" width="10" height="2" /></element>
<element ref="text_uit2"><bounds x="0" y="4" width="10" height="2" /></element>
<!-- board -->
<element ref="text_uib1"><bounds x="0" y="9" width="10" height="2" /></element>
<element ref="cwhite"><bounds x="1" y="11.5" width="8" height="2.5" /></element>
<element ref="cwhite"><bounds x="1" y="15" width="8" height="2.5" /></element>
<element ref="text_uib2"><bounds x="1.5" y="11.75" width="7" height="2" /></element>
<element ref="text_uib3"><bounds x="1.5" y="15.25" width="7" height="2" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x200"><bounds x="1" y="11.5" width="8" height="2.5" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x100"><bounds x="1" y="15" width="8" height="2.5" /><color alpha="0.25" /></element>
<!-- spawn -->
<element ref="text_uis1"><bounds x="0" y="20.5" width="10" height="2" /></element>
<element ref="cwhite"><bounds x="1" y="23" width="8" height="12" /></element>
<element ref="cwhite"><bounds x="1" y="36" width="8" height="12" /></element>
<element name="piece_ui1" ref="piece"><bounds x="1" y="23" width="4" height="4" /></element>
<element name="piece_ui2" ref="piece"><bounds x="1" y="27" width="4" height="4" /></element>
<element name="piece_ui3" ref="piece"><bounds x="1" y="31" width="4" height="4" /></element>
<element name="piece_ui4" ref="piece"><bounds x="5" y="23" width="4" height="4" /></element>
<element name="piece_ui5" ref="piece"><bounds x="5" y="27" width="4" height="4" /></element>
<element name="piece_ui6" ref="piece"><bounds x="5" y="31" width="4" height="4" /></element>
<element name="piece_ui7" ref="piece"><bounds x="1" y="36" width="4" height="4" /></element>
<element name="piece_ui8" ref="piece"><bounds x="1" y="40" width="4" height="4" /></element>
<element name="piece_ui9" ref="piece"><bounds x="1" y="44" width="4" height="4" /></element>
<element name="piece_ui10" ref="piece"><bounds x="5" y="36" width="4" height="4" /></element>
<element name="piece_ui11" ref="piece"><bounds x="5" y="40" width="4" height="4" /></element>
<element name="piece_ui12" ref="piece"><bounds x="5" y="44" width="4" height="4" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0001"><bounds x="1" y="23" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0002"><bounds x="1" y="27" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0004"><bounds x="1" y="31" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0008"><bounds x="5" y="23" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0010"><bounds x="5" y="27" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0020"><bounds x="5" y="31" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0040"><bounds x="1" y="36" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0080"><bounds x="1" y="40" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0100"><bounds x="1" y="44" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0200"><bounds x="5" y="36" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0400"><bounds x="5" y="40" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0800"><bounds x="5" y="44" width="4" height="4" /><color alpha="0.25" /></element>
<!-- hand -->
<element ref="text_uih1"><bounds x="0" y="51" width="10" height="2" /></element>
<element ref="cblack"><bounds x="1" y="53.5" width="8" height="6" /></element>
<element name="piece_ui0" ref="piece"><bounds x="2" y="53.5" width="6" height="6" /></element>
<element ref="cwhite"><bounds x="1" y="60.5" width="8" height="2.5" /></element>
<element ref="text_uih2"><bounds x="1.5" y="60.75" width="7" height="2" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x08"><bounds x="1" y="60.5" width="8" height="2.5" /><color alpha="0.25" /></element>
<!-- undo -->
<element ref="text_uiu1"><bounds x="0" y="66" width="10" height="2" /></element>
<element ref="cwhite"><bounds x="1" y="68.5" width="1.7" height="6" /></element>
<element ref="cwhite"><bounds x="3.1" y="68.5" width="1.7" height="6" /></element>
<element ref="cwhite"><bounds x="5.2" y="68.5" width="1.7" height="6" /></element>
<element ref="cwhite"><bounds x="7.3" y="68.5" width="1.7" height="6" /></element>
<element ref="text_uiu2a"><bounds x="1" y="69.5" width="1.7" height="4" /></element>
<element ref="text_uiu2b"><bounds x="3.1" y="69.5" width="1.7" height="4" /></element>
<element ref="text_uiu2c"><bounds x="5.2" y="69.5" width="1.7" height="4" /></element>
<element ref="text_uiu2d"><bounds x="7.3" y="69.5" width="1.7" height="4" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x10"><bounds x="1" y="68.5" width="1.7" height="6" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x20"><bounds x="3.1" y="68.5" width="1.7" height="6" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x40"><bounds x="5.2" y="68.5" width="1.7" height="6" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x80"><bounds x="7.3" y="68.5" width="1.7" height="6" /><color alpha="0.25" /></element>
<element name="count_ui0" ref="text_uiu3a"><bounds x="0" y="75" width="4" height="2" /></element>
<element name="count_ui1" ref="text_uiu3c"><bounds x="6" y="75" width="4" height="2" /></element>
<element ref="text_uiu3b"><bounds x="4" y="75" width="2" height="2" /></element>
</group>
<!-- button panel -->
<element name="but" defstate="0">
<rect><color red="0.215" green="0.21" blue="0.21" /></rect>
<rect state="1"><color red="1" green="1" blue="1" alpha="0.17" /></rect>
</element>
<element name="text_b1"><text string="SOUND"></text></element>
<element name="text_b2"><text string="NON"></text></element>
<element name="text_b2a"><text string="AUTO"></text></element>
<element name="text_b3"><text string="TAKE"></text></element>
<element name="text_b3a"><text string="BACK"></text></element>
<element name="text_b4"><text string="PLAY"></text></element>
<element name="text_b5"><text string="LEVEL"></text></element>
<element name="text_b6"><text string="NEW"></text></element>
<element name="text_b6a"><text string="GAME"></text></element>
<element name="text_p1"><image file="chess/wp.svg"></image></element>
<element name="text_p2"><image file="chess/wn.svg"></image></element>
<element name="text_p3"><image file="chess/wb.svg"></image></element>
<element name="text_p4"><image file="chess/wr.svg"></image></element>
<element name="text_p5"><image file="chess/wq.svg"></image></element>
<element name="text_p6"><image file="chess/wk.svg"></image></element>
<group name="buttons1">
<bounds x="0" y="-0.5" width="50" height="3" />
<element ref="text_b1"><bounds xc="6.5" yc="0.58" width="4" height="0.58" /></element>
<element ref="text_b2"><bounds xc="9.5" y="0" width="4" height="0.58" /></element>
<element ref="text_b2a"><bounds xc="9.5" y="0.58" width="4" height="0.58" /></element>
<element ref="text_b3"><bounds xc="12.5" y="0" width="4" height="0.58" /></element>
<element ref="text_b3a"><bounds xc="12.5" y="0.58" width="4" height="0.58" /></element>
<element ref="text_b4"><bounds xc="15.5" yc="0.58" width="4" height="0.58" /></element>
<element ref="text_b5"><bounds xc="18.5" yc="0.58" width="4" height="0.58" /></element>
<element ref="text_b6"><bounds xc="21.5" y="0" width="4" height="0.58" /></element>
<element ref="text_b6a"><bounds xc="21.5" y="0.58" width="4" height="0.58" /></element>
<repeat count="6">
<param name="x" start="24.5" increment="3" />
<param name="i" start="1" increment="1" />
<element ref="text_p~i~"><bounds xc="~x~" yc="0.54" width="1.5" height="1.5" /></element>
</repeat>
</group>
<group name="buttons">
<bounds x="0" y="0" width="50" height="25" />
<group ref="buttons1"><bounds x="0" y="2.1" width="50" height="3" /></group>
<element ref="cwhite" blend="multiply"><bounds x="0" y="1.5" width="50" height="20" /></element>
<element ref="but" inputtag="IN.0" inputmask="0x20"><bounds x="6" y="4" width="1" height="3.3" /></element>
<element ref="but" inputtag="IN.0" inputmask="0x10"><bounds x="9" y="4" width="1" height="3.3" /></element>
<element ref="but" inputtag="IN.0" inputmask="0x08"><bounds x="12" y="4" width="1" height="3.3" /></element>
<element ref="but" inputtag="IN.0" inputmask="0x04"><bounds x="15" y="4" width="1" height="3.3" /></element>
<element ref="but" inputtag="IN.0" inputmask="0x02"><bounds x="18" y="4" width="1" height="3.3" /></element>
<element ref="but" inputtag="IN.0" inputmask="0x01"><bounds x="21" y="4" width="1" height="3.3" /></element>
<element ref="but" inputtag="IN.1" inputmask="0x01"><bounds x="24" y="4" width="1" height="3.3" /></element>
<element ref="but" inputtag="IN.1" inputmask="0x02"><bounds x="27" y="4" width="1" height="3.3" /></element>
<element ref="but" inputtag="IN.1" inputmask="0x04"><bounds x="30" y="4" width="1" height="3.3" /></element>
<element ref="but" inputtag="IN.1" inputmask="0x08"><bounds x="33" y="4" width="1" height="3.3" /></element>
<element ref="but" inputtag="IN.1" inputmask="0x10"><bounds x="36" y="4" width="1" height="3.3" /></element>
<element ref="but" inputtag="IN.1" inputmask="0x20"><bounds x="39" y="4" width="1" height="3.3" /></element>
</group>
<!-- build screen -->
<view name="Internal Layout">
<bounds left="-15.5" right="93" top="-3.5" bottom="98.5" />
<!-- chessboard coords/labels -->
<element ref="text_8"><bounds x="-0.5" y="7" width="2" height="2" /></element>
<element ref="text_7"><bounds x="-0.5" y="17" width="2" height="2" /></element>
<element ref="text_6"><bounds x="-0.5" y="27" width="2" height="2" /></element>
<element ref="text_5"><bounds x="-0.5" y="37" width="2" height="2" /></element>
<element ref="text_4"><bounds x="-0.5" y="47" width="2" height="2" /></element>
<element ref="text_3"><bounds x="-0.5" y="57" width="2" height="2" /></element>
<element ref="text_2"><bounds x="-0.5" y="67" width="2" height="2" /></element>
<element ref="text_1"><bounds x="-0.5" y="77" width="2" height="2" /></element>
<element ref="text_a"><bounds x="8" y="-2" width="2" height="2" /></element>
<element ref="text_b"><bounds x="18" y="-2" width="2" height="2" /></element>
<element ref="text_c"><bounds x="28" y="-2" width="2" height="2" /></element>
<element ref="text_d"><bounds x="38" y="-2" width="2" height="2" /></element>
<element ref="text_e"><bounds x="48" y="-2" width="2" height="2" /></element>
<element ref="text_f"><bounds x="58" y="-2" width="2" height="2" /></element>
<element ref="text_g"><bounds x="68" y="-2" width="2" height="2" /></element>
<element ref="text_h"><bounds x="78" y="-2" width="2" height="2" /></element>
<element ref="box"><bounds xc="-1.5" yc="8" width="1.5" height="1.5" /></element>
<element ref="whitew"><bounds xc="-1.5" yc="78" width="1.5" height="1.5" /></element>
<element ref="text_l1"><bounds xc="14" y="-1.5" width="10" height="1.5" /></element>
<element ref="text_l2"><bounds xc="44" y="-1.5" width="10" height="1.5" /></element>
<element ref="text_l3"><bounds xc="74" y="-1.5" width="10" height="1.5" /></element>
<element ref="cwhite" blend="multiply"><bounds x="-5" y="-5" width="100" height="100" /></element>
<!-- chessboard leds -->
<element name="0.15" ref="led"><bounds x="1.5" y="7.25" width="1.5" height="1.5" /></element>
<element name="0.14" ref="led"><bounds x="1.5" y="17.25" width="1.5" height="1.5" /></element>
<element name="0.13" ref="led"><bounds x="1.5" y="27.25" width="1.5" height="1.5" /></element>
<element name="0.12" ref="led"><bounds x="1.5" y="37.25" width="1.5" height="1.5" /></element>
<element name="0.11" ref="led"><bounds x="1.5" y="47.25" width="1.5" height="1.5" /></element>
<element name="0.10" ref="led"><bounds x="1.5" y="57.25" width="1.5" height="1.5" /></element>
<element name="0.9" ref="led"><bounds x="1.5" y="67.25" width="1.5" height="1.5" /></element>
<element name="0.8" ref="led"><bounds x="1.5" y="77.25" width="1.5" height="1.5" /></element>
<element name="0.7" ref="led"><bounds x="8.25" y="0.5" width="1.5" height="1.5" /></element>
<element name="0.6" ref="led"><bounds x="18.25" y="0.5" width="1.5" height="1.5" /></element>
<element name="0.5" ref="led"><bounds x="28.25" y="0.5" width="1.5" height="1.5" /></element>
<element name="0.4" ref="led"><bounds x="38.25" y="0.5" width="1.5" height="1.5" /></element>
<element name="0.3" ref="led"><bounds x="48.25" y="0.5" width="1.5" height="1.5" /></element>
<element name="0.2" ref="led"><bounds x="58.25" y="0.5" width="1.5" height="1.5" /></element>
<element name="0.1" ref="led"><bounds x="68.25" y="0.5" width="1.5" height="1.5" /></element>
<element name="0.0" ref="led"><bounds x="78.25" y="0.5" width="1.5" height="1.5" /></element>
<group ref="buttons"><bounds x="-15.5" y="77.2" width="130" height="65" /></group>
<element ref="cwhite"><bounds x="3.7" y="2.7" width="80.6" height="80.6" /></element>
<group ref="sb_board"><bounds x="4" y="3" width="80" height="80" /></group>
<group ref="sb_ui"><bounds x="-14" y="3" width="10" height="80" /></group>
</view>
</mamelayout>

View File

@ -0,0 +1,462 @@
<?xml version="1.0"?>
<!--
license:CC0-1.0
authors:hap
-->
<mamelayout version="2">
<!-- define elements -->
<element name="whitew"><rect><color red="1" green="1" blue="1" /></rect></element>
<element name="box">
<rect>
<bounds xc="0" yc="0" width="1" height="1" />
<color red="1" green="1" blue="1" />
</rect>
<rect>
<bounds xc="0" yc="0" width="0.7" height="0.7" />
<color red="0" green="0" blue="0" />
</rect>
</element>
<element name="led" defstate="0">
<disk state="1"><color red="1.0" green="0.1" blue="0.15" /></disk>
<disk state="0"><color red="0.14" green="0.014" blue="0.021" /></disk>
</element>
<element name="text_1"><text string="1"></text></element>
<element name="text_2"><text string="2"></text></element>
<element name="text_3"><text string="3"></text></element>
<element name="text_4"><text string="4"></text></element>
<element name="text_5"><text string="5"></text></element>
<element name="text_6"><text string="6"></text></element>
<element name="text_7"><text string="7"></text></element>
<element name="text_8"><text string="8"></text></element>
<element name="text_a"><text string="A"></text></element>
<element name="text_b"><text string="B"></text></element>
<element name="text_c"><text string="C"></text></element>
<element name="text_d"><text string="D"></text></element>
<element name="text_e"><text string="E"></text></element>
<element name="text_f"><text string="F"></text></element>
<element name="text_g"><text string="G"></text></element>
<element name="text_h"><text string="H"></text></element>
<element name="text_l1"><text string="CHECK"></text></element>
<element name="text_l2"><text string="DRAW"></text></element>
<element name="text_l3"><text string="MATE"></text></element>
<element name="text_l4"><text string="COACH"></text></element>
<element name="text_l5"><text string="NORMAL"></text></element>
<element name="text_l6"><text string="SILENT"></text></element>
<!-- sb board -->
<element name="cblack"><rect><color red="0.41" green="0.4" blue="0.39" /></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.svg" state="1"/>
<image file="chess/wn.svg" state="2"/>
<image file="chess/wb.svg" state="3"/>
<image file="chess/wr.svg" state="4"/>
<image file="chess/wq.svg" state="5"/>
<image file="chess/wk.svg" state="6"/>
<image file="chess/bp.svg" state="7"/>
<image file="chess/bn.svg" state="8"/>
<image file="chess/bb.svg" state="9"/>
<image file="chess/br.svg" state="10"/>
<image file="chess/bq.svg" state="11"/>
<image file="chess/bk.svg" state="12"/>
<!-- selected pieces -->
<image file="chess/wp.svg" state="13"><color alpha="0.5" /></image>
<image file="chess/wn.svg" state="14"><color alpha="0.5" /></image>
<image file="chess/wb.svg" state="15"><color alpha="0.5" /></image>
<image file="chess/wr.svg" state="16"><color alpha="0.5" /></image>
<image file="chess/wq.svg" state="17"><color alpha="0.5" /></image>
<image file="chess/wk.svg" state="18"><color alpha="0.5" /></image>
<image file="chess/bp.svg" state="19"><color alpha="0.5" /></image>
<image file="chess/bn.svg" state="20"><color alpha="0.5" /></image>
<image file="chess/bb.svg" state="21"><color alpha="0.5" /></image>
<image file="chess/br.svg" state="22"><color alpha="0.5" /></image>
<image file="chess/bq.svg" state="23"><color alpha="0.5" /></image>
<image file="chess/bk.svg" state="24"><color alpha="0.5" /></image>
</element>
<group name="sb_board">
<bounds x="0" y="0" width="80" height="80" />
<!-- squares (avoid seams) -->
<element ref="cwhite"><bounds x="0" y="0" width="11" height="11" /></element>
<element ref="cblack"><bounds x="10" y="0" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="20" y="0" width="11" height="11" /></element>
<element ref="cblack"><bounds x="30" y="0" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="40" y="0" width="11" height="11" /></element>
<element ref="cblack"><bounds x="50" y="0" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="60" y="0" width="11" height="11" /></element>
<element ref="cblack"><bounds x="70" y="0" width="10" height="11" /></element>
<element ref="cblack"><bounds x="0" y="10" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="10" y="10" width="11" height="11" /></element>
<element ref="cblack"><bounds x="20" y="10" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="30" y="10" width="11" height="11" /></element>
<element ref="cblack"><bounds x="40" y="10" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="50" y="10" width="11" height="11" /></element>
<element ref="cblack"><bounds x="60" y="10" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="70" y="10" width="10" height="11" /></element>
<element ref="cwhite"><bounds x="0" y="20" width="11" height="11" /></element>
<element ref="cblack"><bounds x="10" y="20" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="20" y="20" width="11" height="11" /></element>
<element ref="cblack"><bounds x="30" y="20" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="40" y="20" width="11" height="11" /></element>
<element ref="cblack"><bounds x="50" y="20" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="60" y="20" width="11" height="11" /></element>
<element ref="cblack"><bounds x="70" y="20" width="10" height="11" /></element>
<element ref="cblack"><bounds x="0" y="30" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="10" y="30" width="11" height="11" /></element>
<element ref="cblack"><bounds x="20" y="30" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="30" y="30" width="11" height="11" /></element>
<element ref="cblack"><bounds x="40" y="30" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="50" y="30" width="11" height="11" /></element>
<element ref="cblack"><bounds x="60" y="30" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="70" y="30" width="10" height="11" /></element>
<element ref="cwhite"><bounds x="0" y="40" width="11" height="11" /></element>
<element ref="cblack"><bounds x="10" y="40" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="20" y="40" width="11" height="11" /></element>
<element ref="cblack"><bounds x="30" y="40" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="40" y="40" width="11" height="11" /></element>
<element ref="cblack"><bounds x="50" y="40" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="60" y="40" width="11" height="11" /></element>
<element ref="cblack"><bounds x="70" y="40" width="10" height="11" /></element>
<element ref="cblack"><bounds x="0" y="50" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="10" y="50" width="11" height="11" /></element>
<element ref="cblack"><bounds x="20" y="50" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="30" y="50" width="11" height="11" /></element>
<element ref="cblack"><bounds x="40" y="50" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="50" y="50" width="11" height="11" /></element>
<element ref="cblack"><bounds x="60" y="50" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="70" y="50" width="10" height="11" /></element>
<element ref="cwhite"><bounds x="0" y="60" width="11" height="11" /></element>
<element ref="cblack"><bounds x="10" y="60" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="20" y="60" width="11" height="11" /></element>
<element ref="cblack"><bounds x="30" y="60" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="40" y="60" width="11" height="11" /></element>
<element ref="cblack"><bounds x="50" y="60" width="11" height="11" /></element>
<element ref="cwhite"><bounds x="60" y="60" width="11" height="11" /></element>
<element ref="cblack"><bounds x="70" y="60" width="10" height="11" /></element>
<element ref="cblack"><bounds x="0" y="70" width="11" height="10" /></element>
<element ref="cwhite"><bounds x="10" y="70" width="11" height="10" /></element>
<element ref="cblack"><bounds x="20" y="70" width="11" height="10" /></element>
<element ref="cwhite"><bounds x="30" y="70" width="11" height="10" /></element>
<element ref="cblack"><bounds x="40" y="70" width="11" height="10" /></element>
<element ref="cwhite"><bounds x="50" y="70" width="11" height="10" /></element>
<element ref="cblack"><bounds x="60" y="70" width="11" height="10" /></element>
<element ref="cwhite"><bounds x="70" y="70" width="10" height="10" /></element>
<!-- sensors, pieces -->
<repeat count="8">
<param name="y" start="0" increment="10" />
<param name="i" start="8" increment="-1" />
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x01"><bounds x="0" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x02"><bounds x="10" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x04"><bounds x="20" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x08"><bounds x="30" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x10"><bounds x="40" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x20"><bounds x="50" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x40"><bounds x="60" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element ref="hlbb" inputtag="board0:RANK.~i~" inputmask="0x80"><bounds x="70" y="~y~" width="10" height="10" /><color alpha="0.04" /></element>
<element name="piece_a~i~" ref="piece"><bounds x="0" y="~y~" width="10" height="10" /></element>
<element name="piece_b~i~" ref="piece"><bounds x="10" y="~y~" width="10" height="10" /></element>
<element name="piece_c~i~" ref="piece"><bounds x="20" y="~y~" width="10" height="10" /></element>
<element name="piece_d~i~" ref="piece"><bounds x="30" y="~y~" width="10" height="10" /></element>
<element name="piece_e~i~" ref="piece"><bounds x="40" y="~y~" width="10" height="10" /></element>
<element name="piece_f~i~" ref="piece"><bounds x="50" y="~y~" width="10" height="10" /></element>
<element name="piece_g~i~" ref="piece"><bounds x="60" y="~y~" width="10" height="10" /></element>
<element name="piece_h~i~" ref="piece"><bounds x="70" y="~y~" width="10" height="10" /></element>
</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"><text string="RESET"><color red="0.01" green="0.01" blue="0.01" /></text></element>
<element name="text_uib3"><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"><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"><text string=" &lt;&lt;"><color red="0.01" green="0.01" blue="0.01" /></text></element>
<element name="text_uiu2b"><text string=" &lt; "><color red="0.01" green="0.01" blue="0.01" /></text></element>
<element name="text_uiu2c"><text string=" &gt;"><color red="0.01" green="0.01" blue="0.01" /></text></element>
<element name="text_uiu2d"><text string=" &gt;&gt;"><color red="0.01" green="0.01" blue="0.01" /></text></element>
<element name="text_uiu3b"><text string="/"><color red="0.81" green="0.8" blue="0.79" /></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_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" />
<element ref="cblack"><bounds x="0" y="0" width="10" height="1" /></element>
<element ref="cblack"><bounds x="0" y="7" width="10" height="1" /></element>
<element ref="cblack"><bounds x="0" y="79" width="10" height="1" /></element>
<element ref="text_uit1"><bounds x="0" y="2" width="10" height="2" /></element>
<element ref="text_uit2"><bounds x="0" y="4" width="10" height="2" /></element>
<!-- board -->
<element ref="text_uib1"><bounds x="0" y="9" width="10" height="2" /></element>
<element ref="cwhite"><bounds x="1" y="11.5" width="8" height="2.5" /></element>
<element ref="cwhite"><bounds x="1" y="15" width="8" height="2.5" /></element>
<element ref="text_uib2"><bounds x="1.5" y="11.75" width="7" height="2" /></element>
<element ref="text_uib3"><bounds x="1.5" y="15.25" width="7" height="2" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x200"><bounds x="1" y="11.5" width="8" height="2.5" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x100"><bounds x="1" y="15" width="8" height="2.5" /><color alpha="0.25" /></element>
<!-- spawn -->
<element ref="text_uis1"><bounds x="0" y="20.5" width="10" height="2" /></element>
<element ref="cwhite"><bounds x="1" y="23" width="8" height="12" /></element>
<element ref="cwhite"><bounds x="1" y="36" width="8" height="12" /></element>
<element name="piece_ui1" ref="piece"><bounds x="1" y="23" width="4" height="4" /></element>
<element name="piece_ui2" ref="piece"><bounds x="1" y="27" width="4" height="4" /></element>
<element name="piece_ui3" ref="piece"><bounds x="1" y="31" width="4" height="4" /></element>
<element name="piece_ui4" ref="piece"><bounds x="5" y="23" width="4" height="4" /></element>
<element name="piece_ui5" ref="piece"><bounds x="5" y="27" width="4" height="4" /></element>
<element name="piece_ui6" ref="piece"><bounds x="5" y="31" width="4" height="4" /></element>
<element name="piece_ui7" ref="piece"><bounds x="1" y="36" width="4" height="4" /></element>
<element name="piece_ui8" ref="piece"><bounds x="1" y="40" width="4" height="4" /></element>
<element name="piece_ui9" ref="piece"><bounds x="1" y="44" width="4" height="4" /></element>
<element name="piece_ui10" ref="piece"><bounds x="5" y="36" width="4" height="4" /></element>
<element name="piece_ui11" ref="piece"><bounds x="5" y="40" width="4" height="4" /></element>
<element name="piece_ui12" ref="piece"><bounds x="5" y="44" width="4" height="4" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0001"><bounds x="1" y="23" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0002"><bounds x="1" y="27" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0004"><bounds x="1" y="31" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0008"><bounds x="5" y="23" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0010"><bounds x="5" y="27" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0020"><bounds x="5" y="31" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0040"><bounds x="1" y="36" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0080"><bounds x="1" y="40" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0100"><bounds x="1" y="44" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0200"><bounds x="5" y="36" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0400"><bounds x="5" y="40" width="4" height="4" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:SPAWN" inputmask="0x0800"><bounds x="5" y="44" width="4" height="4" /><color alpha="0.25" /></element>
<!-- hand -->
<element ref="text_uih1"><bounds x="0" y="51" width="10" height="2" /></element>
<element ref="cblack"><bounds x="1" y="53.5" width="8" height="6" /></element>
<element name="piece_ui0" ref="piece"><bounds x="2" y="53.5" width="6" height="6" /></element>
<element ref="cwhite"><bounds x="1" y="60.5" width="8" height="2.5" /></element>
<element ref="text_uih2"><bounds x="1.5" y="60.75" width="7" height="2" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x08"><bounds x="1" y="60.5" width="8" height="2.5" /><color alpha="0.25" /></element>
<!-- undo -->
<element ref="text_uiu1"><bounds x="0" y="66" width="10" height="2" /></element>
<element ref="cwhite"><bounds x="1" y="68.5" width="1.7" height="6" /></element>
<element ref="cwhite"><bounds x="3.1" y="68.5" width="1.7" height="6" /></element>
<element ref="cwhite"><bounds x="5.2" y="68.5" width="1.7" height="6" /></element>
<element ref="cwhite"><bounds x="7.3" y="68.5" width="1.7" height="6" /></element>
<element ref="text_uiu2a"><bounds x="1" y="69.5" width="1.7" height="4" /></element>
<element ref="text_uiu2b"><bounds x="3.1" y="69.5" width="1.7" height="4" /></element>
<element ref="text_uiu2c"><bounds x="5.2" y="69.5" width="1.7" height="4" /></element>
<element ref="text_uiu2d"><bounds x="7.3" y="69.5" width="1.7" height="4" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x10"><bounds x="1" y="68.5" width="1.7" height="6" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x20"><bounds x="3.1" y="68.5" width="1.7" height="6" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x40"><bounds x="5.2" y="68.5" width="1.7" height="6" /><color alpha="0.25" /></element>
<element ref="hlub" inputtag="board0:UI" inputmask="0x80"><bounds x="7.3" y="68.5" width="1.7" height="6" /><color alpha="0.25" /></element>
<element name="count_ui0" ref="text_uiu3a"><bounds x="0" y="75" width="4" height="2" /></element>
<element name="count_ui1" ref="text_uiu3c"><bounds x="6" y="75" width="4" height="2" /></element>
<element ref="text_uiu3b"><bounds x="4" y="75" width="2" height="2" /></element>
</group>
<!-- button panel -->
<element name="but" defstate="0">
<rect><color red="0.215" green="0.21" blue="0.21" /></rect>
<rect state="1"><color red="1" green="1" blue="1" alpha="0.17" /></rect>
</element>
<element name="text_b1"><text string="SOUND"></text></element>
<element name="text_b2"><text string="NON"></text></element>
<element name="text_b2a"><text string="AUTO"></text></element>
<element name="text_b3"><text string="TAKE"></text></element>
<element name="text_b3a"><text string="BACK"></text></element>
<element name="text_b4"><text string="PLAY"></text></element>
<element name="text_b5"><text string="LEVEL"></text></element>
<element name="text_b6"><text string="NEW"></text></element>
<element name="text_b6a"><text string="GAME"></text></element>
<element name="text_b7"><text string="COACH"></text></element>
<element name="text_b7a"><text string="LEVEL"></text></element>
<element name="text_b8"><text string="STUDIES"></text></element>
<element name="text_b9"><text string="DISPLAY"></text></element>
<element name="text_b9a"><text string="MOVE"></text></element>
<element name="text_b10"><text string="EVALUATE"></text></element>
<element name="text_p1"><image file="chess/wp.svg"></image></element>
<element name="text_p2"><image file="chess/wn.svg"></image></element>
<element name="text_p3"><image file="chess/wb.svg"></image></element>
<element name="text_p4"><image file="chess/wr.svg"></image></element>
<element name="text_p5"><image file="chess/wq.svg"></image></element>
<element name="text_p6"><image file="chess/wk.svg"></image></element>
<group name="buttons1">
<bounds x="0" y="-0.5" width="50" height="3" />
<element ref="text_b1"><bounds xc="6.5" yc="0.58" width="4" height="0.58" /></element>
<element ref="text_b2"><bounds xc="9.5" y="0" width="4" height="0.58" /></element>
<element ref="text_b2a"><bounds xc="9.5" y="0.58" width="4" height="0.58" /></element>
<element ref="text_b3"><bounds xc="12.5" y="0" width="4" height="0.58" /></element>
<element ref="text_b3a"><bounds xc="12.5" y="0.58" width="4" height="0.58" /></element>
<element ref="text_b4"><bounds xc="15.5" yc="0.58" width="4" height="0.58" /></element>
<element ref="text_b5"><bounds xc="18.5" yc="0.58" width="4" height="0.58" /></element>
<element ref="text_b6"><bounds xc="21.5" y="0" width="4" height="0.58" /></element>
<element ref="text_b6a"><bounds xc="21.5" y="0.58" width="4" height="0.58" /></element>
<repeat count="6">
<param name="x" start="24.5" increment="3" />
<param name="i" start="1" increment="1" />
<element ref="text_p~i~"><bounds xc="~x~" yc="0.54" width="1.5" height="1.5" /></element>
</repeat>
</group>
<group name="buttons2">
<bounds x="0" y="-0.5" width="50" height="3" />
<element ref="text_b7"><bounds xc="6.5" y="0" width="4" height="0.58" /></element>
<element ref="text_b7a"><bounds xc="6.5" y="0.58" width="4" height="0.58" /></element>
<element ref="text_b8"><bounds xc="21.5" yc="0.58" width="4" height="0.58" /></element>
<element ref="text_b9"><bounds xc="24.5" y="0" width="4" height="0.58" /></element>
<element ref="text_b9a"><bounds xc="24.5" y="0.58" width="4" height="0.58" /></element>
<element ref="text_b10"><bounds xc="39.5" yc="0.58" width="4" height="0.58" /></element>
</group>
<group name="buttons">
<bounds x="0" y="0" width="50" height="25" />
<group ref="buttons1"><bounds x="0" y="7.0" width="50" height="3" /></group>
<group ref="buttons2"><bounds x="0" y="2.1" width="50" height="3" /></group>
<element ref="cwhite" blend="multiply"><bounds x="0" y="1.5" width="50" height="20" /></element>
<element ref="but" inputtag="IN.0" inputmask="0x20"><bounds x="6" y="4" width="1" height="3.3" /></element>
<element ref="but" inputtag="IN.0" inputmask="0x10"><bounds x="9" y="4" width="1" height="3.3" /></element>
<element ref="but" inputtag="IN.0" inputmask="0x08"><bounds x="12" y="4" width="1" height="3.3" /></element>
<element ref="but" inputtag="IN.0" inputmask="0x04"><bounds x="15" y="4" width="1" height="3.3" /></element>
<element ref="but" inputtag="IN.0" inputmask="0x02"><bounds x="18" y="4" width="1" height="3.3" /></element>
<element ref="but" inputtag="IN.0" inputmask="0x01"><bounds x="21" y="4" width="1" height="3.3" /></element>
<element ref="but" inputtag="IN.1" inputmask="0x01"><bounds x="24" y="4" width="1" height="3.3" /></element>
<element ref="but" inputtag="IN.1" inputmask="0x02"><bounds x="27" y="4" width="1" height="3.3" /></element>
<element ref="but" inputtag="IN.1" inputmask="0x04"><bounds x="30" y="4" width="1" height="3.3" /></element>
<element ref="but" inputtag="IN.1" inputmask="0x08"><bounds x="33" y="4" width="1" height="3.3" /></element>
<element ref="but" inputtag="IN.1" inputmask="0x10"><bounds x="36" y="4" width="1" height="3.3" /></element>
<element ref="but" inputtag="IN.1" inputmask="0x20"><bounds x="39" y="4" width="1" height="3.3" /></element>
</group>
<!-- build screen -->
<view name="Internal Layout">
<bounds left="-15.5" right="93" top="-3.5" bottom="100.8" />
<!-- chessboard coords/labels -->
<element ref="text_8"><bounds x="-0.5" y="7" width="2" height="2" /></element>
<element ref="text_7"><bounds x="-0.5" y="17" width="2" height="2" /></element>
<element ref="text_6"><bounds x="-0.5" y="27" width="2" height="2" /></element>
<element ref="text_5"><bounds x="-0.5" y="37" width="2" height="2" /></element>
<element ref="text_4"><bounds x="-0.5" y="47" width="2" height="2" /></element>
<element ref="text_3"><bounds x="-0.5" y="57" width="2" height="2" /></element>
<element ref="text_2"><bounds x="-0.5" y="67" width="2" height="2" /></element>
<element ref="text_1"><bounds x="-0.5" y="77" width="2" height="2" /></element>
<element ref="text_a"><bounds x="8" y="-2" width="2" height="2" /></element>
<element ref="text_b"><bounds x="18" y="-2" width="2" height="2" /></element>
<element ref="text_c"><bounds x="28" y="-2" width="2" height="2" /></element>
<element ref="text_d"><bounds x="38" y="-2" width="2" height="2" /></element>
<element ref="text_e"><bounds x="48" y="-2" width="2" height="2" /></element>
<element ref="text_f"><bounds x="58" y="-2" width="2" height="2" /></element>
<element ref="text_g"><bounds x="68" y="-2" width="2" height="2" /></element>
<element ref="text_h"><bounds x="78" y="-2" width="2" height="2" /></element>
<element ref="box"><bounds xc="-1.5" yc="8" width="1.5" height="1.5" /></element>
<element ref="whitew"><bounds xc="-1.5" yc="78" width="1.5" height="1.5" /></element>
<element ref="text_l1"><bounds xc="14" y="-1.5" width="10" height="1.5" /></element>
<element ref="text_l2"><bounds xc="44" y="-1.5" width="10" height="1.5" /></element>
<element ref="text_l3"><bounds xc="74" y="-1.5" width="10" height="1.5" /></element>
<element ref="text_l4"><bounds xc="54" y="0.5" width="10" height="1.5" /></element>
<element ref="text_l5"><bounds xc="64" y="0.5" width="10" height="1.5" /></element>
<element ref="text_l6"><bounds xc="74" y="0.5" width="10" height="1.5" /></element>
<element ref="cwhite" blend="multiply"><bounds x="-5" y="-5" width="100" height="100" /></element>
<element ref="cblack"><bounds x="56.5" yc="1.25" width="2.25" height="0.15" /></element>
<element ref="cblack"><bounds x="66.7" yc="1.25" width="2.25" height="0.15" /></element>
<element ref="cblack"><bounds x="76.5" yc="1.25" width="2.25" height="0.15" /></element>
<!-- chessboard leds -->
<element name="0.15" ref="led"><bounds x="1.5" y="7.25" width="1.5" height="1.5" /></element>
<element name="0.14" ref="led"><bounds x="1.5" y="17.25" width="1.5" height="1.5" /></element>
<element name="0.13" ref="led"><bounds x="1.5" y="27.25" width="1.5" height="1.5" /></element>
<element name="0.12" ref="led"><bounds x="1.5" y="37.25" width="1.5" height="1.5" /></element>
<element name="0.11" ref="led"><bounds x="1.5" y="47.25" width="1.5" height="1.5" /></element>
<element name="0.10" ref="led"><bounds x="1.5" y="57.25" width="1.5" height="1.5" /></element>
<element name="0.9" ref="led"><bounds x="1.5" y="67.25" width="1.5" height="1.5" /></element>
<element name="0.8" ref="led"><bounds x="1.5" y="77.25" width="1.5" height="1.5" /></element>
<element name="0.7" ref="led"><bounds x="8.25" y="0.5" width="1.5" height="1.5" /></element>
<element name="0.6" ref="led"><bounds x="18.25" y="0.5" width="1.5" height="1.5" /></element>
<element name="0.5" ref="led"><bounds x="28.25" y="0.5" width="1.5" height="1.5" /></element>
<element name="0.4" ref="led"><bounds x="38.25" y="0.5" width="1.5" height="1.5" /></element>
<element name="0.3" ref="led"><bounds x="48.25" y="0.5" width="1.5" height="1.5" /></element>
<element name="0.2" ref="led"><bounds x="58.25" y="0.5" width="1.5" height="1.5" /></element>
<element name="0.1" ref="led"><bounds x="68.25" y="0.5" width="1.5" height="1.5" /></element>
<element name="0.0" ref="led"><bounds x="78.25" y="0.5" width="1.5" height="1.5" /></element>
<group ref="buttons"><bounds x="-15.5" y="77.2" width="130" height="65" /></group>
<element ref="cwhite"><bounds x="3.7" y="2.7" width="80.6" height="80.6" /></element>
<group ref="sb_board"><bounds x="4" y="3" width="80" height="80" /></group>
<group ref="sb_ui"><bounds x="-14" y="3" width="10" height="80" /></group>
</view>
</mamelayout>

View File

@ -39027,6 +39027,13 @@ ccdelta1
@source:saitek/edames.cpp
edames
@source:saitek/electrio.cpp
electrio
mk12
pcheckers
pchess
pplus
@source:saitek/exechess.cpp
exechess

View File

@ -0,0 +1,443 @@
// license:BSD-3-Clause
// copyright-holders:hap
// thanks-to:Sean Riddle
/*******************************************************************************
SciSys Electronic Trio / Kasparov Pocket Chess family
Developed by Heuristic Software (Kaplan's company). Electronic Trio and Pocket
Chess have the same MCU/ROM, the former adds an option to select 2 other games
(Checkers and Tic-Tac-Toe). Use the New Game button to select a different game.
In MAME, make sure to change to set the applicable view under Video Options.
Note that for the Checkers games, captures are not done automatically. Manually
remove the captured pieces while holding Ctrl.
Hardware notes:
Electronic Trio:
- PCB label: SH2-PE-013 REV 3
- Hitachi HD44868 @ ~600kHz (62K resistor)
- piezo, 16 LEDs, button sensors chessboard
PCB labels for others (base hardware is the same):
- Kasparov Pocket Chess: SHC-PE-005
- Kasparov Pocket Plus: SHD-PE-005
- Pocket Checkers: CH1-PE-013 Rev.0 (also seen with Pocket Plus PCB)
- Kasparov Travel Mate II: TDII-PE-006
- Electronic Chess Mk 10: ST1-PE-002 REV 2
- Kasparov Mk 12: ST2-PE-001 REV 3
================================================================================
44868A12 MCU is used in:
- SciSys Kasparov Pocket Chess (model 114)
- SciSys Electronic Trio (model 124)
- SciSys Kasparov Travel Mate II (model 125)
- SciSys Courier V (red version of Travel Mate II, French)
- SciSys Electronic Chess Mk 10 (later sold as Kasparov Mk 10) (model 162)
- Scisys Electronic Chess (red version of Mk 10, French)
Button configuration (New Game to switch between games) is determined by pin R43.
VCC = Electronic Trio, GND = dedicated chess computer.
44868A14 MCU is used in:
- SciSys Kasparov Pocket Plus (model 115)
- SciSys Kasparov Plus (model 128)
- SciSys Kasparov Plus (Computer Plus Coach) (model 129)
- SciSys Kasparov Mk 12 (model 164)
- Tandy (Radio Shack) Pocket Chess Computer 1450 (model 60-2251), Tandy brand
Pocket Plus
Mk 12 and Plus Coach have 15 buttons, but functionality is exactly the same.
As with Electronic Trio, button configuration is determined by R42/R43 pins.
SciSys did something similar with Chess Companion II and Explorer chess.
Saitek Kasparov Mk 12 Trainer (and maybe Pocket Plus Trainer as well) are on
different hardware, with an ST8108 MCU.
44868A16 MCU is used in:
- Saitek Pocket Checkers (model 630)
- Saitek Electronic Checkers (model 640)
- Tandy (Radio Shack) Sensory Electronic Checkers (model 60-2203), Tandy brand
Pocket Checkers
Pocket Checkers is nearly the same as Electronic Trio, it's hardcoded to Checkers.
The ROM is only 5 bytes different. The A5 LED still lights up when holding New Game,
this is normal. It's not possible to select Chess or Tic-Tac-Toe.
*******************************************************************************/
#include "emu.h"
#include "cpu/hmcs40/hmcs40.h"
#include "machine/sensorboard.h"
#include "sound/dac.h"
#include "video/pwm.h"
#include "speaker.h"
// internal artwork
#include "saitek_electrio.lh"
#include "saitek_mk12.lh"
#include "saitek_pcheckers.lh"
#include "saitek_pchess.lh"
#include "saitek_pplus.lh"
namespace {
class electrio_state : public driver_device
{
public:
electrio_state(const machine_config &mconfig, device_type type, const char *tag) :
driver_device(mconfig, type, tag),
m_maincpu(*this, "maincpu"),
m_board(*this, "board%u", 0),
m_display(*this, "display"),
m_dac(*this, "dac"),
m_inputs(*this, "IN.%u", 0),
m_out_piece(*this, "piece%u_%c%u", 1U, unsigned('a'), 1U),
m_out_pui(*this, "piece%u_ui%u", 1U, 0U),
m_out_count(*this, "count%u_ui%u", 1U, 0U)
{ }
void electrio(machine_config &config);
void pchess(machine_config &config);
void pcheckers(machine_config &config);
void mk12(machine_config &config);
void pplus(machine_config &config);
protected:
virtual void machine_start() override ATTR_COLD;
private:
// devices/pointers
required_device<hmcs40_cpu_device> m_maincpu;
optional_device_array<sensorboard_device, 3> m_board;
required_device<pwm_display_device> m_display;
required_device<dac_1bit_device> m_dac;
required_ioport_array<3> m_inputs;
output_finder<2, 0x10, 0x10> m_out_piece;
output_finder<2, 0x20+1> m_out_pui;
output_finder<2, 2> m_out_count;
u8 m_inp_mux = 0;
template<int N> void init_checkers(u8 data);
template<int N> void output_board(offs_t offset, u16 data);
// I/O handlers
template<int N> void input_w(u8 data);
template<int N> u8 input1_r();
void leds_w(u16 data);
u8 input2_r();
};
void electrio_state::machine_start()
{
// resolve outputs (electrio)
m_out_piece.resolve();
m_out_pui.resolve();
m_out_count.resolve();
save_item(NAME(m_inp_mux));
}
/*******************************************************************************
Sensorboard
*******************************************************************************/
template<int N>
void electrio_state::init_checkers(u8 data)
{
for (int i = 0; i < 12; i++)
{
m_board[N]->write_piece((i % 4) * 2 + ((i / 4) & 1), i / 4, 1); // white
m_board[N]->write_piece((i % 4) * 2 + (~(i / 4) & 1), i / 4 + 5, 3); // black
}
}
template<int N>
void electrio_state::output_board(offs_t offset, u16 data)
{
// forward outputs for electrio extra boards
const u8 sel = (offset >> 8) % 3;
offset &= 0xff;
switch (sel)
{
case 0:
{
const u8 x = offset & 0xf;
const u8 y = offset >> 4 & 0xf;
m_out_piece[N][x][y] = data;
break;
}
case 1:
m_out_pui[N][offset] = data;
break;
case 2:
m_out_count[N][offset] = data;
break;
}
}
/*******************************************************************************
I/O
*******************************************************************************/
template<int N>
void electrio_state::input_w(u8 data)
{
// R0x,R1x: input mux
const u8 shift = N * 4;
m_inp_mux = (m_inp_mux & ~(0xf << shift)) | ((data ^ 0xf) << shift);
}
template<int N>
u8 electrio_state::input1_r()
{
// R2x,R3x: read chessboard
u8 data = 0;
// more than one emulated board for electrio
for (auto & board : m_board)
{
for (int i = 0; i < 8; i++)
if (board && BIT(m_inp_mux, i))
data |= board->read_file(i);
}
return bitswap<4>(~data >> (N*4), 0,1,2,3);
}
void electrio_state::leds_w(u16 data)
{
// D0-D15: LEDs (direct)
m_display->write_row(0, ~data);
}
u8 electrio_state::input2_r()
{
u8 data = 0;
// R40,R41: read buttons
for (int i = 0; i < 2; i++)
if (m_inp_mux & m_inputs[i]->read())
data |= 1 << i;
// R42,R43: button configuration
data |= m_inputs[2]->read() << 2 & 0xc;
return data ^ 3;
}
/*******************************************************************************
Input Ports
*******************************************************************************/
static INPUT_PORTS_START( electrio )
PORT_START("IN.0")
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_N) PORT_NAME("New Game")
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_L) PORT_NAME("Level")
PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_P) PORT_NAME("Play")
PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_T) PORT_NAME("Take Back")
PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_M) PORT_NAME("Multi-Move")
PORT_BIT(0xe0, IP_ACTIVE_HIGH, IPT_UNUSED)
PORT_START("IN.1")
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_6) PORT_CODE(KEYCODE_6_PAD) PORT_NAME("Pawn")
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_5) PORT_CODE(KEYCODE_5_PAD) PORT_NAME("Knight")
PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_4) PORT_CODE(KEYCODE_4_PAD) PORT_NAME("Bishop")
PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_3) PORT_CODE(KEYCODE_3_PAD) PORT_NAME("Rook")
PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_2) PORT_CODE(KEYCODE_2_PAD) PORT_NAME("Queen")
PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_1) PORT_CODE(KEYCODE_1_PAD) PORT_NAME("King")
PORT_BIT(0xc0, IP_ACTIVE_HIGH, IPT_UNUSED)
PORT_START("IN.2") // button config
PORT_BIT(0x03, 0x02, IPT_CUSTOM)
INPUT_PORTS_END
static INPUT_PORTS_START( pchess )
PORT_INCLUDE( electrio )
PORT_MODIFY("IN.0")
PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_A) PORT_NAME("Non Auto")
PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_S) PORT_NAME("Sound")
PORT_MODIFY("IN.1")
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_1) PORT_CODE(KEYCODE_1_PAD) PORT_NAME("Pawn")
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_2) PORT_CODE(KEYCODE_2_PAD) PORT_NAME("Knight")
PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_3) PORT_CODE(KEYCODE_3_PAD) PORT_NAME("Bishop")
PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_4) PORT_CODE(KEYCODE_4_PAD) PORT_NAME("Rook")
PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_5) PORT_CODE(KEYCODE_5_PAD) PORT_NAME("Queen")
PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_6) PORT_CODE(KEYCODE_6_PAD) PORT_NAME("King")
PORT_MODIFY("IN.2")
PORT_BIT(0x03, 0x00, IPT_CUSTOM)
INPUT_PORTS_END
static INPUT_PORTS_START( pcheckers )
PORT_INCLUDE( pchess )
PORT_MODIFY("IN.1")
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_M) PORT_NAME("Man")
PORT_BIT(0x1e, IP_ACTIVE_HIGH, IPT_UNUSED)
PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_K) PORT_NAME("King")
PORT_MODIFY("IN.2")
PORT_BIT(0x03, 0x02, IPT_CUSTOM)
INPUT_PORTS_END
static INPUT_PORTS_START( mk12 )
PORT_INCLUDE( electrio )
PORT_MODIFY("IN.0")
PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_A) PORT_NAME("Non Auto")
PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_H) PORT_NAME("Help")
PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_D) PORT_NAME("Display Move")
PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_S) PORT_NAME("Studies")
PORT_MODIFY("IN.1")
PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_E) PORT_NAME("Evaluate")
PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_UNUSED)
PORT_MODIFY("IN.2")
PORT_BIT(0x03, 0x03, IPT_CUSTOM)
INPUT_PORTS_END
static INPUT_PORTS_START( pplus )
PORT_INCLUDE( pchess )
PORT_MODIFY("IN.0")
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_N) PORT_CODE(KEYCODE_U) PORT_NAME("New Game / Studies")
PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_S) PORT_CODE(KEYCODE_C) PORT_NAME("Sound / Coach Level")
PORT_MODIFY("IN.1")
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_1) PORT_CODE(KEYCODE_1_PAD) PORT_CODE(KEYCODE_D) PORT_NAME("Pawn / Display Move")
PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_6) PORT_CODE(KEYCODE_6_PAD) PORT_CODE(KEYCODE_E) PORT_NAME("King / Evaluate")
PORT_MODIFY("IN.2")
PORT_BIT(0x03, 0x02, IPT_CUSTOM)
INPUT_PORTS_END
/*******************************************************************************
Machine Configs
*******************************************************************************/
void electrio_state::pchess(machine_config &config)
{
// basic machine hardware
HD44868(config, m_maincpu, 600'000); // approximation
m_maincpu->write_r<0>().set(FUNC(electrio_state::input_w<0>));
m_maincpu->write_r<1>().set(FUNC(electrio_state::input_w<1>));
m_maincpu->read_r<2>().set(FUNC(electrio_state::input1_r<1>));
m_maincpu->read_r<3>().set(FUNC(electrio_state::input1_r<0>));
m_maincpu->read_r<4>().set(FUNC(electrio_state::input2_r));
m_maincpu->write_r<5>().set("dac", FUNC(dac_1bit_device::write)).rshift(3);
m_maincpu->write_d().set(FUNC(electrio_state::leds_w));
SENSORBOARD(config, m_board[0]).set_type(sensorboard_device::BUTTONS);
m_board[0]->init_cb().set(m_board[0], FUNC(sensorboard_device::preset_chess));
m_board[0]->set_delay(attotime::from_msec(150));
// video hardware
PWM_DISPLAY(config, m_display).set_size(1, 16);
config.set_default_layout(layout_saitek_pchess);
// sound hardware
SPEAKER(config, "speaker").front_center();
DAC_1BIT(config, m_dac).add_route(ALL_OUTPUTS, "speaker", 0.25);
}
void electrio_state::mk12(machine_config &config)
{
pchess(config);
config.set_default_layout(layout_saitek_mk12);
}
void electrio_state::pplus(machine_config &config)
{
pchess(config);
config.set_default_layout(layout_saitek_pplus);
}
void electrio_state::pcheckers(machine_config &config)
{
pchess(config);
config.set_default_layout(layout_saitek_pcheckers);
m_board[0]->init_cb().set(FUNC(electrio_state::init_checkers<0>));
m_board[0]->set_spawnpoints(4);
}
void electrio_state::electrio(machine_config &config)
{
pchess(config);
config.set_default_layout(layout_saitek_electrio);
// add boards for checkers and tic-tac-toe
SENSORBOARD(config, m_board[1]).set_type(sensorboard_device::BUTTONS);
m_board[1]->init_cb().set(FUNC(electrio_state::init_checkers<1>));
m_board[1]->output_cb().set(FUNC(electrio_state::output_board<0>));
m_board[1]->set_spawnpoints(4);
m_board[1]->set_delay(attotime::from_msec(150));
SENSORBOARD(config, m_board[2]).set_type(sensorboard_device::BUTTONS);
m_board[2]->output_cb().set(FUNC(electrio_state::output_board<1>));
m_board[2]->set_spawnpoints(2);
m_board[2]->set_delay(attotime::from_msec(150));
}
/*******************************************************************************
ROM Definitions
*******************************************************************************/
ROM_START( electrio )
ROM_REGION( 0x2000, "maincpu", 0 )
ROM_LOAD("1985_sx2b_scisys_44868a12.u1", 0x0000, 0x2000, CRC(3d0cbb25) SHA1(719616f5140789dc9e3d970839b205b92c8e1a41) )
ROM_IGNORE( 0x2000 ) // ignore factory test banks
ROM_END
ROM_START( pcheckers )
ROM_REGION( 0x2000, "maincpu", 0 )
ROM_LOAD("1988_cx1_saitek_44868a16.u1", 0x0000, 0x2000, CRC(0b9fd694) SHA1(8f3c13f65786c1d1f414665b459724a674226d06) )
ROM_IGNORE( 0x2000 ) // ignore factory test banks
ROM_END
ROM_START( mk12 )
ROM_REGION( 0x2000, "maincpu", 0 )
ROM_LOAD("1986_sx1_scisys_44868a14.u1", 0x0000, 0x2000, CRC(41743fbc) SHA1(fb6f97ef9eddaf781eb4348a7fa956a874914086) )
ROM_IGNORE( 0x2000 ) // ignore factory test banks
ROM_END
#define rom_pchess rom_electrio
#define rom_pplus rom_mk12
} // anonymous namespace
/*******************************************************************************
Drivers
*******************************************************************************/
// YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY, FULLNAME, FLAGS
SYST( 1985, electrio, 0, 0, electrio, electrio, electrio_state, empty_init, "SciSys / Heuristic Software", "Electronic Trio", MACHINE_SUPPORTS_SAVE )
SYST( 1985, pchess, electrio, 0, pchess, pchess, electrio_state, empty_init, "SciSys / Heuristic Software", "Kasparov Pocket Chess", MACHINE_SUPPORTS_SAVE )
SYST( 1988, pcheckers, electrio, 0, pcheckers, pcheckers, electrio_state, empty_init, "Saitek / Heuristic Software", "Pocket Checkers", MACHINE_SUPPORTS_SAVE )
SYST( 1986, mk12, 0, 0, mk12, mk12, electrio_state, empty_init, "SciSys / Heuristic Software", "Kasparov Mk 12", MACHINE_SUPPORTS_SAVE )
SYST( 1986, pplus, mk12, 0, pplus, pplus, electrio_state, empty_init, "SciSys / Heuristic Software", "Kasparov Pocket Plus", MACHINE_SUPPORTS_SAVE )