summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author davidhay <davidhay@localhost>2009-02-26 08:40:16 +0000
committer davidhay <davidhay@localhost>2009-02-26 08:40:16 +0000
commit762d9342a35dbdcbeb707faf28febba55b2715cd (patch)
tree8ffa33f0f69797161549d1d76acdaffcce307d29
parent43c5b9341e4073d9b857f6e9653cc451d938e0ac (diff)
added code to draw girl in cherry master, disabled for now as we're probably missing an enable register / correct priority mixing.
-rw-r--r--src/mame/drivers/goldstar.c5
-rw-r--r--src/mame/video/goldstar.c23
2 files changed, 21 insertions, 7 deletions
diff --git a/src/mame/drivers/goldstar.c b/src/mame/drivers/goldstar.c
index 8c042925e48..9e636fd32f7 100644
--- a/src/mame/drivers/goldstar.c
+++ b/src/mame/drivers/goldstar.c
@@ -5151,7 +5151,7 @@ ROM_START( cmv801 )
ROM_LOAD( "m2.64", 0x6000, 0x2000, CRC(9678ead2) SHA1(e80aefa98b2363fe9e6b2415762695ace272e4d3) )
ROM_REGION( 0x10000, "user1", ROMREGION_DISPOSE )
- ROM_LOAD( "27512.u53", 0x0000, 0x10000, NO_DUMP )
+ ROM_LOAD( "27512.u53", 0x0000, 0x10000, BAD_DUMP CRC(e92443d3) SHA1(4b6ca4521841610054165f085ae05510e77af191) ) // taken from other set, was missing in this dump
ROM_REGION( 0x200, "proms", 0 ) // pal
ROM_LOAD( "prom2.287", 0x0000, 0x0100, CRC(0489b760) SHA1(78f8632b17a76335183c5c204cdec856988368b0) )
@@ -5226,8 +5226,7 @@ ROM_START( cmv4 )
ROM_LOAD( "2764.u14", 0x4000, 0x2000, CRC(6dfcb188) SHA1(22430429c798954d9d979e62699b58feae7fdbf4) )
ROM_LOAD( "2764.u9", 0x6000, 0x2000, CRC(9678ead2) SHA1(e80aefa98b2363fe9e6b2415762695ace272e4d3) )
- ROM_REGION( 0x10000, "user1", 0 )
- // contains a bitmap? and an extra plane for gfx2, should it be used?
+ ROM_REGION( 0x10000, "user1", 0 ) // girl bitmaps
ROM_LOAD( "27512.u53", 0x0000, 0x10000, CRC(e92443d3) SHA1(4b6ca4521841610054165f085ae05510e77af191) )
ROM_REGION( 0x200, "proms", 0 )
diff --git a/src/mame/video/goldstar.c b/src/mame/video/goldstar.c
index acf3191eb3f..4cfade7b7dd 100644
--- a/src/mame/video/goldstar.c
+++ b/src/mame/video/goldstar.c
@@ -8,7 +8,7 @@
#include "driver.h"
-
+#define DRAW_GIRL 0
//UINT8 *goldstar_video1, *goldstar_video2, *goldstar_video3;
//size_t goldstar_video_size;
@@ -25,7 +25,8 @@ static int bgcolor;
***************************************************************************/
static tilemap *goldstar_fg_tilemap;
-
+static UINT8 cmaster_girl_num;
+static UINT8 cmaster_girl_pal;
WRITE8_HANDLER( goldstar_fg_vidram_w )
{
@@ -153,6 +154,9 @@ VIDEO_START( cherrym )
tilemap_set_scroll_cols(goldstar_reel2_tilemap, 64);
tilemap_set_scroll_cols(goldstar_reel3_tilemap, 64);
+ cmaster_girl_num = 0;
+ cmaster_girl_pal = 0;
+
goldstar_fg_tilemap = tilemap_create(machine,get_cherrym_fg_tile_info,tilemap_scan_rows,8,8, 64, 32);
tilemap_set_transparent_pen(goldstar_fg_tilemap,0);
}
@@ -201,9 +205,10 @@ WRITE8_HANDLER( cm_background_col_w )
(note, this doesn't apply to the amcoe games which have no girls, I'm unsure how the priority/positioning works)
- after each of the rounds of the card game, probably controls the 'girl' display, there are 6 girls.
-
+
*/
+ cmaster_girl_num = (data >> 4)&0x7;
+ cmaster_girl_pal = (data >> 2)&0x3;
bgcolor = (data & 0x03) >> 0;
tilemap_mark_all_tiles_dirty (goldstar_reel1_tilemap);
@@ -238,10 +243,20 @@ VIDEO_UPDATE( goldstar )
tilemap_set_scrolly(goldstar_reel3_tilemap, i, goldstar_reel3_scroll[i]);
}
+
tilemap_draw(bitmap, &visible1, goldstar_reel1_tilemap, 0, 0);
tilemap_draw(bitmap, &visible2, goldstar_reel2_tilemap, 0, 0);
tilemap_draw(bitmap, &visible3, goldstar_reel3_tilemap, 0, 0);
+ /* need to figure out priority etc. */
+ #if DRAW_GIRL
+ if (memory_region(screen->machine,"user1"))
+ {
+ const gfx_element *gfx = screen->machine->gfx[2];
+ drawgfxzoom(bitmap,gfx,cmaster_girl_num,cmaster_girl_pal,0,0,32*8,16*8,cliprect,TRANSPARENCY_PEN,0, 0x20000, 0x10000);
+ }
+ #endif
+
tilemap_draw(bitmap,cliprect, goldstar_fg_tilemap, 0, 0);
return 0;