From f4834d8d2f46125721aae76553573a00635fc007 Mon Sep 17 00:00:00 2001 From: David Haywood Date: Fri, 11 Oct 2013 02:58:37 +0000 Subject: [PATCH] new NOT WORKING Unknown Sidam Poker [ANY] (it's encrypted, he lists what is connected to what) --- src/mame/drivers/wallc.c | 80 ++++++++++++++++++++++++++++++++++++++++ src/mame/mame.lst | 1 + 2 files changed, 81 insertions(+) diff --git a/src/mame/drivers/wallc.c b/src/mame/drivers/wallc.c index e28ae68fd10..02b6778dadb 100644 --- a/src/mame/drivers/wallc.c +++ b/src/mame/drivers/wallc.c @@ -67,6 +67,7 @@ public: DECLARE_WRITE8_MEMBER(wallc_coin_counter_w); DECLARE_DRIVER_INIT(wallc); DECLARE_DRIVER_INIT(wallca); + DECLARE_DRIVER_INIT(sidam); TILE_GET_INFO_MEMBER(get_bg_tile_info); virtual void video_start(); virtual void palette_init(); @@ -359,5 +360,84 @@ ROM_START( wallca ) ROM_LOAD( "74s288.c2", 0x0000, 0x0020, CRC(83e3e293) SHA1(a98c5e63b688de8d175adb6539e0cdc668f313fd) ) ROM_END +/* + +It use a epoxy brick like wallc +Inside the brick there are: +- 74245 +- 74368 +- Pal16r4 + +74368 is a tristate not, it's used to: +-nagate D0 that goes to the CPU if A15 is low +-nagate D1 that goes to the CPU if A15 is low +-nagate D2 that goes to the CPU if A15 is low +-nagate D3 that goes to the CPU if A15 is low + +-negate cpu clk to feed the pal clk ALWAYS +-negate A15 to feed 74245 /EN ALWAYS + + +The 74245 let pass the data unmodifyed if A15 is high (like wallc) + +If A15 is low a Pal16r4 kick in +this chip can modify D2,D3,D4,D5,D6,D7 + +D0 and D1 are negated from outside to real Z80 +D2 and D3 are negated after begin modified by the Pal + +Pal input +A1 +A3 +A6 +A15 (Output enable, not in equation) + +D2 +D3 +D4 +D5 (2 times) +D7 (2 times) + +Pal output +D2 (via not to cpu) +D3 (via not to cpu) +D4 to cpu +D5 to cpu +D6 to cpu +D7 to cpu + +*/ + +ROM_START( sidampkr ) + ROM_REGION( 0x10000, "maincpu", 0 ) + ROM_LOAD( "11600.0", 0x0000, 0x1000, CRC(88cac4d2) SHA1(a369da3dc80671eeff549077cf2ce860d5f4ea35) ) + ROM_LOAD( "11600.1", 0x1000, 0x1000, CRC(96cca320) SHA1(85326f7126c8250a22f35f6eed138051a9ab35cb) ) + + ROM_REGION( 0x3000, "gfx1", 0 ) + ROM_LOAD( "11605.b", 0x0800, 0x0800, CRC(a7800f8a) SHA1(3955e0f71ced6fd759f52d12c0b39ab6aab31ca4) ) + ROM_LOAD( "11605.g", 0x1800, 0x0800, CRC(b7bebf1e) SHA1(764536989ba4c4c143a61d4453c3bba547bc630a) ) + ROM_LOAD( "11605.r", 0x2800, 0x0800, CRC(4d645b8d) SHA1(d4f8d11c4ef796cf66ebf2e6b8a11247d630951a) ) + + ROM_REGION( 0x0020, "proms", 0 ) + ROM_LOAD( "11607-74.288", 0x0000, 0x0020, CRC(e14bf545) SHA1(5e8c5a9ea6e4842f27a47c1d7224ed294bbaa40b) ) +ROM_END + +DRIVER_INIT_MEMBER(wallc_state,sidam) +{ + UINT8 c; + UINT32 i; + + UINT8 *ROM = memregion("maincpu")->base(); + + for (i=0; i<0x2000; i++) + { + c = ROM[ i ] ^ 0x0f; + ROM[ i ] = c; + } + + +} + GAME( 1984, wallc, 0, wallc, wallc, wallc_state, wallc, ROT0, "Midcoin", "Wall Crash (set 1)", 0 ) GAME( 1984, wallca, wallc, wallc, wallc, wallc_state, wallca, ROT0, "Midcoin", "Wall Crash (set 2)", 0 ) +GAME( 1984, sidampkr,0, wallc, wallc, wallc_state, sidam, ROT270, "Sidam", "Unknown Sidam Poker", GAME_NOT_WORKING ) diff --git a/src/mame/mame.lst b/src/mame/mame.lst index fe3d99f6e6f..09f119742d3 100644 --- a/src/mame/mame.lst +++ b/src/mame/mame.lst @@ -9977,6 +9977,7 @@ thedeep // (c) 1987 Wood Place rundeep // (c) 1988 Cream (bootleg?) wallc // (c) 1984 Midcoin wallca // (c) 1984 Midcoin +sidampkr // wink // (c) 1985 Midcoin winka // (c) 1985 Midcoin 24cdjuke // (c) 1988 Midcoin