20pacgal, advision, archimds, aristmk5, segajw: initialized some variables that were causing crashes in drvnoclear builds

This commit is contained in:
Ivan Vangelista 2020-11-01 08:10:09 +01:00
parent 2dbfe3db33
commit 7194a5aab0
6 changed files with 19 additions and 10 deletions

View File

@ -374,6 +374,8 @@ void _20pacgal_state::machine_start()
{
common_save_state();
m_game_selected = 0;
// membank currently used only by 20pacgal
m_mainbank->configure_entry(0, memregion("maincpu")->base() + 0x08000);
m_mainbank->configure_entry(1, m_ram_48000.get());
@ -382,10 +384,7 @@ void _20pacgal_state::machine_start()
void _25pacman_state::machine_start()
{
common_save_state();
}
void _20pacgal_state::machine_reset()
{
m_game_selected = 0;
}

View File

@ -2235,6 +2235,7 @@ void aristmk5_state::machine_start()
m_nvram->set_base(m_sram->base(), m_sram->bytes());
archimedes_init();
m_coin_start_cycles = 0ULL;
m_mk5_2KHz_timer = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(aristmk5_state::mk5_2KHz_callback),this));
m_mk5_VSYNC_timer = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(aristmk5_state::mk5_VSYNC_callback),this));

View File

@ -41,6 +41,8 @@ Also seem to be running on the same/similar hardware:
#include "segajw.lh"
namespace {
class segajw_state : public driver_device
{
public:
@ -59,6 +61,11 @@ public:
DECLARE_CUSTOM_INPUT_MEMBER(coin_sensors_r);
DECLARE_READ_LINE_MEMBER(hopper_sensors_r);
protected:
// driver_device overrides
virtual void machine_start() override;
virtual void machine_reset() override;
private:
uint8_t coin_counter_r();
void coin_counter_w(uint8_t data);
@ -67,10 +74,6 @@ private:
void lamps2_w(uint8_t data);
void coinlockout_w(uint8_t data);
// driver_device overrides
virtual void machine_start() override;
virtual void machine_reset() override;
void ramdac_map(address_map &map);
void segajw_audiocpu_io_map(address_map &map);
void segajw_audiocpu_map(address_map &map);
@ -351,6 +354,9 @@ void segajw_state::machine_start()
m_lamps.resolve();
m_towerlamps.resolve();
m_coin_start_cycles = 0;
m_hopper_start_cycles = 0;
save_item(NAME(m_coin_start_cycles));
save_item(NAME(m_hopper_start_cycles));
save_item(NAME(m_coin_counter));
@ -359,8 +365,6 @@ void segajw_state::machine_start()
void segajw_state::machine_reset()
{
m_coin_start_cycles = 0;
m_hopper_start_cycles = 0;
m_coin_counter = 0xff;
}
@ -445,5 +449,7 @@ ROM_START( segajw )
ROM_LOAD16_WORD_SWAP( "14586.epr", 0x00000, 0x80000, CRC(daeb0616) SHA1(17a8bb7137ad46a7c3ac07d22cbc4430e76e2f71) )
ROM_END
} // Anonymous namespace
GAMEL( 1991, segajw, 0, segajw, segajw, segajw_state, empty_init, ROT0, "Sega", "Joker's Wild (Rev. B)", MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE, layout_segajw )

View File

@ -79,7 +79,6 @@ protected:
void sprite_lookup_w(offs_t offset, uint8_t data);
virtual void machine_start() override;
virtual void machine_reset() override;
virtual void video_start() override;
uint32_t screen_update_20pacgal(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
DECLARE_WRITE_LINE_MEMBER(vblank_irq);

View File

@ -36,6 +36,9 @@ void advision_state::machine_start()
m_maincpu->space(AS_PROGRAM).install_readwrite_bank(0x0000, 0x03ff, "bank1");
m_bank1->set_entry(0);
m_sound_d = 0;
m_sound_g = 0;
/* allocate external RAM */
m_ext_ram.resize(0x400);
save_item(NAME(m_ext_ram));

View File

@ -249,6 +249,7 @@ void archimedes_state::archimedes_reset()
void archimedes_state::archimedes_init()
{
m_memc_pagesize = 0;
m_cursor_enabled = false;
m_timer[0] = timer_alloc(TIMER_IOC);
m_timer[1] = timer_alloc(TIMER_IOC);