summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--src/mame/drivers/play_2.cpp12
-rw-r--r--src/mame/drivers/recel.cpp7
-rw-r--r--src/mame/drivers/spectra.cpp2
-rw-r--r--src/mame/drivers/spirit76.cpp6
-rw-r--r--src/mame/drivers/zac_2.cpp12
-rw-r--r--src/mame/drivers/zac_proto.cpp28
6 files changed, 49 insertions, 18 deletions
diff --git a/src/mame/drivers/play_2.cpp b/src/mame/drivers/play_2.cpp
index 3e208508c68..e7c0515749e 100644
--- a/src/mame/drivers/play_2.cpp
+++ b/src/mame/drivers/play_2.cpp
@@ -18,6 +18,16 @@ The IOS board common to all games provides sound effects through the CDP1863.
- Mad Race uses a Sound Board IV (same as MPU-3 and later), but I/O ports
that talk to it are unknown.
+Test mode:
+- Hold down NUM-0 and hit F3. The displays will show the digits one at a time.
+ The number of any stuck switch will show in the credit area. Pressing Start
+ will do a test of the solenoids (04 will show during this test). Press F3 to
+ exit.
+
+Adjustments:
+- While game is over, press NUM-0. Keep pressing to go through the bookkeeping
+ and the setup. See the manual for specifics.
+
Status:
- antar, storm, evlfight, attack, blkfever: Working
- Mad Race: J is the outhole. Working, no sound.
@@ -122,7 +132,7 @@ private:
u8 psg_r();
void psg_w(u8 data);
u8 sound_in_r();
- u8 m_psg_latch = 0;
+ u8 m_psg_latch = 0U;
required_device<ay8910_device> m_ay;
};
diff --git a/src/mame/drivers/recel.cpp b/src/mame/drivers/recel.cpp
index 5fba8168603..450b37380ad 100644
--- a/src/mame/drivers/recel.cpp
+++ b/src/mame/drivers/recel.cpp
@@ -50,6 +50,7 @@ ToDo:
#define VERBOSE 1
#include "logmacro.h"
+namespace {
class recel_state : public genpin_class
{
@@ -75,8 +76,8 @@ private:
void lamps_w(offs_t offset, u8 data);
u8 nvram_r(offs_t offset);
void nvram_w(offs_t offset, u8 data);
- u8 bic_r(offs_t offset);
- void bic_w(offs_t offset, u8 data);
+ [[maybe_unused]]u8 bic_r(offs_t offset);
+ [[maybe_unused]]void bic_w(offs_t offset, u8 data);
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -502,6 +503,8 @@ ROM_START(r_blackm4)
ROM_LOAD("b4.c5", 0x0000, 0x0800, CRC(cd383f5b) SHA1(c38acaae46e5fd2660efbd0e2d35e295892e60a5) )
ROM_END
+} // anonymous namespace
+
GAME(1977, recel, 0, recel, recel, recel_state, empty_init, ROT0, "Recel", "Recel Bios", MACHINE_IS_BIOS_ROOT | MACHINE_NOT_WORKING)
GAME(1978, r_alaska, recel, recel, recel, recel_state, empty_init, ROT0, "Interflip", "Alaska", MACHINE_IS_SKELETON_MECHANICAL)
diff --git a/src/mame/drivers/spectra.cpp b/src/mame/drivers/spectra.cpp
index 8aa70e57460..dd194c461fe 100644
--- a/src/mame/drivers/spectra.cpp
+++ b/src/mame/drivers/spectra.cpp
@@ -49,6 +49,7 @@ ToDo:
#include "spectra.lh"
+namespace {
class spectra_state : public genpin_class
{
@@ -311,5 +312,6 @@ ROM_START(spectra)
ROM_LOAD("spect_u3.dat", 0x0c00, 0x0400, CRC(9ca7510f) SHA1(a87849f16903836158063d593bb4a2e90c7473c8))
ROM_END
+} // anonymous namespace
GAME(1979, spectra, 0, spectra, spectra, spectra_state, empty_init, ROT0, "Valley", "Spectra IV", MACHINE_IS_SKELETON_MECHANICAL | MACHINE_SUPPORTS_SAVE )
diff --git a/src/mame/drivers/spirit76.cpp b/src/mame/drivers/spirit76.cpp
index 285f77973f8..6b5bdaad9e8 100644
--- a/src/mame/drivers/spirit76.cpp
+++ b/src/mame/drivers/spirit76.cpp
@@ -43,6 +43,8 @@ TODO:
#include "machine/timer.h"
#include "spirit76.lh"
+namespace {
+
class spirit76_state : public genpin_class
{
public:
@@ -334,6 +336,9 @@ void spirit76_state::machine_start()
void spirit76_state::machine_reset()
{
+ for (u8 i = 0; i < m_io_outputs.size(); i++)
+ m_io_outputs[i] = 0;
+
m_t_c = 0;
m_strobe = 0;
m_segment = 0;
@@ -377,5 +382,6 @@ ROM_START(spirit76)
ROM_LOAD_NIB_HIGH("3g.bin", 0x0800, 0x0200, CRC(ae7192cd) SHA1(9ba76e81b8603163c22f47f1a99da310b4325e84))
ROM_END
+} // Anonymous namespace
GAME( 1975, spirit76, 0, spirit76, spirit76, spirit76_state, empty_init, ROT0, "Mirco", "Spirit of 76", MACHINE_IS_SKELETON_MECHANICAL )
diff --git a/src/mame/drivers/zac_2.cpp b/src/mame/drivers/zac_2.cpp
index c43926fba0f..250e9db1eac 100644
--- a/src/mame/drivers/zac_2.cpp
+++ b/src/mame/drivers/zac_2.cpp
@@ -5,6 +5,12 @@
PINBALL
Zaccaria Generation 2
+Status:
+- Shows all 0 then no response
+
+ToDo:
+- Make them work
+
****************************************************************************************************/
@@ -14,6 +20,8 @@ Zaccaria Generation 2
#include "machine/timer.h"
#include "zac_2.lh"
+namespace {
+
class zac_2_state : public driver_device
{
public:
@@ -103,7 +111,7 @@ static INPUT_PORTS_START( zac_2 )
PORT_START("X1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START )
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_KEYPAD ) PORT_CODE(KEYCODE_9) PORT_NAME("Tilt 2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_KEYPAD ) PORT_CODE(KEYCODE_9) PORT_NAME("Tilt")
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_KEYPAD ) PORT_CODE(KEYCODE_4_PAD) PORT_NAME("Factory Burn Test")
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNUSED )
@@ -1069,6 +1077,8 @@ ROM_START(zankor)
ROM_LOAD("zan_ic6.128", 0x8000, 0x4000, CRC(13a5b8d4) SHA1(d8c976b3f5e9c7cded0922feefa1531c59432515))
ROM_END
+} // anonymous namespace
+
GAME(1986, bbeltzac, 0, zac_2, zac_2, zac_2_state, empty_init, ROT0, "Zaccaria", "Black Belt (Zaccaria)", MACHINE_IS_SKELETON_MECHANICAL)
GAME(1986, bbeltzaci, bbeltzac, zac_2, zac_2, zac_2_state, empty_init, ROT0, "Zaccaria", "Black Belt (Zaccaria, Italian speech)", MACHINE_IS_SKELETON_MECHANICAL)
GAME(1986, bbeltzacg, bbeltzac, zac_2, zac_2, zac_2_state, empty_init, ROT0, "Zaccaria", "Black Belt (Zaccaria, German speech)", MACHINE_IS_SKELETON_MECHANICAL)
diff --git a/src/mame/drivers/zac_proto.cpp b/src/mame/drivers/zac_proto.cpp
index f951862886d..10b43b9ebf1 100644
--- a/src/mame/drivers/zac_proto.cpp
+++ b/src/mame/drivers/zac_proto.cpp
@@ -2,16 +2,16 @@
// copyright-holders:Robbbert
/*********************************************************************
- PINBALL
- Zaccaria Prototype
+PINBALL
+Zaccaria Prototype
- These use the INS8060 (SC/MP) processor, and are Zaccaria's first
- digital machines.
+These use the INS8060 (SC/MP) processor, and are Zaccaria's first
+ digital machines.
- After starting a game, press X, wait for the sound of the ball
- being ejected, then press Z. Now you can get a score.
+After starting a game, press X, wait for the sound of the ball
+ being ejected, then press Z. Now you can get a score.
- The ball number is how many balls are left. 1 = last ball.
+The ball number is how many balls are left. 1 = last ball.
Status:
@@ -214,20 +214,20 @@ INPUT_PORTS_END
void zac_proto_state::out0_w(offs_t offset, uint8_t data)
{
data &= 0x3f;
- uint16_t t = data | (offset << 6);
+ uint16_t t = data << (offset*6);
switch (t)
{
- case 1:
+ case 0x01:
m_samples->start(0, 5); // outhole
break;
- case 2:
- case 4:
+ case 0x02:
+ case 0x04:
m_samples->start(4, 7); // slings
break;
- case 8:
- case 16:
- case 32:
+ case 0x08:
+ case 0x10:
+ case 0x20:
m_samples->start(5, 0); // bumpers
break;
}