summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/misc/goldnpkr.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/misc/goldnpkr.cpp')
-rw-r--r--src/mame/misc/goldnpkr.cpp1887
1 files changed, 1389 insertions, 498 deletions
diff --git a/src/mame/misc/goldnpkr.cpp b/src/mame/misc/goldnpkr.cpp
index 1bb2b35f975..d52a9ab579c 100644
--- a/src/mame/misc/goldnpkr.cpp
+++ b/src/mame/misc/goldnpkr.cpp
@@ -10,150 +10,163 @@
Games running on this hardware:
- * Golden Poker Double Up (Big Boy), 1981, Bonanza Enterprises, Ltd.
- * Golden Poker Double Up (Mini Boy), 1981, Bonanza Enterprises, Ltd.
- * Golden Poker Double Up (bootleg, set 1), 198?, Bootleg.
- * Golden Poker Double Up (bootleg, set 2), 198?, Bootleg.
- * Golden Poker Double Up (bootleg, set 3), 1983, Intercoast (bootleg).
- * Golden Poker Double Up (bootleg, set 4), 1983, Intercoast (bootleg).
- * Videotron Poker (cards selector, set 1), 198?, Unknown.
- * Videotron Poker (cards selector, set 2), 198?, Unknown.
- * Videotron Poker (normal controls), 198?, Unknown.
- * Jack Potten's Poker (set 1), 198?, Bootleg.
- * Jack Potten's Poker (set 2), 198?, Bootleg in Coinmaster H/W.
- * Jack Potten's Poker (set 3), 198?, Bootleg.
- * Jack Potten's Poker (set 4), 198?, Bootleg.
- * Jack Potten's Poker (set 5), 198?, Bootleg.
- * Jack Potten's Poker (set 6), 198?, Bootleg.
- * Jack Potten's Poker (set 7, Royale GFX), 198?, Bootleg.
- * Jack Potten's Poker (set 8, Australian), 198?, Bootleg.
- * Jack Potten's Poker (set 9, 'just 4 fun'), 198?, Bootleg.
- * Jack Potten's Poker (set 10, ICP-1 PCB), 198?, Bootleg.
- * Jack Potten's Poker (set 11, German, W.W.), 198?, Bootleg.
- * Jack Potten's Poker (set 12, no Double-Up), 198?, Bootleg.
- * Jack Potten's Poker (set 13, ICP-1 PCB), 198?, Bootleg.
- * Jack Potten's Poker (NGold, set 1), 198?, Unknown.
- * Jack Potten's Poker (NGold, set 2), 198?, Unknown.
- * Jack Potten's Poker (NGold, set 3), 198?, Unknown.
- * Buena Suerte (Spanish, set 1), 1990, Unknown.
- * Buena Suerte (Spanish, set 2), 1991, Unknown.
- * Buena Suerte (Spanish, set 3), 1991, Unknown.
- * Buena Suerte (Spanish, set 4), 1991, Unknown.
- * Buena Suerte (Spanish, set 5), 1991, Unknown.
- * Buena Suerte (Spanish, set 6), 1991, Unknown.
- * Buena Suerte (Spanish, set 7), 1991, Unknown.
- * Buena Suerte (Spanish, set 8), 1991, Unknown.
- * Buena Suerte (Spanish, set 9), 1991, Unknown.
- * Buena Suerte (Spanish, set 10), 1991, Unknown.
- * Buena Suerte (Spanish, set 11), 1991, Unknown.
- * Buena Suerte (Spanish, set 12), 1991, Unknown.
- * Buena Suerte (Spanish, set 13), 1991, Unknown.
- * Buena Suerte (Spanish, set 14), 1991, Unknown.
- * Buena Suerte (Spanish, set 15), 1991, Unknown.
- * Buena Suerte (Spanish, set 16), 1991, Unknown.
- * Buena Suerte (Spanish, set 17), 1991, Unknown.
- * Buena Suerte (Spanish, set 18), 1991, Unknown.
- * Buena Suerte (Spanish, set 19), 1991, Unknown.
- * Buena Suerte (Spanish, set 20), 1991, Unknown.
- * Buena Suerte (Spanish, set 21), 1991, Unknown.
- * Buena Suerte (Spanish, set 22), 1991, Unknown.
- * Buena Suerte (Spanish/Portuguese, set 23), 1991, Unknown.
- * Good Luck, 198?, Unknown.
- * Falcons Wild - World Wide Poker, 1983, Falcon.
- * Falcons Wild - World Wide Poker (VK set 1), 1990, Video Klein.
- * Falcons Wild - World Wide Poker (VK set 2), 1990, Video Klein.
- * Falcons Wild - Wild Card 1991, 1991, TVG.
- * Super 21, 1987, Public MNG.
- * Witch Card (Video Klein CPU box, set 1), 1991, Video Klein.
- * Witch Card (Video Klein CPU box, set 2), 1991, Video Klein.
- * Witch Card (Spanish, witch game, set 1), 1991, Unknown.
- * Witch Card (Spanish, witch game, set 2), 1991, Unknown.
- * Witch Card (English, no witch game), 1991, Unknown.
- * Witch Card (German, WC3050, set 1 ), 1994, Proma.
- * Witch Card (English, witch game, lamps), 1985, PM / Beck Elektronik.
- * Witch Card (Falcon, enhanced sound), 199?, Falcon.
- * Witch Card (German, WC3050, set 2 ), 1994, Proma.
- * Witch Card (German, WC3050, 27-4-94), 1994, Proma.
- * Witch Card (ICP-1, encrypted), 199?, Unknown.
- * Witch Game (Video Klein, set 1), 1991, Video Klein.
- * Witch Game (Video Klein, set 2), 1991, Video Klein.
- * Joker Card (witch game), 199?, Unknown.
- * Jolli Witch (Export, 6T/12T ver 1.57D), 1994, Video Klein?.
- * Wild Witch (Export, 6T/12T ver 1.57-SP), 1992-2001, Video Klein.
- * Wild Witch (Export, 6T/12T ver 1.57-TE), 1992-2001, Video Klein.
- * Wild Witch (Export, 6T/12T ver 1.62A), 1992-2001, Video Klein.
- * Wild Witch (Export, 6T/12T ver 1.62B), 1992-2001, Video Klein.
- * Wild Witch (Export, 6T/12T ver 1.62A-F), 1992-2001, Video Klein.
- * Wild Witch (Export, 6T/12T ver 1.62A alt), 1992-2001, Video Klein.
- * Wild Witch (Export, 6T/12T ver 1.62B alt), 1992-2001, Video Klein.
- * Wild Witch (Export, 6T/12T ver 1.65A), 1992-2001, Video Klein.
- * Wild Witch (Export, 6T/12T ver 1.65A-S), 1992-2001, Video Klein.
- * Wild Witch (Export, 6T/12T ver 1.65A-S alt), 1992-2001, Video Klein.
- * Wild Witch (Export, 6T/12T ver 1.65A-N), 1992-2001, Video Klein.
- * Wild Witch (Export, 6T/12T ver 1.70A beta), 1992-2001, Video Klein.
- * Wild Witch (Export, 6T/12T ver 1.70A), 1992-2001, Video Klein.
- * Wild Witch (Export, 6T/12T ver 1.70A alt), 1992-2001, Video Klein.
- * Wild Witch (Export, 6T/12T ver 1.74A-SP-BELG), 1992-2001, Video Klein.
- * Wild Witch (Export, 6T/12T ver 1.74A), 1992-2001, Video Klein.
- * Wild Witch (Export, 6T/12T ver 1.74A alt), 1992-2001, Video Klein.
- * Wild Witch (Export, 6B/12B ver 1.75A-E English), 1992-2001, Video Klein.
- * Wild Witch (Export, 6T/12T ver 1.76A), 1992-2001, Video Klein.
- * Wild Witch (Export, 6T/12T ver 1.77A), 1992-2001, Video Klein.
- * Wild Witch (Export, 6T/12T ver 1.79A), 1992-2001, Video Klein.
- * Wild Witch (Export, 6T/12T ver 1.83A), 1992-2001, Video Klein.
- * Wild Witch (Export, 6T/12T ver 1.84A), 1992-2001, Video Klein.
- * Witch Up & Down (Export, 6T/12T ver 0.99, set 1), 1998, Video Klein.
- * Witch Up & Down (Export, 6T/12T ver 0.99, set 2), 1998, Video Klein.
- * Witch Up & Down (Export, 6T/12T ver 0.99, set 3), 1998, Video Klein.
- * Witch Up & Down (Export, 6T/12T ver 0.99T), 1998, Video Klein.
- * Witch Up & Down (Export, 6T/12T ver 1.02), 1998, Video Klein.
- * Witch Strike (Export, 6T/12T ver 1.01A), 1992, Video Klein.
- * Witch Strike (Export, 6T/12T ver 1.01B), 1992, Video Klein.
- * Witch Jack (Export, 6T/12T ver 0.40), 1992-1996, Video Klein.
- * Witch Jack (Export, 6T/12T ver 0.40T), 1992-1996, Video Klein.
- * Witch Jack (Export, 6T/12T ver 0.62), 1992-1996, Video Klein.
- * Witch Jack (Export, 6T/12T ver 0.64), 1992-1996, Video Klein.
- * Witch Jack (Export, 6T/12T ver 0.65), 1992-1996, Video Klein.
- * Witch Jack (Export, 6T/12T ver 0.70S), 1992-1996, Video Klein.
- * Witch Jack (Export, 6T/12T ver 0.70P), 1992-1996, Video Klein.
- * Witch Jack (Export, 6T/12T ver 0.87), 1992-1996, Video Klein.
- * Witch Jack (Export, 6T/12T ver 0.87-88), 1992-1996, Video Klein.
- * Witch Jack (Export, 6T/12T ver 0.87-89), 1992-1996, Video Klein.
- * Witch Jackpot (Export, 6T/12T ver 0.25), 1992-1996, Video Klein.
- * PlayMan Poker (German), 1981, PM / Beck Elektronik.
- * Casino Poker (Ver PM86LO-35-5, German), 1987, PM / Beck Elektronik.
- * Casino Poker (Ver PM86-35-1, German), 1986, PM / Beck Elektronik.
- * Casino Poker (Ver PM88-01-21, German), 1988, PM / Beck Elektronik.
- * Royale (set 1), 198?, Unknown.
- * Royale (set 2), 198?, Unknown.
- * Super Loco 93 (Spanish, set 1), 1993, Unknown.
- * Super Loco 93 (Spanish, set 2), 1993, Unknown.
- * Maverik, 198?, Unknown.
- * Brasil 86, 1986, Unknown.
- * Brasil 87, 1987, Unknown.
- * Brasil 89 (set 1), 1989, Unknown.
- * Brasil 89 (set 2), 1989, Unknown.
- * Brasil 93, 1993, Unknown.
- * Poker 91, 1991, Unknown.
- * Genie (ICP-1, set 1), 198?, Video Fun Games Ltd.
- * Genie (ICP-1, set 2), 198?, Unknown.
- * Silver Game, 1983, Unknown.
- * Silver Game, 1983, Unknown.
- * Bonus Poker, 1984, Galanthis Inc.
- * "Unknown French poker game", 198?, Unknown.
- * "Unknown encrypted poker game", 198?, Unknown.
- * "Good Luck! poker (Sisteme France)", 198?, Sisteme France.
- * Bonne Chance! (Golden Poker prequel HW, set 1), 198?, Unknown.
- * Bonne Chance! (Golden Poker prequel HW, set 2), 198?, Unknown.
- * Boa Sorte! (Golden Poker prequel HW), 198?, Unknown.
- * Mundial/Mondial (Italian/French), 1987, Unknown.
- * Super 98 (3-hands, ICP-1), 199?, Unknown.
- * unknown rocket/animal-themed poker, 199?, Unknown.
- * Le Super Pendu (V1, words set #1), 198?, Voyageur de L'Espace Inc..
- * Le Super Pendu (V1, words set #2), 198?, Voyageur de L'Espace Inc..
- * Mega Double Poker (conversion kit, set 1), 1990, Blitz System Inc.
- * Mega Double Poker (conversion kit, set 2), 1990, Blitz System Inc.
- * Maxi Double Poker (version 1.8), 1990, Blitz System Inc.
+ * Golden Poker Double Up (Big Boy), 1981, Bonanza Enterprises, Ltd.
+ * Golden Poker Double Up (Mini Boy), 1981, Bonanza Enterprises, Ltd.
+ * Golden Poker Double Up (bootleg, set 1), 198?, Bootleg.
+ * Golden Poker Double Up (bootleg, set 2), 198?, Bootleg.
+ * Golden Poker Double Up (bootleg, set 3), 1983, Intercoast (bootleg).
+ * Golden Poker Double Up (bootleg, set 4), 1983, Intercoast (bootleg).
+ * Golden Poker Double Up (bootleg, set 5), 198?, Bootleg.
+ * Golden Poker Double Up (tearoom*sara hack), 1981, Bonanza Enterprises, Ltd.
+ * Videotron Poker (cards selector, set 1), 198?, Unknown.
+ * Videotron Poker (cards selector, set 2), 198?, Unknown.
+ * Videotron Poker (normal controls), 198?, Unknown.
+ * Jack Potten's Poker (set 1), 198?, Bootleg.
+ * Jack Potten's Poker (set 2), 198?, Bootleg in Coinmaster H/W.
+ * Jack Potten's Poker (set 3), 198?, Bootleg.
+ * Jack Potten's Poker (set 4), 198?, Bootleg.
+ * Jack Potten's Poker (set 5), 198?, Bootleg.
+ * Jack Potten's Poker (set 6), 198?, Bootleg.
+ * Jack Potten's Poker (set 7, Royale GFX), 198?, Bootleg.
+ * Jack Potten's Poker (set 8, Australian), 198?, Bootleg.
+ * Jack Potten's Poker (set 9, 'just 4 fun'), 198?, Bootleg.
+ * Jack Potten's Poker (set 10, ICP-1 PCB), 198?, Bootleg.
+ * Jack Potten's Poker (set 11, German, W.W.), 198?, Bootleg.
+ * Jack Potten's Poker (set 12, no Double-Up), 198?, Bootleg.
+ * Jack Potten's Poker (set 13, ICP-1 PCB), 198?, Unknown.
+ * Jack Potten's Poker (set 14, ICP-1 PCB), 198?, Bootleg.
+ * Jack Potten's Poker (set 15, w/fever, ICP-1 PCB), 198?, Bootleg (PED).
+ * Jack Potten's Poker (set 16, ICP-1 PCB), 1987, Bootleg (PED).
+ * Jack Potten's Poker (set 17, ICP-1 PCB), 1987, Bootleg (PED).
+ * Jack Potten's Poker (NGold, set 1), 198?, Unknown.
+ * Jack Potten's Poker (NGold, set 2), 198?, Unknown.
+ * Jack Potten's Poker (NGold, set 3), 198?, Unknown.
+ * Amstar Draw Poker, 198?, Amstar?
+ * Buena Suerte (Spanish, set 1), 1990, Unknown.
+ * Buena Suerte (Spanish, set 2), 1991, Unknown.
+ * Buena Suerte (Spanish, set 3), 1991, Unknown.
+ * Buena Suerte (Spanish, set 4), 1991, Unknown.
+ * Buena Suerte (Spanish, set 5), 1991, Unknown.
+ * Buena Suerte (Spanish, set 6), 1991, Unknown.
+ * Buena Suerte (Spanish, set 7), 1991, Unknown.
+ * Buena Suerte (Spanish, set 8), 1991, Unknown.
+ * Buena Suerte (Spanish, set 9), 1991, Unknown.
+ * Buena Suerte (Spanish, set 10), 1991, Unknown.
+ * Buena Suerte (Spanish, set 11), 1991, Unknown.
+ * Buena Suerte (Spanish, set 12), 1991, Unknown.
+ * Buena Suerte (Spanish, set 13), 1991, Unknown.
+ * Buena Suerte (Spanish, set 14), 1991, Unknown.
+ * Buena Suerte (Spanish, set 15, Prodel PCB), 1991, Unknown.
+ * Buena Suerte (Spanish, set 16), 1991, Unknown.
+ * Buena Suerte (Spanish, set 17), 1991, Unknown.
+ * Buena Suerte (Spanish, set 18), 1991, Unknown.
+ * Buena Suerte (Spanish, set 19), 1991, Unknown.
+ * Buena Suerte (Spanish, set 20), 1991, Unknown.
+ * Buena Suerte (Spanish, set 21), 1991, Unknown.
+ * Buena Suerte (Spanish, set 22), 1991, Unknown.
+ * Buena Suerte (Spanish/Portuguese, set 23), 1991, Unknown.
+ * Good Luck, 198?, Unknown.
+ * Falcons Wild - Wild Card 1991 (TVG), 1991, TVG.
+ * Falcons Wild - World Wide Poker (VK set 1), 1990, Video Klein.
+ * Falcons Wild - World Wide Poker (VK set 2), 1990, Video Klein.
+ * Falcons Wild - World Wide Poker (Falcon original, protected), 1983, Falcon.
+ * Falcons Wild - World Wide Poker (Falcon original), 1983, Falcon.
+ * Witch Card (Video Klein CPU box, set 1), 1991, Video Klein.
+ * Witch Card (Video Klein CPU box, set 2), 1991, Video Klein.
+ * Witch Card (Spanish, witch game, set 1), 1991, Unknown.
+ * Witch Card (Spanish, witch game, set 2), 1991, Unknown.
+ * Witch Card (English, no witch game), 1991, Unknown.
+ * Witch Card (German, WC3050, set 1 ), 1994, Proma.
+ * Witch Card (English, witch game, lamps), 1985, PM / Beck Elektronik.
+ * Witch Card (Falcon, enhanced sound), 199?, Falcon.
+ * Witch Card (German, WC3050, set 2 ), 1994, Proma.
+ * Witch Card (German, WC3050, 27-4-94), 1994, Proma.
+ * Witch Card (ICP-1, encrypted), 199?, Unknown.
+ * Witch Game (Video Klein, set 1), 1991, Video Klein.
+ * Witch Game (Video Klein, set 2), 1991, Video Klein.
+ * Joker Card (witch game), 199?, Unknown.
+ * Jolli Witch (Export, 6T/12T ver 1.57D), 1994, Video Klein?.
+ * Wild Witch (Export, 6T/12T ver 1.57-SP), 1992-2001, Video Klein.
+ * Wild Witch (Export, 6T/12T ver 1.57-TE), 1992-2001, Video Klein.
+ * Wild Witch (Export, 6T/12T ver 1.62A), 1992-2001, Video Klein.
+ * Wild Witch (Export, 6T/12T ver 1.62B), 1992-2001, Video Klein.
+ * Wild Witch (Export, 6T/12T ver 1.62A-F), 1992-2001, Video Klein.
+ * Wild Witch (Export, 6T/12T ver 1.62A alt), 1992-2001, Video Klein.
+ * Wild Witch (Export, 6T/12T ver 1.62B alt), 1992-2001, Video Klein.
+ * Wild Witch (Export, 6T/12T ver 1.65A), 1992-2001, Video Klein.
+ * Wild Witch (Export, 6T/12T ver 1.65A-S), 1992-2001, Video Klein.
+ * Wild Witch (Export, 6T/12T ver 1.65A-S alt), 1992-2001, Video Klein.
+ * Wild Witch (Export, 6T/12T ver 1.65A-N), 1992-2001, Video Klein.
+ * Wild Witch (Export, 6T/12T ver 1.70A beta), 1992-2001, Video Klein.
+ * Wild Witch (Export, 6T/12T ver 1.70A), 1992-2001, Video Klein.
+ * Wild Witch (Export, 6T/12T ver 1.70A alt), 1992-2001, Video Klein.
+ * Wild Witch (Export, 6T/12T ver 1.74A-SP-BELG), 1992-2001, Video Klein.
+ * Wild Witch (Export, 6T/12T ver 1.74A), 1992-2001, Video Klein.
+ * Wild Witch (Export, 6T/12T ver 1.74A alt), 1992-2001, Video Klein.
+ * Wild Witch (Export, 6B/12B ver 1.75A-E English), 1992-2001, Video Klein.
+ * Wild Witch (Export, 6T/12T ver 1.76A), 1992-2001, Video Klein.
+ * Wild Witch (Export, 6T/12T ver 1.77A), 1992-2001, Video Klein.
+ * Wild Witch (Export, 6T/12T ver 1.79A), 1992-2001, Video Klein.
+ * Wild Witch (Export, 6T/12T ver 1.83A), 1992-2001, Video Klein.
+ * Wild Witch (Export, 6T/12T ver 1.84A), 1992-2001, Video Klein.
+ * Witch Up & Down (Export, 6T/12T ver 0.99, set 1), 1998, Video Klein.
+ * Witch Up & Down (Export, 6T/12T ver 0.99, set 2), 1998, Video Klein.
+ * Witch Up & Down (Export, 6T/12T ver 0.99, set 3), 1998, Video Klein.
+ * Witch Up & Down (Export, 6T/12T ver 0.99T), 1998, Video Klein.
+ * Witch Up & Down (Export, 6T/12T ver 1.02), 1998, Video Klein.
+ * Witch Strike (Export, 6T/12T ver 1.01A), 1992, Video Klein.
+ * Witch Strike (Export, 6T/12T ver 1.01B), 1992, Video Klein.
+ * Witch Jack (Export, 6T/12T ver 0.40), 1992-1996, Video Klein.
+ * Witch Jack (Export, 6T/12T ver 0.40T), 1992-1996, Video Klein.
+ * Witch Jack (Export, 6T/12T ver 0.62), 1992-1996, Video Klein.
+ * Witch Jack (Export, 6T/12T ver 0.64), 1992-1996, Video Klein.
+ * Witch Jack (Export, 6T/12T ver 0.65), 1992-1996, Video Klein.
+ * Witch Jack (Export, 6T/12T ver 0.70S), 1992-1996, Video Klein.
+ * Witch Jack (Export, 6T/12T ver 0.70P), 1992-1996, Video Klein.
+ * Witch Jack (Export, 6T/12T ver 0.87), 1992-1996, Video Klein.
+ * Witch Jack (Export, 6T/12T ver 0.87-88), 1992-1996, Video Klein.
+ * Witch Jack (Export, 6T/12T ver 0.87-89), 1992-1996, Video Klein.
+ * Witch Jackpot (Export, 6T/12T ver 0.25), 1992-1996, Video Klein.
+ * PlayMan Poker (German), 1981, PM / Beck Elektronik.
+ * Casino Poker (Ver PM86LO-35-5, German), 1987, PM / Beck Elektronik.
+ * Casino Poker (Ver PM86-35-1, German), 1986, PM / Beck Elektronik.
+ * Casino Poker (Ver PM88-01-21, German), 1988, PM / Beck Elektronik.
+ * Royale (set 1), 198?, Unknown.
+ * Royale (set 2), 198?, Unknown.
+ * Super Loco 93 (Spanish, set 1), 1993, Unknown.
+ * Super Loco 93 (Spanish, set 2), 1993, Unknown.
+ * Maverik, 198?, Unknown.
+ * Brasil 86, 1986, Unknown.
+ * Brasil 87, 1987, Unknown.
+ * Brasil 89 (set 1), 1989, Unknown.
+ * Brasil 89 (set 2), 1989, Unknown.
+ * Brasil 93, 1993, Unknown.
+ * Poker 91, 1991, Unknown.
+ * Genie (ICP-1, set 1), 198?, Video Fun Games Ltd.
+ * Genie (ICP-1, set 2), 198?, Unknown.
+ * Silver Game, 1983, Unknown.
+ * Bonus Poker, 1984, Galanthis Inc.
+ * Joker Bonus, 198?, Unknown.
+ * "Unknown French poker game", 198?, Unknown.
+ * "Super Double (French)", 198?, Karateco.
+ * "Good Luck! poker (Sisteme France)", 198?, Sisteme France.
+ * Mundial/Mondial (Italian/French), 1987, Unknown.
+ * Bonne Chance! (Golden Poker prequel HW, set 1), 198?, Unknown.
+ * Bonne Chance! (Golden Poker prequel HW, set 2), 198?, Unknown.
+ * Boa Sorte! (Golden Poker prequel HW), 198?, Unknown.
+ * Super 98 (3-hands, ICP-1), 199?, Unknown.
+ * unknown rocket/animal-themed poker, 199?, Unknown.
+ * Super 21, 1987, Public MNG.
+ * Open 5 Cards, 1987, MNG.
+ * Le Super Pendu (V1, words set #1), 198?, Voyageur de L'Espace Inc..
+ * Le Super Pendu (V1, words set #2), 198?, Voyageur de L'Espace Inc..
+ * Roulette (ICP-1 PCB), 198?, Unknown.
+ * Mega Double Poker (conversion kit, set 1), 1990, Blitz System Inc.
+ * Mega Double Poker (conversion kit, set 2), 1990, Blitz System Inc.
+ * Maxi Double Poker (version 1.8), 1990, Blitz System Inc.
+ * Wild Card (Olympic Games, v2.0), 1989, Olympic Video Gaming PTY LTD.
+ * Black jack (Olympic Games, v5.04, upgrade for WC), 1989, Olympic Video Gaming PTY LTD.
+
************************************************************************************
@@ -546,6 +559,45 @@
The game needs ~25 seconds to check all the things to start.
+ * Roulette (ICP-1 PCB)
+
+ This game runs on ICP-1 platform, consisting of a 6502 CPU, two 6821 PIAs for I/O,
+ a 6845 CRTC for video, and discrete electronics for sound. The game features robust
+ protection through NVRAM registers and a password-like input sequence, which can be
+ configured and is requested upon each reboot. The password consists of 5 inputs,
+ with repetitions allowed. The password length is fixed.
+
+ Password Configuration and Booting Instructions...
+
+ - How to Set the Password:
+
+ 1) Press and hold the PROGRAM key (key 9) while turning on or resetting the machine.
+ (The word 'TESTING' will be displayed on the screen)
+ 2) Enter the first desired input of the password, then press DOWN to confirm the choice.
+ 3) Enter the second desired input of the password, then press DOWN to confirm the choice.
+ 4) Enter the third desired input of the password, then press DOWN to confirm the choice.
+ 5) Enter the fourth desired input of the password, then press DOWN to confirm the choice.
+ 6) Enter the fifth desired input of the password, then press DOWN to confirm the choice.
+
+ Note: Each input entered will be displayed on the screen.
+
+
+ - How to Boot with Password:
+
+ 1) Press the CREDITS key (key 5) once.
+ 2) Enter the first input of the password, then press DOWN to confirm the choice.
+ 3) Enter the second input of the password, then press DOWN to confirm the choice.
+ 4) Enter the third input of the password, then press DOWN to confirm the choice.
+ 5) Enter the fourth input of the password, then press DOWN to confirm the choice.
+ 6) Enter the fifth input of the password, then press DOWN to confirm the choice.
+
+
+ The default NVRAM has a pre-set password (all BUTTON1). To boot the game with the
+ default password, enter the following sequence:
+
+ 5 -> CTRL -> DOWN -> CTRL -> DOWN -> CTRL -> DOWN -> CTRL -> DOWN -> CTRL -> DOWN
+
+
************************************************************************************
@@ -969,7 +1021,7 @@
TODO:
- Missing PIA connections.
- - Final cleanup and split the driver.
+ - Final cleanup.
************************************************************************************/
@@ -984,6 +1036,7 @@
#include "machine/bankdev.h"
#include "machine/nvram.h"
#include "machine/segacrpt_device.h"
+#include "machine/ticket.h"
#include "machine/timekpr.h"
#include "sound/ay8910.h"
#include "sound/discrete.h"
@@ -996,6 +1049,7 @@
#include "pmpoker.lh"
#include "goldnpkr.lh"
+#include "goldnswp.lh"
#include "upndown.lh"
#include "lespendu.lh"
@@ -1020,12 +1074,14 @@ public:
m_discrete(*this, "discrete"),
m_videoram(*this, "videoram"),
m_colorram(*this, "colorram"),
+ m_hopper(*this, "hopper"),
m_ay8910(*this, "ay8910"),
m_lamps(*this, "lamp%u", 0U)
{ }
void wildcard(machine_config &config);
void wildcrdb(machine_config &config);
+ void wildcrde(machine_config &config);
void witchcrd(machine_config &config);
void mondial(machine_config &config);
void wcfalcon(machine_config &config);
@@ -1036,10 +1092,13 @@ public:
void witchcdj(machine_config &config);
void wcrdxtnd(machine_config &config);
void super21p(machine_config &config);
+ void op5cards(machine_config &config);
void caspoker(machine_config &config);
void icp_ext(machine_config &config);
void gldnirq0(machine_config &config);
void lespendu(machine_config &config);
+ void icproul(machine_config &config);
+ void glfever(machine_config &config);
void init_vkdlswwh();
void init_icp1db();
@@ -1065,6 +1124,9 @@ public:
void init_pokersis();
void init_lespendu();
void init_lespenduj();
+ void init_op5cards();
+ void init_olym65();
+ void init_glfev();
uint8_t pottnpkr_mux_port_r();
void lamps_a_w(uint8_t data);
@@ -1078,7 +1140,7 @@ public:
protected:
virtual void machine_start() override { m_lamps.resolve(); }
- virtual void video_start() override;
+ virtual void video_start() override ATTR_COLD;
void goldnpkr_videoram_w(offs_t offset, uint8_t data);
void goldnpkr_colorram_w(offs_t offset, uint8_t data);
@@ -1095,6 +1157,7 @@ protected:
required_device<palette_device> m_palette;
optional_device<discrete_device> m_discrete;
+
private:
uint8_t goldnpkr_mux_port_r();
void mux_port_w(uint8_t data);
@@ -1114,27 +1177,30 @@ private:
DECLARE_MACHINE_RESET(mondial);
DECLARE_MACHINE_RESET(lespendu);
- void genie_map(address_map &map);
- void goldnpkr_map(address_map &map);
- void mondial_map(address_map &map);
- void witchcdj_map(address_map &map);
- void pottnpkr_map(address_map &map);
- void wcrdxtnd_map(address_map &map);
- void wildcard_map(address_map &map);
- void wildcrdb_map(address_map &map);
- void wildcrdb_mcu_io_map(address_map &map);
- void wildcrdb_mcu_map(address_map &map);
- void wildcrdb_mcu_decrypted_opcodes_map(address_map &map);
- void witchcrd_falcon_map(address_map &map);
- void witchcrd_map(address_map &map);
- void super21p_map(address_map &map);
- void icp_ext_map(address_map &map);
- void lespendu_map(address_map &map);
+ void genie_map(address_map &map) ATTR_COLD;
+ void goldnpkr_map(address_map &map) ATTR_COLD;
+ void mondial_map(address_map &map) ATTR_COLD;
+ void witchcdj_map(address_map &map) ATTR_COLD;
+ void pottnpkr_map(address_map &map) ATTR_COLD;
+ void wcrdxtnd_map(address_map &map) ATTR_COLD;
+ void wildcard_map(address_map &map) ATTR_COLD;
+ void wildcrdb_map(address_map &map) ATTR_COLD;
+ void wildcrdb_mcu_io_map(address_map &map) ATTR_COLD;
+ void wildcrdb_mcu_map(address_map &map) ATTR_COLD;
+ void wildcrdb_mcu_decrypted_opcodes_map(address_map &map) ATTR_COLD;
+ void witchcrd_falcon_map(address_map &map) ATTR_COLD;
+ void witchcrd_map(address_map &map) ATTR_COLD;
+ void super21p_map(address_map &map) ATTR_COLD;
+ void op5cards_map(address_map &map) ATTR_COLD;
+ void icp_ext_map(address_map &map) ATTR_COLD;
+ void lespendu_map(address_map &map) ATTR_COLD;
+ void glfever_map(address_map &map) ATTR_COLD;
required_shared_ptr<uint8_t> m_videoram;
required_shared_ptr<uint8_t> m_colorram;
+ optional_device<ticket_dispenser_device> m_hopper;
optional_device<ay8910_device> m_ay8910;
- output_finder<5> m_lamps;
+ output_finder<9> m_lamps;
tilemap_t *m_bg_tilemap = nullptr;
uint8_t m_mux_data = 0;
@@ -1163,8 +1229,8 @@ private:
void mcu_command_w(uint8_t data);
void mcu_portb_w(uint8_t data);
void mcu_portc_w(uint8_t data);
- void megadpkr_banked_map(address_map &map);
- void megadpkr_map(address_map &map);
+ void megadpkr_banked_map(address_map &map) ATTR_COLD;
+ void megadpkr_map(address_map &map) ATTR_COLD;
required_region_ptr<uint8_t> m_cpubank;
@@ -1492,7 +1558,15 @@ uint8_t goldnpkr_state::pottnpkr_mux_port_r()
void goldnpkr_state::mux_w(uint8_t data)
{
- m_mux_data = data ^ 0xff; // inverted
+ m_mux_data = data ^ 0xf0; // inverted
+
+ // bit 0 - bit 1 -> Hopper
+ m_hopper->motor_w(BIT(~data, 0) && BIT(~data, 1));
+
+ m_lamps[5] = !BIT(data, 0); // hopper motor 1
+ m_lamps[6] = !BIT(data, 1); // hopper motor 2
+ m_lamps[7] = !BIT(data, 2); // diverter
+ m_lamps[8] = !BIT(data, 3); // coin lockout
}
void goldnpkr_state::lespendu_mux_w(uint8_t data)
@@ -1875,6 +1949,63 @@ void goldnpkr_state::lespendu_map(address_map &map)
map(0x6000, 0x7fff).rom();
}
+void goldnpkr_state::op5cards_map(address_map &map)
+{
+ map(0x0000, 0x07ff).ram().share("nvram"); // battery backed RAM
+ map(0x0800, 0x0800).w("crtc", FUNC(mc6845_device::address_w));
+ map(0x0801, 0x0801).rw("crtc", FUNC(mc6845_device::register_r), FUNC(mc6845_device::register_w));
+ map(0x0844, 0x0847).rw("pia0", FUNC(pia6821_device::read), FUNC(pia6821_device::write));
+ map(0x0848, 0x084b).rw("pia1", FUNC(pia6821_device::read), FUNC(pia6821_device::write));
+ map(0x1000, 0x13ff).ram().w(FUNC(goldnpkr_state::goldnpkr_videoram_w)).share("videoram");
+ map(0x1800, 0x1bff).ram().w(FUNC(goldnpkr_state::goldnpkr_colorram_w)).share("colorram");
+ map(0x2000, 0x2000).portr("SW2");
+ map(0xc000, 0xffff).rom();
+}
+
+void goldnpkr_state::glfever_map(address_map &map)
+{
+ map(0x0000, 0x07ff).ram().share("nvram"); // battery backed RAM
+ map(0x0800, 0x0800).w("crtc", FUNC(mc6845_device::address_w));
+ map(0x0801, 0x0801).rw("crtc", FUNC(mc6845_device::register_r), FUNC(mc6845_device::register_w));
+ map(0x0844, 0x0847).rw("pia0", FUNC(pia6821_device::read), FUNC(pia6821_device::write));
+ map(0x0848, 0x084b).rw("pia1", FUNC(pia6821_device::read), FUNC(pia6821_device::write));
+ map(0x1000, 0x13ff).ram().w(FUNC(goldnpkr_state::goldnpkr_videoram_w)).share("videoram");
+ map(0x1800, 0x1bff).ram().w(FUNC(goldnpkr_state::goldnpkr_colorram_w)).share("colorram");
+ map(0x2000, 0x2000).portr("SWA");
+ map(0x3000, 0x7fff).rom(); // base rom space
+ map(0xa000, 0xa000).portr("SWB");
+ map(0xf000, 0xffff).rom(); // extended rom space
+}
+
+
+void blitz_state::megadpkr_map(address_map &map)
+{
+ map(0x0000, 0x07ff).ram(); //.share("nvram"); // battery backed RAM
+ map(0x0800, 0x0800).w("crtc", FUNC(mc6845_device::address_w));
+ map(0x0801, 0x0801).rw("crtc", FUNC(mc6845_device::register_r), FUNC(mc6845_device::register_w));
+ map(0x0844, 0x0847).rw("pia0", FUNC(pia6821_device::read), FUNC(pia6821_device::write));
+ map(0x0848, 0x084b).rw("pia1", FUNC(pia6821_device::read), FUNC(pia6821_device::write));
+
+/* There is another set of PIAs controlled by the code.
+ Maybe they are just mirrors...
+
+ map(0x10f4, 0x10f7).rw("pia0", FUNC(pia6821_device::read), FUNC(pia6821_device::write));
+ map(0x10f8, 0x10fb).rw("pia1", FUNC(pia6821_device::read), FUNC(pia6821_device::write));
+*/
+ map(0x1000, 0x13ff).ram().w(FUNC(blitz_state::goldnpkr_videoram_w)).share("videoram");
+ map(0x1800, 0x1bff).ram().w(FUNC(blitz_state::goldnpkr_colorram_w)).share("colorram");
+
+ map(0x4000, 0x7fff).rw(m_bankdev, FUNC(address_map_bank_device::read8), FUNC(address_map_bank_device::write8));
+ map(0x8000, 0xbfff).nopr().w(FUNC(blitz_state::mcu_command_w));
+ map(0xc000, 0xffff).rom();
+}
+
+void blitz_state::megadpkr_banked_map(address_map &map)
+{
+ map(0x00000, 0x07fff).r(FUNC(blitz_state::cpubank_decrypt_r));
+ map(0x08000, 0x087ff).rw("timekpr", FUNC(m48t02_device::read), FUNC(m48t02_device::write));
+}
+
/*********************************************
* Input Ports *
@@ -1884,20 +2015,20 @@ static INPUT_PORTS_START( goldnpkr )
// Multiplexed - 4x5bits
PORT_START("IN0-0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_GAMBLE_BET )
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK ) PORT_NAME("Meters")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK ) PORT_NAME("Meters")
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_D_UP )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_DEAL ) PORT_NAME("Deal / Draw")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_DEAL ) PORT_NAME("Deal / Draw")
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_CANCEL )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN0-1")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT ) PORT_IMPULSE(3) PORT_NAME("Out (Manual Collect)")
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_PAYOUT ) PORT_NAME("Off (Payout)")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_READ_LINE_DEVICE_MEMBER("hopper", FUNC(ticket_dispenser_device::line_r))
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_TAKE )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_HIGH ) PORT_NAME("Big")
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Small")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_HIGH ) PORT_NAME("Big")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Small")
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -1914,7 +2045,7 @@ static INPUT_PORTS_START( goldnpkr )
PORT_START("IN0-3")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Learn Mode") PORT_CODE(KEYCODE_F2)
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("D-31") PORT_CODE(KEYCODE_E) // O.A.R? (D-31 in schematics)
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("D-31") PORT_CODE(KEYCODE_E) PORT_TOGGLE // O.A.R? (D-31 in schematics)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(3) PORT_NAME("Coupon (Note In)")
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(3) PORT_NAME("Coin In")
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_NAME("Weight (Coupon In)")
@@ -1934,14 +2065,52 @@ static INPUT_PORTS_START( goldnpkr )
PORT_DIPNAME( 0x20, 0x00, "50hz/60hz" ) PORT_DIPLOCATION("SW1:2")
PORT_DIPSETTING( 0x20, "50hz" )
PORT_DIPSETTING( 0x00, "60hz" )
- PORT_DIPNAME( 0x40, 0x00, "Payout Mode" ) PORT_DIPLOCATION("SW1:3") // listed in the manual as "Play Mode"
- PORT_DIPSETTING( 0x40, "Manual" ) // listed in the manual as "Out Play"
- PORT_DIPSETTING( 0x00, "Auto" ) // listed in the manual as "Credit Play"
+ PORT_DIPNAME( 0x40, 0x00, "Payout Mode" ) PORT_DIPLOCATION("SW1:3") // listed in the manual as "Play Mode"
+ PORT_DIPSETTING( 0x40, "Auto" ) // listed in the manual as "Out Play"
+ PORT_DIPSETTING( 0x00, "Manual" ) // listed in the manual as "Credit Play"
PORT_DIPNAME( 0x80, 0x00, "Royal Flush" ) PORT_DIPLOCATION("SW1:4")
PORT_DIPSETTING( 0x80, DEF_STR( No ) )
PORT_DIPSETTING( 0x00, DEF_STR( Yes ) )
INPUT_PORTS_END
+static INPUT_PORTS_START( jkrbonus )
+ PORT_INCLUDE( goldnpkr )
+
+ PORT_MODIFY("IN0-3")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Weight (Coupon In)") PORT_CODE(KEYCODE_H) PORT_TOGGLE
+
+ PORT_MODIFY("SW1")
+ PORT_DIPNAME( 0x20, 0x20, "50hz/60hz" ) PORT_DIPLOCATION("SW1:2")
+ PORT_DIPSETTING( 0x20, "50hz" )
+ PORT_DIPSETTING( 0x00, "60hz" )
+
+ PORT_START("SW2") // TODO: not hooked up
+ PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
+ PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) )
+ PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) )
+ PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) )
+ PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
+ PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
+ PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
+ PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
+ PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+INPUT_PORTS_END
+
static INPUT_PORTS_START( pmpoker )
// Multiplexed - 4x5bits
PORT_START("IN0-0")
@@ -1965,11 +2134,11 @@ static INPUT_PORTS_START( pmpoker )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN0-2")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_POKER_HOLD1 ) PORT_NAME("Hold 1 / Take Score (Kasse)")
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_POKER_HOLD2 ) PORT_NAME("Hold 2 / Small (Tief)")
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_POKER_HOLD3 ) PORT_NAME("Hold 3 / Bet (Setze)")
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_POKER_HOLD4 ) PORT_NAME("Hold 4 / Big (Hoch)")
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_HOLD5 ) PORT_NAME("Hold 5 / Double Up (Dopp.)")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_POKER_HOLD1 ) PORT_NAME("Hold 1 / Take Score (Kasse)")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_POKER_HOLD2 ) PORT_NAME("Hold 2 / Small (Tief)")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_POKER_HOLD3 ) PORT_NAME("Hold 3 / Bet (Setze)")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_POKER_HOLD4 ) PORT_NAME("Hold 4 / Big (Hoch)")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_HOLD5 ) PORT_NAME("Hold 5 / Double Up (Dopp.)")
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -2015,20 +2184,20 @@ static INPUT_PORTS_START( pottnpkr )
// Multiplexed - 4x5bits
PORT_START("IN0-0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_GAMBLE_BET )
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK ) PORT_NAME("Meters")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK ) PORT_NAME("Meters")
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_D_UP )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_DEAL ) PORT_NAME("Deal / Draw")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_DEAL ) PORT_NAME("Deal / Draw")
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_CANCEL )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN0-1")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT ) PORT_IMPULSE(3) PORT_NAME("Manual Collect")
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_PAYOUT )
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_READ_LINE_DEVICE_MEMBER("hopper", FUNC(ticket_dispenser_device::line_r))
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_TAKE )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_HIGH ) PORT_NAME("Big")
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Small")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_HIGH ) PORT_NAME("Big")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Small")
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -2047,8 +2216,9 @@ static INPUT_PORTS_START( pottnpkr )
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Settings") PORT_CODE(KEYCODE_F2)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_NAME("Coupon (Note In)")
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(3) PORT_NAME("Coin In")
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_NAME("Coin In") PORT_IMPULSE(3)
+//* PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Weight (Coupon In)") PORT_CODE(KEYCODE_H) PORT_TOGGLE
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -2073,10 +2243,9 @@ static INPUT_PORTS_START( pottnpkr )
PORT_DIPNAME( 0x20, 0x00, "50hz/60hz" ) PORT_DIPLOCATION("SW1:2")
PORT_DIPSETTING( 0x20, "50hz" )
PORT_DIPSETTING( 0x00, "60hz" )
- // listed in the manual as "Play Mode"
- PORT_DIPNAME( 0x40, 0x00, "Payout Mode" ) PORT_DIPLOCATION("SW1:3")
- PORT_DIPSETTING( 0x40, "Manual" ) // listed in the manual as "Out Play"
- PORT_DIPSETTING( 0x00, "Auto" ) // listed in the manual as "Credit Play"
+ PORT_DIPNAME( 0x40, 0x00, "Payout Mode" ) PORT_DIPLOCATION("SW1:3") // listed in the manual as "Play Mode"
+ PORT_DIPSETTING( 0x40, "Auto" ) // listed in the manual as "Out Play"
+ PORT_DIPSETTING( 0x00, "Manual" ) // listed in the manual as "Credit Play"
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:4")
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@@ -2086,20 +2255,20 @@ static INPUT_PORTS_START( potnpkra )
// Multiplexed - 4x5bits
PORT_START("IN0-0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(3)
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK ) PORT_NAME("Meters")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK ) PORT_NAME("Meters")
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_D_UP )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_DEAL ) PORT_NAME("Deal / Draw")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_DEAL ) PORT_NAME("Deal / Draw")
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_CANCEL )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN0-1")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_GAMBLE_PAYOUT ) PORT_IMPULSE(3) PORT_NAME("Manual Collect")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_READ_LINE_DEVICE_MEMBER("hopper", FUNC(ticket_dispenser_device::line_r))
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_TAKE )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_HIGH ) PORT_NAME("Big")
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Small")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_HIGH ) PORT_NAME("Big")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Small")
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -2115,11 +2284,11 @@ static INPUT_PORTS_START( potnpkra )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN0-3")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Settings") PORT_CODE(KEYCODE_F2)
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Settings") PORT_CODE(KEYCODE_F2)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_NAME("Note in")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_NAME("Note in")
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_BET )
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Weight (Coupon In)") PORT_CODE(KEYCODE_H) PORT_TOGGLE
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -2144,8 +2313,8 @@ static INPUT_PORTS_START( potnpkra )
PORT_DIPSETTING( 0x20, "250 by bet" )
PORT_DIPSETTING( 0x00, "500 by bet" )
PORT_DIPNAME( 0x40, 0x00, "Payout Mode" ) PORT_DIPLOCATION("SW1:3")
- PORT_DIPSETTING( 0x40, "Manual" )
- PORT_DIPSETTING( 0x00, "Auto" )
+ PORT_DIPSETTING( 0x40, "Auto" )
+ PORT_DIPSETTING( 0x00, "Manual" )
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:4")
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@@ -2154,21 +2323,21 @@ INPUT_PORTS_END
static INPUT_PORTS_START( animpkr )
// Multiplexed - 4x5bits
PORT_START("IN0-0")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(3) PORT_NAME("Coin 1 + Start")
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK ) PORT_NAME("Meters")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_NAME("Coin 1 + Start") PORT_IMPULSE(3)
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK ) PORT_NAME("Meters")
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_D_UP )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_DEAL ) PORT_NAME("Deal / Draw")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_DEAL ) PORT_NAME("Deal / Draw")
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_CANCEL )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("IN0-0 80") PORT_CODE(KEYCODE_G)
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("IN0-0 80") PORT_CODE(KEYCODE_G)
PORT_START("IN0-1")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT ) PORT_IMPULSE(3) PORT_NAME("Manual Collect")
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_PAYOUT )
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_READ_LINE_DEVICE_MEMBER("hopper", FUNC(ticket_dispenser_device::line_r))
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_TAKE )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_HIGH ) PORT_NAME("Big")
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Small")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_HIGH ) PORT_NAME("Big")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Small")
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
@@ -2184,11 +2353,11 @@ static INPUT_PORTS_START( animpkr )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START("IN0-3")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Settings") PORT_CODE(KEYCODE_F2)
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("IN0-3 02") PORT_CODE(KEYCODE_D)
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_NAME("Coin 2")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Settings") PORT_CODE(KEYCODE_F2)
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("IN0-3 02") PORT_CODE(KEYCODE_D)
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_NAME("Coin 2")
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_BET )
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("IN0-3 10") PORT_CODE(KEYCODE_F)
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("IN0-3 10") PORT_CODE(KEYCODE_F)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
@@ -2205,8 +2374,8 @@ static INPUT_PORTS_START( animpkr )
PORT_DIPSETTING( 0x20, "50hz" )
PORT_DIPSETTING( 0x00, "60hz" )
PORT_DIPNAME( 0x40, 0x00, "Payout Mode" ) PORT_DIPLOCATION("SW1:3")
- PORT_DIPSETTING( 0x40, "Manual" )
- PORT_DIPSETTING( 0x00, "Auto" )
+ PORT_DIPSETTING( 0x40, "Auto" )
+ PORT_DIPSETTING( 0x00, "Manual" )
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:4")
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@@ -2229,20 +2398,20 @@ static INPUT_PORTS_START( ngold )
// Multiplexed - 4x5bits
PORT_START("IN0-0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_GAMBLE_BET )
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK ) PORT_NAME("Meters")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK ) PORT_NAME("Meters")
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_D_UP )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_DEAL ) PORT_NAME("Deal / Draw")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_DEAL ) PORT_NAME("Deal / Draw")
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_CANCEL )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN0-1")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT ) PORT_IMPULSE(3) PORT_NAME("Manual Collect")
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_PAYOUT )
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_READ_LINE_DEVICE_MEMBER("hopper", FUNC(ticket_dispenser_device::line_r))
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_TAKE )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_HIGH ) PORT_NAME("Big")
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Small")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_HIGH ) PORT_NAME("Big")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Small")
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -2260,9 +2429,9 @@ static INPUT_PORTS_START( ngold )
PORT_START("IN0-3")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Settings") PORT_CODE(KEYCODE_F2)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(3) PORT_NAME("Coin In")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_NAME("Coin In") PORT_IMPULSE(3)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_NAME("Coupon (Note In)")
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Weight (Coupon In)") PORT_CODE(KEYCODE_H) PORT_TOGGLE
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -2287,10 +2456,9 @@ static INPUT_PORTS_START( ngold )
PORT_DIPNAME( 0x20, 0x00, "50hz/60hz" ) PORT_DIPLOCATION("SW1:2")
PORT_DIPSETTING( 0x20, "50hz" )
PORT_DIPSETTING( 0x00, "60hz" )
- // listed in the manual as "Play Mode"
- PORT_DIPNAME( 0x40, 0x00, "Payout Mode" ) PORT_DIPLOCATION("SW1:3")
- PORT_DIPSETTING( 0x40, "Manual" ) // listed in the manual as "Out Play"
- PORT_DIPSETTING( 0x00, "Auto" ) // listed in the manual as "Credit Play"
+ PORT_DIPNAME( 0x40, 0x00, "Payout Mode" ) PORT_DIPLOCATION("SW1:3") // listed in the manual as "Play Mode"
+ PORT_DIPSETTING( 0x40, "Auto" ) // listed in the manual as "Out Play"
+ PORT_DIPSETTING( 0x00, "Manual" ) // listed in the manual as "Credit Play"
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:4")
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@@ -2310,15 +2478,15 @@ static INPUT_PORTS_START( goodluck )
PORT_INCLUDE( goldnpkr )
PORT_MODIFY("IN0-1")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT ) PORT_IMPULSE(3) PORT_NAME("Manual Collect")
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_PAYOUT )
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_READ_LINE_DEVICE_MEMBER("hopper", FUNC(ticket_dispenser_device::line_r))
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT )
PORT_MODIFY("IN0-3")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Settings") PORT_CODE(KEYCODE_F2)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_NAME("Note In")
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(3) PORT_NAME("Coin In")
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_NAME("Coin In") PORT_IMPULSE(3)
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Weight (Coupon In)") PORT_CODE(KEYCODE_H) PORT_TOGGLE
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -2368,7 +2536,7 @@ static INPUT_PORTS_START( witchcrd )
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Settings") PORT_CODE(KEYCODE_F2)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("D-31") PORT_CODE(KEYCODE_E)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_NAME("Note In")
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(3) PORT_NAME("Coin In")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_NAME("Coin In") PORT_IMPULSE(3)
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -2437,21 +2605,21 @@ INPUT_PORTS_END
static INPUT_PORTS_START( witchcda )
// Multiplexed - 4x5bits
PORT_START("IN0-0")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_GAMBLE_BET ) PORT_NAME("Apuesta (Bet)")
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK ) PORT_NAME("Contabilidad (Bookkeeping)")
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_D_UP ) PORT_NAME("Doblar (Double Up)")
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_DEAL ) PORT_NAME("Reparte (Deal)")
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_CANCEL ) PORT_NAME("Cancela (Cancel)")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_GAMBLE_BET ) PORT_NAME("Apuesta (Bet)")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK ) PORT_NAME("Contabilidad (Bookkeeping)")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_D_UP ) PORT_NAME("Doblar (Double Up)")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_DEAL ) PORT_NAME("Reparte (Deal)")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_CANCEL ) PORT_NAME("Cancela (Cancel)")
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN0-1")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT ) PORT_IMPULSE(3) PORT_NAME("Out (Manual Collect)")
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_PAYOUT ) PORT_NAME("Pagar (Payout)")
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_TAKE ) PORT_NAME("Cobrar (Take)")
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_HIGH ) PORT_NAME("Alta (Big)")
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Baja (Small)")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT ) PORT_NAME("Out (Manual Collect)") PORT_IMPULSE(3)
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_PAYOUT ) PORT_NAME("Pagar (Payout)")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_TAKE ) PORT_NAME("Cobrar (Take)")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_HIGH ) PORT_NAME("Alta (Big)")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Baja (Small)")
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -2470,7 +2638,7 @@ static INPUT_PORTS_START( witchcda )
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Configuracion (Settings)") PORT_CODE(KEYCODE_F2)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("D-31") PORT_CODE(KEYCODE_E)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_NAME("Billetes (Note In)")
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(3) PORT_NAME("Fichas (Coin In)")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_NAME("Fichas (Coin In)") PORT_IMPULSE(3)
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -3193,10 +3361,10 @@ static INPUT_PORTS_START( wtchjack )
PORT_START("IN0-3")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Service") PORT_CODE(KEYCODE_F2)
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_2_PAD) PORT_NAME("IN3-2")
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_NAME("Note In")
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(3) PORT_NAME("Coin In")
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_NAME("Weight (Coupon In)")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("IN3-2") PORT_CODE(KEYCODE_2_PAD)
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_NAME("Note In")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_NAME("Coin In") PORT_IMPULSE(3)
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_NAME("Weight (Coupon In)")
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -3285,21 +3453,21 @@ INPUT_PORTS_END
static INPUT_PORTS_START( bsuerte )
// Multiplexed - 4x5bits
PORT_START("IN0-0")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_GAMBLE_BET ) PORT_NAME("Apostar (Bet)")
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK ) PORT_NAME("Contabilidad (Meters)")
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_D_UP ) PORT_NAME("Doblar (Double Up)")
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_DEAL ) PORT_NAME("Dar/Virar (Deal/Draw)")
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_CANCEL ) PORT_NAME("Cancelar (Cancel)")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_GAMBLE_BET ) PORT_NAME("Apostar (Bet)")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK ) PORT_NAME("Contabilidad (Meters)")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_D_UP ) PORT_NAME("Doblar (Double Up)")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_DEAL ) PORT_NAME("Dar/Virar (Deal/Draw)")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_CANCEL ) PORT_NAME("Cancelar (Cancel)")
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN0-1")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT ) PORT_IMPULSE(3) PORT_NAME("Out (Manual Collect)")
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_PAYOUT ) PORT_NAME("Pagar (Payout)")
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_TAKE ) PORT_NAME("Cobrar (Take)")
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_HIGH ) PORT_NAME("Mayor (Big)")
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Menor (Small)")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_READ_LINE_DEVICE_MEMBER("hopper", FUNC(ticket_dispenser_device::line_r))
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT ) PORT_NAME("Pagar (Payout)")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_TAKE ) PORT_NAME("Cobrar (Take)")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_HIGH ) PORT_NAME("Mayor (Big)")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Menor (Small)")
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -3315,11 +3483,11 @@ static INPUT_PORTS_START( bsuerte )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN0-3")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Configuracion (Settings)") PORT_CODE(KEYCODE_F2)
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Configuracion (Settings)") PORT_CODE(KEYCODE_F2)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_NAME("Billetes (Note In)")
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(3) PORT_NAME("Fichas (Coin In)")
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_NAME("Cupones (Coupon In)")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_NAME("Billetes (Note In)")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_NAME("Fichas (Coin In)") PORT_IMPULSE(3)
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_NAME("Cupones (Coupon In)")
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -3337,8 +3505,8 @@ static INPUT_PORTS_START( bsuerte )
PORT_DIPSETTING( 0x20, "50hz" )
PORT_DIPSETTING( 0x00, "60hz" )
PORT_DIPNAME( 0x40, 0x00, "Modo de Pago" ) PORT_DIPLOCATION("SW1:3") // left as 'auto'
- PORT_DIPSETTING( 0x40, "Manual" )
- PORT_DIPSETTING( 0x00, "Auto" )
+ PORT_DIPSETTING( 0x40, "Auto" )
+ PORT_DIPSETTING( 0x00, "Manual" )
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:4")
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@@ -3565,9 +3733,9 @@ static INPUT_PORTS_START( caspoker )
// Multiplexed - 4x5bits
PORT_START("IN0-0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK ) PORT_NAME("Bookkeeping")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK ) PORT_NAME("Bookkeeping")
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_DEAL ) PORT_NAME("Deal / Draw")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_DEAL ) PORT_NAME("Deal / Draw")
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -3584,11 +3752,11 @@ static INPUT_PORTS_START( caspoker )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN0-2")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_POKER_HOLD1 ) PORT_NAME("Hold 1 / Take Score (Kasse)")
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_POKER_HOLD2 ) PORT_NAME("Hold 2 / Small (Tief)")
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_POKER_HOLD3 ) PORT_NAME("Hold 3 / Bet (Setzen)")
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_POKER_HOLD4 ) PORT_NAME("Hold 4 / Big (Hoch)")
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_HOLD5 ) PORT_NAME("Hold 5 / Double Up (Doppeln)")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_POKER_HOLD1 ) PORT_NAME("Hold 1 / Take Score (Kasse)")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_POKER_HOLD2 ) PORT_NAME("Hold 2 / Small (Tief)")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_POKER_HOLD3 ) PORT_NAME("Hold 3 / Bet (Setzen)")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_POKER_HOLD4 ) PORT_NAME("Hold 4 / Big (Hoch)")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_HOLD5 ) PORT_NAME("Hold 5 / Double Up (Doppeln)")
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -3643,11 +3811,11 @@ static INPUT_PORTS_START( mondial )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN0-1")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT ) PORT_IMPULSE(3) PORT_NAME("Out (Manual Collect)")
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_PAYOUT )
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_READ_LINE_DEVICE_MEMBER("hopper", FUNC(ticket_dispenser_device::line_r))
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_TAKE )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_HIGH ) PORT_NAME("Big")
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Small")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_HIGH ) PORT_NAME("Big")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Small")
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -3684,9 +3852,9 @@ static INPUT_PORTS_START( mondial )
PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:2")
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:3")
- PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x40, 0x00, "Payout Mode" ) PORT_DIPLOCATION("SW1:3")
+ PORT_DIPSETTING( 0x40, "Auto" )
+ PORT_DIPSETTING( 0x00, "Manual" )
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:4")
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@@ -3713,32 +3881,32 @@ static INPUT_PORTS_START( videtron )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN0-1")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT ) PORT_IMPULSE(3) PORT_NAME("Out (Manual Collect)")
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_PAYOUT )
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_READ_LINE_DEVICE_MEMBER("hopper", FUNC(ticket_dispenser_device::line_r))
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_TAKE )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_HIGH ) PORT_NAME("Big")
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Small")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_HIGH ) PORT_NAME("Big")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Small")
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN0-2")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Card Selector") PORT_CODE(KEYCODE_Z)
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Card Selector") PORT_CODE(KEYCODE_Z)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Hold Card") PORT_CODE(KEYCODE_X)
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Hold Card") PORT_CODE(KEYCODE_X)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN0-3")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Settings") PORT_CODE(KEYCODE_F2)
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Settings") PORT_CODE(KEYCODE_F2)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(3)
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(3)
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_IMPULSE(3)
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(3)
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(3)
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_IMPULSE(3)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -3756,8 +3924,8 @@ static INPUT_PORTS_START( videtron )
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x40, 0x00, "Payout Mode" ) PORT_DIPLOCATION("SW1:3")
- PORT_DIPSETTING( 0x40, "Manual" )
- PORT_DIPSETTING( 0x00, "Auto" )
+ PORT_DIPSETTING( 0x40, "Auto" )
+ PORT_DIPSETTING( 0x00, "Manual" )
PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:4")
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@@ -3778,21 +3946,21 @@ static INPUT_PORTS_START( super98 )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_MODIFY("IN0-1")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(3) PORT_NAME("Note In") // Key '5'
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_NAME("Note In") PORT_IMPULSE(3)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Payout") PORT_CODE(KEYCODE_W)
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_TAKE ) // Key '4'
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_HIGH ) PORT_NAME("Big / Black") // Key 'A'
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Small / Red") // Key 'S'
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_TAKE )
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_HIGH ) PORT_NAME("Big / Black")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Small / Red")
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_MODIFY("IN0-2")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_POKER_HOLD1 ) // Key 'Z'
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_POKER_HOLD2 ) // Key 'X'
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_POKER_HOLD3 ) // Key 'C'
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_POKER_HOLD4 ) // Key 'V'
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_HOLD5 ) // Key 'B'
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_POKER_HOLD1 )
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_POKER_HOLD2 )
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_POKER_HOLD3 )
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_POKER_HOLD4 )
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_HOLD5 )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -3801,7 +3969,7 @@ static INPUT_PORTS_START( super98 )
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Unknown IN0-3 0x01") PORT_CODE(KEYCODE_H)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Unknown IN0-3 0x02") PORT_CODE(KEYCODE_J)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Unknown IN0-3 0x04") PORT_CODE(KEYCODE_K)
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_BET ) // Key 'M'
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_BET )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Unknown IN0-3 0x10") PORT_CODE(KEYCODE_L)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -3833,11 +4001,11 @@ static INPUT_PORTS_START( geniea )
PORT_INCLUDE( bsuerte )
PORT_MODIFY("IN0-0")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(3) PORT_NAME("Coin In") // Key '5'
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(3) PORT_NAME("Coin In")
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Attendant Key") PORT_CODE(KEYCODE_0)
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_D_UP ) // Key '3'
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_DEAL ) PORT_NAME("Deal / Settings") // Key '2'
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_CANCEL ) // Key 'N'
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_D_UP )
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_DEAL ) PORT_NAME("Deal / Settings")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_CANCEL )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -3845,19 +4013,19 @@ static INPUT_PORTS_START( geniea )
PORT_MODIFY("IN0-1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Unknown IN0-1 0x01") PORT_CODE(KEYCODE_K)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Payout") PORT_CODE(KEYCODE_W)
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_TAKE ) // Key '4'
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_HIGH ) PORT_NAME("Big / Black") // Key 'A'
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Small / Red") // Key 'S'
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_TAKE )
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_HIGH ) PORT_NAME("Big / Black")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Small / Red")
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_MODIFY("IN0-2")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_POKER_HOLD1 ) // Key 'Z'
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_POKER_HOLD2 ) // Key 'X'
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_POKER_HOLD3 ) // Key 'C'
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_POKER_HOLD4 ) // Key 'V'
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_HOLD5 ) // Key 'B'
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_POKER_HOLD1 )
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_POKER_HOLD2 )
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_POKER_HOLD3 )
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_POKER_HOLD4 )
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_HOLD5 )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -3865,8 +4033,8 @@ static INPUT_PORTS_START( geniea )
PORT_MODIFY("IN0-3")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Supervisor Key") PORT_CODE(KEYCODE_9)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Unknown IN0-3 0x02") PORT_CODE(KEYCODE_J)
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(3) PORT_NAME("Note In") // Key '6'
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_BET ) // Key 'M'
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(3) PORT_NAME("Note In")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_BET )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Unknown IN0-3 0x10") PORT_CODE(KEYCODE_L)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -3897,62 +4065,19 @@ static INPUT_PORTS_START( bsuertev )
// Multiplexed - 4x5bits
PORT_INCLUDE( bsuerte )
- PORT_MODIFY("IN0-0")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(3) PORT_NAME("Coin In") // Key '5'
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Attendant Key") PORT_CODE(KEYCODE_0)
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_D_UP ) // Key '3'
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_DEAL ) PORT_NAME("Deal / Settings") // Key '2'
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_CANCEL ) // Key 'N'
- PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
-
- PORT_MODIFY("IN0-1")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Unknown IN0-1 0x01") PORT_CODE(KEYCODE_K)
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Payout") PORT_CODE(KEYCODE_W)
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_TAKE ) // Key '4'
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_HIGH ) PORT_NAME("Big / Black") // Key 'A'
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Small / Red") // Key 'S'
- PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
-
- PORT_MODIFY("IN0-2")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_POKER_HOLD1 ) // Key 'Z'
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_POKER_HOLD2 ) // Key 'X'
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_POKER_HOLD3 ) // Key 'C'
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_POKER_HOLD4 ) // Key 'V'
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_HOLD5 ) // Key 'B'
- PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
-
- PORT_MODIFY("IN0-3")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Supervisor Key") PORT_CODE(KEYCODE_9)
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Unknown IN0-3 0x02") PORT_CODE(KEYCODE_J)
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(3) PORT_NAME("Note In") // Key '6'
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_BET ) // Key 'M'
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Unknown IN0-3 0x10") PORT_CODE(KEYCODE_L)
- PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
-
PORT_MODIFY("SW1")
// only bits 4-7 are connected here and were routed to SW1 1-4
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_DIPNAME( 0x10, 0x10, "Par Simple" ) PORT_DIPLOCATION("SW1:1")
+ PORT_DIPNAME( 0x10, 0x10, "Par Simple" ) PORT_DIPLOCATION("SW1:1") // "Jack or Better" is not translated in this rare Spanish/Portuguese text hack version
PORT_DIPSETTING( 0x10, DEF_STR( No ) )
PORT_DIPSETTING( 0x00, DEF_STR( Yes ) )
- PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:2")
+ PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW1:2") // 50/60 Hz Selector on parent
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:3")
- PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:4")
+ PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW1:4") // Royal Flush on parent
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
INPUT_PORTS_END
@@ -3962,20 +4087,20 @@ static INPUT_PORTS_START( bonuspkr )
// Multiplexed - 4x5bits
PORT_START("IN0-0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_GAMBLE_BET )
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK ) PORT_NAME("Meters")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK ) PORT_NAME("Meters")
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_D_UP )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_DEAL ) PORT_NAME("Deal / Draw")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_DEAL ) PORT_NAME("Deal / Draw")
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_CANCEL )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN0-1")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT ) PORT_IMPULSE(3) PORT_NAME("Out (Manual Collect)")
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_PAYOUT ) PORT_NAME("Off (Payout)")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_READ_LINE_DEVICE_MEMBER("hopper", FUNC(ticket_dispenser_device::line_r))
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_TAKE )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_HIGH ) PORT_NAME("Big")
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Small")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_HIGH ) PORT_NAME("Big")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Small")
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -4056,9 +4181,9 @@ static INPUT_PORTS_START( super21p )
PORT_START("IN0-3")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_NAME("Not Use") PORT_CODE(KEYCODE_F)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_NAME("C.A.R.") PORT_CODE(KEYCODE_G)
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(3)
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(3)
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_IMPULSE(3)
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(3)
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(3)
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_IMPULSE(3)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -4115,6 +4240,76 @@ static INPUT_PORTS_START( super21p )
INPUT_PORTS_END
+static INPUT_PORTS_START( op5cards )
+ // Multiplexed - 4x5bits
+ PORT_INCLUDE( super21p )
+
+ PORT_MODIFY("IN0-0")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK )
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_DEAL )
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_CANCEL )
+
+ PORT_MODIFY("IN0-1")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_PAYOUT )
+
+ PORT_MODIFY("IN0-3")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_IMPULSE(3) PORT_NAME("Note In")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(3)
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(3)
+
+ PORT_MODIFY("SW1")
+ PORT_DIPNAME( 0x01, 0x00, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:!8")
+ PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x01, DEF_STR( On ) )
+ PORT_DIPNAME( 0x02, 0x00, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:!7")
+ PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x02, DEF_STR( On ) )
+ PORT_DIPNAME( 0x04, 0x00, "Royal Flush" ) PORT_DIPLOCATION("SW1:!6")
+ PORT_DIPSETTING( 0x04, "Lose" )
+ PORT_DIPSETTING( 0x00, "OK" )
+ PORT_DIPNAME( 0x08, 0x00, "Credit Max" ) PORT_DIPLOCATION("SW1:!5")
+ PORT_DIPSETTING( 0x00, "Disable" )
+ PORT_DIPSETTING( 0x08, "Enable" )
+ PORT_DIPNAME( 0x10, 0x00, "Credit Max Amount" ) PORT_DIPLOCATION("SW1:!4")
+ PORT_DIPSETTING( 0x10, "200" )
+ PORT_DIPSETTING( 0x00, "500" )
+ PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:!3")
+ PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x20, DEF_STR( On ) )
+ PORT_DIPNAME( 0x40, 0x40, "Double Up" ) PORT_DIPLOCATION("SW1:!2")
+ PORT_DIPSETTING( 0x00, "80%" )
+ PORT_DIPSETTING( 0x40, "90%" )
+ PORT_DIPNAME( 0x80, 0x80, "Port Check" ) PORT_DIPLOCATION("SW1:!1")
+ PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+
+ PORT_MODIFY("SW2")
+ PORT_DIPNAME( 0x07, 0x07, DEF_STR( Coinage ) ) PORT_DIPLOCATION("SW2:!6,!7,!8") // coin2 = (coin1 x5); note = (coin1 x10)
+ PORT_DIPSETTING( 0x00, "Coin1 = 5C-1C; Coin2 = 1C-1C; Note = 1C-2C" )
+ PORT_DIPSETTING( 0x01, "Coin1 = 2C-1C; Coin2 = 1C-3C; Note = 1C-6C" )
+ PORT_DIPSETTING( 0x02, "Coin1 = 1C-1C; Coin2 = 1C-5C; Note = 1C-10C" )
+ PORT_DIPSETTING( 0x03, "Coin1 = 1C-2C; Coin2 = 1C-10C; Note = 1C-20C" )
+ PORT_DIPSETTING( 0x04, "Coin1 = 1C-3C; Coin2 = 1C-15C; Note = 1C-30C" )
+ PORT_DIPSETTING( 0x05, "Coin1 = 1C-4C; Coin2 = 1C-20C; Note = 1C-40C" )
+ PORT_DIPSETTING( 0x06, "Coin1 = 1C-5C; Coin2 = 1C-25C; Note = 1C-50C" )
+ PORT_DIPSETTING( 0x07, "Coin1 = 1C-10C; Coin2 = 1C-50C; Note = 1C-100C" )
+ PORT_DIPNAME( 0x08, 0x00, "Bet Max" ) PORT_DIPLOCATION("SW2:!5")
+ PORT_DIPSETTING( 0x08, "10" )
+ PORT_DIPSETTING( 0x00, "20" )
+ PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW2:!4")
+ PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x10, DEF_STR( On ) )
+ PORT_DIPNAME( 0x20, 0x20, "Game Duty" ) PORT_DIPLOCATION("SW2:!3")
+ PORT_DIPSETTING( 0x20, "Weak" )
+ PORT_DIPSETTING( 0x00, "Strong" )
+ PORT_DIPNAME( 0xc0, 0xc0, "Pay Rate" ) PORT_DIPLOCATION("SW2:!2,!1")
+ PORT_DIPSETTING( 0x00, "60%" )
+ PORT_DIPSETTING( 0x40, "70%" )
+ PORT_DIPSETTING( 0x80, "80%" )
+ PORT_DIPSETTING( 0xc0, "90%" )
+INPUT_PORTS_END
+
+
static INPUT_PORTS_START(lespendu)
// Multiplexed - 4x5bits
PORT_START("IN0-0")
@@ -4204,6 +4399,258 @@ static INPUT_PORTS_START(lespendu)
INPUT_PORTS_END
+static INPUT_PORTS_START( icproul )
+ // Multiplexed - 4x5bits
+ PORT_START("IN0-0")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("IN0-0-01") PORT_CODE(KEYCODE_1)
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK ) PORT_NAME("Meters")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("IN0-0-04") PORT_CODE(KEYCODE_3)
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
+
+ PORT_START("IN0-1")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("IN0-1-01") PORT_CODE(KEYCODE_Q)
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_PAYOUT )
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("IN0-1-04") PORT_CODE(KEYCODE_E)
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("IN0-1-08") PORT_CODE(KEYCODE_R)
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("IN0-1-10") PORT_CODE(KEYCODE_T)
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
+
+ PORT_START("IN0-2")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Place Bet / Take Out") PORT_IMPULSE(5)
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START1 )
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Cancel Bets")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("IN0-2-10") PORT_CODE(KEYCODE_G)
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
+
+ PORT_START("IN0-3")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Program") PORT_CODE(KEYCODE_9)
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("IN0-3-02") PORT_CODE(KEYCODE_X)
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_NAME("Note In")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("IN0-3-10") PORT_CODE(KEYCODE_B)
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
+
+ PORT_START("SW1")
+ // only bits 4-7 are connected here and were routed to SW1 1-4
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED )
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNUSED )
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNUSED )
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED )
+ PORT_DIPNAME( 0x10, 0x10, "Field Type" )
+ PORT_DIPSETTING( 0x10, "Type 1: Normal" )
+ PORT_DIPSETTING( 0x00, "Type 2: Double Zero" )
+ PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
+ PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
+ PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
+ PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+INPUT_PORTS_END
+
+
+static INPUT_PORTS_START( glfever )
+ // Multiplexed - 4x5bits
+ PORT_START("IN0-0")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_GAMBLE_BET ) PORT_NAME("Bet")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK ) PORT_NAME("Meters/Settings")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_D_UP ) PORT_NAME("Double-Up/Next")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_DEAL ) PORT_NAME("Deal/Draw")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_CANCEL ) PORT_NAME("Cancel")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
+
+ PORT_START("IN0-1")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_PAYOUT)
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_TAKE ) PORT_NAME("Take")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_HIGH ) PORT_NAME("High/Red")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Low/Black")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
+
+ PORT_START("IN0-2")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_POKER_HOLD1 )
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_POKER_HOLD2 )
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_POKER_HOLD3 )
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_POKER_HOLD4 )
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_HOLD5 )
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
+
+ PORT_START("IN0-3")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(3)
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(3)
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
+
+ PORT_START("SW1")
+ // only bits 4-7 are connected here and were routed to SW1 1-4
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED )
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNUSED )
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNUSED )
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED )
+ PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:1")
+ PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:2")
+ PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x40, 0x40, DEF_STR( Coinage ) ) PORT_DIPLOCATION("SW1:3")
+ PORT_DIPSETTING( 0x40, "Coin In: 1c-5c; Note In: 1n-50c" )
+ PORT_DIPSETTING( 0x00, "Coin In: 1c-1c; Note In: 1n-10c" )
+ PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:4")
+ PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+
+ PORT_START("SWA")
+ PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SWA:1")
+ PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SWA:2")
+ PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SWA:3")
+ PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SWA:4")
+ PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SWA:5")
+ PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SWA:6")
+ PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SWA:7")
+ PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SWA:8")
+ PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+
+ PORT_START("SWB")
+ PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SWB:1")
+ PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SWB:2")
+ PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SWB:3")
+ PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SWB:4")
+ PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SWB:5")
+ PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SWB:6")
+ PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SWB:7")
+ PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SWB:8")
+ PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+INPUT_PORTS_END
+
+
+static INPUT_PORTS_START( megadpkr )
+ // Multiplexed - 4x5bits
+ PORT_START("IN0-0")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_GAMBLE_BET )
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK )
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_D_UP )
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_DEAL )
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_CANCEL )
+ PORT_BIT( 0xe0, IP_ACTIVE_LOW, IPT_UNUSED )
+
+ PORT_START("IN0-1")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) // not used?
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT ) PORT_NAME("Coins Reset")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_TAKE )
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_HIGH ) PORT_NAME("Big")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Small")
+ PORT_BIT( 0xe0, IP_ACTIVE_LOW, IPT_UNUSED )
+
+ PORT_START("IN0-2")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_POKER_HOLD1 )
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_POKER_HOLD2 )
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_POKER_HOLD3 )
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_POKER_HOLD4 )
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_HOLD5 )
+ PORT_BIT( 0xe0, IP_ACTIVE_LOW, IPT_UNUSED )
+
+ PORT_START("IN0-3")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_GAMBLE_SERVICE ) PORT_NAME("Menu")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) // not used?
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_NAME("Note")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_NAME("Credit")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_NAME("Coupon")
+ PORT_BIT( 0xe0, IP_ACTIVE_LOW, IPT_UNUSED )
+
+ PORT_START("SW1")
+ // only bits 4-7 are connected here and were routed to SW1 1-4
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED )
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNUSED )
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNUSED )
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED )
+ PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
+ PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
+ PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
+ PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
+ PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+INPUT_PORTS_END
+
+
+static INPUT_PORTS_START( potnpkro ) // ICP-1 w/daughterboard
+ PORT_INCLUDE( goldnpkr )
+
+ PORT_MODIFY("SW1")
+ PORT_DIPNAME( 0x10, 0x00, "Coinage Sensitivity" ) PORT_DIPLOCATION("SW1:1")
+ PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x10, DEF_STR( On ) )
+ PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:2")
+ PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:3")
+ PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:4")
+ PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+INPUT_PORTS_END
+
+
/*********************************************
* Graphics Layouts *
*********************************************/
@@ -4266,6 +4713,13 @@ static GFXDECODE_START( gfx_super21p )
GFXDECODE_ENTRY( "gfx4", 0, fixedtilelayout, 0x300, 16 )
GFXDECODE_END
+static GFXDECODE_START( gfx_op5cards )
+ GFXDECODE_ENTRY( "gfx1", 0, fixedtilelayout, 8, 16 )
+ GFXDECODE_ENTRY( "gfx2", 0, fixedtilelayout, 8, 16 )
+ GFXDECODE_ENTRY( "gfx3", 0, fixedtilelayout, 8, 16 )
+ GFXDECODE_ENTRY( "gfx4", 0, fixedtilelayout, 8, 16 )
+GFXDECODE_END
+
static GFXDECODE_START( gfx_caspoker )
GFXDECODE_ENTRY( "gfx1", 0, tilelayout, 128, 16 )
GFXDECODE_ENTRY( "gfx2", 0, tilelayout, 128, 16 )
@@ -4477,6 +4931,7 @@ void goldnpkr_state::goldnpkr_base(machine_config &config)
GFXDECODE(config, m_gfxdecode, m_palette, gfx_goldnpkr);
PALETTE(config, m_palette, FUNC(goldnpkr_state::goldnpkr_palette), 256);
+ HOPPER(config, m_hopper, attotime::from_msec(50));
}
void goldnpkr_state::goldnpkr(machine_config &config)
@@ -4590,6 +5045,30 @@ void goldnpkr_state::super21p(machine_config &config)
m_ay8910->port_b_read_callback().set_ioport("SW2");
}
+void goldnpkr_state::op5cards(machine_config &config)
+{
+ goldnpkr_base(config);
+
+ // basic machine hardware
+ m_maincpu->set_addrmap(AS_PROGRAM, &goldnpkr_state::op5cards_map);
+
+ m_pia[0]->writepa_handler().set(FUNC(goldnpkr_state::mux_port_w));
+ m_pia[0]->writepb_handler().set(FUNC(goldnpkr_state::ay8910_control_w));
+ m_pia[1]->readpa_handler().set(FUNC(goldnpkr_state::ay8910_data_r));
+ m_pia[1]->writepa_handler().set(FUNC(goldnpkr_state::ay8910_data_w));
+
+ // video hardware
+ MCFG_VIDEO_START_OVERRIDE(goldnpkr_state, super21p)
+ m_gfxdecode->set_info(gfx_op5cards);
+
+ // sound hardware
+ SPEAKER(config, "mono").front_center();
+ AY8910(config, m_ay8910, MASTER_CLOCK/4).add_route(ALL_OUTPUTS, "mono", 1.00); // guess, seems ok
+ m_ay8910->port_a_read_callback().set_ioport("SW1");
+ m_ay8910->port_b_read_callback().set_ioport("SW2");
+}
+
+
void goldnpkr_state::wildcard(machine_config &config)
{
goldnpkr_base(config);
@@ -4638,14 +5117,6 @@ void goldnpkr_state::wildcrdb(machine_config &config)
// basic machine hardware
m_maincpu->set_addrmap(AS_PROGRAM, &goldnpkr_state::wildcrdb_map);
- sega_315_5018_device &mcu(SEGA_315_5018(config, "mcu", MASTER_CLOCK / 8)); // guess
- mcu.set_addrmap(AS_PROGRAM, &goldnpkr_state::wildcrdb_mcu_map);
- mcu.set_addrmap(AS_IO, &goldnpkr_state::wildcrdb_mcu_io_map);
- mcu.set_addrmap(AS_OPCODES, &goldnpkr_state::wildcrdb_mcu_decrypted_opcodes_map);
- mcu.set_decrypted_tag(":decrypted_opcodes");
- mcu.set_size(0x1000);
- mcu.set_vblank_int("screen", FUNC(goldnpkr_state::irq0_line_hold));
-
m_pia[0]->writepa_handler().set(FUNC(goldnpkr_state::mux_port_w));
m_pia[0]->writepb_handler().set(FUNC(goldnpkr_state::ay8910_control_w));
m_pia[1]->readpa_handler().set(FUNC(goldnpkr_state::ay8910_data_r));
@@ -4661,6 +5132,19 @@ void goldnpkr_state::wildcrdb(machine_config &config)
AY8910(config, m_ay8910, MASTER_CLOCK/4).add_route(ALL_OUTPUTS, "mono", 1.00); // guess, seems ok
}
+void goldnpkr_state::wildcrde(machine_config &config)
+{
+ wildcrdb(config);
+
+ sega_315_5018_device &mcu(SEGA_315_5018(config, "mcu", MASTER_CLOCK / 8)); // guess
+ mcu.set_addrmap(AS_PROGRAM, &goldnpkr_state::wildcrdb_mcu_map);
+ mcu.set_addrmap(AS_IO, &goldnpkr_state::wildcrdb_mcu_io_map);
+ mcu.set_addrmap(AS_OPCODES, &goldnpkr_state::wildcrdb_mcu_decrypted_opcodes_map);
+ mcu.set_decrypted_tag(":decrypted_opcodes");
+ mcu.set_size(0x1000);
+ mcu.set_vblank_int("screen", FUNC(goldnpkr_state::irq0_line_hold));
+}
+
void goldnpkr_state::genie(machine_config &config)
{
goldnpkr_base(config);
@@ -4686,9 +5170,6 @@ void goldnpkr_state::geniea(machine_config &config)
// basic machine hardware
m_maincpu->set_addrmap(AS_PROGRAM, &goldnpkr_state::goldnpkr_map);
-// m_pia[0]->readpa_handler().set(FUNC(goldnpkr_state::pottnpkr_mux_port_r));
-// m_pia[0]->writepa_handler().set(FUNC(goldnpkr_state::mux_port_w));
-
// video hardware
m_palette->set_init(FUNC(goldnpkr_state::witchcrd_palette));
@@ -4768,128 +5249,43 @@ void goldnpkr_state::lespendu(machine_config &config)
}
-/*********************************************
-* Blitz System *
-*********************************************/
-
-uint8_t blitz_state::cpubank_decrypt_r(offs_t offset)
-{
- return m_cpubank[offset] ^ m_cpubank_xor;
-}
-
-void blitz_state::mcu_command_w(uint8_t data)
+void goldnpkr_state::icproul(machine_config &config)
{
- m_mcu->pa_w(data);
- if (BIT(m_portc_data, 0))
- {
- m_mcu->set_input_line(M6805_IRQ_LINE, ASSERT_LINE);
- m_maincpu->suspend(SUSPEND_REASON_HALT, true);
- }
-}
+ goldnpkr_base(config);
-void blitz_state::mcu_portb_w(uint8_t data)
-{
- m_cpubank_xor = data;
-}
+ // basic machine hardware
+ m_maincpu->set_addrmap(AS_PROGRAM, &goldnpkr_state::pottnpkr_map);
-void blitz_state::mcu_portc_w(uint8_t data)
-{
- if (!BIT(data, 0))
- {
- m_mcu->set_input_line(M6805_IRQ_LINE, CLEAR_LINE);
- m_maincpu->resume(SUSPEND_REASON_HALT);
- }
+ NVRAM(config.replace(), "nvram", nvram_device::DEFAULT_ALL_1);
- m_bankdev->set_bank((BIT(data, 2) << 1) | BIT(data, 3));
+ m_pia[0]->readpa_handler().set(FUNC(goldnpkr_state::pottnpkr_mux_port_r));
+ m_pia[0]->writepa_handler().set(FUNC(goldnpkr_state::mux_port_w));
- m_portc_data = data;
+ // sound hardware
+ SPEAKER(config, "mono").front_center();
+ DISCRETE(config, m_discrete, pottnpkr_discrete).add_route(ALL_OUTPUTS, "mono", 1.0);
}
-void blitz_state::megadpkr_map(address_map &map)
+void goldnpkr_state::glfever(machine_config &config)
{
- map(0x0000, 0x07ff).ram(); //.share("nvram"); // battery backed RAM
- map(0x0800, 0x0800).w("crtc", FUNC(mc6845_device::address_w));
- map(0x0801, 0x0801).rw("crtc", FUNC(mc6845_device::register_r), FUNC(mc6845_device::register_w));
- map(0x0844, 0x0847).rw("pia0", FUNC(pia6821_device::read), FUNC(pia6821_device::write));
- map(0x0848, 0x084b).rw("pia1", FUNC(pia6821_device::read), FUNC(pia6821_device::write));
+ goldnpkr_base(config);
-/* There is another set of PIAs controlled by the code.
- Maybe they are just mirrors...
+ // basic machine hardware
+ m_maincpu->set_addrmap(AS_PROGRAM, &goldnpkr_state::glfever_map);
- map(0x10f4, 0x10f7).rw("pia0", FUNC(pia6821_device::read), FUNC(pia6821_device::write));
- map(0x10f8, 0x10fb).rw("pia1", FUNC(pia6821_device::read), FUNC(pia6821_device::write));
-*/
- map(0x1000, 0x13ff).ram().w(FUNC(blitz_state::goldnpkr_videoram_w)).share("videoram");
- map(0x1800, 0x1bff).ram().w(FUNC(blitz_state::goldnpkr_colorram_w)).share("colorram");
+ m_pia[0]->readpa_handler().set(FUNC(goldnpkr_state::pottnpkr_mux_port_r));
+ m_pia[0]->writepa_handler().set(FUNC(goldnpkr_state::mux_port_w));
- map(0x4000, 0x7fff).rw(m_bankdev, FUNC(address_map_bank_device::read8), FUNC(address_map_bank_device::write8));
- map(0x8000, 0xbfff).nopr().w(FUNC(blitz_state::mcu_command_w));
- map(0xc000, 0xffff).rom();
-}
+ // video hardware
+ m_palette->set_init(FUNC(goldnpkr_state::witchcrd_palette));
-void blitz_state::megadpkr_banked_map(address_map &map)
-{
- map(0x00000, 0x07fff).r(FUNC(blitz_state::cpubank_decrypt_r));
- map(0x08000, 0x087ff).rw("timekpr", FUNC(m48t02_device::read), FUNC(m48t02_device::write));
+ // sound hardware
+ SPEAKER(config, "mono").front_center();
+ DISCRETE(config, m_discrete, goldnpkr_discrete).add_route(ALL_OUTPUTS, "mono", 1.0);
}
-static INPUT_PORTS_START( megadpkr )
- // Multiplexed - 4x5bits
- PORT_START("IN0-0")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_GAMBLE_BET )
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK )
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_D_UP )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_DEAL )
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_CANCEL )
- PORT_BIT( 0xe0, IP_ACTIVE_LOW, IPT_UNUSED )
-
- PORT_START("IN0-1")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) // not used?
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT ) PORT_NAME("Coins Reset")
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_TAKE )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_HIGH ) PORT_NAME("Big")
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Small")
- PORT_BIT( 0xe0, IP_ACTIVE_LOW, IPT_UNUSED )
-
- PORT_START("IN0-2")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_POKER_HOLD1 )
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_POKER_HOLD2 )
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_POKER_HOLD3 )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_POKER_HOLD4 )
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_HOLD5 )
- PORT_BIT( 0xe0, IP_ACTIVE_LOW, IPT_UNUSED )
-
- PORT_START("IN0-3")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_GAMBLE_SERVICE ) PORT_NAME("Menu")
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) // not used?
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_NAME("Note")
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_NAME("Credit")
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_NAME("Coupon")
- PORT_BIT( 0xe0, IP_ACTIVE_LOW, IPT_UNUSED )
-
- PORT_START("SW1")
- // only bits 4-7 are connected here and were routed to SW1 1-4
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
- PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
- PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
- PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
- PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
-INPUT_PORTS_END
-
-
void blitz_state::megadpkr(machine_config &config)
{
// basic machine hardware
@@ -4933,8 +5329,46 @@ void blitz_state::megadpkr(machine_config &config)
}
+/**********************************************
+* Blitz System decrypt and MCU handlers *
+**********************************************/
+
+uint8_t blitz_state::cpubank_decrypt_r(offs_t offset)
+{
+ return m_cpubank[offset] ^ m_cpubank_xor;
+}
+
+void blitz_state::mcu_command_w(uint8_t data)
+{
+ m_mcu->pa_w(data);
+ if (BIT(m_portc_data, 0))
+ {
+ m_mcu->set_input_line(M6805_IRQ_LINE, ASSERT_LINE);
+ m_maincpu->suspend(SUSPEND_REASON_HALT, true);
+ }
+}
+
+void blitz_state::mcu_portb_w(uint8_t data)
+{
+ m_cpubank_xor = data;
+}
+
+void blitz_state::mcu_portc_w(uint8_t data)
+{
+ if (!BIT(data, 0))
+ {
+ m_mcu->set_input_line(M6805_IRQ_LINE, CLEAR_LINE);
+ m_maincpu->resume(SUSPEND_REASON_HALT);
+ }
+
+ m_bankdev->set_bank((BIT(data, 2) << 1) | BIT(data, 3));
+
+ m_portc_data = data;
+}
+
+
/*********************************************
-* Rom Load *
+* ROM Load *
*********************************************/
/******************************* GOLDEN POKER SETS *******************************/
@@ -5152,6 +5586,48 @@ ROM_START( goldnpkf )
ROM_END
+ROM_START( goldnpkg )
+ ROM_REGION( 0x10000, "maincpu", 0 )
+ ROM_LOAD( "rb5e.12a", 0x4000, 0x4000, CRC(97f6992f) SHA1(5b08a157992c521856e8f53e63c8e82577870ca1) )
+
+ ROM_REGION( 0x6000, "gfx1", 0 )
+ ROM_FILL( 0x0000, 0x4000, 0x0000 ) // filling the R-G bitplanes
+ ROM_LOAD( "13.5a", 0x4000, 0x2000, CRC(32705e1d) SHA1(84f9305af38179985e0224ae2ea54c01dfef6e12) ) // char ROM
+
+ ROM_REGION( 0x6000, "gfx2", 0 )
+ ROM_LOAD( "11.2a", 0x0000, 0x2000, CRC(10b34856) SHA1(52e4cc81b36b4c807b1d4471c0f7bea66108d3fd) ) // cards deck gfx, bitplane1
+ ROM_LOAD( "12.4a", 0x2000, 0x2000, CRC(5fc965ef) SHA1(d9ecd7e9b4915750400e76ca604bec8152df1fe4) ) // cards deck gfx, bitplane2
+ ROM_COPY( "gfx1", 0x4800, 0x4000, 0x0800 ) // cards deck gfx, bitplane3. found in the 2nd quarter of the char rom
+
+ ROM_REGION( 0x0100, "proms", 0 )
+ ROM_LOAD( "tbp24s10n.7d", 0x0000, 0x0100, CRC(7f31066b) SHA1(15420780ec6b2870fc4539ec3afe4f0c58eedf12) )
+ROM_END
+
+
+/* Bonanza Golden Poker Double Up.
+ Original hardware, with tearoom*sara text hack.
+
+ You can play 1-50 credits.
+ So the hackers removed the "PLAY 1 TO 50" string to put "TEAROOM*SARA" instead.
+*/
+ROM_START( goldnpkh )
+ ROM_REGION( 0x10000, "maincpu", 0 )
+ ROM_LOAD( "spf.12a", 0x4000, 0x4000, CRC(22963c83) SHA1(ac9e66f0c548011aac88b9f32a924995ba3651e4) )
+
+ ROM_REGION( 0x6000, "gfx1", 0 )
+ ROM_FILL( 0x0000, 0x4000, 0x0000 ) // filling the R-G bitplanes
+ ROM_LOAD( "u38_5a.bin", 0x4000, 0x2000, CRC(32705e1d) SHA1(84f9305af38179985e0224ae2ea54c01dfef6e12) ) // char ROM
+
+ ROM_REGION( 0x6000, "gfx2", 0 )
+ ROM_LOAD( "u43_2a.bin", 0x0000, 0x2000, CRC(10b34856) SHA1(52e4cc81b36b4c807b1d4471c0f7bea66108d3fd) ) // cards deck gfx, bitplane1
+ ROM_LOAD( "u40_4a.bin", 0x2000, 0x2000, CRC(5fc965ef) SHA1(d9ecd7e9b4915750400e76ca604bec8152df1fe4) ) // cards deck gfx, bitplane2
+ ROM_COPY( "gfx1", 0x4800, 0x4000, 0x0800 ) // cards deck gfx, bitplane3. found in the 2nd quarter of the char rom
+
+ ROM_REGION( 0x0100, "proms", 0 )
+ ROM_LOAD( "tbp24s10n.7d", 0x0000, 0x0100, CRC(7f31066b) SHA1(15420780ec6b2870fc4539ec3afe4f0c58eedf12) )
+ROM_END
+
+
/* Videotron Poker.
Alternative controls set, with cards selector...
*/
@@ -5536,6 +6012,103 @@ ROM_START( potnpkrl )
ROM_END
+/* Potten's Poker - PCB ICP-1 (unencrypted).
+ 'PLM07242 VER 2.1 1988 04-15 BY PED' string in ROM
+*/
+ROM_START( potnpkrm )
+ ROM_REGION( 0x10000, "maincpu", 0 )
+ ROM_LOAD( "7.16a", 0x2000, 0x1000, CRC(62ad9e7d) SHA1(74fe533da0dcf21662d1adf599fcdf7f97583646) )
+ ROM_LOAD( "8.17a", 0x3000, 0x1000, CRC(1c288dd8) SHA1(d8a074b950a2cc01a4e72151138113ff725bdc1e) )
+
+ ROM_REGION( 0x1800, "gfx1", 0 )
+ ROM_FILL( 0x0000, 0x1000, 0x0000 ) // filling the R-G bitplanes
+ ROM_LOAD( "4.8a", 0x1000, 0x0800, CRC(17d0d174) SHA1(ecf507439b6df950052e65ec014830f0287b98b9) ) // char ROM
+
+ ROM_REGION( 0x1800, "gfx2", 0 )
+ ROM_LOAD( "1.4a", 0x0000, 0x0800, CRC(f2f94661) SHA1(f37f7c0dff680fd02897dae64e13e297d0fdb3e7) ) // cards deck gfx, bitplane1
+ ROM_LOAD( "2.6a", 0x0800, 0x0800, CRC(508e07a9) SHA1(23a08ab657086c890489ef0f063f396f630928ff) ) // cards deck gfx, bitplane2
+ ROM_LOAD( "3.7a", 0x1000, 0x0800, BAD_DUMP CRC(6e3e9b1d) SHA1(14eb8d14ce16719a6ad7d13db01e47c8f05955f0) ) // cards deck gfx, bitplane3, using a standard one for now
+
+ ROM_REGION( 0x0100, "proms", 0 )
+ ROM_LOAD( "82s129.9c", 0x0000, 0x0100, BAD_DUMP CRC(7f31066b) SHA1(15420780ec6b2870fc4539ec3afe4f0c58eedf12) ) // PROM dump needed
+ROM_END
+
+/*
+ Potten's Poker with Fever feature.
+ PCB ICP-1 with full CPU addressing, plus a riser board with CPU and ROMs.
+*/
+ROM_START( potnpkrn )
+ ROM_REGION( 0x10000, "maincpu", 0 )
+ ROM_LOAD( "7.sub", 0x6000, 0x1000, CRC(3dd65452) SHA1(f4641160ad8472b8446603c1102a42b818aee430) )
+ ROM_LOAD( "8.sub", 0x7000, 0x1000, CRC(2f09b647) SHA1(8d5c069c2ecf07ca1f3f04a580e11860ea728b38) )
+ ROM_LOAD( "9.sub", 0xf000, 0x1000, CRC(cb988f21) SHA1(4d70de07ea41d23a3da13dd5ad6bd4fc54a239f3) )
+
+ ROM_REGION( 0x3000, "gfx1", 0 )
+ ROM_FILL( 0x0000, 0x2000, 0x0000 ) // filling the R-G bitplanes
+ ROM_LOAD( "0.a8", 0x2000, 0x1000, CRC(1090e7f0) SHA1(26a7fc8853debb9a759811d7fee39410614c3895) ) // char ROM
+
+ ROM_REGION( 0x3000, "gfx2", 0 )
+ ROM_LOAD( "3.a4", 0x0000, 0x1000, CRC(b5a1f5a3) SHA1(a34aaaab5443c6962177a5dd35002bd09d0d2772) ) // cards deck gfx, bitplane1
+ ROM_LOAD( "4.a6", 0x1000, 0x1000, CRC(40e426af) SHA1(7e7cb30dafc96bcb87a05d3e0ef5c2d426ed6a74) ) // cards deck gfx, bitplane2
+ ROM_LOAD( "5.a7", 0x2000, 0x1000, CRC(232374f3) SHA1(b75907edbf769b8c46fb1ebdb301c325c556e6c2) ) // cards deck gfx, bitplane3
+
+ ROM_REGION( 0x0100, "proms", 0 )
+ ROM_LOAD( "tbp24s10n.7d", 0x0000, 0x0100, CRC(7f31066b) SHA1(15420780ec6b2870fc4539ec3afe4f0c58eedf12) )
+ROM_END
+
+
+/*
+ Golden/Potten's Poker
+ 1986 0415 VER 7.0 1987 06-03 BY PED.
+
+ ICP-1 hardware with modifications.
+ The first set has bookkeeping with DSW test.
+ The second set is a hack of the first with unknown mods.
+
+*/
+ROM_START( potnpkro ) // ICP-1 wires hack set.
+ ROM_REGION( 0x10000, "maincpu", 0 )
+ ROM_LOAD( "7.16a", 0x6000, 0x1000, CRC(2dc5e372) SHA1(70a251efe879bc1122baa78984251041a355c895) )
+ ROM_LOAD( "x.17a", 0x7000, 0x1000, CRC(1694a0d8) SHA1(bb1132d1e75347ad5156d2b3866aad255f7d53ca) )
+
+ ROM_REGION( 0x1800, "gfx1", 0 )
+ ROM_FILL( 0x0000, 0x1000, 0x0000 ) // filling the R-G bitplanes
+ ROM_LOAD( "0.9a", 0x1000, 0x0800, CRC(1090e7f0) SHA1(26a7fc8853debb9a759811d7fee39410614c3895) ) // char ROM
+ ROM_IGNORE( 0x0800) // identical halves, discarding the 2nd half
+
+ ROM_REGION( 0x1800, "gfx2", 0 )
+ ROM_LOAD( "7.4a", 0x0000, 0x0800, CRC(f2f94661) SHA1(f37f7c0dff680fd02897dae64e13e297d0fdb3e7) ) // cards deck gfx, bitplane1
+ ROM_LOAD( "8.6a", 0x0800, 0x0800, CRC(6bbb1e2d) SHA1(51ee282219bf84218886ad11a24bc6a8e7337527) ) // cards deck gfx, bitplane2
+ ROM_LOAD( "9.7a", 0x1000, 0x0800, CRC(907b21df) SHA1(a6a3968b2ee23ef15ecc8c3b2afbe1b2cc5f42e7) ) // cards deck gfx, bitplane3
+
+ ROM_REGION( 0x0100, "proms", 0 ) // same as common golden poker
+ ROM_LOAD( "tbp24s10n_wh.bin", 0x0000, 0x0100, CRC(7f31066b) SHA1(15420780ec6b2870fc4539ec3afe4f0c58eedf12) )
+ROM_END
+
+ROM_START( potnpkrp ) // ICP-1 PROM mod set.
+ ROM_REGION( 0x10000, "maincpu", 0 )
+ ROM_LOAD( "6.16a", 0x6000, 0x1000, CRC(2dc5e372) SHA1(70a251efe879bc1122baa78984251041a355c895) )
+ ROM_LOAD( "95_09_hn71_7.17a", 0x7000, 0x1000, CRC(2353317a) SHA1(18bf8cfe30aaa4b05207cc250ec1c024bc19ed56) )
+
+ ROM_REGION( 0x1800, "gfx1", 0 )
+ ROM_FILL( 0x0000, 0x1000, 0x0000 ) // filling the R-G bitplanes
+ ROM_LOAD( "4.9a", 0x1000, 0x0800, CRC(1c080c35) SHA1(cb3ed14973029b3891635a4b05d8d2b9dae8aea8) ) // char ROM
+ ROM_IGNORE( 0x0800) // identical halves, discarding the 2nd half
+
+ ROM_REGION( 0x1800, "gfx2", 0 )
+ ROM_LOAD( "1.4a", 0x0000, 0x0800, CRC(f2f94661) SHA1(f37f7c0dff680fd02897dae64e13e297d0fdb3e7) ) // cards deck gfx, bitplane1
+ ROM_LOAD( "2.6a", 0x0800, 0x0800, CRC(6bbb1e2d) SHA1(51ee282219bf84218886ad11a24bc6a8e7337527) ) // cards deck gfx, bitplane2
+ ROM_LOAD( "3.7a", 0x1000, 0x0800, CRC(77143e12) SHA1(b459f704d89be1dd64de3514c0adc6a5d5364749) ) // cards deck gfx, bitplane3
+ ROM_IGNORE( 0x0800) // identical halves, discarding the 2nd half
+
+ ROM_REGION( 0x0100, "proms", 0 ) // high addressing pin tied to GND. the unused second half turns the background color to magenta.
+ ROM_LOAD( "tbp24s10n_pm.bin", 0x0000, 0x0080, CRC(1e79c53d) SHA1(8aa5ae1b82c6e8277427a53a54718f72737e4ec3) )
+ ROM_IGNORE( 0x0080)
+ ROM_RELOAD( 0x0080, 0x0080)
+ ROM_IGNORE( 0x0080)
+ROM_END
+
+
ROM_START( goodluck )
ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD( "goodluck_glh6b.bin", 0x0000, 0x8000, CRC(2cfa4a2c) SHA1(720e2900f3a0ef2632aa201a63b5eba0570e6aa3) )
@@ -5562,7 +6135,7 @@ ROM_END
Nothing about them, except that they are running
on ICP-1 type boards.
- It's a supossed Jack Potten's Poker upgrade.
+ It's a supposed Jack Potten's Poker upgrade.
*************************************************************/
@@ -10727,6 +11300,33 @@ ROM_START( falcnwldc )
ROM_LOAD( "falcon_1.bin", 0x0000, 0x0100, BAD_DUMP CRC(7f31066b) SHA1(15420780ec6b2870fc4539ec3afe4f0c58eedf12) )
ROM_END
+ROM_START( falcnwldd ) // "831 1.1 MADE IN JAPAN" without extra MCU
+ ROM_REGION( 0x10000, "maincpu", 0 )
+ ROM_LOAD( "4.b6", 0x3000, 0x1000, CRC(85952a14) SHA1(dbe2f3abcafe326f24e1bc09b0ec6149f7abfe8d) )
+ ROM_LOAD( "5.b8", 0x4000, 0x1000, CRC(3d33f10b) SHA1(14aee52a297adeccde7ce97870939cdbc9410710) )
+ ROM_LOAD( "6.b9", 0x5000, 0x1000, CRC(aaed1a0a) SHA1(4cb3eb4f0cb007e7f05107c3bc5c5c2afb020cd9) )
+ ROM_LOAD( "7.b11", 0x6000, 0x1000, CRC(0f4fd589) SHA1(236931fd7e4551424e806a65a43e46fee5609b29) )
+ ROM_LOAD( "8.b13", 0x7000, 0x1000, CRC(aa284f03) SHA1(ae2450f9b30370871cb20aa30810ab4fa831817f) )
+
+ ROM_REGION( 0x6000, "temp", 0 )
+ ROM_LOAD( "1.b1", 0x0000, 0x1000, CRC(fd95955d) SHA1(e5c029bc5683d06c2e5250c1271613232a058fcd) )
+ ROM_LOAD( "2.b3", 0x1000, 0x0800, CRC(9ad3c578) SHA1(a69385a807e3270d90040c44721bfff21e95706a) )
+ ROM_LOAD( "3.b4", 0x1800, 0x0800, CRC(d9246780) SHA1(4ceb24131ec6208b742ba80373201aa53c50732d) )
+
+ ROM_REGION( 0x1800, "gfx1", 0 )
+ ROM_FILL( 0x0000, 0x1000, 0x0000 ) // filling bitplanes
+ ROM_COPY( "temp", 0x0800, 0x1000, 0x0800 ) // second half of 1.b1
+
+ ROM_REGION( 0x1800, "gfx2", 0 )
+ ROM_COPY( "temp", 0x1800, 0x0000, 0x0800 ) // first half of 3.b4
+ ROM_COPY( "temp", 0x1000, 0x0800, 0x0800 ) // whole 2.b3
+ ROM_COPY( "temp", 0x0000, 0x1000, 0x0800 ) // first half of 1.b1
+
+ ROM_REGION( 0x0100, "proms", 0 )
+ ROM_LOAD( "falcon_1.bin", 0x0000, 0x0100, CRC(3db3b9e0) SHA1(c956493d5d754665d214b416e6a473d73c22716c) )
+ROM_END
+
+
/**************************************** OTHER SETS ****************************************/
@@ -10750,6 +11350,27 @@ ROM_START( pmpoker )
ROM_LOAD( "tbp24sa10.bin", 0x0000, 0x0100, CRC(7f31066b) SHA1(15420780ec6b2870fc4539ec3afe4f0c58eedf12) ) // PROM dump confirmed OK
ROM_END
+
+ROM_START( jkrbonus ) // PC0-009-31 PCB with sub PCB with CPU, its ROM and RAM, 2 banks of 8 DIP switches and logics.
+ ROM_REGION( 0x10000, "maincpu", 0 )
+ ROM_LOAD( "67jp.ke011.sub", 0x6000, 0x1000, CRC(0811bd92) SHA1(c119b1210b2489262d7ae75a180ba7b79e5793d2) )
+ ROM_CONTINUE( 0x5000, 0x1000 )
+ ROM_LOAD( "68jp.a14", 0x7000, 0x1000, CRC(169a1d12) SHA1(91e283c839cc0639fd93e8119c5ae22061a768cc) )
+
+ ROM_REGION( 0x1800, "gfx1", 0 )
+ ROM_FILL( 0x0000, 0x1000, 0x0000 ) // filling the R-G bitplanes
+ ROM_LOAD( "m4.a7", 0x1000, 0x0800, BAD_DUMP CRC(62b9f90d) SHA1(39c61a01225027572fdb75543bb6a78ed74bb2fb) ) // char ROM, dead, using the one from pmpoker for now
+
+ ROM_REGION( 0x1800, "gfx2", 0 )
+ ROM_LOAD( "u43.a2", 0x0000, 0x0800, CRC(f2f94661) SHA1(f37f7c0dff680fd02897dae64e13e297d0fdb3e7) ) // cards deck gfx, bitplane1
+ ROM_LOAD( "u40.a4", 0x0800, 0x0800, CRC(6bbb1e2d) SHA1(51ee282219bf84218886ad11a24bc6a8e7337527) ) // cards deck gfx, bitplane2
+ ROM_LOAD( "u33.a5", 0x1000, 0x0800, CRC(907b21df) SHA1(a6a3968b2ee23ef15ecc8c3b2afbe1b2cc5f42e7) ) // cards deck gfx, bitplane3
+
+ ROM_REGION( 0x0100, "proms", 0 )
+ ROM_LOAD( "tbp24sa10.bin", 0x0000, 0x0100, BAD_DUMP CRC(7f31066b) SHA1(15420780ec6b2870fc4539ec3afe4f0c58eedf12) ) // not dumped for this set
+ROM_END
+
+
/***************************************************************
Casino Poker.
@@ -11811,6 +12432,209 @@ ROM_START( lespenduj ) // board #2
ROM_END
+/*
+ Olympic Games R6511 CPU encrypted system.
+
+ Wild Card (v2.0)
+ Black jack (v5.04)
+
+ Since we currently haven't a R6511 core, and due to the encrypted program ROMs,
+ I decided to hook the games here till can get some improvements. GFX decode seems OK.
+ Will see if it's necessary to move these games to a different driver later...
+
+ There are tiles for "Wild Card" title.
+ Both sets use the same GFX ROMs.
+
+ Wild Card only uses the main board.
+ Black Jack is an upgrade kit for Wild Card and also uses the I/O board.
+ Black Jack has a hopper tied to the I/O board.
+
+ The IO Card also controls hard meters, coin input, door switch/optic
+ and button switch's BUT Black Jack is wired to the edge connector for
+ buttons still and IO card section for switch's is not used.
+
+
+ Main Board:
+ -----------
+
+ CPU: R6511AQ (U19)
+ Video CRTC: MC6845P (U2)
+ Sound: AY8910 (U1)
+
+ PRG ROMs: 3x 27C128 (U34, U35, U36)
+ GFX ROMs: 2x 2732 (but they used 27C64 and tied the not used pins to +5V)(U27 and U28)
+ 1x 27C64 (U29)
+
+ RAM: 2x 6116 (U21, U22)
+ NVRAM: Dallas 48Z02 (U40)
+
+ Bipolar PROMs: 1x 74S288 (U10)
+ 1x 74S472 (U45)
+
+ PLDs: 2x PAL16L8 (U4, U5)
+ 2x PAL10L8 (U7, U8)
+
+ Xtal 10 MHz.
+
+
+ IO Board:
+ ---------
+
+ CPU: R6511AQ (U25)
+ I/O ROM: 1x 27C512 (U26)
+
+ NVRAM: Dallas 48Z02 (U27)
+
+ I/O devices: 2x PIAs 6821 (U23, U24)
+ Sound: AY8910 (U19)
+
+ PLDs: 1x PAL16L8 (U5)
+
+ Xtal 4.0 MHz.
+
+*/
+ROM_START( olym65wc )
+ ROM_REGION( 0x10000, "maincpu", 0 )
+ ROM_LOAD( "wild_card_u34_v2.0__27c128.u34", 0x2000, 0x4000, CRC(24e422a6) SHA1(d8e84af682a773cd913c88c0cf86d501e7d49290) )
+ ROM_LOAD( "wild_card_u35_v2.0__27c128.u35", 0x8000, 0x4000, CRC(1a155c3c) SHA1(ec89848d7e8c60bcbb63c31b319a146131d7e678) )
+ ROM_LOAD( "wild_card_u36_v2.0__27c128.u36", 0xc000, 0x4000, CRC(4e4a8bbc) SHA1(05219847b92f54af0b6e098e048265a8dbec7800) )
+
+ ROM_REGION( 0x6000, "gfx1", 0 )
+ ROM_FILL( 0x0000, 0x4000, 0x0000 ) // filling the R-G bitplanes
+ ROM_LOAD( "wild_card_u29_v2.0_text__27c64.u29", 0x4000, 0x2000, CRC(382a2a19) SHA1(99e9d1b7b1a7b6d8d17e677b12e2bd1a4fcd51d9) ) // char ROM, plus title and 3rd card deck bitplane
+ ROM_IGNORE( 0x2000) // discarding 2nd half (identical halves).
+
+ ROM_REGION( 0x3000, "gfx2", 0 )
+ ROM_LOAD( "wild_card_v2.0_u28_gfx__2732.u28", 0x0000, 0x1000, CRC(cbf49e79) SHA1(227c2628e9d70008e3f116638e05b57184463cf3) ) // cards deck gfx, bitplane2
+ ROM_LOAD( "wild_card_v2.0_u27_gfx__2732.u27", 0x1000, 0x1000, CRC(5469dcf4) SHA1(e5f8573eb6963eb63bc4d7022b8fc0d6b83a5d92) ) // cards deck gfx, bitplane1
+ ROM_COPY( "gfx1", 0x4800, 0x2000, 0x0800 ) // cards deck gfx, bitplane3. found in the 2nd quarter of the char rom
+ ROM_COPY( "gfx1", 0x5800, 0x2800, 0x0800 ) // cards deck gfx, bitplane3. found in the 4th quarter of the char rom
+
+ ROM_REGION( 0x0100, "proms", 0 )
+ ROM_LOAD( "bprom.bin", 0x0000, 0x0100, BAD_DUMP CRC(7f31066b) SHA1(15420780ec6b2870fc4539ec3afe4f0c58eedf12) ) // borrowed from Golden Poker, seems to match
+ROM_END
+
+ROM_START( olym65bj )
+ ROM_REGION( 0x10000, "maincpu", 0 )
+ ROM_LOAD( "black_jack_v5.04_hx1.u34", 0x2000, 0x4000, CRC(b1ce68da) SHA1(4ed10b7d77cd45a3233b55f852147e19313c5d22) )
+ ROM_LOAD( "black_jack_v5.04_hx2.u35", 0x8000, 0x4000, CRC(d6da3199) SHA1(062595ba775b1548d9acdeeb5c44057a220a5aa0) )
+ ROM_LOAD( "black_jack_v5.04_hx3.u36", 0xc000, 0x4000, CRC(f8b1d506) SHA1(5e4b2c20601526e3e8e76e981e1c37d535a046cb) )
+
+ ROM_REGION( 0x6000, "gfx1", 0 )
+ ROM_FILL( 0x0000, 0x4000, 0x0000 ) // filling the R-G bitplanes
+ ROM_LOAD( "v2.0_text__27c64.u29", 0x4000, 0x2000, CRC(382a2a19) SHA1(99e9d1b7b1a7b6d8d17e677b12e2bd1a4fcd51d9) ) // char ROM, plus title and 3rd card deck bitplane
+ ROM_IGNORE( 0x2000) // discarding 2nd half (identical halves).
+
+ ROM_REGION( 0x3000, "gfx2", 0 )
+ ROM_LOAD( "gfx__2732.u28", 0x0000, 0x1000, CRC(cbf49e79) SHA1(227c2628e9d70008e3f116638e05b57184463cf3) ) // cards deck gfx, bitplane2
+ ROM_LOAD( "gfx__2732.u27", 0x1000, 0x1000, CRC(5469dcf4) SHA1(e5f8573eb6963eb63bc4d7022b8fc0d6b83a5d92) ) // cards deck gfx, bitplane1
+ ROM_COPY( "gfx1", 0x4800, 0x2000, 0x0800 ) // cards deck gfx, bitplane3. found in the 2nd quarter of the char rom
+ ROM_COPY( "gfx1", 0x5800, 0x2800, 0x0800 ) // cards deck gfx, bitplane3. found in the 4th quarter of the char rom
+
+ ROM_REGION( 0x0800, "dallas", 0 ) // original Dallas NVRAM, for reverse-engineering purposes.
+ ROM_LOAD( "black_jack_v5.04__dallas.u40", 0x0000, 0x0800, CRC(64f6b4ed) SHA1(baa3451ac3b275bf4d771bc3dd14a032fe77cd1c) )
+
+ ROM_REGION( 0x0100, "proms", 0 )
+ ROM_LOAD( "bprom.bin", 0x0000, 0x0100, BAD_DUMP CRC(7f31066b) SHA1(15420780ec6b2870fc4539ec3afe4f0c58eedf12) ) // borrowed from Golden Poker, seems to match
+ROM_END
+
+
+/*
+ Open 5 Cards
+ 1987 MNG
+
+ 1x 6502
+ 1x AY8910
+ 2x PIAs 6821
+ 1x CRTC 6845
+
+ 3x 27C256 (One for program ROM, other 2 for GFX)
+ 2x 6116 SRAMs
+
+ 1x 82S129 Bipolar PROM
+
+ 1x PAL18L8 (Locked, tried to brute force it but didn't have much luck)
+
+ XTAL 10.0 MHz.
+
+
+ Looks like the second half of the program ROM contains an unrelated program
+ using the whole CPU addressing and IRQ instead of NMI.
+
+*/
+ ROM_START( op5cards )
+ ROM_REGION( 0x10000, "maincpu", 0 )
+// ROM_LOAD( "noname.ic4", 0x8000, 0x8000, CRC(af0ea127) SHA1(466de9a3e2ebe81eac30bbd9139edd71738d33d4) ) // mapping the unrelated program, to check...
+ ROM_LOAD( "noname.ic4", 0xc000, 0x4000, CRC(af0ea127) SHA1(466de9a3e2ebe81eac30bbd9139edd71738d33d4) )
+ ROM_IGNORE( 0x4000) // discarding 2nd half (the unrelated program).
+
+// noname.ic10 [1/2] noname.ic9 [2/2] IDENTICAL
+// noname.ic10 [2/2] noname.ic9 [1/2] IDENTICAL
+// noname.ic10 [1/4] noname.ic9 [3/4] IDENTICAL
+// noname.ic10 [2/4] noname.ic9 [4/4] IDENTICAL
+// noname.ic10 [3/4] noname.ic9 [1/4] IDENTICAL
+// noname.ic10 [4/4] noname.ic9 [2/4] IDENTICAL
+// noname.ic10 [even 1/2] noname.ic9 [even 2/2] IDENTICAL
+// noname.ic10 [odd 1/2] noname.ic9 [odd 2/2] IDENTICAL
+// noname.ic10 [even 2/2] noname.ic9 [even 1/2] IDENTICAL
+// noname.ic10 [odd 2/2] noname.ic9 [odd 1/2] IDENTICAL
+
+ ROM_REGION( 0x10000, "gfxpool", 0 )
+ ROM_LOAD( "noname.ic10", 0x0000, 0x8000, CRC(35321abc) SHA1(4abb37a9aab6ddfd94e4275de8ff6ca841923ce8) ) // chars, title and cards GFX,
+ ROM_LOAD( "noname.ic9", 0x8000, 0x8000, CRC(9af786b1) SHA1(7ea5d0119abf221bc0da37783cfbc53a5c0f69d0) ) // same as IC10, but with scrambled quarters...
+
+ ROM_REGION( 0x1800, "gfx1", 0 ) // chars
+ ROM_COPY( "gfxpool", 0x0000, 0x1000, 0x0800 ) // src-dest-size
+ ROM_COPY( "gfxpool", 0x2000, 0x0800, 0x0800 ) // src-dest-size
+ ROM_COPY( "gfxpool", 0x4000, 0x0000, 0x0800 ) // src-dest-size
+
+ ROM_REGION( 0x1800, "gfx2", 0 ) // cards
+ ROM_COPY( "gfxpool", 0x0800, 0x1000, 0x0800 ) // src-dest-size
+ ROM_COPY( "gfxpool", 0x2800, 0x0800, 0x0800 ) // src-dest-size
+ ROM_COPY( "gfxpool", 0x4800, 0x0000, 0x0800 ) // src-dest-size
+
+ ROM_REGION( 0x1800, "gfx3", 0 ) // nag, held, cards back
+ ROM_COPY( "gfxpool", 0x1000, 0x1000, 0x0800 ) // src-dest-size
+ ROM_COPY( "gfxpool", 0x3000, 0x0800, 0x0800 ) // src-dest-size
+ ROM_COPY( "gfxpool", 0x5000, 0x0000, 0x0800 ) // src-dest-size
+
+ ROM_REGION( 0x1800, "gfx4", 0 ) // title
+ ROM_COPY( "gfxpool", 0x1800, 0x1000, 0x0800 ) // src-dest-size
+ ROM_COPY( "gfxpool", 0x3800, 0x0800, 0x0800 ) // src-dest-size
+ ROM_COPY( "gfxpool", 0x5800, 0x0000, 0x0800 ) // src-dest-size
+
+ ROM_REGION( 0x0100, "proms", 0 )
+ ROM_LOAD( "82s129.ic31", 0x0000, 0x0100, CRC(b4e1ccd6) SHA1(bb1ce6ff60b92886cd8689b9c9f2fdfa9b33fe09) )
+ROM_END
+
+/*
+ Roulette
+ ICP-1 PCB.
+
+ Obscure and rare roulette game with zillions of checks
+ and protected with password. See the notes above...
+
+*/
+ROM_START( icproul )
+ ROM_REGION( 0x10000, "maincpu", 0 )
+ ROM_LOAD( "2732.16a", 0x2000, 0x1000, CRC(4c956d72) SHA1(e590b5dd8c89923d2c22aed12778727d1304a547) )
+ ROM_LOAD( "2732.17a", 0x3000, 0x1000, CRC(9db71131) SHA1(31802518fe323487322078f7a4535812436900e9) )
+
+ ROM_REGION( 0x3000, "gfx1", 0 )
+ ROM_FILL( 0x0000, 0x2000, 0x0000 ) // filling the R-G bitplanes
+ ROM_LOAD( "2532.8a", 0x2000, 0x1000, CRC(337db871) SHA1(4d852f64553daac285ea9b61a28299f700e56a44) ) // char ROM
+
+ ROM_REGION( 0x1800, "gfx2", 0 ) // unused GFX bank
+ ROM_FILL( 0x0000, 0x1800, 0x0000 ) // filling the whole space
+
+ ROM_REGION( 0x0800, "nvram", 0 ) // default NVRAM, otherwise need to do extended checks and set password
+ ROM_LOAD( "icproul_nvram.bin", 0x0000, 0x0800, CRC(8580a8b3) SHA1(102ac40316ac4c31125b26d5ea688a36894a04ff) )
+
+ ROM_REGION( 0x0100, "proms", 0 )
+ ROM_LOAD( "n82s129an.bin", 0x0000, 0x0100, CRC(1a30bdd8) SHA1(d0a020e9604e8e0920a4500e02770db6c639bace) )
+ROM_END
+
+
/*********************************************
* Driver Init *
*********************************************/
@@ -12129,7 +12953,7 @@ void goldnpkr_state::init_icp1db()
F2EE: 76 69 64 65 6F 20 6B 6C 65 69 6E 20 74 65 73 74 64 61 74 61 00 | video klein testdata.
- So nasty... and unneccessary.
+ So nasty... and unnecessary.
***********************************************/
@@ -12291,6 +13115,56 @@ void goldnpkr_state::init_lespenduj()
ROM0[0x7749] = 0x17; // fix lamps bug
}
+void goldnpkr_state::init_op5cards()
+{
+ /* Seems to do a sort of blend
+ between a tile bytes from 1468-146f (top left backcard edge)
+ with 7468-746f range. In this game seems to be only for this tile.
+ */
+
+ uint8_t *ROM = memregion("gfx3")->base();
+
+ ROM[0x1468] = 0x3f;
+ ROM[0x1469] = 0x7f;
+ ROM[0x146a] = 0xff;
+ ROM[0x146b] = 0xf0;
+ ROM[0x146c] = 0xe0;
+ ROM[0x146d] = 0xe0;
+ ROM[0x146e] = 0xe0;
+ ROM[0x146f] = 0xe0;
+}
+
+void goldnpkr_state::init_olym65()
+{
+ uint8_t *rom = memregion("maincpu")->base();
+
+ for (int i = 0x2000; i <= 0x10000; i++)
+ {
+ if (i & 0x01) rom[i] ^= 0x02;
+ if (i & 0x02) rom[i] ^= 0x04;
+ if (i & 0x04) rom[i] ^= 0x09;
+ if (i & 0x08) rom[i] ^= 0x20;
+ if (i & 0x10) rom[i] ^= 0x40;
+ if (i & 0x20) rom[i] ^= 0x90;
+ }
+}
+
+void goldnpkr_state::init_glfev()
+{
+// breaking the protection loops
+
+ uint8_t *ROM = memregion("maincpu")->base();
+
+ ROM[0xf7c9] = 0xea;
+ ROM[0xf7ca] = 0xea;
+ ROM[0xf7cb] = 0xea;
+
+ ROM[0xf7d5] = 0xea;
+ ROM[0xf7d6] = 0xea;
+ ROM[0xf7d7] = 0xea;
+}
+
+
} // anonymous namespace
@@ -12305,16 +13179,18 @@ GAMEL( 198?, goldnpkc, goldnpkr, goldnpkr, goldnpkr, goldnpkr_state, empty_init
GAMEL( 198?, goldnpkd, goldnpkr, goldnpkr, goldnpkr, goldnpkr_state, empty_init, ROT0, "bootleg", "Golden Poker Double Up (bootleg, set 2)", MACHINE_NOT_WORKING, layout_goldnpkr ) // always get a winning flush
GAMEL( 1983, goldnpke, goldnpkr, goldnpkr, goldnpkr, goldnpkr_state, empty_init, ROT0, "Intercoast (bootleg)", "Golden Poker Double Up (bootleg, set 3)", 0, layout_goldnpkr )
GAMEL( 1983, goldnpkf, goldnpkr, goldnpkr, goldnpkr, goldnpkr_state, empty_init, ROT0, "Intercoast (bootleg)", "Golden Poker Double Up (bootleg, set 4)", 0, layout_goldnpkr )
+GAMEL( 1983, goldnpkg, goldnpkr, goldnpkr, goldnpkr, goldnpkr_state, empty_init, ROT0, "bootleg", "Golden Poker Double Up (bootleg, set 5)", 0, layout_goldnpkr )
+GAMEL( 1983, goldnpkh, goldnpkr, goldnpkr, goldnpkr, goldnpkr_state, empty_init, ROT0, "Bonanza Enterprises, Ltd", "Golden Poker Double Up (tearoom*sara hack)", 0, layout_goldnpkr )
GAMEL( 198?, videtron, 0, goldnpkr, videtron, goldnpkr_state, empty_init, ROT0, "<unknown>", "Videotron Poker (cards selector, set 1)", 0, layout_goldnpkr )
GAMEL( 198?, videtron2, videtron, goldnpkr, videtron, goldnpkr_state, empty_init, ROT0, "<unknown>", "Videotron Poker (cards selector, set 2)", 0, layout_goldnpkr )
GAMEL( 198?, videtrna, videtron, goldnpkr, goldnpkr, goldnpkr_state, empty_init, ROT0, "<unknown>", "Videotron Poker (normal controls)", 0, layout_goldnpkr )
GAMEL( 198?, pottnpkr, 0, pottnpkr, pottnpkr, goldnpkr_state, empty_init, ROT0, "bootleg", "Jack Potten's Poker (set 1)", 0, layout_goldnpkr )
-GAMEL( 198?, potnpkra, pottnpkr, pottnpkr, potnpkra, goldnpkr_state, empty_init, ROT0, "bootleg", "Jack Potten's Poker (set 2)", 0, layout_goldnpkr )
+GAMEL( 198?, potnpkra, pottnpkr, pottnpkr, potnpkra, goldnpkr_state, empty_init, ROT0, "bootleg", "Jack Potten's Poker (set 2)", 0, layout_goldnswp )
GAMEL( 198?, potnpkrb, pottnpkr, pottnpkr, pottnpkr, goldnpkr_state, empty_init, ROT0, "bootleg", "Jack Potten's Poker (set 3)", 0, layout_goldnpkr )
-GAMEL( 198?, potnpkrc, pottnpkr, pottnpkr, potnpkrc, goldnpkr_state, empty_init, ROT0, "bootleg", "Jack Potten's Poker (set 4)", 0, layout_goldnpkr )
-GAMEL( 198?, potnpkrd, pottnpkr, pottnpkr, potnpkrc, goldnpkr_state, empty_init, ROT0, "bootleg", "Jack Potten's Poker (set 5)", 0, layout_goldnpkr )
+GAMEL( 198?, potnpkrc, pottnpkr, pottnpkr, potnpkrc, goldnpkr_state, empty_init, ROT0, "bootleg", "Jack Potten's Poker (set 4)", 0, layout_goldnswp )
+GAMEL( 198?, potnpkrd, pottnpkr, pottnpkr, potnpkrc, goldnpkr_state, empty_init, ROT0, "bootleg", "Jack Potten's Poker (set 5)", 0, layout_goldnswp )
GAMEL( 198?, potnpkre, pottnpkr, pottnpkr, pottnpkr, goldnpkr_state, empty_init, ROT0, "bootleg", "Jack Potten's Poker (set 6)", 0, layout_goldnpkr )
GAMEL( 198?, potnpkrf, pottnpkr, goldnpkr, goldnpkr, goldnpkr_state, empty_init, ROT0, "bootleg", "Jack Potten's Poker (set 7, Royale GFX)", 0, layout_goldnpkr )
GAMEL( 198?, potnpkrg, pottnpkr, pottnpkr, potnpkra, goldnpkr_state, empty_init, ROT0, "bootleg", "Jack Potten's Poker (set 8, Australian)", 0, layout_goldnpkr )
@@ -12323,6 +13199,10 @@ GAMEL( 198?, potnpkri, pottnpkr, pottnpkr, goldnpkr, goldnpkr_state, empty_init
GAMEL( 198?, potnpkrj, pottnpkr, goldnpkr, goldnpkr, goldnpkr_state, empty_init, ROT0, "bootleg", "Jack Potten's Poker (set 11, German, W.W.)", 0, layout_goldnpkr )
GAMEL( 198?, potnpkrk, pottnpkr, goldnpkr, goldnpkr, goldnpkr_state, empty_init, ROT0, "bootleg", "Jack Potten's Poker (set 12, no Double-Up)", 0, layout_goldnpkr )
GAMEL( 198?, potnpkrl, pottnpkr, pottnpkr, potnpkra, goldnpkr_state, empty_init, ROT0, "<unknown>", "Jack Potten's Poker (set 13, ICP-1 PCB)", 0, layout_goldnpkr ) // unencrypted IPC-1 PCB.
+GAMEL( 1988, potnpkrm, pottnpkr, pottnpkr, goldnpkr, goldnpkr_state, empty_init, ROT0, "bootleg", "Jack Potten's Poker (set 14, ICP-1 PCB)", 0, layout_goldnpkr ) // unencrypted IPC-1 PCB.
+GAME ( 198?, potnpkrn, pottnpkr, glfever, glfever, goldnpkr_state, init_glfev, ROT0, "bootleg (PED)", "Jack Potten's Poker (set 15, w/fever, ICP-1 PCB)", 0 )
+GAMEL( 1987, potnpkro, pottnpkr, goldnpkr, potnpkro, goldnpkr_state, empty_init, ROT0, "bootleg (PED)", "Jack Potten's Poker (set 16, ICP-1 PCB)", 0, layout_goldnpkr ) // ICP-1 with mods, 1986 0415 VER 7.0 1987 06-03 BY PED. (wires hack)
+GAMEL( 1987, potnpkrp, pottnpkr, goldnpkr, potnpkro, goldnpkr_state, empty_init, ROT0, "bootleg (PED)", "Jack Potten's Poker (set 17, ICP-1 PCB)", 0, layout_goldnpkr ) // ICP-1 with mods, 1986 0415 VER 7.0 1987 06-03 BY PED. (PROM mod)
GAMEL( 198?, ngold, pottnpkr, pottnpkr, ngold, goldnpkr_state, empty_init, ROT0, "<unknown>", "Jack Potten's Poker (NGold, set 1)", 0, layout_goldnpkr )
GAMEL( 198?, ngolda, pottnpkr, pottnpkr, ngold, goldnpkr_state, empty_init, ROT0, "<unknown>", "Jack Potten's Poker (NGold, set 2)", 0, layout_goldnpkr )
GAMEL( 198?, ngoldb, pottnpkr, pottnpkr, ngoldb, goldnpkr_state, empty_init, ROT0, "<unknown>", "Jack Potten's Poker (NGold, set 3)", 0, layout_goldnpkr )
@@ -12356,9 +13236,8 @@ GAMEL( 1991, goodluck, bsuerte, witchcrd, goodluck, goldnpkr_state, empty_init
GAMEL( 1991, falcnwld, 0, wildcard, wildcard, goldnpkr_state, empty_init, ROT0, "TVG", "Falcons Wild - Wild Card 1991 (TVG)", 0, layout_goldnpkr )
GAMEL( 1990, falcnwlda, falcnwld, wildcard, wildcard, goldnpkr_state, empty_init, ROT0, "Video Klein", "Falcons Wild - World Wide Poker (Video Klein, set 1)", 0, layout_goldnpkr )
GAMEL( 1990, falcnwldb, falcnwld, wildcard, wildcard, goldnpkr_state, empty_init, ROT0, "Video Klein", "Falcons Wild - World Wide Poker (Video Klein, set 2)", 0, layout_goldnpkr )
-GAME( 1983, falcnwldc, falcnwld, wildcrdb, wildcard, goldnpkr_state, empty_init, ROT0, "Falcon", "Falcons Wild - World Wide Poker (Falcon original)", MACHINE_NOT_WORKING ) // MCU hook up incomplete, currently game runs only after a soft reset. Then you can coin up but bet doesn't work
-
-GAME( 1987, super21p, 0, super21p, super21p, goldnpkr_state, empty_init, ROT0, "Public MNG", "Super 21", MACHINE_IMPERFECT_COLORS )
+GAME( 1983, falcnwldc, falcnwld, wildcrde, wildcard, goldnpkr_state, empty_init, ROT0, "Falcon", "Falcons Wild - World Wide Poker (Falcon original, protected)", MACHINE_NOT_WORKING ) // MCU hook up incomplete, currently game runs only after a soft reset. Then you can coin up but bet doesn't work
+GAMEL( 1983, falcnwldd, falcnwld, wildcrdb, wildcard, goldnpkr_state, empty_init, ROT0, "Falcon", "Falcons Wild - World Wide Poker (Falcon original)", 0, layout_goldnpkr )
GAMEL( 1991, witchcrd, 0, witchcrd, witchcrd, goldnpkr_state, init_vkdlsc, ROT0, "Video Klein?", "Witch Card (Video Klein CPU box, set 1)", 0, layout_goldnpkr )
GAME( 1991, witchcrda, witchcrd, witchcrd, witchcda, goldnpkr_state, empty_init, ROT0, "<unknown>", "Witch Card (Spanish, witch game, set 1)", 0 )
@@ -12447,19 +13326,25 @@ GAME( 198?, genie, 0, genie, genie, goldnpkr_state, empty_init
GAME( 198?, geniea, genie, geniea, geniea, goldnpkr_state, empty_init, ROT0, "<unknown>", "Genie (ICP-1, set 2)", 0 )
GAMEL( 1983, silverga, 0, goldnpkr, goldnpkr, goldnpkr_state, empty_init, ROT0, "<unknown>", "Silver Game", 0, layout_goldnpkr )
GAMEL( 1984, bonuspkr, 0, goldnpkr, bonuspkr, goldnpkr_state, init_bonuspkr, ROT0, "Galanthis Inc.", "Bonus Poker", 0, layout_goldnpkr )
+GAMEL( 198?, jkrbonus, 0, goldnpkr, jkrbonus, goldnpkr_state, empty_init, ROT0, "<unknown>", "Joker Bonus", MACHINE_NOT_WORKING, layout_goldnpkr ) // second bank of DIPs not implemented
GAMEL( 198?, superdbl, pottnpkr, goldnpkr, goldnpkr, goldnpkr_state, empty_init, ROT0, "Karateco", "Super Double (French)", 0, layout_goldnpkr )
GAME( 198?, pokerdub, 0, pottnpkr, goldnpkr, goldnpkr_state, empty_init, ROT0, "<unknown>", "unknown French poker game", MACHINE_NOT_WORKING ) // lacks of 2nd program ROM.
GAMEL( 198?, pokersis, 0, goldnpkr, goldnpkr, goldnpkr_state, init_pokersis, ROT0, "Sisteme France", "Good Luck! poker (Sisteme France)", 0, layout_goldnpkr ) // fix banking (4 prgs?)...
-GAME( 1987, pokermon, 0, mondial, mondial, goldnpkr_state, empty_init, ROT0, "<unknown>", "Mundial/Mondial (Italian/French)", 0 ) // banked selectable program.
+GAMEL( 1987, pokermon, 0, mondial, mondial, goldnpkr_state, empty_init, ROT0, "<unknown>", "Mundial/Mondial (Italian/French)", 0, layout_goldnpkr ) // banked selectable program.
GAME( 1998, super98, bsuerte, witchcrd, super98, goldnpkr_state, init_super98, ROT0, "<unknown>", "Super 98 (3-hands, ICP-1)", 0 ) // complex protection. see notes.
-GAME( 198?, animpkr, 0, icp_ext, animpkr, goldnpkr_state, empty_init, ROT0, "<unknown>", "unknown rocket/animal-themed poker", MACHINE_IMPERFECT_COLORS ) // banked program. how to switch gfx?
+GAMEL( 198?, animpkr, 0, icp_ext, animpkr, goldnpkr_state, empty_init, ROT0, "<unknown>", "unknown rocket/animal-themed poker", MACHINE_IMPERFECT_COLORS, layout_goldnswp ) // banked program. how to switch gfx?
+
+GAME( 1987, super21p, 0, super21p, super21p, goldnpkr_state, empty_init, ROT0, "Public MNG", "Super 21", MACHINE_IMPERFECT_COLORS )
+GAME( 1987, op5cards, 0, op5cards, op5cards, goldnpkr_state, init_op5cards, ROT0, "MNG", "Open 5 Cards", 0 ) // initialize lamps but doesn't seems to use them
GAMEL( 198?, lespendu, 0, lespendu, lespendu, goldnpkr_state, init_lespendu, ROT0, "Voyageur de L'Espace Inc.", "Le Super Pendu (V1, words set #1)", 0, layout_lespendu )
GAMEL( 198?, lespenduj, 0, lespendu, lespendu, goldnpkr_state, init_lespenduj,ROT0, "Voyageur de L'Espace Inc.", "Le Super Pendu (V1, words set #2)", 0, layout_lespendu )
+GAME( 198?, icproul, 0, icproul, icproul, goldnpkr_state, empty_init, ROT0, "<unknown>", "Roulette (ICP-1 PCB)", 0 ) // password protected
+
/*************************************** SETS W/IRQ0 ***************************************/
@@ -12475,3 +13360,9 @@ GAMEL( 198?, boasorte, bchanceq, gldnirq0, goldnpkr, goldnpkr_state, empty_init
GAME( 1990, megadpkr, 0, megadpkr, megadpkr, blitz_state, empty_init, ROT0, "Blitz System", "Mega Double Poker (conversion kit, version 2.3 MD)", 0 )
GAME( 1990, megadpkrb, megadpkr, megadpkr, megadpkr, blitz_state, empty_init, ROT0, "Blitz System", "Mega Double Poker (conversion kit, version 2.1 MD)", 0 )
GAME( 1990, maxidpkr, 0, megadpkr, megadpkr, blitz_state, empty_init, ROT0, "Blitz System", "Maxi Double Poker (version 1.8)", MACHINE_NOT_WORKING )
+
+
+/*************************************** SETS W/R6511 ***************************************/
+
+GAME( 1989, olym65wc, 0, goldnpkr, goldnpkr, goldnpkr_state, init_olym65, ROT0, "Olympic Video Gaming PTY LTD", "Wild Card (Olympic Games, v2.0)", MACHINE_NOT_WORKING )
+GAME( 1989, olym65bj, 0, goldnpkr, goldnpkr, goldnpkr_state, init_olym65, ROT0, "Olympic Video Gaming PTY LTD", "Black jack (Olympic Games, v5.04, upgrade kit for Wild Card)", MACHINE_NOT_WORKING )