Skip to content

Commit 8077642

Browse files
committed
namco/namcos21_3d.cpp: bit 7 of code really doesn't seem depth cue related
* fix aircomb 3d colors
1 parent ca665f3 commit 8077642

3 files changed

Lines changed: 23 additions & 11 deletions

File tree

src/mame/namco/namcos21.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -474,6 +474,7 @@ void namcos21_state::winrun_bitmap_draw(bitmap_ind16 &bitmap, const rectangle &c
474474
// TODO: additive blending?
475475
// - winrun car select uses register [0xc] for a xscroll value
476476
// - winrun windshield during gameplay (reversed 0x6000 and 0x4000 bases?)
477+
// NOTE: very similar to namcos21_c67_state::sprite_mix_callback
477478
case 0x00:
478479
pDest[sx] = (pDest[sx]&0x1fff)+0x4000;
479480
break;

src/mame/namco/namcos21_3d.cpp

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -271,14 +271,16 @@ void namcos21_3d_device::draw_quad(int sx[4], int sy[4], int zcode[4], int color
271271
else
272272
{ /* map color code to hardware pen */
273273
int code = color >> 8;
274-
if (code & 0x80)
275-
{
276-
color = color & 0xff;
277-
// color = 0x3e00|color;
278-
color = 0x2100 | color;
279-
depthcueenable = 0;
280-
}
281-
else
274+
// TODO: aircomb dislikes this logic
275+
// (not sure what would use it anyway)
276+
//if (code & 0x80)
277+
//{
278+
// color = color & 0xff;
279+
// // color = 0x3e00|color;
280+
// color = 0x2100 | color;
281+
// depthcueenable = 0;
282+
//}
283+
//else
282284
{
283285
color &= 0xff;
284286
color = 0x3e00 | color;

src/mame/namco/namcos21_c67.cpp

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,19 @@
11
// license:BSD-3-Clause
22
// copyright-holders:Phil Stroffolino
33
/*
4-
NOTES:
54
6-
Air Combat:
7-
priority issues
5+
TODO (2026 update):
6+
- how the 3d rasterizer really selects banks 1 & 2? aircomb is the odd one, it has a red shaded
7+
bank from time to time;
8+
- aircomb: z-fighting issue on attract mode with the plane renders (after the first title screen);
9+
- aircomb: sprites blends badly with background pen when warning appears and the src target is the sky color
10+
(i.e. pen 0xff with current handling);
11+
- aircomb: level select/continue screen draws with a red pen, should be pure black according to refs;
12+
- aircomb: missing background on attract mode ranking screen (masking? cfr. shared/namco_c355spr.cpp);
13+
- cybsled: https://mametesters.org/view.php?id=6302
14+
- solvalou: https://mametesters.org/view.php?id=2085
15+
- solvalou: black screen on service mode (cfr. shared/namco_c355spr.cpp);
16+
- starblad: 3d freezes after exiting service mode;
817
918
TODO: namcoic.c: in StarBlade, the sprite list is stored at a different location during startup tests.
1019
What register controls this?

0 commit comments

Comments
 (0)