mirror of
https://github.com/mamedev/mame.git
synced 2024-11-18 10:06:19 +01:00
Merge pull request #5198 from DavidHaywood/090619
new NOT WORKING clones
This commit is contained in:
commit
ef28a886be
5 changed files with 182 additions and 1 deletions
|
@ -1944,6 +1944,7 @@ files {
|
|||
MAME_DIR .. "src/mame/video/xorworld.cpp",
|
||||
MAME_DIR .. "src/mame/machine/gaelco_ds5002fp.cpp",
|
||||
MAME_DIR .. "src/mame/machine/gaelco_ds5002fp.h",
|
||||
MAME_DIR .. "src/mame/drivers/bigkarnk_ms.cpp",
|
||||
}
|
||||
|
||||
createMAMEProjects(_target, _subtarget, "gameplan")
|
||||
|
|
|
@ -126,6 +126,7 @@ bfmsys85.cpp
|
|||
bgt.cpp
|
||||
big10.cpp
|
||||
bigevglf.cpp
|
||||
bigkarnk_ms.cpp
|
||||
bigstrkb.cpp
|
||||
bingo.cpp
|
||||
bingoc.cpp
|
||||
|
|
175
src/mame/drivers/bigkarnk_ms.cpp
Normal file
175
src/mame/drivers/bigkarnk_ms.cpp
Normal file
|
@ -0,0 +1,175 @@
|
|||
// license:BSD-3-Clause
|
||||
// copyright-holders:David Haywood
|
||||
|
||||
/*
|
||||
Big Karnak (Modular System)
|
||||
|
||||
this appears to be a different revision than the gaelco.cpp version, so could be original code, or
|
||||
based off one that is otherwise undumped.
|
||||
|
||||
as with most of the 'Modular System' setups, the hardware is heavily modified from the original
|
||||
and consists of a multi-board stack in a cage, hence different driver.
|
||||
|
||||
TODO: PCB list
|
||||
|
||||
*/
|
||||
|
||||
|
||||
#include "emu.h"
|
||||
#include "cpu/m68000/m68000.h"
|
||||
#include "emupal.h"
|
||||
#include "screen.h"
|
||||
#include "speaker.h"
|
||||
|
||||
|
||||
class bigkarnk_ms_state : public driver_device
|
||||
{
|
||||
public:
|
||||
bigkarnk_ms_state(const machine_config &mconfig, device_type type, const char *tag) :
|
||||
driver_device(mconfig, type, tag),
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_palette(*this, "palette"),
|
||||
m_screen(*this, "screen"),
|
||||
m_paletteram(*this, "palette"),
|
||||
m_gfxdecode(*this, "gfxdecode")
|
||||
{ }
|
||||
|
||||
void bigkarnkm(machine_config &config);
|
||||
|
||||
private:
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<palette_device> m_palette;
|
||||
required_device<screen_device> m_screen;
|
||||
|
||||
required_shared_ptr<uint16_t> m_paletteram;
|
||||
required_device<gfxdecode_device> m_gfxdecode;
|
||||
|
||||
virtual void machine_start() override;
|
||||
|
||||
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
||||
|
||||
void bigkarnkm_map(address_map &map);
|
||||
};
|
||||
|
||||
|
||||
void bigkarnk_ms_state::bigkarnkm_map(address_map &map)
|
||||
{
|
||||
map(0x000000, 0x07ffff).rom();
|
||||
map(0x200000, 0x2007ff).ram().w(m_palette, FUNC(palette_device::write16)).share("palette");
|
||||
map(0xff0000, 0xffffff).ram();
|
||||
}
|
||||
|
||||
|
||||
void bigkarnk_ms_state::machine_start()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
uint32_t bigkarnk_ms_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static INPUT_PORTS_START( bigkarnkm )
|
||||
INPUT_PORTS_END
|
||||
|
||||
static const gfx_layout tiles16x16x4_layout =
|
||||
{
|
||||
16,16,
|
||||
RGN_FRAC(1,1),
|
||||
4,
|
||||
{ 0,8,16,24 },
|
||||
{ 0,1,2,3,4,5,6,7, 512,513,514,515,516,517,518,519 },
|
||||
{ STEP16(0,32) },
|
||||
16 * 16 * 4
|
||||
};
|
||||
|
||||
static GFXDECODE_START( gfx_bigkarnk_ms )
|
||||
GFXDECODE_ENTRY( "gfx1", 0, tiles16x16x4_layout, 0, 16 )
|
||||
GFXDECODE_ENTRY( "gfx2", 0, tiles16x16x4_layout, 0, 16 )
|
||||
GFXDECODE_END
|
||||
|
||||
void bigkarnk_ms_state::bigkarnkm(machine_config &config)
|
||||
{
|
||||
/* basic machine hardware */
|
||||
M68000(config, m_maincpu, 12_MHz_XTAL);
|
||||
m_maincpu->set_addrmap(AS_PROGRAM, &bigkarnk_ms_state::bigkarnkm_map);
|
||||
m_maincpu->set_vblank_int("screen", FUNC(bigkarnk_ms_state::irq6_line_hold));
|
||||
|
||||
/* video hardware */
|
||||
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
|
||||
m_screen->set_refresh_hz(60);
|
||||
m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(2500) /* not accurate */);
|
||||
m_screen->set_size(256, 256);
|
||||
m_screen->set_visarea(0, 256-1, 0, 256-32-1);
|
||||
m_screen->set_screen_update(FUNC(bigkarnk_ms_state::screen_update));
|
||||
m_screen->set_palette(m_palette);
|
||||
|
||||
PALETTE(config, m_palette).set_format(palette_device::xRGB_444, 0x400);
|
||||
|
||||
GFXDECODE(config, m_gfxdecode, "palette", gfx_bigkarnk_ms);
|
||||
|
||||
/* sound hardware */
|
||||
SPEAKER(config, "mono").front_center();
|
||||
}
|
||||
|
||||
ROM_START( bigkarnkm )
|
||||
ROM_REGION( 0x080000, "maincpu", 0 ) /* 68000 code */
|
||||
ROM_LOAD16_BYTE( "cpu_ka_6.ic8", 0x000001, 0x020000, CRC(ab71c1d3) SHA1(3174f1c68e4aa5b6053b118da1fed1f4001193b0) )
|
||||
ROM_LOAD16_BYTE( "cpu_ka_6.ic17", 0x000000, 0x020000, CRC(9f5c0dac) SHA1(a8089f58e34d7ba581303f7cf819297d21867a6a) )
|
||||
ROM_LOAD16_BYTE( "cpu_ka_6.ic11", 0x040001, 0x020000, CRC(30674ef3) SHA1(d1b29337068ed7323c104a48de593c9ac4668e66) )
|
||||
ROM_LOAD16_BYTE( "cpu_ka_6.ic20", 0x040000, 0x020000, CRC(332d6dea) SHA1(cd7e402642f57c12cb7405c49b75bfaa0d104421) )
|
||||
|
||||
ROM_REGION( 0x010000, "audiocpu", 0 ) /* Z80 code (uses YM3812 + M5205) */
|
||||
ROM_LOAD( "snd_ka.ic6", 0x000000, 0x010000, CRC(48a66be8) SHA1(0ca8e4ef5b5e257d56afda6946c5f2a0712917a3) )
|
||||
|
||||
ROM_REGION( 0x020000, "audiodata", 0 )
|
||||
ROM_LOAD( "snd_ka.ic11", 0x000000, 0x020000, CRC(8e53a6b8) SHA1(5082bbcb042216a6d58c654a52c98d75df700ac8) )
|
||||
|
||||
ROM_REGION( 0x180000, "gfx1", ROMREGION_ERASEFF ) // sprites (same rom subboard type as galpanic_ms.cpp)
|
||||
ROM_LOAD32_BYTE( "5_ka.ic4", 0x000003, 0x020000, CRC(2bee07ea) SHA1(afd8769955314768db894e4e98f65422fc0dbb4f) )
|
||||
ROM_LOAD32_BYTE( "5_ka.ic13", 0x000002, 0x020000, CRC(d55e3024) SHA1(71c84a76b08f8983f65ac4b99430eeb30dc3f8ea) )
|
||||
ROM_LOAD32_BYTE( "5_ka.ic19", 0x000001, 0x020000, CRC(fc682c21) SHA1(c3fa9907fbe276bc4b74b79dda52713e702e441c) )
|
||||
ROM_LOAD32_BYTE( "5_ka.ic25", 0x000000, 0x020000, CRC(1157b739) SHA1(fdea10f808f258409e19e41dedfb3d4699e7daa2) )
|
||||
ROM_LOAD32_BYTE( "5_ka.ic5", 0x080003, 0x020000, CRC(507056f7) SHA1(e754c803f85862a37d2a48be6554ff5bc4128b4d) )
|
||||
ROM_LOAD32_BYTE( "5_ka.ic14", 0x080002, 0x020000, CRC(ef936e76) SHA1(ed93b04a45c38c0fa7333f182beba33fafe17f38) )
|
||||
ROM_LOAD32_BYTE( "5_ka.ic20", 0x080001, 0x020000, CRC(38854cd6) SHA1(b32efc1c621a9d8559c294f7431c219a05a37db6) )
|
||||
ROM_LOAD32_BYTE( "5_ka.ic26", 0x080000, 0x020000, CRC(3f63c4ed) SHA1(e0dd3ec27e7aa0b7db1587e83d20d1b9333ca405) )
|
||||
ROM_LOAD32_BYTE( "5_ka.ic6", 0x100003, 0x020000, CRC(2fdbc484) SHA1(6e8ac1a8bde8189b7ebf32c59185425c512ab911) )
|
||||
ROM_LOAD32_BYTE( "5_ka.ic15", 0x100002, 0x020000, CRC(802128e4) SHA1(20cfdf28aa7ada404ceca236c6eb554dcaa8e633) )
|
||||
ROM_LOAD32_BYTE( "5_ka.ic21", 0x100001, 0x020000, CRC(5ccc0f99) SHA1(ae2b2d4b2aa77a099ad2711032e6a05ab52789b9) )
|
||||
ROM_LOAD32_BYTE( "5_ka.ic27", 0x100000, 0x020000, CRC(55509d96) SHA1(ddd064695ca7e8c2377f13484e385bf7ea7df610) )
|
||||
|
||||
ROM_REGION( 0x100000, "gfx2", 0 )
|
||||
ROM_LOAD32_BYTE( "8_ka_814.ic14", 0x000003, 0x020000, CRC(50e6cab6) SHA1(5af8b27f35a59611484ea35a2883b1e59d5c7517) )
|
||||
ROM_LOAD32_BYTE( "8_ka_821.ic21", 0x000002, 0x020000, CRC(90c1d93e) SHA1(581a1e2f30e8b467c8d8f5c8e528c78c0c3904f2) )
|
||||
ROM_LOAD32_BYTE( "8_ka_829.ic29", 0x000001, 0x020000, CRC(8c5df0ec) SHA1(15a5b847d6d035f27300435a03bd254dd9b3f99c) )
|
||||
ROM_LOAD32_BYTE( "8_ka_836.ic36", 0x000000, 0x020000, CRC(43de75db) SHA1(419e7702d17c52365addb8bfda582e916762ead5) )
|
||||
ROM_LOAD32_BYTE( "8_ka_815.ic15", 0x080003, 0x020000, CRC(59d79b33) SHA1(70b9c60a72e517ac70f807c918f0ad4dd6c98f98) )
|
||||
ROM_LOAD32_BYTE( "8_ka_822.ic22", 0x080002, 0x020000, CRC(12fc89c0) SHA1(883144d0c453cd8f829b2209d9a8028b7f87d0d5) )
|
||||
ROM_LOAD32_BYTE( "8_ka_830.ic30", 0x080001, 0x020000, CRC(9904ae87) SHA1(5df3b35185c53a64c0647d297a19b9c013a3b3c2) )
|
||||
ROM_LOAD32_BYTE( "8_ka_837.ic37", 0x080000, 0x020000, CRC(f475eaa7) SHA1(8e5c7f0231d7f84bc377b756b99d055a4791e3bf) )
|
||||
|
||||
ROM_REGION( 0x100, "prom", ROMREGION_ERASEFF )
|
||||
ROM_LOAD( "51_p0502_n82s129n.ic10", 0x000, 0x100, CRC(15085e44) SHA1(646e7100fcb112594023cf02be036bd3d42cc13c) ) // common PROM found on all? Modular System sets?
|
||||
|
||||
ROM_REGION( 0x100000, "pals", 0 )
|
||||
ROM_LOAD( "51_p0503_pal16r6acn.ic48", 0x000, 0x104, CRC(07eb86d2) SHA1(482eb325df5bc60353bac85412cf45429cd03c6d) ) // matches one of the Euro League Modular System PALs
|
||||
|
||||
ROM_REGION( 0x100, "protgal", 0 ) // all read protected
|
||||
ROM_LOAD( "5_5148_gal16v8-25lnc.ic9", 0, 1, NO_DUMP )
|
||||
ROM_LOAD( "5_5248_gal16v8-25lnc.ic8", 0, 1, NO_DUMP )
|
||||
ROM_LOAD( "7_75flv_gal16v8-25hb1.ic59", 0, 1, NO_DUMP )
|
||||
ROM_LOAD( "7_7148_gal20v8-25lp.ic7", 0, 1, NO_DUMP )
|
||||
ROM_LOAD( "7_7248_gal20v8-25lp.ic54", 0, 1, NO_DUMP )
|
||||
ROM_LOAD( "7_7348_gal16v8-25hb1.ic55", 0, 1, NO_DUMP )
|
||||
ROM_LOAD( "7_7448_gal16v8-25hb1.ic9", 0, 1, NO_DUMP )
|
||||
ROM_LOAD( "7_7648_gal20v8-25lp.ic44", 0, 1, NO_DUMP )
|
||||
ROM_LOAD( "cpu_606_gal16v8-25hb1.ic13", 0, 1, NO_DUMP )
|
||||
ROM_LOAD( "cpu_648_gal16v8-25ln.ic7", 0, 1, NO_DUMP )
|
||||
ROM_LOAD( "snd_9148_gal16v8-25hb1.ic142", 0, 1, NO_DUMP )
|
||||
ROM_LOAD( "snd_9248_gal20v8-25lp.ic18", 0, 1, NO_DUMP )
|
||||
ROM_LOAD( "snd_9348_gal16v8-25hb1.ic10", 0, 1, NO_DUMP )
|
||||
ROM_END
|
||||
|
||||
GAME( 1991, bigkarnkm, bigkarnk, bigkarnkm, bigkarnkm, bigkarnk_ms_state, empty_init, ROT0, "Gaelco", "Big Karnak (Modular System)", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
|
|
@ -712,5 +712,6 @@ GAME( 1989, twcup90ba, twcup90, wc90b, wc90b, wc90b_state, init_wc90b, ROT0, "bo
|
|||
GAME( 1989, twcup90b2, twcup90, wc90b, wc90b, wc90b_state, init_wc90b, ROT0, "bootleg", "Worldcup '90 (hack)", MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1989, twcup90bb, twcup90, wc90b, wc90b, wc90b_state, init_wc90b, ROT0, "bootleg", "World Cup '90 (European hack, different title)", MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE )
|
||||
// not sure if it best fits here, in wc90.cpp, or in a new driver, it shares the weird tile decoding with the bootlegs tho
|
||||
// Gaelco requested the registry of the "Euro League" trademark on 1990, and it was a Gaelco protected trademark (in Spain) until 1999 (they paid a 5-year renew in 1994): https://www.patentes-y-marcas.com/marca/euro-league-m1546246
|
||||
GAME( 1989, eurogael, twcup90, eurogael, wc90b, eurogael_state, init_wc90b, ROT0, "bootleg (Gaelco / Ervisa)", "Euro League (Gaelco bootleg, Modular System)", MACHINE_IMPERFECT_SOUND )
|
||||
|
||||
|
|
|
@ -8870,6 +8870,9 @@ bigbord2 //
|
|||
bigevglf // A67 (c) 1986 Taito America Corporation (US)
|
||||
bigevglfj // A67 (c) 1986 Taito Corporation (Japan)
|
||||
|
||||
@source:bigkarnk_ms.cpp
|
||||
bigkarnkm //
|
||||
|
||||
@source:bigstrkb.cpp
|
||||
bigstrkb // bootleg on different hardware
|
||||
bigstrkba // alt set of 'bigstrkb' with Italian teams
|
||||
|
|
Loading…
Reference in a new issue