From 887823ae974c0c28ba8d1e4bfa6988b9e3dc69b0 Mon Sep 17 00:00:00 2001 From: Zsolt Vasvari Date: Thu, 31 Jan 2008 00:50:52 +0000 Subject: [PATCH] - Added 73.728MHz crystal to xtal.h - Added clock #define's to 20pacgal.c - Minor formatting clean-up --- src/emu/drivers/xtal.h | 2 +- src/mame/drivers/20pacgal.c | 25 +++++++++++++++++-------- 2 files changed, 18 insertions(+), 9 deletions(-) diff --git a/src/emu/drivers/xtal.h b/src/emu/drivers/xtal.h index 7cf79411b2d..a463bf5a1cd 100644 --- a/src/emu/drivers/xtal.h +++ b/src/emu/drivers/xtal.h @@ -122,7 +122,7 @@ enum XTAL_61_44MHz = 61440000, /* dkong */ XTAL_64MHz = 64000000, /* BattleToads */ XTAL_66_6667MHz = 66666700, /* later Midway games */ - XTAL_67_7376MHz = 67737600, /* PSX-based h/w, Sony ZN1-2-based */ + XTAL_73_728MHz = 73728000, /* Ms. Pac-Man/Galaga 20th Anniversary */ XTAL_100MHz = 100000000, /* PSX-based Namco System 12, Vegas, Sony ZN1-2-based */ XTAL_101_4912MHz = 101491200, /* PSX-based Namco System 10 */ diff --git a/src/mame/drivers/20pacgal.c b/src/mame/drivers/20pacgal.c index 1dc34fc8f73..b92a965064a 100644 --- a/src/mame/drivers/20pacgal.c +++ b/src/mame/drivers/20pacgal.c @@ -17,20 +17,17 @@ (c) 2000 Cosmodog, Ltd. > and it listens for incoming characters. + * CPU is a Z8S18020VSC (20MHz part), OSC is 73.728MHz Known issues/to-do's: - * Crashed on reset - Z180 core problem? + * Crashes on reset - Z180 core problem? * ROM banking is not understood. Shouldn't require copying and other trickey * Starfield missing * Check the ASCI interface, there probably is fully working debug code. * The timed interrupt is a kludge; it is supposed to be generated internally by the Z180, but the cpu core doesn't support that yet. - * Correct CPU speed... Zilog says Z180 comes in 6, 8, 10, 20 & 33MHz. - 20MHz is used as it "seems" right based on the music in Galaga - - CPU is a Z8S18020VSC (20MHz part) - OSC is 73.728MHz (is the clock divide 3 or 4?) + * Is the clock divide 3 or 4? ***************************************************************************/ @@ -43,6 +40,18 @@ +/************************************* + * + * Clocks + * + *************************************/ + +#define MASTER_CLOCK (XTAL_73_728MHz) +#define MAIN_CPU_CLOCK (MASTER_CLOCK / 4) /* divider is either 3 or 4 */ +#define NAMCO_AUDIO_CLOCK (MASTER_CLOCK / 4 / 6 / 32) + + + /************************************* * * Interrupt system @@ -280,7 +289,7 @@ static MACHINE_DRIVER_START( 20pacgal ) MDRV_DRIVER_DATA(_20pacgal_state) /* basic machine hardware */ - MDRV_CPU_ADD(Z180,20000000) /* 20MHz ??? Needs to be verified! */ + MDRV_CPU_ADD(Z180, MAIN_CPU_CLOCK) MDRV_CPU_PROGRAM_MAP(20pacgal_map,0) MDRV_CPU_IO_MAP(20pacgal_io_map,0) MDRV_CPU_VBLANK_INT(irq0_line_assert,1) @@ -293,7 +302,7 @@ static MACHINE_DRIVER_START( 20pacgal ) /* sound hardware */ MDRV_SPEAKER_STANDARD_MONO("mono") - MDRV_SOUND_ADD(NAMCO, 18432000/6/32) + MDRV_SOUND_ADD(NAMCO, NAMCO_AUDIO_CLOCK) MDRV_SOUND_CONFIG(namco_interface) MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)