mirror of
https://github.com/holub/mame
synced 2025-04-23 00:39:36 +03:00
new clones
Super Champion Baseball (Japan) [Manuel Assoni] (marked not working because I haven't checked the hacks for the MCU error for this set, IMHO parent should be marked as not working too, MCU sim is inaccurate and won't give correct ball speeds)
This commit is contained in:
parent
212aff689f
commit
9808d1f0c9
@ -110,18 +110,7 @@ Stephh's additional notes (based on the games M68000 code and some tests) :
|
||||
- There is no Dip Switch to determine if you are allowed to continue a game
|
||||
or not, so you ALWAYS have the possibility to continue a game.
|
||||
|
||||
9) 'sbasebal'
|
||||
|
||||
- IMO, there must exist a Japan version of this game which is currently
|
||||
undumped ! Set the SBASEBAL_HACK to 1 and you'll notice the following
|
||||
differences :
|
||||
|
||||
* different manufacturer (no more SNK license)
|
||||
* different coinage (check code at 0x00035c) and additional COIN2
|
||||
* different game time (check code at 0x001d20)
|
||||
* different table for "Unknown" Dip Switch
|
||||
|
||||
|
||||
|
||||
Stephh's log (2002.06.19) :
|
||||
|
||||
- Create macros for players inputs and "Coinage" Dip Switch
|
||||
@ -204,7 +193,7 @@ DIP locations verified from manuals for:
|
||||
#include "sound/2203intf.h"
|
||||
#include "includes/alpha68k.h"
|
||||
|
||||
#define SBASEBAL_HACK 0
|
||||
|
||||
|
||||
|
||||
/******************************************************************************/
|
||||
@ -1457,11 +1446,8 @@ static INPUT_PORTS_START( sbasebal )
|
||||
|
||||
PORT_START("IN2") /* Coin input to microcontroller */
|
||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
|
||||
#if SBASEBAL_HACK
|
||||
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
|
||||
#else
|
||||
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNUSED ) // COIN2 - unused due to code at 0x0002b4
|
||||
#endif
|
||||
|
||||
|
||||
PORT_START("IN3") /* Service + dip */
|
||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE1 )
|
||||
@ -1481,17 +1467,11 @@ static INPUT_PORTS_START( sbasebal )
|
||||
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0xc0, 0x80, DEF_STR( Game_Time ) )
|
||||
#if SBASEBAL_HACK
|
||||
PORT_DIPSETTING( 0x00, "4:30" )
|
||||
PORT_DIPSETTING( 0x80, "4:00" )
|
||||
PORT_DIPSETTING( 0x40, "3:30" )
|
||||
PORT_DIPSETTING( 0xc0, "3:00" )
|
||||
#else
|
||||
PORT_DIPSETTING( 0x00, "3:30" )
|
||||
PORT_DIPSETTING( 0x80, "3:00" )
|
||||
PORT_DIPSETTING( 0x40, "2:30" )
|
||||
PORT_DIPSETTING( 0xc0, "2:00" )
|
||||
#endif
|
||||
|
||||
|
||||
PORT_START("IN4") /* A 6 way dip switch */
|
||||
PORT_DIPNAME( 0x03, 0x03, DEF_STR( Difficulty ) ) // Check code at 0x009d3a
|
||||
@ -1499,9 +1479,6 @@ static INPUT_PORTS_START( sbasebal )
|
||||
PORT_DIPSETTING( 0x03, DEF_STR( Normal ) )
|
||||
PORT_DIPSETTING( 0x01, DEF_STR( Hard ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) )
|
||||
#if SBASEBAL_HACK
|
||||
ALPHA68K_COINAGE_BITS_2TO4
|
||||
#else
|
||||
PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Coinage ) )
|
||||
PORT_DIPSETTING( 0x08, DEF_STR( 2C_1C ) )
|
||||
PORT_DIPSETTING( 0x0c, DEF_STR( 1C_1C ) )
|
||||
@ -1510,13 +1487,67 @@ static INPUT_PORTS_START( sbasebal )
|
||||
PORT_DIPNAME( 0x10, 0x00, "Price to Continue" )
|
||||
PORT_DIPSETTING( 0x10, DEF_STR( 1C_1C ) )
|
||||
PORT_DIPSETTING( 0x00, "Same as Start" )
|
||||
#endif
|
||||
|
||||
PORT_DIPNAME( 0x20, 0x00, DEF_STR( Demo_Sounds ) )
|
||||
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
INPUT_PORTS_END
|
||||
|
||||
|
||||
|
||||
static INPUT_PORTS_START( sbasebalj )
|
||||
PORT_START("IN0")
|
||||
ALPHA68K_PLAYER_INPUT_LSB( 1, IPT_BUTTON3, IPT_START1, IP_ACTIVE_LOW )
|
||||
|
||||
PORT_START("IN1")
|
||||
ALPHA68K_PLAYER_INPUT_LSB( 2, IPT_BUTTON3, IPT_START2, IP_ACTIVE_LOW )
|
||||
|
||||
PORT_START("IN2") /* Coin input to microcontroller */
|
||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
|
||||
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
|
||||
|
||||
|
||||
PORT_START("IN3") /* Service + dip */
|
||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE1 )
|
||||
PORT_SERVICE_NO_TOGGLE(0x02, IP_ACTIVE_LOW)
|
||||
|
||||
/* 2 physical sets of _6_ dip switches */
|
||||
PORT_DIPNAME( 0x04, 0x04, "Freeze" )
|
||||
PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x08, 0x08, DEF_STR( Flip_Screen ) )
|
||||
PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unused ) )
|
||||
PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) // Check code at 0x0089e6
|
||||
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0xc0, 0x80, DEF_STR( Game_Time ) )
|
||||
PORT_DIPSETTING( 0x00, "4:30" )
|
||||
PORT_DIPSETTING( 0x80, "4:00" )
|
||||
PORT_DIPSETTING( 0x40, "3:30" )
|
||||
PORT_DIPSETTING( 0xc0, "3:00" )
|
||||
|
||||
|
||||
PORT_START("IN4") /* A 6 way dip switch */
|
||||
PORT_DIPNAME( 0x03, 0x03, DEF_STR( Difficulty ) ) // Check code at 0x009d3a
|
||||
PORT_DIPSETTING( 0x02, DEF_STR( Easy ) )
|
||||
PORT_DIPSETTING( 0x03, DEF_STR( Normal ) )
|
||||
PORT_DIPSETTING( 0x01, DEF_STR( Hard ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) )
|
||||
ALPHA68K_COINAGE_BITS_2TO4
|
||||
|
||||
PORT_DIPNAME( 0x20, 0x00, DEF_STR( Demo_Sounds ) )
|
||||
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
INPUT_PORTS_END
|
||||
|
||||
|
||||
|
||||
static INPUT_PORTS_START( tnextspc )
|
||||
PORT_START("P1")
|
||||
ALPHA68K_PLAYER_INPUT_LSB( 1, IPT_UNKNOWN, IPT_START1, IP_ACTIVE_LOW )
|
||||
@ -3135,27 +3166,52 @@ ROM_END
|
||||
|
||||
ROM_START( sbasebal )
|
||||
ROM_REGION( 0x40000, "maincpu", 0 )
|
||||
ROM_LOAD16_BYTE( "snksb1.bin", 0x00000, 0x20000, CRC(304fef2d) SHA1(03154e590807f7fd009068b403e1ea039272029d) )
|
||||
ROM_LOAD16_BYTE( "snksb2.bin", 0x00001, 0x20000, CRC(35821339) SHA1(2c4303bf799de7cb364cadac44ff28306088e2f4) )
|
||||
ROM_LOAD16_BYTE( "snksb1.c19", 0x00000, 0x20000, CRC(304fef2d) SHA1(03154e590807f7fd009068b403e1ea039272029d) )
|
||||
ROM_LOAD16_BYTE( "snksb2.e19", 0x00001, 0x20000, CRC(35821339) SHA1(2c4303bf799de7cb364cadac44ff28306088e2f4) )
|
||||
|
||||
ROM_REGION( 0x90000, "audiocpu", 0 ) /* Sound CPU */
|
||||
ROM_LOAD( "snksb3.bin", 0x00000, 0x08000, CRC(89e12f25) SHA1(1c569958a7f5a91b54f1316c1d5ee027be8618d6) )
|
||||
ROM_CONTINUE( 0x18000, 0x08000 )
|
||||
ROM_LOAD( "snksb4.bin", 0x30000, 0x10000, CRC(cca2555d) SHA1(13c672331e8e5e5dd8fc3aa7829d46de6b8271f3) )
|
||||
ROM_LOAD( "snksb5.bin", 0x50000, 0x10000, CRC(f45ee36f) SHA1(cdfdf696e9fcd2827ab1dd6adc2a45085911333d) )
|
||||
ROM_LOAD( "snksb6.bin", 0x70000, 0x10000, CRC(651c9472) SHA1(bcff6679e22143cd6816c441c5a67b4956ee7ee0) )
|
||||
ROM_REGION( 0x90000, "audiocpu", 0 ) /* Sound CPU */
|
||||
ROM_LOAD( "sb-3.g9", 0x00000, 0x08000, CRC(89e12f25) SHA1(1c569958a7f5a91b54f1316c1d5ee027be8618d6) )
|
||||
ROM_CONTINUE( 0x18000, 0x08000 )
|
||||
ROM_LOAD( "sb-4.g11", 0x30000, 0x10000, CRC(cca2555d) SHA1(13c672331e8e5e5dd8fc3aa7829d46de6b8271f3) )
|
||||
ROM_LOAD( "sb-5.g13", 0x50000, 0x10000, CRC(f45ee36f) SHA1(cdfdf696e9fcd2827ab1dd6adc2a45085911333d) )
|
||||
ROM_LOAD( "sb-6.g15", 0x70000, 0x10000, CRC(651c9472) SHA1(bcff6679e22143cd6816c441c5a67b4956ee7ee0) )
|
||||
|
||||
ROM_REGION( 0x10000, "mcu", 0 )
|
||||
ROM_LOAD( "alpha.mcu", 0x000, 0x1000, NO_DUMP )
|
||||
|
||||
ROM_REGION( 0x10000, "gfx1", 0 ) /* chars */
|
||||
ROM_LOAD( "snksb7.bin", 0x000000, 0x10000, CRC(8f3c2e25) SHA1(a5b3880f3079cce607678fd4ea5971560ce9ed8d) )
|
||||
ROM_REGION( 0x10000, "gfx1", 0 ) /* chars */
|
||||
ROM_LOAD( "sb-7.l3", 0x000000, 0x10000, CRC(8f3c2e25) SHA1(a5b3880f3079cce607678fd4ea5971560ce9ed8d) )
|
||||
|
||||
ROM_REGION( 0x280000, "gfx2", 0 ) /* sprites */
|
||||
ROM_LOAD( "kcbchr3.bin", 0x000000, 0x80000, CRC(719071c7) SHA1(47eded73eae25af04cf369f1a8ee657fd06b6480) )
|
||||
ROM_LOAD( "kcbchr2.bin", 0x0a0000, 0x80000, CRC(014f0f90) SHA1(e80594f06faf303c4034a711fe55dad046ebf9aa) )
|
||||
ROM_LOAD( "kcbchr1.bin", 0x140000, 0x80000, CRC(a5ce1e10) SHA1(c91cad45a918166155be3f93f4ed299389579f4a) )
|
||||
ROM_LOAD( "kcbchr0.bin", 0x1e0000, 0x80000, CRC(b8a1a088) SHA1(cb21a04387431b1810130abd86a2ebf78cf09a3b) )
|
||||
ROM_REGION( 0x280000, "gfx2", 0 ) /* sprites */
|
||||
ROM_LOAD( "kcb-chr3.h21", 0x000000, 0x80000, CRC(719071c7) SHA1(47eded73eae25af04cf369f1a8ee657fd06b6480) )
|
||||
ROM_LOAD( "kcb-chr2.h19", 0x0a0000, 0x80000, CRC(014f0f90) SHA1(e80594f06faf303c4034a711fe55dad046ebf9aa) )
|
||||
ROM_LOAD( "kcb-chr1.h18", 0x140000, 0x80000, CRC(a5ce1e10) SHA1(c91cad45a918166155be3f93f4ed299389579f4a) )
|
||||
ROM_LOAD( "kcb-chr0.h16", 0x1e0000, 0x80000, CRC(b8a1a088) SHA1(cb21a04387431b1810130abd86a2ebf78cf09a3b) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( sbasebalj )
|
||||
ROM_REGION( 0x40000, "maincpu", 0 )
|
||||
ROM_LOAD16_BYTE( "sb-j-1.c19", 0x00000, 0x20000, CRC(c46a3c03) SHA1(51d22f2873e45ae64453f3003940b3871d065c5b) )
|
||||
ROM_LOAD16_BYTE( "sb-j-2.e19", 0x00001, 0x20000, CRC(a8ec2287) SHA1(9c873f3388a00babc1cd38188ef1fe6e2741fd67) )
|
||||
|
||||
ROM_REGION( 0x90000, "audiocpu", 0 ) /* Sound CPU */
|
||||
ROM_LOAD( "sb-3.g9", 0x00000, 0x08000, CRC(89e12f25) SHA1(1c569958a7f5a91b54f1316c1d5ee027be8618d6) )
|
||||
ROM_CONTINUE( 0x18000, 0x08000 )
|
||||
ROM_LOAD( "sb-4.g11", 0x30000, 0x10000, CRC(cca2555d) SHA1(13c672331e8e5e5dd8fc3aa7829d46de6b8271f3) )
|
||||
ROM_LOAD( "sb-5.g13", 0x50000, 0x10000, CRC(f45ee36f) SHA1(cdfdf696e9fcd2827ab1dd6adc2a45085911333d) )
|
||||
ROM_LOAD( "sb-6.g15", 0x70000, 0x10000, CRC(651c9472) SHA1(bcff6679e22143cd6816c441c5a67b4956ee7ee0) )
|
||||
|
||||
ROM_REGION( 0x10000, "mcu", 0 )
|
||||
ROM_LOAD( "alpha.mcu", 0x000, 0x1000, NO_DUMP )
|
||||
|
||||
ROM_REGION( 0x10000, "gfx1", 0 ) /* chars */
|
||||
ROM_LOAD( "sb-7.l3", 0x000000, 0x10000, CRC(8f3c2e25) SHA1(a5b3880f3079cce607678fd4ea5971560ce9ed8d) )
|
||||
|
||||
ROM_REGION( 0x280000, "gfx2", 0 ) /* sprites */
|
||||
ROM_LOAD( "kcb-chr3.h21", 0x000000, 0x80000, CRC(719071c7) SHA1(47eded73eae25af04cf369f1a8ee657fd06b6480) )
|
||||
ROM_LOAD( "kcb-chr2.h19", 0x0a0000, 0x80000, CRC(014f0f90) SHA1(e80594f06faf303c4034a711fe55dad046ebf9aa) )
|
||||
ROM_LOAD( "kcb-chr1.h18", 0x140000, 0x80000, CRC(a5ce1e10) SHA1(c91cad45a918166155be3f93f4ed299389579f4a) )
|
||||
ROM_LOAD( "kcb-chr0.h16", 0x1e0000, 0x80000, CRC(b8a1a088) SHA1(cb21a04387431b1810130abd86a2ebf78cf09a3b) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( tnextspc ) /* MASKROM for gfx */
|
||||
@ -3375,11 +3431,14 @@ DRIVER_INIT_MEMBER(alpha68k_state,sbasebal)
|
||||
rom[0x458/2] = 0x4e71;
|
||||
rom[0x45a/2] = 0x4e71;
|
||||
|
||||
#if SBASEBAL_HACK
|
||||
rom[0x2b4/2] = 0x4e71;
|
||||
rom[0x2b6/2] = 0x4e71;
|
||||
#endif
|
||||
m_invert_controls = 0;
|
||||
m_microcontroller_id = 0x8512; // Same as 'gangwars' ?
|
||||
m_coin_id = 0x23 | (0x24 << 8);
|
||||
m_game_id = 0;
|
||||
}
|
||||
|
||||
DRIVER_INIT_MEMBER(alpha68k_state,sbasebalj)
|
||||
{
|
||||
m_invert_controls = 0;
|
||||
m_microcontroller_id = 0x8512; // Same as 'gangwars' ?
|
||||
m_coin_id = 0x23 | (0x24 << 8);
|
||||
@ -3429,6 +3488,7 @@ GAME( 1989, gangwarsu, gangwars, alpha68k_V, gangwarsu, alpha68k_state,gangw
|
||||
GAME( 1989, gangwarsb, gangwars, alpha68k_V, gangwars, alpha68k_state, gangwars, ROT0, "bootleg", "Gang Wars (bootleg)", GAME_SUPPORTS_SAVE ) // has (undumped) 68705 MCU in place of Alpha MCU, otherwise the same as 'gangwars'
|
||||
|
||||
GAME( 1989, sbasebal, 0, alpha68k_V_sb, sbasebal, alpha68k_state, sbasebal, ROT0, "Alpha Denshi Co. (SNK of America license)", "Super Champion Baseball (US)", GAME_SUPPORTS_SAVE | GAME_UNEMULATED_PROTECTION )
|
||||
GAME( 1989, sbasebalj, sbasebal, alpha68k_V_sb, sbasebalj,alpha68k_state, sbasebalj,ROT0, "Alpha Denshi Co.", "Super Champion Baseball (Japan)", GAME_SUPPORTS_SAVE | GAME_UNEMULATED_PROTECTION | GAME_NOT_WORKING )
|
||||
|
||||
GAME( 1989, tnextspc, 0, tnextspc, tnextspc, alpha68k_state, tnextspc, ROT90, "SNK", "The Next Space (set 1)", GAME_SUPPORTS_SAVE | GAME_NO_COCKTAIL )
|
||||
GAME( 1989, tnextspc2, tnextspc, tnextspc, tnextspc, alpha68k_state, tnextspc, ROT90, "SNK", "The Next Space (set 2)", GAME_SUPPORTS_SAVE | GAME_NO_COCKTAIL )
|
||||
|
@ -83,6 +83,7 @@ public:
|
||||
DECLARE_DRIVER_INIT(tnextspc);
|
||||
DECLARE_DRIVER_INIT(timesold1);
|
||||
DECLARE_DRIVER_INIT(sbasebal);
|
||||
DECLARE_DRIVER_INIT(sbasebalj);
|
||||
DECLARE_DRIVER_INIT(skysoldr);
|
||||
DECLARE_DRIVER_INIT(skyadvntu);
|
||||
DECLARE_DRIVER_INIT(btlfieldb);
|
||||
|
@ -7847,6 +7847,7 @@ gangwarsj // Alpha-68K96V (c) 1989 Alpha Denshi Co.
|
||||
gangwarsu // Alpha-68K96V (c) 1989 Alpha Denshi Co.
|
||||
gangwarsb // bootleg
|
||||
sbasebal // Alpha-68K96V (c) 1989 SNK of America licensed from Alpha
|
||||
sbasebalj // Alpha-68K96V
|
||||
tnextspc // A8003 'NS' (c) 1989 - MASKROM
|
||||
tnextspc2 // A8003 'NS' (c) 1989 - EPROMs
|
||||
tnextspcj // A8003 'NS' (c) 1989 - Japan
|
||||
|
Loading…
Reference in New Issue
Block a user