diff --git a/.gitattributes b/.gitattributes index 3bac36620ee..effef77baac 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1709,7 +1709,6 @@ src/mame/drivers/gberet.c svneol=native#text/plain src/mame/drivers/gbusters.c svneol=native#text/plain src/mame/drivers/gcpinbal.c svneol=native#text/plain src/mame/drivers/gei.c svneol=native#text/plain -src/mame/drivers/genesisb.c svneol=native#text/plain src/mame/drivers/ggconnie.c svneol=native#text/plain src/mame/drivers/ghosteo.c svneol=native#text/plain src/mame/drivers/gijoe.c svneol=native#text/plain @@ -1899,6 +1898,7 @@ src/mame/drivers/mcr68.c svneol=native#text/plain src/mame/drivers/meadows.c svneol=native#text/plain src/mame/drivers/mediagx.c svneol=native#text/plain src/mame/drivers/megadriv.c svneol=native#text/plain +src/mame/drivers/megadrvb.c svneol=native#text/plain src/mame/drivers/megaplay.c svneol=native#text/plain src/mame/drivers/megasys1.c svneol=native#text/plain src/mame/drivers/megatech.c svneol=native#text/plain @@ -2325,7 +2325,6 @@ src/mame/drivers/toki.c svneol=native#text/plain src/mame/drivers/tokyocop.c svneol=native#text/plain src/mame/drivers/tomcat.c svneol=native#text/plain src/mame/drivers/toobin.c svneol=native#text/plain -src/mame/drivers/topshoot.c svneol=native#text/plain src/mame/drivers/topspeed.c svneol=native#text/plain src/mame/drivers/toratora.c svneol=native#text/plain src/mame/drivers/tourtabl.c svneol=native#text/plain diff --git a/src/mame/drivers/genesisb.c b/src/mame/drivers/megadrvb.c similarity index 62% rename from src/mame/drivers/genesisb.c rename to src/mame/drivers/megadrvb.c index af8499c477e..9299db1a3a3 100644 --- a/src/mame/drivers/genesisb.c +++ b/src/mame/drivers/megadrvb.c @@ -1,11 +1,12 @@ /*************************************************************************** - Sega Genesis/Mega Drive-based bootlegs + Sega Mega Drive/Genesis-based bootlegs Games supported: * Aladdin * Mortal Kombat 3 * Super Street Fighter II - The New Challengers + * Top Shooter Aladdin PCB info @@ -39,7 +40,7 @@ Dip-switch 8 x1 ------------------------ -This romset comes from a bootleg PCB.The game is a coin-op conversion of the one developed for the Megadrive +This ROMset comes from a bootleg PCB.The game is a coin-op conversion of the one developed for the Megadrive console.I cannot know gameplay differences since PCB is faulty. However,hardware is totally different.It seems to be based on Sega Mega Drive hardware with CPU clock increased, @@ -127,6 +128,122 @@ Stephh's notes (based on the game M68000 code and some tests) : Surprisingly, when you are in "demo mode", player can be again be hit 8 times before losing a life (this is the purpose of the 0xfff57c "flag") ! +**************************************************************************** + +Top Shooter PCB info +==================== + + Sun Mixing board, looks like a hacked up Genesis clone. + + Original driver by David Haywood + Inputs by Mariusz Wojcieszek + + Top Shooter - (c)1995 - older board, look more like an actual hacked cart system, has an MCU + + Not Dumped + + Super Bubble Bobble (a bubble bobble rip-off from Sun Mixing, looks like it may be on this hardware) + +TOP SHOOTER - Sun Mixing Co. Ltd. 1995 + +To me it seems like an original cartridge-based arcade board +hacked to use an external ROM board and a standard JAMMA +connector, but of course, I can be wrong. + + + UPPER BOARD + + _________________________________________________________ + | ___________ ___________ _____ __ | + | 74LS245P |U14 Empty | |U12 ROM1 | |IC1| |B| | + | 74LS245P |__________| |__________| |___| | + | 74LS245P ___________ ___________ _____________ | + __| |U13 Empty | |U11 ROM2 | | AT89C51 | | + |_ J |__________| |__________| |____________| |_ + |_ A ______________________ _____ |_ J + |_ M | U10 MC68000P10 | |OSC| |_ P + |_ M | Motorola | |_ 2 + |_ A |______________________| 74HC00P |_ + |_ 74LS245P ______________________ ________ | + |_ | U9 Empty | |HM6116L | + |_ | | |_______| |_ J + |_ |______________________| |_ P + |_ 74LS245P TD62oo3AP 74LS373P |_ 3 + |_ __________ | + |_ 74LS245P |GALv20V8B| | + |_ ______ | + |_ _____ |DIPS| |_ P + | |U24 | |_ 1 + | 74LS245P | + | TD62oo3AP | + | | + |_ 97 ____________ _____| + |_|_|_|_|_|_|_|_|_|_|_|_|_|_| |_|_|_|_| + + + IC1 = Surface scracthed out, don't know what is it + U24 = Surface scratched out, seems like a PROM + DIPs = Fixed as: 00001000 + ROMs = Toshiba TC574000AD + + JP2, JP3 and P1 connects both boards, also another + on-board connector is used, see notes for the 68K socket + for the lower board. + + + LOWER BOARD + + _________________________________________________________ + | ____ ____ | + | ___ | I| | I| | + | |I| | C| | C| | + | |C| | 3| | 2| | + | |1| |__| |__| | + | |3| |__ + | _ _________________________ __| + | |_| ||||||||||||||||||||||||| __| + | IC14 ---------- SLOT --------- __| + | ______________________ __| + | | | __| + | ___ | 68K (to upper board) | _______ __| + | |I| |______________________| |SE-94| __| + | |C| |JDDB | _| + | |1| _______ |_____| | + | |2| |SE-93| IC4 | + | |JDDA | | + | |_____| ___________ |_ + | IC8 |Z8400A PS| | + | |_________| | + | ______ _________ _________ | + | | OSC| | IC11 | | IC7 | | + | _____________ |_______| |_______| | + | RST | | CN5 CN6 | + |___________| |______________________________| + + + IC3 = IC2 = Winbond W24257V + IC7 = 6264LD 9440 + IC11 = SE-95 JDDC + IC12 = Sony CXA1634P + IC13 = Sony CXA1145P + IC14 = GL358 N16 + + RST is a reset button. + + OSC = 53.693175 MHz + + CN5 and CN6 are 9-pin connectors... serial ports? + + There are two wires soldered directly to two connectors + of the slot, going to the upper board (via P1). + + The whole upper board is plugged using the 68000 socket, + there is no 68K on the lower board. + + There is an edge connector, but it isn't JAMMA. + + "HK-986 (KINYO)" is written on the PCB, near the slot. + ****************************************************************************/ #include "emu.h" @@ -186,6 +303,39 @@ static READ16_HANDLER( ssf2ghw_dsw_r ) return input_port_read(space->machine, dswname[offset]); } +static READ16_HANDLER(topshoot_200051_r) +{ + return -0x5b; +} + +/************************************* + * + * Game-specific port definitions + * + *************************************/ + +static INPUT_PORTS_START( topshoot ) /* Top Shooter Input Ports */ + + PORT_START("IN0") + PORT_BIT( 0x4f, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Bet") PORT_IMPULSE(1) + PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Start") PORT_IMPULSE(1) + PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Fire") PORT_IMPULSE(1) + + PORT_START("IN1") + PORT_BIT( 0xe7, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_SERVICE_NO_TOGGLE( 0x08, IP_ACTIVE_LOW ) + PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Test mode down") PORT_IMPULSE(1) + + PORT_START("IN2") + PORT_BIT( 0xfd, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(1) + + PORT_START("IN3") + PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(1) + PORT_BIT( 0xfe, IP_ACTIVE_LOW, IPT_UNKNOWN ) +INPUT_PORTS_END + /************************************* * * ROM definition(s) @@ -234,6 +384,16 @@ ROM_START( ssf2ghw ) ROM_LOAD16_BYTE( "rom_d", 0x400001, 0x080000, CRC(b99f6a5b) SHA1(adbe28a7522024bc66328ac86fecf9ded3310e8e) ) ROM_END +ROM_START( topshoot ) /* Top Shooter (c)1995 Sun Mixing */ + ROM_REGION( 0x200000, "maincpu", 0 ) + ROM_LOAD16_BYTE( "tc574000ad_u11_2.bin", 0x000000, 0x080000, CRC(b235c4d9) SHA1(fbb308a5f6e769f3277824cb6a3b50c308969ac2) ) + ROM_LOAD16_BYTE( "tc574000ad_u12_1.bin", 0x000001, 0x080000, CRC(e826f6ad) SHA1(23ec8bb608f954d3b915f061e7076c0c63b8259e) ) + + // not hooked up yet + ROM_REGION( 0x1000, "mcu", 0 ) + ROM_LOAD( "89c51.bin", 0x0000, 0x1000, CRC(595475c8) SHA1(8313819ba06cc92b54f88c1ca9f34be8d1ec94d0) ) +ROM_END + /************************************* * * Game-specific driver inits @@ -322,12 +482,24 @@ static DRIVER_INIT( ssf2ghw ) } +static DRIVER_INIT(topshoot) +{ + memory_install_read16_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x200050, 0x200051, 0, 0, topshoot_200051_r ); + memory_install_read_port(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x200042, 0x200043, 0, 0, "IN0"); + memory_install_read_port(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x200044, 0x200045, 0, 0, "IN1"); + memory_install_read_port(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x200046, 0x200047, 0, 0, "IN2"); + memory_install_read_port(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x200048, 0x200049, 0, 0, "IN3"); + + DRIVER_INIT_CALL(megadriv); +} + /************************************* * * Game driver(s) * *************************************/ -GAME( 1993, aladbl, 0, megadriv, aladbl, aladbl, ROT0, "bootleg / Sega", "Aladdin (bootleg of Japanese Megadrive version)", 0) -GAME( 1996, mk3ghw, 0, megadriv, mk3ghw, mk3ghw, ROT0, "bootleg / Midway", "Mortal Kombat 3 (bootleg of Megadrive version)", 0) -GAME( 1994, ssf2ghw, 0, megadriv, ssf2ghw, ssf2ghw, ROT0, "bootleg / Capcom", "Super Street Fighter II - The New Challengers (Arcade bootleg of Japanese MegaDrive version)", 0 ) +GAME( 1993, aladbl, 0, megadriv, aladbl, aladbl, ROT0, "bootleg / Sega", "Aladdin (bootleg of Japanese Megadrive version)", 0) +GAME( 1996, mk3ghw, 0, megadriv, mk3ghw, mk3ghw, ROT0, "bootleg / Midway", "Mortal Kombat 3 (bootleg of Megadrive version)", 0) +GAME( 1994, ssf2ghw, 0, megadriv, ssf2ghw, ssf2ghw, ROT0, "bootleg / Capcom", "Super Street Fighter II - The New Challengers (Arcade bootleg of Japanese MegaDrive version)", 0) +GAME( 1995, topshoot, 0, md_bootleg, topshoot, topshoot, ROT0, "Sun Mixing", "Top Shooter", 0) diff --git a/src/mame/drivers/topshoot.c b/src/mame/drivers/topshoot.c deleted file mode 100644 index d51a46153c6..00000000000 --- a/src/mame/drivers/topshoot.c +++ /dev/null @@ -1,174 +0,0 @@ -/* - - Sun Mixing board, looks like a hacked up Genesis clone. - - Driver by David Haywood - Inputs by Mariusz Wojcieszek - - Top Shooter - (c)1995 - older board, look more like an actual hacked cart system, has an MCU - - Not Dumped - - Super Bubble Bobble (a bubble bobble rip-off from Sun Mixing, looks like it may be on this hardware) - - */ - -/* - -TOP SHOOTER - Sun Mixing Co. Ltd. 1995 - -To me it seems like an original cartridge-based arcade board -hacked to use an external ROM board and a standard JAMMA -connector, but of course, I can be wrong. - - - UPPER BOARD - - _________________________________________________________ - | ___________ ___________ _____ __ | - | 74LS245P |U14 Empty | |U12 ROM1 | |IC1| |B| | - | 74LS245P |__________| |__________| |___| | - | 74LS245P ___________ ___________ _____________ | - __| |U13 Empty | |U11 ROM2 | | AT89C51 | | - |_ J |__________| |__________| |____________| |_ - |_ A ______________________ _____ |_ J - |_ M | U10 MC68000P10 | |OSC| |_ P - |_ M | Motorola | |_ 2 - |_ A |______________________| 74HC00P |_ - |_ 74LS245P ______________________ ________ | - |_ | U9 Empty | |HM6116L | - |_ | | |_______| |_ J - |_ |______________________| |_ P - |_ 74LS245P TD62oo3AP 74LS373P |_ 3 - |_ __________ | - |_ 74LS245P |GALv20V8B| | - |_ ______ | - |_ _____ |DIPS| |_ P - | |U24 | |_ 1 - | 74LS245P | - | TD62oo3AP | - | | - |_ 97 ____________ _____| - |_|_|_|_|_|_|_|_|_|_|_|_|_|_| |_|_|_|_| - - - IC1 = Surface scracthed out, don't know what is it - U24 = Surface scratched out, seems like a PROM - DIPS = Fixed as: 00001000 - ROMS = Toshiba TC574000AD - - JP2, JP3 and P1 connects both boards, also another - on-board connector is used, see notes for the 68K socket - for the lower board. - - - LOWER BOARD - - _________________________________________________________ - | ____ ____ | - | ___ | I| | I| | - | |I| | C| | C| | - | |C| | 3| | 2| | - | |1| |__| |__| | - | |3| |__ - | _ _________________________ __| - | |_| ||||||||||||||||||||||||| __| - | IC14 ---------- SLOT --------- __| - | ______________________ __| - | | | __| - | ___ | 68K (to upper board) | _______ __| - | |I| |______________________| |SE-94| __| - | |C| |JDDB | _| - | |1| _______ |_____| | - | |2| |SE-93| IC4 | - | |JDDA | | - | |_____| ___________ |_ - | IC8 |Z8400A PS| | - | |_________| | - | ______ _________ _________ | - | | OSC| | IC11 | | IC7 | | - | _____________ |_______| |_______| | - | RST | | CN5 CN6 | - |___________| |______________________________| - - - IC3 = IC2 = Winbond W24257V - IC7 = 6264LD 9440 - IC11 = SE-95 JDDC - IC12 = Sony CXA1634P - IC13 = Sony CXA1145P - IC14 = GL358 N16 - - RST is a reset button. - - OSC = 53.693175 MHz - - CN5 and CN6 are 9-pin connectors... serial ports? - - There are two wires soldered directly to two connectors - of the slot, going to the upper board (via P1). - - The whole upper board is plugged using the 68000 socket, - there is no 68K on the lower board. - - There is an edge connector, but it isn't JAMMA. - - "HK-986 (KINYO)" is written on the PCB, near the slot. - -*/ - -#include "emu.h" -#include "includes/megadriv.h" - -static INPUT_PORTS_START( topshoot ) /* Top Shooter Input Ports */ - PORT_START("IN0") - PORT_BIT( 0x4f, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Bet") PORT_IMPULSE(1) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Start") PORT_IMPULSE(1) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Fire") PORT_IMPULSE(1) - - PORT_START("IN1") - PORT_BIT( 0xe7, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_SERVICE_NO_TOGGLE( 0x08, IP_ACTIVE_LOW ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Test mode down") PORT_IMPULSE(1) - - PORT_START("IN2") - PORT_BIT( 0xfd, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(1) - - PORT_START("IN3") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(1) - PORT_BIT( 0xfe, IP_ACTIVE_LOW, IPT_UNKNOWN ) - -INPUT_PORTS_END - - -ROM_START( topshoot ) /* Top Shooter (c)1995 Sun Mixing */ - ROM_REGION( 0x200000, "maincpu", 0 ) - ROM_LOAD16_BYTE( "tc574000ad_u11_2.bin", 0x000000, 0x080000, CRC(b235c4d9) SHA1(fbb308a5f6e769f3277824cb6a3b50c308969ac2) ) - ROM_LOAD16_BYTE( "tc574000ad_u12_1.bin", 0x000001, 0x080000, CRC(e826f6ad) SHA1(23ec8bb608f954d3b915f061e7076c0c63b8259e) ) - - // not hooked up yet - ROM_REGION( 0x1000, "mcu", 0 ) - ROM_LOAD( "89c51.bin", 0x0000, 0x1000, CRC(595475c8) SHA1(8313819ba06cc92b54f88c1ca9f34be8d1ec94d0) ) -ROM_END - -static READ16_HANDLER(topshoot_200051_r) -{ - return -0x5b; -} - -static DRIVER_INIT(topshoot) -{ - memory_install_read16_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x200050, 0x200051, 0, 0, topshoot_200051_r ); - memory_install_read_port(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x200042, 0x200043, 0, 0, "IN0"); - memory_install_read_port(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x200044, 0x200045, 0, 0, "IN1"); - memory_install_read_port(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x200046, 0x200047, 0, 0, "IN2"); - memory_install_read_port(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x200048, 0x200049, 0, 0, "IN3"); - - DRIVER_INIT_CALL(megadriv); -} - - -/* Sun Mixing Hardware, very close to actual Genesis */ -GAME( 1995, topshoot, 0, md_bootleg, topshoot, topshoot, ROT0, "Sun Mixing", "Top Shooter", 0 ) diff --git a/src/mame/mame.mak b/src/mame/mame.mak index d82e385a7b2..4eaf4e8db1e 100644 --- a/src/mame/mame.mak +++ b/src/mame/mame.mak @@ -1113,12 +1113,12 @@ $(MAMEOBJ)/sega.a: \ $(DRIVERS)/deniam.o $(VIDEO)/deniam.o \ $(DRIVERS)/dotrikun.o \ $(VIDEO)/genesis.o \ - $(DRIVERS)/genesisb.o \ $(DRIVERS)/gpworld.o \ $(DRIVERS)/hikaru.o \ $(DRIVERS)/hshavoc.o \ $(DRIVERS)/kopunch.o $(VIDEO)/kopunch.o \ $(DRIVERS)/megadriv.o \ + $(DRIVERS)/megadrvb.o \ $(DRIVERS)/megaplay.o \ $(DRIVERS)/megatech.o \ $(DRIVERS)/model1.o $(MACHINE)/model1.o $(VIDEO)/model1.o \ @@ -1149,7 +1149,6 @@ $(MAMEOBJ)/sega.a: \ $(DRIVERS)/system1.o $(VIDEO)/system1.o \ $(DRIVERS)/system16.o $(VIDEO)/system16.o \ $(DRIVERS)/timetrv.o \ - $(DRIVERS)/topshoot.o \ $(DRIVERS)/turbo.o $(AUDIO)/turbo.o $(VIDEO)/turbo.o \ $(DRIVERS)/vicdual.o $(AUDIO)/vicdual.o $(VIDEO)/vicdual.o \ $(DRIVERS)/zaxxon.o $(AUDIO)/zaxxon.o $(VIDEO)/zaxxon.o \