Fun World driver improvements [Roberto Fresca]

* Added 'Bonus Card (Austrian)' from Fun World.
 * Added PCB layouts.
 * Set Big Deal sets and Jolly Card hybrid as clones
    of Bonus Card.
 * Cleaned up the code.
 * Changed company name 'Funworld' to 'Fun World'.
 * Added technical notes.


New games added or promoted from NOT_WORKING status
---------------------------------------------------
Bonus Card (Austrian) [Roberto Fresca, Team Europe]
This commit is contained in:
Roberto Fresca 2012-10-27 05:46:42 +00:00
parent 4da2648683
commit 5768e8235b
3 changed files with 323 additions and 111 deletions

View File

@ -1,10 +1,14 @@
/********************************************************************************** /**********************************************************************************
FUNWORLD / TAB. Fun World / Amatic / TAB / Impera.
Series 7000 hardware.
Original preliminary driver: Curt Coder, Peter Trauner. 65C02 + 2x PIAs + M6845 CRTC + AY8910
Rewrite and aditional work: Roberto Fresca.
Driver by Roberto Fresca.
Based on a preliminary work of Curt Coder & Peter Trauner.
***********************************************************************************
Games running on this hardware: Games running on this hardware:
@ -18,10 +22,11 @@
* Jolly Card (Italian, blue TAB board, encrypted), bootleg, 199?. * Jolly Card (Italian, blue TAB board, encrypted), bootleg, 199?.
* Jolly Card (Italian, encrypted bootleg), bootleg, 1990. * Jolly Card (Italian, encrypted bootleg), bootleg, 1990.
* Super Joly 2000 - 3x, M.P. 1985. * Super Joly 2000 - 3x, M.P. 1985.
* Jolly Card (Austrian, Funworld, bootleg), Inter Games, 1986. * Jolly Card (Austrian, Fun World, bootleg), Inter Games, 1986.
* Big Deal (Hungarian, set 1), Funworld, 1986. * Bonus Card (Austrian), Fun World, 1986.
* Big Deal (Hungarian, set 2), Funworld, 1986. * Big Deal (Hungarian, set 1), Fun World, 1986.
* Jolly Card (Austrian, Funworld), Funworld, 1986. * Big Deal (Hungarian, set 2), Fun World, 1986.
* Jolly Card (Austrian, Fun World), Fun World, 1986.
* Cuore 1 (Italian), C.M.C., 1996. * Cuore 1 (Italian), C.M.C., 1996.
* Elephant Family (Italian, new), C.M.C., 1997. * Elephant Family (Italian, new), C.M.C., 1997.
* Elephant Family (Italian, old), C.M.C., 1996. * Elephant Family (Italian, old), C.M.C., 1996.
@ -47,20 +52,20 @@
* Magic Card II (Bulgarian), Impera, 1996. * Magic Card II (Bulgarian), Impera, 1996.
* Magic Card II (Green TAB or Impera board), Impera, 1996. * Magic Card II (Green TAB or Impera board), Impera, 1996.
* Magic Card II (Blue TAB board, encrypted), Impera, 1996. * Magic Card II (Blue TAB board, encrypted), Impera, 1996.
* Royal Vegas Joker Card (Slow deal), Funworld, 1993. * Royal Vegas Joker Card (Slow deal), Fun World, 1993.
* Royal Vegas Joker Card (Fast deal), Soft Design, 1993. * Royal Vegas Joker Card (Fast deal), Soft Design, 1993.
* Royal Vegas Joker Card (Fast deal, english gfx), Soft Design, 1993. * Royal Vegas Joker Card (Fast deal, english gfx), Soft Design, 1993.
* Royal Vegas Joker Card (Fast deal, Mile), Mile, 1993. * Royal Vegas Joker Card (Fast deal, Mile), Mile, 1993.
* Jolly Joker (98bet, set 1). Impera, 198?. * Jolly Joker (98bet, set 1). Impera, 198?.
* Jolly Joker (98bet, set 2). Impera, 198?. * Jolly Joker (98bet, set 2). Impera, 198?.
* Jolly Joker (40bet, croatian hack), Impera, 198?. * Jolly Joker (40bet, croatian hack), Impera, 198?.
* Multi Win (Ver.0167, encrypted), Funworld, 1992. * Multi Win (Ver.0167, encrypted), Fun World, 1992.
* Mega Card (Ver 0263, encrypted), Funworld, 1993. * Mega Card (Ver 0263, encrypted), Fun World, 1993.
* Joker Card (Ver.A267BC, encrypted), Vesely Svet, 1993. * Joker Card (Ver.A267BC, encrypted), Vesely Svet, 1993.
* Mongolfier New (Italian), bootleg, 199?. * Mongolfier New (Italian), bootleg, 199?.
* Soccer New (Italian), bootleg, 199?. * Soccer New (Italian), bootleg, 199?.
* Saloon (French, encrypted), unknown, 199?. * Saloon (French, encrypted), unknown, 199?.
* Fun World Quiz (Austrian), Funworld, 198?. * Fun World Quiz (Austrian), Fun World, 198?.
* Witch Royal (Export version 2.1), Video Klein, 199?. * Witch Royal (Export version 2.1), Video Klein, 199?.
* Novo Play Multi Card / Club Card, Admiral/Novomatic, 1986. * Novo Play Multi Card / Club Card, Admiral/Novomatic, 1986.
@ -69,7 +74,7 @@
The hardware is generally composed by: The hardware is generally composed by:
CPU: 1x 65SC02 or 65C02 at 2MHz. CPU: 1x 65SC02 or 65C02 at 2MHz.
Sound: 1x AY3-8910 or YM2149F (AY8910 compatible) at 2MHz. Sound: 1x AY-3-8910 or YM2149F (AY8910 compatible) at 2MHz.
I/O: 2x 6821 (PIA) I/O: 2x 6821 (PIA)
Video: 1x 6845 (CRTC) Video: 1x 6845 (CRTC)
RAM: 1x 6116 RAM: 1x 6116
@ -91,9 +96,9 @@
The hardware was designed to manage 4096 tiles with a size of 8x4 pixels each. The hardware was designed to manage 4096 tiles with a size of 8x4 pixels each.
Also support 4bpp graphics and the palette limitation is 8 bits for color codes (256 x 16colors). Also support 4bpp graphics and the palette limitation is 8 bits for color codes (256 x 16 colors).
It means the hardware was designed for more elaborated graphics than Jolly Card games... It means the hardware was designed for more elaborated graphics than Jolly Card games...
Color PROMs from current games are 512 bytes lenght, but they only use the first 256 bytes. Color PROMs from current games are 512 bytes lenght, but they only can use the first or the last 256 bytes.
Normal hardware capabilities: Normal hardware capabilities:
@ -121,7 +126,7 @@
- Encryption. - Encryption.
A) Encrypted CPU. At least two Funworld boards have custom encrypted CPUs: A) Encrypted CPU. At least two Fun World boards have custom encrypted CPUs:
- Joker Card from Vesely Svet use a custom unknown CPU and use encrypted prg roms. - Joker Card from Vesely Svet use a custom unknown CPU and use encrypted prg roms.
- Royal Card (slovak, encrypted) from Evona Electronic seems to use a block - Royal Card (slovak, encrypted) from Evona Electronic seems to use a block
@ -209,9 +214,11 @@
You have 1 attempt for each 100 earned points. If you lose the game, you lose the points. You have 1 attempt for each 100 earned points. If you lose the game, you lose the points.
* Jolly Card (austrian, Funworld, bootleg) * Bonus Card (Austrian)
* Big Deal (Hungarian)
* Jolly Card (Austrian, Fun World, bootleg)
This one seems to have normal RAM instead of NVRAM. These ones seems to have normal RAM instead of NVRAM.
Going through the code, there's not any NVRAM initialization routine through service 1 & 2. Going through the code, there's not any NVRAM initialization routine through service 1 & 2.
@ -285,7 +292,7 @@
* (multi) Joker Card (Vesely). * (multi) Joker Card (Vesely).
* Multi Win (Funworld) * Multi Win (Fun World)
These sets seems to run in the same modified hardware. These sets seems to run in the same modified hardware.
They are encrypted, and have a second program rom with unknown code/purposes. They are encrypted, and have a second program rom with unknown code/purposes.
@ -390,8 +397,8 @@
$0E00 - $0E00 CRTC6845 (A) // MC6845 addressing. $0E00 - $0E00 CRTC6845 (A) // MC6845 addressing.
$0E01 - $0E01 CRTC6845 (R/W) // MC6845 Read/Write. $0E01 - $0E01 CRTC6845 (R/W) // MC6845 Read/Write.
$2000 - $2FFF VideoRAM (funworld/bigdeal) $2000 - $2FFF VideoRAM (Fun World/bigdeal)
$3000 - $3FFF ColorRAM (funworld/bigdeal) $3000 - $3FFF ColorRAM (Fun World/bigdeal)
$4000 - $4FFF VideoRAM (magicrd2/royalcrd) $4000 - $4FFF VideoRAM (magicrd2/royalcrd)
$5000 - $5FFF ColorRAM (magicrd2/royalcrd) $5000 - $5FFF ColorRAM (magicrd2/royalcrd)
@ -682,7 +689,7 @@
- Fixed graphics bitplanes to involved games. - Fixed graphics bitplanes to involved games.
- Added more hardware/technical info. - Added more hardware/technical info.
- Modify the mongolnw machine driver. Now can see it starts. - Modify the mongolnw machine driver. Now can see it starts.
- Added Multi Win, from Funworld. The set is encrypted and use a - Added Multi Win, from Fun World. The set is encrypted and use a
custom CPU. Seems similar hardware than (multi) Joker Card. custom CPU. Seems similar hardware than (multi) Joker Card.
- Added Fun World Quiz. Needs proper banking, and both graphics and - Added Fun World Quiz. Needs proper banking, and both graphics and
bipolar PROM redumps. bipolar PROM redumps.
@ -757,10 +764,24 @@
- Added default NVRAM, necessary to boot. - Added default NVRAM, necessary to boot.
- Added technical notes. - Added technical notes.
[2012/10/11]
- Added 'Mega Card (Ver 0263, encrypted)' from Fun World.
- Added PCB layout.
- GFX are properly decoded.
[2012/10/27]
- Added 'Bonus Card (Austrian)' from Fun World.
- Added PCB layouts.
- Set Big Deal sets and Jolly Card hybrid as clones
of Bonus Card.
- Cleaned up the code.
- Changed company name 'Funworld' to 'Fun World'.
- Added technical notes.
*** TO DO *** *** TO DO ***
- Figure out the royalcdc, jokercrd and multiwin encryption. - Figure out the royalcdc, jokercrd, multiwin and megacard encryption.
- Figure out the remaining PIA connections for almost all games. - Figure out the remaining PIA connections for almost all games.
- Fix Saloon and move it to its own driver. - Fix Saloon and move it to its own driver.
- Fix the imperfect sound in Magic Card II. - Fix the imperfect sound in Magic Card II.
@ -1280,9 +1301,71 @@ static INPUT_PORTS_START( jolyc980 )
PORT_DIPSETTING( 0x80, "Manual Payout SW" ) PORT_DIPSETTING( 0x80, "Manual Payout SW" )
INPUT_PORTS_END INPUT_PORTS_END
static INPUT_PORTS_START( bonuscrd )
PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_POKER_HOLD1 ) PORT_NAME("Hold 1 / Red")
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_POKER_CANCEL ) PORT_NAME("Clear / Take")
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START1 ) PORT_NAME("Start")
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_HOLD5 ) PORT_NAME("Hold 5 / Black / Bet")
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE2 )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_POKER_HOLD4 ) PORT_NAME("Hold 4 / Hoch (High)")
PORT_START("IN1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_POKER_HOLD2 ) PORT_NAME("Hold 2 / Tief (Low)")
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_POKER_HOLD3 ) PORT_NAME("Hold 3 / Half Gamble")
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT ) PORT_NAME("Payout")
PORT_START("IN2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
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("DSW")
/* the following one should be left ON by default to allow initialization */
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:8")
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x01, DEF_STR( On ) )
PORT_DIPNAME( 0x02, 0x02, "Bonus Type" ) PORT_DIPLOCATION("SW1:7")
PORT_DIPSETTING( 0x00, "Good Luck!" )
PORT_DIPSETTING( 0x02, "55/77/99 Bonus" )
PORT_DIPNAME( 0x04, 0x00, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:6")
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x04, DEF_STR( On ) )
PORT_DIPNAME( 0x08, 0x00, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SW1:5")
PORT_DIPSETTING( 0x00, "5 Points/Coin" )
PORT_DIPSETTING( 0x08, "10 Points/Coin" )
PORT_DIPNAME( 0x10, 0x00, "D-UP Type" ) PORT_DIPLOCATION("SW1:4")
PORT_DIPSETTING( 0x00, "Forced, Red-Low-High-Black" )
PORT_DIPSETTING( 0x10, "Classic Hi-Lo" )
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, 0x00, "Hold" ) PORT_DIPLOCATION("SW1:2")
PORT_DIPSETTING( 0x00, "Auto Hold" )
PORT_DIPSETTING( 0x40, "No Auto Hold" )
/* after nvram init, set the following one to 'manual'
to allow the remote credits mode to work */
PORT_DIPNAME( 0x80, 0x00, "Payout" ) PORT_DIPLOCATION("SW1:1")
PORT_DIPSETTING( 0x00, "Hopper" )
PORT_DIPSETTING( 0x80, "Manual Payout SW" )
INPUT_PORTS_END
static INPUT_PORTS_START( bigdeal ) static INPUT_PORTS_START( bigdeal )
PORT_START("IN0") PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_GAMBLE_KEYIN ) PORT_NAME("Remote") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_POKER_HOLD1 ) PORT_NAME("Hold 1") PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_POKER_HOLD1 ) PORT_NAME("Hold 1")
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_POKER_CANCEL ) PORT_NAME("Clear / Take") PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_POKER_CANCEL ) PORT_NAME("Clear / Take")
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START1 ) PORT_NAME("Start") PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START1 ) PORT_NAME("Start")
@ -1316,18 +1399,18 @@ static INPUT_PORTS_START( bigdeal )
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:8") PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:8")
PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x01, DEF_STR( On ) ) PORT_DIPSETTING( 0x01, DEF_STR( On ) )
PORT_DIPNAME( 0x02, 0x00, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:7") PORT_DIPNAME( 0x02, 0x02, "Bonus Type" ) PORT_DIPLOCATION("SW1:7")
PORT_DIPSETTING( 0x00, "Good Luck!" )
PORT_DIPSETTING( 0x02, "55/77/99 Bonus" )
PORT_DIPNAME( 0x04, 0x00, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:6")
PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x02, DEF_STR( On ) ) PORT_DIPSETTING( 0x04, DEF_STR( On ) )
PORT_DIPNAME( 0x04, 0x00, "Remote Value" ) PORT_DIPLOCATION("SW1:6")
PORT_DIPSETTING( 0x00, "10 Points/Pulse" )
PORT_DIPSETTING( 0x04, "100 Points/Pulse" )
PORT_DIPNAME( 0x08, 0x00, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SW1:5") PORT_DIPNAME( 0x08, 0x00, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SW1:5")
PORT_DIPSETTING( 0x00, "5 Points/Coin" ) PORT_DIPSETTING( 0x00, "5 Points/Coin" )
PORT_DIPSETTING( 0x08, "10 Points/Coin" ) PORT_DIPSETTING( 0x08, "10 Points/Coin" )
PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:4") PORT_DIPNAME( 0x10, 0x00, "D-UP Type" ) PORT_DIPLOCATION("SW1:4")
PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, "Forced, Red-Low-High-Black" )
PORT_DIPSETTING( 0x10, DEF_STR( On ) ) PORT_DIPSETTING( 0x10, "Classic Hi-Lo" )
PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:3") PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:3")
PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x20, DEF_STR( On ) ) PORT_DIPSETTING( 0x20, DEF_STR( On ) )
@ -2189,11 +2272,16 @@ static const gfx_layout charlayout =
* Graphics Decode Information * * Graphics Decode Information *
******************************/ ******************************/
static GFXDECODE_START( fw1stpal ) /* The palette system is adressable through a PLD.
The game could have 2 different palettes, located
in the first and second half of the bipolar PROM.
*/
static GFXDECODE_START( fw1stpal ) /* Adressing the first half of the palette */
GFXDECODE_ENTRY( "gfx1", 0, charlayout, 0, 16 ) GFXDECODE_ENTRY( "gfx1", 0, charlayout, 0, 16 )
GFXDECODE_END GFXDECODE_END
static GFXDECODE_START( fw2ndpal ) static GFXDECODE_START( fw2ndpal ) /* Adressing the second half of the palette */
GFXDECODE_ENTRY( "gfx1", 0, charlayout, 0x100, 16 ) GFXDECODE_ENTRY( "gfx1", 0, charlayout, 0x100, 16 )
GFXDECODE_END GFXDECODE_END
@ -2261,34 +2349,34 @@ static const pia6821_interface pia0_intf =
*/ */
{ {
DEVCB_INPUT_PORT("IN0"), /* port A in */ DEVCB_INPUT_PORT("IN0"), /* port A in */
DEVCB_INPUT_PORT("IN1"), /* port B in */ DEVCB_INPUT_PORT("IN1"), /* port B in */
DEVCB_NULL, /* line CA1 in */ DEVCB_NULL, /* line CA1 in */
DEVCB_NULL, /* line CB1 in */ DEVCB_NULL, /* line CB1 in */
DEVCB_NULL, /* line CA2 in */ DEVCB_NULL, /* line CA2 in */
DEVCB_NULL, /* line CB2 in */ DEVCB_NULL, /* line CB2 in */
DEVCB_NULL, /* port A out */ DEVCB_NULL, /* port A out */
DEVCB_NULL, /* port B out */ DEVCB_NULL, /* port B out */
DEVCB_NULL, /* line CA2 out */ DEVCB_NULL, /* line CA2 out */
DEVCB_NULL, /* port CB2 out */ DEVCB_NULL, /* port CB2 out */
DEVCB_NULL, /* IRQA */ DEVCB_NULL, /* IRQA */
DEVCB_NULL /* IRQB */ DEVCB_NULL /* IRQB */
}; };
static const pia6821_interface pia1_intf = static const pia6821_interface pia1_intf =
{ {
DEVCB_INPUT_PORT("IN2"), /* port A in */ DEVCB_INPUT_PORT("IN2"), /* port A in */
DEVCB_INPUT_PORT("DSW"), /* port B in */ DEVCB_INPUT_PORT("DSW"), /* port B in */
DEVCB_NULL, /* line CA1 in */ DEVCB_NULL, /* line CA1 in */
DEVCB_NULL, /* line CB1 in */ DEVCB_NULL, /* line CB1 in */
DEVCB_NULL, /* line CA2 in */ DEVCB_NULL, /* line CA2 in */
DEVCB_NULL, /* line CB2 in */ DEVCB_NULL, /* line CB2 in */
DEVCB_NULL, /* port A out */ DEVCB_NULL, /* port A out */
DEVCB_NULL, /* port B out */ DEVCB_NULL, /* port B out */
DEVCB_DRIVER_MEMBER(funworld_state,pia1_ca2_w), /* line CA2 out */ DEVCB_DRIVER_MEMBER(funworld_state, pia1_ca2_w), /* line CA2 out */
DEVCB_NULL, /* port CB2 out */ DEVCB_NULL, /* port CB2 out */
DEVCB_NULL, /* IRQA */ DEVCB_NULL, /* IRQA */
DEVCB_NULL /* IRQB */ DEVCB_NULL /* IRQB */
}; };
/* these ports are set to output anyway, but this quietens the log */ /* these ports are set to output anyway, but this quietens the log */
@ -2320,8 +2408,8 @@ static const ay8910_interface funquiz_ay8910_intf =
{ {
AY8910_LEGACY_OUTPUT, AY8910_LEGACY_OUTPUT,
AY8910_DEFAULT_LOADS, AY8910_DEFAULT_LOADS,
DEVCB_DRIVER_MEMBER(funworld_state,funquiz_ay8910_a_r), /* portA in */ DEVCB_DRIVER_MEMBER(funworld_state,funquiz_ay8910_a_r), /* portA in */
DEVCB_DRIVER_MEMBER(funworld_state,funquiz_ay8910_b_r), /* portB in */ DEVCB_DRIVER_MEMBER(funworld_state,funquiz_ay8910_b_r), /* portB in */
DEVCB_DRIVER_MEMBER(funworld_state,funworld_lamp_a_w), /* portA out */ DEVCB_DRIVER_MEMBER(funworld_state,funworld_lamp_a_w), /* portA out */
DEVCB_DRIVER_MEMBER(funworld_state,funworld_lamp_b_w) /* portB out */ DEVCB_DRIVER_MEMBER(funworld_state,funworld_lamp_b_w) /* portB out */
}; };
@ -2353,7 +2441,7 @@ static MACHINE_CONFIG_START( fw1stpal, funworld_state )
/* basic machine hardware */ /* basic machine hardware */
MCFG_CPU_ADD("maincpu", M65SC02, MASTER_CLOCK/8) /* 2MHz */ MCFG_CPU_ADD("maincpu", M65SC02, MASTER_CLOCK/8) /* 2MHz */
MCFG_CPU_PROGRAM_MAP(funworld_map) MCFG_CPU_PROGRAM_MAP(funworld_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", funworld_state, nmi_line_pulse) MCFG_CPU_VBLANK_INT_DRIVER("screen", funworld_state, nmi_line_pulse)
MCFG_NVRAM_ADD_0FILL("nvram") MCFG_NVRAM_ADD_0FILL("nvram")
@ -2372,8 +2460,8 @@ static MACHINE_CONFIG_START( fw1stpal, funworld_state )
MCFG_GFXDECODE(fw1stpal) MCFG_GFXDECODE(fw1stpal)
MCFG_PALETTE_LENGTH(0x200) MCFG_PALETTE_LENGTH(0x200)
MCFG_PALETTE_INIT_OVERRIDE(funworld_state,funworld) MCFG_PALETTE_INIT_OVERRIDE(funworld_state, funworld)
MCFG_VIDEO_START_OVERRIDE(funworld_state,funworld) MCFG_VIDEO_START_OVERRIDE(funworld_state, funworld)
MCFG_MC6845_ADD("crtc", MC6845, MASTER_CLOCK/8, mc6845_intf) /* 2MHz, veryfied on jollycrd & royalcrd */ MCFG_MC6845_ADD("crtc", MC6845, MASTER_CLOCK/8, mc6845_intf) /* 2MHz, veryfied on jollycrd & royalcrd */
@ -2389,7 +2477,7 @@ static MACHINE_CONFIG_DERIVED( fw2ndpal, fw1stpal )
MCFG_CPU_REPLACE("maincpu", M65C02, MASTER_CLOCK/8) /* 2MHz */ MCFG_CPU_REPLACE("maincpu", M65C02, MASTER_CLOCK/8) /* 2MHz */
MCFG_CPU_PROGRAM_MAP(funworld_map) MCFG_CPU_PROGRAM_MAP(funworld_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", funworld_state, nmi_line_pulse) MCFG_CPU_VBLANK_INT_DRIVER("screen", funworld_state, nmi_line_pulse)
MCFG_GFXDECODE(fw2ndpal) MCFG_GFXDECODE(fw2ndpal)
MACHINE_CONFIG_END MACHINE_CONFIG_END
@ -2401,7 +2489,7 @@ static MACHINE_CONFIG_DERIVED( funquiz, fw1stpal )
MCFG_CPU_REPLACE("maincpu", M65C02, MASTER_CLOCK/8) /* 2MHz */ MCFG_CPU_REPLACE("maincpu", M65C02, MASTER_CLOCK/8) /* 2MHz */
MCFG_CPU_PROGRAM_MAP(funquiz_map) MCFG_CPU_PROGRAM_MAP(funquiz_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", funworld_state, nmi_line_pulse) MCFG_CPU_VBLANK_INT_DRIVER("screen", funworld_state, nmi_line_pulse)
MCFG_SOUND_REPLACE("ay8910", AY8910, MASTER_CLOCK/8) /* 2MHz */ MCFG_SOUND_REPLACE("ay8910", AY8910, MASTER_CLOCK/8) /* 2MHz */
MCFG_SOUND_CONFIG(funquiz_ay8910_intf) MCFG_SOUND_CONFIG(funquiz_ay8910_intf)
@ -2413,7 +2501,7 @@ static MACHINE_CONFIG_DERIVED( magicrd2, fw1stpal )
MCFG_CPU_REPLACE("maincpu", M65C02, MASTER_CLOCK/8) /* 2MHz */ MCFG_CPU_REPLACE("maincpu", M65C02, MASTER_CLOCK/8) /* 2MHz */
MCFG_CPU_PROGRAM_MAP(magicrd2_map) MCFG_CPU_PROGRAM_MAP(magicrd2_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", funworld_state, nmi_line_pulse) MCFG_CPU_VBLANK_INT_DRIVER("screen", funworld_state, nmi_line_pulse)
MCFG_VIDEO_START_OVERRIDE(funworld_state,magicrd2) MCFG_VIDEO_START_OVERRIDE(funworld_state,magicrd2)
@ -2426,35 +2514,35 @@ static MACHINE_CONFIG_DERIVED( royalcd1, fw1stpal )
MCFG_CPU_REPLACE("maincpu", M65C02, MASTER_CLOCK/8) /* (G65SC02P in pro version) 2MHz */ MCFG_CPU_REPLACE("maincpu", M65C02, MASTER_CLOCK/8) /* (G65SC02P in pro version) 2MHz */
MCFG_CPU_PROGRAM_MAP(magicrd2_map) MCFG_CPU_PROGRAM_MAP(magicrd2_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", funworld_state, nmi_line_pulse) MCFG_CPU_VBLANK_INT_DRIVER("screen", funworld_state, nmi_line_pulse)
MACHINE_CONFIG_END MACHINE_CONFIG_END
static MACHINE_CONFIG_DERIVED( royalcd2, fw2ndpal ) static MACHINE_CONFIG_DERIVED( royalcd2, fw2ndpal )
MCFG_CPU_REPLACE("maincpu", M65C02, MASTER_CLOCK/8) /* 2MHz */ MCFG_CPU_REPLACE("maincpu", M65C02, MASTER_CLOCK/8) /* 2MHz */
MCFG_CPU_PROGRAM_MAP(magicrd2_map) MCFG_CPU_PROGRAM_MAP(magicrd2_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", funworld_state, nmi_line_pulse) MCFG_CPU_VBLANK_INT_DRIVER("screen", funworld_state, nmi_line_pulse)
MACHINE_CONFIG_END MACHINE_CONFIG_END
static MACHINE_CONFIG_DERIVED( cuoreuno, fw1stpal ) static MACHINE_CONFIG_DERIVED( cuoreuno, fw1stpal )
MCFG_CPU_REPLACE("maincpu", M65C02, MASTER_CLOCK/8) /* 2MHz */ MCFG_CPU_REPLACE("maincpu", M65C02, MASTER_CLOCK/8) /* 2MHz */
MCFG_CPU_PROGRAM_MAP(cuoreuno_map) MCFG_CPU_PROGRAM_MAP(cuoreuno_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", funworld_state, nmi_line_pulse) MCFG_CPU_VBLANK_INT_DRIVER("screen", funworld_state, nmi_line_pulse)
MACHINE_CONFIG_END MACHINE_CONFIG_END
static MACHINE_CONFIG_DERIVED( saloon, fw1stpal ) static MACHINE_CONFIG_DERIVED( saloon, fw1stpal )
MCFG_CPU_REPLACE("maincpu", M65C02, MASTER_CLOCK/8) /* 2MHz */ MCFG_CPU_REPLACE("maincpu", M65C02, MASTER_CLOCK/8) /* 2MHz */
MCFG_CPU_PROGRAM_MAP(saloon_map) MCFG_CPU_PROGRAM_MAP(saloon_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", funworld_state, nmi_line_pulse) MCFG_CPU_VBLANK_INT_DRIVER("screen", funworld_state, nmi_line_pulse)
MACHINE_CONFIG_END MACHINE_CONFIG_END
static MACHINE_CONFIG_DERIVED( witchryl, fw1stpal ) static MACHINE_CONFIG_DERIVED( witchryl, fw1stpal )
MCFG_CPU_REPLACE("maincpu", M65C02, MASTER_CLOCK/8) /* 2MHz */ MCFG_CPU_REPLACE("maincpu", M65C02, MASTER_CLOCK/8) /* 2MHz */
MCFG_CPU_PROGRAM_MAP(witchryl_map) MCFG_CPU_PROGRAM_MAP(witchryl_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", funworld_state, nmi_line_pulse) MCFG_CPU_VBLANK_INT_DRIVER("screen", funworld_state, nmi_line_pulse)
MACHINE_CONFIG_END MACHINE_CONFIG_END
@ -2850,7 +2938,105 @@ ROM_START( jolycdab )
ROM_END ROM_END
/******************************** Big Deal sets ************************************/ /******************************** Bonus Card based sets ************************************/
/*
Bonus Card
Fun World, 1986.
Hardware Fun World/Impera/TAB...
Seems close to Big Deal and Royal Vegas Joker Card.
PCB Layout...
+----------------------------------------------------------------------------------------------------------------+
| |
| +--------+ +--------+ +----------+ +--------+ |
| | | +------------+ | | | LM380N | | | |
| | | | GD74LS157 | | | +----------+ | | +---+ +---+
| | | +------------+ |HYUNDAI | |AY38910A| | | +---+ --|
| | | | | |/P | |ULN| | | --|
| | | +------------+ |HY6116AL| | | |200| |74L| --|
| | | | GD74LS157 | |P-10 | | | |3AN| |S04| --|
| |MC68B45P| +------------+ | | |9027CCA | | | |N | --|
| | | | | | | | | | | --|
| | | +------------+ | | +----------+ | | +---+ | | --|
| | | | GD74LS157 | | | |XRU74HC126| | TAIWAN | +---+ --|
| | 2JR5 | +------------+ | | +----------+ | | --|
| | | +--------+ | | +---+ --|
| |LLAG9319| +------------+ +------------+ | | | | --|
| | | | GD74LS157 | | HD74LS245P | | | |ULN| +---+
| | | +------------+ +------------+ | | |200| |
| | | | | |3AN| |
| | | +----+ | | | | |
| | | +------------------+ |XTAL| | | | | |
| +--------+ | KM6264BL-10 | | | +----------+ +--------+ +---+ |
| | | |16.0| | 74LS139AN| +--------+ +--------+ |
| +-------------+ | 251Y KOREA | |0Mhz| +----------+ | | | | |
| | GD74LS245 | | | +----+ | | | | |
| +-------------+ +------------------+ | | | | +---+
| +---+ +------------+ |R65C02P2| |MC6821P | --|
| +-------------+ +------------+ | | |TIBPAL16L8-2| | | | | --|
| | HD74LS374P | | HD74LS374P | | | +------------+ |11450-12| | 0K2P | --|
| +-------------+ +------------+ | | | | | | --|
| |GD7| | MEXICO | | | --|
|+--------------------+ +----------+ |4LS| | | | | +---+ --|
||Bonus Card 1 | | 74LS194AN| |368| | | |LLAI9320| | 8| --|
|| | +----------+ +---+ |9314 | | | | | --|
|| 27C256| |A27110-4| | | | | --|
|| | +----------+ +---+ | | | | |DIP| --|
|+--------------------+ | 74LS194AN| | | | | | | | | --|
| +----------+ |74L| | | | | | | --|
| |S39| | | | | | | --|
|+--------------------+ +----------+ |3N | | | | | | 1| --|
||Bonus Card 2 | | 74LS194AN| | | | | | | +---+ --|
|| | +----------+ | | +--------+ +--------+ --|
|| 27C256| +---+ +--------+ --|
|| | +----------+ +--------------------+ | | --|
|+--------------------+ | 74LS194AN| |Bonus Card 3 | | | --|
| +----------+ | | | | --|
| | 27C256| |MC6821P | --|
|+----------+ +----------+ | | | | --|
|| GD74LS174| |HD74LS02P | +--------------------+ | 0K2P | --|
|+----------+ +----------+ | | --|
| | | --|
|+---+ +---+ +---+ +---+ +---+ |LLAI9320| --|
||GD7| | | |HD7| | | | | | | --|
||4LS| |74S| |4LS| |74L| JOLLY-2-T |74L| | | --|
||174| |472| |374| |S00| |S02| | | --|
|| | |N | |P | |N | |N | | | --|
|| | | | | | | | +----+ | | | | --|
|| | | | | | | | | A00| | | | | --|
|+---+ | | | | | | +----+ | | | | +---+
| | | | | +---+ +---+ | | |
| +---+ +---+ +--------+ |
| |
+----------------------------------------------------------------------------------------------------------------+
A00 = TL7705ACP
DIP
+---------------+
|#|#| | | |#| | |
|---------------|
| | |#|#|#| |#|#|
+---------------+
1 2 3 4 5 6 7 8
*/
ROM_START( bonuscrd )
ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD( "bonuscard_3.bin", 0x8000, 0x8000, CRC(c4c6f7af) SHA1(3d0c5c867a9473043fb0b2cde6c6b98c4580ad81) )
ROM_REGION( 0x10000, "gfx1", 0 )
ROM_LOAD( "bonuscard_2.bin", 0x0000, 0x8000, CRC(b026823b) SHA1(8d0c80019a9b35104a3782c4fad5c2ca07440a37) )
ROM_LOAD( "bonuscard_1.bin", 0x8000, 0x8000, CRC(e07f72de) SHA1(f4bd6bc7a8aabe76d09d48362e32f29932fff4e4) )
ROM_REGION( 0x0400, "proms", 0 )
// ROM_LOAD( "jokercrd_prom.bin", 0x0000, 0x0200, BAD_DUMP CRC(e59fc06e) SHA1(88a3bb89f020fe2b20f768ca010a082e0b974831) )
ROM_LOAD( "74s472n.bin", 0x0000, 0x0200, CRC(e56780cb) SHA1(c06b854f21b1dcee465ac9c8c9a2934b7e99565f) )
ROM_END
/* /*
Big Deal (hungarian) Big Deal (hungarian)
@ -2889,7 +3075,7 @@ ROM_END
/* /*
Jolly Card (austrian, Funworld, bootleg) Jolly Card (austrian, Fun World, bootleg)
---------------------------------------- ----------------------------------------
- 1x G65SC02P (CPU) - 1x G65SC02P (CPU)
@ -4051,9 +4237,9 @@ ROM_END
/* (Multi) Joker Card from Vesely Svet (Sprightly World). Czech poker game. /* (Multi) Joker Card from Vesely Svet (Sprightly World). Czech poker game.
Program roms seems encrypted. Seems to be a Big Deal clone, running in Program roms seems encrypted. Seems to be a Big Deal clone, running in
Funworld Multi Win hardware. Fun World Multi Win hardware.
1x Custom Funworld CPU, based on 6502 family. Silkscreened "Fun World Elektronik". 1x Custom Fun World CPU, based on 6502 family. Silkscreened "Fun World Elektronik".
1x Maxim MAX690CPA - Microprocessor Supervisory IC (DIP 8). 1x Maxim MAX690CPA - Microprocessor Supervisory IC (DIP 8).
2x MC68B21P PIAs. 2x MC68B21P PIAs.
@ -4394,7 +4580,7 @@ ROM_END
Admiral Club Card (Novo Play) Admiral Club Card (Novo Play)
Novomatic, 1986. Novomatic, 1986.
Hardware Funworld/Impera/TAB... Hardware Fun World/Impera/TAB...
Seems close to Royal Vegas Joker Card. Seems close to Royal Vegas Joker Card.
*/ */
@ -4415,12 +4601,11 @@ ROM_START( novoplay ) /* Similar to Royal Vegas Joker Card */
ROM_END ROM_END
/************************** /**************************
* Driver Initialization * * Driver Initialization *
**************************/ **************************/
DRIVER_INIT_MEMBER(funworld_state,tabblue) DRIVER_INIT_MEMBER(funworld_state, tabblue)
{ {
/**************************************************************************************************** /****************************************************************************************************
@ -4457,7 +4642,7 @@ DRIVER_INIT_MEMBER(funworld_state,tabblue)
} }
} }
DRIVER_INIT_MEMBER(funworld_state,magicd2a) DRIVER_INIT_MEMBER(funworld_state, magicd2a)
/***************************************************************** /*****************************************************************
For a serie of Mexican Rockwell's 65c02 For a serie of Mexican Rockwell's 65c02
@ -4477,7 +4662,7 @@ DRIVER_INIT_MEMBER(funworld_state,magicd2a)
ROM[0xc1c6] = 0x92; ROM[0xc1c6] = 0x92;
} }
DRIVER_INIT_MEMBER(funworld_state,magicd2b) DRIVER_INIT_MEMBER(funworld_state, magicd2b)
/*** same as blue TAB PCB, with the magicd2a patch ***/ /*** same as blue TAB PCB, with the magicd2a patch ***/
{ {
int x, na, nb, nad, nbd; int x, na, nb, nad, nbd;
@ -4498,7 +4683,7 @@ DRIVER_INIT_MEMBER(funworld_state,magicd2b)
ROM[0xc1c6] = 0x92; ROM[0xc1c6] = 0x92;
} }
DRIVER_INIT_MEMBER(funworld_state,soccernw) DRIVER_INIT_MEMBER(funworld_state, soccernw)
{ {
/* temporary patch to avoid hardware errors for debug purposes */ /* temporary patch to avoid hardware errors for debug purposes */
UINT8 *ROM = machine().root_device().memregion("maincpu")->base(); UINT8 *ROM = machine().root_device().memregion("maincpu")->base();
@ -4514,7 +4699,7 @@ DRIVER_INIT_MEMBER(funworld_state,soccernw)
// ROM[0xa33c] = 0xea; // ROM[0xa33c] = 0xea;
} }
DRIVER_INIT_MEMBER(funworld_state,saloon) DRIVER_INIT_MEMBER(funworld_state, saloon)
/************************************************* /*************************************************
LEOPARDO 5 Hardware LEOPARDO 5 Hardware
@ -4622,7 +4807,7 @@ DRIVER_INIT_MEMBER(funworld_state,saloon)
} }
DRIVER_INIT_MEMBER(funworld_state,multiwin) DRIVER_INIT_MEMBER(funworld_state, multiwin)
/***************************************************** /*****************************************************
This only decrypt the text strings. This only decrypt the text strings.
@ -4652,7 +4837,7 @@ DRIVER_INIT_MEMBER(funworld_state,multiwin)
space.set_decrypted_region(0x8000, 0xffff, machine().root_device().memregion("maincpu")->base() + 0x18000); space.set_decrypted_region(0x8000, 0xffff, machine().root_device().memregion("maincpu")->base() + 0x18000);
} }
DRIVER_INIT_MEMBER(funworld_state,royalcdc) DRIVER_INIT_MEMBER(funworld_state, royalcdc)
{ {
/***************************************************** /*****************************************************
@ -4711,6 +4896,8 @@ DRIVER_INIT_MEMBER(funworld_state,royalcdc)
*************************/ *************************/
/* YEAR NAME PARENT MACHINE INPUT STATE INIT ROT COMPANY FULLNAME FLAGS LAYOUT */ /* YEAR NAME PARENT MACHINE INPUT STATE INIT ROT COMPANY FULLNAME FLAGS LAYOUT */
// Jolly Card based...
GAMEL( 1985, jollycrd, 0, fw1stpal, funworld, driver_device, 0, ROT0, "TAB Austria", "Jolly Card (Austrian)", 0, layout_jollycrd ) GAMEL( 1985, jollycrd, 0, fw1stpal, funworld, driver_device, 0, ROT0, "TAB Austria", "Jolly Card (Austrian)", 0, layout_jollycrd )
GAMEL( 1985, jolyc3x3, jollycrd, fw1stpal, funworld, driver_device, 0, ROT0, "TAB Austria", "Jolly Card (3x3 deal)", 0, layout_jollycrd ) GAMEL( 1985, jolyc3x3, jollycrd, fw1stpal, funworld, driver_device, 0, ROT0, "TAB Austria", "Jolly Card (3x3 deal)", 0, layout_jollycrd )
GAMEL( 1993, jolycmzs, jollycrd, cuoreuno, jolyc980, driver_device, 0, ROT0, "MZS Tech", "Jolly Card Professional 2.0 (MZS Tech)", 0, layout_jollycrd ) GAMEL( 1993, jolycmzs, jollycrd, cuoreuno, jolyc980, driver_device, 0, ROT0, "MZS Tech", "Jolly Card Professional 2.0 (MZS Tech)", 0, layout_jollycrd )
@ -4721,10 +4908,15 @@ GAMEL( 1993, jolyccrb, jollycrd, cuoreuno, jolycdcr, driver_device, 0,
GAMEL( 199?, jolycdit, jollycrd, cuoreuno, jolycdit, funworld_state, tabblue, ROT0, "bootleg", "Jolly Card (Italian, blue TAB board, encrypted)", 0, layout_royalcrd ) GAMEL( 199?, jolycdit, jollycrd, cuoreuno, jolycdit, funworld_state, tabblue, ROT0, "bootleg", "Jolly Card (Italian, blue TAB board, encrypted)", 0, layout_royalcrd )
GAMEL( 1990, jolycdib, jollycrd, cuoreuno, jolycdib, funworld_state, tabblue, ROT0, "bootleg", "Jolly Card (Italian, encrypted bootleg)", 0, layout_jollycrd ) /* not a real TAB blue PCB */ GAMEL( 1990, jolycdib, jollycrd, cuoreuno, jolycdib, funworld_state, tabblue, ROT0, "bootleg", "Jolly Card (Italian, encrypted bootleg)", 0, layout_jollycrd ) /* not a real TAB blue PCB */
GAMEL( 1985, sjcd2kx3, jollycrd, fw1stpal, funworld, driver_device, 0, ROT0, "M.P.", "Super Joly 2000 - 3x", 0, layout_jollycrd ) GAMEL( 1985, sjcd2kx3, jollycrd, fw1stpal, funworld, driver_device, 0, ROT0, "M.P.", "Super Joly 2000 - 3x", 0, layout_jollycrd )
GAME( 1986, jolycdab, jollycrd, fw1stpal, funworld, driver_device, 0, ROT0, "Inter Games", "Jolly Card (Austrian, Funworld, bootleg)", GAME_NOT_WORKING ) GAME( 1986, jolycdab, jollycrd, fw1stpal, funworld, driver_device, 0, ROT0, "Inter Games", "Jolly Card (Austrian, Fun World, bootleg)", GAME_NOT_WORKING )
GAMEL( 1986, bigdeal, 0, fw2ndpal, bigdeal, driver_device, 0, ROT0, "Funworld", "Big Deal (Hungarian, set 1)", GAME_IMPERFECT_COLORS, layout_bigdeal )
GAMEL( 1986, bigdealb, bigdeal, fw2ndpal, bigdeal, driver_device, 0, ROT0, "Funworld", "Big Deal (Hungarian, set 2)", GAME_IMPERFECT_COLORS, layout_bigdeal ) // Bonus Card based...
GAMEL( 1986, jolycdat, bigdeal, fw2ndpal, bigdeal, driver_device, 0, ROT0, "Funworld", "Jolly Card (Austrian, Funworld)", GAME_IMPERFECT_COLORS, layout_bigdeal ) GAMEL( 1986, bonuscrd, 0, fw1stpal, bonuscrd, driver_device, 0, ROT0, "Fun World", "Bonus Card (Austrian)", GAME_IMPERFECT_COLORS, layout_bigdeal )
GAMEL( 1986, bigdeal, bonuscrd, fw2ndpal, bigdeal, driver_device, 0, ROT0, "Fun World", "Big Deal (Hungarian, set 1)", GAME_IMPERFECT_COLORS, layout_bigdeal )
GAMEL( 1986, bigdealb, bonuscrd, fw2ndpal, bigdeal, driver_device, 0, ROT0, "Fun World", "Big Deal (Hungarian, set 2)", GAME_IMPERFECT_COLORS, layout_bigdeal )
GAMEL( 1986, jolycdat, bonuscrd, fw2ndpal, bonuscrd, driver_device, 0, ROT0, "Fun World", "Jolly Card (Austrian, Bonus Card hybrid)", GAME_IMPERFECT_COLORS, layout_bigdeal )
// CMC Italian jamma PCB's...
GAMEL( 1996, cuoreuno, 0, cuoreuno, cuoreuno, driver_device, 0, ROT0, "C.M.C.", "Cuore 1 (Italian)", 0, layout_jollycrd ) GAMEL( 1996, cuoreuno, 0, cuoreuno, cuoreuno, driver_device, 0, ROT0, "C.M.C.", "Cuore 1 (Italian)", 0, layout_jollycrd )
GAMEL( 1997, elephfam, 0, cuoreuno, cuoreuno, driver_device, 0, ROT0, "C.M.C.", "Elephant Family (Italian, new)", 0, layout_jollycrd ) GAMEL( 1997, elephfam, 0, cuoreuno, cuoreuno, driver_device, 0, ROT0, "C.M.C.", "Elephant Family (Italian, new)", 0, layout_jollycrd )
GAMEL( 1996, elephfmb, elephfam, cuoreuno, cuoreuno, driver_device, 0, ROT0, "C.M.C.", "Elephant Family (Italian, old)", 0, layout_jollycrd ) GAMEL( 1996, elephfmb, elephfam, cuoreuno, cuoreuno, driver_device, 0, ROT0, "C.M.C.", "Elephant Family (Italian, old)", 0, layout_jollycrd )
@ -4736,6 +4928,8 @@ GAMEL( 1997, tortufam, 0, cuoreuno, cuoreuno, driver_device, 0,
GAMEL( 1996, potgame, 0, cuoreuno, cuoreuno, driver_device, 0, ROT0, "C.M.C.", "Pot Game (Italian)", 0, layout_jollycrd ) GAMEL( 1996, potgame, 0, cuoreuno, cuoreuno, driver_device, 0, ROT0, "C.M.C.", "Pot Game (Italian)", 0, layout_jollycrd )
GAMEL( 1996, bottle10, 0, cuoreuno, cuoreuno, driver_device, 0, ROT0, "C.M.C.", "Bottle 10 (Italian, set 1)", 0, layout_jollycrd ) GAMEL( 1996, bottle10, 0, cuoreuno, cuoreuno, driver_device, 0, ROT0, "C.M.C.", "Bottle 10 (Italian, set 1)", 0, layout_jollycrd )
GAMEL( 1996, bottl10b, bottle10, cuoreuno, cuoreuno, driver_device, 0, ROT0, "C.M.C.", "Bottle 10 (Italian, set 2)", 0, layout_jollycrd ) GAMEL( 1996, bottl10b, bottle10, cuoreuno, cuoreuno, driver_device, 0, ROT0, "C.M.C.", "Bottle 10 (Italian, set 2)", 0, layout_jollycrd )
// Royal Card based...
GAMEL( 1991, royalcrd, 0, royalcd2, royalcrd, driver_device, 0, ROT0, "TAB Austria", "Royal Card (Austrian, set 1)", 0, layout_jollycrd ) GAMEL( 1991, royalcrd, 0, royalcd2, royalcrd, driver_device, 0, ROT0, "TAB Austria", "Royal Card (Austrian, set 1)", 0, layout_jollycrd )
GAMEL( 1991, royalcrda, royalcrd, royalcd2, royalcrd, driver_device, 0, ROT0, "TAB Austria", "Royal Card (Austrian, set 2)", 0, layout_jollycrd ) GAMEL( 1991, royalcrda, royalcrd, royalcd2, royalcrd, driver_device, 0, ROT0, "TAB Austria", "Royal Card (Austrian, set 2)", 0, layout_jollycrd )
GAMEL( 1991, royalcrdb, royalcrd, royalcd1, royalcrd, driver_device, 0, ROT0, "TAB Austria", "Royal Card (Austrian/Polish, set 3)", 0, layout_jollycrd ) GAMEL( 1991, royalcrdb, royalcrd, royalcd1, royalcrd, driver_device, 0, ROT0, "TAB Austria", "Royal Card (Austrian/Polish, set 3)", 0, layout_jollycrd )
@ -4745,24 +4939,38 @@ GAMEL( 1991, royalcrde, royalcrd, royalcd1, royalcrd, driver_device, 0,
GAMEL( 1991, royalcrdt, royalcrd, royalcd1, royalcrd, driver_device, 0, ROT0, "TAB Austria", "Royal Card (TAB original)", 0, layout_jollycrd ) GAMEL( 1991, royalcrdt, royalcrd, royalcd1, royalcrd, driver_device, 0, ROT0, "TAB Austria", "Royal Card (TAB original)", 0, layout_jollycrd )
GAME( 1991, royalcrdf, royalcrd, royalcd1, royalcrd, funworld_state, royalcdc, ROT0, "Evona Electronic","Royal Card (Slovak, encrypted)", GAME_NOT_WORKING ) GAME( 1991, royalcrdf, royalcrd, royalcd1, royalcrd, funworld_state, royalcdc, ROT0, "Evona Electronic","Royal Card (Slovak, encrypted)", GAME_NOT_WORKING )
GAME( 1993, royalcrdp, royalcrd, cuoreuno, royalcrd, driver_device, 0, ROT0, "Digital Dreams", "Royal Card v2.0 Professional", GAME_NOT_WORKING ) GAME( 1993, royalcrdp, royalcrd, cuoreuno, royalcrd, driver_device, 0, ROT0, "Digital Dreams", "Royal Card v2.0 Professional", GAME_NOT_WORKING )
GAMEL( 199?, witchryl, 0, witchryl, witchryl, driver_device, 0, ROT0, "Video Klein", "Witch Royal (Export version 2.1)", 0, layout_jollycrd )
// Lucky Lady based...
GAMEL( 1991, lluck3x3, royalcrd, cuoreuno, royalcrd, driver_device, 0, ROT0, "TAB Austria", "Lucky Lady (3x3 deal)", 0, layout_jollycrd ) GAMEL( 1991, lluck3x3, royalcrd, cuoreuno, royalcrd, driver_device, 0, ROT0, "TAB Austria", "Lucky Lady (3x3 deal)", 0, layout_jollycrd )
GAMEL( 1991, lluck4x1, royalcrd, royalcd1, royalcrd, driver_device, 0, ROT0, "TAB Austria", "Lucky Lady (4x1 aces)", 0, layout_jollycrd ) GAMEL( 1991, lluck4x1, royalcrd, royalcd1, royalcrd, driver_device, 0, ROT0, "TAB Austria", "Lucky Lady (4x1 aces)", 0, layout_jollycrd )
// Magic Card 2 based...
GAMEL( 1996, magicrd2, 0, magicrd2, magicrd2, driver_device, 0, ROT0, "Impera", "Magic Card II (Bulgarian)", GAME_IMPERFECT_SOUND, layout_jollycrd ) GAMEL( 1996, magicrd2, 0, magicrd2, magicrd2, driver_device, 0, ROT0, "Impera", "Magic Card II (Bulgarian)", GAME_IMPERFECT_SOUND, layout_jollycrd )
GAME( 1996, magicd2a, magicrd2, magicrd2, magicrd2, funworld_state, magicd2a, ROT0, "Impera", "Magic Card II (green TAB or Impera board)", GAME_NOT_WORKING ) GAME( 1996, magicd2a, magicrd2, magicrd2, magicrd2, funworld_state, magicd2a, ROT0, "Impera", "Magic Card II (green TAB or Impera board)", GAME_NOT_WORKING )
GAME( 1996, magicd2b, magicrd2, magicrd2, magicrd2, funworld_state, magicd2b, ROT0, "Impera", "Magic Card II (blue TAB board, encrypted)", GAME_NOT_WORKING ) GAME( 1996, magicd2b, magicrd2, magicrd2, magicrd2, funworld_state, magicd2b, ROT0, "Impera", "Magic Card II (blue TAB board, encrypted)", GAME_NOT_WORKING )
GAMEL( 1993, vegasslw, 0, fw2ndpal, vegasslw, driver_device, 0, ROT0, "Funworld", "Royal Vegas Joker Card (slow deal)", 0, layout_jollycrd )
// Joker Card based...
GAMEL( 1993, vegasslw, 0, fw2ndpal, vegasslw, driver_device, 0, ROT0, "Fun World", "Royal Vegas Joker Card (slow deal)", 0, layout_jollycrd )
GAMEL( 1993, vegasfst, vegasslw, fw2ndpal, vegasfst, driver_device, 0, ROT0, "Soft Design", "Royal Vegas Joker Card (fast deal)", 0, layout_jollycrd ) GAMEL( 1993, vegasfst, vegasslw, fw2ndpal, vegasfst, driver_device, 0, ROT0, "Soft Design", "Royal Vegas Joker Card (fast deal)", 0, layout_jollycrd )
GAMEL( 1993, vegasfte, vegasslw, fw2ndpal, vegasfte, driver_device, 0, ROT0, "Soft Design", "Royal Vegas Joker Card (fast deal, English gfx)", 0, layout_jollycrd ) GAMEL( 1993, vegasfte, vegasslw, fw2ndpal, vegasfte, driver_device, 0, ROT0, "Soft Design", "Royal Vegas Joker Card (fast deal, English gfx)", 0, layout_jollycrd )
GAMEL( 1993, vegasmil, vegasslw, fw2ndpal, vegasmil, driver_device, 0, ROT0, "Mile", "Royal Vegas Joker Card (fast deal, Mile)", 0, layout_jollycrd ) GAMEL( 1993, vegasmil, vegasslw, fw2ndpal, vegasmil, driver_device, 0, ROT0, "Mile", "Royal Vegas Joker Card (fast deal, Mile)", 0, layout_jollycrd )
// Jolly Joker based...
GAMEL( 198?, jolyjokr, 0, fw1stpal, funworld, driver_device, 0, ROT0, "Impera", "Jolly Joker (98bet, set 1)", 0, layout_jollycrd ) GAMEL( 198?, jolyjokr, 0, fw1stpal, funworld, driver_device, 0, ROT0, "Impera", "Jolly Joker (98bet, set 1)", 0, layout_jollycrd )
GAMEL( 198?, jolyjokra, jolyjokr, fw1stpal, jolyjokra, driver_device, 0, ROT0, "Impera", "Jolly Joker (98bet, set 2)", 0, layout_jollycrd ) GAMEL( 198?, jolyjokra, jolyjokr, fw1stpal, jolyjokra, driver_device, 0, ROT0, "Impera", "Jolly Joker (98bet, set 2)", 0, layout_jollycrd )
GAMEL( 198?, jolyjokrb, jolyjokr, fw1stpal, funworld, driver_device, 0, ROT0, "Impera", "Jolly Joker (40bet, Croatian hack)", 0, layout_jollycrd ) GAMEL( 198?, jolyjokrb, jolyjokr, fw1stpal, funworld, driver_device, 0, ROT0, "Impera", "Jolly Joker (40bet, Croatian hack)", 0, layout_jollycrd )
GAME( 1992, multiwin, 0, fw1stpal, funworld, funworld_state, multiwin, ROT0, "Funworld", "Multi Win (Ver.0167, encrypted)", GAME_NOT_WORKING )
GAME( 1993, megacard, 0, fw2ndpal, funworld, driver_device, 0, ROT0, "Funworld", "Mega Card (Ver 0263, encrypted)", GAME_NOT_WORKING ) // Encrypted games...
GAME( 1992, multiwin, 0, fw1stpal, funworld, funworld_state, multiwin, ROT0, "Fun World", "Multi Win (Ver.0167, encrypted)", GAME_NOT_WORKING )
GAME( 1993, megacard, 0, fw2ndpal, funworld, driver_device, 0, ROT0, "Fun World", "Mega Card (Ver 0263, encrypted)", GAME_NOT_WORKING )
GAME( 1993, jokercrd, 0, fw2ndpal, funworld, driver_device, 0, ROT0, "Vesely Svet", "Joker Card (Ver.A267BC, encrypted)", GAME_NOT_WORKING ) GAME( 1993, jokercrd, 0, fw2ndpal, funworld, driver_device, 0, ROT0, "Vesely Svet", "Joker Card (Ver.A267BC, encrypted)", GAME_NOT_WORKING )
GAME( 198?, saloon, 0, saloon, saloon, funworld_state, saloon, ROT0, "<unknown>", "Saloon (French, encrypted)", GAME_NOT_WORKING )
// MCU based games...
GAME( 199?, mongolnw, 0, royalcd1, royalcrd, driver_device, 0, ROT0, "bootleg", "Mongolfier New (Italian)", GAME_NOT_WORKING ) GAME( 199?, mongolnw, 0, royalcd1, royalcrd, driver_device, 0, ROT0, "bootleg", "Mongolfier New (Italian)", GAME_NOT_WORKING )
GAME( 199?, soccernw, 0, royalcd1, royalcrd, funworld_state, soccernw, ROT0, "bootleg", "Soccer New (Italian)", GAME_NOT_WORKING ) GAME( 199?, soccernw, 0, royalcd1, royalcrd, funworld_state, soccernw, ROT0, "bootleg", "Soccer New (Italian)", GAME_NOT_WORKING )
GAME( 198?, saloon, 0, saloon, saloon, funworld_state, saloon, ROT0, "<unknown>", "Saloon (French, encrypted)", GAME_NOT_WORKING )
GAME( 198?, funquiz, 0, funquiz, funquiz, driver_device, 0, ROT0, "Funworld / Oehlinger", "Fun World Quiz (Austrian)", 0 ) // Other games...
GAMEL( 199?, witchryl, 0, witchryl, witchryl, driver_device, 0, ROT0, "Video Klein", "Witch Royal (Export version 2.1)", 0, layout_jollycrd ) GAME( 198?, funquiz, 0, funquiz, funquiz, driver_device, 0, ROT0, "Fun World / Oehlinger", "Fun World Quiz (Austrian)", 0 )
GAMEL( 1986, novoplay, 0, fw2ndpal, novoplay, driver_device, 0, ROT0, "Admiral/Novomatic", "Novo Play Multi Card / Club Card", 0, layout_novoplay ) GAMEL( 1986, novoplay, 0, fw2ndpal, novoplay, driver_device, 0, ROT0, "Admiral/Novomatic", "Novo Play Multi Card / Club Card", 0, layout_novoplay )

View File

@ -9868,7 +9868,7 @@ cubeqst // (c) 1983 Simutrek Inc.
cubeqsta // (c) 1983 Simutrek Inc. cubeqsta // (c) 1983 Simutrek Inc.
pkscram // (c) 1993 Cosmo Electronics Corporation pkscram // (c) 1993 Cosmo Electronics Corporation
// Funworld // Fun World
jollycrd // (c) 1985 TAB-Austria jollycrd // (c) 1985 TAB-Austria
jolyc3x3 // (c) 1985 TAB-Austria jolyc3x3 // (c) 1985 TAB-Austria
jolycmzs // (c) 1993 MZS Tech jolycmzs // (c) 1993 MZS Tech
@ -9880,9 +9880,10 @@ jolycdit // 199? bootleg
jolycdib // 1990 bootleg jolycdib // 1990 bootleg
sjcd2kx3 // (c) 1985 M.P. sjcd2kx3 // (c) 1985 M.P.
jolycdab // (c) 1986 Inter Games jolycdab // (c) 1986 Inter Games
bigdeal // (c) 1986 Funworld bonuscrd // (c) 1986 Fun World
bigdealb // (c) 1986 Funworld bigdeal // (c) 1986 Fun World
jolycdat // (c) 1986 Funworld bigdealb // (c) 1986 Fun World
jolycdat // (c) 1986 Fun World
cuoreuno // (c) 1996 C.M.C. cuoreuno // (c) 1996 C.M.C.
elephfam // (c) 1997 C.M.C. elephfam // (c) 1997 C.M.C.
elephfmb // (c) 1996 C.M.C. elephfmb // (c) 1996 C.M.C.
@ -9908,20 +9909,20 @@ lluck4x1 // (c) 1991 TAB-Austria
magicrd2 // (c) 1996 Impera magicrd2 // (c) 1996 Impera
magicd2a // (c) 1996 Impera magicd2a // (c) 1996 Impera
magicd2b // (c) 1996 Impera magicd2b // (c) 1996 Impera
vegasslw // (c) 1993 Funworld vegasslw // (c) 1993 Fun World
vegasfst // (c) 1993 Soft Design vegasfst // (c) 1993 Soft Design
vegasfte // (c) 1993 Soft Design vegasfte // (c) 1993 Soft Design
vegasmil // (c) 1993 Mile vegasmil // (c) 1993 Mile
jolyjokr // (c) 198? Impera jolyjokr // (c) 198? Impera
jolyjokra // (c) 198? Impera jolyjokra // (c) 198? Impera
jolyjokrb // (c) 198? Impera jolyjokrb // (c) 198? Impera
multiwin // (c) 1992 Funworld multiwin // (c) 1992 Fun World
megacard // (c) 1993 Funworld megacard // (c) 1993 Fun World
jokercrd // (c) 1993 Vesely Svet jokercrd // (c) 1993 Vesely Svet
mongolnw // 199? bootleg mongolnw // 199? bootleg
soccernw // 199? bootleg soccernw // 199? bootleg
saloon // 199? unknown saloon // 199? unknown
funquiz // (c) 198? Funworld funquiz // (c) 198? Fun World
witchryl // (c) 199? Video Klein witchryl // (c) 199? Video Klein
novoplay // (c) 1986 Novomatic novoplay // (c) 1986 Novomatic
photoply photoply

View File

@ -1,10 +1,12 @@
/********************************************************************************** /**********************************************************************************
FUNWORLD / TAB. Fun World / Amatic / TAB / Impera.
Video Hardware. Series 7000 hardware.
Video Hardware.
Written by Roberto Fresca. Written by Roberto Fresca.
***********************************************************************************
Games running on this hardware: Games running on this hardware:
@ -18,10 +20,11 @@
* Jolly Card (Italian, blue TAB board, encrypted), bootleg, 199?. * Jolly Card (Italian, blue TAB board, encrypted), bootleg, 199?.
* Jolly Card (Italian, encrypted bootleg), bootleg, 1990. * Jolly Card (Italian, encrypted bootleg), bootleg, 1990.
* Super Joly 2000 - 3x, M.P. 1985. * Super Joly 2000 - 3x, M.P. 1985.
* Jolly Card (Austrian, Funworld, bootleg), Inter Games, 1986. * Jolly Card (Austrian, Fun World, bootleg), Inter Games, 1986.
* Big Deal (Hungarian, set 1), Funworld, 1986. * Bonus Card (Austrian), Fun World, 1986.
* Big Deal (Hungarian, set 2), Funworld, 1986. * Big Deal (Hungarian, set 1), Fun World, 1986.
* Jolly Card (Austrian, Funworld), Funworld, 1986. * Big Deal (Hungarian, set 2), Fun World, 1986.
* Jolly Card (Austrian, Fun World), Fun World, 1986.
* Cuore 1 (Italian), C.M.C., 1996. * Cuore 1 (Italian), C.M.C., 1996.
* Elephant Family (Italian, new), C.M.C., 1997. * Elephant Family (Italian, new), C.M.C., 1997.
* Elephant Family (Italian, old), C.M.C., 1996. * Elephant Family (Italian, old), C.M.C., 1996.
@ -47,20 +50,20 @@
* Magic Card II (Bulgarian), Impera, 1996. * Magic Card II (Bulgarian), Impera, 1996.
* Magic Card II (Green TAB or Impera board), Impera, 1996. * Magic Card II (Green TAB or Impera board), Impera, 1996.
* Magic Card II (Blue TAB board, encrypted), Impera, 1996. * Magic Card II (Blue TAB board, encrypted), Impera, 1996.
* Royal Vegas Joker Card (Slow deal), Funworld, 1993. * Royal Vegas Joker Card (Slow deal), Fun World, 1993.
* Royal Vegas Joker Card (Fast deal), Soft Design, 1993. * Royal Vegas Joker Card (Fast deal), Soft Design, 1993.
* Royal Vegas Joker Card (Fast deal, english gfx), Soft Design, 1993. * Royal Vegas Joker Card (Fast deal, english gfx), Soft Design, 1993.
* Royal Vegas Joker Card (Fast deal, Mile), Mile, 1993. * Royal Vegas Joker Card (Fast deal, Mile), Mile, 1993.
* Jolly Joker (98bet, set 1). Impera, 198?. * Jolly Joker (98bet, set 1). Impera, 198?.
* Jolly Joker (98bet, set 2). Impera, 198?. * Jolly Joker (98bet, set 2). Impera, 198?.
* Jolly Joker (40bet, croatian hack), Impera, 198?. * Jolly Joker (40bet, croatian hack), Impera, 198?.
* Multi Win (Ver.0167, encrypted), Funworld, 1992. * Multi Win (Ver.0167, encrypted), Fun World, 1992.
* Mega Card (Ver 0263, encrypted), Funworld, 1993. * Mega Card (Ver 0263, encrypted), Fun World, 1993.
* Joker Card (Ver.A267BC, encrypted), Vesely Svet, 1993. * Joker Card (Ver.A267BC, encrypted), Vesely Svet, 1993.
* Mongolfier New (Italian), bootleg, 199?. * Mongolfier New (Italian), bootleg, 199?.
* Soccer New (Italian), bootleg, 199?. * Soccer New (Italian), bootleg, 199?.
* Saloon (French, encrypted), unknown, 199?. * Saloon (French, encrypted), unknown, 199?.
* Fun World Quiz (Austrian), Funworld, 198?. * Fun World Quiz (Austrian), Fun World, 198?.
* Witch Royal (Export version 2.1), Video Klein, 199?. * Witch Royal (Export version 2.1), Video Klein, 199?.
* Novo Play Multi Card / Club Card, Admiral/Novomatic, 1986. * Novo Play Multi Card / Club Card, Admiral/Novomatic, 1986.