mirror of
https://github.com/holub/mame
synced 2025-05-25 15:25:33 +03:00
commit
58b3d34358
@ -268,7 +268,7 @@ ADDRESS_MAP_END
|
|||||||
|
|
||||||
static ADDRESS_MAP_START( polyplay_io_zrepp, AS_IO, 8, polyplay_state )
|
static ADDRESS_MAP_START( polyplay_io_zrepp, AS_IO, 8, polyplay_state )
|
||||||
AM_IMPORT_FROM(polyplay_io_zre)
|
AM_IMPORT_FROM(polyplay_io_zre)
|
||||||
// TODO: add SIO ports here
|
AM_RANGE(0x88, 0x8b) AM_DEVREADWRITE(Z80SIO_TAG, z80sio_device, read, write)
|
||||||
ADDRESS_MAP_END
|
ADDRESS_MAP_END
|
||||||
|
|
||||||
static INPUT_PORTS_START( polyplay )
|
static INPUT_PORTS_START( polyplay )
|
||||||
|
@ -2247,7 +2247,11 @@ WRITE8_MEMBER(vicdual_state::nsub_io_w)
|
|||||||
{
|
{
|
||||||
if (offset & 0x01) assert_coin_status();
|
if (offset & 0x01) assert_coin_status();
|
||||||
if (offset & 0x02) { /* nsub_audio_w(0, data) */ }
|
if (offset & 0x02) { /* nsub_audio_w(0, data) */ }
|
||||||
if (offset & 0x04) palette_bank_w(space, 0, data);
|
if (offset & 0x04)
|
||||||
|
{
|
||||||
|
palette_bank_w(space, 0, data);
|
||||||
|
m_gradient = data & 4;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -58,6 +58,7 @@ public:
|
|||||||
|
|
||||||
uint8_t m_coin_status;
|
uint8_t m_coin_status;
|
||||||
uint8_t m_palette_bank;
|
uint8_t m_palette_bank;
|
||||||
|
uint8_t m_gradient;
|
||||||
uint8_t m_samurai_protection_data;
|
uint8_t m_samurai_protection_data;
|
||||||
int m_nsub_coin_counter;
|
int m_nsub_coin_counter;
|
||||||
int m_nsub_play_counter;
|
int m_nsub_play_counter;
|
||||||
|
@ -112,6 +112,23 @@ uint32_t vicdual_state::screen_update_color(screen_device &screen, bitmap_rgb32
|
|||||||
fore_pen = pens_from_color_prom[(color_prom[offs] >> 5) & 0x07];
|
fore_pen = pens_from_color_prom[(color_prom[offs] >> 5) & 0x07];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (m_gradient == 0x04)
|
||||||
|
{
|
||||||
|
// used by nsub and starrkr (maybe others)
|
||||||
|
// bit 4 on palette_bank_w seems to enable/disable the starfield/gradient
|
||||||
|
// how exactly those work is unclear right now
|
||||||
|
if (x >= 24 && x < 105)
|
||||||
|
{
|
||||||
|
// nsub - black to blue gradient
|
||||||
|
back_pen = rgb_t(0x00, 0x00, (x - 24) * 3);
|
||||||
|
}
|
||||||
|
if (x >= 105 && x < 233)
|
||||||
|
{
|
||||||
|
// nsub - blue to cyan gradient
|
||||||
|
back_pen = rgb_t(0x00, 0x80 + (x - 105), 0xff);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/* plot the current pixel */
|
/* plot the current pixel */
|
||||||
pen = (video_data & 0x80) ? fore_pen : back_pen;
|
pen = (video_data & 0x80) ? fore_pen : back_pen;
|
||||||
bitmap.pix32(y, x) = pen;
|
bitmap.pix32(y, x) = pen;
|
||||||
|
Loading…
Reference in New Issue
Block a user