Machines promoted to working

----------------------------------
Auto Race [hap, Sean Riddle]
Missile Attack (Mattel) [hap, Sean Riddle]
Football (Mattel) [hap, Sean Riddle]
Baseball (Mattel) [hap, Sean Riddle]
Gravity (Mattel) [hap, Sean Riddle]
This commit is contained in:
hap 2022-03-23 23:08:13 +01:00
parent 134b58533e
commit 8f0042a609
19 changed files with 871 additions and 145 deletions

View File

@ -7,7 +7,8 @@
TODO:
- only one device dumped (Rockwell 8R) and it doesn't work at all
- is unmapped ram mirrored? (that goes for subdevices too)
- fix digit segment decoder, there should be a minus sign in it
- Fix digit segment decoder, it's not on a neat PLA. There should be a minus
sign in it, and more.
*/

View File

@ -69,6 +69,7 @@ protected:
void ram_w(u8 data);
void set_pc(u8 pu, u8 pl);
void set_bu(u8 bu);
void seg_w(u16 seg);
void op_illegal();
// opcode handlers

View File

@ -33,6 +33,11 @@ void b5000_cpu_device::set_bu(u8 bu)
m_bu_delay = true;
}
void b5000_cpu_device::seg_w(u16 seg)
{
m_write_seg(m_seg = seg);
}
void b5000_cpu_device::op_illegal()
{
logerror("unknown opcode $%02X at $%03X\n", m_op, m_prev_pc);
@ -260,8 +265,7 @@ void b5000_cpu_device::op_tc()
void b5000_cpu_device::op_kseg()
{
// KSEG: reset segment outputs
m_seg = 0;
m_write_seg(0);
seg_w(0);
}
void b5000_cpu_device::op_atbz()
@ -315,8 +319,7 @@ void b5000_cpu_device::op_tkbs()
// step 2: load segments from RAM
case 2:
// note: SEG0(DP) from C flag is delayed 2 cycles
m_seg |= decode_digit(ram_r()) << 1 | m_prev3_c;
m_write_seg(m_seg);
seg_w(m_seg | decode_digit(ram_r()) << 1 | m_prev3_c);
m_tkbs_step = 0;
return;

View File

@ -8,7 +8,8 @@ MCU designed for Mattel's electronic games, I/O is a bit more versatile,
and a speaker output was added. It was succeeded by B6100 with a larger ROM.
TODO:
- confirm digit segment decoder (10, 11, 15 appear to be unused by the games)
- any other changed opcodes?
- confirm digit segment decoder (10, 11, 15 are unused by the games)
*/
@ -47,11 +48,10 @@ void b6000_cpu_device::device_reset()
m_ram_addr = 0;
m_a = 0;
m_c = 0;
m_seg = 0;
// clear outputs
seg_w(0);
m_write_str(0);
m_write_seg(0);
m_write_spk(0);
}
@ -65,7 +65,7 @@ u16 b6000_cpu_device::decode_digit(u8 data)
0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f,
// ?, ?, none, F, G, ?
0x64, 0x64, 0x00, 0x20, 0x40, 0x64
0, 0, 0x00, 0x20, 0x40, 0
};
return lut_segs[data & 0xf];
}
@ -75,13 +75,6 @@ u16 b6000_cpu_device::decode_digit(u8 data)
// execute
//-------------------------------------------------
void b6000_cpu_device::update_speaker()
{
// carry flag outputs to SPK
if (m_c != m_prev_c)
m_write_spk(m_c);
}
void b6000_cpu_device::execute_one()
{
switch (m_op)
@ -93,8 +86,6 @@ void b6000_cpu_device::execute_one()
// rest is same as B5000
default: b5000_cpu_device::execute_one(); break;
}
update_speaker();
}
@ -104,13 +95,14 @@ void b6000_cpu_device::execute_one()
void b6000_cpu_device::op_tkbs()
{
// TKBS: load segments (no TKB step)
m_seg |= decode_digit(ram_r());
m_write_seg(m_seg);
// TKBS: load segments and speaker (no TKB step)
seg_w(m_seg | decode_digit(ram_r()));
m_write_spk(m_c);
}
void b6000_cpu_device::op_atbz()
{
// ATBZ: load strobe from A (no ATB step)
m_write_str(1 << (m_a & 0xf));
op_kseg();
}

View File

@ -52,7 +52,6 @@ protected:
// device-level overrides
virtual void device_reset() override;
void update_speaker();
virtual void execute_one() override;
virtual u16 decode_digit(u8 data) override;

View File

@ -130,7 +130,9 @@ void b6100_cpu_device::execute_one()
break; // 0xfc
}
update_speaker();
// instead of with TKBS, carry flag directly outputs to SPK
if (m_c != m_prev_c)
m_write_spk(m_c);
}
bool b6100_cpu_device::op_canskip(u8 op)

View File

@ -8,7 +8,7 @@ Applied Concepts Great Game Machine (GGM), electronic board game computer.
Hardware notes:
- 6502A 2MHz, SYP6522 VIA
- 2KB RAM(4*HM472114AP-2), no ROM on main PCB
- 2KB RAM(4*HM472114AP-2 or 1*M58725P), no ROM on main PCB
- 2*74164 shift register, 3*6118P VFD driver
- 8-digit 14seg VFD panel (same one as in Speak & Spell)
- 5*4 keypad(unlabeled by default), 1-bit sound
@ -39,7 +39,6 @@ Other games:
TODO:
- it doesn't have nvram, it's a workaround for MAME forcing a hard reset when
swapping in a new cartridge
- what's VIA PB0 for? game toggles it once per irq
- confirm display AP segment, is it used anywhere?
- verify cartridge pinout, right now assume A0-A15 (max known cart size is 24KB).
Boris/Sargon cartridge is A0-A11 and 2 CS lines, Steinitz uses the whole range.
@ -237,7 +236,7 @@ void ggm_state::select_w(u8 data)
void ggm_state::control_w(u8 data)
{
// PB0: ?
// PB0: DC/DC converter, toggles once per IRQ (probably for VFD, not needed for emulation)
// PB7: speaker out
m_dac->write(BIT(data, 7));

View File

@ -26,9 +26,14 @@ TODO:
#include "speaker.h"
// internal artwork
#include "autorace.lh"
#include "gravity.lh"
#include "mbaseb.lh"
#include "mfootb.lh"
#include "misatk.lh"
#include "rw18r.lh"
#include "hh_b5000_test.lh" // common test-layout - use external artwork
//#include "hh_b5000_test.lh" // common test-layout - use external artwork
class hh_b5000_state : public driver_device
@ -42,6 +47,10 @@ public:
m_inputs(*this, "IN.%u", 0)
{ }
DECLARE_INPUT_CHANGED_MEMBER(power_button);
template<int Sel> DECLARE_INPUT_CHANGED_MEMBER(switch_next) { if (newval) switch_change(Sel, param, true); }
template<int Sel> DECLARE_INPUT_CHANGED_MEMBER(switch_prev) { if (newval) switch_change(Sel, param, false); }
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@ -59,6 +68,7 @@ protected:
u16 m_seg = 0;
u8 read_inputs(int columns);
void switch_change(int sel, u32 mask, bool next);
};
@ -98,6 +108,27 @@ u8 hh_b5000_state::read_inputs(int columns)
return ret;
}
void hh_b5000_state::switch_change(int sel, u32 mask, bool next)
{
// config switches (for direct control)
ioport_field *inp = m_inputs[sel]->field(mask);
if (next && inp->has_next_setting())
inp->select_next_setting();
else if (!next && inp->has_previous_setting())
inp->select_previous_setting();
}
INPUT_CHANGED_MEMBER(hh_b5000_state::power_button)
{
// power button or switch
bool power = (param) ? (bool(param - 1)) : !newval;
if (!power && m_display != nullptr)
m_display->clear();
m_maincpu->set_input_line(INPUT_LINE_RESET, power ? CLEAR_LINE : ASSERT_LINE);
}
/***************************************************************************
@ -110,13 +141,15 @@ namespace {
/***************************************************************************
Mattel Auto Race
Mattel Auto Race (model 9879)
* B6000 MCU (label B6000CA, die label B6000-B)
* 2-digit 7seg display, 21 other leds, 1-bit sound
This is Mattel's first handheld game. Hardware design (even the MCU) and
programming was done at Rockwell. A European version was released as
"Ski Slalom" (it's simply upside-down).
This is Mattel's first electronic handheld game, also the first CPU-based
handheld game overall. Hardware design (even the MCU) and programming
was done at Rockwell.
A European version was released as "Ski Slalom", except it's upside-down.
***************************************************************************/
@ -150,22 +183,31 @@ void autorace_state::write_seg(u16 data)
static INPUT_PORTS_START( autorace )
PORT_START("IN.0") // KB
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_1)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_2)
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_3)
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_4)
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) // does not auto-center on real device
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) // "
PORT_CONFNAME( 0x0c, 0x0c, "Gear" )
PORT_CONFSETTING( 0x0c, "1" )
PORT_CONFSETTING( 0x04, "2" )
PORT_CONFSETTING( 0x00, "3" )
PORT_CONFSETTING( 0x08, "4" )
PORT_START("IN.1") // DIN
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_5)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_6)
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_7)
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_8)
PORT_CONFNAME( 0x01, 0x00, "Factory Test" )
PORT_CONFSETTING( 0x00, DEF_STR( Off ) )
PORT_CONFSETTING( 0x01, DEF_STR( On ) )
PORT_START("POWER") // power switch
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_START ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_b5000_state, power_button, 0) PORT_NAME("Start / Reset")
PORT_START("SWITCH") // fake
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_b5000_state, switch_prev<0>, 0x0c) PORT_NAME("Gear Switch Down")
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_b5000_state, switch_next<0>, 0x0c) PORT_NAME("Gear Switch Up")
INPUT_PORTS_END
void autorace_state::autorace(machine_config &config)
{
// basic machine hardware
B6000(config, m_maincpu, 240000); // approximation
B6000(config, m_maincpu, 160000); // approximation
m_maincpu->write_str().set(FUNC(autorace_state::write_str));
m_maincpu->write_seg().set(FUNC(autorace_state::write_seg));
m_maincpu->read_kb().set_ioport("IN.0");
@ -174,7 +216,9 @@ void autorace_state::autorace(machine_config &config)
// video hardware
PWM_DISPLAY(config, m_display).set_size(9, 8);
config.set_default_layout(layout_hh_b5000_test);
m_display->set_segmask(0x180, 0x7f);
m_display->set_bri_levels(0.02, 0.2); // player led is brighter
config.set_default_layout(layout_autorace);
// sound hardware
SPEAKER(config, "mono").front_center();
@ -194,14 +238,14 @@ ROM_END
/***************************************************************************
Mattel Missile Attack / Battlestar Galactica: Space Alert
Mattel Missile Attack (model 2048) / Battlestar Galactica: Space Alert (model 2448)
* B6000 MCU (label B6001CA/EA, die label B6001)
* 2-digit 7seg display, 21 other leds, 1-bit sound
The initial release was titled Missile Attack, it didn't sell well (Mattel
blamed it on NBC for not wanting to air their commercial). They changed
the title/setting and advertised an upcoming rerelease as "Flash Gordon",
but changed plans and named it "Battlestar Galactica: Space Alert".
The initial release was called Missile Attack, it didn't sell well (Mattel
blamed it on NBC for refusing to air their commercial). They changed the
title/setting and advertised an upcoming rerelease as "Flash Gordon", but
changed plans and named it "Battlestar Galactica: Space Alert".
***************************************************************************/
@ -235,22 +279,24 @@ void misatk_state::write_seg(u16 data)
static INPUT_PORTS_START( misatk )
PORT_START("IN.0") // KB
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_1)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_2)
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_3)
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_4)
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) // does not auto-center on real device
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) // "
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_BUTTON1 )
PORT_START("IN.1") // DIN
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_5)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_6)
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_7)
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_8)
PORT_CONFNAME( 0x01, 0x00, "Factory Test" )
PORT_CONFSETTING( 0x00, DEF_STR( Off ) )
PORT_CONFSETTING( 0x01, DEF_STR( On ) )
PORT_START("POWER") // power switch
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_START ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_b5000_state, power_button, 0) PORT_NAME("Arm / Off")
INPUT_PORTS_END
void misatk_state::misatk(machine_config &config)
{
// basic machine hardware
B6000(config, m_maincpu, 240000); // approximation
B6000(config, m_maincpu, 250000); // approximation
m_maincpu->write_str().set(FUNC(misatk_state::write_str));
m_maincpu->write_seg().set(FUNC(misatk_state::write_seg));
m_maincpu->read_kb().set_ioport("IN.0");
@ -259,7 +305,9 @@ void misatk_state::misatk(machine_config &config)
// video hardware
PWM_DISPLAY(config, m_display).set_size(9, 8);
config.set_default_layout(layout_hh_b5000_test);
m_display->set_segmask(0x180, 0x7f);
m_display->set_bri_levels(0.015, 0.15); // player led is brighter
config.set_default_layout(layout_misatk);
// sound hardware
SPEAKER(config, "mono").front_center();
@ -279,8 +327,8 @@ ROM_END
/***************************************************************************
Mattel Football
* B6100 MCU (label B6100EB, die label B6100 A)
Mattel Football (model 2024)
* B6100 MCU (label B6100EB/-15, die label B6100 A)
* 7-digit 7seg display, 27 other leds, 1-bit sound
When Football II came out, they renamed this one to Football I.
@ -296,43 +344,59 @@ public:
void mfootb(machine_config &config);
DECLARE_INPUT_CHANGED_MEMBER(score_button) { update_display(); }
private:
void update_display();
void write_str(u16 data);
void write_seg(u16 data);
};
// handlers
void mfootb_state::update_display()
{
// 4th digit DP is from the SCORE button
u8 dp = (m_inputs[1]->read() & 2) ? 0x80 : 0;
m_display->matrix(m_str, (m_seg << 1 & 0x700) | dp | (m_seg & 0x7f));
}
void mfootb_state::write_str(u16 data)
{
m_display->write_my(data);
m_str = data;
update_display();
}
void mfootb_state::write_seg(u16 data)
{
m_display->write_mx(data);
m_seg = data;
update_display();
}
// config
static INPUT_PORTS_START( mfootb )
PORT_START("IN.0") // KB
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_1)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_2)
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_3)
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_4)
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_16WAY
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_NAME("Forward")
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_16WAY
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_NAME("Kick")
PORT_START("IN.1") // DIN
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_5)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_6)
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_7)
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_8)
PORT_CONFNAME( 0x01, 0x01, DEF_STR( Difficulty ) )
PORT_CONFSETTING( 0x01, "1" ) // PRO 1
PORT_CONFSETTING( 0x00, "2" ) // PRO 2
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_START2 ) PORT_NAME("Score") PORT_CHANGED_MEMBER(DEVICE_SELF, mfootb_state, score_button, 0)
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_START1 ) PORT_NAME("Status")
PORT_CONFNAME( 0x08, 0x00, "Factory Test" )
PORT_CONFSETTING( 0x00, DEF_STR( Off ) )
PORT_CONFSETTING( 0x08, DEF_STR( On ) )
INPUT_PORTS_END
void mfootb_state::mfootb(machine_config &config)
{
// basic machine hardware
B6100(config, m_maincpu, 240000); // approximation
B6100(config, m_maincpu, 280000); // approximation
m_maincpu->write_str().set(FUNC(mfootb_state::write_str));
m_maincpu->write_seg().set(FUNC(mfootb_state::write_seg));
m_maincpu->read_kb().set_ioport("IN.0");
@ -340,8 +404,11 @@ void mfootb_state::mfootb(machine_config &config)
m_maincpu->write_spk().set(m_speaker, FUNC(speaker_sound_device::level_w));
// video hardware
PWM_DISPLAY(config, m_display).set_size(9, 10);
config.set_default_layout(layout_hh_b5000_test);
PWM_DISPLAY(config, m_display).set_size(9, 11);
m_display->set_segmask(0x7f, 0x7f);
m_display->set_segmask(0x08, 0xff); // only one digit has DP
m_display->set_bri_levels(0.02, 0.2); // player led is brighter
config.set_default_layout(layout_mfootb);
// sound hardware
SPEAKER(config, "mono").front_center();
@ -362,7 +429,7 @@ ROM_END
/***************************************************************************
Mattel Baseball
Mattel Baseball (model 2942)
* B6100 MCU (label B6101-12, die label B6101 A)
* 4-digit 7seg display, 28 other leds, 1-bit sound
@ -391,29 +458,33 @@ void mbaseb_state::write_str(u16 data)
void mbaseb_state::write_seg(u16 data)
{
m_display->write_mx(data);
m_display->write_mx(bitswap<10>(data,7,8,9,6,5,4,3,2,1,0));
}
// config
static INPUT_PORTS_START( mbaseb )
PORT_START("IN.0") // KB
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_1)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_2)
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_3)
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_4)
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_NAME("Pitch")
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_NAME("Hit")
PORT_START("IN.1") // DIN
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_5)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_6)
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_7)
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_8)
PORT_CONFNAME( 0x01, 0x01, DEF_STR( Difficulty ) )
PORT_CONFSETTING( 0x01, "1" ) // PRO 1
PORT_CONFSETTING( 0x00, "2" ) // PRO 2
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_START1 ) PORT_NAME("Score")
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_NAME("Run")
PORT_CONFNAME( 0x08, 0x00, "Factory Test" )
PORT_CONFSETTING( 0x00, DEF_STR( Off ) )
PORT_CONFSETTING( 0x08, DEF_STR( On ) )
INPUT_PORTS_END
void mbaseb_state::mbaseb(machine_config &config)
{
// basic machine hardware
B6100(config, m_maincpu, 240000); // approximation
B6100(config, m_maincpu, 280000); // approximation
m_maincpu->write_str().set(FUNC(mbaseb_state::write_str));
m_maincpu->write_seg().set(FUNC(mbaseb_state::write_seg));
m_maincpu->read_kb().set_ioport("IN.0");
@ -422,7 +493,9 @@ void mbaseb_state::mbaseb(machine_config &config)
// video hardware
PWM_DISPLAY(config, m_display).set_size(9, 10);
config.set_default_layout(layout_hh_b5000_test);
m_display->set_segmask(0x170, 0x7f);
m_display->set_segmask(0x110, 0xff); // 2 digits have DP
config.set_default_layout(layout_mbaseb);
// sound hardware
SPEAKER(config, "mono").front_center();
@ -443,12 +516,17 @@ ROM_END
/***************************************************************************
Mattel Gravity
Mattel Gravity (model 8291)
* B6100 MCU (label B6102-11, die label B6102 A)
* 3-digit 7seg display, 27 other leds, 1-bit sound
It was advertised as "Catastrophe", but went unreleased. It got released
later as "Gravity", presumedly only for the European market.
It was advertised as "Catastrophe", but went unreleased. It got sold later
as "Gravity", with a less catastrophic setting.
The game is basically 3 mini games in 1:
- Juggling (Rumbling Rocks in Catastrophe)
- Coin Drop (Quake Shock in Catastrophe)
- Docking (Meteorite Shower in Catstrophe)
***************************************************************************/
@ -482,22 +560,21 @@ void gravity_state::write_seg(u16 data)
static INPUT_PORTS_START( gravity )
PORT_START("IN.0") // KB
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_1)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_2)
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_3)
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_4)
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON3 )
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON2 )
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON1 )
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_START("IN.1") // DIN
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_5)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_6)
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_7)
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_8)
PORT_CONFNAME( 0x08, 0x00, "Factory Test" )
PORT_CONFSETTING( 0x00, DEF_STR( Off ) )
PORT_CONFSETTING( 0x08, DEF_STR( On ) )
INPUT_PORTS_END
void gravity_state::gravity(machine_config &config)
{
// basic machine hardware
B6100(config, m_maincpu, 240000); // approximation
B6100(config, m_maincpu, 250000); // approximation
m_maincpu->write_str().set(FUNC(gravity_state::write_str));
m_maincpu->write_seg().set(FUNC(gravity_state::write_seg));
m_maincpu->read_kb().set_ioport("IN.0");
@ -506,7 +583,8 @@ void gravity_state::gravity(machine_config &config)
// video hardware
PWM_DISPLAY(config, m_display).set_size(9, 10);
config.set_default_layout(layout_hh_b5000_test);
m_display->set_segmask(0x1c0, 0x7f);
config.set_default_layout(layout_gravity);
// sound hardware
SPEAKER(config, "mono").front_center();
@ -528,7 +606,7 @@ ROM_END
/***************************************************************************
Rockwell 8R, Rockwell 18R
* B5000 MCU (label B5000CC)
* B5000 MCU (label B5000CC, die label B5000)
* 8-digit 7seg display
This MCU was used in Rockwell 8R, 18R, and 9TR. It was also sold by
@ -610,7 +688,7 @@ INPUT_PORTS_END
void rw18r_state::rw18r(machine_config &config)
{
// basic machine hardware
B5000(config, m_maincpu, 240000); // approximation
B5000(config, m_maincpu, 250000); // approximation
m_maincpu->write_str().set(FUNC(rw18r_state::write_str));
m_maincpu->write_seg().set(FUNC(rw18r_state::write_seg));
m_maincpu->read_kb().set(FUNC(rw18r_state::read_kb));
@ -640,10 +718,10 @@ ROM_END
***************************************************************************/
// YEAR NAME PARENT CMP MACHINE INPUT CLASS INIT COMPANY, FULLNAME, FLAGS
CONS( 1976, autorace, 0, 0, autorace, autorace, autorace_state, empty_init, "Mattel Electronics", "Auto Race", MACHINE_SUPPORTS_SAVE | MACHINE_NOT_WORKING )
CONS( 1977, misatk, 0, 0, misatk, misatk, misatk_state, empty_init, "Mattel Electronics", "Missile Attack (Mattel)", MACHINE_SUPPORTS_SAVE | MACHINE_NOT_WORKING )
CONS( 1977, mfootb, 0, 0, mfootb, mfootb, mfootb_state, empty_init, "Mattel Electronics", "Football (Mattel)", MACHINE_SUPPORTS_SAVE | MACHINE_NOT_WORKING )
CONS( 1978, mbaseb, 0, 0, mbaseb, mbaseb, mbaseb_state, empty_init, "Mattel Electronics", "Baseball (Mattel)", MACHINE_SUPPORTS_SAVE | MACHINE_NOT_WORKING )
CONS( 1980, gravity, 0, 0, gravity, gravity, gravity_state, empty_init, "Mattel Electronics", "Gravity (Mattel)", MACHINE_SUPPORTS_SAVE | MACHINE_NOT_WORKING )
CONS( 1976, autorace, 0, 0, autorace, autorace, autorace_state, empty_init, "Mattel Electronics", "Auto Race", MACHINE_SUPPORTS_SAVE )
CONS( 1977, misatk, 0, 0, misatk, misatk, misatk_state, empty_init, "Mattel Electronics", "Missile Attack (Mattel)", MACHINE_SUPPORTS_SAVE )
CONS( 1977, mfootb, 0, 0, mfootb, mfootb, mfootb_state, empty_init, "Mattel Electronics", "Football (Mattel)", MACHINE_SUPPORTS_SAVE )
CONS( 1978, mbaseb, 0, 0, mbaseb, mbaseb, mbaseb_state, empty_init, "Mattel Electronics", "Baseball (Mattel)", MACHINE_SUPPORTS_SAVE )
CONS( 1980, gravity, 0, 0, gravity, gravity, gravity_state, empty_init, "Mattel Electronics", "Gravity (Mattel)", MACHINE_SUPPORTS_SAVE )
COMP( 1975, rw18r, 0, 0, rw18r, rw18r, rw18r_state, empty_init, "Rockwell", "18R (Rockwell)", MACHINE_SUPPORTS_SAVE | MACHINE_NO_SOUND_HW | MACHINE_NOT_WORKING )

View File

@ -675,7 +675,7 @@ private:
void mfootb2_state::update_display()
{
m_display->matrix(m_d, (m_r & 0x7f) | (m_d >> 4 & 0x80) | (m_r << 1 & 0x700));
m_display->matrix(m_d, (m_r << 1 & 0x700) | (m_d >> 4 & 0x80) | (m_r & 0x7f));
}
void mfootb2_state::write_d(u16 data)
@ -715,8 +715,8 @@ static INPUT_PORTS_START( mfootb2 )
PORT_START("IN.1") // DIO11
PORT_CONFNAME( 0x400, 0x000, DEF_STR( Difficulty ) )
PORT_CONFSETTING( 0x000, "1" )
PORT_CONFSETTING( 0x400, "2" )
PORT_CONFSETTING( 0x000, "1" ) // PRO 1
PORT_CONFSETTING( 0x400, "2" ) // PRO 2
INPUT_PORTS_END
void mfootb2_state::mfootb2(machine_config &config)
@ -741,7 +741,7 @@ void mfootb2_state::mfootb2(machine_config &config)
SPEAKER_SOUND(config, m_speaker);
static const double speaker_levels[4] = { 0.0, 1.0, -1.0, 0.0 };
m_speaker->set_levels(4, speaker_levels);
m_speaker->add_route(ALL_OUTPUTS, "mono", 0.25);
m_speaker->add_route(ALL_OUTPUTS, "mono", 0.125);
}
// roms
@ -903,7 +903,7 @@ void brainbaf_state::brainbaf(machine_config &config)
SPEAKER_SOUND(config, m_speaker);
static const double speaker_levels[4] = { 0.0, 1.0, -1.0, 0.0 };
m_speaker->set_levels(4, speaker_levels);
m_speaker->add_route(ALL_OUTPUTS, "mono", 0.25);
m_speaker->add_route(ALL_OUTPUTS, "mono", 0.125);
}
// roms
@ -1081,7 +1081,7 @@ void horocomp_state::horocomp(machine_config &config)
SPEAKER_SOUND(config, m_speaker);
static const double speaker_levels[4] = { 0.0, 1.0, -1.0, 0.0 };
m_speaker->set_levels(4, speaker_levels);
m_speaker->add_route(ALL_OUTPUTS, "mono", 0.25);
m_speaker->add_route(ALL_OUTPUTS, "mono", 0.125);
}
// roms
@ -1572,7 +1572,7 @@ void rdqa_state::rdqa(machine_config &config)
SPEAKER_SOUND(config, m_speaker);
static const double speaker_levels[4] = { 0.0, 1.0, -1.0, 0.0 };
m_speaker->set_levels(4, speaker_levels);
m_speaker->add_route(ALL_OUTPUTS, "mono", 0.25);
m_speaker->add_route(ALL_OUTPUTS, "mono", 0.125);
}
// roms

View File

@ -0,0 +1,82 @@
<?xml version="1.0"?>
<!--
license:CC0
-->
<mamelayout version="2">
<!-- define elements -->
<element name="white"><rect><color red="0.8" green="0.8" blue="0.8" /></rect></element>
<element name="lane">
<rect><bounds x="0" y="0" width="1" height="1" /><color red="0.8" green="0.8" blue="0.8" /></rect>
<rect><bounds x="0.05" y="0" width="0.9" height="1" /><color red="0" green="0" blue="0" /></rect>
</element>
<element name="gear" defstate="3">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text state="3" string="GEAR:1"><color red="0.6" green="0.6" blue="0.6" /></text>
<text state="1" string="GEAR:2"><color red="0.6" green="0.6" blue="0.6" /></text>
<text state="0" string="GEAR:3"><color red="0.6" green="0.6" blue="0.6" /></text>
<text state="2" string="GEAR:4"><color red="0.6" green="0.6" blue="0.6" /></text>
</element>
<element name="digit" defstate="0">
<led7seg><color red="1.0" green="0.1" blue="0.15" /></led7seg>
</element>
<element name="led" defstate="0">
<rect>
<bounds x="0.0" y="0.0" width="1.0" height="1.0" />
<color alpha="0" />
</rect>
<rect state="0">
<bounds x="0.35" y="0.0" width="0.3" height="1.0" />
<color red="0.1" green="0.01" blue="0.015" />
</rect>
<rect state="1">
<bounds x="0.35" y="0.0" width="0.3" height="1.0" />
<color red="0.5" green="0.05" blue="0.075" />
</rect>
<rect state="2">
<bounds x="0.35" y="0.0" width="0.3" height="1.0" />
<color red="1.0" green="0.1" blue="0.15" />
</rect>
</element>
<!-- 7seg leds -->
<group name="digits">
<element name="digit7" ref="digit"><bounds x="7" y="0" width="0.75" height="1" /></element>
<element name="digit8" ref="digit"><bounds x="8" y="0" width="0.75" height="1" /></element>
</group>
<!-- build screen -->
<view name="Internal Layout">
<bounds left="16" right="24" top="5.8" bottom="34.5" />
<!-- bezel -->
<element ref="lane"><bounds x="18.69" y="9.7" width="2.62" height="24" /></element>
<element ref="white" inputtag="IN.0" inputmask="0x00" inputraw="yes"><bounds x="16" y="9.7" width="8" height="0.8" /></element>
<collection name="Gear Position">
<element ref="gear" inputtag="IN.0" inputmask="0x0c" inputraw="yes"><bounds x="16" y="9.7" width="8" height="0.8" /></element>
</collection>
<!-- led matrix -->
<repeat count="7">
<param name="y" start="12.1" increment="3.2" />
<param name="i1" start="6" increment="-1" />
<element name="~i1~.2" ref="led"><bounds x="17.0" y="~y~" width="1" height="0.8" /></element>
<element name="~i1~.5" ref="led"><bounds x="19.5" y="~y~" width="1" height="0.8" /></element>
<element name="~i1~.6" ref="led"><bounds x="22.0" y="~y~" width="1" height="0.8" /></element>
</repeat>
<group ref="digits"><bounds x="18" y="6.6" width="4" height="2.3" /></group>
</view>
</mamelayout>

View File

@ -69,13 +69,13 @@ license:CC0
<element ref="static_white"><bounds x="2" y="0" width="179" height="48" /></element>
<element ref="static_black"><bounds x="4" y="11" width="175" height="26" /></element>
<element name="digit7" ref="digit"><bounds x="19.5" y="16" width="12" height="16" /></element>
<element name="digit6" ref="digit"><bounds x="35.5" y="16" width="12" height="16" /></element>
<element name="digit5" ref="digit"><bounds x="67.5" y="16" width="12" height="16" /></element>
<element name="digit4" ref="digit"><bounds x="83.5" y="16" width="12" height="16" /></element>
<element name="digit3" ref="digit"><bounds x="99.5" y="16" width="12" height="16" /></element>
<element name="digit1" ref="digit"><bounds x="131.5" y="16" width="12" height="16" /></element>
<element name="digit0" ref="digit"><bounds x="147.5" y="16" width="12" height="16" /></element>
<element name="digit7" ref="digit"><bounds x="21" y="16" width="12" height="16" /></element>
<element name="digit6" ref="digit"><bounds x="37" y="16" width="12" height="16" /></element>
<element name="digit5" ref="digit"><bounds x="69" y="16" width="12" height="16" /></element>
<element name="digit4" ref="digit"><bounds x="85" y="16" width="12" height="16" /></element>
<element name="digit3" ref="digit"><bounds x="101" y="16" width="12" height="16" /></element>
<element name="digit1" ref="digit"><bounds x="133" y="16" width="12" height="16" /></element>
<element name="digit0" ref="digit"><bounds x="149" y="16" width="12" height="16" /></element>
<element ref="static_white"><bounds x="58" y="1" width="2" height="46" /></element>
<element ref="static_white"><bounds x="123" y="1" width="2" height="46" /></element>

View File

@ -0,0 +1,67 @@
<?xml version="1.0"?>
<!--
license:CC0
-->
<mamelayout version="2">
<!-- define elements -->
<element name="black"><rect><color red="0" green="0" blue="0" /></rect></element>
<element name="white"><rect><color red="0.8" green="0.8" blue="0.8" /></rect></element>
<element name="red"><rect><color red="0.4" green="0.1" blue="0.05" /></rect></element>
<element name="digit" defstate="0">
<led7seg><color red="1.0" green="0.1" blue="0.15" /></led7seg>
</element>
<element name="led" defstate="0">
<disk state="0"><color red="0.1" green="0.01" blue="0.015" /></disk>
<disk state="1"><color red="1.0" green="0.1" blue="0.15" /></disk>
</element>
<!-- 7seg leds -->
<group name="digits">
<element name="digit6" ref="digit"><bounds x="0" y="0" width="0.8" height="1" /></element>
<element name="digit7" ref="digit"><bounds x="1" y="0" width="0.8" height="1" /></element>
<element name="digit8" ref="digit"><bounds x="2" y="0" width="0.8" height="1" /></element>
</group>
<!-- build screen -->
<view name="Internal Layout">
<bounds left="0.5" right="13.5" top="0.1" bottom="22.075" />
<!-- 7segs -->
<element ref="white"><bounds x="2.3" y="0.6" width="9.4" height="3.0" /></element>
<element ref="black"><bounds x="2.45" y="0.75" width="9.1" height="2.7" /></element>
<group ref="digits"><bounds x="4.85" y="1.3" width="4.3" height="1.6" /></group>
<!-- bezel -->
<element ref="red"><bounds x="1" y="21.425" width="12" height="0.15" /></element>
<element ref="red"><bounds x="1.25" y="15.425" width="11.5" height="0.15" /></element>
<repeat count="5">
<param name="y" start="20.4" increment="-4" />
<param name="x1" start="1.4" increment="0.15" />
<param name="x2" start="12.0" increment="-0.15" />
<element ref="white"><bounds x="~x1~" y="~y~" width="0.6" height="0.2" /></element>
<element ref="white"><bounds x="~x2~" y="~y~" width="0.6" height="0.2" /></element>
</repeat>
<!-- led matrix -->
<repeat count="9">
<param name="y" start="4" increment="2" />
<param name="i1" start="8" increment="-1" />
<repeat count="3">
<param name="x" start="4" increment="2.5" />
<param name="i2" start="9" increment="-1" />
<element name="~i1~.~i2~" ref="led"><bounds x="~x~" y="~y~" width="1" height="1" /></element>
</repeat>
</repeat>
</view>
</mamelayout>

218
src/mame/layout/mbaseb.lay Normal file
View File

@ -0,0 +1,218 @@
<?xml version="1.0"?>
<!--
license:CC0
-->
<mamelayout version="2">
<!-- define elements -->
<element name="diamond_white">
<image><data><![CDATA[
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="1414.21356" height="1414.21356">
<rect width="1000.0" height="1000.0" x="500.0" y="-500.0" transform="rotate(45.0)" fill="#ffffff" />
</svg>
]]></data></image>
</element>
<element name="diamond_black">
<image><data><![CDATA[
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="1414.21356" height="1414.21356">
<rect width="1000.0" height="1000.0" x="500.0" y="-500.0" transform="rotate(45.0)" fill="#000000" />
</svg>
]]></data></image>
</element>
<element name="diamond_green">
<image><data><![CDATA[
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="1414.21356" height="1414.21356">
<rect width="1000.0" height="1000.0" x="500.0" y="-500.0" transform="rotate(45.0)" fill="#48a830" />
</svg>
]]></data></image>
</element>
<element name="ring_mask">
<disk><bounds x="0" y="0" width="1" height="1" /><color red="0" green="0" blue="0" /></disk>
<disk><bounds x="0.03" y="0.03" width="0.94" height="0.94" /><color red="1" green="1" blue="1" /></disk>
</element>
<element name="field_outer">
<rect><bounds x="0" y="0" width="40" height="40" /><color red="0.285" green="0.659" blue="0.19" /></rect>
<disk><bounds x="5.5" y="12.3" width="24" height="24" /><color red="0" green="0" blue="0" /></disk>
</element>
<element name="home_base">
<rect><bounds x="0" y="0" width="1.55" height="1.05" /><color red="1" green="1" blue="1" /></rect>
<rect><bounds x="0.15" y="0.15" width="1.25" height="1.40" /><color red="0" green="0" blue="0" /></rect>
</element>
<element name="black"><rect><color red="0.0" green="0.0" blue="0.0" /></rect></element>
<element name="blackd"><disk><color red="0.0" green="0.0" blue="0.0" /></disk></element>
<element name="green"><rect><color red="0.285" green="0.659" blue="0.19" /></rect></element>
<element name="white"><rect><color red="1" green="1" blue="1" /></rect></element>
<element name="whitem"><rect><color red="0.8" green="0.8" blue="0.8" /></rect></element>
<element name="text_p"><text string="P"><color red="0.8" green="0.8" blue="0.8" /></text></element>
<element name="text_b"><text string="B"><color red="0.1" green="0.35" blue="0.7" /></text></element>
<element name="text_l1">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="VISITORS"><color red="0.1" green="0.35" blue="0.7" /></text>
</element>
<element name="text_l2">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="HOME"><color red="0.1" green="0.35" blue="0.7" /></text>
</element>
<element name="text_l3">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="INNINGS"><color red="0.1" green="0.35" blue="0.7" /></text>
</element>
<element name="text_l4">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="OUTS"><color red="0.1" green="0.35" blue="0.7" /></text>
</element>
<element name="text_l5">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="BALLS"><color red="0.1" green="0.35" blue="0.7" /></text>
</element>
<element name="text_l6">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="STRIKES"><color red="0.1" green="0.35" blue="0.7" /></text>
</element>
<element name="led" defstate="0">
<disk>
<bounds x="0.0" y="0.0" width="1.0" height="1.0" />
<color alpha="0" />
</disk>
<disk state="0">
<bounds x="0.25" y="0.25" width="0.5" height="0.5" />
<color red="0.1" green="0.01" blue="0.015" />
</disk>
<disk state="1">
<bounds x="0.25" y="0.25" width="0.5" height="0.5" />
<color red="1.0" green="0.1" blue="0.15" />
</disk>
</element>
<element name="digit" defstate="0">
<led7seg><color red="1.0" green="0.1" blue="0.15" /></led7seg>
</element>
<!-- score/status panel -->
<group name="panel">
<element ref="whitem"><bounds x="0" y="0" width="226" height="48" /></element>
<element ref="black"><bounds x="2" y="11" width="54" height="26" /></element>
<element ref="black"><bounds x="58" y="11" width="54" height="26" /></element>
<element ref="black"><bounds x="114" y="11" width="54" height="26" /></element>
<element ref="black"><bounds x="170" y="11" width="54" height="26" /></element>
<element name="digit5" ref="digit"><bounds x="21.5" y="14" width="15" height="20" /></element>
<element name="digit4" ref="digit"><bounds x="77.5" y="14" width="15" height="20" /></element>
<element name="digit6" ref="digit"><bounds x="133.5" y="14" width="15" height="20" /></element>
<element name="digit8" ref="digit"><bounds x="189.5" y="14" width="15" height="20" /></element>
<element ref="text_l1"><bounds x="2" y="1" width="110" height="9" /></element>
<element ref="text_l2"><bounds x="114" y="1" width="110" height="9" /></element>
<element ref="text_l3"><bounds x="2" y="38" width="54" height="9" /></element>
<element ref="text_l4"><bounds x="58" y="38" width="54" height="9" /></element>
<element ref="text_l5"><bounds x="114" y="38" width="54" height="9" /></element>
<element ref="text_l6"><bounds x="170" y="38" width="54" height="9" /></element>
</group>
<!-- build screen -->
<view name="Internal Layout">
<bounds left="5" right="30" top="-2" bottom="29.5" />
<!-- baseball field -->
<element ref="diamond_green"><bounds x="10" y="10" width="15" height="15" /></element>
<element ref="ring_mask" blend="multiply"><bounds x="10" y="10" width="15" height="15" /></element>
<element ref="blackd"><bounds x="15.75" y="13.15" width="3.5" height="3.5" /></element>
<element ref="black"><bounds x="15.75" y="14.9" width="3.5" height="15" /></element>
<element ref="diamond_white"><bounds x="16.4" y="7.8" width="2.2" height="2.2" /></element>
<element ref="diamond_black"><bounds x="16.6" y="8.0" width="1.8" height="1.8" /></element>
<element ref="diamond_white"><bounds x="7.8" y="16.4" width="2.2" height="2.2" /></element>
<element ref="diamond_black"><bounds x="8.0" y="16.6" width="1.8" height="1.8" /></element>
<element ref="diamond_white"><bounds x="25.0" y="16.4" width="2.2" height="2.2" /></element>
<element ref="diamond_black"><bounds x="25.2" y="16.6" width="1.8" height="1.8" /></element>
<element ref="diamond_white"><bounds x="-12.0" y="12.4" width="30" height="30" /></element>
<element ref="diamond_white"><bounds x="17.0" y="12.4" width="30" height="30" /></element>
<element ref="diamond_black"><bounds x="-12.0" y="12.6" width="30" height="30" /></element>
<element ref="diamond_black"><bounds x="17.0" y="12.6" width="30" height="30" /></element>
<element ref="field_outer" blend="add"><bounds x="0" y="-5" width="40" height="40" /></element>
<element ref="diamond_green"><bounds x="-12.0" y="13.4" width="30" height="30" /></element>
<element ref="diamond_green"><bounds x="17.0" y="13.4" width="30" height="30" /></element>
<element ref="green"><bounds x="5" y="28" width="30" height="10" /></element>
<element ref="black"><bounds x="16" y="26.75" width="3" height="10" /></element>
<element ref="black"><bounds x="15.75" y="26.15" width="0.7" height="10" /></element>
<element ref="black"><bounds x="18.55" y="26.15" width="0.7" height="10" /></element>
<element ref="white"><bounds x="17.15" y="26.65" width="0.7" height="0.15" /></element>
<element ref="home_base" blend="add"><bounds x="16.725" y="25.3" width="1.55" height="1.55" /></element>
<element ref="whitem" blend="multiply"><bounds x="0" y="-5" width="40" height="40" /></element>
<element ref="text_p"><bounds x="16.25" y="14" width="1" height="1.6" /></element>
<element ref="black"><bounds x="16.2" y="25" width="0.4" height="2" /></element>
<element ref="text_b"><bounds x="15.9" y="25.25" width="1" height="1.6" /></element>
<!-- cut edges -->
<element ref="black"><bounds x="-20" y="-25" width="80" height="25" /></element>
<element ref="black"><bounds x="-20" y="29.5" width="80" height="25" /></element>
<element ref="black"><bounds x="-20" y="-20" width="25" height="80" /></element>
<element ref="black"><bounds x="30" y="-20" width="25" height="80" /></element>
<element ref="diamond_black"><bounds x="-12.0" y="16.8" width="30" height="30" /></element>
<element ref="diamond_black"><bounds x="17.0" y="16.8" width="30" height="30" /></element>
<!-- leds -->
<element name="5.7" ref="led"><bounds x="17.0" y="25.6" width="1" height="1" /></element>
<element name="0.8" ref="led"><bounds x="19.866" y="22.733" width="1" height="1" /></element>
<element name="0.7" ref="led"><bounds x="22.733" y="19.866" width="1" height="1" /></element>
<element name="0.0" ref="led"><bounds x="25.6" y="17.0" width="1" height="1" /></element>
<element name="1.8" ref="led"><bounds x="22.733" y="14.133" width="1" height="1" /></element>
<element name="1.7" ref="led"><bounds x="19.866" y="11.266" width="1" height="1" /></element>
<element name="1.0" ref="led"><bounds x="17.0" y="8.4" width="1" height="1" /></element>
<element name="2.8" ref="led"><bounds x="14.133" y="11.266" width="1" height="1" /></element>
<element name="2.7" ref="led"><bounds x="11.266" y="14.133" width="1" height="1" /></element>
<element name="2.0" ref="led"><bounds x="8.4" y="17.0" width="1" height="1" /></element>
<element name="3.8" ref="led"><bounds x="11.266" y="19.866" width="1" height="1" /></element>
<element name="3.7" ref="led"><bounds x="14.133" y="22.733" width="1" height="1" /></element>
<element name="7.0" ref="led"><bounds x="17.0" y="14.85" width="1" height="1" /></element>
<element name="7.9" ref="led"><bounds x="17.0" y="16.72" width="1" height="1" /></element>
<element name="7.8" ref="led"><bounds x="17.0" y="18.59" width="1" height="1" /></element>
<element name="7.7" ref="led"><bounds x="17.0" y="20.46" width="1" height="1" /></element>
<element name="5.9" ref="led"><bounds x="17.0" y="22.33" width="1" height="1" /></element>
<element name="5.8" ref="led"><bounds x="17.0" y="24.2" width="1" height="1" /></element>
<element name="6.9" ref="led"><bounds x="18.05" y="16.72" width="1" height="1" /></element>
<element name="6.8" ref="led"><bounds x="18.35" y="18.59" width="1" height="1" /></element>
<element name="6.7" ref="led"><bounds x="18.05" y="20.46" width="1" height="1" /></element>
<element name="4.9" ref="led"><bounds x="17.0" y="27.0" width="1" height="1" /></element>
<element name="4.8" ref="led"><bounds x="17.0" y="28.1" width="1" height="1" /></element>
<element name="1.9" ref="led"><bounds x="7.8" y="13.26" width="1" height="1" /></element>
<element name="0.9" ref="led"><bounds x="26.2" y="13.26" width="1" height="1" /></element>
<element ref="black"><bounds x="7.7" y="5.83" width="2" height="2" /></element>
<element ref="black"><bounds x="16.5" y="2.9" width="2" height="2" /></element>
<element ref="black"><bounds x="25.3" y="5.83" width="2" height="2" /></element>
<element name="2.9" ref="led"><bounds x="8.2" y="6.33" width="1" height="1" /></element>
<element name="3.9" ref="led"><bounds x="17.0" y="3.4" width="1" height="1" /></element>
<element name="8.9" ref="led"><bounds x="25.8" y="6.33" width="1" height="1" /></element>
<element ref="black"><bounds x="-20" y="-2" width="80" height="3.4" /></element>
<group ref="panel"><bounds x="9.5" y="-2" width="16" height="3.4" /></group>
</view>
</mamelayout>

164
src/mame/layout/mfootb.lay Normal file
View File

@ -0,0 +1,164 @@
<?xml version="1.0"?>
<!--
license:CC0
-->
<mamelayout version="2">
<!-- define elements -->
<element name="black"><rect><color red="0.0" green="0.0" blue="0.0" /></rect></element>
<element name="white"><rect><color red="0.8" green="0.8" blue="0.8" /></rect></element>
<element name="green"><rect><color red="0.1" green="0.5" blue="0.2" /></rect></element>
<element name="text_down">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="DOWN"><color red="0.1" green="0.35" blue="0.7" /></text>
</element>
<element name="text_home">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="HOME"><color red="0.1" green="0.35" blue="0.7" /></text>
</element>
<element name="text_yards">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="YARDS TO GO"><color red="0.1" green="0.35" blue="0.7" /></text>
</element>
<element name="text_time">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="TIME REMAINING"><color red="0.1" green="0.35" blue="0.7" /></text>
</element>
<element name="text_field">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="FIELD POSITION"><color red="0.1" green="0.35" blue="0.7" /></text>
</element>
<element name="text_visitor">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="VISITOR"><color red="0.1" green="0.35" blue="0.7" /></text>
</element>
<element name="digit" defstate="0">
<led7seg><color red="1.0" green="0.1" blue="0.15" /></led7seg>
</element>
<element name="seg" defstate="0">
<rect>
<bounds x="0.0" y="0.0" width="1.0" height="1.0" />
<color alpha="0" />
</rect>
<rect state="0">
<bounds x="0.25" y="0.15" width="0.5" height="0.7" />
<color red="0.1" green="0.01" blue="0.015" />
</rect>
<rect state="1">
<bounds x="0.25" y="0.15" width="0.5" height="0.7" />
<color red="0.5" green="0.05" blue="0.075" />
</rect>
<rect state="2">
<bounds x="0.25" y="0.15" width="0.5" height="0.7" />
<color red="1.0" green="0.1" blue="0.15" />
</rect>
</element>
<!-- score/status panel -->
<group name="panel">
<element ref="white"><bounds x="2" y="0" width="179" height="48" /></element>
<element ref="black"><bounds x="4" y="11" width="175" height="26" /></element>
<element name="digit0" ref="digit"><bounds x="21" y="16" width="12" height="16" /></element>
<element name="digit1" ref="digit"><bounds x="37" y="16" width="12" height="16" /></element>
<element name="digit2" ref="digit"><bounds x="69" y="16" width="12" height="16" /></element>
<element name="digit3" ref="digit"><bounds x="85" y="16" width="12" height="16" /></element>
<element name="digit4" ref="digit"><bounds x="101" y="16" width="12" height="16" /></element>
<element name="digit5" ref="digit"><bounds x="133" y="16" width="12" height="16" /></element>
<element name="digit6" ref="digit"><bounds x="149" y="16" width="12" height="16" /></element>
<element ref="white"><bounds x="58" y="1" width="2" height="46" /></element>
<element ref="white"><bounds x="123" y="1" width="2" height="46" /></element>
<element ref="text_down"><bounds x="4" y="1" width="54" height="9" /></element>
<element ref="text_field"><bounds x="58" y="1" width="67" height="9" /></element>
<element ref="text_yards"><bounds x="124" y="1" width="56" height="9" /></element>
<element ref="text_home"><bounds x="4" y="38" width="54" height="9" /></element>
<element ref="text_time"><bounds x="58" y="38" width="67" height="9" /></element>
<element ref="text_visitor"><bounds x="124" y="38" width="56" height="9" /></element>
</group>
<!-- build screen -->
<view name="Internal Layout">
<bounds left="0" right="183" top="-5.7" bottom="109" />
<element ref="green"><bounds x="-1" y="27" width="205" height="83" /></element>
<group ref="panel"><bounds x="12" y="-5.7" width="159" height="42.6" /></group>
<!-- playing field -->
<element ref="white"><bounds x="-1" y="53" width="205" height="54" /></element>
<element ref="black"><bounds x="2" y="55" width="19" height="50" /></element>
<element ref="black"><bounds x="22" y="55" width="19" height="50" /></element>
<element ref="black"><bounds x="42" y="55" width="19" height="50" /></element>
<element ref="black"><bounds x="62" y="55" width="19" height="50" /></element>
<element ref="black"><bounds x="82" y="55" width="19" height="50" /></element>
<element ref="black"><bounds x="102" y="55" width="19" height="50" /></element>
<element ref="black"><bounds x="122" y="55" width="19" height="50" /></element>
<element ref="black"><bounds x="142" y="55" width="19" height="50" /></element>
<element ref="black"><bounds x="162" y="55" width="19" height="50" /></element>
<element ref="white"><bounds x="0" y="71" width="203" height="1" /></element>
<element ref="white"><bounds x="0" y="88" width="203" height="1" /></element>
<element ref="black"><bounds x="3.5" y="56" width="16" height="48" /></element>
<element ref="black"><bounds x="23.5" y="56" width="16" height="48" /></element>
<element ref="black"><bounds x="43.5" y="56" width="16" height="48" /></element>
<element ref="black"><bounds x="63.5" y="56" width="16" height="48" /></element>
<element ref="black"><bounds x="83.5" y="56" width="16" height="48" /></element>
<element ref="black"><bounds x="103.5" y="56" width="16" height="48" /></element>
<element ref="black"><bounds x="123.5" y="56" width="16" height="48" /></element>
<element ref="black"><bounds x="143.5" y="56" width="16" height="48" /></element>
<element ref="black"><bounds x="163.5" y="56" width="16" height="48" /></element>
<element name="0.10" ref="seg"><bounds x="7" y="62" width="9" height="2" /></element>
<element name="0.9" ref="seg"><bounds x="7" y="79" width="9" height="2" /></element>
<element name="0.8" ref="seg"><bounds x="7" y="96" width="9" height="2" /></element>
<element name="1.10" ref="seg"><bounds x="27" y="62" width="9" height="2" /></element>
<element name="1.9" ref="seg"><bounds x="27" y="79" width="9" height="2" /></element>
<element name="1.8" ref="seg"><bounds x="27" y="96" width="9" height="2" /></element>
<element name="2.10" ref="seg"><bounds x="47" y="62" width="9" height="2" /></element>
<element name="2.9" ref="seg"><bounds x="47" y="79" width="9" height="2" /></element>
<element name="2.8" ref="seg"><bounds x="47" y="96" width="9" height="2" /></element>
<element name="3.10" ref="seg"><bounds x="67" y="62" width="9" height="2" /></element>
<element name="3.9" ref="seg"><bounds x="67" y="79" width="9" height="2" /></element>
<element name="3.8" ref="seg"><bounds x="67" y="96" width="9" height="2" /></element>
<element name="4.10" ref="seg"><bounds x="87" y="62" width="9" height="2" /></element>
<element name="4.9" ref="seg"><bounds x="87" y="79" width="9" height="2" /></element>
<element name="4.8" ref="seg"><bounds x="87" y="96" width="9" height="2" /></element>
<element name="5.10" ref="seg"><bounds x="107" y="62" width="9" height="2" /></element>
<element name="5.9" ref="seg"><bounds x="107" y="79" width="9" height="2" /></element>
<element name="5.8" ref="seg"><bounds x="107" y="96" width="9" height="2" /></element>
<element name="6.10" ref="seg"><bounds x="127" y="62" width="9" height="2" /></element>
<element name="6.9" ref="seg"><bounds x="127" y="79" width="9" height="2" /></element>
<element name="6.8" ref="seg"><bounds x="127" y="96" width="9" height="2" /></element>
<element name="7.10" ref="seg"><bounds x="147" y="62" width="9" height="2" /></element>
<element name="7.9" ref="seg"><bounds x="147" y="79" width="9" height="2" /></element>
<element name="7.8" ref="seg"><bounds x="147" y="96" width="9" height="2" /></element>
<element name="8.10" ref="seg"><bounds x="167" y="62" width="9" height="2" /></element>
<element name="8.9" ref="seg"><bounds x="167" y="79" width="9" height="2" /></element>
<element name="8.8" ref="seg"><bounds x="167" y="96" width="9" height="2" /></element>
<!-- cut edges -->
<element ref="black"><bounds x="-10" y="0" width="10" height="150" /></element>
<element ref="black"><bounds x="183" y="0" width="100" height="150" /></element>
<element ref="black"><bounds x="-10" y="109" width="300" height="10" /></element>
</view>
</mamelayout>

View File

@ -12,27 +12,27 @@ license:CC0
<element name="text_down">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="DOWN"><color red="0.1" green="0.4" blue="0.8" /></text>
<text string="DOWN"><color red="0.1" green="0.35" blue="0.7" /></text>
</element>
<element name="text_home">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="HOME"><color red="0.1" green="0.4" blue="0.8" /></text>
<text string="HOME"><color red="0.1" green="0.35" blue="0.7" /></text>
</element>
<element name="text_yards">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="YARDS TO GO"><color red="0.1" green="0.4" blue="0.8" /></text>
<text string="YARDS TO GO"><color red="0.1" green="0.35" blue="0.7" /></text>
</element>
<element name="text_time">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="TIME REMAINING"><color red="0.1" green="0.4" blue="0.8" /></text>
<text string="TIME REMAINING"><color red="0.1" green="0.35" blue="0.7" /></text>
</element>
<element name="text_field">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="FIELD POSITION"><color red="0.1" green="0.4" blue="0.8" /></text>
<text string="FIELD POSITION"><color red="0.1" green="0.35" blue="0.7" /></text>
</element>
<element name="text_visitors">
<rect><color red="0.8" green="0.8" blue="0.8" /></rect>
<text string="VISITORS"><color red="0.1" green="0.4" blue="0.8" /></text>
<text string="VISITORS"><color red="0.1" green="0.35" blue="0.7" /></text>
</element>
<element name="digit" defstate="0">
@ -64,13 +64,13 @@ license:CC0
<element ref="white"><bounds x="2" y="0" width="179" height="48" /></element>
<element ref="black"><bounds x="4" y="11" width="175" height="26" /></element>
<element name="digit8" ref="digit"><bounds x="19.5" y="16" width="12" height="16" /></element>
<element name="digit9" ref="digit"><bounds x="35.5" y="16" width="12" height="16" /></element>
<element name="digit0" ref="digit"><bounds x="67.5" y="16" width="12" height="16" /></element>
<element name="digit1" ref="digit"><bounds x="83.5" y="16" width="12" height="16" /></element>
<element name="digit2" ref="digit"><bounds x="99.5" y="16" width="12" height="16" /></element>
<element name="digit6" ref="digit"><bounds x="131.5" y="16" width="12" height="16" /></element>
<element name="digit7" ref="digit"><bounds x="147.5" y="16" width="12" height="16" /></element>
<element name="digit8" ref="digit"><bounds x="21" y="16" width="12" height="16" /></element>
<element name="digit9" ref="digit"><bounds x="37" y="16" width="12" height="16" /></element>
<element name="digit0" ref="digit"><bounds x="69" y="16" width="12" height="16" /></element>
<element name="digit1" ref="digit"><bounds x="85" y="16" width="12" height="16" /></element>
<element name="digit2" ref="digit"><bounds x="101" y="16" width="12" height="16" /></element>
<element name="digit6" ref="digit"><bounds x="133" y="16" width="12" height="16" /></element>
<element name="digit7" ref="digit"><bounds x="149" y="16" width="12" height="16" /></element>
<element ref="white"><bounds x="58" y="1" width="2" height="46" /></element>
<element ref="white"><bounds x="123" y="1" width="2" height="46" /></element>

View File

@ -37,7 +37,7 @@ license:CC0
<element ref="lcdm" blend="multiply"><bounds x="0" y="0" width="18" height="18" /></element>
<element ref="lcda" blend="add"><bounds x="0" y="0" width="18" height="18" /></element>
<collection name="Paddle State">
<collection name="Paddle Position">
<!-- show live paddle position -->
<element ref="text_p1" blend="add"><bounds x="10.75" y="0.1" width="5" height="0.75" /></element>
<element ref="nothing" blend="add" inputtag="PADDLE" inputmask="0x00" inputraw="yes"><bounds x="15.95" y="0.1" width="2" height="0.75" /></element> <!-- block clickable input -->

120
src/mame/layout/misatk.lay Normal file
View File

@ -0,0 +1,120 @@
<?xml version="1.0"?>
<!--
license:CC0
-->
<mamelayout version="2">
<!-- define elements -->
<element name="black"><rect><color red="0" green="0" blue="0" /></rect></element>
<element name="white"><rect><color red="1" green="1" blue="1" /></rect></element>
<element name="yellowm"><rect><color red="0.6" green="0.55" blue="0.2" /></rect></element>
<element name="ring">
<disk><bounds x="0" y="0" width="1" height="1" /><color red="1" green="1" blue="1" /></disk>
<disk><bounds x="0.0075" y="0.0075" width="0.985" height="0.985" /><color red="0" green="0" blue="0" /></disk>
</element>
<element name="ring2">
<disk><bounds x="0" y="0" width="1" height="1" /><color red="1" green="1" blue="1" /></disk>
<disk><bounds x="2" y="0" width="1" height="1" /><color red="1" green="1" blue="1" /></disk>
<rect><bounds x="0.5" y="0" width="2" height="1" /><color red="1" green="1" blue="1" /></rect>
<disk><bounds x="0.05" y="0.05" width="0.9" height="0.9" /><color red="0" green="0" blue="0" /></disk>
<disk><bounds x="2.05" y="0.05" width="0.9" height="0.9" /><color red="0" green="0" blue="0" /></disk>
<rect><bounds x="0.5" y="0.05" width="2" height="0.9" /><color red="0" green="0" blue="0" /></rect>
</element>
<element name="text_-1"><text string=" "></text></element> <!-- loop overflow -->
<element name="text_0"><text string="0"></text></element>
<element name="text_1"><text string="1"></text></element>
<element name="text_2"><text string="2"></text></element>
<element name="text_3"><text string="3"></text></element>
<element name="text_4"><text string="4"></text></element>
<element name="text_5"><text string="5"></text></element>
<element name="text_6"><text string="6"></text></element>
<element name="digit" defstate="0">
<led7seg><color red="1.0" green="0.1" blue="0.15" /></led7seg>
</element>
<element name="led" defstate="0">
<rect>
<bounds x="0.0" y="0.0" width="1.0" height="1.0" />
<color alpha="0" />
</rect>
<rect state="0">
<bounds x="0.35" y="0.0" width="0.3" height="1.0" />
<color red="0.1" green="0.01" blue="0.015" />
</rect>
<rect state="1">
<bounds x="0.35" y="0.0" width="0.3" height="1.0" />
<color red="0.5" green="0.05" blue="0.075" />
</rect>
<rect state="2">
<bounds x="0.35" y="0.0" width="0.3" height="1.0" />
<color red="1.0" green="0.1" blue="0.15" />
</rect>
</element>
<!-- 7seg leds -->
<group name="digits">
<element name="digit7" ref="digit"><bounds x="7" y="0" width="0.75" height="1" /></element>
<element name="digit8" ref="digit"><bounds x="8" y="0" width="0.75" height="1" /></element>
</group>
<!-- build screen -->
<view name="Internal Layout">
<bounds left="12.5" right="27.6" top="3.4" bottom="35.64" />
<!-- bezel -->
<element ref="white"><bounds x="13" y="3.9" width="14" height="0.14" /></element>
<element ref="white"><bounds x="19.93" y="3.9" width="0.14" height="10" /></element>
<element ref="ring2"><bounds x="15.5" y="5.5" width="9" height="3" /></element>
<repeat count="8">
<param name="y" start="10" increment="3.2" />
<element ref="ring"><bounds x="10" y="~y~" width="20" height="20" /></element>
</repeat>
<element ref="black"><bounds x="8" y="10" width="5" height="50" /></element>
<element ref="black"><bounds x="27" y="10" width="5" height="50" /></element>
<element ref="black"><bounds x="10" y="40" width="20" height="50" /></element>
<repeat count="4">
<param name="y" start="13.5" increment="6.4" />
<element ref="black"><bounds x="10" y="~y~" width="5.2" height="3.2" /></element>
<element ref="black"><bounds x="24.8" y="~y~" width="5" height="3.2" /></element>
</repeat>
<repeat count="4">
<param name="y1" start="12.0" increment="6.4" />
<param name="y2" start="15.1" increment="6.4" />
<param name="i1" start="6" increment="-2" />
<param name="i2" start="5" increment="-2" />
<element ref="text_~i1~"><bounds x="13.3" y="~y1~" width="2" height="2.8" /></element>
<element ref="text_~i1~"><bounds x="24.7" y="~y1~" width="2" height="2.8" /></element>
<element ref="text_~i2~"><bounds x="13.3" y="~y2~" width="2" height="2.8" /></element>
<element ref="text_~i2~"><bounds x="24.7" y="~y2~" width="2" height="2.8" /></element>
</repeat>
<element ref="white"><bounds x="13" y="35" width="14" height="0.14" /></element>
<element ref="yellowm" blend="multiply"><bounds x="0" y="0" width="50" height="50" /></element>
<!-- led matrix -->
<repeat count="7">
<param name="y" start="12.1" increment="3.2" />
<param name="i1" start="6" increment="-1" />
<element name="~i1~.2" ref="led"><bounds x="17.0" y="~y~" width="1" height="0.8" /></element>
<element name="~i1~.5" ref="led"><bounds x="19.5" y="~y~" width="1" height="0.8" /></element>
<element name="~i1~.6" ref="led"><bounds x="22.0" y="~y~" width="1" height="0.8" /></element>
</repeat>
<group ref="digits"><bounds x="18" y="5.85" width="4" height="2.3" /></group>
</view>
</mamelayout>

View File

@ -69,13 +69,13 @@ license:CC0
<element ref="static_white"><bounds x="2" y="0" width="179" height="48" /></element>
<element ref="static_black"><bounds x="4" y="11" width="175" height="26" /></element>
<element name="digit6" ref="digit"><bounds x="19.5" y="16" width="12" height="16" /></element>
<element name="digit5" ref="digit"><bounds x="35.5" y="16" width="12" height="16" /></element>
<element name="digit4" ref="digit"><bounds x="67.5" y="16" width="12" height="16" /></element>
<element name="digit3" ref="digit"><bounds x="83.5" y="16" width="12" height="16" /></element>
<element name="digit2" ref="digit"><bounds x="99.5" y="16" width="12" height="16" /></element>
<element name="digit1" ref="digit"><bounds x="131.5" y="16" width="12" height="16" /></element>
<element name="digit0" ref="digit"><bounds x="147.5" y="16" width="12" height="16" /></element>
<element name="digit6" ref="digit"><bounds x="21" y="16" width="12" height="16" /></element>
<element name="digit5" ref="digit"><bounds x="37" y="16" width="12" height="16" /></element>
<element name="digit4" ref="digit"><bounds x="69" y="16" width="12" height="16" /></element>
<element name="digit3" ref="digit"><bounds x="85" y="16" width="12" height="16" /></element>
<element name="digit2" ref="digit"><bounds x="101" y="16" width="12" height="16" /></element>
<element name="digit1" ref="digit"><bounds x="133" y="16" width="12" height="16" /></element>
<element name="digit0" ref="digit"><bounds x="149" y="16" width="12" height="16" /></element>
<element ref="static_white"><bounds x="58" y="1" width="2" height="46" /></element>
<element ref="static_white"><bounds x="123" y="1" width="2" height="46" /></element>

View File

@ -69,13 +69,13 @@ license:CC0
<element ref="static_white"><bounds x="2" y="0" width="179" height="48" /></element>
<element ref="static_black"><bounds x="4" y="11" width="175" height="26" /></element>
<element name="digit7" ref="digit"><bounds x="19.5" y="16" width="12" height="16" /></element>
<element name="digit6" ref="digit"><bounds x="35.5" y="16" width="12" height="16" /></element>
<element name="digit5" ref="digit"><bounds x="67.5" y="16" width="12" height="16" /></element>
<element name="digit4" ref="digit"><bounds x="83.5" y="16" width="12" height="16" /></element>
<element name="digit3" ref="digit"><bounds x="99.5" y="16" width="12" height="16" /></element>
<element name="digit1" ref="digit"><bounds x="131.5" y="16" width="12" height="16" /></element>
<element name="digit0" ref="digit"><bounds x="147.5" y="16" width="12" height="16" /></element>
<element name="digit7" ref="digit"><bounds x="21" y="16" width="12" height="16" /></element>
<element name="digit6" ref="digit"><bounds x="37" y="16" width="12" height="16" /></element>
<element name="digit5" ref="digit"><bounds x="69" y="16" width="12" height="16" /></element>
<element name="digit4" ref="digit"><bounds x="85" y="16" width="12" height="16" /></element>
<element name="digit3" ref="digit"><bounds x="101" y="16" width="12" height="16" /></element>
<element name="digit1" ref="digit"><bounds x="133" y="16" width="12" height="16" /></element>
<element name="digit0" ref="digit"><bounds x="149" y="16" width="12" height="16" /></element>
<element ref="static_white"><bounds x="58" y="1" width="2" height="46" /></element>
<element ref="static_white"><bounds x="123" y="1" width="2" height="46" /></element>