summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/tsamurai.c
diff options
context:
space:
mode:
author Michaël Banaan Ananas <happppp@users.noreply.github.com>2012-02-10 18:13:08 +0000
committer Michaël Banaan Ananas <happppp@users.noreply.github.com>2012-02-10 18:13:08 +0000
commit6533410440f79d80de4e97bc38297a2ee45506b3 (patch)
treed83861548871d90293305e09a7b4e2b06018bb9b /src/mame/drivers/tsamurai.c
parentc5bcb2a2f234887aef83a3b2691e34d0aa8f88bc (diff)
tsamurai.c: Fixed clocks and audio pitch. [Takahiro Nogi]
Diffstat (limited to 'src/mame/drivers/tsamurai.c')
-rw-r--r--src/mame/drivers/tsamurai.c152
1 files changed, 98 insertions, 54 deletions
diff --git a/src/mame/drivers/tsamurai.c b/src/mame/drivers/tsamurai.c
index 324f973ac5b..f9d971ed697 100644
--- a/src/mame/drivers/tsamurai.c
+++ b/src/mame/drivers/tsamurai.c
@@ -350,9 +350,9 @@ ADDRESS_MAP_END
static INPUT_PORTS_START( tsamurai )
PORT_START("P1")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_4WAY
- PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_4WAY
- PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_4WAY
- PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_4WAY
+ PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_4WAY
+ PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_4WAY
+ PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_4WAY
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 )
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_BUTTON2 )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNKNOWN )
@@ -360,9 +360,9 @@ static INPUT_PORTS_START( tsamurai )
PORT_START("P2")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL
- PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL
- PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
- PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL
+ PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL
+ PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
+ PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_COCKTAIL
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNKNOWN )
@@ -428,9 +428,26 @@ static INPUT_PORTS_START( tsamurai )
PORT_DIPSETTING( 0x80, DEF_STR( On ) )
INPUT_PORTS_END
-static INPUT_PORTS_START( nunchaku )
+
+static INPUT_PORTS_START( ladymstr )
PORT_INCLUDE( tsamurai )
+ PORT_MODIFY("P1")
+ PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY
+ PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY
+ PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY
+ PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY
+
+ PORT_MODIFY("P2")
+ PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL
+ PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL
+ PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL
+ PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL
+INPUT_PORTS_END
+
+static INPUT_PORTS_START( nunchaku )
+ PORT_INCLUDE( ladymstr )
+
PORT_MODIFY("DSW2")
PORT_DIPNAME( 0x03, 0x00, DEF_STR( Lives ) )
PORT_DIPSETTING( 0x00, "3" )
@@ -455,9 +472,22 @@ static INPUT_PORTS_START( nunchaku )
PORT_DIPSETTING( 0x80, DEF_STR( On ) )
INPUT_PORTS_END
+
static INPUT_PORTS_START( vsgongf )
PORT_INCLUDE( tsamurai )
+ PORT_MODIFY("P1")
+ PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY
+ PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY
+ PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY
+ PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY
+
+ PORT_MODIFY("P2")
+ PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL
+ PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL
+ PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL
+ PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL
+
PORT_MODIFY("DSW2")
PORT_DIPNAME( 0x01, 0x00, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
@@ -485,14 +515,15 @@ static INPUT_PORTS_START( vsgongf )
PORT_DIPSETTING( 0x80, DEF_STR( On ) )
INPUT_PORTS_END
+
static INPUT_PORTS_START( yamagchi )
PORT_INCLUDE( tsamurai )
PORT_MODIFY("P1")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY
- PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY
- PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY
- PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY
+ PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY
+ PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY
+ PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON2 )
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_BUTTON1 )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNKNOWN )
@@ -500,9 +531,9 @@ static INPUT_PORTS_START( yamagchi )
PORT_MODIFY("P2")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL
- PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL
- PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL
- PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL
+ PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL
+ PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL
+ PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_COCKTAIL
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNKNOWN )
@@ -533,8 +564,21 @@ static INPUT_PORTS_START( yamagchi )
PORT_DIPSETTING( 0x80, DEF_STR( On ) )
INPUT_PORTS_END
+
static INPUT_PORTS_START( m660 )
- PORT_INCLUDE( yamagchi )
+ PORT_INCLUDE( tsamurai )
+
+ PORT_MODIFY("P1")
+ PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY
+ PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY
+ PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY
+ PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY
+
+ PORT_MODIFY("P2")
+ PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL
+ PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL
+ PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL
+ PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL
PORT_MODIFY("DSW1")
PORT_DIPNAME( 0x07, 0x00, DEF_STR( Coin_A ) )
@@ -643,15 +687,15 @@ GFXDECODE_END
static MACHINE_CONFIG_START( tsamurai, tsamurai_state )
/* basic machine hardware */
- MCFG_CPU_ADD("maincpu", Z80, 4000000)
+ MCFG_CPU_ADD("maincpu", Z80, XTAL_24MHz/8)
MCFG_CPU_PROGRAM_MAP(main_map)
MCFG_CPU_IO_MAP(z80_io_map)
MCFG_CPU_VBLANK_INT("screen", samurai_interrupt)
- MCFG_CPU_ADD("audiocpu", Z80, 2000000)
+ MCFG_CPU_ADD("audiocpu", Z80, XTAL_24MHz/8)
MCFG_CPU_PROGRAM_MAP(sound1_map)
- MCFG_CPU_ADD("audio2", Z80, 2000000)
+ MCFG_CPU_ADD("audio2", Z80, XTAL_24MHz/8)
MCFG_CPU_PROGRAM_MAP(sound2_map)
/* video hardware */
@@ -671,7 +715,7 @@ static MACHINE_CONFIG_START( tsamurai, tsamurai_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("aysnd", AY8910, 2000000)
+ MCFG_SOUND_ADD("aysnd", AY8910, XTAL_24MHz/8)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
MCFG_SOUND_ADD("dac1", DAC, 0)
@@ -682,24 +726,17 @@ static MACHINE_CONFIG_START( tsamurai, tsamurai_state )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( m660, tsamurai_state )
+static MACHINE_CONFIG_START( vsgongf, tsamurai_state )
/* basic machine hardware */
- MCFG_CPU_ADD("maincpu", Z80, 4000000)
- MCFG_CPU_PROGRAM_MAP(m660_map)
- MCFG_CPU_IO_MAP(z80_m660_io_map)
+ MCFG_CPU_ADD("maincpu", Z80, XTAL_24MHz/8)
+ MCFG_CPU_PROGRAM_MAP(vsgongf_map)
MCFG_CPU_VBLANK_INT("screen", samurai_interrupt)
- MCFG_CPU_ADD("audiocpu", Z80, 2000000)
- MCFG_CPU_PROGRAM_MAP(sound1_m660_map)
-
- MCFG_CPU_ADD("audio2", Z80, 2000000)
- MCFG_CPU_PROGRAM_MAP(sound2_m660_map)
-
- MCFG_CPU_ADD("audio3", Z80, 2000000)
- MCFG_CPU_PROGRAM_MAP(sound3_m660_map)
- MCFG_CPU_IO_MAP(sound3_m660_io_map)
- MCFG_CPU_VBLANK_INT("screen", nmi_line_pulse)
+ MCFG_CPU_ADD("audiocpu", Z80, XTAL_24MHz/8)
+ MCFG_CPU_PROGRAM_MAP(sound_vsgongf_map)
+ MCFG_CPU_IO_MAP(vsgongf_audio_io_map)
+ MCFG_CPU_PERIODIC_INT(vsgongf_sound_interrupt,3*60)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -707,39 +744,43 @@ static MACHINE_CONFIG_START( m660, tsamurai_state )
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0, 255, 8, 255-8)
- MCFG_SCREEN_UPDATE_STATIC(tsamurai)
+ MCFG_SCREEN_UPDATE_STATIC(vsgongf)
MCFG_GFXDECODE(tsamurai)
MCFG_PALETTE_LENGTH(256)
MCFG_PALETTE_INIT(RRRR_GGGG_BBBB)
- MCFG_VIDEO_START(tsamurai)
+ MCFG_VIDEO_START(vsgongf)
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("aysnd", AY8910, 2000000)
+ MCFG_SOUND_ADD("aysnd", AY8910, XTAL_24MHz/8)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
- MCFG_SOUND_ADD("dac1", DAC, 0)
- MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
-
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_SOUND_ADD("dac", DAC, 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( vsgongf, tsamurai_state )
+static MACHINE_CONFIG_START( m660, tsamurai_state )
/* basic machine hardware */
- MCFG_CPU_ADD("maincpu", Z80, 4000000)
- MCFG_CPU_PROGRAM_MAP(vsgongf_map)
+ MCFG_CPU_ADD("maincpu", Z80, XTAL_24MHz/8)
+ MCFG_CPU_PROGRAM_MAP(m660_map)
+ MCFG_CPU_IO_MAP(z80_m660_io_map)
MCFG_CPU_VBLANK_INT("screen", samurai_interrupt)
- MCFG_CPU_ADD("audiocpu", Z80, 4000000)
- MCFG_CPU_PROGRAM_MAP(sound_vsgongf_map)
- MCFG_CPU_IO_MAP(vsgongf_audio_io_map)
- MCFG_CPU_PERIODIC_INT(vsgongf_sound_interrupt,3*60)
+ MCFG_CPU_ADD("audiocpu", Z80, XTAL_24MHz/8)
+ MCFG_CPU_PROGRAM_MAP(sound1_m660_map)
+
+ MCFG_CPU_ADD("audio2", Z80, XTAL_24MHz/8)
+ MCFG_CPU_PROGRAM_MAP(sound2_m660_map)
+
+ MCFG_CPU_ADD("audio3", Z80, XTAL_24MHz/8)
+ MCFG_CPU_PROGRAM_MAP(sound3_m660_map)
+ MCFG_CPU_IO_MAP(sound3_m660_io_map)
+ MCFG_CPU_VBLANK_INT("screen", nmi_line_pulse)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -747,21 +788,24 @@ static MACHINE_CONFIG_START( vsgongf, tsamurai_state )
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0, 255, 8, 255-8)
- MCFG_SCREEN_UPDATE_STATIC(vsgongf)
+ MCFG_SCREEN_UPDATE_STATIC(tsamurai)
MCFG_GFXDECODE(tsamurai)
MCFG_PALETTE_LENGTH(256)
MCFG_PALETTE_INIT(RRRR_GGGG_BBBB)
- MCFG_VIDEO_START(vsgongf)
+ MCFG_VIDEO_START(tsamurai)
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("aysnd", AY8910, 2000000)
+ MCFG_SOUND_ADD("aysnd", AY8910, XTAL_24MHz/8)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
+
+ MCFG_SOUND_ADD("dac2", DAC, 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MACHINE_CONFIG_END
@@ -1205,11 +1249,11 @@ GAME( 1984, vsgongf, 0, vsgongf, vsgongf, 0, ROT90, "Kaneko", "VS Gong
GAME( 1984, ringfgt, vsgongf, vsgongf, vsgongf, 0, ROT90, "Kaneko (Taito license)", "Ring Fighter (set 1)", GAME_IMPERFECT_COLORS )
GAME( 1984, ringfgt2, vsgongf, vsgongf, vsgongf, 0, ROT90, "Kaneko (Taito license)", "Ring Fighter (set 2)", GAME_IMPERFECT_COLORS )
-GAME( 1985, tsamurai, 0, tsamurai, tsamurai, 0, ROT90, "Kaneko / Taito", "Samurai Nihon-ichi (set 1)", 0 )
-GAME( 1985, tsamurai2,tsamurai, tsamurai, tsamurai, 0, ROT90, "Kaneko / Taito", "Samurai Nihon-ichi (set 2)", 0 )
-GAME( 1985, tsamuraih,tsamurai, tsamurai, tsamurai, 0, ROT90, "bootleg", "Samurai Nihon-ichi (bootleg, harder)", 0 )
+GAME( 1985, tsamurai, 0, tsamurai, tsamurai, 0, ROT90, "Kaneko / Taito", "Samurai Nihon-Ichi (set 1)", 0 )
+GAME( 1985, tsamurai2,tsamurai, tsamurai, tsamurai, 0, ROT90, "Kaneko / Taito", "Samurai Nihon-Ichi (set 2)", 0 )
+GAME( 1985, tsamuraih,tsamurai, tsamurai, tsamurai, 0, ROT90, "bootleg", "Samurai Nihon-Ichi (bootleg, harder)", 0 )
-GAME( 1985, ladymstr, 0, tsamurai, tsamurai, 0, ROT90, "Kaneko / Taito", "Lady Master of Kung Fu", 0 )
+GAME( 1985, ladymstr, 0, tsamurai, ladymstr, 0, ROT90, "Kaneko / Taito", "Lady Master of Kung Fu", 0 )
GAME( 1985, nunchaku, ladymstr, tsamurai, nunchaku, 0, ROT90, "Kaneko / Taito", "Nunchackun", GAME_IMPERFECT_COLORS )
GAME( 1985, yamagchi, 0, tsamurai, yamagchi, 0, ROT90, "Kaneko / Taito", "Go Go Mr. Yamaguchi / Yuke Yuke Yamaguchi-kun", GAME_IMPERFECT_COLORS )