deco_ld and stactics fix (nw)

This commit is contained in:
Miodrag Milanovic 2014-03-01 09:00:50 +00:00
parent 0a1b2a2528
commit 5de61ed998
4 changed files with 6 additions and 5 deletions

View File

@ -480,6 +480,7 @@ static MACHINE_CONFIG_START( rblaster, deco_ld_state )
MCFG_LASERDISC_SCREEN_ADD_NTSC("screen", "laserdisc")
MCFG_GFXDECODE_ADD("gfxdecode", rblaster)
MCFG_PALETTE_ADD("palette", 512)
MCFG_PALETTE_FORMAT(BBGGGRRR)
/* sound hardware */
/* TODO: mixing */

View File

@ -170,7 +170,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, stactics_state )
AM_RANGE(0x6000, 0x6000) AM_MIRROR(0x0fff) AM_READ_PORT("IN1")
AM_RANGE(0x6000, 0x6001) AM_MIRROR(0x0f08) AM_WRITE(stactics_coin_lockout_w)
AM_RANGE(0x6002, 0x6005) AM_MIRROR(0x0f08) AM_WRITENOP
AM_RANGE(0x6006, 0x6007) AM_MIRROR(0x0f08) AM_WRITEONLY AM_SHARE("palette")
AM_RANGE(0x6006, 0x6007) AM_MIRROR(0x0f08) AM_WRITEONLY AM_SHARE("paletteram")
/* AM_RANGE(0x6010, 0x6017) AM_MIRROR(0x0f08) AM_WRITE(stactics_sound_w) */
AM_RANGE(0x6016, 0x6016) AM_MIRROR(0x0f08) AM_WRITEONLY AM_SHARE("motor_on") /* Note: This overlaps rocket sound */
AM_RANGE(0x6020, 0x6027) AM_MIRROR(0x0f08) AM_WRITEONLY AM_SHARE("lamps")

View File

@ -12,7 +12,7 @@ class stactics_state : public driver_device
public:
stactics_state(const machine_config &mconfig, device_type type, const char *tag)
: driver_device(mconfig, type, tag),
m_palette(*this, "palette"),
m_palette_val(*this, "paletteram"),
m_motor_on(*this, "motor_on"),
m_lamps(*this, "lamps"),
m_display_buffer(*this, "display_buffer"),
@ -27,7 +27,7 @@ public:
int m_horiz_pos;
/* video state */
required_shared_ptr<UINT8> m_palette;
required_shared_ptr<UINT8> m_palette_val;
required_shared_ptr<UINT8> m_motor_on;
required_shared_ptr<UINT8> m_lamps;
required_shared_ptr<UINT8> m_display_buffer;

View File

@ -252,8 +252,8 @@ void stactics_state::draw_background(bitmap_ind16 &bitmap, const rectangle &clip
(pixel_f << 5) |
(pixel_e << 6) |
(pixel_d << 7) |
((m_palette[0] & 0x01) << 8) |
((m_palette[1] & 0x01) << 9);
((m_palette_val[0] & 0x01) << 8) |
((m_palette_val[1] & 0x01) << 9);
/* compute the effective pixel coordinate after adjusting for the
mirror movement - this is mechanical on the real machine */