From 67fd3e41d73a0a0ff578997e6a3da24df39bc88c Mon Sep 17 00:00:00 2001 From: Roberto Fresca Date: Mon, 9 Jun 2008 02:56:53 +0000 Subject: [PATCH] Italian gambling games based on H8/3048 + OKI 6295: Added another Xtal and a new machine driver to support Euro Jolly X5 hardware. This one is based on a Mitsubishi (Renesas) M16/62A 16bit microcomputer. (256 KB of internal flash ROM + 20 KB of RAM). New games marked as GAME_NOT_WORKING ------------------------------------ Euro Jolly X5 [Roberto Fresca] --- src/mame/drivers/itgamble.c | 95 +++++++++++++++++++++++++++++++++---- src/mame/mamedriv.c | 1 + 2 files changed, 86 insertions(+), 10 deletions(-) diff --git a/src/mame/drivers/itgamble.c b/src/mame/drivers/itgamble.c index 9bcf35c1570..f0e8662e782 100644 --- a/src/mame/drivers/itgamble.c +++ b/src/mame/drivers/itgamble.c @@ -1,7 +1,7 @@ /****************************************************************** Nazionale Elettronica + others (mostly Italian) Gambling games - based on H8/3048 + OKI 6295 or similar. + mostly based on H8/3048 + OKI 6295 or similar. . These all use MCUs with internal ROM for their programs, they can't be dumped easily, and thus we can't emulate @@ -48,8 +48,10 @@ #define MAIN_CLOCK XTAL_30MHz #define SND_CLOCK XTAL_1MHz -#define ALT1_CLOCK_A XTAL_24MHz -#define ALT1_CLOCK_B XTAL_16MHz +#define MNUMBER_MAIN_CLOCK XTAL_24MHz +#define MNUMBER_SND_CLOCK XTAL_16MHz + +#define EJOLLYX5_MAIN_CLOCK XTAL_16MHz #include "driver.h" #include "cpu/h83002/h83002.h" @@ -208,9 +210,21 @@ MACHINE_DRIVER_END static MACHINE_DRIVER_START( mnumber ) MDRV_IMPORT_FROM(itgamble) - MDRV_CPU_REPLACE("main", H83044, ALT1_CLOCK_A/2) /* probably the wrong CPU */ + MDRV_CPU_REPLACE("main", H83044, MNUMBER_MAIN_CLOCK/2) /* probably the wrong CPU */ - MDRV_SOUND_REPLACE("oki", OKIM6295, ALT1_CLOCK_B/16) + MDRV_SOUND_REPLACE("oki", OKIM6295, MNUMBER_SND_CLOCK/16) + MDRV_SOUND_CONFIG(okim6295_interface_region_1_pin7high) /* clock frequency & pin 7 not verified */ + MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) +MACHINE_DRIVER_END + + +static MACHINE_DRIVER_START( ejollyx5 ) + + MDRV_IMPORT_FROM(itgamble) + /* wrong CPU. we need a Renesas M16/62A 16bit microcomputer core */ + MDRV_CPU_REPLACE("main", H83044, EJOLLYX5_MAIN_CLOCK/2) /* up to 10MHz.*/ + + MDRV_SOUND_REPLACE("oki", OKIM6295, MNUMBER_SND_CLOCK/16) MDRV_SOUND_CONFIG(okim6295_interface_region_1_pin7high) /* clock frequency & pin 7 not verified */ MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) MACHINE_DRIVER_END @@ -483,18 +497,19 @@ ROM_START( euro2k2a ) ROM_REGION( 0x1000000, REGION_CPU1, 0 ) /* all the program code is in here */ ROM_LOAD( "euro2k2a_ver2.0_hd64f3048f16.mcu", 0x00000, 0x4000, NO_DUMP ) - ROM_REGION( 0x1c0000, REGION_GFX1, 0 ) /* M6295 samples */ + ROM_REGION( 0x1c0000, REGION_GFX1, 0 ) ROM_LOAD( "4a.ic18", 0x000000, 0x80000, CRC(5decae2d) SHA1(d918aad0e2a1249b18677833f743c92fb678050a) ) ROM_LOAD( "5a.ic17", 0x080000, 0x80000, CRC(8f1bbbf3) SHA1(5efcf77674f8737fc1b98881acebacb26b10adc1) ) ROM_LOAD( "2a.ic20", 0x100000, 0x40000, CRC(f9bffb07) SHA1(efba175189d99a4548739a72f8a1f03c2782a3d0) ) ROM_LOAD( "3a.ic19", 0x140000, 0x80000, CRC(56c8a73d) SHA1(49b44e5604cd8675d8f9770e5fb68dad4394e11d) ) /* identical halves */ - ROM_REGION( 0x40000, REGION_SOUND1, 0 ) + ROM_REGION( 0x40000, REGION_SOUND1, 0 ) /* M6295 samples */ ROM_LOAD( "1.ic25", 0x00000, 0x40000, CRC(4fe79e43) SHA1(7c154cb00e9b64fbdcc218280f2183b816cef20b) ) ROM_END -/***** DIFFERENT HARDWARE *****/ +/********** DIFFERENT HARDWARE **********/ + /* Mystery Number @@ -525,17 +540,74 @@ ROM_START( mnumber ) /* clocks should be changed for this game */ ROM_REGION( 0x1000000, REGION_CPU1, 0 ) /* all the program code is in here */ ROM_LOAD( "mnumber_hd64f3048f16.mcu", 0x00000, 0x4000, NO_DUMP ) - ROM_REGION( 0x200000, REGION_GFX1, 0 ) /* M6295 samples */ + ROM_REGION( 0x200000, REGION_GFX1, 0 ) /* different encoded gfx */ ROM_LOAD( "mysterynumber3.u20", 0x000000, 0x80000, CRC(251f1e11) SHA1(e8c90b289e76cea6a541b701859be6465a381668) ) ROM_LOAD( "mysterynumber4.u21", 0x080000, 0x80000, CRC(2b8744e4) SHA1(8a12c6f300818de3738e7c44c7df71c432cb9975) ) ROM_LOAD( "mysterynumber1.u22", 0x100000, 0x80000, CRC(d2ce1f61) SHA1(8f30407050fc102191747996258d4b5da3a0d994) ) ROM_LOAD( "mysterynumber2.u19", 0x180000, 0x80000, CRC(7b3a3b32) SHA1(9db46aa12077a48951056705491da1cce747c374) ) /* identical halves */ - ROM_REGION( 0x40000, REGION_SOUND1, 0 ) + ROM_REGION( 0x40000, REGION_SOUND1, 0 ) /* M6295 samples */ ROM_LOAD( "mysterynumber5.u6", 0x00000, 0x40000, CRC(80aba466) SHA1(e9bf7e1c3d1c6b1b0dba43dd79a71f89e63df814) ) ROM_END +/* Euro Jolly X5 + +CPU: + +1x M30624FGAFP-03001A4 (u1)(main) + +This one is a Mitsubishi (Renesas) M16/62A 16bit microcomputer. +It has 256 KB of internal flash ROM + 20 KB of RAM. + +1x OKI M6295 (u22)(sound) +1x TDA2003 (u25)(sound) +1x LM358M (u23)(sound) +1x oscillator 16.000MHz (u20) + + +ROMs: + +4x M27C4001 (u21, u15, u16, u17) + + +PLDs: + +1x ST93C46 (u18) +(1K 64 x 16 or 128 x 8 serial microwirw EEPROM) + +2x ispLSI1032E-70LJ + + +Note: + +1x JAMMA style edge connector +1x RS232 connector (P1) (along with an ST232C controller (u12) +1x 6 legs jumper (jp1) +1x 8 legs jumper (jp_1) +1x 7 legs jumper (jp2) +1x 4 legs jumper (jp3) +1x red led (d7) +1x battery (bt1) +2x trimmer (r6,r33) (volume) +1x pushbutton (s1) + +*/ + +ROM_START( ejollyx5 ) /* CPU and clock should be changed for this game */ + ROM_REGION( 0x1000000, REGION_CPU1, 0 ) /* all the program code is in here */ + ROM_LOAD( "ejollyx5_m30624fgafp.mcu", 0x00000, 0x4000, NO_DUMP ) + + ROM_REGION( 0x180000, REGION_GFX1, 0 ) /* different encoded gfx */ + ROM_LOAD( "eurojolly5-ep01.u15", 0x000000, 0x80000, CRC(feb4ef88) SHA1(5a86e92326096e4e0619a8aa6b491553eb46839d) ) + ROM_LOAD( "eurojolly5-ep02.u17", 0x080000, 0x80000, CRC(83b2dab0) SHA1(a65cae227a444fe7474f8f821dbb6a8b506e4ae6) ) + ROM_LOAD( "eurojolly5-ep03.u16", 0x100000, 0x80000, CRC(a0599d3c) SHA1(f52928cd75b4374a45fad37b7a7c1d39ea31b5f2) ) + + ROM_REGION( 0x80000, REGION_SOUND1, 0 ) /* M6295 samples, identical halves */ + ROM_LOAD( "eurojolly5-msg0.u21", 0x00000, 0x80000, CRC(edc157bc) SHA1(8400251ca7a74a4a0f2d443ae2c0254f1de955ac) ) +ROM_END + + /************************* * Game Drivers * *************************/ @@ -547,4 +619,7 @@ GAME( 2002, laperla, 0, itgamble, itgamble, 0, ROT0, "Nazionale Elettro GAME( 2001, laperlag, 0, itgamble, itgamble, 0, ROT0, "Nazionale Elettronica", "La Perla Nera Gold (Ver 2.0)", GAME_NOT_WORKING ) GAME( 2001, euro2k2, 0, itgamble, itgamble, 0, ROT0, "Nazionale Elettronica", "Europa 2002 (Ver 2.0, set 1)", GAME_NOT_WORKING ) GAME( 2001, euro2k2a, euro2k2, itgamble, itgamble, 0, ROT0, "Nazionale Elettronica", "Europa 2002 (Ver 2.0, set 2)", GAME_NOT_WORKING ) + +/* different hardware */ GAME( 200?, mnumber, 0, mnumber, itgamble, 0, ROT0, "M.M. - B.R.L.", "Mystery Number", GAME_NOT_WORKING ) +GAME( 200?, ejollyx5, 0, ejollyx5, itgamble, 0, ROT0, "Solar Games", "Euro Jolly X5", GAME_NOT_WORKING ) diff --git a/src/mame/mamedriv.c b/src/mame/mamedriv.c index 011835f807a..c7324492b03 100644 --- a/src/mame/mamedriv.c +++ b/src/mame/mamedriv.c @@ -8102,6 +8102,7 @@ Other Sun games DRIVER( euro2k2 ) /* (c) 2001 Nazionale Elettronica */ DRIVER( euro2k2a ) /* (c) 2001 Nazionale Elettronica */ DRIVER( mnumber ) /* (c) 200? M.M. - B.R.L. */ + DRIVER( ejollyx5 ) /* (c) 200? Solar Games */ /* H8/3337 italian gambling games */ DRIVER( ntcash ) /* 1999 unknown */