本文整理汇总了C++中required_device类的典型用法代码示例。如果您正苦于以下问题:C++ required_device类的具体用法?C++ required_device怎么用?C++ required_device使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了required_device类的18个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: update_interrupt
void ql_state::update_interrupt()
{
m_zx8302->extint_w(m_extintl || m_qimi_extint);
}
开发者ID:Robbbert,项目名称:store1,代码行数:4,代码来源:ql.cpp
示例2: screen_update
UINT32 konendev_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
{
return m_gcu->draw(screen, bitmap, cliprect);
}
开发者ID:NULUSIOS,项目名称:mame,代码行数:4,代码来源:konendev.cpp
示例3: machine_reset
virtual void machine_reset() override { m_maincpu->reset(); LOG("--->%s()\n", FUNCNAME); };
开发者ID:k2-git,项目名称:mame,代码行数:1,代码来源:e100.cpp
示例4:
void ti990_4_state::hold_load()
{
m_maincpu->set_input_line(INT_9900_LOAD, ASSERT_LINE);
logerror("ti990_4: Triggering LOAD interrupt\n");
m_nmi_timer->adjust(attotime::from_msec(100));
}
开发者ID:Fulg,项目名称:mame,代码行数:6,代码来源:ti990_4.cpp
示例5: update_speaker
void irisha_state::update_speaker()
{
int level = ( (BIT(m_ppi_portc, 5)) || (BIT(m_ppi_porta, 4)) || !m_sg1_line) ? 1 : 0;
m_speaker->level_w(level);
}
开发者ID:RJRetro,项目名称:mame,代码行数:6,代码来源:irisha.cpp
示例6:
void tm990189_state::hold_load()
{
m_load_state = TRUE;
m_tms9980a->set_input_line(INT_9980A_LOAD, ASSERT_LINE);
machine().scheduler().timer_set(attotime::from_msec(100), timer_expired_delegate(FUNC(tm990189_state::clear_load),this));
}
开发者ID:vorlenko,项目名称:mame,代码行数:6,代码来源:tm990189.c
示例7: fdc_intrq_w
void mirage_state::fdc_intrq_w(bool state)
{
m_maincpu->set_input_line(INPUT_LINE_NMI, state);
}
开发者ID:,项目名称:,代码行数:4,代码来源:
示例8:
void apricot_state::wd2793_intrq_w(bool state)
{
m_pic->ir4_w(state);
m_iop->ext1_w(state);
}
开发者ID:felipesanches,项目名称:ume,代码行数:5,代码来源:apricot.c
示例9: ram_bank_w
void dfruit_state::ram_bank_w(uint16_t offset, uint8_t data, uint8_t bank_num)
{
m_vdp->space().write_byte(offset + (m_ram_bank[bank_num]) * 0x1000,data);;
}
开发者ID:SailorSat,项目名称:cabmame,代码行数:4,代码来源:dfruit.cpp
示例10: screen_update
uint32_t destroyr_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
{
int i, j;
bitmap.fill(0, cliprect);
/* draw major objects */
for (i = 0; i < 16; i++)
{
int attr = m_major_obj_ram[2 * i + 0] ^ 0xff;
int horz = m_major_obj_ram[2 * i + 1];
int num = attr & 3;
int scan = attr & 4;
int flipx = attr & 8;
if (scan == 0)
{
if (horz >= 192)
horz -= 256;
}
else
{
if (horz < 192)
continue;
}
m_gfxdecode->gfx(2)->transpen(bitmap,cliprect, num, 0, flipx, 0, horz, 16 * i, 0);
}
/* draw alpha numerics */
for (i = 0; i < 8; i++)
{
for (j = 0; j < 32; j++)
{
int num = m_alpha_num_ram[32 * i + j];
m_gfxdecode->gfx(0)->transpen(bitmap,cliprect, num, 0, 0, 0, 8 * j, 8 * i, 0);
}
}
/* draw minor objects */
for (i = 0; i < 2; i++)
{
int num = i << 4 | (m_minor_obj_ram[i + 0] & 0xf);
int horz = 256 - m_minor_obj_ram[i + 2];
int vert = 256 - m_minor_obj_ram[i + 4];
m_gfxdecode->gfx(1)->transpen(bitmap,cliprect, num, 0, 0, 0, horz, vert, 0);
}
/* draw waves */
for (i = 0; i < 4; i++)
{
m_gfxdecode->gfx(3)->transpen(bitmap,cliprect, m_wavemod ? 1 : 0, 0, 0, 0, 64 * i, 0x4e, 0);
}
/* draw cursor */
for (i = 0; i < 256; i++)
{
if (i & 4)
bitmap.pix16(m_cursor ^ 0xff, i) = 7;
}
return 0;
}
开发者ID:Robbbert,项目名称:store1,代码行数:65,代码来源:destroyr.cpp
示例11: ram_bank_r
uint8_t dfruit_state::ram_bank_r(uint16_t offset, uint8_t bank_num)
{
return m_vdp->space().read_byte(offset + (m_ram_bank[bank_num]) * 0x1000);;
}
开发者ID:SailorSat,项目名称:cabmame,代码行数:4,代码来源:dfruit.cpp
示例12: screen_update_luckgrln
UINT32 luckgrln_state::screen_update_luckgrln(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
{
int y,x;
int count = 0;
const rectangle &visarea = screen.visible_area();
int i;
rectangle clip = visarea;
bitmap.fill(0, cliprect);
for (i= 0;i < 64;i++)
{
m_reel1_tilemap->set_scrolly(i, m_reel1_scroll[i]);
m_reel2_tilemap->set_scrolly(i, m_reel2_scroll[i]);
m_reel3_tilemap->set_scrolly(i, m_reel3_scroll[i]);
m_reel4_tilemap->set_scrolly(i, m_reel4_scroll[i]);
}
for (y=0;y<32;y++)
{
clip.min_y = y*8;
clip.max_y = y*8+8;
if (clip.min_y<visarea.min_y) clip.min_y = visarea.min_y;
if (clip.max_y>visarea.max_y) clip.max_y = visarea.max_y;
for (x=0;x<64;x++)
{
UINT16 tile = (m_luck_vram1[count] & 0xff);
UINT16 tile_high = (m_luck_vram2[count]);
UINT16 tileattr = (m_luck_vram3[count]);
UINT8 col = 0;
UINT8 region = 0;
UINT8 bgenable;
clip.min_x = x*8;
clip.max_x = x*8+8;
if (clip.min_x<visarea.min_x) clip.min_x = visarea.min_x;
if (clip.max_x>visarea.max_x) clip.max_x = visarea.max_x;
/*
m_luck_vram1 tttt tttt (t = low tile bits)
m_luck_vram2 tttt ppp? (t = high tile bits) (p = pal select)?
*/
tile |= (tile_high & 0xf0) << 4;
if (tileattr & 0x02) tile |= 0x1000;
// ?? low bit is used too
col = tile_high&0xf;
// --ss fbt- m_luck_vram3
// - = unused?
// s = reel layer select for this 8x8 region
// f = fg enabled for this 8x8 region (or priority?)
// b = reel enabled for this 8x8 region (not set on startup screens)
// t = tile bank
bgenable = (tileattr &0x30)>>4;
#if 0 // treat bit as fg enable
if (tileattr&0x04)
{
if (bgenable==0) m_reel1_tilemap->draw(screen, bitmap, clip, 0, 0);
if (bgenable==1) m_reel2_tilemap->draw(screen, bitmap, clip, 0, 0);
if (bgenable==2) m_reel3_tilemap->draw(screen, bitmap, clip, 0, 0);
if (bgenable==3) m_reel4_tilemap->draw(screen, bitmap, clip, 0, 0);
}
if (tileattr&0x08) m_gfxdecode->gfx(region)->transpen(bitmap,clip,tile,col,0,0,x*8,y*8, 0);
#else // treat it as priority flag instead (looks better in non-adult title screen - needs verifying)
if (!(tileattr&0x08)) m_gfxdecode->gfx(region)->transpen(bitmap,clip,tile,col,0,0,x*8,y*8, 0);
if (tileattr&0x04)
{
if (bgenable==0) m_reel1_tilemap->draw(screen, bitmap, clip, 0, 0);
if (bgenable==1) m_reel2_tilemap->draw(screen, bitmap, clip, 0, 0);
if (bgenable==2) m_reel3_tilemap->draw(screen, bitmap, clip, 0, 0);
if (bgenable==3) m_reel4_tilemap->draw(screen, bitmap, clip, 0, 0);
}
if ((tileattr&0x08)) m_gfxdecode->gfx(region)->transpen(bitmap,clip,tile,col,0,0,x*8,y*8, 0);
#endif
count++;
}
}
return 0;
}
开发者ID:,项目名称:,代码行数:95,代码来源:
示例13: fdc_drq_w
void mirage_state::fdc_drq_w(bool state)
{
m_maincpu->set_input_line(M6809_IRQ_LINE, state);
}
开发者ID:,项目名称:,代码行数:4,代码来源:
示例14: mquake
INPUT_PORTS_END
/*************************************
*
* Machine driver
*
*************************************/
void mquake_state::mquake(machine_config &config)
{
/* basic machine hardware */
M68000(config, m_maincpu, amiga_state::CLK_7M_NTSC);
m_maincpu->set_addrmap(AS_PROGRAM, &mquake_state::main_map);
ADDRESS_MAP_BANK(config, "overlay").set_map(&amiga_state::overlay_512kb_map).set_options(ENDIANNESS_BIG, 16, 22, 0x200000);
NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
ntsc_video(config);
PALETTE(config, m_palette, 4096);
m_palette->set_init(FUNC(mquake_state::palette_init_amiga));
MCFG_VIDEO_START_OVERRIDE(mquake_state,amiga)
/* sound hardware */
SPEAKER(config, "lspeaker").front_left();
SPEAKER(config, "rspeaker").front_right();
paula_8364_device &paula(PAULA_8364(config, "amiga", amiga_state::CLK_C1_NTSC));
paula.add_route(0, "lspeaker", 0.50);
paula.add_route(1, "rspeaker", 0.50);
paula.add_route(2, "rspeaker", 0.50);
paula.add_route(3, "lspeaker", 0.50);
paula.mem_read_cb().set(FUNC(amiga_state::chip_ram_r));
paula.int_cb().set(FUNC(amiga_state::paula_int_w));
ES5503(config, m_es5503, amiga_state::CLK_7M_NTSC); /* ES5503 is likely mono due to channel strobe used as bank select */
m_es5503->set_channels(1);
m_es5503->set_addrmap(0, &mquake_state::mquake_es5503_map);
m_es5503->add_route(0, "lspeaker", 0.50);
m_es5503->add_route(0, "rspeaker", 0.50);
/* cia */
MOS8520(config, m_cia_0, amiga_state::CLK_E_NTSC);
m_cia_0->irq_wr_callback().set(FUNC(amiga_state::cia_0_irq));
m_cia_0->pa_rd_callback().set_ioport("CIA0PORTA");
m_cia_0->pa_wr_callback().set(FUNC(amiga_state::cia_0_port_a_write));
MOS8520(config, m_cia_1, amiga_state::CLK_E_NTSC);
m_cia_1->irq_wr_callback().set(FUNC(amiga_state::cia_1_irq));
/* fdc */
AMIGA_FDC(config, m_fdc, amiga_state::CLK_7M_NTSC);
m_fdc->index_callback().set("cia_1", FUNC(mos8520_device::flag_w));
m_fdc->read_dma_callback().set(FUNC(amiga_state::chip_ram_r));
m_fdc->write_dma_callback().set(FUNC(amiga_state::chip_ram_w));
m_fdc->dskblk_callback().set(FUNC(amiga_state::fdc_dskblk_w));
m_fdc->dsksyn_callback().set(FUNC(amiga_state::fdc_dsksyn_w));
}
开发者ID:Octocontrabass,项目名称:mame,代码行数:63,代码来源:mquake.cpp
示例15: machine_reset
INPUT_PORTS_END
void rainbow_state::machine_reset()
{
m_unit = INVALID_DRIVE;
m_fdc->reset();
m_fdc->set_floppy(NULL);
m_fdc->dden_w(0);
//m_fdc->set_force_ready(false);
/* configure RAM */
address_space &program = m_maincpu->space(AS_PROGRAM);
if (m_inp8->read() < END_OF_RAM)
{
program.unmap_readwrite(m_inp8->read(), END_OF_RAM);
}
// BIOS can't handle soft resets (=> triggers ERROR 16).
if ( COLD_BOOT == 2 )
{ // As a fallback, execute a hard reboot -
device().machine().schedule_hard_reset();
}
if ( COLD_BOOT == 1 )
{
COLD_BOOT = 2;
m_crtc->MHFU(-100); // reset MHFU counter
}
m_z80->set_input_line(INPUT_LINE_HALT, ASSERT_LINE);
INT88 = false;
INTZ80 = false;
m_zflip = true;
m_z80_halted = true;
m_kbd_tx_ready = m_kbd_rx_ready = false;
m_kbd8251->write_cts(1);
m_KBD = 0;
m_irq_high = 0;
// RESET ALL LEDs
output_set_value("led1", 1);
output_set_value("led2", 1);
output_set_value("led3", 1);
output_set_value("led4", 1);
output_set_value("led5", 1);
output_set_value("led6", 1);
output_set_value("led7", 1);
// GREEN KEYBOARD LEDs (1 = on, 0 = off):
output_set_value("led_wait", 0); // led8
output_set_value("led_compose", 0); // led9
output_set_value("led_lock", 0); // led10
output_set_value("led_hold", 0); // led11
m_irq_mask = 0;
}
开发者ID:MisterTea,项目名称:MAMEHub,代码行数:64,代码来源:rainbow.c
示例16:
void basic52_state::kbd_put(u8 data)
{
m_maincpu->set_input_line(MCS51_RX_LINE, ASSERT_LINE);
m_maincpu->set_input_line(MCS51_RX_LINE, CLEAR_LINE);
m_term_data = data;
}
开发者ID:MASHinfo,项目名称:mame,代码行数:6,代码来源:basic52.cpp
示例17:
void digel804_state::machine_reset()
{
m_vfd->reset();
}
开发者ID:mbcoguno,项目名称:mame,代码行数:4,代码来源:digel804.c
示例18: device_timer
void blockade_state::device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr)
{
// resume cpu, on the real system, this is connected the READY input
m_maincpu->set_input_line(INPUT_LINE_HALT, CLEAR_LINE);
}
开发者ID:MASHinfo,项目名称:mame,代码行数:5,代码来源:blockade.cpp
注:本文中的required_device类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论