void v1050_state::v1050_video(machine_config &config) { H46505(config, m_crtc, 15.36_MHz_XTAL/8); m_crtc->set_screen(SCREEN_TAG); m_crtc->set_show_border_area(true); m_crtc->set_char_width(8); m_crtc->set_update_row_callback(FUNC(v1050_state::crtc_update_row), this); m_crtc->out_vsync_callback().set(FUNC(v1050_state::crtc_vs_w)); screen_device &screen(SCREEN(config, SCREEN_TAG, SCREEN_TYPE_RASTER, rgb_t::green())); screen.set_screen_update(H46505_TAG, FUNC(h46505_device::screen_update)); screen.set_refresh_hz(60); screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); screen.set_size(640, 400); screen.set_visarea(0,640-1, 0, 400-1); PALETTE(config, m_palette, palette_device::MONOCHROME_HIGHLIGHT); }
GFXDECODE_END void hitpoker_state::hitpoker(machine_config &config) { MC68HC11(config, m_maincpu, 1000000); m_maincpu->set_addrmap(AS_PROGRAM, &hitpoker_state::hitpoker_map); m_maincpu->set_addrmap(AS_IO, &hitpoker_state::hitpoker_io); m_maincpu->set_config(0, 0x100, 0x01); NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); /* video hardware */ screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); screen.set_refresh_hz(60); screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); // not accurate screen.set_size(648, 480); //setted by the CRTC screen.set_visarea(0, 648-1, 0, 240-1); screen.set_screen_update(FUNC(hitpoker_state::screen_update_hitpoker)); screen.set_palette(m_palette); h46505_device &crtc(H46505(config, "crtc", CRTC_CLOCK/2)); /* hand tuned to get ~60 fps */ crtc.set_screen("screen"); crtc.set_show_border_area(false); crtc.set_char_width(8); crtc.out_vsync_callback().set(FUNC(hitpoker_state::hitpoker_irq)); GFXDECODE(config, m_gfxdecode, m_palette, gfx_hitpoker); PALETTE(config, m_palette).set_entries(0x800); SPEAKER(config, "mono").front_center(); ym2149_device &aysnd(YM2149(config, "aysnd", 1500000)); aysnd.port_a_read_callback().set_ioport("DSW1"); aysnd.port_b_read_callback().set_ioport("DSW2"); aysnd.add_route(ALL_OUTPUTS, "mono", 0.50); }
GFXDECODE_END //------------------------------------------------- // device_add_mconfig - add device configuration //------------------------------------------------- void c64_xl80_device::device_add_mconfig(machine_config &config) { screen_device &screen(SCREEN(config, MC6845_SCREEN_TAG, SCREEN_TYPE_RASTER, rgb_t::white())); screen.set_screen_update(HD46505SP_TAG, FUNC(h46505_device::screen_update)); screen.set_size(80*8, 24*8); screen.set_visarea(0, 80*8-1, 0, 24*8-1); screen.set_refresh_hz(50); GFXDECODE(config, "gfxdecode", m_palette, gfx_c64_xl80); PALETTE(config, m_palette, palette_device::MONOCHROME); H46505(config, m_crtc, XTAL(14'318'181) / 8); m_crtc->set_screen(MC6845_SCREEN_TAG); m_crtc->set_show_border_area(true); m_crtc->set_char_width(8); m_crtc->set_update_row_callback(FUNC(c64_xl80_device::crtc_update_row), this); }
SPEAKER(config, "lspeaker").front_left(); SPEAKER(config, "rspeaker").front_right(); MCFG_DEVICE_ADD("bsmt", BSMT2000, XTAL(24'000'000)) MCFG_SOUND_ROUTE(0, "lspeaker", 1.0) MCFG_SOUND_ROUTE(1, "rspeaker", 1.0) MACHINE_CONFIG_END MACHINE_CONFIG_START(tapatune_state::tapatune) tapatune_base(config); MCFG_DEVICE_ADD("videocpu", M68000, XTAL(24'000'000) / 2) MCFG_DEVICE_PROGRAM_MAP(video_map) MCFG_QUANTUM_PERFECT_CPU("videocpu") h46505_device &crtc(H46505(config, "crtc", XTAL(24'000'000) / 16)); crtc.set_screen("screen"); crtc.set_show_border_area(false); crtc.set_char_width(5); crtc.set_begin_update_callback(FUNC(tapatune_state::crtc_begin_update), this); crtc.set_update_row_callback(FUNC(tapatune_state::crtc_update_row), this); crtc.out_vsync_callback().set(FUNC(tapatune_state::crtc_vsync)); /* video hardware */ MCFG_SCREEN_ADD("screen", RASTER) MCFG_SCREEN_RAW_PARAMS(XTAL(24'000'000) / 16 * 5, 500, 0, 320, 250, 0, 240) MCFG_SCREEN_UPDATE_DEVICE("crtc", h46505_device, screen_update) MACHINE_CONFIG_END /************************************* *
i8255_device &ppi(I8255A(config, "ppi8255_0")); ppi.out_pa_callback().set(FUNC(albazg_state::mux_w)); ppi.in_pb_callback().set_ioport("SYSTEM"); ppi.in_pc_callback().set(FUNC(albazg_state::mux_r)); /* video hardware */ MCFG_SCREEN_ADD("screen", RASTER) MCFG_SCREEN_REFRESH_RATE(60) MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0)) MCFG_SCREEN_SIZE(32*8, 32*8) MCFG_SCREEN_VISIBLE_AREA(0, 32*8-1, 0, 32*8-1) MCFG_SCREEN_UPDATE_DRIVER(albazg_state, screen_update_yumefuda) MCFG_SCREEN_PALETTE("palette") h46505_device &crtc(H46505(config, "crtc", MASTER_CLOCK/16)); /* hand tuned to get ~60 fps */ crtc.set_screen("screen"); crtc.set_show_border_area(false); crtc.set_char_width(8); MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_yumefuda) PALETTE(config, "palette").set_format(palette_device::xRGB_555, 0x80); /* sound hardware */ SPEAKER(config, "mono").front_center(); ay8910_device &aysnd(AY8910(config, "aysnd", MASTER_CLOCK/16)); /* guessed to use the same xtal as the crtc */ aysnd.port_a_read_callback().set_ioport("DSW1"); aysnd.port_b_read_callback().set_ioport("DSW2"); aysnd.port_a_write_callback().set(FUNC(albazg_state::yumefuda_output_w));