mirror of
https://github.com/holub/mame
synced 2025-10-05 08:41:31 +03:00
g627: fixed rota_115 and rota_101
by6803: fixed typo by17, by35: slight improvement in display
This commit is contained in:
parent
18962d5cfb
commit
f2163cd56b
@ -65,6 +65,7 @@ private:
|
||||
UINT8 m_u10_b;
|
||||
UINT8 m_u11_a;
|
||||
UINT8 m_u11_b;
|
||||
bool m_u10_ca2;
|
||||
bool m_u10_cb2;
|
||||
bool m_u10_timer;
|
||||
bool m_u11_timer;
|
||||
@ -265,6 +266,7 @@ INPUT_CHANGED_MEMBER( by17_state::self_test )
|
||||
|
||||
WRITE_LINE_MEMBER( by17_state::u10_ca2_w )
|
||||
{
|
||||
m_u10_ca2 = state;
|
||||
}
|
||||
|
||||
WRITE_LINE_MEMBER( by17_state::u10_cb2_w )
|
||||
@ -291,9 +293,12 @@ WRITE8_MEMBER( by17_state::u10_a_w )
|
||||
m_segment = data >> 4;
|
||||
m_u10_a = data;
|
||||
m_u10 = (data & 15) | (BIT(m_u11_a, 0) << 4);
|
||||
switch (m_u10)
|
||||
|
||||
if (!m_u10_ca2)
|
||||
{
|
||||
case 0x10: // wrong
|
||||
switch (m_u10)
|
||||
{
|
||||
case 0x10:
|
||||
output_set_digit_value(m_digit, patterns[m_segment]);
|
||||
break;
|
||||
case 0x1d:
|
||||
@ -310,6 +315,7 @@ WRITE8_MEMBER( by17_state::u10_a_w )
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -62,6 +62,7 @@ private:
|
||||
UINT8 m_u10_b;
|
||||
UINT8 m_u11_a;
|
||||
UINT8 m_u11_b;
|
||||
bool m_u10_ca2;
|
||||
bool m_u10_cb2;
|
||||
bool m_u10_timer;
|
||||
bool m_u11_timer;
|
||||
@ -262,6 +263,7 @@ INPUT_CHANGED_MEMBER( by35_state::self_test )
|
||||
|
||||
WRITE_LINE_MEMBER( by35_state::u10_ca2_w )
|
||||
{
|
||||
m_u10_ca2 = state;
|
||||
}
|
||||
|
||||
WRITE_LINE_MEMBER( by35_state::u10_cb2_w )
|
||||
@ -288,9 +290,11 @@ WRITE8_MEMBER( by35_state::u10_a_w )
|
||||
m_segment = data >> 4;
|
||||
m_u10_a = data;
|
||||
m_u10 = (data & 15) | (BIT(m_u11_a, 0) << 4);
|
||||
switch (m_u10)
|
||||
if (!m_u10_ca2)
|
||||
{
|
||||
case 0x10: // wrong
|
||||
switch (m_u10)
|
||||
{
|
||||
case 0x10:
|
||||
output_set_digit_value(m_digit, patterns[m_segment]);
|
||||
break;
|
||||
case 0x1d:
|
||||
@ -299,14 +303,15 @@ WRITE8_MEMBER( by35_state::u10_a_w )
|
||||
case 0x1b:
|
||||
output_set_digit_value(16+m_digit, patterns[m_segment]);
|
||||
break;
|
||||
case 0x07:
|
||||
case 0x17:
|
||||
output_set_digit_value(24+m_digit, patterns[m_segment]);
|
||||
break;
|
||||
case 0x0f:
|
||||
case 0x1f:
|
||||
output_set_digit_value(32+m_digit, patterns[m_segment]);
|
||||
break;
|
||||
default:
|
||||
default://printf("%X ",m_u10);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
PINBALL
|
||||
Bally MPU A084-91786-AH06 (6803)
|
||||
|
||||
There are no dispswitches; everything is done with a numeric keypad located just inside the
|
||||
There are no dipswitches; everything is done with a numeric keypad located just inside the
|
||||
door. The system responds with messages on the display.
|
||||
|
||||
ToDo:
|
||||
|
@ -1,6 +1,6 @@
|
||||
/******************************************************************************
|
||||
|
||||
Pinball
|
||||
PINBALL
|
||||
Midway A084-91313-G627
|
||||
A080-91313-G627
|
||||
A082-91320-C000
|
||||
@ -48,25 +48,23 @@ class g627_state : public genpin_class
|
||||
{
|
||||
public:
|
||||
g627_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: genpin_class(mconfig, type, tag),
|
||||
m_maincpu(*this, "maincpu")
|
||||
: genpin_class(mconfig, type, tag)
|
||||
, m_maincpu(*this, "maincpu")
|
||||
{ }
|
||||
|
||||
DECLARE_DRIVER_INIT(v115);
|
||||
DECLARE_DRIVER_INIT(v117);
|
||||
DECLARE_READ8_MEMBER(porta_r);
|
||||
DECLARE_READ8_MEMBER(portb_r);
|
||||
DECLARE_WRITE8_MEMBER(portc_w);
|
||||
DECLARE_WRITE8_MEMBER(disp_w);
|
||||
DECLARE_WRITE8_MEMBER(lamp_w);
|
||||
|
||||
protected:
|
||||
|
||||
// devices
|
||||
required_device<cpu_device> m_maincpu;
|
||||
|
||||
private:
|
||||
UINT8 m_seg[6];
|
||||
UINT8 m_portc;
|
||||
UINT8 m_motor;
|
||||
bool m_type;
|
||||
required_device<cpu_device> m_maincpu;
|
||||
};
|
||||
|
||||
|
||||
@ -165,6 +163,15 @@ static INPUT_PORTS_START( g627 )
|
||||
PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("Test 8") PORT_CODE(KEYCODE_STOP)
|
||||
INPUT_PORTS_END
|
||||
|
||||
DRIVER_INIT_MEMBER( g627_state, v115 )
|
||||
{
|
||||
m_type = 0;
|
||||
}
|
||||
|
||||
DRIVER_INIT_MEMBER( g627_state, v117 )
|
||||
{
|
||||
m_type = 1;
|
||||
}
|
||||
|
||||
// inputs
|
||||
READ8_MEMBER( g627_state::porta_r )
|
||||
@ -197,7 +204,7 @@ READ8_MEMBER( g627_state::portb_r )
|
||||
WRITE8_MEMBER( g627_state::portc_w )
|
||||
{
|
||||
m_portc = data;
|
||||
if (data < 6)
|
||||
if ((m_type) && (data < 6))
|
||||
{
|
||||
output_set_digit_value(data, m_seg[0]);
|
||||
output_set_digit_value(10 + data, m_seg[1]);
|
||||
@ -205,6 +212,17 @@ WRITE8_MEMBER( g627_state::portc_w )
|
||||
output_set_digit_value(30 + data, m_seg[3]);
|
||||
output_set_digit_value(50 + data, m_seg[5]);
|
||||
}
|
||||
else
|
||||
if ((!m_type) && (data))
|
||||
{
|
||||
data--;
|
||||
|
||||
output_set_digit_value(data, m_seg[0]);
|
||||
output_set_digit_value(10 + data, m_seg[1]);
|
||||
output_set_digit_value(20 + data, m_seg[2]);
|
||||
output_set_digit_value(30 + data, m_seg[3]);
|
||||
output_set_digit_value(50 + data, m_seg[5]);
|
||||
}
|
||||
}
|
||||
|
||||
// save segments until we can write the digits
|
||||
@ -313,6 +331,6 @@ ROM_START(rota_101)
|
||||
ROM_LOAD("v101-c.bin", 0x1000, 0x0800, CRC(c7e85638) SHA1(b59805d8b558ab8f5ea5b4b9261e862afca4b9d3))
|
||||
ROM_END
|
||||
|
||||
GAME(1978, rotation, 0, g627, g627, driver_device, 0, ROT0, "Midway", "Rotation VIII (v. 1.17)", GAME_MECHANICAL )
|
||||
GAME(1978, rota_115, rotation, g627, g627, driver_device, 0, ROT0, "Midway", "Rotation VIII (v. 1.15)", GAME_MECHANICAL )
|
||||
GAME(1978, rota_101, rotation, g627, g627, driver_device, 0, ROT0, "Midway", "Rotation VIII (v. 1.01)", GAME_MECHANICAL )
|
||||
GAME(1978, rotation, 0, g627, g627, g627_state, v117, ROT0, "Midway", "Rotation VIII (v. 1.17)", GAME_MECHANICAL )
|
||||
GAME(1978, rota_115, rotation, g627, g627, g627_state, v115, ROT0, "Midway", "Rotation VIII (v. 1.15)", GAME_MECHANICAL )
|
||||
GAME(1978, rota_101, rotation, g627, g627, g627_state, v115, ROT0, "Midway", "Rotation VIII (v. 1.01)", GAME_MECHANICAL )
|
||||
|
Loading…
Reference in New Issue
Block a user