summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author David Haywood <28625134+DavidHaywood@users.noreply.github.com>2021-01-23 00:18:22 +0000
committer GitHub <noreply@github.com>2021-01-23 11:18:22 +1100
commitc25ae86a7a4f8abfbb19e29b80f3418205584b57 (patch)
treec8417d7451f87e0b7d9245cc4f886c046a23d161
parente4372de928ba3cf575208d27b5a9fa3e97ae4b37 (diff)
jpmimpact.cpp: work on correctly mapping buttons for each machine [David Haywood] (#7683)
* further per game inpiut work * additional input work / documentation * further input work * further input fixes * attempting to locate a j6monmad input * still looking for some inputs on j6monmad, maybe something is missing * further per-game inputs * additional per game inputs * remove a duplicate line * looked at a few more games * gave a few more inputs * cover more game inpus * more game inputs * document some sets that aren't going into input test properly * additional per-game inputs * more per-game inputs * j6wldkng is an unusual machine, placeholder strings on the unseen vfd, and even non-standard mapping of the spin button * additional per game inputs * j6col fixup
-rw-r--r--src/mame/drivers/jpmimpct.cpp296
-rw-r--r--src/mame/drivers/jpmimpctsw.cpp2910
-rw-r--r--src/mame/includes/jpmimpct.h7
3 files changed, 2521 insertions, 692 deletions
diff --git a/src/mame/drivers/jpmimpct.cpp b/src/mame/drivers/jpmimpct.cpp
index 574fe28152f..ab335927955 100644
--- a/src/mame/drivers/jpmimpct.cpp
+++ b/src/mame/drivers/jpmimpct.cpp
@@ -511,25 +511,58 @@ void jpmimpct_video_state::slides_video_w(offs_t offset, uint16_t data, uint16_t
* 9: Coin mechanism
*/
+
+
+/*
+ Some Input Switch numbers according to test modes
+
+ DSW 0x01 = Switch 0
+ DSW 0x02 = 1
+ DSW 0x04 = 1
+ DSW 0x08 = 1
+ DSW 0x10 = 1
+ DSW 0x20 = 1
+ DSW 0x40 = 1
+ DSW 0x80 = 1
+
+ PIA_PORTB: 0x01 = 136
+ PIA_PORTB: 0x02 = Switch 137
+ PIA_PORTB: 0x04 = 138
+ PIA_PORTB: 0x08 = 139
+ PIA_PORTB: 0x10 = 140
+ PIA_PORTB: 0x20 = 141
+ PIA_PORTB: 0x40 = 142
+ PIA_PORTB: 0x80 = 143
+
+ PIA_PORTC: 0x01 = 144
+ PIA_PORTC: 0x02 = 145
+ PIA_PORTC: 0x04 = 146
+ PIA_PORTC: 0x08 = 147
+ PIA_PORTC: 0x10 = 148
+ PIA_PORTC: 0x20 = Switch 149
+ PIA_PORTC: 0x40 = 150
+ PIA_PORTC: 0x80 = 151
+*/
+
+
void jpmimpct_state::common_map(address_map& map)
{
map(0x00000000, 0x001fffff).rom();
map(0x00400000, 0x00403fff).ram().share("nvram");
map(0x00480000, 0x0048001f).rw("main_duart", FUNC(mc68681_device::read), FUNC(mc68681_device::write)).umask16(0x00ff);
- map(0x00480020, 0x00480021).portr("DSW");
+ map(0x00480020, 0x00480021).portr("DSW"); // DSW 0x01 = Switch 0
map(0x00480022, 0x00480023).portr("PERCENT");
map(0x00480024, 0x00480025).portr("J10_0");
map(0x00480026, 0x00480027).portr("J10_1");
- map(0x00480028, 0x00480029).portr("J10_2");
- map(0x0048002a, 0x0048002b).portr("J9_0");
+ map(0x00480028, 0x00480029).portr("J10_2"); // J10_2: 0x01 = Switch 32
+ map(0x0048002a, 0x0048002b).portr("J9_0"); // JP9_0: 0x01 = Switch 40
map(0x0048002c, 0x0048002d).portr("J9_1");
map(0x0048002e, 0x0048002f).portr("J9_2");
- map(0x00480030, 0x00480031).portr("unk30");
+ map(0x00480030, 0x00480031).portr("PAYCOIN_LEVEL");
map(0x00480032, 0x00480033).portr("COIN_SENSE");
map(0x00480034, 0x00480035).r(FUNC(jpmimpct_state::ump_r));
- map(0x00480060, 0x00480067).rw(m_ppi, FUNC(i8255_device::read), FUNC(i8255_device::write)).umask16(0x00ff);
-// map(0x00480060, 0x00480067).r(FUNC(jpmimpct_state::unk_r));
+ map(0x00480060, 0x00480067).rw(m_ppi, FUNC(i8255_device::read), FUNC(i8255_device::write)).umask16(0x00ff);
map(0x00480080, 0x00480081).w(FUNC(jpmimpct_state::upd7759_w));
map(0x00480082, 0x00480083).w(FUNC(jpmimpct_state::volume_w));
@@ -657,28 +690,28 @@ INPUT_CHANGED_MEMBER(jpmimpct_state::coin_changed)
INPUT_PORTS_START( jpmimpct_inputs )
PORT_START("DSW")
- PORT_DIPNAME( 0x01, 0x01, "DSW 0")
+ PORT_DIPNAME( 0x01, 0x01, "DSW 0x01")
PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x02, 0x02, "DSW 1")
+ PORT_DIPNAME( 0x02, 0x02, "DSW 0x02")
PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x04, 0x04, "DSW 2")
+ PORT_DIPNAME( 0x04, 0x04, "DSW 0x04")
PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x08, 0x08, "DSW 3")
+ PORT_DIPNAME( 0x08, 0x08, "DSW 0x08")
PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x10, 0x10, "DSW 4")
+ PORT_DIPNAME( 0x10, 0x10, "DSW 0x10")
PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x20, 0x20, "DSW 5")
+ PORT_DIPNAME( 0x20, 0x20, "DSW 0x20")
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x40, 0x40, "DSW 6")
+ PORT_DIPNAME( 0x40, 0x40, "DSW 0x40")
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x80, 0x80, "DSW 7")
+ PORT_DIPNAME( 0x80, 0x80, "DSW 0x80")
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@@ -737,164 +770,205 @@ INPUT_PORTS_START( jpmimpct_inputs )
PORT_CONFSETTING( 0x80, DEF_STR( Off ) )
PORT_START("J9_0")
- PORT_DIPNAME( 0x01, 0x01, "J9_0: 0")
+ PORT_DIPNAME( 0x01, 0x01, "J9_0: 0x01")
PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x02, 0x02, "J9_0: 1")
+ PORT_DIPNAME( 0x02, 0x02, "J9_0: 0x02")
PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x04, 0x04, "J9_0: 2")
+ PORT_DIPNAME( 0x04, 0x04, "J9_0: 0x04")
PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x08, 0x08, "J9_0: 3")
+ PORT_DIPNAME( 0x08, 0x08, "J9_0: 0x08")
PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x10, 0x10, "J9_0: 4")
+ PORT_DIPNAME( 0x10, 0x10, "J9_0: 0x10")
PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x20, 0x20, "J9_0: 5")
+ PORT_DIPNAME( 0x20, 0x20, "J9_0: 0x20")
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x40, 0x40, "J9_0: 6")
+ PORT_DIPNAME( 0x40, 0x40, "J9_0: 0x40")
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x80, 0x80, "J9_0: 7")
+ PORT_DIPNAME( 0x80, 0x80, "J9_0: 0x80")
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START("J9_1")
- PORT_DIPNAME( 0x01, 0x01, "J9_1: 0")
+ PORT_DIPNAME( 0x01, 0x01, "J9_1: 0x01")
PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x02, 0x02, "J9_1: 1")
+ PORT_DIPNAME( 0x02, 0x02, "J9_1: 0x02")
PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x04, 0x04, "J9_1: 2")
+ PORT_DIPNAME( 0x04, 0x04, "J9_1: 0x04")
PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x08, 0x08, "J9_1: 3")
+ PORT_DIPNAME( 0x08, 0x08, "J9_1: 0x08")
PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x10, 0x10, "J9_1: 4")
+ PORT_DIPNAME( 0x10, 0x10, "J9_1: 0x10")
PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x20, 0x20, "J9_1: 5")
+ PORT_DIPNAME( 0x20, 0x20, "J9_1: 0x20")
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x40, 0x40, "J9_1: 6")
+ PORT_DIPNAME( 0x40, 0x40, "J9_1: 0x40")
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x80, 0x80, "J9_1: 7")
+ PORT_DIPNAME( 0x80, 0x80, "J9_1: 0x80")
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START("J10_1")
- PORT_DIPNAME( 0x01, 0x01, "J10_1: 0")
+ PORT_DIPNAME( 0x01, 0x01, "J10_1: 0x01")
PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x02, 0x02, "J10_1: 1")
+ PORT_DIPNAME( 0x02, 0x02, "J10_1: 0x02")
PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x04, 0x04, "J10_1: 2")
+ PORT_DIPNAME( 0x04, 0x04, "J10_1: 0x04")
PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x08, 0x08, "J10_1: 3")
+ PORT_DIPNAME( 0x08, 0x08, "J10_1: 0x08")
PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x10, 0x10, "J10_1: 4")
+ PORT_DIPNAME( 0x10, 0x10, "J10_1: 0x10")
PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x20, 0x20, "J10_1: 5")
+ PORT_DIPNAME( 0x20, 0x20, "J10_1: 0x20")
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x40, 0x40, "J10_1: 6")
+ PORT_DIPNAME( 0x40, 0x40, "J10_1: 0x40")
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x80, 0x80, "J10_1: 7")
+ PORT_DIPNAME( 0x80, 0x80, "J10_1: 0x80")
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START("J10_2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_INTERLOCK) PORT_NAME("Back Door") PORT_CODE(KEYCODE_Q) PORT_TOGGLE // always?
- PORT_DIPNAME( 0x02, 0x02, "J10_2: 1")
+ PORT_DIPNAME( 0x02, 0x02, "J10_2: 0x02")
PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x04, 0x04, "J10_2: 2")
+ PORT_DIPNAME( 0x04, 0x04, "J10_2: 0x04")
PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x08, 0x08, "J10_2: 3")
+ PORT_DIPNAME( 0x08, 0x08, "J10_2: 0x08")
PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x10, 0x10, "J10_2: 4")
+ PORT_DIPNAME( 0x10, 0x10, "J10_2: 0x10")
PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x20, 0x20, "J10_2: 5")
+ PORT_DIPNAME( 0x20, 0x20, "J10_2: 0x20")
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x40, 0x40, "J10_2: 6")
+ PORT_DIPNAME( 0x40, 0x40, "J10_2: 0x40")
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x80, 0x80, "J10_2: 7")
+ PORT_DIPNAME( 0x80, 0x80, "J10_2: 0x80")
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START("J9_2")
- PORT_DIPNAME( 0x01, 0x01, "J9_2: 0")
+ PORT_DIPNAME( 0x01, 0x01, "J9_2: 0x01")
PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x02, 0x02, "J9_2: 1")
+ PORT_DIPNAME( 0x02, 0x02, "J9_2: 0x02")
PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x04, 0x04, "J9_2: 2")
+ PORT_DIPNAME( 0x04, 0x04, "J9_2: 0x04")
PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x08, 0x08, "J9_2: 3")
+ PORT_DIPNAME( 0x08, 0x08, "J9_2: 0x08")
PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x10, 0x10, "J9_2: 4")
+ PORT_DIPNAME( 0x10, 0x10, "J9_2: 0x10")
PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x20, 0x20, "J9_2: 5") // seems to be cashbox door on a number of non-video games
+ PORT_DIPNAME( 0x20, 0x20, "J9_2: 0x20")
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x40, 0x40, "J9_2: 6")
+ PORT_DIPNAME( 0x40, 0x40, "J9_2: 0x40")
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x80, 0x80, "J9_2: 7")
+ PORT_DIPNAME( 0x80, 0x80, "J9_2: 0x80")
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_START("unk30")
- PORT_DIPNAME( 0x01, 0x00, "unk30: 0 (Payout related)") // must be ON or you get an IOU message in j6roller instead of payout
+ PORT_START("PAYCOIN_LEVEL") // maybe only for certain types of payout mechanism?
+ PORT_DIPNAME( 0x01, 0x00, "PAYCOIN_LEVEL: 0x01 (20p cash low)") // this must be ON or you get an IOU message in j6roller instead of payout, just high being set isn't enough
PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x02, 0x02, "unk30: 1")
+ PORT_DIPNAME( 0x02, 0x00, "PAYCOIN_LEVEL: 0x02 (token f low)")
PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x04, 0x04, "unk30: 2")
+ PORT_DIPNAME( 0x04, 0x00, "PAYCOIN_LEVEL: 0x04 (token b low)")
PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x08, 0x08, "unk30: 3")
+ PORT_DIPNAME( 0x08, 0x00, "PAYCOIN_LEVEL: 0x08 (100p cash low)")
PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x10, 0x10, "unk30: 4")
+ PORT_DIPNAME( 0x10, 0x00, "PAYCOIN_LEVEL: 0x10 (token b full)")
PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x20, 0x20, "unk30: 5")
+ PORT_DIPNAME( 0x20, 0x00, "PAYCOIN_LEVEL: 0x20") // nothing on j6roller
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x40, 0x40, "unk30: 6")
+ PORT_DIPNAME( 0x40, 0x00, "PAYCOIN_LEVEL: 0x40 (20p cash full)")
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x80, 0x80, "unk30: 7")
+ PORT_DIPNAME( 0x80, 0x00, "PAYCOIN_LEVEL: 0x80 (100p cash full)")
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
-
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+
PORT_START("TEST_DEMO")
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME( "Test/Demo" )
- PORT_INCLUDE( jpmimpct_coins )
+ PORT_START("PIA_PORTB")
+ PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_CUSTOM ) PORT_READ_LINE_MEMBER(jpmimpct_state, hopper_b_0_r)
+ PORT_DIPNAME( 0x02, 0x00, "PIA_PORTB: 0x02")
+ PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x04, 0x04, "PIA_PORTB: 0x04")
+ PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_CUSTOM ) PORT_READ_LINE_MEMBER(jpmimpct_state, hopper_b_3_r)
+ PORT_DIPNAME( 0x10, 0x10, "PIA_PORTB: 0x10")
+ PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x20, 0x20, "PIA_PORTB: 0x20")
+ PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x40, 0x40, "PIA_PORTB: 0x40")
+ PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x80, 0x80, "PIA_PORTB: 0x80")
+ PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_START("PIA_PORTC")
+ PORT_DIPNAME( 0x01, 0x00, "PIA_PORTC: 0x01")
+ PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x02, 0x00, "PIA_PORTC: 0x02")
+ PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x04, 0x00, "PIA_PORTC: 0x04")
+ PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x08, 0x00, "PIA_PORTC: 0x08")
+ PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_CUSTOM ) PORT_READ_LINE_MEMBER(jpmimpct_state, hopper_c_4_r)
+ PORT_DIPNAME( 0x20, 0x20, "Top Up Switch 0x20")
+ PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_CUSTOM ) PORT_READ_LINE_MEMBER(jpmimpct_state, hopper_c_6_r)
+ PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_CUSTOM ) PORT_READ_LINE_MEMBER(jpmimpct_state, hopper_c_7_r)
+
+ PORT_INCLUDE( jpmimpct_coins )
INPUT_PORTS_END
INPUT_PORTS_START( jpmimpct_video_inputs )
@@ -1014,16 +1088,16 @@ WRITE_LINE_MEMBER(jpmimpct_video_state::tms_irq)
*
*************************************/
-uint8_t jpmimpct_state::hopper_b_r()
-{
- int retval;
- // B0 = 100p Hopper Opto
- // B1 = Hopper High
- // B2 = Hopper Low
- // B3 = 20p Hopper Opto
+// THIS COULD BE INCORRECT
- // Always return hoppers full
- retval=0xed; // 1110 1101
+// B0 = 100p Hopper Opto
+// B1 = Hopper High
+// B2 = Hopper Low
+// B3 = 20p Hopper Opto
+
+READ_LINE_MEMBER( jpmimpct_state::hopper_b_0_r )
+{
+ uint8_t retval = 0x01;
if (!m_hopinhibit)//if inhibited, we don't change these flags
{
@@ -1031,9 +1105,26 @@ uint8_t jpmimpct_state::hopper_b_r()
{//100p
retval &= ~0x01;
}
+ }
+ else
+ {
+ // if payout is inhibited these must be 0, no coin detected? otherwise many sets will give 5.7 error
+ // when they test the hoppers
+ retval &= ~0x01;
+ }
+
+ return retval;
+}
+
+READ_LINE_MEMBER( jpmimpct_state::hopper_b_3_r )
+{
+ uint8_t retval = 0x01;
+
+ if (!m_hopinhibit)//if inhibited, we don't change these flags
+ {
if (((m_hopper[1] && m_motor[1]) || (m_hopper[2] && m_slidesout))) //&& ((m_hopflag2 & 0x20)==0x20))
{
- retval &= ~0x08;
+ retval &= ~0x01;
}
}
else
@@ -1041,49 +1132,66 @@ uint8_t jpmimpct_state::hopper_b_r()
// if payout is inhibited these must be 0, no coin detected? otherwise many sets will give 5.7 error
// when they test the hoppers
retval &= ~0x01;
- retval &= ~0x08;
}
return retval;
}
-uint8_t jpmimpct_state::hopper_c_r()
-{
- int retval;
- // C0-C2 = Alpha
- // C3
- // C4 = 20p Hopper Detect
- // C5 = Hopper Top-Up
- // C6 = 100p Hopper Detect
- // C7 = Payout Verif (Slides)
- retval=0xf0; //1111 0000
+
+
+// C0-C2 = Alpha (output)
+// C3
+// C4 = 20p Hopper Detect
+// C5 = Hopper Top-Up
+// C6 = 100p Hopper Detect
+// C7 = Payout Verif (Slides)
// if (StatBtns & 0x20) // Top Up switch
// retval &= ~0x20;
- // Which hoppers are present
- if (m_hopper[0])
+READ_LINE_MEMBER(jpmimpct_state::hopper_c_4_r)
+{
+ uint8_t retval = 0x01;
+
+ if (m_hopper[1])
{
- retval &= ~0x40;
+ retval &= ~0x01;
}
- if (m_hopper[1])
+
+ return retval;
+}
+
+READ_LINE_MEMBER(jpmimpct_state::hopper_c_6_r)
+{
+ uint8_t retval = 0x01;
+
+ if (m_hopper[0])
{
- retval &= ~0x10;
+ retval &= ~0x01;
}
+ return retval;
+}
+
+READ_LINE_MEMBER(jpmimpct_state::hopper_c_7_r)
+{
+ uint8_t retval = 0x01;
+
if (!m_hopinhibit)
{
if ((m_slidesout==1) && ((m_hopper[2]==0)))
{
m_slidesout=0;
- retval &= ~0x80;
+ retval &= ~0x01;
}
}
return retval;
}
+
+
void jpmimpct_state::payen_a_w(uint8_t data)
{
m_motor[0] = (data & 0x01);
@@ -1171,8 +1279,8 @@ void jpmimpct_state::base(machine_config &config)
I8255(config, m_ppi);
m_ppi->out_pa_callback().set(FUNC(jpmimpct_state::payen_a_w));
- m_ppi->in_pb_callback().set(FUNC(jpmimpct_state::hopper_b_r));
- m_ppi->in_pc_callback().set(FUNC(jpmimpct_state::hopper_c_r));
+ m_ppi->in_pb_callback().set_ioport("PIA_PORTB");
+ m_ppi->in_pc_callback().set_ioport("PIA_PORTC");
m_ppi->out_pc_callback().set(FUNC(jpmimpct_state::display_c_w));
TIMER(config, "cointimer0").configure_generic(FUNC(jpmimpct_state::coinoff<0>));
diff --git a/src/mame/drivers/jpmimpctsw.cpp b/src/mame/drivers/jpmimpctsw.cpp
index c873e1b5e58..da81c4b83a9 100644
--- a/src/mame/drivers/jpmimpctsw.cpp
+++ b/src/mame/drivers/jpmimpctsw.cpp
@@ -17,6 +17,11 @@
Reel Bingo Classic Club (built on top of Give us a Break Club)
Wild King Club (slightly corrupt VFD display, placeholder strings)
+
+ ---
+
+ Some games without sound ROMs appear to hang in places waiting for the upd
+
*/
#include "emu.h"
@@ -111,9 +116,15 @@ INPUT_PORTS_EXTERN( jpmimpct_inputs );
-INPUT_PORTS_START( jpmimpct_non_video_inputs )
+INPUT_PORTS_START( jpmimpct_non_video_inputs ) // these are standard inputs for the first party games
PORT_INCLUDE( jpmimpct_inputs )
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) // Spin Reels
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_INTERLOCK) PORT_NAME("Back Door") PORT_CODE(KEYCODE_Q) PORT_TOGGLE
+
PORT_MODIFY("J9_2") // are the refill key / cashbox ALWAYS here on non-videos? or just most of the time?
// J9_2:2 HOPPER ?
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_SERVICE) PORT_NAME("Refill Key") PORT_CODE(KEYCODE_R) PORT_TOGGLE
@@ -126,7 +137,30 @@ INPUT_PORTS_START( j6nokey_withperc )
PORT_INCLUDE( jpmimpct_non_video_inputs )
PORT_MODIFY("J10_0")
- PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
+ PORT_DIPNAME( 0x01, 0x01, "J10_0: 0x01")
+ PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x02, 0x02, "J10_0: 0x02")
+ PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x04, 0x04, "J10_0: 0x04")
+ PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x08, 0x08, "J10_0: 0x08")
+ PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x10, 0x10, "J10_0: 0x10")
+ PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x20, 0x20, "J10_0: 0x20")
+ PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x40, 0x40, "J10_0: 0x40")
+ PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x80, 0x80, "J10_0: 0x80")
+ PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
INPUT_PORTS_END
// also no % key
@@ -134,7 +168,30 @@ INPUT_PORTS_START( j6nokey )
PORT_INCLUDE( j6nokey_withperc )
PORT_MODIFY("PERCENT")
- PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
+ PORT_DIPNAME( 0x01, 0x01, "PERCENT: 0x01")
+ PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x02, 0x02, "PERCENT: 0x02")
+ PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x04, 0x04, "PERCENT: 0x04")
+ PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x08, 0x08, "PERCENT: 0x08")
+ PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x10, 0x10, "PERCENT: 0x10")
+ PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x20, 0x20, "PERCENT: 0x20")
+ PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x40, 0x40, "PERCENT: 0x40")
+ PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x80, 0x80, "PERCENT: 0x80")
+ PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
INPUT_PORTS_END
@@ -507,16 +564,6 @@ INPUT_PORTS_START( j6_jackpot_10 )
PORT_CONFSETTING( 0x00, "0x00" )
INPUT_PORTS_END
-INPUT_PORTS_START( j6_start_ex_co_3nud_cancel )
- PORT_MODIFY("J9_0")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) // Spin Reels
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3/Lo")
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2/Hi")
- PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
- PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
-INPUT_PORTS_END
INPUT_PORTS_START( j6sonic ) // only runs with 5p or 10p stake and either 8 GBP Token or 10 GBP Cash
@@ -526,7 +573,17 @@ INPUT_PORTS_START( j6sonic ) // only runs with 5p or 10p stake and either 8 GBP
PORT_INCLUDE( j6_stake_5_10 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel )
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3/Lo")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2/Hi")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON7 )
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON8 )
INPUT_PORTS_END
INPUT_PORTS_START( j6sonicg ) // only runs without a key?
@@ -535,7 +592,13 @@ INPUT_PORTS_START( j6sonicg ) // only runs without a key?
PORT_INCLUDE( j6_jackpot_not_fitted )
PORT_INCLUDE( j6_stake_not_fitted )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel )
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3/Lo")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2/Hi")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
INPUT_PORTS_END
INPUT_PORTS_START( j6arcade )
@@ -544,7 +607,20 @@ INPUT_PORTS_START( j6arcade )
PORT_INCLUDE( j6_jackpot_5_15 )
PORT_INCLUDE( j6_stake_20_25_30 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel )
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Step")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Hold 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Hold 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Hold 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Auto Nudge")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Hopper Dump Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6acehi )
@@ -553,7 +629,20 @@ INPUT_PORTS_START( j6acehi )
PORT_INCLUDE( j6_jackpot_15 )
PORT_INCLUDE( j6_stake_20_25_30 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Auto Nudge")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Hold 3")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Hold 2")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Hold 1")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_1")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Step")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Hopper Dump Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6big50 )
@@ -563,7 +652,6 @@ INPUT_PORTS_START( j6big50 )
PORT_INCLUDE( j6_jackpot_8_8t_10_15 )
PORT_MODIFY("J9_0")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) // Spin Reels
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Low")
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("High")
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
@@ -574,6 +662,8 @@ INPUT_PORTS_START( j6big50 )
PORT_MODIFY("J9_2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Collect")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON9 )
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON10 ) // unknown, responds in switch test
INPUT_PORTS_END
INPUT_PORTS_START( j6bigbuk )
@@ -583,7 +673,6 @@ INPUT_PORTS_START( j6bigbuk )
PORT_INCLUDE( j6_jackpot_8_8t )
PORT_MODIFY("J9_0")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) // Spin Reels
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3/Lo")
@@ -591,13 +680,18 @@ INPUT_PORTS_START( j6bigbuk )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Auto Nudge")
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON8 ) // unknown, responds in switch test
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON9 ) // unknown, responds in switch test
INPUT_PORTS_END
INPUT_PORTS_START( j6bigbnk )
PORT_INCLUDE( j6nokey_withperc )
PORT_MODIFY("J9_0") // same inputs as j6big50?
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) // Spin Reels
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Low")
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("High")
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
@@ -608,14 +702,15 @@ INPUT_PORTS_START( j6bigbnk )
PORT_MODIFY("J9_2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Collect")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON9 ) // unknown, responds in switch test
INPUT_PORTS_END
-INPUT_PORTS_START( j6bigcsh )
+INPUT_PORTS_START( j6bigcsh ) // Empire, non-standard?
PORT_INCLUDE( jpmimpct_non_video_inputs )
PORT_INCLUDE( j6_stake_5_10_20_25_30 )
PORT_INCLUDE( j6_jackpot_8c_5_15 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ // PORT_INCLUDE( TODO: ) // not verified
INPUT_PORTS_END
INPUT_PORTS_START( j6bigpct )
@@ -624,37 +719,53 @@ INPUT_PORTS_START( j6bigpct )
PORT_INCLUDE( j6_stake_20_25 )
PORT_INCLUDE( j6_jackpot_not_fitted_10 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON8 ) // switch 33
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON7 ) // switch 34
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) // switch 41
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) // switch 42
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3/Lo") // switch 43
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2/Hi") // switch 44
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1") // switch 45
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel") // switch 46
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON9 ) // switch 60
INPUT_PORTS_END
INPUT_PORTS_START( j6bigtop )
PORT_INCLUDE( j6nokey )
PORT_MODIFY("DSW") // for the parent set these must be 'ON' to avoid a NOTE S/W ERROR
- PORT_DIPNAME( 0x01, 0x00, "DSW 0 (must be ON)")
+ PORT_DIPNAME( 0x01, 0x00, "Stake/Jackpot 1 (must be ON)")
PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x02, 0x00, "DSW 1 (must be ON)")
+ PORT_DIPNAME( 0x02, 0x00, "Stake/Jackpot 2 (must be ON)")
PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x04, 0x00, "DSW 2 (must be ON)")
+ PORT_DIPNAME( 0x04, 0x00, "Stake/Jackpot 3 (must be ON)")
PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x08, 0x08, "Stake/Jackpot 4 (must be OFF)")
+ PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
-
-INPUT_PORTS_START( j6colcsh )
- PORT_INCLUDE( jpmimpct_non_video_inputs )
-
- // this allows for more complex mixes, for now just use a setting that boots
- PORT_INCLUDE( j6_jackpot_5 )
- PORT_INCLUDE( j6_stake_10 )
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Hold 4/Lo")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Hold 3/Hi")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Hold 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Hold 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel / Collect")
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
+
INPUT_PORTS_START( j6bigwhl )
PORT_INCLUDE( jpmimpct_non_video_inputs )
@@ -662,7 +773,26 @@ INPUT_PORTS_START( j6bigwhl )
PORT_INCLUDE( j6_jackpot_10 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON13 ) PORT_NAME("Wheel Feature 6")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON12 ) PORT_NAME("Wheel Feature 5")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Wheel Feature 4")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Wheel Feature 3")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Wheel Feature 2")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Wheel Feature 1")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) // unknown but tested
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON7 ) // unknown but tested
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON14 ) // PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON15 ) // unknown, responds in switch test
INPUT_PORTS_END
@@ -674,13 +804,21 @@ INPUT_PORTS_START( j6camelt )
PORT_INCLUDE( j6_stake_20 )
PORT_MODIFY("J9_0")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) // Spin Reels
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Nudge 3/Lo")
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 2/Hi")
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 1")
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Collect")
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Blasts")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Cash")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Feature")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Nudges")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
INPUT_PORTS_START( j6cshbst )
@@ -691,7 +829,6 @@ INPUT_PORTS_START( j6cshbst )
PORT_INCLUDE( j6_stake_20 )
PORT_MODIFY("J9_0")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) // Spin Reels
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Nudge 3")
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 2")
@@ -700,16 +837,14 @@ INPUT_PORTS_START( j6cshbst )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("High Left")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("High Right")
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Low Left")
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Low Right")
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Cash or Bust")
- PORT_MODIFY("J10_2")
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("High Left")
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("High Right")
-
- //PORT_MODIFY("J9_2")
- // J9_2:2 HOPPER
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
INPUT_PORTS_START( j6cascz )
@@ -719,7 +854,24 @@ INPUT_PORTS_START( j6cascz )
PORT_INCLUDE( j6_jackpot_10 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Bingo")
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Nudges")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Features")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Crazy Spins")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Cash")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON12 ) // PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON13 ) // unknown, responds in switch test
INPUT_PORTS_END
INPUT_PORTS_START( j6cascze )
@@ -729,7 +881,24 @@ INPUT_PORTS_START( j6cascze )
PORT_INCLUDE( j6_jackpot_8c )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Bingo")
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Nudges")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Features")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Crazy Spins")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Cash")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON12 ) // PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON13 ) // unknown, responds in switch test
INPUT_PORTS_END
INPUT_PORTS_START( j6caslas )
@@ -739,7 +908,21 @@ INPUT_PORTS_START( j6caslas )
PORT_INCLUDE( j6_jackpot_10 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON8 )
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON7 )
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON6 )
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON5 )
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel / Collect")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON9 ) // PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON10 ) // unknown, responds in switch test
INPUT_PORTS_END
INPUT_PORTS_START( j6fasttk )
@@ -749,7 +932,19 @@ INPUT_PORTS_START( j6fasttk )
PORT_INCLUDE( j6_jackpot_10 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Lo")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Hi")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Cancel")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 )
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON8 )
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON9 ) // PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON10 ) // unknown, responds in switch test
INPUT_PORTS_END
INPUT_PORTS_START( j6frc10 )
@@ -759,7 +954,24 @@ INPUT_PORTS_START( j6frc10 )
PORT_INCLUDE( j6_jackpot_10 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J10_2") // 2 sets of higher / lower buttons for different parts of the machine
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Higher Right")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Higher Left")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Higher Right")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Lower Left")
+
+ PORT_MODIFY("J9_0") // exchange / cancel guessed
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Auto Nudge")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON12 ) // PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON13 ) // unknown, responds in switch test
INPUT_PORTS_END
INPUT_PORTS_START( j6fbcrz )
@@ -769,7 +981,21 @@ INPUT_PORTS_START( j6fbcrz )
PORT_INCLUDE( j6_jackpot_10 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Exchange Number")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Go For Goal")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Auto Nudge")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON9 ) // PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON10 ) // unknown, responds in switch test
INPUT_PORTS_END
INPUT_PORTS_START( j6guab )
@@ -779,7 +1005,26 @@ INPUT_PORTS_START( j6guab )
PORT_INCLUDE( j6_jackpot_10 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J10_2") // these might be incorrect, layout doesn't seem 100%
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON13 ) PORT_NAME("Feature")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON12 ) PORT_NAME("Cash")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Bonus")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Knock Out")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Strikes")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Nudges")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("unknown") // responds in test, but no obvious button? not really mapped?
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON14 ) // PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON15 ) // unknown, responds in switch test
INPUT_PORTS_END
INPUT_PORTS_START( j6gogold )
@@ -789,7 +1034,23 @@ INPUT_PORTS_START( j6gogold )
PORT_INCLUDE( j6_jackpot_15 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Top Button 2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Top Button 4")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Top Button 1")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Top Button 3")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON12 ) PORT_NAME("Cash / Token Sw") // this is named in service mode, is it the same for all games with an input here?
INPUT_PORTS_END
INPUT_PORTS_START( j6hapyhr )
@@ -799,7 +1060,16 @@ INPUT_PORTS_START( j6hapyhr )
PORT_INCLUDE( j6_jackpot_10 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Spin")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel / Collect")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON7 ) // PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON8 ) // PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6hilosv )
@@ -809,7 +1079,20 @@ INPUT_PORTS_START( j6hilosv )
PORT_INCLUDE( j6_jackpot_10 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Exchange Number")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Auto Nudge")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Hi-lo Silver Away")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel / Collect")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON8 ) // PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON9 ) // PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6impuls )
@@ -819,9 +1102,48 @@ INPUT_PORTS_START( j6impuls )
PORT_INCLUDE( j6_jackpot_10 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Auto Nudge")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_1")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Step")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON9 ) // PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON10 ) // PORT_NAME("Cash / Token Sw")
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6impls )
+ PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+ // TODO: more possibilities than this, this just allows it to boot
+ PORT_INCLUDE( j6_jackpot_15 )
+ PORT_INCLUDE( j6_stake_20 )
+
+ PORT_MODIFY("J10_2") // maps to a different place
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Step")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Auto Nudge")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON9 ) // PORT_NAME("Hopper Dump SW")
+// PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON11 ) // PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
+
INPUT_PORTS_START( j6impulsa )
PORT_INCLUDE( jpmimpct_non_video_inputs )
@@ -829,7 +1151,21 @@ INPUT_PORTS_START( j6impulsa )
PORT_INCLUDE( j6_jackpot_5 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Auto Nudge")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_1")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Step")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON8 ) // PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON9 ) // PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6jungfv )
@@ -839,7 +1175,24 @@ INPUT_PORTS_START( j6jungfv )
PORT_INCLUDE( j6_jackpot_10 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J10_2") // probably feature related
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON11 )
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON10 )
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON9 )
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON8 )
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON7 )
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Auto Nudge / Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ // PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON8 ) NOT tested
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON12 ) // PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6kungfu )
@@ -848,7 +1201,26 @@ INPUT_PORTS_START( j6kungfu )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_10 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Hi Left")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Hi Right")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Lo Left")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Lo Right")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Exchange Auto Nudge")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Take Feature")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ // 0x40 NOT tested
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ // PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON8 ) NOT tested
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON12 ) // PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6mavrk )
@@ -857,16 +1229,74 @@ INPUT_PORTS_START( j6mavrk )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_10 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Exchange Number")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Lower")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Higher")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Bank Nudges") // guess based on control panel
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Collect")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON10 ) // PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON11 ) // PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
-INPUT_PORTS_START( j6monmad )
+INPUT_PORTS_START( j6monmad ) // where is the 'take nudges' button?! it even checks bits in PIA ports in the switch check, but it isn't there
PORT_INCLUDE( jpmimpct_non_video_inputs )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_10 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON7 )
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 )
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Auto Nudge")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3 / Lower")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2 / Higher")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Collect")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON9 )
+ //PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON10 ) // PORT_NAME("Hopper Dump SW") // NOT tested
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON10 ) // PORT_NAME("Cash / Token Sw")
+
+ PORT_MODIFY("PIA_PORTB") // some of these register in the switch test!
+ PORT_DIPNAME( 0x01, 0x01, "PIA_PORTB: 0x01")
+ PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x02, 0x02, "PIA_PORTB: 0x02")
+ PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x04, 0x04, "PIA_PORTB: 0x04")
+ PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x08, 0x08, "PIA_PORTB: 0x08")
+ PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x10, 0x10, "PIA_PORTB: 0x10")
+ PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x20, 0x20, "PIA_PORTB: 0x20")
+ PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x40, 0x40, "PIA_PORTB: 0x40")
+ PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x80, 0x80, "PIA_PORTB: 0x80")
+ PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
INPUT_PORTS_END
INPUT_PORTS_START( j6pog )
@@ -875,7 +1305,24 @@ INPUT_PORTS_START( j6pog )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_10 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Pick Bronze")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Pick Silver")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Pick Gold")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Take Feature")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON10 ) // PORT_NAME("Cash / Token Sw")
+
+ // also reads some bits from the PIA in switch test
INPUT_PORTS_END
INPUT_PORTS_START( j6potg )
@@ -884,7 +1331,22 @@ INPUT_PORTS_START( j6potg )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_15 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Pick Bronze")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Pick Silver")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Pick Gold")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Take Feature")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON10 ) // PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6pwrspn )
@@ -893,7 +1355,25 @@ INPUT_PORTS_START( j6pwrspn )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_10 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Left Higher")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Left Lower")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Right Higher")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Right Lower")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Take / Exchange")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Collect")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Auto Nudge")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON12 ) // PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON13 ) // PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6quick )
@@ -902,7 +1382,21 @@ INPUT_PORTS_START( j6quick )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_15 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Exchange Number")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Cash or Bust")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel / Collect")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON8 ) // PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON9 ) // PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6reelmn )
@@ -912,7 +1406,23 @@ INPUT_PORTS_START( j6reelmn )
// this one doesn't alarm with bad settings, but instead shows nothing
PORT_INCLUDE( j6_jackpot_10 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("40p Stake")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("60p Stake")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("1GBP Stake")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Collect")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON10 ) // PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON11 ) // PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6richpk )
@@ -921,7 +1431,21 @@ INPUT_PORTS_START( j6richpk )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_10 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2") // seem to pick different trails?
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Pick 3 (Collect Feature)")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Pick 2")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Pick 1 (Collect Nudges)")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Shuffle")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ // PORT_MODIFY("J9_2") // no bits in here show in test mode
INPUT_PORTS_END
INPUT_PORTS_START( j6rico )
@@ -930,7 +1454,21 @@ INPUT_PORTS_START( j6rico )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_10 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2") // unusual mapping with multiple game bits in here
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Top")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Middle")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON10 ) // PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON11 ) // PORT_NAME("Cash / Token Sw")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Bottom")
INPUT_PORTS_END
INPUT_PORTS_START( j6robin )
@@ -939,7 +1477,23 @@ INPUT_PORTS_START( j6robin )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_10 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Shot 3")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Shot 2")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Shot 1")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Play Feature")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ //PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON10 ) // PORT_NAME("Hopper Dump SW") // not tested
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON10 ) // PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6sidewd )
@@ -948,7 +1502,18 @@ INPUT_PORTS_START( j6sidewd )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_10 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON7 ) // PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON8 ) // PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6snakes )
@@ -957,7 +1522,18 @@ INPUT_PORTS_START( j6snakes )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_10 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON7 ) // PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON8 ) // PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6stards )
@@ -966,7 +1542,24 @@ INPUT_PORTS_START( j6stards )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_10 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Take Cash")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Take Feature")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Take Blasts")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Take Nudges")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Take")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON11 ) // PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON12 ) // PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6strk10 )
@@ -975,7 +1568,20 @@ INPUT_PORTS_START( j6strk10 )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_10 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Pick 2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Pick 1")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange Nudges")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ // PORT_MODIFY("J9_2") // nothing shown for this port
INPUT_PORTS_END
INPUT_PORTS_START( j6roof )
@@ -984,7 +1590,19 @@ INPUT_PORTS_START( j6roof )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_10 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Swap Trails")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Collect Feature 1")
+
+ PORT_MODIFY("J9_0")
+ // 0x02 isn't tested in service mode
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect Feature 2 / Cancel") // maybe bank nudges?
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Collect")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Nudge 1")
+
INPUT_PORTS_END
INPUT_PORTS_START( j6wildw )
@@ -993,7 +1611,25 @@ INPUT_PORTS_START( j6wildw )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_10 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2") // other buttons uncertain, possibly a different pair of hi/lo?
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON11 )
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Hi")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON9 )
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Lo")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON7 )
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 )
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ // 0x40 not tested
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON12 ) // PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6wizard )
@@ -1002,7 +1638,22 @@ INPUT_PORTS_START( j6wizard )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_10 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2") // other buttons uncertain, possibly a different pair of hi/lo?
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Wizard of Odds")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON7) PORT_NAME("Exchange Number")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON9 ) // PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON10 ) // PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6hikar )
@@ -1011,7 +1662,25 @@ INPUT_PORTS_START( j6hikar )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_15 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2") // other buttons uncertain, possibly a different pair of hi/lo?
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Wins Hi")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Wins Lo")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Nudge Hi")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Nudge Lo")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Exchange Feature")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON12 ) PORT_NAME("Hopper Dump SW")
+ // PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON13 ) // not listed
INPUT_PORTS_END
INPUT_PORTS_START( j6slvgst )
@@ -1020,25 +1689,39 @@ INPUT_PORTS_START( j6slvgst )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_10 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
-INPUT_PORTS_START( j6impls )
- PORT_INCLUDE( jpmimpct_non_video_inputs )
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
- // TODO: more possibilities than this, this just allows it to boot
- PORT_INCLUDE( j6_jackpot_15 )
- PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON6 ) // PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON7 ) // PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
+
+
INPUT_PORTS_START( j6thril )
PORT_INCLUDE( jpmimpct_non_video_inputs )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_10 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON9 ) // PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON10 ) // PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6cshtwr )
@@ -1047,25 +1730,50 @@ INPUT_PORTS_START( j6cshtwr )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_15 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
-INPUT_PORTS_START( j6cshvgs )
- PORT_INCLUDE( jpmimpct_non_video_inputs )
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Take Feature 3")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Take Feature 2")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Take Feature 1")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Higher")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Lower")
- // TODO: more possibilities than this, this just allows it to boot
- PORT_INCLUDE( j6_jackpot_5 )
- PORT_INCLUDE( j6_stake_10 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON12 ) // PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON13 ) // PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
+
+
+
INPUT_PORTS_START( j6cas5 )
PORT_INCLUDE( jpmimpct_non_video_inputs )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_5 )
PORT_INCLUDE( j6_stake_10 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Collect Feature")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Collect")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Stake")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
INPUT_PORTS_START( j6cas5e )
@@ -1074,16 +1782,20 @@ INPUT_PORTS_START( j6cas5e )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_15 )
PORT_INCLUDE( j6_stake_10 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
-INPUT_PORTS_START( j6cheque )
- PORT_INCLUDE( jpmimpct_non_video_inputs )
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Collect Feature")
- // TODO: more possibilities than this, this just allows it to boot
- PORT_INCLUDE( j6_jackpot_5 )
- PORT_INCLUDE( j6_stake_10 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Collect")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Stake")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
INPUT_PORTS_START( j6colmon )
@@ -1092,7 +1804,26 @@ INPUT_PORTS_START( j6colmon )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_5 )
PORT_INCLUDE( j6_stake_10 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON13 ) PORT_NAME("Take Feature")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON12 ) PORT_NAME("Take Cash")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Take Nudge")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Hi Left")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Hi Right")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Lo Left")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Lo Right")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
INPUT_PORTS_START( j6crack )
@@ -1101,52 +1832,49 @@ INPUT_PORTS_START( j6crack )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_5 )
PORT_INCLUDE( j6_stake_10 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
-
-INPUT_PORTS_START( j6dmngz )
- PORT_INCLUDE( jpmimpct_non_video_inputs )
- // TODO: more possibilities than this, this just allows it to boot
- PORT_INCLUDE( j6_jackpot_25 )
- PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Step")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Auto Nudge")
-INPUT_PORTS_START( j6dyfl )
- PORT_INCLUDE( jpmimpct_non_video_inputs )
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
- // TODO: more possibilities than this, this just allows it to boot
- PORT_INCLUDE( j6_jackpot_5 )
- PORT_INCLUDE( j6_stake_10 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
-INPUT_PORTS_START( j6euphor )
+INPUT_PORTS_START( j6dyfl )
PORT_INCLUDE( jpmimpct_non_video_inputs )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_5 )
PORT_INCLUDE( j6_stake_10 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
-INPUT_PORTS_START( j6euphorf )
- PORT_INCLUDE( jpmimpct_non_video_inputs )
-
- // TODO: more possibilities than this, this just allows it to boot
- PORT_INCLUDE( j6_jackpot_25 )
- PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON13 ) PORT_NAME("Hi Right")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON12 ) PORT_NAME("Lo Right")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Fire Take")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Exchange For Nudge")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Auto Nudge")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Collect Feature")
-INPUT_PORTS_START( j6fireck )
- PORT_INCLUDE( jpmimpct_non_video_inputs )
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Hi Left")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Hi Right")
- // TODO: more possibilities than this, this just allows it to boot
- PORT_INCLUDE( j6_jackpot_5 )
- PORT_INCLUDE( j6_stake_10 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON14 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
INPUT_PORTS_START( j6firbl )
@@ -1155,7 +1883,26 @@ INPUT_PORTS_START( j6firbl )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_5 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON13 ) PORT_NAME("Hi Right")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON12 ) PORT_NAME("Lo Right")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Fire Take")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Exchange For Nudge")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Auto Nudge")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Collect Feature")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Hi Left")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Hi Right")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON14 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
INPUT_PORTS_START( j6firblb )
@@ -1164,7 +1911,26 @@ INPUT_PORTS_START( j6firblb )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_15 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON13 ) PORT_NAME("Hi Right")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON12 ) PORT_NAME("Lo Right")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Fire Take")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Exchange For Nudge")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Auto Nudge")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Collect Feature")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Cancel")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Hi Left")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Hi Right")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON14 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
INPUT_PORTS_START( j6fiveln )
@@ -1173,7 +1939,22 @@ INPUT_PORTS_START( j6fiveln )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_15 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Higher")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Lower")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON9 ) // PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON10 ) // PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6hifly )
@@ -1182,7 +1963,24 @@ INPUT_PORTS_START( j6hifly )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_15 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Hi Left")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Lo Left")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Xtra Step")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Hi Right")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Lo Right")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Press for Roll")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON12 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
INPUT_PORTS_START( j6impact )
@@ -1191,7 +1989,21 @@ INPUT_PORTS_START( j6impact )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_15 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Auto Nudge")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Step Down")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Swop")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
INPUT_PORTS_START( j6hirol )
@@ -1200,7 +2012,20 @@ INPUT_PORTS_START( j6hirol )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_15 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Collect Feature")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Collect")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Stake")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
INPUT_PORTS_START( j6redarw )
@@ -1209,93 +2034,49 @@ INPUT_PORTS_START( j6redarw )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_15 )
PORT_INCLUDE( j6_stake_20 ) // doesn't care?
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
-
-INPUT_PORTS_START( j6rccls )
- PORT_INCLUDE( jpmimpct_non_video_inputs )
-
- // TODO: more possibilities than this, this just allows it to boot
- PORT_INCLUDE( j6_jackpot_5 )
- PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
-
-INPUT_PORTS_START( j6firclb )
- PORT_INCLUDE( j6nokey )
-
- PORT_MODIFY("DSW") // first two need to be on to avoid error 91 00 (invalid mode) rather than the usual key ones
- PORT_DIPNAME( 0x01, 0x00, "DSW 0 (must be ON)")
- PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x02, 0x00, "DSW 1 (must be ON)")
- PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
-
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
-
-INPUT_PORTS_START( j6crzclb )
- PORT_INCLUDE( j6nokey )
-
- PORT_MODIFY("DSW") // first two need to be on to avoid error 91 00 (invalid mode) rather than the usual key ones
- PORT_DIPNAME( 0x01, 0x00, "DSW 0 (must be ON)")
- PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x02, 0x00, "DSW 1 (must be ON)")
- PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Hi Left")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Lo Left")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Hi Right")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Lo Right")
-INPUT_PORTS_START( j6cluclb )
- PORT_INCLUDE( j6nokey )
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Stake")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
- PORT_MODIFY("DSW") // first three need to be on to avoid error 91 00 (invalid mode) rather than the usual key ones
- PORT_DIPNAME( 0x01, 0x00, "DSW 0 (must be ON)")
- PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x02, 0x00, "DSW 1 (must be ON)")
- PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x04, 0x00, "DSW 2 (must be ON)")
- PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_MODIFY("J9_1")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON13 ) PORT_NAME("Press For Streak")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON12 ) PORT_NAME("Exchange For Cash")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Exchange For Feature")
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON14 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
-INPUT_PORTS_START( j6framft )
- PORT_INCLUDE( j6nokey )
-
- PORT_MODIFY("DSW") // first two need to be on to avoid error 91 00 (invalid mode) rather than the usual key ones
- PORT_DIPNAME( 0x01, 0x00, "DSW 0 (must be ON)")
- PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x02, 0x00, "DSW 1 (must be ON)")
- PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
-
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
-INPUT_PORTS_START( j6frtmch )
+INPUT_PORTS_START( j6gforce )
PORT_INCLUDE( jpmimpct_non_video_inputs )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_5 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
-INPUT_PORTS_START( j6gforce )
- PORT_INCLUDE( jpmimpct_non_video_inputs )
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+ //PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("H2") // tested, but doesn't exist?
- // TODO: more possibilities than this, this just allows it to boot
- PORT_INCLUDE( j6_jackpot_5 )
- PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_1")
+ //PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("H3") // tested, but doesn't exist?
INPUT_PORTS_END
INPUT_PORTS_START( j6gforcea )
@@ -1304,35 +2085,21 @@ INPUT_PORTS_START( j6gforcea )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_15 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
-
-INPUT_PORTS_START( j6gidogh )
- PORT_INCLUDE( jpmimpct_non_video_inputs )
-
- // TODO: more possibilities than this, this just allows it to boot
- PORT_INCLUDE( j6_jackpot_25 )
- PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
-INPUT_PORTS_START( j6goldgl )
- PORT_INCLUDE( jpmimpct_non_video_inputs )
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+ //PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("H2") // tested, but doesn't exist?
- // TODO: more possibilities than this, this just allows it to boot
- PORT_INCLUDE( j6_jackpot_25 )
- PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_1")
+ //PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("H3") // tested, but doesn't exist?
INPUT_PORTS_END
-INPUT_PORTS_START( j6hiphop )
- PORT_INCLUDE( jpmimpct_non_video_inputs )
- // TODO: more possibilities than this, this just allows it to boot
- PORT_INCLUDE( j6_jackpot_25 )
- PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
INPUT_PORTS_START( j6hotsht )
PORT_INCLUDE( jpmimpct_non_video_inputs )
@@ -1340,7 +2107,28 @@ INPUT_PORTS_START( j6hotsht )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_15 )
PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Spin Take")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Auto Nudge")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Collect Feature")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Swop Trail")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_1")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON13 ) PORT_NAME("Hi Button 1")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON12 ) PORT_NAME("Lo Button 1")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Hi Button 2")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Lo Button 2")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON14 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
INPUT_PORTS_START( j6showtm )
@@ -1349,7 +2137,26 @@ INPUT_PORTS_START( j6showtm )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_25 )
PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON13 ) PORT_NAME("Nudge Exchange")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON12 ) PORT_NAME("Collect Feature")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Auto Nudge")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Spin Take")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Nudge Hi")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Nudge Lo")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Cash Hi")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Cash Lo")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON14 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
INPUT_PORTS_START( j6showtmb )
@@ -1358,7 +2165,26 @@ INPUT_PORTS_START( j6showtmb )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_15 )
PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON13 ) PORT_NAME("Nudge Exchange")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON12 ) PORT_NAME("Collect Feature")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Auto Nudge")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Spin Take")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Nudge Hi")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Nudge Lo")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Cash Hi")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Cash Lo")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON14 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
INPUT_PORTS_START( j6maxod )
@@ -1367,7 +2193,31 @@ INPUT_PORTS_START( j6maxod )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_15 )
PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON12 ) PORT_NAME("Blue Hi")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Yellow Hi")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Green Hi")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Blue Lo")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Yellow Lo")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Green Lo")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_1")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON15 ) PORT_NAME("Blue Take")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON14 ) PORT_NAME("Yellow Take")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON13 ) PORT_NAME("Green Take")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON16 ) PORT_NAME("Learner")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
INPUT_PORTS_START( j6megbck )
@@ -1376,7 +2226,24 @@ INPUT_PORTS_START( j6megbck )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_15 )
PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Features")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Feature Knockouts")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Knockouts")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Cash Knockouts")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Cash")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON12 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
INPUT_PORTS_START( j6pinwzd )
@@ -1385,17 +2252,23 @@ INPUT_PORTS_START( j6pinwzd )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_15 )
PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
-INPUT_PORTS_START( j6pogcls )
- PORT_INCLUDE( jpmimpct_non_video_inputs )
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Blasts")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Knockout")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Nudges")
- // TODO: more possibilities than this, this just allows it to boot
- PORT_INCLUDE( j6_jackpot_5 )
- PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6quantm )
@@ -1404,7 +2277,21 @@ INPUT_PORTS_START( j6quantm )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_15 )
PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Collect Feature")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Leap")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6ra )
@@ -1413,33 +2300,22 @@ INPUT_PORTS_START( j6ra )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_15 )
PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
-
-INPUT_PORTS_START( j6rh6 )
- PORT_INCLUDE( j6nokey )
- PORT_MODIFY("DSW") // first three need to be on to avoid error 91 00 (invalid mode) rather than the usual key ones
- PORT_DIPNAME( 0x01, 0x00, "DSW 0 (must be ON)")
- PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x02, 0x00, "DSW 1 (must be ON)")
- PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x04, 0x00, "DSW 2 (must be ON)")
- PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
-
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Auto Nudge")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
-INPUT_PORTS_START( j6rhchil )
- PORT_INCLUDE( jpmimpct_non_video_inputs )
+ PORT_MODIFY("J9_1")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Step Down")
- // TODO: more possibilities than this, this just allows it to boot
- PORT_INCLUDE( j6_jackpot_25 )
- PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6reelth )
@@ -1448,16 +2324,24 @@ INPUT_PORTS_START( j6reelth )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_15 )
PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
-INPUT_PORTS_START( j6spcinv )
- PORT_INCLUDE( jpmimpct_non_video_inputs )
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Hi Left")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Hi Right")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Lo Left")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Lo Right")
- // TODO: more possibilities than this, this just allows it to boot
- PORT_INCLUDE( j6_jackpot_25 )
- PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Auto Nudge")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Hopper Dump SW")
+ //PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6supbrk )
@@ -1466,16 +2350,24 @@ INPUT_PORTS_START( j6supbrk )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_15 )
PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
-INPUT_PORTS_START( j6swpdrp )
- PORT_INCLUDE( jpmimpct_non_video_inputs )
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Take Breakout")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Take Feature")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Take Cash")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Take Nudge")
- // TODO: more possibilities than this, this just allows it to boot
- PORT_INCLUDE( j6_jackpot_25 )
- PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Hopper Dump SW")
+ //PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON12 ) PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6bags )
@@ -1484,52 +2376,57 @@ INPUT_PORTS_START( j6bags )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_5 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
-INPUT_PORTS_START( j6tbirds )
- PORT_INCLUDE( jpmimpct_non_video_inputs )
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON12 ) PORT_NAME("Blue Hi")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Yellow Hi")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Green Hi")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Blue Lo")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Yellow Lo")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Green Lo")
- // TODO: more possibilities than this, this just allows it to boot
- PORT_INCLUDE( j6_jackpot_15 )
- PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
-INPUT_PORTS_START( j6tbirdsk )
- PORT_INCLUDE( jpmimpct_non_video_inputs )
+ PORT_MODIFY("J9_1")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON15 ) PORT_NAME("Blue Take")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON14 ) PORT_NAME("Yellow Take")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON13 ) PORT_NAME("Green Take")
- // TODO: more possibilities than this, this just allows it to boot
- PORT_INCLUDE( j6_jackpot_25 )
- PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
-INPUT_PORTS_START( j6tomb )
+INPUT_PORTS_START( j6tbirds )
PORT_INCLUDE( jpmimpct_non_video_inputs )
// TODO: more possibilities than this, this just allows it to boot
- PORT_INCLUDE( j6_jackpot_25 )
- PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
-
-INPUT_PORTS_START( j6topflg )
- PORT_INCLUDE( jpmimpct_non_video_inputs )
+ PORT_INCLUDE( j6_jackpot_15 )
+ PORT_INCLUDE( j6_stake_20 )
- // TODO: more possibilities than this, this just allows it to boot
- PORT_INCLUDE( j6_jackpot_25 )
- PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON12 ) PORT_NAME("Press for Streak")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Take Knockout")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Take Bonus")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Take Nudges")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Take Feature")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Take Cash")
-INPUT_PORTS_START( j6twst )
- PORT_INCLUDE( jpmimpct_non_video_inputs )
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
- // TODO: more possibilities than this, this just allows it to boot
- PORT_INCLUDE( j6_jackpot_25 )
- PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
INPUT_PORTS_START( j6pompay )
@@ -1538,34 +2435,50 @@ INPUT_PORTS_START( j6pompay )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_15 )
PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
-INPUT_PORTS_START( j6vindal )
- PORT_INCLUDE( jpmimpct_non_video_inputs )
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Exchange Feat")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Do or Die")
- // TODO: more possibilities than this, this just allows it to boot
- PORT_INCLUDE( j6_jackpot_25 )
- PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
+
+
INPUT_PORTS_START( j6vivark )
PORT_INCLUDE( jpmimpct_non_video_inputs )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_15 )
PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
-INPUT_PORTS_START( j6knight )
- PORT_INCLUDE( jpmimpct_non_video_inputs )
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON12 ) PORT_NAME("Press for Streak")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Take Knockout")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Take Bonus")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Take Feature")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Take Nudges")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Take Cash")
- // TODO: more possibilities than this, this just allows it to boot
- PORT_INCLUDE( j6_jackpot_25 )
- PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
INPUT_PORTS_START( j6ewn )
@@ -1576,34 +2489,19 @@ INPUT_PORTS_START( j6ewn )
PORT_INCLUDE( j6_stake_25 )
PORT_MODIFY("J10_2")
- // these 2 default to door keys otherwise
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Nudge Down")
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Nudge Up")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Nudge Down")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Nudge Up")
PORT_MODIFY("J9_0")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) // Spin Reels
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Gamble")
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 3")
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 2")
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Nudge 1")
-INPUT_PORTS_END
-
-
-INPUT_PORTS_START( j6btbw )
- PORT_INCLUDE( j6nokey )
-
- PORT_MODIFY("DSW") // first three need to be on to avoid error 91 00 (invalid mode) rather than the usual key ones
- PORT_DIPNAME( 0x01, 0x00, "DSW 0 (must be ON)")
- PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x02, 0x00, "DSW 1 (must be ON)")
- PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x04, 0x00, "DSW 2 (must be ON)")
- PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Gamble")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6cpal )
@@ -1612,25 +2510,26 @@ INPUT_PORTS_START( j6cpal )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_15 )
PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
-INPUT_PORTS_START( j6colic )
- PORT_INCLUDE( jpmimpct_non_video_inputs )
-
- // TODO: more possibilities than this, this just allows it to boot
- PORT_INCLUDE( j6_jackpot_25 )
- PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON12 ) PORT_NAME("Hi Left")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Lo Left")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Hi Right")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Lo Right")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Auto Nudge")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Take Feature")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Swap")
-INPUT_PORTS_START( j6crakr )
- PORT_INCLUDE( jpmimpct_non_video_inputs )
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
- // TODO: more possibilities than this, this just allows it to boot
- PORT_INCLUDE( j6_jackpot_25 )
- PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6easy )
@@ -1639,25 +2538,20 @@ INPUT_PORTS_START( j6easy )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_15 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
-
-INPUT_PORTS_START( j6kapang )
- PORT_INCLUDE( jpmimpct_non_video_inputs )
- // TODO: more possibilities than this, this just allows it to boot
- PORT_INCLUDE( j6_jackpot_25 )
- PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Collect Feature")
-INPUT_PORTS_START( j6pinfvr )
- PORT_INCLUDE( jpmimpct_non_video_inputs )
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Collect")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Stake")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
- // TODO: more possibilities than this, this just allows it to boot
- PORT_INCLUDE( j6_jackpot_25 )
- PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
INPUT_PORTS_START( j6r2rum )
@@ -1666,7 +2560,28 @@ INPUT_PORTS_START( j6r2rum )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_25 )
PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Take Nudges")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Step Down")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Hit or Bust")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_1")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON13 ) PORT_NAME("Hi Left")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON12 ) PORT_NAME("Lo Left")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Hi Right")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Lo Right")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
INPUT_PORTS_START( j6r2rumc )
@@ -1675,53 +2590,74 @@ INPUT_PORTS_START( j6r2rumc )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_15 )
PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Take Nudges")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Step Down")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Hit or Bust")
-INPUT_PORTS_START( j6slagn )
- PORT_INCLUDE( jpmimpct_non_video_inputs )
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
- // TODO: more possibilities than this, this just allows it to boot
- PORT_INCLUDE( j6_jackpot_25 )
- PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_1")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON13 ) PORT_NAME("Hi Left")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON12 ) PORT_NAME("Lo Left")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Hi Right")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Lo Right")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
-INPUT_PORTS_START( j6tqust )
+
+INPUT_PORTS_START( j6slagn )
PORT_INCLUDE( jpmimpct_non_video_inputs )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_25 )
PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
-INPUT_PORTS_START( j6shoot )
- PORT_INCLUDE( jpmimpct_non_video_inputs )
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Cash Pot")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
- // TODO: more possibilities than this, this just allows it to boot
- PORT_INCLUDE( j6_jackpot_25 )
- PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
-INPUT_PORTS_START( j6bucks )
+INPUT_PORTS_START( j6tqust )
PORT_INCLUDE( jpmimpct_non_video_inputs )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_25 )
PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
-INPUT_PORTS_START( j6scarlt )
- PORT_INCLUDE( jpmimpct_non_video_inputs )
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Take Dosh Pot")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Take Dosh")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Take Bonus")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Take Feature")
- // TODO: more possibilities than this, this just allows it to boot
- PORT_INCLUDE( j6_jackpot_25 )
- PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
INPUT_PORTS_START( j6cshrd )
@@ -1730,55 +2666,115 @@ INPUT_PORTS_START( j6cshrd )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_15 )
PORT_INCLUDE( j6_stake_25 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
-INPUT_PORTS_START( j6rh6cl )
- PORT_INCLUDE( j6nokey )
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Top Button 3")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Top Button 1")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Top Button 2")
- PORT_MODIFY("DSW") // first three need to be on to avoid error 91 00 (invalid mode) rather than the usual key ones
- PORT_DIPNAME( 0x01, 0x00, "DSW 0 (must be ON)")
- PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x02, 0x00, "DSW 1 (must be ON)")
- PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x04, 0x00, "DSW 2 (must be ON)")
- PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6roller )
- PORT_INCLUDE( j6nokey_withperc )
+ PORT_INCLUDE( j6nokey_withperc ) // stake is always set by dipswitches instead, jackpot hardcoded
- PORT_INCLUDE( j6_jackpot_8t_10 )
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3/Lo")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2/Hi")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
- PORT_INCLUDE( j6_stake_5_10 )
+ PORT_MODIFY("J9_2")
+ //PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Cash / Token Sw")
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6roller15 )
+ PORT_INCLUDE( j6roller )
+
+ PORT_MODIFY("DSW")
+ PORT_DIPNAME( 0x03, 0x03, "Stake")
+ PORT_DIPSETTING( 0x00, "25p" )
+ PORT_DIPSETTING( 0x01, "20p" )
+ PORT_DIPSETTING( 0x02, "25p (duplicate)" )
+ PORT_DIPSETTING( 0x03, "30p" )
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6roller10 )
+ PORT_INCLUDE( j6roller )
+
+ // stake is always 20p?
+INPUT_PORTS_END
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel )
+INPUT_PORTS_START( j6roller8 )
+ PORT_INCLUDE( j6roller )
+
+ PORT_MODIFY("DSW")
+ PORT_DIPNAME( 0x03, 0x03, "Stake")
+ PORT_DIPSETTING( 0x00, "25p" )
+ PORT_DIPSETTING( 0x01, "5p" )
+ PORT_DIPSETTING( 0x02, "10p" )
+ PORT_DIPSETTING( 0x03, "20p" )
INPUT_PORTS_END
-INPUT_PORTS_START( j6cdivr )
+
+INPUT_PORTS_START( j6cdivr ) // gets stuck awarding wins (not payout)
PORT_INCLUDE( jpmimpct_non_video_inputs )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_15 )
PORT_INCLUDE( j6_stake_20 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Top 3")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Top 2")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Top 1")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6grc )
PORT_INCLUDE( j6nokey )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Unknown 2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Unknown 1")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Nudge 4")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel / Collect")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6aceclb )
PORT_INCLUDE( j6nokey )
PORT_MODIFY("J9_0")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) // Spin Reels
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Nudge 4/Lo")
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3/Hi")
@@ -1793,15 +2789,14 @@ INPUT_PORTS_START( j6aceclb )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Features")
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Nudges")
- //PORT_MODIFY("J9_2")
- // J9_2: 2 HOPPER DUMP SWITCH
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
INPUT_PORTS_START( j6bnkrcl )
PORT_INCLUDE( j6nokey )
PORT_MODIFY("J9_0")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) // Spin Reels
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Nudge 4/Lo")
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3/Hi")
@@ -1816,15 +2811,14 @@ INPUT_PORTS_START( j6bnkrcl )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON10 )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON11 )
- //PORT_MODIFY("J9_2")
- // J9_2: 2 HOPPER DUMP SWITCH
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
-INPUT_PORTS_START( j6bnza )
+INPUT_PORTS_START( j6bnza ) // unusual mapping
PORT_INCLUDE( j6nokey_withperc )
PORT_MODIFY("J9_0")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) // Spin Reels
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Exchange")
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("TNT")
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Bullet")
@@ -1834,144 +2828,409 @@ INPUT_PORTS_START( j6bnza )
PORT_MODIFY("J9_2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel/Collect") // 2 buttons, one input?
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6cpclb )
PORT_INCLUDE( j6nokey )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2") // these are guessed
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Take 1")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Take 2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Take 3")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Take Nudges/Win") // almost the same as cancel / collect?
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Nudge 4/Lo")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3/Hi")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel/Collect")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
INPUT_PORTS_START( j6casclb )
PORT_INCLUDE( j6nokey )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2") // these are guessed
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Take 4")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Take 3")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Take 2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Take Nudges")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Nudge 4")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
INPUT_PORTS_START( j6filth )
PORT_INCLUDE( j6nokey )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Exchange") // not sure
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Auto Nudge")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Nudge 4")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Collect/Cancel")
+
+ PORT_MODIFY("J9_2")
+ //PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6fivalv )
PORT_INCLUDE( j6nokey )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("unknown")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Shake") // shakes the reels with no sound in one bonus game
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Hey (shake)") // shakes the reels with 'hey' sound in one bonus game
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Collect/Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6guabcl )
PORT_INCLUDE( j6nokey )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2") // these are guessed
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON13 ) PORT_NAME("Feature")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON12 ) PORT_NAME("Cash")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Bonus")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Knock Out")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("WinSpin")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Nudge")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Take")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Nudge 4")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
+ //PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6reelb )
PORT_INCLUDE( j6nokey )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange") // guess
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel / Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Nudge 4")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
+ //PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6indy )
PORT_INCLUDE( j6nokey_withperc )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ //PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6luckla )
PORT_INCLUDE( j6nokey )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2") // tested but unknown, hangs without sound ROM in places
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON10 )
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON9 )
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON8 )
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON7 )
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 )
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Nudge 4/Lo")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3/Hi")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel/Collect")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
INPUT_PORTS_START( j6montlk )
PORT_INCLUDE( j6nokey_withperc )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ //PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6mono60 )
PORT_INCLUDE( j6nokey_withperc )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel / Collect")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6outlaw )
PORT_INCLUDE( j6nokey )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Take")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Nudge 4")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel/Collect")
+
+ //PORT_MODIFY("J9_2") // nothing in here?
INPUT_PORTS_END
INPUT_PORTS_START( j6oxo )
PORT_INCLUDE( j6nokey_withperc )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Streak")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Cash / Token Sw")
+
INPUT_PORTS_END
INPUT_PORTS_START( j6oxobin )
PORT_INCLUDE( j6nokey_withperc )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Streak")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6popoli )
PORT_INCLUDE( j6nokey_withperc )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6rcclub )
PORT_INCLUDE( j6nokey )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Nudge 4/Lo")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3/Hi")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ //PORT_MODIFY("J9_2") // nothing in here?
INPUT_PORTS_END
INPUT_PORTS_START( j6royfls )
PORT_INCLUDE( j6nokey )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
-INPUT_PORTS_START( j6start )
- PORT_INCLUDE( j6nokey_withperc )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Knockouts")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Winspins")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Features")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Nudges")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Nudge 4")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
INPUT_PORTS_END
INPUT_PORTS_START( j6untch )
PORT_INCLUDE( j6nokey_withperc )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3/Lo")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2/Hi")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6wldkng )
PORT_INCLUDE( j6nokey )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
-INPUT_PORTS_START( j6cccla )
- PORT_INCLUDE( j6nokey )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Gamble") // usually START1
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Bank A Bit")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("unknown") // doesn't light anything in the layout?
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel / Collect")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Nudge 4")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 ) // VERY unusual mapping
+
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6h5clb )
PORT_INCLUDE( j6nokey )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
-INPUT_PORTS_START( j6cascla )
- PORT_INCLUDE( j6nokey )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_0") // buttons unknown, game doesn't use vfd
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON7 )
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON6 )
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON5 )
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel/Collect")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6gldclb )
PORT_INCLUDE( j6nokey )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
-INPUT_PORTS_START( j6hirlcl )
- PORT_INCLUDE( j6nokey )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-INPUT_PORTS_END
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Nudge 4")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Step Down")
-INPUT_PORTS_START( j6magcir )
- PORT_INCLUDE( j6nokey )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
+ //PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6raclb )
PORT_INCLUDE( j6nokey )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Nudge 4")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Step Down")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
+ //PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Cash / Token Sw")
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6tbrdcl_buttons )
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Streak")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Take Wins")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Take Knockouts")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Take Cash")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Nudge 4")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel/Collect")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Take Feature")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
+ //PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
-INPUT_PORTS_START( j6tbrdcl )
+INPUT_PORTS_START( j6tbrdcl ) // test mode broken, but works in clone below?
PORT_INCLUDE( j6nokey )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_INCLUDE( j6tbrdcl_buttons )
INPUT_PORTS_END
-INPUT_PORTS_START( j6tbrdclg )
+INPUT_PORTS_START( j6tbrdclg ) // unusual test mode
PORT_INCLUDE( j6nokey )
PORT_MODIFY("DSW") // first three need to be on to avoid error 91 00 (invalid mode) rather than the usual key ones
@@ -1985,38 +3244,71 @@ INPUT_PORTS_START( j6tbrdclg )
PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
-
+ PORT_INCLUDE( j6tbrdcl_buttons )
INPUT_PORTS_END
INPUT_PORTS_START( j6vivrkc )
PORT_INCLUDE( j6nokey )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Streak")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Take Knockout")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Take Winspins")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Take Feature")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Take Cash")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Nudge 4")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel/Collect")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
+ //PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
INPUT_PORTS_START( j6lucklo )
PORT_INCLUDE( j6nokey )
-INPUT_PORTS_END
-INPUT_PORTS_START( j6ramese )
- PORT_INCLUDE( j6nokey )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON13 ) PORT_NAME("Features")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON12 ) PORT_NAME("Knockouts")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_NAME("Cash")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_NAME("Nudges")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Winspins")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Bonus")
+
+ PORT_MODIFY("J9_0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Exchange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Collect")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Nudge 4")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel")
+
+ PORT_MODIFY("J9_2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Hopper Dump SW")
+ //PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Cash / Token Sw")
INPUT_PORTS_END
+//
+// MDM games
+// these have unusual hookups
+//
-// MDM game
-INPUT_PORTS_START( j6amdrm ) // might use % key, errors when changed from previous boot, but doesn't seem to require one
- PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+INPUT_PORTS_START( j6amdrm ) // MDM game - might use % key, errors when changed from previous boot, but doesn't seem to require one
+ PORT_INCLUDE( jpmimpct_inputs )
PORT_MODIFY("J10_0") // the inputs connect where the jackpot / stake key would usually go!
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) // Spin Reels
- PORT_DIPNAME( 0x02, 0x02, "J10_0: 1")
- PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x04, 0x04, "J10_0: 2")
- PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Exhcange")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3 / Lo")
PORT_DIPNAME( 0x08, 0x08, "J10_0: 3")
PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@@ -2033,22 +3325,24 @@ INPUT_PORTS_START( j6amdrm ) // might use % key, errors when changed from previo
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_INTERLOCK) PORT_NAME("Cashbox Door") PORT_CODE(KEYCODE_W) PORT_TOGGLE
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_INTERLOCK) PORT_NAME("Back Door") PORT_CODE(KEYCODE_Q) PORT_TOGGLE
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE) PORT_NAME("Refill Key") PORT_CODE(KEYCODE_R) PORT_TOGGLE
+
PORT_MODIFY("J10_1")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON4 ) // fast track?
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 3")
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 2")
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2 / Hi")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Fast Track")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel / Collect")
INPUT_PORTS_END
-// MDM game
INPUT_PORTS_START( j6col ) // might use % key, errors when changed from previous boot, but doesn't seem to require one
- PORT_INCLUDE( jpmimpct_non_video_inputs )
+ PORT_INCLUDE( jpmimpct_inputs )
PORT_MODIFY("J10_0") // the inputs connect where the jackpot / stake key would usually go!
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) // Spin Reels
- PORT_DIPNAME( 0x02, 0x02, "J10_0: 1")
- PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Exhcange")
PORT_DIPNAME( 0x04, 0x04, "J10_0: 2")
PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@@ -2068,31 +3362,451 @@ INPUT_PORTS_START( j6col ) // might use % key, errors when changed from previous
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_MODIFY("J10_2")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_INTERLOCK) PORT_NAME("Cashbox Door") PORT_CODE(KEYCODE_W) PORT_TOGGLE
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_INTERLOCK) PORT_NAME("Back Door") PORT_CODE(KEYCODE_Q) PORT_TOGGLE
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE) PORT_NAME("Refill Key") PORT_CODE(KEYCODE_R) PORT_TOGGLE
+
PORT_MODIFY("J10_1")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 3")
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 2")
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Nudge 3")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge 2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Nudge 1")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Cancel / Collect")
+INPUT_PORTS_END
+
+//
+// Empire games
+//
+
+INPUT_PORTS_START( j6papa ) // Empire
+ PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+ // TODO: more possibilities than this, this just allows it to boot
+ PORT_INCLUDE( j6_jackpot_5 )
+ PORT_INCLUDE( j6_stake_10 )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6wthing ) // Empire
+ PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+ // TODO: more possibilities than this, this just allows it to boot
+ PORT_INCLUDE( j6_jackpot_5 )
+ PORT_INCLUDE( j6_stake_10 )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+
+
+
+//
+// JPM / Crystal / Ace games with other issues
+// The following games won't enter test mode properly, why? different method? or similar to previous input issues?
+//
+
+INPUT_PORTS_START( j6colcsh ) // can't get to input test?
+ PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+ // this allows for more complex mixes, for now just use a setting that boots
+ PORT_INCLUDE( j6_jackpot_5 )
+ PORT_INCLUDE( j6_stake_10 )
+
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6cshvgs ) // can't get to input test?
+ PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+ // TODO: more possibilities than this, this just allows it to boot
+ PORT_INCLUDE( j6_jackpot_5 )
+ PORT_INCLUDE( j6_stake_10 )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6cheque ) // can't get to input test?
+ PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+ // TODO: more possibilities than this, this just allows it to boot
+ PORT_INCLUDE( j6_jackpot_5 )
+ PORT_INCLUDE( j6_stake_10 )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6dmngz ) // can't get to input test?
+ PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+ // TODO: more possibilities than this, this just allows it to boot
+ PORT_INCLUDE( j6_jackpot_25 )
+ PORT_INCLUDE( j6_stake_25 )
+ // PORT_INCLUDE( TODO: ) // not verified
INPUT_PORTS_END
-INPUT_PORTS_START( j6papa )
+INPUT_PORTS_START( j6euphor ) // can't get to input test?
PORT_INCLUDE( jpmimpct_non_video_inputs )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_5 )
PORT_INCLUDE( j6_stake_10 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ // PORT_INCLUDE( TODO: ) // not verified
INPUT_PORTS_END
-INPUT_PORTS_START( j6wthing )
+INPUT_PORTS_START( j6euphorf ) // can't get to input test?
+ PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+ // TODO: more possibilities than this, this just allows it to boot
+ PORT_INCLUDE( j6_jackpot_25 )
+ PORT_INCLUDE( j6_stake_25 )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6fireck ) // can't get to input test?
PORT_INCLUDE( jpmimpct_non_video_inputs )
// TODO: more possibilities than this, this just allows it to boot
PORT_INCLUDE( j6_jackpot_5 )
PORT_INCLUDE( j6_stake_10 )
- PORT_INCLUDE( j6_start_ex_co_3nud_cancel ) // not verified
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6rccls ) // can't get to input test?
+ PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+ // TODO: more possibilities than this, this just allows it to boot
+ PORT_INCLUDE( j6_jackpot_5 )
+ PORT_INCLUDE( j6_stake_25 )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+
+INPUT_PORTS_START( j6firclb ) // can't get to input test?
+ PORT_INCLUDE( j6nokey )
+
+ PORT_MODIFY("DSW") // first two need to be on to avoid error 91 00 (invalid mode) rather than the usual key ones
+ PORT_DIPNAME( 0x01, 0x00, "DSW 0 (must be ON)")
+ PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x02, 0x00, "DSW 1 (must be ON)")
+ PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6crzclb ) // can't get to input test?
+ PORT_INCLUDE( j6nokey )
+
+ PORT_MODIFY("DSW") // first two need to be on to avoid error 91 00 (invalid mode) rather than the usual key ones
+ PORT_DIPNAME( 0x01, 0x00, "DSW 0 (must be ON)")
+ PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x02, 0x00, "DSW 1 (must be ON)")
+ PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6cluclb ) // can't get to input test?
+ PORT_INCLUDE( j6nokey )
+
+ PORT_MODIFY("DSW") // first three need to be on to avoid error 91 00 (invalid mode) rather than the usual key ones
+ PORT_DIPNAME( 0x01, 0x00, "DSW 0 (must be ON)")
+ PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x02, 0x00, "DSW 1 (must be ON)")
+ PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x04, 0x00, "DSW 2 (must be ON)")
+ PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+
+INPUT_PORTS_START( j6framft ) // can't get to input test?
+ PORT_INCLUDE( j6nokey )
+
+ PORT_MODIFY("DSW") // first two need to be on to avoid error 91 00 (invalid mode) rather than the usual key ones
+ PORT_DIPNAME( 0x01, 0x00, "DSW 0 (must be ON)")
+ PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x02, 0x00, "DSW 1 (must be ON)")
+ PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6frtmch ) // can't get to input test?
+ PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+ // TODO: more possibilities than this, this just allows it to boot
+ PORT_INCLUDE( j6_jackpot_5 )
+ PORT_INCLUDE( j6_stake_20 )
+ // PORT_INCLUDE( TODO: ) // not verified
INPUT_PORTS_END
+INPUT_PORTS_START( j6gidogh ) // can't get to input test?
+ PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+ // TODO: more possibilities than this, this just allows it to boot
+ PORT_INCLUDE( j6_jackpot_25 )
+ PORT_INCLUDE( j6_stake_25 )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6goldgl ) // can't get to input test?
+ PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+ // TODO: more possibilities than this, this just allows it to boot
+ PORT_INCLUDE( j6_jackpot_25 )
+ PORT_INCLUDE( j6_stake_25 )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6hiphop ) // can't get to input test?
+ PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+ // TODO: more possibilities than this, this just allows it to boot
+ PORT_INCLUDE( j6_jackpot_25 )
+ PORT_INCLUDE( j6_stake_25 )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6pogcls ) // can't get to input test?
+ PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+ // TODO: more possibilities than this, this just allows it to boot
+ PORT_INCLUDE( j6_jackpot_5 )
+ PORT_INCLUDE( j6_stake_25 )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6rh6 ) // can't get to input test?
+ PORT_INCLUDE( j6nokey )
+
+ PORT_MODIFY("DSW") // first three need to be on to avoid error 91 00 (invalid mode) rather than the usual key ones
+ PORT_DIPNAME( 0x01, 0x00, "DSW 0 (must be ON)")
+ PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x02, 0x00, "DSW 1 (must be ON)")
+ PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x04, 0x00, "DSW 2 (must be ON)")
+ PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6rhchil ) // can't get to input test?
+ PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+ // TODO: more possibilities than this, this just allows it to boot
+ PORT_INCLUDE( j6_jackpot_25 )
+ PORT_INCLUDE( j6_stake_25 )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6spcinv ) // can't get to input test?
+ PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+ // TODO: more possibilities than this, this just allows it to boot
+ PORT_INCLUDE( j6_jackpot_25 )
+ PORT_INCLUDE( j6_stake_25 )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6swpdrp ) // can't get to input test?
+ PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+ // TODO: more possibilities than this, this just allows it to boot
+ PORT_INCLUDE( j6_jackpot_25 )
+ PORT_INCLUDE( j6_stake_25 )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6tbirdsk ) // can't get to input test?
+ PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+ // TODO: more possibilities than this, this just allows it to boot
+ PORT_INCLUDE( j6_jackpot_25 )
+ PORT_INCLUDE( j6_stake_25 )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6tomb ) // can't get to input test?
+ PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+ // TODO: more possibilities than this, this just allows it to boot
+ PORT_INCLUDE( j6_jackpot_25 )
+ PORT_INCLUDE( j6_stake_25 )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6topflg ) // can't get to input test?
+ PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+ // TODO: more possibilities than this, this just allows it to boot
+ PORT_INCLUDE( j6_jackpot_25 )
+ PORT_INCLUDE( j6_stake_25 )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6twst ) // can't get to input test?
+ PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+ // TODO: more possibilities than this, this just allows it to boot
+ PORT_INCLUDE( j6_jackpot_25 )
+ PORT_INCLUDE( j6_stake_25 )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6vindal ) // can't get to input test?
+ PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+ // TODO: more possibilities than this, this just allows it to boot
+ PORT_INCLUDE( j6_jackpot_25 )
+ PORT_INCLUDE( j6_stake_25 )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6knight ) // can't get to input test?
+ PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+ // TODO: more possibilities than this, this just allows it to boot
+ PORT_INCLUDE( j6_jackpot_25 )
+ PORT_INCLUDE( j6_stake_25 )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6btbw ) // can't get to input test?
+ PORT_INCLUDE( j6nokey )
+
+ PORT_MODIFY("DSW") // first three need to be on to avoid error 91 00 (invalid mode) rather than the usual key ones
+ PORT_DIPNAME( 0x01, 0x00, "DSW 0 (must be ON)")
+ PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x02, 0x00, "DSW 1 (must be ON)")
+ PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x04, 0x00, "DSW 2 (must be ON)")
+ PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+
+INPUT_PORTS_START( j6colic ) // can't get to input test?
+ PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+ // TODO: more possibilities than this, this just allows it to boot
+ PORT_INCLUDE( j6_jackpot_25 )
+ PORT_INCLUDE( j6_stake_25 )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6crakr ) // can't get to input test?
+ PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+ // TODO: more possibilities than this, this just allows it to boot
+ PORT_INCLUDE( j6_jackpot_25 )
+ PORT_INCLUDE( j6_stake_25 )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6kapang ) // can't get to input test?
+ PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+ // TODO: more possibilities than this, this just allows it to boot
+ PORT_INCLUDE( j6_jackpot_25 )
+ PORT_INCLUDE( j6_stake_25 )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6pinfvr ) // can't get to input test?
+ PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+ // TODO: more possibilities than this, this just allows it to boot
+ PORT_INCLUDE( j6_jackpot_25 )
+ PORT_INCLUDE( j6_stake_25 )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6shoot ) // can't get to input test?
+ PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+ // TODO: more possibilities than this, this just allows it to boot
+ PORT_INCLUDE( j6_jackpot_25 )
+ PORT_INCLUDE( j6_stake_25 )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6bucks ) // can't get to input test?
+ PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+ // TODO: more possibilities than this, this just allows it to boot
+ PORT_INCLUDE( j6_jackpot_25 )
+ PORT_INCLUDE( j6_stake_25 )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6scarlt ) // can't get to input test?
+ PORT_INCLUDE( jpmimpct_non_video_inputs )
+
+ // TODO: more possibilities than this, this just allows it to boot
+ PORT_INCLUDE( j6_jackpot_25 )
+ PORT_INCLUDE( j6_stake_25 )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6rh6cl ) // can't get to input test?
+ PORT_INCLUDE( j6nokey )
+
+ PORT_MODIFY("DSW") // first three need to be on to avoid error 91 00 (invalid mode) rather than the usual key ones
+ PORT_DIPNAME( 0x01, 0x00, "DSW 0 (must be ON)")
+ PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x02, 0x00, "DSW 1 (must be ON)")
+ PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x04, 0x00, "DSW 2 (must be ON)")
+ PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6cccla ) // can't get to input test?
+ PORT_INCLUDE( j6nokey )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6cascla ) // can't get to input test?
+ PORT_INCLUDE( j6nokey )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6magcir ) // can't get to input test?
+ PORT_INCLUDE( j6nokey )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6ramese ) // can't get to input test?
+ PORT_INCLUDE( j6nokey )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6hirlcl ) // can't get to input test?
+ PORT_INCLUDE( j6nokey )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
+
+INPUT_PORTS_START( j6start ) // not a standard machine, has a crane
+ PORT_INCLUDE( j6nokey_withperc )
+ // PORT_INCLUDE( TODO: ) // not verified
+INPUT_PORTS_END
ROM_START( j6fifth )
@@ -4435,8 +6149,9 @@ ROM_END
#define j6fasttk_sound \
ROM_REGION( 0x80000, "upd", ROMREGION_ERASE00 ) \
- /* missing? */
- ROM_START( j6fasttk )
+ ROM_LOAD( "fasttrak.upd", 0x000000, 0x080000, NO_DUMP )
+
+ROM_START( j6fasttk )
ROM_REGION( 0x200000, "maincpu", ROMREGION_ERASEFF )
ROM_LOAD16_BYTE( "9331.bin", 0x000000, 0x020000, CRC(54dbf894) SHA1(a3ffff82883cc192108f44d36a7465d4afeaf114) )
ROM_LOAD16_BYTE( "9332.bin", 0x000001, 0x020000, CRC(ecf1632a) SHA1(5d82a46672adceb29744e82de1b0fa5fcf4dbc51) )
@@ -4468,7 +6183,6 @@ ROM_END
#define j6filth_sound \
ROM_REGION( 0x80000, "upd", ROMREGION_ERASE00 ) \
ROM_LOAD( "1151.bin", 0x000000, 0x080000, CRC(c3a2bf9b) SHA1(31536613fd9dcce0878109d460344591570c4334) ) \
-/* ROM_LOAD( "frcl-snd.bin", 0x000000, 0x080000, CRC(c3a2bf9b) SHA1(31536613fd9dcce0878109d460344591570c4334) ) */
ROM_START( j6filth )
ROM_REGION( 0x200000, "maincpu", ROMREGION_ERASEFF )
@@ -4897,14 +6611,18 @@ ROM_START( j6reelb )
ROM_REGION( 0x200000, "maincpu", ROMREGION_ERASEFF )
ROM_LOAD16_BYTE( "fg81.bin", 0x00000, 0x020000, CRC(570cd8b3) SHA1(91563b30d2ff229a000dfb3299a9cf343517fc72) )
ROM_LOAD16_BYTE( "fg82.bin", 0x00001, 0x020000, CRC(952a7743) SHA1(908e03279f0b98921b417e4c85117e0ef7f5c8b3) )
- j6guabcl_sound
+
+ ROM_REGION( 0x80000, "upd", ROMREGION_ERASE00 )
+ ROM_LOAD( "j6reelb.upd", 0x000000, 0x080000, NO_DUMP )
ROM_END
ROM_START( j6reelba )
ROM_REGION( 0x200000, "maincpu", ROMREGION_ERASEFF )
ROM_LOAD16_BYTE( "fg81p.bin", 0x0000, 0x020000, CRC(bc928c8b) SHA1(6411994eebdfaac494725f64446cb711eb54c2b7) )
ROM_LOAD16_BYTE( "fg82.bin", 0x00001, 0x020000, CRC(952a7743) SHA1(908e03279f0b98921b417e4c85117e0ef7f5c8b3) )
- j6guabcl_sound
+
+ ROM_REGION( 0x80000, "upd", ROMREGION_ERASE00 )
+ ROM_LOAD( "j6reelb.upd", 0x000000, 0x080000, NO_DUMP )
ROM_END
@@ -6735,6 +8453,29 @@ ROM_START( j6pogd )
j6pog_sound
ROM_END
+ROM_START( j6potg )
+ ROM_REGION( 0x200000, "maincpu", ROMREGION_ERASEFF )
+ ROM_LOAD16_BYTE( "fxd.p1", 0x00000, 0x020000, CRC(113ddbe2) SHA1(492e320c296604ebd7bd5a55356698bfa36c1d0d) )
+ ROM_LOAD16_BYTE( "fxd.p2", 0x00001, 0x020000, CRC(c31eea57) SHA1(9b2a5cccbc7254c9a6b51f7ba5cc43c06578ed6e) )
+ j6pog_sound
+ROM_END
+
+ROM_START( j6potga )
+ ROM_REGION( 0x200000, "maincpu", ROMREGION_ERASEFF )
+ ROM_LOAD16_BYTE( "fxd_a.p1", 0x0000, 0x020000, CRC(43f91b83) SHA1(eaa1c1aa414ff378a7cb6820cfce7cc88fbfc559) )
+ ROM_LOAD16_BYTE( "fxd.p2", 0x00001, 0x020000, CRC(c31eea57) SHA1(9b2a5cccbc7254c9a6b51f7ba5cc43c06578ed6e) )
+ j6pog_sound
+ROM_END
+
+ROM_START( j6potgb )
+ ROM_REGION( 0x200000, "maincpu", ROMREGION_ERASEFF )
+ ROM_LOAD16_BYTE( "fxd_p.p1", 0x0000, 0x020000, CRC(faa38fda) SHA1(437c1a34a044d2d4e17d1e94e145f3733d15bcf0) )
+ ROM_LOAD16_BYTE( "fxd.p2", 0x00001, 0x020000, CRC(c31eea57) SHA1(9b2a5cccbc7254c9a6b51f7ba5cc43c06578ed6e) )
+ j6pog_sound
+ROM_END
+
+
+
#define j6pogcls_sound \
ROM_REGION( 0x80000, "upd", ROMREGION_ERASE00 ) \
@@ -9577,32 +11318,6 @@ ROM_END
-#define j6potg_sound \
- ROM_REGION( 0x80000, "upd", ROMREGION_ERASE00 ) \
- /* missing? */
-
-ROM_START( j6potg )
- ROM_REGION( 0x200000, "maincpu", ROMREGION_ERASEFF )
- ROM_LOAD16_BYTE( "fxd.p1", 0x00000, 0x020000, CRC(113ddbe2) SHA1(492e320c296604ebd7bd5a55356698bfa36c1d0d) )
- ROM_LOAD16_BYTE( "fxd.p2", 0x00001, 0x020000, CRC(c31eea57) SHA1(9b2a5cccbc7254c9a6b51f7ba5cc43c06578ed6e) )
- j6potg_sound
-ROM_END
-
-ROM_START( j6potga )
- ROM_REGION( 0x200000, "maincpu", ROMREGION_ERASEFF )
- ROM_LOAD16_BYTE( "fxd_a.p1", 0x0000, 0x020000, CRC(43f91b83) SHA1(eaa1c1aa414ff378a7cb6820cfce7cc88fbfc559) )
- ROM_LOAD16_BYTE( "fxd.p2", 0x00001, 0x020000, CRC(c31eea57) SHA1(9b2a5cccbc7254c9a6b51f7ba5cc43c06578ed6e) )
- j6potg_sound
-ROM_END
-
-ROM_START( j6potgb )
- ROM_REGION( 0x200000, "maincpu", ROMREGION_ERASEFF )
- ROM_LOAD16_BYTE( "fxd_p.p1", 0x0000, 0x020000, CRC(faa38fda) SHA1(437c1a34a044d2d4e17d1e94e145f3733d15bcf0) )
- ROM_LOAD16_BYTE( "fxd.p2", 0x00001, 0x020000, CRC(c31eea57) SHA1(9b2a5cccbc7254c9a6b51f7ba5cc43c06578ed6e) )
- j6potg_sound
-ROM_END
-
-
#define j6ramese_sound \
ROM_REGION( 0x80000, "upd", ROMREGION_ERASE00 ) \
@@ -10007,10 +11722,10 @@ GAME( 199?, j6caslasa, j6caslas, impact_nonvideo, j6caslas, jpmimpct_state
GAME( 199?, j6caslasb, j6caslas, impact_nonvideo, j6caslas, jpmimpct_state, empty_init, ROT0, "JPM", "Casino Las Vegas (JPM) (IMPACT) (set 3)", GAME_FLAGS )
GAME( 199?, j6caslasc, j6caslas, impact_nonvideo, j6caslas, jpmimpct_state, empty_init, ROT0, "JPM", "Casino Las Vegas (JPM) (IMPACT) (set 4, Whitbread)", GAME_FLAGS )
-GAME( 199?, j6fasttk, 0, impact_nonvideo, j6fasttk, jpmimpct_state, empty_init, ROT0, "JPM", "Fast Trak (JPM) (IMPACT) (set 1)", GAME_FLAGS )
-GAME( 199?, j6fasttka, j6fasttk, impact_nonvideo, j6fasttk, jpmimpct_state, empty_init, ROT0, "JPM", "Fast Trak (JPM) (IMPACT) (set 2)", GAME_FLAGS )
-GAME( 199?, j6fasttkb, j6fasttk, impact_nonvideo, j6fasttk, jpmimpct_state, empty_init, ROT0, "JPM", "Fast Trak (JPM) (IMPACT) (set 3)", GAME_FLAGS )
-GAME( 199?, j6fasttkc, j6fasttk, impact_nonvideo, j6fasttk, jpmimpct_state, empty_init, ROT0, "JPM", "Fast Trak (JPM) (IMPACT) (set 4, Whitbread)", GAME_FLAGS )
+GAME( 199?, j6fasttk, 0, impact_nonvideo, j6fasttk, jpmimpct_state, empty_init, ROT0, "JPM", "Fast?Trak (JPM) (IMPACT) (set 1)", GAME_FLAGS )
+GAME( 199?, j6fasttka, j6fasttk, impact_nonvideo, j6fasttk, jpmimpct_state, empty_init, ROT0, "JPM", "Fast?Trak (JPM) (IMPACT) (set 2)", GAME_FLAGS )
+GAME( 199?, j6fasttkb, j6fasttk, impact_nonvideo, j6fasttk, jpmimpct_state, empty_init, ROT0, "JPM", "Fast?Trak (JPM) (IMPACT) (set 3)", GAME_FLAGS )
+GAME( 199?, j6fasttkc, j6fasttk, impact_nonvideo, j6fasttk, jpmimpct_state, empty_init, ROT0, "JPM", "Fast?Trak (JPM) (IMPACT) (set 4, Whitbread)", GAME_FLAGS )
GAME( 199?, j6filth, 0, impact_nonvideo, j6filth, jpmimpct_state, empty_init, ROT0, "JPM", "Filthy Rich Club (JPM) (IMPACT) (set 1)", GAME_FLAGS )
GAME( 199?, j6filtha, j6filth, impact_nonvideo, j6filth, jpmimpct_state, empty_init, ROT0, "JPM", "Filthy Rich Club (JPM) (IMPACT) (set 2)", GAME_FLAGS )
@@ -10070,6 +11785,9 @@ GAMEL( 199?, j6impulsd, j6impuls, impact_nonvideo, j6impulsa,jpmimpct_state
GAMEL( 199?, j6impulse, j6impuls, impact_nonvideo, j6impulsa,jpmimpct_state, empty_init, ROT0, "JPM", "Impulse (JPM) (IMPACT) (set 6)", GAME_FLAGS, layout_j6impulsc )
GAMEL( 199?, j6impulsf, j6impuls, impact_nonvideo, j6impulsa,jpmimpct_state, empty_init, ROT0, "JPM", "Impulse (JPM) (IMPACT) (set 7, Whitbread)", GAME_FLAGS, layout_j6impulsc )
+// not the same layout or button mapping as the above, but same attract strings?
+GAME( 199?, j6impls, 0, impact_nonvideo, j6impls, jpmimpct_state, empty_init, ROT0, "Crystal", "Impulse (Crystal) (IMPACT)", GAME_FLAGS )
+
GAMEL( 199?, j6indy, 0, impact_nonvideo, j6indy, jpmimpct_state, empty_init, ROT0, "JPM", "Indiana Jones (JPM) (IMPACT) (set 1)", GAME_FLAGS, layout_j6indyi )
GAMEL( 199?, j6indya, j6indy, impact_nonvideo, j6indy, jpmimpct_state, empty_init, ROT0, "JPM", "Indiana Jones (JPM) (IMPACT) (set 2)", GAME_FLAGS, layout_j6indyi )
GAMEL( 199?, j6indyb, j6indy, impact_nonvideo, j6indy, jpmimpct_state, empty_init, ROT0, "JPM", "Indiana Jones (JPM) (IMPACT) (set 3)", GAME_FLAGS, layout_j6indyi )
@@ -10183,23 +11901,23 @@ GAME( 199?, j6robinb, j6robin, impact_nonvideo_altreels, j6robin, jpmimp
GAME( 199?, j6robinc, j6robin, impact_nonvideo_altreels, j6robin, jpmimpct_state, empty_init, ROT0, "Ace", "Robin Hood (Ace) (IMPACT) (set 4)", GAME_FLAGS )
-GAMEL( 199?, j6roller, 0, impact_nonvideo, j6roller, jpmimpct_state, empty_init, ROT0, "JPM", u8"Roller Coaster (JPM) (IMPACT) (RC11 C30, 30p Stake, £15 Jackpot)", GAME_FLAGS_WORKING, layout_j6roller15 )
-GAMEL( 199?, j6rollera, j6roller, impact_nonvideo, j6roller, jpmimpct_state, empty_init, ROT0, "JPM", u8"Roller Coaster (JPM) (IMPACT) (RC11P C30, 30p Stake, £15 Jackpot, Protocol)", GAME_FLAGS_WORKING, layout_j6roller15 )
-GAMEL( 199?, j6rollerb, j6roller, impact_nonvideo, j6roller, jpmimpct_state, empty_init, ROT0, "JPM", u8"Roller Coaster (JPM) (IMPACT) (RC11 AC30, 30p Stake, £15 Jackpot)", GAME_FLAGS_WORKING, layout_j6roller15 )
-GAMEL( 199?, j6rollerc, j6roller, impact_nonvideo, j6roller, jpmimpct_state, empty_init, ROT0, "JPM / Whitbread", u8"Roller Coaster (JPM) (IMPACT) (RC11 C30, 30p Stake, £15 Jackpot, Whitbread)", GAME_FLAGS_WORKING, layout_j6roller15 )
-GAMEL( 199?, j6rollerd, j6roller, impact_nonvideo, j6roller, jpmimpct_state, empty_init, ROT0, "JPM", u8"Roller Coaster (JPM) (IMPACT) (RC11 C29, 30p Stake, £15 Jackpot)", GAME_FLAGS_WORKING, layout_j6roller15 )
-GAMEL( 199?, j6rollere, j6roller, impact_nonvideo, j6roller, jpmimpct_state, empty_init, ROT0, "JPM", u8"Roller Coaster (JPM) (IMPACT) (RC10 C20, 20p Stake, £10 Jackpot)", GAME_FLAGS_WORKING, layout_j6roller10 )
-GAMEL( 199?, j6rollerf, j6roller, impact_nonvideo, j6roller, jpmimpct_state, empty_init, ROT0, "JPM", u8"Roller Coaster (JPM) (IMPACT) (RC9 L26, 20p Stake, £8 Jackpot)", GAME_FLAGS_WORKING, layout_j6roller8 )
-GAMEL( 199?, j6rollerg, j6roller, impact_nonvideo, j6roller, jpmimpct_state, empty_init, ROT0, "JPM", u8"Roller Coaster (JPM) (IMPACT) (RC9P L26, 20p Stake, £8 Jackpot, Protocol)", GAME_FLAGS_WORKING, layout_j6roller8 )
-GAMEL( 199?, j6rollerh, j6roller, impact_nonvideo, j6roller, jpmimpct_state, empty_init, ROT0, "JPM", u8"Roller Coaster (JPM) (IMPACT) (RC9 AL26, 20p Stake, £8 Jackpot)", GAME_FLAGS_WORKING, layout_j6roller8 )
-GAMEL( 199?, j6rolleri, j6roller, impact_nonvideo, j6roller, jpmimpct_state, empty_init, ROT0, "JPM / Whitbread", u8"Roller Coaster (JPM) (IMPACT) (RC9 L26, 20p Stake, £10 Jackpot, Whitbread)", GAME_FLAGS_WORKING, layout_j6roller10 )
-GAMEL( 199?, j6rollerj, j6roller, impact_nonvideo, j6roller, jpmimpct_state, empty_init, ROT0, "JPM", u8"Roller Coaster (JPM) (IMPACT) (RC5 L14, 20p Stake, £8 Jackpot)", GAME_FLAGS_WORKING, layout_j6roller8 )
-GAMEL( 199?, j6rollerk, j6roller, impact_nonvideo, j6roller, jpmimpct_state, empty_init, ROT0, "JPM", u8"Roller Coaster (JPM) (IMPACT) (RC4 L15, 20p Stake, £8 Jackpot)", GAME_FLAGS_WORKING, layout_j6roller8 )
-GAMEL( 199?, j6rollerl, j6roller, impact_nonvideo, j6roller, jpmimpct_state, empty_init, ROT0, "JPM", u8"Roller Coaster (JPM) (IMPACT) (RC4P L15, 20p Stake, £8 Jackpot, Protocol)", GAME_FLAGS_WORKING, layout_j6roller8 )
-GAMEL( 199?, j6rollerm, j6roller, impact_nonvideo, j6roller, jpmimpct_state, empty_init, ROT0, "JPM", u8"Roller Coaster (JPM) (IMPACT) (RC4 AL15, 20p Stake, £8 Jackpot)", GAME_FLAGS_WORKING, layout_j6roller8 )
-GAMEL( 199?, j6rollern, j6roller, impact_nonvideo, j6roller, jpmimpct_state, empty_init, ROT0, "JPM", u8"Roller Coaster (JPM) (IMPACT) (RC4 I L15, 20p Stake, £8 Jackpot)", GAME_FLAGS_WORKING, layout_j6roller8 )
-GAMEL( 199?, j6rollero, j6roller, impact_nonvideo, j6roller, jpmimpct_state, empty_init, ROT0, "JPM", u8"Roller Coaster (JPM) (IMPACT) (RC2 L07, 20p Stake, £8 Jackpot)", GAME_FLAGS_WORKING, layout_j6roller8 )
-GAMEL( 199?, j6rollerp, j6roller, impact_nonvideo, j6roller, jpmimpct_state, empty_init, ROT0, "JPM", u8"Roller Coaster (JPM) (IMPACT) (RC2 I L07, 20p Stake, £8 Jackpot)", GAME_FLAGS_WORKING, layout_j6roller8 )
+GAMEL( 199?, j6roller, 0, impact_nonvideo, j6roller15, jpmimpct_state, empty_init, ROT0, "JPM", u8"Roller Coaster (JPM) (IMPACT) (RC11 C30, 30p Stake, £15 Jackpot)", GAME_FLAGS_WORKING, layout_j6roller15 )
+GAMEL( 199?, j6rollera, j6roller, impact_nonvideo, j6roller15, jpmimpct_state, empty_init, ROT0, "JPM", u8"Roller Coaster (JPM) (IMPACT) (RC11P C30, 30p Stake, £15 Jackpot, Protocol)", GAME_FLAGS_WORKING, layout_j6roller15 )
+GAMEL( 199?, j6rollerb, j6roller, impact_nonvideo, j6roller15, jpmimpct_state, empty_init, ROT0, "JPM", u8"Roller Coaster (JPM) (IMPACT) (RC11 AC30, 30p Stake, £15 Jackpot)", GAME_FLAGS_WORKING, layout_j6roller15 )
+GAMEL( 199?, j6rollerc, j6roller, impact_nonvideo, j6roller15, jpmimpct_state, empty_init, ROT0, "JPM / Whitbread", u8"Roller Coaster (JPM) (IMPACT) (RC11 C30, 30p Stake, £15 Jackpot, Whitbread)", GAME_FLAGS_WORKING, layout_j6roller15 )
+GAMEL( 199?, j6rollerd, j6roller, impact_nonvideo, j6roller15, jpmimpct_state, empty_init, ROT0, "JPM", u8"Roller Coaster (JPM) (IMPACT) (RC11 C29, 30p Stake, £15 Jackpot)", GAME_FLAGS_WORKING, layout_j6roller15 )
+GAMEL( 199?, j6rollere, j6roller, impact_nonvideo, j6roller10, jpmimpct_state, empty_init, ROT0, "JPM", u8"Roller Coaster (JPM) (IMPACT) (RC10 C20, 20p Stake, £10 Jackpot)", GAME_FLAGS_WORKING, layout_j6roller10 )
+GAMEL( 199?, j6rollerf, j6roller, impact_nonvideo, j6roller8, jpmimpct_state, empty_init, ROT0, "JPM", u8"Roller Coaster (JPM) (IMPACT) (RC9 L26, 20p Stake, £8 Jackpot)", GAME_FLAGS_WORKING, layout_j6roller8 )
+GAMEL( 199?, j6rollerg, j6roller, impact_nonvideo, j6roller8, jpmimpct_state, empty_init, ROT0, "JPM", u8"Roller Coaster (JPM) (IMPACT) (RC9P L26, 20p Stake, £8 Jackpot, Protocol)", GAME_FLAGS_WORKING, layout_j6roller8 )
+GAMEL( 199?, j6rollerh, j6roller, impact_nonvideo, j6roller8, jpmimpct_state, empty_init, ROT0, "JPM", u8"Roller Coaster (JPM) (IMPACT) (RC9 AL26, 20p Stake, £8 Jackpot)", GAME_FLAGS_WORKING, layout_j6roller8 )
+GAMEL( 199?, j6rolleri, j6roller, impact_nonvideo, j6roller10, jpmimpct_state, empty_init, ROT0, "JPM / Whitbread", u8"Roller Coaster (JPM) (IMPACT) (RC9 L26, 20p Stake, £10 Jackpot, Whitbread)", GAME_FLAGS_WORKING, layout_j6roller10 )
+GAMEL( 199?, j6rollerj, j6roller, impact_nonvideo, j6roller8, jpmimpct_state, empty_init, ROT0, "JPM", u8"Roller Coaster (JPM) (IMPACT) (RC5 L14, 20p Stake, £8 Jackpot)", GAME_FLAGS_WORKING, layout_j6roller8 )
+GAMEL( 199?, j6rollerk, j6roller, impact_nonvideo, j6roller8, jpmimpct_state, empty_init, ROT0, "JPM", u8"Roller Coaster (JPM) (IMPACT) (RC4 L15, 20p Stake, £8 Jackpot)", GAME_FLAGS_WORKING, layout_j6roller8 )
+GAMEL( 199?, j6rollerl, j6roller, impact_nonvideo, j6roller8, jpmimpct_state, empty_init, ROT0, "JPM", u8"Roller Coaster (JPM) (IMPACT) (RC4P L15, 20p Stake, £8 Jackpot, Protocol)", GAME_FLAGS_WORKING, layout_j6roller8 )
+GAMEL( 199?, j6rollerm, j6roller, impact_nonvideo, j6roller8, jpmimpct_state, empty_init, ROT0, "JPM", u8"Roller Coaster (JPM) (IMPACT) (RC4 AL15, 20p Stake, £8 Jackpot)", GAME_FLAGS_WORKING, layout_j6roller8 )
+GAMEL( 199?, j6rollern, j6roller, impact_nonvideo, j6roller8, jpmimpct_state, empty_init, ROT0, "JPM", u8"Roller Coaster (JPM) (IMPACT) (RC4 I L15, 20p Stake, £8 Jackpot)", GAME_FLAGS_WORKING, layout_j6roller8 )
+GAMEL( 199?, j6rollero, j6roller, impact_nonvideo, j6roller8, jpmimpct_state, empty_init, ROT0, "JPM", u8"Roller Coaster (JPM) (IMPACT) (RC2 L07, 20p Stake, £8 Jackpot)", GAME_FLAGS_WORKING, layout_j6roller8 )
+GAMEL( 199?, j6rollerp, j6roller, impact_nonvideo, j6roller8, jpmimpct_state, empty_init, ROT0, "JPM", u8"Roller Coaster (JPM) (IMPACT) (RC2 I L07, 20p Stake, £8 Jackpot)", GAME_FLAGS_WORKING, layout_j6roller8 )
GAME( 199?, j6rcclub, 0, impact_nonvideo, j6rcclub, jpmimpct_state, empty_init, ROT0, "JPM", "Roller Coaster Club (JPM) (IMPACT) (set 1)", GAME_FLAGS )
GAME( 199?, j6rccluba, j6rcclub, impact_nonvideo, j6rcclub, jpmimpct_state, empty_init, ROT0, "JPM", "Roller Coaster Club (JPM) (IMPACT) (set 2)", GAME_FLAGS )
@@ -10266,8 +11984,8 @@ GAME( 199?, j6sonich, j6sonic, impact_nonvideo, j6sonic, jpmimpct_state,
GAME( 199?, j6roof, 0, impact_nonvideo, j6roof, jpmimpct_state, empty_init, ROT0, "Ace", "Thru' The Roof (Ace) (IMPACT) (set 1)", GAME_FLAGS )
GAME( 199?, j6roofa, j6roof, impact_nonvideo, j6roof, jpmimpct_state, empty_init, ROT0, "Ace", "Thru' The Roof (Ace) (IMPACT) (set 2)", GAME_FLAGS )
-GAMEL( 199?, j6untch, 0, impact_nonvideo, j6untch, jpmimpct_state, empty_init, ROT0, "JPM", "Untouchables (JPM) (IMPACT) (set 1)", GAME_FLAGS, layout_j6untch )
-GAMEL( 199?, j6untcha, j6untch, impact_nonvideo, j6untch, jpmimpct_state, empty_init, ROT0, "JPM", "Untouchables (JPM) (IMPACT) (set 2)", GAME_FLAGS, layout_j6untch )
+GAMEL( 199?, j6untch, 0, impact_nonvideo, j6untch, jpmimpct_state, empty_init, ROT0, "JPM", "Untouchable (JPM) (IMPACT) (set 1)", GAME_FLAGS, layout_j6untch )
+GAMEL( 199?, j6untcha, j6untch, impact_nonvideo, j6untch, jpmimpct_state, empty_init, ROT0, "JPM", "Untouchable (JPM) (IMPACT) (set 2)", GAME_FLAGS, layout_j6untch )
// VFD issues, but VFD is likely unused as it calls the game 'Some Indeterminate Club Machine' with clear placeholder text
GAMEL( 199?, j6wldkng, 0, impact_nonvideo, j6wldkng, jpmimpct_state, empty_init, ROT0, "JPM", "Wild King Club (JPM) (IMPACT) (set 1)", GAME_FLAGS, layout_j6wldkng )
@@ -10313,8 +12031,6 @@ GAME( 199?, j6cdivr, 0, impact_nonvideo, j6cdivr, jpmimpct_state,
GAME( 199?, j6grc, 0, impact_nonvideo, j6grc, jpmimpct_state, empty_init, ROT0, "Crystal", "Gold Rush Club (Crystal) (IMPACT) (set 1)", GAME_FLAGS )
GAME( 199?, j6grca, j6grc, impact_nonvideo, j6grc, jpmimpct_state, empty_init, ROT0, "Crystal", "Gold Rush Club (Crystal) (IMPACT) (set 2)", GAME_FLAGS )
-GAME( 199?, j6impls, 0, impact_nonvideo, j6impls, jpmimpct_state, empty_init, ROT0, "Crystal", "Impulse (Crystal) (IMPACT)", GAME_FLAGS )
-
GAME( 199?, j6thril, 0, impact_nonvideo, j6thril, jpmimpct_state, empty_init, ROT0, "Crystal", "Thriller (Crystal) (IMPACT) (set 1)", GAME_FLAGS )
GAME( 199?, j6thrila, j6thril, impact_nonvideo, j6thril, jpmimpct_state, empty_init, ROT0, "Crystal", "Thriller (Crystal) (IMPACT) (set 2)", GAME_FLAGS )
@@ -10579,11 +12295,11 @@ GAMEL( 199?, j6ffce, j6framft, impact_nonvideo, j6framft, jpmimpct_state
GAME( 199?, j6frtmch, 0, impact_nonvideo, j6frtmch, jpmimpct_state, empty_init, ROT0, "JPM", "The Fruit Machine (JPM) (IMPACT)", GAME_FLAGS )
-GAME( 199?, j6gforce, 0, impact_nonvideo, j6gforce, jpmimpct_state, empty_init, ROT0, "JPM", "G Force (JPM) (IMPACT) (set 1)", GAME_FLAGS )
-GAME( 199?, j6gforcea, j6gforce, impact_nonvideo, j6gforcea,jpmimpct_state, empty_init, ROT0, "JPM", "G Force (JPM) (IMPACT) (set 2)", GAME_FLAGS )
-GAME( 199?, j6gforceb, j6gforce, impact_nonvideo, j6gforce, jpmimpct_state, empty_init, ROT0, "JPM", "G Force (JPM) (IMPACT) (set 3)", GAME_FLAGS )
-GAME( 199?, j6gforcec, j6gforce, impact_nonvideo, j6gforce, jpmimpct_state, empty_init, ROT0, "JPM", "G Force (JPM) (IMPACT) (set 4, Whitbread)", GAME_FLAGS )
-GAME( 199?, j6gforced, j6gforce, impact_nonvideo, j6gforce, jpmimpct_state, empty_init, ROT0, "JPM", "G Force (JPM) (IMPACT) (set 5)", GAME_FLAGS )
+GAME( 199?, j6gforce, 0, impact_nonvideo, j6gforce, jpmimpct_state, empty_init, ROT0, "JPM", "G Force Roller Coaster (JPM) (IMPACT) (set 1)", GAME_FLAGS )
+GAME( 199?, j6gforcea, j6gforce, impact_nonvideo, j6gforcea,jpmimpct_state, empty_init, ROT0, "JPM", "G Force Roller Coaster (JPM) (IMPACT) (set 2)", GAME_FLAGS )
+GAME( 199?, j6gforceb, j6gforce, impact_nonvideo, j6gforce, jpmimpct_state, empty_init, ROT0, "JPM", "G Force Roller Coaster (JPM) (IMPACT) (set 3)", GAME_FLAGS )
+GAME( 199?, j6gforcec, j6gforce, impact_nonvideo, j6gforce, jpmimpct_state, empty_init, ROT0, "JPM", "G Force Roller Coaster (JPM) (IMPACT) (set 4, Whitbread)", GAME_FLAGS )
+GAME( 199?, j6gforced, j6gforce, impact_nonvideo, j6gforce, jpmimpct_state, empty_init, ROT0, "JPM", "G Force Roller Coaster (JPM) (IMPACT) (set 5)", GAME_FLAGS )
GAMEL( 199?, j6gidogh, 0, impact_nonvideo, j6gidogh, jpmimpct_state, empty_init, ROT0, "Ace", "G.I. Dough (Ace) (IMPACT)", GAME_FLAGS, layout_j6gidogh )
diff --git a/src/mame/includes/jpmimpct.h b/src/mame/includes/jpmimpct.h
index ee65a5d46ee..71b32e0f448 100644
--- a/src/mame/includes/jpmimpct.h
+++ b/src/mame/includes/jpmimpct.h
@@ -78,6 +78,12 @@ public:
DECLARE_INPUT_CHANGED_MEMBER(coin_changed);
template <unsigned N> DECLARE_READ_LINE_MEMBER( coinsense_r ) { return (m_coinstate >> N) & 1; }
+ DECLARE_READ_LINE_MEMBER(hopper_b_0_r);
+ DECLARE_READ_LINE_MEMBER(hopper_b_3_r);
+ DECLARE_READ_LINE_MEMBER(hopper_c_4_r);
+ DECLARE_READ_LINE_MEMBER(hopper_c_6_r);
+ DECLARE_READ_LINE_MEMBER(hopper_c_7_r);
+
protected:
void impact_nonvideo_base(machine_config &config);
@@ -121,7 +127,6 @@ private:
void volume_w(offs_t offset, uint16_t data, uint16_t mem_mask = ~0);
void upd7759_w(offs_t offset, uint16_t data, uint16_t mem_mask = ~0);
uint16_t upd7759_r(offs_t offset, uint16_t mem_mask = ~0);
- uint8_t hopper_b_r();
uint8_t hopper_c_r();
void payen_a_w(uint8_t data);
void display_c_w(uint8_t data);