summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Vas Crabb <vas@vastheman.com>2018-07-22 04:45:56 +1000
committer Vas Crabb <vas@vastheman.com>2018-07-22 04:45:56 +1000
commit1f99edeb4d01d3bc5bb9cb44c67a5278c6429125 (patch)
tree94f9b282fd292f0b32f50f9eb4506f3778850ff9
parentdce955c68db3cfc700cae11743ad966036faa64f (diff)
looping layouts (nw)
-rw-r--r--src/mame/layout/aim65.lay124
-rw-r--r--src/mame/layout/sda5708.lay323
-rw-r--r--src/mame/layout/sitcom.lay100
-rw-r--r--src/mame/layout/whousetc.lay180
4 files changed, 90 insertions, 637 deletions
diff --git a/src/mame/layout/aim65.lay b/src/mame/layout/aim65.lay
index b250dc48b35..9322a56e8aa 100644
--- a/src/mame/layout/aim65.lay
+++ b/src/mame/layout/aim65.lay
@@ -1,11 +1,11 @@
<?xml version="1.0"?>
<mamelayout version="2">
-<!-- 2007-07-30: Initial version. [Dirk Best] -->
-<!-- 2015-08-14: Eric Roberts version. [Best of the Best 2] -->
+ <!-- 2007-07-30: Initial version. [Dirk Best] -->
+ <!-- 2015-08-14: Eric Roberts version. [Best of the Best 2] -->
-<!-- define elements -->
+ <!-- define elements -->
<element name="digit" defstate="0">
<led16seg>
@@ -18,7 +18,7 @@
<element name="static_white"><rect><color red="0.85" green="0.84" blue="0.84" /></rect></element>
-<!-- build screen -->
+ <!-- build screen -->
<view name="Internal Layout">
<bounds left="50" top="20" right="770" bottom="141" />
@@ -26,110 +26,36 @@
<bounds left="50" top="20" right="770" bottom="141" />
</bezel>
- <!-- bezel -->
+ <!-- bezel -->
<bezel element="static_white"><bounds left="50" top="20" right="770" bottom="141" /></bezel>
<bezel element="static_black"><bounds left="53" top="23" right="767" bottom="138" /></bezel>
- <bezel element="static_white"><bounds x="63" y="129" width="2" height="10" /></bezel>
- <bezel element="static_white"><bounds x="97" y="135" width="2" height="4" /></bezel>
- <bezel element="static_white"><bounds x="131" y="135" width="2" height="4" /></bezel>
- <bezel element="static_white"><bounds x="165" y="135" width="2" height="4" /></bezel>
- <bezel element="static_white"><bounds x="202" y="135" width="2" height="4" /></bezel>
-
- <bezel element="static_white"><bounds x="236" y="129" width="2" height="10" /></bezel>
- <bezel element="static_white"><bounds x="270" y="135" width="2" height="4" /></bezel>
- <bezel element="static_white"><bounds x="304" y="135" width="2" height="4" /></bezel>
- <bezel element="static_white"><bounds x="341" y="135" width="2" height="4" /></bezel>
- <bezel element="static_white"><bounds x="375" y="135" width="2" height="4" /></bezel>
-
- <bezel element="static_white"><bounds x="409" y="129" width="2" height="10" /></bezel>
- <bezel element="static_white"><bounds x="443" y="135" width="2" height="4" /></bezel>
- <bezel element="static_white"><bounds x="480" y="135" width="2" height="4" /></bezel>
- <bezel element="static_white"><bounds x="514" y="135" width="2" height="4" /></bezel>
- <bezel element="static_white"><bounds x="548" y="135" width="2" height="4" /></bezel>
-
- <bezel element="static_white"><bounds x="582" y="129" width="2" height="10" /></bezel>
- <bezel element="static_white"><bounds x="619" y="135" width="2" height="4" /></bezel>
- <bezel element="static_white"><bounds x="653" y="135" width="2" height="4" /></bezel>
- <bezel element="static_white"><bounds x="687" y="135" width="2" height="4" /></bezel>
- <bezel element="static_white"><bounds x="721" y="135" width="2" height="4" /></bezel>
+ <repeat count="4">
+ <param name="xl" start="63" increment="173" />
+ <param name="xs" start="97.6" increment="173" />
+ <bezel element="static_white"><bounds x="~xl~" y="129" width="2" height="10" /></bezel>
+ <repeat count="4">
+ <param name="xs" start="~xs~" increment="34.6" />
+ <bezel element="static_white"><bounds x="~xs~" y="135" width="2" height="4" /></bezel>
+ </repeat>
+ </repeat>
<bezel element="static_white"><bounds x="755" y="129" width="2" height="10" /></bezel>
- <!-- digits -->
-
- <!-- DL1416A DS1 -->
- <bezel name="digit0" element="digit">
- <bounds left="65" top="80" right="90" bottom="120" />
- </bezel>
- <bezel name="digit1" element="digit">
- <bounds left="99" top="80" right="124" bottom="120" />
- </bezel>
- <bezel name="digit2" element="digit">
- <bounds left="133" top="80" right="158" bottom="120" />
- </bezel>
- <bezel name="digit3" element="digit">
- <bounds left="167" top="80" right="192" bottom="120" />
- </bezel>
-
- <!-- DL1416A DS2 -->
- <bezel name="digit4" element="digit">
- <bounds left="204" top="80" right="229" bottom="120" />
- </bezel>
- <bezel name="digit5" element="digit">
- <bounds left="238" top="80" right="263" bottom="120" />
- </bezel>
- <bezel name="digit6" element="digit">
- <bounds left="272" top="80" right="297" bottom="120" />
- </bezel>
- <bezel name="digit7" element="digit">
- <bounds left="306" top="80" right="331" bottom="120" />
- </bezel>
-
- <!-- DL1416A DS3 -->
- <bezel name="digit8" element="digit">
- <bounds left="343" top="80" right="368" bottom="120" />
- </bezel>
- <bezel name="digit9" element="digit">
- <bounds left="377" top="80" right="402" bottom="120" />
- </bezel>
- <bezel name="digit10" element="digit">
- <bounds left="411" top="80" right="436" bottom="120" />
- </bezel>
- <bezel name="digit11" element="digit">
- <bounds left="445" top="80" right="470" bottom="120" />
- </bezel>
-
- <!-- DL1416A DS4 -->
- <bezel name="digit12" element="digit">
- <bounds left="482" top="80" right="507" bottom="120" />
- </bezel>
- <bezel name="digit13" element="digit">
- <bounds left="516" top="80" right="541" bottom="120" />
- </bezel>
- <bezel name="digit14" element="digit">
- <bounds left="550" top="80" right="575" bottom="120" />
- </bezel>
- <bezel name="digit15" element="digit">
- <bounds left="584" top="80" right="609" bottom="120" />
- </bezel>
-
- <!-- DL1416A DS5 -->
- <bezel name="digit16" element="digit">
- <bounds left="621" top="80" right="646" bottom="120" />
- </bezel>
- <bezel name="digit17" element="digit">
- <bounds left="655" top="80" right="680" bottom="120" />
- </bezel>
- <bezel name="digit18" element="digit">
- <bounds left="689" top="80" right="714" bottom="120" />
- </bezel>
- <bezel name="digit19" element="digit">
- <bounds left="723" top="80" right="748" bottom="120" />
- </bezel>
+ <!-- digits -->
+ <!-- DL1416A DS1/DS2/DS3/DS4/DS5 -->
+ <repeat count="5">
+ <param name="x" start="65" increment="139" />
+ <param name="digitno" start="0" increment="4" />
+ <repeat count="4">
+ <param name="digitno" start="~digitno~" increment="1" />
+ <param name="x" start="~x~" increment="34" />
+ <bezel name="digit~digitno~" element="digit"><bounds x="~x~" y="80" width="25" height="40" /></bezel>
+ </repeat>
+ </repeat>
</view>
</mamelayout>
diff --git a/src/mame/layout/sda5708.lay b/src/mame/layout/sda5708.lay
index 98d1def4d52..cac55a6381a 100644
--- a/src/mame/layout/sda5708.lay
+++ b/src/mame/layout/sda5708.lay
@@ -55,311 +55,22 @@
<bounds left="0" top="0" right="150" bottom="20" />
</backdrop>
-<!-- The following program generated the bezels with mechanical data from the data sheet
-#include <stdio.h> /* printf */
-
-int main()
-{
- int digits = 8; // 8 digits
- int cols = 5; // 5 rows in each digit
- int rows = 7; // 7 columns in each digit
- int size = 100; // size of each led
- int dsx = 380; // distance between each digit
- int psx = 111 - size; // horizontal distance between leds
- int psy = 114 - size; // vertical distance between leds
-
- for (int d = 1; d <= digits; d++ ){
- for (int y = 1; y <= rows; y++){
- for (int x = 1; x <= cols; x++) {
- printf( "<bezel name=\"Dot_%d\" element=\"Pixel\" state=\"0\"><bounds x=\"%d\" y=\"%d\" width=\"%d\" height=\"%d\"/></bezel>\n",
- d * 100 + y * 10 + x,
- (d - 1) * (cols *(size + psx) + dsx) + (x - 1) * (size + psx),
- (y - 1) * (psy + size), size, size);
- }
- }
- }
-}
--->
-<bezel name="Dot_111" element="Pixel" state="0"><bounds x="0" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_112" element="Pixel" state="0"><bounds x="111" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_113" element="Pixel" state="0"><bounds x="222" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_114" element="Pixel" state="0"><bounds x="333" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_115" element="Pixel" state="0"><bounds x="444" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_121" element="Pixel" state="0"><bounds x="0" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_122" element="Pixel" state="0"><bounds x="111" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_123" element="Pixel" state="0"><bounds x="222" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_124" element="Pixel" state="0"><bounds x="333" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_125" element="Pixel" state="0"><bounds x="444" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_131" element="Pixel" state="0"><bounds x="0" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_132" element="Pixel" state="0"><bounds x="111" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_133" element="Pixel" state="0"><bounds x="222" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_134" element="Pixel" state="0"><bounds x="333" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_135" element="Pixel" state="0"><bounds x="444" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_141" element="Pixel" state="0"><bounds x="0" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_142" element="Pixel" state="0"><bounds x="111" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_143" element="Pixel" state="0"><bounds x="222" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_144" element="Pixel" state="0"><bounds x="333" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_145" element="Pixel" state="0"><bounds x="444" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_151" element="Pixel" state="0"><bounds x="0" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_152" element="Pixel" state="0"><bounds x="111" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_153" element="Pixel" state="0"><bounds x="222" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_154" element="Pixel" state="0"><bounds x="333" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_155" element="Pixel" state="0"><bounds x="444" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_161" element="Pixel" state="0"><bounds x="0" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_162" element="Pixel" state="0"><bounds x="111" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_163" element="Pixel" state="0"><bounds x="222" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_164" element="Pixel" state="0"><bounds x="333" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_165" element="Pixel" state="0"><bounds x="444" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_171" element="Pixel" state="0"><bounds x="0" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_172" element="Pixel" state="0"><bounds x="111" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_173" element="Pixel" state="0"><bounds x="222" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_174" element="Pixel" state="0"><bounds x="333" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_175" element="Pixel" state="0"><bounds x="444" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_211" element="Pixel" state="0"><bounds x="935" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_212" element="Pixel" state="0"><bounds x="1046" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_213" element="Pixel" state="0"><bounds x="1157" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_214" element="Pixel" state="0"><bounds x="1268" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_215" element="Pixel" state="0"><bounds x="1379" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_221" element="Pixel" state="0"><bounds x="935" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_222" element="Pixel" state="0"><bounds x="1046" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_223" element="Pixel" state="0"><bounds x="1157" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_224" element="Pixel" state="0"><bounds x="1268" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_225" element="Pixel" state="0"><bounds x="1379" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_231" element="Pixel" state="0"><bounds x="935" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_232" element="Pixel" state="0"><bounds x="1046" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_233" element="Pixel" state="0"><bounds x="1157" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_234" element="Pixel" state="0"><bounds x="1268" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_235" element="Pixel" state="0"><bounds x="1379" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_241" element="Pixel" state="0"><bounds x="935" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_242" element="Pixel" state="0"><bounds x="1046" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_243" element="Pixel" state="0"><bounds x="1157" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_244" element="Pixel" state="0"><bounds x="1268" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_245" element="Pixel" state="0"><bounds x="1379" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_251" element="Pixel" state="0"><bounds x="935" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_252" element="Pixel" state="0"><bounds x="1046" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_253" element="Pixel" state="0"><bounds x="1157" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_254" element="Pixel" state="0"><bounds x="1268" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_255" element="Pixel" state="0"><bounds x="1379" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_261" element="Pixel" state="0"><bounds x="935" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_262" element="Pixel" state="0"><bounds x="1046" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_263" element="Pixel" state="0"><bounds x="1157" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_264" element="Pixel" state="0"><bounds x="1268" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_265" element="Pixel" state="0"><bounds x="1379" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_271" element="Pixel" state="0"><bounds x="935" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_272" element="Pixel" state="0"><bounds x="1046" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_273" element="Pixel" state="0"><bounds x="1157" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_274" element="Pixel" state="0"><bounds x="1268" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_275" element="Pixel" state="0"><bounds x="1379" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_311" element="Pixel" state="0"><bounds x="1870" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_312" element="Pixel" state="0"><bounds x="1981" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_313" element="Pixel" state="0"><bounds x="2092" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_314" element="Pixel" state="0"><bounds x="2203" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_315" element="Pixel" state="0"><bounds x="2314" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_321" element="Pixel" state="0"><bounds x="1870" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_322" element="Pixel" state="0"><bounds x="1981" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_323" element="Pixel" state="0"><bounds x="2092" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_324" element="Pixel" state="0"><bounds x="2203" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_325" element="Pixel" state="0"><bounds x="2314" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_331" element="Pixel" state="0"><bounds x="1870" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_332" element="Pixel" state="0"><bounds x="1981" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_333" element="Pixel" state="0"><bounds x="2092" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_334" element="Pixel" state="0"><bounds x="2203" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_335" element="Pixel" state="0"><bounds x="2314" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_341" element="Pixel" state="0"><bounds x="1870" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_342" element="Pixel" state="0"><bounds x="1981" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_343" element="Pixel" state="0"><bounds x="2092" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_344" element="Pixel" state="0"><bounds x="2203" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_345" element="Pixel" state="0"><bounds x="2314" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_351" element="Pixel" state="0"><bounds x="1870" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_352" element="Pixel" state="0"><bounds x="1981" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_353" element="Pixel" state="0"><bounds x="2092" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_354" element="Pixel" state="0"><bounds x="2203" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_355" element="Pixel" state="0"><bounds x="2314" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_361" element="Pixel" state="0"><bounds x="1870" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_362" element="Pixel" state="0"><bounds x="1981" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_363" element="Pixel" state="0"><bounds x="2092" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_364" element="Pixel" state="0"><bounds x="2203" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_365" element="Pixel" state="0"><bounds x="2314" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_371" element="Pixel" state="0"><bounds x="1870" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_372" element="Pixel" state="0"><bounds x="1981" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_373" element="Pixel" state="0"><bounds x="2092" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_374" element="Pixel" state="0"><bounds x="2203" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_375" element="Pixel" state="0"><bounds x="2314" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_411" element="Pixel" state="0"><bounds x="2805" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_412" element="Pixel" state="0"><bounds x="2916" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_413" element="Pixel" state="0"><bounds x="3027" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_414" element="Pixel" state="0"><bounds x="3138" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_415" element="Pixel" state="0"><bounds x="3249" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_421" element="Pixel" state="0"><bounds x="2805" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_422" element="Pixel" state="0"><bounds x="2916" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_423" element="Pixel" state="0"><bounds x="3027" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_424" element="Pixel" state="0"><bounds x="3138" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_425" element="Pixel" state="0"><bounds x="3249" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_431" element="Pixel" state="0"><bounds x="2805" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_432" element="Pixel" state="0"><bounds x="2916" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_433" element="Pixel" state="0"><bounds x="3027" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_434" element="Pixel" state="0"><bounds x="3138" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_435" element="Pixel" state="0"><bounds x="3249" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_441" element="Pixel" state="0"><bounds x="2805" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_442" element="Pixel" state="0"><bounds x="2916" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_443" element="Pixel" state="0"><bounds x="3027" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_444" element="Pixel" state="0"><bounds x="3138" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_445" element="Pixel" state="0"><bounds x="3249" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_451" element="Pixel" state="0"><bounds x="2805" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_452" element="Pixel" state="0"><bounds x="2916" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_453" element="Pixel" state="0"><bounds x="3027" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_454" element="Pixel" state="0"><bounds x="3138" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_455" element="Pixel" state="0"><bounds x="3249" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_461" element="Pixel" state="0"><bounds x="2805" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_462" element="Pixel" state="0"><bounds x="2916" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_463" element="Pixel" state="0"><bounds x="3027" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_464" element="Pixel" state="0"><bounds x="3138" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_465" element="Pixel" state="0"><bounds x="3249" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_471" element="Pixel" state="0"><bounds x="2805" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_472" element="Pixel" state="0"><bounds x="2916" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_473" element="Pixel" state="0"><bounds x="3027" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_474" element="Pixel" state="0"><bounds x="3138" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_475" element="Pixel" state="0"><bounds x="3249" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_511" element="Pixel" state="0"><bounds x="3740" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_512" element="Pixel" state="0"><bounds x="3851" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_513" element="Pixel" state="0"><bounds x="3962" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_514" element="Pixel" state="0"><bounds x="4073" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_515" element="Pixel" state="0"><bounds x="4184" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_521" element="Pixel" state="0"><bounds x="3740" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_522" element="Pixel" state="0"><bounds x="3851" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_523" element="Pixel" state="0"><bounds x="3962" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_524" element="Pixel" state="0"><bounds x="4073" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_525" element="Pixel" state="0"><bounds x="4184" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_531" element="Pixel" state="0"><bounds x="3740" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_532" element="Pixel" state="0"><bounds x="3851" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_533" element="Pixel" state="0"><bounds x="3962" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_534" element="Pixel" state="0"><bounds x="4073" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_535" element="Pixel" state="0"><bounds x="4184" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_541" element="Pixel" state="0"><bounds x="3740" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_542" element="Pixel" state="0"><bounds x="3851" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_543" element="Pixel" state="0"><bounds x="3962" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_544" element="Pixel" state="0"><bounds x="4073" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_545" element="Pixel" state="0"><bounds x="4184" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_551" element="Pixel" state="0"><bounds x="3740" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_552" element="Pixel" state="0"><bounds x="3851" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_553" element="Pixel" state="0"><bounds x="3962" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_554" element="Pixel" state="0"><bounds x="4073" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_555" element="Pixel" state="0"><bounds x="4184" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_561" element="Pixel" state="0"><bounds x="3740" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_562" element="Pixel" state="0"><bounds x="3851" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_563" element="Pixel" state="0"><bounds x="3962" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_564" element="Pixel" state="0"><bounds x="4073" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_565" element="Pixel" state="0"><bounds x="4184" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_571" element="Pixel" state="0"><bounds x="3740" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_572" element="Pixel" state="0"><bounds x="3851" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_573" element="Pixel" state="0"><bounds x="3962" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_574" element="Pixel" state="0"><bounds x="4073" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_575" element="Pixel" state="0"><bounds x="4184" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_611" element="Pixel" state="0"><bounds x="4675" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_612" element="Pixel" state="0"><bounds x="4786" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_613" element="Pixel" state="0"><bounds x="4897" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_614" element="Pixel" state="0"><bounds x="5008" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_615" element="Pixel" state="0"><bounds x="5119" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_621" element="Pixel" state="0"><bounds x="4675" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_622" element="Pixel" state="0"><bounds x="4786" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_623" element="Pixel" state="0"><bounds x="4897" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_624" element="Pixel" state="0"><bounds x="5008" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_625" element="Pixel" state="0"><bounds x="5119" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_631" element="Pixel" state="0"><bounds x="4675" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_632" element="Pixel" state="0"><bounds x="4786" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_633" element="Pixel" state="0"><bounds x="4897" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_634" element="Pixel" state="0"><bounds x="5008" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_635" element="Pixel" state="0"><bounds x="5119" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_641" element="Pixel" state="0"><bounds x="4675" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_642" element="Pixel" state="0"><bounds x="4786" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_643" element="Pixel" state="0"><bounds x="4897" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_644" element="Pixel" state="0"><bounds x="5008" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_645" element="Pixel" state="0"><bounds x="5119" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_651" element="Pixel" state="0"><bounds x="4675" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_652" element="Pixel" state="0"><bounds x="4786" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_653" element="Pixel" state="0"><bounds x="4897" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_654" element="Pixel" state="0"><bounds x="5008" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_655" element="Pixel" state="0"><bounds x="5119" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_661" element="Pixel" state="0"><bounds x="4675" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_662" element="Pixel" state="0"><bounds x="4786" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_663" element="Pixel" state="0"><bounds x="4897" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_664" element="Pixel" state="0"><bounds x="5008" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_665" element="Pixel" state="0"><bounds x="5119" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_671" element="Pixel" state="0"><bounds x="4675" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_672" element="Pixel" state="0"><bounds x="4786" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_673" element="Pixel" state="0"><bounds x="4897" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_674" element="Pixel" state="0"><bounds x="5008" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_675" element="Pixel" state="0"><bounds x="5119" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_711" element="Pixel" state="0"><bounds x="5610" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_712" element="Pixel" state="0"><bounds x="5721" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_713" element="Pixel" state="0"><bounds x="5832" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_714" element="Pixel" state="0"><bounds x="5943" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_715" element="Pixel" state="0"><bounds x="6054" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_721" element="Pixel" state="0"><bounds x="5610" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_722" element="Pixel" state="0"><bounds x="5721" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_723" element="Pixel" state="0"><bounds x="5832" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_724" element="Pixel" state="0"><bounds x="5943" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_725" element="Pixel" state="0"><bounds x="6054" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_731" element="Pixel" state="0"><bounds x="5610" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_732" element="Pixel" state="0"><bounds x="5721" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_733" element="Pixel" state="0"><bounds x="5832" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_734" element="Pixel" state="0"><bounds x="5943" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_735" element="Pixel" state="0"><bounds x="6054" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_741" element="Pixel" state="0"><bounds x="5610" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_742" element="Pixel" state="0"><bounds x="5721" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_743" element="Pixel" state="0"><bounds x="5832" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_744" element="Pixel" state="0"><bounds x="5943" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_745" element="Pixel" state="0"><bounds x="6054" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_751" element="Pixel" state="0"><bounds x="5610" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_752" element="Pixel" state="0"><bounds x="5721" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_753" element="Pixel" state="0"><bounds x="5832" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_754" element="Pixel" state="0"><bounds x="5943" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_755" element="Pixel" state="0"><bounds x="6054" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_761" element="Pixel" state="0"><bounds x="5610" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_762" element="Pixel" state="0"><bounds x="5721" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_763" element="Pixel" state="0"><bounds x="5832" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_764" element="Pixel" state="0"><bounds x="5943" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_765" element="Pixel" state="0"><bounds x="6054" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_771" element="Pixel" state="0"><bounds x="5610" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_772" element="Pixel" state="0"><bounds x="5721" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_773" element="Pixel" state="0"><bounds x="5832" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_774" element="Pixel" state="0"><bounds x="5943" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_775" element="Pixel" state="0"><bounds x="6054" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_811" element="Pixel" state="0"><bounds x="6545" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_812" element="Pixel" state="0"><bounds x="6656" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_813" element="Pixel" state="0"><bounds x="6767" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_814" element="Pixel" state="0"><bounds x="6878" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_815" element="Pixel" state="0"><bounds x="6989" y="0" width="100" height="100"/></bezel>
-<bezel name="Dot_821" element="Pixel" state="0"><bounds x="6545" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_822" element="Pixel" state="0"><bounds x="6656" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_823" element="Pixel" state="0"><bounds x="6767" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_824" element="Pixel" state="0"><bounds x="6878" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_825" element="Pixel" state="0"><bounds x="6989" y="114" width="100" height="100"/></bezel>
-<bezel name="Dot_831" element="Pixel" state="0"><bounds x="6545" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_832" element="Pixel" state="0"><bounds x="6656" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_833" element="Pixel" state="0"><bounds x="6767" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_834" element="Pixel" state="0"><bounds x="6878" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_835" element="Pixel" state="0"><bounds x="6989" y="228" width="100" height="100"/></bezel>
-<bezel name="Dot_841" element="Pixel" state="0"><bounds x="6545" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_842" element="Pixel" state="0"><bounds x="6656" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_843" element="Pixel" state="0"><bounds x="6767" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_844" element="Pixel" state="0"><bounds x="6878" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_845" element="Pixel" state="0"><bounds x="6989" y="342" width="100" height="100"/></bezel>
-<bezel name="Dot_851" element="Pixel" state="0"><bounds x="6545" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_852" element="Pixel" state="0"><bounds x="6656" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_853" element="Pixel" state="0"><bounds x="6767" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_854" element="Pixel" state="0"><bounds x="6878" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_855" element="Pixel" state="0"><bounds x="6989" y="456" width="100" height="100"/></bezel>
-<bezel name="Dot_861" element="Pixel" state="0"><bounds x="6545" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_862" element="Pixel" state="0"><bounds x="6656" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_863" element="Pixel" state="0"><bounds x="6767" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_864" element="Pixel" state="0"><bounds x="6878" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_865" element="Pixel" state="0"><bounds x="6989" y="570" width="100" height="100"/></bezel>
-<bezel name="Dot_871" element="Pixel" state="0"><bounds x="6545" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_872" element="Pixel" state="0"><bounds x="6656" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_873" element="Pixel" state="0"><bounds x="6767" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_874" element="Pixel" state="0"><bounds x="6878" y="684" width="100" height="100"/></bezel>
-<bezel name="Dot_875" element="Pixel" state="0"><bounds x="6989" y="684" width="100" height="100"/></bezel>
-
+ <!-- generated with mechanical data from the data sheet -->
+ <repeat count="8"> <!-- 8 digits -->
+ <param name="digitno" start="1" increment="1" />
+ <param name="digitx" start="0" increment="935" /> <!-- distance between digits ((111 * 5) + 380) -->
+ <repeat count="7"> <!-- 7 rows in each digit -->
+ <param name="rowno" start="1" increment="1" />
+ <param name="rowy" start="0" increment="114" /> <!-- vertical distance between LEDs -->
+ <repeat count="5"> <!-- 5 columns in each digit -->
+ <param name="colno" start="1" increment="1" />
+ <param name="colx" start="~digitx~" increment="111" /> <!-- horizontal distance between LEDs -->
+ <bezel name="Dot_~digitno~~rowno~~colno~" element="Pixel" state="0">
+ <bounds x="~colx~" y="~rowy~" width="100" height="100"/> <!-- size of each LED -->
+ </bezel>
+ </repeat>
+ </repeat>
+ </repeat>
</view>
+
</mamelayout>
diff --git a/src/mame/layout/sitcom.lay b/src/mame/layout/sitcom.lay
index b7e11f6460a..e74282f46a8 100644
--- a/src/mame/layout/sitcom.lay
+++ b/src/mame/layout/sitcom.lay
@@ -43,84 +43,30 @@
<bounds left="46" top="90" right="56" bottom="100" />
</bezel>
- <!-- DL1414 left -->
- <bezel name="digit3" element="a_digit">
- <bounds left="65" top="70" right="90" bottom="120" />
- </bezel>
- <bezel name="digit2" element="a_digit">
- <bounds left="99" top="70" right="124" bottom="120" />
- </bezel>
- <bezel name="digit1" element="a_digit">
- <bounds left="133" top="70" right="158" bottom="120" />
- </bezel>
- <bezel name="digit0" element="a_digit">
- <bounds left="167" top="70" right="192" bottom="120" />
- </bezel>
-
- <!-- DL1414 right -->
- <bezel name="digit7" element="a_digit">
- <bounds left="204" top="70" right="229" bottom="120" />
- </bezel>
- <bezel name="digit6" element="a_digit">
- <bounds left="238" top="70" right="263" bottom="120" />
- </bezel>
- <bezel name="digit5" element="a_digit">
- <bounds left="272" top="70" right="297" bottom="120" />
- </bezel>
- <bezel name="digit4" element="a_digit">
- <bounds left="306" top="70" right="331" bottom="120" />
- </bezel>
-
- <bezel name="pb7" element="b_led">
- <bounds left="65" top="140" right="75" bottom="150" />
- </bezel>
- <bezel name="pb6" element="b_led">
- <bounds left="80" top="140" right="90" bottom="150" />
- </bezel>
- <bezel name="pb5" element="b_led">
- <bounds left="95" top="140" right="105" bottom="150" />
- </bezel>
- <bezel name="pb4" element="b_led">
- <bounds left="110" top="140" right="120" bottom="150" />
- </bezel>
- <bezel name="pb3" element="b_led">
- <bounds left="125" top="140" right="135" bottom="150" />
- </bezel>
- <bezel name="pb2" element="b_led">
- <bounds left="140" top="140" right="150" bottom="150" />
- </bezel>
- <bezel name="pb1" element="b_led">
- <bounds left="155" top="140" right="165" bottom="150" />
- </bezel>
- <bezel name="pb0" element="b_led">
- <bounds left="170" top="140" right="180" bottom="150" />
- </bezel>
-
- <bezel name="pa7" element="b_led">
- <bounds left="185" top="140" right="195" bottom="150" />
- </bezel>
- <bezel name="pa6" element="b_led">
- <bounds left="200" top="140" right="210" bottom="150" />
- </bezel>
- <bezel name="pa5" element="b_led">
- <bounds left="215" top="140" right="225" bottom="150" />
- </bezel>
- <bezel name="pa4" element="b_led">
- <bounds left="230" top="140" right="240" bottom="150" />
- </bezel>
- <bezel name="pa3" element="b_led">
- <bounds left="245" top="140" right="255" bottom="150" />
- </bezel>
- <bezel name="pa2" element="b_led">
- <bounds left="260" top="140" right="270" bottom="150" />
- </bezel>
- <bezel name="pa1" element="b_led">
- <bounds left="275" top="140" right="285" bottom="150" />
- </bezel>
- <bezel name="pa0" element="b_led">
- <bounds left="290" top="140" right="300" bottom="150" />
- </bezel>
+ <!-- DL1414 left/right -->
+ <repeat count="2">
+ <param name="digitno" start="3" increment="4" />
+ <param name="digitx" start="65" increment="139" />
+ <repeat count="4">
+ <param name="digitno" start="~digitno~" increment="-1" />
+ <param name="digitx" start="~digitx~" increment="34" />
+ <bezel name="digit~digitno~" element="a_digit">
+ <bounds x="~digitx~" y="70" width="25" height="50" />
+ </bezel>
+ </repeat>
+ </repeat>
+ <repeat count="8">
+ <param name="ledno" start="7" increment="-1" />
+ <param name="bx" start="65" increment="15" />
+ <param name="ax" start="185" increment="15" />
+ <bezel name="pb~ledno~" element="b_led">
+ <bounds x="~bx~" y="140" width="10" height="10" />
+ </bezel>
+ <bezel name="pa~ledno~" element="b_led">
+ <bounds x="~ax~" y="140" width="10" height="10" />
+ </bezel>
+ </repeat>
</view>
</mamelayout>
diff --git a/src/mame/layout/whousetc.lay b/src/mame/layout/whousetc.lay
index 7301166906b..8c621db3b54 100644
--- a/src/mame/layout/whousetc.lay
+++ b/src/mame/layout/whousetc.lay
@@ -641,161 +641,31 @@ Westinghouse Test Console Serial #5 layout
<bounds left="0" top="0" right="960" bottom="520" />
</bezel>
- <bezel name="digit15" element="char">
- <bounds left="10" top="10" right="50" bottom="70" />
- </bezel>
- <bezel name="digit14" element="char">
- <bounds left="70" top="10" right="110" bottom="70" />
- </bezel>
- <bezel name="digit13" element="char">
- <bounds left="130" top="10" right="170" bottom="70" />
- </bezel>
- <bezel name="digit12" element="char">
- <bounds left="190" top="10" right="230" bottom="70" />
- </bezel>
-
- <bezel name="digit11" element="char">
- <bounds left="250" top="10" right="290" bottom="70" />
- </bezel>
- <bezel name="digit10" element="char">
- <bounds left="310" top="10" right="350" bottom="70" />
- </bezel>
- <bezel name="digit9" element="char">
- <bounds left="370" top="10" right="410" bottom="70" />
- </bezel>
- <bezel name="digit8" element="char">
- <bounds left="430" top="10" right="470" bottom="70" />
- </bezel>
-
- <bezel name="digit7" element="char">
- <bounds left="490" top="10" right="530" bottom="70" />
- </bezel>
- <bezel name="digit6" element="char">
- <bounds left="550" top="10" right="590" bottom="70" />
- </bezel>
- <bezel name="digit5" element="char">
- <bounds left="610" top="10" right="650" bottom="70" />
- </bezel>
- <bezel name="digit4" element="char">
- <bounds left="670" top="10" right="710" bottom="70" />
- </bezel>
-
- <bezel name="digit3" element="char">
- <bounds left="730" top="10" right="770" bottom="70" />
- </bezel>
- <bezel name="digit2" element="char">
- <bounds left="790" top="10" right="830" bottom="70" />
- </bezel>
- <bezel name="digit1" element="char">
- <bounds left="850" top="10" right="890" bottom="70" />
- </bezel>
- <bezel name="digit0" element="char">
- <bounds left="910" top="10" right="950" bottom="70" />
- </bezel>
-
- <bezel name="btn00" element="btn00" inputtag="row0" inputmask="0x01">
- <bounds left="10" top="100" right="90" bottom="180" />
- </bezel>
- <bezel name="btn01" element="btn01" inputtag="row0" inputmask="0x02">
- <bounds left="120" top="100" right="200" bottom="180" />
- </bezel>
- <bezel name="btn02" element="btn02" inputtag="row0" inputmask="0x04">
- <bounds left="230" top="100" right="310" bottom="180" />
- </bezel>
- <bezel name="btn03" element="btn03" inputtag="row0" inputmask="0x08">
- <bounds left="340" top="100" right="420" bottom="180" />
- </bezel>
-
- <bezel name="btn10" element="btn10" inputtag="row1" inputmask="0x01">
- <bounds left="10" top="210" right="90" bottom="290" />
- </bezel>
- <bezel name="btn11" element="btn11" inputtag="row1" inputmask="0x02">
- <bounds left="120" top="210" right="200" bottom="290" />
- </bezel>
- <bezel name="btn12" element="btn12" inputtag="row1" inputmask="0x04">
- <bounds left="230" top="210" right="310" bottom="290" />
- </bezel>
- <bezel name="btn13" element="btn13" inputtag="row1" inputmask="0x08">
- <bounds left="340" top="210" right="420" bottom="290" />
- </bezel>
-
- <bezel name="btn20" element="btn20" inputtag="row2" inputmask="0x01">
- <bounds left="10" top="320" right="90" bottom="400" />
- </bezel>
- <bezel name="btn21" element="btn21" inputtag="row2" inputmask="0x02">
- <bounds left="120" top="320" right="200" bottom="400" />
- </bezel>
- <bezel name="btn22" element="btn22" inputtag="row2" inputmask="0x04">
- <bounds left="230" top="320" right="310" bottom="400" />
- </bezel>
- <bezel name="btn23" element="btn23" inputtag="row2" inputmask="0x08">
- <bounds left="340" top="320" right="420" bottom="400" />
- </bezel>
-
- <bezel name="btn30" element="btn30" inputtag="row3" inputmask="0x01">
- <bounds left="10" top="430" right="90" bottom="510" />
- </bezel>
- <bezel name="btn31" element="btn31" inputtag="row3" inputmask="0x02">
- <bounds left="120" top="430" right="200" bottom="510" />
- </bezel>
- <bezel name="btn32" element="btn32" inputtag="row3" inputmask="0x04">
- <bounds left="230" top="430" right="310" bottom="510" />
- </bezel>
- <bezel name="btn33" element="btn33" inputtag="row3" inputmask="0x08">
- <bounds left="340" top="430" right="420" bottom="510" />
- </bezel>
-
- <bezel name="btn04" element="btn04" inputtag="row0" inputmask="0x10">
- <bounds left="540" top="100" right="620" bottom="180" />
- </bezel>
- <bezel name="btn05" element="btn05" inputtag="row0" inputmask="0x20">
- <bounds left="650" top="100" right="730" bottom="180" />
- </bezel>
- <bezel name="btn06" element="btn06" inputtag="row0" inputmask="0x40">
- <bounds left="760" top="100" right="840" bottom="180" />
- </bezel>
- <bezel name="btn07" element="btn07" inputtag="row0" inputmask="0x80">
- <bounds left="870" top="100" right="950" bottom="180" />
- </bezel>
-
- <bezel name="btn14" element="btn14" inputtag="row1" inputmask="0x10">
- <bounds left="540" top="210" right="620" bottom="290" />
- </bezel>
- <bezel name="btn15" element="btn15" inputtag="row1" inputmask="0x20">
- <bounds left="650" top="210" right="730" bottom="290" />
- </bezel>
- <bezel name="btn16" element="btn16" inputtag="row1" inputmask="0x40">
- <bounds left="760" top="210" right="840" bottom="290" />
- </bezel>
- <bezel name="btn17" element="btn17" inputtag="row1" inputmask="0x80">
- <bounds left="870" top="210" right="950" bottom="290" />
- </bezel>
-
- <bezel name="btn24" element="btn24" inputtag="row2" inputmask="0x10">
- <bounds left="540" top="320" right="620" bottom="400" />
- </bezel>
- <bezel name="btn25" element="btn25" inputtag="row2" inputmask="0x20">
- <bounds left="650" top="320" right="730" bottom="400" />
- </bezel>
- <bezel name="btn26" element="btn26" inputtag="row2" inputmask="0x40">
- <bounds left="760" top="320" right="840" bottom="400" />
- </bezel>
- <bezel name="btn27" element="btn27" inputtag="row2" inputmask="0x80">
- <bounds left="870" top="320" right="950" bottom="400" />
- </bezel>
-
- <bezel name="btn34" element="btn34" inputtag="row3" inputmask="0x10">
- <bounds left="540" top="430" right="620" bottom="510" />
- </bezel>
- <bezel name="btn35" element="btn35" inputtag="row3" inputmask="0x20">
- <bounds left="650" top="430" right="730" bottom="510" />
- </bezel>
- <bezel name="btn36" element="btn36" inputtag="row3" inputmask="0x40">
- <bounds left="760" top="430" right="840" bottom="510" />
- </bezel>
- <bezel name="btn37" element="btn37" inputtag="row3" inputmask="0x80">
- <bounds left="870" top="430" right="950" bottom="510" />
- </bezel>
+ <repeat count="16">
+ <param name="digitno" start="15" increment="-1" />
+ <param name="x" start="10" increment="60" />
+ <bezel name="digit~digitno~" element="char">
+ <bounds x="~x~" y="10" width="40" height="60" />
+ </bezel>
+ </repeat>
+
+ <repeat count="2">
+ <param name="col" start="0" increment="4" />
+ <param name="x" start="10" increment="530" />
+ <param name="mask" start="0x01" lshift="4" />
+ <repeat count="4">
+ <param name="row" start="0" increment="1" />
+ <param name="y" start="100" increment="110" />
+ <repeat count="4">
+ <param name="col" start="~col~" increment="1" />
+ <param name="x" start="~x~" increment="110" />
+ <param name="mask" start="~mask~" lshift="1" />
+ <bezel name="btn~row~~col~" element="btn~row~~col~" inputtag="row~row~" inputmask="~mask~">
+ <bounds x="~x~" y="~y~" width="80" height="80" />
+ </bezel>
+ </repeat>
+ </repeat>
+ </repeat>
</view>
</mamelayout>