void wgp_state::wgp_core_vh_start( int piv_xoffs, int piv_yoffs ) { m_piv_tilemap[0] = &machine().tilemap().create(tilemap_get_info_delegate(FUNC(wgp_state::get_piv0_tile_info),this), TILEMAP_SCAN_ROWS, 16, 16, 64, 64); m_piv_tilemap[1] = &machine().tilemap().create(tilemap_get_info_delegate(FUNC(wgp_state::get_piv1_tile_info),this), TILEMAP_SCAN_ROWS, 16, 16, 64, 64); m_piv_tilemap[2] = &machine().tilemap().create(tilemap_get_info_delegate(FUNC(wgp_state::get_piv2_tile_info),this), TILEMAP_SCAN_ROWS, 16, 16, 64, 64); m_piv_xoffs = piv_xoffs; m_piv_yoffs = piv_yoffs; m_piv_tilemap[0]->set_transparent_pen(0); m_piv_tilemap[1]->set_transparent_pen(0); m_piv_tilemap[2]->set_transparent_pen(0); /* flipscreen n/a */ m_piv_tilemap[0]->set_scrolldx(-piv_xoffs, 0); m_piv_tilemap[1]->set_scrolldx(-piv_xoffs, 0); m_piv_tilemap[2]->set_scrolldx(-piv_xoffs, 0); m_piv_tilemap[0]->set_scrolldy(-piv_yoffs, 0); m_piv_tilemap[1]->set_scrolldy(-piv_yoffs, 0); m_piv_tilemap[2]->set_scrolldy(-piv_yoffs, 0); /* We don't need tilemap_set_scroll_rows, as the custom draw routine applies rowscroll manually */ tc0100scn_set_colbanks(m_tc0100scn, 0x80, 0xc0, 0x40); save_item(NAME(m_piv_ctrl_reg)); save_item(NAME(m_rotate_ctrl)); save_item(NAME(m_piv_zoom)); save_item(NAME(m_piv_scrollx)); save_item(NAME(m_piv_scrolly)); }
static void wgp_core_vh_start( running_machine *machine, int piv_xoffs, int piv_yoffs ) { wgp_state *state = machine->driver_data<wgp_state>(); state->piv_tilemap[0] = tilemap_create(machine, get_piv0_tile_info, tilemap_scan_rows, 16, 16, 64, 64); state->piv_tilemap[1] = tilemap_create(machine, get_piv1_tile_info, tilemap_scan_rows, 16, 16, 64, 64); state->piv_tilemap[2] = tilemap_create(machine, get_piv2_tile_info, tilemap_scan_rows, 16, 16, 64, 64); state->piv_xoffs = piv_xoffs; state->piv_yoffs = piv_yoffs; tilemap_set_transparent_pen(state->piv_tilemap[0], 0); tilemap_set_transparent_pen(state->piv_tilemap[1], 0); tilemap_set_transparent_pen(state->piv_tilemap[2], 0); /* flipscreen n/a */ tilemap_set_scrolldx(state->piv_tilemap[0], -piv_xoffs, 0); tilemap_set_scrolldx(state->piv_tilemap[1], -piv_xoffs, 0); tilemap_set_scrolldx(state->piv_tilemap[2], -piv_xoffs, 0); tilemap_set_scrolldy(state->piv_tilemap[0], -piv_yoffs, 0); tilemap_set_scrolldy(state->piv_tilemap[1], -piv_yoffs, 0); tilemap_set_scrolldy(state->piv_tilemap[2], -piv_yoffs, 0); /* We don't need tilemap_set_scroll_rows, as the custom draw routine applies rowscroll manually */ tc0100scn_set_colbanks(state->tc0100scn, 0x80, 0xc0, 0x40); state->save_item(NAME(state->piv_ctrl_reg)); state->save_item(NAME(state->rotate_ctrl)); state->save_item(NAME(state->piv_zoom)); state->save_item(NAME(state->piv_scrollx)); state->save_item(NAME(state->piv_scrolly)); }
void warriorb_state::video_start() { /* Ensure palette from correct TC0110PCR used for each screen */ tc0100scn_set_colbanks(m_tc0100scn_1, 0x0, 0x100, 0x0); }