diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/mame/drivers/ddealer.cpp | 30 | ||||
-rw-r--r-- | src/mame/drivers/nmk16.cpp | 2 | ||||
-rw-r--r-- | src/mame/drivers/patapata.cpp | 17 | ||||
-rw-r--r-- | src/mame/drivers/quizpani.cpp | 2 | ||||
-rw-r--r-- | src/mame/includes/nmk16.h | 3 | ||||
-rw-r--r-- | src/mame/video/nmk16.cpp | 24 | ||||
-rw-r--r-- | src/mame/video/powerins.cpp | 9 | ||||
-rw-r--r-- | src/mame/video/quizpani.cpp | 10 |
8 files changed, 26 insertions, 71 deletions
diff --git a/src/mame/drivers/ddealer.cpp b/src/mame/drivers/ddealer.cpp index ca53d1e6fc6..a47f8f67d7c 100644 --- a/src/mame/drivers/ddealer.cpp +++ b/src/mame/drivers/ddealer.cpp @@ -205,6 +205,7 @@ TILE_GET_INFO_MEMBER(ddealer_state::get_back_tile_info) void ddealer_state::video_start() { m_back_tilemap = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(*this, FUNC(ddealer_state::get_back_tile_info)), TILEMAP_SCAN_COLS, 8, 8, 64, 32); + m_back_tilemap->set_scrolldx(64,64); } void ddealer_state::draw_video_layer(uint16_t* vreg_base, uint16_t* top, uint16_t* bottom, bitmap_ind16 &bitmap, const rectangle &cliprect, int flipy) @@ -292,7 +293,6 @@ void ddealer_state::draw_video_layer(uint16_t* vreg_base, uint16_t* top, uint16_ uint32_t ddealer_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) { - m_back_tilemap->set_scrollx(0, -64); m_back_tilemap->draw(screen, bitmap, cliprect, 0, 0); /* the fg tilemap handling is a little hacky right now, @@ -586,33 +586,9 @@ static INPUT_PORTS_START( ddealer ) PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNUSED ) INPUT_PORTS_END -static const gfx_layout charlayout = -{ - 8,8, - RGN_FRAC(1,1), - 4, - { 0, 1, 2, 3 }, - { 0*4, 1*4, 2*4, 3*4, 4*4, 5*4, 6*4, 7*4 }, - { 0*32, 1*32, 2*32, 3*32, 4*32, 5*32, 6*32, 7*32 }, - 32*8 -}; - -static const gfx_layout tilelayout = -{ - 16,16, - RGN_FRAC(1,1), - 4, - { 0, 1, 2, 3 }, - { 0*4, 1*4, 2*4, 3*4, 4*4, 5*4, 6*4, 7*4, - 16*32+0*4, 16*32+1*4, 16*32+2*4, 16*32+3*4, 16*32+4*4, 16*32+5*4, 16*32+6*4, 16*32+7*4 }, - { 0*32, 1*32, 2*32, 3*32, 4*32, 5*32, 6*32, 7*32, - 8*32, 9*32, 10*32, 11*32, 12*32, 13*32, 14*32, 15*32 }, - 32*32 -}; - static GFXDECODE_START( gfx_ddealer ) - GFXDECODE_ENTRY( "gfx1", 0, charlayout, 0x000, 16 ) - GFXDECODE_ENTRY( "gfx2", 0, tilelayout, 0x100, 16 ) + GFXDECODE_ENTRY( "gfx1", 0, gfx_8x8x4_packed_msb, 0x000, 16 ) + GFXDECODE_ENTRY( "gfx2", 0, gfx_8x8x4_col_2x2_group_packed_msb, 0x100, 16 ) GFXDECODE_END void ddealer_state::machine_start() diff --git a/src/mame/drivers/nmk16.cpp b/src/mame/drivers/nmk16.cpp index 1ee3acb0569..8ba0089280a 100644 --- a/src/mame/drivers/nmk16.cpp +++ b/src/mame/drivers/nmk16.cpp @@ -383,7 +383,7 @@ void nmk16_state::scroll_w(offs_t offset, u8 data) } } - m_bg_tilemap[Layer]->set_scrollx(0,((m_scroll[Layer][0] << 8) | m_scroll[Layer][1]) - m_videoshift); + m_bg_tilemap[Layer]->set_scrollx(0,(m_scroll[Layer][0] << 8) | m_scroll[Layer][1]); } } diff --git a/src/mame/drivers/patapata.cpp b/src/mame/drivers/patapata.cpp index edb5c740e70..44418176fe8 100644 --- a/src/mame/drivers/patapata.cpp +++ b/src/mame/drivers/patapata.cpp @@ -262,22 +262,9 @@ static INPUT_PORTS_START( patapata ) INPUT_PORTS_END -static const gfx_layout tilelayout = -{ - 16,16, - RGN_FRAC(1,1), - 4, - { 0, 1, 2, 3 }, - { 0*4, 1*4, 2*4, 3*4, 4*4, 5*4, 6*4, 7*4, - 16*32+0*4, 16*32+1*4, 16*32+2*4, 16*32+3*4, 16*32+4*4, 16*32+5*4, 16*32+6*4, 16*32+7*4 }, - { 0*32, 1*32, 2*32, 3*32, 4*32, 5*32, 6*32, 7*32, - 8*32, 9*32, 10*32, 11*32, 12*32, 13*32, 14*32, 15*32 }, - 32*32 -}; - static GFXDECODE_START( gfx_patapata ) - GFXDECODE_ENTRY( "tilesa", 0, tilelayout, 0x000, 16 ) - GFXDECODE_ENTRY( "tilesb", 0, tilelayout, 0x100, 16 ) + GFXDECODE_ENTRY( "tilesa", 0, gfx_8x8x4_col_2x2_group_packed_msb, 0x000, 16 ) + GFXDECODE_ENTRY( "tilesb", 0, gfx_8x8x4_col_2x2_group_packed_msb, 0x100, 16 ) GFXDECODE_END TIMER_DEVICE_CALLBACK_MEMBER(patapata_state::scanline) diff --git a/src/mame/drivers/quizpani.cpp b/src/mame/drivers/quizpani.cpp index 2c8f737c9b0..8c60f9e4ad5 100644 --- a/src/mame/drivers/quizpani.cpp +++ b/src/mame/drivers/quizpani.cpp @@ -196,7 +196,7 @@ void quizpani_state::quizpani(machine_config &config) screen.set_refresh_hz(60); screen.set_vblank_time(ATTOSECONDS_IN_USEC(0)); screen.set_size(64*8, 32*8); - screen.set_visarea(0*8, 48*8-1, 0*8, 28*8-1); + screen.set_visarea(0*8, 48*8-1, 2*8, 30*8-1); screen.set_screen_update(FUNC(quizpani_state::screen_update)); screen.set_palette("palette"); diff --git a/src/mame/includes/nmk16.h b/src/mame/includes/nmk16.h index 010a1f3cc40..ffd70559b45 100644 --- a/src/mame/includes/nmk16.h +++ b/src/mame/includes/nmk16.h @@ -117,15 +117,12 @@ protected: optional_ioport_array<2> m_dsw_io; optional_ioport_array<3> m_in_io; - int m_sprclk; - int m_sprlimit; int m_tilerambank; int m_sprdma_base; int mask[4*2]; std::unique_ptr<u16[]> m_spriteram_old; std::unique_ptr<u16[]> m_spriteram_old2; int m_bgbank; - int m_videoshift; int m_bioship_background_bank; tilemap_t *m_bg_tilemap[2]; tilemap_t *m_tx_tilemap; diff --git a/src/mame/video/nmk16.cpp b/src/mame/video/nmk16.cpp index f05e3735c18..80713bf8541 100644 --- a/src/mame/video/nmk16.cpp +++ b/src/mame/video/nmk16.cpp @@ -77,9 +77,7 @@ void nmk16_state::video_init() m_spriteram_old = make_unique_clear<u16[]>(0x1000/2); m_spriteram_old2 = make_unique_clear<u16[]>(0x1000/2); - m_videoshift = 0; /* 256x224 screen, no shift */ m_tilerambank = 0; - m_sprclk = 0; save_pointer(NAME(m_spriteram_old), 0x1000/2); save_pointer(NAME(m_spriteram_old2), 0x1000/2); @@ -89,13 +87,11 @@ void nmk16_state::video_init() save_item(NAME(m_scroll[1])); save_item(NAME(m_vscroll)); save_item(NAME(m_tilerambank)); - save_item(NAME(m_sprclk)); } VIDEO_START_MEMBER(nmk16_state, bioship) { - m_sprlimit = 384 * 263; // ROM Based Tilemap m_bg_tilemap[0] = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(*this, FUNC(nmk16_state::bioship_get_bg_tile_info)), tilemap_mapper_delegate(*this, FUNC(nmk16_state::tilemap_scan_pages)), 16, 16, 256, 32); m_bg_tilemap[1] = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(*this, NAME((&nmk16_state::common_get_bg_tile_info<1, 1>))), tilemap_mapper_delegate(*this, FUNC(nmk16_state::tilemap_scan_pages)), 16, 16, 256, 32); @@ -111,7 +107,6 @@ VIDEO_START_MEMBER(nmk16_state, bioship) VIDEO_START_MEMBER(nmk16_state,macross) { - m_sprlimit = 384 * 263; m_bg_tilemap[0] = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(*this, NAME((&nmk16_state::common_get_bg_tile_info<0, 1>))), tilemap_mapper_delegate(*this, FUNC(nmk16_state::tilemap_scan_pages)), 16, 16, 256, 32); m_tx_tilemap = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(*this, FUNC(nmk16_state::common_get_tx_tile_info)), TILEMAP_SCAN_COLS, 8, 8, 32, 32); @@ -131,14 +126,15 @@ VIDEO_START_MEMBER(nmk16_state,strahl) VIDEO_START_MEMBER(nmk16_state,macross2) { - m_sprlimit = 512 * 263; // not verified m_bg_tilemap[0] = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(*this, NAME((&nmk16_state::common_get_bg_tile_info<0, 1>))), tilemap_mapper_delegate(*this, FUNC(nmk16_state::tilemap_scan_pages)), 16, 16, 256, 32); m_tx_tilemap = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(*this, FUNC(nmk16_state::common_get_tx_tile_info)), TILEMAP_SCAN_COLS, 8, 8, 64, 32); m_tx_tilemap->set_transparent_pen(15); video_init(); - m_videoshift = 64; // 384x224 screen, leftmost 64 pixels have to be retrieved from the other side of the tilemap (!) + // 384x224 screen, leftmost 64 pixels have to be retrieved from the other side of the tilemap (!) + m_bg_tilemap[0]->set_scrolldx(64,64); + m_tx_tilemap->set_scrolldx(64,64); } VIDEO_START_MEMBER(nmk16_state,gunnail) @@ -149,11 +145,11 @@ VIDEO_START_MEMBER(nmk16_state,gunnail) VIDEO_START_MEMBER(nmk16_state, bjtwin) { - m_sprlimit = 512 * 263; // not verified m_bg_tilemap[0] = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(*this, FUNC(nmk16_state::bjtwin_get_bg_tile_info)), TILEMAP_SCAN_COLS, 8, 8, 64, 32); video_init(); - m_videoshift = 64; // 384x224 screen, leftmost 64 pixels have to be retrieved from the other side of the tilemap (!) + // 384x224 screen, leftmost 64 pixels have to be retrieved from the other side of the tilemap (!) + m_bg_tilemap[0]->set_scrolldx(64,64); } void nmk16_state::mustang_scroll_w(u16 data) @@ -180,7 +176,7 @@ void nmk16_state::mustang_scroll_w(u16 data) break; } - m_bg_tilemap[0]->set_scrollx(0,m_mustang_bg_xscroll - m_videoshift); + m_bg_tilemap[0]->set_scrollx(0,m_mustang_bg_xscroll); } void nmk16_state::bjtwin_scroll_w(offs_t offset, u8 data) @@ -214,7 +210,7 @@ void nmk16_state::manybloc_scroll_w(offs_t offset, u16 data, u16 mem_mask) { COMBINE_DATA(&m_gunnail_scrollram[offset]); - m_bg_tilemap[0]->set_scrollx(0,m_gunnail_scrollram[0x82/2]-m_videoshift); + m_bg_tilemap[0]->set_scrollx(0,m_gunnail_scrollram[0x82/2]); m_bg_tilemap[0]->set_scrolly(0,m_gunnail_scrollram[0xc2/2]); } @@ -321,7 +317,7 @@ void nmk16_state::bg_update(screen_device &screen, bitmap_ind16 &bitmap, const r m_bg_tilemap[layer]->set_scroll_rows(512); m_bg_tilemap[layer]->set_scrolly(0, yscroll); - m_bg_tilemap[layer]->set_scrollx((i + yscroll) & 0x1ff, m_gunnail_scrollram[0] + m_gunnail_scrollram[i] - m_videoshift); + m_bg_tilemap[layer]->set_scrollx((i + yscroll) & 0x1ff, m_gunnail_scrollram[0] + m_gunnail_scrollram[i]); m_bg_tilemap[layer]->draw(screen, bitmap, bgclip, 0, 1); @@ -337,7 +333,6 @@ void nmk16_state::bg_update(screen_device &screen, bitmap_ind16 &bitmap, const r void nmk16_state::tx_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) { - m_tx_tilemap->set_scrollx(0,-m_videoshift); m_tx_tilemap->draw(screen, bitmap, cliprect, 0, 2); } @@ -385,8 +380,6 @@ u32 nmk16_state::screen_update_strahl(screen_device &screen, bitmap_ind16 &bitma u32 nmk16_state::screen_update_bjtwin(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) { screen.priority().fill(0, cliprect); - m_bg_tilemap[0]->set_scrollx(0,-m_videoshift); - bg_update(screen, bitmap, cliprect, 0); draw_sprites(screen, bitmap, cliprect); return 0; @@ -409,7 +402,6 @@ TILE_GET_INFO_MEMBER(afega_state::get_bg_tile_info_8bit) VIDEO_START_MEMBER(afega_state,grdnstrm) { - m_sprlimit = 384 * 263; // 8bpp Tilemap m_bg_tilemap[0] = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(*this, FUNC(afega_state::get_bg_tile_info_8bit)), tilemap_mapper_delegate(*this, FUNC(afega_state::tilemap_scan_pages)), 16, 16, 256, 32); m_tx_tilemap = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(*this, FUNC(afega_state::common_get_tx_tile_info)), TILEMAP_SCAN_COLS, 8, 8, 32, 32); diff --git a/src/mame/video/powerins.cpp b/src/mame/video/powerins.cpp index 066cd08a64e..5f8fd358f4c 100644 --- a/src/mame/video/powerins.cpp +++ b/src/mame/video/powerins.cpp @@ -157,6 +157,9 @@ void powerins_state::video_start() save_item(NAME(m_tile_bank)); save_pointer(NAME(m_spritebuffer[0]), 0x1000/2); save_pointer(NAME(m_spritebuffer[1]), 0x1000/2); + // fixed offset + m_tilemap[0]->set_scrolldx(32,32); + m_tilemap[1]->set_scrolldx(32,32); } @@ -231,10 +234,8 @@ uint32_t powerins_state::screen_update(screen_device &screen, bitmap_ind16 &bitm int scrollx = (m_vctrl_0[2/2]&0xff) | ((m_vctrl_0[0/2]&0xff)<<8); int scrolly = (m_vctrl_0[6/2]&0xff) | ((m_vctrl_0[4/2]&0xff)<<8); - m_tilemap[0]->set_scrollx(0, scrollx - 0x20); - m_tilemap[0]->set_scrolly(0, scrolly ); - - m_tilemap[1]->set_scrollx(0, -0x20); // fixed offset + m_tilemap[0]->set_scrollx(0, scrollx); + m_tilemap[0]->set_scrolly(0, scrolly); #ifdef MAME_DEBUG if (machine().input().code_pressed(KEYCODE_Z)) diff --git a/src/mame/video/quizpani.cpp b/src/mame/video/quizpani.cpp index 8ecb2ce8b17..3d58d95b282 100644 --- a/src/mame/video/quizpani.cpp +++ b/src/mame/video/quizpani.cpp @@ -74,14 +74,16 @@ void quizpani_state::video_start() save_item(NAME(m_bgbank)); save_item(NAME(m_txtbank)); + m_bg_tilemap->set_scrolldx(64,64); + m_txt_tilemap->set_scrolldx(64,64); } uint32_t quizpani_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) { - m_bg_tilemap->set_scrollx(0, m_scrollreg[0] - 64); - m_bg_tilemap->set_scrolly(0, m_scrollreg[1] + 16); - m_txt_tilemap->set_scrollx(0, m_scrollreg[2] - 64); - m_txt_tilemap->set_scrolly(0, m_scrollreg[3] + 16); + m_bg_tilemap->set_scrollx(0, m_scrollreg[0]); + m_bg_tilemap->set_scrolly(0, m_scrollreg[1]); + m_txt_tilemap->set_scrollx(0, m_scrollreg[2]); + m_txt_tilemap->set_scrolly(0, m_scrollreg[3]); m_bg_tilemap->draw(screen, bitmap, cliprect, 0,0); m_txt_tilemap->draw(screen, bitmap, cliprect, 0,0); |