srcclean (nw)

This commit is contained in:
Vas Crabb 2017-08-27 11:07:21 +10:00
parent d969bebe1a
commit ec3caa98bd
95 changed files with 1790 additions and 1789 deletions

View File

@ -5489,8 +5489,9 @@
<rom name="nibbler.do" size="143360" crc="79fb7ff7" sha1="598cdd5e93695d6ae8a26b83c6853e6067e53074" offset="0x0000" />
</dataarea>
</part>
</software> <software name="nightmar">
</software>
<software name="nightmar">
<!-- Left & Right arrows or Paddle0 for controls - Select with "K" for keyboard / "P" for paddle -->
<!-- press SLASH "/" to fire with keyboard or use Button0 when using the paddle -->
<!-- "C" for continuous fire, SPACE BAR for shields, CRTL-S toggles sound on/off, ESC for pause -->

View File

@ -247,7 +247,7 @@ Known undumped prototypes:
</dataarea>
</part>
</software>
<software name="cmines2bt" cloneof="cmines2">
<description>Crystal Mines II - Buried Treasure (Euro, USA)</description>
<year>2003</year>

View File

@ -6701,7 +6701,7 @@
</dataarea>
</part>
</software>
<software name="shocktroa" cloneof="shocktro">
<description>Shock Troopers (set 2)</description>
<year>1997</year>

View File

@ -346,14 +346,14 @@
</dataarea>
</part>
</software>
<!-- Notes: fan made release, which runs in original system and was also released and distributed as physical copy. More info: https://youtu.be/6ntwR94J6iM https://goo.gl/9efrGv-->
<software name="alexkidd2">
<description>Alex Kidd in Miracle World 2 (World, hack)</description>
<year>2017</year>
<publisher>Ian Wall</publisher>
<part name="cart" interface="sms_cart">
<dataarea name="rom" size="524288">
<dataarea name="rom" size="524288">
<rom name="alex kidd in miracle world 2.sms" size="524288" crc="7de172ff" sha1="d85aba7a276d751302f6a076ab2beb32cd654497" offset="000000"/>
</dataarea>
</part>

View File

@ -10752,31 +10752,31 @@ more investigation needed...
<!-- Pending
<software name="dkongc2s" cloneof="dkongc2">
<description>Donkey Kong Country 2 - Diddy's Kong Quest (Esp, Rev. A)</description>
<year>1995</year>
<publisher>Nintendo</publisher>
<info name="serial" value="SNSP-ADND-EUR" />
<sharedfeat name="compatibility" value="PAL"/>
<part name="cart" interface="snes_cart">
<feature name="pcb" value="SHVC-1J1M-20" />
<feature name="u1" value="U1 MASK ROM(N)" />
<feature name="u2" value="U2 16K SRAM" />
<feature name="u3" value="U3 MAD-1" />
<feature name="u4" value="U4 CIC" />
<feature name="lockout" value="D413B 9546 C" />
<feature name="battery" value="BATT CR2032" />
<feature name="cart_revision" value="A" />
<feature name="cart_model" value="SNSP-006" />
<feature name="cart_back_label" value="SNSP-ESP" />
<feature name="slot" value="hirom" />
<dataarea name="rom" size="4194304">
<rom name="spal-adnd-0.u1" size="4194304" crc="" sha1="" offset="0x000000" />
</dataarea>
<dataarea name="nvram" size="2048">
</dataarea>
</part>
</software>
<software name="dkongc2s" cloneof="dkongc2">
<description>Donkey Kong Country 2 - Diddy's Kong Quest (Esp, Rev. A)</description>
<year>1995</year>
<publisher>Nintendo</publisher>
<info name="serial" value="SNSP-ADND-EUR" />
<sharedfeat name="compatibility" value="PAL"/>
<part name="cart" interface="snes_cart">
<feature name="pcb" value="SHVC-1J1M-20" />
<feature name="u1" value="U1 MASK ROM(N)" />
<feature name="u2" value="U2 16K SRAM" />
<feature name="u3" value="U3 MAD-1" />
<feature name="u4" value="U4 CIC" />
<feature name="lockout" value="D413B 9546 C" />
<feature name="battery" value="BATT CR2032" />
<feature name="cart_revision" value="A" />
<feature name="cart_model" value="SNSP-006" />
<feature name="cart_back_label" value="SNSP-ESP" />
<feature name="slot" value="hirom" />
<dataarea name="rom" size="4194304">
<rom name="spal-adnd-0.u1" size="4194304" crc="" sha1="" offset="0x000000" />
</dataarea>
<dataarea name="nvram" size="2048">
</dataarea>
</part>
</software>
-->
@ -52345,30 +52345,30 @@ to ensure nothing has been touched in the Retro Quest cart production in 2013/20
<!-- Pending
<software name="ranmab" cloneof="ranma">
<description>Ranma ½ (Euro, Rev. B)</description>
<year>1992</year>
<publisher>Ocean</publisher>
<info name="serial" value="SNSP-R2-UKV" />
<sharedfeat name="compatibility" value="PAL"/>
<part name="cart" interface="snes_cart">
<feature name="pcb" value="SHVC-2J0N-01" />
<feature name="u1" value="U1 P0" />
<feature name="u2" value="U2 P1" />
<feature name="u3" value="U3 74LS00" />
<feature name="u4" value="U4 CIC" />
<feature name="lockout" value="D413A 9344 CB" />
<feature name="cart_model" value="SNSP-006" />
<feature name="cart_back_label" value="SNSP-UKV" />
<feature name="slot" value="hirom" />
<dataarea name="rom" size="4194304">
<rom name="spal-r2-0 p0.u1" size="" crc="" sha1="" offset="0x000000" />
<rom name="spal-r2-0 p1.u1" size="" crc="" sha1="" offset="0x200000" />
</dataarea>
<dataarea name="nvram" size="2048">
</dataarea>
</part>
</software>
<software name="ranmab" cloneof="ranma">
<description>Ranma ½ (Euro, Rev. B)</description>
<year>1992</year>
<publisher>Ocean</publisher>
<info name="serial" value="SNSP-R2-UKV" />
<sharedfeat name="compatibility" value="PAL"/>
<part name="cart" interface="snes_cart">
<feature name="pcb" value="SHVC-2J0N-01" />
<feature name="u1" value="U1 P0" />
<feature name="u2" value="U2 P1" />
<feature name="u3" value="U3 74LS00" />
<feature name="u4" value="U4 CIC" />
<feature name="lockout" value="D413A 9344 CB" />
<feature name="cart_model" value="SNSP-006" />
<feature name="cart_back_label" value="SNSP-UKV" />
<feature name="slot" value="hirom" />
<dataarea name="rom" size="4194304">
<rom name="spal-r2-0 p0.u1" size="" crc="" sha1="" offset="0x000000" />
<rom name="spal-r2-0 p1.u1" size="" crc="" sha1="" offset="0x200000" />
</dataarea>
<dataarea name="nvram" size="2048">
</dataarea>
</part>
</software>
-->

View File

@ -15,8 +15,8 @@
-- ... ]
-- },
-- "cpu": {
-- "varname": "tag"
-- ...
-- "varname": "tag"
-- ...
-- }
-- "space": {
-- "varname": {
@ -57,7 +57,7 @@
-- - output is a function and argindex isn't supported, output args need to be explicit and a screen device
-- must be provided
-- - cpu is only used for break and watch points, if it is defined and the debugger is not enabled (-debugger none is enough)
-- it will disable the cheat only if a point is set, check var for nil first
-- it will disable the cheat only if a point is set, check var for nil first
-- - watch points require the address space that you want to set the watch on, wptype is "r"-read, "w"-write or "rw"-both
local exports = {}
@ -363,7 +363,7 @@ function cheat.startplugin()
end
cheat.cheat_env[name] = {
bpset = function(addr, func) bpset(cheat, dev, addr, func) end,
wpset = function(space, wptype, addr, len, func) wpset(cheat, dev, space, wptype, addr, len, func) end,
wpset = function(space, wptype, addr, len, func) wpset(cheat, dev, space, wptype, addr, len, func) end,
regs = dev.state }
cheat.bp = {}
cheat.wp = {}

View File

@ -1,7 +1,7 @@
-- get marp high score file from http://replay.marpirc.net/txt/scores3.htm
local dat = {}
local db, sql = require("data/database")()
local ver, info
local ver, info
local function init()
local filepath
@ -27,7 +27,7 @@ local function init()
if not fh and dbver then
-- data in database but missing file, just use what we have
ver = dbver
return
return
elseif not fh then
return
elseif not dbver then

View File

@ -156,7 +156,7 @@ function gdbstub.startplugin()
if cmd == "g" then
local regs = {}
for reg, idx in pairs(map.togdb) do
regs[idx] = makebestr(cpu.state[reg].value, map.regsize)
regs[idx] = makebestr(cpu.state[reg].value, map.regsize)
end
local data = table.concat(regs)
socket:write("+$" .. data .. "#" .. chksum(data))

View File

@ -4,26 +4,26 @@
System Sacom AMD-98 (AmuseMent boarD)
3 PSG chips, one of the first sound boards released for PC98
Superseded by later NEC in-house sound boards
TODO:
- not sure if it's AY8910 or YM2203, from a PCB pic it looks with stock AY logos?
- Third AY (uses port B from BOTH AYs);
- PIT control;
- PCM section;
3 PSG chips, one of the first sound boards released for PC98
Superseded by later NEC in-house sound boards
TODO:
- not sure if it's AY8910 or YM2203, from a PCB pic it looks with stock AY logos?
- Third AY (uses port B from BOTH AYs);
- PIT control;
- PCM section;
=============================================================================
- Known games with AMD-98 support
Brown's Run (System Sacom)
Dome (System Sacom)
Highway Star (System Sacom)
Marchen Veil I (System Sacom)
Marchen Veil II (System Sacom)
Zone (System Sacom)
Relics (Bothtec)
Thexder (Game Arts)
Brown's Run (System Sacom)
Dome (System Sacom)
Highway Star (System Sacom)
Marchen Veil I (System Sacom)
Marchen Veil II (System Sacom)
Zone (System Sacom)
Relics (Bothtec)
Thexder (Game Arts)
***************************************************************************/
@ -173,7 +173,7 @@ READ8_MEMBER(pc9801_amd98_device::read)
case 3:
return m_ay2->data_r(space,0);
}
printf("%02x\n",offset);
return 0xff;
@ -210,13 +210,13 @@ WRITE8_MEMBER(pc9801_amd98_device::ay3_data_latch_w)
// TODO: this actually uses a flip flop mechanism, not quite sure about how it works yet
switch(data)
{
case 0x47:
case 0x47:
//printf("%02x addr\n",m_ay3_latch);
m_ay3->address_w(space,0,m_ay3_latch);
m_ay3->address_w(space,0,m_ay3_latch);
break;
case 0x43:
case 0x43:
//printf("%02x data\n",m_ay3_latch);
m_ay3->data_w(space,0,m_ay3_latch);
m_ay3->data_w(space,0,m_ay3_latch);
break;
}
}

View File

@ -31,7 +31,7 @@ public:
DECLARE_READ8_MEMBER(read);
DECLARE_WRITE8_MEMBER(write);
protected:
// device-level overrides
virtual void device_validity_check(validity_checker &valid) const override;

View File

@ -3,7 +3,7 @@
/**********************************************************************
CCBUS Slot interface for PC-98xx family
**********************************************************************/
#include "emu.h"

View File

@ -12,16 +12,16 @@
Hidden Code exists in the ORCH-90 to produce a higher quality output.
Once you start the PAK, hit "SHIFT+ENTER" at the title screen. Once you
are at command, type the following (playing the William Tell default):
"S" + "ENTER"
"P" + "SHIFT+ENTER"
Once you start the PAK, hit "SHIFT+ENTER" at the title screen. Once you
are at command, type the following (playing the William Tell default):
"S" + "ENTER"
"P" + "SHIFT+ENTER"
The output will be cleaner due to code causing a change in CPU speed by
addressing CPU registers to run the 6809 at 2x speed.
The output will be cleaner due to code causing a change in CPU speed by
addressing CPU registers to run the 6809 at 2x speed.
"P" + "ENTER" will play at regular CPU speed. The difference should be
very noticable.
"P" + "ENTER" will play at regular CPU speed. The difference should be
very noticable.
***************************************************************************/

View File

@ -22,7 +22,7 @@
// ======================> psi_hle_keyboard_device
class psi_hle_keyboard_device : public device_t,
public device_psi_keyboard_interface,
public device_psi_keyboard_interface,
protected device_matrix_keyboard_interface<7>
{
public:

View File

@ -4,24 +4,24 @@
Kontron PSI keyboard interface
This interface supports both a parallel and a serial keyboard
This interface supports both a parallel and a serial keyboard
9 KEY.D0
8 KEY.D1
7 KEY.D2
6 KEY.D3
5 KEY.D4
4 KEY.D5
3 KEY.D6
2 KEY.D7
11 KEY.STRB
15 + KEY.TRANSM
16 - KEY.TRANSM
17 + KEY.REC
18 + KEY.REC
13 + 5V
14 GND
1 Shield
9 KEY.D0
8 KEY.D1
7 KEY.D2
6 KEY.D3
5 KEY.D4
4 KEY.D5
3 KEY.D6
2 KEY.D7
11 KEY.STRB
15 + KEY.TRANSM
16 - KEY.TRANSM
17 + KEY.REC
18 + KEY.REC
13 + 5V
14 GND
1 Shield
***************************************************************************/

View File

@ -58,7 +58,7 @@ public:
template <class Object> static devcb_base &set_pa_out_callback (device_t &device, Object &&cb){ return downcast<m68340_cpu_device &>(device).m_pa_out_cb.set_callback (std::forward<Object>(cb)); }
template <class Object> static devcb_base &set_pb_in_callback (device_t &device, Object &&cb){ return downcast<m68340_cpu_device &>(device).m_pb_in_cb.set_callback (std::forward<Object>(cb)); }
template <class Object> static devcb_base &set_pb_out_callback (device_t &device, Object &&cb){ return downcast<m68340_cpu_device &>(device).m_pb_out_cb.set_callback (std::forward<Object>(cb)); }
template <class Object> static devcb_base &set_tout1_out_callback (device_t &device, Object &&cb){ return downcast<m68340_cpu_device &>(device).m_tout1_out_cb.set_callback (std::forward<Object>(cb)); }
template <class Object> static devcb_base &set_tin1_in_callback (device_t &device, Object &&cb) { return downcast<m68340_cpu_device &>(device).m_tin1_in_cb.set_callback (std::forward<Object>(cb)); }
template <class Object> static devcb_base &set_tgate1_in_callback (device_t &device, Object &&cb){ return downcast<m68340_cpu_device &>(device).m_tgate1_in_cb.set_callback (std::forward<Object>(cb)); }

View File

@ -22,14 +22,14 @@ public:
uint8_t m_pparb; // 0xff
// SIM
uint16_t m_mcr; // 0x608f
uint16_t m_syncr; // 0x3f00
uint16_t m_avr_rsr; // 0x0000
uint16_t m_mcr; // 0x608f
uint16_t m_syncr; // 0x3f00
uint16_t m_avr_rsr; // 0x0000
uint16_t m_swiv_sypcr;//0x0f00
uint16_t m_picr; // 0x000f
uint16_t m_pitr; // 0x0000 | ~MODCK pin
uint16_t m_swsr; // 0x0000
uint16_t m_picr; // 0x000f
uint16_t m_pitr; // 0x0000 | ~MODCK pin
uint16_t m_swsr; // 0x0000
// Timers and counters
uint8_t m_pit_counter;
@ -60,7 +60,7 @@ public:
REG_AM_CS3 = 0x58,
REG_BA_CS3 = 0x5c,
};
enum {
REG_MCR_FRZ1 = 0x4000,
REG_MCR_FRZ0 = 0x2000,
@ -69,49 +69,49 @@ public:
REG_MCR_SVREG = 0x0800,
REG_MCR_ARBLV = 0x000f,
};
enum {
REG_AVR_VEC = 0xff00,
REG_RSR_RESBITS = 0x00ff,
REG_AVR_VEC = 0xff00,
REG_RSR_RESBITS = 0x00ff,
};
enum {
REG_SWIV_VEC = 0xff00,
REG_SYPCR_SWE = 0x0080,
REG_SWIV_VEC = 0xff00,
REG_SYPCR_SWE = 0x0080,
REG_SYPCR_SWRI = 0x0040,
REG_SYPCR_SWT = 0x0030,
REG_SYPCR_DBFE = 0x0008,
REG_SYPCR_BME = 0x0004,
REG_SYPCR_BMT = 0x0003,
};
enum {
REG_PICR_PIRQL = 0x0700,
REG_PICR_PIVEC = 0x00ff,
REG_PICR_PIRQL = 0x0700,
REG_PICR_PIVEC = 0x00ff,
};
enum {
REG_PITR_SWP = 0x0200,
REG_PITR_PTP = 0x0100,
REG_PITR_COUNT = 0x00ff,
REG_PITR_SWP = 0x0200,
REG_PITR_PTP = 0x0100,
REG_PITR_COUNT = 0x00ff,
};
enum {
REG_SYNCR_W = 0x8000,
REG_SYNCR_X = 0x4000,
REG_SYNCR_Y_MSK = 0x3f00,
REG_SYNCR_SLIMP = 0x0010,
REG_SYNCR_SLOCK = 0x0008,
REG_SYNCR_RSTEN = 0x0004,
REG_SYNCR_STSIM = 0x0002,
REG_SYNCR_STEXT = 0x0001,
REG_SYNCR_W = 0x8000,
REG_SYNCR_X = 0x4000,
REG_SYNCR_Y_MSK = 0x3f00,
REG_SYNCR_SLIMP = 0x0010,
REG_SYNCR_SLOCK = 0x0008,
REG_SYNCR_RSTEN = 0x0004,
REG_SYNCR_STSIM = 0x0002,
REG_SYNCR_STEXT = 0x0001,
};
enum {
CLOCK_PLL = 0x01,
CLOCK_MODCK = 0x02,
};
enum {
CLOCK_MODE_EXT = 0x00,
CLOCK_MODE_EXT_PLL = 0x01,

View File

@ -15,7 +15,7 @@
// MACROS / CONSTANTS
//**************************************************************************
//#define LOG_GENERAL (1U << 0) // Already defined in logmacro.h
//#define LOG_GENERAL (1U << 0) // Already defined in logmacro.h
#define LOG_SETUP (1U << 1)
#define LOG_READ (1U << 2)
#define LOG_TIMER (1U << 3)
@ -157,13 +157,13 @@ WRITE16_MEMBER( m68340_cpu_device::m68340_internal_timer_w )
LOGTIMER("- Prescaler: Divide by %d\n", (0x101 << ((data & m68340_timer::REG_CR_POT_MASK) >> 5) & 0x1fe));
LOGTIMER("- MODE: %s\n", std::array<char const *, 8>
{{ "Input Capture/Output Compare",
"Square-Wave Generator - not implemented",
"Variable Duty-Cycle Square-Wave Generator - not implemented",
"Variable-Width Single-Shot Pulse Generator - not implemented",
"Pulse Width Measurement - not implemented",
"Period Measurement - not implemented",
"Event Count - not implemented",
"Timer Bypass (Simple Test Method) - not implemented"
"Square-Wave Generator - not implemented",
"Variable Duty-Cycle Square-Wave Generator - not implemented",
"Variable-Width Single-Shot Pulse Generator - not implemented",
"Pulse Width Measurement - not implemented",
"Period Measurement - not implemented",
"Event Count - not implemented",
"Timer Bypass (Simple Test Method) - not implemented"
}}[data & m68340_timer::REG_CR_MODE_MASK]);
LOGTIMER("- OC: %s mode\n", std::array<char const *, 4>{{"Disabled", "Toggle", "Zero", "One"}}[data & m68340_timer::REG_CR_OC_MASK]);
@ -197,7 +197,7 @@ WRITE16_MEMBER( m68340_cpu_device::m68340_internal_timer_w )
}
else
{ // TODO: Detect Disable mode setting line to three state
if ((timer.m_cr[id] & m68340_timer::REG_CR_OC_MASK) == m68340_timer::REG_CR_OC_ONE)
if ((timer.m_cr[id] & m68340_timer::REG_CR_OC_MASK) == m68340_timer::REG_CR_OC_ONE)
{
id == 0 ? m_tout1_out_cb(ASSERT_LINE) : m_tout2_out_cb(ASSERT_LINE);
}
@ -429,7 +429,7 @@ void m68340_cpu_device::do_timer_tick( int id )
timer.m_timer_counter[id]--; // Count flanks, least significant bit is state of the clock line
if ( (timer.m_mcr[id] & m68340_timer::REG_MCR_STP) == 0)
{
if (timer.m_timer_counter[id] & 1) // Raising flank, copy shadow to register
if (timer.m_timer_counter[id] & 1) // Raising flank, copy shadow to register
{
// Shadow the counter only if we are NOT in the ICOC mode WHILE the TG bit is set
if (!((timer.m_cr[id] & m68340_timer::REG_CR_MODE_MASK) == m68340_timer::REG_CR_MODE_ICOC &&

View File

@ -62,7 +62,7 @@ public:
REG_CR_CLK = 0x0100,
REG_CR_POT_MASK = 0x00e0,
REG_CR_MODE_MASK = 0x001c, // Mode mask
REG_CR_MODE_ICOC = 0x0000, // Input Capture Output Compare
REG_CR_MODE_ICOC = 0x0000, // Input Capture Output Compare
REG_CR_MODE_SQWG = 0x0004, // Square Wave Generator
REG_CR_MODE_VDCSW = 0x0008, // Variable Duty Cycle Square Wave generator
REG_CR_MODE_VWSSPG = 0x000c, // Variable Width Single Shot Pulse Generator
@ -78,15 +78,15 @@ public:
};
enum {
REG_SR_IRQ = 0x8000,
REG_SR_TO = 0x4000,
REG_SR_TG = 0x2000,
REG_SR_TC = 0x1000,
REG_SR_TGL = 0x0800,
REG_SR_ON = 0x0400,
REG_SR_OUT = 0x0200,
REG_SR_COM = 0x0100,
REG_SR_PSC_OUT = 0x00ff,
REG_SR_IRQ = 0x8000,
REG_SR_TO = 0x4000,
REG_SR_TG = 0x2000,
REG_SR_TC = 0x1000,
REG_SR_TGL = 0x0800,
REG_SR_ON = 0x0400,
REG_SR_OUT = 0x0200,
REG_SR_COM = 0x0100,
REG_SR_PSC_OUT = 0x00ff,
};
};

View File

@ -358,12 +358,12 @@ void gameboy_sound_device::update_square_channel(struct SOUND &snd, uint64_t cyc
snd.cycles_left = 4 - (cycles & 3);
}
cycles >>= 2;
uint16_t distance = 0x800 - snd.frequency_counter;
uint16_t distance = 0x800 - snd.frequency_counter;
if (cycles >= distance)
{
cycles -= distance;
distance = 0x800 - snd.frequency;
uint64_t counter = 1 + cycles / distance;
uint64_t counter = 1 + cycles / distance;
snd.duty_count = (snd.duty_count + counter) & 0x07;
snd.signal = wave_duty_table[snd.duty][snd.duty_count];
@ -470,13 +470,13 @@ void cgb04_apu_device::update_wave_channel(struct SOUND &snd, uint64_t cycles)
snd.cycles_left = 1;
}
cycles >>= 1;
uint16_t distance = 0x800 - snd.frequency_counter;
uint16_t distance = 0x800 - snd.frequency_counter;
if (cycles >= distance)
{
cycles -= distance;
distance = 0x800 - snd.frequency;
// How many times the condition snd.frequency_counter == 0 is true
uint64_t counter = 1 + cycles / distance;
uint64_t counter = 1 + cycles / distance;
snd.offset = (snd.offset + counter) & 0x1F;
snd.current_sample = m_snd_regs[AUD3W0 + snd.offset / 2];
@ -505,9 +505,9 @@ void gameboy_sound_device::update_noise_channel(struct SOUND &snd, uint64_t cycl
if (cycles >= snd.cycles_left)
{
cycles -= snd.cycles_left;
uint64_t period = noise_period_cycles();
uint64_t counter = 1 + cycles / period, i = 0;
uint16_t start = snd.noise_lfsr;
uint64_t period = noise_period_cycles();
uint64_t counter = 1 + cycles / period, i = 0;
uint16_t start = snd.noise_lfsr;
while (i < counter) {
/* Using a Polynomial Counter (aka Linear Feedback Shift Register)
Mode 4 has a 15 bit counter so we need to shift the

View File

@ -83,7 +83,7 @@ private:
uint8_t m_pixels_per_clock; /* Number of pixels to output per colour clock */
uint16_t m_pixel_data;
uint8_t m_pixel_clock;
emu_timer *m_timer;
std::unique_ptr<bitmap_ind16> m_bmp;

View File

@ -129,7 +129,7 @@ void jangou_blitter_device::trigger_write(void)
#if DEBUG_OUT_OF_MASK
bool debug_flag;
#endif
w = (m_width & 0xff) + 1;
h = (m_height & 0xff) + 1;
@ -154,10 +154,10 @@ void jangou_blitter_device::trigger_write(void)
if((x + w) > 256 || (y + h) > 256)
{
printf("%d %d %d %d %08x\n",x,y,w,h,src);
// return;
// return;
}
#endif
// lowest bit of src controls flipping / draw direction?
flipx = (m_src_addr & 1);
@ -174,7 +174,7 @@ void jangou_blitter_device::trigger_write(void)
int drawy = (y + ycount) & 0xff;
uint8_t dat = gfx_nibble(src + count);
uint8_t cur_pen = m_pen_data[dat & 0x0f];
#if DEBUG_OUT_OF_MASK
if(debug_flag == true)
cur_pen = machine().rand() & 0xf;

View File

@ -30,11 +30,11 @@ public:
// I/O operations
DECLARE_ADDRESS_MAP(blit_v1_regs, 8);
DECLARE_ADDRESS_MAP(blit_v2_regs, 8);
DECLARE_WRITE8_MEMBER( vregs_w );
DECLARE_WRITE8_MEMBER( bltflip_w );
DECLARE_READ_LINE_MEMBER( status_r );
// blitter write accessors
DECLARE_WRITE8_MEMBER( x_w );
DECLARE_WRITE8_MEMBER( y_w );
@ -43,7 +43,7 @@ public:
DECLARE_WRITE8_MEMBER( src_lo_address_w );
DECLARE_WRITE8_MEMBER( src_md_address_w );
DECLARE_WRITE8_MEMBER( src_hi_address_w );
const uint8_t &blit_buffer(unsigned y, unsigned x) const { return m_blit_buffer[(256 * y) + x]; }
protected:

View File

@ -193,7 +193,7 @@ WRITE8_MEMBER(nt7534_device::control_write)
m_ir = data;
}
if (m_ir == 0xE2)
if (m_ir == 0xE2)
{
// Reset
memset(m_ddram, 0x00, sizeof(m_ddram));
@ -202,14 +202,14 @@ WRITE8_MEMBER(nt7534_device::control_write)
LOG("NT7534: Reset \n");
return;
}
else if ((m_ir & 0xFE) == 0xAE)
else if ((m_ir & 0xFE) == 0xAE)
{
// Display ON/OFF
m_display_on = m_ir & 1;
LOG("NT7534: Display %s\n", m_display_on ? "ON" : "OFF");
return;
}
else if ((m_ir & 0xC0) == 0x40)
else if ((m_ir & 0xC0) == 0x40)
{
// Display Start Line Set
m_display_start_line = m_ir & 0x3F;
@ -240,28 +240,28 @@ WRITE8_MEMBER(nt7534_device::control_write)
LOG("NT7534: set column address LSB %x\n", m_column & 0x0F);
return;
}
else if ((m_ir & 0xFE) == 0xA0)
else if ((m_ir & 0xFE) == 0xA0)
{
// ADC Select
m_adc = m_ir & 1;
LOG("NT7534: ADC: %d\n", m_adc);
return;
}
else if ((m_ir & 0xFE) == 0xA6)
else if ((m_ir & 0xFE) == 0xA6)
{
// Normal/Reverse Display
m_reverse = m_ir & 1;
LOG("NT7534: Display Reverse ? %s\n", m_reverse ? "Yes" : "No");
return;
}
else if ((m_ir & 0xFE) == 0xA4)
else if ((m_ir & 0xFE) == 0xA4)
{
// Entire display ON
m_entire_display_on = m_ir & 1;
LOG("NT7534: Entire Display ON ? %s\n", m_entire_display_on ? "Yes" : "No");
return;
}
else if (m_ir == 0xE0)
else if (m_ir == 0xE0)
{
// Enable Read-Modify-Write
m_read_modify_write = true;
@ -269,7 +269,7 @@ WRITE8_MEMBER(nt7534_device::control_write)
LOG("NT7534: Enable Read-Modify-Write. Backup column: %d\n", m_backup_column);
return;
}
else if (m_ir == 0xEE)
else if (m_ir == 0xEE)
{
// Disable Read-Modify-Write
m_read_modify_write = false;
@ -299,11 +299,11 @@ READ8_MEMBER(nt7534_device::control_read)
WRITE8_MEMBER(nt7534_device::data_write)
{
// if (m_busy_flag)
// {
// logerror("NT7534: Ignoring data write %02x due to busy flag\n", data);
// return;
// }
// if (m_busy_flag)
// {
// logerror("NT7534: Ignoring data write %02x due to busy flag\n", data);
// return;
// }
if (m_data_len == 4)
{

View File

@ -512,7 +512,7 @@ int acorn_dos_format::identify(io_generic *io, uint32_t form_factor)
int type = find_size(io, form_factor);
if(type != -1)
return 90;
return 90;
return 0;
}
@ -593,7 +593,7 @@ bool opus_ddcpm_format::load(io_generic *io, uint32_t form_factor, floppy_image
spt = 10;
desc_pc_sector sects[10];
uint8_t sectdata[10*512];
io_generic_read(io, sectdata, file_offset, spt * bps);
for (int i = 0; i < spt; i++) {

View File

@ -2,16 +2,16 @@
// copyright-holders:F. Ulivi
/*********************************************************************
"HTI" format
"HTI" format
*********************************************************************/
#include "hti_tape.h"
#include "imageutl.h"
static constexpr uint32_t FILE_MAGIC = 0x5441434f; // Magic value at start of image file: "TACO"
static constexpr hti_format_t::tape_pos_t ZERO_BIT_LEN = 619; // Length of 0 bits at slow tape speed: 1/(35200 Hz)
static constexpr hti_format_t::tape_pos_t ONE_BIT_LEN = 1083; // Length of 1 bits at slow tape speed: 1.75 times ZERO_BIT_LEN
static constexpr uint32_t FILE_MAGIC = 0x5441434f; // Magic value at start of image file: "TACO"
static constexpr hti_format_t::tape_pos_t ZERO_BIT_LEN = 619; // Length of 0 bits at slow tape speed: 1/(35200 Hz)
static constexpr hti_format_t::tape_pos_t ONE_BIT_LEN = 1083; // Length of 1 bits at slow tape speed: 1.75 times ZERO_BIT_LEN
// *** Position of tape holes ***
// At beginning of tape:

View File

@ -2,10 +2,10 @@
// copyright-holders:F. Ulivi
/*********************************************************************
"HTI" format
"HTI" format
Format of images of DC-100 tape cassettes as used in HP 9845
and HP 85 systems.
Format of images of DC-100 tape cassettes as used in HP 9845
and HP 85 systems.
*********************************************************************/

View File

@ -69,7 +69,7 @@ bool jvc_format::parse_header(io_generic *io, int &header_size, int &tracks, int
// no break
case 1: sectors = header[0];
// no break
case 0: tracks = (size - header_size) / sector_size / sectors / heads;
case 0: tracks = (size - header_size) / sector_size / sectors / heads;
break;
}

View File

@ -66,7 +66,7 @@ public:
void free_data();
void reset() { free_data(); operator=(png_info()); }
std::unique_ptr<std::uint8_t []> image;
std::unique_ptr<std::uint8_t []> image;
std::uint32_t width, height;
std::uint32_t xres = 0, yres = 0;
rectangle screen;

View File

@ -49,10 +49,10 @@ namespace webpp {
std::string remote_endpoint_address;
unsigned short remote_endpoint_port;
virtual ~Request() {}
};
struct Response {
virtual Response& status(int number) = 0;
virtual void type(std::string str) = 0;
@ -61,7 +61,7 @@ namespace webpp {
virtual ~Response() {}
};
class http_server;
}
#endif /* MAME_LIB_UTIL_SERVER_HTTP_HPP */

View File

@ -39,11 +39,11 @@ namespace webpp {
std::string remote_endpoint_address;
unsigned short remote_endpoint_port;
Connection(unsigned short remote_endpoint_port) : remote_endpoint_port(remote_endpoint_port) {}
virtual ~Connection() {}
};
class ws_server;
}
#endif /* MAME_LIB_UTIL_SERVER_WS_HPP */

View File

@ -254,7 +254,7 @@ namespace webpp {
unsigned char fin_rsv_opcode=129) const {
std::shared_ptr<Connection> connection = std::dynamic_pointer_cast<Connection> (conn);
if (!connection) return;
if(fin_rsv_opcode!=136)
timer_idle_reset(connection);

View File

@ -470,7 +470,7 @@ std::string normalize_unicode(const char *s, size_t length, unicode_normalizatio
//-------------------------------------------------
// uchar_toupper - uses utf8proc to convert to
// upper case
// upper case
//-------------------------------------------------
char32_t uchar_toupper(char32_t ch)
@ -481,7 +481,7 @@ char32_t uchar_toupper(char32_t ch)
//-------------------------------------------------
// uchar_tolower - uses utf8proc to convert to
// lower case
// lower case
//-------------------------------------------------
char32_t uchar_tolower(char32_t ch)

View File

@ -16,7 +16,7 @@
- sprite memory needs to be buffered ?
- inputs labels for Field Day, also fix the p3 / p4 controls (actually routes to p1 / p2)
- pixel layer needs priority ?
*/

View File

@ -131,7 +131,7 @@
1x GI AY-3-8910 (sound).
1x LM356N (Low Voltage Audio Power Amplifier).
ROMs: 2x 27C256 Program ROMs (I, II).
ROMs: 2x 27C256 Program ROMs (I, II).
3x 27C256 GFX ROMs (R, V, B).
RAMs: 1x KM62256ALP-10 (near prg ROMs).
@ -418,10 +418,10 @@ static INPUT_PORTS_START( unkfr )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_NAME("Deal / Take")
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_NAME("Left / Small")
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_NAME("Right / Big")
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_NAME("Down / Double-Up")
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START1 ) PORT_NAME("Start Non-Gambling game")
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
INPUT_PORTS_END
/***********************************

View File

@ -5,61 +5,61 @@
acvirus.cpp - Access Virus series
Skeleton driver by R. Belmont
Hardware in brief:
Virus A: SAB 80C535-N (12 MHz), DSP56303 @ 66 MHz
Virus B: SAB 80C535-N (12 MHz), DSP56311 @ ??? MHz (illegible on PCB photo I've seen)
Virus C: SAF 80C515-L24N (24 MHz), DSP56362 @ 120 MHz
Virus Rack is same h/w as B, Rack XL is the same h/w as C.
Virus Classic is supposed to be the same h/w as B but not proven.
The various 80C5xx chips are i8051-based SoCs with additional I/O ports,
256 bytes of internal RAM like the 8052, and an analog/digital converter.
The top 4 bits of port P5 select the bank at 0x8000. P5 is not implemented in
any of the MCS-51 variants we support yet.
Hardware Notes:
The DSP has three SRAM chips, probably 128 kbyte each
for a total of 128 kwords, mapped to address 0x20000. All three DSP
buses (P, X, Y) point to the same external memory. There's another 128
kbyte of battery backed SRAM for the 8051.
The firmware image fits exactly in an AM29F040-120PC flash chip, and is
bank switched into the 8051 program address space. The lower 0x8000
bytes of the address space always points to the first 0x8000 bytes of
flash (except during firmware upgrade, as I assume the programming
routine has do run from RAM). The upper 0x8000 bytes of the address
space can point to any 0x8000 sized bank in flash. A bank switch routine
is at 0x64B8, and will switch to e.g. bank 2 (offset 0x10000) when A =
0x20. The low nibble is usually zero, but not always, and I don't know
how it's interpreted.
Hardware in brief:
Virus A: SAB 80C535-N (12 MHz), DSP56303 @ 66 MHz
Virus B: SAB 80C535-N (12 MHz), DSP56311 @ ??? MHz (illegible on PCB photo I've seen)
Virus C: SAF 80C515-L24N (24 MHz), DSP56362 @ 120 MHz
Banks 0-2 contain OS code and data, banks 3-6 contain DSP code and data,
and banks 8-14 seem to contain factory default settings. There are flash
programming routines at the beginning of banks 7 and 15, and two at the
end of bank 6. Not sure why there are so many, and not all are
identical, so there's probably additional bank swithing logic to match.
All display a charming "DO NOT TOUCH ME" message while programming. :)
Virus Rack is same h/w as B, Rack XL is the same h/w as C.
Virus Classic is supposed to be the same h/w as B but not proven.
The same bank switching also seems to affect external memory, but I'm
not sure how the smaller SRAM is mapped. Some external memory locations
are used for other tasks, like communicatng with the DSP.
The various 80C5xx chips are i8051-based SoCs with additional I/O ports,
256 bytes of internal RAM like the 8052, and an analog/digital converter.
The top 4 bits of port P5 select the bank at 0x8000. P5 is not implemented in
any of the MCS-51 variants we support yet.
Hardware Notes:
The DSP has three SRAM chips, probably 128 kbyte each
for a total of 128 kwords, mapped to address 0x20000. All three DSP
buses (P, X, Y) point to the same external memory. There's another 128
kbyte of battery backed SRAM for the 8051.
The firmware image fits exactly in an AM29F040-120PC flash chip, and is
bank switched into the 8051 program address space. The lower 0x8000
bytes of the address space always points to the first 0x8000 bytes of
flash (except during firmware upgrade, as I assume the programming
routine has do run from RAM). The upper 0x8000 bytes of the address
space can point to any 0x8000 sized bank in flash. A bank switch routine
is at 0x64B8, and will switch to e.g. bank 2 (offset 0x10000) when A =
0x20. The low nibble is usually zero, but not always, and I don't know
how it's interpreted.
Banks 0-2 contain OS code and data, banks 3-6 contain DSP code and data,
and banks 8-14 seem to contain factory default settings. There are flash
programming routines at the beginning of banks 7 and 15, and two at the
end of bank 6. Not sure why there are so many, and not all are
identical, so there's probably additional bank swithing logic to match.
All display a charming "DO NOT TOUCH ME" message while programming. :)
The same bank switching also seems to affect external memory, but I'm
not sure how the smaller SRAM is mapped. Some external memory locations
are used for other tasks, like communicatng with the DSP.
The initial DSP program and data upload routine is at 0x1FAA. After
setting up the bus, it churns out all the 24-bit words in banks 3-6
(except for headers) as one stream. The DSP will interpret the first
word as a length, the second as address, and the following "length"
words will be stored at that address in program memory before execution
starts there. This is just a very short bootstrap program, which takes
care of receiving the remaining words in chunks. Each chunks starts with
three words - a command, an address, and optionally length. Commands 0-2
store data in P, X, or Y memory respectively. Command 3 splits each
24-bit word into two 12-bit values and store each of them as a 24-bit
word in Y memory. Command 4 starts execution at the specified address,
and doesn't have a length.
The initial DSP program and data upload routine is at 0x1FAA. After
setting up the bus, it churns out all the 24-bit words in banks 3-6
(except for headers) as one stream. The DSP will interpret the first
word as a length, the second as address, and the following "length"
words will be stored at that address in program memory before execution
starts there. This is just a very short bootstrap program, which takes
care of receiving the remaining words in chunks. Each chunks starts with
three words - a command, an address, and optionally length. Commands 0-2
store data in P, X, or Y memory respectively. Command 3 splits each
24-bit word into two 12-bit values and store each of them as a 24-bit
word in Y memory. Command 4 starts execution at the specified address,
and doesn't have a length.
***************************************************************************/
#include "emu.h"
@ -96,7 +96,7 @@ void acvirus_state::machine_reset()
}
static ADDRESS_MAP_START( virus_map, AS_PROGRAM, 8, acvirus_state )
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("maincpu", 0) // fixed 32K of flash image
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("maincpu", 0) // fixed 32K of flash image
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("rombank")
ADDRESS_MAP_END
@ -112,27 +112,27 @@ INPUT_PORTS_END
ROM_START( virusa )
ROM_REGION(0x80000, "maincpu", 0)
ROM_LOAD( "virus_a_28.bin", 0x000000, 0x080000, CRC(087cd808) SHA1(fe3310a165c208473822455c75ee5b2a6de34bc8) )
ROM_LOAD( "virus_a_28.bin", 0x000000, 0x080000, CRC(087cd808) SHA1(fe3310a165c208473822455c75ee5b2a6de34bc8) )
ROM_END
ROM_START( virusb )
ROM_REGION(0x80000, "maincpu", 0)
ROM_LOAD( "virus_bt_490x049.bin", 0x000000, 0x080000, CRC(4ffc928a) SHA1(ee4b83e2eb1f01c73e37e2ff1d2edd653a0dcf5b) )
ROM_LOAD( "virus_bt_490x049.bin", 0x000000, 0x080000, CRC(4ffc928a) SHA1(ee4b83e2eb1f01c73e37e2ff1d2edd653a0dcf5b) )
ROM_END
ROM_START( virusc )
ROM_REGION(0x80000, "maincpu", 0)
ROM_LOAD( "virus_c_650x352.bin", 0x000000, 0x080000, CRC(d44a9468) SHA1(fad9b896b39a43a1d46acb1d780b78b775a609b8) )
ROM_LOAD( "virus_c_650x352.bin", 0x000000, 0x080000, CRC(d44a9468) SHA1(fad9b896b39a43a1d46acb1d780b78b775a609b8) )
ROM_END
ROM_START( virusrck )
ROM_REGION(0x80000, "maincpu", 0)
ROM_LOAD( "virus_rt_210x071.bin", 0x000000, 0x080000, CRC(62b2bcc1) SHA1(241467bcb563736472a6e61f6c9c532590664500) )
ROM_LOAD( "virus_rt_210x071.bin", 0x000000, 0x080000, CRC(62b2bcc1) SHA1(241467bcb563736472a6e61f6c9c532590664500) )
ROM_END
ROM_START( virusrckxl )
ROM_REGION(0x80000, "maincpu", 0)
ROM_LOAD( "virus_xl_650x079.bin", 0x000000, 0x080000, CRC(d0721c46) SHA1(b7c292b66ba3690a4a50592e17321b9c4147621d) )
ROM_LOAD( "virus_xl_650x079.bin", 0x000000, 0x080000, CRC(d0721c46) SHA1(b7c292b66ba3690a4a50592e17321b9c4147621d) )
ROM_END
ROM_START( viruscl )

View File

@ -1525,10 +1525,10 @@ static MACHINE_CONFIG_START( pspikesb )
MACHINE_CONFIG_END
/*
Kick Ball
Kick Ball
cloned bootleg-style Korean hardware, no original VSYSTEM parts
tile banking and sound system are different like many of the bootlegs
cloned bootleg-style Korean hardware, no original VSYSTEM parts
tile banking and sound system are different like many of the bootlegs
*/
static MACHINE_CONFIG_START( kickball )

View File

@ -160,7 +160,7 @@
This game is similar to the NSW/ACT games however it requires a four-digit setup code before it can be initialized.
By default, this number is 4856.
After the game has accepted this code, press Collect (A) and Play 7 Lines (G) at the same time to clear the memory.
TODO (MK-5 specific):

View File

@ -172,7 +172,7 @@ static ADDRESS_MAP_START( buggychl_map, AS_PROGRAM, 8, buggychl_state )
// AM_RANGE(0xd60b, 0xd60b) // other inputs, not used?
AM_RANGE(0xd610, 0xd610) AM_DEVREAD("soundlatch2", generic_latch_8_device, read) AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
AM_RANGE(0xd611, 0xd611) AM_READ(sound_status_main_r)
// AM_RANGE(0xd613, 0xd613) AM_WRITE(sound_reset_w)
// AM_RANGE(0xd613, 0xd613) AM_WRITE(sound_reset_w)
AM_RANGE(0xd618, 0xd618) AM_WRITENOP /* accelerator clear */
AM_RANGE(0xd700, 0xd7ff) AM_DEVWRITE("palette", palette_device, write) AM_SHARE("palette")
AM_RANGE(0xd840, 0xd85f) AM_WRITEONLY AM_SHARE("scrollv")

View File

@ -193,7 +193,7 @@ void chanbara_state::draw_sprites( bitmap_ind16 &bitmap, const rectangle &clipre
if (m_spriteram[offs + 0x80] & 0x10) code += 0x200;
if (m_spriteram[offs + 0x80] & 0x20) code += 0x400;
if (m_spriteram[offs + 0x80] & 0x40) code += 0x100;
if (attr & 0x10)
{
if (!flipy)

View File

@ -41,7 +41,7 @@ public:
m_lcdc(*this, "nt7534") { }
DECLARE_WRITE8_MEMBER( p0_w );
DECLARE_WRITE8_MEMBER( p1_w );
DECLARE_PALETTE_INIT( controlidx628 );
DECLARE_PALETTE_INIT( controlidx628 );
required_device<nt7534_device> m_lcdc;
private:
@ -61,11 +61,11 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( io_map, AS_IO, 8, controlidx628_state )
AM_RANGE(0x8000, 0xffff) AM_RAM
// /* Ports start here */
// /* Ports start here */
AM_RANGE(MCS51_PORT_P0, MCS51_PORT_P0) AM_WRITE(p0_w)
AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_WRITE(p1_w)
// AM_RANGE(MCS51_PORT_P2, MCS51_PORT_P2) AM_RAM
// AM_RANGE(MCS51_PORT_P3, MCS51_PORT_P3) AM_RAM
// AM_RANGE(MCS51_PORT_P2, MCS51_PORT_P2) AM_RAM
// AM_RANGE(MCS51_PORT_P3, MCS51_PORT_P3) AM_RAM
ADDRESS_MAP_END
@ -94,8 +94,8 @@ PALETTE_INIT_MEMBER(controlidx628_state, controlidx628)
{
// These colors were selected from a photo of the display
// using the color-picker in Inkscape:
palette.set_pen_color(0, rgb_t(0x06, 0x61, 0xEE));
palette.set_pen_color(1, rgb_t(0x00, 0x23, 0x84));
palette.set_pen_color(0, rgb_t(0x06, 0x61, 0xEE));
palette.set_pen_color(1, rgb_t(0x00, 0x23, 0x84));
}
/*************************
@ -108,19 +108,19 @@ static MACHINE_CONFIG_START( controlidx628 )
MCFG_CPU_PROGRAM_MAP(prog_map)
MCFG_CPU_IO_MAP(io_map)
/* video hardware */
MCFG_SCREEN_ADD("screen", LCD)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
MCFG_SCREEN_SIZE(132, 65)
MCFG_SCREEN_VISIBLE_AREA(3, 130, 0, 63)
MCFG_SCREEN_UPDATE_DEVICE("nt7534", nt7534_device, screen_update)
MCFG_SCREEN_PALETTE("palette")
/* video hardware */
MCFG_SCREEN_ADD("screen", LCD)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
MCFG_SCREEN_SIZE(132, 65)
MCFG_SCREEN_VISIBLE_AREA(3, 130, 0, 63)
MCFG_SCREEN_UPDATE_DEVICE("nt7534", nt7534_device, screen_update)
MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(controlidx628_state, controlidx628)
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(controlidx628_state, controlidx628)
MCFG_NT7534_ADD("nt7534")
MCFG_NT7534_ADD("nt7534")
MACHINE_CONFIG_END

View File

@ -281,7 +281,7 @@ static INPUT_PORTS_START( csplayh5 )
PORT_DIPSETTING( 0x0040, DEF_STR( No ) )
PORT_DIPSETTING( 0x0000, DEF_STR( Yes ) )
PORT_DIPUNUSED_DIPLOC( 0x0080, IP_ACTIVE_LOW, "SWA:8" )
// A note indicates inoshikachou, shichigosan, hanami de ippai, tsukimi de ippai to be used, which are Koi Koi rulesets
PORT_DIPNAME( 0x0100, 0x0100, "Use Koi Koi local ruleset" ) PORT_DIPLOCATION("SWB:1")
PORT_DIPSETTING( 0x0000, DEF_STR( No ) )
@ -292,7 +292,7 @@ static INPUT_PORTS_START( csplayh5 )
PORT_DIPUNUSED_DIPLOC( 0x0400, IP_ACTIVE_LOW, "SWB:3" )
// TODO: duplicate of SWA:5? Maybe applies to nudity, will see once the DVD part works.
PORT_DIPNAME( 0x1800, 0x1800, "Background type" ) PORT_DIPLOCATION("SWB:4,5")
// PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
// PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0800, "Color in-game and attract" )
PORT_DIPSETTING( 0x1000, "Girls in-game, color in attract" )
PORT_DIPSETTING( 0x1800, "Girls in-game and attract" )
@ -505,23 +505,23 @@ ROM_END
ROM_START( sengomjk )
ROM_REGION( 0x40000, "maincpu", 0 ) // tmp68301 prg
ROM_LOAD16_BYTE( "2.ic3", 0x000000, 0x020000, CRC(a202bf13) SHA1(01e15e7577f6ac6a90b7ab30f402def211360d4d) )
ROM_LOAD16_BYTE( "1.ic2", 0x000001, 0x020000, CRC(98d4979a) SHA1(477361ec183674220e282fed8bfce098b0f75873) )
ROM_LOAD16_BYTE( "2.ic3", 0x000000, 0x020000, CRC(a202bf13) SHA1(01e15e7577f6ac6a90b7ab30f402def211360d4d) )
ROM_LOAD16_BYTE( "1.ic2", 0x000001, 0x020000, CRC(98d4979a) SHA1(477361ec183674220e282fed8bfce098b0f75873) )
ROM_REGION( 0x20000, ":nichisnd:audiorom", 0 ) // z80
ROM_LOAD( "11.ic51", 0x000000, 0x020000, CRC(c0bf69c6) SHA1(dd06ec9b3232f025de2c87765b88cb101eab47f5) )
ROM_LOAD( "11.ic51", 0x000000, 0x020000, CRC(c0bf69c6) SHA1(dd06ec9b3232f025de2c87765b88cb101eab47f5) )
DVD_BIOS
ROM_REGION( 0x400000, "blit_gfx", ROMREGION_ERASEFF ) // blitter based gfxs
ROM_LOAD16_BYTE( "3.ic40", 0x000000, 0x080000, CRC(20791a5a) SHA1(03c38e9b8e60b0dded7504b2725210df5405110c) )
ROM_LOAD16_BYTE( "4.ic41", 0x000001, 0x080000, CRC(1ed72387) SHA1(7e2b8ce49561d6fd79dcf0d427569e5f6ef8dc67) )
ROM_LOAD16_BYTE( "3.ic40", 0x000000, 0x080000, CRC(20791a5a) SHA1(03c38e9b8e60b0dded7504b2725210df5405110c) )
ROM_LOAD16_BYTE( "4.ic41", 0x000001, 0x080000, CRC(1ed72387) SHA1(7e2b8ce49561d6fd79dcf0d427569e5f6ef8dc67) )
DISK_REGION( "ide:0:hdd:image" )
DISK_IMAGE_READONLY( "nb8002", 0, SHA1(d3502496526e62a877f12dccc27b32ae33d3704d) )
ROM_REGION( 0x040000, "gal", ROMREGION_ERASE00 )
ROM_LOAD( "gal16v8b.jed", 0x000000, 0x000368, CRC(6b21325e) SHA1(cf894f591aa7e0b2680eda8fbbb591397cd170ab) )
ROM_LOAD( "gal16v8b.jed", 0x000000, 0x000368, CRC(6b21325e) SHA1(cf894f591aa7e0b2680eda8fbbb591397cd170ab) )
ROM_END
ROM_START( junai )
@ -797,24 +797,24 @@ ROM_END
ROM_START( nuretemi )
ROM_REGION( 0x40000, "maincpu", 0 ) // tmp68301 prg
ROM_LOAD16_BYTE( "2.ic3", 0x000000, 0x020000, CRC(da303352) SHA1(91c8752c93ca4022e978744bf42261d1a0e899a1) )
ROM_LOAD16_BYTE( "1.ic2", 0x000001, 0x020000, CRC(53ef6360) SHA1(ec90f01e4e78821511a6dba885c0d38f594a3a86) )
ROM_LOAD16_BYTE( "2.ic3", 0x000000, 0x020000, CRC(da303352) SHA1(91c8752c93ca4022e978744bf42261d1a0e899a1) )
ROM_LOAD16_BYTE( "1.ic2", 0x000001, 0x020000, CRC(53ef6360) SHA1(ec90f01e4e78821511a6dba885c0d38f594a3a86) )
DVD_BIOS
ROM_REGION( 0x20000, ":nichisnd:audiorom", 0 ) // z80
// identical to vol. 19, probably an attempt to fix a dead board.
ROM_LOAD( "11.ic51", 0x000000, 0x020000, BAD_DUMP CRC(d1ba05d6) SHA1(8d29cdbf00946e06e92225eb260a694d17d7b8d4) )
ROM_LOAD( "11.ic51", 0x000000, 0x020000, BAD_DUMP CRC(d1ba05d6) SHA1(8d29cdbf00946e06e92225eb260a694d17d7b8d4) )
ROM_REGION( 0x400000, "blit_gfx", ROMREGION_ERASEFF ) // blitter based gfxs
ROM_LOAD16_BYTE( "3.ic40", 0x000000, 0x080000, CRC(5c7af7f6) SHA1(78e58e3a81a6585c2c61f0026b7dc73a72c0d862) )
ROM_LOAD16_BYTE( "4.ic41", 0x000001, 0x080000, CRC(335b6388) SHA1(c5427b42af011b5a5026d905b1740684b9f6f953) )
ROM_LOAD16_BYTE( "3.ic40", 0x000000, 0x080000, CRC(5c7af7f6) SHA1(78e58e3a81a6585c2c61f0026b7dc73a72c0d862) )
ROM_LOAD16_BYTE( "4.ic41", 0x000001, 0x080000, CRC(335b6388) SHA1(c5427b42af011b5a5026d905b1740684b9f6f953) )
DISK_REGION( "ide:0:hdd:image" )
DISK_IMAGE_READONLY( "nb8016", 0, SHA1(607d9f390265da3f0c50753d0ea32257b12e8c08) )
ROM_REGION( 0x1000, "gal", ROMREGION_ERASE00 )
ROM_LOAD( "gal16v8b.jed", 0x000000, 0x000369, CRC(39f3edc7) SHA1(be07e8133cf2afa4f806d902d8d971d523326dd5) )
ROM_LOAD( "gal16v8b.jed", 0x000000, 0x000369, CRC(39f3edc7) SHA1(be07e8133cf2afa4f806d902d8d971d523326dd5) )
ROM_END
ROM_START( tsuwaku )
@ -861,30 +861,30 @@ ROM_END
ROM_START( konhaji )
ROM_REGION( 0x40000, "maincpu", 0 ) // tmp68301 prg
ROM_LOAD16_BYTE( "2.ic3", 0x000000, 0x020000, CRC(f16c88db) SHA1(bd8b4619817bd95fffe3e7e6ca57cc2223f372fa) )
ROM_LOAD16_BYTE( "2.ic3", 0x000000, 0x020000, CRC(f16c88db) SHA1(bd8b4619817bd95fffe3e7e6ca57cc2223f372fa) )
ROM_LOAD16_BYTE( "1.ic2", 0x000001, 0x020000, CRC(9360eabe) SHA1(ecae0c8090f5cadd87fb544190112b53193f54ee) )
DVD_BIOS
ROM_REGION( 0x20000, ":nichisnd:audiorom", 0 ) // z80
ROM_LOAD( "11.ic51", 0x000000, 0x020000, CRC(d1ba05d6) SHA1(8d29cdbf00946e06e92225eb260a694d17d7b8d4) )
ROM_REGION( 0x400000, "blit_gfx", ROMREGION_ERASEFF ) // blitter based gfxs
ROM_LOAD16_BYTE( "3.ic40", 0x000000, 0x080000, CRC(88f31da7) SHA1(dc76532fa3261b3b238a42e2ca8f270f2b2ea1fa) )
ROM_LOAD16_BYTE( "4.ic41", 0x000001, 0x080000, CRC(35893109) SHA1(6a55bd147a75913af59bc355abf010e1b75063bf) )
ROM_LOAD16_BYTE( "3.ic40", 0x000000, 0x080000, CRC(88f31da7) SHA1(dc76532fa3261b3b238a42e2ca8f270f2b2ea1fa) )
ROM_LOAD16_BYTE( "4.ic41", 0x000001, 0x080000, CRC(35893109) SHA1(6a55bd147a75913af59bc355abf010e1b75063bf) )
DISK_REGION( "ide:0:hdd:image" )
DISK_IMAGE_READONLY( "nb8019", 0, SHA1(f59ac1587009d7d15618549dc60cbd24c263a95f) )
ROM_REGION( 0x040000, "gal", ROMREGION_ERASE00 )
ROM_LOAD( "gal16v8b.jed", 0x000000, 0x000368, CRC(6b21325e) SHA1(cf894f591aa7e0b2680eda8fbbb591397cd170ab) )
ROM_LOAD( "gal16v8b.jed", 0x000000, 0x000368, CRC(6b21325e) SHA1(cf894f591aa7e0b2680eda8fbbb591397cd170ab) )
ROM_END
/***************************************************************************
Game metadatas
Game metadatas
***************************************************************************/
@ -913,11 +913,11 @@ GAME( 1998, nichidvd, 0, csplayh5, csplayh5, csplayh5_state, 0,
// 2000
/* 15 */ GAME( 2000, fuudol, nichidvd, csplayh5, csplayh5, csplayh5_state, fuudol, ROT0, "Nichibutsu/eic", "Fuudol (Japan)", MACHINE_NOT_WORKING )
/* 16 */ GAME( 2000, nuretemi, nichidvd, csplayh5, csplayh5, csplayh5_state, nuretemi, ROT0, "Nichibutsu/Love Factory", "Nurete Mitaino... - Net Idol Hen (Japan)", MACHINE_NOT_WORKING )
/* 16 */ GAME( 2000, nuretemi, nichidvd, csplayh5, csplayh5, csplayh5_state, nuretemi, ROT0, "Nichibutsu/Love Factory", "Nurete Mitaino... - Net Idol Hen (Japan)", MACHINE_NOT_WORKING )
/* 17 */ GAME( 2000, tsuwaku, nichidvd, csplayh5, csplayh5, csplayh5_state, tsuwaku, ROT0, "Nichibutsu/Love Factory/Just&Just", "Tsuugakuro no Yuuwaku (Japan)", MACHINE_NOT_WORKING )
// 18 : Torarechattano - AV Kantoku Hen : Nichibutsu/Love Factory/M Friend
/* sp */ GAME( 2000, nichisel, nichidvd, csplayh5, csplayh5, csplayh5_state, nichisel, ROT0, "Nichibutsu", "DVD Select (Japan)", MACHINE_NOT_WORKING )
// 2001
/* 19 */ GAME( 2001, konhaji, nichidvd, csplayh5, csplayh5, csplayh5_state, konhaji, ROT0, "Nichibutsu/Love Factory", "Konnano Hajimete! (Japan)", MACHINE_NOT_WORKING )
/* 19 */ GAME( 2001, konhaji, nichidvd, csplayh5, csplayh5, csplayh5_state, konhaji, ROT0, "Nichibutsu/Love Factory", "Konnano Hajimete! (Japan)", MACHINE_NOT_WORKING )
// 20 : Uwasa no Deaikei Site : Nichibutsu/Love Factory/eic

View File

@ -137,7 +137,7 @@
* The bootstrap copies the firmware to RAM and jumps to it
* -------------------------------------------------------------
*
* --- PC > 0x700000
* --- PC > 0x700000
* SIM40 + 0x0022: 0x0140 PICR Periodic Interrupt Control Register
* SIM40 + 0x0024: 0x0029 PICR Periodic Interrupt Timer Register
*
@ -290,8 +290,8 @@
* tbc...
*
* // Tricks with the CS0 and the GAL:s
* 008004d8 SIM40 + 0x0044: 0x00000053 CS0 base 1 - base addr = 0x000000, Supervisor Data Space, No CPU Space, Valid CS
* 008004e2 SIM40 + 0x0040: 0x003FFF05 CS0 mask 1 - block size = 4194304 (4MB),
* 008004d8 SIM40 + 0x0044: 0x00000053 CS0 base 1 - base addr = 0x000000, Supervisor Data Space, No CPU Space, Valid CS
* 008004e2 SIM40 + 0x0040: 0x003FFF05 CS0 mask 1 - block size = 4194304 (4MB),
* ... strange series of operations between 800834 and 8008D4, suspecting GAL:s to be involved in some magic here
* 008004ee SIM40 + 0x0040: 0x003FFFF5 CS0 mask 1 - block size = 4194304 (4MB), Mask all accesses
* 008004f8 SIM40 + 0x0044: 0x0000005b CS0 base 1 - base addr = 0x000000, Supervisor Data Space, Write Protect, No CPU Space, Valid CS

View File

@ -383,7 +383,7 @@ void deco32_state::update_irq_state(uint8_t irq_cause, bool assert_state)
else
m_irq_cause &= ~irq_cause;
m_maincpu->set_input_line(ARM_IRQ_LINE, (m_irq_cause != 0) ? ASSERT_LINE : CLEAR_LINE);
m_maincpu->set_input_line(ARM_IRQ_LINE, (m_irq_cause != 0) ? ASSERT_LINE : CLEAR_LINE);
}
INTERRUPT_GEN_MEMBER(deco32_state::vblank_irq_gen)
@ -406,14 +406,14 @@ READ32_MEMBER(deco32_state::irq_controller_r)
/* Irq controller
Bit 0: 1 = Vblank active
Bit 1: ? (Hblank active? Captain America raster IRQ waits for this to go low)
Bit 2:
Bit 3:
Bit 4: VBL Irq
Bit 5: Raster IRQ
Bit 6: Lightgun IRQ (on Lock N Load only)
Bit 7:
Bit 0: 1 = Vblank active
Bit 1: ? (Hblank active? Captain America raster IRQ waits for this to go low)
Bit 2:
Bit 3:
Bit 4: VBL Irq
Bit 5: Raster IRQ
Bit 6: Lightgun IRQ (on Lock N Load only)
Bit 7:
*/
case 3:
{
@ -441,8 +441,8 @@ WRITE32_MEMBER(deco32_state::irq_controller_w)
case 1: /* Raster IRQ scanline position, only valid for values between 1 & 239 (0 and 240-256 do NOT generate IRQ's) */
{
scanline=(data&0xff);
//printf("%d\n",scanline);
if (m_raster_enable && scanline != 0)
m_raster_irq_timer->adjust(m_screen->time_until_pos(scanline-1, 0));
@ -549,7 +549,7 @@ READ32_MEMBER(dragngun_state::lockload_gun_mirror_r)
{
case 0:
return ((ioport("INPUTS")->read() & 0x30) << 5) | (ioport("LIGHT0_X")->read()) | 0xffff800;
case 1:
return ((ioport("INPUTS")->read() & 0x3000) >> 3) | (ioport("LIGHT1_X")->read()) | 0xffff800;
}
@ -1500,11 +1500,11 @@ INPUT_CHANGED_MEMBER(dragngun_state::lockload_gun_trigger)
{
uint8_t player_side = (uint8_t)(uintptr_t)param;
const char *player_input = player_side == 1 ? "LIGHT1_Y" : "LIGHT0_Y";
if(!newval)
{
int gun_line = ioport(player_input)->read();
if(gun_line >= vblankout && gun_line <= vblankin)
m_gun_latch = gun_line/2;
}
@ -1869,9 +1869,9 @@ static MACHINE_CONFIG_START( captaven )
MCFG_TIMER_DRIVER_ADD("int_timer", deco32_state, raster_irq_gen)
MCFG_SCREEN_ADD("screen", RASTER)
// MCFG_SCREEN_REFRESH_RATE(60)
// MCFG_SCREEN_SIZE(42*8, 32*8)
// MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
// MCFG_SCREEN_REFRESH_RATE(60)
// MCFG_SCREEN_SIZE(42*8, 32*8)
// MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
MCFG_SCREEN_RAW_PARAMS(XTAL_28MHz/4,442,0,40*8,274,8,31*8)
MCFG_SCREEN_UPDATE_DRIVER(deco32_state, screen_update_captaven)
MCFG_SCREEN_PALETTE("palette")
@ -1974,9 +1974,9 @@ static MACHINE_CONFIG_START( fghthist ) /* DE-0380-2 PCB */
MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
MCFG_SCREEN_ADD("screen", RASTER)
// MCFG_SCREEN_REFRESH_RATE(60)
// MCFG_SCREEN_SIZE(42*8, 32*8)
// MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
// MCFG_SCREEN_REFRESH_RATE(60)
// MCFG_SCREEN_SIZE(42*8, 32*8)
// MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
MCFG_SCREEN_RAW_PARAMS(XTAL_28MHz/4,442,0,40*8,274,8,31*8)
MCFG_SCREEN_UPDATE_DRIVER(deco32_state, screen_update_fghthist)
@ -2060,9 +2060,9 @@ static MACHINE_CONFIG_START( fghthsta ) /* DE-0395-1 PCB */
MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
MCFG_SCREEN_ADD("screen", RASTER)
// MCFG_SCREEN_REFRESH_RATE(60)
// MCFG_SCREEN_SIZE(42*8, 32*8)
// MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
// MCFG_SCREEN_REFRESH_RATE(60)
// MCFG_SCREEN_SIZE(42*8, 32*8)
// MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
MCFG_SCREEN_RAW_PARAMS(XTAL_28MHz/4,442,0,40*8,274,8,31*8)
MCFG_SCREEN_UPDATE_DRIVER(deco32_state, screen_update_fghthist)
@ -2188,9 +2188,9 @@ static MACHINE_CONFIG_START( dragngun )
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
// MCFG_SCREEN_REFRESH_RATE(60)
// MCFG_SCREEN_SIZE(42*8, 32*8)
// MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
// MCFG_SCREEN_REFRESH_RATE(60)
// MCFG_SCREEN_SIZE(42*8, 32*8)
// MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
MCFG_SCREEN_RAW_PARAMS(XTAL_28MHz/4,442,0,40*8,274,8,31*8)
MCFG_SCREEN_UPDATE_DRIVER(dragngun_state, screen_update_dragngun)
//MCFG_SCREEN_PALETTE("palette")
@ -2267,10 +2267,10 @@ MACHINE_CONFIG_END
TIMER_DEVICE_CALLBACK_MEMBER(dragngun_state::lockload_vblank_irq_gen)
{
int scanline = param;
if(scanline == 31*8)
update_irq_state(VBLANK_IRQ,true);
// TODO: this occurs at lightgun Y positions, also needs cleaning up.
if(scanline == m_gun_latch)
update_irq_state(LIGHTGUN_IRQ,true);
@ -2297,9 +2297,9 @@ static MACHINE_CONFIG_START( lockload )
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
// MCFG_SCREEN_REFRESH_RATE(60)
// MCFG_SCREEN_SIZE(42*8, 32*8+22)
// MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
// MCFG_SCREEN_REFRESH_RATE(60)
// MCFG_SCREEN_SIZE(42*8, 32*8+22)
// MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
MCFG_SCREEN_RAW_PARAMS(XTAL_28MHz/4,442,0,40*8,274,8,31*8)
MCFG_SCREEN_UPDATE_DRIVER(dragngun_state, screen_update_dragngun)
@ -2393,9 +2393,9 @@ static MACHINE_CONFIG_START( tattass )
MCFG_EEPROM_SERIAL_93C76_8BIT_ADD("eeprom")
MCFG_SCREEN_ADD("screen", RASTER)
// MCFG_SCREEN_REFRESH_RATE(60)
// MCFG_SCREEN_SIZE(42*8, 32*8)
// MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
// MCFG_SCREEN_REFRESH_RATE(60)
// MCFG_SCREEN_SIZE(42*8, 32*8)
// MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
MCFG_SCREEN_RAW_PARAMS(XTAL_28MHz/4,442,0,40*8,274,8,31*8)
MCFG_SCREEN_UPDATE_DRIVER(deco32_state, screen_update_nslasher)
@ -2467,9 +2467,9 @@ static MACHINE_CONFIG_START( nslasher )
MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
MCFG_SCREEN_ADD("screen", RASTER)
// MCFG_SCREEN_REFRESH_RATE(60)
// MCFG_SCREEN_SIZE(42*8, 32*8)
// MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
// MCFG_SCREEN_REFRESH_RATE(60)
// MCFG_SCREEN_SIZE(42*8, 32*8)
// MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
MCFG_SCREEN_RAW_PARAMS(XTAL_28MHz/4,442,0,40*8,274,8,31*8)
MCFG_SCREEN_UPDATE_DRIVER(deco32_state, screen_update_nslasher)

View File

@ -4,7 +4,7 @@
KSM (Kontroller Simvolnogo Monitora = Character Display Controller),
a single-board replacement for standalone 15IE-00-013 terminal (ie15.c
driver in MAME) in later-model DVK desktops.
driver in MAME) in later-model DVK desktops.
MPI (Q-Bus clone) board, consumes only power from the bus.
Interfaces with MS7004 (DEC LK201 workalike) keyboard and monochrome CRT.

View File

@ -1281,7 +1281,7 @@ static ADDRESS_MAP_START( tenkai_map, AS_PROGRAM, 8, dynax_state )
ADDRESS_MAP_END
static ADDRESS_MAP_START( tenkai_banked_map, AS_PROGRAM, 8, dynax_state )
AM_RANGE( 0x00000, 0x3ffff ) AM_ROM AM_REGION("maincpu", 0x10000)
AM_RANGE( 0x00000, 0x3ffff ) AM_ROM AM_REGION("maincpu", 0x10000)
AM_RANGE( 0x80000, 0x8000f ) AM_DEVREADWRITE("rtc", msm6242_device, read, write)
AM_RANGE( 0x90000, 0x97fff ) AM_READWRITE(tenkai_palette_r, tenkai_palette_w)
ADDRESS_MAP_END

View File

@ -5,106 +5,106 @@
elektronmono.cpp - Elektron Machinedrum and Monomachine
Skeleton driver by R. Belmont
The Machinedrum and Monomachine are basically the same hardware
platform, only the front panel is different. Both have two major
hardware revisions with different features (MK 1 and MK 2), and a
"+Drive" storage option/upgrade.
There are also "user waveform" (UW) versions of the Machinedrum MK 1
and MK 2, and a keyboard version of the Monomachine MK 1 only. All
Monomachine MK 2 units support user waveforms, there's no separate
UW version. The firmware covers all models.
The same circuit boards are used in both Machinedrum and
Monomachine, at least in MK 2. I haven't found photos of the top of MK 1
circuit boards, so some of the memory configurations are guesses based
on firmware code, and may not be accurate.
MCU: Motorola Coldfire 5206e
- Flash memory: 8 Mbyte for Machinedrum UW models and Monomachine MK 2,
1 Mbyte for others?
- Main memory: 1 Mbyte DRAM for MK 1, 1 MByte SRAM for MK 2
- Battery backed "patch" memory: 512 kByte SRAM for Machinedrum MK 1, 1
MByte SRAM for others
The Machinedrum and Monomachine are basically the same hardware
platform, only the front panel is different. Both have two major
hardware revisions with different features (MK 1 and MK 2), and a
"+Drive" storage option/upgrade.
DSP: 2x Motorola DSP56303
- Memory for each DSP: 3x 64 kbyte SRAM + 3x 256 kbyte for MK 1, 3x 512
kbyte SRAM for MK 2
- Additional memory for DSP 2 in Machinedrum UW: 3x 512 kbyte DRAM for
MK 1, 3x 512 kbyte SRAM for MK 2
There are also "user waveform" (UW) versions of the Machinedrum MK 1
and MK 2, and a keyboard version of the Monomachine MK 1 only. All
Monomachine MK 2 units support user waveforms, there's no separate
UW version. The firmware covers all models.
+Drive: Hynix H26M21001CAR 2 Gbyte flash?
The same circuit boards are used in both Machinedrum and
Monomachine, at least in MK 2. I haven't found photos of the top of MK 1
circuit boards, so some of the memory configurations are guesses based
on firmware code, and may not be accurate.
The Coldfire memory map is software definable, and differs between the
bootstrap code and the main operating system.
The +Drive isn't mapped to memory at all. Instead it's accessed through
Coldfire port A. It's just a large flash chip connected via a 74 series
chip with XOR gates, but I don't understand exactly how communication
works. The only one I've seen in a photo is 2 Gbytes, which is curiously
large considering it stores 128 snapshots of the patch memory, and 128
snapshots of the user waveform memory when applicable. Probably even 512
Mbytes would be wasteful.
MCU: Motorola Coldfire 5206e
- Flash memory: 8 Mbyte for Machinedrum UW models and Monomachine MK 2,
1 Mbyte for others?
- Main memory: 1 Mbyte DRAM for MK 1, 1 MByte SRAM for MK 2
- Battery backed "patch" memory: 512 kByte SRAM for Machinedrum MK 1, 1
MByte SRAM for others
Memory map for Coldfire when bootstrap code runs:
0-100000: Lower 1 Mbyte of flash memory
100000-200000: Patch memory
DSP: 2x Motorola DSP56303
- Memory for each DSP: 3x 64 kbyte SRAM + 3x 256 kbyte for MK 1, 3x 512
kbyte SRAM for MK 2
- Additional memory for DSP 2 in Machinedrum UW: 3x 512 kbyte DRAM for
MK 1, 3x 512 kbyte SRAM for MK 2
Memory map for Coldfire when operating system runs:
700000-800000: Patch memory
10000000-10800000: Flash memory
+Drive: Hynix H26M21001CAR 2 Gbyte flash?
Common memory map for Coldfire:
200000-300000: Main memory
300000: Coldfire SIM (system integration module - peripherals, etc)
500000-500008: DSP 1 Hi08 host registers in order (ICR, CVR, ISR, IVR,
0/unused, RXH/TXH, RXM/TXM, RXL/TXL)
600000-600008: DSP 2 Hi08
1000000-1002000?: Coldfire internal SRAM
The Coldfire memory map is software definable, and differs between the
bootstrap code and the main operating system.
Memory map for flash:
0-100000: Firmware (identical to previous reconstructed dump)
100000-200000: User waveforms for the factory presets on Machinedrum UW
and Monomachine MK 2
200000-800000: Probably user waveforms on units without +Drive. Both the
units I dumped have factory installed +Drives, and the area is empty
except for some markers. Machinedrum UW has a big lookup table near the
end as well. Side note: I think there's code in the firmware to recreate
markers and lookup tables, so the upper 6 Mbytes may be superfluous for
emulation.
The +Drive isn't mapped to memory at all. Instead it's accessed through
Coldfire port A. It's just a large flash chip connected via a 74 series
chip with XOR gates, but I don't understand exactly how communication
works. The only one I've seen in a photo is 2 Gbytes, which is curiously
large considering it stores 128 snapshots of the patch memory, and 128
snapshots of the user waveform memory when applicable. Probably even 512
Mbytes would be wasteful.
Memory map for MK 1 DSPs:
100000-140000: DRAM
140000-150000: SRAM
180000-200000: Additional DRAM for DSP 2 in Machinedrum UW only
Memory map for Coldfire when bootstrap code runs:
0-100000: Lower 1 Mbyte of flash memory
100000-200000: Patch memory
Memory map for MK 2 DSPs:
100000-180000: SRAM
180000-200000: Additional SRAM for DSP 2 in Machinedrum UW only
Memory map for Coldfire when operating system runs:
700000-800000: Patch memory
10000000-10800000: Flash memory
The DSPs seem to use the ESSI serial interface to communicate, and to
interface with the AKM AK4626AVQ audio codec chip. On Machinedrum, DSP 2
does the main synthesis (that's why it has additional memory in UW
models), and DSP 1 does effects. I haven't looked much at the
Monomachine DSP code, but both chips share most of the code, so the work
is probably shared in a more symmetrical manner than on the Machinedrum.
Common memory map for Coldfire:
200000-300000: Main memory
300000: Coldfire SIM (system integration module - peripherals, etc)
500000-500008: DSP 1 Hi08 host registers in order (ICR, CVR, ISR, IVR,
0/unused, RXH/TXH, RXM/TXM, RXL/TXL)
600000-600008: DSP 2 Hi08
1000000-1002000?: Coldfire internal SRAM
Coldfire peripherals:
- UART 1: MIDI
- UART 2: Buttons, knobs, LEDs, display
- Port A: Bit 0 mirrors bit 2 on MK 2, bit 1 checks SRAM battery charge,
bit 2 is used for +Drive address, bit 3 is something about +Drive, bits
4-7 is data RX/TX for +Drive.
Memory map for flash:
0-100000: Firmware (identical to previous reconstructed dump)
100000-200000: User waveforms for the factory presets on Machinedrum UW
and Monomachine MK 2
200000-800000: Probably user waveforms on units without +Drive. Both the
units I dumped have factory installed +Drives, and the area is empty
except for some markers. Machinedrum UW has a big lookup table near the
end as well. Side note: I think there's code in the firmware to recreate
markers and lookup tables, so the upper 6 Mbytes may be superfluous for
emulation.
Model detection:
- MK 2 is detected by writing to port A bit 2 and reading the same value
from bit 0. Machinedrum also checks patch SRAM size.
- Machinedrum UW is detected by comparing the ID of the flash chip to
certain 8 Mbyte chip IDs, and by DSP 2 which checks available memory.
- +Drive is detected by communicating with it on port A.
- I haven't looked into how the Monomachine keyboard is detected, or how
it's connected to the Coldfire.
Memory map for MK 1 DSPs:
100000-140000: DRAM
140000-150000: SRAM
180000-200000: Additional DRAM for DSP 2 in Machinedrum UW only
Memory map for MK 2 DSPs:
100000-180000: SRAM
180000-200000: Additional SRAM for DSP 2 in Machinedrum UW only
The DSPs seem to use the ESSI serial interface to communicate, and to
interface with the AKM AK4626AVQ audio codec chip. On Machinedrum, DSP 2
does the main synthesis (that's why it has additional memory in UW
models), and DSP 1 does effects. I haven't looked much at the
Monomachine DSP code, but both chips share most of the code, so the work
is probably shared in a more symmetrical manner than on the Machinedrum.
Coldfire peripherals:
- UART 1: MIDI
- UART 2: Buttons, knobs, LEDs, display
- Port A: Bit 0 mirrors bit 2 on MK 2, bit 1 checks SRAM battery charge,
bit 2 is used for +Drive address, bit 3 is something about +Drive, bits
4-7 is data RX/TX for +Drive.
Model detection:
- MK 2 is detected by writing to port A bit 2 and reading the same value
from bit 0. Machinedrum also checks patch SRAM size.
- Machinedrum UW is detected by comparing the ID of the flash chip to
certain 8 Mbyte chip IDs, and by DSP 2 which checks available memory.
- +Drive is detected by communicating with it on port A.
- I haven't looked into how the Monomachine keyboard is detected, or how
it's connected to the Coldfire.
***************************************************************************/
@ -141,8 +141,8 @@ void elekmono_state::machine_reset()
static ADDRESS_MAP_START( elektron_map, AS_PROGRAM, 32, elekmono_state )
AM_RANGE(0x00000000, 0x000fffff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x00100000, 0x001fffff) AM_RAM // patch memory
AM_RANGE(0x00200000, 0x002fffff) AM_RAM // main RAM
AM_RANGE(0x00100000, 0x001fffff) AM_RAM // patch memory
AM_RANGE(0x00200000, 0x002fffff) AM_RAM // main RAM
// 00300000 = Coldfire SIM
// 00400000 = DSP1 Hi08 host registers (ICR, CVR, ISR, IVR, unused, RXH/TXH, RXM/TXM, RXL/TXL)
// 00500000 = DSP2 Hi08 host registers (same as DSP1)
@ -162,7 +162,7 @@ INPUT_PORTS_END
ROM_START( monomach )
ROM_REGION(0x800000, "maincpu", 0)
ROM_LOAD( "elektron_sfx6-60_os1.32b.bin", 0x000000, 0x800000, CRC(f90a8b0e) SHA1(11a37460a5f47fd1a4d911414288690e6e7da605) )
ROM_LOAD( "elektron_sfx6-60_os1.32b.bin", 0x000000, 0x800000, CRC(f90a8b0e) SHA1(11a37460a5f47fd1a4d911414288690e6e7da605) )
ROM_END
ROM_START( machdrum )

View File

@ -2853,7 +2853,7 @@ static MACHINE_CONFIG_START( towns_base )
MCFG_UPD71071_DMA_WRITE_1_CB(WRITE16(towns_state, towns_scsi_dma_w))
//MCFG_VIDEO_START_OVERRIDE(towns_state,towns)
MCFG_DEVICE_ADD("i8251", I8251, 0)
MCFG_I8251_RXRDY_HANDLER(WRITELINE(towns_state, towns_rxrdy_irq))
MCFG_I8251_TXRDY_HANDLER(WRITELINE(towns_state, towns_txrdy_irq))

View File

@ -316,7 +316,7 @@ READ16_MEMBER(gaelco2_state::play2000_shareram_68k_r)
if (offset * 2 == 0x42c) return 0x0000;
if (offset * 2 == 0x42e) return 0x00f0;
if (offset * 2 == 0xc04) return 0x7171;
// return 0x0000;
// return 0x0000;
}
logerror("%04x read from shareram %04x %04x %04x\n", pc, offset * 2, mem_mask, ret & mem_mask);
@ -326,7 +326,7 @@ READ16_MEMBER(gaelco2_state::play2000_shareram_68k_r)
WRITE16_MEMBER(gaelco2_state::play2000_shareram_68k_w)
{
int pc = space.device().safe_pc();
COMBINE_DATA(&m_shareram[offset]);
if (pc == 0x00552) return; // initial RAM check
@ -343,10 +343,10 @@ static ADDRESS_MAP_START( play2000_map, AS_PROGRAM, 16, gaelco2_state )
AM_RANGE(0x202890, 0x2028ff) AM_DEVREADWRITE("gaelco", gaelco_gae1_device, gaelcosnd_r, gaelcosnd_w) /* Sound Registers */
AM_RANGE(0x200000, 0x20ffff) AM_RAM_WRITE(gaelco2_vram_w) AM_SHARE("spriteram") /* Video RAM */
AM_RANGE(0x214000, 0x214fff) AM_RAM_WRITE(gaelco2_palette_w) AM_SHARE("paletteram") /* Palette */
AM_RANGE(0x215000, 0x217fff) AM_RAM /* Written to, but unused? */
AM_RANGE(0x218000, 0x218003) AM_RAM /* Written to, but unused? */
AM_RANGE(0x215000, 0x217fff) AM_RAM /* Written to, but unused? */
AM_RANGE(0x218000, 0x218003) AM_RAM /* Written to, but unused? */
AM_RANGE(0x218004, 0x218009) AM_RAM AM_SHARE("vregs") /* Video Registers */
AM_RANGE(0x21800a, 0x218fff) AM_RAM /* Written to, but unused? */
AM_RANGE(0x21800a, 0x218fff) AM_RAM /* Written to, but unused? */
// AM_RANGE(0x843100, 0x84315e) ?
AM_RANGE(0xfe0000, 0xfe7fff) AM_RAM /* Work RAM */
AM_RANGE(0xfe8000, 0xfeffff) AM_READWRITE(play2000_shareram_68k_r, play2000_shareram_68k_w) AM_SHARE("shareram") /* Work RAM */
@ -447,7 +447,7 @@ static MACHINE_CONFIG_START( play2000 )
MCFG_GAELCO_SND_DATA("gfx1")
MCFG_GAELCO_BANKS(1 * 0x0080000, 1 * 0x0080000, 1 * 0x0080000, 1 * 0x0080000) // ?
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
MACHINE_CONFIG_END

View File

@ -149,13 +149,13 @@ MACHINE_CONFIG_END
// ROM DEFINITIONS
//**************************************************************************
/* There are a lot of bad dumps of the gamecube IPLs floating around.
The following IPL dumps are known bad, with RAM/MAC address garbage in the last 0x8000 bytes:
ROM_LOAD("ipl_bad_ntsc_v10.bin", 0x000000, 0x200000, CRC(6d740ae7) SHA1(015808f637a984acde6a06efa7546e278293c6ee))
ROM_LOAD("ipl_bad2_ntsc_v10.bin", 0x000000, 0x200000, CRC(8bdabbd4) SHA1(f1b0ef434cd74fd8fe23698e2fc911d945b45bf1))
ROM_LOAD("ipl_bad_pal_v10.bin", 0x000000, 0x200000, CRC(dd8cab7c) SHA1(6f305c37dc1fbe332883bb8153eee26d3d325629))
The following rom is flat out unknown and unseen in the wild, except for its checksums:
ROM_LOAD("ipl_unknown.bin", 0x000000, 0x200000, CRC(d235e3f9) SHA1(96f69a21645de73a5ba61e57951ef303d55788c5))
/* There are a lot of bad dumps of the gamecube IPLs floating around.
The following IPL dumps are known bad, with RAM/MAC address garbage in the last 0x8000 bytes:
ROM_LOAD("ipl_bad_ntsc_v10.bin", 0x000000, 0x200000, CRC(6d740ae7) SHA1(015808f637a984acde6a06efa7546e278293c6ee))
ROM_LOAD("ipl_bad2_ntsc_v10.bin", 0x000000, 0x200000, CRC(8bdabbd4) SHA1(f1b0ef434cd74fd8fe23698e2fc911d945b45bf1))
ROM_LOAD("ipl_bad_pal_v10.bin", 0x000000, 0x200000, CRC(dd8cab7c) SHA1(6f305c37dc1fbe332883bb8153eee26d3d325629))
The following rom is flat out unknown and unseen in the wild, except for its checksums:
ROM_LOAD("ipl_unknown.bin", 0x000000, 0x200000, CRC(d235e3f9) SHA1(96f69a21645de73a5ba61e57951ef303d55788c5))
*/
ROM_START( gcjp ) // DOL-001(JPN) and DOL-101(JPN); NTSC gamecube board, outputs NTSC color, NTSC timings; JPN Region jumper set

View File

@ -1677,10 +1677,10 @@ WRITE16_MEMBER(igs011_state::lhb2_igs003_w)
case 0x48:
m_igs003_prot_x = 0;
if((m_igs003_prot_h2 & 0x0a) != 0x0a) m_igs003_prot_x |= 0x08; // $100de6 (always 0 in lhb2)
if((m_igs003_prot_h2 & 0x90) != 0x90) m_igs003_prot_x |= 0x04; // $100de7 (always 0 in lhb2)
if((m_igs003_prot_h1 & 0x06) != 0x06) m_igs003_prot_x |= 0x02; // $100de8
if((m_igs003_prot_h1 & 0x90) != 0x90) m_igs003_prot_x |= 0x01; // $100de9
if((m_igs003_prot_h2 & 0x0a) != 0x0a) m_igs003_prot_x |= 0x08; // $100de6 (always 0 in lhb2)
if((m_igs003_prot_h2 & 0x90) != 0x90) m_igs003_prot_x |= 0x04; // $100de7 (always 0 in lhb2)
if((m_igs003_prot_h1 & 0x06) != 0x06) m_igs003_prot_x |= 0x02; // $100de8
if((m_igs003_prot_h1 & 0x90) != 0x90) m_igs003_prot_x |= 0x01; // $100de9
break;
case 0x50: // reset?
@ -1953,10 +1953,10 @@ WRITE16_MEMBER(igs011_state::vbowl_igs003_w)
case 0x48:
m_igs003_prot_x = 0;
if((m_igs003_prot_h2 & 0x0a) != 0x0a) m_igs003_prot_x |= 0x08;
if((m_igs003_prot_h2 & 0x90) != 0x90) m_igs003_prot_x |= 0x04;
if((m_igs003_prot_h1 & 0x06) != 0x06) m_igs003_prot_x |= 0x02;
if((m_igs003_prot_h1 & 0x90) != 0x90) m_igs003_prot_x |= 0x01;
if((m_igs003_prot_h2 & 0x0a) != 0x0a) m_igs003_prot_x |= 0x08;
if((m_igs003_prot_h2 & 0x90) != 0x90) m_igs003_prot_x |= 0x04;
if((m_igs003_prot_h1 & 0x06) != 0x06) m_igs003_prot_x |= 0x02;
if((m_igs003_prot_h1 & 0x90) != 0x90) m_igs003_prot_x |= 0x01;
break;
case 0x50: // reset?
@ -2079,10 +2079,10 @@ WRITE16_MEMBER(igs011_state::vbowlhk_igs003_w)
case 0x48:
m_igs003_prot_x = 0;
if((m_igs003_prot_h2 & 0x0a) != 0x0a) m_igs003_prot_x |= 0x08;
if((m_igs003_prot_h2 & 0x90) != 0x90) m_igs003_prot_x |= 0x04;
if((m_igs003_prot_h1 & 0x06) != 0x06) m_igs003_prot_x |= 0x02;
if((m_igs003_prot_h1 & 0x90) != 0x90) m_igs003_prot_x |= 0x01;
if((m_igs003_prot_h2 & 0x0a) != 0x0a) m_igs003_prot_x |= 0x08;
if((m_igs003_prot_h2 & 0x90) != 0x90) m_igs003_prot_x |= 0x04;
if((m_igs003_prot_h1 & 0x06) != 0x06) m_igs003_prot_x |= 0x02;
if((m_igs003_prot_h1 & 0x90) != 0x90) m_igs003_prot_x |= 0x01;
break;
case 0x50: // reset?

View File

@ -4,10 +4,10 @@
Kontron KDT6
This is the base board for various machines, it needs to be combined
with an I/O board and a bus board. This gives us
- KDT6 + 9xx/IOC + 9xx/BUS: PSI908/PSI9C
- KDT6 + 98/IOC + 98/BUS: PSI98
This is the base board for various machines, it needs to be combined
with an I/O board and a bus board. This gives us
- KDT6 + 9xx/IOC + 9xx/BUS: PSI908/PSI9C
- KDT6 + 98/IOC + 98/BUS: PSI98
***************************************************************************/

View File

@ -8,8 +8,8 @@ Learning-Window Teaching Computer by V-Tech / Spiel Master by Yuvo (German)
Info from Kevin Horton (Kevtris):
The -081 on the 'speech' cart board had that mystery sp0256 next to it with its markings ground off.
The chip with the marking ground off is the most common SP0256 chip, the SP0256-AL2 chip
(it was common enough to be sold by electronic stores like Radio Shack in the USA)
The chip with the marking ground off is the most common SP0256 chip, the SP0256-AL2 chip
(it was common enough to be sold by electronic stores like Radio Shack in the USA)
and used on the currah speech cart for c64 and many many other places.
The rom for this exists in MAME as:
@ -33,7 +33,7 @@ SPR128A-047 - Learning Window speech cart US (rev 1)
SPR128A-049 - Learning Window cart Number Power US
SPR128A-050 - Learning Window cart Alphabet Soup U.S.
SPR128A-055 - Learning Window cart IQ Builder U.S.
SPR128A-069 - Learning Window system french
SPR128A-069 - Learning Window system french
SPR128A-077 - Learning Window system US (rev 2)
SPR128A-080 - Learning Window system (German)
SPR128A-081 - Learning Window speech cart (German)
@ -140,7 +140,7 @@ void learnwin_state::machine_reset()
static MACHINE_CONFIG_START( learnwin )
/* video hardware */
// MCFG_SCREEN_ADD("screen", LCD)
// MCFG_SCREEN_ADD("screen", LCD)
// MCFG_SCREEN_REFRESH_RATE(60)
// MCFG_SCREEN_SIZE(48, 32)
// MCFG_SCREEN_VISIBLE_AREA(0,47,0,31)

View File

@ -114,7 +114,7 @@ Major Title 1990 M82-A-A + M82-B-A N
Hammerin' Harry (World ver) 1990 M81-A-B + M81-B-B N
Hammerin' H..(US)/ Daiku no Gensan 1990 M84-A-A + M84-C-A N
Daiku no Gensan 1990 M72 Y
Daiku no Gensan 1990 M82-A-A + M82-B-A N
Daiku no Gensan 1990 M82-A-A + M82-B-A N
Pound for Pound 1990 M85-A-B + M85-B N
Air Duel (World) 1990 M82-A-A + M82-B-A N
Air Duel (Japan) 1990 M72 Y

View File

@ -120,23 +120,23 @@ void magreel_state::machine_reset()
static MACHINE_CONFIG_START( magreel )
/* basic machine hardware - all information unknown */
// MCFG_CPU_ADD("maincpu",m68000,MAIN_CLOCK/12)
// MCFG_CPU_PROGRAM_MAP(magreel_map)
// MCFG_CPU_ADD("maincpu",m68000,MAIN_CLOCK/12)
// MCFG_CPU_PROGRAM_MAP(magreel_map)
/* video hardware */
// MCFG_SCREEN_ADD("screen", RASTER)
// MCFG_SCREEN_ADD("screen", RASTER)
// MCFG_SCREEN_REFRESH_RATE(60)
// MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500))
// MCFG_SCREEN_UPDATE_DRIVER(magreel_state, screen_update)
// MCFG_SCREEN_UPDATE_DRIVER(magreel_state, screen_update)
// MCFG_SCREEN_SIZE(32*8, 32*8)
// MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
// MCFG_SCREEN_RAW_PARAMS(MAIN_CLOCK/2, 442, 0, 320, 264, 0, 240) /* generic NTSC video timing at 320x240 */
// MCFG_SCREEN_PALETTE("palette")
// MCFG_SCREEN_RAW_PARAMS(MAIN_CLOCK/2, 442, 0, 320, 264, 0, 240) /* generic NTSC video timing at 320x240 */
// MCFG_SCREEN_PALETTE("palette")
// MCFG_GFXDECODE_ADD("gfxdecode", "palette", magreel)
// MCFG_GFXDECODE_ADD("gfxdecode", "palette", magreel)
// MCFG_PALETTE_ADD("palette", 8)
// MCFG_PALETTE_INIT_OWNER(magreel_state, magreel)
// MCFG_PALETTE_ADD("palette", 8)
// MCFG_PALETTE_INIT_OWNER(magreel_state, magreel)
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
@ -151,14 +151,14 @@ MACHINE_CONFIG_END
ROM_START( magreel ) // roms have not been looked at
ROM_REGION( 0x1000000, "maincpu", ROMREGION_ERASE00 )
ROM_LOAD( "m27c160.ic3", 0x000000, 0x200000, CRC(707a835a) SHA1(4edbb2279298f330514512147166b9382c79861d) )
ROM_LOAD( "m27c160.ic4", 0x200000, 0x200000, CRC(d5590a3c) SHA1(69dacb370b630fd7fee3ddd4beeb34a336dd2d16) )
ROM_LOAD( "m27c160.ic5", 0x400000, 0x200000, CRC(72da9809) SHA1(19516432c4cfc33c3db20aab0c64fafb72ed1a19) )
ROM_LOAD( "m27c160.ic6", 0x600000, 0x200000, CRC(0f3274d0) SHA1(1abb45ebc74a09f1832cf80775a35966e8d5cd84) )
ROM_LOAD( "mx29f161.ic24",0x800000, 0x200000, CRC(61accab0) SHA1(0fee6bf6071849d1b00fbfc248ab654a8abc3b99) )
ROM_LOAD( "m27c800ic18", 0xa00000, 0x100000, CRC(2af3d8e7) SHA1(729cd2c1011d8018cf8d77c2d118d1815e30f475) )
ROM_LOAD( "m28c64.ic19", 0xb00000, 0x002000, CRC(d0238e5c) SHA1(513bb97487d33c3b844877104bb2af3220851583) )
ROM_LOAD( "m28c64.ic20", 0xb02000, 0x002000, CRC(4e6abd42) SHA1(5b1741b755f0fddd94e16d41d5d39a03f37fb23b) )
ROM_LOAD( "m27c160.ic3", 0x000000, 0x200000, CRC(707a835a) SHA1(4edbb2279298f330514512147166b9382c79861d) )
ROM_LOAD( "m27c160.ic4", 0x200000, 0x200000, CRC(d5590a3c) SHA1(69dacb370b630fd7fee3ddd4beeb34a336dd2d16) )
ROM_LOAD( "m27c160.ic5", 0x400000, 0x200000, CRC(72da9809) SHA1(19516432c4cfc33c3db20aab0c64fafb72ed1a19) )
ROM_LOAD( "m27c160.ic6", 0x600000, 0x200000, CRC(0f3274d0) SHA1(1abb45ebc74a09f1832cf80775a35966e8d5cd84) )
ROM_LOAD( "mx29f161.ic24",0x800000, 0x200000, CRC(61accab0) SHA1(0fee6bf6071849d1b00fbfc248ab654a8abc3b99) )
ROM_LOAD( "m27c800ic18", 0xa00000, 0x100000, CRC(2af3d8e7) SHA1(729cd2c1011d8018cf8d77c2d118d1815e30f475) )
ROM_LOAD( "m28c64.ic19", 0xb00000, 0x002000, CRC(d0238e5c) SHA1(513bb97487d33c3b844877104bb2af3220851583) )
ROM_LOAD( "m28c64.ic20", 0xb02000, 0x002000, CRC(4e6abd42) SHA1(5b1741b755f0fddd94e16d41d5d39a03f37fb23b) )
ROM_END
GAME( 199?, magreel, 0, magreel, magreel, magreel_state, 0, ROT0, "Play System", "Magic Reels", MACHINE_IS_SKELETON )

View File

@ -403,7 +403,7 @@ WRITE32_MEMBER(midvunit_state::midvunit_wheel_board_w)
m_wheel_board_u8_latch |= BIT(data, 2) << 4; // WA2; C for U9
m_wheel_board_u8_latch |= BIT(data, 3) << 3; // WA3; G2B for U9
}
if (!BIT(data, 9))
{
logerror("Wheel board (U13 74HC245; DCS) = %02X\n", data & 0xFF);
@ -475,7 +475,7 @@ WRITE32_MEMBER(midvunit_state::midvunit_wheel_board_w)
logerror("Wheel board (U14 74HC574; DCS Control) = %02X\n", arg);
break;
case 1: // GALCTLZ
logerror("Wheel board (U19 PAL22V10; Galil Control) = %02X\n", arg);
logerror("Wheel board (U19 PAL22V10; Galil Control) = %02X\n", arg);
break;
case 2: // ATODWRZ
logerror("Wheel board (ATODWRZ) = %02X\n", arg);
@ -501,7 +501,7 @@ WRITE32_MEMBER(midvunit_state::midvunit_wheel_board_w)
}
}
}
m_wheel_board_last = data;
}

View File

@ -892,9 +892,9 @@ static INPUT_PORTS_START( mlanding )
// despite what the service mode claims limits are really active low.
PORT_START("LIMIT0")
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER("yokectrl", taitoio_yoke_device, handle_right_r )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER("yokectrl", taitoio_yoke_device, slot_up_r )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER("yokectrl", taitoio_yoke_device, slot_up_r )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER("yokectrl", taitoio_yoke_device, slot_down_r )
PORT_START("LIMIT1")
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER("yokectrl", taitoio_yoke_device, handle_down_r )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER("yokectrl", taitoio_yoke_device, handle_left_r )
@ -938,11 +938,11 @@ static MACHINE_CONFIG_START( mlanding )
MCFG_DEVICE_ADD("tc0140syt", TC0140SYT, 0)
MCFG_TC0140SYT_MASTER_CPU("maincpu")
MCFG_TC0140SYT_SLAVE_CPU("audiocpu")
MCFG_QUANTUM_TIME(attotime::from_hz(600))
MCFG_TAITOIO_YOKE_ADD("yokectrl")
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)

View File

@ -44,7 +44,7 @@
#include "mmodular.lh"
class mmodular_state : public driver_device
class mmodular_state : public driver_device
{
public:
mmodular_state(const machine_config &mconfig, device_type type, const char *tag)
@ -91,9 +91,9 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START(van16_mem, AS_PROGRAM, 16, mmodular_state)
AM_RANGE( 0x000000, 0x03ffff ) AM_ROM
// AM_RANGE( 0xe80004, 0xe80005 ) AM_WRITE(write_unknown2 ) // Bavaria sensors
// AM_RANGE( 0xe80002, 0xe80003 ) AM_READ(read_unknown1 ) // Bavaria sensors
// AM_RANGE( 0xe80006, 0xe80007 ) AM_READ(read_unknown3 ) // Bavaria sensors
// AM_RANGE( 0xe80004, 0xe80005 ) AM_WRITE(write_unknown2 ) // Bavaria sensors
// AM_RANGE( 0xe80002, 0xe80003 ) AM_READ(read_unknown1 ) // Bavaria sensors
// AM_RANGE( 0xe80006, 0xe80007 ) AM_READ(read_unknown3 ) // Bavaria sensors
AM_IMPORT_FROM(alm16_mem)
ADDRESS_MAP_END
@ -118,9 +118,9 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START(van32_mem, AS_PROGRAM, 32, mmodular_state)
AM_RANGE( 0x00000000, 0x0003ffff ) AM_ROM
// AM_RANGE( 0x98000008, 0x9800000b ) AM_WRITE(write_unknown2 ) // Bavaria sensors
// AM_RANGE( 0x98000004, 0x98000007 ) AM_READ(read_unknown1 ) // Bavaria sensors
// AM_RANGE( 0x9800000c, 0x9800000f ) AM_READ(read_unknown3 ) // Bavaria sensors
// AM_RANGE( 0x98000008, 0x9800000b ) AM_WRITE(write_unknown2 ) // Bavaria sensors
// AM_RANGE( 0x98000004, 0x98000007 ) AM_READ(read_unknown1 ) // Bavaria sensors
// AM_RANGE( 0x9800000c, 0x9800000f ) AM_READ(read_unknown3 ) // Bavaria sensors
AM_IMPORT_FROM(alm32_mem)
ADDRESS_MAP_END
@ -137,9 +137,9 @@ static ADDRESS_MAP_START(gen32_mem, AS_PROGRAM, 32, mmodular_state)
AM_RANGE( 0xe0000000, 0xe0000003 ) AM_DEVWRITE8("display", mephisto_display_modul_device, latch_w, 0xff000000)
AM_RANGE( 0xe0000010, 0xe0000013 ) AM_DEVWRITE8("display", mephisto_display_modul_device, io_w, 0xff000000)
// AM_RANGE( 0xd8000008, 0xd800000b ) AM_WRITE(write_unknown2 ) // Bavaria sensors
// AM_RANGE( 0xd8000004, 0xd8000007 ) AM_READ(read_unknown1 ) // Bavaria sensors
// AM_RANGE( 0xd800000c, 0xd800000f ) AM_READ(read_unknown3 ) // Bavaria sensors
// AM_RANGE( 0xd8000008, 0xd800000b ) AM_WRITE(write_unknown2 ) // Bavaria sensors
// AM_RANGE( 0xd8000004, 0xd8000007 ) AM_READ(read_unknown1 ) // Bavaria sensors
// AM_RANGE( 0xd800000c, 0xd800000f ) AM_READ(read_unknown3 ) // Bavaria sensors
AM_RANGE( 0x40000000, 0x4007ffff ) AM_RAM
AM_RANGE( 0x80000000, 0x8003ffff ) AM_RAM
@ -272,7 +272,7 @@ static MACHINE_CONFIG_START( gen32 )
MCFG_CPU_ADD("maincpu", M68030, XTAL_33_333MHz)
MCFG_CPU_PROGRAM_MAP(gen32_mem)
MCFG_CPU_PERIODIC_INT_DRIVER(mmodular_state, irq2_line_hold, 375)
MCFG_NVRAM_ADD_0FILL("nvram")
MCFG_MEPHISTO_SENSORS_BOARD_ADD("board")

View File

@ -20,7 +20,7 @@ TODO:
Notes:
- Night Gal Summer player hand is at $f801 onward
*******************************************************************************************/
#include "emu.h"
@ -90,8 +90,8 @@ public:
DECLARE_READ8_MEMBER(input_2p_r);
DECLARE_WRITE8_MEMBER(output_w);
DECLARE_WRITE8_MEMBER(sexygal_audioff_w);
DECLARE_WRITE8_MEMBER(sexygal_audionmi_w);
DECLARE_WRITE8_MEMBER(sexygal_audionmi_w);
DECLARE_DRIVER_INIT(ngalsumr);
DECLARE_DRIVER_INIT(royalqn);
DECLARE_WRITE8_MEMBER(ngalsumr_prot_latch_w);
@ -127,7 +127,7 @@ protected:
TIMER_CALLBACK_MEMBER( z80_wait_ack_cb );
std::unique_ptr<bitmap_ind16> m_tmp_bitmap;
private:
/* video-related */
uint8_t m_blit_raw_data[3];
@ -137,7 +137,7 @@ private:
uint8_t m_z80_latch;
uint8_t m_mux_data;
uint8_t m_pal_bank;
uint8_t m_sexygal_audioff;
};
@ -371,7 +371,7 @@ WRITE8_MEMBER(nightgal_state::sexygal_audioff_w)
m_audiocpu->set_input_line(INPUT_LINE_NMI, PULSE_LINE);
// bit 4 used, audio cpu reset line?
m_sexygal_audioff = data;
}
@ -434,7 +434,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( sexygal_audio_map, AS_PROGRAM, 8, nightgal_state )
AM_RANGE(0x0000, 0x007f) AM_RAM
AM_RANGE(0x2000, 0x207f) AM_RAM AM_SHARE("sound_ram")
AM_RANGE(0x3000, 0x3000) AM_WRITE(sexygal_audionmi_w)
AM_RANGE(0xc000, 0xffff) AM_ROM AM_REGION("audiorom", 0)
@ -782,7 +782,7 @@ static MACHINE_CONFIG_DERIVED( sexygal, royalqn )
MCFG_CPU_ADD("audiocpu", NSC8105, MASTER_CLOCK / 8)
MCFG_CPU_PROGRAM_MAP(sexygal_audio_map)
MCFG_DEVICE_REMOVE("aysnd")
MCFG_SOUND_ADD("ymsnd", YM2203, MASTER_CLOCK / 8)
@ -812,7 +812,7 @@ static MACHINE_CONFIG_DERIVED( sgaltrop, sexygal )
MCFG_CPU_MODIFY("sub")
MCFG_CPU_PROGRAM_MAP(sgaltrop_nsc_map)
MCFG_DEVICE_REMOVE("audiocpu")
MACHINE_CONFIG_END
@ -1009,7 +1009,7 @@ ROM_START( sexygal )
ROM_REGION( 0x4000, "audiorom", 0)
ROM_LOAD( "14.s6b", 0x00000, 0x04000, CRC(b4a2497b) SHA1(7231f57b4548899c886625e883b9972c0f30e9f2) )
ROM_REGION( 0x4000, "samples", 0 )
ROM_LOAD( "13.s7b", 0x00000, 0x04000, CRC(5eb75f56) SHA1(b7d81d786d1ac8d65a6a122140954eb89d76e8b4) )
@ -1128,7 +1128,7 @@ ROM_START( ngalsumr )
ROM_FILL( 0x2c000, 0x04000, 0x33 )
ROM_FILL( 0x30000, 0x10000, 0x44 )
ROM_REGION( 0x20, "proms", 0 )
ROM_LOAD( "ng2.6u", 0x00, 0x20, CRC(0162a24a) SHA1(f7e1623c5bca3725f2e59ae2096b9bc42e0363bf) )
ROM_END
@ -1217,37 +1217,37 @@ WRITE8_MEMBER(nightgal_state::ngalsumr_prot_latch_w)
}
READ8_MEMBER(nightgal_state::ngalsumr_prot_value_r)
{
{
switch(m_z80_latch)
{
{
case 0:
return 0;
case 1:
return 0x14;
case 0x4: // cpu hand height on winning
return 62;
case 0x3: // game over msg height
return 12;
case 0xf: // game over msg width
return 255;
case 0xa: // girl width (title screen)
return 0x40;
case 0xb: // girl height (title screen)
return 0x60;
case 0xc: // score table blink width
return 120;
case 0x2: // score table blink height
return 8;
case 0x6: // player hand height on losing
return 28;
case 0x7: // player discards height on losing
return 38;
case 0xd: // player discards width on losing
return 142;
case 0xe: // player hand width on losing
@ -1255,7 +1255,7 @@ READ8_MEMBER(nightgal_state::ngalsumr_prot_value_r)
case 0xff:
return 0;
}
logerror("ngalsumr protection device unemulated value latched = %02x\n",m_z80_latch);
return 0;

View File

@ -6056,8 +6056,8 @@ ROM_END
ROM_START( eeekk ) // Pac-Man PCB conversion kit. Includes a small daughtercard (2 roms + 4 PLDs, plugs in through the Z80 socket), 2 roms + 2 BPROMs
ROM_REGION( 0x20000, "maincpu", 0 )
ROM_LOAD( "u_2_eeekk_pg03094.u2", 0x0000, 0x2000, CRC(701e37f2) SHA1(15bbd983e9112ce15dd229f126f2bccfa8b9807c) ) // encrypted - located on daughtercard
ROM_LOAD( "u_3_eeekk_pg03094.u3", 0x2000, 0x2000, CRC(bcf524ae) SHA1(be2a1a2984ea1439c63d8c353e4ae85bf42c8a55) ) // encrypted - located on daughtercard
ROM_LOAD( "u_2_eeekk_pg03094.u2", 0x0000, 0x2000, CRC(701e37f2) SHA1(15bbd983e9112ce15dd229f126f2bccfa8b9807c) ) // encrypted - located on daughtercard
ROM_LOAD( "u_3_eeekk_pg03094.u3", 0x2000, 0x2000, CRC(bcf524ae) SHA1(be2a1a2984ea1439c63d8c353e4ae85bf42c8a55) ) // encrypted - located on daughtercard
ROM_REGION( 0x2000, "gfx1", 0 )
ROM_LOAD( "5_e_eeekk_pg03094.5e", 0x0000, 0x1000, CRC(780183a8) SHA1(8466d75d79b3c87db143f5c2e8b58dad1d2e501c) )

View File

@ -74,12 +74,12 @@
- alice: doesn't set bitmap interlace properly, can't do disk swaps via the File Manager;
- applecl1: can't pass hands apparently;
- arctic, fsmoon: Doesn't detect sound board (tied to 0x00ec ports);
- arcus2: has intro glitches;
- artjigs*: some text doesn't appear? Namely under the puzzles and when you clear one;
- arcus2: has intro glitches;
- artjigs*: some text doesn't appear? Namely under the puzzles and when you clear one;
- atragon: HDD install disk swap doesn't work?
- asokokof: black screen with BGM, executes invalid opcode (previous note "waits at 0x225f6");
- arquelph: beeps out at initial sound check, no voice samples, extra sound board tested;
- akitsuka: could not setup "initial data" (regression);
- akitsuka: could not setup "initial data" (regression);
- bandkun: can't install to HDD, has unemulated sound boards in settings (Roland MT-32 & D-10/D-110, Kawai MSB-98, Korg M1, MIDI);
- biblems2: initial GLODIA logo uses raster effects?
- bishohzx: Soft House logo uses pseudo-ROZ effect (?), no title screen graphics?
@ -659,16 +659,16 @@ READ8_MEMBER(pc9801_state::f0_r)
if(offset == 0)
{
// iterate thru all devices to check if an AMD98 is present
for (pc9801_amd98_device &amd98 : device_type_iterator<pc9801_amd98_device>(machine().root_device()))
for (pc9801_amd98_device &amd98 : device_type_iterator<pc9801_amd98_device>(machine().root_device()))
{
logerror("Read AMD98 ID %s\n",amd98.tag());
return 0x18; // return the right ID
}
logerror("Read port 0 from 0xf0 (AMD98 check?)\n");
return 0; // card not present
}
return 0xff;
}

View File

@ -25,7 +25,7 @@ NOTE! switches 1, 3 & 5 must be ON or the game will not boot.
TODO:
- A timer apparently expires when beating stage 4 (signalled by a long beeping sound).
Player needs to insert another credit and press start button (?) in order to continue.
Is this timer supposed to be shown on screen or there are additional 7-LEDs not handled?
Is this timer supposed to be shown on screen or there are additional 7-LEDs not handled?
***************************************************************************/
@ -178,7 +178,7 @@ WRITE8_MEMBER(pengadvb_state::pengadvb_ppi_port_a_w)
}
READ8_MEMBER(pengadvb_state::pengadvb_ppi_port_b_r)
{
{
// TODO: dipswitch
switch (m_kb_matrix_row)
{

View File

@ -2,7 +2,7 @@
// copyright-holders:Sandro Ronco
/**************************************************************************************************
Mephisto Polgar and RISC
Mephisto Polgar and RISC
**************************************************************************************************/
@ -64,7 +64,7 @@ private:
// ARM bootstrap HLE
void arm_bootstrap(uint8_t data);
TIMER_CALLBACK_MEMBER(clean_com_flag) { m_com_latch0 &= ~0x01; }
TIMER_CALLBACK_MEMBER(clean_com_flag) { m_com_latch0 &= ~0x01; }
emu_timer* m_arm_bootstrap_timer;
uint16_t m_com_offset;
@ -143,10 +143,10 @@ ADDRESS_MAP_END
WRITE8_MEMBER(mephisto_risc_state::bank_w)
{
if (offset == 0 && (data & 0x01)) m_bank &= ~0x01;
else if (offset == 0 && !(data & 0x01)) m_bank |= 0x01;
else if (offset == 1 && (data & 0x01)) m_bank |= 0x02;
else if (offset == 1 && !(data & 0x01)) m_bank &= ~0x02;
if (offset == 0 && (data & 0x01)) m_bank &= ~0x01;
else if (offset == 0 && !(data & 0x01)) m_bank |= 0x01;
else if (offset == 1 && (data & 0x01)) m_bank |= 0x02;
else if (offset == 1 && !(data & 0x01)) m_bank &= ~0x02;
m_rombank->set_entry(m_bank);
}
@ -170,7 +170,7 @@ void mephisto_risc_state::arm_bootstrap(uint8_t data)
m_com_bits = 0;
m_com_data = 0;
m_com_offset++;
if (m_com_offset == 0x100)
m_subcpu->set_input_line(INPUT_LINE_RESET, CLEAR_LINE);
}
@ -254,7 +254,7 @@ WRITE8_MEMBER(mephisto_milano_state::milano_io_w)
for(int i=0; i<16; i++)
output().set_led_value(i, 0);
}
m_display->io_w(space, offset, data & 0x0f);
}
@ -335,14 +335,14 @@ ADDRESS_MAP_END
static INPUT_PORTS_START( polgar )
PORT_START("KEY")
PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("Trn") PORT_CODE(KEYCODE_T)
PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("Info") PORT_CODE(KEYCODE_I)
PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("Mem") PORT_CODE(KEYCODE_M)
PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("Pos") PORT_CODE(KEYCODE_O)
PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("LEV") PORT_CODE(KEYCODE_L)
PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("FCT") PORT_CODE(KEYCODE_F)
PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("ENT") PORT_CODE(KEYCODE_ENTER)
PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("CL") PORT_CODE(KEYCODE_BACKSPACE)
PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("Trn") PORT_CODE(KEYCODE_T)
PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("Info") PORT_CODE(KEYCODE_I)
PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("Mem") PORT_CODE(KEYCODE_M)
PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("Pos") PORT_CODE(KEYCODE_O)
PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("LEV") PORT_CODE(KEYCODE_L)
PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("FCT") PORT_CODE(KEYCODE_F)
PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("ENT") PORT_CODE(KEYCODE_ENTER)
PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("CL") PORT_CODE(KEYCODE_BACKSPACE)
INPUT_PORTS_END
static INPUT_PORTS_START( monteciv )
@ -422,11 +422,11 @@ static MACHINE_CONFIG_DERIVED( polgar10, polgar )
MACHINE_CONFIG_END
static MACHINE_CONFIG_START( mrisc )
MCFG_CPU_ADD("maincpu", M65C02, XTAL_10MHz / 4) // G65SC02
MCFG_CPU_ADD("maincpu", M65C02, XTAL_10MHz / 4) // G65SC02
MCFG_CPU_PROGRAM_MAP(mrisc_mem)
MCFG_CPU_PERIODIC_INT_DRIVER(mephisto_risc_state, irq0_line_hold, (double)XTAL_10MHz / (1 << 14))
MCFG_CPU_ADD("subcpu", ARM, XTAL_14MHz) // VY86C010
MCFG_CPU_ADD("subcpu", ARM, XTAL_14MHz) // VY86C010
MCFG_CPU_PROGRAM_MAP(mrisc_arm_mem)
MCFG_ARM_COPRO(VL86C020)
@ -475,7 +475,7 @@ MACHINE_CONFIG_END
ROM_START(polgar)
ROM_REGION(0x10000, "maincpu", 0)
ROM_LOAD("polgar.bin", 0x0000, 0x10000, CRC(88d55c0f) SHA1(e86d088ec3ac68deaf90f6b3b97e3e31b1515913))
ROM_END
ROM_END
ROM_START(polgar10)
ROM_REGION(0x10000, "maincpu", 0)
@ -483,7 +483,7 @@ ROM_START(polgar10)
ROMX_LOAD("polg_101.bin", 0x00000, 0x10000, CRC(8fb6afa4) SHA1(d1cf868302a665ff351686b26a149ced0045fc81), ROM_BIOS(1))
ROM_SYSTEM_BIOS( 1, "v100", "V10.0" )
ROMX_LOAD("polgar10.bin", 0x00000, 0x10000, CRC(7c1960d4) SHA1(4d15b51f9e6f7943815945cd56078ca512a964d4), ROM_BIOS(2))
ROM_END
ROM_END
ROM_START(mrisc)
ROM_REGION(0x20000, "maincpu", 0)
@ -494,7 +494,7 @@ ROM_START(mrisc)
ROM_LOAD32_BYTE( "74s288.2", 0x01, 0x20, NO_DUMP )
ROM_LOAD32_BYTE( "74s288.3", 0x02, 0x20, NO_DUMP )
ROM_LOAD32_BYTE( "74s288.4", 0x03, 0x20, NO_DUMP )
ROM_END
ROM_END
ROM_START(mrisc2)
ROM_REGION(0x20000, "maincpu", 0)
@ -505,7 +505,7 @@ ROM_START(mrisc2)
ROM_LOAD32_BYTE( "74s288.2", 0x01, 0x20, NO_DUMP )
ROM_LOAD32_BYTE( "74s288.3", 0x02, 0x20, NO_DUMP )
ROM_LOAD32_BYTE( "74s288.4", 0x03, 0x20, NO_DUMP )
ROM_END
ROM_END
ROM_START(academy)
ROM_REGION(0x10000, "maincpu", 0)

View File

@ -724,25 +724,25 @@ ROM_END
ROM_START( popeyejo )
ROM_REGION( 0x8000, "maincpu", 0 )
ROM_LOAD( "tpp1-c.2a.bin", 0x0000, 0x1000, CRC(4176761e) SHA1(6977da294e88bb2d08ce02901f35c99df69dd6a5) )
ROM_LOAD( "tpp1-c.2a.bin", 0x0000, 0x1000, CRC(4176761e) SHA1(6977da294e88bb2d08ce02901f35c99df69dd6a5) )
ROM_LOAD( "tpp1-c.2b.bin", 0x1000, 0x1000, CRC(2cc76c54) SHA1(56b9970c930e83dc9d5c6d5581160c42382f5c89) ) // diff from popeyej
ROM_LOAD( "TPP1-C.2C.2732", 0x2000, 0x1000, CRC(b1c18b7e) SHA1(12a067e2914a9d2051b2507de0673ac4a5198329) )
// ROM_LOAD( "tpp1-c.2c.bin", 0x2000, 0x1000, CRC(d3061b82) SHA1(52fe1ab8f1dc79383894eb3c3a8b4039ab7dfaf0) )
ROM_LOAD( "TPP1-C.2C.2732", 0x2000, 0x1000, CRC(b1c18b7e) SHA1(12a067e2914a9d2051b2507de0673ac4a5198329) )
// ROM_LOAD( "tpp1-c.2c.bin", 0x2000, 0x1000, CRC(d3061b82) SHA1(52fe1ab8f1dc79383894eb3c3a8b4039ab7dfaf0) )
// Actual Dump had Fixed Bits but when compared the stuck bit accounted for all the errors compared to popeyej's 2C, so we use that one.
ROM_LOAD( "tpp1-c.2d.bin", 0x3000, 0x1000, CRC(79d0e988) SHA1(7c8ee46918996dab39b417e4361edef259935dbf) )
ROM_LOAD( "tpp1-c.2e.bin", 0x4000, 0x1000, CRC(74854ca1) SHA1(9b9e5112e32105a9726fff23162be38b5b9e3f7b) )
ROM_LOAD( "tpp1-c.2f.bin", 0x5000, 0x1000, CRC(e2b08891) SHA1(e73b1d355f543772c79e1970426e3e9696b2b23c) )
ROM_LOAD( "tpp1-c.2g.bin", 0x6000, 0x1000, CRC(b74a1a97) SHA1(3a51b08f80d378403b1e0df8446057b69157ea9b) )
ROM_LOAD( "tpp1-c.2d.bin", 0x3000, 0x1000, CRC(79d0e988) SHA1(7c8ee46918996dab39b417e4361edef259935dbf) )
ROM_LOAD( "tpp1-c.2e.bin", 0x4000, 0x1000, CRC(74854ca1) SHA1(9b9e5112e32105a9726fff23162be38b5b9e3f7b) )
ROM_LOAD( "tpp1-c.2f.bin", 0x5000, 0x1000, CRC(e2b08891) SHA1(e73b1d355f543772c79e1970426e3e9696b2b23c) )
ROM_LOAD( "tpp1-c.2g.bin", 0x6000, 0x1000, CRC(b74a1a97) SHA1(3a51b08f80d378403b1e0df8446057b69157ea9b) )
ROM_LOAD( "tpp1-c.2h.bin", 0x7000, 0x1000, CRC(a1dcf54d) SHA1(de2574c0437eba6d01658f8936a1f9285a362b4b) ) // diff from popeyej
ROM_REGION( 0x0800, "gfx1", 0 )
ROM_LOAD( "tpp1-v.3h.bin", 0x0000, 0x0800, CRC(fa52a752) SHA1(45b8f52e4c15f9fe761d7c7f7109b4a70ada0cda) )
ROM_REGION( 0x8000, "gfx2", 0 )
ROM_LOAD( "tpp1-e.1e.bin", 0x0000, 0x2000, CRC(90889e1d) SHA1(11af14ce7e2583a1aced942031284219eaf63e66) )
ROM_LOAD( "tpp1-e.2e.bin", 0x2000, 0x2000, CRC(ed06af50) SHA1(68db835d9747e11ca85d0dd945e52bc1f538e251) )
ROM_LOAD( "tpp1-e.3e.bin", 0x4000, 0x2000, CRC(72b258f2) SHA1(a1fe2a380f3c46bd54043dc001c168734873d854) )
ROM_LOAD( "tpp1-e.5e.bin", 0x6000, 0x2000, CRC(7355ff16) SHA1(15d3cb701ad360a36c26eb5c34b2e89b5972ba82) )
ROM_LOAD( "tpp1-e.1e.bin", 0x0000, 0x2000, CRC(90889e1d) SHA1(11af14ce7e2583a1aced942031284219eaf63e66) )
ROM_LOAD( "tpp1-e.2e.bin", 0x2000, 0x2000, CRC(ed06af50) SHA1(68db835d9747e11ca85d0dd945e52bc1f538e251) )
ROM_LOAD( "tpp1-e.3e.bin", 0x4000, 0x2000, CRC(72b258f2) SHA1(a1fe2a380f3c46bd54043dc001c168734873d854) )
ROM_LOAD( "tpp1-e.5e.bin", 0x6000, 0x2000, CRC(7355ff16) SHA1(15d3cb701ad360a36c26eb5c34b2e89b5972ba82) )
ROM_REGION( 0x40, "proms", 0 )
ROM_LOAD( "TPP1-T.4A.82S123", 0x0000, 0x0020, CRC(375e1602) SHA1(d84159a0af5db577821c43712bc733329a43af80) ) /* background palette */

View File

@ -856,7 +856,7 @@ static SLOT_INTERFACE_START(rainbow_floppies)
SLOT_INTERFACE("525qd", FLOPPY_525_QD) // QD means 80 tracks with DD data rate (single or double sided).
SLOT_INTERFACE("525dd", FLOPPY_525_DD) // mimic a 5.25" PC (40 track) drive. Requires IDrive5.SYS.
SLOT_INTERFACE("35dd", FLOPPY_35_DD) // mimic 3.5" PC drive (720K, double density). Use Impdrv3.SYS.
SLOT_INTERFACE("525ssdd", FLOPPY_525_SSDD) // to read a single sided, (160K) PC-DOS 1 disk with MediaMaster
SLOT_INTERFACE("525ssdd", FLOPPY_525_SSDD) // to read a single sided, (160K) PC-DOS 1 disk with MediaMaster
SLOT_INTERFACE_END
void rainbow_state::machine_start()
@ -1224,7 +1224,7 @@ void rainbow_state::machine_reset()
}
}
if (m_inp6->read() == 0x00) // Unmap port if Corvus not present
if (m_inp6->read() == 0x00) // Unmap port if Corvus not present
io.unmap_readwrite(0x20, 0x20);
// *********** FLOPPY DISK CONTROLLER [ NOT OPTIONAL ]
@ -1424,7 +1424,7 @@ WRITE8_MEMBER(rainbow_state::printer_bitrate_w)
WRITE_LINE_MEMBER(rainbow_state::com8116_a_fr_w)
{
m_mpsc->rxca_w(state);
m_mpsc->rxca_w(state);
}
WRITE_LINE_MEMBER(rainbow_state::com8116_a_ft_w)
@ -2327,7 +2327,7 @@ READ8_MEMBER(rainbow_state::z80_generalstat_r)
if ( fdc_ready && ((fdc_status & 0x40) == 0) && m_POWER_GOOD )
fdc_write_gate = 1; // "valid only when drive is selected" !
}
}
int data = (
((fdc_step) ? 0x00 : 0x80) |
@ -2441,9 +2441,9 @@ WRITE8_MEMBER(rainbow_state::z80_diskcontrol_w)
m_floppy->ss_w((data & 0x20) ? 1 : 0); // RX50 board in Rainbow has 'side select'
m_floppy->set_rpm(300.);
if ( !m_floppy->exists() && (selected_drive > 1) )
if ( !m_floppy->exists() && (selected_drive > 1) )
popmessage("NO IMAGE ATTACHED TO %c\n", 65 + selected_drive );
}
}
if(selected_drive < MAX_FLOPPIES)
{
@ -2453,9 +2453,9 @@ WRITE8_MEMBER(rainbow_state::z80_diskcontrol_w)
m_fdc->set_force_ready(force_ready); // 1 : assert DRIVE READY on FDC (diagnostic override)
if (selected_drive < 2)
{ data |= 8;
{ data |= 8;
enable_start = 0;
disable_start = 2;
disable_start = 2;
}
else
{
@ -2513,8 +2513,8 @@ IRQ_CALLBACK_MEMBER(rainbow_state::irq_callback)
m_crtc->MHFU(MHFU_RESET); // ...reset counter (also: DC012_W)
// Edstrom: "The call to m1_r() on line 2571 is not needed as the 7201 does not have an M1 input, instead it expects to get a software iack."
// if (i == IRQ_COMM_PTR_INTR_L)
// m_mpsc->m1_r(); // serial interrupt acknowledge
// if (i == IRQ_COMM_PTR_INTR_L)
// m_mpsc->m1_r(); // serial interrupt acknowledge
intnum = vectors[i] | m_irq_high;
break;

View File

@ -1115,7 +1115,7 @@ ROM_END
ROM_START( realbrkj )
ROM_REGION( 0x100000, "maincpu", 0 ) /* TMP68301 Code */
ROM_LOAD16_BYTE( "52302.1r", 0x000000, 0x080000, CRC(ab0379b0) SHA1(67af6670f2b37a7d4d6e03508f291f8ffe64d4cb) ) // sldh w/realbrko
ROM_LOAD16_BYTE( "52302.1r", 0x000000, 0x080000, CRC(ab0379b0) SHA1(67af6670f2b37a7d4d6e03508f291f8ffe64d4cb) ) // sldh w/realbrko
ROM_LOAD16_BYTE( "52301.2r", 0x000001, 0x080000, CRC(9cc1596e) SHA1(a598f18eaac1ed6943069e9500b07b77e263f0d0) ) // sldh w/realbrko
ROM_REGION( 0x800000, "gfx1", 0 ) /* Backgrounds */

View File

@ -3155,11 +3155,11 @@ READ16_MEMBER(jockeyc_state::mux_r)
{
switch ( m_mux & 0xf8 )
{
case 0x08: return (m_key2[0]->read() << 8) | m_key1[0]->read();
case 0x10: return (m_key2[1]->read() << 8) | m_key1[1]->read();
case 0x20: return (m_key2[2]->read() << 8) | m_key1[2]->read();
case 0x40: return (m_key2[3]->read() << 8) | m_key1[3]->read();
case 0x80: return (m_key2[4]->read() << 8) | m_key1[4]->read();
case 0x08: return (m_key2[0]->read() << 8) | m_key1[0]->read();
case 0x10: return (m_key2[1]->read() << 8) | m_key1[1]->read();
case 0x20: return (m_key2[2]->read() << 8) | m_key1[2]->read();
case 0x40: return (m_key2[3]->read() << 8) | m_key1[3]->read();
case 0x80: return (m_key2[4]->read() << 8) | m_key1[4]->read();
}
logerror("%06X: unknown key read, mux = %04x\n", space.device().safe_pc(), m_mux);
return 0xffff;

View File

@ -244,7 +244,7 @@ ADDRESS_MAP_END
WRITE8_MEMBER(smsbootleg_state::port08_w)
{
// logerror("port08_w %02x\n", data);
// logerror("port08_w %02x\n", data);
}
WRITE8_MEMBER(smsbootleg_state::port18_w)

View File

@ -6,12 +6,12 @@
2017-08-17 Skeleton driver.
Chips used:
Siemens SAB8085A-P
NEC D8251AFC * 2
NEC D4016C-3 * 4 + 2
ST M2764A-4F1 * 4
HD6845P
Chips used:
Siemens SAB8085A-P
NEC D8251AFC * 2
NEC D4016C-3 * 4 + 2
ST M2764A-4F1 * 4
HD6845P
****************************************************************************/
#include "emu.h"
@ -50,7 +50,7 @@ static MACHINE_CONFIG_START( sys9002 )
/* basic machine hardware */
MCFG_CPU_ADD("maincpu",I8085A, XTAL_2MHz) // XTAL not visible on images
MCFG_CPU_PROGRAM_MAP(sys9002_mem)
MCFG_CPU_IO_MAP(sys9002_io)
MCFG_CPU_IO_MAP(sys9002_io)
MACHINE_CONFIG_END
/* ROM definition */

View File

@ -724,13 +724,13 @@ static MACHINE_CONFIG_START( airsys )
MCFG_TC0220IOC_READ_7_CB(IOPORT("IN2"))
MCFG_TAITOIO_YOKE_ADD("yokectrl")
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
// MCFG_SCREEN_REFRESH_RATE(60)
// MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
// MCFG_SCREEN_SIZE(64*16, 32*16)
// MCFG_SCREEN_VISIBLE_AREA(0*16, 32*16-1, 3*16, 28*16-1)
// MCFG_SCREEN_REFRESH_RATE(60)
// MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
// MCFG_SCREEN_SIZE(64*16, 32*16)
// MCFG_SCREEN_VISIBLE_AREA(0*16, 32*16-1, 3*16, 28*16-1)
// Estimated, assume same as mlanding.cpp
MCFG_SCREEN_RAW_PARAMS(16000000, 640, 0, 512, 462, 3*16, 28*16)
MCFG_SCREEN_UPDATE_DRIVER(taitoair_state, screen_update_taitoair)
@ -803,7 +803,7 @@ ROM_START( topland )
ROM_REGION( 0x10000, "mechacpu", 0 )
ROM_LOAD( "b62_mecha.rom", 0x00000, 0x08000, NO_DUMP )
ROM_REGION( 0x100000, "gfx1", 0 ) /* 16x16 tiles */
ROM_LOAD16_BYTE( "b62-33.39", 0x000000, 0x20000, CRC(38786867) SHA1(7292e3fa69cad6494f2e8e7efa9c3f989bdf958d) )
ROM_LOAD16_BYTE( "b62-36.48", 0x000001, 0x20000, CRC(4259e76a) SHA1(eb0dc5d0a6f875e3b8335fb30d4c2ad3880c31b9) )
@ -957,7 +957,7 @@ ROM_START( ainfernoj )
ROM_REGION( 0x10000, "mechacpu", 0 )
ROM_LOAD( "c45_mecha.rom", 0x00000, 0x08000, NO_DUMP )
ROM_REGION( 0x100000, "gfx1", 0 ) /* 16x16 tiles */
ROM_LOAD16_BYTE( "c45-11.28", 0x000000, 0x20000, CRC(d9b4b77c) SHA1(69d570efa8146fb0a712ff45e77bda6fd85769f8) )
ROM_LOAD16_BYTE( "c45-15.40", 0x000001, 0x20000, CRC(d4610698) SHA1(5de519a23300d5b3b09ce7cf8c02a1a6b2fb985c) )

View File

@ -1454,7 +1454,7 @@ static ADDRESS_MAP_START( ghox_hd647180_mem_map, AS_PROGRAM, 8, toaplan2_state )
AM_RANGE(0x0fe00, 0x0ffff) AM_RAM // Internal 512 byte RAM
AM_RANGE(0x3fe00, 0x3ffff) AM_RAM // Relocated internal RAM (RMCR = 30)
AM_RANGE(0x40000, 0x407ff) AM_RAM AM_SHARE("shared_ram")
AM_RANGE(0x40000, 0x407ff) AM_RAM AM_SHARE("shared_ram")
AM_RANGE(0x80002, 0x80002) AM_READ_PORT("DSWA")
AM_RANGE(0x80004, 0x80004) AM_READ_PORT("DSWB")

View File

@ -1243,7 +1243,7 @@ Graphics: Actel A40MX04-F PL84
ROML00, ROMU00 - unpopulated
DRAM1: LG Semi GM71C18163 1M x16 EDO DRAM (SOJ44)
Both PCBs:
VROM1: Macronix MX27C2000 2MBit DIP32 EPROM

View File

@ -23,25 +23,25 @@ I8255 ports:
PortA 0:7 = pins 16 thru 23 of parallel port
PortB 0:7 = pins 6 thru 13 of parallel port
PortC =
0 = NC
1 = GND
2 = pin 5 of parallel port
3 = /RXINTEN
4 = pin 15 of parallel port
5 = pin 14 of parallel port through inverter
6 = ay-3-8910 enable (which pin? BC1?)
7 = input from parallel port pin 4 through inverter
0 = NC
1 = GND
2 = pin 5 of parallel port
3 = /RXINTEN
4 = pin 15 of parallel port
5 = pin 14 of parallel port through inverter
6 = ay-3-8910 enable (which pin? BC1?)
7 = input from parallel port pin 4 through inverter
AY-3-8910 I/O ports:
IOA is in output mode
IOA0-A5 = phoneme #
IOA6 = strobe (SC-01)
IOA7 = vochord control, 0 = off, 1 = on
IOB is in input mode
IOB0-IOB7 = dip switches
IOA is in output mode
IOA0-A5 = phoneme #
IOA6 = strobe (SC-01)
IOA7 = vochord control, 0 = off, 1 = on
IOB is in input mode
IOB0-IOB7 = dip switches
I8251 UART:
RESET is taken from the same inverter that resets the counters
RESET is taken from the same inverter that resets the counters
Things to be looked at:
- Serial doesn't work, so has been disabled.

View File

@ -241,7 +241,7 @@ public:
DECLARE_VIDEO_START(lockload);
void dragngun_init_common();
DECLARE_INPUT_CHANGED_MEMBER(lockload_gun_trigger);
TIMER_DEVICE_CALLBACK_MEMBER(lockload_vblank_irq_gen);
uint32_t screen_update_dragngun(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);

View File

@ -196,7 +196,7 @@ class towns_state : public driver_device
uint8_t m_pit_out2;
uint8_t m_timer0;
uint8_t m_timer1;
uint8_t m_serial_irq_source;
uint8_t m_serial_irq_enable; // RS232 interrupt control
@ -211,7 +211,7 @@ class towns_state : public driver_device
RXRDY_IRQ_ENABLE = 0x02,
TXRDY_IRQ_ENABLE = 0x01
};
emu_timer* m_towns_wait_timer;
emu_timer* m_towns_status_timer;
emu_timer* m_towns_cdda_timer;
@ -297,7 +297,7 @@ class towns_state : public driver_device
DECLARE_WRITE_LINE_MEMBER(mb8877a_irq_w);
DECLARE_WRITE_LINE_MEMBER(mb8877a_drq_w);
DECLARE_WRITE_LINE_MEMBER(pit_out2_changed);
DECLARE_WRITE_LINE_MEMBER(towns_serial_irq);
DECLARE_WRITE_LINE_MEMBER(towns_rxrdy_irq);
DECLARE_WRITE_LINE_MEMBER(towns_txrdy_irq);

View File

@ -135,7 +135,7 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
required_device<screen_device> m_screen;
DECLARE_WRITE_LINE_MEMBER( write_uart_clock );
DECLARE_WRITE8_MEMBER(rtc_w);
DECLARE_WRITE8_MEMBER(dmapg4_w);
@ -193,7 +193,7 @@ public:
DECLARE_WRITE8_MEMBER(pc9801rs_knjram_w);
DECLARE_WRITE8_MEMBER(pc9801rs_bank_w);
DECLARE_READ8_MEMBER(f0_r);
DECLARE_READ8_MEMBER(a20_ctrl_r);
DECLARE_WRITE8_MEMBER(a20_ctrl_w);
DECLARE_READ8_MEMBER(fdc_mode_ctrl_r);
@ -294,7 +294,7 @@ protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
virtual void device_reset_after_children() override;
private:
enum
{
@ -329,7 +329,7 @@ private:
uint8_t m_sasi_data;
int m_sasi_data_enable;
uint8_t m_sasi_ctrl;
struct{
uint8_t control;
uint8_t lx;
@ -337,10 +337,10 @@ private:
uint8_t freq_reg;
uint8_t freq_index;
}m_mouse;
uint8_t m_ide_sel;
bool m_ide1_irq, m_ide2_irq;
/* PC9801RS specific, move to specific state */
uint8_t m_gate_a20; //A20 line
uint8_t m_access_ctrl; // DMA related
@ -364,7 +364,7 @@ private:
void egc_blit_w(uint32_t offset, uint16_t data, uint16_t mem_mask);
uint16_t egc_blit_r(uint32_t offset, uint16_t mem_mask);
/* PC9821 specific */
uint8_t m_sdip[24], m_sdip_bank;
uint8_t m_pc9821_window_bank;
@ -382,7 +382,7 @@ private:
} m_egc;
uint16_t m_pc9821_256vram_bank;
uint8_t m_sdip_read(uint16_t port, uint8_t sdip_offset);
void m_sdip_write(uint16_t port, uint8_t sdip_offset,uint8_t data);
uint16_t egc_do_partial_op(int plane, uint16_t src, uint16_t pat, uint16_t dst) const;

View File

@ -3,369 +3,369 @@
<mamelayout version="2">
<element name="keyboard_outer">
<!-- Corners -->
<disk> <bounds x=" 0.00" y="0.00" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<disk> <bounds x="13.60" y="0.00" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<disk> <bounds x="13.60" y="3.60" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<disk> <bounds x=" 0.00" y="3.60" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<!-- Inside -->
<rect> <bounds x=" 0.20" y="0.00" width="13.60" height="4.00"/> <color red="0.40" green="0.40" blue="0.40"/> </rect>
<rect> <bounds x=" 0.00" y="0.20" width="14.00" height="3.60"/> <color red="0.40" green="0.40" blue="0.40"/> </rect>
<!-- Corners -->
<disk> <bounds x=" 0.00" y="0.00" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<disk> <bounds x="13.60" y="0.00" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<disk> <bounds x="13.60" y="3.60" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<disk> <bounds x=" 0.00" y="3.60" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<!-- Inside -->
<rect> <bounds x=" 0.20" y="0.00" width="13.60" height="4.00"/> <color red="0.40" green="0.40" blue="0.40"/> </rect>
<rect> <bounds x=" 0.00" y="0.20" width="14.00" height="3.60"/> <color red="0.40" green="0.40" blue="0.40"/> </rect>
</element>
<element name="keyboard_inner">
<!-- Corners -->
<disk> <bounds x=" 0.00" y="0.00" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<disk> <bounds x="12.60" y="0.00" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<disk> <bounds x="12.60" y="2.60" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<disk> <bounds x=" 0.00" y="2.60" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<!-- Inside -->
<rect> <bounds x=" 0.20" y="0.00" width="12.60" height="3.00"/> <color red="0.90" green="0.90" blue="0.90"/> </rect>
<rect> <bounds x=" 0.00" y="0.20" width="13.00" height="2.60"/> <color red="0.90" green="0.90" blue="0.90"/> </rect>
<!-- Corners -->
<disk> <bounds x=" 0.00" y="0.00" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<disk> <bounds x="12.60" y="0.00" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<disk> <bounds x="12.60" y="2.60" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<disk> <bounds x=" 0.00" y="2.60" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<!-- Inside -->
<rect> <bounds x=" 0.20" y="0.00" width="12.60" height="3.00"/> <color red="0.90" green="0.90" blue="0.90"/> </rect>
<rect> <bounds x=" 0.00" y="0.20" width="13.00" height="2.60"/> <color red="0.90" green="0.90" blue="0.90"/> </rect>
</element>
<!-- White Keys -->
<element name="1-2">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-2"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-2"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="1-3">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-3"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-3"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="1-4">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-4"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-4"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="1-5">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="1-6">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="1-7">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="1-8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="7-8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="7-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="7-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Blue Keys -->
<element name="2-3">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-3"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-3"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="2-4">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-4"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-4"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="2-5">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="2-6">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="2-7">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="2-8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="6-7">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="6-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="6-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="6-8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="6-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="6-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Orange Keys -->
<element name="3-4">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-4"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-4"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="3-5">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="3-6">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="3-7">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="3-8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Green Keys -->
<element name="4-5">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<text string="4-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<text string="4-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="4-6">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<text string="4-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<text string="4-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="4-7">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<text string="4-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<text string="4-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="4-8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<text string="4-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<text string="4-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Grey Keys -->
<element name="5-6">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="5-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="5-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="5-7">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="5-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="5-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="5-8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="5-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="5-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Red Keys -->
<element name="1">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="1"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="1"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="2">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="2"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="2"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="3">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="3"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="3"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="4">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="4"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="4"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="5">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="5"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="5"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="6">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="6"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="6"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="7">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="7"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="7"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="8"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="8"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Yellow Keys -->
<element name="cancel">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="0.00"/></rect>
<text string="CANCEL" align="2"><bounds x="0.04" y="0.3125" width="0.92" height="0.375"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="0.00"/></rect>
<text string="CANCEL" align="2"><bounds x="0.04" y="0.3125" width="0.92" height="0.375"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="payout">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="0.00"/></rect>
<text string="PAYOUT" align="2"><bounds x="0.04" y="0.3125" width="0.92" height="0.375"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="0.00"/></rect>
<text string="PAYOUT" align="2"><bounds x="0.04" y="0.3125" width="0.92" height="0.375"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="start">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="0.00"/></rect>
<text string="START" align="0"><bounds x="0.04" y="0.3125" width="0.92" height="0.375"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="0.00"/></rect>
<text string="START" align="0"><bounds x="0.04" y="0.3125" width="0.92" height="0.375"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Function (Physical Key) -->
<element name="function">
<rect state="0"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.40" green="0.40" blue="0.40"/></rect>
<rect state="1"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="&#x26BF; FUNCTION" align="0"><bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect state="0"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.40" green="0.40" blue="0.40"/></rect>
<rect state="1"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="&#x26BF; FUNCTION" align="0"><bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Door -->
<element name="door">
<rect state="0"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.40" green="0.40" blue="0.40"/></rect>
<rect state="1"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="DOOR" align="0"><bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect state="0"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.40" green="0.40" blue="0.40"/></rect>
<rect state="1"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="DOOR" align="0"><bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Player 1 Keyboard -->
<group name="keyboard_p1">
<!-- Border -->
<bezel element="keyboard_outer"> <bounds x="0.0" y="0.0" width="14" height="4"/> </bezel>
<bezel element="keyboard_inner"> <bounds x="0.5" y="0.5" width="13" height="3"/> </bezel>
<!-- Top Row -->
<bezel element="1-2" inputtag="KEY1.2" inputmask="0x01"> <bounds x="0.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-3" inputtag="KEY1.2" inputmask="0x02"> <bounds x="1.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-4" inputtag="KEY1.2" inputmask="0x04"> <bounds x="2.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-5" inputtag="KEY1.2" inputmask="0x08"> <bounds x="3.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-6" inputtag="KEY1.2" inputmask="0x10"> <bounds x="4.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-7"> <bounds x="5.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-8"> <bounds x="6.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-3" inputtag="KEY1.3" inputmask="0x01"> <bounds x="7.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-4" inputtag="KEY1.3" inputmask="0x02"> <bounds x="8.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-5" inputtag="KEY1.3" inputmask="0x04"> <bounds x="9.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-6" inputtag="KEY1.3" inputmask="0x08"> <bounds x="10.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-7"> <bounds x="11.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-8"> <bounds x="12.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<!-- Middle Row -->
<bezel element="3-4" inputtag="KEY1.3" inputmask="0x10"> <bounds x="0.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-5" inputtag="KEY1.4" inputmask="0x01"> <bounds x="1.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-6" inputtag="KEY1.4" inputmask="0x02"> <bounds x="2.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-7"> <bounds x="3.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-8"> <bounds x="4.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-5" inputtag="KEY1.4" inputmask="0x04"> <bounds x="5.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-6" inputtag="KEY1.4" inputmask="0x08"> <bounds x="6.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-7"> <bounds x="7.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-8"> <bounds x="8.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-6" inputtag="KEY1.4" inputmask="0x10"> <bounds x="9.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-7"> <bounds x="10.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-8"> <bounds x="11.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="cancel" inputtag="KEY1.1" inputmask="0x10"> <bounds x="12.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<!-- Bottom Row -->
<bezel element="6-7"> <bounds x="0.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6-8"> <bounds x="1.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7-8"> <bounds x="2.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1" inputtag="KEY1.0" inputmask="0x01"> <bounds x="3.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2" inputtag="KEY1.0" inputmask="0x02"> <bounds x="4.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3" inputtag="KEY1.0" inputmask="0x04"> <bounds x="5.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4" inputtag="KEY1.0" inputmask="0x08"> <bounds x="6.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5" inputtag="KEY1.0" inputmask="0x10"> <bounds x="7.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6" inputtag="KEY1.1" inputmask="0x01"> <bounds x="8.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7"> <bounds x="9.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="8"> <bounds x="10.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="payout" inputtag="KEY1.1" inputmask="0x02"> <bounds x="11.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="start"> <bounds x="12.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<!-- Border -->
<bezel element="keyboard_outer"> <bounds x="0.0" y="0.0" width="14" height="4"/> </bezel>
<bezel element="keyboard_inner"> <bounds x="0.5" y="0.5" width="13" height="3"/> </bezel>
<!-- Top Row -->
<bezel element="1-2" inputtag="KEY1.2" inputmask="0x01"> <bounds x="0.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-3" inputtag="KEY1.2" inputmask="0x02"> <bounds x="1.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-4" inputtag="KEY1.2" inputmask="0x04"> <bounds x="2.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-5" inputtag="KEY1.2" inputmask="0x08"> <bounds x="3.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-6" inputtag="KEY1.2" inputmask="0x10"> <bounds x="4.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-7"> <bounds x="5.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-8"> <bounds x="6.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-3" inputtag="KEY1.3" inputmask="0x01"> <bounds x="7.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-4" inputtag="KEY1.3" inputmask="0x02"> <bounds x="8.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-5" inputtag="KEY1.3" inputmask="0x04"> <bounds x="9.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-6" inputtag="KEY1.3" inputmask="0x08"> <bounds x="10.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-7"> <bounds x="11.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-8"> <bounds x="12.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<!-- Middle Row -->
<bezel element="3-4" inputtag="KEY1.3" inputmask="0x10"> <bounds x="0.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-5" inputtag="KEY1.4" inputmask="0x01"> <bounds x="1.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-6" inputtag="KEY1.4" inputmask="0x02"> <bounds x="2.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-7"> <bounds x="3.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-8"> <bounds x="4.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-5" inputtag="KEY1.4" inputmask="0x04"> <bounds x="5.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-6" inputtag="KEY1.4" inputmask="0x08"> <bounds x="6.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-7"> <bounds x="7.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-8"> <bounds x="8.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-6" inputtag="KEY1.4" inputmask="0x10"> <bounds x="9.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-7"> <bounds x="10.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-8"> <bounds x="11.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="cancel" inputtag="KEY1.1" inputmask="0x10"> <bounds x="12.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<!-- Bottom Row -->
<bezel element="6-7"> <bounds x="0.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6-8"> <bounds x="1.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7-8"> <bounds x="2.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1" inputtag="KEY1.0" inputmask="0x01"> <bounds x="3.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2" inputtag="KEY1.0" inputmask="0x02"> <bounds x="4.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3" inputtag="KEY1.0" inputmask="0x04"> <bounds x="5.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4" inputtag="KEY1.0" inputmask="0x08"> <bounds x="6.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5" inputtag="KEY1.0" inputmask="0x10"> <bounds x="7.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6" inputtag="KEY1.1" inputmask="0x01"> <bounds x="8.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7"> <bounds x="9.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="8"> <bounds x="10.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="payout" inputtag="KEY1.1" inputmask="0x02"> <bounds x="11.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="start"> <bounds x="12.6" y="2.6" width="0.8" height="0.8"/> </bezel>
</group>
<!-- Player 2 Keyboard -->
<group name="keyboard_p2">
<!-- Border -->
<bezel element="keyboard_outer"> <bounds x="0.0" y="0.0" width="14" height="4"/> </bezel>
<bezel element="keyboard_inner"> <bounds x="0.5" y="0.5" width="13" height="3"/> </bezel>
<!-- Top Row -->
<bezel element="1-2" inputtag="KEY2.2" inputmask="0x01"> <bounds x="0.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-3" inputtag="KEY2.2" inputmask="0x02"> <bounds x="1.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-4" inputtag="KEY2.2" inputmask="0x04"> <bounds x="2.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-5" inputtag="KEY2.2" inputmask="0x08"> <bounds x="3.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-6" inputtag="KEY2.2" inputmask="0x10"> <bounds x="4.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-7"> <bounds x="5.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-8"> <bounds x="6.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-3" inputtag="KEY2.3" inputmask="0x01"> <bounds x="7.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-4" inputtag="KEY2.3" inputmask="0x02"> <bounds x="8.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-5" inputtag="KEY2.3" inputmask="0x04"> <bounds x="9.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-6" inputtag="KEY2.3" inputmask="0x08"> <bounds x="10.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-7"> <bounds x="11.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-8"> <bounds x="12.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<!-- Middle Row -->
<bezel element="3-4" inputtag="KEY2.3" inputmask="0x10"> <bounds x="0.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-5" inputtag="KEY2.4" inputmask="0x01"> <bounds x="1.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-6" inputtag="KEY2.4" inputmask="0x02"> <bounds x="2.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-7"> <bounds x="3.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-8"> <bounds x="4.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-5" inputtag="KEY2.4" inputmask="0x04"> <bounds x="5.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-6" inputtag="KEY2.4" inputmask="0x08"> <bounds x="6.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-7"> <bounds x="7.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-8"> <bounds x="8.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-6" inputtag="KEY2.4" inputmask="0x10"> <bounds x="9.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-7"> <bounds x="10.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-8"> <bounds x="11.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="cancel" inputtag="KEY2.1" inputmask="0x10"> <bounds x="12.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<!-- Bottom Row -->
<bezel element="6-7"> <bounds x="0.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6-8"> <bounds x="1.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7-8"> <bounds x="2.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1" inputtag="KEY2.0" inputmask="0x01"> <bounds x="3.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2" inputtag="KEY2.0" inputmask="0x02"> <bounds x="4.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3" inputtag="KEY2.0" inputmask="0x04"> <bounds x="5.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4" inputtag="KEY2.0" inputmask="0x08"> <bounds x="6.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5" inputtag="KEY2.0" inputmask="0x10"> <bounds x="7.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6" inputtag="KEY2.1" inputmask="0x01"> <bounds x="8.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7"> <bounds x="9.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="8"> <bounds x="10.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="payout" inputtag="KEY2.1" inputmask="0x02"> <bounds x="11.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="start"> <bounds x="12.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<!-- Border -->
<bezel element="keyboard_outer"> <bounds x="0.0" y="0.0" width="14" height="4"/> </bezel>
<bezel element="keyboard_inner"> <bounds x="0.5" y="0.5" width="13" height="3"/> </bezel>
<!-- Top Row -->
<bezel element="1-2" inputtag="KEY2.2" inputmask="0x01"> <bounds x="0.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-3" inputtag="KEY2.2" inputmask="0x02"> <bounds x="1.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-4" inputtag="KEY2.2" inputmask="0x04"> <bounds x="2.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-5" inputtag="KEY2.2" inputmask="0x08"> <bounds x="3.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-6" inputtag="KEY2.2" inputmask="0x10"> <bounds x="4.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-7"> <bounds x="5.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-8"> <bounds x="6.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-3" inputtag="KEY2.3" inputmask="0x01"> <bounds x="7.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-4" inputtag="KEY2.3" inputmask="0x02"> <bounds x="8.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-5" inputtag="KEY2.3" inputmask="0x04"> <bounds x="9.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-6" inputtag="KEY2.3" inputmask="0x08"> <bounds x="10.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-7"> <bounds x="11.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-8"> <bounds x="12.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<!-- Middle Row -->
<bezel element="3-4" inputtag="KEY2.3" inputmask="0x10"> <bounds x="0.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-5" inputtag="KEY2.4" inputmask="0x01"> <bounds x="1.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-6" inputtag="KEY2.4" inputmask="0x02"> <bounds x="2.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-7"> <bounds x="3.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-8"> <bounds x="4.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-5" inputtag="KEY2.4" inputmask="0x04"> <bounds x="5.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-6" inputtag="KEY2.4" inputmask="0x08"> <bounds x="6.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-7"> <bounds x="7.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-8"> <bounds x="8.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-6" inputtag="KEY2.4" inputmask="0x10"> <bounds x="9.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-7"> <bounds x="10.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-8"> <bounds x="11.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="cancel" inputtag="KEY2.1" inputmask="0x10"> <bounds x="12.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<!-- Bottom Row -->
<bezel element="6-7"> <bounds x="0.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6-8"> <bounds x="1.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7-8"> <bounds x="2.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1" inputtag="KEY2.0" inputmask="0x01"> <bounds x="3.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2" inputtag="KEY2.0" inputmask="0x02"> <bounds x="4.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3" inputtag="KEY2.0" inputmask="0x04"> <bounds x="5.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4" inputtag="KEY2.0" inputmask="0x08"> <bounds x="6.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5" inputtag="KEY2.0" inputmask="0x10"> <bounds x="7.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6" inputtag="KEY2.1" inputmask="0x01"> <bounds x="8.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7"> <bounds x="9.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="8"> <bounds x="10.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="payout" inputtag="KEY2.1" inputmask="0x02"> <bounds x="11.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="start"> <bounds x="12.6" y="2.6" width="0.8" height="0.8"/> </bezel>
</group>
<!-- Service Keys -->
<group name="service">
<bezel element="function" inputtag="SERVICE" inputmask="0x1000"> <bounds x="0" y="0" width="2.0" height="0.5"/> </bezel>
<bezel element="door" inputtag="SERVICE" inputmask="0x0001"> <bounds x="4" y="0" width="2.0" height="0.5"/> </bezel>
<bezel element="function" inputtag="SERVICE" inputmask="0x1000"> <bounds x="0" y="0" width="2.0" height="0.5"/> </bezel>
<bezel element="door" inputtag="SERVICE" inputmask="0x0001"> <bounds x="4" y="0" width="2.0" height="0.5"/> </bezel>
</group>
<view name="Standard Screen (4:3) and Two Keyboards">
<!-- Screen (Top Center) -->
<screen index="0">
<bounds x="0" y="0" width="30" height="22.5"/>
</screen>
<!-- Screen (Top Center) -->
<screen index="0">
<bounds x="0" y="0" width="30" height="22.5"/>
</screen>
<!-- Player 1 Keyboard (Left) -->
<group ref="keyboard_p1"> <bounds x="0.5" y="22.5" width="14" height="4" /> </group>
<!-- Player 1 Keyboard (Left) -->
<group ref="keyboard_p1"> <bounds x="0.5" y="22.5" width="14" height="4" /> </group>
<!-- Player 2 Keyboard (Right) -->
<group ref="keyboard_p2"> <bounds x="15.5" y="22.5" width="14" height="4" /> </group>
<!-- Player 2 Keyboard (Right) -->
<group ref="keyboard_p2"> <bounds x="15.5" y="22.5" width="14" height="4" /> </group>
<!-- Service Keys (Bottom) -->
<group ref="service"> <bounds x="12.0" y="26.6" width="6" height="0.5" /> </group>
<!-- Service Keys (Bottom) -->
<group ref="service"> <bounds x="12.0" y="26.6" width="6" height="0.5" /> </group>
</view>

View File

@ -3,442 +3,442 @@
<mamelayout version="2">
<element name="keyboard_outer">
<!-- Corners -->
<disk> <bounds x=" 0.00" y="0.00" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<disk> <bounds x="13.60" y="0.00" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<disk> <bounds x="13.60" y="3.60" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<disk> <bounds x=" 0.00" y="3.60" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<!-- Inside -->
<rect> <bounds x=" 0.20" y="0.00" width="13.60" height="4.00"/> <color red="0.40" green="0.40" blue="0.40"/> </rect>
<rect> <bounds x=" 0.00" y="0.20" width="14.00" height="3.60"/> <color red="0.40" green="0.40" blue="0.40"/> </rect>
<!-- Corners -->
<disk> <bounds x=" 0.00" y="0.00" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<disk> <bounds x="13.60" y="0.00" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<disk> <bounds x="13.60" y="3.60" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<disk> <bounds x=" 0.00" y="3.60" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<!-- Inside -->
<rect> <bounds x=" 0.20" y="0.00" width="13.60" height="4.00"/> <color red="0.40" green="0.40" blue="0.40"/> </rect>
<rect> <bounds x=" 0.00" y="0.20" width="14.00" height="3.60"/> <color red="0.40" green="0.40" blue="0.40"/> </rect>
</element>
<element name="keyboard_inner">
<!-- Corners -->
<disk> <bounds x=" 0.00" y="0.00" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<disk> <bounds x="12.60" y="0.00" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<disk> <bounds x="12.60" y="2.60" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<disk> <bounds x=" 0.00" y="2.60" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<!-- Inside -->
<rect> <bounds x=" 0.20" y="0.00" width="12.60" height="3.00"/> <color red="0.90" green="0.90" blue="0.90"/> </rect>
<rect> <bounds x=" 0.00" y="0.20" width="13.00" height="2.60"/> <color red="0.90" green="0.90" blue="0.90"/> </rect>
<!-- Corners -->
<disk> <bounds x=" 0.00" y="0.00" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<disk> <bounds x="12.60" y="0.00" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<disk> <bounds x="12.60" y="2.60" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<disk> <bounds x=" 0.00" y="2.60" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<!-- Inside -->
<rect> <bounds x=" 0.20" y="0.00" width="12.60" height="3.00"/> <color red="0.90" green="0.90" blue="0.90"/> </rect>
<rect> <bounds x=" 0.00" y="0.20" width="13.00" height="2.60"/> <color red="0.90" green="0.90" blue="0.90"/> </rect>
</element>
<!-- White Keys -->
<element name="1-2">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-2"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-2"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="1-3">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-3"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-3"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="1-4">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-4"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-4"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="1-5">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="1-6">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="1-7">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="1-8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="7-8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="7-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="7-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Blue Keys -->
<element name="2-3">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-3"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-3"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="2-4">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-4"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-4"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="2-5">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="2-6">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="2-7">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="2-8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="6-7">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="6-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="6-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="6-8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="6-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="6-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Orange Keys -->
<element name="3-4">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-4"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-4"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="3-5">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="3-6">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="3-7">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="3-8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Green Keys -->
<element name="4-5">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<text string="4-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<text string="4-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="4-6">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<text string="4-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<text string="4-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="4-7">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<text string="4-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<text string="4-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="4-8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<text string="4-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<text string="4-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Grey Keys -->
<element name="5-6">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="5-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="5-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="5-7">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="5-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="5-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="5-8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="5-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="5-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Red Keys -->
<element name="1">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="1"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="1"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="2">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="2"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="2"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="3">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="3"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="3"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="4">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="4"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="4"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="5">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="5"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="5"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="6">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="6"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="6"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="7">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="7"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="7"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="8"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="8"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Yellow Keys -->
<element name="cancel">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="0.00"/></rect>
<text string="CANCEL" align="2"><bounds x="0.04" y="0.3125" width="0.92" height="0.375"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="0.00"/></rect>
<text string="CANCEL" align="2"><bounds x="0.04" y="0.3125" width="0.92" height="0.375"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="payout">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="0.00"/></rect>
<text string="PAYOUT" align="2"><bounds x="0.04" y="0.3125" width="0.92" height="0.375"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="0.00"/></rect>
<text string="PAYOUT" align="2"><bounds x="0.04" y="0.3125" width="0.92" height="0.375"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="start">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="0.00"/></rect>
<text string="START" align="0"><bounds x="0.04" y="0.3125" width="0.92" height="0.375"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="0.00"/></rect>
<text string="START" align="0"><bounds x="0.04" y="0.3125" width="0.92" height="0.375"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Config (Physical Key) -->
<element name="config">
<rect state="0"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.40" green="0.40" blue="0.40"/></rect>
<rect state="1"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="&#x26BF; CONFIG" align="0"><bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect state="0"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.40" green="0.40" blue="0.40"/></rect>
<rect state="1"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="&#x26BF; CONFIG" align="0"><bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Reset (Physical Key) -->
<element name="reset">
<rect state="0"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.40" green="0.40" blue="0.40"/></rect>
<rect state="1"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="&#x26BF; RESET" align="0"><bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect state="0"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.40" green="0.40" blue="0.40"/></rect>
<rect state="1"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="&#x26BF; RESET" align="0"><bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Meter (Physical Key) -->
<element name="meter">
<rect state="0"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.40" green="0.40" blue="0.40"/></rect>
<rect state="1"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="&#x26BF; METER" align="0"><bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect state="0"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.40" green="0.40" blue="0.40"/></rect>
<rect state="1"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="&#x26BF; METER" align="0"><bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Last Game (Physical Key) -->
<element name="last">
<rect state="0"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.40" green="0.40" blue="0.40"/></rect>
<rect state="1"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="&#x26BF; LAST" align="0"><bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect state="0"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.40" green="0.40" blue="0.40"/></rect>
<rect state="1"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="&#x26BF; LAST" align="0"><bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Door 1 -->
<element name="door1">
<rect state="0"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.40" green="0.40" blue="0.40"/></rect>
<rect state="1"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="DOOR 1" align="0"><bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect state="0"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.40" green="0.40" blue="0.40"/></rect>
<rect state="1"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="DOOR 1" align="0"><bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Door 2 -->
<element name="door2">
<rect state="0"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.40" green="0.40" blue="0.40"/></rect>
<rect state="1"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="DOOR 2" align="0"><bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect state="0"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.40" green="0.40" blue="0.40"/></rect>
<rect state="1"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="DOOR 2" align="0"><bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Player 1 Keyboard -->
<group name="keyboard_p1">
<!-- Border -->
<bezel element="keyboard_outer"> <bounds x="0.0" y="0.0" width="14" height="4"/> </bezel>
<bezel element="keyboard_inner"> <bounds x="0.5" y="0.5" width="13" height="3"/> </bezel>
<!-- Top Row -->
<bezel element="1-2" inputtag="KEY1.1" inputmask="0x01"> <bounds x="0.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-3" inputtag="KEY1.1" inputmask="0x02"> <bounds x="1.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-4" inputtag="KEY1.1" inputmask="0x04"> <bounds x="2.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-5" inputtag="KEY1.1" inputmask="0x08"> <bounds x="3.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-6" inputtag="KEY1.1" inputmask="0x10"> <bounds x="4.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-7" inputtag="KEY1.1" inputmask="0x20"> <bounds x="5.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-8" inputtag="KEY1.1" inputmask="0x40"> <bounds x="6.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-3" inputtag="KEY1.2" inputmask="0x01"> <bounds x="7.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-4" inputtag="KEY1.2" inputmask="0x02"> <bounds x="8.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-5" inputtag="KEY1.2" inputmask="0x04"> <bounds x="9.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-6" inputtag="KEY1.2" inputmask="0x08"> <bounds x="10.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-7" inputtag="KEY1.2" inputmask="0x10"> <bounds x="11.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-8" inputtag="KEY1.2" inputmask="0x20"> <bounds x="12.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<!-- Middle Row -->
<bezel element="3-4" inputtag="KEY1.3" inputmask="0x01"> <bounds x="0.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-5" inputtag="KEY1.3" inputmask="0x02"> <bounds x="1.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-6" inputtag="KEY1.3" inputmask="0x04"> <bounds x="2.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-7" inputtag="KEY1.3" inputmask="0x08"> <bounds x="3.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-8" inputtag="KEY1.3" inputmask="0x10"> <bounds x="4.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-5" inputtag="KEY1.4" inputmask="0x01"> <bounds x="5.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-6" inputtag="KEY1.4" inputmask="0x02"> <bounds x="6.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-7" inputtag="KEY1.4" inputmask="0x04"> <bounds x="7.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-8" inputtag="KEY1.4" inputmask="0x08"> <bounds x="8.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-6" inputtag="KEY1.5" inputmask="0x01"> <bounds x="9.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-7" inputtag="KEY1.5" inputmask="0x02"> <bounds x="10.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-8" inputtag="KEY1.5" inputmask="0x04"> <bounds x="11.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="cancel" inputtag="SERVICE" inputmask="0x04000000"> <bounds x="12.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<!-- Bottom Row -->
<bezel element="6-7" inputtag="KEY1.6" inputmask="0x01"> <bounds x="0.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6-8" inputtag="KEY1.6" inputmask="0x02"> <bounds x="1.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7-8" inputtag="KEY1.7" inputmask="0x01"> <bounds x="2.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1" inputtag="KEY1.0" inputmask="0x01"> <bounds x="3.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2" inputtag="KEY1.0" inputmask="0x02"> <bounds x="4.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3" inputtag="KEY1.0" inputmask="0x04"> <bounds x="5.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4" inputtag="KEY1.0" inputmask="0x08"> <bounds x="6.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5" inputtag="KEY1.0" inputmask="0x10"> <bounds x="7.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6" inputtag="KEY1.0" inputmask="0x20"> <bounds x="8.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7" inputtag="KEY1.0" inputmask="0x40"> <bounds x="9.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="8" inputtag="KEY1.0" inputmask="0x80"> <bounds x="10.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="payout" inputtag="SERVICE" inputmask="0x02000000"> <bounds x="11.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="start" inputtag="SERVICE" inputmask="0x01000000"> <bounds x="12.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<!-- Border -->
<bezel element="keyboard_outer"> <bounds x="0.0" y="0.0" width="14" height="4"/> </bezel>
<bezel element="keyboard_inner"> <bounds x="0.5" y="0.5" width="13" height="3"/> </bezel>
<!-- Top Row -->
<bezel element="1-2" inputtag="KEY1.1" inputmask="0x01"> <bounds x="0.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-3" inputtag="KEY1.1" inputmask="0x02"> <bounds x="1.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-4" inputtag="KEY1.1" inputmask="0x04"> <bounds x="2.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-5" inputtag="KEY1.1" inputmask="0x08"> <bounds x="3.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-6" inputtag="KEY1.1" inputmask="0x10"> <bounds x="4.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-7" inputtag="KEY1.1" inputmask="0x20"> <bounds x="5.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-8" inputtag="KEY1.1" inputmask="0x40"> <bounds x="6.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-3" inputtag="KEY1.2" inputmask="0x01"> <bounds x="7.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-4" inputtag="KEY1.2" inputmask="0x02"> <bounds x="8.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-5" inputtag="KEY1.2" inputmask="0x04"> <bounds x="9.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-6" inputtag="KEY1.2" inputmask="0x08"> <bounds x="10.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-7" inputtag="KEY1.2" inputmask="0x10"> <bounds x="11.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-8" inputtag="KEY1.2" inputmask="0x20"> <bounds x="12.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<!-- Middle Row -->
<bezel element="3-4" inputtag="KEY1.3" inputmask="0x01"> <bounds x="0.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-5" inputtag="KEY1.3" inputmask="0x02"> <bounds x="1.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-6" inputtag="KEY1.3" inputmask="0x04"> <bounds x="2.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-7" inputtag="KEY1.3" inputmask="0x08"> <bounds x="3.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-8" inputtag="KEY1.3" inputmask="0x10"> <bounds x="4.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-5" inputtag="KEY1.4" inputmask="0x01"> <bounds x="5.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-6" inputtag="KEY1.4" inputmask="0x02"> <bounds x="6.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-7" inputtag="KEY1.4" inputmask="0x04"> <bounds x="7.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-8" inputtag="KEY1.4" inputmask="0x08"> <bounds x="8.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-6" inputtag="KEY1.5" inputmask="0x01"> <bounds x="9.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-7" inputtag="KEY1.5" inputmask="0x02"> <bounds x="10.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-8" inputtag="KEY1.5" inputmask="0x04"> <bounds x="11.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="cancel" inputtag="SERVICE" inputmask="0x04000000"> <bounds x="12.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<!-- Bottom Row -->
<bezel element="6-7" inputtag="KEY1.6" inputmask="0x01"> <bounds x="0.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6-8" inputtag="KEY1.6" inputmask="0x02"> <bounds x="1.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7-8" inputtag="KEY1.7" inputmask="0x01"> <bounds x="2.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1" inputtag="KEY1.0" inputmask="0x01"> <bounds x="3.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2" inputtag="KEY1.0" inputmask="0x02"> <bounds x="4.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3" inputtag="KEY1.0" inputmask="0x04"> <bounds x="5.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4" inputtag="KEY1.0" inputmask="0x08"> <bounds x="6.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5" inputtag="KEY1.0" inputmask="0x10"> <bounds x="7.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6" inputtag="KEY1.0" inputmask="0x20"> <bounds x="8.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7" inputtag="KEY1.0" inputmask="0x40"> <bounds x="9.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="8" inputtag="KEY1.0" inputmask="0x80"> <bounds x="10.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="payout" inputtag="SERVICE" inputmask="0x02000000"> <bounds x="11.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="start" inputtag="SERVICE" inputmask="0x01000000"> <bounds x="12.6" y="2.6" width="0.8" height="0.8"/> </bezel>
</group>
<!-- Player 2 Keyboard -->
<group name="keyboard_p2">
<!-- Border -->
<bezel element="keyboard_outer"> <bounds x="0.0" y="0.0" width="14" height="4"/> </bezel>
<bezel element="keyboard_inner"> <bounds x="0.5" y="0.5" width="13" height="3"/> </bezel>
<!-- Top Row -->
<bezel element="1-2" inputtag="KEY2.1" inputmask="0x01"> <bounds x="0.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-3" inputtag="KEY2.1" inputmask="0x02"> <bounds x="1.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-4" inputtag="KEY2.1" inputmask="0x04"> <bounds x="2.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-5" inputtag="KEY2.1" inputmask="0x08"> <bounds x="3.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-6" inputtag="KEY2.1" inputmask="0x10"> <bounds x="4.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-7" inputtag="KEY2.1" inputmask="0x20"> <bounds x="5.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-8" inputtag="KEY2.1" inputmask="0x40"> <bounds x="6.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-3" inputtag="KEY2.2" inputmask="0x01"> <bounds x="7.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-4" inputtag="KEY2.2" inputmask="0x02"> <bounds x="8.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-5" inputtag="KEY2.2" inputmask="0x04"> <bounds x="9.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-6" inputtag="KEY2.2" inputmask="0x08"> <bounds x="10.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-7" inputtag="KEY2.2" inputmask="0x10"> <bounds x="11.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-8" inputtag="KEY2.2" inputmask="0x20"> <bounds x="12.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<!-- Middle Row -->
<bezel element="3-4" inputtag="KEY2.3" inputmask="0x01"> <bounds x="0.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-5" inputtag="KEY2.3" inputmask="0x02"> <bounds x="1.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-6" inputtag="KEY2.3" inputmask="0x04"> <bounds x="2.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-7" inputtag="KEY2.3" inputmask="0x08"> <bounds x="3.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-8" inputtag="KEY2.3" inputmask="0x10"> <bounds x="4.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-5" inputtag="KEY2.4" inputmask="0x01"> <bounds x="5.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-6" inputtag="KEY2.4" inputmask="0x02"> <bounds x="6.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-7" inputtag="KEY2.4" inputmask="0x04"> <bounds x="7.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-8" inputtag="KEY2.4" inputmask="0x08"> <bounds x="8.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-6" inputtag="KEY2.5" inputmask="0x01"> <bounds x="9.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-7" inputtag="KEY2.5" inputmask="0x02"> <bounds x="10.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-8" inputtag="KEY2.5" inputmask="0x04"> <bounds x="11.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="cancel" inputtag="SERVICE" inputmask="0x20000000"> <bounds x="12.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<!-- Bottom Row -->
<bezel element="6-7" inputtag="KEY2.6" inputmask="0x01"> <bounds x="0.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6-8" inputtag="KEY2.6" inputmask="0x02"> <bounds x="1.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7-8" inputtag="KEY2.7" inputmask="0x01"> <bounds x="2.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1" inputtag="KEY2.0" inputmask="0x01"> <bounds x="3.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2" inputtag="KEY2.0" inputmask="0x02"> <bounds x="4.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3" inputtag="KEY2.0" inputmask="0x04"> <bounds x="5.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4" inputtag="KEY2.0" inputmask="0x08"> <bounds x="6.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5" inputtag="KEY2.0" inputmask="0x10"> <bounds x="7.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6" inputtag="KEY2.0" inputmask="0x20"> <bounds x="8.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7" inputtag="KEY2.0" inputmask="0x40"> <bounds x="9.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="8" inputtag="KEY2.0" inputmask="0x80"> <bounds x="10.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="payout" inputtag="SERVICE" inputmask="0x10000000"> <bounds x="11.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="start" inputtag="SERVICE" inputmask="0x08000000"> <bounds x="12.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<!-- Border -->
<bezel element="keyboard_outer"> <bounds x="0.0" y="0.0" width="14" height="4"/> </bezel>
<bezel element="keyboard_inner"> <bounds x="0.5" y="0.5" width="13" height="3"/> </bezel>
<!-- Top Row -->
<bezel element="1-2" inputtag="KEY2.1" inputmask="0x01"> <bounds x="0.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-3" inputtag="KEY2.1" inputmask="0x02"> <bounds x="1.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-4" inputtag="KEY2.1" inputmask="0x04"> <bounds x="2.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-5" inputtag="KEY2.1" inputmask="0x08"> <bounds x="3.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-6" inputtag="KEY2.1" inputmask="0x10"> <bounds x="4.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-7" inputtag="KEY2.1" inputmask="0x20"> <bounds x="5.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-8" inputtag="KEY2.1" inputmask="0x40"> <bounds x="6.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-3" inputtag="KEY2.2" inputmask="0x01"> <bounds x="7.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-4" inputtag="KEY2.2" inputmask="0x02"> <bounds x="8.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-5" inputtag="KEY2.2" inputmask="0x04"> <bounds x="9.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-6" inputtag="KEY2.2" inputmask="0x08"> <bounds x="10.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-7" inputtag="KEY2.2" inputmask="0x10"> <bounds x="11.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-8" inputtag="KEY2.2" inputmask="0x20"> <bounds x="12.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<!-- Middle Row -->
<bezel element="3-4" inputtag="KEY2.3" inputmask="0x01"> <bounds x="0.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-5" inputtag="KEY2.3" inputmask="0x02"> <bounds x="1.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-6" inputtag="KEY2.3" inputmask="0x04"> <bounds x="2.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-7" inputtag="KEY2.3" inputmask="0x08"> <bounds x="3.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-8" inputtag="KEY2.3" inputmask="0x10"> <bounds x="4.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-5" inputtag="KEY2.4" inputmask="0x01"> <bounds x="5.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-6" inputtag="KEY2.4" inputmask="0x02"> <bounds x="6.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-7" inputtag="KEY2.4" inputmask="0x04"> <bounds x="7.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-8" inputtag="KEY2.4" inputmask="0x08"> <bounds x="8.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-6" inputtag="KEY2.5" inputmask="0x01"> <bounds x="9.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-7" inputtag="KEY2.5" inputmask="0x02"> <bounds x="10.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-8" inputtag="KEY2.5" inputmask="0x04"> <bounds x="11.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="cancel" inputtag="SERVICE" inputmask="0x20000000"> <bounds x="12.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<!-- Bottom Row -->
<bezel element="6-7" inputtag="KEY2.6" inputmask="0x01"> <bounds x="0.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6-8" inputtag="KEY2.6" inputmask="0x02"> <bounds x="1.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7-8" inputtag="KEY2.7" inputmask="0x01"> <bounds x="2.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1" inputtag="KEY2.0" inputmask="0x01"> <bounds x="3.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2" inputtag="KEY2.0" inputmask="0x02"> <bounds x="4.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3" inputtag="KEY2.0" inputmask="0x04"> <bounds x="5.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4" inputtag="KEY2.0" inputmask="0x08"> <bounds x="6.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5" inputtag="KEY2.0" inputmask="0x10"> <bounds x="7.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6" inputtag="KEY2.0" inputmask="0x20"> <bounds x="8.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7" inputtag="KEY2.0" inputmask="0x40"> <bounds x="9.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="8" inputtag="KEY2.0" inputmask="0x80"> <bounds x="10.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="payout" inputtag="SERVICE" inputmask="0x10000000"> <bounds x="11.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="start" inputtag="SERVICE" inputmask="0x08000000"> <bounds x="12.6" y="2.6" width="0.8" height="0.8"/> </bezel>
</group>
<!-- Service Keys -->
<group name="service">
<bezel element="reset" inputtag="SERVICE" inputmask="0x00020000"> <bounds x="0" y="0" width="2.0" height="0.5"/> </bezel>
<bezel element="meter" inputtag="SERVICE" inputmask="0x00040000"> <bounds x="4" y="0" width="2.0" height="0.5"/> </bezel>
<bezel element="last" inputtag="SERVICE" inputmask="0x00080000"> <bounds x="8" y="0" width="2.0" height="0.5"/> </bezel>
<bezel element="config" inputtag="SERVICE" inputmask="0x00010000"> <bounds x="12" y="0" width="2.0" height="0.5"/> </bezel>
<bezel element="door1" inputtag="SERVICE" inputmask="0x00200000"> <bounds x="16" y="0" width="2.0" height="0.5"/> </bezel>
<bezel element="door2" inputtag="SERVICE" inputmask="0x00400000"> <bounds x="20" y="0" width="2.0" height="0.5"/> </bezel>
<bezel element="reset" inputtag="SERVICE" inputmask="0x00020000"> <bounds x="0" y="0" width="2.0" height="0.5"/> </bezel>
<bezel element="meter" inputtag="SERVICE" inputmask="0x00040000"> <bounds x="4" y="0" width="2.0" height="0.5"/> </bezel>
<bezel element="last" inputtag="SERVICE" inputmask="0x00080000"> <bounds x="8" y="0" width="2.0" height="0.5"/> </bezel>
<bezel element="config" inputtag="SERVICE" inputmask="0x00010000"> <bounds x="12" y="0" width="2.0" height="0.5"/> </bezel>
<bezel element="door1" inputtag="SERVICE" inputmask="0x00200000"> <bounds x="16" y="0" width="2.0" height="0.5"/> </bezel>
<bezel element="door2" inputtag="SERVICE" inputmask="0x00400000"> <bounds x="20" y="0" width="2.0" height="0.5"/> </bezel>
</group>
<view name="Wide Screen (5:3) and Two Keyboards">
<!-- Screen (Top Center) -->
<screen index="0">
<bounds x="0" y="0" width="30" height="18"/>
</screen>
<!-- Screen (Top Center) -->
<screen index="0">
<bounds x="0" y="0" width="30" height="18"/>
</screen>
<!-- Player 1 Keyboard (Left) -->
<group ref="keyboard_p1"> <bounds x="0.5" y="18.0" width="14" height="4" /> </group>
<!-- Player 1 Keyboard (Left) -->
<group ref="keyboard_p1"> <bounds x="0.5" y="18.0" width="14" height="4" /> </group>
<!-- Player 2 Keyboard (Right) -->
<group ref="keyboard_p2"> <bounds x="15.5" y="18.0" width="14" height="4" /> </group>
<!-- Player 2 Keyboard (Right) -->
<group ref="keyboard_p2"> <bounds x="15.5" y="18.0" width="14" height="4" /> </group>
<!-- Service Keys (Bottom) -->
<group ref="service"> <bounds x="4.0" y="22.1" width="22" height="0.5" /> </group>
<!-- Service Keys (Bottom) -->
<group ref="service"> <bounds x="4.0" y="22.1" width="22" height="0.5" /> </group>
</view>
<view name="Wide Screen (5:3) and One Keyboard">
<!-- Screen (Top Center) -->
<screen index="0">
<bounds x="0" y="0" width="30" height="18"/>
</screen>
<!-- Screen (Top Center) -->
<screen index="0">
<bounds x="0" y="0" width="30" height="18"/>
</screen>
<!-- Player 1 Keyboard (Center) -->
<group ref="keyboard_p1"> <bounds x="8.0" y="18.0" width="14" height="4" /> </group>
<!-- Player 1 Keyboard (Center) -->
<group ref="keyboard_p1"> <bounds x="8.0" y="18.0" width="14" height="4" /> </group>
<!-- Service Keys (Bottom) -->
<group ref="service"> <bounds x="4.0" y="22.1" width="22" height="0.5" /> </group>
<!-- Service Keys (Bottom) -->
<group ref="service"> <bounds x="4.0" y="22.1" width="22" height="0.5" /> </group>
</view>
<view name="Slightly Wide Screen (7:5) and Two Keyboards">
<!-- Screen (Top Center) -->
<screen index="0">
<bounds x="2.4" y="0" width="25.2" height="18"/>
</screen>
<!-- Screen (Top Center) -->
<screen index="0">
<bounds x="2.4" y="0" width="25.2" height="18"/>
</screen>
<!-- Player 1 Keyboard (Left) -->
<group ref="keyboard_p1"> <bounds x="0.5" y="18.0" width="14" height="4" /> </group>
<!-- Player 1 Keyboard (Left) -->
<group ref="keyboard_p1"> <bounds x="0.5" y="18.0" width="14" height="4" /> </group>
<!-- Player 2 Keyboard (Right) -->
<group ref="keyboard_p2"> <bounds x="15.5" y="18.0" width="14" height="4" /> </group>
<!-- Player 2 Keyboard (Right) -->
<group ref="keyboard_p2"> <bounds x="15.5" y="18.0" width="14" height="4" /> </group>
<!-- Service Keys (Bottom) -->
<group ref="service"> <bounds x="4.0" y="22.1" width="22" height="0.5" /> </group>
<!-- Service Keys (Bottom) -->
<group ref="service"> <bounds x="4.0" y="22.1" width="22" height="0.5" /> </group>
</view>
<view name="Slightly Wide Screen (7:5) and One Keyboard">
<!-- Screen (Top Center) -->
<screen index="0">
<bounds x="2.4" y="0" width="25.2" height="18"/>
</screen>
<!-- Screen (Top Center) -->
<screen index="0">
<bounds x="2.4" y="0" width="25.2" height="18"/>
</screen>
<!-- Player 1 Keyboard (Center) -->
<group ref="keyboard_p1"> <bounds x="8.0" y="18.0" width="14" height="4" /> </group>
<!-- Player 1 Keyboard (Center) -->
<group ref="keyboard_p1"> <bounds x="8.0" y="18.0" width="14" height="4" /> </group>
<!-- Service Keys (Bottom) -->
<group ref="service"> <bounds x="4.0" y="22.1" width="22" height="0.5" /> </group>
<!-- Service Keys (Bottom) -->
<group ref="service"> <bounds x="4.0" y="22.1" width="22" height="0.5" /> </group>
</view>

View File

@ -3,421 +3,421 @@
<mamelayout version="2">
<element name="keyboard_outer">
<!-- Corners -->
<disk> <bounds x=" 0.00" y="0.00" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<disk> <bounds x="13.60" y="0.00" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<disk> <bounds x="13.60" y="3.60" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<disk> <bounds x=" 0.00" y="3.60" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<!-- Inside -->
<rect> <bounds x=" 0.20" y="0.00" width="13.60" height="4.00"/> <color red="0.40" green="0.40" blue="0.40"/> </rect>
<rect> <bounds x=" 0.00" y="0.20" width="14.00" height="3.60"/> <color red="0.40" green="0.40" blue="0.40"/> </rect>
<!-- Corners -->
<disk> <bounds x=" 0.00" y="0.00" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<disk> <bounds x="13.60" y="0.00" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<disk> <bounds x="13.60" y="3.60" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<disk> <bounds x=" 0.00" y="3.60" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<!-- Inside -->
<rect> <bounds x=" 0.20" y="0.00" width="13.60" height="4.00"/> <color red="0.40" green="0.40" blue="0.40"/> </rect>
<rect> <bounds x=" 0.00" y="0.20" width="14.00" height="3.60"/> <color red="0.40" green="0.40" blue="0.40"/> </rect>
</element>
<element name="keyboard_inner">
<!-- Corners -->
<disk> <bounds x=" 0.00" y="0.00" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<disk> <bounds x="12.60" y="0.00" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<disk> <bounds x="12.60" y="2.60" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<disk> <bounds x=" 0.00" y="2.60" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<!-- Inside -->
<rect> <bounds x=" 0.20" y="0.00" width="12.60" height="3.00"/> <color red="0.90" green="0.90" blue="0.90"/> </rect>
<rect> <bounds x=" 0.00" y="0.20" width="13.00" height="2.60"/> <color red="0.90" green="0.90" blue="0.90"/> </rect>
<!-- Corners -->
<disk> <bounds x=" 0.00" y="0.00" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<disk> <bounds x="12.60" y="0.00" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<disk> <bounds x="12.60" y="2.60" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<disk> <bounds x=" 0.00" y="2.60" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<!-- Inside -->
<rect> <bounds x=" 0.20" y="0.00" width="12.60" height="3.00"/> <color red="0.90" green="0.90" blue="0.90"/> </rect>
<rect> <bounds x=" 0.00" y="0.20" width="13.00" height="2.60"/> <color red="0.90" green="0.90" blue="0.90"/> </rect>
</element>
<!-- White Keys -->
<element name="1-2">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-2"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-2"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="1-3">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-3"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-3"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="1-4">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-4"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-4"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="1-5">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="1-6">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="1-7">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="1-8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="7-8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="7-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="7-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Blue Keys -->
<element name="2-3">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-3"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-3"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="2-4">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-4"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-4"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="2-5">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="2-6">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="2-7">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="2-8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="6-7">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="6-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="6-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="6-8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="6-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="6-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Orange Keys -->
<element name="3-4">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-4"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-4"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="3-5">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="3-6">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="3-7">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="3-8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Green Keys -->
<element name="4-5">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<text string="4-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<text string="4-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="4-6">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<text string="4-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<text string="4-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="4-7">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<text string="4-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<text string="4-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="4-8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<text string="4-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<text string="4-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Grey Keys -->
<element name="5-6">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="5-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="5-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="5-7">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="5-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="5-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="5-8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="5-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="5-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Red Keys -->
<element name="1">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="1"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="1"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="2">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="2"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="2"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="3">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="3"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="3"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="4">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="4"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="4"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="5">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="5"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="5"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="6">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="6"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="6"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="7">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="7"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="7"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="8"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="8"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Yellow Keys -->
<element name="cancel">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="0.00"/></rect>
<text string="CANCEL" align="2"><bounds x="0.04" y="0.3125" width="0.92" height="0.375"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="0.00"/></rect>
<text string="CANCEL" align="2"><bounds x="0.04" y="0.3125" width="0.92" height="0.375"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="payout">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="0.00"/></rect>
<text string="PAYOUT" align="2"><bounds x="0.04" y="0.3125" width="0.92" height="0.375"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="0.00"/></rect>
<text string="PAYOUT" align="2"><bounds x="0.04" y="0.3125" width="0.92" height="0.375"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="start">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="0.00"/></rect>
<text string="START" align="0"><bounds x="0.04" y="0.3125" width="0.92" height="0.375"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="0.00"/></rect>
<text string="START" align="0"><bounds x="0.04" y="0.3125" width="0.92" height="0.375"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Reset (Physical Key) -->
<element name="reset">
<rect state="0"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.40" green="0.40" blue="0.40"/></rect>
<rect state="1"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="&#x26BF; RESET" align="0"><bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect state="0"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.40" green="0.40" blue="0.40"/></rect>
<rect state="1"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="&#x26BF; RESET" align="0"><bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Meter (Physical Key) -->
<element name="meter">
<rect state="0"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.40" green="0.40" blue="0.40"/></rect>
<rect state="1"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="&#x26BF; METER" align="0"><bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect state="0"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.40" green="0.40" blue="0.40"/></rect>
<rect state="1"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="&#x26BF; METER" align="0"><bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Last Game (Physical Key) -->
<element name="last">
<rect state="0"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.40" green="0.40" blue="0.40"/></rect>
<rect state="1"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="&#x26BF; LAST" align="0"><bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect state="0"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.40" green="0.40" blue="0.40"/></rect>
<rect state="1"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="&#x26BF; LAST" align="0"><bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Player 1 Keyboard -->
<group name="keyboard_p1">
<!-- Border -->
<bezel element="keyboard_outer"> <bounds x="0.0" y="0.0" width="14" height="4"/> </bezel>
<bezel element="keyboard_inner"> <bounds x="0.5" y="0.5" width="13" height="3"/> </bezel>
<!-- Top Row -->
<bezel element="1-2" inputtag="KEY1.1" inputmask="0x01"> <bounds x="0.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-3" inputtag="KEY1.1" inputmask="0x02"> <bounds x="1.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-4" inputtag="KEY1.1" inputmask="0x04"> <bounds x="2.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-5" inputtag="KEY1.1" inputmask="0x08"> <bounds x="3.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-6" inputtag="KEY1.1" inputmask="0x10"> <bounds x="4.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-7" inputtag="KEY1.1" inputmask="0x20"> <bounds x="5.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-8" inputtag="KEY1.1" inputmask="0x40"> <bounds x="6.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-3" inputtag="KEY1.2" inputmask="0x01"> <bounds x="7.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-4" inputtag="KEY1.2" inputmask="0x02"> <bounds x="8.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-5" inputtag="KEY1.2" inputmask="0x04"> <bounds x="9.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-6" inputtag="KEY1.2" inputmask="0x08"> <bounds x="10.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-7" inputtag="KEY1.2" inputmask="0x10"> <bounds x="11.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-8" inputtag="KEY1.2" inputmask="0x20"> <bounds x="12.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<!-- Middle Row -->
<bezel element="3-4" inputtag="KEY1.3" inputmask="0x01"> <bounds x="0.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-5" inputtag="KEY1.3" inputmask="0x02"> <bounds x="1.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-6" inputtag="KEY1.3" inputmask="0x04"> <bounds x="2.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-7" inputtag="KEY1.3" inputmask="0x08"> <bounds x="3.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-8" inputtag="KEY1.3" inputmask="0x10"> <bounds x="4.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-5" inputtag="KEY1.4" inputmask="0x01"> <bounds x="5.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-6" inputtag="KEY1.4" inputmask="0x02"> <bounds x="6.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-7" inputtag="KEY1.4" inputmask="0x04"> <bounds x="7.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-8" inputtag="KEY1.4" inputmask="0x08"> <bounds x="8.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-6" inputtag="KEY1.5" inputmask="0x01"> <bounds x="9.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-7" inputtag="KEY1.5" inputmask="0x02"> <bounds x="10.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-8" inputtag="KEY1.5" inputmask="0x04"> <bounds x="11.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="cancel" inputtag="P1LOW" inputmask="0x00080000"> <bounds x="12.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<!-- Bottom Row -->
<bezel element="6-7" inputtag="KEY1.6" inputmask="0x01"> <bounds x="0.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6-8" inputtag="KEY1.6" inputmask="0x02"> <bounds x="1.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7-8" inputtag="KEY1.7" inputmask="0x01"> <bounds x="2.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1" inputtag="KEY1.0" inputmask="0x01"> <bounds x="3.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2" inputtag="KEY1.0" inputmask="0x02"> <bounds x="4.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3" inputtag="KEY1.0" inputmask="0x04"> <bounds x="5.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4" inputtag="KEY1.0" inputmask="0x08"> <bounds x="6.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5" inputtag="KEY1.0" inputmask="0x10"> <bounds x="7.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6" inputtag="KEY1.0" inputmask="0x20"> <bounds x="8.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7" inputtag="KEY1.0" inputmask="0x40"> <bounds x="9.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="8" inputtag="KEY1.0" inputmask="0x80"> <bounds x="10.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="payout" inputtag="COIN" inputmask="0x00010000"> <bounds x="11.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="start" inputtag="COIN" inputmask="0x00080000"> <bounds x="12.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<!-- Border -->
<bezel element="keyboard_outer"> <bounds x="0.0" y="0.0" width="14" height="4"/> </bezel>
<bezel element="keyboard_inner"> <bounds x="0.5" y="0.5" width="13" height="3"/> </bezel>
<!-- Top Row -->
<bezel element="1-2" inputtag="KEY1.1" inputmask="0x01"> <bounds x="0.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-3" inputtag="KEY1.1" inputmask="0x02"> <bounds x="1.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-4" inputtag="KEY1.1" inputmask="0x04"> <bounds x="2.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-5" inputtag="KEY1.1" inputmask="0x08"> <bounds x="3.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-6" inputtag="KEY1.1" inputmask="0x10"> <bounds x="4.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-7" inputtag="KEY1.1" inputmask="0x20"> <bounds x="5.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-8" inputtag="KEY1.1" inputmask="0x40"> <bounds x="6.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-3" inputtag="KEY1.2" inputmask="0x01"> <bounds x="7.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-4" inputtag="KEY1.2" inputmask="0x02"> <bounds x="8.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-5" inputtag="KEY1.2" inputmask="0x04"> <bounds x="9.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-6" inputtag="KEY1.2" inputmask="0x08"> <bounds x="10.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-7" inputtag="KEY1.2" inputmask="0x10"> <bounds x="11.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-8" inputtag="KEY1.2" inputmask="0x20"> <bounds x="12.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<!-- Middle Row -->
<bezel element="3-4" inputtag="KEY1.3" inputmask="0x01"> <bounds x="0.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-5" inputtag="KEY1.3" inputmask="0x02"> <bounds x="1.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-6" inputtag="KEY1.3" inputmask="0x04"> <bounds x="2.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-7" inputtag="KEY1.3" inputmask="0x08"> <bounds x="3.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-8" inputtag="KEY1.3" inputmask="0x10"> <bounds x="4.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-5" inputtag="KEY1.4" inputmask="0x01"> <bounds x="5.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-6" inputtag="KEY1.4" inputmask="0x02"> <bounds x="6.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-7" inputtag="KEY1.4" inputmask="0x04"> <bounds x="7.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-8" inputtag="KEY1.4" inputmask="0x08"> <bounds x="8.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-6" inputtag="KEY1.5" inputmask="0x01"> <bounds x="9.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-7" inputtag="KEY1.5" inputmask="0x02"> <bounds x="10.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-8" inputtag="KEY1.5" inputmask="0x04"> <bounds x="11.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="cancel" inputtag="P1LOW" inputmask="0x00080000"> <bounds x="12.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<!-- Bottom Row -->
<bezel element="6-7" inputtag="KEY1.6" inputmask="0x01"> <bounds x="0.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6-8" inputtag="KEY1.6" inputmask="0x02"> <bounds x="1.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7-8" inputtag="KEY1.7" inputmask="0x01"> <bounds x="2.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1" inputtag="KEY1.0" inputmask="0x01"> <bounds x="3.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2" inputtag="KEY1.0" inputmask="0x02"> <bounds x="4.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3" inputtag="KEY1.0" inputmask="0x04"> <bounds x="5.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4" inputtag="KEY1.0" inputmask="0x08"> <bounds x="6.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5" inputtag="KEY1.0" inputmask="0x10"> <bounds x="7.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6" inputtag="KEY1.0" inputmask="0x20"> <bounds x="8.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7" inputtag="KEY1.0" inputmask="0x40"> <bounds x="9.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="8" inputtag="KEY1.0" inputmask="0x80"> <bounds x="10.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="payout" inputtag="COIN" inputmask="0x00010000"> <bounds x="11.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="start" inputtag="COIN" inputmask="0x00080000"> <bounds x="12.6" y="2.6" width="0.8" height="0.8"/> </bezel>
</group>
<!-- Player 2 Keyboard -->
<group name="keyboard_p2">
<!-- Border -->
<bezel element="keyboard_outer"> <bounds x="0.0" y="0.0" width="14" height="4"/> </bezel>
<bezel element="keyboard_inner"> <bounds x="0.5" y="0.5" width="13" height="3"/> </bezel>
<!-- Top Row -->
<bezel element="1-2" inputtag="KEY2.1" inputmask="0x01"> <bounds x="0.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-3" inputtag="KEY2.1" inputmask="0x02"> <bounds x="1.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-4" inputtag="KEY2.1" inputmask="0x04"> <bounds x="2.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-5" inputtag="KEY2.1" inputmask="0x08"> <bounds x="3.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-6" inputtag="KEY2.1" inputmask="0x10"> <bounds x="4.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-7" inputtag="KEY2.1" inputmask="0x20"> <bounds x="5.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-8" inputtag="KEY2.1" inputmask="0x40"> <bounds x="6.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-3" inputtag="KEY2.2" inputmask="0x01"> <bounds x="7.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-4" inputtag="KEY2.2" inputmask="0x02"> <bounds x="8.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-5" inputtag="KEY2.2" inputmask="0x04"> <bounds x="9.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-6" inputtag="KEY2.2" inputmask="0x08"> <bounds x="10.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-7" inputtag="KEY2.2" inputmask="0x10"> <bounds x="11.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-8" inputtag="KEY2.2" inputmask="0x20"> <bounds x="12.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<!-- Middle Row -->
<bezel element="3-4" inputtag="KEY2.3" inputmask="0x01"> <bounds x="0.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-5" inputtag="KEY2.3" inputmask="0x02"> <bounds x="1.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-6" inputtag="KEY2.3" inputmask="0x04"> <bounds x="2.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-7" inputtag="KEY2.3" inputmask="0x08"> <bounds x="3.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-8" inputtag="KEY2.3" inputmask="0x10"> <bounds x="4.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-5" inputtag="KEY2.4" inputmask="0x01"> <bounds x="5.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-6" inputtag="KEY2.4" inputmask="0x02"> <bounds x="6.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-7" inputtag="KEY2.4" inputmask="0x04"> <bounds x="7.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-8" inputtag="KEY2.4" inputmask="0x08"> <bounds x="8.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-6" inputtag="KEY2.5" inputmask="0x01"> <bounds x="9.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-7" inputtag="KEY2.5" inputmask="0x02"> <bounds x="10.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-8" inputtag="KEY2.5" inputmask="0x04"> <bounds x="11.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="cancel" inputtag="P2LOW" inputmask="0x00400000"> <bounds x="12.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<!-- Bottom Row -->
<bezel element="6-7" inputtag="KEY2.6" inputmask="0x01"> <bounds x="0.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6-8" inputtag="KEY2.6" inputmask="0x02"> <bounds x="1.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7-8" inputtag="KEY2.7" inputmask="0x01"> <bounds x="2.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1" inputtag="KEY2.0" inputmask="0x01"> <bounds x="3.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2" inputtag="KEY2.0" inputmask="0x02"> <bounds x="4.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3" inputtag="KEY2.0" inputmask="0x04"> <bounds x="5.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4" inputtag="KEY2.0" inputmask="0x08"> <bounds x="6.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5" inputtag="KEY2.0" inputmask="0x10"> <bounds x="7.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6" inputtag="KEY2.0" inputmask="0x20"> <bounds x="8.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7" inputtag="KEY2.0" inputmask="0x40"> <bounds x="9.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="8" inputtag="KEY2.0" inputmask="0x80"> <bounds x="10.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="payout" inputtag="P2LOW" inputmask="0x00010000"> <bounds x="11.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="start" inputtag="P2LOW" inputmask="0x00080000"> <bounds x="12.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<!-- Border -->
<bezel element="keyboard_outer"> <bounds x="0.0" y="0.0" width="14" height="4"/> </bezel>
<bezel element="keyboard_inner"> <bounds x="0.5" y="0.5" width="13" height="3"/> </bezel>
<!-- Top Row -->
<bezel element="1-2" inputtag="KEY2.1" inputmask="0x01"> <bounds x="0.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-3" inputtag="KEY2.1" inputmask="0x02"> <bounds x="1.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-4" inputtag="KEY2.1" inputmask="0x04"> <bounds x="2.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-5" inputtag="KEY2.1" inputmask="0x08"> <bounds x="3.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-6" inputtag="KEY2.1" inputmask="0x10"> <bounds x="4.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-7" inputtag="KEY2.1" inputmask="0x20"> <bounds x="5.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-8" inputtag="KEY2.1" inputmask="0x40"> <bounds x="6.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-3" inputtag="KEY2.2" inputmask="0x01"> <bounds x="7.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-4" inputtag="KEY2.2" inputmask="0x02"> <bounds x="8.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-5" inputtag="KEY2.2" inputmask="0x04"> <bounds x="9.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-6" inputtag="KEY2.2" inputmask="0x08"> <bounds x="10.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-7" inputtag="KEY2.2" inputmask="0x10"> <bounds x="11.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-8" inputtag="KEY2.2" inputmask="0x20"> <bounds x="12.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<!-- Middle Row -->
<bezel element="3-4" inputtag="KEY2.3" inputmask="0x01"> <bounds x="0.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-5" inputtag="KEY2.3" inputmask="0x02"> <bounds x="1.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-6" inputtag="KEY2.3" inputmask="0x04"> <bounds x="2.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-7" inputtag="KEY2.3" inputmask="0x08"> <bounds x="3.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-8" inputtag="KEY2.3" inputmask="0x10"> <bounds x="4.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-5" inputtag="KEY2.4" inputmask="0x01"> <bounds x="5.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-6" inputtag="KEY2.4" inputmask="0x02"> <bounds x="6.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-7" inputtag="KEY2.4" inputmask="0x04"> <bounds x="7.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-8" inputtag="KEY2.4" inputmask="0x08"> <bounds x="8.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-6" inputtag="KEY2.5" inputmask="0x01"> <bounds x="9.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-7" inputtag="KEY2.5" inputmask="0x02"> <bounds x="10.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-8" inputtag="KEY2.5" inputmask="0x04"> <bounds x="11.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="cancel" inputtag="P2LOW" inputmask="0x00400000"> <bounds x="12.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<!-- Bottom Row -->
<bezel element="6-7" inputtag="KEY2.6" inputmask="0x01"> <bounds x="0.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6-8" inputtag="KEY2.6" inputmask="0x02"> <bounds x="1.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7-8" inputtag="KEY2.7" inputmask="0x01"> <bounds x="2.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1" inputtag="KEY2.0" inputmask="0x01"> <bounds x="3.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2" inputtag="KEY2.0" inputmask="0x02"> <bounds x="4.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3" inputtag="KEY2.0" inputmask="0x04"> <bounds x="5.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4" inputtag="KEY2.0" inputmask="0x08"> <bounds x="6.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5" inputtag="KEY2.0" inputmask="0x10"> <bounds x="7.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6" inputtag="KEY2.0" inputmask="0x20"> <bounds x="8.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7" inputtag="KEY2.0" inputmask="0x40"> <bounds x="9.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="8" inputtag="KEY2.0" inputmask="0x80"> <bounds x="10.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="payout" inputtag="P2LOW" inputmask="0x00010000"> <bounds x="11.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="start" inputtag="P2LOW" inputmask="0x00080000"> <bounds x="12.6" y="2.6" width="0.8" height="0.8"/> </bezel>
</group>
<!-- Service Keys -->
<group name="service">
<bezel element="reset" inputtag="P1LOW" inputmask="0x00010000"> <bounds x="0" y="0" width="2.0" height="0.5"/> </bezel>
<bezel element="meter" inputtag="P1LOW" inputmask="0x00020000"> <bounds x="4" y="0" width="2.0" height="0.5"/> </bezel>
<bezel element="last" inputtag="P1LOW" inputmask="0x00040000"> <bounds x="8" y="0" width="2.0" height="0.5"/> </bezel>
<bezel element="reset" inputtag="P1LOW" inputmask="0x00010000"> <bounds x="0" y="0" width="2.0" height="0.5"/> </bezel>
<bezel element="meter" inputtag="P1LOW" inputmask="0x00020000"> <bounds x="4" y="0" width="2.0" height="0.5"/> </bezel>
<bezel element="last" inputtag="P1LOW" inputmask="0x00040000"> <bounds x="8" y="0" width="2.0" height="0.5"/> </bezel>
</group>
<view name="Wide Screen (5:3) and Two Keyboards">
<!-- Screen (Top Center) -->
<screen index="0">
<bounds x="0" y="0" width="30" height="18"/>
</screen>
<!-- Screen (Top Center) -->
<screen index="0">
<bounds x="0" y="0" width="30" height="18"/>
</screen>
<!-- Player 1 Keyboard (Left) -->
<group ref="keyboard_p1"> <bounds x="0.5" y="18.0" width="14" height="4" /> </group>
<!-- Player 1 Keyboard (Left) -->
<group ref="keyboard_p1"> <bounds x="0.5" y="18.0" width="14" height="4" /> </group>
<!-- Player 2 Keyboard (Right) -->
<group ref="keyboard_p2"> <bounds x="15.5" y="18.0" width="14" height="4" /> </group>
<!-- Player 2 Keyboard (Right) -->
<group ref="keyboard_p2"> <bounds x="15.5" y="18.0" width="14" height="4" /> </group>
<!-- Service Keys (Bottom) -->
<group ref="service"> <bounds x="10.0" y="22.1" width="10" height="0.5" /> </group>
<!-- Service Keys (Bottom) -->
<group ref="service"> <bounds x="10.0" y="22.1" width="10" height="0.5" /> </group>
</view>
<view name="Wide Screen (5:3) and One Keyboard">
<!-- Screen (Top Center) -->
<screen index="0">
<bounds x="0" y="0" width="30" height="18"/>
</screen>
<!-- Screen (Top Center) -->
<screen index="0">
<bounds x="0" y="0" width="30" height="18"/>
</screen>
<!-- Player 1 Keyboard (Center) -->
<group ref="keyboard_p1"> <bounds x="8.0" y="18.0" width="14" height="4" /> </group>
<!-- Player 1 Keyboard (Center) -->
<group ref="keyboard_p1"> <bounds x="8.0" y="18.0" width="14" height="4" /> </group>
<!-- Service Keys (Bottom) -->
<group ref="service"> <bounds x="10.0" y="22.1" width="10" height="0.5" /> </group>
<!-- Service Keys (Bottom) -->
<group ref="service"> <bounds x="10.0" y="22.1" width="10" height="0.5" /> </group>
</view>
<view name="Slightly Wide Screen (7:5) and Two Keyboards">
<!-- Screen (Top Center) -->
<screen index="0">
<bounds x="2.4" y="0" width="25.2" height="18"/>
</screen>
<!-- Screen (Top Center) -->
<screen index="0">
<bounds x="2.4" y="0" width="25.2" height="18"/>
</screen>
<!-- Player 1 Keyboard (Left) -->
<group ref="keyboard_p1"> <bounds x="0.5" y="18.0" width="14" height="4" /> </group>
<!-- Player 1 Keyboard (Left) -->
<group ref="keyboard_p1"> <bounds x="0.5" y="18.0" width="14" height="4" /> </group>
<!-- Player 2 Keyboard (Right) -->
<group ref="keyboard_p2"> <bounds x="15.5" y="18.0" width="14" height="4" /> </group>
<!-- Player 2 Keyboard (Right) -->
<group ref="keyboard_p2"> <bounds x="15.5" y="18.0" width="14" height="4" /> </group>
<!-- Service Keys (Bottom) -->
<group ref="service"> <bounds x="10.0" y="22.1" width="10" height="0.5" /> </group>
<!-- Service Keys (Bottom) -->
<group ref="service"> <bounds x="10.0" y="22.1" width="10" height="0.5" /> </group>
</view>
<view name="Slightly Wide Screen (7:5) and One Keyboard">
<!-- Screen (Top Center) -->
<screen index="0">
<bounds x="2.4" y="0" width="25.2" height="18"/>
</screen>
<!-- Screen (Top Center) -->
<screen index="0">
<bounds x="2.4" y="0" width="25.2" height="18"/>
</screen>
<!-- Player 1 Keyboard (Center) -->
<group ref="keyboard_p1"> <bounds x="8.0" y="18.0" width="14" height="4" /> </group>
<!-- Player 1 Keyboard (Center) -->
<group ref="keyboard_p1"> <bounds x="8.0" y="18.0" width="14" height="4" /> </group>
<!-- Service Keys (Bottom) -->
<group ref="service"> <bounds x="10.0" y="22.1" width="10" height="0.5" /> </group>
<!-- Service Keys (Bottom) -->
<group ref="service"> <bounds x="10.0" y="22.1" width="10" height="0.5" /> </group>
</view>

View File

@ -3,386 +3,386 @@
<mamelayout version="2">
<element name="keyboard_outer">
<!-- Corners -->
<disk> <bounds x=" 0.00" y="0.00" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<disk> <bounds x="13.60" y="0.00" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<disk> <bounds x="13.60" y="3.60" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<disk> <bounds x=" 0.00" y="3.60" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<!-- Inside -->
<rect> <bounds x=" 0.20" y="0.00" width="13.60" height="4.00"/> <color red="0.40" green="0.40" blue="0.40"/> </rect>
<rect> <bounds x=" 0.00" y="0.20" width="14.00" height="3.60"/> <color red="0.40" green="0.40" blue="0.40"/> </rect>
<!-- Corners -->
<disk> <bounds x=" 0.00" y="0.00" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<disk> <bounds x="13.60" y="0.00" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<disk> <bounds x="13.60" y="3.60" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<disk> <bounds x=" 0.00" y="3.60" width=" 0.40" height="0.40"/> <color red="0.40" green="0.40" blue="0.40"/> </disk>
<!-- Inside -->
<rect> <bounds x=" 0.20" y="0.00" width="13.60" height="4.00"/> <color red="0.40" green="0.40" blue="0.40"/> </rect>
<rect> <bounds x=" 0.00" y="0.20" width="14.00" height="3.60"/> <color red="0.40" green="0.40" blue="0.40"/> </rect>
</element>
<element name="keyboard_inner">
<!-- Corners -->
<disk> <bounds x=" 0.00" y="0.00" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<disk> <bounds x="12.60" y="0.00" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<disk> <bounds x="12.60" y="2.60" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<disk> <bounds x=" 0.00" y="2.60" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<!-- Inside -->
<rect> <bounds x=" 0.20" y="0.00" width="12.60" height="3.00"/> <color red="0.90" green="0.90" blue="0.90"/> </rect>
<rect> <bounds x=" 0.00" y="0.20" width="13.00" height="2.60"/> <color red="0.90" green="0.90" blue="0.90"/> </rect>
<!-- Corners -->
<disk> <bounds x=" 0.00" y="0.00" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<disk> <bounds x="12.60" y="0.00" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<disk> <bounds x="12.60" y="2.60" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<disk> <bounds x=" 0.00" y="2.60" width=" 0.40" height="0.40"/> <color red="0.90" green="0.90" blue="0.90"/> </disk>
<!-- Inside -->
<rect> <bounds x=" 0.20" y="0.00" width="12.60" height="3.00"/> <color red="0.90" green="0.90" blue="0.90"/> </rect>
<rect> <bounds x=" 0.00" y="0.20" width="13.00" height="2.60"/> <color red="0.90" green="0.90" blue="0.90"/> </rect>
</element>
<!-- White Keys -->
<element name="1-2">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-2"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-2"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="1-3">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-3"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-3"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="1-4">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-4"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-4"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="1-5">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="1-6">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<text string="1-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="1-7">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<!--text string="1-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text-->
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<!--text string="1-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text-->
</element>
<element name="1-8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<!--text string="1-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text-->
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<!--text string="1-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text-->
</element>
<element name="7-8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<!--text string="7-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text-->
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="1.00"/></rect>
<!--text string="7-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text-->
</element>
<!-- Blue Keys -->
<element name="2-3">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-3"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-3"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="2-4">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-4"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-4"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="2-5">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="2-6">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<text string="2-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="2-7">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<!--text string="2-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text-->
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<!--text string="2-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text-->
</element>
<element name="2-8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<!--text string="2-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text-->
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<!--text string="2-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text-->
</element>
<element name="6-7">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<!--text string="6-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text-->
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<!--text string="6-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text-->
</element>
<element name="6-8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<!--text string="6-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text-->
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.39" green="0.58" blue="0.93"/></rect>
<!--text string="6-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text-->
</element>
<!-- Orange Keys -->
<element name="3-4">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-4"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-4"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="3-5">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="3-6">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<text string="3-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="3-7">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<!--text string="3-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text-->
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<!--text string="3-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text-->
</element>
<element name="3-8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<!--text string="3-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text-->
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.65" blue="0.00"/></rect>
<!--text string="3-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text-->
</element>
<!-- Green Keys -->
<element name="4-5">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<text string="4-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<text string="4-5"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="4-6">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<text string="4-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<text string="4-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="4-7">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<!--text string="4-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text-->
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<!--text string="4-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text-->
</element>
<element name="4-8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<!--text string="4-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text-->
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.40" green="0.80" blue="0.67"/></rect>
<!--text string="4-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text-->
</element>
<!-- Grey Keys -->
<element name="5-6">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="5-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="5-6"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="5-7">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<!--text string="5-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text-->
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<!--text string="5-7"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text-->
</element>
<element name="5-8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<!--text string="5-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text-->
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<!--text string="5-8"><bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text-->
</element>
<!-- Red Keys -->
<element name="1">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="1"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="1"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="2">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="2"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="2"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="3">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="3"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="3"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="4">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="4"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="4"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="5">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="5"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="5"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="6">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="6"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<text string="6"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="7">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<!--text string="7"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text-->
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<!--text string="7"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text-->
</element>
<element name="8">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<!--text string="8"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text-->
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="0.00" blue="0.00"/></rect>
<!--text string="8"> <bounds x="0.04" y="0.04" width="0.92" height="0.92"/><color red="0.00" green="0.00" blue="0.00"/></text-->
</element>
<!-- Yellow Keys (with lamps) -->
<element name="cancel">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect state="0"> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.80" green="0.80" blue="0.00"/></rect>
<rect state="1"> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="0.00"/></rect>
<text string="CANCEL" align="2"><bounds x="0.04" y="0.3125" width="0.92" height="0.375"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect state="0"> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.80" green="0.80" blue="0.00"/></rect>
<rect state="1"> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="0.00"/></rect>
<text string="CANCEL" align="2"><bounds x="0.04" y="0.3125" width="0.92" height="0.375"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="payout">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect state="0"> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.80" green="0.80" blue="0.00"/></rect>
<rect state="1"> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="0.00"/></rect>
<text string="PAYOUT" align="2"><bounds x="0.04" y="0.3125" width="0.92" height="0.375"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect state="0"> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.80" green="0.80" blue="0.00"/></rect>
<rect state="1"> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="0.00"/></rect>
<text string="PAYOUT" align="2"><bounds x="0.04" y="0.3125" width="0.92" height="0.375"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<element name="start">
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect state="0"> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.80" green="0.80" blue="0.00"/></rect>
<rect state="1"> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="0.00"/></rect>
<text string="START" align="0"><bounds x="0.04" y="0.3125" width="0.92" height="0.375"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect> <bounds x="0.00" y="0.00" width="1.00" height="1.00"/><color red="0.00" green="0.00" blue="0.00"/></rect>
<rect state="0"> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="0.80" green="0.80" blue="0.00"/></rect>
<rect state="1"> <bounds x="0.02" y="0.02" width="0.96" height="0.96"/><color red="1.00" green="1.00" blue="0.00"/></rect>
<text string="START" align="0"><bounds x="0.04" y="0.3125" width="0.92" height="0.375"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Reset (Physical Key) -->
<element name="reset">
<rect state="0"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.40" green="0.40" blue="0.40"/></rect>
<rect state="1"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="&#x26BF; RESET" align="0"><bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect state="0"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.40" green="0.40" blue="0.40"/></rect>
<rect state="1"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="&#x26BF; RESET" align="0"><bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Meter (Physical Key) -->
<element name="meter">
<rect state="0"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.40" green="0.40" blue="0.40"/></rect>
<rect state="1"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="&#x26BF; METER" align="0"><bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect state="0"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.40" green="0.40" blue="0.40"/></rect>
<rect state="1"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="&#x26BF; METER" align="0"><bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Last Game (Physical Key) -->
<element name="last">
<rect state="0"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.40" green="0.40" blue="0.40"/></rect>
<rect state="1"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="&#x26BF; LAST" align="0"><bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect state="0"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.40" green="0.40" blue="0.40"/></rect>
<rect state="1"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="&#x26BF; LAST" align="0"><bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Door -->
<element name="door">
<rect state="0"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.40" green="0.40" blue="0.40"/></rect>
<rect state="1"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="DOOR" align="0"><bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.00" green="0.00" blue="0.00"/></text>
<rect state="0"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.40" green="0.40" blue="0.40"/></rect>
<rect state="1"> <bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.80" green="0.80" blue="0.80"/></rect>
<text string="DOOR" align="0"><bounds x="0.00" y="0.00" width="2.00" height="0.50"/><color red="0.00" green="0.00" blue="0.00"/></text>
</element>
<!-- Player 1 Keyboard -->
<group name="keyboard_p1">
<!-- Border -->
<bezel element="keyboard_outer"> <bounds x="0.0" y="0.0" width="14" height="4"/> </bezel>
<bezel element="keyboard_inner"> <bounds x="0.5" y="0.5" width="13" height="3"/> </bezel>
<!-- Top Row -->
<bezel element="1-2" inputtag="KEY1.2" inputmask="0x01"> <bounds x="0.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-3" inputtag="KEY1.2" inputmask="0x02"> <bounds x="1.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-4" inputtag="KEY1.2" inputmask="0x04"> <bounds x="2.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-5" inputtag="KEY1.2" inputmask="0x08"> <bounds x="3.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-6" inputtag="KEY1.2" inputmask="0x10"> <bounds x="4.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-7"> <bounds x="5.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-8"> <bounds x="6.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-3" inputtag="KEY1.3" inputmask="0x01"> <bounds x="7.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-4" inputtag="KEY1.3" inputmask="0x02"> <bounds x="8.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-5" inputtag="KEY1.3" inputmask="0x04"> <bounds x="9.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-6" inputtag="KEY1.3" inputmask="0x08"> <bounds x="10.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-7"> <bounds x="11.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-8"> <bounds x="12.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<!-- Middle Row -->
<bezel element="3-4" inputtag="KEY1.3" inputmask="0x10"> <bounds x="0.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-5" inputtag="KEY1.4" inputmask="0x01"> <bounds x="1.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-6" inputtag="KEY1.4" inputmask="0x02"> <bounds x="2.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-7"> <bounds x="3.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-8"> <bounds x="4.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-5" inputtag="KEY1.4" inputmask="0x04"> <bounds x="5.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-6" inputtag="KEY1.4" inputmask="0x08"> <bounds x="6.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-7"> <bounds x="7.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-8"> <bounds x="8.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-6" inputtag="KEY1.4" inputmask="0x10"> <bounds x="9.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-7"> <bounds x="10.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-8"> <bounds x="11.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel name="cancel1" element="cancel" inputtag="KEY1.1" inputmask="0x10"> <bounds x="12.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<!-- Bottom Row -->
<bezel element="6-7"> <bounds x="0.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6-8"> <bounds x="1.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7-8"> <bounds x="2.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1" inputtag="KEY1.0" inputmask="0x01"> <bounds x="3.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2" inputtag="KEY1.0" inputmask="0x02"> <bounds x="4.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3" inputtag="KEY1.0" inputmask="0x04"> <bounds x="5.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4" inputtag="KEY1.0" inputmask="0x08"> <bounds x="6.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5" inputtag="KEY1.0" inputmask="0x10"> <bounds x="7.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6" inputtag="KEY1.1" inputmask="0x01"> <bounds x="8.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7"> <bounds x="9.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="8"> <bounds x="10.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel name="payout1" element="payout" inputtag="KEY1.1" inputmask="0x02"> <bounds x="11.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel name="start1" element="start" inputtag="KEY1.1" inputmask="0x08"> <bounds x="12.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<!-- Border -->
<bezel element="keyboard_outer"> <bounds x="0.0" y="0.0" width="14" height="4"/> </bezel>
<bezel element="keyboard_inner"> <bounds x="0.5" y="0.5" width="13" height="3"/> </bezel>
<!-- Top Row -->
<bezel element="1-2" inputtag="KEY1.2" inputmask="0x01"> <bounds x="0.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-3" inputtag="KEY1.2" inputmask="0x02"> <bounds x="1.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-4" inputtag="KEY1.2" inputmask="0x04"> <bounds x="2.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-5" inputtag="KEY1.2" inputmask="0x08"> <bounds x="3.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-6" inputtag="KEY1.2" inputmask="0x10"> <bounds x="4.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-7"> <bounds x="5.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-8"> <bounds x="6.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-3" inputtag="KEY1.3" inputmask="0x01"> <bounds x="7.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-4" inputtag="KEY1.3" inputmask="0x02"> <bounds x="8.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-5" inputtag="KEY1.3" inputmask="0x04"> <bounds x="9.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-6" inputtag="KEY1.3" inputmask="0x08"> <bounds x="10.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-7"> <bounds x="11.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-8"> <bounds x="12.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<!-- Middle Row -->
<bezel element="3-4" inputtag="KEY1.3" inputmask="0x10"> <bounds x="0.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-5" inputtag="KEY1.4" inputmask="0x01"> <bounds x="1.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-6" inputtag="KEY1.4" inputmask="0x02"> <bounds x="2.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-7"> <bounds x="3.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-8"> <bounds x="4.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-5" inputtag="KEY1.4" inputmask="0x04"> <bounds x="5.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-6" inputtag="KEY1.4" inputmask="0x08"> <bounds x="6.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-7"> <bounds x="7.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-8"> <bounds x="8.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-6" inputtag="KEY1.4" inputmask="0x10"> <bounds x="9.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-7"> <bounds x="10.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-8"> <bounds x="11.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel name="cancel1" element="cancel" inputtag="KEY1.1" inputmask="0x10"> <bounds x="12.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<!-- Bottom Row -->
<bezel element="6-7"> <bounds x="0.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6-8"> <bounds x="1.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7-8"> <bounds x="2.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1" inputtag="KEY1.0" inputmask="0x01"> <bounds x="3.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2" inputtag="KEY1.0" inputmask="0x02"> <bounds x="4.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3" inputtag="KEY1.0" inputmask="0x04"> <bounds x="5.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4" inputtag="KEY1.0" inputmask="0x08"> <bounds x="6.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5" inputtag="KEY1.0" inputmask="0x10"> <bounds x="7.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6" inputtag="KEY1.1" inputmask="0x01"> <bounds x="8.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7"> <bounds x="9.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="8"> <bounds x="10.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel name="payout1" element="payout" inputtag="KEY1.1" inputmask="0x02"> <bounds x="11.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel name="start1" element="start" inputtag="KEY1.1" inputmask="0x08"> <bounds x="12.6" y="2.6" width="0.8" height="0.8"/> </bezel>
</group>
<!-- Player 2 Keyboard -->
<group name="keyboard_p2">
<!-- Border -->
<bezel element="keyboard_outer"> <bounds x="0.0" y="0.0" width="14" height="4"/> </bezel>
<bezel element="keyboard_inner"> <bounds x="0.5" y="0.5" width="13" height="3"/> </bezel>
<!-- Top Row -->
<bezel element="1-2" inputtag="KEY2.2" inputmask="0x01"> <bounds x="0.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-3" inputtag="KEY2.2" inputmask="0x02"> <bounds x="1.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-4" inputtag="KEY2.2" inputmask="0x04"> <bounds x="2.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-5" inputtag="KEY2.2" inputmask="0x08"> <bounds x="3.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-6" inputtag="KEY2.2" inputmask="0x10"> <bounds x="4.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-7"> <bounds x="5.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-8"> <bounds x="6.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-3" inputtag="KEY2.3" inputmask="0x01"> <bounds x="7.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-4" inputtag="KEY2.3" inputmask="0x02"> <bounds x="8.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-5" inputtag="KEY2.3" inputmask="0x04"> <bounds x="9.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-6" inputtag="KEY2.3" inputmask="0x08"> <bounds x="10.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-7"> <bounds x="11.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-8"> <bounds x="12.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<!-- Middle Row -->
<bezel element="3-4" inputtag="KEY2.3" inputmask="0x10"> <bounds x="0.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-5" inputtag="KEY2.4" inputmask="0x01"> <bounds x="1.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-6" inputtag="KEY2.4" inputmask="0x02"> <bounds x="2.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-7"> <bounds x="3.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-8"> <bounds x="4.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-5" inputtag="KEY2.4" inputmask="0x04"> <bounds x="5.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-6" inputtag="KEY2.4" inputmask="0x08"> <bounds x="6.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-7"> <bounds x="7.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-8"> <bounds x="8.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-6" inputtag="KEY2.4" inputmask="0x10"> <bounds x="9.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-7"> <bounds x="10.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-8"> <bounds x="11.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel name="cancel2" element="cancel" inputtag="KEY2.1" inputmask="0x10"> <bounds x="12.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<!-- Bottom Row -->
<bezel element="6-7"> <bounds x="0.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6-8"> <bounds x="1.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7-8"> <bounds x="2.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1" inputtag="KEY2.0" inputmask="0x01"> <bounds x="3.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2" inputtag="KEY2.0" inputmask="0x02"> <bounds x="4.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3" inputtag="KEY2.0" inputmask="0x04"> <bounds x="5.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4" inputtag="KEY2.0" inputmask="0x08"> <bounds x="6.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5" inputtag="KEY2.0" inputmask="0x10"> <bounds x="7.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6" inputtag="KEY2.1" inputmask="0x01"> <bounds x="8.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7"> <bounds x="9.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="8"> <bounds x="10.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel name="payout2" element="payout" inputtag="KEY2.1" inputmask="0x02"> <bounds x="11.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel name="start2" element="start" inputtag="KEY2.1" inputmask="0x08"> <bounds x="12.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<!-- Border -->
<bezel element="keyboard_outer"> <bounds x="0.0" y="0.0" width="14" height="4"/> </bezel>
<bezel element="keyboard_inner"> <bounds x="0.5" y="0.5" width="13" height="3"/> </bezel>
<!-- Top Row -->
<bezel element="1-2" inputtag="KEY2.2" inputmask="0x01"> <bounds x="0.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-3" inputtag="KEY2.2" inputmask="0x02"> <bounds x="1.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-4" inputtag="KEY2.2" inputmask="0x04"> <bounds x="2.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-5" inputtag="KEY2.2" inputmask="0x08"> <bounds x="3.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-6" inputtag="KEY2.2" inputmask="0x10"> <bounds x="4.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-7"> <bounds x="5.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1-8"> <bounds x="6.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-3" inputtag="KEY2.3" inputmask="0x01"> <bounds x="7.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-4" inputtag="KEY2.3" inputmask="0x02"> <bounds x="8.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-5" inputtag="KEY2.3" inputmask="0x04"> <bounds x="9.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-6" inputtag="KEY2.3" inputmask="0x08"> <bounds x="10.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-7"> <bounds x="11.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2-8"> <bounds x="12.6" y="0.6" width="0.8" height="0.8"/> </bezel>
<!-- Middle Row -->
<bezel element="3-4" inputtag="KEY2.3" inputmask="0x10"> <bounds x="0.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-5" inputtag="KEY2.4" inputmask="0x01"> <bounds x="1.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-6" inputtag="KEY2.4" inputmask="0x02"> <bounds x="2.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-7"> <bounds x="3.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3-8"> <bounds x="4.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-5" inputtag="KEY2.4" inputmask="0x04"> <bounds x="5.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-6" inputtag="KEY2.4" inputmask="0x08"> <bounds x="6.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-7"> <bounds x="7.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4-8"> <bounds x="8.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-6" inputtag="KEY2.4" inputmask="0x10"> <bounds x="9.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-7"> <bounds x="10.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5-8"> <bounds x="11.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<bezel name="cancel2" element="cancel" inputtag="KEY2.1" inputmask="0x10"> <bounds x="12.6" y="1.6" width="0.8" height="0.8"/> </bezel>
<!-- Bottom Row -->
<bezel element="6-7"> <bounds x="0.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6-8"> <bounds x="1.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7-8"> <bounds x="2.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="1" inputtag="KEY2.0" inputmask="0x01"> <bounds x="3.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="2" inputtag="KEY2.0" inputmask="0x02"> <bounds x="4.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="3" inputtag="KEY2.0" inputmask="0x04"> <bounds x="5.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="4" inputtag="KEY2.0" inputmask="0x08"> <bounds x="6.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="5" inputtag="KEY2.0" inputmask="0x10"> <bounds x="7.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="6" inputtag="KEY2.1" inputmask="0x01"> <bounds x="8.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="7"> <bounds x="9.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel element="8"> <bounds x="10.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel name="payout2" element="payout" inputtag="KEY2.1" inputmask="0x02"> <bounds x="11.6" y="2.6" width="0.8" height="0.8"/> </bezel>
<bezel name="start2" element="start" inputtag="KEY2.1" inputmask="0x08"> <bounds x="12.6" y="2.6" width="0.8" height="0.8"/> </bezel>
</group>
<!-- Service Keys -->
<group name="service">
<bezel element="reset" inputtag="SERVICE" inputmask="0x4000"> <bounds x="0" y="0" width="2.0" height="0.5"/> </bezel>
<bezel element="meter" inputtag="SERVICE" inputmask="0x2000"> <bounds x="4" y="0" width="2.0" height="0.5"/> </bezel>
<bezel element="last" inputtag="SERVICE" inputmask="0x1000"> <bounds x="8" y="0" width="2.0" height="0.5"/> </bezel>
<bezel element="door" inputtag="SERVICE" inputmask="0x0001"> <bounds x="12" y="0" width="2.0" height="0.5"/> </bezel>
<bezel element="reset" inputtag="SERVICE" inputmask="0x4000"> <bounds x="0" y="0" width="2.0" height="0.5"/> </bezel>
<bezel element="meter" inputtag="SERVICE" inputmask="0x2000"> <bounds x="4" y="0" width="2.0" height="0.5"/> </bezel>
<bezel element="last" inputtag="SERVICE" inputmask="0x1000"> <bounds x="8" y="0" width="2.0" height="0.5"/> </bezel>
<bezel element="door" inputtag="SERVICE" inputmask="0x0001"> <bounds x="12" y="0" width="2.0" height="0.5"/> </bezel>
</group>
<view name="Standard Screen (4:3) and Two Keyboards">
<!-- Screen (Top Center) -->
<screen index="0">
<bounds x="0" y="0" width="30" height="22.5"/>
</screen>
<!-- Screen (Top Center) -->
<screen index="0">
<bounds x="0" y="0" width="30" height="22.5"/>
</screen>
<!-- Player 1 Keyboard (Left) -->
<group ref="keyboard_p1"> <bounds x="0.5" y="22.5" width="14" height="4" /> </group>
<!-- Player 1 Keyboard (Left) -->
<group ref="keyboard_p1"> <bounds x="0.5" y="22.5" width="14" height="4" /> </group>
<!-- Player 2 Keyboard (Right) -->
<group ref="keyboard_p2"> <bounds x="15.5" y="22.5" width="14" height="4" /> </group>
<!-- Player 2 Keyboard (Right) -->
<group ref="keyboard_p2"> <bounds x="15.5" y="22.5" width="14" height="4" /> </group>
<!-- Service Keys (Bottom) -->
<group ref="service"> <bounds x="8.0" y="26.6" width="14" height="0.5" /> </group>
<!-- Service Keys (Bottom) -->
<group ref="service"> <bounds x="8.0" y="26.6" width="14" height="0.5" /> </group>
</view>

View File

@ -308,7 +308,7 @@
<bounds x="48" y="95" width="1.5" height="1.5" />
</bezel>
</view>
<view name="Display">
<bezel name="digit0" element="digit">
<bounds x="33" y="0" width="4" height="5" />

View File

@ -297,7 +297,7 @@
<bounds x="52" y="95" width="1.5" height="1.5" />
</bezel>
</view>
<view name="Display Only">
<screen index="0"><bounds x="0" y="0" width="24" height="4.5" /></screen>

View File

@ -291,7 +291,7 @@
<bounds x="48" y="95" width="1.5" height="1.5" />
</bezel>
</view>
<view name="Display Modul">
<screen index="0"><bounds x="0" y="0" width="24" height="4.5" /></screen>

View File

@ -237,7 +237,7 @@
<bounds x="48" y="95" width="1.5" height="1.5" />
</bezel>
</view>
<view name="Display Only">
<screen index="0"><bounds x="0" y="0" width="24" height="4.5" /></screen>

View File

@ -272,7 +272,7 @@
<!-- LCD panel -->
<screen index="0"><bounds x="30" y="88" width="24" height="4.5" /></screen>
</view>
<view name="Display Modul">
<screen index="0"><bounds x="0" y="0" width="24" height="4.5" /></screen>
</view>

View File

@ -384,7 +384,7 @@ namespace esqpanel {
std::function<bool(std::ostream&)> m_content_provider;
std::map<const std::string, const std::string> m_template_values;
};
} // namespace esqpanel
//**************************************************************************

View File

@ -26,77 +26,77 @@ DEFINE_DEVICE_TYPE(MEPHISTO_DISPLAY_MODUL, mephisto_display_modul_device, "mdisp
static INPUT_PORTS_START( mephisto_sensors_board )
PORT_START("IN.0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_START("IN.1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_START("IN.2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_START("IN.3")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_START("IN.4")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_START("IN.5")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_START("IN.6")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_START("IN.7")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER) PORT_TOGGLE
INPUT_PORTS_END
static INPUT_PORTS_START( mephisto_buttons_board )
@ -361,8 +361,8 @@ void mephisto_display_modul_device::device_start()
void mephisto_display_modul_device::device_reset()
{
m_latch = 0;
m_ctrl = 0;
m_latch = 0;
m_ctrl = 0;
}
WRITE8_MEMBER(mephisto_display_modul_device::latch_w)

View File

@ -8,7 +8,7 @@ YGR019B - Hitachi YGR019B CD-Subsystem LSI. Earlier revision is YGR019A. Later r
Another of it's functions is to prevent copied CDs from being played
Attempts to use SCI, tight loops checking bit 2 of 0x5ffffc2 (TEIE)
*/
#include "emu.h"

View File

@ -4,14 +4,14 @@
Taito Yoke + Throttle Flight device
Used in Midnight Landing, Top Landing and Air Inferno
Used in Midnight Landing, Top Landing and Air Inferno
TODO:
- Custom part #;
- Air Inferno uses different limit types (helicopter inputs?), might be
worth doing a subclass of this;
- Get dead zones from actual HW (currently hardlocked to 0x20);
- Air Inferno uses different limit types (helicopter inputs?), might be
worth doing a subclass of this;
- Get dead zones from actual HW (currently hardlocked to 0x20);
***************************************************************************/
#include "emu.h"
@ -99,7 +99,7 @@ READ16_MEMBER( taitoio_yoke_device::throttle_r )
READ_LINE_MEMBER( taitoio_yoke_device::slot_down_r )
{
uint16_t throttle = ioport("THROTTLE")->read();
return (throttle & 0xe00) == 0x600;
}
@ -127,13 +127,13 @@ READ_LINE_MEMBER( taitoio_yoke_device::handle_right_r )
READ_LINE_MEMBER( taitoio_yoke_device::handle_up_r )
{
uint16_t y = ioport("STICK_Y")->read();
return (y & 0xe00) == 0x800;
}
READ_LINE_MEMBER( taitoio_yoke_device::handle_down_r )
{
uint16_t y = ioport("STICK_Y")->read();
return (y & 0xe00) == 0x600;
}

View File

@ -44,7 +44,7 @@ public:
DECLARE_READ_LINE_MEMBER( handle_up_r );
DECLARE_READ_LINE_MEMBER( handle_down_r );
virtual ioport_constructor device_input_ports() const override;
protected:

View File

@ -403,7 +403,7 @@ uint32_t combatsc_state::screen_update_combatsc(screen_device &screen, bitmap_in
m_bg_tilemap[1]->set_scrolly(0, m_k007121_2->ctrlram_r(space, 2));
screen.priority().fill(0, cliprect);
if (m_priority == 0)
{
m_bg_tilemap[1]->draw(screen, bitmap, cliprect, TILEMAP_DRAW_OPAQUE | 0, 4);
@ -419,7 +419,7 @@ uint32_t combatsc_state::screen_update_combatsc(screen_device &screen, bitmap_in
{
m_bg_tilemap[0]->draw(screen, bitmap, cliprect, TILEMAP_DRAW_OPAQUE | 0, 1);
m_bg_tilemap[0]->draw(screen, bitmap, cliprect, TILEMAP_DRAW_OPAQUE | 1, 2);
/* we use the priority buffer so sprites are drawn front to back */
// drill sergeant ribbons goes here, MT #06259
draw_sprites(bitmap, cliprect, m_spriteram[1].get(), 1, screen.priority(), 0x0f00);

View File

@ -162,7 +162,7 @@ uint32_t labyrunr_state::screen_update_labyrunr(screen_device &screen, bitmap_in
address_space &space = machine().dummy_space();
uint8_t ctrl_0 = m_k007121->ctrlram_r(space, 0);
rectangle finalclip0, finalclip1;
screen.priority().fill(0, cliprect);
bitmap.fill(m_palette->black_pen(), cliprect);
@ -261,7 +261,7 @@ uint32_t labyrunr_state::screen_update_labyrunr(screen_device &screen, bitmap_in
m_layer0->draw(screen, bitmap, finalclip0, TILEMAP_DRAW_CATEGORY(1), 0);
if(use_clip3[0])
m_layer0->draw(screen, bitmap, finalclip3, TILEMAP_DRAW_CATEGORY(1), 0);
m_layer1->draw(screen, bitmap, finalclip1, 0, 0);
if(use_clip3[1])
m_layer1->draw(screen, bitmap, finalclip3, 0, 0);

View File

@ -34,7 +34,7 @@ uint32_t pc9801_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap
/*************************************************
*
* UPD7220 (GDC2) bitmap layer
* UPD7220 (GDC2) bitmap layer
*
************************************************/

View File

@ -129,9 +129,9 @@ namespace imgtool
}
}
uint64_t m_size;
type_t m_type;
std::string m_name;
uint64_t m_size;
type_t m_type;
std::string m_name;
};
}

View File

@ -150,7 +150,7 @@
#define BYTES_USED_MASK 0x00ff // Mask of "bytes used" field
#define FORMAT_SECT_SIZE ((tape_pos_t)(2.85 * hti_format_t::ONE_INCH_POS)) // Size of sectors including padding: 2.85"
#define PREAMBLE_WORD 0 // Value of preamble word
#define WORDS_PER_HEADER_N_SECTOR (WORDS_PER_SECTOR + 5)
#define WORDS_PER_HEADER_N_SECTOR (WORDS_PER_SECTOR + 5)
#define MIN_IRG_SIZE ((tape_pos_t)(0.066 * hti_format_t::ONE_INCH_POS)) // Minimum size of IRG gaps: 0.066"
// File types

View File

@ -6076,7 +6076,7 @@ static bool load_icon(uint32_t *dest, const void *resource_fork, uint64_t resour
uint8_t color = get_pixel(src, width, height, bpp, x, y);
// then check the mask
bool is_masked = has_mask
bool is_masked = has_mask
? get_pixel(src + frame_length, width, height, bpp, x, y) != 0
: dest[y * width + x] >= 0x80000000;