summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
author Ivan Vangelista <mesgnet@yahoo.it>2021-02-16 13:34:38 +0100
committer Ivan Vangelista <mesgnet@yahoo.it>2021-02-16 13:34:38 +0100
commit2b7488ed2b03863d22b15a92bce4da39cabc71ff (patch)
treea8fa7ff35ed60f74bb72a0cd91efd3626d861e5a /src
parent7eacacfd80ee8dee380d42919387d043124cd416 (diff)
abc80, goldart, hankin, jp, namcona1, namcos2, namcos86: initialized some variables which were causing incorrect behaviours in drvnoclear debug builds
Diffstat (limited to 'src')
-rw-r--r--src/mame/drivers/abc80.cpp5
-rw-r--r--src/mame/drivers/goldart.cpp9
-rw-r--r--src/mame/drivers/hankin.cpp16
-rw-r--r--src/mame/drivers/jp.cpp18
-rw-r--r--src/mame/drivers/namcona1.cpp1
-rw-r--r--src/mame/drivers/namcos2.cpp3
-rw-r--r--src/mame/includes/namcos86.h7
-rw-r--r--src/mame/video/namcos86.cpp2
8 files changed, 52 insertions, 9 deletions
diff --git a/src/mame/drivers/abc80.cpp b/src/mame/drivers/abc80.cpp
index 7272538c429..42e2c09386b 100644
--- a/src/mame/drivers/abc80.cpp
+++ b/src/mame/drivers/abc80.cpp
@@ -453,6 +453,11 @@ void abc80_state::machine_start()
save_item(NAME(m_motor));
save_item(NAME(m_tape_in));
save_item(NAME(m_tape_in_latch));
+
+ //zero-fill
+ m_key_data = 0;
+ m_key_strobe = 0;
+ m_blink = 0;
}
QUICKLOAD_LOAD_MEMBER(abc80_state::quickload_cb)
diff --git a/src/mame/drivers/goldart.cpp b/src/mame/drivers/goldart.cpp
index d2b95d88a63..07c69d227f7 100644
--- a/src/mame/drivers/goldart.cpp
+++ b/src/mame/drivers/goldart.cpp
@@ -48,6 +48,8 @@
#include "speaker.h"
+namespace {
+
class goldart_state : public driver_device
{
public:
@@ -304,8 +306,13 @@ INPUT_PORTS_END
void goldart_state::machine_start()
{
+ save_item(NAME(m_port1));
save_item(NAME(m_ram));
save_item(NAME(m_ram2));
+
+ m_port1 = 0;
+ std::fill(std::begin(m_ram), std::end(m_ram), 0);
+ std::fill(std::begin(m_ram2), std::end(m_ram2), 0);
}
void goldart_state::machine_reset()
@@ -385,6 +392,8 @@ ROM_START( goldartp )
ROM_LOAD( "p-262.u6", 0x00000, 0x80000, CRC(4177e78b) SHA1(1099568b97a08c33a7da1bf46fc106f25af15e90) )
ROM_END
+} // Anonymous namespace
+
GAME( 1994, goldart, 0, goldart, goldart, goldart_state, empty_init, ROT0, "Covielsa / Gaelco", "Goldart (Spain)", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
GAME( 1994, goldartp, goldart, goldart, goldart, goldart_state, empty_init, ROT0, "Covielsa / Gaelco", "Goldart (Portugal)", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
diff --git a/src/mame/drivers/hankin.cpp b/src/mame/drivers/hankin.cpp
index 3bacccf4218..c54ef390a02 100644
--- a/src/mame/drivers/hankin.cpp
+++ b/src/mame/drivers/hankin.cpp
@@ -26,6 +26,9 @@ ToDo:
#include "hankin.lh"
+
+namespace {
+
class hankin_state : public genpin_class
{
public:
@@ -46,6 +49,10 @@ public:
DECLARE_INPUT_CHANGED_MEMBER(self_test);
void hankin(machine_config &config);
+protected:
+ virtual void machine_start() override;
+ virtual void machine_reset() override;
+
private:
DECLARE_WRITE_LINE_MEMBER(ic10_ca2_w);
DECLARE_WRITE_LINE_MEMBER(ic10_cb2_w);
@@ -63,9 +70,6 @@ private:
TIMER_DEVICE_CALLBACK_MEMBER(timer_s);
TIMER_DEVICE_CALLBACK_MEMBER(timer_x);
- virtual void machine_start() override;
- virtual void machine_reset() override;
-
void hankin_map(address_map &map);
void hankin_sub_map(address_map &map);
@@ -419,6 +423,10 @@ TIMER_DEVICE_CALLBACK_MEMBER( hankin_state::timer_s )
void hankin_state::machine_start()
{
m_display.resolve();
+
+ m_timer_x = false;
+ m_timer_sb = false;
+ m_ic10b = 0;
}
void hankin_state::machine_reset()
@@ -599,6 +607,8 @@ ROM_START(empsback)
ROM_LOAD("sw_ic3.snd", 0x0000, 0x0200, CRC(db214f65) SHA1(1a499cf2059a5c0d860d5a4251a89a5735937ef8))
ROM_END
+} // Anonymous namespace
+
GAME(1978, fjholden, 0, hankin, hankin, hankin_state, empty_init, ROT0, "Hankin", "FJ Holden", MACHINE_MECHANICAL | MACHINE_NOT_WORKING )
GAME(1978, orbit1, 0, hankin, hankin, hankin_state, empty_init, ROT0, "Hankin", "Orbit 1", MACHINE_MECHANICAL | MACHINE_NOT_WORKING )
diff --git a/src/mame/drivers/jp.cpp b/src/mame/drivers/jp.cpp
index 9e8e8204060..3d854050de5 100644
--- a/src/mame/drivers/jp.cpp
+++ b/src/mame/drivers/jp.cpp
@@ -29,6 +29,8 @@ ToDo:
#include "jp.lh"
+namespace {
+
class jp_state : public genpin_class
{
public:
@@ -47,6 +49,10 @@ public:
void jp(machine_config &config);
void jps(machine_config &config);
+protected:
+ virtual void machine_start() override;
+ virtual void machine_reset() override;
+
private:
uint8_t porta_r();
uint8_t portb_r();
@@ -61,9 +67,6 @@ private:
DECLARE_WRITE_LINE_MEMBER(vck_w);
IRQ_CALLBACK_MEMBER(sound_int_cb);
- virtual void machine_start() override;
- virtual void machine_reset() override;
-
void jp_map(address_map &map);
void jp_sound_map(address_map &map);
@@ -319,6 +322,12 @@ void jp_state::machine_start()
if (m_adpcm_bank.found())
m_adpcm_bank->configure_entries(0, 16, memregion("sound1")->base(), 0x8000);
+
+ m_disp_data = 0;
+ m_adpcm_ff = false;
+
+ save_item(NAME(m_disp_data));
+ save_item(NAME(m_adpcm_ff));
}
void jp_state::machine_reset()
@@ -618,6 +627,9 @@ ROM_START(petaco2)
ROM_LOAD("jpsonid7.dat", 0x30000, 0x8000, CRC(ff430b1b) SHA1(423592a40eba174108dfc6817e549c643bb3c80f))
ROM_END
+} // Anonymous namespace
+
+
// different hardware
GAME(1984, petaco, 0, jp, jp, jp_state, empty_init, ROT0, "Juegos Populares", "Petaco", MACHINE_IS_SKELETON_MECHANICAL)
diff --git a/src/mame/drivers/namcona1.cpp b/src/mame/drivers/namcona1.cpp
index a6583d4e7a0..cc270b6a861 100644
--- a/src/mame/drivers/namcona1.cpp
+++ b/src/mame/drivers/namcona1.cpp
@@ -727,6 +727,7 @@ void namcona1_state::port8_w(u8 data)
void namcona1_state::machine_start()
{
m_mEnableInterrupts = 0;
+ std::fill(std::begin(m_mcu_mailbox), std::end(m_mcu_mailbox), 0);
save_item(NAME(m_mEnableInterrupts));
save_item(NAME(m_count));
save_item(NAME(m_mcu_mailbox));
diff --git a/src/mame/drivers/namcos2.cpp b/src/mame/drivers/namcos2.cpp
index 49624a2a93d..d528c9baf9b 100644
--- a/src/mame/drivers/namcos2.cpp
+++ b/src/mame/drivers/namcos2.cpp
@@ -5497,6 +5497,7 @@ void namcos2_state::init_finallap()
m_gametype = NAMCOS2_FINAL_LAP;
save_item(NAME(m_finallap_prot_count));
+ m_finallap_prot_count = 0;
}
void namcos2_state::init_finalap2()
@@ -5504,6 +5505,7 @@ void namcos2_state::init_finalap2()
m_gametype = NAMCOS2_FINAL_LAP_2;
save_item(NAME(m_finallap_prot_count));
+ m_finallap_prot_count = 0;
}
void namcos2_state::init_finalap3()
@@ -5511,6 +5513,7 @@ void namcos2_state::init_finalap3()
m_gametype = NAMCOS2_FINAL_LAP_3;
save_item(NAME(m_finallap_prot_count));
+ m_finallap_prot_count = 0;
}
void namcos2_state::init_finehour()
diff --git a/src/mame/includes/namcos86.h b/src/mame/includes/namcos86.h
index 60baa16e22a..2df55e1d076 100644
--- a/src/mame/includes/namcos86.h
+++ b/src/mame/includes/namcos86.h
@@ -40,6 +40,10 @@ public:
void init_namco86();
+protected:
+ virtual void machine_start() override;
+ virtual void video_start() override;
+
private:
void bankswitch1_w(uint8_t data);
void bankswitch1_ext_w(uint8_t data);
@@ -88,9 +92,6 @@ private:
void wndrmomo_cpu2_map(address_map &map);
void wndrmomo_mcu_map(address_map &map);
- virtual void machine_start() override;
- virtual void video_start() override;
-
required_device<cpu_device> m_cpu1;
required_device<cpu_device> m_cpu2;
required_device<hd63701v0_cpu_device> m_mcu;
diff --git a/src/mame/video/namcos86.cpp b/src/mame/video/namcos86.cpp
index 0ccb4dbbc75..ecc8bf6c5c5 100644
--- a/src/mame/video/namcos86.cpp
+++ b/src/mame/video/namcos86.cpp
@@ -154,6 +154,8 @@ void namcos86_state::video_start()
save_item(NAME(m_yscroll));
save_item(NAME(m_backcolor));
save_item(NAME(m_copy_sprites));
+
+ m_backcolor = 0;
}