From f19822ee4b8872cce0476575418b25151de61402 Mon Sep 17 00:00:00 2001 From: Ivan Vangelista Date: Mon, 2 Nov 2020 18:19:53 +0100 Subject: [PATCH] atarisy1, bfcobra, gts80b, hp48, hyhoo, jpmsys5, malzak, system16, tecmosys, tmnt: initialized some variables that were causing crashes in drvnoclear builds --- src/mame/drivers/bfcobra.cpp | 7 ++++++- src/mame/drivers/gts80b.cpp | 8 ++++++++ src/mame/drivers/jpmsys5.cpp | 2 ++ src/mame/machine/hp48.cpp | 4 ++++ src/mame/video/atarisy1.cpp | 1 + src/mame/video/hyhoo.cpp | 2 ++ src/mame/video/malzak.cpp | 2 ++ src/mame/video/system16.cpp | 6 ++++++ src/mame/video/tecmosys.cpp | 1 + src/mame/video/tmnt.cpp | 6 ++++++ 10 files changed, 38 insertions(+), 1 deletion(-) diff --git a/src/mame/drivers/bfcobra.cpp b/src/mame/drivers/bfcobra.cpp index c960664c5f8..23cf5758cd5 100644 --- a/src/mame/drivers/bfcobra.cpp +++ b/src/mame/drivers/bfcobra.cpp @@ -125,6 +125,8 @@ #include "brkball.lh" +namespace { + /* Defines */ @@ -149,7 +151,7 @@ union ADDR_REG struct { uint16_t hiword, loword ; } as16bit; struct { uint8_t addr2, addr1, addr0; } as8bit; #endif - uint32_t addr; + uint32_t addr = 0; }; /* Blitter register flag bits */ @@ -2982,6 +2984,9 @@ ROM_START( brkball ) ROM_LOAD("ledv1.bin", 0x00000, 0x10000, CRC(ea918cb9) SHA1(9e7047613cf1cb4b9a7fefb8a02d8479a7b09e6a)) ROM_END +} // Anonymous namespace + + GAME( 1989, inquiztr, 0, bfcobra, bfcobra, bfcobra_state, init_bfcobra, ROT0, "BFM", "Inquizitor", MACHINE_NOT_WORKING ) GAME( 1990, escounts, 0, bfcobra, bfcobra, bfcobra_state, init_bfcobra, ROT0, "BFM", "Every Second Counts (39-360-053)", MACHINE_IMPERFECT_GRAPHICS ) GAME( 1991, trebltop, 0, bfcobra, bfcobra, bfcobra_state, init_bfcobra, ROT0, "BFM", "Treble Top (39-360-070)", MACHINE_IMPERFECT_GRAPHICS ) diff --git a/src/mame/drivers/gts80b.cpp b/src/mame/drivers/gts80b.cpp index dc741b8809e..a89b767704e 100644 --- a/src/mame/drivers/gts80b.cpp +++ b/src/mame/drivers/gts80b.cpp @@ -23,6 +23,8 @@ #include "gts80b.lh" +namespace { + class gts80b_state : public genpin_class { public: @@ -385,6 +387,9 @@ void gts80b_state::machine_reset() { m_in_cmd_mode[0] = false; m_in_cmd_mode[1] = false; + m_dispcmd = 0; + m_digit[0] = 0; + m_digit[1] = 0; } void gts80b_state::init_gts80b() @@ -1805,6 +1810,9 @@ ROM_START(topsound) ROM_LOAD("yrom2a.snd",0xc000,0x2000, CRC(66645a3f) SHA1(f06261af81e6b1829d639933297d2461a8c993fc)) ROM_END +} // Anonymous namespace + + GAME(1985, bountyh, 0, gts80b_s, gts80b, gts80b_state, init_gts80b, ROT0, "Gottlieb", "Bounty Hunter", MACHINE_IS_SKELETON_MECHANICAL) GAME(1985, bountyhg, bountyh, gts80b_s, gts80b, gts80b_state, init_gts80b, ROT0, "Gottlieb", "Bounty Hunter (German)", MACHINE_IS_SKELETON_MECHANICAL) GAME(1985, triplay, 0, gts80b_s, gts80b, gts80b_state, init_gts80b, ROT0, "Gottlieb", "Chicago Cubs' Triple Play", MACHINE_IS_SKELETON_MECHANICAL) diff --git a/src/mame/drivers/jpmsys5.cpp b/src/mame/drivers/jpmsys5.cpp index a0f4bad7093..4825dd048a6 100644 --- a/src/mame/drivers/jpmsys5.cpp +++ b/src/mame/drivers/jpmsys5.cpp @@ -793,6 +793,8 @@ void jpmsys5_state::machine_start() { m_lamps.resolve(); m_sys5leds.resolve(); + + m_lamp_strobe = 0; } void jpmsys5_state::machine_reset() diff --git a/src/mame/machine/hp48.cpp b/src/mame/machine/hp48.cpp index 954dc8c5208..3cae7dbadf3 100644 --- a/src/mame/machine/hp48.cpp +++ b/src/mame/machine/hp48.cpp @@ -897,6 +897,9 @@ void hp48_state::init_hp48() m_modules[i].write = write8sm_delegate(*this); m_modules[i].data = nullptr; m_modules[i].isnop = 0; + m_modules[i].state = 0; + m_modules[i].base = 0; + m_modules[i].mask = 0; } m_rom = nullptr; } @@ -905,6 +908,7 @@ void hp48_state::machine_reset() { LOG(("hp48: machine reset called\n")); m_bank_switch = 0; + m_cur_screen = 0; reset_modules(); update_annunciators(); } diff --git a/src/mame/video/atarisy1.cpp b/src/mame/video/atarisy1.cpp index 8c77c936622..32ce38e1135 100644 --- a/src/mame/video/atarisy1.cpp +++ b/src/mame/video/atarisy1.cpp @@ -169,6 +169,7 @@ void atarisy1_state::video_start() m_next_timer_scanline = -1; m_scanline_int_state = 0; m_bankselect = 0xff; + m_playfield_tile_bank = 0; // save state save_item(NAME(m_playfield_tile_bank)); diff --git a/src/mame/video/hyhoo.cpp b/src/mame/video/hyhoo.cpp index aeac3bc32ac..6ddae07c1e0 100644 --- a/src/mame/video/hyhoo.cpp +++ b/src/mame/video/hyhoo.cpp @@ -236,6 +236,8 @@ void hyhoo_state::video_start() save_item(NAME(m_highcolorflag)); save_item(NAME(m_flipscreen)); save_item(NAME(m_tmpbitmap)); + + m_blitter_src_addr = 0; } diff --git a/src/mame/video/malzak.cpp b/src/mame/video/malzak.cpp index 48745186ec7..7a52f0b607c 100644 --- a/src/mame/video/malzak.cpp +++ b/src/mame/video/malzak.cpp @@ -68,6 +68,8 @@ TILE_GET_INFO_MEMBER(malzak_state::get_tile_info) void malzak_state::video_start() { + m_scrollx = 0; + int width = m_screen->width(); int height = m_screen->height(); m_trom_bitmap = std::make_unique(width, height); diff --git a/src/mame/video/system16.cpp b/src/mame/video/system16.cpp index be48ba70e81..50e0f124c4e 100644 --- a/src/mame/video/system16.cpp +++ b/src/mame/video/system16.cpp @@ -399,6 +399,12 @@ VIDEO_START_MEMBER(segas1x_bootleg_state,system16) m_refreshenable = 1; + for (int i = 0; i < 2; i++) + { + std::fill(std::begin(m_bg_page[i]), std::end(m_bg_page[i]), 0); + std::fill(std::begin(m_fg_page[i]), std::end(m_fg_page[i]), 0); + } + /* common defaults */ m_tilebank_switch = 0x1000; diff --git a/src/mame/video/tecmosys.cpp b/src/mame/video/tecmosys.cpp index f51d8749d4d..dafc73cbc82 100644 --- a/src/mame/video/tecmosys.cpp +++ b/src/mame/video/tecmosys.cpp @@ -374,5 +374,6 @@ void tecmosys_state::video_start() m_tilemap[3] = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(*this, FUNC(tecmosys_state::get_tile_info<3>)), TILEMAP_SCAN_ROWS, 16,16, 32,32); m_tilemap[3]->set_transparent_pen(0); + m_spritelist = 0; save_item(NAME(m_spritelist)); } diff --git a/src/mame/video/tmnt.cpp b/src/mame/video/tmnt.cpp index d4f9f3895b3..e7d59a076cd 100644 --- a/src/mame/video/tmnt.cpp +++ b/src/mame/video/tmnt.cpp @@ -246,6 +246,12 @@ VIDEO_START_MEMBER(tmnt_state,lgtnfght)/* also tmnt2, ssriders */ m_dim_c = m_dim_v = m_lastdim = m_lasten = 0; + for (int i = 0; i < 3; i++) + { + m_layer_colorbase[i] = 0; + m_sorted_layer[i] = 0; + } + save_item(NAME(m_dim_c)); save_item(NAME(m_dim_v)); save_item(NAME(m_lastdim));