summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame
diff options
context:
space:
mode:
author Angelo Salese <angelosa@users.noreply.github.com>2009-06-14 12:16:16 +0000
committer Angelo Salese <angelosa@users.noreply.github.com>2009-06-14 12:16:16 +0000
commit21f458c0fc0456ea461c9e630a90753eb3348c25 (patch)
treea996a524064671aadde2069a3c50dfcbe326b94c /src/mame
parent6d5bbc3d3b1d52375cab68890ceb0a00ef8126f0 (diff)
Fixed prom hook-up in Dambuster.
Diffstat (limited to 'src/mame')
-rw-r--r--src/mame/drivers/dambustr.c24
-rw-r--r--src/mame/video/galaxold.c37
2 files changed, 49 insertions, 12 deletions
diff --git a/src/mame/drivers/dambustr.c b/src/mame/drivers/dambustr.c
index b7f3ea07302..402cdfaa4c3 100644
--- a/src/mame/drivers/dambustr.c
+++ b/src/mame/drivers/dambustr.c
@@ -232,9 +232,11 @@ ROM_START( dambustr )
ROM_LOAD( "db4a.pr3", 0x2000, 0x1000, CRC(d9d2df33) SHA1(97057fe33c146898755b556558ff707b9f4551ec) )
ROM_LOAD( "db2a.pr2", 0x3000, 0x1000, CRC(0a0a6af5) SHA1(ecd2a6696ce9154f030c830ccb45690787881a73) )
- ROM_REGION( 0x0040, "proms", 0 )
+ ROM_REGION( 0x0020, "proms", 0 )
ROM_LOAD( "mi-7603-5.ic4", 0x0000, 0x0020, CRC(f131f92f) SHA1(8b0f623d2ea09b5612dde0f330c5e473a7d72e06) ) /* near DB5 - DB8 */
- ROM_LOAD( "mi-7603-5.ic3", 0x0020, 0x0020, CRC(e2a54c47) SHA1(1e08f8e3d0ae0efb2d178ab11ec2bddaeb6d7478) ) /* near DB1 - DB4 */
+
+ ROM_REGION( 0x0020, "unk_prom", 0 ) //timing?
+ ROM_LOAD( "mi-7603-5.ic3", 0x0000, 0x0020, CRC(e2a54c47) SHA1(1e08f8e3d0ae0efb2d178ab11ec2bddaeb6d7478) ) /* near DB1 - DB4 */
ROM_END
@@ -257,9 +259,11 @@ ROM_START( dambusta )
ROM_LOAD( "db4a.pr3", 0x2000, 0x1000, CRC(d9d2df33) SHA1(97057fe33c146898755b556558ff707b9f4551ec) )
ROM_LOAD( "db2a.pr2", 0x3000, 0x1000, CRC(0a0a6af5) SHA1(ecd2a6696ce9154f030c830ccb45690787881a73) )
- ROM_REGION( 0x0040, "proms", 0 )
+ ROM_REGION( 0x0020, "proms", 0 )
ROM_LOAD( "mi-7603-5.ic4", 0x0000, 0x0020, CRC(f131f92f) SHA1(8b0f623d2ea09b5612dde0f330c5e473a7d72e06) ) /* near DB5 - DB8 */
- ROM_LOAD( "mi-7603-5.ic3", 0x0020, 0x0020, CRC(e2a54c47) SHA1(1e08f8e3d0ae0efb2d178ab11ec2bddaeb6d7478) ) /* near DB1 - DB4 */
+
+ ROM_REGION( 0x0020, "unk_prom", 0 ) //timing?
+ ROM_LOAD( "mi-7603-5.ic3", 0x0000, 0x0020, CRC(e2a54c47) SHA1(1e08f8e3d0ae0efb2d178ab11ec2bddaeb6d7478) ) /* near DB1 - DB4 */
ROM_END
@@ -282,12 +286,14 @@ ROM_START( dambust )
ROM_LOAD( "db4.pr3", 0x2000, 0x1000, CRC(d9d2df33) SHA1(97057fe33c146898755b556558ff707b9f4551ec) )
ROM_LOAD( "db2.pr2", 0x3000, 0x1000, CRC(0a0a6af5) SHA1(ecd2a6696ce9154f030c830ccb45690787881a73) )
- ROM_REGION( 0x0040, "proms", 0 )
+ ROM_REGION( 0x0020, "proms", 0 )
ROM_LOAD( "mi-7603-5.ic4", 0x0000, 0x0020, CRC(f131f92f) SHA1(8b0f623d2ea09b5612dde0f330c5e473a7d72e06) ) /* near DB5 - DB8 */
- ROM_LOAD( "mi-7603-5.ic3", 0x0020, 0x0020, CRC(e2a54c47) SHA1(1e08f8e3d0ae0efb2d178ab11ec2bddaeb6d7478) ) /* near DB1 - DB4 */
+
+ ROM_REGION( 0x0020, "unk_prom", 0 ) //timing?
+ ROM_LOAD( "mi-7603-5.ic3", 0x0000, 0x0020, CRC(e2a54c47) SHA1(1e08f8e3d0ae0efb2d178ab11ec2bddaeb6d7478) ) /* near DB1 - DB4 */
ROM_END
-GAME( 1981, dambustr, 0, dambustr, dambustr, dambustr, ROT90, "South West Research", "Dambusters (US, set 1)", GAME_WRONG_COLORS )
-GAME( 1981, dambusta, dambustr, dambustr, dambustr, dambustr, ROT90, "South West Research", "Dambusters (US, set 2)", GAME_WRONG_COLORS )
-GAME( 1981, dambust, dambustr, dambustr, dambustr, dambustr, ROT90, "South West Research", "Dambusters (UK)", GAME_WRONG_COLORS )
+GAME( 1981, dambustr, 0, dambustr, dambustr, dambustr, ROT90, "South West Research", "Dambusters (US, set 1)", 0 )
+GAME( 1981, dambusta, dambustr, dambustr, dambustr, dambustr, ROT90, "South West Research", "Dambusters (US, set 2)", 0 )
+GAME( 1981, dambust, dambustr, dambustr, dambustr, dambustr, ROT90, "South West Research", "Dambusters (UK)", 0 )
diff --git a/src/mame/video/galaxold.c b/src/mame/video/galaxold.c
index 9e52464b65a..97c88f289a1 100644
--- a/src/mame/video/galaxold.c
+++ b/src/mame/video/galaxold.c
@@ -403,14 +403,45 @@ PALETTE_INIT( mariner )
}
}
-
+/* swapped r/g/b hook-up */
PALETTE_INIT( dambustr )
{
int base = BACKGROUND_COLOR_BASE;
- int i;
+ int i, len;
- PALETTE_INIT_CALL(galaxold);
+ /* first, the character/sprite palette */
+ len = memory_region_length(machine, "proms");
+
+ for (i = 0;i < len;i++)
+ {
+ int bit0,bit1,bit2,r,g,b;
+ /* red component */
+ bit0 = BIT(*color_prom,0);
+ bit1 = BIT(*color_prom,1);
+ bit2 = BIT(*color_prom,2);
+ b = 0x21 * bit0 + 0x47 * bit1 + 0x97 * bit2;
+ /* green component */
+ bit0 = BIT(*color_prom,3);
+ bit1 = BIT(*color_prom,4);
+ bit2 = BIT(*color_prom,5);
+ r = 0x21 * bit0 + 0x47 * bit1 + 0x97 * bit2;
+ /* blue component */
+ bit0 = BIT(*color_prom,6);
+ bit1 = BIT(*color_prom,7);
+ g = 0x4f * bit0 + 0xa8 * bit1;
+
+ palette_set_color_rgb(machine,i,r,g,b);
+ color_prom++;
+ }
+
+
+ galaxold_init_stars(machine, STARS_COLOR_BASE);
+
+
+ /* bullets - yellow and white */
+ palette_set_color(machine,BULLETS_COLOR_BASE+0,MAKE_RGB(0xef,0xef,0x00));
+ palette_set_color(machine,BULLETS_COLOR_BASE+1,MAKE_RGB(0xef,0xef,0xef));
/*
Assumption (not clear from the schematics):