mirror of
https://github.com/holub/mame
synced 2025-04-24 09:20:02 +03:00
nw shuffle
This commit is contained in:
parent
f4b3468a99
commit
42a6a828de
@ -93,13 +93,13 @@ public:
|
||||
|
||||
// game-specific handlers
|
||||
DECLARE_WRITE8_MEMBER(alnattck_plate_w);
|
||||
DECLARE_READ16_MEMBER(alnattck_d_r);
|
||||
DECLARE_WRITE16_MEMBER(alnattck_d_w);
|
||||
DECLARE_READ16_MEMBER(alnattck_d_r);
|
||||
|
||||
void egalaxn2_display();
|
||||
DECLARE_READ8_MEMBER(egalaxn2_input_r);
|
||||
DECLARE_WRITE8_MEMBER(egalaxn2_plate_w);
|
||||
DECLARE_WRITE16_MEMBER(egalaxn2_grid_w);
|
||||
DECLARE_READ8_MEMBER(egalaxn2_input_r);
|
||||
};
|
||||
|
||||
|
||||
@ -347,12 +347,6 @@ WRITE8_MEMBER(hh_hmcs40_state::alnattck_plate_w)
|
||||
display_matrix(20, 10, plate, m_grid);
|
||||
}
|
||||
|
||||
READ16_MEMBER(hh_hmcs40_state::alnattck_d_r)
|
||||
{
|
||||
// D5: inputs
|
||||
return (read_inputs(7) & 1) << 5;
|
||||
}
|
||||
|
||||
WRITE16_MEMBER(hh_hmcs40_state::alnattck_d_w)
|
||||
{
|
||||
// D4: speaker out
|
||||
@ -368,6 +362,12 @@ WRITE16_MEMBER(hh_hmcs40_state::alnattck_d_w)
|
||||
alnattck_plate_w(space, 4, data & 0xf);
|
||||
}
|
||||
|
||||
READ16_MEMBER(hh_hmcs40_state::alnattck_d_r)
|
||||
{
|
||||
// D5: inputs
|
||||
return (read_inputs(7) & 1) << 5;
|
||||
}
|
||||
|
||||
|
||||
static INPUT_PORTS_START( alnattck )
|
||||
PORT_START("IN.0") // D5 D7
|
||||
|
@ -136,74 +136,74 @@ public:
|
||||
|
||||
// game-specific handlers
|
||||
void mathmagi_display();
|
||||
DECLARE_READ8_MEMBER(mathmagi_read_k);
|
||||
DECLARE_WRITE16_MEMBER(mathmagi_write_r);
|
||||
DECLARE_WRITE16_MEMBER(mathmagi_write_o);
|
||||
DECLARE_READ8_MEMBER(mathmagi_read_k);
|
||||
|
||||
void amaztron_display();
|
||||
DECLARE_READ8_MEMBER(amaztron_read_k);
|
||||
DECLARE_WRITE16_MEMBER(amaztron_write_r);
|
||||
DECLARE_WRITE16_MEMBER(amaztron_write_o);
|
||||
DECLARE_READ8_MEMBER(amaztron_read_k);
|
||||
|
||||
void tc4_display();
|
||||
DECLARE_READ8_MEMBER(tc4_read_k);
|
||||
DECLARE_WRITE16_MEMBER(tc4_write_r);
|
||||
DECLARE_WRITE16_MEMBER(tc4_write_o);
|
||||
DECLARE_READ8_MEMBER(tc4_read_k);
|
||||
|
||||
void ebball_display();
|
||||
DECLARE_READ8_MEMBER(ebball_read_k);
|
||||
DECLARE_WRITE16_MEMBER(ebball_write_r);
|
||||
DECLARE_WRITE16_MEMBER(ebball_write_o);
|
||||
DECLARE_READ8_MEMBER(ebball_read_k);
|
||||
|
||||
void ebball3_display();
|
||||
DECLARE_READ8_MEMBER(ebball3_read_k);
|
||||
DECLARE_WRITE16_MEMBER(ebball3_write_r);
|
||||
DECLARE_WRITE16_MEMBER(ebball3_write_o);
|
||||
DECLARE_READ8_MEMBER(ebball3_read_k);
|
||||
void ebball3_set_clock();
|
||||
DECLARE_INPUT_CHANGED_MEMBER(ebball3_difficulty_switch);
|
||||
DECLARE_MACHINE_RESET(ebball3);
|
||||
|
||||
DECLARE_READ8_MEMBER(elecdet_read_k);
|
||||
DECLARE_WRITE16_MEMBER(elecdet_write_r);
|
||||
DECLARE_WRITE16_MEMBER(elecdet_write_o);
|
||||
DECLARE_READ8_MEMBER(elecdet_read_k);
|
||||
|
||||
void starwbc_display();
|
||||
DECLARE_READ8_MEMBER(starwbc_read_k);
|
||||
DECLARE_WRITE16_MEMBER(starwbc_write_r);
|
||||
DECLARE_WRITE16_MEMBER(starwbc_write_o);
|
||||
DECLARE_READ8_MEMBER(starwbc_read_k);
|
||||
|
||||
DECLARE_READ8_MEMBER(comp4_read_k);
|
||||
DECLARE_WRITE16_MEMBER(comp4_write_r);
|
||||
DECLARE_WRITE16_MEMBER(comp4_write_o);
|
||||
DECLARE_READ8_MEMBER(comp4_read_k);
|
||||
|
||||
DECLARE_READ8_MEMBER(simon_read_k);
|
||||
DECLARE_WRITE16_MEMBER(simon_write_r);
|
||||
DECLARE_WRITE16_MEMBER(simon_write_o);
|
||||
DECLARE_READ8_MEMBER(simon_read_k);
|
||||
|
||||
DECLARE_READ8_MEMBER(cnsector_read_k);
|
||||
DECLARE_WRITE16_MEMBER(cnsector_write_r);
|
||||
DECLARE_WRITE16_MEMBER(cnsector_write_o);
|
||||
DECLARE_READ8_MEMBER(cnsector_read_k);
|
||||
|
||||
DECLARE_READ8_MEMBER(merlin_read_k);
|
||||
DECLARE_WRITE16_MEMBER(merlin_write_r);
|
||||
DECLARE_WRITE16_MEMBER(merlin_write_o);
|
||||
DECLARE_READ8_MEMBER(merlin_read_k);
|
||||
|
||||
DECLARE_READ8_MEMBER(stopthief_read_k);
|
||||
DECLARE_WRITE16_MEMBER(stopthief_write_r);
|
||||
DECLARE_WRITE16_MEMBER(stopthief_write_o);
|
||||
DECLARE_READ8_MEMBER(stopthief_read_k);
|
||||
|
||||
DECLARE_READ8_MEMBER(bankshot_read_k);
|
||||
DECLARE_WRITE16_MEMBER(bankshot_write_r);
|
||||
DECLARE_WRITE16_MEMBER(bankshot_write_o);
|
||||
DECLARE_READ8_MEMBER(bankshot_read_k);
|
||||
|
||||
DECLARE_READ8_MEMBER(splitsec_read_k);
|
||||
DECLARE_WRITE16_MEMBER(splitsec_write_r);
|
||||
DECLARE_WRITE16_MEMBER(splitsec_write_o);
|
||||
DECLARE_READ8_MEMBER(splitsec_read_k);
|
||||
|
||||
void tandy12_display();
|
||||
DECLARE_READ8_MEMBER(tandy12_read_k);
|
||||
DECLARE_WRITE16_MEMBER(tandy12_write_r);
|
||||
DECLARE_WRITE16_MEMBER(tandy12_write_o);
|
||||
DECLARE_READ8_MEMBER(tandy12_read_k);
|
||||
};
|
||||
|
||||
|
||||
@ -408,11 +408,6 @@ void hh_tms1k_state::mathmagi_display()
|
||||
display_update();
|
||||
}
|
||||
|
||||
READ8_MEMBER(hh_tms1k_state::mathmagi_read_k)
|
||||
{
|
||||
return read_inputs(6);
|
||||
}
|
||||
|
||||
WRITE16_MEMBER(hh_tms1k_state::mathmagi_write_r)
|
||||
{
|
||||
// R3,R5-R7,R9,R10: input mux
|
||||
@ -431,6 +426,11 @@ WRITE16_MEMBER(hh_tms1k_state::mathmagi_write_o)
|
||||
m_o = data;
|
||||
}
|
||||
|
||||
READ8_MEMBER(hh_tms1k_state::mathmagi_read_k)
|
||||
{
|
||||
return read_inputs(6);
|
||||
}
|
||||
|
||||
|
||||
/* physical button layout and labels is like this:
|
||||
|
||||
@ -568,15 +568,6 @@ void hh_tms1k_state::amaztron_display()
|
||||
display_update();
|
||||
}
|
||||
|
||||
READ8_MEMBER(hh_tms1k_state::amaztron_read_k)
|
||||
{
|
||||
UINT8 k = read_inputs(6);
|
||||
|
||||
// the 5th column is tied to K4+K8
|
||||
if (k & 0x10) k |= 0xc;
|
||||
return k & 0xf;
|
||||
}
|
||||
|
||||
WRITE16_MEMBER(hh_tms1k_state::amaztron_write_r)
|
||||
{
|
||||
// R0-R5: input mux
|
||||
@ -598,6 +589,15 @@ WRITE16_MEMBER(hh_tms1k_state::amaztron_write_o)
|
||||
amaztron_display();
|
||||
}
|
||||
|
||||
READ8_MEMBER(hh_tms1k_state::amaztron_read_k)
|
||||
{
|
||||
UINT8 k = read_inputs(6);
|
||||
|
||||
// the 5th column is tied to K4+K8
|
||||
if (k & 0x10) k |= 0xc;
|
||||
return k & 0xf;
|
||||
}
|
||||
|
||||
|
||||
static INPUT_PORTS_START( amaztron )
|
||||
PORT_START("IN.0") // R0
|
||||
@ -711,17 +711,6 @@ void hh_tms1k_state::tc4_display()
|
||||
display_matrix(9, 10, (m_o | (m_r << 2 & 0x100)), m_r);
|
||||
}
|
||||
|
||||
READ8_MEMBER(hh_tms1k_state::tc4_read_k)
|
||||
{
|
||||
UINT8 k = read_inputs(6);
|
||||
|
||||
// read from cartridge
|
||||
if (m_inp_mux & 0x200)
|
||||
k |= m_inp_matrix[6]->read();
|
||||
|
||||
return k;
|
||||
}
|
||||
|
||||
WRITE16_MEMBER(hh_tms1k_state::tc4_write_r)
|
||||
{
|
||||
// R10: speaker out
|
||||
@ -744,6 +733,17 @@ WRITE16_MEMBER(hh_tms1k_state::tc4_write_o)
|
||||
tc4_display();
|
||||
}
|
||||
|
||||
READ8_MEMBER(hh_tms1k_state::tc4_read_k)
|
||||
{
|
||||
UINT8 k = read_inputs(6);
|
||||
|
||||
// read from cartridge
|
||||
if (m_inp_mux & 0x200)
|
||||
k |= m_inp_matrix[6]->read();
|
||||
|
||||
return k;
|
||||
}
|
||||
|
||||
|
||||
static INPUT_PORTS_START( tc4 )
|
||||
PORT_START("IN.0") // R0
|
||||
@ -853,12 +853,6 @@ void hh_tms1k_state::ebball_display()
|
||||
display_matrix(7, 9, ~m_o, m_r);
|
||||
}
|
||||
|
||||
READ8_MEMBER(hh_tms1k_state::ebball_read_k)
|
||||
{
|
||||
// note: K8(Vss row) is always on
|
||||
return m_inp_matrix[5]->read() | read_inputs(5);
|
||||
}
|
||||
|
||||
WRITE16_MEMBER(hh_tms1k_state::ebball_write_r)
|
||||
{
|
||||
// R1-R5: input mux
|
||||
@ -880,6 +874,12 @@ WRITE16_MEMBER(hh_tms1k_state::ebball_write_o)
|
||||
ebball_display();
|
||||
}
|
||||
|
||||
READ8_MEMBER(hh_tms1k_state::ebball_read_k)
|
||||
{
|
||||
// note: K8(Vss row) is always on
|
||||
return m_inp_matrix[5]->read() | read_inputs(5);
|
||||
}
|
||||
|
||||
|
||||
static INPUT_PORTS_START( ebball )
|
||||
PORT_START("IN.0") // R1
|
||||
@ -989,11 +989,6 @@ void hh_tms1k_state::ebball3_display()
|
||||
display_update();
|
||||
}
|
||||
|
||||
READ8_MEMBER(hh_tms1k_state::ebball3_read_k)
|
||||
{
|
||||
return read_inputs(3);
|
||||
}
|
||||
|
||||
WRITE16_MEMBER(hh_tms1k_state::ebball3_write_r)
|
||||
{
|
||||
// R0-R2: input mux
|
||||
@ -1015,6 +1010,11 @@ WRITE16_MEMBER(hh_tms1k_state::ebball3_write_o)
|
||||
ebball3_display();
|
||||
}
|
||||
|
||||
READ8_MEMBER(hh_tms1k_state::ebball3_read_k)
|
||||
{
|
||||
return read_inputs(3);
|
||||
}
|
||||
|
||||
|
||||
/* physical button layout and labels is like this:
|
||||
|
||||
@ -1113,12 +1113,6 @@ MACHINE_CONFIG_END
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
READ8_MEMBER(hh_tms1k_state::elecdet_read_k)
|
||||
{
|
||||
// note: the Vss row is always on
|
||||
return m_inp_matrix[4]->read() | read_inputs(4);
|
||||
}
|
||||
|
||||
WRITE16_MEMBER(hh_tms1k_state::elecdet_write_r)
|
||||
{
|
||||
// R7,R8: speaker on
|
||||
@ -1141,6 +1135,12 @@ WRITE16_MEMBER(hh_tms1k_state::elecdet_write_o)
|
||||
m_o = data;
|
||||
}
|
||||
|
||||
READ8_MEMBER(hh_tms1k_state::elecdet_read_k)
|
||||
{
|
||||
// note: the Vss row is always on
|
||||
return m_inp_matrix[4]->read() | read_inputs(4);
|
||||
}
|
||||
|
||||
|
||||
/* physical button layout and labels is like this:
|
||||
|
||||
@ -1233,11 +1233,6 @@ void hh_tms1k_state::starwbc_display()
|
||||
display_matrix(8, 10, m_o, m_r);
|
||||
}
|
||||
|
||||
READ8_MEMBER(hh_tms1k_state::starwbc_read_k)
|
||||
{
|
||||
return read_inputs(5);
|
||||
}
|
||||
|
||||
WRITE16_MEMBER(hh_tms1k_state::starwbc_write_r)
|
||||
{
|
||||
// R0,R1,R3,R5,R7: input mux
|
||||
@ -1258,6 +1253,11 @@ WRITE16_MEMBER(hh_tms1k_state::starwbc_write_o)
|
||||
starwbc_display();
|
||||
}
|
||||
|
||||
READ8_MEMBER(hh_tms1k_state::starwbc_read_k)
|
||||
{
|
||||
return read_inputs(5);
|
||||
}
|
||||
|
||||
|
||||
/* physical button layout and labels is like this:
|
||||
|
||||
@ -1339,11 +1339,6 @@ MACHINE_CONFIG_END
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
READ8_MEMBER(hh_tms1k_state::comp4_read_k)
|
||||
{
|
||||
return read_inputs(3);
|
||||
}
|
||||
|
||||
WRITE16_MEMBER(hh_tms1k_state::comp4_write_r)
|
||||
{
|
||||
// leds:
|
||||
@ -1367,6 +1362,11 @@ WRITE16_MEMBER(hh_tms1k_state::comp4_write_o)
|
||||
display_matrix(11, 1, m_r, m_o);
|
||||
}
|
||||
|
||||
READ8_MEMBER(hh_tms1k_state::comp4_read_k)
|
||||
{
|
||||
return read_inputs(3);
|
||||
}
|
||||
|
||||
|
||||
static INPUT_PORTS_START( comp4 )
|
||||
PORT_START("IN.0") // O1
|
||||
@ -1422,11 +1422,6 @@ MACHINE_CONFIG_END
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
READ8_MEMBER(hh_tms1k_state::simon_read_k)
|
||||
{
|
||||
return read_inputs(4);
|
||||
}
|
||||
|
||||
WRITE16_MEMBER(hh_tms1k_state::simon_write_r)
|
||||
{
|
||||
// R4-R8 go through an 75494 IC first:
|
||||
@ -1450,6 +1445,11 @@ WRITE16_MEMBER(hh_tms1k_state::simon_write_o)
|
||||
// N/C
|
||||
}
|
||||
|
||||
READ8_MEMBER(hh_tms1k_state::simon_read_k)
|
||||
{
|
||||
return read_inputs(4);
|
||||
}
|
||||
|
||||
|
||||
static INPUT_PORTS_START( simon )
|
||||
PORT_START("IN.0") // R0
|
||||
@ -1514,11 +1514,6 @@ MACHINE_CONFIG_END
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
READ8_MEMBER(hh_tms1k_state::cnsector_read_k)
|
||||
{
|
||||
return read_inputs(5);
|
||||
}
|
||||
|
||||
WRITE16_MEMBER(hh_tms1k_state::cnsector_write_r)
|
||||
{
|
||||
m_display_maxx = 8;
|
||||
@ -1546,6 +1541,11 @@ WRITE16_MEMBER(hh_tms1k_state::cnsector_write_o)
|
||||
m_o = data;
|
||||
}
|
||||
|
||||
READ8_MEMBER(hh_tms1k_state::cnsector_read_k)
|
||||
{
|
||||
return read_inputs(5);
|
||||
}
|
||||
|
||||
|
||||
static INPUT_PORTS_START( cnsector )
|
||||
PORT_START("IN.0") // O0
|
||||
@ -1622,11 +1622,6 @@ MACHINE_CONFIG_END
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
READ8_MEMBER(hh_tms1k_state::merlin_read_k)
|
||||
{
|
||||
return read_inputs(4);
|
||||
}
|
||||
|
||||
WRITE16_MEMBER(hh_tms1k_state::merlin_write_r)
|
||||
{
|
||||
/* leds:
|
||||
@ -1651,6 +1646,11 @@ WRITE16_MEMBER(hh_tms1k_state::merlin_write_o)
|
||||
m_inp_mux = data & 0xf;
|
||||
}
|
||||
|
||||
READ8_MEMBER(hh_tms1k_state::merlin_read_k)
|
||||
{
|
||||
return read_inputs(4);
|
||||
}
|
||||
|
||||
|
||||
static INPUT_PORTS_START( merlin )
|
||||
PORT_START("IN.0") // O0
|
||||
@ -1716,12 +1716,6 @@ MACHINE_CONFIG_END
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
READ8_MEMBER(hh_tms1k_state::stopthief_read_k)
|
||||
{
|
||||
// note: the Vss row is always on
|
||||
return m_inp_matrix[2]->read() | read_inputs(2);
|
||||
}
|
||||
|
||||
WRITE16_MEMBER(hh_tms1k_state::stopthief_write_r)
|
||||
{
|
||||
m_display_maxx = 7;
|
||||
@ -1751,6 +1745,12 @@ WRITE16_MEMBER(hh_tms1k_state::stopthief_write_o)
|
||||
m_o = data;
|
||||
}
|
||||
|
||||
READ8_MEMBER(hh_tms1k_state::stopthief_read_k)
|
||||
{
|
||||
// note: the Vss row is always on
|
||||
return m_inp_matrix[2]->read() | read_inputs(2);
|
||||
}
|
||||
|
||||
|
||||
/* physical button layout and labels is like this:
|
||||
|
||||
@ -1824,11 +1824,6 @@ MACHINE_CONFIG_END
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
READ8_MEMBER(hh_tms1k_state::bankshot_read_k)
|
||||
{
|
||||
return read_inputs(2);
|
||||
}
|
||||
|
||||
WRITE16_MEMBER(hh_tms1k_state::bankshot_write_r)
|
||||
{
|
||||
// R0: speaker out
|
||||
@ -1850,6 +1845,11 @@ WRITE16_MEMBER(hh_tms1k_state::bankshot_write_o)
|
||||
display_matrix(7, 11, m_o, m_r);
|
||||
}
|
||||
|
||||
READ8_MEMBER(hh_tms1k_state::bankshot_read_k)
|
||||
{
|
||||
return read_inputs(2);
|
||||
}
|
||||
|
||||
|
||||
/* physical button layout and labels is like this:
|
||||
(note: remember that you can rotate the display in MESS)
|
||||
@ -1931,11 +1931,6 @@ MACHINE_CONFIG_END
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
READ8_MEMBER(hh_tms1k_state::splitsec_read_k)
|
||||
{
|
||||
return read_inputs(2);
|
||||
}
|
||||
|
||||
WRITE16_MEMBER(hh_tms1k_state::splitsec_write_r)
|
||||
{
|
||||
// R8: speaker out
|
||||
@ -1957,6 +1952,12 @@ WRITE16_MEMBER(hh_tms1k_state::splitsec_write_o)
|
||||
display_matrix(7, 8, m_o, m_r);
|
||||
}
|
||||
|
||||
READ8_MEMBER(hh_tms1k_state::splitsec_read_k)
|
||||
{
|
||||
return read_inputs(2);
|
||||
}
|
||||
|
||||
|
||||
static INPUT_PORTS_START( splitsec )
|
||||
PORT_START("IN.0") // R9
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_16WAY // 4 separate directional buttons, hence 16way
|
||||
@ -2021,11 +2022,6 @@ void hh_tms1k_state::tandy12_display()
|
||||
display_matrix(13, 1, (m_o << 1 & 0x1fe) | (m_r << 9 & 0x1e00), 1);
|
||||
}
|
||||
|
||||
READ8_MEMBER(hh_tms1k_state::tandy12_read_k)
|
||||
{
|
||||
return read_inputs(5);
|
||||
}
|
||||
|
||||
WRITE16_MEMBER(hh_tms1k_state::tandy12_write_r)
|
||||
{
|
||||
// R10: speaker out
|
||||
@ -2045,6 +2041,11 @@ WRITE16_MEMBER(hh_tms1k_state::tandy12_write_o)
|
||||
tandy12_display();
|
||||
}
|
||||
|
||||
READ8_MEMBER(hh_tms1k_state::tandy12_read_k)
|
||||
{
|
||||
return read_inputs(5);
|
||||
}
|
||||
|
||||
|
||||
/* physical button layout and labels is like this:
|
||||
|
||||
|
@ -79,14 +79,14 @@ public:
|
||||
|
||||
// game-specific handlers
|
||||
void ssfball_display();
|
||||
DECLARE_READ8_MEMBER(ssfball_input_b_r);
|
||||
DECLARE_WRITE8_MEMBER(ssfball_grid_w);
|
||||
DECLARE_WRITE8_MEMBER(ssfball_plate_w);
|
||||
DECLARE_READ8_MEMBER(ssfball_input_b_r);
|
||||
|
||||
void splasfgt_display();
|
||||
DECLARE_READ8_MEMBER(splasfgt_input_b_r);
|
||||
DECLARE_WRITE8_MEMBER(splasfgt_grid_w);
|
||||
DECLARE_WRITE8_MEMBER(splasfgt_plate_w);
|
||||
DECLARE_READ8_MEMBER(splasfgt_input_b_r);
|
||||
|
||||
void astrocmd_display();
|
||||
DECLARE_WRITE8_MEMBER(astrocmd_grid_w);
|
||||
@ -95,10 +95,10 @@ public:
|
||||
DECLARE_WRITE8_MEMBER(edracula_grid_w);
|
||||
DECLARE_WRITE8_MEMBER(edracula_plate_w);
|
||||
|
||||
DECLARE_READ8_MEMBER(tmtennis_input_r);
|
||||
DECLARE_WRITE8_MEMBER(tmtennis_grid_w);
|
||||
DECLARE_WRITE8_MEMBER(tmtennis_plate_w);
|
||||
DECLARE_WRITE8_MEMBER(tmtennis_port_e_w);
|
||||
DECLARE_READ8_MEMBER(tmtennis_input_r);
|
||||
void tmtennis_set_clock();
|
||||
DECLARE_INPUT_CHANGED_MEMBER(tmtennis_difficulty_switch);
|
||||
DECLARE_MACHINE_RESET(tmtennis);
|
||||
@ -107,8 +107,8 @@ public:
|
||||
DECLARE_WRITE8_MEMBER(tmpacman_grid_w);
|
||||
DECLARE_WRITE8_MEMBER(tmpacman_plate_w);
|
||||
|
||||
DECLARE_READ8_MEMBER(alnchase_input_r);
|
||||
DECLARE_WRITE8_MEMBER(alnchase_output_w);
|
||||
DECLARE_READ8_MEMBER(alnchase_input_r);
|
||||
};
|
||||
|
||||
|
||||
@ -253,12 +253,6 @@ void hh_ucom4_state::ssfball_display()
|
||||
display_matrix(16, 9, plate, m_grid);
|
||||
}
|
||||
|
||||
READ8_MEMBER(hh_ucom4_state::ssfball_input_b_r)
|
||||
{
|
||||
// B: input port 2, where B3 is multiplexed
|
||||
return m_inp_matrix[2]->read() | read_inputs(2);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(hh_ucom4_state::ssfball_grid_w)
|
||||
{
|
||||
// C,D(,E): vfd matrix grid 0-7(,8)
|
||||
@ -287,6 +281,12 @@ WRITE8_MEMBER(hh_ucom4_state::ssfball_plate_w)
|
||||
ssfball_display();
|
||||
}
|
||||
|
||||
READ8_MEMBER(hh_ucom4_state::ssfball_input_b_r)
|
||||
{
|
||||
// B: input port 2, where B3 is multiplexed
|
||||
return m_inp_matrix[2]->read() | read_inputs(2);
|
||||
}
|
||||
|
||||
|
||||
static INPUT_PORTS_START( ssfball )
|
||||
PORT_START("IN.0") // F3 port B3
|
||||
@ -362,12 +362,6 @@ void hh_ucom4_state::splasfgt_display()
|
||||
display_matrix(16, 9, plate, m_grid);
|
||||
}
|
||||
|
||||
READ8_MEMBER(hh_ucom4_state::splasfgt_input_b_r)
|
||||
{
|
||||
// B: multiplexed buttons
|
||||
return read_inputs(4);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(hh_ucom4_state::splasfgt_grid_w)
|
||||
{
|
||||
// G,H,I0: vfd matrix grid
|
||||
@ -397,6 +391,12 @@ WRITE8_MEMBER(hh_ucom4_state::splasfgt_plate_w)
|
||||
ssfball_display();
|
||||
}
|
||||
|
||||
READ8_MEMBER(hh_ucom4_state::splasfgt_input_b_r)
|
||||
{
|
||||
// B: multiplexed buttons
|
||||
return read_inputs(4);
|
||||
}
|
||||
|
||||
|
||||
/* physical button layout and labels is like this:
|
||||
|
||||
@ -674,12 +674,6 @@ MACHINE_CONFIG_END
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
READ8_MEMBER(hh_ucom4_state::tmtennis_input_r)
|
||||
{
|
||||
// A,B: multiplexed buttons
|
||||
return ~read_inputs(2) >> (offset*4);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(hh_ucom4_state::tmtennis_grid_w)
|
||||
{
|
||||
// G,H,I: vfd matrix grid
|
||||
@ -708,6 +702,12 @@ WRITE8_MEMBER(hh_ucom4_state::tmtennis_port_e_w)
|
||||
m_speaker->level_w(data >> 2 & 1);
|
||||
}
|
||||
|
||||
READ8_MEMBER(hh_ucom4_state::tmtennis_input_r)
|
||||
{
|
||||
// A,B: multiplexed buttons
|
||||
return ~read_inputs(2) >> (offset*4);
|
||||
}
|
||||
|
||||
|
||||
/* Pro-Tennis physical button layout and labels is like this:
|
||||
|
||||
@ -910,12 +910,6 @@ MACHINE_CONFIG_END
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
READ8_MEMBER(hh_ucom4_state::alnchase_input_r)
|
||||
{
|
||||
// A: buttons
|
||||
return read_inputs(2);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(hh_ucom4_state::alnchase_output_w)
|
||||
{
|
||||
if (offset <= NEC_UCOM4_PORTE)
|
||||
@ -943,6 +937,12 @@ WRITE8_MEMBER(hh_ucom4_state::alnchase_output_w)
|
||||
display_matrix(17, 9, m_plate, m_grid);
|
||||
}
|
||||
|
||||
READ8_MEMBER(hh_ucom4_state::alnchase_input_r)
|
||||
{
|
||||
// A: buttons
|
||||
return read_inputs(2);
|
||||
}
|
||||
|
||||
|
||||
/* physical button layout and labels is like this:
|
||||
|
||||
|
@ -70,26 +70,26 @@ public:
|
||||
void display_matrix_seg(int maxx, int maxy, UINT32 setx, UINT32 sety, UINT16 segmask);
|
||||
|
||||
// calculator-specific handlers
|
||||
DECLARE_READ8_MEMBER(tisr16_read_k);
|
||||
void tisr16_display_update();
|
||||
DECLARE_WRITE16_MEMBER(tisr16_write_o);
|
||||
DECLARE_WRITE16_MEMBER(tisr16_write_r);
|
||||
void tisr16_display_update();
|
||||
DECLARE_READ8_MEMBER(tisr16_read_k);
|
||||
|
||||
DECLARE_READ8_MEMBER(ti1270_read_k);
|
||||
DECLARE_WRITE16_MEMBER(ti1270_write_o);
|
||||
DECLARE_WRITE16_MEMBER(ti1270_write_r);
|
||||
DECLARE_READ8_MEMBER(ti1270_read_k);
|
||||
|
||||
DECLARE_READ8_MEMBER(wizatron_read_k);
|
||||
DECLARE_WRITE16_MEMBER(wizatron_write_o);
|
||||
DECLARE_WRITE16_MEMBER(wizatron_write_r);
|
||||
DECLARE_READ8_MEMBER(wizatron_read_k);
|
||||
|
||||
DECLARE_READ8_MEMBER(lilprof_read_k);
|
||||
DECLARE_WRITE16_MEMBER(lilprof_write_o);
|
||||
DECLARE_WRITE16_MEMBER(lilprof_write_r);
|
||||
DECLARE_READ8_MEMBER(lilprof_read_k);
|
||||
|
||||
DECLARE_READ8_MEMBER(ti30_read_k);
|
||||
DECLARE_WRITE16_MEMBER(ti30_write_o);
|
||||
DECLARE_WRITE16_MEMBER(ti30_write_r);
|
||||
DECLARE_READ8_MEMBER(ti30_read_k);
|
||||
};
|
||||
|
||||
|
||||
@ -262,11 +262,6 @@ void ticalc1x_state::tisr16_display_update()
|
||||
display_update();
|
||||
}
|
||||
|
||||
READ8_MEMBER(ticalc1x_state::tisr16_read_k)
|
||||
{
|
||||
return read_inputs(11);
|
||||
}
|
||||
|
||||
WRITE16_MEMBER(ticalc1x_state::tisr16_write_r)
|
||||
{
|
||||
// R0-R10: input mux
|
||||
@ -282,6 +277,11 @@ WRITE16_MEMBER(ticalc1x_state::tisr16_write_o)
|
||||
tisr16_display_update();
|
||||
}
|
||||
|
||||
READ8_MEMBER(ticalc1x_state::tisr16_read_k)
|
||||
{
|
||||
return read_inputs(11);
|
||||
}
|
||||
|
||||
|
||||
static INPUT_PORTS_START( tisr16 )
|
||||
PORT_START("IN.0") // R0
|
||||
@ -379,11 +379,6 @@ MACHINE_CONFIG_END
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
READ8_MEMBER(ticalc1x_state::ti1270_read_k)
|
||||
{
|
||||
return read_inputs(6);
|
||||
}
|
||||
|
||||
WRITE16_MEMBER(ticalc1x_state::ti1270_write_r)
|
||||
{
|
||||
// R0-R7: select digit (right-to-left)
|
||||
@ -398,6 +393,11 @@ WRITE16_MEMBER(ticalc1x_state::ti1270_write_o)
|
||||
m_o = data;
|
||||
}
|
||||
|
||||
READ8_MEMBER(ticalc1x_state::ti1270_read_k)
|
||||
{
|
||||
return read_inputs(6);
|
||||
}
|
||||
|
||||
|
||||
static INPUT_PORTS_START( ti1270 )
|
||||
PORT_START("IN.0") // O1
|
||||
@ -465,11 +465,6 @@ MACHINE_CONFIG_END
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
READ8_MEMBER(ticalc1x_state::wizatron_read_k)
|
||||
{
|
||||
return read_inputs(4);
|
||||
}
|
||||
|
||||
WRITE16_MEMBER(ticalc1x_state::wizatron_write_r)
|
||||
{
|
||||
// note: 6th digit is custom(not 7seg), for math symbols, and 3rd digit
|
||||
@ -489,6 +484,11 @@ WRITE16_MEMBER(ticalc1x_state::wizatron_write_o)
|
||||
m_o = data & 0x7f;
|
||||
}
|
||||
|
||||
READ8_MEMBER(ticalc1x_state::wizatron_read_k)
|
||||
{
|
||||
return read_inputs(4);
|
||||
}
|
||||
|
||||
|
||||
static INPUT_PORTS_START( wizatron )
|
||||
PORT_START("IN.0") // O1
|
||||
@ -544,11 +544,6 @@ MACHINE_CONFIG_END
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
READ8_MEMBER(ticalc1x_state::lilprof_read_k)
|
||||
{
|
||||
return read_inputs(5);
|
||||
}
|
||||
|
||||
WRITE16_MEMBER(ticalc1x_state::lilprof_write_r)
|
||||
{
|
||||
// update leds state
|
||||
@ -578,6 +573,11 @@ WRITE16_MEMBER(ticalc1x_state::lilprof_write_o)
|
||||
m_o = data;
|
||||
}
|
||||
|
||||
READ8_MEMBER(ticalc1x_state::lilprof_read_k)
|
||||
{
|
||||
return read_inputs(5);
|
||||
}
|
||||
|
||||
|
||||
static INPUT_PORTS_START( lilprof )
|
||||
PORT_START("IN.0") // O0
|
||||
@ -642,12 +642,6 @@ MACHINE_CONFIG_END
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
READ8_MEMBER(ticalc1x_state::ti30_read_k)
|
||||
{
|
||||
// note: the Vss row is always on
|
||||
return m_inp_matrix[7]->read() | read_inputs(7);
|
||||
}
|
||||
|
||||
WRITE16_MEMBER(ticalc1x_state::ti30_write_r)
|
||||
{
|
||||
// note: 1st digit only has segments B,F,G,DP
|
||||
@ -665,6 +659,12 @@ WRITE16_MEMBER(ticalc1x_state::ti30_write_o)
|
||||
m_o = data;
|
||||
}
|
||||
|
||||
READ8_MEMBER(ticalc1x_state::ti30_read_k)
|
||||
{
|
||||
// note: the Vss row is always on
|
||||
return m_inp_matrix[7]->read() | read_inputs(7);
|
||||
}
|
||||
|
||||
|
||||
static INPUT_PORTS_START( ti30 )
|
||||
PORT_START("IN.0") // O0
|
||||
|
Loading…
Reference in New Issue
Block a user