summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--src/mame/drivers/taitojc.c6
-rw-r--r--src/mame/video/taitojc.c12
2 files changed, 13 insertions, 5 deletions
diff --git a/src/mame/drivers/taitojc.c b/src/mame/drivers/taitojc.c
index dc6c1f99c37..21e1e6da6e2 100644
--- a/src/mame/drivers/taitojc.c
+++ b/src/mame/drivers/taitojc.c
@@ -344,8 +344,8 @@ Notes:
- dendeg doesn't show credit display
- landgear has some weird crashes (after playing one round, after a couple of loops in attract mode) (needs testing -AS)
- landgear has huge 3d problems on gameplay (CPU comms?)
- - dendeg2/dendeg2x usually crashes when starting the game (lots of read and writes to invalid addresses).
- All dendeg games have random wrong textures/palettes. (can't see any ... -AS)
+ - dendeg2 shows a debug string during gameplay?
- Train board (external sound board with OKI6295) is not emulated.
- dangcurv DSP program crashes very soon, so no 3d is currently shown.
- add idle skips if possible
@@ -1902,8 +1902,8 @@ ROM_END
GAME( 1996, dendeg, 0, taitojc, dendeg, taitojc, ROT0, "Taito", "Densya De Go (Japan)", GAME_IMPERFECT_GRAPHICS )
GAME( 1996, dendegx, dendeg, taitojc, dendeg, taitojc, ROT0, "Taito", "Densya De Go Ex (Japan)", GAME_IMPERFECT_GRAPHICS )
-GAME( 1998, dendeg2, 0, taitojc, dendeg, taitojc, ROT0, "Taito", "Densya De Go 2 (Japan)", GAME_NOT_WORKING )
-GAME( 1998, dendeg2x, dendeg2, taitojc, dendeg, taitojc, ROT0, "Taito", "Densya De Go 2 Ex (Japan)", GAME_NOT_WORKING )
+GAME( 1998, dendeg2, 0, taitojc, dendeg, taitojc, ROT0, "Taito", "Densya De Go 2 (Japan)", GAME_IMPERFECT_GRAPHICS )
+GAME( 1998, dendeg2x, dendeg2, taitojc, dendeg, taitojc, ROT0, "Taito", "Densya De Go 2 Ex (Japan)", GAME_IMPERFECT_GRAPHICS )
GAME( 1996, sidebs, 0, taitojc, sidebs, taitojc, ROT0, "Taito", "Side By Side (Japan)", GAME_IMPERFECT_GRAPHICS )
GAME( 1997, sidebs2, 0, taitojc, sidebs, taitojc, ROT0, "Taito", "Side By Side 2 (North/South America)", GAME_IMPERFECT_GRAPHICS )
GAME( 1997, sidebs2j, sidebs2, taitojc, sidebs, taitojc, ROT0, "Taito", "Side By Side 2 (Japan)", GAME_IMPERFECT_GRAPHICS )
diff --git a/src/mame/video/taitojc.c b/src/mame/video/taitojc.c
index 741da0f20f9..e297780cc77 100644
--- a/src/mame/video/taitojc.c
+++ b/src/mame/video/taitojc.c
@@ -167,7 +167,7 @@ static void draw_object(running_machine &machine, bitmap_t *bitmap, const rectan
y2 = cliprect->max_y;
}
- if(!color_depth) // Densya de Go 2X "credit text", 4bpp
+ if(!color_depth) // Densya de Go 2/2X "credit text", 4bpp
{
for (j=y1; j < y2; j++)
{
@@ -355,9 +355,17 @@ static void render_solid_scan(void *dest, INT32 scanline, const poly_extent *ext
int color = extent->param[1].start;
float dz = extent->param[0].dpdx;
UINT16 *fb = BITMAP_ADDR16(destmap, scanline, 0);
- UINT16 *zb = BITMAP_ADDR16(extra->zbuffer, scanline, 0);
+ UINT16 *zb;// = BITMAP_ADDR16(extra->zbuffer, scanline, 0);
int x;
+ // avoid crash in dendeg2
+ if (!extra->zbuffer)
+ {
+ return;
+ }
+
+ zb = BITMAP_ADDR16(extra->zbuffer, scanline, 0);
+
for (x = extent->startx; x < extent->stopx; x++)
{
int iz = (int)z & 0xffff;