im01: added buttons to internal artwork

This commit is contained in:
hap 2021-12-03 13:57:31 +01:00
parent 17a49a91b6
commit 762ebf36bb
2 changed files with 259 additions and 11 deletions

View File

@ -18,7 +18,6 @@ TODO:
and/or T11 core timing itself is not 100% accurate. There's a big "but":
these measurements are from the older ИМ-01.
- verify actual XTAL, the label couldn't be seen
- add button panel to internal artwork
- dump/add im01 (rom serial 106/107)
*******************************************************************************
@ -64,7 +63,7 @@ N: чксло ходов - Show Moves
#include "speaker.h"
// internal artwork
#include "im01.lh"
#include "im01.lh" // clickable
namespace {
@ -293,4 +292,4 @@ ROM_END
******************************************************************************/
// YEAR NAME PARENT CMP MACHINE INPUT CLASS INIT COMPANY, FULLNAME, FLAGS
CONS( 1991, im01t, 0, 0, im01, im01, im01_state, empty_init, "Svetlana", "Elektronika IM-01T", MACHINE_SUPPORTS_SAVE )
CONS( 1991, im01t, 0, 0, im01, im01, im01_state, empty_init, "Svetlana", "Elektronika IM-01T", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )

View File

@ -8,20 +8,256 @@ license:CC0
<!-- define elements -->
<element name="under"><rect><color red="0.2" green="0.2" blue="0.2" /></rect></element>
<element name="greenm"><rect><color red="0.2" green="1.0" blue="0.2" /></rect></element>
<!-- button panel -->
<element name="white"><rect><color red="0.8" green="0.8" blue="0.8" /></rect></element>
<element name="whitew"><rect><color red="1" green="1" blue="1" /></rect></element>
<element name="blacka"><rect><color red="0.125" green="0.125" blue="0.125" /></rect></element>
<element name="but" defstate="0">
<rect state="1"><color red="0.25" green="0.25" blue="0.25" /></rect>
<rect state="0"><color red="0.1" green="0.1" blue="0.1" /></rect>
</element>
<element name="text_a">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="a" align="1"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_b">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="b" align="1"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_c">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="c" align="1"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_d">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="d" align="1"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_e">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="e" align="1"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_f">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="f" align="1"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_g">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="g" align="1"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_h">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="h" align="1"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_1">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="1" align="2"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_2">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="2" align="2"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_3">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="3" align="2"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_4">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="4" align="2"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_5">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="5" align="2"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_6">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="6" align="2"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_7">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="7" align="2"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_8">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="8" align="2"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_l1">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="Фuг"><color red="0.1" green="0.1" blue="0.1" /></text> <!-- yes, "u" and not "и" -->
</element>
<element name="text_l2">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="НП"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_l3">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="И"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_l4">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="СД"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_l5">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="РЗ"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_l6">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="&#x2261;"><color red="0.1" green="0.1" blue="0.1" /></text> <!-- triple dash -->
</element>
<element name="text_l7">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="N"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_l8">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="&#x2190;"><color red="0.1" green="0.1" blue="0.1" /></text> <!-- arrow left -->
</element>
<element name="text_l9">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="Вар"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_l10">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="ПХ"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_l11">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="?"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_l12">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="CИ"><color red="0.1" green="0.1" blue="0.1" /></text>
</element>
<element name="text_l13">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="&#x2191;"><color red="0.1" green="0.1" blue="0.1" /></text> <!-- arrow up -->
</element>
<element name="text_l14">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="&#x2193;"><color red="0.1" green="0.1" blue="0.1" /></text> <!-- arrow down -->
</element>
<element name="disk_w">
<disk>
<bounds x="0" y="0" width="1" height="1" />
<color red="0.1" green="0.1" blue="0.1" />
</disk>
<disk>
<bounds x="0.1" y="0.1" width="0.8" height="0.8" />
<color red="0.8" green="0.8" blue="0.8" />
</disk>
</element>
<element name="disk_b">
<disk><color red="0.1" green="0.1" blue="0.1" /></disk>
</element>
<element name="text_p1"><image file="chess/bk.svg"></image></element>
<element name="text_p2"><image file="chess/bq.svg"></image></element>
<element name="text_p3"><image file="chess/br.svg"></image></element>
<element name="text_p4"><image file="chess/bb.svg"></image></element>
<element name="text_p5"><image file="chess/bn.svg"></image></element>
<element name="text_p6"><image file="chess/bp.svg"></image></element>
<group name="panel">
<element ref="white"><bounds x="5.3" y="7" width="19.7" height="51" /></element>
<element ref="whitew"><bounds x="5.5" y="20" width="5" height="36" /></element>
<element ref="text_p1"><bounds x="6.2" y="22.45" width="2.8" height="2.8" /></element>
<element ref="text_p2"><bounds x="6.2" y="28.45" width="2.8" height="2.8" /></element>
<element ref="text_p3"><bounds x="6.2" y="34.45" width="2.8" height="2.8" /></element>
<element ref="text_p4"><bounds x="6.2" y="40.45" width="2.8" height="2.8" /></element>
<element ref="text_p5"><bounds x="6.2" y="46.45" width="2.8" height="2.8" /></element>
<element ref="text_p6"><bounds x="6.2" y="52.45" width="2.8" height="2.8" /></element>
<element ref="blacka" blend="add"><bounds x="5.5" y="20" width="5" height="36" /></element>
<element ref="white" blend="multiply"><bounds x="5.5" y="20" width="5" height="36" /></element>
<element ref="text_h"><bounds x="10" y="8" width="1.5" height="1.8" /></element>
<element ref="text_g"><bounds x="10" y="14" width="1.5" height="1.8" /></element>
<element ref="text_f"><bounds x="10" y="20" width="1.5" height="1.8" /></element>
<element ref="text_e"><bounds x="10" y="26" width="1.5" height="1.8" /></element>
<element ref="text_d"><bounds x="10" y="32" width="1.5" height="1.8" /></element>
<element ref="text_c"><bounds x="10" y="38" width="1.5" height="1.8" /></element>
<element ref="text_b"><bounds x="10" y="44" width="1.5" height="1.8" /></element>
<element ref="text_a"><bounds x="10" y="50" width="1.5" height="1.8" /></element>
<element ref="text_8"><bounds x="12" y="8" width="1.5" height="1.8" /></element>
<element ref="text_7"><bounds x="12" y="14" width="1.5" height="1.8" /></element>
<element ref="text_6"><bounds x="12" y="20" width="1.5" height="1.8" /></element>
<element ref="text_5"><bounds x="12" y="26" width="1.5" height="1.8" /></element>
<element ref="text_4"><bounds x="12" y="32" width="1.5" height="1.8" /></element>
<element ref="text_3"><bounds x="12" y="38" width="1.5" height="1.8" /></element>
<element ref="text_2"><bounds x="12" y="44" width="1.5" height="1.8" /></element>
<element ref="text_1"><bounds x="12" y="50" width="1.5" height="1.8" /></element>
<element ref="text_l1"> <bounds x="15" y="8" width="3.5" height="1.8" /></element>
<element ref="text_l2"> <bounds x="20" y="8" width="3.5" height="1.8" /></element>
<element ref="text_l3"> <bounds x="15" y="14" width="3.5" height="1.8" /></element>
<element ref="text_l4"> <bounds x="20" y="14" width="3.5" height="1.8" /></element>
<element ref="text_l5"> <bounds x="15" y="26" width="3.5" height="1.8" /></element>
<element ref="text_l6"> <bounds x="20" y="26" width="3.5" height="1.8" /></element>
<element ref="text_l7"> <bounds x="15" y="32" width="3.5" height="1.8" /></element>
<element ref="text_l8"> <bounds x="20" y="32" width="3.5" height="1.8" /></element>
<element ref="text_l9"> <bounds x="15" y="38" width="3.5" height="1.8" /></element>
<element ref="text_l10"><bounds x="20" y="38" width="3.5" height="1.8" /></element>
<element ref="text_l11"><bounds x="15" y="44" width="3.5" height="1.8" /></element>
<element ref="text_l12"><bounds x="20" y="44" width="3.5" height="1.8" /></element>
<element ref="text_l13"><bounds x="15" y="50" width="3.5" height="1.6" /></element>
<element ref="text_l14"><bounds x="20" y="50" width="3.5" height="1.6" /></element>
<element ref="disk_w"><bounds x="16.15" y="20.25" width="1.2" height="1.2" /></element>
<element ref="disk_b"><bounds x="21.15" y="20.25" width="1.2" height="1.2" /></element>
<element ref="but" inputtag="IN.3" inputmask="0x01"><bounds x="10" y="10" width="3.5" height="3" /></element>
<element ref="but" inputtag="IN.3" inputmask="0x02"><bounds x="10" y="16" width="3.5" height="3" /></element>
<element ref="but" inputtag="IN.3" inputmask="0x04"><bounds x="10" y="22" width="3.5" height="3" /></element>
<element ref="but" inputtag="IN.3" inputmask="0x08"><bounds x="10" y="28" width="3.5" height="3" /></element>
<element ref="but" inputtag="IN.0" inputmask="0x01"><bounds x="10" y="34" width="3.5" height="3" /></element>
<element ref="but" inputtag="IN.0" inputmask="0x02"><bounds x="10" y="40" width="3.5" height="3" /></element>
<element ref="but" inputtag="IN.0" inputmask="0x04"><bounds x="10" y="46" width="3.5" height="3" /></element>
<element ref="but" inputtag="IN.0" inputmask="0x08"><bounds x="10" y="52" width="3.5" height="3" /></element>
<element ref="but" inputtag="IN.4" inputmask="0x01"><bounds x="15" y="10" width="3.5" height="3" /></element>
<element ref="but" inputtag="IN.4" inputmask="0x02"><bounds x="15" y="16" width="3.5" height="3" /></element>
<element ref="but" inputtag="IN.4" inputmask="0x04"><bounds x="15" y="22" width="3.5" height="3" /></element>
<element ref="but" inputtag="IN.4" inputmask="0x08"><bounds x="15" y="28" width="3.5" height="3" /></element>
<element ref="but" inputtag="IN.1" inputmask="0x01"><bounds x="15" y="34" width="3.5" height="3" /></element>
<element ref="but" inputtag="IN.1" inputmask="0x02"><bounds x="15" y="40" width="3.5" height="3" /></element>
<element ref="but" inputtag="IN.1" inputmask="0x04"><bounds x="15" y="46" width="3.5" height="3" /></element>
<element ref="but" inputtag="IN.1" inputmask="0x08"><bounds x="15" y="52" width="3.5" height="3" /></element>
<element ref="but" inputtag="IN.5" inputmask="0x01"><bounds x="20" y="10" width="3.5" height="3" /></element>
<element ref="but" inputtag="IN.5" inputmask="0x02"><bounds x="20" y="16" width="3.5" height="3" /></element>
<element ref="but" inputtag="IN.5" inputmask="0x04"><bounds x="20" y="22" width="3.5" height="3" /></element>
<element ref="but" inputtag="IN.5" inputmask="0x08"><bounds x="20" y="28" width="3.5" height="3" /></element>
<element ref="but" inputtag="IN.2" inputmask="0x01"><bounds x="20" y="34" width="3.5" height="3" /></element>
<element ref="but" inputtag="IN.2" inputmask="0x02"><bounds x="20" y="40" width="3.5" height="3" /></element>
<element ref="but" inputtag="IN.2" inputmask="0x04"><bounds x="20" y="46" width="3.5" height="3" /></element>
<element ref="but" inputtag="IN.2" inputmask="0x08"><bounds x="20" y="52" width="3.5" height="3" /></element>
</group>
<!-- display -->
<element name="digit" defstate="0">
<led7seg><color red="0.15" green="1.0" blue="0.05" /></led7seg>
<led7seg><color red="0.2" green="1.0" blue="0.85" /></led7seg>
</element>
<element name="led" defstate="0">
<disk state="1"><color red="0.15" green="1.0" blue="0.05" /></disk>
<disk state="0"><color red="0.015" green="0.1" blue="0.005" /></disk>
<disk state="0"><color red="0.0235" green="0.1255" blue="0.1059" /></disk>
<disk state="1"><color red="0.2" green="1.0" blue="0.85" /></disk>
</element>
<!-- build screen -->
<view name="Internal Layout">
<bounds x="-1.5" y="10" width="20.5" height="8" />
<group name="display">
<bounds x="-0.9" y="11" width="19.3" height="6" />
<element name="digit4" ref="digit"><bounds x="-0.9" y="11" width="4" height="6" /></element>
<element name="digit3" ref="digit"><bounds x="3.8" y="11" width="4" height="6" /></element>
@ -30,5 +266,18 @@ license:CC0
<element name="2.0" ref="led"><bounds x="8.6" y="12.0" width="0.6" height="0.6" /></element>
<element name="2.3" ref="led"><bounds x="8.4" y="15.5" width="0.6" height="0.6" /></element>
</group>
<!-- build screen -->
<view name="Internal Layout">
<group ref="display"><bounds x="8.3" y="19.74" width="13.7" height="4.26" /></group>
<element ref="under" blend="add"><bounds x="5.3" y="16.74" width="19.7" height="11" /></element>
<element ref="greenm" blend="multiply"><bounds x="5.3" y="16.74" width="19.7" height="11" /></element>
<group ref="panel"><bounds x="5.3" y="27" width="19.7" height="51" /></group>
</view>
</mamelayout>