• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C++ cputag_set_input_line函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了C++中cputag_set_input_line函数的典型用法代码示例。如果您正苦于以下问题:C++ cputag_set_input_line函数的具体用法?C++ cputag_set_input_line怎么用?C++ cputag_set_input_line使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了cputag_set_input_line函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: INTERRUPT_GEN

static INTERRUPT_GEN( sm1800_vblank_interrupt )
{
	sm1800_state *state = device->machine().driver_data<sm1800_state>();
	cputag_set_input_line(device->machine(), "maincpu", 0, state->m_irq_state ?  HOLD_LINE : CLEAR_LINE);
	state->m_irq_state ^= 1;
}
开发者ID:risico,项目名称:jsmess,代码行数:6,代码来源:sm1800.c


示例2: WRITE8_HANDLER

static WRITE8_HANDLER( sound_cpu_command_w )
{
	soundlatch_w(space, offset, data);
	cputag_set_input_line(space->machine, "audiocpu", INPUT_LINE_NMI, PULSE_LINE);
}
开发者ID:AltimorTASDK,项目名称:shmupmametgm,代码行数:5,代码来源:sidepckt.c


示例3: TIMER_CALLBACK

static TIMER_CALLBACK( irq5_gen )
{
	cputag_set_input_line(machine, "maincpu", R3000_IRQ5, ASSERT_LINE);
}
开发者ID:Paulodx,项目名称:sdl-mame-wii,代码行数:4,代码来源:policetr.c


示例4: WRITE8_HANDLER

static WRITE8_HANDLER( gyruss_i8039_irq_w )
{
	cputag_set_input_line(space->machine, "audio2", 0, ASSERT_LINE);
}
开发者ID:Paulodx,项目名称:sdl-mame-wii,代码行数:4,代码来源:gyruss.c


示例5: READ8_HANDLER

static READ8_HANDLER( magmax_sound_irq_ack )
{
    cputag_set_input_line(space->machine(), "audiocpu", 0, CLEAR_LINE);
    return 0;
}
开发者ID:rogerjowett,项目名称:ClientServerMAME,代码行数:5,代码来源:magmax.c


示例6: MACHINE_RESET

static MACHINE_RESET( friskyt )
{
    /* start with the protection mcu halted */
    cputag_set_input_line(machine, "mcu", INPUT_LINE_HALT, ASSERT_LINE);
}
开发者ID:risico,项目名称:jsmess,代码行数:5,代码来源:seicross.c


示例7: update_interrupts

static void update_interrupts(running_machine *machine)
{
	cputag_set_input_line(machine, "maincpu", 1, vblank_interrupt_pending ? ASSERT_LINE : CLEAR_LINE);
	cputag_set_input_line(machine, "maincpu", 2, display_position_interrupt_pending ? ASSERT_LINE : CLEAR_LINE);
	cputag_set_input_line(machine, "maincpu", 3, irq3_pending ? ASSERT_LINE : CLEAR_LINE);
}
开发者ID:nitrologic,项目名称:emu,代码行数:6,代码来源:neogeo.c


示例8: audio_cpu_irq

static void audio_cpu_irq(const device_config *device, int assert)
{
	cputag_set_input_line(device->machine, "audiocpu", 0, assert ? ASSERT_LINE : CLEAR_LINE);
}
开发者ID:nitrologic,项目名称:emu,代码行数:4,代码来源:neogeo.c


示例9: WRITE8_HANDLER

static WRITE8_HANDLER( xyonix_irqack_w )
{
	cputag_set_input_line(space->machine, "maincpu", 0, CLEAR_LINE);
}
开发者ID:hstampfl,项目名称:mame2010-libretro,代码行数:4,代码来源:xyonix.c


示例10: TIMER_CALLBACK

static TIMER_CALLBACK( irq_off )
{
	cputag_set_input_line(machine, "maincpu", M6809_IRQ_LINE, CLEAR_LINE);
}
开发者ID:DarrenBranford,项目名称:MAME4iOS,代码行数:4,代码来源:balsente.c


示例11: INTERRUPT_GEN

static INTERRUPT_GEN( vtech2_interrupt )
{
	cputag_set_input_line(device->machine(), "maincpu", 0, HOLD_LINE);
}
开发者ID:kleopatra999,项目名称:mess-svn,代码行数:4,代码来源:vtech2.c


示例12: TIMER_CALLBACK

static TIMER_CALLBACK( thunderx_firq_callback )
{
	cputag_set_input_line(machine, "maincpu", KONAMI_FIRQ_LINE, HOLD_LINE);
}
开发者ID:nitrologic,项目名称:emu,代码行数:4,代码来源:thunderx.c


示例13: audio_cpu_assert_nmi

static void audio_cpu_assert_nmi(running_machine *machine)
{
	cputag_set_input_line(machine, "audiocpu", INPUT_LINE_NMI, ASSERT_LINE);
}
开发者ID:nitrologic,项目名称:emu,代码行数:4,代码来源:neogeo.c


示例14: WRITE_LINE_DEVICE_HANDLER

static WRITE_LINE_DEVICE_HANDLER( zaccaria_irq0b )
{
	cputag_set_input_line(device->machine(), "audiocpu", 0, state ? ASSERT_LINE : CLEAR_LINE);
}
开发者ID:risico,项目名称:jsmess,代码行数:4,代码来源:zaccaria.c


示例15: WRITE8_HANDLER

static WRITE8_HANDLER( audio_cpu_clear_nmi_w )
{
	cputag_set_input_line(space->machine, "audiocpu", INPUT_LINE_NMI, CLEAR_LINE);
}
开发者ID:nitrologic,项目名称:emu,代码行数:4,代码来源:neogeo.c


示例16: WRITE_LINE_DEVICE_HANDLER

static WRITE_LINE_DEVICE_HANDLER( ipu_ctc_interrupt )
{
	cputag_set_input_line(device->machine(), "ipu", 0, state);
}
开发者ID:kleopatra999,项目名称:mess-svn,代码行数:4,代码来源:mcr.c


示例17: update_interrupt_state

static void update_interrupt_state(running_machine &machine)
{
	compis_state *state = machine.driver_data<compis_state>();
	int i, j, new_vector = 0;

	if (LOG_INTERRUPTS) logerror("update_interrupt_status: req=%02X stat=%02X serv=%02X\n", state->m_i186.intr.request, state->m_i186.intr.status, state->m_i186.intr.in_service);

	/* loop over priorities */
	for (i = 0; i <= state->m_i186.intr.priority_mask; i++)
	{
		/* note: by checking 4 bits, we also verify that the mask is off */
		if ((state->m_i186.intr.timer & 15) == i)
		{
			/* if we're already servicing something at this level, don't generate anything new */
			if (state->m_i186.intr.in_service & 0x01)
				return;

			/* if there's something pending, generate an interrupt */
			if (state->m_i186.intr.status & 0x07)
			{
				if (state->m_i186.intr.status & 1)
					new_vector = 0x08;
				else if (state->m_i186.intr.status & 2)
					new_vector = 0x12;
				else if (state->m_i186.intr.status & 4)
					new_vector = 0x13;
				else
					popmessage("Invalid timer interrupt!");

				/* set the clear mask and generate the int */
				state->m_i186.intr.ack_mask = 0x0001;
				goto generate_int;
			}
		}

		/* check DMA interrupts */
		for (j = 0; j < 2; j++)
			if ((state->m_i186.intr.dma[j] & 15) == i)
			{
				/* if we're already servicing something at this level, don't generate anything new */
				if (state->m_i186.intr.in_service & (0x04 << j))
					return;

				/* if there's something pending, generate an interrupt */
				if (state->m_i186.intr.request & (0x04 << j))
				{
					new_vector = 0x0a + j;

					/* set the clear mask and generate the int */
					state->m_i186.intr.ack_mask = 0x0004 << j;
					goto generate_int;
				}
			}

		/* check external interrupts */
		for (j = 0; j < 4; j++)
			if ((state->m_i186.intr.ext[j] & 15) == i)
			{
				/* if we're already servicing something at this level, don't generate anything new */
				if (state->m_i186.intr.in_service & (0x10 << j))
					return;

				/* if there's something pending, generate an interrupt */
				if (state->m_i186.intr.request & (0x10 << j))
				{
					/* otherwise, generate an interrupt for this request */
					new_vector = 0x0c + j;

					/* set the clear mask and generate the int */
					state->m_i186.intr.ack_mask = 0x0010 << j;
					goto generate_int;
				}
			}
	}
	return;

generate_int:
	/* generate the appropriate interrupt */
	state->m_i186.intr.poll_status = 0x8000 | new_vector;
	if (!state->m_i186.intr.pending)
		cputag_set_input_line(machine, "maincpu", 0, ASSERT_LINE);
	state->m_i186.intr.pending = 1;
	machine.scheduler().trigger(CPU_RESUME_TRIGGER);
	if (LOG_OPTIMIZATION) logerror("  - trigger due to interrupt pending\n");
	if (LOG_INTERRUPTS) logerror("(%f) **** Requesting interrupt vector %02X\n", machine.time().as_double(), new_vector);
}
开发者ID:risico,项目名称:jsmess,代码行数:86,代码来源:compis.c


示例18: compis_irq_set

void compis_irq_set(UINT8 irq)
{
	cputag_set_input_line_vector(machine, "maincpu", 0, irq);
	cputag_set_input_line(machine, "maincpu", 0, HOLD_LINE);
}
开发者ID:risico,项目名称:jsmess,代码行数:5,代码来源:compis.c


示例19: irqhandler

static void irqhandler(running_device *device, int irq)
{
	cputag_set_input_line(device->machine, "soundcpu", 0, irq ? ASSERT_LINE : CLEAR_LINE);
}
开发者ID:DarrenBranford,项目名称:MAME4iOS,代码行数:4,代码来源:powerins.c


示例20: WRITE16_HANDLER

static WRITE16_HANDLER( main_sound_latch_w )
{
	soundlatch_w(space,0,data&0xff);
	cputag_set_input_line(space->machine, "soundcpu", INPUT_LINE_NMI, PULSE_LINE);
}
开发者ID:DarrenBranford,项目名称:MAME4iOS,代码行数:5,代码来源:bingoc.c



注:本文中的cputag_set_input_line函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C++ cputc函数代码示例发布时间:2022-05-30
下一篇:
C++ cputag_get_address_space函数代码示例发布时间:2022-05-30
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap