diff --git a/src/mame/drivers/roul.c b/src/mame/drivers/roul.c index 5e39df8bb14..e5012562bda 100644 --- a/src/mame/drivers/roul.c +++ b/src/mame/drivers/roul.c @@ -3,6 +3,11 @@ driver by Roberto Zandona' thanks to Angelo Salese for some precious advice +TO DO: +- blitter +- sound +- input + Has 36 pin Cherry master looking edge connector .u12 2764 stickered 1 @@ -23,43 +28,41 @@ ROM text showed SUPER LUCKY ROULETTE LEISURE ENT #include "driver.h" #include "cpu/z80/z80.h" - +#include "sound/ay8910.h" static READ8_HANDLER( testf5_r ) { logerror("Read unknown port $f5 at %04x\n",cpu_get_pc(space->cpu)); -return mame_rand(space->machine) & 0x00f0; +return mame_rand(space->machine) & 0x00ff; return 0xc0; } static READ8_HANDLER( testf8_r ) { logerror("Read unknown port $f8 at %04x\n",cpu_get_pc(space->cpu)); -return mame_rand(space->machine) & 0x00f0; +return mame_rand(space->machine) & 0x00ff; return 0xc0; } static READ8_HANDLER( testfa_r ) { logerror("Read unknown port $fa at %04x\n",cpu_get_pc(space->cpu)); -return mame_rand(space->machine) & 0x00f0; +return mame_rand(space->machine) & 0x00ff; return 0xc0; } static READ8_HANDLER( testfd_r ) { logerror("Read unknown port $fd at %04x\n",cpu_get_pc(space->cpu)); -return mame_rand(space->machine) & 0x00f0; +return mame_rand(space->machine) & 0x00ff; return 0xc0; } static WRITE8_HANDLER( testfx_w ) { -logerror("Write [%02x] -> %02x\n",offset,data); + logerror("Write [%02x] -> %02x\n",offset,data); } - - static ADDRESS_MAP_START( roul_map, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_RAM @@ -79,6 +82,11 @@ static ADDRESS_MAP_START( sound_map, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0x1000, 0x13ff) AM_RAM ADDRESS_MAP_END +static ADDRESS_MAP_START( sound_cpu_io_map, ADDRESS_SPACE_IO, 8 ) + ADDRESS_MAP_GLOBAL_MASK(0xff) + AM_RANGE(0x00, 0x00) AM_READ(soundlatch_r) +ADDRESS_MAP_END + static VIDEO_START(roul) { @@ -101,6 +109,8 @@ static MACHINE_DRIVER_START( roul ) MDRV_CPU_ADD("soundcpu", Z80, 1000000) MDRV_CPU_PROGRAM_MAP(sound_map, 0) + MDRV_CPU_IO_MAP(sound_cpu_io_map,0) + MDRV_CPU_VBLANK_INT("screen",irq0_line_hold) /* video hardware */ MDRV_SCREEN_ADD("screen", RASTER) @@ -114,6 +124,10 @@ static MACHINE_DRIVER_START( roul ) MDRV_VIDEO_START(roul) MDRV_VIDEO_UPDATE(roul) + + MDRV_SPEAKER_STANDARD_MONO("mono") + MDRV_SOUND_ADD("ay", AY8910, 1000000) + MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) MACHINE_DRIVER_END ROM_START(roul)