summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author davidhay <davidhay@localhost>2008-05-18 21:49:07 +0000
committer davidhay <davidhay@localhost>2008-05-18 21:49:07 +0000
commit383c7daf6212aebe58e9d6976045e544cd5b1e9b (patch)
treea8f39ad4ccaf8e23e92a85eb9db4a709845742a5
parentb08d2e99476683de5a5fb3a8b1736e62fd0c0ba9 (diff)
adds Beauty Block, non-working. I had it displaying something at one point, but nothing correct. Maybe there is some kind of protection? I haven't been able to figure it out.
-rw-r--r--src/mame/drivers/system16.c103
-rw-r--r--src/mame/mamedriv.c1
2 files changed, 104 insertions, 0 deletions
diff --git a/src/mame/drivers/system16.c b/src/mame/drivers/system16.c
index 6dfa00a806c..049e3e9f9c7 100644
--- a/src/mame/drivers/system16.c
+++ b/src/mame/drivers/system16.c
@@ -1834,6 +1834,42 @@ static ADDRESS_MAP_START( tetrisbl_writemem, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0xffc000, 0xffffff) AM_WRITE(SYS16_MWA16_WORKINGRAM) AM_BASE(&sys16_workingram)
ADDRESS_MAP_END
+
+
+static READ16_HANDLER(beautyb_unk1_r)
+{
+
+ return mame_rand(machine);;
+}
+
+
+static READ16_HANDLER(beautyb_unk2_r)
+{
+ return mame_rand(machine);
+}
+
+static ADDRESS_MAP_START( beautyb_map, ADDRESS_SPACE_PROGRAM, 16 )
+ AM_RANGE(0x000000, 0x00ffff) AM_READWRITE(SMH_ROM, SMH_NOP)
+ //AM_RANGE(0x010000, 0x03ffff) AM_WRITE(SMH_NOP)
+
+ AM_RANGE(0x0280D6, 0x0280D7) AM_READ(beautyb_unk2_r)
+ AM_RANGE(0x0280D8, 0x0280D9) AM_READ(beautyb_unk2_r)
+
+ AM_RANGE(0x400000, 0x40ffff) AM_RAM AM_READWRITE(SYS16_MRA16_TILERAM, SYS16_MWA16_TILERAM) AM_BASE(&sys16_tileram)
+ AM_RANGE(0x410000, 0x410fff) AM_RAM AM_READWRITE(SYS16_MRA16_TEXTRAM, SYS16_MWA16_TEXTRAM) AM_BASE(&sys16_textram)
+ AM_RANGE(0x418000, 0x41803f) AM_RAM AM_READWRITE(SYS16_MRA16_EXTRAM2, SYS16_MWA16_EXTRAM2) AM_BASE(&sys16_extraram2)
+ AM_RANGE(0x440000, 0x440fff) AM_RAM AM_READWRITE(SYS16_MRA16_SPRITERAM, SYS16_MWA16_SPRITERAM) AM_BASE(&sys16_spriteram)
+ AM_RANGE(0x840000, 0x840fff) AM_RAM AM_READWRITE(SYS16_MRA16_PALETTERAM, SYS16_MWA16_PALETTERAM) AM_BASE(&paletteram16)
+
+ AM_RANGE(0xC41000, 0xC41001) AM_READ(beautyb_unk1_r )
+ AM_RANGE(0xC41002, 0xC41003) AM_READ(beautyb_unk1_r )
+
+ AM_RANGE(0xc40000, 0xc40001) AM_WRITE(SMH_NOP)
+ AM_RANGE(0xc80000, 0xc80001) AM_WRITE(SMH_NOP)
+
+ AM_RANGE(0xffc000, 0xffffff) AM_RAM AM_WRITE(SYS16_MWA16_WORKINGRAM) AM_BASE(&sys16_workingram)
+ADDRESS_MAP_END
+
/***************************************************************************/
@@ -1905,6 +1941,17 @@ static MACHINE_DRIVER_START( tetrisbl )
MDRV_MACHINE_RESET(tetrisbl)
MACHINE_DRIVER_END
+static MACHINE_DRIVER_START( beautyb )
+
+ /* basic machine hardware */
+ MDRV_IMPORT_FROM(system16)
+ MDRV_CPU_MODIFY("main")
+ MDRV_CPU_PROGRAM_MAP(beautyb_map, 0)
+
+ MDRV_MACHINE_RESET(tetrisbl)
+MACHINE_DRIVER_END
+
+
/***************************************************************************/
static READ16_HANDLER( tt_io_player1_r )
@@ -2801,3 +2848,59 @@ GAME( 1988, passht4b, passsht, passht4b, passht4b, passht4b, ROT270, "bootleg",
GAME( 1988, tetrisbl, tetris, tetrisbl, tetris, tetrisbl, ROT0, "bootleg", "Tetris (bootleg)", 0 )
GAME( 1989, tturfbl, tturf, tturfbl, tturf, tturfbl, ROT0, "bootleg", "Tough Turf (bootleg)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING )
GAME( 1988, wb3bbl, wb3, wb3bbl, wb3b, wb3bbl, ROT0, "bootleg", "Wonder Boy III - Monster Lair (bootleg)", 0 )
+
+DRIVER_INIT( beautyb )
+{
+ UINT16*rom = (UINT16*)memory_region( REGION_CPU1 );
+ int x;
+
+ for (x=0;x<0x8000;x++)
+ {
+ rom[x] = rom[x] ^ 0x2400;
+
+ if (x&8) rom[x] = BITSWAP16(rom[x],15,14,10,12, 11,13,9,8,
+ 7,6,5,4, 3,2,1,0 );
+
+ }
+
+ MACHINE_RESET_CALL(sys16_onetime);
+
+}
+
+/* Program Roms contain
+
+Designed and Programmed by A.M.T. Research & Development Department 03/30/1991.
+Copying or Revising for Commercial Use Is Not Permitted.
+
+*/
+
+ROM_START( beautyb )
+ ROM_REGION( 0x010000, REGION_CPU1, ROMREGION_ERASEFF ) /* 68000 code */
+ ROM_LOAD16_BYTE( "b13.u3", 0x00000, 0x8000, CRC(90c4489b) SHA1(240275ad6dfd02feab636ceb620264d339e79b6a) )
+ ROM_LOAD16_BYTE( "b23.u2", 0x00001, 0x8000, CRC(79b8f9ed) SHA1(5926852ea00b60d91684dbea4687b67894a397a1) )
+
+ ROM_REGION( 0x30000, REGION_GFX1, ROMREGION_DISPOSE ) /* tiles */
+ ROM_LOAD( "b43.bin", 0x00000, 0x10000, CRC(67fe3f0c) SHA1(c9479512dd7a80895740c7fbd2133ab4d4c679d6) )
+ ROM_LOAD( "b53.bin", 0x10000, 0x10000, CRC(aca8e330) SHA1(912e636e3c1e238682ea29620e8e2c6089c77209) )
+ ROM_LOAD( "b63.bin", 0x20000, 0x10000, CRC(f2af2fd5) SHA1(0a95ebb5eae7cdc6535533d73d06419c23d01ac3) )
+
+ ROM_REGION( 0x020000, REGION_GFX2, ROMREGION_ERASEFF ) /* sprites */
+ /* no sprites on this */
+
+ ROM_REGION( 0x40000, REGION_CPU2, 0 ) /* sound CPU */
+ ROM_LOAD( "1.bin", 0x0000, 0x8000, CRC(bd9ba01b) SHA1(fafa7dc36cc057a50ae4cdf7a35f3594292336f4) )
+
+ ROM_REGION( 0x0020, REGION_PROMS, 0 )
+ ROM_LOAD( "82s123.2", 0x0000, 0x0020, CRC(58bcf8bd) SHA1(e4d3d179b08c0f3424a6bec0f15058fb1b56f8d8) )
+
+ ROM_REGION( 0x0144, REGION_USER1, 0 )
+ ROM_LOAD( "pal16r4acn.1", 0x0000, 0x0104, CRC(826be9e7) SHA1(893fc49c38aa8e7d6e98f6320157ba627a5d1748) )
+ ROM_LOAD( "pal16r4acn.2", 0x0000, 0x0104, CRC(b3084ffe) SHA1(086ad2f89bdd8524ae358fd49b0803f9bb4aff33) )
+ ROM_LOAD( "pal16r4acn.3", 0x0000, 0x0104, CRC(741cd872) SHA1(d53bdcadcd25d44b6423e0740e88209f85c709bd) )
+ ROM_LOAD( "pal20l8acn", 0x0000, 0x0144, CRC(36e30d71) SHA1(e38f0257f9beedccc9421eec78701a86465d16ad) )
+ ROM_LOAD( "pal16l8ajc.u4", 0x0000, 0x0104, NO_DUMP)
+ROM_END
+
+
+GAME( 1991, beautyb, 0, beautyb, tetris, beautyb, ROT0, "AMT", "Beauty Block", GAME_NO_SOUND|GAME_NOT_WORKING )
+
diff --git a/src/mame/mamedriv.c b/src/mame/mamedriv.c
index 8eff4fbb0a8..322fe6d4e67 100644
--- a/src/mame/mamedriv.c
+++ b/src/mame/mamedriv.c
@@ -3505,6 +3505,7 @@ DokiDoki Penguin Land *not confirmed
DRIVER( shinoblb ) /* (c) 1987 (but bootleg) */
DRIVER( shinobld ) /* (c) 1987 (but bootleg) */
DRIVER( tetrisbl ) /* (c) 1988 (but bootleg) */
+ DRIVER( beautyb ) /* (c) 1991 AMT */
DRIVER( tturfbl ) /* (c) 1989 (Datsu bootleg) */
DRIVER( wb3bbl ) /* BOOTLEG */