summaryrefslogtreecommitdiffstatshomepage
path: root/src
diff options
context:
space:
mode:
author Scott Stone <tafoid@users.noreply.github.com>2012-05-05 14:45:16 +0000
committer Scott Stone <tafoid@users.noreply.github.com>2012-05-05 14:45:16 +0000
commit07dc96844951e471f0fdd0d14bd0d155f5eaab4b (patch)
tree7b4a24ea5ff2b1cd6f6f16f28bd894df822ebc8f /src
parent46e96595ef8943c2ee1ff7564ec19e8573f57a66 (diff)
New games marked as GAME_NOT_WORKING
------------------------------------ Battle Emporer [Yohji, Mr. CAST, B. Stahl, Smitdogg, The Dumping Union]
Diffstat (limited to 'src')
-rw-r--r--src/mame/drivers/puckpkmn.c144
-rw-r--r--src/mame/mame.lst2
2 files changed, 143 insertions, 3 deletions
diff --git a/src/mame/drivers/puckpkmn.c b/src/mame/drivers/puckpkmn.c
index 9838f2406e0..7d707c3a0a0 100644
--- a/src/mame/drivers/puckpkmn.c
+++ b/src/mame/drivers/puckpkmn.c
@@ -126,8 +126,93 @@ static INPUT_PORTS_START( puckpkmn )
INPUT_PORTS_END
+
+
+static INPUT_PORTS_START( batlemp )
+ PORT_START("P2") /* $700011.b */
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START2 )
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(2)
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(2)
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(2)
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(2)
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2)
+
+ PORT_START("P1") /* $700013.b */
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(10)
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 )
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(1)
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(1)
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1)
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(1)
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1)
+
+ PORT_START("UNK") /* $700015.b */
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2)
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2)
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1)
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1)
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
+
+
+ PORT_START("DSW1") /* $700017.b */
+ PORT_DIPNAME( 0x07, 0x07, DEF_STR( Coinage ) )
+ PORT_DIPSETTING( 0x03, DEF_STR( 5C_1C ) )
+ PORT_DIPSETTING( 0x04, DEF_STR( 4C_1C ) )
+ PORT_DIPSETTING( 0x05, DEF_STR( 3C_1C ) )
+ PORT_DIPSETTING( 0x06, DEF_STR( 2C_1C ) )
+ PORT_DIPSETTING( 0x07, DEF_STR( 1C_1C ) )
+ PORT_DIPSETTING( 0x02, DEF_STR( 1C_2C ) )
+ PORT_DIPSETTING( 0x01, DEF_STR( 1C_3C ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( 1C_4C ) )
+ PORT_DIPNAME( 0x38, 0x28, DEF_STR( Lives ) )
+ PORT_DIPSETTING( 0x38, "1" )
+ PORT_DIPSETTING( 0x30, "2" )
+ PORT_DIPSETTING( 0x28, "3" )
+ PORT_DIPSETTING( 0x20, "4" )
+ PORT_DIPSETTING( 0x18, "5" )
+ PORT_DIPSETTING( 0x10, "6" )
+ PORT_DIPSETTING( 0x08, "7" )
+ PORT_DIPSETTING( 0x00, "8" )
+ PORT_DIPNAME( 0xc0, 0x80, DEF_STR( Difficulty ) )
+ PORT_DIPSETTING( 0xc0, DEF_STR( Easy ) )
+ PORT_DIPSETTING( 0x80, DEF_STR( Normal ) )
+ PORT_DIPSETTING( 0x40, DEF_STR( Hard ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) )
+
+ PORT_START("DSW2") /* $700019.b */
+ PORT_SERVICE( 0x01, IP_ACTIVE_LOW )
+ PORT_DIPNAME( 0x02, 0x02, DEF_STR( Demo_Sounds ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x02, DEF_STR( On ) )
+ PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unused ) )
+ PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unused ) )
+ 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( Unused ) )
+ PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unused ) )
+ PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unused ) )
+ PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+INPUT_PORTS_END
+
+
static ADDRESS_MAP_START( puckpkmn_map, AS_PROGRAM, 16, md_boot_state )
- AM_RANGE(0x000000, 0x1fffff) AM_ROM /* Main 68k Program Roms */
+ AM_RANGE(0x000000, 0x3fffff) AM_ROM /* Main 68k Program Roms */
AM_RANGE(0x700010, 0x700011) AM_READ_PORT("P2")
AM_RANGE(0x700012, 0x700013) AM_READ_PORT("P1")
AM_RANGE(0x700014, 0x700015) AM_READ_PORT("UNK")
@@ -136,6 +221,8 @@ static ADDRESS_MAP_START( puckpkmn_map, AS_PROGRAM, 16, md_boot_state )
AM_RANGE(0x700022, 0x700023) AM_DEVREADWRITE8("oki", okim6295_device, read, write, 0x00ff)
AM_RANGE(0xa04000, 0xa04003) AM_DEVREADWRITE8_LEGACY("ymsnd", megadriv_68k_YM2612_read, megadriv_68k_YM2612_write, 0xffff)
AM_RANGE(0xc00000, 0xc0001f) AM_READWRITE_LEGACY(megadriv_vdp_r, megadriv_vdp_w)
+ AM_RANGE(0x000000, 0x00001f) AM_WRITE_LEGACY(megadriv_vdp_w)
+
AM_RANGE(0xe00000, 0xe0ffff) AM_RAM AM_MIRROR(0x1f0000) AM_BASE_LEGACY(&megadrive_ram)
/* Unknown reads/writes: */
@@ -148,6 +235,29 @@ static ADDRESS_MAP_START( puckpkmn_map, AS_PROGRAM, 16, md_boot_state )
AM_RANGE(0xa11200, 0xa11201) AM_WRITENOP /* ? */
ADDRESS_MAP_END
+
+static ADDRESS_MAP_START( batlemp_map, AS_PROGRAM, 16, md_boot_state )
+ AM_RANGE(0x000000, 0x3fffff) AM_ROM
+ AM_RANGE(0x700010, 0x700011) AM_READ_PORT("P2")
+ AM_RANGE(0x700012, 0x700013) AM_READ_PORT("P1")
+ AM_RANGE(0x700014, 0x700015) AM_READ_PORT("UNK")
+ AM_RANGE(0x700016, 0x700017) AM_READ_PORT("DSW1")
+ AM_RANGE(0x700018, 0x700019) AM_READ_PORT("DSW2")
+ AM_RANGE(0x700022, 0x700023) AM_DEVREADWRITE8("oki", okim6295_device, read, write, 0x00ff)
+ AM_RANGE(0xa04000, 0xa04003) AM_DEVREADWRITE8_LEGACY("ymsnd", megadriv_68k_YM2612_read, megadriv_68k_YM2612_write, 0xffff)
+ AM_RANGE(0xc00000, 0xc0001f) AM_READWRITE_LEGACY(megadriv_vdp_r, megadriv_vdp_w)
+
+ AM_RANGE(0x000000, 0x00001f) AM_WRITE_LEGACY(megadriv_vdp_w) // vdp writes mirrored at 0, or is there some unhandled protection??
+
+ AM_RANGE(0xe00000, 0xe0ffff) AM_RAM AM_MIRROR(0x1f0000) AM_BASE_LEGACY(&megadrive_ram)
+
+ AM_RANGE(0xa00000, 0xa00551) AM_NOP
+
+ AM_RANGE(0xA11100, 0xA11101) AM_NOP
+
+
+ADDRESS_MAP_END
+
static READ16_HANDLER(puckpkmna_70001c_r)
{
return 0x0e;
@@ -184,6 +294,13 @@ static MACHINE_CONFIG_DERIVED( puckpkmna, puckpkmn )
MACHINE_CONFIG_END
+static MACHINE_CONFIG_DERIVED( batlemp, puckpkmn )
+
+ MCFG_CPU_MODIFY("maincpu")
+ MCFG_CPU_PROGRAM_MAP(batlemp_map)
+
+MACHINE_CONFIG_END
+
/* Genie's Hardware (contains no real sega parts) */
/***************************************************************************
@@ -271,7 +388,7 @@ static DRIVER_INIT( puckpkmn )
}
ROM_START( puckpkmn ) /* Puckman Pockimon (c)2000 Genie */
- ROM_REGION( 0x200000, "maincpu", 0 )
+ ROM_REGION( 0x400000, "maincpu", 0 )
ROM_LOAD16_BYTE( "puckpoke.u5", 0x000000, 0x080000, CRC(fd334b91) SHA1(cf8bf6645a4082ea4392937e169b1686c9c7e246) )
ROM_LOAD16_BYTE( "puckpoke.u4", 0x000001, 0x080000, CRC(839cc76b) SHA1(e15662a7175db7a8e222dda176a8ed92e0d56e9d) )
ROM_LOAD16_BYTE( "puckpoke.u8", 0x100000, 0x080000, CRC(7936bec8) SHA1(4b350105abe514fbfeabae1c6f3aeee695c3d07a) )
@@ -323,7 +440,7 @@ Notes:
*/
ROM_START( puckpkmna ) /* Puckman Pockimon (c)2000 IBS Co. Ltd */
- ROM_REGION( 0x200000, "maincpu", 0 )
+ ROM_REGION( 0x400000, "maincpu", 0 )
ROM_LOAD16_BYTE( "b2.u59", 0x000000, 0x080000, CRC(3fbea2c7) SHA1(89f3770ae92c62714f0795ddd2f311a9532eb25a) ) // FIRST AND SECOND HALF IDENTICAL
ROM_IGNORE(0x080000)
ROM_LOAD16_BYTE( "b1.u59", 0x000001, 0x080000, CRC(dc7b4254) SHA1(8ba5c5e8123e62e9af091971d0d0401d2df49350) ) // FIRST AND SECOND HALF IDENTICAL
@@ -337,6 +454,27 @@ ROM_START( puckpkmna ) /* Puckman Pockimon (c)2000 IBS Co. Ltd */
ROM_LOAD( "a.u3", 0x00000, 0x80000, CRC(77891c9b) SHA1(66f28b418a480a89ddb3fae3a7c2fe702c62364c) )
ROM_END
+
+
+
+
+ROM_START( batlemp )
+ ROM_REGION( 0x400000, "maincpu", 0 )
+ ROM_LOAD16_BYTE( "s.y.u5", 0x000000, 0x080000, CRC(a4a526b5) SHA1(85d0299caf91ff50b6870f845b9aacbd358ed81f) )
+ ROM_LOAD16_BYTE( "s.y.u4", 0x000001, 0x080000, CRC(c16654eb) SHA1(dca4b772a3b9caa7be3fa01511c401b591c2e6f3) )
+ ROM_LOAD16_BYTE( "s.y.u8", 0x100000, 0x080000, CRC(b62e1068) SHA1(2484ae49a4a2a2c551b3b84bbc0b4e40e5d281e7) )
+ ROM_LOAD16_BYTE( "s.y.u7", 0x100001, 0x080000, CRC(27fe424c) SHA1(14bee8c16aac3d5b04123c994167531f817634fd) )
+ ROM_LOAD16_BYTE( "s.y.u64", 0x200000, 0x080000, CRC(62f52886) SHA1(07fc9765274c03eff4a09f48a0b1b2b2afc6078e) )
+ ROM_LOAD16_BYTE( "s.y.u63", 0x200001, 0x080000, CRC(a6a32c8c) SHA1(d0c779751e4af459e9bf63e55c5e2b19a243b70d) )
+ ROM_LOAD16_BYTE( "s.y.u66", 0x300000, 0x080000, CRC(fa4a09f5) SHA1(67d77c91a994ecb8b29e7661c3a12e84a64eb837))
+ ROM_LOAD16_BYTE( "s.y.u65", 0x300001, 0x080000, CRC(de64e526) SHA1(e3b3e5c95b8ae36c0c57f8c9a6f55084464c4c05) )
+
+ ROM_REGION( 0x80000, "oki", 0 ) // there are 2 banks in here, so find bank switch
+ ROM_LOAD( "s.y.u3", 0x00000, 0x40000, CRC(38eef2f2) SHA1(2f750dbf71fea0622e8493f0a8be7c43555ed5cf) )
+ ROM_CONTINUE(0x40000,0x40000)
+ROM_END
+
/* Genie Hardware (uses Genesis VDP) also has 'Sun Mixing Co' put into tile ram */
GAME( 2000, puckpkmn, 0, puckpkmn, puckpkmn, puckpkmn, ROT0, "Genie", "Puckman Pockimon (set 1)", 0 )
GAME( 2000, puckpkmna,puckpkmn, puckpkmna, puckpkmn, puckpkmn, ROT0, "IBS", "Puckman Pockimon (set 2)", 0 )
+GAME( 2000, batlemp, 0, batlemp, batlemp, puckpkmn, ROT0, "<unknown>", "Battle Emporer", GAME_IMPERFECT_SOUND )
diff --git a/src/mame/mame.lst b/src/mame/mame.lst
index 41e9ee692ab..582600b62ee 100644
--- a/src/mame/mame.lst
+++ b/src/mame/mame.lst
@@ -4734,6 +4734,8 @@ puckpkmn // (c) 2000 Genie
puckpkmna // (c) 2000 IBS
topshoot // (c) 1995 Sun Mixing
+batlemp
+
// Sega MegaTech, the number shown is on the label of the instruction rom
megatech
mt_beast // 01