本文整理汇总了C++中cpuintrf_pop_context函数的典型用法代码示例。如果您正苦于以下问题:C++ cpuintrf_pop_context函数的具体用法?C++ cpuintrf_pop_context怎么用?C++ cpuintrf_pop_context使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了cpuintrf_pop_context函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: cpunum_set_reg
void cpunum_set_reg(int cpunum, int regnum, unsigned val)
{
VERIFY_CPUNUM_VOID(cpunum_set_reg);
cpuintrf_push_context(cpunum);
(*cpu[cpunum].intf.set_reg)(regnum, val);
cpuintrf_pop_context();
}
示例2: cpunum_set_op_base
void cpunum_set_op_base(int cpunum, unsigned val)
{
VERIFY_CPUNUM_VOID(cpunum_set_op_base);
cpuintrf_push_context(cpunum);
(*cpu[cpunum].intf.set_op_base)(val);
cpuintrf_pop_context();
}
示例3: cpunum_write_byte
void cpunum_write_byte(int cpunum, offs_t address, UINT8 data)
{
VERIFY_CPUNUM(cpunum_write_byte);
cpuintrf_push_context(cpunum);
program_write_byte(address, data);
cpuintrf_pop_context();
}
示例4: cpunum_set_opbase
void cpunum_set_opbase(int cpunum, unsigned val)
{
VERIFY_CPUNUM(cpunum_set_opbase);
cpuintrf_push_context(cpunum);
memory_set_opbase(val);
cpuintrf_pop_context();
}
示例5: cpunum_write_byte
void cpunum_write_byte(int cpunum, offs_t address, data8_t data)
{
VERIFY_CPUNUM_VOID(cpunum_write_byte);
cpuintrf_push_context(cpunum);
(*cpu[cpunum].intf.memory_write)(address, data);
cpuintrf_pop_context();
}
示例6: cpunum_set_cycle_tbl
void cpunum_set_cycle_tbl(int cpunum, int which, void *new_table)
{
VERIFY_CPUNUM_VOID(cpunum_set_cycle_tbl);
cpuintrf_push_context(cpunum);
(*cpu[cpunum].intf.set_cycle_table)(which, new_table);
cpuintrf_pop_context();
}
示例7: cpu_vblankcallback
static void cpu_vblankcallback(int param)
{
int cpunum;
if (vblank_countdown == 1)
vblank = 1;
/* loop over CPUs */
for (cpunum = 0; cpunum < cpu_gettotalcpu(); cpunum++)
{
/* if the interrupt multiplier is valid */
if (cpu[cpunum].vblankint_multiplier != -1)
{
/* decrement; if we hit zero, generate the interrupt and reset the countdown */
if (!--cpu[cpunum].vblankint_countdown)
{
/* a param of -1 means don't call any callbacks */
if (param != -1)
{
/* if the CPU has a VBLANK handler, call it */
if (Machine->drv->cpu[cpunum].vblank_interrupt && cpu_getstatus(cpunum))
{
cpuintrf_push_context(cpunum);
(*Machine->drv->cpu[cpunum].vblank_interrupt)();
cpuintrf_pop_context();
}
/* update the counters */
cpu[cpunum].iloops--;
}
/* reset the countdown and timer */
cpu[cpunum].vblankint_countdown = cpu[cpunum].vblankint_multiplier;
timer_adjust(cpu[cpunum].vblankint_timer, TIME_NEVER, 0, 0);
}
}
/* else reset the VBLANK timer if this is going to be a real VBLANK */
else if (vblank_countdown == 1)
timer_adjust(cpu[cpunum].vblankint_timer, TIME_NEVER, 0, 0);
}
/* is it a real VBLANK? */
if (!--vblank_countdown)
{
/* do we update the screen now? */
if (!(Machine->drv->video_attributes & VIDEO_UPDATE_AFTER_VBLANK))
time_to_quit = updatescreen();
/* Set the timer to update the screen */
timer_set(TIME_IN_USEC(Machine->drv->vblank_duration), 0, cpu_updatecallback);
/* reset the globals */
cpu_vblankreset();
/* reset the counter */
vblank_countdown = vblank_multiplier;
}
}
示例8: cpunum_reset
void cpunum_reset(int cpunum)
{
VERIFY_CPUNUM(cpunum_reset);
cpuintrf_push_context(cpunum);
memory_set_opbase(0);
(*cpu[cpunum].intf.reset)();
cpuintrf_pop_context();
}
示例9: cpunum_read_byte
data8_t cpunum_read_byte(int cpunum, offs_t address)
{
int result;
VERIFY_CPUNUM(0, cpunum_read_byte);
cpuintrf_push_context(cpunum);
result = (*cpu[cpunum].intf.memory_read)(address);
cpuintrf_pop_context();
return result;
}
示例10: cpunum_dasm
unsigned cpunum_dasm(int cpunum, char *buffer, unsigned pc)
{
unsigned result;
VERIFY_CPUNUM(1, cpunum_dasm);
cpuintrf_push_context(cpunum);
result = internal_dasm(cpunum, buffer, pc);
cpuintrf_pop_context();
return result;
}
示例11: cpunum_dasm
offs_t cpunum_dasm(int cpunum, char *buffer, offs_t pc, const UINT8 *oprom, const UINT8 *opram)
{
unsigned result;
VERIFY_CPUNUM(cpunum_dasm);
cpuintrf_push_context(cpunum);
result = activecpu_dasm(buffer, pc, oprom, opram);
cpuintrf_pop_context();
return result;
}
示例12: VERIFY_CPUNUM
const char *cpunum_dump_reg(int cpunum, int regnum)
{
const char *result;
VERIFY_CPUNUM("", cpunum_dump_reg);
cpuintrf_push_context(cpunum);
result = (*cpu[cpunum].intf.cpu_info)(NULL, CPU_INFO_REG + regnum);
cpuintrf_pop_context();
return result;
}
示例13: cpunum_dasm
unsigned cpunum_dasm(int cpunum, char *buffer, unsigned pc)
{
unsigned result;
VERIFY_CPUNUM(1, cpunum_dasm);
cpuintrf_push_context(cpunum);
result = (*cpu[cpunum].intf.cpu_dasm)(buffer, pc);
cpuintrf_pop_context();
return result;
}
示例14: cpunum_set_info_ptr
void cpunum_set_info_ptr(int cpunum, UINT32 state, void *data)
{
union cpuinfo info;
VERIFY_CPUNUM(cpunum_set_info_ptr);
info.p = data;
cpuintrf_push_context(cpunum);
(*cpu[cpunum].intf.set_info)(state, &info);
cpuintrf_pop_context();
}
示例15: cpunum_read_byte
UINT8 cpunum_read_byte(int cpunum, offs_t address)
{
int result;
VERIFY_CPUNUM(cpunum_read_byte);
cpuintrf_push_context(cpunum);
result = program_read_byte(address);
cpuintrf_pop_context();
return result;
}