From 010cb3a0cee0f4dfaa2a2cade3d5124a5ee3abf7 Mon Sep 17 00:00:00 2001 From: mariuszw1 Date: Fri, 27 Aug 2010 21:16:06 +0000 Subject: [PATCH] Fixed rom mapping in Super Poker. Removed "bad dump" flag from e2 roms, they pass self test now. [Mariusz Wojcieszek] --- src/mame/drivers/gei.c | 31 +++++++++++++++---------------- 1 file changed, 15 insertions(+), 16 deletions(-) diff --git a/src/mame/drivers/gei.c b/src/mame/drivers/gei.c index 91c927137a9..8168c5d1249 100644 --- a/src/mame/drivers/gei.c +++ b/src/mame/drivers/gei.c @@ -91,8 +91,6 @@ static WRITE8_HANDLER( gei_bitmap_w ) static int prevoffset, yadd; int i; - space->machine->generic.videoram.u8[offset] = data; - yadd = (offset==prevoffset) ? (yadd+1):0; prevoffset = offset; @@ -385,7 +383,7 @@ static ADDRESS_MAP_START( getrivia_map, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0x8000, 0x8002) AM_WRITE(gei_drawctrl_w) AM_RANGE(0x8000, 0x9fff) AM_ROM /* space for diagnostic ROM? */ AM_RANGE(0xa000, 0xbfff) AM_ROM - AM_RANGE(0xc000, 0xffff) AM_RAM_WRITE(gei_bitmap_w) AM_BASE_GENERIC(videoram) + AM_RANGE(0xc000, 0xffff) AM_RAM_WRITE(gei_bitmap_w) ADDRESS_MAP_END static ADDRESS_MAP_START( gselect_map, ADDRESS_SPACE_PROGRAM, 8 ) @@ -399,7 +397,7 @@ static ADDRESS_MAP_START( gselect_map, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0x4800, 0x4803) AM_DEVREADWRITE("ppi8255_0", ppi8255_r, ppi8255_w) AM_RANGE(0x5000, 0x5003) AM_DEVREADWRITE("ppi8255_1", ppi8255_r, ppi8255_w) AM_RANGE(0x8000, 0x8002) AM_WRITE(gei_drawctrl_w) - AM_RANGE(0xc000, 0xffff) AM_RAM_WRITE(gei_bitmap_w) AM_BASE_GENERIC(videoram) + AM_RANGE(0xc000, 0xffff) AM_RAM_WRITE(gei_bitmap_w) ADDRESS_MAP_END // TODO: where are mapped the lower 0x2000 bytes of the banks? @@ -416,7 +414,7 @@ static ADDRESS_MAP_START( amuse_map, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0x607e, 0x607e) AM_WRITE(banksel_1_1_w) AM_RANGE(0x8000, 0x8002) AM_WRITE(gei_drawctrl_w) AM_RANGE(0x8000, 0xbfff) AM_ROM - AM_RANGE(0xc000, 0xffff) AM_RAM_WRITE(gei_bitmap_w) AM_BASE_GENERIC(videoram) + AM_RANGE(0xc000, 0xffff) AM_RAM_WRITE(gei_bitmap_w) ADDRESS_MAP_END static ADDRESS_MAP_START( gepoker_map, ADDRESS_SPACE_PROGRAM, 8 ) @@ -433,7 +431,7 @@ static ADDRESS_MAP_START( gepoker_map, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0x8000, 0x8002) AM_WRITE(gei_drawctrl_w) AM_RANGE(0x8000, 0xbfff) AM_ROM /* space for diagnostic ROM? */ AM_RANGE(0xe000, 0xffff) AM_ROM - AM_RANGE(0xc000, 0xffff) AM_RAM_WRITE(gei_bitmap_w) AM_BASE_GENERIC(videoram) + AM_RANGE(0xc000, 0xffff) AM_RAM_WRITE(gei_bitmap_w) ADDRESS_MAP_END static ADDRESS_MAP_START( amuse1_map, ADDRESS_SPACE_PROGRAM, 8 ) @@ -450,7 +448,7 @@ static ADDRESS_MAP_START( amuse1_map, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0x8000, 0x8002) AM_WRITE(gei_drawctrl_w) AM_RANGE(0x8000, 0xbfff) AM_ROM /* space for diagnostic ROM? */ AM_RANGE(0xe000, 0xffff) AM_ROM - AM_RANGE(0xc000, 0xffff) AM_RAM_WRITE(gei_bitmap_w) AM_BASE_GENERIC(videoram) + AM_RANGE(0xc000, 0xffff) AM_RAM_WRITE(gei_bitmap_w) ADDRESS_MAP_END static ADDRESS_MAP_START( findout_map, ADDRESS_SPACE_PROGRAM, 8 ) @@ -470,7 +468,7 @@ static ADDRESS_MAP_START( findout_map, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0x7800, 0x7fff) AM_ROM /*space for diagnostic ROM?*/ AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") AM_RANGE(0x8000, 0x8002) AM_WRITE(gei_drawctrl_w) - AM_RANGE(0xc000, 0xffff) AM_WRITE(gei_bitmap_w) AM_BASE_GENERIC(videoram) + AM_RANGE(0xc000, 0xffff) AM_WRITE(gei_bitmap_w) AM_RANGE(0x0000, 0xffff) AM_READ(catchall) ADDRESS_MAP_END @@ -488,7 +486,7 @@ static ADDRESS_MAP_START( quizvid_map, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0x7800, 0x7fff) AM_ROM /*space for diagnostic ROM?*/ AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") AM_RANGE(0x8000, 0x8002) AM_WRITE(gei_drawctrl_w) - AM_RANGE(0xc000, 0xffff) AM_WRITE(gei_bitmap_w) AM_BASE_GENERIC(videoram) + AM_RANGE(0xc000, 0xffff) AM_WRITE(gei_bitmap_w) AM_RANGE(0x0000, 0xffff) AM_READ(catchall) ADDRESS_MAP_END @@ -500,9 +498,8 @@ static ADDRESS_MAP_START( suprpokr_map, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0x6200, 0x6200) AM_WRITE(signature2_w) AM_RANGE(0x6400, 0x6400) AM_READ(signature_r) AM_RANGE(0x8000, 0x8002) AM_WRITE(gei_drawctrl_w) - AM_RANGE(0x8000, 0xbfff) AM_ROM /* space for diagnostic ROM? */ - AM_RANGE(0xe000, 0xffff) AM_ROM - AM_RANGE(0xc000, 0xffff) AM_RAM_WRITE(gei_bitmap_w) AM_BASE_GENERIC(videoram) + AM_RANGE(0xc000, 0xffff) AM_WRITE(gei_bitmap_w) + AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END static ADDRESS_MAP_START( geimulti_map, ADDRESS_SPACE_PROGRAM, 8 ) @@ -515,7 +512,7 @@ static ADDRESS_MAP_START( geimulti_map, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0x6000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8002) AM_WRITE(gei_drawctrl_w) AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") - AM_RANGE(0xc000, 0xffff) AM_RAM_WRITE(gei_bitmap_w) AM_BASE_GENERIC(videoram) + AM_RANGE(0xc000, 0xffff) AM_RAM_WRITE(gei_bitmap_w) ADDRESS_MAP_END static ADDRESS_MAP_START( sprtauth_map, ADDRESS_SPACE_PROGRAM, 8 ) @@ -529,7 +526,7 @@ static ADDRESS_MAP_START( sprtauth_map, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0x6000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8002) AM_WRITE(gei_drawctrl_w) AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") - AM_RANGE(0xc000, 0xffff) AM_RAM_WRITE(gei_bitmap_w) AM_BASE_GENERIC(videoram) + AM_RANGE(0xc000, 0xffff) AM_RAM_WRITE(gei_bitmap_w) ADDRESS_MAP_END static INPUT_PORTS_START(reelfun_standard) @@ -1534,13 +1531,15 @@ ROM_END ROM_START( suprpokr ) ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASEFF ) ROM_LOAD( "10-19s-1.e1", 0x00000, 0x4000, CRC(50662b4d) SHA1(967161a755db43d2cfd5ce92e14c5284f1f1f8ad) ) - ROM_LOAD( "10-19s-1.e2", 0x08000, 0x4000, BAD_DUMP CRC(22b45aeb) SHA1(006c3072cc44c6fde9b4d15163dc70707bbd5a9c) ) /* Self test reports this ROM bad */ + ROM_LOAD( "10-19s-1.e2", 0x08000, 0x4000, CRC(22b45aeb) SHA1(006c3072cc44c6fde9b4d15163dc70707bbd5a9c) ) + ROM_RELOAD( 0xc000, 0x4000 ) ROM_END ROM_START( suprpkr1 ) ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASEFF ) ROM_LOAD( "e1.bin", 0x00000, 0x4000, CRC(5cc7c1e0) SHA1(1cdca32c4df7227dab77574abe344b291741139e) ) - ROM_LOAD( "e2.bin", 0x08000, 0x4000, BAD_DUMP CRC(e47d6e2a) SHA1(9cabc42275dad8be6cd5b167e381ddb5bf08276d) ) /* Self test reports this ROM bad */ + ROM_LOAD( "e2.bin", 0x08000, 0x4000, CRC(e47d6e2a) SHA1(9cabc42275dad8be6cd5b167e381ddb5bf08276d) ) + ROM_RELOAD( 0xc000, 0x4000 ) ROM_END ROM_START( reelfun ) /* v7.03 */