Exemplo n.º 1
0
static INTERRUPT_GEN( simpsons_irq )
{
	if (K053246_is_IRQ_enabled())
	{
		simpsons_objdma();

		// 32+256us delay at 8MHz dotclock; artificially shortened since actual V-blank length is unknown
		timer_set(TIME_IN_USEC(30), 0, dmaend_callback);
	}

	if (K052109_is_IRQ_enabled())
		cpunum_set_input_line(0, KONAMI_IRQ_LINE, HOLD_LINE);
}
Exemplo n.º 2
0
static INTERRUPT_GEN(dbz2_interrupt)
{
	switch (cpu_getiloops())
	{
		case 0:
			cpunum_set_input_line(0, MC68000_IRQ_2, HOLD_LINE);
			break;

		case 1:
			if (K053246_is_IRQ_enabled())
				cpunum_set_input_line(0, MC68000_IRQ_4, HOLD_LINE);
			break;
	}
}
Exemplo n.º 3
0
Arquivo: dbz.c Projeto: nitrologic/emu
static INTERRUPT_GEN( dbz_interrupt )
{
	switch (cpu_getiloops(device))
	{
		case 0:
			cpu_set_input_line(device, M68K_IRQ_2, HOLD_LINE);
			break;

		case 1:
			if (K053246_is_IRQ_enabled())
				cpu_set_input_line(device, M68K_IRQ_4, HOLD_LINE);
			break;
	}
}
Exemplo n.º 4
0
static int simpsons_irq(void)
{
	if (cpu_getiloops() == 0)
	{
		if (simpsons_firq_enabled && K053246_is_IRQ_enabled())
			return KONAMI_INT_FIRQ;
	}
	else
	{
		if (K052109_is_IRQ_enabled())
			return KONAMI_INT_IRQ;
	}

	return ignore_interrupt();
}
Exemplo n.º 5
0
static INTERRUPT_GEN( gijoe_interrupt )
{
	// global interrupt masking (*this game only)
	if (!K056832_is_IRQ_enabled(0)) return;

	if (K053246_is_IRQ_enabled())
	{
		gijoe_objdma();

		// 42.7us(clr) + 341.3us(xfer) delay at 6Mhz dotclock
		timer_adjust(dmadelay_timer, TIME_IN_USEC(JOE_DMADELAY), 0, 0);
	}

	// trigger V-blank interrupt
	if (cur_control2 & 0x0080)
		cpunum_set_input_line(0, 5, HOLD_LINE);
}