diff options
author | Dirk Best <mail@dirk-best.de> | 2021-05-07 17:47:44 +0200 |
---|---|---|
committer | Dirk Best <mail@dirk-best.de> | 2021-05-07 17:50:37 +0200 |
commit | 763151a18c84a6c8a2d014a03a232e3ed41b9538 (patch) | |
tree | 45bb46a2e241ed3f4e2557f90ba1e5300aaffde1 | |
parent | cdb476ebdb8cd59e41f8607da0b615e9d72e50ac (diff) |
missamer: Move to its own driver
- Flesh out driver to make it mostly work
- Create artwork showing all lamps and inputs
-rw-r--r-- | scripts/target/mame/arcade.lua | 1 | ||||
-rw-r--r-- | src/mame/arcade.flt | 1 | ||||
-rw-r--r-- | src/mame/drivers/bingo.cpp | 15 | ||||
-rw-r--r-- | src/mame/drivers/missamer.cpp | 563 | ||||
-rw-r--r-- | src/mame/layout/missamer.lay | 1361 | ||||
-rw-r--r-- | src/mame/mame.lst | 4 |
6 files changed, 1929 insertions, 16 deletions
diff --git a/scripts/target/mame/arcade.lua b/scripts/target/mame/arcade.lua index d0c79547116..55d3dcc8e17 100644 --- a/scripts/target/mame/arcade.lua +++ b/scripts/target/mame/arcade.lua @@ -4679,6 +4679,7 @@ files { MAME_DIR .. "src/mame/drivers/ltd.cpp", MAME_DIR .. "src/mame/drivers/macp.cpp", MAME_DIR .. "src/mame/drivers/micropin.cpp", + MAME_DIR .. "src/mame/drivers/missamer.cpp", MAME_DIR .. "src/mame/drivers/mephistp.cpp", MAME_DIR .. "src/mame/drivers/mrgame.cpp", MAME_DIR .. "src/mame/drivers/nsm.cpp", diff --git a/src/mame/arcade.flt b/src/mame/arcade.flt index 44848749fa8..b515e27634b 100644 --- a/src/mame/arcade.flt +++ b/src/mame/arcade.flt @@ -797,6 +797,7 @@ minivadr.cpp minivideo.cpp mirage.cpp mirax.cpp +missamer.cpp missb2.cpp missbamby.cpp missile.cpp diff --git a/src/mame/drivers/bingo.cpp b/src/mame/drivers/bingo.cpp index 31b0d3e00e2..b00b4794f7b 100644 --- a/src/mame/drivers/bingo.cpp +++ b/src/mame/drivers/bingo.cpp @@ -319,20 +319,6 @@ ROM_START(tripjok) ROM_END -// CPU-85 SIRMO - BELGIUM PCB 28-B -// 1x P8085A -// 1x 6.1xx MHz (not readable) XTAL -// 3x P8155 - -ROM_START(missamer) - ROM_REGION(0x8000, "maincpu", 0) - ROM_LOAD("c48327.6p", 0x0000, 0x0800, CRC(45fd79f7) SHA1(67b115b13ef7fb94b63176e8e17d97e9480ab4d3)) - ROM_LOAD("c48328.6q", 0x0800, 0x0800, CRC(0cd444ec) SHA1(a797053dbfeb67428f08e914220c34cd440181f1)) - ROM_LOAD("c48329.6s", 0x1000, 0x0800, CRC(82b87e2d) SHA1(0727ddb5792e1dc105ed7478474cc97839b87106)) - ROM_LOAD("c48330.6u", 0x1800, 0x0800, CRC(f76142c6) SHA1(727d657f19d5341323d1ccb6eb96e48a402e089d)) - ROM_LOAD("c48331.6w", 0x2000, 0x0800, CRC(5dd0b97a) SHA1(38d8183865e7c182aef0a0a7d514acf6f961f72c)) -ROM_END - GAME(1980, cntinntl, 0, bingo, bingo, bingo_state, init_bingo, ROT0, "Bally", "Continental (Bingo)", MACHINE_IS_SKELETON_MECHANICAL) GAME(1980, cntinntl2, cntinntl, bingo, bingo, bingo_state, init_bingo, ROT0, "Bally", "Continental (Bingo, alternate version)", MACHINE_IS_SKELETON_MECHANICAL) GAME(19??, goldgame, 0, splin, splin, splin_state, init_splin, ROT0, "Splin", "Golden Game (Bingo)", MACHINE_IS_SKELETON_MECHANICAL) @@ -358,4 +344,3 @@ GAME(19??, domino2, 0, seeben, seeben, seeben_state, init_seeben, ROT GAME(19??, tripjok, 0, seeben, seeben, seeben_state, init_seeben, ROT0, "Seeben (Belgium)", "Triple Joker (Bingo)", MACHINE_IS_SKELETON_MECHANICAL) GAME(19??, ggate, 0, seeben, seeben, seeben_state, init_seeben, ROT0, "Seeben (Belgium)", "Golden Gate (set 1) (Bingo)", MACHINE_IS_SKELETON_MECHANICAL) GAME(19??, ggatea, ggate, seeben, seeben, seeben_state, init_seeben, ROT0, "Seeben (Belgium)", "Golden Gate (set 2) (Bingo)", MACHINE_IS_SKELETON_MECHANICAL) -GAME(1984, missamer, 0, seeben, seeben, seeben_state, init_seeben, ROT0, "Sirmo (Belgium)", "Miss Americana (Bingo)", MACHINE_IS_SKELETON_MECHANICAL) diff --git a/src/mame/drivers/missamer.cpp b/src/mame/drivers/missamer.cpp new file mode 100644 index 00000000000..73c04ef3464 --- /dev/null +++ b/src/mame/drivers/missamer.cpp @@ -0,0 +1,563 @@ +// license: BSD-3-Clause +// copyright-holders: Dirk Best +/*************************************************************************** + + Miss Americana + + © 1984 Sirmo + + "Bingo Pinball" style game. + + Hardware: + - P8085A + - 6.144 MHz XTAL + - 3x P8155 + + TODO: + - The "Magic Lines" feature isn't emulated + - There is no ball physics simulation + - Sound isn't emulated at all (you can see triggers on the artwork) + - The optional hardware random number generator isn't emulated (see DSW D) + - Output counters + - Verify/measure clocks + - "Telephone" input/output (probably just a remote control?) + + Notes: + - It will display the error "cccc" on cold boot. Just push F3 once + to reset and initialize + - Blinking tilt led means "normal operation" + - The service mode supports viewing and changing all memory values as + well as an output (SV5) and input (SV6) test + +***************************************************************************/ + +#include "emu.h" +#include "cpu/i8085/i8085.h" +#include "machine/clock.h" +#include "machine/i8155.h" +#include "machine/nvram.h" +#include "missamer.lh" + + +namespace { + + +//************************************************************************** +// TYPE DEFINITIONS +//************************************************************************** + +class missamer_state : public driver_device +{ +public: + missamer_state(const machine_config &mconfig, device_type type, const char *tag) : + driver_device(mconfig, type, tag), + m_maincpu(*this, "maincpu"), + m_ramio(*this, "ramio%u", 0U), + m_inputs(*this, "row%u", 0U), + m_extra(*this, "extra"), + m_lamps(*this, "lamp%u.%u", 0U, 0U), + m_digits(*this, "digit%u", 0U), + m_dy(0), + m_scan(0) + { } + + void missamer(machine_config &config); + +protected: + void machine_start() override; + +private: + required_device<i8085a_cpu_device> m_maincpu; + required_device_array<i8155_device, 3> m_ramio; + required_ioport_array<16> m_inputs; + required_ioport m_extra; + output_finder<8, 18> m_lamps; + output_finder<4> m_digits; + + void mem_map(address_map &map); + void io_map(address_map &map); + + void ramio0_pa_w(uint8_t data); + void ramio0_pb_w(uint8_t data); + void ramio0_pc_w(uint8_t data); + uint8_t ramio1_pa_r(); + uint8_t ramio1_pb_r(); + void ramio1_pc_w(uint8_t data); + void ramio2_pb_w(uint8_t data); + void ramio2_pc_w(uint8_t data); + + uint32_t m_dy; + uint8_t m_scan; +}; + + +//************************************************************************** +// ADDRESS MAPS +//************************************************************************** + +void missamer_state::mem_map(address_map &map) +{ + map(0x0000, 0x27ff).rom().region("maincpu", 0); + map(0x4000, 0x40ff).ram().share("nvram"); + map(0x4100, 0x41ff).mirror(0x2000).rw(m_ramio[0], FUNC(i8155_device::memory_r), FUNC(i8155_device::memory_w)); + map(0x4200, 0x42ff).mirror(0x2000).rw(m_ramio[1], FUNC(i8155_device::memory_r), FUNC(i8155_device::memory_w)); + map(0x4300, 0x43ff).mirror(0x2000).rw(m_ramio[2], FUNC(i8155_device::memory_r), FUNC(i8155_device::memory_w)); + map(0xc100, 0xc1ff).mirror(0x2000).rw(m_ramio[0], FUNC(i8155_device::io_r), FUNC(i8155_device::io_w)); + map(0xc200, 0xc2ff).mirror(0x2000).rw(m_ramio[1], FUNC(i8155_device::io_r), FUNC(i8155_device::io_w)); + map(0xc300, 0xc3ff).mirror(0x2000).rw(m_ramio[2], FUNC(i8155_device::io_r), FUNC(i8155_device::io_w)); +} + + +//************************************************************************** +// INPUT PORT DEFINITIONS +//************************************************************************** + +static INPUT_PORTS_START( missamer ) + PORT_START("row0") + PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Hole 1") PORT_TOGGLE + PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Hole 2") PORT_TOGGLE + PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Hole 3") PORT_TOGGLE + PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Hole 4") PORT_TOGGLE + PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Hole 5") PORT_TOGGLE + PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Hole 6") PORT_TOGGLE + PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Hole 7") PORT_TOGGLE + PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Shutter") + + PORT_START("row1") + PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Hole 8") PORT_TOGGLE + PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Hole 9") PORT_TOGGLE + PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Hole 10") PORT_TOGGLE + PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Hole 11") PORT_TOGGLE + PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Hole 12") PORT_TOGGLE + PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Hole 13") PORT_TOGGLE + PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Gate") + PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Carry Over Shutter") + + PORT_START("row2") + PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Hole 14") PORT_TOGGLE + PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Hole 15") PORT_TOGGLE + PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Hole 16") PORT_TOGGLE + PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Hole 17") PORT_TOGGLE + PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Hole 18") PORT_TOGGLE + PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Hole 19") PORT_TOGGLE + PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Hole 20") PORT_TOGGLE + PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Hole 21") PORT_TOGGLE + + PORT_START("row3") + PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Hole 22") PORT_TOGGLE + PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Hole 23") PORT_TOGGLE + PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Hole 24") PORT_TOGGLE + PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Hole 25") PORT_TOGGLE + PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Red Rollover") + PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Yellow Rollover") + PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Alley") + PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_UNUSED) + + PORT_START("row4") + PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("TRG 1") + PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("TRG 2") + PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("TRG 3") + PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("TRG 4") + PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("TRG 5") + PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Carry Over Balllifter") + PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Rest Contact Balllifter") + PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Manual Balllift") + + PORT_START("row5") + PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("R Button") + PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("X Button") + PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_UNUSED) + PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Door") + PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("TRG 0") + PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_UNUSED) + PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_UNUSED) + PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_UNUSED) + + PORT_START("row6") + PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_TILT) + PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Red Doorbutton") + PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Yellow Doorbutton") + PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("A Button Magic Lines") + PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("B Button Magic Lines") + PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("C Button Magic Lines") + PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("D Button Magic Lines") + PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("E Button Magic Lines") + + PORT_START("row7") + PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_COIN2) // right coinslot + PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_COIN1) // left coinslot + PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_OTHER) PORT_CODE(KEYCODE_1_PAD) PORT_NAME("Service SV1 (Service)") PORT_TOGGLE + PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_OTHER) PORT_CODE(KEYCODE_2_PAD) PORT_NAME("Service SV2 (+)") + PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_OTHER) PORT_CODE(KEYCODE_3_PAD) PORT_NAME("Service SV3 (-)") + PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_OTHER) PORT_CODE(KEYCODE_4_PAD) PORT_NAME("Service SV4 (See Inside)") PORT_TOGGLE + PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_OTHER) PORT_CODE(KEYCODE_5_PAD) PORT_NAME("Service SV5 (Input Test)") PORT_TOGGLE + PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_OTHER) PORT_CODE(KEYCODE_6_PAD) PORT_NAME("Service SV6 (Output Test)") PORT_TOGGLE + + // seems to control the hardware random number generator, set to 0xa7 to disable it + PORT_START("row8") + PORT_DIPUNKNOWN_DIPLOC(0x01, 0x00, "D:1") + PORT_DIPUNKNOWN_DIPLOC(0x02, 0x00, "D:2") + PORT_DIPUNKNOWN_DIPLOC(0x04, 0x00, "D:3") + PORT_DIPUNKNOWN_DIPLOC(0x08, 0x08, "D:4") + PORT_DIPUNKNOWN_DIPLOC(0x10, 0x10, "D:5") + PORT_DIPUNKNOWN_DIPLOC(0x20, 0x00, "D:6") + PORT_DIPUNKNOWN_DIPLOC(0x40, 0x40, "D:7") + PORT_DIPUNKNOWN_DIPLOC(0x80, 0x00, "D:8") + + PORT_START("row9") + PORT_DIPNAME(0x0f, 0x0e, "Coins (Right)") PORT_DIPLOCATION("C:1,2,3,4") + PORT_DIPSETTING( 0x00, "16") + PORT_DIPSETTING( 0x01, "15") + PORT_DIPSETTING( 0x02, "14") + PORT_DIPSETTING( 0x03, "13") + PORT_DIPSETTING( 0x04, "12") + PORT_DIPSETTING( 0x05, "11") + PORT_DIPSETTING( 0x06, "10") + PORT_DIPSETTING( 0x07, "9") + PORT_DIPSETTING( 0x08, "8") + PORT_DIPSETTING( 0x09, "7") + PORT_DIPSETTING( 0x0a, "6") + PORT_DIPSETTING( 0x0b, "5") + PORT_DIPSETTING( 0x0c, "4") + PORT_DIPSETTING( 0x0d, "3") + PORT_DIPSETTING( 0x0e, "2") + PORT_DIPSETTING( 0x0f, "1") + PORT_DIPNAME(0xf0, 0xd0, "Credits (Right)") PORT_DIPLOCATION("C:5,6,7,8") + PORT_DIPSETTING( 0x00, "15") + PORT_DIPSETTING( 0x10, "14") + PORT_DIPSETTING( 0x20, "13") + PORT_DIPSETTING( 0x30, "12") + PORT_DIPSETTING( 0x40, "11") + PORT_DIPSETTING( 0x50, "10") + PORT_DIPSETTING( 0x60, "9") + PORT_DIPSETTING( 0x70, "8") + PORT_DIPSETTING( 0x80, "7") + PORT_DIPSETTING( 0x90, "6") + PORT_DIPSETTING( 0xa0, "5") + PORT_DIPSETTING( 0xb0, "4") + PORT_DIPSETTING( 0xc0, "3") + PORT_DIPSETTING( 0xd0, "2") + PORT_DIPSETTING( 0xe0, "1") + PORT_DIPSETTING( 0xf0, "0") + + PORT_START("row10") + PORT_DIPNAME(0x0f, 0x0f, "Coins (Left)") PORT_DIPLOCATION("B:1,2,3,4") + PORT_DIPSETTING( 0x00, "16") + PORT_DIPSETTING( 0x01, "15") + PORT_DIPSETTING( 0x02, "14") + PORT_DIPSETTING( 0x03, "13") + PORT_DIPSETTING( 0x04, "12") + PORT_DIPSETTING( 0x05, "11") + PORT_DIPSETTING( 0x06, "10") + PORT_DIPSETTING( 0x07, "9") + PORT_DIPSETTING( 0x08, "8") + PORT_DIPSETTING( 0x09, "7") + PORT_DIPSETTING( 0x0a, "6") + PORT_DIPSETTING( 0x0b, "5") + PORT_DIPSETTING( 0x0c, "4") + PORT_DIPSETTING( 0x0d, "3") + PORT_DIPSETTING( 0x0e, "2") + PORT_DIPSETTING( 0x0f, "1") + PORT_DIPNAME(0xf0, 0xe0, "Credits (Left)") PORT_DIPLOCATION("B:5,6,7,8") + PORT_DIPSETTING( 0x00, "15") + PORT_DIPSETTING( 0x10, "14") + PORT_DIPSETTING( 0x20, "13") + PORT_DIPSETTING( 0x30, "12") + PORT_DIPSETTING( 0x40, "11") + PORT_DIPSETTING( 0x50, "10") + PORT_DIPSETTING( 0x60, "9") + PORT_DIPSETTING( 0x70, "8") + PORT_DIPSETTING( 0x80, "7") + PORT_DIPSETTING( 0x90, "6") + PORT_DIPSETTING( 0xa0, "5") + PORT_DIPSETTING( 0xb0, "4") + PORT_DIPSETTING( 0xc0, "3") + PORT_DIPSETTING( 0xd0, "2") + PORT_DIPSETTING( 0xe0, "1") + PORT_DIPSETTING( 0xf0, "0") + + PORT_START("row11") + PORT_DIPNAME(0x07, 0x07, "Win Rate") PORT_DIPLOCATION("A:1,2,3") + PORT_DIPSETTING( 0x00, "8") // Most + PORT_DIPSETTING( 0x01, "7") + PORT_DIPSETTING( 0x02, "6") + PORT_DIPSETTING( 0x03, "5") + PORT_DIPSETTING( 0x04, "4") + PORT_DIPSETTING( 0x05, "3") + PORT_DIPSETTING( 0x06, "2") + PORT_DIPSETTING( 0x07, "1") // Least + PORT_DIPNAME(0x08, 0x08, "Reflex Chances") PORT_DIPLOCATION("A:4") + PORT_DIPSETTING( 0x00, DEF_STR( No )) + PORT_DIPSETTING( 0x08, DEF_STR( Yes )) + PORT_DIPNAME(0x10, 0x10, "Plots") PORT_DIPLOCATION("A:5") + PORT_DIPSETTING( 0x00, DEF_STR( No )) + PORT_DIPSETTING( 0x10, DEF_STR( Yes )) + PORT_DIPUNKNOWN_DIPLOC(0x20, 0x20, "A:6") + PORT_DIPUNKNOWN_DIPLOC(0x40, 0x40, "A:7") + PORT_DIPNAME(0x80, 0x80, "Chance: Corner 65-10") PORT_DIPLOCATION("A:8") + PORT_DIPSETTING( 0x00, DEF_STR( No )) + PORT_DIPSETTING( 0x80, DEF_STR( Yes )) + + PORT_START("row12") + PORT_DIPNAME(0x01, 0x01, "Chance: Corner 78-9") PORT_DIPLOCATION("E:1") + PORT_DIPSETTING( 0x00, DEF_STR( No )) + PORT_DIPSETTING( 0x01, DEF_STR( Yes )) + PORT_DIPNAME(0x02, 0x02, "Chance: 4 Stars As Green 53-12") PORT_DIPLOCATION("E:2") + PORT_DIPSETTING( 0x00, DEF_STR( No )) + PORT_DIPSETTING( 0x02, DEF_STR( Yes )) + PORT_DIPNAME(0x04, 0x04, "Chance: 4 Stars As Green 61-12") PORT_DIPLOCATION("E:3") + PORT_DIPSETTING( 0x00, DEF_STR( No )) + PORT_DIPSETTING( 0x04, DEF_STR( Yes )) + PORT_DIPNAME(0x08, 0x08, "Chance: Stripped Diagonal B") PORT_DIPLOCATION("E:4") + PORT_DIPSETTING( 0x00, DEF_STR( No )) + PORT_DIPSETTING( 0x08, DEF_STR( Yes )) + PORT_DIPNAME(0x10, 0x10, "Chance: Stripped Diagonal C") PORT_DIPLOCATION("E:5") + PORT_DIPSETTING( 0x00, DEF_STR( No )) + PORT_DIPSETTING( 0x10, DEF_STR( Yes )) + PORT_DIPNAME(0x20, 0x20, "Chance: Stripped Diagonal D") PORT_DIPLOCATION("E:6") + PORT_DIPSETTING( 0x00, DEF_STR( No )) + PORT_DIPSETTING( 0x20, DEF_STR( Yes )) + PORT_DIPNAME(0x40, 0x40, "Chance: Extra Card") PORT_DIPLOCATION("E:7") + PORT_DIPSETTING( 0x00, DEF_STR( No )) + PORT_DIPSETTING( 0x40, DEF_STR( Yes )) + PORT_DIPNAME(0x80, 0x80, "Chance: Any 2") PORT_DIPLOCATION("E:8") + PORT_DIPSETTING( 0x00, DEF_STR( No )) + PORT_DIPSETTING( 0x80, DEF_STR( Yes )) + + PORT_START("row13") + PORT_DIPNAME(0x01, 0x01, "Chance: Any 3") PORT_DIPLOCATION("F:1") + PORT_DIPSETTING( 0x00, DEF_STR( No )) + PORT_DIPSETTING( 0x01, DEF_STR( Yes )) + PORT_DIPNAME(0x02, 0x02, "Chance: Extra Ball 17") PORT_DIPLOCATION("F:2") + PORT_DIPSETTING( 0x00, DEF_STR( No )) + PORT_DIPSETTING( 0x02, DEF_STR( Yes )) + PORT_DIPNAME(0x04, 0x04, "Chance: Extra Ball 16") PORT_DIPLOCATION("F:3") + PORT_DIPSETTING( 0x00, DEF_STR( No )) + PORT_DIPSETTING( 0x04, DEF_STR( Yes )) + PORT_DIPNAME(0x08, 0x08, "Chance: Extra Ball 15") PORT_DIPLOCATION("F:4") + PORT_DIPSETTING( 0x00, DEF_STR( No )) + PORT_DIPSETTING( 0x08, DEF_STR( Yes )) + PORT_DIPNAME(0x10, 0x10, "Chance: Extra Ball 14") PORT_DIPLOCATION("F:5") + PORT_DIPSETTING( 0x00, DEF_STR( No )) + PORT_DIPSETTING( 0x10, DEF_STR( Yes )) + PORT_DIPUNKNOWN_DIPLOC(0x20, 0x20, "F:6") + PORT_DIPNAME(0x40, 0x40, "Reflex") PORT_DIPLOCATION("F:7") + PORT_DIPSETTING( 0x00, DEF_STR( No )) + PORT_DIPSETTING( 0x40, DEF_STR( Yes )) + PORT_DIPNAME(0x80, 0x80, "Knock-Off") PORT_DIPLOCATION("F:8") + PORT_DIPSETTING( 0x00, DEF_STR( No )) + PORT_DIPSETTING( 0x80, DEF_STR( Yes )) + + PORT_START("row14") + PORT_DIPUNKNOWN_DIPLOC(0x01, 0x01, "G:1") + PORT_DIPNAME(0x02, 0x02, "32 Points Extra Ball") PORT_DIPLOCATION("G:2") + PORT_DIPSETTING( 0x00, DEF_STR( No )) + PORT_DIPSETTING( 0x02, DEF_STR( Yes )) + PORT_DIPNAME(0x04, 0x04, "Game Speed") PORT_DIPLOCATION("G:3") + PORT_DIPSETTING( 0x00, "Fast") + PORT_DIPSETTING( 0x04, "Slow") + PORT_DIPNAME(0x08, 0x08, "32 Points Selection") PORT_DIPLOCATION("G:4") + PORT_DIPSETTING( 0x00, DEF_STR( No )) + PORT_DIPSETTING( 0x08, DEF_STR( Yes )) + PORT_DIPNAME(0x10, 0x10, "Mixer 2") PORT_DIPLOCATION("G:5") + PORT_DIPSETTING( 0x00, DEF_STR( No )) + PORT_DIPSETTING( 0x10, DEF_STR( Yes )) + PORT_DIPUNKNOWN_DIPLOC(0x20, 0x20, "G:6") + PORT_DIPUNKNOWN_DIPLOC(0x40, 0x40, "G:7") + PORT_DIPUNKNOWN_DIPLOC(0x80, 0x80, "G:8") + + PORT_START("row15") + PORT_DIPNAME(0x01, 0x01, "Memory Test") PORT_DIPLOCATION("H:1") + PORT_DIPSETTING( 0x00, DEF_STR( On )) + PORT_DIPSETTING( 0x01, DEF_STR( Off )) + PORT_DIPUNKNOWN_DIPLOC(0x02, 0x02, "H:2") + PORT_DIPUNKNOWN_DIPLOC(0x04, 0x04, "H:3") + PORT_DIPUNKNOWN_DIPLOC(0x08, 0x08, "H:4") + PORT_DIPUNKNOWN_DIPLOC(0x10, 0x10, "H:5") + PORT_DIPUNKNOWN_DIPLOC(0x20, 0x20, "H:6") + PORT_DIPUNKNOWN_DIPLOC(0x40, 0x40, "H:7") + PORT_DIPUNKNOWN_DIPLOC(0x80, 0x80, "H:8") + + PORT_START("extra") + PORT_DIPNAME(0x80, 0x80, "Bit 7") + PORT_DIPSETTING( 0x00, DEF_STR( No )) + PORT_DIPSETTING( 0x80, DEF_STR( Yes )) + PORT_DIPNAME(0x40, 0x40, "Bit 6") + PORT_DIPSETTING( 0x00, DEF_STR( No )) + PORT_DIPSETTING( 0x40, DEF_STR( Yes )) + PORT_DIPNAME(0x20, 0x20, "Switch Left") + PORT_DIPSETTING( 0x00, DEF_STR( No )) + PORT_DIPSETTING( 0x20, DEF_STR( Yes )) + PORT_DIPNAME(0x10, 0x10, "Switch Right") + PORT_DIPSETTING( 0x00, DEF_STR( No )) + PORT_DIPSETTING( 0x10, DEF_STR( Yes )) + PORT_DIPNAME(0x08, 0x08, "Tel 3") + PORT_DIPSETTING( 0x00, DEF_STR( No )) + PORT_DIPSETTING( 0x08, DEF_STR( Yes )) + PORT_DIPNAME(0x04, 0x04, "Tel 2") + PORT_DIPSETTING( 0x00, DEF_STR( No )) + PORT_DIPSETTING( 0x04, DEF_STR( Yes )) + PORT_DIPNAME(0x02, 0x02, "Tel 1") + PORT_DIPSETTING( 0x00, DEF_STR( No )) + PORT_DIPSETTING( 0x02, DEF_STR( Yes )) + PORT_DIPNAME(0x01, 0x01, "Tel 0") + PORT_DIPSETTING( 0x00, DEF_STR( No )) + PORT_DIPSETTING( 0x01, DEF_STR( Yes )) +INPUT_PORTS_END + + +//************************************************************************** +// MACHINE EMULATION +//************************************************************************** + +void missamer_state::ramio0_pa_w(uint8_t data) +{ + // outputs row 1-8 + m_dy = (m_dy & 0x3ff00) | (data << 0); +} + +void missamer_state::ramio0_pb_w(uint8_t data) +{ + // outputs row 9-16 + m_dy = (m_dy & 0x300ff) | (data << 8); +} + +void missamer_state::ramio0_pc_w(uint8_t data) +{ + // 54---- outputs row 18, 17 + // --3210 scan column + + m_dy = (m_dy & 0x0ffff) | ((data >> 4) << 16); + m_scan = ~data & 0x0f; + + // circuit is actually more complicated with a 555 timer + if (BIT(m_scan, 3)) + for (int i = 0; i < 18; i++) + m_lamps[m_scan & 0x07][i] = BIT(m_dy, i) ? 0 : 1; +} + +uint8_t missamer_state::ramio1_pa_r() +{ + // 76------ bit 7 and 6 + // --5----- switch right + // ---4---- switch left + // ----3210 telephone + + return m_extra->read(); +} + +uint8_t missamer_state::ramio1_pb_r() +{ + return m_inputs[m_scan]->read(); +} + +void missamer_state::ramio1_pc_w(uint8_t data) +{ + // 5----- cash counter + // -43210 magic motor lines e to a + + //logerror("ramio1_pc_w: %02x\n", data); +} + +void missamer_state::ramio2_pb_w(uint8_t data) +{ + // 7------- total in counter + // -6------ total out counter + // --5----- telephone in counter + // ---4---- telephone out counter + // ----3210 led digit value + + //logerror("ramio2_pb_w: %02x\n", data); + + static const uint8_t ls7447[16] = { + 0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7c, 0x07, + 0x7f, 0x67, 0x58, 0x4c, 0x62, 0x69, 0x78, 0x00 + }; + + // 74145 + if (m_scan < 4) + m_digits[m_scan] = ls7447[~data & 0x0f]; +} + +void missamer_state::ramio2_pc_w(uint8_t data) +{ + // 5----- unused + // -4---- motor playfield + // --3--- motor lifter + // ---2-- strobe port a + // ----1- abf + // -----0 int port a + + //logerror("ramio2_pc_w: %02x\n", data); +} + +void missamer_state::machine_start() +{ + // resolve artwork outputs + m_lamps.resolve(); + m_digits.resolve(); + + // register for save states + save_item(NAME(m_dy)); + save_item(NAME(m_scan)); +} + + +//************************************************************************** +// MACHINE DEFINTIONS +//************************************************************************** + +void missamer_state::missamer(machine_config &config) +{ + I8085A(config, m_maincpu, 6.144_MHz_XTAL); + m_maincpu->set_addrmap(AS_PROGRAM, &missamer_state::mem_map); + m_maincpu->set_clk_out(m_ramio[1], FUNC(i8155_device::set_unscaled_clock_int)); + + clock_device &vco_clock(CLOCK(config, "vco_clock", 500)); // 74LS124 + vco_clock.signal_handler().set_inputline(m_maincpu, I8085_RST75_LINE); + + NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); + + I8155(config, m_ramio[0], 500); // VCO (470nf) + m_ramio[0]->out_to_callback().set_inputline(m_maincpu, I8085_RST65_LINE); + m_ramio[0]->out_pa_callback().set(FUNC(missamer_state::ramio0_pa_w)); + m_ramio[0]->out_pb_callback().set(FUNC(missamer_state::ramio0_pb_w)); + m_ramio[0]->out_pc_callback().set(FUNC(missamer_state::ramio0_pc_w)); + + I8155(config, m_ramio[1], 0); // CLK from 8085 + // timer output: UART + m_ramio[1]->in_pa_callback().set(FUNC(missamer_state::ramio1_pa_r)); + m_ramio[1]->in_pb_callback().set(FUNC(missamer_state::ramio1_pb_r)); + m_ramio[1]->out_pc_callback().set(FUNC(missamer_state::ramio1_pc_w)); + + I8155(config, m_ramio[2], 235000); // VCO (100pf) + m_ramio[2]->out_pb_callback().set(FUNC(missamer_state::ramio2_pb_w)); + m_ramio[2]->out_pc_callback().set(FUNC(missamer_state::ramio2_pc_w)); + + config.set_default_layout(layout_missamer); +} + + +//************************************************************************** +// ROM DEFINITIONS +//************************************************************************** + +ROM_START( missamer ) + ROM_REGION(0x2800, "maincpu", 0) + ROM_LOAD("c48327.6p", 0x0000, 0x0800, CRC(45fd79f7) SHA1(67b115b13ef7fb94b63176e8e17d97e9480ab4d3)) + ROM_LOAD("c48328.6q", 0x0800, 0x0800, CRC(0cd444ec) SHA1(a797053dbfeb67428f08e914220c34cd440181f1)) + ROM_LOAD("c48329.6s", 0x1000, 0x0800, CRC(82b87e2d) SHA1(0727ddb5792e1dc105ed7478474cc97839b87106)) + ROM_LOAD("c48330.6u", 0x1800, 0x0800, CRC(f76142c6) SHA1(727d657f19d5341323d1ccb6eb96e48a402e089d)) + ROM_LOAD("c48331.6w", 0x2000, 0x0800, CRC(5dd0b97a) SHA1(38d8183865e7c182aef0a0a7d514acf6f961f72c)) +ROM_END + + +} // anonymous namespace + + +//************************************************************************** +// SYSTEM DRIVERS +//************************************************************************** + +// YEAR NAME PARENT MACHINE INPUT CLASS INIT ROTATION COMPANY FULLNAME FLAGS +GAME(1984, missamer, 0, missamer, missamer, missamer_state, empty_init, ROT0, "Sirmo", "Miss Americana", MACHINE_NOT_WORKING | MACHINE_MECHANICAL | MACHINE_NO_SOUND | MACHINE_SUPPORTS_SAVE ) diff --git a/src/mame/layout/missamer.lay b/src/mame/layout/missamer.lay new file mode 100644 index 00000000000..9551ad71fcf --- /dev/null +++ b/src/mame/layout/missamer.lay @@ -0,0 +1,1361 @@ +<?xml version="1.0"?> + +<!-- +license: CC0 +copyright-holders: Dirk Best + +Miss Americana (Sirmo) +--> + +<mamelayout version="2"> + + <element name="digit" defstate="0"> + <led7seg> + <color red="1.0" green="0.1" blue="0.1" /> + </led7seg> + </element> + + <element name="red_led" defstate="0"> + <disk state="1"> + <color red="1.0" green="0.1" blue="0.1" /> + </disk> + <disk state="0"> + <color red="0.3" green="0.0" blue="0.0" /> + </disk> + </element> + + <element name="white_lamp" defstate="0"> + <disk state="1"> + <color red="1.0" green="1.0" blue="1.0" /> + </disk> + <disk state="0"> + <color red="0.7" green="0.7" blue="0.7" /> + </disk> + </element> + + <element name="hole" defstate="0"> + <disk state="1"> + <color red="0.6" green="0.6" blue="0.6" /> + </disk> + <disk state="0"> + <color red="0.2" green="0.2" blue="0.2" /> + </disk> + </element> + + <element name="red_rect"> + <rect state="0"> + <color red="0.76" green="0.20" blue="0.09" /> + </rect> + <rect state="1"> + <color red="0.96" green="0.40" blue="0.29" /> + </rect> + </element> + + <element name="yellow_rect"> + <rect state="0"> + <color red="0.72" green="0.73" blue="0.00" /> + </rect> + <rect state="1"> + <color red="0.92" green="0.83" blue="0.19" /> + </rect> + </element> + + <element name="blue_rect"> + <rect state="0"> + <color red="0.01" green="0.13" blue="0.63" /> + </rect> + <rect state="1"> + <color red="0.21" green="0.33" blue="0.83" /> + </rect> + </element> + + <element name="green_rect"> + <rect state="0"> + <color red="0.16" green="0.61" blue="0.21" /> + </rect> + <rect state="1"> + <color red="0.36" green="0.81" blue="0.39" /> + </rect> + </element> + + <element name="white_rect"> + <rect state="0"> + <color red="0.81" green="0.86" blue="0.90" /> + </rect> + <rect state="1"> + <color red="1.00" green="1.00" blue="1.00" /> + </rect> + </element> + + <element name="black_rect"> + <rect state="0"> + <color red="0.00" green="0.00" blue="0.00" /> + </rect> + <rect state="1"> + <color red="0.20" green="0.20" blue="0.20" /> + </rect> + </element> + + <element name="txt_tilt"><text string="TILT" /></element> + <element name="txt_missamericana"><text string="MISS AMERICANA" /></element> + + <element name="txt_sound1"><text string="SOUND 1" /></element> + <element name="txt_sound2"><text string="SOUND 2" /></element> + <element name="txt_sound3"><text string="SOUND 3" /></element> + <element name="txt_sound4"><text string="SOUND 4" /></element> + <element name="txt_sound5"><text string="SOUND 5" /></element> + <element name="txt_sound6"><text string="SOUND 6" /></element> + + <element name="txt_maincard"><text string="MAIN CARD" /></element> + <element name="txt_extracard"><text string="EXTRA CARD" /></element> + + <element name="txt_striped"><text string="STRIPED" /></element> + <element name="txt_diagonal"><text string="DIAGONAL" /></element> + <element name="txt_score"><text string="SCORE" /></element> + <element name="txt_whenlit"><text string="WHEN LIT" /></element> + <element name="txt_cornersscore"><text string="CORNERS SCORE" /></element> + <element name="txt_as"><text string="AS" /></element> + <element name="txt_red"><text string="RED" /></element> + <element name="txt_5online"><text string="5 ON LINE" /></element> + <element name="txt_scores"><text string="SCORES" /></element> + <element name="txt_pressbuttons"><text string="PRESS BUTTONS" /></element> + <element name="txt_beforeshooting"><text string="BEFORE SHOOTING" /></element> + <element name="txt_4thball"><text string="4TH BALL" /></element> + <element name="txt_5thball"><text string="5TH BALL" /></element> + <element name="txt_4stars"><text string="4 STARS" /></element> + <element name="txt_green"><text string="GREEN" /></element> + <element name="txt_any2"><text string="ANY 2" /></element> + <element name="txt_any3"><text string="ANY 3" /></element> + <element name="txt_stars"><text string="STARS" /></element> + <element name="txt_give"><text string="GIVE" /></element> + <element name="txt_ok"><text string="OK" /></element> + + <element name="txt_selectnow"><text string="SELECT NOW" /></element> + <element name="txt_pressabcdebuttonstomovemagiclines"><text string="PRESS ABCDE BUTTONS TO MOVE MAGIC LINES" /></element> + + <element name="txt_rightarrow"> + <text string="▶" state="0"> + <color red="0.76" green="0.20" blue="0.09" /> + </text> + <text string="▶" state="1"> + <color red="0.96" green="0.40" blue="0.29" /> + </text> + </element> + + <element name="txt_a"><text string="A" /></element> + <element name="txt_b"><text string="B" /></element> + <element name="txt_c"><text string="C" /></element> + <element name="txt_d"><text string="D" /></element> + <element name="txt_e"><text string="E" /></element> + + <element name="txt_if16ishit"><text string="IF 16 IS HIT" /></element> + <element name="txt_bonusarrows"><text string="BONUS ARROWS" /></element> + <element name="txt_advance"><text string="ADVANCE" /></element> + <element name="txt_one"><text string="ONE" /></element> + <element name="txt_step"><text string="STEP" /></element> + <element name="txt_bonus"><text string="BONUS" /></element> + <element name="txt_pressxbuttonto"><text string="PRESS X BUTTON TO" /></element> + <element name="txt_collectdouble"><text string="COLLECT DOUBLE" /></element> + <element name="txt_greenscoreor"><text string="GREEN SCORE OR" /></element> + <element name="txt_savebonus"><text string="SAVE BONUS" /></element> + <element name="txt_fornextgame"><text string="FOR NEXT GAME" /></element> + <element name="txt_roll"><text string="ROLL" /></element> + <element name="txt_overs"><text string="OVERS" /></element> + + <element name="txt_extraballs"><text string="EXTRA BALLS" /></element> + <element name="txt_1st"><text string="1ST" /></element> + <element name="txt_extra"><text string="EXTRA" /></element> + <element name="txt_ball"><text string="BALL" /></element> + <element name="txt_2nd"><text string="2ND" /></element> + <element name="txt_3rd"><text string="3RD" /></element> + + <repeat count="25"> + <param name="i" start="1" increment="1" /> + <element name="txt_~i~"><text string="~i~" /></element> + </repeat> + + <element name="txt_trg0"><text string="TRG0" /></element> + <element name="txt_trg1"><text string="TRG1" /></element> + <element name="txt_trg2"><text string="TRG2" /></element> + <element name="txt_trg3"><text string="TRG3" /></element> + <element name="txt_trg4"><text string="TRG4" /></element> + <element name="txt_trg5"><text string="TRG5" /></element> + + <element name="txt_shutter"><text string="SHUTTER" /></element> + <element name="txt_gate"><text string="GATE" /></element> + <element name="txt_alley"><text string="ALLEY" /></element> + <element name="txt_door"><text string="DOOR" /></element> + + <element name="txt_redrollover"><text string="RED ROLLOVER" /></element> + <element name="txt_yellowrollover"><text string="YELLOW ROLLOVER" /></element> + <element name="txt_reddoorbutton"><text string="RED DOORBUTTON" /></element> + <element name="txt_yellowdoorbutton"><text string="YELLOW DOORBUTTON" /></element> + <element name="txt_carryovershutter"><text string="CARRY OVER SHUTTER" /></element> + + <element name="txt_carryoverballlifter"><text string="CARRY OVER BALLLIFTER" /></element> + <element name="txt_restcontactballlifter"><text string="REST CONTACT BALLIFTER" /></element> + <element name="txt_manualballlift"><text string="MANUAL BALLLIFT" /></element> + + <element name="txt_coinleft"><text string="COIN LEFT" /></element> + <element name="txt_coinright"><text string="COIN RIGHT" /></element> + + <element name="txt_r"><text string="R" /></element> + <element name="txt_x"><text string="X" /></element> + + <element name="txt_sv1"><text string="SV1" /></element> + <element name="txt_sv2"><text string="SV2" /></element> + <element name="txt_sv3"><text string="SV3" /></element> + <element name="txt_sv4"><text string="SV4" /></element> + <element name="txt_sv5"><text string="SV5" /></element> + <element name="txt_sv6"><text string="SV6" /></element> + + <!-- point table top --> + <element name="txt_table_0.0"><text string="75" /></element> + <element name="txt_table_0.1"><text string="16" /></element> + <element name="txt_table_0.2"><text string="4" /></element> + <element name="txt_table_1.0"><text string="96" /></element> + <element name="txt_table_1.1"><text string="24" /></element> + <element name="txt_table_1.2"><text string="8" /></element> + <element name="txt_table_2.0"><text string="96" /></element> + <element name="txt_table_2.1"><text string="50" /></element> + <element name="txt_table_2.2"><text string="16" /></element> + <element name="txt_table_3.0"><text string="200" /></element> + <element name="txt_table_3.1"><text string="96" /></element> + <element name="txt_table_3.2"><text string="32" /></element> + <element name="txt_table_4.0"><text string="300" /></element> + <element name="txt_table_4.1"><text string="144" /></element> + <element name="txt_table_4.2"><text string="64" /></element> + <element name="txt_table_5.0"><text string="400" /></element> + <element name="txt_table_5.1"><text string="192" /></element> + <element name="txt_table_5.2"><text string="128" /></element> + <element name="txt_table_6.0"><text string="600" /></element> + <element name="txt_table_6.1"><text string="400" /></element> + <element name="txt_table_6.2"><text string="192" /></element> + + <view name="Default Layout"> + <bounds x="0" y="0" width="1000" height="2020"/> + + <element name="lamp7.6" ref="red_led"> + <bounds x="50" y="20" width="20" height="20" /> + </element> + <element ref="txt_tilt"> + <bounds x="70" y="20" width="50" height="20" /> + </element> + + <element ref="txt_missamericana"> + <bounds x="0" y="10" width="1000" height="40" /> + </element> + + <!-- striped diagonal score when lit --> + <element ref="red_rect"> + <bounds x="860" y="10" width="140" height="120" /> + </element> + <element name="lamp4.10" ref="yellow_rect"> + <bounds x="870" y="20" width="120" height="100" /> + </element> + <element ref="txt_striped"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="870" y="30" width="120" height="20" /> + </element> + <element ref="txt_diagonal"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="870" y="50" width="120" height="20" /> + </element> + <element ref="txt_score"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="870" y="70" width="120" height="20" /> + </element> + <element ref="txt_whenlit"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="870" y="90" width="120" height="20" /> + </element> + + <!-- SOUND 1-6 right side --> + <element name="lamp5.10" ref="red_led"> + <bounds x="870" y="170" width="20" height="20" /> + </element> + <element ref="txt_sound1"> + <bounds x="890" y="170" width="90" height="20" /> + </element> + <element name="lamp5.11" ref="red_led"> + <bounds x="870" y="200" width="20" height="20" /> + </element> + <element ref="txt_sound2"> + <bounds x="890" y="200" width="90" height="20" /> + </element> + <element name="lamp5.12" ref="red_led"> + <bounds x="870" y="230" width="20" height="20" /> + </element> + <element ref="txt_sound3"> + <bounds x="890" y="230" width="90" height="20" /> + </element> + <element name="lamp5.13" ref="red_led"> + <bounds x="870" y="260" width="20" height="20" /> + </element> + <element ref="txt_sound4"> + <bounds x="890" y="260" width="90" height="20" /> + </element> + <element name="lamp5.14" ref="red_led"> + <bounds x="870" y="290" width="20" height="20" /> + </element> + <element ref="txt_sound5"> + <bounds x="890" y="290" width="90" height="20" /> + </element> + <element name="lamp5.15" ref="red_led"> + <bounds x="870" y="320" width="20" height="20" /> + </element> + <element ref="txt_sound6"> + <bounds x="890" y="320" width="90" height="20" /> + </element> + + <!-- magic lines background rect --> + <element ref="red_rect"> + <bounds x="150" y="610" width="700" height="330" /> + </element> + + <!-- point table --> + <element ref="blue_rect"> + <bounds x="180" y="70" width="630" height="550" /> + </element> + + <element ref="red_rect"> + <bounds x="160" y="90" width="670" height="80" /> + </element> + <repeat count="7"> + <param name="i" start="10" increment="1" /> + <param name="x" start="190" increment="90" /> + <param name="txt_ix" start="0" increment="1" /> + <param name="txt_x" start="190" increment="90" /> + <element name="lamp0.~i~" ref="red_rect"> + <bounds x="~x~" y="90" width="70" height="80" /> + </element> + <repeat count="3"> + <param name="txt_iy" start="0" increment="1" /> + <param name="txt_y" start="100" increment="20" /> + <element ref="txt_table_~txt_ix~.~txt_iy~"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="~txt_x~" y="~txt_y~" width="70" height="20" /> + </element> + </repeat> + </repeat> + + <element ref="yellow_rect"> + <bounds x="160" y="210" width="670" height="80" /> + </element> + <repeat count="7"> + <param name="i" start="10" increment="1" /> + <param name="x" start="190" increment="90" /> + <param name="txt_ix" start="0" increment="1" /> + <param name="txt_x" start="190" increment="90" /> + <element name="lamp1.~i~" ref="yellow_rect"> + <bounds x="~x~" y="210" width="70" height="80" /> + </element> + <repeat count="3"> + <param name="txt_iy" start="0" increment="1" /> + <param name="txt_y" start="220" increment="20" /> + <element ref="txt_table_~txt_ix~.~txt_iy~"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="~txt_x~" y="~txt_y~" width="70" height="20" /> + </element> + </repeat> + </repeat> + + <element ref="green_rect"> + <bounds x="160" y="330" width="670" height="80" /> + </element> + <repeat count="7"> + <param name="i" start="10" increment="1" /> + <param name="x" start="190" increment="90" /> + <param name="txt_ix" start="0" increment="1" /> + <param name="txt_x" start="190" increment="90" /> + <element name="lamp2.~i~" ref="green_rect"> + <bounds x="~x~" y="330" width="70" height="80" /> + </element> + <repeat count="3"> + <param name="txt_iy" start="0" increment="1" /> + <param name="txt_y" start="340" increment="20" /> + <element ref="txt_table_~txt_ix~.~txt_iy~"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="~txt_x~" y="~txt_y~" width="70" height="20" /> + </element> + </repeat> + </repeat> + + <element ref="white_rect"> + <bounds x="160" y="450" width="670" height="80" /> + </element> + <repeat count="7"> + <param name="i" start="10" increment="1" /> + <param name="x" start="190" increment="90" /> + <param name="txt_ix" start="0" increment="1" /> + <param name="txt_x" start="190" increment="90" /> + <element name="lamp3.~i~" ref="white_rect"> + <bounds x="~x~" y="450" width="70" height="80" /> + </element> + <repeat count="3"> + <param name="txt_iy" start="0" increment="1" /> + <param name="txt_y" start="460" increment="20" /> + <element ref="txt_table_~txt_ix~.~txt_iy~"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="~txt_x~" y="~txt_y~" width="70" height="20" /> + </element> + </repeat> + </repeat> + + <element ref="txt_maincard"> + <color red="0.16" green="0.61" blue="0.21" /> + <bounds x="210" y="550" width="190" height="50" /> + </element> + <element ref="txt_extracard"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="600" y="550" width="190" height="50" /> + </element> + + <!-- main card corners score as red 5 on line --> + <element ref="red_rect"> + <bounds x="0" y="660" width="140" height="140" /> + </element> + <element name="lamp7.0" ref="yellow_rect"> + <bounds x="10" y="670" width="120" height="120" /> + </element> + <element ref="txt_maincard"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="10" y="680" width="120" height="20" /> + </element> + <element ref="txt_cornersscore"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="10" y="700" width="120" height="20" /> + </element> + <element ref="txt_as"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="10" y="720" width="120" height="20" /> + </element> + <element ref="txt_red"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="10" y="740" width="120" height="20" /> + </element> + <element ref="txt_5online"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="10" y="760" width="120" height="20" /> + </element> + + <!-- extra card scores when lit --> + <element ref="red_rect"> + <bounds x="860" y="660" width="140" height="120" /> + </element> + <element name="lamp7.2" ref="yellow_rect"> + <bounds x="870" y="670" width="120" height="100" /> + </element> + <element ref="txt_extracard"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="870" y="680" width="120" height="20" /> + </element> + <element ref="txt_scores"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="870" y="700" width="120" height="20" /> + </element> + <element ref="txt_whenlit"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="870" y="720" width="120" height="20" /> + </element> + + <!-- magic lines area --> + <element ref="white_rect"> + <bounds x="160" y="630" width="680" height="300" /> + </element> + <element ref="red_rect"> + <bounds x="470" y="630" width="60" height="300" /> + </element> + <element ref="txt_a"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="470" y="630" width="60" height="60" /> + </element> + <element ref="txt_b"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="470" y="690" width="60" height="60" /> + </element> + <element ref="txt_c"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="470" y="750" width="60" height="60" /> + </element> + <element ref="txt_d"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="470" y="810" width="60" height="60" /> + </element> + <element ref="txt_e"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="470" y="870" width="60" height="60" /> + </element> + + <!-- main card --> + <repeat count="5"> + <param name="i1" start="0" increment="1" /> + <param name="y" start="640" increment="60" /> + <repeat count="5"> + <param name="i2" start="0" increment="1" /> + <param name="x" start="175" increment="60" /> + <element name="lamp~i1~.~i2~" ref="white_lamp"> + <bounds x="~x~" y="~y~" width="40" height="40" /> + </element> + </repeat> + </repeat> + + <!-- extra card --> + <repeat count="5"> + <param name="i1" start="0" increment="1" /> + <param name="y" start="640" increment="60" /> + <repeat count="5"> + <param name="i2" start="5" increment="1" /> + <param name="x" start="545" increment="60" /> + <element name="lamp~i1~.~i2~" ref="white_lamp"> + <bounds x="~x~" y="~y~" width="40" height="40" /> + </element> + </repeat> + </repeat> + + <!-- select now --> + <element name="lamp7.10" ref="red_rect"> + <bounds x="360" y="940" width="280" height="60" /> + </element> + <element ref="txt_selectnow"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="400" y="950" width="200" height="20" /> + </element> + <element ref="txt_pressabcdebuttonstomovemagiclines"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="360" y="970" width="280" height="20" /> + </element> + + <!-- 4 stars as green 5 on line --> + <element ref="red_rect"> + <bounds x="0" y="970" width="140" height="120" /> + </element> + <element name="lamp7.1" ref="yellow_rect"> + <bounds x="10" y="980" width="120" height="100" /> + </element> + <element ref="txt_4stars"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="10" y="990" width="120" height="20" /> + </element> + <element ref="txt_as"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="10" y="1010" width="120" height="20" /> + </element> + <element ref="txt_green"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="10" y="1030" width="120" height="20" /> + </element> + <element ref="txt_5online"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="10" y="1050" width="120" height="20" /> + </element> + + <!-- select now arrows --> + <element ref="blue_rect"> + <bounds x="200" y="1000" width="600" height="60" /> + </element> + <element name="lamp6.9" ref="txt_rightarrow"> + <bounds x="220" y="1000" width="60" height="60" /> + </element> + <element name="lamp6.10" ref="txt_rightarrow"> + <bounds x="280" y="1000" width="60" height="60" /> + </element> + <element name="lamp6.11" ref="txt_rightarrow"> + <bounds x="340" y="1000" width="60" height="60" /> + </element> + <element name="lamp6.12" ref="txt_rightarrow"> + <bounds x="400" y="1000" width="60" height="60" /> + </element> + <element name="lamp6.13" ref="white_lamp"> + <bounds x="490" y="1005" width="50" height="50" /> + </element> + <element ref="txt_a"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="495" y="1010" width="40" height="40" /> + </element> + <element name="lamp6.13" ref="white_lamp"> + <bounds x="550" y="1005" width="50" height="50" /> + </element> + <element ref="txt_b"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="555" y="1010" width="40" height="40" /> + </element> + <element name="lamp6.14" ref="white_lamp"> + <bounds x="610" y="1005" width="50" height="50" /> + </element> + <element ref="txt_c"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="615" y="1010" width="40" height="40" /> + </element> + <element name="lamp6.15" ref="white_lamp"> + <bounds x="670" y="1005" width="50" height="50" /> + </element> + <element ref="txt_d"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="675" y="1010" width="40" height="40" /> + </element> + <element name="lamp6.16" ref="white_lamp"> + <bounds x="730" y="1005" width="50" height="50" /> + </element> + <element ref="txt_e"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="735" y="1010" width="40" height="40" /> + </element> + + <!-- press buttons before shooting 4th/5th ball --> + <element ref="red_rect"> + <bounds x="860" y="970" width="140" height="190" /> + </element> + <element name="lamp7.8" ref="yellow_rect"> + <bounds x="870" y="980" width="120" height="80" /> + </element> + <element ref="txt_pressbuttons"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="870" y="990" width="120" height="20" /> + </element> + <element ref="txt_beforeshooting"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="870" y="1010" width="120" height="20" /> + </element> + <element ref="txt_4thball"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="870" y="1030" width="120" height="20" /> + </element> + <element name="lamp7.9" ref="yellow_rect"> + <bounds x="870" y="1070" width="120" height="80" /> + </element> + <element ref="txt_pressbuttons"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="870" y="1080" width="120" height="20" /> + </element> + <element ref="txt_beforeshooting"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="870" y="1100" width="120" height="20" /> + </element> + <element ref="txt_5thball"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="870" y="1120" width="120" height="20" /> + </element> + + <!-- any 2/3 stars give, ok --> + <element ref="red_rect"> + <bounds x="0" y="1110" width="140" height="220" /> + </element> + <element name="lamp6.7" ref="yellow_rect"> + <bounds x="10" y="1120" width="120" height="60" /> + </element> + <element ref="txt_any2"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="10" y="1120" width="70" height="60" /> + </element> + <element ref="txt_stars"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="80" y="1120" width="50" height="30" /> + </element> + <element ref="txt_give"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="80" y="1150" width="50" height="30" /> + </element> + <element name="lamp6.8" ref="yellow_rect"> + <bounds x="10" y="1190" width="120" height="60" /> + </element> + <element ref="txt_any3"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="10" y="1190" width="70" height="60" /> + </element> + <element ref="txt_stars"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="80" y="1190" width="50" height="30" /> + </element> + <element ref="txt_give"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="80" y="1220" width="50" height="30" /> + </element> + <element name="lamp7.7" ref="yellow_rect"> + <bounds x="10" y="1260" width="120" height="60" /> + </element> + <element ref="txt_ok"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="10" y="1260" width="120" height="60" /> + </element> + + <!-- roll overs --> + <element ref="green_rect"> + <bounds x="200" y="1100" width="600" height="220" /> + </element> + <element ref="txt_if16ishit"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="200" y="1130" width="160" height="20" /> + </element> + <element ref="txt_bonusarrows"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="200" y="1160" width="160" height="20" /> + </element> + <element ref="txt_advance"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="200" y="1190" width="160" height="20" /> + </element> + <element ref="txt_one"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="200" y="1220" width="160" height="20" /> + </element> + <element ref="txt_step"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="200" y="1220" width="160" height="20" /> + </element> + <element ref="txt_bonus"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="620" y="1110" width="180" height="40" /> + </element> + <element ref="txt_pressxbuttonto"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="620" y="1160" width="180" height="20" /> + </element> + <element ref="txt_collectdouble"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="620" y="1190" width="180" height="20" /> + </element> + <element ref="txt_greenscoreor"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="620" y="1220" width="180" height="20" /> + </element> + <element ref="txt_savebonus"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="620" y="1250" width="180" height="20" /> + </element> + <element ref="txt_fornextgame"> + <color red="0.76" green="0.20" blue="0.09" /> + <bounds x="620" y="1280" width="180" height="20" /> + </element> + <element name="lamp6.1" ref="txt_rightarrow"> + <bounds x="360" y="1130" width="40" height="40" /> + </element> + <element name="lamp6.2" ref="txt_rightarrow"> + <bounds x="410" y="1130" width="40" height="40" /> + </element> + <element name="lamp6.3" ref="txt_rightarrow"> + <bounds x="460" y="1130" width="40" height="40" /> + </element> + <element name="lamp6.4" ref="txt_rightarrow"> + <bounds x="510" y="1130" width="40" height="40" /> + </element> + <element name="lamp6.5" ref="txt_rightarrow"> + <bounds x="560" y="1130" width="40" height="40" /> + </element> + <element ref="red_rect"> + <bounds x="360" y="1210" width="240" height="110" /> + </element> + <element name="lamp6.0" ref="white_rect"> + <bounds x="370" y="1220" width="60" height="90" /> + </element> + <element name="lamp6.0" ref="yellow_rect"> + <bounds x="380" y="1230" width="40" height="70" /> + </element> + <element name="lamp7.11" ref="green_rect"> + <bounds x="440" y="1220" width="80" height="90" /> + </element> + <element ref="txt_roll"> + <color red="0.72" green="0.73" blue="0.00" /> + <bounds x="450" y="1220" width="60" height="40" /> + </element> + <element ref="txt_overs"> + <color red="0.72" green="0.73" blue="0.00" /> + <bounds x="450" y="1260" width="60" height="40" /> + </element> + <element name="lamp6.6" ref="white_rect"> + <bounds x="530" y="1220" width="60" height="90" /> + </element> + <element name="lamp6.6" ref="red_rect"> + <bounds x="540" y="1230" width="40" height="70" /> + </element> + + <!-- led digits --> + <element ref="yellow_rect"> + <bounds x="810" y="1180" width="180" height="80" /> + </element> + <element ref="black_rect"> + <bounds x="820" y="1190" width="160" height="60" /> + </element> + <repeat count="4"> + <param name="n" start="3" increment="-1" /> + <param name="x" start="830" increment="35" /> + <element name="digit~n~" ref="digit"> + <bounds x="~x~" y="1195" width="35" height="50" /> + </element> + </repeat> + + <!-- extra balls --> + <element name="lamp5.0" ref="red_rect"> + <bounds x="140" y="1340" width="120" height="40" /> + </element> + <element ref="txt_extraballs"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="140" y="1340" width="120" height="40" /> + </element> + <element name="lamp5.1" ref="red_rect"> + <bounds x="270" y="1340" width="40" height="40" /> + </element> + <element ref="txt_1st"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="270" y="1340" width="40" height="40" /> + </element> + <element name="lamp5.2" ref="red_rect"> + <bounds x="320" y="1340" width="70" height="40" /> + </element> + <element ref="txt_extra"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="320" y="1340" width="70" height="40" /> + </element> + <element name="lamp5.3" ref="red_rect"> + <bounds x="400" y="1340" width="60" height="40" /> + </element> + <element ref="txt_ball"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="400" y="1340" width="60" height="40" /> + </element> + <element name="lamp5.4" ref="red_rect"> + <bounds x="470" y="1340" width="40" height="40" /> + </element> + <element ref="txt_2nd"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="470" y="1340" width="40" height="40" /> + </element> + <element name="lamp5.5" ref="red_rect"> + <bounds x="520" y="1340" width="70" height="40" /> + </element> + <element ref="txt_extra"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="520" y="1340" width="70" height="40" /> + </element> + <element name="lamp5.6" ref="red_rect"> + <bounds x="600" y="1340" width="60" height="40" /> + </element> + <element ref="txt_ball"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="600" y="1340" width="60" height="40" /> + </element> + <element name="lamp5.7" ref="red_rect"> + <bounds x="670" y="1340" width="40" height="40" /> + </element> + <element ref="txt_3rd"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="670" y="1340" width="40" height="40" /> + </element> + <element name="lamp5.8" ref="red_rect"> + <bounds x="720" y="1340" width="70" height="40" /> + </element> + <element ref="txt_extra"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="720" y="1340" width="70" height="40" /> + </element> + <element name="lamp5.9" ref="red_rect"> + <bounds x="800" y="1340" width="60" height="40" /> + </element> + <element ref="txt_ball"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="800" y="1340" width="60" height="40" /> + </element> + + <!-- bottom area - inputs --> + + <!-- triggers --> + <element ref="white_rect" inputtag="row5" inputmask="0x10"> + <bounds x="40" y="1410" width="60" height="40" /> + </element> + <element ref="txt_trg0"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="40" y="1410" width="60" height="40" /> + </element> + <element ref="white_rect" inputtag="row4" inputmask="0x01"> + <bounds x="110" y="1410" width="60" height="40" /> + </element> + <element ref="txt_trg1"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="110" y="1410" width="60" height="40" /> + </element> + <element ref="white_rect" inputtag="row4" inputmask="0x02"> + <bounds x="40" y="1460" width="60" height="40" /> + </element> + <element ref="txt_trg2"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="40" y="1460" width="60" height="40" /> + </element> + <element ref="white_rect" inputtag="row4" inputmask="0x04"> + <bounds x="110" y="1460" width="60" height="40" /> + </element> + <element ref="txt_trg3"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="110" y="1460" width="60" height="40" /> + </element> + <element ref="white_rect" inputtag="row4" inputmask="0x08"> + <bounds x="40" y="1510" width="60" height="40" /> + </element> + <element ref="txt_trg4"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="40" y="1510" width="60" height="40" /> + </element> + <element ref="white_rect" inputtag="row4" inputmask="0x10"> + <bounds x="110" y="1510" width="60" height="40" /> + </element> + <element ref="txt_trg5"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="110" y="1510" width="60" height="40" /> + </element> + + <!-- rollover, doorbutton, carry over shutter --> + <element ref="white_rect" inputtag="row3" inputmask="0x10"> + <bounds x="40" y="1650" width="200" height="40" /> + </element> + <element ref="txt_redrollover"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="40" y="1650" width="200" height="40" /> + </element> + <element ref="white_rect" inputtag="row3" inputmask="0x20"> + <bounds x="40" y="1700" width="200" height="40" /> + </element> + <element ref="txt_yellowrollover"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="40" y="1700" width="200" height="40" /> + </element> + <element ref="white_rect" inputtag="row6" inputmask="0x02"> + <bounds x="40" y="1750" width="200" height="40" /> + </element> + <element ref="txt_reddoorbutton"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="40" y="1750" width="200" height="40" /> + </element> + <element ref="white_rect" inputtag="row6" inputmask="0x04"> + <bounds x="40" y="1800" width="200" height="40" /> + </element> + <element ref="txt_yellowdoorbutton"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="40" y="1800" width="200" height="40" /> + </element> + <element ref="white_rect" inputtag="row1" inputmask="0x80"> + <bounds x="40" y="1850" width="200" height="40" /> + </element> + <element ref="txt_carryovershutter"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="40" y="1850" width="200" height="40" /> + </element> + + <!-- holes --> + <element ref="red_rect"> + <bounds x="220" y="1400" width="70" height="100" /> + </element> + <element ref="hole" inputtag="row0" inputmask="0x01"> + <bounds x="230" y="1410" width="50" height="50" /> + </element> + <element ref="txt_1"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="230" y="1470" width="50" height="20" /> + </element> + <element ref="white_rect"> + <bounds x="300" y="1400" width="70" height="100" /> + </element> + <element ref="hole" inputtag="row0" inputmask="0x02"> + <bounds x="310" y="1410" width="50" height="50" /> + </element> + <element ref="txt_2"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="310" y="1470" width="50" height="20" /> + </element> + <element ref="red_rect"> + <bounds x="380" y="1400" width="70" height="100" /> + </element> + <element ref="hole" inputtag="row0" inputmask="0x04"> + <bounds x="390" y="1410" width="50" height="50" /> + </element> + <element ref="txt_3"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="390" y="1470" width="50" height="20" /> + </element> + <element ref="white_rect"> + <bounds x="460" y="1400" width="70" height="100" /> + </element> + <element ref="hole" inputtag="row0" inputmask="0x08"> + <bounds x="470" y="1410" width="50" height="50" /> + </element> + <element ref="txt_4"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="470" y="1470" width="50" height="20" /> + </element> + <element ref="red_rect"> + <bounds x="540" y="1400" width="70" height="100" /> + </element> + <element ref="hole" inputtag="row0" inputmask="0x10"> + <bounds x="550" y="1410" width="50" height="50" /> + </element> + <element ref="txt_5"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="550" y="1470" width="50" height="20" /> + </element> + <element ref="white_rect"> + <bounds x="620" y="1400" width="70" height="100" /> + </element> + <element ref="hole" inputtag="row0" inputmask="0x20"> + <bounds x="630" y="1410" width="50" height="50" /> + </element> + <element ref="txt_6"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="630" y="1470" width="50" height="20" /> + </element> + <element ref="red_rect"> + <bounds x="700" y="1400" width="70" height="100" /> + </element> + <element ref="hole" inputtag="row0" inputmask="0x40"> + <bounds x="710" y="1410" width="50" height="50" /> + </element> + <element ref="txt_7"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="710" y="1470" width="50" height="20" /> + </element> + <element ref="white_rect"> + <bounds x="260" y="1510" width="70" height="100" /> + </element> + <element ref="hole" inputtag="row1" inputmask="0x01"> + <bounds x="270" y="1520" width="50" height="50" /> + </element> + <element ref="txt_8"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="270" y="1580" width="50" height="20" /> + </element> + <element ref="red_rect"> + <bounds x="340" y="1510" width="70" height="100" /> + </element> + <element ref="hole" inputtag="row1" inputmask="0x02"> + <bounds x="350" y="1520" width="50" height="50" /> + </element> + <element ref="txt_9"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="350" y="1580" width="50" height="20" /> + </element> + <element ref="white_rect"> + <bounds x="420" y="1510" width="70" height="100" /> + </element> + <element ref="hole" inputtag="row1" inputmask="0x04"> + <bounds x="430" y="1520" width="50" height="50" /> + </element> + <element ref="txt_10"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="430" y="1580" width="50" height="20" /> + </element> + <element ref="red_rect"> + <bounds x="500" y="1510" width="70" height="100" /> + </element> + <element ref="hole" inputtag="row1" inputmask="0x08"> + <bounds x="510" y="1520" width="50" height="50" /> + </element> + <element ref="txt_11"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="510" y="1580" width="50" height="20" /> + </element> + <element ref="white_rect"> + <bounds x="580" y="1510" width="70" height="100" /> + </element> + <element ref="hole" inputtag="row1" inputmask="0x10"> + <bounds x="590" y="1520" width="50" height="50" /> + </element> + <element ref="txt_12"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="590" y="1580" width="50" height="20" /> + </element> + <element ref="red_rect"> + <bounds x="660" y="1510" width="70" height="100" /> + </element> + <element ref="hole" inputtag="row1" inputmask="0x20"> + <bounds x="670" y="1520" width="50" height="50" /> + </element> + <element ref="txt_13"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="670" y="1580" width="50" height="20" /> + </element> + <element ref="white_rect"> + <bounds x="300" y="1620" width="70" height="100" /> + </element> + <element ref="hole" inputtag="row2" inputmask="0x01"> + <bounds x="310" y="1630" width="50" height="50" /> + </element> + <element ref="txt_14"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="310" y="1690" width="50" height="20" /> + </element> + <element ref="red_rect"> + <bounds x="380" y="1620" width="70" height="100" /> + </element> + <element ref="hole" inputtag="row2" inputmask="0x02"> + <bounds x="390" y="1630" width="50" height="50" /> + </element> + <element ref="txt_15"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="390" y="1690" width="50" height="20" /> + </element> + <element ref="white_rect"> + <bounds x="460" y="1620" width="70" height="100" /> + </element> + <element ref="hole" inputtag="row2" inputmask="0x04"> + <bounds x="470" y="1630" width="50" height="50" /> + </element> + <element ref="txt_16"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="470" y="1690" width="50" height="20" /> + </element> + <element ref="red_rect"> + <bounds x="540" y="1620" width="70" height="100" /> + </element> + <element ref="hole" inputtag="row2" inputmask="0x08"> + <bounds x="550" y="1630" width="50" height="50" /> + </element> + <element ref="txt_17"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="550" y="1690" width="50" height="20" /> + </element> + <element ref="white_rect"> + <bounds x="620" y="1620" width="70" height="100" /> + </element> + <element ref="hole" inputtag="row2" inputmask="0x10"> + <bounds x="630" y="1630" width="50" height="50" /> + </element> + <element ref="txt_18"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="630" y="1690" width="50" height="20" /> + </element> + <element ref="red_rect"> + <bounds x="340" y="1730" width="70" height="100" /> + </element> + <element ref="hole" inputtag="row2" inputmask="0x20"> + <bounds x="350" y="1740" width="50" height="50" /> + </element> + <element ref="txt_19"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="350" y="1800" width="50" height="20" /> + </element> + <element ref="white_rect"> + <bounds x="420" y="1730" width="70" height="100" /> + </element> + <element ref="hole" inputtag="row2" inputmask="0x40"> + <bounds x="430" y="1740" width="50" height="50" /> + </element> + <element ref="txt_20"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="430" y="1800" width="50" height="20" /> + </element> + <element ref="red_rect"> + <bounds x="500" y="1730" width="70" height="100" /> + </element> + <element ref="hole" inputtag="row2" inputmask="0x80"> + <bounds x="510" y="1740" width="50" height="50" /> + </element> + <element ref="txt_21"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="510" y="1800" width="50" height="20" /> + </element> + <element ref="white_rect"> + <bounds x="580" y="1730" width="70" height="100" /> + </element> + <element ref="hole" inputtag="row3" inputmask="0x01"> + <bounds x="590" y="1740" width="50" height="50" /> + </element> + <element ref="txt_22"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="590" y="1800" width="50" height="20" /> + </element> + <element ref="red_rect"> + <bounds x="380" y="1840" width="70" height="100" /> + </element> + <element ref="hole" inputtag="row3" inputmask="0x02"> + <bounds x="390" y="1850" width="50" height="50" /> + </element> + <element ref="txt_23"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="390" y="1910" width="50" height="20" /> + </element> + <element ref="white_rect"> + <bounds x="460" y="1840" width="70" height="100" /> + </element> + <element ref="hole" inputtag="row3" inputmask="0x04"> + <bounds x="470" y="1850" width="50" height="50" /> + </element> + <element ref="txt_24"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="470" y="1910" width="50" height="20" /> + </element> + <element ref="red_rect"> + <bounds x="540" y="1840" width="70" height="100" /> + </element> + <element ref="hole" inputtag="row3" inputmask="0x08"> + <bounds x="550" y="1850" width="50" height="50" /> + </element> + <element ref="txt_25"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="550" y="1910" width="50" height="20" /> + </element> + + <!-- shutter, gate, alley, door --> + <element ref="white_rect" inputtag="row0" inputmask="0x80"> + <bounds x="840" y="1410" width="120" height="40" /> + </element> + <element ref="txt_shutter"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="840" y="1410" width="120" height="40" /> + </element> + <element ref="white_rect" inputtag="row1" inputmask="0x40"> + <bounds x="840" y="1460" width="120" height="40" /> + </element> + <element ref="txt_gate"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="840" y="1460" width="120" height="40" /> + </element> + <element ref="white_rect" inputtag="row3" inputmask="0x40"> + <bounds x="840" y="1510" width="120" height="40" /> + </element> + <element ref="txt_alley"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="840" y="1510" width="120" height="40" /> + </element> + <element ref="white_rect" inputtag="row5" inputmask="0x08"> + <bounds x="840" y="1560" width="120" height="40" /> + </element> + <element ref="txt_door"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="840" y="1560" width="120" height="40" /> + </element> + + <!-- carry over balllift, rest contact balllift, manual balllift --> + <element ref="white_rect" inputtag="row4" inputmask="0x20"> + <bounds x="760" y="1650" width="200" height="40" /> + </element> + <element ref="txt_carryoverballlifter"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="760" y="1650" width="200" height="40" /> + </element> + <element ref="white_rect" inputtag="row4" inputmask="0x40"> + <bounds x="760" y="1700" width="200" height="40" /> + </element> + <element ref="txt_restcontactballlifter"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="760" y="1700" width="200" height="40" /> + </element> + <element ref="white_rect" inputtag="row4" inputmask="0x80"> + <bounds x="760" y="1750" width="200" height="40" /> + </element> + <element ref="txt_manualballlift"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="760" y="1750" width="200" height="40" /> + </element> + + <!-- magic line buttons a, b, c, d, e --> + <element ref="white_rect" inputtag="row6" inputmask="0x08"> + <bounds x="80" y="1970" width="40" height="40" /> + </element> + <element ref="txt_a"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="80" y="1970" width="40" height="40" /> + </element> + <element ref="white_rect" inputtag="row6" inputmask="0x10"> + <bounds x="130" y="1970" width="40" height="40" /> + </element> + <element ref="txt_b"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="130" y="1970" width="40" height="40" /> + </element> + <element ref="white_rect" inputtag="row6" inputmask="0x20"> + <bounds x="180" y="1970" width="40" height="40" /> + </element> + <element ref="txt_c"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="180" y="1970" width="40" height="40" /> + </element> + <element ref="white_rect" inputtag="row6" inputmask="0x40"> + <bounds x="230" y="1970" width="40" height="40" /> + </element> + <element ref="txt_d"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="230" y="1970" width="40" height="40" /> + </element> + <element ref="white_rect" inputtag="row6" inputmask="0x80"> + <bounds x="280" y="1970" width="40" height="40" /> + </element> + <element ref="txt_e"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="280" y="1970" width="40" height="40" /> + </element> + + <!-- coin slots --> + <element ref="white_rect" inputtag="row7" inputmask="0x02"> + <bounds x="380" y="1970" width="110" height="40" /> + </element> + <element ref="txt_coinleft"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="380" y="1970" width="110" height="40" /> + </element> + <element ref="white_rect" inputtag="row7" inputmask="0x01"> + <bounds x="500" y="1970" width="110" height="40" /> + </element> + <element ref="txt_coinright"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="500" y="1970" width="110" height="40" /> + </element> + + <!-- r and x buttons --> + <element ref="white_rect" inputtag="row5" inputmask="0x01"> + <bounds x="670" y="1970" width="40" height="40" /> + </element> + <element ref="txt_r"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="670" y="1970" width="40" height="40" /> + </element> + <element ref="white_rect" inputtag="row5" inputmask="0x02"> + <bounds x="720" y="1970" width="40" height="40" /> + </element> + <element ref="txt_x"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="720" y="1970" width="40" height="40" /> + </element> + + <!-- service box buttons --> + <element ref="white_rect" inputtag="row7" inputmask="0x04"> + <bounds x="830" y="1870" width="60" height="40" /> + </element> + <element ref="txt_sv1"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="830" y="1870" width="60" height="40" /> + </element> + <element ref="white_rect" inputtag="row7" inputmask="0x08"> + <bounds x="900" y="1870" width="60" height="40" /> + </element> + <element ref="txt_sv2"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="900" y="1870" width="60" height="40" /> + </element> + <element ref="white_rect" inputtag="row7" inputmask="0x10"> + <bounds x="830" y="1920" width="60" height="40" /> + </element> + <element ref="txt_sv3"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="830" y="1920" width="60" height="40" /> + </element> + <element ref="white_rect" inputtag="row7" inputmask="0x20"> + <bounds x="900" y="1920" width="60" height="40" /> + </element> + <element ref="txt_sv4"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="900" y="1920" width="60" height="40" /> + </element> + <element ref="white_rect" inputtag="row7" inputmask="0x40"> + <bounds x="830" y="1970" width="60" height="40" /> + </element> + <element ref="txt_sv5"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="830" y="1970" width="60" height="40" /> + </element> + <element ref="white_rect" inputtag="row7" inputmask="0x80"> + <bounds x="900" y="1970" width="60" height="40" /> + </element> + <element ref="txt_sv6"> + <color red="0.0" green="0.0" blue="0.0" /> + <bounds x="900" y="1970" width="60" height="40" /> + </element> + + </view> +</mamelayout> diff --git a/src/mame/mame.lst b/src/mame/mame.lst index 31506457ed6..863b51c6902 100644 --- a/src/mame/mame.lst +++ b/src/mame/mame.lst @@ -9257,7 +9257,6 @@ michkit1 // michkitb // michnew // michstake // -missamer // montana // newdixie // penalty // @@ -23392,6 +23391,9 @@ mirage // (c) 1994 Mitchell mirax // (c) 1985 Current Technologies miraxa // (c) 1985 Current Technologies +@source:missamer.cpp +missamer // (c) 1984 Sirmo + @source:missb2.cpp bublpong // bootleg on enhanced hardware missb2 // bootleg on enhanced hardware |