mirror of
https://github.com/holub/mame
synced 2025-05-24 14:56:21 +03:00
Fixed 03597: outrun, outrunra, outruno, outrundx, outrunb: Incorrect vsync speed on Outrun
Comment: I failed to look at the video timing when Guru's readme, this should correct the behavior. I also added the cpu/video bd numbers listed on Stefan Lindberg's reference board for Outrun.
This commit is contained in:
parent
75b4c8078e
commit
25a430ea9b
@ -405,7 +405,7 @@ static void video_exit(running_machine *machine)
|
|||||||
bitmap_free(global.snap_bitmap);
|
bitmap_free(global.snap_bitmap);
|
||||||
|
|
||||||
/* print a final result if we have at least 5 seconds' worth of data */
|
/* print a final result if we have at least 5 seconds' worth of data */
|
||||||
if (global.overall_emutime.seconds >= 5)
|
if (global.overall_emutime.seconds >= 1)
|
||||||
{
|
{
|
||||||
osd_ticks_t tps = osd_ticks_per_second();
|
osd_ticks_t tps = osd_ticks_per_second();
|
||||||
double final_real_time = (double)global.overall_real_seconds + (double)global.overall_real_ticks / (double)tps;
|
double final_real_time = (double)global.overall_real_seconds + (double)global.overall_real_ticks / (double)tps;
|
||||||
|
@ -2676,8 +2676,8 @@ GAME( 1981, shollow, 0, mcr_90010, shollow, mcr_90010, ROT90, "Ball
|
|||||||
GAME( 1981, shollow2, shollow, mcr_90010, shollow, mcr_90010, ROT90, "Bally Midway", "Satan's Hollow (set 2)", GAME_SUPPORTS_SAVE )
|
GAME( 1981, shollow2, shollow, mcr_90010, shollow, mcr_90010, ROT90, "Bally Midway", "Satan's Hollow (set 2)", GAME_SUPPORTS_SAVE )
|
||||||
GAME( 1982, tron, 0, mcr_90010, tron, mcr_90010, ROT90, "Bally Midway", "Tron (8/9)", GAME_SUPPORTS_SAVE )
|
GAME( 1982, tron, 0, mcr_90010, tron, mcr_90010, ROT90, "Bally Midway", "Tron (8/9)", GAME_SUPPORTS_SAVE )
|
||||||
GAME( 1982, tron2, tron, mcr_90010, tron, mcr_90010, ROT90, "Bally Midway", "Tron (6/25)", GAME_SUPPORTS_SAVE )
|
GAME( 1982, tron2, tron, mcr_90010, tron, mcr_90010, ROT90, "Bally Midway", "Tron (6/25)", GAME_SUPPORTS_SAVE )
|
||||||
GAME( 1982, tron3, tron, mcr_90010, tron3, mcr_90010, ROT90, "Bally Midway", "Tron (6/17)", GAME_SUPPORTS_SAVE )
|
GAME( 1982, tron3, tron, mcr_90010, tron3, mcr_90010, ROT90, "Bally Midway", "Tron (6/17)", GAME_SUPPORTS_SAVE | GAME_NO_COCKTAIL )
|
||||||
GAME( 1982, tron4, tron, mcr_90010, tron3, mcr_90010, ROT90, "Bally Midway", "Tron (6/15)", GAME_SUPPORTS_SAVE )
|
GAME( 1982, tron4, tron, mcr_90010, tron3, mcr_90010, ROT90, "Bally Midway", "Tron (6/15)", GAME_SUPPORTS_SAVE | GAME_NO_COCKTAIL )
|
||||||
GAME( 1982, domino, 0, mcr_90010, domino, mcr_90010, ROT0, "Bally Midway", "Domino Man", GAME_SUPPORTS_SAVE )
|
GAME( 1982, domino, 0, mcr_90010, domino, mcr_90010, ROT0, "Bally Midway", "Domino Man", GAME_SUPPORTS_SAVE )
|
||||||
GAME( 1982, wacko, 0, mcr_90010, wacko, wacko, ROT0, "Bally Midway", "Wacko", GAME_SUPPORTS_SAVE )
|
GAME( 1982, wacko, 0, mcr_90010, wacko, wacko, ROT0, "Bally Midway", "Wacko", GAME_SUPPORTS_SAVE )
|
||||||
GAME( 1984, twotigerc,twotiger, mcr_90010, twotigrc, mcr_90010, ROT0, "Bally Midway", "Two Tigers (Tron conversion)", GAME_SUPPORTS_SAVE )
|
GAME( 1984, twotigerc,twotiger, mcr_90010, twotigrc, mcr_90010, ROT0, "Bally Midway", "Two Tigers (Tron conversion)", GAME_SUPPORTS_SAVE )
|
||||||
|
@ -110,6 +110,8 @@ PCB2 (Top board, CPU board)
|
|||||||
#include "cpu/z80/z80.h"
|
#include "cpu/z80/z80.h"
|
||||||
#include "sound/ay8910.h"
|
#include "sound/ay8910.h"
|
||||||
|
|
||||||
|
#define MASTER_CLOCK XTAL_18_432MHz
|
||||||
|
|
||||||
static UINT8* sub_vid;
|
static UINT8* sub_vid;
|
||||||
static UINT8* sub_attr;
|
static UINT8* sub_attr;
|
||||||
static UINT8* sub_scrolly;
|
static UINT8* sub_scrolly;
|
||||||
@ -400,15 +402,15 @@ static INTERRUPT_GEN( subm_sound_irq )
|
|||||||
|
|
||||||
static MACHINE_DRIVER_START( sub )
|
static MACHINE_DRIVER_START( sub )
|
||||||
/* basic machine hardware */
|
/* basic machine hardware */
|
||||||
MDRV_CPU_ADD("maincpu", Z80,4000000) /* ? MHz */
|
MDRV_CPU_ADD("maincpu", Z80,MASTER_CLOCK/6) /* ? MHz */
|
||||||
MDRV_CPU_PROGRAM_MAP(subm_map)
|
MDRV_CPU_PROGRAM_MAP(subm_map)
|
||||||
MDRV_CPU_IO_MAP(subm_io)
|
MDRV_CPU_IO_MAP(subm_io)
|
||||||
MDRV_CPU_VBLANK_INT("screen", irq0_line_hold)
|
MDRV_CPU_VBLANK_INT("screen", irq0_line_hold)
|
||||||
|
|
||||||
MDRV_CPU_ADD("soundcpu", Z80,4000000) /* ? MHz */
|
MDRV_CPU_ADD("soundcpu", Z80,MASTER_CLOCK/6) /* ? MHz */
|
||||||
MDRV_CPU_PROGRAM_MAP(subm_sound_map)
|
MDRV_CPU_PROGRAM_MAP(subm_sound_map)
|
||||||
MDRV_CPU_IO_MAP(subm_sound_io)
|
MDRV_CPU_IO_MAP(subm_sound_io)
|
||||||
MDRV_CPU_PERIODIC_INT(subm_sound_irq, 60) //???
|
MDRV_CPU_PERIODIC_INT(subm_sound_irq, 120) //???
|
||||||
|
|
||||||
|
|
||||||
/* video hardware */
|
/* video hardware */
|
||||||
@ -429,10 +431,10 @@ static MACHINE_DRIVER_START( sub )
|
|||||||
/* sound hardware */
|
/* sound hardware */
|
||||||
MDRV_SPEAKER_STANDARD_MONO("mono")
|
MDRV_SPEAKER_STANDARD_MONO("mono")
|
||||||
|
|
||||||
MDRV_SOUND_ADD("ay1", AY8910, 12000000/8) /* ? Mhz */
|
MDRV_SOUND_ADD("ay1", AY8910, MASTER_CLOCK/6/2) /* ? Mhz */
|
||||||
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.23)
|
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.23)
|
||||||
|
|
||||||
MDRV_SOUND_ADD("ay2", AY8910, 12000000/8) /* ? Mhz */
|
MDRV_SOUND_ADD("ay2", AY8910, MASTER_CLOCK/6/2) /* ? Mhz */
|
||||||
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.23)
|
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.23)
|
||||||
MACHINE_DRIVER_END
|
MACHINE_DRIVER_END
|
||||||
|
|
||||||
|
@ -79,21 +79,21 @@ ADDRESS_MAP_END
|
|||||||
|
|
||||||
static INPUT_PORTS_START( subs )
|
static INPUT_PORTS_START( subs )
|
||||||
PORT_START("DSW") /* OPTIONS */
|
PORT_START("DSW") /* OPTIONS */
|
||||||
PORT_DIPNAME( 0x01, 0x00, DEF_STR( Demo_Sounds ) )
|
PORT_DIPNAME( 0x01, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW1:1")
|
||||||
PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
|
PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
|
||||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||||
PORT_DIPNAME( 0x02, 0x00, "Credit/Time" )
|
PORT_DIPNAME( 0x02, 0x00, "Credit/Time" ) PORT_DIPLOCATION("SW1:2")
|
||||||
PORT_DIPSETTING( 0x00, "Each Coin Buys Time" )
|
PORT_DIPSETTING( 0x00, "Each Coin Buys Time" )
|
||||||
PORT_DIPSETTING( 0x02, "Fixed Time" )
|
PORT_DIPSETTING( 0x02, "Fixed Time" )
|
||||||
PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Language ) )
|
PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Language ) ) PORT_DIPLOCATION("SW1:3,4")
|
||||||
PORT_DIPSETTING( 0x00, DEF_STR( English ) )
|
PORT_DIPSETTING( 0x00, DEF_STR( English ) )
|
||||||
PORT_DIPSETTING( 0x04, DEF_STR( French ) )
|
PORT_DIPSETTING( 0x04, DEF_STR( French ) )
|
||||||
PORT_DIPSETTING( 0x08, DEF_STR( Spanish) )
|
PORT_DIPSETTING( 0x08, DEF_STR( Spanish) )
|
||||||
PORT_DIPSETTING( 0x0c, DEF_STR( German) )
|
PORT_DIPSETTING( 0x0c, DEF_STR( German) )
|
||||||
PORT_DIPNAME( 0x10, 0x00, DEF_STR( Free_Play ) )
|
PORT_DIPNAME( 0x10, 0x00, DEF_STR( Free_Play ) ) PORT_DIPLOCATION("SW1:5")
|
||||||
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
|
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
|
||||||
PORT_DIPSETTING( 0x10, DEF_STR( On ) )
|
PORT_DIPSETTING( 0x10, DEF_STR( On ) )
|
||||||
PORT_DIPNAME( 0xe0, 0x40, "Game Length" )
|
PORT_DIPNAME( 0xe0, 0x40, "Game Length" ) PORT_DIPLOCATION("SW1:6,7,8")
|
||||||
PORT_DIPSETTING( 0x00, "0:30 Minutes" )
|
PORT_DIPSETTING( 0x00, "0:30 Minutes" )
|
||||||
PORT_DIPSETTING( 0x20, "1:00 Minutes" )
|
PORT_DIPSETTING( 0x20, "1:00 Minutes" )
|
||||||
PORT_DIPSETTING( 0x40, "1:30 Minutes" )
|
PORT_DIPSETTING( 0x40, "1:30 Minutes" )
|
||||||
|
Loading…
Reference in New Issue
Block a user