New working machine added

-------
Gakken Game Robot 9/Mego Fabulous Fred [hap, Sean Riddle]
This commit is contained in:
hap 2016-10-12 23:39:46 +02:00
parent 06d0afbef9
commit bf50b9920a
5 changed files with 494 additions and 14 deletions

View File

@ -19,14 +19,15 @@
@CP0904A TMS0970 1977, Milton Bradley Comp IV
@MP0905B TMS0970 1977, Parker Brothers Codename Sector
*MP0057 TMS1000 1978, APH Student Speech+ (same ROM contents as TSI Speech+?)
@MP0158 TMS1000 1979, Entex Soccer
@MP0158 TMS1000 1979, Entex Soccer (6003)
@MP0163 TMS1000 1979, A-One LSI Match Number/LJN Electronic Concentration
*MP0168 TMS1000 1979, Conic Basketball/Tandy Sports Arena
@MP0170 TMS1000 1979, Conic Football
*MP0230 TMS1000? 1980, Entex Blast It
*MP0230 TMS1000? 1980, Entex Blast It (6015)
@MP0914 TMS1000 1979, Entex Baseball 1
@MP0919 TMS1000 1979, Tiger Copy Cat (model 7-520)
@MP0923 TMS1000 1979, Entex Baseball 2
*MP0920 TMS1000 1979, Entex Space Battle (6004)
@MP0923 TMS1000 1979, Entex Baseball 2 (6002)
@MP1030 TMS1100 1980, APF Mathemagician
@MP1133 TMS1470 1979, Kosmos Astro
@MP1180 TMS1100 1980, Tomy Power House Pinball
@ -35,17 +36,17 @@
@MP1193 TMS1100 1980, Tandy Championship Football (model 60-2150)
@MP1204 TMS1100 1980, Entex Baseball 3 (6007)
*MP1209 TMS1100 1980, U.S. Games Space Cruiser/Strategy Football
@MP1211 TMS1100 1980, Entex Space Invader
@MP1211 TMS1100 1980, Entex Space Invader (6012)
@MP1218 TMS1100 1980, Entex Basketball 2 (6010)
@MP1219 TMS1100 1980, U.S. Games Super Sports-4
@MP1221 TMS1100 1980, Entex Raise The Devil
@MP1221 TMS1100 1980, Entex Raise The Devil (6011)
*MP1296 TMS1100? 1982, Entex Black Knight
@MP1312 TMS1100 1983, Gakken FX-Micom R-165/Tandy Radio Shack Science Fair Microcomputer Trainer
*MP1359 TMS1100? 1985, Capsela CRC2000
@MP1525 TMS1170 1980, Coleco Head to Head Baseball
*MP1604 ? 1981, Hanzawa Twinvader III/Tandy Cosmic Fire Away 3000 (? note: VFD-capable)
@MP1801 TMS1700 1981, Tiger Ditto/Tandy Pocket Repeat (model 60-2152)
@MP2105 TMS1370 1979, Gakken/Entex Poker
@MP2105 TMS1370 1979, Gakken/Entex Poker (6005)
*MP2139 TMS1370? 1982, Gakken Galaxy Invader 1000
@MP2726 TMS1040 1979, Tomy Break Up
*MP2788 TMS1040? 1980, Bandai Flight Time (? note: VFD-capable)
@ -96,7 +97,7 @@
@MP7334 TMS1400 1981, Coleco Total Control 4
@MP7351 TMS1400 1982, Parker Brothers Master Merlin
@MP7551 TMS1670 1980, Entex Color Football 4 (6009)
@MPF553 TMS1670 1980, Gakken/Entex Jackpot: Gin Rummy & Black Jack (note: assume F to be a misprint)
@MPF553 TMS1670 1980, Gakken/Entex Jackpot: Gin Rummy & Black Jack (6008) (note: assume F to be a misprint)
*MP7573 TMS1670? 1981, Entex Select-a-Game cartridge: Football 4 (? note: 40-pin, VFD-capable)
inconsistent:
@ -5995,12 +5996,17 @@ MACHINE_CONFIG_END
* TMS1100 MCU, label CD7282SL
* 12 lamps behind buttons, 1-bit sound
This handheld contains 12 minigames. It looks and plays like "Fabulous Fred"
by the Japanese company Mego Corp. in 1980, which in turn is a mix of Merlin
and Simon. Unlike Merlin and Simon, spin-offs like these were not successful.
There were releases with and without the prefix "Tandy-12", I don't know
which name was more common. Also not worth noting is that it needed five
batteries; 4 C-cells and a 9-volt.
known releases:
- World: Tandy-12: Computerized Arcade
- Mexico: Fabuloso Fred, distributed by Ensueno Toys (also released as
9-button version, a clone of Mego Fabulous Fred)
This handheld contains 12 minigames. It looks and plays like Game Robot 9 by
Gakken (aka Mego's Fabulous Fred) from 1980, which in turn is a mix of Merlin
and Simon. Unlike Merlin and Simon, spin-offs were not as successful in the USA.
There were releases with and without the prefix "Tandy-12", I don't know which
name was more common. Also not worth noting is that it needed five batteries;
four C-cells and a 9-volt.
Some of the games require accessories included with the toy (eg. the Baseball
game is played with a board representing the playing field). To start a game,

View File

@ -48,7 +48,7 @@
@258 uPD553C 1984, Tomy Alien Chase (TN-16)
*296 uPD553C 1984, Epoch Computer Beam Gun Professional
*511 uPD557LC 1980, Gakken Game Robot 9/Mego Fabulous Fred
@511 uPD557LC 1980, Gakken Game Robot 9/Mego Fabulous Fred
@512 uPD557LC 1980, Castle Toy Tactix
@060 uPD650C 1979, Mattel Computer Gin
@ -70,6 +70,7 @@ TODO:
// internal artwork
#include "efball.lh"
#include "grobot9.lh" // clickable
#include "mcompgin.lh"
#include "mvbfree.lh"
#include "tactix.lh" // clickable
@ -88,6 +89,7 @@ void hh_ucom4_state::machine_start()
memset(m_display_segmask, 0, sizeof(m_display_segmask));
memset(m_port, 0, sizeof(m_port));
m_int = 0;
m_inp_mux = 0;
m_grid = 0;
m_plate = 0;
@ -103,6 +105,7 @@ void hh_ucom4_state::machine_start()
save_item(NAME(m_display_segmask));
save_item(NAME(m_port));
save_item(NAME(m_int));
save_item(NAME(m_inp_mux));
save_item(NAME(m_grid));
save_item(NAME(m_plate));
@ -110,6 +113,7 @@ void hh_ucom4_state::machine_start()
void hh_ucom4_state::machine_reset()
{
refresh_interrupts();
}
@ -222,6 +226,31 @@ UINT8 hh_ucom4_state::read_inputs(int columns)
}
// interrupt handling
void hh_ucom4_state::refresh_interrupts()
{
m_maincpu->set_input_line(0, m_int ? ASSERT_LINE : CLEAR_LINE);
}
void hh_ucom4_state::set_interrupt(int state)
{
state = state ? 1 : 0;
if (state != m_int)
{
if (machine().phase() >= MACHINE_PHASE_RESET)
m_maincpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
m_int = state;
}
}
INPUT_CHANGED_MEMBER(hh_ucom4_state::single_interrupt_line)
{
set_interrupt(newval);
}
/***************************************************************************
@ -1628,6 +1657,121 @@ MACHINE_CONFIG_END
/***************************************************************************
Gakken Game Robot 9
* PCB label GAME ROBOT 7520
* NEC uCOM-43 MCU, label TTGR-512 (die label NEC D557 511)
* 9 lamps behind buttons
known releases:
- Japan: Game Robot 9 (Takatoku Toys?)
- USA: Fabulous Fred - The Ultimate Electronic Game, distributed by Mego
- Mexico: Fabuloso Fred, distributed by Ensueno Toys (also released as
12-button version, a clone of Tandy-12)
Accessories were included for some of the minigames.
***************************************************************************/
class grobot9_state : public hh_ucom4_state
{
public:
grobot9_state(const machine_config &mconfig, device_type type, const char *tag)
: hh_ucom4_state(mconfig, type, tag)
{ }
DECLARE_WRITE8_MEMBER(lamps_w);
DECLARE_WRITE8_MEMBER(speaker_w);
DECLARE_WRITE8_MEMBER(input_w);
DECLARE_READ8_MEMBER(input_r);
};
// handlers
WRITE8_MEMBER(grobot9_state::lamps_w)
{
if (offset == NEC_UCOM4_PORTE)
{
// E1: speaker out
m_speaker->level_w(data >> 1 & 1);
// E3: input mux high bit
m_inp_mux = (m_inp_mux & 7) | (data & 8);
}
// D,F,E0: lamps
m_port[offset] = data;
display_matrix(9, 1, m_port[NEC_UCOM4_PORTD] | m_port[NEC_UCOM4_PORTF] << 4 | m_port[NEC_UCOM4_PORTE] << 8, 1);
}
WRITE8_MEMBER(grobot9_state::input_w)
{
// C012: input mux low
m_inp_mux = (m_inp_mux & 8) | (data & 7);
}
READ8_MEMBER(grobot9_state::input_r)
{
// A: multiplexed inputs
return read_inputs(5);
}
// config
static INPUT_PORTS_START( grobot9 )
PORT_START("IN.0") // C0 port A
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_1) PORT_CODE(KEYCODE_Q) PORT_NAME("Button 1")
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_2) PORT_CODE(KEYCODE_W) PORT_NAME("Button 2")
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_3) PORT_CODE(KEYCODE_E) PORT_NAME("Button 3")
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_4) PORT_CODE(KEYCODE_D) PORT_NAME("Button 4")
PORT_START("IN.1") // C1 port A
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_5) PORT_CODE(KEYCODE_C) PORT_NAME("Button 5")
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_6) PORT_CODE(KEYCODE_X) PORT_NAME("Button 6")
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_7) PORT_CODE(KEYCODE_Z) PORT_NAME("Button 7")
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_8) PORT_CODE(KEYCODE_A) PORT_NAME("Button 8")
PORT_START("IN.2") // C2 port A
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_9) PORT_CODE(KEYCODE_S) PORT_NAME("Button 9")
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_T) PORT_NAME("Rest")
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_Y) PORT_NAME("Eighth Note")
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_START("IN.3") // E3 port A
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_B) PORT_NAME("Select")
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_N) PORT_NAME("Hit")
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_R) PORT_NAME("Repeat")
PORT_START("IN.4") // INT
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_V) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_ucom4_state, single_interrupt_line, nullptr) PORT_NAME("Start-Pitch")
INPUT_PORTS_END
static MACHINE_CONFIG_START( grobot9, grobot9_state )
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", NEC_D557L, 160000) // approximation
MCFG_UCOM4_READ_A_CB(READ8(grobot9_state, input_r))
MCFG_UCOM4_WRITE_C_CB(WRITE8(grobot9_state, input_w))
MCFG_UCOM4_WRITE_D_CB(WRITE8(grobot9_state, lamps_w))
MCFG_UCOM4_WRITE_E_CB(WRITE8(grobot9_state, lamps_w))
MCFG_UCOM4_WRITE_F_CB(WRITE8(grobot9_state, lamps_w))
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_ucom4_state, display_decay_tick, attotime::from_msec(1))
MCFG_DEFAULT_LAYOUT(layout_grobot9)
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("speaker", SPEAKER_SOUND, 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MACHINE_CONFIG_END
/***************************************************************************
Mattel Computer Gin
@ -2624,6 +2768,12 @@ ROM_START( edracula )
ROM_END
ROM_START( grobot9 )
ROM_REGION( 0x0800, "maincpu", 0 )
ROM_LOAD( "ttgr-511", 0x0000, 0x0800, CRC(1f25b2bb) SHA1(55ae7e23f6dd46cc6e1a65839327726678410c3a) )
ROM_END
ROM_START( mcompgin )
ROM_REGION( 0x0800, "maincpu", 0 )
ROM_LOAD( "d650c-060", 0x0000, 0x0800, BAD_DUMP CRC(92a4d8be) SHA1(d67f14a2eb53b79a7d9eb08103325299bc643781) ) // d5 stuck: xx1x xxxx
@ -2709,6 +2859,8 @@ CONS( 1981, galaxy2b, galaxy2, 0, galaxy2b, galaxy2, driver_device, 0, "Epoch"
CONS( 1982, astrocmd, 0, 0, astrocmd, astrocmd, driver_device, 0, "Epoch", "Astro Command", MACHINE_SUPPORTS_SAVE )
CONS( 1982, edracula, 0, 0, edracula, edracula, driver_device, 0, "Epoch", "Dracula (Epoch)", MACHINE_SUPPORTS_SAVE )
CONS( 1980, grobot9, 0, 0, grobot9, grobot9, driver_device, 0, "Gakken", "Game Robot 9", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK ) // some of the minigames: ***
CONS( 1979, mcompgin, 0, 0, mcompgin, mcompgin, driver_device, 0, "Mattel", "Computer Gin", MACHINE_SUPPORTS_SAVE | MACHINE_NOT_WORKING )
CONS( 1979, mvbfree, 0, 0, mvbfree, mvbfree, driver_device, 0, "Mego", "Mini-Vid Break Free", MACHINE_SUPPORTS_SAVE )
@ -2719,3 +2871,6 @@ CONS( 1982, tmpacman, 0, 0, tmpacman, tmpacman, driver_device, 0, "Tomy",
CONS( 1982, tmscramb, 0, 0, tmscramb, tmscramb, driver_device, 0, "Tomy", "Scramble (Tomy)", MACHINE_SUPPORTS_SAVE )
CONS( 1982, tcaveman, 0, 0, tcaveman, tcaveman, driver_device, 0, "Tomy", "Caveman (Tomy)", MACHINE_SUPPORTS_SAVE )
CONS( 1984, alnchase, 0, 0, alnchase, alnchase, driver_device, 0, "Tomy", "Alien Chase", MACHINE_SUPPORTS_SAVE )
// ***: As far as MAME is concerned, the game is emulated fine. But for it to be playable, it requires interaction
// with other, unemulatable, things eg. game board/pieces, playing cards, pen & paper, etc.

View File

@ -36,9 +36,13 @@ public:
// misc common
UINT8 m_port[9]; // MCU port A-I write data (optional)
UINT8 m_int; // MCU INT pin state
UINT16 m_inp_mux; // multiplexed inputs mask
UINT8 read_inputs(int columns);
void refresh_interrupts(void);
void set_interrupt(int state);
DECLARE_INPUT_CHANGED_MEMBER(single_interrupt_line);
// display common
int m_display_wait; // led/lamp off-delay in microseconds (default 33ms)

314
src/mame/layout/grobot9.lay Normal file
View File

@ -0,0 +1,314 @@
<?xml version="1.0"?>
<mamelayout version="2">
<!-- define elements -->
<element name="static_white"><rect><color red="0.8" green="0.8" blue="0.8" /></rect></element>
<element name="static_yellow"><rect><color red="0.8" green="0.8" blue="0.35" /></rect></element>
<element name="maskd" defstate="0">
<text string=" ">
<bounds x="0.0" y="0.0" width="1.0" height="1.0" />
<color red="0.0" green="0.0" blue="0.0" />
</text>
<disk state="1">
<bounds x="0.12" y="0.12" width="0.76" height="0.76" />
<color red="0" green="0" blue="0" />
</disk>
</element>
<element name="mask1" defstate="0">
<rect state="0"><color red="0" green="0" blue="0" /></rect>
<rect state="1"><color red="1.0" green="1.0" blue="1.0" /></rect>
</element>
<element name="mask2" defstate="0">
<rect state="0">
<color red="0" green="0" blue="0" />
<bounds x="0.94" y="0.0" width="0.06" height="1.0" />
</rect>
<rect state="0">
<color red="0" green="0" blue="0" />
<bounds x="0.0" y="0.94" width="1.0" height="0.06" />
</rect>
</element>
<element name="mask3" defstate="0">
<rect state="0">
<color red="0" green="0" blue="0" />
<bounds x="0.94" y="0.0" width="0.06" height="0.06" />
</rect>
<rect state="0">
<color red="0" green="0" blue="0" />
<bounds x="0.0" y="0.94" width="0.06" height="0.06" />
</rect>
</element>
<element name="mask4" defstate="0">
<rect state="1">
<color red="0" green="0" blue="0" />
<bounds x="0.0" y="0.0" width="0.06" height="1.0" />
</rect>
<rect state="1">
<color red="0" green="0" blue="0" />
<bounds x="0.0" y="0.0" width="1.0" height="0.06" />
</rect>
</element>
<element name="button1"><rect state="0"><color red="1.0" green="0.23" blue="0.25" /></rect></element>
<element name="button2"><rect state="0"><color red="0.9" green="0.9" blue="0.2" /></rect></element>
<element name="button3"><rect state="0"><color red="1.0" green="0.42" blue="0.2" /></rect></element>
<element name="button4"><rect state="0"><color red="0.1" green="0.7" blue="0.1" /></rect></element>
<element name="button5"><rect state="0"><color red="0.25" green="0.25" blue="1.0" /></rect></element>
<element name="button6"><rect state="0"><color red="0.2" green="0.9" blue="1.0" /></rect></element>
<element name="button7"><rect state="0"><color red="0.5" green="0.1" blue="1.0" /></rect></element>
<element name="button8"><rect state="0"><color red="0.53" green="1.0" blue="0.5" /></rect></element>
<element name="button9"><rect state="0"><color red="1.0" green="0.2" blue="0.8" /></rect></element>
<element name="text_1"><text string="1"><color red="0.94" green="0.94" blue="0.74" /></text></element>
<element name="text_2"><text string="2"><color red="0.94" green="0.94" blue="0.74" /></text></element>
<element name="text_3"><text string="3"><color red="0.94" green="0.94" blue="0.74" /></text></element>
<element name="text_4"><text string="4"><color red="0.94" green="0.94" blue="0.74" /></text></element>
<element name="text_5"><text string="5"><color red="0.94" green="0.94" blue="0.74" /></text></element>
<element name="text_6"><text string="6"><color red="0.94" green="0.94" blue="0.74" /></text></element>
<element name="text_7"><text string="7"><color red="0.94" green="0.94" blue="0.74" /></text></element>
<element name="text_8"><text string="8"><color red="0.94" green="0.94" blue="0.74" /></text></element>
<element name="text_9"><text string="9"><color red="0.94" green="0.94" blue="0.74" /></text></element>
<element name="text_u1"><text string="[1] ELECTRONIC ORGAN [2] MUSIC MACHINE [2A] WHAT'S THAT"><color red="0.84" green="0.84" blue="0.64" /></text></element>
<element name="text_u2"><text string="SONG? [3] THE MEMORY GAME [4] MINDBENDER [5] SPACE ATTACK"><color red="0.84" green="0.84" blue="0.64" /></text></element>
<element name="text_u3"><text string="[6] SUBMARINE HUNT [7] CATCH THE COMET [8] BASEBALL [9] ROULETTE"><color red="0.84" green="0.84" blue="0.64" /></text></element>
<element name="text_r1"><text string="REPEAT"><color red="0.94" green="0.94" blue="0.74" /></text></element>
<element name="text_r2"><text string="REST"><color red="0.94" green="0.94" blue="0.74" /></text></element>
<element name="text_r3"><text string="8TH NOTE"><color red="0.94" green="0.94" blue="0.74" /></text></element>
<element name="text_d1"><text string="START"><color red="0.94" green="0.94" blue="0.74" /></text></element>
<element name="text_d2"><text string="SELECT"><color red="0.94" green="0.94" blue="0.74" /></text></element>
<element name="text_d3"><text string="HIT"><color red="0.94" green="0.94" blue="0.74" /></text></element>
<!-- build screen -->
<view name="Internal Layout">
<bounds left="1" right="50" top="2.5" bottom="63.4" />
<bezel element="text_u1"><bounds x="0" y="3.5" width="52" height="1.5" /></bezel>
<bezel element="text_u2"><bounds x="0" y="5.0" width="52" height="1.5" /></bezel>
<bezel element="text_u3"><bounds x="0" y="6.5" width="52" height="1.5" /></bezel>
<!-- misc buttons -->
<bezel element="static_yellow"><bounds x="43" y="16" width="5" height="5" /></bezel>
<bezel element="static_yellow"><bounds x="43" y="31" width="5" height="5" /></bezel>
<bezel element="static_yellow"><bounds x="43" y="46" width="5" height="5" /></bezel>
<bezel element="maskd" inputtag="IN.3" inputmask="0x08"><bounds x="43" y="16" width="5" height="5" /><color alpha="0.2" /></bezel>
<bezel element="maskd" inputtag="IN.2" inputmask="0x02"><bounds x="43" y="31" width="5" height="5" /><color alpha="0.2" /></bezel>
<bezel element="maskd" inputtag="IN.2" inputmask="0x04"><bounds x="43" y="46" width="5" height="5" /><color alpha="0.2" /></bezel>
<bezel element="text_r1"><bounds x="39" y="21.4" width="13" height="2" /></bezel>
<bezel element="text_r2"><bounds x="39" y="36.4" width="13" height="2" /></bezel>
<bezel element="text_r3"><bounds x="39" y="51.4" width="13" height="2" /></bezel>
<bezel element="static_white"><bounds x="18" y="55" width="5" height="5" /></bezel>
<bezel element="static_white"><bounds x="26" y="55" width="5" height="5" /></bezel>
<bezel element="static_white"><bounds x="34" y="55" width="5" height="5" /></bezel>
<bezel element="maskd" inputtag="IN.4" inputmask="0x01"><bounds x="18" y="55" width="5" height="5" /><color alpha="0.2" /></bezel>
<bezel element="maskd" inputtag="IN.3" inputmask="0x01"><bounds x="26" y="55" width="5" height="5" /><color alpha="0.2" /></bezel>
<bezel element="maskd" inputtag="IN.3" inputmask="0x04"><bounds x="34" y="55" width="5" height="5" /><color alpha="0.2" /></bezel>
<bezel element="text_d1"><bounds x="16" y="60.4" width="9" height="2" /></bezel>
<bezel element="text_d2"><bounds x="24" y="60.4" width="9" height="2" /></bezel>
<bezel element="text_d3"><bounds x="32" y="60.4" width="9" height="2" /></bezel>
<!-- coloured lighted buttons -->
<!-- row 1 2 3 -->
<bezel element="button1">
<bounds x="3" y="9" width="10" height="12" />
</bezel>
<bezel name="lamp0" element="mask1">
<bounds x="3" y="9" width="10" height="12" />
<color alpha="0.4" />
</bezel>
<bezel element="mask2" inputtag="IN.0" inputmask="0x01">
<bounds x="3" y="9" width="10" height="12" />
<color alpha="0.4" />
</bezel>
<bezel element="mask3" inputtag="IN.0" inputmask="0x01">
<bounds x="3" y="9" width="10" height="12" />
</bezel>
<bezel element="mask4" inputtag="IN.0" inputmask="0x01">
<bounds x="3" y="9" width="10" height="12" />
</bezel>
<bezel element="button2">
<bounds x="16" y="9" width="10" height="12" />
</bezel>
<bezel name="lamp1" element="mask1">
<bounds x="16" y="9" width="10" height="12" />
<color alpha="0.4" />
</bezel>
<bezel element="mask2" inputtag="IN.0" inputmask="0x02">
<bounds x="16" y="9" width="10" height="12" />
<color alpha="0.4" />
</bezel>
<bezel element="mask3" inputtag="IN.0" inputmask="0x02">
<bounds x="16" y="9" width="10" height="12" />
</bezel>
<bezel element="mask4" inputtag="IN.0" inputmask="0x02">
<bounds x="16" y="9" width="10" height="12" />
</bezel>
<bezel element="button3">
<bounds x="29" y="9" width="10" height="12" />
</bezel>
<bezel name="lamp2" element="mask1">
<bounds x="29" y="9" width="10" height="12" />
<color alpha="0.4" />
</bezel>
<bezel element="mask2" inputtag="IN.0" inputmask="0x04">
<bounds x="29" y="9" width="10" height="12" />
<color alpha="0.4" />
</bezel>
<bezel element="mask3" inputtag="IN.0" inputmask="0x04">
<bounds x="29" y="9" width="10" height="12" />
</bezel>
<bezel element="mask4" inputtag="IN.0" inputmask="0x04">
<bounds x="29" y="9" width="10" height="12" />
</bezel>
<!-- row 8 9 4 -->
<bezel element="button8">
<bounds x="3" y="24" width="10" height="12" />
</bezel>
<bezel name="lamp7" element="mask1">
<bounds x="3" y="24" width="10" height="12" />
<color alpha="0.4" />
</bezel>
<bezel element="mask2" inputtag="IN.1" inputmask="0x08">
<bounds x="3" y="24" width="10" height="12" />
<color alpha="0.4" />
</bezel>
<bezel element="mask3" inputtag="IN.1" inputmask="0x08">
<bounds x="3" y="24" width="10" height="12" />
</bezel>
<bezel element="mask4" inputtag="IN.1" inputmask="0x08">
<bounds x="3" y="24" width="10" height="12" />
</bezel>
<bezel element="button9">
<bounds x="16" y="24" width="10" height="12" />
</bezel>
<bezel name="lamp8" element="mask1">
<bounds x="16" y="24" width="10" height="12" />
<color alpha="0.4" />
</bezel>
<bezel element="mask2" inputtag="IN.2" inputmask="0x01">
<bounds x="16" y="24" width="10" height="12" />
<color alpha="0.4" />
</bezel>
<bezel element="mask3" inputtag="IN.2" inputmask="0x01">
<bounds x="16" y="24" width="10" height="12" />
</bezel>
<bezel element="mask4" inputtag="IN.2" inputmask="0x01">
<bounds x="16" y="24" width="10" height="12" />
</bezel>
<bezel element="button4">
<bounds x="29" y="24" width="10" height="12" />
</bezel>
<bezel name="lamp3" element="mask1">
<bounds x="29" y="24" width="10" height="12" />
<color alpha="0.4" />
</bezel>
<bezel element="mask2" inputtag="IN.0" inputmask="0x08">
<bounds x="29" y="24" width="10" height="12" />
<color alpha="0.4" />
</bezel>
<bezel element="mask3" inputtag="IN.0" inputmask="0x08">
<bounds x="29" y="24" width="10" height="12" />
</bezel>
<bezel element="mask4" inputtag="IN.0" inputmask="0x08">
<bounds x="29" y="24" width="10" height="12" />
</bezel>
<!-- row 7 6 5 -->
<bezel element="button7">
<bounds x="3" y="39" width="10" height="12" />
</bezel>
<bezel name="lamp6" element="mask1">
<bounds x="3" y="39" width="10" height="12" />
<color alpha="0.4" />
</bezel>
<bezel element="mask2" inputtag="IN.1" inputmask="0x04">
<bounds x="3" y="39" width="10" height="12" />
<color alpha="0.4" />
</bezel>
<bezel element="mask3" inputtag="IN.1" inputmask="0x04">
<bounds x="3" y="39" width="10" height="12" />
</bezel>
<bezel element="mask4" inputtag="IN.1" inputmask="0x04">
<bounds x="3" y="39" width="10" height="12" />
</bezel>
<bezel element="button6">
<bounds x="16" y="39" width="10" height="12" />
</bezel>
<bezel name="lamp5" element="mask1">
<bounds x="16" y="39" width="10" height="12" />
<color alpha="0.4" />
</bezel>
<bezel element="mask2" inputtag="IN.1" inputmask="0x02">
<bounds x="16" y="39" width="10" height="12" />
<color alpha="0.4" />
</bezel>
<bezel element="mask3" inputtag="IN.1" inputmask="0x02">
<bounds x="16" y="39" width="10" height="12" />
</bezel>
<bezel element="mask4" inputtag="IN.1" inputmask="0x02">
<bounds x="16" y="39" width="10" height="12" />
</bezel>
<bezel element="button5">
<bounds x="29" y="39" width="10" height="12" />
</bezel>
<bezel name="lamp4" element="mask1">
<bounds x="29" y="39" width="10" height="12" />
<color alpha="0.4" />
</bezel>
<bezel element="mask2" inputtag="IN.1" inputmask="0x01">
<bounds x="29" y="39" width="10" height="12" />
<color alpha="0.4" />
</bezel>
<bezel element="mask3" inputtag="IN.1" inputmask="0x01">
<bounds x="29" y="39" width="10" height="12" />
</bezel>
<bezel element="mask4" inputtag="IN.1" inputmask="0x01">
<bounds x="29" y="39" width="10" height="12" />
</bezel>
<!-- number labels -->
<bezel element="text_1"><bounds x="3" y="21.4" width="9" height="2" /></bezel>
<bezel element="text_2"><bounds x="16" y="21.4" width="9" height="2" /></bezel>
<bezel element="text_3"><bounds x="29" y="21.4" width="9" height="2" /></bezel>
<bezel element="text_8"><bounds x="3" y="36.4" width="9" height="2" /></bezel>
<bezel element="text_9"><bounds x="16" y="36.4" width="9" height="2" /></bezel>
<bezel element="text_4"><bounds x="29" y="36.4" width="9" height="2" /></bezel>
<bezel element="text_7"><bounds x="3" y="51.4" width="9" height="2" /></bezel>
<bezel element="text_6"><bounds x="16" y="51.4" width="9" height="2" /></bezel>
<bezel element="text_5"><bounds x="29" y="51.4" width="9" height="2" /></bezel>
</view>
</mamelayout>

View File

@ -14235,6 +14235,7 @@ edracula // Epoch
efball // Epoch
galaxy2 // Epoch
galaxy2b // Epoch
grobot9 // Gakken
invspace // Epoch
mcompgin // Mattel
mvbfree // Mego