mirror of
https://github.com/holub/mame
synced 2025-05-17 03:10:43 +03:00
deprecat.h
This commit is contained in:
parent
554f84a313
commit
3e4f663ffd
@ -230,9 +230,9 @@ static INPUT_PORTS_START( brkthru )
|
||||
// PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
|
||||
// PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
/* SW2:7,8 ALWAYS OFF according to the manual */
|
||||
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_CHANGED(coin_inserted, 0) PORT_IMPULSE(1)
|
||||
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_CHANGED(coin_inserted, 0) PORT_IMPULSE(1)
|
||||
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_CHANGED(coin_inserted, 0) PORT_IMPULSE(1)
|
||||
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_CHANGED(coin_inserted, 0)
|
||||
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_CHANGED(coin_inserted, 0)
|
||||
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_CHANGED(coin_inserted, 0)
|
||||
INPUT_PORTS_END
|
||||
|
||||
static INPUT_PORTS_START( brkthruj )
|
||||
@ -272,9 +272,9 @@ static INPUT_PORTS_START( darwin )
|
||||
// PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
|
||||
// PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
/* SW2:5,7,8 ALWAYS OFF according to the manual */
|
||||
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_CHANGED(coin_inserted, 0) PORT_IMPULSE(1)
|
||||
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_CHANGED(coin_inserted, 0) PORT_IMPULSE(1)
|
||||
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_CHANGED(coin_inserted, 0) PORT_IMPULSE(1)
|
||||
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_CHANGED(coin_inserted, 0)
|
||||
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_CHANGED(coin_inserted, 0)
|
||||
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_CHANGED(coin_inserted, 0)
|
||||
INPUT_PORTS_END
|
||||
|
||||
|
||||
|
@ -29,12 +29,16 @@ class csplayh5_state : public driver_device
|
||||
{
|
||||
public:
|
||||
csplayh5_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag) { }
|
||||
: driver_device(mconfig, type, tag),
|
||||
m_maincpu(*this,"maincpu")
|
||||
{ }
|
||||
|
||||
bitmap_t *m_vdp0_bitmap;
|
||||
UINT16 m_mux_data;
|
||||
UINT8 m_pio_dir[5];
|
||||
UINT8 m_pio_latch[5];
|
||||
|
||||
required_device<cpu_device> m_maincpu;
|
||||
};
|
||||
|
||||
|
||||
@ -597,16 +601,20 @@ static MACHINE_RESET( csplayh5 )
|
||||
}
|
||||
}
|
||||
|
||||
static INTERRUPT_GEN( scanline_irq )
|
||||
static TIMER_DEVICE_CALLBACK( csplayh5_irq )
|
||||
{
|
||||
v9938_set_sprite_limit(0, 0);
|
||||
v9938_set_resolution(0, RENDER_HIGH);
|
||||
v9938_interrupt(device->machine(), 0);
|
||||
}
|
||||
csplayh5_state *state = timer.machine().driver_data<csplayh5_state>();
|
||||
int scanline = param;
|
||||
|
||||
static INTERRUPT_GEN( csplayh5_irq )
|
||||
{
|
||||
device_set_input_line_and_vector(device, 1, HOLD_LINE,0x100/4);
|
||||
if(scanline == 212*2)
|
||||
device_set_input_line_and_vector(state->m_maincpu, 1, HOLD_LINE,0x100/4);
|
||||
|
||||
if((scanline % 2) == 0)
|
||||
{
|
||||
v9938_set_sprite_limit(0, 0);
|
||||
v9938_set_resolution(0, RENDER_HIGH);
|
||||
v9938_interrupt(timer.machine(), 0);
|
||||
}
|
||||
}
|
||||
|
||||
static const z80_daisy_config daisy_chain_sound[] =
|
||||
@ -621,8 +629,7 @@ static MACHINE_CONFIG_START( csplayh5, csplayh5_state )
|
||||
/* basic machine hardware */
|
||||
MCFG_CPU_ADD("maincpu",M68000,16000000) /* TMP68301-16 */
|
||||
MCFG_CPU_PROGRAM_MAP(csplayh5_map)
|
||||
MCFG_CPU_VBLANK_INT("screen", csplayh5_irq )
|
||||
MCFG_CPU_PERIODIC_INT(scanline_irq,262*60) // unknown timing
|
||||
MCFG_TIMER_ADD_SCANLINE("scantimer", csplayh5_irq, "screen", 0, 1)
|
||||
|
||||
#if USE_H8
|
||||
MCFG_CPU_ADD("subcpu", H83002, 16000000) /* unknown clock */
|
||||
@ -646,8 +653,7 @@ static MACHINE_CONFIG_START( csplayh5, csplayh5_state )
|
||||
|
||||
MCFG_SCREEN_ADD("screen",RASTER)
|
||||
MCFG_SCREEN_REFRESH_RATE(60)
|
||||
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
|
||||
|
||||
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500))
|
||||
MCFG_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
|
||||
MCFG_SCREEN_SIZE(MSX2_TOTAL_XRES_PIXELS, MSX2_TOTAL_YRES_PIXELS)
|
||||
MCFG_SCREEN_VISIBLE_AREA(MSX2_XBORDER_PIXELS - MSX2_VISIBLE_XBORDER_PIXELS, MSX2_TOTAL_XRES_PIXELS - MSX2_XBORDER_PIXELS + MSX2_VISIBLE_XBORDER_PIXELS - 1, MSX2_YBORDER_PIXELS - MSX2_VISIBLE_YBORDER_PIXELS, MSX2_TOTAL_YRES_PIXELS - MSX2_YBORDER_PIXELS + MSX2_VISIBLE_YBORDER_PIXELS - 1)
|
||||
|
@ -168,7 +168,6 @@ Stephh's notes (based on the games Z80 code and some tests) :
|
||||
|
||||
#include "emu.h"
|
||||
#include "cpu/z80/z80.h"
|
||||
#include "deprecat.h"
|
||||
#include "cpu/m6502/m6502.h"
|
||||
#include "sound/3526intf.h"
|
||||
#include "sound/msm5205.h"
|
||||
@ -317,7 +316,7 @@ static WRITE8_HANDLER( firetrap_sound_2400_w )
|
||||
{
|
||||
firetrap_state *state = space->machine().driver_data<firetrap_state>();
|
||||
msm5205_reset_w(state->m_msm, ~data & 0x01);
|
||||
state->m_irq_enable = data & 0x02;
|
||||
state->m_sound_irq_enable = data & 0x02;
|
||||
}
|
||||
|
||||
static WRITE8_HANDLER( firetrap_sound_bankselect_w )
|
||||
@ -333,7 +332,7 @@ static void firetrap_adpcm_int( device_t *device )
|
||||
state->m_msm5205next <<= 4;
|
||||
|
||||
state->m_adpcm_toggle ^= 1;
|
||||
if (state->m_irq_enable && state->m_adpcm_toggle)
|
||||
if (state->m_sound_irq_enable && state->m_adpcm_toggle)
|
||||
device_set_input_line(state->m_audiocpu, M6502_IRQ_LINE, HOLD_LINE);
|
||||
}
|
||||
|
||||
@ -413,6 +412,25 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 )
|
||||
AM_RANGE(0x8000, 0xffff) AM_ROM
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static INPUT_CHANGED( coin_inserted )
|
||||
{
|
||||
firetrap_state *state = field.machine().driver_data<firetrap_state>();
|
||||
|
||||
/* coin insertion causes an IRQ */
|
||||
if(newval)
|
||||
{
|
||||
state->m_coin_command_pending = (UINT8)(FPTR)(param);
|
||||
|
||||
/* Make sure coin IRQ's aren't generated when another command is pending, the main cpu
|
||||
definitely doesn't expect them as it locks out the coin routine */
|
||||
if (state->m_coin_command_pending && !state->m_i8751_current_command)
|
||||
{
|
||||
state->m_i8751_return = state->m_coin_command_pending;
|
||||
device_set_input_line_and_vector(state->m_maincpu, 0, HOLD_LINE, 0xff);
|
||||
state->m_coin_command_pending = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* verified from Z80 code */
|
||||
static INPUT_PORTS_START( firetrap )
|
||||
@ -490,9 +508,9 @@ static INPUT_PORTS_START( firetrap )
|
||||
PORT_SERVICE_DIPLOC( 0x80, IP_ACTIVE_LOW, "SW2:8" )
|
||||
|
||||
PORT_START("COIN") /* Connected to i8751 directly */
|
||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
|
||||
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
|
||||
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 )
|
||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_CHANGED(coin_inserted, 1)
|
||||
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_CHANGED(coin_inserted, 2)
|
||||
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_CHANGED(coin_inserted, 3)
|
||||
INPUT_PORTS_END
|
||||
|
||||
/* verified from Z80 code */
|
||||
@ -572,48 +590,11 @@ static const msm5205_interface msm5205_config =
|
||||
};
|
||||
|
||||
static INTERRUPT_GEN( firetrap_irq )
|
||||
{
|
||||
firetrap_state *state = device->machine().driver_data<firetrap_state>();
|
||||
UINT8 coin = 0;
|
||||
UINT8 port = input_port_read(device->machine(), "COIN") & 0x07; /* TODO: remove me */
|
||||
|
||||
/* Check for coin IRQ */
|
||||
if (cpu_getiloops(device))
|
||||
{
|
||||
if (port != 0x07 && !state->m_int_latch)
|
||||
{
|
||||
if (!(port & 0x01)) /* COIN1 */
|
||||
coin = 1;
|
||||
if (!(port & 0x02)) /* COIN2 */
|
||||
coin = 2;
|
||||
if (!(port & 0x04)) /* SERVICE1 */
|
||||
coin = 3;
|
||||
state->m_coin_command_pending = coin;
|
||||
state->m_int_latch = 1;
|
||||
}
|
||||
if (port == 0x07)
|
||||
state->m_int_latch = 0;
|
||||
|
||||
/* Make sure coin IRQ's aren't generated when another command is pending, the main cpu
|
||||
definitely doesn't expect them as it locks out the coin routine */
|
||||
if (state->m_coin_command_pending && !state->m_i8751_current_command)
|
||||
{
|
||||
state->m_i8751_return = state->m_coin_command_pending;
|
||||
device_set_input_line_and_vector(device, 0, HOLD_LINE, 0xff);
|
||||
state->m_coin_command_pending = 0;
|
||||
}
|
||||
}
|
||||
|
||||
if (state->m_nmi_enable && !cpu_getiloops(device))
|
||||
device_set_input_line(device, INPUT_LINE_NMI, PULSE_LINE);
|
||||
}
|
||||
|
||||
static INTERRUPT_GEN( bootleg_irq )
|
||||
{
|
||||
firetrap_state *state = device->machine().driver_data<firetrap_state>();
|
||||
|
||||
if (state->m_nmi_enable)
|
||||
device_set_input_line (device, INPUT_LINE_NMI, PULSE_LINE);
|
||||
device_set_input_line(device, INPUT_LINE_NMI, PULSE_LINE);
|
||||
}
|
||||
|
||||
|
||||
@ -631,13 +612,12 @@ static MACHINE_START( firetrap )
|
||||
memory_configure_bank(machine, "bank2", 0, 2, &SOUND[0x10000], 0x4000);
|
||||
|
||||
state->save_item(NAME(state->m_i8751_current_command));
|
||||
state->save_item(NAME(state->m_irq_enable));
|
||||
state->save_item(NAME(state->m_sound_irq_enable));
|
||||
state->save_item(NAME(state->m_nmi_enable));
|
||||
state->save_item(NAME(state->m_i8751_return));
|
||||
state->save_item(NAME(state->m_i8751_init_ptr));
|
||||
state->save_item(NAME(state->m_msm5205next));
|
||||
state->save_item(NAME(state->m_adpcm_toggle));
|
||||
state->save_item(NAME(state->m_int_latch));
|
||||
state->save_item(NAME(state->m_coin_command_pending));
|
||||
state->save_item(NAME(state->m_scroll1_x));
|
||||
state->save_item(NAME(state->m_scroll1_y));
|
||||
@ -659,13 +639,12 @@ static MACHINE_RESET( firetrap )
|
||||
}
|
||||
|
||||
state->m_i8751_current_command = 0;
|
||||
state->m_irq_enable = 0;
|
||||
state->m_sound_irq_enable = 0;
|
||||
state->m_nmi_enable = 0;
|
||||
state->m_i8751_return = 0;
|
||||
state->m_i8751_init_ptr = 0;
|
||||
state->m_msm5205next = 0xff;
|
||||
state->m_adpcm_toggle = 0;
|
||||
state->m_int_latch = 0;
|
||||
state->m_coin_command_pending = 0;
|
||||
}
|
||||
|
||||
@ -674,7 +653,7 @@ static MACHINE_CONFIG_START( firetrap, firetrap_state )
|
||||
/* basic machine hardware */
|
||||
MCFG_CPU_ADD("maincpu", Z80, FIRETRAP_XTAL/2) // 6 MHz
|
||||
MCFG_CPU_PROGRAM_MAP(firetrap_map)
|
||||
MCFG_CPU_VBLANK_INT_HACK(firetrap_irq,2)
|
||||
MCFG_CPU_VBLANK_INT("screen",firetrap_irq)
|
||||
|
||||
MCFG_CPU_ADD("audiocpu", M6502, FIRETRAP_XTAL/8) // 1.5 MHz
|
||||
MCFG_CPU_PROGRAM_MAP(sound_map)
|
||||
@ -715,7 +694,7 @@ static MACHINE_CONFIG_START( firetrapbl, firetrap_state )
|
||||
/* basic machine hardware */
|
||||
MCFG_CPU_ADD("maincpu", Z80, FIRETRAP_XTAL/2) // 6 MHz
|
||||
MCFG_CPU_PROGRAM_MAP(firetrap_bootleg_map)
|
||||
MCFG_CPU_VBLANK_INT("screen", bootleg_irq)
|
||||
MCFG_CPU_VBLANK_INT("screen", firetrap_irq)
|
||||
|
||||
MCFG_CPU_ADD("audiocpu", M6502, FIRETRAP_XTAL/8) // 1.5 MHz
|
||||
MCFG_CPU_PROGRAM_MAP(sound_map)
|
||||
|
@ -20,7 +20,6 @@
|
||||
***************************************************************************/
|
||||
|
||||
#include "emu.h"
|
||||
#include "deprecat.h"
|
||||
#include "cpu/m68000/m68000.h"
|
||||
#include "machine/eeprom.h"
|
||||
#include "sound/gaelco.h"
|
||||
@ -291,7 +290,7 @@ static MACHINE_CONFIG_START( bang, gaelco2_state )
|
||||
/* basic machine hardware */
|
||||
MCFG_CPU_ADD("maincpu", M68000, 30000000/2) /* 15 MHz */
|
||||
MCFG_CPU_PROGRAM_MAP(bang_map)
|
||||
MCFG_CPU_VBLANK_INT_HACK(bang_interrupt, 6)
|
||||
MCFG_TIMER_ADD_SCANLINE("scantimer", bang_irq, "screen", 0, 1)
|
||||
|
||||
MCFG_EEPROM_ADD("eeprom", gaelco2_eeprom_interface)
|
||||
|
||||
|
@ -196,7 +196,6 @@
|
||||
#include "sound/ay8910.h"
|
||||
#include "video/v9938.h"
|
||||
#include "machine/nvram.h"
|
||||
#include "deprecat.h"
|
||||
#include "kas89.lh"
|
||||
|
||||
|
||||
@ -204,7 +203,8 @@ class kas89_state : public driver_device
|
||||
{
|
||||
public:
|
||||
kas89_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag) { }
|
||||
: driver_device(mconfig, type, tag)
|
||||
{ }
|
||||
|
||||
UINT8 m_mux_data;
|
||||
UINT8 m_main_nmi_enable;
|
||||
@ -230,9 +230,12 @@ static void kas89_vdp_interrupt(running_machine &machine, int i)
|
||||
cputag_set_input_line (machine, "maincpu", 0, (i ? ASSERT_LINE : CLEAR_LINE));
|
||||
}
|
||||
|
||||
static INTERRUPT_GEN( kas89_interrupt )
|
||||
static TIMER_DEVICE_CALLBACK( kas89_interrupt )
|
||||
{
|
||||
v9938_interrupt(device->machine(), 0);
|
||||
int scanline = param;
|
||||
|
||||
if((scanline % 2) == 0)
|
||||
v9938_interrupt(timer.machine(), 0);
|
||||
}
|
||||
|
||||
|
||||
@ -306,16 +309,22 @@ static READ8_HANDLER( mux_r )
|
||||
return state->m_mux_data;
|
||||
}
|
||||
|
||||
static INTERRUPT_GEN ( kas89_nmi_interrupt )
|
||||
static TIMER_DEVICE_CALLBACK ( kas89_nmi_cb )
|
||||
{
|
||||
kas89_state *state = device->machine().driver_data<kas89_state>();
|
||||
kas89_state *state = timer.machine().driver_data<kas89_state>();
|
||||
|
||||
if (state->m_main_nmi_enable)
|
||||
{
|
||||
device_set_input_line(device, INPUT_LINE_NMI, PULSE_LINE);
|
||||
}
|
||||
device_set_input_line(state->m_maincpu, INPUT_LINE_NMI, PULSE_LINE);
|
||||
}
|
||||
|
||||
static TIMER_DEVICE_CALLBACK ( kas89_sound_nmi_cb )
|
||||
{
|
||||
kas89_state *state = timer.machine().driver_data<kas89_state>();
|
||||
|
||||
device_set_input_line(state->m_audiocpu, INPUT_LINE_NMI, PULSE_LINE);
|
||||
}
|
||||
|
||||
|
||||
static WRITE8_HANDLER( control_w )
|
||||
{
|
||||
/* - bits -
|
||||
@ -773,13 +782,13 @@ static MACHINE_CONFIG_START( kas89, kas89_state )
|
||||
MCFG_CPU_ADD("maincpu", Z80, MASTER_CLOCK/6) /* Confirmed */
|
||||
MCFG_CPU_PROGRAM_MAP(kas89_map)
|
||||
MCFG_CPU_IO_MAP(kas89_io)
|
||||
MCFG_CPU_VBLANK_INT_HACK(kas89_interrupt, 262)
|
||||
MCFG_CPU_PERIODIC_INT(kas89_nmi_interrupt, 138) /* Connected to a 138Hz osc. *AND* bit6 of port $82 */
|
||||
MCFG_TIMER_ADD_SCANLINE("scantimer", kas89_interrupt, "screen", 0, 1)
|
||||
MCFG_TIMER_ADD_PERIODIC("kas89_nmi", kas89_nmi_cb, attotime::from_hz(138)) /* Connected to a 138Hz osc. *AND* bit6 of port $82 */
|
||||
|
||||
MCFG_CPU_ADD("audiocpu", Z80, MASTER_CLOCK/6) /* Confirmed */
|
||||
MCFG_CPU_PROGRAM_MAP(audio_map)
|
||||
MCFG_CPU_IO_MAP(audio_io)
|
||||
MCFG_CPU_PERIODIC_INT(nmi_line_pulse, 138) /* Connected to a 138Hz osc.*/
|
||||
MCFG_TIMER_ADD_PERIODIC("kas89_snmi", kas89_sound_nmi_cb, attotime::from_hz(138)) /* Connected to a 138Hz osc.*/
|
||||
|
||||
MCFG_MACHINE_START(kas89)
|
||||
MCFG_MACHINE_RESET(kas89)
|
||||
@ -791,7 +800,7 @@ static MACHINE_CONFIG_START( kas89, kas89_state )
|
||||
MCFG_SCREEN_REFRESH_RATE(60)
|
||||
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
|
||||
MCFG_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
|
||||
MCFG_SCREEN_SIZE(544, 480)
|
||||
MCFG_SCREEN_SIZE(544, 524)
|
||||
MCFG_SCREEN_VISIBLE_AREA(0, 544 - 1, 0, 480 - 1)
|
||||
MCFG_SCREEN_UPDATE(generic_bitmapped)
|
||||
|
||||
|
@ -27,14 +27,13 @@ public:
|
||||
UINT8 m_scroll2_y[2];
|
||||
|
||||
/* misc */
|
||||
int m_irq_enable;
|
||||
int m_sound_irq_enable;
|
||||
int m_nmi_enable;
|
||||
int m_i8751_return;
|
||||
int m_i8751_current_command;
|
||||
int m_i8751_init_ptr;
|
||||
int m_msm5205next;
|
||||
int m_adpcm_toggle;
|
||||
int m_int_latch;
|
||||
int m_coin_command_pending;
|
||||
|
||||
/* devices */
|
||||
|
@ -2,7 +2,9 @@ class gaelco2_state : public driver_device
|
||||
{
|
||||
public:
|
||||
gaelco2_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag) { }
|
||||
: driver_device(mconfig, type, tag),
|
||||
m_maincpu(*this,"maincpu")
|
||||
{ }
|
||||
|
||||
UINT16 *m_snowboar_protection;
|
||||
UINT16 *m_vregs;
|
||||
@ -11,6 +13,8 @@ public:
|
||||
UINT16 *m_videoram;
|
||||
tilemap_t *m_pant[2];
|
||||
int m_dual_monitor;
|
||||
|
||||
required_device<cpu_device> m_maincpu;
|
||||
};
|
||||
|
||||
|
||||
@ -25,7 +29,7 @@ WRITE16_HANDLER( gaelco2_coin2_w );
|
||||
WRITE16_HANDLER( wrally2_coin_w );
|
||||
WRITE16_HANDLER( touchgo_coin_w );
|
||||
WRITE16_HANDLER( bang_clr_gun_int_w );
|
||||
INTERRUPT_GEN( bang_interrupt );
|
||||
TIMER_DEVICE_CALLBACK( bang_irq );
|
||||
CUSTOM_INPUT( wrally2_analog_bit_r );
|
||||
WRITE16_HANDLER( wrally2_adc_clk );
|
||||
WRITE16_HANDLER( wrally2_adc_cs );
|
||||
|
@ -8,7 +8,6 @@
|
||||
***************************************************************************/
|
||||
|
||||
#include "emu.h"
|
||||
#include "deprecat.h"
|
||||
#include "machine/eeprom.h"
|
||||
#include "includes/gaelco2.h"
|
||||
|
||||
@ -189,19 +188,18 @@ WRITE16_HANDLER( bang_clr_gun_int_w )
|
||||
state->m_clr_gun_int = 1;
|
||||
}
|
||||
|
||||
INTERRUPT_GEN( bang_interrupt )
|
||||
TIMER_DEVICE_CALLBACK( bang_irq )
|
||||
{
|
||||
gaelco2_state *state = device->machine().driver_data<gaelco2_state>();
|
||||
if (cpu_getiloops(device) == 0){
|
||||
device_set_input_line(device, 2, HOLD_LINE);
|
||||
gaelco2_state *state = timer.machine().driver_data<gaelco2_state>();
|
||||
int scanline = param;
|
||||
|
||||
if (scanline == 256){
|
||||
device_set_input_line(state->m_maincpu, 2, HOLD_LINE);
|
||||
state->m_clr_gun_int = 0;
|
||||
}
|
||||
else if (cpu_getiloops(device) % 2){
|
||||
if (state->m_clr_gun_int){
|
||||
device_set_input_line(device, 4, HOLD_LINE);
|
||||
}
|
||||
}
|
||||
|
||||
if ((scanline % 64) == 0 && state->m_clr_gun_int)
|
||||
device_set_input_line(state->m_maincpu, 4, HOLD_LINE);
|
||||
}
|
||||
|
||||
/***************************************************************************
|
||||
|
Loading…
Reference in New Issue
Block a user