mirror of
https://github.com/libretro/mame.git
synced 2024-12-11 19:53:49 +00:00
modernised adc083x, ds2401, upd4701 [smf]
This commit is contained in:
parent
0c393edfdf
commit
f57d8d2d7b
@ -47,126 +47,170 @@ enum
|
||||
struct adc0831_state
|
||||
{
|
||||
adc083x_input_convert_func input_callback_r;
|
||||
|
||||
INT32 cs;
|
||||
INT32 clk;
|
||||
INT32 di;
|
||||
INT32 se;
|
||||
INT32 sars;
|
||||
INT32 _do;
|
||||
INT32 sgl;
|
||||
INT32 odd;
|
||||
INT32 sel1;
|
||||
INT32 sel0;
|
||||
INT32 state;
|
||||
INT32 bit;
|
||||
INT32 output;
|
||||
INT32 mux_bits;
|
||||
};
|
||||
|
||||
const device_type ADC0831 = &device_creator<adc0831_device>;
|
||||
const device_type ADC0832 = &device_creator<adc0832_device>;
|
||||
const device_type ADC0834 = &device_creator<adc0834_device>;
|
||||
const device_type ADC0838 = &device_creator<adc0838_device>;
|
||||
|
||||
|
||||
/***************************************************************************
|
||||
INLINE FUNCTIONS
|
||||
***************************************************************************/
|
||||
|
||||
INLINE adc0831_state *get_safe_token( device_t *device )
|
||||
adc083x_device::adc083x_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock)
|
||||
: device_t(mconfig, type, name, tag, owner, clock),
|
||||
m_cs(0),
|
||||
m_clk(0),
|
||||
m_di(0),
|
||||
m_se(0),
|
||||
m_do(1),
|
||||
m_sgl(0),
|
||||
m_odd(0),
|
||||
m_sel1(0),
|
||||
m_sel0(0),
|
||||
m_state(STATE_IDLE),
|
||||
m_bit(0),
|
||||
m_output(0)
|
||||
{
|
||||
assert( device != NULL );
|
||||
assert( ( device->type() == ADC0831 ) || ( device->type() == ADC0832 ) || ( device->type() == ADC0834 ) || ( device->type() == ADC0838 ) );
|
||||
return (adc0831_state *) downcast<adc0831_device *>(device)->token();
|
||||
}
|
||||
|
||||
INLINE const adc083x_interface *get_interface( device_t *device )
|
||||
adc0831_device::adc0831_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
|
||||
: adc083x_device(mconfig, ADC0831, "A/D Converters 0831", tag, owner, clock)
|
||||
{
|
||||
assert( device != NULL );
|
||||
assert( ( device->type() == ADC0831 ) || ( device->type() == ADC0832 ) || ( device->type() == ADC0834 ) || ( device->type() == ADC0838 ) );
|
||||
return (const adc083x_interface *) device->static_config();
|
||||
m_mux_bits = 0;
|
||||
}
|
||||
|
||||
adc0832_device::adc0832_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
|
||||
: adc083x_device(mconfig, ADC0832, "A/D Converters 0832", tag, owner, clock)
|
||||
{
|
||||
m_mux_bits = 2;
|
||||
}
|
||||
|
||||
adc0834_device::adc0834_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
|
||||
: adc083x_device(mconfig, ADC0834, "A/D Converters 0834", tag, owner, clock)
|
||||
{
|
||||
m_mux_bits = 3;
|
||||
}
|
||||
|
||||
adc0838_device::adc0838_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
|
||||
: adc083x_device(mconfig, ADC0838, "A/D Converters 0838", tag, owner, clock)
|
||||
{
|
||||
m_mux_bits = 4;
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
// device_config_complete - perform any
|
||||
// operations now that the configuration is
|
||||
// complete
|
||||
//-------------------------------------------------
|
||||
|
||||
void adc083x_device::device_config_complete()
|
||||
{
|
||||
const adc083x_interface *intf = (const adc083x_interface *) static_config();
|
||||
|
||||
/* resolve callbacks */
|
||||
m_input_callback_r = intf->input_callback_r;
|
||||
}
|
||||
|
||||
|
||||
/***************************************************************************
|
||||
IMPLEMENTATION
|
||||
***************************************************************************/
|
||||
|
||||
/*-------------------------------------------------
|
||||
adc083x_clear_sars
|
||||
adc083x_device::device_start
|
||||
-------------------------------------------------*/
|
||||
|
||||
static void adc083x_clear_sars( device_t *device, adc0831_state *adc083x )
|
||||
void adc083x_device::device_start()
|
||||
{
|
||||
if( device->type() == ADC0834 ||device->type() == ADC0838 )
|
||||
clear_sars();
|
||||
|
||||
/* register for state saving */
|
||||
save_item( NAME(m_cs) );
|
||||
save_item( NAME(m_clk) );
|
||||
save_item( NAME(m_di) );
|
||||
save_item( NAME(m_se) );
|
||||
save_item( NAME(m_sars) );
|
||||
save_item( NAME(m_do) );
|
||||
save_item( NAME(m_sgl) );
|
||||
save_item( NAME(m_odd) );
|
||||
save_item( NAME(m_sel1) );
|
||||
save_item( NAME(m_sel0) );
|
||||
save_item( NAME(m_state) );
|
||||
save_item( NAME(m_bit) );
|
||||
save_item( NAME(m_output) );
|
||||
save_item( NAME(m_mux_bits) );
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
adc083x_device::clear_sars
|
||||
-------------------------------------------------*/
|
||||
|
||||
void adc083x_device::clear_sars()
|
||||
{
|
||||
if( type() == ADC0834 || type() == ADC0838 )
|
||||
{
|
||||
adc083x->sars = 1;
|
||||
m_sars = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
adc083x->sars = 0;
|
||||
m_sars = 0;
|
||||
}
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
adc083x_cs_write
|
||||
adc083x_device::cs_write
|
||||
-------------------------------------------------*/
|
||||
|
||||
WRITE_LINE_DEVICE_HANDLER( adc083x_cs_write )
|
||||
WRITE_LINE_MEMBER( adc083x_device::cs_write )
|
||||
{
|
||||
adc0831_state *adc083x = get_safe_token( device );
|
||||
|
||||
if( adc083x->cs != state )
|
||||
if( m_cs != state )
|
||||
{
|
||||
verboselog( 2, device->machine(), "adc083x_cs_write( %s, %d )\n", device->tag(), state );
|
||||
verboselog( 2, machine(), "adc083x_cs_write( %s, %d )\n", tag(), state );
|
||||
}
|
||||
|
||||
if( adc083x->cs == 0 && state != 0 )
|
||||
if( m_cs == 0 && state != 0 )
|
||||
{
|
||||
adc083x->state = STATE_IDLE;
|
||||
adc083x_clear_sars( device, adc083x );
|
||||
adc083x->_do = 1;
|
||||
m_state = STATE_IDLE;
|
||||
clear_sars();
|
||||
m_do = 1;
|
||||
}
|
||||
|
||||
if( adc083x->cs != 0 && state == 0 )
|
||||
if( m_cs != 0 && state == 0 )
|
||||
{
|
||||
if( device->type() == ADC0831 )
|
||||
if( type() == ADC0831 )
|
||||
{
|
||||
adc083x->state = STATE_MUX_SETTLE;
|
||||
m_state = STATE_MUX_SETTLE;
|
||||
}
|
||||
else
|
||||
{
|
||||
adc083x->state = STATE_WAIT_FOR_START;
|
||||
m_state = STATE_WAIT_FOR_START;
|
||||
}
|
||||
|
||||
adc083x_clear_sars( device, adc083x );
|
||||
adc083x->_do = 1;
|
||||
clear_sars();
|
||||
m_do = 1;
|
||||
}
|
||||
|
||||
adc083x->cs = state;
|
||||
m_cs = state;
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
adc083x_conversion
|
||||
adc083x_device::conversion
|
||||
-------------------------------------------------*/
|
||||
|
||||
static UINT8 adc083x_conversion( device_t *device )
|
||||
UINT8 adc083x_device::conversion()
|
||||
{
|
||||
adc0831_state *adc083x = get_safe_token( device );
|
||||
int result;
|
||||
int positive_channel = ADC083X_AGND;
|
||||
int negative_channel = ADC083X_AGND;
|
||||
double positive = 0;
|
||||
double negative = 0;
|
||||
double gnd = adc083x->input_callback_r( device, ADC083X_AGND );
|
||||
double vref = adc083x->input_callback_r( device, ADC083X_VREF );
|
||||
double gnd = m_input_callback_r( this, ADC083X_AGND );
|
||||
double vref = m_input_callback_r( this, ADC083X_VREF );
|
||||
|
||||
if( device->type() == ADC0831 )
|
||||
if( type() == ADC0831 )
|
||||
{
|
||||
positive_channel = ADC083X_CH0;
|
||||
negative_channel = ADC083X_CH1;
|
||||
}
|
||||
else if( device->type() == ADC0832 )
|
||||
else if( type() == ADC0832 )
|
||||
{
|
||||
positive_channel = ADC083X_CH0 + adc083x->odd;
|
||||
if( adc083x->sgl == 0 )
|
||||
positive_channel = ADC083X_CH0 + m_odd;
|
||||
if( m_sgl == 0 )
|
||||
{
|
||||
negative_channel = positive_channel ^ 1;
|
||||
}
|
||||
@ -175,10 +219,10 @@ static UINT8 adc083x_conversion( device_t *device )
|
||||
negative_channel = ADC083X_AGND;
|
||||
}
|
||||
}
|
||||
else if( device->type() == ADC0834 )
|
||||
else if( type() == ADC0834 )
|
||||
{
|
||||
positive_channel = ADC083X_CH0 + adc083x->odd + ( adc083x->sel1 * 2 );
|
||||
if( adc083x->sgl == 0 )
|
||||
positive_channel = ADC083X_CH0 + m_odd + ( m_sel1 * 2 );
|
||||
if( m_sgl == 0 )
|
||||
{
|
||||
negative_channel = positive_channel ^ 1;
|
||||
}
|
||||
@ -187,10 +231,10 @@ static UINT8 adc083x_conversion( device_t *device )
|
||||
negative_channel = ADC083X_AGND;
|
||||
}
|
||||
}
|
||||
else if( device->type() == ADC0838 )
|
||||
else if( type() == ADC0838 )
|
||||
{
|
||||
positive_channel = ADC083X_CH0 + adc083x->odd + ( adc083x->sel0 * 2 ) + ( adc083x->sel1 * 4 );
|
||||
if( adc083x->sgl == 0 )
|
||||
positive_channel = ADC083X_CH0 + m_odd + ( m_sel0 * 2 ) + ( m_sel1 * 4 );
|
||||
if( m_sgl == 0 )
|
||||
{
|
||||
negative_channel = positive_channel ^ 1;
|
||||
}
|
||||
@ -202,12 +246,12 @@ static UINT8 adc083x_conversion( device_t *device )
|
||||
|
||||
if( positive_channel != ADC083X_AGND )
|
||||
{
|
||||
positive = adc083x->input_callback_r( device, positive_channel ) - gnd;
|
||||
positive = m_input_callback_r( this, positive_channel ) - gnd;
|
||||
}
|
||||
|
||||
if( negative_channel != ADC083X_AGND )
|
||||
{
|
||||
negative = adc083x->input_callback_r( device, negative_channel ) - gnd;
|
||||
negative = m_input_callback_r( this, negative_channel ) - gnd;
|
||||
}
|
||||
|
||||
result = (int) ( ( ( positive - negative ) * 255 ) / vref );
|
||||
@ -224,347 +268,197 @@ static UINT8 adc083x_conversion( device_t *device )
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
adc083x_clk_write
|
||||
adc083x_device::clk_write
|
||||
-------------------------------------------------*/
|
||||
|
||||
WRITE_LINE_DEVICE_HANDLER( adc083x_clk_write )
|
||||
WRITE_LINE_MEMBER( adc083x_device::clk_write )
|
||||
{
|
||||
adc0831_state *adc083x = get_safe_token( device );
|
||||
|
||||
if( adc083x->clk != state )
|
||||
if( m_clk != state )
|
||||
{
|
||||
verboselog( 2, device->machine(), "adc083x_clk_write( %s, %d )\n", device->tag(), state );
|
||||
verboselog( 2, machine(), "adc083x_clk_write( %s, %d )\n", tag(), state );
|
||||
}
|
||||
|
||||
if( adc083x->cs == 0 )
|
||||
if( m_cs == 0 )
|
||||
{
|
||||
if( adc083x->clk == 0 && state != 0 )
|
||||
if( m_clk == 0 && state != 0 )
|
||||
{
|
||||
switch( adc083x->state )
|
||||
switch( m_state )
|
||||
{
|
||||
case STATE_WAIT_FOR_START:
|
||||
if( adc083x->di != 0 )
|
||||
if( m_di != 0 )
|
||||
{
|
||||
verboselog( 1, device->machine(), "adc083x %s got start bit\n", device->tag() );
|
||||
adc083x->state = STATE_SHIFT_MUX;
|
||||
adc083x->sars = 0;
|
||||
adc083x->sgl = 0;
|
||||
adc083x->odd = 0;
|
||||
adc083x->sel1 = 0;
|
||||
adc083x->sel0 = 0;
|
||||
adc083x->bit = 0;
|
||||
verboselog( 1, machine(), "adc083x %s got start bit\n", tag() );
|
||||
m_state = STATE_SHIFT_MUX;
|
||||
m_sars = 0;
|
||||
m_sgl = 0;
|
||||
m_odd = 0;
|
||||
m_sel1 = 0;
|
||||
m_sel0 = 0;
|
||||
m_bit = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
verboselog( 1, device->machine(), "adc083x %s not start bit\n", device->tag() );
|
||||
verboselog( 1, machine(), "adc083x %s not start bit\n", tag() );
|
||||
}
|
||||
break;
|
||||
|
||||
case STATE_SHIFT_MUX:
|
||||
switch( adc083x->bit )
|
||||
switch( m_bit )
|
||||
{
|
||||
case 0:
|
||||
if( adc083x->di != 0 )
|
||||
if( m_di != 0 )
|
||||
{
|
||||
adc083x->sgl = 1;
|
||||
m_sgl = 1;
|
||||
}
|
||||
verboselog( 1, device->machine(), "adc083x %s sgl <- %d\n", device->tag(), adc083x->sgl );
|
||||
verboselog( 1, machine(), "adc083x %s sgl <- %d\n", tag(), m_sgl );
|
||||
break;
|
||||
|
||||
case 1:
|
||||
if( adc083x->di != 0 )
|
||||
if( m_di != 0 )
|
||||
{
|
||||
adc083x->odd = 1;
|
||||
m_odd = 1;
|
||||
}
|
||||
verboselog( 1, device->machine(), "adc083x %s odd <- %d\n", device->tag(), adc083x->odd );
|
||||
verboselog( 1, machine(), "adc083x %s odd <- %d\n", tag(), m_odd );
|
||||
break;
|
||||
|
||||
case 2:
|
||||
if( adc083x->di != 0 )
|
||||
if( m_di != 0 )
|
||||
{
|
||||
adc083x->sel1 = 1;
|
||||
m_sel1 = 1;
|
||||
}
|
||||
verboselog( 1, device->machine(), "adc083x %s sel1 <- %d\n", device->tag(), adc083x->sel1 );
|
||||
verboselog( 1, machine(), "adc083x %s sel1 <- %d\n", tag(), m_sel1 );
|
||||
break;
|
||||
|
||||
case 3:
|
||||
if( adc083x->di != 0 )
|
||||
if( m_di != 0 )
|
||||
{
|
||||
adc083x->sel0 = 1;
|
||||
m_sel0 = 1;
|
||||
}
|
||||
verboselog( 1, device->machine(), "adc083x %s sel0 <- %d\n", device->tag(), adc083x->sel0 );
|
||||
verboselog( 1, machine(), "adc083x %s sel0 <- %d\n", tag(), m_sel0 );
|
||||
break;
|
||||
}
|
||||
|
||||
adc083x->bit++;
|
||||
if( adc083x->bit == adc083x->mux_bits )
|
||||
m_bit++;
|
||||
if( m_bit == m_mux_bits )
|
||||
{
|
||||
adc083x->state = STATE_MUX_SETTLE;
|
||||
m_state = STATE_MUX_SETTLE;
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case STATE_WAIT_FOR_SE:
|
||||
adc083x->sars = 0;
|
||||
if( device->type() == ADC0838 && adc083x->se != 0 )
|
||||
m_sars = 0;
|
||||
if( type() == ADC0838 && m_se != 0 )
|
||||
{
|
||||
verboselog( 1, device->machine(), "adc083x %s not se\n", device->tag() );
|
||||
verboselog( 1, machine(), "adc083x %s not se\n", tag() );
|
||||
}
|
||||
else
|
||||
{
|
||||
verboselog( 1, device->machine(), "adc083x %s got se\n", device->tag() );
|
||||
adc083x->state = STATE_OUTPUT_LSB_FIRST;
|
||||
adc083x->bit = 1;
|
||||
verboselog( 1, machine(), "adc083x %s got se\n", tag() );
|
||||
m_state = STATE_OUTPUT_LSB_FIRST;
|
||||
m_bit = 1;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if( adc083x->clk != 0 && state == 0 )
|
||||
if( m_clk != 0 && state == 0 )
|
||||
{
|
||||
switch( adc083x->state )
|
||||
switch( m_state )
|
||||
{
|
||||
case STATE_MUX_SETTLE:
|
||||
verboselog( 1, device->machine(), "adc083x %s mux settle\n", device->tag() );
|
||||
adc083x->output = adc083x_conversion( device );
|
||||
adc083x->state = STATE_OUTPUT_MSB_FIRST;
|
||||
adc083x->bit = 7;
|
||||
adc083x_clear_sars( device, adc083x );
|
||||
adc083x->_do = 0;
|
||||
verboselog( 1, machine(), "adc083x %s mux settle\n", tag() );
|
||||
m_output = conversion();
|
||||
m_state = STATE_OUTPUT_MSB_FIRST;
|
||||
m_bit = 7;
|
||||
clear_sars();
|
||||
m_do = 0;
|
||||
break;
|
||||
|
||||
case STATE_OUTPUT_MSB_FIRST:
|
||||
adc083x->_do = ( adc083x->output >> adc083x->bit ) & 1;
|
||||
verboselog( 1, device->machine(), "adc083x %s msb %d -> %d\n", device->tag(), adc083x->bit, adc083x->_do );
|
||||
m_do = ( m_output >> m_bit ) & 1;
|
||||
verboselog( 1, machine(), "adc083x %s msb %d -> %d\n", tag(), m_bit, m_do );
|
||||
|
||||
adc083x->bit--;
|
||||
if( adc083x->bit < 0 )
|
||||
m_bit--;
|
||||
if( m_bit < 0 )
|
||||
{
|
||||
if( device->type() == ADC0831 )
|
||||
if( type() == ADC0831 )
|
||||
{
|
||||
adc083x->state = STATE_FINISHED;
|
||||
m_state = STATE_FINISHED;
|
||||
}
|
||||
else
|
||||
{
|
||||
adc083x->state = STATE_WAIT_FOR_SE;
|
||||
m_state = STATE_WAIT_FOR_SE;
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case STATE_OUTPUT_LSB_FIRST:
|
||||
adc083x->_do = ( adc083x->output >> adc083x->bit ) & 1;
|
||||
verboselog( 1, device->machine(), "adc083x %s lsb %d -> %d\n", device->tag(), adc083x->bit, adc083x->_do );
|
||||
m_do = ( m_output >> m_bit ) & 1;
|
||||
verboselog( 1, machine(), "adc083x %s lsb %d -> %d\n", tag(), m_bit, m_do );
|
||||
|
||||
adc083x->bit++;
|
||||
if( adc083x->bit == 8 )
|
||||
m_bit++;
|
||||
if( m_bit == 8 )
|
||||
{
|
||||
adc083x->state = STATE_FINISHED;
|
||||
m_state = STATE_FINISHED;
|
||||
}
|
||||
break;
|
||||
|
||||
case STATE_FINISHED:
|
||||
adc083x->state = STATE_IDLE;
|
||||
adc083x->_do = 0;
|
||||
m_state = STATE_IDLE;
|
||||
m_do = 0;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
adc083x->clk = state;
|
||||
m_clk = state;
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
adc083x_di_write
|
||||
adc083x_device::di_write
|
||||
-------------------------------------------------*/
|
||||
|
||||
WRITE_LINE_DEVICE_HANDLER( adc083x_di_write )
|
||||
WRITE_LINE_MEMBER( adc083x_device::di_write )
|
||||
{
|
||||
adc0831_state *adc083x = get_safe_token( device );
|
||||
|
||||
if( adc083x->di != state )
|
||||
if( m_di != state )
|
||||
{
|
||||
verboselog( 2, device->machine(), "adc083x_di_write( %s, %d )\n", device->tag(), state );
|
||||
verboselog( 2, machine(), "adc083x_di_write( %s, %d )\n", tag(), state );
|
||||
}
|
||||
|
||||
adc083x->di = state;
|
||||
m_di = state;
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
adc083x_se_write
|
||||
adc083x_device::se_write
|
||||
-------------------------------------------------*/
|
||||
|
||||
WRITE_LINE_DEVICE_HANDLER( adc083x_se_write )
|
||||
WRITE_LINE_MEMBER( adc083x_device::se_write )
|
||||
{
|
||||
adc0831_state *adc083x = get_safe_token( device );
|
||||
|
||||
if( adc083x->se != state )
|
||||
if( m_se != state )
|
||||
{
|
||||
verboselog( 2, device->machine(), "adc083x_se_write( %s, %d )\n", device->tag(), state );
|
||||
verboselog( 2, machine(), "adc083x_se_write( %s, %d )\n", tag(), state );
|
||||
}
|
||||
|
||||
adc083x->se = state;
|
||||
m_se = state;
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
adc083x_sars_read
|
||||
adc083x_device::sars_read
|
||||
-------------------------------------------------*/
|
||||
|
||||
READ_LINE_DEVICE_HANDLER( adc083x_sars_read )
|
||||
READ_LINE_MEMBER( adc083x_device::sars_read )
|
||||
{
|
||||
adc0831_state *adc083x = get_safe_token( device );
|
||||
|
||||
verboselog( 1, device->machine(), "adc083x_sars_read( %s ) %d\n", device->tag(), adc083x->sars );
|
||||
return adc083x->sars;
|
||||
verboselog( 1, machine(), "adc083x_sars_read( %s ) %d\n", tag(), m_sars );
|
||||
return m_sars;
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
adc083x_do_read
|
||||
adc083x_device::do_read
|
||||
-------------------------------------------------*/
|
||||
|
||||
READ_LINE_DEVICE_HANDLER( adc083x_do_read )
|
||||
{
|
||||
adc0831_state *adc083x = get_safe_token( device );
|
||||
|
||||
verboselog( 1, device->machine(), "adc083x_do_read( %s ) %d\n", device->tag(), adc083x->_do );
|
||||
return adc083x->_do;
|
||||
}
|
||||
|
||||
|
||||
/*-------------------------------------------------
|
||||
DEVICE_START( adc083x )
|
||||
-------------------------------------------------*/
|
||||
|
||||
static DEVICE_START( adc0831 )
|
||||
{
|
||||
adc0831_state *adc083x = get_safe_token( device );
|
||||
const adc083x_interface *intf = get_interface( device );
|
||||
|
||||
adc083x->cs = 0;
|
||||
adc083x->clk = 0;
|
||||
adc083x->di = 0;
|
||||
adc083x->se = 0;
|
||||
adc083x_clear_sars( device, adc083x );
|
||||
adc083x->_do = 1;
|
||||
adc083x->sgl = 0;
|
||||
adc083x->odd = 0;
|
||||
adc083x->sel1 = 0;
|
||||
adc083x->sel0 = 0;
|
||||
adc083x->state = STATE_IDLE;
|
||||
adc083x->bit = 0;
|
||||
adc083x->output = 0;
|
||||
|
||||
if( device->type() == ADC0831 )
|
||||
{
|
||||
adc083x->mux_bits = 0;
|
||||
}
|
||||
else if( device->type() == ADC0832 )
|
||||
{
|
||||
adc083x->mux_bits = 2;
|
||||
}
|
||||
else if( device->type() == ADC0834 )
|
||||
{
|
||||
adc083x->mux_bits = 3;
|
||||
}
|
||||
else if( device->type() == ADC0838 )
|
||||
{
|
||||
adc083x->mux_bits = 4;
|
||||
}
|
||||
|
||||
/* resolve callbacks */
|
||||
adc083x->input_callback_r = intf->input_callback_r;
|
||||
|
||||
/* register for state saving */
|
||||
device->save_item( NAME(adc083x->cs) );
|
||||
device->save_item( NAME(adc083x->clk) );
|
||||
device->save_item( NAME(adc083x->di) );
|
||||
device->save_item( NAME(adc083x->se) );
|
||||
device->save_item( NAME(adc083x->sars) );
|
||||
device->save_item( NAME(adc083x->_do) );
|
||||
device->save_item( NAME(adc083x->sgl) );
|
||||
device->save_item( NAME(adc083x->odd) );
|
||||
device->save_item( NAME(adc083x->sel1) );
|
||||
device->save_item( NAME(adc083x->sel0) );
|
||||
device->save_item( NAME(adc083x->state) );
|
||||
device->save_item( NAME(adc083x->bit) );
|
||||
device->save_item( NAME(adc083x->output) );
|
||||
device->save_item( NAME(adc083x->mux_bits) );
|
||||
}
|
||||
|
||||
|
||||
/*-------------------------------------------------
|
||||
DEVICE_RESET( adc083x )
|
||||
-------------------------------------------------*/
|
||||
|
||||
static DEVICE_RESET( adc0831 )
|
||||
{
|
||||
adc0831_state *adc083x = get_safe_token( device );
|
||||
|
||||
adc083x_clear_sars( device, adc083x );
|
||||
adc083x->_do = 1;
|
||||
adc083x->state = STATE_IDLE;
|
||||
}
|
||||
|
||||
const device_type ADC0831 = &device_creator<adc0831_device>;
|
||||
|
||||
adc0831_device::adc0831_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
|
||||
: device_t(mconfig, ADC0831, "A/D Converters 0831", tag, owner, clock)
|
||||
{
|
||||
m_token = global_alloc_clear(adc0831_state);
|
||||
}
|
||||
adc0831_device::adc0831_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock)
|
||||
: device_t(mconfig, type, name, tag, owner, clock)
|
||||
{
|
||||
m_token = global_alloc_clear(adc0831_state);
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
// device_config_complete - perform any
|
||||
// operations now that the configuration is
|
||||
// complete
|
||||
//-------------------------------------------------
|
||||
|
||||
void adc0831_device::device_config_complete()
|
||||
{
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
// device_start - device-specific startup
|
||||
//-------------------------------------------------
|
||||
|
||||
void adc0831_device::device_start()
|
||||
{
|
||||
DEVICE_START_NAME( adc0831 )(this);
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
// device_reset - device-specific reset
|
||||
//-------------------------------------------------
|
||||
|
||||
void adc0831_device::device_reset()
|
||||
{
|
||||
DEVICE_RESET_NAME( adc0831 )(this);
|
||||
}
|
||||
|
||||
|
||||
const device_type ADC0832 = &device_creator<adc0832_device>;
|
||||
|
||||
adc0832_device::adc0832_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
|
||||
: adc0831_device(mconfig, ADC0832, "A/D Converters 0832", tag, owner, clock)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
const device_type ADC0834 = &device_creator<adc0834_device>;
|
||||
|
||||
adc0834_device::adc0834_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
|
||||
: adc0831_device(mconfig, ADC0834, "A/D Converters 0834", tag, owner, clock)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
const device_type ADC0838 = &device_creator<adc0838_device>;
|
||||
|
||||
adc0838_device::adc0838_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
|
||||
: adc0831_device(mconfig, ADC0838, "A/D Converters 0838", tag, owner, clock)
|
||||
READ_LINE_MEMBER( adc083x_device::do_read )
|
||||
{
|
||||
verboselog( 1, machine(), "adc083x_do_read( %s ) %d\n", tag(), m_do );
|
||||
return m_do;
|
||||
}
|
||||
|
@ -9,8 +9,18 @@
|
||||
#ifndef __ADC083X_H__
|
||||
#define __ADC083X_H__
|
||||
|
||||
#include "devlegcy.h"
|
||||
#include "emu.h"
|
||||
|
||||
/***************************************************************************
|
||||
TYPE DEFINITIONS
|
||||
***************************************************************************/
|
||||
|
||||
typedef double (*adc083x_input_convert_func)(device_t *device, UINT8 input);
|
||||
|
||||
struct adc083x_interface
|
||||
{
|
||||
adc083x_input_convert_func input_callback_r;
|
||||
};
|
||||
|
||||
/***************************************************************************
|
||||
CONSTANTS
|
||||
@ -32,52 +42,72 @@
|
||||
MACROS / CONSTANTS
|
||||
***************************************************************************/
|
||||
|
||||
class adc0831_device : public device_t
|
||||
class adc083x_device : public device_t
|
||||
{
|
||||
public:
|
||||
adc0831_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
|
||||
adc0831_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock);
|
||||
~adc0831_device() { global_free(m_token); }
|
||||
adc083x_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock);
|
||||
|
||||
DECLARE_WRITE_LINE_MEMBER( cs_write );
|
||||
DECLARE_WRITE_LINE_MEMBER( clk_write );
|
||||
DECLARE_WRITE_LINE_MEMBER( di_write );
|
||||
DECLARE_WRITE_LINE_MEMBER( se_write );
|
||||
DECLARE_READ_LINE_MEMBER( sars_read );
|
||||
DECLARE_READ_LINE_MEMBER( do_read );
|
||||
|
||||
// access to legacy token
|
||||
void *token() const { assert(m_token != NULL); return m_token; }
|
||||
protected:
|
||||
// device-level overrides
|
||||
virtual void device_config_complete();
|
||||
virtual void device_start();
|
||||
virtual void device_reset();
|
||||
|
||||
INT32 m_mux_bits;
|
||||
|
||||
private:
|
||||
UINT8 conversion();
|
||||
|
||||
void clear_sars();
|
||||
|
||||
// internal state
|
||||
void *m_token;
|
||||
INT32 m_cs;
|
||||
INT32 m_clk;
|
||||
INT32 m_di;
|
||||
INT32 m_se;
|
||||
INT32 m_sars;
|
||||
INT32 m_do;
|
||||
INT32 m_sgl;
|
||||
INT32 m_odd;
|
||||
INT32 m_sel1;
|
||||
INT32 m_sel0;
|
||||
INT32 m_state;
|
||||
INT32 m_bit;
|
||||
INT32 m_output;
|
||||
|
||||
adc083x_input_convert_func m_input_callback_r;
|
||||
};
|
||||
|
||||
extern const device_type ADC0831;
|
||||
class adc0831_device : public adc083x_device
|
||||
{
|
||||
public:
|
||||
adc0831_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
|
||||
};
|
||||
|
||||
class adc0832_device : public adc0831_device
|
||||
class adc0832_device : public adc083x_device
|
||||
{
|
||||
public:
|
||||
adc0832_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
|
||||
};
|
||||
|
||||
extern const device_type ADC0832;
|
||||
|
||||
class adc0834_device : public adc0831_device
|
||||
class adc0834_device : public adc083x_device
|
||||
{
|
||||
public:
|
||||
adc0834_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
|
||||
};
|
||||
|
||||
extern const device_type ADC0834;
|
||||
|
||||
class adc0838_device : public adc0831_device
|
||||
class adc0838_device : public adc083x_device
|
||||
{
|
||||
public:
|
||||
adc0838_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
|
||||
};
|
||||
|
||||
extern const device_type ADC0838;
|
||||
|
||||
|
||||
#define MCFG_ADC0831_ADD(_tag, _config) \
|
||||
MCFG_DEVICE_ADD(_tag, ADC0831, 0) \
|
||||
MCFG_DEVICE_CONFIG(_config)
|
||||
@ -94,28 +124,9 @@ extern const device_type ADC0838;
|
||||
MCFG_DEVICE_ADD(_tag, ADC0838, 0) \
|
||||
MCFG_DEVICE_CONFIG(_config)
|
||||
|
||||
|
||||
/***************************************************************************
|
||||
TYPE DEFINITIONS
|
||||
***************************************************************************/
|
||||
|
||||
typedef double (*adc083x_input_convert_func)(device_t *device, UINT8 input);
|
||||
|
||||
struct adc083x_interface
|
||||
{
|
||||
adc083x_input_convert_func input_callback_r;
|
||||
};
|
||||
|
||||
|
||||
/***************************************************************************
|
||||
PROTOTYPES
|
||||
***************************************************************************/
|
||||
|
||||
extern WRITE_LINE_DEVICE_HANDLER( adc083x_cs_write );
|
||||
extern WRITE_LINE_DEVICE_HANDLER( adc083x_clk_write );
|
||||
extern WRITE_LINE_DEVICE_HANDLER( adc083x_di_write );
|
||||
extern WRITE_LINE_DEVICE_HANDLER( adc083x_se_write );
|
||||
extern READ_LINE_DEVICE_HANDLER( adc083x_sars_read );
|
||||
extern READ_LINE_DEVICE_HANDLER( adc083x_do_read );
|
||||
extern const device_type ADC0831;
|
||||
extern const device_type ADC0832;
|
||||
extern const device_type ADC0834;
|
||||
extern const device_type ADC0838;
|
||||
|
||||
#endif /* __ADC083X_H__ */
|
||||
|
@ -62,28 +62,26 @@ void ds2401_device::device_reset()
|
||||
|
||||
if(m_region)
|
||||
{
|
||||
// Ensure the size is correct though
|
||||
if(m_region->bytes() != SIZE_DATA)
|
||||
logerror("ds2401 %s: Wrong region length for id data, expected 0x%x, got 0x%x\n",
|
||||
tag(),
|
||||
SIZE_DATA,
|
||||
m_region->bytes());
|
||||
else {
|
||||
UINT8 *rb = m_region->base();
|
||||
memcpy(data, rb, SIZE_DATA);
|
||||
if(m_region->bytes() == SIZE_DATA)
|
||||
{
|
||||
memcpy(data, m_region->base(), SIZE_DATA);
|
||||
return;
|
||||
}
|
||||
|
||||
logerror("ds2401 %s: Wrong region length for id data, expected 0x%x, got 0x%x\n", tag(), SIZE_DATA, m_region->bytes());
|
||||
}
|
||||
else
|
||||
{
|
||||
logerror("ds2401 %s: Warning, no id provided, answer will be all zeroes.\n", tag());
|
||||
}
|
||||
|
||||
// That chip is useless without an id, so bitch if there
|
||||
// isn't one
|
||||
logerror("ds2401 %s: Warning, no id provided, answer will be all zeroes.\n", tag());
|
||||
memset(data, 0, SIZE_DATA);
|
||||
}
|
||||
|
||||
void ds2401_device::device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr)
|
||||
{
|
||||
switch(id) {
|
||||
switch(id)
|
||||
{
|
||||
case TIMER_RESET:
|
||||
verboselog(1, "timer_reset\n");
|
||||
state = STATE_RESET;
|
||||
@ -91,7 +89,8 @@ void ds2401_device::device_timer(emu_timer &timer, device_timer_id id, int param
|
||||
break;
|
||||
|
||||
case TIMER_MAIN:
|
||||
switch(state) {
|
||||
switch(state)
|
||||
{
|
||||
case STATE_RESET1:
|
||||
verboselog(2, "timer_main state_reset1 %d\n", rx);
|
||||
tx = false;
|
||||
@ -109,18 +108,25 @@ void ds2401_device::device_timer(emu_timer &timer, device_timer_id id, int param
|
||||
|
||||
case STATE_COMMAND:
|
||||
verboselog(2, "timer_main state_command %d\n", rx);
|
||||
|
||||
shift >>= 1;
|
||||
if(rx)
|
||||
{
|
||||
shift |= 0x80;
|
||||
}
|
||||
|
||||
bit++;
|
||||
if(bit == 8) {
|
||||
switch(shift) {
|
||||
if(bit == 8)
|
||||
{
|
||||
switch(shift)
|
||||
{
|
||||
case COMMAND_READROM:
|
||||
verboselog(1, "timer_main readrom\n");
|
||||
bit = 0;
|
||||
byte = 0;
|
||||
state = STATE_READROM;
|
||||
break;
|
||||
|
||||
default:
|
||||
verboselog(0, "timer_main command not handled %02x\n", shift);
|
||||
state = STATE_IDLE;
|
||||
@ -131,10 +137,14 @@ void ds2401_device::device_timer(emu_timer &timer, device_timer_id id, int param
|
||||
|
||||
case STATE_READROM:
|
||||
tx = true;
|
||||
if(byte == SIZE_DATA) {
|
||||
|
||||
if(byte == SIZE_DATA)
|
||||
{
|
||||
verboselog(1, "timer_main readrom finished\n");
|
||||
state = STATE_IDLE;
|
||||
} else {
|
||||
}
|
||||
else
|
||||
{
|
||||
verboselog(2, "timer_main readrom window closed\n");
|
||||
}
|
||||
break;
|
||||
@ -145,51 +155,67 @@ void ds2401_device::device_timer(emu_timer &timer, device_timer_id id, int param
|
||||
}
|
||||
}
|
||||
|
||||
void ds2401_device::write(bool line)
|
||||
WRITE_LINE_MEMBER( ds2401_device::write )
|
||||
{
|
||||
verboselog(1, "write(%d)\n", line);
|
||||
verboselog(1, "write(%d)\n", state);
|
||||
|
||||
if(!line && rx) {
|
||||
switch(state) {
|
||||
if(!state && rx)
|
||||
{
|
||||
switch(state)
|
||||
{
|
||||
case STATE_IDLE:
|
||||
break;
|
||||
|
||||
case STATE_COMMAND:
|
||||
verboselog(2, "state_command\n");
|
||||
timer_main->adjust(t_samp);
|
||||
break;
|
||||
|
||||
case STATE_READROM:
|
||||
if(!bit) {
|
||||
if(!bit)
|
||||
{
|
||||
shift = data[7 - byte];
|
||||
verboselog(1, "<- data %02x\n", shift);
|
||||
}
|
||||
|
||||
tx = shift & 1;
|
||||
shift >>= 1;
|
||||
|
||||
bit++;
|
||||
if(bit == 8) {
|
||||
if(bit == 8)
|
||||
{
|
||||
bit = 0;
|
||||
byte++;
|
||||
}
|
||||
|
||||
verboselog(2, "state_readrom %d\n", tx);
|
||||
timer_main->adjust(t_rdv);
|
||||
break;
|
||||
|
||||
default:
|
||||
verboselog(0, "state not handled: %d\n", state );
|
||||
break;
|
||||
}
|
||||
|
||||
timer_reset->adjust(t_rstl);
|
||||
} else if(line && !rx) {
|
||||
switch(state) {
|
||||
}
|
||||
else if(state && !rx)
|
||||
{
|
||||
switch(state)
|
||||
{
|
||||
case STATE_RESET:
|
||||
state = STATE_RESET1;
|
||||
timer_main->adjust(t_pdh);
|
||||
break;
|
||||
}
|
||||
|
||||
timer_reset->adjust(attotime::never);
|
||||
}
|
||||
rx = line;
|
||||
|
||||
rx = state;
|
||||
}
|
||||
|
||||
bool ds2401_device::read()
|
||||
READ_LINE_MEMBER( ds2401_device::read )
|
||||
{
|
||||
verboselog(2, "read %d\n", tx && rx);
|
||||
return tx && rx;
|
||||
|
@ -20,8 +20,8 @@ public:
|
||||
// construction/destruction
|
||||
ds2401_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
|
||||
|
||||
void write(bool line);
|
||||
bool read();
|
||||
DECLARE_WRITE_LINE_MEMBER( write );
|
||||
DECLARE_READ_LINE_MEMBER( read );
|
||||
UINT8 direct_read(int index);
|
||||
|
||||
protected:
|
||||
|
@ -11,301 +11,14 @@
|
||||
#include "emu.h"
|
||||
#include "upd4701.h"
|
||||
|
||||
/***************************************************************************
|
||||
TYPE DEFINITIONS
|
||||
***************************************************************************/
|
||||
|
||||
struct upd4701_state
|
||||
{
|
||||
int cs;
|
||||
int xy;
|
||||
int ul;
|
||||
int resetx;
|
||||
int resety;
|
||||
int latchx;
|
||||
int latchy;
|
||||
int startx;
|
||||
int starty;
|
||||
int x;
|
||||
int y;
|
||||
int switches;
|
||||
int latchswitches;
|
||||
int cf;
|
||||
};
|
||||
|
||||
/* x,y increments can be 12bit (see MASK_COUNTER), hence we need a couple of
|
||||
16bit handlers in the following */
|
||||
|
||||
#define MASK_SWITCHES ( 7 )
|
||||
#define MASK_COUNTER ( 0xfff )
|
||||
|
||||
|
||||
/***************************************************************************
|
||||
INLINE FUNCTIONS
|
||||
***************************************************************************/
|
||||
|
||||
INLINE upd4701_state *get_safe_token(device_t *device)
|
||||
{
|
||||
assert(device != NULL);
|
||||
assert((device->type() == UPD4701));
|
||||
return (upd4701_state *)downcast<upd4701_device *>(device)->token();
|
||||
}
|
||||
|
||||
|
||||
/***************************************************************************
|
||||
IMPLEMENTATION
|
||||
***************************************************************************/
|
||||
|
||||
/*-------------------------------------------------
|
||||
upd4701_ul_w
|
||||
-------------------------------------------------*/
|
||||
|
||||
WRITE8_DEVICE_HANDLER( upd4701_ul_w )
|
||||
{
|
||||
upd4701_state *upd4701 = get_safe_token(device);
|
||||
upd4701->ul = data;
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
upd4701_xy_w
|
||||
-------------------------------------------------*/
|
||||
|
||||
WRITE8_DEVICE_HANDLER( upd4701_xy_w )
|
||||
{
|
||||
upd4701_state *upd4701 = get_safe_token(device);
|
||||
upd4701->xy = data;
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
upd4701_cs_w
|
||||
-------------------------------------------------*/
|
||||
|
||||
WRITE8_DEVICE_HANDLER( upd4701_cs_w )
|
||||
{
|
||||
upd4701_state *upd4701 = get_safe_token(device);
|
||||
|
||||
if (data != upd4701->cs)
|
||||
{
|
||||
upd4701->cs = data;
|
||||
|
||||
if (!upd4701->cs)
|
||||
{
|
||||
upd4701->latchx = (upd4701->x - upd4701->startx) & MASK_COUNTER;
|
||||
upd4701->latchy = (upd4701->y - upd4701->starty) & MASK_COUNTER;
|
||||
|
||||
upd4701->latchswitches = (~upd4701->switches) & MASK_SWITCHES;
|
||||
if (upd4701->latchswitches != 0)
|
||||
{
|
||||
upd4701->latchswitches |= 8;
|
||||
}
|
||||
|
||||
upd4701->cf = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
upd4701_resetx_w
|
||||
-------------------------------------------------*/
|
||||
|
||||
WRITE8_DEVICE_HANDLER( upd4701_resetx_w )
|
||||
{
|
||||
upd4701_state *upd4701 = get_safe_token(device);
|
||||
|
||||
if (upd4701->resetx != data)
|
||||
{
|
||||
upd4701->resetx = data;
|
||||
|
||||
if (upd4701->resetx)
|
||||
{
|
||||
upd4701->startx = upd4701->x;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
upd4701_resety_w
|
||||
-------------------------------------------------*/
|
||||
|
||||
WRITE8_DEVICE_HANDLER( upd4701_resety_w )
|
||||
{
|
||||
upd4701_state *upd4701 = get_safe_token(device);
|
||||
|
||||
if (upd4701->resety != data)
|
||||
{
|
||||
upd4701->resety = data;
|
||||
|
||||
if (upd4701->resety)
|
||||
{
|
||||
upd4701->starty = upd4701->y;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
upd4701_x_add
|
||||
-------------------------------------------------*/
|
||||
|
||||
WRITE16_DEVICE_HANDLER( upd4701_x_add )
|
||||
{
|
||||
upd4701_state *upd4701 = get_safe_token(device);
|
||||
|
||||
if (!upd4701->resetx && data != 0)
|
||||
{
|
||||
upd4701->x += data;
|
||||
|
||||
if (upd4701->cs)
|
||||
{
|
||||
upd4701->cf = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
upd4701_y_add
|
||||
-------------------------------------------------*/
|
||||
|
||||
WRITE16_DEVICE_HANDLER( upd4701_y_add )
|
||||
{
|
||||
upd4701_state *upd4701 = get_safe_token(device);
|
||||
|
||||
if (!upd4701->resety && data != 0)
|
||||
{
|
||||
upd4701->y += data;
|
||||
|
||||
if (upd4701->cs)
|
||||
{
|
||||
upd4701->cf = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
upd4701_switches_set
|
||||
-------------------------------------------------*/
|
||||
|
||||
WRITE8_DEVICE_HANDLER( upd4701_switches_set )
|
||||
{
|
||||
upd4701_state *upd4701 = get_safe_token(device);
|
||||
upd4701->switches = data;
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
upd4701_d_r
|
||||
-------------------------------------------------*/
|
||||
|
||||
READ16_DEVICE_HANDLER( upd4701_d_r )
|
||||
{
|
||||
upd4701_state *upd4701 = get_safe_token(device);
|
||||
int data;
|
||||
|
||||
if (upd4701->cs)
|
||||
{
|
||||
return 0xff;
|
||||
}
|
||||
|
||||
if (upd4701->xy)
|
||||
{
|
||||
data = upd4701->latchy;
|
||||
}
|
||||
else
|
||||
{
|
||||
data = upd4701->latchx;
|
||||
}
|
||||
|
||||
data |= upd4701->latchswitches << 12;
|
||||
|
||||
if (upd4701->ul)
|
||||
{
|
||||
return data >> 8;
|
||||
}
|
||||
else
|
||||
{
|
||||
return data & 0xff;
|
||||
}
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
upd4701_sf_r
|
||||
-------------------------------------------------*/
|
||||
|
||||
READ8_DEVICE_HANDLER( upd4701_sf_r )
|
||||
{
|
||||
upd4701_state *upd4701 = get_safe_token(device);
|
||||
|
||||
if ((upd4701->switches & MASK_SWITCHES) != MASK_SWITCHES)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
upd4701_cf_r
|
||||
-------------------------------------------------*/
|
||||
|
||||
READ8_DEVICE_HANDLER( upd4701_cf_r )
|
||||
{
|
||||
upd4701_state *upd4701 = get_safe_token(device);
|
||||
return upd4701->cf;
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
DEVICE_START( upd4701 )
|
||||
-------------------------------------------------*/
|
||||
|
||||
static DEVICE_START( upd4701 )
|
||||
{
|
||||
upd4701_state *upd4701 = get_safe_token(device);
|
||||
|
||||
/* register for state saving */
|
||||
device->save_item(NAME(upd4701->cs));
|
||||
device->save_item(NAME(upd4701->xy));
|
||||
device->save_item(NAME(upd4701->ul));
|
||||
device->save_item(NAME(upd4701->resetx));
|
||||
device->save_item(NAME(upd4701->resety));
|
||||
device->save_item(NAME(upd4701->latchx));
|
||||
device->save_item(NAME(upd4701->latchy));
|
||||
device->save_item(NAME(upd4701->startx));
|
||||
device->save_item(NAME(upd4701->starty));
|
||||
device->save_item(NAME(upd4701->x));
|
||||
device->save_item(NAME(upd4701->y));
|
||||
device->save_item(NAME(upd4701->switches));
|
||||
device->save_item(NAME(upd4701->latchswitches));
|
||||
device->save_item(NAME(upd4701->cf));
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
DEVICE_RESET( upd4701 )
|
||||
-------------------------------------------------*/
|
||||
|
||||
static DEVICE_RESET( upd4701 )
|
||||
{
|
||||
upd4701_state *upd4701 = get_safe_token(device);
|
||||
|
||||
upd4701->cs = 1;
|
||||
upd4701->xy = 0;
|
||||
upd4701->ul = 0;
|
||||
upd4701->resetx = 0;
|
||||
upd4701->resety = 0;
|
||||
upd4701->latchx = 0;
|
||||
upd4701->latchy = 0;
|
||||
upd4701->startx = 0;
|
||||
upd4701->starty = 0;
|
||||
upd4701->x = 0;
|
||||
upd4701->y = 0;
|
||||
upd4701->switches = 0;
|
||||
upd4701->latchswitches = 0;
|
||||
upd4701->cf = 1;
|
||||
}
|
||||
|
||||
const device_type UPD4701 = &device_creator<upd4701_device>;
|
||||
|
||||
upd4701_device::upd4701_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
|
||||
: device_t(mconfig, UPD4701, "NEC uPD4701 Encoder", tag, owner, clock)
|
||||
{
|
||||
m_token = global_alloc_clear(upd4701_state);
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
@ -324,7 +37,20 @@ void upd4701_device::device_config_complete()
|
||||
|
||||
void upd4701_device::device_start()
|
||||
{
|
||||
DEVICE_START_NAME( upd4701 )(this);
|
||||
save_item(NAME(m_cs));
|
||||
save_item(NAME(m_xy));
|
||||
save_item(NAME(m_ul));
|
||||
save_item(NAME(m_resetx));
|
||||
save_item(NAME(m_resety));
|
||||
save_item(NAME(m_latchx));
|
||||
save_item(NAME(m_latchy));
|
||||
save_item(NAME(m_startx));
|
||||
save_item(NAME(m_starty));
|
||||
save_item(NAME(m_x));
|
||||
save_item(NAME(m_y));
|
||||
save_item(NAME(m_switches));
|
||||
save_item(NAME(m_latchswitches));
|
||||
save_item(NAME(m_cf));
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
@ -333,5 +59,199 @@ void upd4701_device::device_start()
|
||||
|
||||
void upd4701_device::device_reset()
|
||||
{
|
||||
DEVICE_RESET_NAME( upd4701 )(this);
|
||||
m_cs = 1;
|
||||
m_xy = 0;
|
||||
m_ul = 0;
|
||||
m_resetx = 0;
|
||||
m_resety = 0;
|
||||
m_latchx = 0;
|
||||
m_latchy = 0;
|
||||
m_startx = 0;
|
||||
m_starty = 0;
|
||||
m_x = 0;
|
||||
m_y = 0;
|
||||
m_switches = 0;
|
||||
m_latchswitches = 0;
|
||||
m_cf = 1;
|
||||
}
|
||||
|
||||
/* x,y increments can be 12bit (see MASK_COUNTER), hence we need a couple of
|
||||
16bit handlers in the following */
|
||||
|
||||
/*-------------------------------------------------
|
||||
ul_w
|
||||
-------------------------------------------------*/
|
||||
|
||||
WRITE_LINE_MEMBER( upd4701_device::ul_w )
|
||||
{
|
||||
m_ul = state;
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
xy_w
|
||||
-------------------------------------------------*/
|
||||
|
||||
WRITE_LINE_MEMBER( upd4701_device::xy_w )
|
||||
{
|
||||
m_xy = state;
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
cs_w
|
||||
-------------------------------------------------*/
|
||||
|
||||
WRITE_LINE_MEMBER( upd4701_device::cs_w )
|
||||
{
|
||||
if (m_cs != state)
|
||||
{
|
||||
m_cs = state;
|
||||
|
||||
if (!m_cs)
|
||||
{
|
||||
m_latchx = (m_x - m_startx) & MASK_COUNTER;
|
||||
m_latchy = (m_y - m_starty) & MASK_COUNTER;
|
||||
|
||||
m_latchswitches = (~m_switches) & MASK_SWITCHES;
|
||||
if (m_latchswitches != 0)
|
||||
{
|
||||
m_latchswitches |= 8;
|
||||
}
|
||||
|
||||
m_cf = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
resetx_w
|
||||
-------------------------------------------------*/
|
||||
|
||||
WRITE_LINE_MEMBER( upd4701_device::resetx_w )
|
||||
{
|
||||
if (m_resetx != state)
|
||||
{
|
||||
m_resetx = state;
|
||||
|
||||
if (m_resetx)
|
||||
{
|
||||
m_startx = m_x;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
resety_w
|
||||
-------------------------------------------------*/
|
||||
|
||||
WRITE_LINE_MEMBER( upd4701_device::resety_w )
|
||||
{
|
||||
if (m_resety != state)
|
||||
{
|
||||
m_resety = state;
|
||||
|
||||
if (m_resety)
|
||||
{
|
||||
m_starty = m_y;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
x_add
|
||||
-------------------------------------------------*/
|
||||
|
||||
void upd4701_device::x_add( INT16 data )
|
||||
{
|
||||
if (!m_resetx && data != 0)
|
||||
{
|
||||
m_x += data;
|
||||
|
||||
if (m_cs)
|
||||
{
|
||||
m_cf = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
y_add
|
||||
-------------------------------------------------*/
|
||||
|
||||
void upd4701_device::y_add( INT16 data )
|
||||
{
|
||||
if (!m_resety && data != 0)
|
||||
{
|
||||
m_y += data;
|
||||
|
||||
if (m_cs)
|
||||
{
|
||||
m_cf = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
switches_set
|
||||
-------------------------------------------------*/
|
||||
|
||||
void upd4701_device::switches_set( UINT8 data )
|
||||
{
|
||||
m_switches = data;
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
d_r
|
||||
-------------------------------------------------*/
|
||||
|
||||
READ16_MEMBER( upd4701_device::d_r )
|
||||
{
|
||||
int data;
|
||||
|
||||
if (m_cs)
|
||||
{
|
||||
return 0xff;
|
||||
}
|
||||
|
||||
if (m_xy)
|
||||
{
|
||||
data = m_latchy;
|
||||
}
|
||||
else
|
||||
{
|
||||
data = m_latchx;
|
||||
}
|
||||
|
||||
data |= m_latchswitches << 12;
|
||||
|
||||
if (m_ul)
|
||||
{
|
||||
return data >> 8;
|
||||
}
|
||||
else
|
||||
{
|
||||
return data & 0xff;
|
||||
}
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
sf_r
|
||||
-------------------------------------------------*/
|
||||
|
||||
READ_LINE_MEMBER( upd4701_device::sf_r )
|
||||
{
|
||||
if ((m_switches & MASK_SWITCHES) != MASK_SWITCHES)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
cf_r
|
||||
-------------------------------------------------*/
|
||||
|
||||
READ_LINE_MEMBER( upd4701_device::cf_r )
|
||||
{
|
||||
return m_cf;
|
||||
}
|
||||
|
@ -19,10 +19,21 @@ class upd4701_device : public device_t
|
||||
{
|
||||
public:
|
||||
upd4701_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
|
||||
~upd4701_device() { global_free(m_token); }
|
||||
|
||||
// access to legacy token
|
||||
void *token() const { assert(m_token != NULL); return m_token; }
|
||||
void x_add( INT16 data );
|
||||
void y_add( INT16 data );
|
||||
void switches_set( UINT8 data );
|
||||
|
||||
DECLARE_WRITE_LINE_MEMBER( cs_w );
|
||||
DECLARE_WRITE_LINE_MEMBER( xy_w );
|
||||
DECLARE_WRITE_LINE_MEMBER( ul_w );
|
||||
DECLARE_WRITE_LINE_MEMBER( resetx_w );
|
||||
DECLARE_WRITE_LINE_MEMBER( resety_w );
|
||||
|
||||
DECLARE_READ16_MEMBER( d_r );
|
||||
DECLARE_READ_LINE_MEMBER( cf_r );
|
||||
DECLARE_READ_LINE_MEMBER( sf_r );
|
||||
|
||||
protected:
|
||||
// device-level overrides
|
||||
virtual void device_config_complete();
|
||||
@ -30,7 +41,20 @@ protected:
|
||||
virtual void device_reset();
|
||||
private:
|
||||
// internal state
|
||||
void *m_token;
|
||||
int m_cs;
|
||||
int m_xy;
|
||||
int m_ul;
|
||||
int m_resetx;
|
||||
int m_resety;
|
||||
int m_latchx;
|
||||
int m_latchy;
|
||||
int m_startx;
|
||||
int m_starty;
|
||||
int m_x;
|
||||
int m_y;
|
||||
int m_switches;
|
||||
int m_latchswitches;
|
||||
int m_cf;
|
||||
};
|
||||
|
||||
extern const device_type UPD4701;
|
||||
@ -39,23 +63,4 @@ extern const device_type UPD4701;
|
||||
#define MCFG_UPD4701_ADD(_tag) \
|
||||
MCFG_DEVICE_ADD(_tag, UPD4701, 0)
|
||||
|
||||
|
||||
/***************************************************************************
|
||||
PROTOTYPES
|
||||
***************************************************************************/
|
||||
|
||||
extern DECLARE_WRITE8_DEVICE_HANDLER( upd4701_cs_w );
|
||||
extern DECLARE_WRITE8_DEVICE_HANDLER( upd4701_xy_w );
|
||||
extern DECLARE_WRITE8_DEVICE_HANDLER( upd4701_ul_w );
|
||||
extern DECLARE_WRITE8_DEVICE_HANDLER( upd4701_resetx_w );
|
||||
extern DECLARE_WRITE8_DEVICE_HANDLER( upd4701_resety_w );
|
||||
extern DECLARE_WRITE16_DEVICE_HANDLER( upd4701_x_add );
|
||||
extern DECLARE_WRITE16_DEVICE_HANDLER( upd4701_y_add );
|
||||
extern DECLARE_WRITE8_DEVICE_HANDLER( upd4701_switches_set );
|
||||
|
||||
extern DECLARE_READ16_DEVICE_HANDLER( upd4701_d_r );
|
||||
extern DECLARE_READ8_DEVICE_HANDLER( upd4701_cf_r );
|
||||
extern DECLARE_READ8_DEVICE_HANDLER( upd4701_sf_r );
|
||||
|
||||
|
||||
#endif /* __UPD4701_H__ */
|
||||
|
@ -1442,12 +1442,12 @@ static INPUT_PORTS_START( racinfrc )
|
||||
PORT_INCLUDE( konamigx )
|
||||
|
||||
PORT_START("ADC-WRPORT")
|
||||
PORT_BIT( 0x1000000, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE("adc0834", adc083x_clk_write)
|
||||
PORT_BIT( 0x2000000, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE("adc0834", adc083x_di_write)
|
||||
PORT_BIT( 0x4000000, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE("adc0834", adc083x_cs_write)
|
||||
PORT_BIT( 0x1000000, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("adc0834", adc083x_device, clk_write)
|
||||
PORT_BIT( 0x2000000, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("adc0834", adc083x_device, di_write)
|
||||
PORT_BIT( 0x4000000, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("adc0834", adc083x_device, cs_write)
|
||||
|
||||
PORT_START("ADC-RDPORT")
|
||||
PORT_BIT( 0x1000000, IP_ACTIVE_LOW, IPT_SPECIAL ) PORT_READ_LINE_DEVICE("adc0834", adc083x_do_read)
|
||||
PORT_BIT( 0x1000000, IP_ACTIVE_LOW, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER("adc0834", adc083x_device, do_read)
|
||||
|
||||
PORT_START("AN0") /* mask default type sens delta min max */
|
||||
PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_MINMAX(0x38,0xc8) PORT_SENSITIVITY(35) PORT_KEYDELTA(35) PORT_REVERSE
|
||||
|
@ -536,7 +536,8 @@ public:
|
||||
m_psxirq(*this, ":maincpu:irq"),
|
||||
m_cr589(*this, ":cdrom"),
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_ram(*this, "maincpu:ram")
|
||||
m_ram(*this, "maincpu:ram"),
|
||||
m_upd4701(*this, "upd4701")
|
||||
{
|
||||
}
|
||||
|
||||
@ -651,8 +652,8 @@ public:
|
||||
void atapi_init();
|
||||
void cdrom_dma_read( UINT32 *ram, UINT32 n_address, INT32 n_size );
|
||||
void cdrom_dma_write( UINT32 *ram, UINT32 n_address, INT32 n_size );
|
||||
void flash_init( );
|
||||
void update_mode( );
|
||||
void flash_init();
|
||||
void update_mode();
|
||||
void sys573_vblank(screen_device &screen, bool vblank_state);
|
||||
void gx700pwbf_output( int offset, UINT8 data );
|
||||
void gx700pwfbf_init( void (ksys573_state::*output_callback_func)( int offset, int data ) );
|
||||
@ -671,6 +672,7 @@ public:
|
||||
void punchmania_output_callback( int offset, int data );
|
||||
required_device<psxcpu_device> m_maincpu;
|
||||
required_device<ram_device> m_ram;
|
||||
optional_device<upd4701_device> m_upd4701;
|
||||
};
|
||||
|
||||
void ATTR_PRINTF(3,4) ksys573_state::verboselog( int n_level, const char *s_fmt, ... )
|
||||
@ -1510,31 +1512,30 @@ todo:
|
||||
|
||||
READ32_MEMBER(ksys573_state::ge765pwbba_r)
|
||||
{
|
||||
device_t *upd4701 = machine().device("upd4701");
|
||||
UINT32 data = 0;
|
||||
|
||||
switch (offset)
|
||||
{
|
||||
case 0x26:
|
||||
upd4701_y_add(upd4701, space, 0, ioport("uPD4701_y")->read_safe(0), 0xffff);
|
||||
upd4701_switches_set(upd4701, space, 0, ioport("uPD4701_switches")->read_safe(0));
|
||||
m_upd4701->y_add(ioport("uPD4701_y")->read_safe(0));
|
||||
m_upd4701->switches_set(ioport("uPD4701_switches")->read_safe(0));
|
||||
|
||||
upd4701_cs_w(upd4701, space, 0, 0);
|
||||
upd4701_xy_w(upd4701, space, 0, 1);
|
||||
m_upd4701->cs_w(0);
|
||||
m_upd4701->xy_w(1);
|
||||
|
||||
if (ACCESSING_BITS_0_7)
|
||||
{
|
||||
upd4701_ul_w(upd4701, space, 0, 0);
|
||||
data |= upd4701_d_r(upd4701, space, 0, 0xffff) << 0;
|
||||
m_upd4701->ul_w(0);
|
||||
data |= m_upd4701->d_r(space, 0, 0xffff) << 0;
|
||||
}
|
||||
|
||||
if (ACCESSING_BITS_16_23)
|
||||
{
|
||||
upd4701_ul_w(upd4701, space, 0, 1);
|
||||
data |= upd4701_d_r(upd4701, space, 0, 0xffff) << 16;
|
||||
m_upd4701->ul_w(1);
|
||||
data |= m_upd4701->d_r(space, 0, 0xffff) << 16;
|
||||
}
|
||||
|
||||
upd4701_cs_w(upd4701, space, 0, 1);
|
||||
m_upd4701->cs_w(1);
|
||||
break;
|
||||
|
||||
default:
|
||||
@ -1548,7 +1549,6 @@ READ32_MEMBER(ksys573_state::ge765pwbba_r)
|
||||
|
||||
WRITE32_MEMBER(ksys573_state::ge765pwbba_w)
|
||||
{
|
||||
device_t *upd4701 = machine().device("upd4701");
|
||||
switch (offset)
|
||||
{
|
||||
case 0x04:
|
||||
@ -1571,8 +1571,8 @@ WRITE32_MEMBER(ksys573_state::ge765pwbba_w)
|
||||
case 0x28:
|
||||
if (ACCESSING_BITS_0_7)
|
||||
{
|
||||
upd4701_resety_w(upd4701, space, 0, 1);
|
||||
upd4701_resety_w(upd4701, space, 0, 0);
|
||||
m_upd4701->resety_w(1);
|
||||
m_upd4701->resety_w(0);
|
||||
}
|
||||
break;
|
||||
|
||||
@ -2999,12 +2999,11 @@ CUSTOM_INPUT_MEMBER(ksys573_state::gunmania_cable_holder_sensor)
|
||||
READ32_MEMBER(ksys573_state::gunmania_r)
|
||||
{
|
||||
UINT32 data = 0;
|
||||
ds2401_device *ds2401 = machine().device<ds2401_device>("gunmania_id");
|
||||
|
||||
switch( offset )
|
||||
{
|
||||
case 0x20:
|
||||
data = ioport( "GUNX" )->read() | ds2401->read() << 7;
|
||||
data = ioport( "GUNX" )->read();
|
||||
break;
|
||||
|
||||
case 0x22:
|
||||
@ -3351,9 +3350,9 @@ static INPUT_PORTS_START( konami573 )
|
||||
PORT_BIT( 0xffffffff, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
|
||||
PORT_START("OUT0")
|
||||
PORT_BIT( 0x00000002, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE("adc0834", adc083x_cs_write)
|
||||
PORT_BIT( 0x00000004, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE("adc0834", adc083x_clk_write)
|
||||
PORT_BIT( 0x00000001, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE("adc0834", adc083x_di_write)
|
||||
PORT_BIT( 0x00000002, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("adc0834", adc083x_device, cs_write)
|
||||
PORT_BIT( 0x00000004, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("adc0834", adc083x_device, clk_write)
|
||||
PORT_BIT( 0x00000001, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("adc0834", adc083x_device, di_write)
|
||||
|
||||
PORT_START("IN1")
|
||||
PORT_DIPNAME( 0x00000001, 0x00000001, "Unused 1" ) PORT_DIPLOCATION( "DIP SW:1" )
|
||||
@ -3379,7 +3378,7 @@ static INPUT_PORTS_START( konami573 )
|
||||
// PORT_BIT( 0x00002000, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
// PORT_BIT( 0x00004000, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
// PORT_BIT( 0x00008000, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x00010000, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE("adc0834", adc083x_do_read)
|
||||
PORT_BIT( 0x00010000, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER("adc0834", adc083x_device, do_read)
|
||||
// PORT_BIT( 0x00020000, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x00040000, IP_ACTIVE_HIGH, IPT_SPECIAL ) /* x76f041/zs01 sda */
|
||||
PORT_BIT( 0x00080000, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
@ -3617,6 +3616,7 @@ static INPUT_PORTS_START( gunmania )
|
||||
|
||||
PORT_START("GUNX")
|
||||
PORT_BIT( 0x7f, 0x2f, IPT_LIGHTGUN_X ) PORT_CROSSHAIR(X, 1.0, 0.0, 0) PORT_MINMAX(0x00,0x5f) PORT_SENSITIVITY(100) PORT_KEYDELTA(15) PORT_PLAYER(1)
|
||||
PORT_BIT( 0x00000080, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER("gunmania_id", ds2401_device, read)
|
||||
|
||||
PORT_START("GUNY")
|
||||
PORT_BIT( 0x7f, 0x1f, IPT_LIGHTGUN_Y ) PORT_CROSSHAIR(Y, 1.0, 0.0, 0) PORT_MINMAX(0x00,0x3f) PORT_SENSITIVITY(100) PORT_KEYDELTA(15) PORT_PLAYER(1)
|
||||
@ -3704,14 +3704,14 @@ static INPUT_PORTS_START( punchmania )
|
||||
PORT_INCLUDE( konami573 )
|
||||
|
||||
PORT_MODIFY("IN1")
|
||||
PORT_BIT( 0x00000100, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE("adc0838", adc083x_do_read)
|
||||
PORT_BIT( 0x00000200, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE("adc0838", adc083x_sars_read)
|
||||
PORT_BIT( 0x00000100, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER("adc0838", adc083x_device, do_read)
|
||||
PORT_BIT( 0x00000200, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER("adc0838", adc083x_device, sars_read)
|
||||
PORT_BIT( 0x02000000, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
|
||||
PORT_START( "OUT1" )
|
||||
PORT_BIT( 0x00000001, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE("adc0838", adc083x_cs_write)
|
||||
PORT_BIT( 0x00000002, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE("adc0838", adc083x_clk_write)
|
||||
PORT_BIT( 0x00000020, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE("adc0838", adc083x_di_write)
|
||||
PORT_BIT( 0x00000001, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("adc0838", adc083x_device, cs_write)
|
||||
PORT_BIT( 0x00000002, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("adc0838", adc083x_device, clk_write)
|
||||
PORT_BIT( 0x00000020, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("adc0838", adc083x_device, di_write)
|
||||
|
||||
PORT_MODIFY("IN2")
|
||||
PORT_BIT( 0x00000001, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_16WAY PORT_PLAYER(1) PORT_NAME( "Select L" ) /* P2 LEFT */
|
||||
@ -5592,112 +5592,112 @@ ROM_START( salarymc )
|
||||
DISK_IMAGE_READONLY( "gca18jaa", 0, SHA1(8adcc8ef76cbfb9f47fec5702b0b200565b5c561) )
|
||||
ROM_END
|
||||
|
||||
GAME( 1997, sys573, 0, konami573, konami573, ksys573_state, konami573, ROT0, "Konami", "System 573 BIOS", GAME_IS_BIOS_ROOT )
|
||||
GAME( 1997, sys573, 0, konami573, konami573, ksys573_state, konami573, ROT0, "Konami", "System 573 BIOS", GAME_IS_BIOS_ROOT )
|
||||
|
||||
GAME( 1997, hndlchmp, sys573, konami573, hndlchmp, ksys573_state, konami573, ROT0, "Konami", "Handle Champ (GQ710 VER. JAB)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1998, darkhleg, sys573, konami573x, konami573, ksys573_state, konami573, ROT0, "Konami", "Dark Horse Legend (GX706 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1998, fbaitbc, sys573, k573baitx, fbaitbc, ksys573_state, ge765pwbba, ROT0, "Konami", "Fisherman's Bait - A Bass Challenge (GE765 VER. UAB)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1998, bassangl, fbaitbc, k573baitx, fbaitbc, ksys573_state, ge765pwbba, ROT0, "Konami", "Bass Angler (GE765 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1998, pbballex, sys573, konami573x, konami573, ksys573_state, konami573, ROT0, "Konami", "Powerful Pro Baseball EX (GX802 VER. JAB)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1998, konam80s, sys573, konami573x, konami573, ksys573_state, konami573, ROT90, "Konami", "Konami 80's AC Special (GC826 VER. EAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1998, konam80u, konam80s, konami573x, konami573, ksys573_state, konami573, ROT90, "Konami", "Konami 80's AC Special (GC826 VER. UAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1998, konam80j, konam80s, konami573x, konami573, ksys573_state, konami573, ROT90, "Konami", "Konami 80's Gallery (GC826 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1998, konam80a, konam80s, konami573x, konami573, ksys573_state, konami573, ROT90, "Konami", "Konami 80's AC Special (GC826 VER. AAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1998, konam80k, konam80s, konami573x, konami573, ksys573_state, konami573, ROT90, "Konami", "Konami 80's AC Special (GC826 VER. KAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, dstage, sys573, konami573x, ddr, ksys573_state, ddr, ROT0, "Konami", "Dancing Stage (GN845 VER. EAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, ddru, dstage, konami573x, ddr, ksys573_state, ddr, ROT0, "Konami", "Dance Dance Revolution (GN845 VER. UAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1998, ddrj, dstage, konami573x, ddr, ksys573_state, ddr, ROT0, "Konami", "Dance Dance Revolution - Internet Ranking Ver (GC845 VER. JBA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1998, ddrja, dstage, konami573x, ddr, ksys573_state, ddr, ROT0, "Konami", "Dance Dance Revolution (GC845 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING )
|
||||
GAME( 1998, ddrjb, dstage, konami573x, ddr, ksys573_state, ddr, ROT0, "Konami", "Dance Dance Revolution (GC845 VER. JAB)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING )
|
||||
GAME( 1999, ddra, dstage, konami573x, ddr, ksys573_state, ddr, ROT0, "Konami", "Dance Dance Revolution (GN845 VER. AAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1998, fbait2bc, sys573, k573baitx, fbaitbc, ksys573_state, ge765pwbba, ROT0, "Konami", "Fisherman's Bait 2 - A Bass Challenge (GE865 VER. UAB)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1998, bassang2, fbait2bc, k573baitx, fbaitbc, ksys573_state, ge765pwbba, ROT0, "Konami", "Bass Angler 2 (GE865 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1998, hyperbbc, sys573, konami573, hyperbbc, ksys573_state, konami573, ROT0, "Konami", "Hyper Bishi Bashi Champ (GQ876 VER. EAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1998, hyperbbca,hyperbbc, konami573, hyperbbc, ksys573_state, konami573, ROT0, "Konami", "Hyper Bishi Bashi Champ (GQ876 VER. AAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, gchgchmp, sys573, pccard1x, gchgchmp, ksys573_state, konami573, ROT0, "Konami", "Gachaga Champ (GE877 VER. JAB)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, drmn, sys573, konami573x, drmn, ksys573_state, drmn, ROT0, "Konami", "DrumMania (GQ881 VER. JAD)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING )
|
||||
GAME( 1999, gtrfrks, sys573, konami573x, gtrfrks, ksys573_state, gtrfrks, ROT0, "Konami", "Guitar Freaks (GQ886 VER. EAC)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, gtrfrksu, gtrfrks, konami573x, gtrfrks, ksys573_state, gtrfrks, ROT0, "Konami", "Guitar Freaks (GQ886 VER. UAC)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, gtrfrksj, gtrfrks, konami573x, gtrfrks, ksys573_state, gtrfrks, ROT0, "Konami", "Guitar Freaks (GQ886 VER. JAC)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, gtrfrksa, gtrfrks, konami573x, gtrfrks, ksys573_state, gtrfrks, ROT0, "Konami", "Guitar Freaks (GQ886 VER. AAC)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, fbaitmc, sys573, k573baitx, fbaitmc, ksys573_state, ge765pwbba, ROT0, "Konami", "Fisherman's Bait - Marlin Challenge (GX889 VER. EA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, fbaitmcu, fbaitmc, k573baitx, fbaitmc, ksys573_state, ge765pwbba, ROT0, "Konami", "Fisherman's Bait - Marlin Challenge (GX889 VER. UA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, fbaitmcj, fbaitmc, k573baitx, fbaitmc, ksys573_state, ge765pwbba, ROT0, "Konami", "Fisherman's Bait - Marlin Challenge (GX889 VER. JA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, fbaitmca, fbaitmc, k573baitx, fbaitmc, ksys573_state, ge765pwbba, ROT0, "Konami", "Fisherman's Bait - Marlin Challenge (GX889 VER. AA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, ddr2m, sys573, konami573x, ddr, ksys573_state, ddr, ROT0, "Konami", "Dance Dance Revolution 2nd Mix (GN895 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, ddr2ml, ddr2m, pccard1x, ddr, ksys573_state, ddr, ROT0, "Konami", "Dance Dance Revolution 2nd Mix - Link Ver (GE885 VER. JAB)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, ddr2mla, ddr2m, pccard1x, ddr, ksys573_state, ddr, ROT0, "Konami", "Dance Dance Revolution 2nd Mix - Link Ver (GE885 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, ddrbocd, ddr2m, pccard1x, ddr, ksys573_state, ddr, ROT0, "Konami", "Dance Dance Revolution Best of Cool Dancers (GE892 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, ddr2mc, ddr2m, konami573x, ddr, ksys573_state, ddr, ROT0, "Konami", "Dance Dance Revolution 2nd Mix with beatmaniaIIDX CLUB VERSiON (GE896 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, ddr2mc2, ddr2m, konami573x, ddr, ksys573_state, ddr, ROT0, "Konami", "Dance Dance Revolution 2nd Mix with beatmaniaIIDX substream CLUB VERSiON 2 (GE984 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, gtrfrk2m, sys573, pccard1yi, gtrfrks, ksys573_state, gtrfrks, ROT0, "Konami", "Guitar Freaks 2nd Mix Ver 1.01 (GQ883 VER. JAD)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, dsftkd, sys573, konami573yi, ddr, ksys573_state, ddr, ROT0, "Konami", "Dancing Stage featuring TRUE KiSS DESTiNATiON (G*884 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, cr589fw, sys573, konami573, konami573, ksys573_state, konami573, ROT0, "Konami", "CD-ROM Drive Updater 2.0 (700B04)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, cr589fwa, sys573, konami573, konami573, ksys573_state, konami573, ROT0, "Konami", "CD-ROM Drive Updater (700A04)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 2000, ddr3mk, sys573, pccard2dyyi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Dance Dance Revolution 3rd Mix - Ver.Korea2 (GN887 VER. KBA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.3 */
|
||||
GAME( 2000, ddr3mka, ddr3mk, pccard2dyyi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Dance Dance Revolution 3rd Mix - Ver.Korea (GN887 VER. KAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.3 */
|
||||
GAME( 1999, ddr3ma, ddr3mk, pccard2dyyi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Dance Dance Revolution 3rd Mix (GN887 VER. AAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.1 */
|
||||
GAME( 1999, ddr3mj, ddr3mk, pccard2dyyi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Dance Dance Revolution 3rd Mix (GN887 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.0 */
|
||||
GAME( 1999, ddrsbm, sys573, k573dyi, ddrsolo, ksys573_state, ddrsolo, ROT0, "Konami", "Dance Dance Revolution Solo Bass Mix (GQ894 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING )
|
||||
GAME( 1999, ddrs2k, sys573, k573dyyi, ddrsolo, ksys573_state, ddrsolo, ROT0, "Konami", "Dance Dance Revolution Solo 2000 (GC905 VER. AAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.3 */
|
||||
GAME( 1999, ddrs2kj, ddrs2k, k573dyyi, ddrsolo, ksys573_state, ddrsolo, ROT0, "Konami", "Dance Dance Revolution Solo 2000 (GC905 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.2 */
|
||||
GAME( 1999, hypbbc2p, sys573, konami573y, hypbbc2p, ksys573_state, hyperbbc, ROT0, "Konami", "Hyper Bishi Bashi Champ - 2 Player (GX908 1999/08/24 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, hypbbc2pk,hypbbc2p, konami573y, hypbbc2p, ksys573_state, hyperbbc, ROT0, "Konami", "Hyper Bishi Bashi Champ - 2 Player (GX908 1999/08/24 VER. KAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, dsfdct, sys573, pccard2dyyi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Dancing Stage featuring Dreams Come True (GC910 VER. JCA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING )
|
||||
GAME( 1999, dsfdcta, dsfdct, pccard2yyi, ddr, ksys573_state, ddr, ROT0, "Konami", "Dancing Stage featuring Dreams Come True (GC910 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, drmn2m, sys573, k573dxzi, drmn, ksys573_state, drmndigital,ROT0, "Konami", "DrumMania 2nd Mix (GE912 VER. JAB)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.5 */
|
||||
GAME( 1999, drmn2mpu, drmn2m, k573dxzi, drmn, ksys573_state, drmndigital,ROT0, "Konami", "DrumMania 2nd Mix Session Power Up Kit (GE912 VER. JAB)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.5 */
|
||||
GAME( 2000, dncfrks, sys573, k573dzi, dmx, ksys573_state, dmx, ROT0, "Konami", "Dance Freaks (G*874 VER. KAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.6 */
|
||||
GAME( 2000, dmx, dncfrks, k573dzi, dmx, ksys573_state, dmx, ROT0, "Konami", "Dance Maniax (G*874 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.6 */
|
||||
GAME( 2000, gunmania, sys573, gunmania, gunmania, ksys573_state, gunmania, ROT0, "Konami", "GunMania (GL906 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING )
|
||||
GAME( 2000, fghtmn, sys573, punchmania, punchmania, ksys573_state,punchmania, ROT0, "Konami", "Fighting Mania (QG918 VER. EAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* motor/artwork/network */
|
||||
GAME( 2000, fghtmna, fghtmn, punchmania, punchmania, ksys573_state,punchmania, ROT0, "Konami", "Fighting Mania (QG918 VER. AAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* motor/artwork/network */
|
||||
GAME( 2000, pnchmn, fghtmn, punchmania, punchmania, ksys573_state,punchmania, ROT0, "Konami", "Punch Mania: Hokuto No Ken (GQ918 VER. JAB)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* motor/artwork/network */
|
||||
GAME( 2000, pnchmna, fghtmn, punchmania, punchmania, ksys573_state,punchmania, ROT0, "Konami", "Punch Mania: Hokuto No Ken (GQ918 VER. JAB ALT CD)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* motor/artwork/network */
|
||||
GAME( 2000, fghtmnk, fghtmn, punchmania, punchmania, ksys573_state,punchmania, ROT0, "Konami", "Fighting Mania (QG918 VER. KAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* motor/artwork/network */
|
||||
GAME( 2000, fghtmnu, fghtmn, punchmania, punchmania, ksys573_state,punchmania, ROT0, "Konami", "Fighting Mania (QG918 VER. UAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* motor/artwork/network */
|
||||
GAME( 2000, dsem, sys573, k573dxi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Dancing Stage Euro Mix (G*936 VER. EAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.7 */
|
||||
GAME( 2000, gtrfrk3m, sys573, pccard1dxzi, gtrfrks, ksys573_state, gtrfrkdigital,ROT0, "Konami", "Guitar Freaks 3rd Mix (GE949 VER. JAC)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.4 */
|
||||
GAME( 2000, gtfrk3ma, gtrfrk3m, pccard1dxzi, gtrfrks, ksys573_state, gtrfrkdigital,ROT0, "Konami", "Guitar Freaks 3rd Mix (GE949 VER. JAB)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.4 */
|
||||
GAME( 2000, gtfrk3mb, gtrfrk3m, pccard1dzi, gtrfrks, ksys573_state, gtrfrkdigital,ROT0, "Konami", "Guitar Freaks 3rd Mix - security cassette versionup (949JAZ02)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.4 */
|
||||
GAME( 2000, pnchmn2, sys573, punchmania2, punchmania, ksys573_state,punchmania, ROT0, "Konami", "Punch Mania 2: Hokuto No Ken (GQA09 JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* motor/artwork/network */
|
||||
GAME( 2000, salarymc, sys573, konami573yi, hypbbc2p, ksys573_state, salarymc, ROT0, "Konami", "Salary Man Champ (GCA18 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 2000, ddr3mp, sys573, pccard2dxzi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Dance Dance Revolution 3rd Mix Plus (G*A22 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.6 */
|
||||
GAME( 2000, pcnfrk3m, sys573, k573dxzi, drmn, ksys573_state, drmndigital,ROT0, "Konami", "Percussion Freaks 3rd Mix (G*A23 VER. KAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.8 */
|
||||
GAME( 2000, drmn3m, pcnfrk3m, k573dxzi, drmn, ksys573_state, drmndigital,ROT0, "Konami", "DrumMania 3rd Mix (G*A23 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.8 */
|
||||
GAME( 2000, gtrfrk4m, sys573, pccard1dxzi, gtrfrks, ksys573_state, gtrfrkdigital,ROT0, "Konami", "Guitar Freaks 4th Mix (G*A24 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.8 */
|
||||
GAME( 2000, ddr4m, sys573, pccard2dxzi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Dance Dance Revolution 4th Mix (G*A33 VER. AAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.8 */
|
||||
GAME( 2000, ddr4mj, ddr4m, pccard2dxzi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Dance Dance Revolution 4th Mix (G*A33 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.8 */
|
||||
GAME( 2000, ddr4ms, sys573, pccard2dxzi, ddrsolo, ksys573_state, ddrsolo, ROT0, "Konami", "Dance Dance Revolution 4th Mix Solo (G*A33 VER. ABA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.8 */
|
||||
GAME( 2000, ddr4msj, ddr4ms, pccard2dxzi, ddrsolo, ksys573_state, ddrsolo, ROT0, "Konami", "Dance Dance Revolution 4th Mix Solo (G*A33 VER. JBA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.8 */
|
||||
GAME( 2000, dsfdr, sys573, k573dxzi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Dancing Stage Featuring Disney's Rave (GCA37JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.8 */
|
||||
GAME( 2000, ddrusa, sys573, k573dx, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Dance Dance Revolution USA (G*A44 VER. UAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.8 */
|
||||
GAME( 2000, ddr4mp, sys573, pccard2dxzi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Dance Dance Revolution 4th Mix Plus (G*A34 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.9 */
|
||||
GAME( 2000, ddr4mps, sys573, pccard2dxzi, ddrsolo, ksys573_state, ddrsolo, ROT0, "Konami", "Dance Dance Revolution 4th Mix Plus Solo (G*A34 VER. JBA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.9 */
|
||||
GAME( 2000, dmx2m, sys573, k573dzi, dmx, ksys573_state, dmx, ROT0, "Konami", "Dance Maniax 2nd Mix (G*A39 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.9 */
|
||||
GAME( 2000, drmn4m, sys573, k573dzi, drmn, ksys573_state, drmndigital,ROT0, "Konami", "DrumMania 4th Mix (G*A25 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.8 */
|
||||
GAME( 2001, gtrfrk5m, sys573, pccard1dzi, gtrfrks, ksys573_state, gtrfrkdigital,ROT0, "Konami", "Guitar Freaks 5th Mix (G*A26 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.9 */
|
||||
GAME( 2001, ddr5m, sys573, pccard2dzi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Dance Dance Revolution 5th Mix (G*A27 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.9 */
|
||||
GAME( 2001, dmx2majp, sys573, konami573zi, dmx, ksys573_state, dmx, ROT0, "Konami", "Dance Maniax 2nd Mix Append J-Paradise (G*A38 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.9 */
|
||||
GAME( 2001, mamboagg, sys573, k573dzi, mamboagg, ksys573_state, mamboagg, ROT0, "Konami", "Mambo A Go-Go (GQA40 VER. JAB)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2001, drmn5m, sys573, k573dzi, drmn, ksys573_state, drmndigital,ROT0, "Konami", "DrumMania 5th Mix (G*B05 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.9 */
|
||||
GAME( 2001, gtrfrk6m, sys573, pccard1dzi, gtrfrks, ksys573_state, gtrfrkdigital,ROT0, "Konami", "Guitar Freaks 6th Mix (G*B06 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.9 */
|
||||
GAME( 2001, drmn6m, sys573, k573dzi, drmn, ksys573_state, drmndigital,ROT0, "Konami", "DrumMania 6th Mix (G*B16 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2001, gtrfrk7m, sys573, pccard1dzi, gtrfrks, ksys573_state, gtrfrkdigital,ROT0, "Konami", "Guitar Freaks 7th Mix (G*B17 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2001, ddrmax, sys573, pccard2dzi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "DDR Max - Dance Dance Revolution 6th Mix (G*B19 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.9 */
|
||||
GAME( 2002, ddrmax2, sys573, pccard2dzi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "DDR Max 2 - Dance Dance Revolution 7th Mix (G*B20 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2002, mrtlbeat, sys573, pccard2dzi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Martial Beat (G*B47 VER. JBA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.9 */
|
||||
GAME( 2002, drmn7m, sys573, k573dzi, drmn, ksys573_state, drmndigital,ROT0, "Konami", "DrumMania 7th Mix power-up ver. (G*C07 VER. JBA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2002, drmn7ma, drmn7m, k573dzi, drmn, ksys573_state, drmndigital,ROT0, "Konami", "DrumMania 7th Mix (G*C07 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2002, gtrfrk8m, sys573, pccard1dzi, gtrfrks, ksys573_state, gtrfrkdigital,ROT0, "Konami", "Guitar Freaks 8th Mix power-up ver. (G*C08 VER. JBA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2002, gtrfrk8ma,gtrfrk8m, pccard1dzi, gtrfrks, ksys573_state, gtrfrkdigital,ROT0, "Konami", "Guitar Freaks 8th Mix (G*C08 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2002, dsem2, sys573, pccard2dzi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Dancing Stage Euro Mix 2 (G*C23 VER. EAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2002, ddrextrm, sys573, pccard2dzi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Dance Dance Revolution Extreme (G*C36 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2003, drmn8m, sys573, k573dzi, drmn, ksys573_state, drmndigital,ROT0, "Konami", "DrumMania 8th Mix (G*C07 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2003, gtrfrk9m, sys573, pccard1dzi, gtrfrks, ksys573_state, gtrfrkdigital,ROT0, "Konami", "Guitar Freaks 9th Mix (G*C39 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2003, drmn9m, sys573, k573dzi, drmn, ksys573_state, drmndigital,ROT0, "Konami", "DrumMania 9th Mix (G*D09 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2003, gtfrk10m, sys573, pccard1dzi, gtrfrks, ksys573_state, gtrfrkdigital,ROT0, "Konami", "Guitar Freaks 10th Mix (G*D10 VER. JAB)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2003, gtfrk10ma,gtfrk10m, pccard1dzi, gtrfrks, ksys573_state, gtrfrkdigital,ROT0, "Konami", "Guitar Freaks 10th Mix (G*D10 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2003, gtfrk10mb,gtfrk10m, pccard1dzi, gtrfrks, ksys573_state, gtrfrkdigital,ROT0, "Konami", "Guitar Freaks 10th Mix eAmusement (G*D10 VER. JBA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2004, gtfrk11m, sys573, pccard1dzi, gtrfrks, ksys573_state, gtrfrkdigital,ROT0, "Konami", "Guitar Freaks 11th Mix (G*D39 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2004, drmn10m, sys573, k573dzi, drmn, ksys573_state, drmndigital,ROT0, "Konami", "DrumMania 10th Mix (G*D40 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 1997, hndlchmp, sys573, konami573, hndlchmp, ksys573_state, konami573, ROT0, "Konami", "Handle Champ (GQ710 VER. JAB)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1998, darkhleg, sys573, konami573x, konami573, ksys573_state, konami573, ROT0, "Konami", "Dark Horse Legend (GX706 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1998, fbaitbc, sys573, k573baitx, fbaitbc, ksys573_state, ge765pwbba, ROT0, "Konami", "Fisherman's Bait - A Bass Challenge (GE765 VER. UAB)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1998, bassangl, fbaitbc, k573baitx, fbaitbc, ksys573_state, ge765pwbba, ROT0, "Konami", "Bass Angler (GE765 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1998, pbballex, sys573, konami573x, konami573, ksys573_state, konami573, ROT0, "Konami", "Powerful Pro Baseball EX (GX802 VER. JAB)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1998, konam80s, sys573, konami573x, konami573, ksys573_state, konami573, ROT90, "Konami", "Konami 80's AC Special (GC826 VER. EAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1998, konam80u, konam80s, konami573x, konami573, ksys573_state, konami573, ROT90, "Konami", "Konami 80's AC Special (GC826 VER. UAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1998, konam80j, konam80s, konami573x, konami573, ksys573_state, konami573, ROT90, "Konami", "Konami 80's Gallery (GC826 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1998, konam80a, konam80s, konami573x, konami573, ksys573_state, konami573, ROT90, "Konami", "Konami 80's AC Special (GC826 VER. AAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1998, konam80k, konam80s, konami573x, konami573, ksys573_state, konami573, ROT90, "Konami", "Konami 80's AC Special (GC826 VER. KAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, dstage, sys573, konami573x, ddr, ksys573_state, ddr, ROT0, "Konami", "Dancing Stage (GN845 VER. EAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, ddru, dstage, konami573x, ddr, ksys573_state, ddr, ROT0, "Konami", "Dance Dance Revolution (GN845 VER. UAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1998, ddrj, dstage, konami573x, ddr, ksys573_state, ddr, ROT0, "Konami", "Dance Dance Revolution - Internet Ranking Ver (GC845 VER. JBA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1998, ddrja, dstage, konami573x, ddr, ksys573_state, ddr, ROT0, "Konami", "Dance Dance Revolution (GC845 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING )
|
||||
GAME( 1998, ddrjb, dstage, konami573x, ddr, ksys573_state, ddr, ROT0, "Konami", "Dance Dance Revolution (GC845 VER. JAB)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING )
|
||||
GAME( 1999, ddra, dstage, konami573x, ddr, ksys573_state, ddr, ROT0, "Konami", "Dance Dance Revolution (GN845 VER. AAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1998, fbait2bc, sys573, k573baitx, fbaitbc, ksys573_state, ge765pwbba, ROT0, "Konami", "Fisherman's Bait 2 - A Bass Challenge (GE865 VER. UAB)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1998, bassang2, fbait2bc, k573baitx, fbaitbc, ksys573_state, ge765pwbba, ROT0, "Konami", "Bass Angler 2 (GE865 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1998, hyperbbc, sys573, konami573, hyperbbc, ksys573_state, konami573, ROT0, "Konami", "Hyper Bishi Bashi Champ (GQ876 VER. EAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1998, hyperbbca,hyperbbc, konami573, hyperbbc, ksys573_state, konami573, ROT0, "Konami", "Hyper Bishi Bashi Champ (GQ876 VER. AAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, gchgchmp, sys573, pccard1x, gchgchmp, ksys573_state, konami573, ROT0, "Konami", "Gachaga Champ (GE877 VER. JAB)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, drmn, sys573, konami573x, drmn, ksys573_state, drmn, ROT0, "Konami", "DrumMania (GQ881 VER. JAD)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING )
|
||||
GAME( 1999, gtrfrks, sys573, konami573x, gtrfrks, ksys573_state, gtrfrks, ROT0, "Konami", "Guitar Freaks (GQ886 VER. EAC)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, gtrfrksu, gtrfrks, konami573x, gtrfrks, ksys573_state, gtrfrks, ROT0, "Konami", "Guitar Freaks (GQ886 VER. UAC)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, gtrfrksj, gtrfrks, konami573x, gtrfrks, ksys573_state, gtrfrks, ROT0, "Konami", "Guitar Freaks (GQ886 VER. JAC)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, gtrfrksa, gtrfrks, konami573x, gtrfrks, ksys573_state, gtrfrks, ROT0, "Konami", "Guitar Freaks (GQ886 VER. AAC)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, fbaitmc, sys573, k573baitx, fbaitmc, ksys573_state, ge765pwbba, ROT0, "Konami", "Fisherman's Bait - Marlin Challenge (GX889 VER. EA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, fbaitmcu, fbaitmc, k573baitx, fbaitmc, ksys573_state, ge765pwbba, ROT0, "Konami", "Fisherman's Bait - Marlin Challenge (GX889 VER. UA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, fbaitmcj, fbaitmc, k573baitx, fbaitmc, ksys573_state, ge765pwbba, ROT0, "Konami", "Fisherman's Bait - Marlin Challenge (GX889 VER. JA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, fbaitmca, fbaitmc, k573baitx, fbaitmc, ksys573_state, ge765pwbba, ROT0, "Konami", "Fisherman's Bait - Marlin Challenge (GX889 VER. AA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, ddr2m, sys573, konami573x, ddr, ksys573_state, ddr, ROT0, "Konami", "Dance Dance Revolution 2nd Mix (GN895 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, ddr2ml, ddr2m, pccard1x, ddr, ksys573_state, ddr, ROT0, "Konami", "Dance Dance Revolution 2nd Mix - Link Ver (GE885 VER. JAB)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, ddr2mla, ddr2m, pccard1x, ddr, ksys573_state, ddr, ROT0, "Konami", "Dance Dance Revolution 2nd Mix - Link Ver (GE885 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, ddrbocd, ddr2m, pccard1x, ddr, ksys573_state, ddr, ROT0, "Konami", "Dance Dance Revolution Best of Cool Dancers (GE892 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, ddr2mc, ddr2m, konami573x, ddr, ksys573_state, ddr, ROT0, "Konami", "Dance Dance Revolution 2nd Mix with beatmaniaIIDX CLUB VERSiON (GE896 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, ddr2mc2, ddr2m, konami573x, ddr, ksys573_state, ddr, ROT0, "Konami", "Dance Dance Revolution 2nd Mix with beatmaniaIIDX substream CLUB VERSiON 2 (GE984 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, gtrfrk2m, sys573, pccard1yi, gtrfrks, ksys573_state, gtrfrks, ROT0, "Konami", "Guitar Freaks 2nd Mix Ver 1.01 (GQ883 VER. JAD)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, dsftkd, sys573, konami573yi, ddr, ksys573_state, ddr, ROT0, "Konami", "Dancing Stage featuring TRUE KiSS DESTiNATiON (G*884 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, cr589fw, sys573, konami573, konami573, ksys573_state, konami573, ROT0, "Konami", "CD-ROM Drive Updater 2.0 (700B04)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, cr589fwa, sys573, konami573, konami573, ksys573_state, konami573, ROT0, "Konami", "CD-ROM Drive Updater (700A04)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 2000, ddr3mk, sys573, pccard2dyyi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Dance Dance Revolution 3rd Mix - Ver.Korea2 (GN887 VER. KBA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.3 */
|
||||
GAME( 2000, ddr3mka, ddr3mk, pccard2dyyi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Dance Dance Revolution 3rd Mix - Ver.Korea (GN887 VER. KAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.3 */
|
||||
GAME( 1999, ddr3ma, ddr3mk, pccard2dyyi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Dance Dance Revolution 3rd Mix (GN887 VER. AAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.1 */
|
||||
GAME( 1999, ddr3mj, ddr3mk, pccard2dyyi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Dance Dance Revolution 3rd Mix (GN887 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.0 */
|
||||
GAME( 1999, ddrsbm, sys573, k573dyi, ddrsolo, ksys573_state, ddrsolo, ROT0, "Konami", "Dance Dance Revolution Solo Bass Mix (GQ894 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING )
|
||||
GAME( 1999, ddrs2k, sys573, k573dyyi, ddrsolo, ksys573_state, ddrsolo, ROT0, "Konami", "Dance Dance Revolution Solo 2000 (GC905 VER. AAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.3 */
|
||||
GAME( 1999, ddrs2kj, ddrs2k, k573dyyi, ddrsolo, ksys573_state, ddrsolo, ROT0, "Konami", "Dance Dance Revolution Solo 2000 (GC905 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.2 */
|
||||
GAME( 1999, hypbbc2p, sys573, konami573y, hypbbc2p, ksys573_state, hyperbbc, ROT0, "Konami", "Hyper Bishi Bashi Champ - 2 Player (GX908 1999/08/24 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, hypbbc2pk,hypbbc2p, konami573y, hypbbc2p, ksys573_state, hyperbbc, ROT0, "Konami", "Hyper Bishi Bashi Champ - 2 Player (GX908 1999/08/24 VER. KAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, dsfdct, sys573, pccard2dyyi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Dancing Stage featuring Dreams Come True (GC910 VER. JCA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING )
|
||||
GAME( 1999, dsfdcta, dsfdct, pccard2yyi, ddr, ksys573_state, ddr, ROT0, "Konami", "Dancing Stage featuring Dreams Come True (GC910 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 1999, drmn2m, sys573, k573dxzi, drmn, ksys573_state, drmndigital, ROT0, "Konami", "DrumMania 2nd Mix (GE912 VER. JAB)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.5 */
|
||||
GAME( 1999, drmn2mpu, drmn2m, k573dxzi, drmn, ksys573_state, drmndigital, ROT0, "Konami", "DrumMania 2nd Mix Session Power Up Kit (GE912 VER. JAB)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.5 */
|
||||
GAME( 2000, dncfrks, sys573, k573dzi, dmx, ksys573_state, dmx, ROT0, "Konami", "Dance Freaks (G*874 VER. KAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.6 */
|
||||
GAME( 2000, dmx, dncfrks, k573dzi, dmx, ksys573_state, dmx, ROT0, "Konami", "Dance Maniax (G*874 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.6 */
|
||||
GAME( 2000, gunmania, sys573, gunmania, gunmania, ksys573_state, gunmania, ROT0, "Konami", "GunMania (GL906 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING )
|
||||
GAME( 2000, fghtmn, sys573, punchmania, punchmania,ksys573_state, punchmania, ROT0, "Konami", "Fighting Mania (QG918 VER. EAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* motor/artwork/network */
|
||||
GAME( 2000, fghtmna, fghtmn, punchmania, punchmania,ksys573_state, punchmania, ROT0, "Konami", "Fighting Mania (QG918 VER. AAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* motor/artwork/network */
|
||||
GAME( 2000, pnchmn, fghtmn, punchmania, punchmania,ksys573_state, punchmania, ROT0, "Konami", "Punch Mania: Hokuto No Ken (GQ918 VER. JAB)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* motor/artwork/network */
|
||||
GAME( 2000, pnchmna, fghtmn, punchmania, punchmania,ksys573_state, punchmania, ROT0, "Konami", "Punch Mania: Hokuto No Ken (GQ918 VER. JAB ALT CD)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* motor/artwork/network */
|
||||
GAME( 2000, fghtmnk, fghtmn, punchmania, punchmania,ksys573_state, punchmania, ROT0, "Konami", "Fighting Mania (QG918 VER. KAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* motor/artwork/network */
|
||||
GAME( 2000, fghtmnu, fghtmn, punchmania, punchmania,ksys573_state, punchmania, ROT0, "Konami", "Fighting Mania (QG918 VER. UAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* motor/artwork/network */
|
||||
GAME( 2000, dsem, sys573, k573dxi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Dancing Stage Euro Mix (G*936 VER. EAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.7 */
|
||||
GAME( 2000, gtrfrk3m, sys573, pccard1dxzi, gtrfrks, ksys573_state, gtrfrkdigital,ROT0, "Konami", "Guitar Freaks 3rd Mix (GE949 VER. JAC)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.4 */
|
||||
GAME( 2000, gtfrk3ma, gtrfrk3m, pccard1dxzi, gtrfrks, ksys573_state, gtrfrkdigital,ROT0, "Konami", "Guitar Freaks 3rd Mix (GE949 VER. JAB)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.4 */
|
||||
GAME( 2000, gtfrk3mb, gtrfrk3m, pccard1dzi, gtrfrks, ksys573_state, gtrfrkdigital,ROT0, "Konami", "Guitar Freaks 3rd Mix - security cassette versionup (949JAZ02)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.4 */
|
||||
GAME( 2000, pnchmn2, sys573, punchmania2, punchmania,ksys573_state, punchmania, ROT0, "Konami", "Punch Mania 2: Hokuto No Ken (GQA09 JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* motor/artwork/network */
|
||||
GAME( 2000, salarymc, sys573, konami573yi, hypbbc2p, ksys573_state, salarymc, ROT0, "Konami", "Salary Man Champ (GCA18 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
|
||||
GAME( 2000, ddr3mp, sys573, pccard2dxzi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Dance Dance Revolution 3rd Mix Plus (G*A22 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.6 */
|
||||
GAME( 2000, pcnfrk3m, sys573, k573dxzi, drmn, ksys573_state, drmndigital, ROT0, "Konami", "Percussion Freaks 3rd Mix (G*A23 VER. KAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.8 */
|
||||
GAME( 2000, drmn3m, pcnfrk3m, k573dxzi, drmn, ksys573_state, drmndigital, ROT0, "Konami", "DrumMania 3rd Mix (G*A23 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.8 */
|
||||
GAME( 2000, gtrfrk4m, sys573, pccard1dxzi, gtrfrks, ksys573_state, gtrfrkdigital,ROT0, "Konami", "Guitar Freaks 4th Mix (G*A24 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.8 */
|
||||
GAME( 2000, ddr4m, sys573, pccard2dxzi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Dance Dance Revolution 4th Mix (G*A33 VER. AAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.8 */
|
||||
GAME( 2000, ddr4mj, ddr4m, pccard2dxzi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Dance Dance Revolution 4th Mix (G*A33 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.8 */
|
||||
GAME( 2000, ddr4ms, sys573, pccard2dxzi, ddrsolo, ksys573_state, ddrsolo, ROT0, "Konami", "Dance Dance Revolution 4th Mix Solo (G*A33 VER. ABA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.8 */
|
||||
GAME( 2000, ddr4msj, ddr4ms, pccard2dxzi, ddrsolo, ksys573_state, ddrsolo, ROT0, "Konami", "Dance Dance Revolution 4th Mix Solo (G*A33 VER. JBA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.8 */
|
||||
GAME( 2000, dsfdr, sys573, k573dxzi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Dancing Stage Featuring Disney's Rave (GCA37JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.8 */
|
||||
GAME( 2000, ddrusa, sys573, k573dx, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Dance Dance Revolution USA (G*A44 VER. UAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.8 */
|
||||
GAME( 2000, ddr4mp, sys573, pccard2dxzi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Dance Dance Revolution 4th Mix Plus (G*A34 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.9 */
|
||||
GAME( 2000, ddr4mps, sys573, pccard2dxzi, ddrsolo, ksys573_state, ddrsolo, ROT0, "Konami", "Dance Dance Revolution 4th Mix Plus Solo (G*A34 VER. JBA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.9 */
|
||||
GAME( 2000, dmx2m, sys573, k573dzi, dmx, ksys573_state, dmx, ROT0, "Konami", "Dance Maniax 2nd Mix (G*A39 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.9 */
|
||||
GAME( 2000, drmn4m, sys573, k573dzi, drmn, ksys573_state, drmndigital, ROT0, "Konami", "DrumMania 4th Mix (G*A25 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.8 */
|
||||
GAME( 2001, gtrfrk5m, sys573, pccard1dzi, gtrfrks, ksys573_state, gtrfrkdigital,ROT0, "Konami", "Guitar Freaks 5th Mix (G*A26 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.9 */
|
||||
GAME( 2001, ddr5m, sys573, pccard2dzi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Dance Dance Revolution 5th Mix (G*A27 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.9 */
|
||||
GAME( 2001, dmx2majp, sys573, konami573zi, dmx, ksys573_state, dmx, ROT0, "Konami", "Dance Maniax 2nd Mix Append J-Paradise (G*A38 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.9 */
|
||||
GAME( 2001, mamboagg, sys573, k573dzi, mamboagg, ksys573_state, mamboagg, ROT0, "Konami", "Mambo A Go-Go (GQA40 VER. JAB)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2001, drmn5m, sys573, k573dzi, drmn, ksys573_state, drmndigital, ROT0, "Konami", "DrumMania 5th Mix (G*B05 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.9 */
|
||||
GAME( 2001, gtrfrk6m, sys573, pccard1dzi, gtrfrks, ksys573_state, gtrfrkdigital,ROT0, "Konami", "Guitar Freaks 6th Mix (G*B06 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.9 */
|
||||
GAME( 2001, drmn6m, sys573, k573dzi, drmn, ksys573_state, drmndigital, ROT0, "Konami", "DrumMania 6th Mix (G*B16 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2001, gtrfrk7m, sys573, pccard1dzi, gtrfrks, ksys573_state, gtrfrkdigital,ROT0, "Konami", "Guitar Freaks 7th Mix (G*B17 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2001, ddrmax, sys573, pccard2dzi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "DDR Max - Dance Dance Revolution 6th Mix (G*B19 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.9 */
|
||||
GAME( 2002, ddrmax2, sys573, pccard2dzi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "DDR Max 2 - Dance Dance Revolution 7th Mix (G*B20 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2002, mrtlbeat, sys573, pccard2dzi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Martial Beat (G*B47 VER. JBA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.9 */
|
||||
GAME( 2002, drmn7m, sys573, k573dzi, drmn, ksys573_state, drmndigital, ROT0, "Konami", "DrumMania 7th Mix power-up ver. (G*C07 VER. JBA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2002, drmn7ma, drmn7m, k573dzi, drmn, ksys573_state, drmndigital, ROT0, "Konami", "DrumMania 7th Mix (G*C07 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2002, gtrfrk8m, sys573, pccard1dzi, gtrfrks, ksys573_state, gtrfrkdigital,ROT0, "Konami", "Guitar Freaks 8th Mix power-up ver. (G*C08 VER. JBA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2002, gtrfrk8ma,gtrfrk8m, pccard1dzi, gtrfrks, ksys573_state, gtrfrkdigital,ROT0, "Konami", "Guitar Freaks 8th Mix (G*C08 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2002, dsem2, sys573, pccard2dzi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Dancing Stage Euro Mix 2 (G*C23 VER. EAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2002, ddrextrm, sys573, pccard2dzi, ddr, ksys573_state, ddrdigital, ROT0, "Konami", "Dance Dance Revolution Extreme (G*C36 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2003, drmn8m, sys573, k573dzi, drmn, ksys573_state, drmndigital, ROT0, "Konami", "DrumMania 8th Mix (G*C07 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2003, gtrfrk9m, sys573, pccard1dzi, gtrfrks, ksys573_state, gtrfrkdigital,ROT0, "Konami", "Guitar Freaks 9th Mix (G*C39 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2003, drmn9m, sys573, k573dzi, drmn, ksys573_state, drmndigital, ROT0, "Konami", "DrumMania 9th Mix (G*D09 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2003, gtfrk10m, sys573, pccard1dzi, gtrfrks, ksys573_state, gtrfrkdigital,ROT0, "Konami", "Guitar Freaks 10th Mix (G*D10 VER. JAB)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2003, gtfrk10ma,gtfrk10m, pccard1dzi, gtrfrks, ksys573_state, gtrfrkdigital,ROT0, "Konami", "Guitar Freaks 10th Mix (G*D10 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2003, gtfrk10mb,gtfrk10m, pccard1dzi, gtrfrks, ksys573_state, gtrfrkdigital,ROT0, "Konami", "Guitar Freaks 10th Mix eAmusement (G*D10 VER. JBA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2004, gtfrk11m, sys573, pccard1dzi, gtrfrks, ksys573_state, gtrfrkdigital,ROT0, "Konami", "Guitar Freaks 11th Mix (G*D39 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
GAME( 2004, drmn10m, sys573, k573dzi, drmn, ksys573_state, drmndigital, ROT0, "Konami", "DrumMania 10th Mix (G*D40 VER. JAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) /* BOOT VER 1.95 */
|
||||
|
@ -531,13 +531,13 @@ static INPUT_PORTS_START( zr107 )
|
||||
|
||||
PORT_START("IN2")
|
||||
PORT_BIT( 0x7f, IP_ACTIVE_HIGH, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE("adc0838", adc083x_do_read)
|
||||
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER("adc0838", adc083x_device, do_read)
|
||||
|
||||
PORT_START("IN4")
|
||||
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) /* PARAACK */
|
||||
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE("adc0838",adc083x_sars_read)
|
||||
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER("eeprom",eeprom_device,read_bit)
|
||||
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER("adc0838", adc083x_device, sars_read)
|
||||
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER("eeprom", eeprom_device, read_bit)
|
||||
|
||||
PORT_START("EEPROMOUT")
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("eeprom", eeprom_device, write_bit)
|
||||
@ -545,9 +545,9 @@ static INPUT_PORTS_START( zr107 )
|
||||
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("eeprom", eeprom_device, set_cs_line)
|
||||
|
||||
PORT_START("OUT4")
|
||||
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE("adc0838", adc083x_cs_write)
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE("adc0838", adc083x_di_write)
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE("adc0838", adc083x_clk_write)
|
||||
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("adc0838", adc083x_device, cs_write)
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("adc0838", adc083x_device, di_write)
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("adc0838", adc083x_device, clk_write)
|
||||
INPUT_PORTS_END
|
||||
|
||||
static INPUT_PORTS_START( midnrun )
|
||||
|
Loading…
Reference in New Issue
Block a user