diff options
Diffstat (limited to 'trunk/src/mame/drivers/itgamble.c')
-rw-r--r-- | trunk/src/mame/drivers/itgamble.c | 701 |
1 files changed, 701 insertions, 0 deletions
diff --git a/trunk/src/mame/drivers/itgamble.c b/trunk/src/mame/drivers/itgamble.c new file mode 100644 index 00000000000..c25c3c7fe3d --- /dev/null +++ b/trunk/src/mame/drivers/itgamble.c @@ -0,0 +1,701 @@ +/****************************************************************** + + Nazionale Elettronica + others (mostly Italian) Gambling games + 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 + them at the moment because there is nothing to emulate + + This driver is just a placeholder for the graphic / sound + ROM loading + +******************************************************************* + + --- Hardware Notes --- + + The hardware is normally composed by: + + + CPU: 1x H8/3048 (HD64F3048F16). + (128KB ROM; 4KB RAM) + + Sound: 1x AD-65 (OKI 6295) + 1x TDA2003 (audio amplifier). + + PLDs: 1x ispLSI2064-80LJ. + + Clock: 1x Xtal 30.000 MHz. + 1x Resonator ZTB1000J (1000 kHz) or similar. + + ROMs: 1x (up to) 27C2001 or similar (sound). + 2x or more 27C4001 or similar (graphics). + + Timekeeping: 1x Dallas DS1302 Trickle Charge Timekeeping Chip (optional). + + Connectors: 1x 28x2 edge connector. + 1x 12 legs connector. + 1x 24 legs female connector. + 1x 50 legs flat cable connector. + + Other: 1x battery. + 2x 12 DIP switches. + 2x trimmer. + + +*******************************************************************/ + +#define MAIN_CLOCK XTAL_30MHz +#define SND_CLOCK XTAL_1MHz + +#define MNUMBER_MAIN_CLOCK XTAL_24MHz +#define MNUMBER_SND_CLOCK XTAL_16MHz + +#define EJOLLYX5_MAIN_CLOCK XTAL_16MHz + +#include "emu.h" +#include "cpu/h83002/h8.h" +#include "sound/okim6295.h" + + +class itgamble_state : public driver_device +{ +public: + itgamble_state(const machine_config &mconfig, device_type type, const char *tag) + : driver_device(mconfig, type, tag) { } + +}; + + +/************************* +* Video Hardware * +*************************/ + +static VIDEO_START( itgamble ) +{ +} + +static SCREEN_UPDATE( itgamble ) +{ + return 0; +} + + +/************************* +* Memory map information * +*************************/ + +static ADDRESS_MAP_START( itgamble_map, AS_PROGRAM, 16 ) + ADDRESS_MAP_GLOBAL_MASK(0xffffff) + AM_RANGE(0x000000, 0xffffff) AM_ROM +ADDRESS_MAP_END + + +/************************* +* Input ports * +*************************/ + +static INPUT_PORTS_START( itgamble ) + PORT_START("IN0") + PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x0001, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x0002, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_DIPNAME( 0x0004, 0x0004, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x0004, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x0008, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x0010, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_DIPNAME( 0x0020, 0x0020, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x0020, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x0040, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_DIPNAME( 0x0080, 0x0080, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x0080, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_DIPNAME( 0x0100, 0x0100, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x0100, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_DIPNAME( 0x0200, 0x0200, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x0200, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_DIPNAME( 0x0400, 0x0400, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x0400, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_DIPNAME( 0x0800, 0x0800, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x0800, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_DIPNAME( 0x1000, 0x1000, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x1000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_DIPNAME( 0x2000, 0x2000, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x2000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_DIPNAME( 0x4000, 0x4000, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x4000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_DIPNAME( 0x8000, 0x8000, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x8000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) +INPUT_PORTS_END + + +/************************* +* Graphics Layouts * +*************************/ + +static const gfx_layout gfxlayout_8x8x8 = +{ + 8,8, + RGN_FRAC(1,1), + 8, + { 0, 1, 2, 3, 4, 5, 6, 7 }, + { 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8 }, + { 0*64, 1*64, 2*64, 3*64, 4*64, 5*64, 6*64, 7*64 }, + 8*64 +}; + + +/****************************** +* Graphics Decode Information * +******************************/ + +static GFXDECODE_START( itgamble ) + GFXDECODE_ENTRY( "gfx1", 0, gfxlayout_8x8x8, 0, 16 ) +GFXDECODE_END + + +/************************** +* Machine Reset * +**************************/ + +static MACHINE_RESET( itgamble ) +{ + /* stop the CPU, we have no code for it anyway */ + cputag_set_input_line(machine, "maincpu", INPUT_LINE_HALT, ASSERT_LINE); +} + + +/************************** +* Machine Drivers * +**************************/ + +static MACHINE_CONFIG_START( itgamble, itgamble_state ) + + /* basic machine hardware */ + MCFG_CPU_ADD("maincpu", H83044, MAIN_CLOCK/2) /* probably the wrong CPU */ + MCFG_CPU_PROGRAM_MAP(itgamble_map) + + /* video hardware */ + MCFG_SCREEN_ADD("screen", RASTER) + MCFG_SCREEN_REFRESH_RATE(60) + MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0)) + MCFG_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16) + MCFG_SCREEN_SIZE(512, 256) + MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1) + MCFG_SCREEN_UPDATE( itgamble ) + + MCFG_MACHINE_RESET( itgamble ) + + MCFG_GFXDECODE(itgamble) + MCFG_PALETTE_LENGTH(0x200) + MCFG_VIDEO_START( itgamble ) + + /* sound hardware */ + MCFG_SPEAKER_STANDARD_MONO("mono") + MCFG_OKIM6295_ADD("oki", SND_CLOCK, OKIM6295_PIN7_HIGH) /* 1MHz resonator */ + MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) +MACHINE_CONFIG_END + + +static MACHINE_CONFIG_DERIVED( mnumber, itgamble ) + MCFG_CPU_MODIFY("maincpu") + MCFG_CPU_CLOCK(MNUMBER_MAIN_CLOCK/2) /* probably the wrong CPU */ + + MCFG_OKIM6295_REPLACE("oki", MNUMBER_SND_CLOCK/16, OKIM6295_PIN7_HIGH) /* clock frequency & pin 7 not verified */ + MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) +MACHINE_CONFIG_END + + +#ifdef UNUSED_CODE +static MACHINE_CONFIG_DERIVED( ejollyx5, itgamble ) + /* wrong CPU. we need a Renesas M16/62A 16bit microcomputer core */ + MCFG_CPU_MODIFY("maincpu") + MCFG_CPU_CLOCK(EJOLLYX5_MAIN_CLOCK/2) /* up to 10MHz.*/ + + MCFG_OKIM6295_REPLACE("oki", MNUMBER_SND_CLOCK/16, OKIM6295_PIN7_HIGH) /* clock frequency & pin 7 not verified */ + MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) +MACHINE_CONFIG_END +#endif + + +/************************* +* Rom Load * +*************************/ + +/* Capitan Uncino (Ver 1.2) + +CPU: + +1x HD64F3048F16 (main)(ic1) +1x ispLSI2064-80LJ (ic12) +1x AD-65 (equivalent to M6295) (ic24)(sound) +1x oscillator 30.00MHz (close to main) +1x blu resonator 1000J (close to sound) + +ROMs: + +1x M27C2001 (1) +2x M27C4001 (2,3) + +Note: + +1x 28x2 edge connector +1x 12 legs connector +1x 50 legs flat cable connector +1x 12x2 jumpers +1x trimmer (volume) +1x trimmer (spark) + +-------------------- + +PCB is labeled Ver 1.3, while EPROMs are labeled Ver 1.2 + +*/ + +ROM_START( capunc ) + ROM_REGION( 0x1000000, "maincpu", 0 ) /* all the program code is in here */ + ROM_LOAD( "capunc.ver1.2.mcu", 0x00000, 0x4000, NO_DUMP ) + + ROM_REGION( 0x100000, "gfx1", 0 ) + ROM_LOAD( "2.ver.1.2.ic18", 0x000000, 0x80000, CRC(5030f7eb) SHA1(106b61c84e3647b8d68d6c30ee7e63ec2df1f5fd) ) + ROM_LOAD( "3.ver.1.2.ic17", 0x080000, 0x80000, CRC(2b50e312) SHA1(dc901540a5e1a25fe6e7deb58b0fe01f116aaf63) ) + + ROM_REGION( 0x40000, "oki", 0 ) /* M6295 samples */ + ROM_LOAD( "1.ic25", 0x00000, 0x40000, CRC(4fe79e43) SHA1(7c154cb00e9b64fbdcc218280f2183b816cef20b) ) +ROM_END + + +/* Capitani Coraggiosi (Ver 1.3) + +CPU: + +1x HD64F3048F16 (main)(ic1) +1x ispLSI2064-80LJ (ic12) +1x AD-65 (equivalent to M6295) (ic24)(sound) +1x oscillator 30MHz (close to main) +1x orange resonator ZTB1000J (close to sound) + +ROMs: + +1x M27C2001 (1) +2x M27C4001 (2,3) + +Note: + +1x 28x2 edge connector +1x 12 legs connector +1x 50 legs flat cable connector +1x 12x2 switches dip +1x trimmer (volume) +1x trimmer (spark) + + +The differences between this set and the alternate one, are only 4 bytes +in the samples ROM header. Replaced the sound ROM with the clean one. + +3 and 3 files +2.ic18 2.ic18 IDENTICAL +3.ic17 3.ic17 IDENTICAL +1.ic25 1.ic25 99.998474% + +*/ + +ROM_START( capcor ) + ROM_REGION( 0x1000000, "maincpu", 0 ) /* all the program code is in here */ + ROM_LOAD( "capcor.ver1.3.mcu", 0x00000, 0x4000, NO_DUMP ) + + ROM_REGION( 0x100000, "gfx1", 0 ) + ROM_LOAD( "2.ic18", 0x000000, 0x80000, CRC(342bea85) SHA1(885080a9b55d64f9a93e3d5e31e6b13f272bdb93) ) + ROM_LOAD( "3.ic17", 0x080000, 0x80000, CRC(ac530eff) SHA1(7c3a6e322311a1cd93801639a0498d5947fb14f2) ) + + ROM_REGION( 0x40000, "oki", 0 ) /* M6295 samples */ + ROM_LOAD( "1.ic25", 0x00000, 0x40000, CRC(4fe79e43) SHA1(7c154cb00e9b64fbdcc218280f2183b816cef20b) ) +ROM_END + + +/* La Perla Nera (Ver 2.0) + +CPU: + +1x HD64F3048F16 (main)(ic1) +1x ispLSI2064-80LJ (ic12) +1x AD-65 (equivalent to M6295) (ic24)(sound) +1x oscillator 30.00MHz (close to main) +1x red resonator ZTB1000J (close to sound) + +ROMs: + +1x M27C2001 (1) +2x M27C4001 (2,3) + +Note: + +1x 28x2 edge connector +1x 12 legs connector +1x 50 legs flat cable connector +1x 12x2 jumper +1x trimmer (volume) +1x trimmer (spark) + +*/ + +ROM_START( laperla ) + ROM_REGION( 0x1000000, "maincpu", 0 ) /* all the program code is in here */ + ROM_LOAD( "laperla_ver2.0_hd64f3048f16.mcu", 0x00000, 0x4000, NO_DUMP ) + + ROM_REGION( 0x100000, "gfx1", 0 ) + ROM_LOAD( "2jolly.ic18", 0x000000, 0x80000, CRC(7bf3d5f2) SHA1(f3a51dd642358a20f6324f28fdf458e8ceaca7a1) ) + ROM_LOAD( "3jolly.ic17", 0x080000, 0x80000, CRC(c3a8d9a0) SHA1(cc95c56ebc6137e11c82ed17be7c9f83ed7b6cfc) ) + + ROM_REGION( 0x40000, "oki", 0 ) /* M6295 samples */ + ROM_LOAD( "1.ic25", 0x00000, 0x40000, CRC(4fe79e43) SHA1(7c154cb00e9b64fbdcc218280f2183b816cef20b) ) +ROM_END + + +/* La Perla Nera Gold (Ver 2.0) + +CPU: + +1x HD64F3048F16 (main)(ic1) +1x ispLSI2064-80LJ (ic12) +1x AD-65 (equivalent to M6295) (ic24)(sound) +1x oscillator 30.00MHz (close to main) +1x red resonator ZTB1000J (close to sound) + +ROMs: + +1x M27C2001 (1) +2x M27C4001 (2,3) + +Note: + +1x 28x2 edge connector +1x 12 legs connector +1x 50 legs flat cable connector +1x 12x2 jumper +1x trimmer (volume) +1x trimmer (spark) + +--------------------------------------------- + +laperla vs. laperlag + +3 and 3 files +3jolly.ic17 ic17-laperlanera 11.018181% +2jolly.ic18 ic18-laperlanera 10.766602% +1.ic25 NO MATCH + ic25-uno.bin NO MATCH +*/ + +ROM_START( laperlag ) + ROM_REGION( 0x1000000, "maincpu", 0 ) /* all the program code is in here */ + ROM_LOAD( "laperlag_ver2.0_hd64f3048f16.mcu", 0x00000, 0x4000, NO_DUMP ) + + ROM_REGION( 0x100000, "gfx1", 0 ) + ROM_LOAD( "ic18-laperlaneragold2.bin", 0x000000, 0x80000, CRC(ae37de44) SHA1(089f97678fa39aee1885d7c63c4bc7c88e7fe553) ) + ROM_LOAD( "ic17-laperlaneragold3.bin", 0x080000, 0x80000, CRC(86da6d11) SHA1(e6b7f9ccbf2e91a60fdf38067ec7ac7e73dea8cd) ) + + ROM_REGION( 0x40000, "oki", 0 ) /* M6295 samples */ + ROM_LOAD( "ic25-uno.bin", 0x00000, 0x20000, CRC(e6a0854b) SHA1(394e01bb24abd1e0d2c447b4d620fc5d02257d8a) ) +ROM_END + + +/* Europa 2002 (Ver 2.0, set 1) + +CPU: + +1x HD64F3048F16 (main)(ic1) +1x ispLSI2064-80LJ (ic12) +1x AD-65 (equivalent to M6295) (ic24)(sound) +1x oscillator 30MHz (close to main) +1x blu resonator 1000J (close to sound) + +ROMs: + +3x M27C2001 (1,2,3) +2x M27C4001 (4,5) + +Note: + +1x 28x2 edge connector +1x 12 legs connector +1x 50 legs flat cable connector +1x 12x2 switches dip +1x trimmer (volume) +1x trimmer (spark) + +*/ + +ROM_START( euro2k2 ) + ROM_REGION( 0x1000000, "maincpu", 0 ) /* all the program code is in here */ + ROM_LOAD( "euro2k2_ver2.0_hd64f3048f16.mcu", 0x00000, 0x4000, NO_DUMP ) + + ROM_REGION( 0x180000, "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, 0x40000, CRC(8b29cd56) SHA1(8a09e307271bceef6e9f863153d0f7a9bc6dc6bd) ) + + ROM_REGION( 0x40000, "oki", 0 ) /* M6295 samples */ + ROM_LOAD( "1.ic25", 0x00000, 0x40000, CRC(b9b1aff0) SHA1(35622d7d099a10e5c6bcae152fded1f50692f740) ) +ROM_END + + +/* Europa 2002 (Ver 2.0, set 2) + +CPU: + +1x HD64F3048F16 (main)(ic1) +1x ispLSI2064-80LJ (ic12) +1x U6295 (equivalent to M6295) (ic24)(sound) +1x oscillator 30.00MHz (close to main) +1x orange resonator ZTB1000J (close to sound) + +ROMs: + +2x M27C2001 (1,2) +3x M27C4001 (3,4,5) + +Note: + +1x 28x2 edge connector +1x 12 legs connector +1x 50 legs flat cable connector +1x 12x2 switches dip +1x trimmer (volume) +1x trimmer (spark) + +--------------------------------------- + +euro2k2 vs. euro2k2a + +5 and 5 files +4a.ic18 FIXED BITS (xxxxxxx0) + 3a.ic19 1ST AND 2ND HALF IDENTICAL + 4a.ic18 FIXED BITS (xxxxxxx0) +2a.ic20 2a.ic20 IDENTICAL +4a.ic18 4a.ic18 IDENTICAL +5a.ic17 5a.ic17 IDENTICAL +1.ic25 1.ic25 99.998474% +3a.ic19 NO MATCH + 3a.ic19 NO MATCH +*/ + +ROM_START( euro2k2a ) + ROM_REGION( 0x1000000, "maincpu", 0 ) /* all the program code is in here */ + ROM_LOAD( "euro2k2a_ver2.0_hd64f3048f16.mcu", 0x00000, 0x4000, NO_DUMP ) + + ROM_REGION( 0x1c0000, "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, "oki", 0 ) /* M6295 samples */ + ROM_LOAD( "1.ic25", 0x00000, 0x40000, CRC(4fe79e43) SHA1(7c154cb00e9b64fbdcc218280f2183b816cef20b) ) +ROM_END + + +/* Europa 2002 Space (Ver 3.0) + +Year: 2002 +Company: Nazionale Elettronica + +CPU: + +1x HD64F3048F16 (main)(ic1) +1x ispLSI2064-80LJ (ic12) +1x U6295 (equivalent to M6295) (ic24)(sound) +1x TDA2003 (sound)(ic26) +1x LM358N (sound)(ic27) +1x oscillator 30MHz (close to main)(osc1) +1x blue resonator (close to sound) (x1) + +ROMs: + +1x MX27C1000 (1) +2x M27C2001 (2,3) +2x M27C4001 (4,5) + +Note: + +1x 28x2 edge connector +1x 12 legs connector +1x 50 legs flat cable connector +1x trimmer (volume) +1x trimmer (spark) + +*/ + +ROM_START( euro2k2s ) + ROM_REGION( 0x1000000, "maincpu", 0 ) /* all the program code is in here */ + ROM_LOAD( "euro2k2s_ver3.0_hd64f3048f16.mcu", 0x00000, 0x4000, NO_DUMP ) + + ROM_REGION( 0x180000, "gfx1", 0 ) + ROM_LOAD( "europa2002space4.ic18", 0x000000, 0x80000, CRC(cf4db4f1) SHA1(6c03e54e30eb83778d1cad5ade17c26a370ea8a3) ) + ROM_LOAD( "europa2002space5.ic17", 0x080000, 0x80000, CRC(1070b4ac) SHA1(3492de52cd0c784479d2774f6050b24cf4591484) ) + ROM_LOAD( "europa2002_2-a.ic20", 0x100000, 0x40000, CRC(971bc33b) SHA1(c385e5bef57cdb52a86c1e38fca471ef5ab3da7c) ) + ROM_LOAD( "europa2002space3.ic19", 0x140000, 0x40000, CRC(d82dba04) SHA1(63d407dd036d3c7f190ad7b6d694288e9a9e56d0) ) /* identical halves */ + + ROM_REGION( 0x40000, "oki", 0 ) /* M6295 samples */ + ROM_LOAD( "1-a.ic25", 0x00000, 0x20000, CRC(8fcb283d) SHA1(9e95c72967da13606eed6d16f84145273b9ffddf) ) +ROM_END + +/* + +CPUs +1x H8/3048 ic1 16-bit Single-Chip Microcomputer - main (internal ROM not dumped) +1x AD-65 ic24 4-Channel Mixing ADCPM Voice Synthesis LSI - sound +1x LM358N ic27 Dual Operational Amplifier - sound +1x TDA2003 ic26 Audio Amplifier - sound +1x oscillator 30.000MHz osc1 +1x blu resonator 1000J x1 +1x oscillator KDS0D x2 +ROMs +1x W27C020 1 dumped +2x M27C4001 2,3 dumped +RAMs +2x LST62832I-70LL-10L ic13,ic14 +PLDs +1x ispLSI2064-80LJ ic12 not dumped + +Others +1x 28x2 edge connector +1x 50 pins flat cable connector (CN4) +1x 12 legs connector (CN1) +2x trimmer (volume,spark) +1x 12x2 switches DIP +1x battery 3.6V + +*/ + +ROM_START( abacus ) + ROM_REGION( 0x1000000, "maincpu", 0 ) /* all the program code is in here */ + ROM_LOAD( "abacus_ver1.0_hd64f3048f16.mcu", 0x00000, 0x4000, NO_DUMP ) + + ROM_REGION( 0x100000, "gfx1", 0 ) //bigger than 8bpps? + ROM_LOAD( "abacus2.ic18", 0x000000, 0x80000, CRC(9884ee09) SHA1(85875dbcd6821c8173457df0216145b4208d5c06) ) + ROM_LOAD( "abacus3.ic17", 0x080000, 0x80000, CRC(ec6473c4) SHA1(49980b94ccf77fbfdaa151fccaeb3c2ddad3c119) ) + + ROM_REGION( 0x40000, "oki", 0 ) /* M6295 samples */ + ROM_LOAD( "1.ic25", 0x00000, 0x40000, CRC(4fe79e43) SHA1(7c154cb00e9b64fbdcc218280f2183b816cef20b) ) +ROM_END + +/* + +CPUs +1x H8/3048 ic1 16-bit Single-Chip Microcomputer - main (internal ROM not dumped) +1x AD-65 ic24 4-Channel Mixing ADCPM Voice Synthesis LSI - sound +1x LM358N ic27 Dual Operational Amplifier - sound +1x TDA2003 ic26 Audio Amplifier - sound +1x oscillator 30.000MHz osc1 +1x red resonator ZTB1000J x1 +ROMs +1x W27C020 1 dumped +2x M27C4001 2,3 dumped +RAMs +2x MB8464C-10L ic13,ic14 +PLDs +1x ispLSI2064-80LJ ic12 not dumped + +Others +1x 28x2 edge connector +1x 50 pins flat cable connector (CN4) +1x 12 legs connector (CN1) +2x trimmer (volume,spark) +1x 12x2 switches DIP +1x battery 3V + +*/ + +ROM_START( bookthr ) + ROM_REGION( 0x1000000, "maincpu", 0 ) /* all the program code is in here */ + ROM_LOAD( "bookthr_ver1.2_hd64f3048f16.mcu", 0x00000, 0x4000, NO_DUMP ) + + ROM_REGION( 0x100000, "gfx1", 0 ) //bigger than 8bpps? + ROM_LOAD( "2.ic18", 0x000000, 0x80000, CRC(39433a74) SHA1(088944bfb43b4f239f22d0d2213efd19cea7db30) ) + ROM_LOAD( "3.ic17", 0x080000, 0x80000, CRC(893abdcc) SHA1(4dd28fd46bec8be5549d679d31c771888fcb1286) ) + + ROM_REGION( 0x40000, "oki", 0 ) /* M6295 samples */ + ROM_LOAD( "1.ic25", 0x00000, 0x40000, CRC(4fe79e43) SHA1(7c154cb00e9b64fbdcc218280f2183b816cef20b) ) //same as Abacus +ROM_END + +/********** DIFFERENT HARDWARE **********/ + + +/* Mystery Number + +CPU: + +1x HD64F3048F16 (main)(u2) +3x XC9572 (u29,u33,u34) +1x M6295 (u5)(sound) +1x oscillator 24.000 MHz. +1x oscillator 16.000 MHz. + +ROMs: + +4x M27C4001 (1,2,3,4)(main) +1x AM27C020 (5)(sound) + +Note: + +1x JAMMA edge connector +1x 8 legs jumper (jp1) +1x battery +1x 8x2 DIP switches +1x trimmer (volume) + +*/ + +ROM_START( mnumber ) /* clocks should be changed for this game */ + ROM_REGION( 0x1000000, "maincpu", 0 ) /* all the program code is in here */ + ROM_LOAD( "mnumber_hd64f3048f16.mcu", 0x00000, 0x4000, NO_DUMP ) + + ROM_REGION( 0x200000, "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, "oki", 0 ) /* M6295 samples */ + ROM_LOAD( "mysterynumber5.u6", 0x00000, 0x40000, CRC(80aba466) SHA1(e9bf7e1c3d1c6b1b0dba43dd79a71f89e63df814) ) +ROM_END + + +/************************* +* Game Drivers * +*************************/ + +/* YEAR NAME PARENT MACHINE INPUT INIT ROT COMPANY FULLNAME FLAGS */ +GAME( 2000, capunc, 0, itgamble, itgamble, 0, ROT0, "Nazionale Elettronica", "Capitan Uncino (Ver 1.2)", GAME_NOT_WORKING ) +GAME( 2001, capcor, 0, itgamble, itgamble, 0, ROT0, "Nazionale Elettronica", "Capitani Coraggiosi (Ver 1.3)", GAME_NOT_WORKING ) +GAME( 2002, laperla, 0, itgamble, itgamble, 0, ROT0, "Nazionale Elettronica", "La Perla Nera (Ver 2.0)", GAME_NOT_WORKING ) +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 ) +GAME( 2002, euro2k2s, euro2k2, itgamble, itgamble, 0, ROT0, "Nazionale Elettronica", "Europa 2002 Space (Ver 3.0)", GAME_NOT_WORKING ) +GAME( 200?, abacus, 0, itgamble, itgamble, 0, ROT0, "<unknown>", "Abacus (Ver 1.0)", GAME_NOT_WORKING ) +GAME( 200?, bookthr, 0, itgamble, itgamble, 0, ROT0, "<unknown>", "Book Theatre (Ver 1.2)", GAME_NOT_WORKING ) + +/* different hardware */ +GAME( 200?, mnumber, 0, mnumber, itgamble, 0, ROT0, "M.M. - B.R.L.", "Mystery Number", GAME_NOT_WORKING ) |