summaryrefslogtreecommitdiffstatshomepage
path: root/src
diff options
context:
space:
mode:
author Phil Bennett <philipjbennett@users.noreply.github.com>2009-10-05 17:03:34 +0000
committer Phil Bennett <philipjbennett@users.noreply.github.com>2009-10-05 17:03:34 +0000
commitcd96e8983063223a666664feeeb53bd75ff03036 (patch)
treef8d9e81d641c76b7f0a0870a25dd5f45a3144ee3 /src
parent4c52712c8a874284218ac7006c522284642ac4df (diff)
New non-working clones added
---------------------------- Block 2 (bootleg of Arkanoid) [David Haywood, Andy Welburn]
Diffstat (limited to 'src')
-rw-r--r--src/mame/drivers/arkanoid.c55
-rw-r--r--src/mame/includes/arkanoid.h4
-rw-r--r--src/mame/machine/arkanoid.c15
-rw-r--r--src/mame/mamedriv.c1
4 files changed, 74 insertions, 1 deletions
diff --git a/src/mame/drivers/arkanoid.c b/src/mame/drivers/arkanoid.c
index 201b49e4921..395da3a0933 100644
--- a/src/mame/drivers/arkanoid.c
+++ b/src/mame/drivers/arkanoid.c
@@ -981,6 +981,24 @@ ROM_START( arkangc2 )
ROM_LOAD( "a75-09.bpr", 0x0400, 0x0200, CRC(a7c6c277) SHA1(adaa003dcd981576ea1cc5f697d709b2d6b2ea29) ) /* blue component */
ROM_END
+ROM_START( block2 )
+ ROM_REGION( 0x18000, "maincpu", 0 )
+ ROM_LOAD( "1.bin", 0x00000, 0x8000, CRC(2b026cae) SHA1(73d1d5d3e6d65fbe378ce85ff501610573ae5e95) )
+ ROM_LOAD( "2.bin", 0x08000, 0x8000, CRC(e3843fea) SHA1(8c654dcf78d9e4f4c6a7a7d384fdf622536234c1) )
+ ROM_LOAD( "3.bin", 0x10000, 0x8000, CRC(e336c219) SHA1(e1dce37727e7084a83e73f15a138312ab6224061) ) // ?? is it more data or something else like sound or palette?
+
+ ROM_REGION( 0x18000, "gfx1", 0 )
+ ROM_LOAD( "4.bin", 0x00000, 0x8000, CRC(6d2c6123) SHA1(26f32099d363ab2c8505722513638b827e49a8fc) )
+ ROM_LOAD( "5.bin", 0x08000, 0x8000, CRC(09a1f9d9) SHA1(c7e21aba6efb51c5501aa1428f6d9a817cb86555) )
+ ROM_LOAD( "6.bin", 0x10000, 0x8000, CRC(dfb9f7e2) SHA1(8d938ee6f8dcac0a564d5fa7cd5da34e0db07c71) )
+
+ // no proms were present in this set.. assumed to be the same
+ ROM_REGION( 0x0600, "proms", 0 )
+ ROM_LOAD( "a75-07.bpr", 0x0000, 0x0200, CRC(0af8b289) SHA1(6bc589e8a609b4cf450aebedc8ce02d5d45c970f) ) /* red component */
+ ROM_LOAD( "a75-08.bpr", 0x0200, 0x0200, CRC(abb002fb) SHA1(c14f56b8ef103600862e7930709d293b0aa97a73) ) /* green component */
+ ROM_LOAD( "a75-09.bpr", 0x0400, 0x0200, CRC(a7c6c277) SHA1(adaa003dcd981576ea1cc5f697d709b2d6b2ea29) ) /* blue component */
+ROM_END
+
ROM_START( arkblock )
ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD( "ark-6.bin", 0x0000, 0x8000, CRC(0be015de) SHA1(f4209085b59d2c96a62ac9657c7bf097da55362b) )
@@ -1180,6 +1198,42 @@ static DRIVER_INIT( tetrsark )
memory_install_write8_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0xd008, 0xd008, 0, 0, tetrsark_d008_w );
}
+static DRIVER_INIT( block2 )
+{
+ // the graphics on this bootleg have the data scrambled
+ int tile;
+ UINT8* srcgfx = memory_region(machine,"gfx1");
+ UINT8* buffer = alloc_array_or_die(UINT8, 0x18000);
+
+ for (tile=0;tile<0x3000;tile++)
+ {
+ int srctile;
+
+ // combine these into a single swap..
+ srctile = BITSWAP16(tile,15,14,13,12,
+ 11,10,9,8,
+ 7,5,6,3,
+ 1,2,4,0);
+
+ srctile = BITSWAP16(srctile,15,14,13,12,
+ 11,9,10,5,
+ 7,6,8,4,
+ 3,2,1,0);
+
+ srctile = srctile^0xd4;
+
+
+
+ memcpy(&buffer[tile*8], &srcgfx[srctile*8], 8);
+ }
+
+ memcpy(srcgfx,buffer,0x18000);
+
+ arkanoid_bootleg_id = BLOCK2;
+ arkanoid_bootleg_init(machine);
+
+ memory_install_read8_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0xf000, 0xf000, 0, 0, block2_bootleg_f000_r );
+}
/* Game Drivers */
@@ -1195,6 +1249,7 @@ GAME( 1986, arkblock, arkanoid, bootleg, arkangc, arkblock, ROT90, "bootleg",
GAME( 1986, arkbloc2, arkanoid, bootleg, arkangc, arkbloc2, ROT90, "bootleg", "Block (Game Corporation bootleg, set 2)", GAME_SUPPORTS_SAVE )
GAME( 1986, arkgcbl, arkanoid, bootleg, arkgcbl, arkgcbl, ROT90, "bootleg", "Arkanoid (bootleg on Block hardware)", GAME_SUPPORTS_SAVE )
GAME( 1988, paddle2, arkanoid, bootleg, paddle2, paddle2, ROT90, "bootleg", "Paddle 2 (bootleg on Block hardware)", GAME_SUPPORTS_SAVE )
+GAME( 1986, block2, arkanoid, bootleg, arkangc, block2, ROT90, "bootleg", "Block 2 (bootleg of Arkanoid)", GAME_NOT_WORKING ) // 'autoplays'
GAME( 1986, arkatayt, arkanoid, bootleg, arkatayt, 0, ROT90, "bootleg", "Arkanoid (Tayto bootleg)", GAME_SUPPORTS_SAVE )
GAME( 1986, arktayt2, arkanoid, bootleg, arktayt2, 0, ROT90, "bootleg", "Arkanoid (Tayto bootleg, harder)", GAME_SUPPORTS_SAVE )
GAME( 1987, arkatour, arkanoid, arkanoid, arkanoid, 0, ROT90, "Taito America Corporation (Romstar license)", "Tournament Arkanoid (US)", GAME_SUPPORTS_SAVE )
diff --git a/src/mame/includes/arkanoid.h b/src/mame/includes/arkanoid.h
index e211d44c112..4a761560be6 100644
--- a/src/mame/includes/arkanoid.h
+++ b/src/mame/includes/arkanoid.h
@@ -6,7 +6,8 @@ enum {
ARKBLOCK,
ARKBLOC2,
ARKGCBL,
- PADDLE2
+ PADDLE2,
+ BLOCK2
};
@@ -50,4 +51,5 @@ extern CUSTOM_INPUT( arkanoid_input_mux );
extern READ8_HANDLER( arkanoid_bootleg_f002_r );
extern WRITE8_HANDLER( arkanoid_bootleg_d018_w );
extern READ8_HANDLER( arkanoid_bootleg_d008_r );
+extern READ8_HANDLER( block2_bootleg_f000_r );
diff --git a/src/mame/machine/arkanoid.c b/src/mame/machine/arkanoid.c
index f919e24eeb4..8a48ae058ed 100644
--- a/src/mame/machine/arkanoid.c
+++ b/src/mame/machine/arkanoid.c
@@ -507,12 +507,27 @@ WRITE8_HANDLER( arkanoid_bootleg_d018_w )
}
LOG_D018_W
break;
+ case BLOCK2:
+ switch (data)
+ {
+ default:
+ arkanoid_bootleg_cmd = data;
+ break;
+ }
+ LOG_D018_W
+ break;
+
default:
logerror("%04x: arkanoid_bootleg_d018_w - data = %02x - unknown bootleg !\n",cpu_get_pc(space->cpu),data);
break;
}
}
+READ8_HANDLER( block2_bootleg_f000_r )
+{
+ return arkanoid_bootleg_cmd;
+}
+
/* Kludge for some bootlegs that read this address */
READ8_HANDLER( arkanoid_bootleg_d008_r )
{
diff --git a/src/mame/mamedriv.c b/src/mame/mamedriv.c
index 2c279710c4e..4e69ce99442 100644
--- a/src/mame/mamedriv.c
+++ b/src/mame/mamedriv.c
@@ -1759,6 +1759,7 @@ const game_driver * const drivers[] =
DRIVER( arkbloc2 ) /* bootleg */
DRIVER( arkgcbl ) /* bootleg */
DRIVER( paddle2 ) /* bootleg */
+ DRIVER( block2 ) /* bootleg */
DRIVER( arkatayt ) /* bootleg */
DRIVER( arktayt2 ) /* bootleg */
DRIVER( arkatour ) /* ??? (c) 1987 Taito America Corporation + Romstar license (US) */