diff --git a/src/mame/drivers/cclimber.cpp b/src/mame/drivers/cclimber.cpp index b49c7760cf0..290bb815b00 100644 --- a/src/mame/drivers/cclimber.cpp +++ b/src/mame/drivers/cclimber.cpp @@ -157,7 +157,6 @@ TODO: - COINB DSW is missing - few issues in cocktail mode - - wrong colors (fg text layer) - game sometimes ("round" text , lives) updates only even columns of cell attribs... ------------------------------------------------------------------- @@ -291,13 +290,6 @@ void cclimber_state::toprollr_rombank_w(int state) } } -MACHINE_RESET_MEMBER(cclimber_state,cclimber) -{ - /* Disable interrupts, River Patrol / Silver Land needs this otherwise returns bad RAM on POST */ - m_nmi_mask = 0; - - m_toprollr_rombank = 0; -} void cclimber_state::nmi_mask_w(int state) { @@ -443,7 +435,7 @@ void cclimber_state::toprollr_map(address_map &map) map(0x9800, 0x987f).ram(); /* unused ? */ map(0x9880, 0x995f).ram().share("spriteram"); map(0x99dc, 0x99df).ram().share("bigspritectrl"); - map(0x9c00, 0x9fff).ram().share("colorram"); + map(0x9c00, 0x9fff).ram().w(FUNC(cclimber_state::cclimber_colorram_w)).share("colorram"); map(0xa000, 0xa007).w(m_mainlatch, FUNC(ls259_device::write_d0)); map(0xa000, 0xa000).portr("P1"); map(0xa800, 0xa800).portr("P2").w("cclimber_audio", FUNC(cclimber_audio_device::sample_rate_w)); diff --git a/src/mame/includes/cclimber.h b/src/mame/includes/cclimber.h index c5c17280d03..f50d9455c8f 100644 --- a/src/mame/includes/cclimber.h +++ b/src/mame/includes/cclimber.h @@ -108,7 +108,6 @@ private: void vblank_irq(int state); void bagmanf_vblank_irq(int state); - [[maybe_unused]] DECLARE_MACHINE_RESET(cclimber); DECLARE_VIDEO_START(cclimber); void cclimber_palette(palette_device &palette) const; DECLARE_VIDEO_START(swimmer); diff --git a/src/mame/video/cclimber.cpp b/src/mame/video/cclimber.cpp index 9da5443bf3f..65f707ccf3f 100644 --- a/src/mame/video/cclimber.cpp +++ b/src/mame/video/cclimber.cpp @@ -391,8 +391,8 @@ TILE_GET_INFO_MEMBER(cclimber_state::toprollr_get_pf_tile_info) { int code, attr, color; - attr = tile_index & 0x10 ? m_colorram[tile_index & ~0x20] : m_colorram[tile_index]; - code = ((attr & 0x30) << 4) | m_videoram[tile_index]; + attr = m_colorram[tile_index]; + code = ((attr & 0x10) << 5) | ((attr & 0x20) << 3) | m_videoram[tile_index]; color = attr & 0x0f; tileinfo.set(0, code, color, 0);