ygv608.cpp: initialized stuff in the constructor (nw)

This commit is contained in:
Ivan Vangelista 2019-11-27 18:25:07 +01:00
parent 2a1fa4447c
commit c17c665bbe
2 changed files with 111 additions and 11 deletions

View File

@ -322,9 +322,109 @@ ygv608_device::ygv608_device( const machine_config &mconfig, const char *tag, de
device_palette_interface(mconfig, *this), device_palette_interface(mconfig, *this),
device_video_interface(mconfig, *this), device_video_interface(mconfig, *this),
m_io_space_config("io", ENDIANNESS_BIG, 8, 6, 0, address_map_constructor(FUNC(ygv608_device::regs_map), this)), m_io_space_config("io", ENDIANNESS_BIG, 8, 6, 0, address_map_constructor(FUNC(ygv608_device::regs_map), this)),
m_namcond1_gfxbank(0),
m_tilemap_A(nullptr),
m_tilemap_B(nullptr),
m_work_bitmap(0),
m_bits16(0),
m_page_x(0),
m_page_y(0),
m_pny_shift(0),
m_na8_mask(0),
m_col_shift(0),
m_base_y_shift(0),
m_screen_resize(0),
m_tilemap_resize(0),
m_color_state_r(0),
m_color_state_w(0),
m_p0_state(0),
m_pattern_name_base_r(0),
m_pattern_name_base_w(0),
m_screen_status(0),
m_dma_status(0),
m_register_address(0),
m_register_autoinc_r(0),
m_register_autoinc_w(0),
m_raster_irq_mask(0),
m_vblank_irq_mask(0),
m_raster_irq_hpos(0),
m_raster_irq_vpos(0),
m_raster_irq_mode(0),
m_scroll_address(0),
m_palette_address(0),
m_sprite_address(0),
m_sprite_bank(0),
m_xtile_ptr(0),
m_ytile_ptr(0),
m_xtile_autoinc(0),
m_ytile_autoinc(0),
m_plane_select_access(0),
m_mosaic_aplane(0),
m_mosaic_bplane(0),
m_sprite_disable(0),
m_sprite_aux_mode(0),
m_sprite_aux_reg(0),
m_border_color(0),
m_saar(0),
m_saaw(0),
m_scar(0),
m_scaw(0),
m_cpar(0),
m_cpaw(0),
m_ba_plane_scroll_select(0),
m_dspe(0),
m_md(0),
m_zron(0),
m_flip(0),
m_dckm(0),
m_page_size(0),
m_h_display_size(0),
m_v_display_size(0),
m_roz_wrap_disable(0),
m_scroll_wrap_disable(0),
m_pattern_size(0),
m_h_div_size(0),
m_v_div_size(0),
m_planeA_trans_enable(0),
m_planeB_trans_enable(0),
m_priority_mode(0),
m_cbdr(0),
m_yse(0),
m_scm(0),
m_planeA_color_fetch(0),
m_planeB_color_fetch(0),
m_sprite_color_fetch(0),
m_vblank_handler(*this), m_vblank_handler(*this),
m_raster_handler(*this) m_raster_handler(*this),
m_vblank_timer(nullptr),
m_raster_timer(nullptr),
m_ax(0),
m_dx(0),
m_dxy(0),
m_ay(0),
m_dy(0),
m_dyx(0),
m_raw_ax(0),
m_raw_dx(0),
m_raw_dxy(0),
m_raw_ay(0),
m_raw_dy(0),
m_raw_dyx(0)
{ {
std::fill(std::begin(m_pattern_name_table), std::end(m_pattern_name_table), 0);
std::fill(std::begin(m_tilemap_A_cache_8), std::end(m_tilemap_A_cache_8), nullptr);
std::fill(std::begin(m_tilemap_A_cache_16), std::end(m_tilemap_A_cache_16), nullptr);
std::fill(std::begin(m_tilemap_B_cache_8), std::end(m_tilemap_B_cache_8), nullptr);
std::fill(std::begin(m_tilemap_B_cache_16), std::end(m_tilemap_B_cache_16), nullptr);
for (int i = 0; i < 2; i++)
{
std::fill(std::begin(m_scroll_data_table[i]), std::end(m_scroll_data_table[i]), 0);
std::fill(std::begin(m_base_addr[i]), std::end(m_base_addr[i]), 0);
}
for (int i = 0; i < 256; i++)
std::fill(std::begin(m_colour_palette[i]), std::end(m_colour_palette[i]), 0);
} }
//------------------------------------------------- //-------------------------------------------------

View File

@ -272,16 +272,16 @@ private:
}; };
struct { struct {
int htotal; /**< HTL: horizontal total number of dots x 2 */ int htotal = 0; /**< HTL: horizontal total number of dots x 2 */
int vtotal; /**< VTL: vertical total number of lines x 1 */ int vtotal = 0; /**< VTL: vertical total number of lines x 1 */
int display_hstart; /**< HDS: horizontal display starting position x 2*/ int display_hstart = 0; /**< HDS: horizontal display starting position x 2*/
int display_vstart; /**< VDS: vertical display starting position x 1 */ int display_vstart = 0; /**< VDS: vertical display starting position x 1 */
int display_width; /**< HDW: horizontal display size x 16 */ int display_width = 0; /**< HDW: horizontal display size x 16 */
int display_height; /**< VDW: vertical display size x 8 */ int display_height = 0; /**< VDW: vertical display size x 8 */
int display_hsync; /**< HSW: horizontal sync signal x 16 */ int display_hsync = 0; /**< HSW: horizontal sync signal x 16 */
int display_vsync; /**< VSW: vertical sync signal x 1 */ int display_vsync = 0; /**< VSW: vertical sync signal x 1 */
int border_width; /**< HBW: horizontal border size x 16 */ int border_width = 0; /**< HBW: horizontal border size x 16 */
int border_height; /**< VBW: vertical border size x 8 */ int border_height = 0; /**< VBW: vertical border size x 8 */
}m_crtc; }m_crtc;
// rotation, zoom shortcuts // rotation, zoom shortcuts