Esempio n. 1
0
void wow_interrupt_enable_w(int offset, int data)
{
    InterruptFlag = data;

    if (data & 0x01)					/* Disable Interrupts? */
  	    interrupt_enable_w(0,0);
    else
  		interrupt_enable_w(0,1);

    /* Gorf Special interrupt */

    if (data & 0x10)
 	{
  		GorfDelay =(CurrentScan + 7) & 0xFF;

        /* Gorf Special *MUST* occur before next scanline interrupt */

        if ((NextScanInt > CurrentScan) && (NextScanInt < GorfDelay))
        {
          	GorfDelay = NextScanInt - 1;
        }

#ifdef MAME_DEBUG
        if (errorlog) fprintf(errorlog,"Gorf Delay set to %02x\n",GorfDelay);
#endif

    }

#ifdef MAME_DEBUG
    if (errorlog) fprintf(errorlog,"Interrupt Flag set to %02x\n",InterruptFlag);
#endif
}
Esempio n. 2
0
static WRITE16_HANDLER( xmen_18fa00_w )
{
	if(ACCESSING_LSB) {
		/* bit 2 is interrupt enable */
		interrupt_enable_w(0,data & 0x04);
	}
}
Esempio n. 3
0
static WRITE8_HANDLER(data_410_w)
{
	coin_counter_w(0,data&2);
	coin_counter_w(1,data&4);
	interrupt_enable_w(0,data&0x10);
	flip_screen_set(data&0x20);
}
Esempio n. 4
0
static WRITE16_HANDLER( xmen_18fa00_w )
{
	if(ACCESSING_BITS_0_7)
	{
		/* bit 2 is interrupt enable */
		interrupt_enable_w(space, 0, data & 0x04);
	}
}
Esempio n. 5
0
static WRITE8_DEVICE_HANDLER( nmi_w )
{
	const address_space *space = cputag_get_address_space(device->machine, "cpu", ADDRESS_SPACE_PROGRAM);

	/* bit 4 - play/raise button lamp, lamp 9 in selection test mode  */
	set_led_status(8,data & 0x10);

	/* bit 6 enables NMI */
	interrupt_enable_w(space, 0, data & 0x40);
}
Esempio n. 6
0
static WRITE8_HANDLER( sound_w )
{
	/* bit 3 used but unknown */

	/* bit 6 enables NMI */
	interrupt_enable_w(0,data & 0x40);

	/* bit 7 goes directly to the sound amplifier */
	DAC_data_w(0,((data & 0x80) >> 7) * 255);

/*  logerror("%04x: sound_w %02x\n",activecpu_get_pc(),data); */
/*  ui_popup("%02x",data); */
}
Esempio n. 7
0
static WRITE8_DEVICE_HANDLER( sound_w )
{
	const address_space *space = cputag_get_address_space(device->machine, "cpu", ADDRESS_SPACE_PROGRAM);

	/* bit 3 - coin lockout, lamp10 in poker / lamp6 in trivia test modes */
	coin_lockout_global_w(~data & 0x08);
	set_led_status(9,data & 0x08);

	/* bit 5 - ticket out in trivia games */
	ticket_dispenser_w(space, 0, (data & 0x20)<< 2);

	/* bit 6 enables NMI */
	interrupt_enable_w(space, 0, data & 0x40);

	/* bit 7 goes directly to the sound amplifier */
	dac_data_w(devtag_get_device(device->machine, "dac"), ((data & 0x80) >> 7) * 255);
}
Esempio n. 8
0
static void friskyt_portB_w(int offset,int data)
{
//if (errorlog) fprintf(errorlog,"PC %04x: 8910 port B = %02x\n",cpu_get_pc(),data);
	/* bit 0 is IRQ enable */
	interrupt_enable_w(0,data & 1);

	/* bit 1 flips screen */

	/* bit 2 resets the microcontroller */
	if (((portb & 4) == 0) && (data & 4))
	{
		/* reset and start the protection mcu */
		cpu_set_reset_line(1, PULSE_LINE);
		cpu_set_halt_line(1, CLEAR_LINE);
	}

	/* other bits unknown */
	portb = data;
}
Esempio n. 9
0
static WRITE8_HANDLER( friskyt_portB_w )
{
//logerror("PC %04x: 8910 port B = %02x\n",activecpu_get_pc(),data);
	/* bit 0 is IRQ enable */
	interrupt_enable_w(0,data & 1);

	/* bit 1 flips screen */

	/* bit 2 resets the microcontroller */
	if (((portb & 4) == 0) && (data & 4))
	{
		/* reset and start the protection mcu */
		cpunum_set_input_line(1, INPUT_LINE_RESET, PULSE_LINE);
		cpunum_set_input_line(1, INPUT_LINE_HALT, CLEAR_LINE);
	}

	/* other bits unknown */
	portb = data;
}
Esempio n. 10
0
static WRITE8_HANDLER( espial_master_interrupt_enable_w )
{
	interrupt_enable_w(space, offset, ~data & 1);
}
Esempio n. 11
0
void firetrap_nmi_disable_w(int offset,int data)
{
	interrupt_enable_w(offset,~data & 1);
}
Esempio n. 12
0
static WRITE8_HANDLER( irq_enable_w)
{
	interrupt_enable_w( 0, (~data) & 1 );
}
Esempio n. 13
0
void crbaloon_06_w(int offset,int data)
{
	val06 = data;

	interrupt_enable_w(offset,data & 1);
}
Esempio n. 14
0
/* Enable hardware interrupt */
void slapfight_port_07_w(int offset, int data)
{
	interrupt_enable_w(0,1);
}