mirror of
https://github.com/holub/mame
synced 2025-10-06 17:08:28 +03:00
mc6845: first part of MCFG macros removal (nw)
This commit is contained in:
parent
746ee16095
commit
f3cb459859
@ -436,7 +436,7 @@ MACHINE_CONFIG_START(ecb_grip21_device::device_add_mconfig)
|
||||
MCFG_MC6845_OUT_DE_CB(WRITELINE(m_sti, z80sti_device, i1_w))
|
||||
MCFG_MC6845_OUT_CUR_CB(WRITELINE(m_sti, z80sti_device, i1_w))
|
||||
|
||||
// MCFG_MC6845_ADD(HD6345_TAG, HD6345, SCREEN_TAG, XTAL(16'000'000)/4)
|
||||
// HD6345(config, HD6345_TAG, XTAL(16'000'000)/4).set_screen(SCREEN_TAG);
|
||||
|
||||
I8255A(config, m_ppi);
|
||||
m_ppi->in_pa_callback().set(FUNC(ecb_grip21_device::ppi_pa_r));
|
||||
|
@ -478,10 +478,11 @@ MACHINE_CONFIG_START(_4roses_state::_4roses)
|
||||
MCFG_PALETTE_INIT_OWNER(_4roses_state,funworld)
|
||||
MCFG_VIDEO_START_OVERRIDE(_4roses_state,funworld)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", MASTER_CLOCK/8) /* 2MHz, guess */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(4)
|
||||
//MCFG_MC6845_OUT_VSYNC_CB(INPUTLINE("maincpu", INPUT_LINE_NMI))
|
||||
mc6845_device &crtc(MC6845(config, "crtc", MASTER_CLOCK/8)); /* 2MHz, guess */
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(4);
|
||||
//crtc.out_vsync_callback().set_inputline(m_maincpu, INPUT_LINE_NMI);
|
||||
|
||||
/* sound hardware */
|
||||
SPEAKER(config, "mono").front_center();
|
||||
|
@ -1059,10 +1059,11 @@ MACHINE_CONFIG_START(_5clown_state::fclown)
|
||||
MCFG_PALETTE_ADD("palette", 256)
|
||||
MCFG_PALETTE_INIT_OWNER(_5clown_state, _5clown)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", MASTER_CLOCK/16) /* guess */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(INPUTLINE("maincpu", INPUT_LINE_NMI))
|
||||
mc6845_device &crtc(MC6845(config, "crtc", MASTER_CLOCK/16)); /* guess */
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
crtc.out_vsync_callback().set_inputline(m_maincpu, INPUT_LINE_NMI);
|
||||
|
||||
/* sound hardware */
|
||||
SPEAKER(config, "mono").front_center();
|
||||
|
@ -8,7 +8,7 @@ driver by Angelo Salese
|
||||
|
||||
Notes:
|
||||
-The name of this hardware is "Alba ZG board",a newer revision of the
|
||||
"Alba ZC board" used by Hanaroku (albazc.c driver). Test mode says clearly that this is
|
||||
"Alba ZC board" used by Hanaroku (albazc.cpp driver). Test mode says clearly that this is
|
||||
from 1991.
|
||||
|
||||
TODO:
|
||||
@ -385,9 +385,10 @@ MACHINE_CONFIG_START(albazg_state::yumefuda)
|
||||
MCFG_SCREEN_UPDATE_DRIVER(albazg_state, screen_update_yumefuda)
|
||||
MCFG_SCREEN_PALETTE("palette")
|
||||
|
||||
MCFG_MC6845_ADD("crtc", H46505, "screen", MASTER_CLOCK/16) /* hand tuned to get ~60 fps */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
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 )
|
||||
MCFG_PALETTE_ADD("palette", 0x80)
|
||||
|
@ -871,10 +871,11 @@ MACHINE_CONFIG_START(amaticmg_state::amaticmg)
|
||||
MCFG_SCREEN_UPDATE_DRIVER(amaticmg_state, screen_update_amaticmg)
|
||||
MCFG_SCREEN_PALETTE("palette")
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", CRTC_CLOCK)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(4)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(INPUTLINE("maincpu", INPUT_LINE_NMI)) // no NMI mask?
|
||||
mc6845_device &crtc(MC6845(config, "crtc", CRTC_CLOCK));
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(4);
|
||||
crtc.out_vsync_callback().set_inputline(m_maincpu, INPUT_LINE_NMI); // no NMI mask?
|
||||
|
||||
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_amaticmg)
|
||||
|
||||
@ -907,8 +908,7 @@ MACHINE_CONFIG_START(amaticmg_state::amaticmg2)
|
||||
MCFG_SCREEN_MODIFY("screen")
|
||||
MCFG_SCREEN_UPDATE_DRIVER(amaticmg_state, screen_update_amaticmg2)
|
||||
|
||||
MCFG_DEVICE_MODIFY("crtc")
|
||||
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE(*this, amaticmg_state, amaticmg2_irq))
|
||||
subdevice<mc6845_device>("crtc")->out_vsync_callback().set(FUNC(amaticmg_state::amaticmg2_irq));
|
||||
|
||||
MCFG_GFXDECODE_MODIFY("gfxdecode", gfx_amaticmg2)
|
||||
MCFG_PALETTE_MODIFY("palette")
|
||||
@ -928,8 +928,7 @@ MACHINE_CONFIG_START(amaticmg_state::amaticmg4)
|
||||
MCFG_SCREEN_MODIFY("screen")
|
||||
MCFG_SCREEN_UPDATE_DRIVER(amaticmg_state, screen_update_amaticmg2)
|
||||
|
||||
MCFG_DEVICE_MODIFY("crtc")
|
||||
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE(*this, amaticmg_state, amaticmg2_irq))
|
||||
subdevice<mc6845_device>("crtc")->out_vsync_callback().set(FUNC(amaticmg_state::amaticmg2_irq));
|
||||
|
||||
MCFG_GFXDECODE_MODIFY("gfxdecode", gfx_amaticmg2)
|
||||
MCFG_PALETTE_MODIFY("palette")
|
||||
|
@ -936,13 +936,13 @@ MACHINE_CONFIG_START(amstrad_state::amstrad_base)
|
||||
MCFG_PALETTE_ADD("palette", 32)
|
||||
MCFG_PALETTE_INIT_OWNER(amstrad_state,amstrad_cpc)
|
||||
|
||||
MCFG_MC6845_ADD("mc6845", HD6845, nullptr, 16_MHz_XTAL / 16)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(16)
|
||||
MCFG_MC6845_OUT_DE_CB(WRITELINE(*this, amstrad_state, amstrad_de_changed))
|
||||
MCFG_MC6845_OUT_HSYNC_CB(WRITELINE(*this, amstrad_state, amstrad_hsync_changed))
|
||||
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE(*this, amstrad_state, amstrad_vsync_changed))
|
||||
MCFG_MC6845_OUT_CUR_CB(WRITELINE("exp", cpc_expansion_slot_device, cursor_w))
|
||||
HD6845(config, m_crtc, 16_MHz_XTAL / 16);
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(16);
|
||||
m_crtc->out_de_callback().set(FUNC(amstrad_state::amstrad_de_changed));
|
||||
m_crtc->out_hsync_callback().set(FUNC(amstrad_state::amstrad_hsync_changed));
|
||||
m_crtc->out_vsync_callback().set(FUNC(amstrad_state::amstrad_vsync_changed));
|
||||
m_crtc->out_cur_callback().set("exp", FUNC(cpc_expansion_slot_device::cursor_w));
|
||||
|
||||
MCFG_VIDEO_START_OVERRIDE(amstrad_state,amstrad)
|
||||
|
||||
@ -1058,12 +1058,12 @@ MACHINE_CONFIG_START(amstrad_state::cpcplus)
|
||||
MCFG_PALETTE_ADD("palette", 4096)
|
||||
MCFG_PALETTE_INIT_OWNER(amstrad_state,amstrad_plus)
|
||||
|
||||
MCFG_MC6845_ADD("mc6845", AMS40489, nullptr, 40_MHz_XTAL / 40)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(16)
|
||||
MCFG_MC6845_OUT_DE_CB(WRITELINE(*this, amstrad_state, amstrad_plus_de_changed))
|
||||
MCFG_MC6845_OUT_HSYNC_CB(WRITELINE(*this, amstrad_state, amstrad_plus_hsync_changed))
|
||||
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE(*this, amstrad_state, amstrad_plus_vsync_changed))
|
||||
AMS40489(config, m_crtc, 40_MHz_XTAL / 40);
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(16);
|
||||
m_crtc->out_de_callback().set(FUNC(amstrad_state::amstrad_plus_de_changed));
|
||||
m_crtc->out_hsync_callback().set(FUNC(amstrad_state::amstrad_plus_hsync_changed));
|
||||
m_crtc->out_vsync_callback().set(FUNC(amstrad_state::amstrad_plus_vsync_changed));
|
||||
|
||||
MCFG_VIDEO_START_OVERRIDE(amstrad_state,amstrad)
|
||||
|
||||
@ -1136,12 +1136,12 @@ MACHINE_CONFIG_START(amstrad_state::gx4000)
|
||||
MCFG_PALETTE_ADD("palette", 4096)
|
||||
MCFG_PALETTE_INIT_OWNER(amstrad_state,amstrad_plus)
|
||||
|
||||
MCFG_MC6845_ADD("mc6845", AMS40489, nullptr, 40_MHz_XTAL / 40)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(16)
|
||||
MCFG_MC6845_OUT_DE_CB(WRITELINE(*this, amstrad_state, amstrad_plus_de_changed))
|
||||
MCFG_MC6845_OUT_HSYNC_CB(WRITELINE(*this, amstrad_state, amstrad_plus_hsync_changed))
|
||||
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE(*this, amstrad_state, amstrad_plus_vsync_changed))
|
||||
AMS40489(config, m_crtc, 40_MHz_XTAL / 40);
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(16);
|
||||
m_crtc->out_de_callback().set(FUNC(amstrad_state::amstrad_plus_de_changed));
|
||||
m_crtc->out_hsync_callback().set(FUNC(amstrad_state::amstrad_plus_hsync_changed));
|
||||
m_crtc->out_vsync_callback().set(FUNC(amstrad_state::amstrad_plus_vsync_changed));
|
||||
|
||||
MCFG_VIDEO_START_OVERRIDE(amstrad_state,amstrad)
|
||||
|
||||
|
@ -585,12 +585,14 @@ MACHINE_CONFIG_START(amusco_state::amusco)
|
||||
MCFG_PALETTE_ADD("palette",8*8)
|
||||
MCFG_PALETTE_INIT_OWNER(amusco_state, amusco)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", R6545_1, "screen", CRTC_CLOCK) /* guess */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_ADDR_CHANGED_CB(amusco_state, crtc_addr)
|
||||
MCFG_MC6845_OUT_DE_CB(WRITELINE(m_pic, pic8259_device, ir1_w)) // IRQ1 sets 0x918 bit 3
|
||||
MCFG_MC6845_UPDATE_ROW_CB(amusco_state, update_row)
|
||||
R6545_1(config, m_crtc, CRTC_CLOCK); /* guess */
|
||||
m_crtc->set_screen(m_screen);
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(8);
|
||||
m_crtc->set_on_update_addr_change_callback(FUNC(amusco_state::crtc_addr), this);
|
||||
m_crtc->out_de_callback().set(m_pic, FUNC(pic8259_device::ir1_w)); // IRQ1 sets 0x918 bit 3
|
||||
m_crtc->set_update_row_callback(FUNC(amusco_state::update_row), this);
|
||||
|
||||
|
||||
/* sound hardware */
|
||||
SPEAKER(config, "mono").front_center();
|
||||
|
@ -385,11 +385,12 @@ MACHINE_CONFIG_START(apricot_state::apricot)
|
||||
|
||||
MCFG_PALETTE_ADD_MONOCHROME_HIGHLIGHT("palette")
|
||||
|
||||
MCFG_MC6845_ADD("ic30", HD6845, "screen", 15_MHz_XTAL / 10)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(10)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(apricot_state, crtc_update_row)
|
||||
MCFG_MC6845_OUT_DE_CB(WRITELINE(*this, apricot_state, apricot_hd6845_de))
|
||||
HD6845(config, m_crtc, 15_MHz_XTAL / 10);
|
||||
m_crtc->set_screen("screen");
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(10);
|
||||
m_crtc->set_update_row_callback(FUNC(apricot_state::crtc_update_row), this);
|
||||
m_crtc->out_de_callback().set(FUNC(apricot_state::apricot_hd6845_de));
|
||||
|
||||
// sound hardware
|
||||
SPEAKER(config, "mono").front_center();
|
||||
|
@ -597,10 +597,11 @@ MACHINE_CONFIG_START(fp_state::fp)
|
||||
MCFG_PALETTE_ADD("palette", 16)
|
||||
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_act_f1)
|
||||
|
||||
MCFG_MC6845_ADD(MC6845_TAG, MC6845, SCREEN_CRT_TAG, 4000000)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(fp_state, update_row)
|
||||
MC6845(config, m_crtc, 4000000);
|
||||
m_crtc->set_screen(SCREEN_CRT_TAG);
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(8);
|
||||
m_crtc->set_update_row_callback(FUNC(fp_state::update_row), this);
|
||||
|
||||
// sound hardware
|
||||
SPEAKER(config, "mono").front_center();
|
||||
|
@ -581,13 +581,14 @@ MACHINE_CONFIG_START(aussiebyte_state::aussiebyte)
|
||||
MCFG_FLOPPY_DRIVE_SOUND(true)
|
||||
|
||||
/* devices */
|
||||
MCFG_MC6845_ADD("crtc", SY6545_1, "screen", 16_MHz_XTAL / 8)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(aussiebyte_state, crtc_update_row)
|
||||
MCFG_MC6845_ADDR_CHANGED_CB(aussiebyte_state, crtc_update_addr)
|
||||
SY6545_1(config, m_crtc, 16_MHz_XTAL / 8);
|
||||
m_crtc->set_screen("screen");
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(8);
|
||||
m_crtc->set_update_row_callback(FUNC(aussiebyte_state::crtc_update_row), this);
|
||||
m_crtc->set_on_update_addr_change_callback(FUNC(aussiebyte_state::crtc_update_addr), this);
|
||||
|
||||
MCFG_DEVICE_ADD("rtc", MSM5832, 32.768_kHz_XTAL)
|
||||
MSM5832(config, m_rtc, 32.768_kHz_XTAL);
|
||||
|
||||
/* quickload */
|
||||
MCFG_QUICKLOAD_ADD("quickload", aussiebyte_state, aussiebyte, "com,cpm", 3)
|
||||
|
@ -281,9 +281,10 @@ MACHINE_CONFIG_START(b16_state::b16)
|
||||
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 400-1)
|
||||
MCFG_SCREEN_PALETTE("palette")
|
||||
|
||||
MCFG_MC6845_ADD(m_mc6845, H46505, "screen", XTAL(14'318'181)/5) /* unknown clock, hand tuned to get ~60 fps */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
H46505(config, m_mc6845, XTAL(14'318'181)/5); /* unknown clock, hand tuned to get ~60 fps */
|
||||
m_mc6845->set_screen("screen");
|
||||
m_mc6845->set_show_border_area(false);
|
||||
m_mc6845->set_char_width(8);
|
||||
|
||||
AM9517A(config, m_dma8237, XTAL(14'318'181)/2);
|
||||
m_dma8237->in_memr_callback().set(FUNC(b16_state::memory_read_byte));
|
||||
|
@ -157,12 +157,12 @@ MACHINE_CONFIG_START(banctec_state::banctec)
|
||||
MCFG_PALETTE_ADD_MONOCHROME("palette")
|
||||
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_banctec)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", R6545_1, "screen", XTAL(2'000'000)) /* (?) */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(banctec_state, crtc_update_row)
|
||||
MCFG_MC6845_ADDR_CHANGED_CB(banctec_state, crtc_addr)
|
||||
|
||||
r6545_1_device &crtc(R6545_1(config, "crtc", XTAL(2'000'000))); /* (?) */
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
crtc.set_update_row_callback(FUNC(banctec_state::crtc_update_row), this);
|
||||
crtc.set_on_update_addr_change_callback(FUNC(banctec_state::crtc_addr), this);
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
ROM_START(banctec)
|
||||
|
@ -1801,11 +1801,12 @@ MACHINE_CONFIG_START(blitz68k_state::cjffruit)
|
||||
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-8-1)
|
||||
MCFG_SCREEN_UPDATE_DRIVER(blitz68k_state, screen_update_blitz68k)
|
||||
|
||||
MCFG_MC6845_ADD(m_crtc, R6545_1, "screen", XTAL(22'118'400)/8)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(4)
|
||||
MCFG_MC6845_ADDR_CHANGED_CB(blitz68k_state, crtc_addr)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE(*this, blitz68k_state, crtc_vsync_irq1))
|
||||
R6545_1(config, m_crtc, XTAL(22'118'400)/8);
|
||||
m_crtc->set_screen("screen");
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(4);
|
||||
m_crtc->set_on_update_addr_change_callback(FUNC(blitz68k_state::crtc_addr), this);
|
||||
m_crtc->out_vsync_callback().set(FUNC(blitz68k_state::crtc_vsync_irq1));
|
||||
|
||||
ramdac_config(config);
|
||||
|
||||
@ -1832,11 +1833,12 @@ MACHINE_CONFIG_START(blitz68k_state::bankrob)
|
||||
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0+4, 256-1-4)
|
||||
MCFG_SCREEN_UPDATE_DRIVER(blitz68k_state, screen_update_blitz68k)
|
||||
|
||||
MCFG_MC6845_ADD(m_crtc, H46505, "screen", XTAL(11'059'200)/4)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(4)
|
||||
MCFG_MC6845_ADDR_CHANGED_CB(blitz68k_state, crtc_addr)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE(*this, blitz68k_state, crtc_vsync_irq3))
|
||||
H46505(config, m_crtc, XTAL(11'059'200)/4);
|
||||
m_crtc->set_screen("screen");
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(4);
|
||||
m_crtc->set_on_update_addr_change_callback(FUNC(blitz68k_state::crtc_addr), this);
|
||||
m_crtc->out_vsync_callback().set(FUNC(blitz68k_state::crtc_vsync_irq3));
|
||||
|
||||
ramdac_config(config);
|
||||
|
||||
@ -1861,11 +1863,12 @@ MACHINE_CONFIG_START(blitz68k_state::bankroba)
|
||||
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0+7, 256-1)
|
||||
MCFG_SCREEN_UPDATE_DRIVER(blitz68k_state, screen_update_blitz68k)
|
||||
|
||||
MCFG_MC6845_ADD(m_crtc, H46505, "screen", XTAL(11'059'200)/4)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(4)
|
||||
MCFG_MC6845_ADDR_CHANGED_CB(blitz68k_state, crtc_addr)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE(*this, blitz68k_state, crtc_vsync_irq5))
|
||||
H46505(config, m_crtc, XTAL(11'059'200)/4);
|
||||
m_crtc->set_screen("screen");
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(4);
|
||||
m_crtc->set_on_update_addr_change_callback(FUNC(blitz68k_state::crtc_addr), this);
|
||||
m_crtc->out_vsync_callback().set(FUNC(blitz68k_state::crtc_vsync_irq5));
|
||||
|
||||
ramdac_config(config);
|
||||
|
||||
@ -1889,11 +1892,12 @@ MACHINE_CONFIG_START(blitz68k_state::deucesw2)
|
||||
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1)
|
||||
MCFG_SCREEN_UPDATE_DRIVER(blitz68k_state, screen_update_blitz68k)
|
||||
|
||||
MCFG_MC6845_ADD(m_crtc, R6545_1, "screen", XTAL(22'118'400)/8)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(4)
|
||||
MCFG_MC6845_ADDR_CHANGED_CB(blitz68k_state, crtc_addr)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE(*this, blitz68k_state, crtc_vsync_irq3))
|
||||
R6545_1(config, m_crtc, XTAL(22'118'400)/8);
|
||||
m_crtc->set_screen("screen");
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(4);
|
||||
m_crtc->set_on_update_addr_change_callback(FUNC(blitz68k_state::crtc_addr), this);
|
||||
m_crtc->out_vsync_callback().set(FUNC(blitz68k_state::crtc_vsync_irq3));
|
||||
|
||||
ramdac_config(config);
|
||||
|
||||
@ -1919,11 +1923,12 @@ MACHINE_CONFIG_START(blitz68k_state::dualgame)
|
||||
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0+4, 256-1-4)
|
||||
MCFG_SCREEN_UPDATE_DRIVER(blitz68k_state, screen_update_blitz68k)
|
||||
|
||||
MCFG_MC6845_ADD(m_crtc, H46505, "screen", XTAL(11'059'200)/4)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(4)
|
||||
MCFG_MC6845_ADDR_CHANGED_CB(blitz68k_state, crtc_addr)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE(*this, blitz68k_state, crtc_vsync_irq3))
|
||||
H46505(config, m_crtc, XTAL(11'059'200)/4);
|
||||
m_crtc->set_screen("screen");
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(4);
|
||||
m_crtc->set_on_update_addr_change_callback(FUNC(blitz68k_state::crtc_addr), this);
|
||||
m_crtc->out_vsync_callback().set(FUNC(blitz68k_state::crtc_vsync_irq3));
|
||||
|
||||
ramdac_config(config);
|
||||
|
||||
@ -1947,11 +1952,12 @@ MACHINE_CONFIG_START(blitz68k_state::hermit)
|
||||
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0+4, 256-1-4)
|
||||
MCFG_SCREEN_UPDATE_DRIVER(blitz68k_state, screen_update_blitz68k)
|
||||
|
||||
MCFG_MC6845_ADD(m_crtc, H46505, "screen", XTAL(22'118'400)/8)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(4)
|
||||
MCFG_MC6845_ADDR_CHANGED_CB(blitz68k_state, crtc_addr)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE(*this, blitz68k_state, crtc_vsync_irq1))
|
||||
H46505(config, m_crtc, XTAL(22'118'400)/8);
|
||||
m_crtc->set_screen("screen");
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(4);
|
||||
m_crtc->set_on_update_addr_change_callback(FUNC(blitz68k_state::crtc_addr), this);
|
||||
m_crtc->out_vsync_callback().set(FUNC(blitz68k_state::crtc_vsync_irq1));
|
||||
|
||||
ramdac_config(config);
|
||||
|
||||
@ -1980,11 +1986,12 @@ MACHINE_CONFIG_START(blitz68k_state::maxidbl)
|
||||
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1)
|
||||
MCFG_SCREEN_UPDATE_DRIVER(blitz68k_state, screen_update_blitz68k_noblit)
|
||||
|
||||
MCFG_MC6845_ADD(m_crtc, H46505, "screen", XTAL(11'059'200)/4)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(4)
|
||||
MCFG_MC6845_ADDR_CHANGED_CB(blitz68k_state, crtc_addr)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE(*this, blitz68k_state, crtc_vsync_irq3))
|
||||
H46505(config, m_crtc, XTAL(11'059'200)/4);
|
||||
m_crtc->set_screen("screen");
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(4);
|
||||
m_crtc->set_on_update_addr_change_callback(FUNC(blitz68k_state::crtc_addr), this);
|
||||
m_crtc->out_vsync_callback().set(FUNC(blitz68k_state::crtc_vsync_irq3));
|
||||
|
||||
ramdac_config(config);
|
||||
|
||||
|
@ -24,9 +24,9 @@ BMC Bowling (c) 1994.05 BMC, Ltd
|
||||
BET(B)+START(1) - other tests
|
||||
START(1) - next test
|
||||
|
||||
press START(1)+HP(S) durning boot to see stats
|
||||
press START(1)+HP(S) during boot to see stats
|
||||
|
||||
press CONFIRM(N) durning boot, to enter settings
|
||||
press CONFIRM(N) during boot, to enter settings
|
||||
BET(B) - change page
|
||||
STOP1(X)/STOP3(V) - modify
|
||||
START(1)/SMALL(F) - move
|
||||
@ -63,7 +63,7 @@ GREAT1 21.47727
|
||||
|
||||
DIPS:
|
||||
Place for 4 8 switch dips
|
||||
dips 1 & 3 are all connected via resitors
|
||||
dips 1 & 3 are all connected via resistors
|
||||
dips 2 & 4 are standard 8 switch dips
|
||||
|
||||
EEPROM Label Use
|
||||
|
@ -976,10 +976,11 @@ MACHINE_CONFIG_START(bml3_state::bml3_common)
|
||||
|
||||
/* Devices */
|
||||
// CRTC clock should be synchronous with the CPU clock.
|
||||
MCFG_MC6845_ADD("crtc", H46505, "screen", CPU_CLOCK)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(bml3_state, crtc_update_row)
|
||||
H46505(config, m_crtc, CPU_CLOCK);
|
||||
m_crtc->set_screen("screen");
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(8);
|
||||
m_crtc->set_update_row_callback(FUNC(bml3_state::crtc_update_row), this);
|
||||
|
||||
// fire once per scan of an individual key
|
||||
// According to the service manual (p.65), the keyboard timer is driven by the horizontal video sync clock.
|
||||
|
@ -336,9 +336,10 @@ MACHINE_CONFIG_START(buster_state::buster)
|
||||
MCFG_SCREEN_UPDATE_DRIVER(buster_state, screen_update_buster)
|
||||
MCFG_SCREEN_PALETTE("palette")
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", XTAL(3'579'545)/4) //unknown clock / type
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
mc6845_device &crtc(MC6845(config, "crtc", XTAL(3'579'545)/4)); //unknown clock / type
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
|
||||
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_buster)
|
||||
|
||||
|
@ -566,10 +566,11 @@ MACHINE_CONFIG_START(bw12_state::common)
|
||||
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_bw12)
|
||||
MCFG_PALETTE_ADD_MONOCHROME("palette")
|
||||
|
||||
MCFG_MC6845_ADD(MC6845_TAG, MC6845, SCREEN_TAG, XTAL(16'000'000)/8)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(true)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(bw12_state, crtc_update_row)
|
||||
MC6845(config, m_crtc, XTAL(16'000'000)/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(bw12_state::crtc_update_row), this);
|
||||
|
||||
/* sound hardware */
|
||||
SPEAKER(config, "speaker").front_center();
|
||||
|
@ -1654,9 +1654,11 @@ MACHINE_CONFIG_START(c128_state::ntsc)
|
||||
m_nmi->output_handler().set_inputline(m_subcpu, m8502_device::NMI_LINE);
|
||||
|
||||
// video hardware
|
||||
MCFG_MOS8563_ADD(MOS8563_TAG, SCREEN_VDC_TAG, XTAL(16'000'000), vdc_videoram_map)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(true)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MOS8563(config, m_vdc, XTAL(16'000'000));
|
||||
m_vdc->set_screen(SCREEN_VDC_TAG);
|
||||
m_vdc->set_addrmap(0, &c128_state::vdc_videoram_map);
|
||||
m_vdc->set_show_border_area(true);
|
||||
m_vdc->set_char_width(8);
|
||||
MCFG_SCREEN_ADD(SCREEN_VDC_TAG, RASTER)
|
||||
MCFG_SCREEN_REFRESH_RATE(60)
|
||||
MCFG_SCREEN_SIZE(640, 200)
|
||||
@ -1836,9 +1838,11 @@ MACHINE_CONFIG_START(c128_state::pal)
|
||||
m_nmi->output_handler().set_inputline(m_subcpu, m8502_device::NMI_LINE);
|
||||
|
||||
// video hardware
|
||||
MCFG_MOS8563_ADD(MOS8563_TAG, SCREEN_VDC_TAG, XTAL(16'000'000), vdc_videoram_map)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(true)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MOS8563(config, m_vdc, XTAL(16'000'000));
|
||||
m_vdc->set_screen(SCREEN_VDC_TAG);
|
||||
m_vdc->set_addrmap(0, &c128_state::vdc_videoram_map);
|
||||
m_vdc->set_show_border_area(true);
|
||||
m_vdc->set_char_width(8);
|
||||
MCFG_SCREEN_ADD(SCREEN_VDC_TAG, RASTER)
|
||||
MCFG_SCREEN_REFRESH_RATE(60)
|
||||
MCFG_SCREEN_SIZE(640, 200)
|
||||
|
@ -2600,9 +2600,10 @@ MACHINE_CONFIG_START(calomega_state::sys903)
|
||||
MCFG_PALETTE_ADD("palette", 256) /* or 128? is the upper half of the PROMs really valid colors? */
|
||||
MCFG_PALETTE_INIT_OWNER(calomega_state, calomega)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", CPU_CLOCK) /* 6845 @ CPU clock */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
mc6845_device &crtc(MC6845(config, "crtc", CPU_CLOCK)); /* 6845 @ CPU clock */
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
|
||||
/* sound hardware */
|
||||
SPEAKER(config, "mono").front_center();
|
||||
|
@ -347,13 +347,14 @@ MACHINE_CONFIG_START(cardline_state::cardline)
|
||||
MCFG_PALETTE_ADD("palette", 512)
|
||||
MCFG_PALETTE_INIT_OWNER(cardline_state, cardline)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", MASTER_CLOCK/8) /* divisor guessed - result is 56 Hz */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_BEGIN_UPDATE_CB(cardline_state, crtc_begin_update)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(cardline_state, crtc_update_row)
|
||||
MCFG_MC6845_OUT_HSYNC_CB(WRITELINE(*this, cardline_state, hsync_changed))
|
||||
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE(*this, cardline_state, vsync_changed))
|
||||
mc6845_device &crtc(MC6845(config, "crtc", MASTER_CLOCK/8)); /* divisor guessed - result is 56 Hz */
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
crtc.set_begin_update_callback(FUNC(cardline_state::crtc_begin_update), this);
|
||||
crtc.set_update_row_callback(FUNC(cardline_state::crtc_update_row), this);
|
||||
crtc.out_hsync_callback().set(FUNC(cardline_state::hsync_changed));
|
||||
crtc.out_vsync_callback().set(FUNC(cardline_state::vsync_changed));
|
||||
|
||||
config.set_default_layout(layout_cardline);
|
||||
|
||||
|
@ -329,10 +329,11 @@ MACHINE_CONFIG_START(carrera_state::carrera)
|
||||
MCFG_SCREEN_UPDATE_DRIVER(carrera_state, screen_update_carrera)
|
||||
MCFG_SCREEN_PALETTE("palette")
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", MASTER_CLOCK / 16)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(INPUTLINE("maincpu", INPUT_LINE_NMI))
|
||||
mc6845_device &crtc(MC6845(config, "crtc", MASTER_CLOCK / 16));
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
crtc.out_vsync_callback().set_inputline(m_maincpu, INPUT_LINE_NMI);
|
||||
|
||||
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_carrera)
|
||||
MCFG_PALETTE_ADD("palette", 32)
|
||||
|
@ -2527,10 +2527,11 @@ MACHINE_CONFIG_START(cbm2_state::cbm2lp_ntsc)
|
||||
|
||||
MCFG_PALETTE_ADD_MONOCHROME("palette")
|
||||
|
||||
MCFG_MC6845_ADD(MC68B45_TAG, MC6845, SCREEN_TAG, XTAL(18'000'000)/9)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(true)
|
||||
MCFG_MC6845_CHAR_WIDTH(9)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(cbm2_state, crtc_update_row)
|
||||
MC6845(config, m_crtc, XTAL(18'000'000)/9);
|
||||
m_crtc->set_screen(SCREEN_TAG);
|
||||
m_crtc->set_show_border_area(true);
|
||||
m_crtc->set_char_width(9);
|
||||
m_crtc->set_update_row_callback(FUNC(cbm2_state::crtc_update_row), this);
|
||||
|
||||
// sound hardware
|
||||
SPEAKER(config, "mono").front_center();
|
||||
|
@ -449,11 +449,12 @@ MACHINE_CONFIG_START(cgenie_state::cgenie)
|
||||
MCFG_SCREEN_RAW_PARAMS(XTAL(17'734'470) / 2, 568, 32, 416, 312, 28, 284)
|
||||
MCFG_SCREEN_UPDATE_DEVICE("crtc", hd6845_device, screen_update)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", HD6845, "screen", XTAL(17'734'470) / 16)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(true)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_BEGIN_UPDATE_CB(cgenie_state, crtc_begin_update)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(cgenie_state, crtc_update_row)
|
||||
HD6845(config, m_crtc, XTAL(17'734'470) / 16);
|
||||
m_crtc->set_screen("screen");
|
||||
m_crtc->set_show_border_area(true);
|
||||
m_crtc->set_char_width(8);
|
||||
m_crtc->set_begin_update_callback(FUNC(cgenie_state::crtc_begin_update), this);
|
||||
m_crtc->set_update_row_callback(FUNC(cgenie_state::crtc_update_row), this);
|
||||
|
||||
// sound hardware
|
||||
SPEAKER(config, "mono").front_center();
|
||||
|
@ -475,9 +475,10 @@ MACHINE_CONFIG_START(chance32_state::chance32)
|
||||
MCFG_SCREEN_UPDATE_DRIVER(chance32_state, screen_update_chance32)
|
||||
MCFG_SCREEN_PALETTE("palette")
|
||||
|
||||
MCFG_MC6845_ADD("crtc", H46505, "screen", 12000000/16) /* 52.786 Hz (similar to Major Poker) */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(16)
|
||||
h46505_device &crtc(H46505(config, "crtc", 12000000/16)); /* 52.786 Hz (similar to Major Poker) */
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(16);
|
||||
|
||||
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_chance32)
|
||||
MCFG_PALETTE_ADD("palette", 0x800)
|
||||
|
@ -1284,9 +1284,10 @@ MACHINE_CONFIG_START(coinmstr_state::coinmstr)
|
||||
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_coinmstr)
|
||||
MCFG_PALETTE_ADD("palette", 46*32*4)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", H46505, "screen", 14000000 / 16)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
h46505_device &crtc(H46505(config, "crtc", 14000000 / 16));
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
|
||||
/* sound hardware */
|
||||
SPEAKER(config, "mono").front_center();
|
||||
|
@ -385,11 +385,12 @@ MACHINE_CONFIG_START(dgn_beta_state::dgnbeta)
|
||||
MCFG_FLOPPY_DRIVE_ADD(FDC_TAG ":3", dgnbeta_floppies, nullptr, dgn_beta_state::floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_SOUND(true)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", HD6845, "screen", 12.288_MHz_XTAL / 16) //XTAL is guessed
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(16) /*?*/
|
||||
MCFG_MC6845_UPDATE_ROW_CB(dgn_beta_state, crtc_update_row)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE(*this, dgn_beta_state, dgnbeta_vsync_changed))
|
||||
HD6845(config, m_mc6845, 12.288_MHz_XTAL / 16); //XTAL is guessed
|
||||
m_mc6845->set_screen("screen");
|
||||
m_mc6845->set_show_border_area(false);
|
||||
m_mc6845->set_char_width(16); /*?*/
|
||||
m_mc6845->set_update_row_callback(FUNC(dgn_beta_state::crtc_update_row), this);
|
||||
m_mc6845->out_vsync_callback().set(FUNC(dgn_beta_state::dgnbeta_vsync_changed));
|
||||
|
||||
/* internal ram */
|
||||
RAM(config, RAM_TAG).set_default_size("256K").set_extra_options("128K,384K,512K,640K,768K");
|
||||
|
@ -626,19 +626,20 @@ MACHINE_CONFIG_START(docastle_state::docastle)
|
||||
WATCHDOG_TIMER(config, "watchdog");
|
||||
|
||||
/* video hardware */
|
||||
MCFG_MC6845_ADD("crtc", H46505, "screen", XTAL(9'828'000) / 16)
|
||||
H46505(config, m_crtc, XTAL(9'828'000) / 16);
|
||||
/*
|
||||
The games program the CRTC for a width of 32 characters (256 pixels).
|
||||
However, the DE output from the CRTC is first ANDed with the NAND of
|
||||
MA1 through MA4, and then delayed by 8 pixel clocks; this effectively
|
||||
blanks the first 8 pixels and last 8 pixels of each line.
|
||||
*/
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_VISAREA_ADJUST(8,-8,0,0)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_OUT_HSYNC_CB(WRITELINE(*this, docastle_state, docastle_tint))
|
||||
MCFG_MC6845_OUT_CUR_CB(WRITELINE(*this, docastle_state, stx_on_w))
|
||||
MCFG_MC6845_OUT_DE_CB(WRITELINE(*this, docastle_state, stx_off_w))
|
||||
m_crtc->set_screen("screen");
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_visarea_adjust(8,-8,0,0);
|
||||
m_crtc->set_char_width(8);
|
||||
m_crtc->out_hsync_callback().set(FUNC(docastle_state::docastle_tint));
|
||||
m_crtc->out_cur_callback().set(FUNC(docastle_state::stx_on_w));
|
||||
m_crtc->out_de_callback().set(FUNC(docastle_state::stx_off_w));
|
||||
|
||||
MCFG_SCREEN_ADD("screen", RASTER)
|
||||
MCFG_SCREEN_RAW_PARAMS(XTAL(9'828'000)/2, 0x138, 8, 0x100-8, 0x108, 0, 0xc0) // from crtc
|
||||
|
@ -414,9 +414,9 @@ MACHINE_CONFIG_START(duet16_state::duet16)
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:1", duet16_floppies, "525qd", floppy_image_device::default_floppy_formats)
|
||||
MCFG_SLOT_FIXED(true)
|
||||
|
||||
MCFG_DEVICE_ADD("crtc", H46505, 2000000)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(duet16_state, crtc_update_row)
|
||||
h46505_device &crtc(H46505(config, "crtc", 2000000));
|
||||
crtc.set_char_width(8);
|
||||
crtc.set_update_row_callback(FUNC(duet16_state::crtc_update_row), this);
|
||||
|
||||
MCFG_PALETTE_ADD("palette", 8)
|
||||
MCFG_PALETTE_ADD_3BIT_BRG("chrpal")
|
||||
|
@ -188,10 +188,11 @@ MACHINE_CONFIG_START(ec65_state::ec65)
|
||||
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_ec65)
|
||||
MCFG_PALETTE_ADD_MONOCHROME("palette")
|
||||
|
||||
MCFG_MC6845_ADD(MC6845_TAG, MC6845, "screen", XTAL(16'000'000) / 8)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8) /*?*/
|
||||
MCFG_MC6845_UPDATE_ROW_CB(ec65_state, crtc_update_row)
|
||||
mc6845_device &crtc(MC6845(config, MC6845_TAG, XTAL(16'000'000) / 8));
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8); /*?*/
|
||||
crtc.set_update_row_callback(FUNC(ec65_state::crtc_update_row), this);
|
||||
|
||||
/* devices */
|
||||
MCFG_DEVICE_ADD(PIA6821_TAG, PIA6821, 0)
|
||||
@ -226,9 +227,10 @@ MACHINE_CONFIG_START(ec65k_state::ec65k)
|
||||
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_ec65)
|
||||
MCFG_PALETTE_ADD_MONOCHROME("palette")
|
||||
|
||||
MCFG_MC6845_ADD(MC6845_TAG, MC6845, "screen", XTAL(16'000'000) / 8)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8) /*?*/
|
||||
mc6845_device &crtc(MC6845(config, MC6845_TAG, XTAL(16'000'000) / 8));
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8); /*?*/
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
/* ROM definition */
|
||||
|
@ -696,11 +696,12 @@ MACHINE_CONFIG_START(fastinvaders_state::fastinvaders_6845)
|
||||
MCFG_DEVICE_MODIFY("maincpu" ) // guess
|
||||
MCFG_DEVICE_IO_MAP(fastinvaders_6845_io)
|
||||
|
||||
MCFG_MC6845_ADD("6845", MC6845, "screen", 11500000/16) /* confirmed */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(16)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE(*this, fastinvaders_state,vsync))
|
||||
MCFG_MC6845_OUT_HSYNC_CB(WRITELINE(*this, fastinvaders_state,hsync))
|
||||
MC6845(config, m_crtc6845, 11500000/16); /* confirmed */
|
||||
m_crtc6845->set_screen("screen");
|
||||
m_crtc6845->set_show_border_area(false);
|
||||
m_crtc6845->set_char_width(16);
|
||||
m_crtc6845->out_vsync_callback().set(FUNC(fastinvaders_state::vsync));
|
||||
m_crtc6845->out_hsync_callback().set(FUNC(fastinvaders_state::hsync));
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
||||
|
@ -716,10 +716,11 @@ MACHINE_CONFIG_START(fortecar_state::fortecar)
|
||||
MCFG_PALETTE_ADD("palette", 0x200)
|
||||
MCFG_PALETTE_INIT_OWNER(fortecar_state, fortecar)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", CRTC_CLOCK) /* 1.5 MHz, measured */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(INPUTLINE("maincpu", INPUT_LINE_NMI))
|
||||
mc6845_device &crtc(MC6845(config, "crtc", CRTC_CLOCK)); /* 1.5 MHz, measured */
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
crtc.out_vsync_callback().set_inputline(m_maincpu, INPUT_LINE_NMI);
|
||||
|
||||
SPEAKER(config, "mono").front_center();
|
||||
|
||||
|
@ -670,10 +670,11 @@ MACHINE_CONFIG_START(fp1100_state::fp1100)
|
||||
.add_route(ALL_OUTPUTS, "mono", 0.50); // inside the keyboard
|
||||
|
||||
/* CRTC */
|
||||
MCFG_MC6845_ADD("crtc", H46505, "screen", MAIN_CLOCK/8) /* hand tuned to get ~60 fps */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(fp1100_state, crtc_update_row)
|
||||
H46505(config, m_crtc, MAIN_CLOCK/8); /* hand tuned to get ~60 fps */
|
||||
m_crtc->set_screen("screen");
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(8);
|
||||
m_crtc->set_update_row_callback(FUNC(fp1100_state::crtc_update_row), this);
|
||||
|
||||
/* Printer */
|
||||
MCFG_DEVICE_ADD(m_centronics, CENTRONICS, centronics_devices, "printer")
|
||||
|
@ -32,8 +32,8 @@ public:
|
||||
: driver_device(mconfig, type, tag),
|
||||
m_gvram(*this, "gvram"),
|
||||
m_vram(*this, "vram"),
|
||||
m_maincpu(*this, "maincpu")
|
||||
, m_crtc(*this, "crtc"),
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_crtc(*this, "crtc"),
|
||||
m_gfxdecode(*this, "gfxdecode"),
|
||||
m_palette(*this, "palette")
|
||||
{ }
|
||||
@ -312,9 +312,10 @@ MACHINE_CONFIG_START(fp6000_state::fp6000)
|
||||
MCFG_SCREEN_UPDATE_DRIVER(fp6000_state, screen_update_fp6000)
|
||||
MCFG_SCREEN_PALETTE("palette")
|
||||
|
||||
MCFG_MC6845_ADD("crtc", H46505, "screen", 16000000/5) /* unknown clock, hand tuned to get ~60 fps */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
H46505(config, m_crtc, 16000000/5); /* unknown clock, hand tuned to get ~60 fps */
|
||||
m_crtc->set_screen("screen");
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(8);
|
||||
|
||||
MCFG_PALETTE_ADD("palette", 8)
|
||||
// MCFG_PALETTE_INIT(black_and_white)
|
||||
|
@ -3098,10 +3098,11 @@ MACHINE_CONFIG_START(funworld_state::fw1stpal)
|
||||
MCFG_PALETTE_INIT_OWNER(funworld_state, funworld)
|
||||
MCFG_VIDEO_START_OVERRIDE(funworld_state, funworld)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", CRTC_CLOCK) /* 2MHz, veryfied on jollycrd & royalcrd */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(4)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(INPUTLINE("maincpu", INPUT_LINE_NMI))
|
||||
mc6845_device &crtc(MC6845(config, "crtc", CRTC_CLOCK)); /* 2MHz, verified on jollycrd & royalcrd */
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(4);
|
||||
crtc.out_vsync_callback().set_inputline(m_maincpu, INPUT_LINE_NMI);
|
||||
|
||||
/* sound hardware */
|
||||
SPEAKER(config, "mono").front_center();
|
||||
@ -3140,13 +3141,7 @@ MACHINE_CONFIG_START(funworld_state::magicrd2)
|
||||
MCFG_DEVICE_PROGRAM_MAP(magicrd2_map)
|
||||
MCFG_VIDEO_START_OVERRIDE(funworld_state, magicrd2)
|
||||
|
||||
MCFG_DEVICE_REMOVE("crtc")
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", CRTC_CLOCK)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_VISAREA_ADJUST(0, -56, 0, 0)
|
||||
MCFG_MC6845_CHAR_WIDTH(4)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(INPUTLINE("maincpu", INPUT_LINE_NMI))
|
||||
|
||||
subdevice<mc6845_device>("crtc")->set_visarea_adjust(0, -56, 0, 0);
|
||||
|
||||
ay8910_device &ay8910(AY8910(config.replace(), "ay8910", SND_CLOCK)); /* 2MHz */
|
||||
ay8910.port_a_write_callback().set(FUNC(funworld_state::funworld_lamp_a_w));
|
||||
|
@ -507,10 +507,11 @@ MACHINE_CONFIG_START(gluck2_state::gluck2)
|
||||
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_gluck2)
|
||||
MCFG_PALETTE_ADD_RRRRGGGGBBBB_PROMS("palette", "proms", 256)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", MASTER_CLOCK/16) /* guess */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(INPUTLINE("maincpu", INPUT_LINE_NMI))
|
||||
mc6845_device &crtc(MC6845(config, "crtc", MASTER_CLOCK/16)); /* guess */
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
crtc.out_vsync_callback().set_inputline(m_maincpu, INPUT_LINE_NMI);
|
||||
|
||||
/* sound hardware */
|
||||
SPEAKER(config, "mono").front_center();
|
||||
|
@ -4341,10 +4341,11 @@ MACHINE_CONFIG_START(goldnpkr_state::goldnpkr_base)
|
||||
MCFG_SCREEN_UPDATE_DRIVER(goldnpkr_state, screen_update_goldnpkr)
|
||||
MCFG_SCREEN_PALETTE("palette")
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", CPU_CLOCK) /* 68B45 or 6845s @ CPU clock */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(INPUTLINE("maincpu", INPUT_LINE_NMI))
|
||||
mc6845_device &crtc(MC6845(config, "crtc", CPU_CLOCK)); /* 68B45 or 6845s @ CPU clock */
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
crtc.out_vsync_callback().set_inputline(m_maincpu, INPUT_LINE_NMI);
|
||||
|
||||
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_goldnpkr)
|
||||
MCFG_PALETTE_ADD("palette", 256)
|
||||
@ -4729,10 +4730,11 @@ MACHINE_CONFIG_START(blitz_state::megadpkr)
|
||||
MCFG_SCREEN_UPDATE_DRIVER(goldnpkr_state, screen_update_goldnpkr)
|
||||
MCFG_SCREEN_PALETTE("palette")
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", CPU_CLOCK)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(INPUTLINE("maincpu", 0))
|
||||
mc6845_device &crtc(MC6845(config, "crtc", CPU_CLOCK));
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
crtc.out_vsync_callback().set_inputline(m_maincpu, 0);
|
||||
|
||||
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_goldnpkr)
|
||||
MCFG_PALETTE_ADD("palette", 256)
|
||||
|
@ -538,11 +538,12 @@ MACHINE_CONFIG_START(h19_state::h19)
|
||||
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_h19)
|
||||
MCFG_PALETTE_ADD_MONOCHROME("palette")
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", MC6845_CLOCK)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(true)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(h19_state, crtc_update_row)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(INPUTLINE("maincpu", INPUT_LINE_NMI)) // frame pulse
|
||||
MC6845(config, m_crtc, MC6845_CLOCK);
|
||||
m_crtc->set_screen("screen");
|
||||
m_crtc->set_show_border_area(true);
|
||||
m_crtc->set_char_width(8);
|
||||
m_crtc->set_update_row_callback(FUNC(h19_state::crtc_update_row), this);
|
||||
m_crtc->out_vsync_callback().set_inputline(m_maincpu, INPUT_LINE_NMI); // frame pulse
|
||||
|
||||
ins8250_device &uart(INS8250(config, "ins8250", INS8250_CLOCK));
|
||||
uart.out_int_callback().set_inputline("maincpu", INPUT_LINE_IRQ0);
|
||||
|
@ -479,10 +479,11 @@ MACHINE_CONFIG_START(hitpoker_state::hitpoker)
|
||||
MCFG_SCREEN_UPDATE_DRIVER(hitpoker_state, screen_update_hitpoker)
|
||||
MCFG_SCREEN_PALETTE("palette")
|
||||
|
||||
MCFG_MC6845_ADD("crtc", H46505, "screen", CRTC_CLOCK/2) /* hand tuned to get ~60 fps */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE(*this, hitpoker_state, hitpoker_irq))
|
||||
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));
|
||||
|
||||
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_hitpoker)
|
||||
MCFG_PALETTE_ADD("palette", 0x800)
|
||||
|
@ -567,12 +567,12 @@ MACHINE_CONFIG_START(hnayayoi_state::hnayayoi)
|
||||
|
||||
MCFG_PALETTE_ADD_RRRRGGGGBBBB_PROMS("palette", "proms", 256)
|
||||
|
||||
MCFG_DEVICE_ADD("crtc", HD6845, 20_MHz_XTAL / 8)
|
||||
MCFG_VIDEO_SET_SCREEN("screen")
|
||||
MCFG_MC6845_CHAR_WIDTH(4)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(INPUTLINE("maincpu", 0))
|
||||
MCFG_MC6845_UPDATE_ROW_CB(hnayayoi_state, hnayayoi_update_row)
|
||||
hd6845_device &crtc(HD6845(config, "crtc", 20_MHz_XTAL / 8));
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_char_width(4);
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.out_vsync_callback().set_inputline(m_maincpu, 0);
|
||||
crtc.set_update_row_callback(FUNC(hnayayoi_state::hnayayoi_update_row), this);
|
||||
|
||||
/* sound hardware */
|
||||
SPEAKER(config, "mono").front_center();
|
||||
@ -612,8 +612,7 @@ MACHINE_CONFIG_START(hnayayoi_state::untoucha)
|
||||
m_mainlatch->q_out_cb<3>().set(m_msm, FUNC(msm5205_device::reset_w)).invert();
|
||||
m_mainlatch->q_out_cb<4>().set_nop(); // ?
|
||||
|
||||
MCFG_DEVICE_MODIFY("crtc")
|
||||
MCFG_MC6845_UPDATE_ROW_CB(hnayayoi_state, untoucha_update_row)
|
||||
subdevice<hd6845_device>("crtc")->set_update_row_callback(FUNC(hnayayoi_state::untoucha_update_row), this);
|
||||
|
||||
MCFG_VIDEO_START_OVERRIDE(hnayayoi_state,untoucha)
|
||||
MACHINE_CONFIG_END
|
||||
|
@ -422,11 +422,12 @@ MACHINE_CONFIG_START(hp16500_state::hp1650)
|
||||
MCFG_SCREEN_RAW_PARAMS(25000000, 0x330, 0, 0x250, 0x198, 0, 0x180 )
|
||||
MCFG_SCREEN_UPDATE_DEVICE( "crtc", mc6845_device, screen_update )
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", 25000000/9)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(hp16500_state, crtc_update_row_1650)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE(*this, hp16500_state, vsync_changed))
|
||||
mc6845_device &crtc(MC6845(config, "crtc", 25000000/9));
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
crtc.set_update_row_callback(FUNC(hp16500_state::crtc_update_row_1650), this);
|
||||
crtc.out_vsync_callback().set(FUNC(hp16500_state::vsync_changed));
|
||||
|
||||
MCFG_DEVICE_ADD("epci", MC2661, 5000000)
|
||||
|
||||
@ -443,11 +444,12 @@ MACHINE_CONFIG_START(hp16500_state::hp1651)
|
||||
MCFG_SCREEN_RAW_PARAMS(25000000, 0x330, 0, 0x250, 0x198, 0, 0x180 )
|
||||
MCFG_SCREEN_UPDATE_DEVICE( "crtc", mc6845_device, screen_update )
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", 25000000/9)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(hp16500_state, crtc_update_row_1650)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE(*this, hp16500_state, vsync_changed))
|
||||
mc6845_device &crtc(MC6845(config, "crtc", 25000000/9));
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
crtc.set_update_row_callback(FUNC(hp16500_state::crtc_update_row_1650), this);
|
||||
crtc.out_vsync_callback().set(FUNC(hp16500_state::vsync_changed));
|
||||
|
||||
MCFG_DEVICE_ADD("epci", MC2661, 5000000)
|
||||
|
||||
@ -464,11 +466,12 @@ MACHINE_CONFIG_START(hp16500_state::hp16500a)
|
||||
MCFG_SCREEN_RAW_PARAMS(25000000, 0x320, 0, 0x240, 0x19c, 0, 0x170 )
|
||||
MCFG_SCREEN_UPDATE_DEVICE( "crtc", mc6845_device, screen_update )
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", 25000000/9)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(hp16500_state, crtc_update_row)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE(*this, hp16500_state, vsync_changed))
|
||||
mc6845_device &crtc(MC6845(config, "crtc", 25000000/9));
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
crtc.set_update_row_callback(FUNC(hp16500_state::crtc_update_row), this);
|
||||
crtc.out_vsync_callback().set(FUNC(hp16500_state::vsync_changed));
|
||||
|
||||
SPEAKER(config, "lspeaker").front_left();
|
||||
SPEAKER(config, "rspeaker").front_right();
|
||||
|
@ -412,9 +412,10 @@ MACHINE_CONFIG_START(hp9k_state::hp9k)
|
||||
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_hp9k)
|
||||
MCFG_PALETTE_ADD_MONOCHROME("palette")
|
||||
|
||||
MCFG_MC6845_ADD("mc6845", MC6845, "screen", XTAL(16'000'000) / 16)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MC6845(config, m_6845, XTAL(16'000'000) / 16);
|
||||
m_6845->set_screen("screen");
|
||||
m_6845->set_show_border_area(false);
|
||||
m_6845->set_char_width(8);
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
/* ROM definition */
|
||||
|
@ -360,10 +360,11 @@ MACHINE_CONFIG_START(i7000_state::i7000)
|
||||
MCFG_PALETTE_ADD("palette", 2)
|
||||
MCFG_PALETTE_INIT_OWNER(i7000_state, i7000)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", R6545_1, "screen", XTAL(20'000'000)) /* (?) */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(true)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_ADDR_CHANGED_CB(i7000_state, crtc_addr)
|
||||
r6545_1_device &crtc(R6545_1(config, "crtc", XTAL(20'000'000))); /* (?) */
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(true);
|
||||
crtc.set_char_width(8);
|
||||
crtc.set_on_update_addr_change_callback(FUNC(i7000_state::crtc_addr), this);
|
||||
|
||||
/* sound hardware */
|
||||
SPEAKER(config, "mono").front_center();
|
||||
|
@ -440,10 +440,12 @@ MACHINE_CONFIG_START(jokrwild_state::jokrwild)
|
||||
MCFG_PALETTE_ADD("palette", 512)
|
||||
MCFG_PALETTE_INIT_OWNER(jokrwild_state, jokrwild)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", MASTER_CLOCK/16) /* guess */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(INPUTLINE("maincpu", INPUT_LINE_NMI))
|
||||
mc6845_device &crtc(MC6845(config, "crtc", MASTER_CLOCK/16)); /* guess */
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
crtc.out_vsync_callback().set_inputline(m_maincpu, INPUT_LINE_NMI);
|
||||
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
||||
|
@ -692,9 +692,10 @@ MACHINE_CONFIG_START(jubilee_state::jubileep)
|
||||
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_jubileep)
|
||||
MCFG_PALETTE_ADD("palette",8)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", CRTC_CLOCK)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
mc6845_device &crtc(MC6845(config, "crtc", CRTC_CLOCK));
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
||||
|
@ -312,10 +312,11 @@ MACHINE_CONFIG_START(kaypro_state::kaypro484)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
|
||||
|
||||
/* devices */
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", 2000000) /* comes out of ULA - needs to be measured */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(7)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(kaypro_state, kaypro484_update_row)
|
||||
MC6845(config, m_crtc, 2000000); /* comes out of ULA - needs to be measured */
|
||||
m_crtc->set_screen(m_screen);
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(7);
|
||||
m_crtc->set_update_row_callback(FUNC(kaypro_state::kaypro484_update_row), this);
|
||||
|
||||
MCFG_QUICKLOAD_ADD("quickload", kaypro_state, kaypro, "com,cpm", 3)
|
||||
|
||||
|
@ -630,11 +630,12 @@ MACHINE_CONFIG_START(kdt6_state::psi98)
|
||||
MCFG_PALETTE_ADD_MONOCHROME("palette")
|
||||
config.set_default_layout(layout_kdt6);
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", XTAL(13'516'800) / 8)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(kdt6_state, crtc_update_row)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE("ctc2", z80ctc_device, trg2))
|
||||
MC6845(config, m_crtc, XTAL(13'516'800) / 8);
|
||||
m_crtc->set_screen("screen");
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(8);
|
||||
m_crtc->set_update_row_callback(FUNC(kdt6_state::crtc_update_row), this);
|
||||
m_crtc->out_vsync_callback().set("ctc2", FUNC(z80ctc_device::trg2));
|
||||
|
||||
// sound hardware
|
||||
SPEAKER(config, "mono").front_center();
|
||||
|
@ -1005,9 +1005,10 @@ MACHINE_CONFIG_START(kingdrby_state::kingdrby)
|
||||
MCFG_SCREEN_UPDATE_DRIVER(kingdrby_state, screen_update_kingdrby)
|
||||
MCFG_SCREEN_PALETTE("palette")
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", CLK_1/32) /* 53.333 Hz. guess */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
mc6845_device &crtc(MC6845(config, "crtc", CLK_1/32)); /* 53.333 Hz. guess */
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
|
||||
SPEAKER(config, "mono").front_center();
|
||||
|
||||
|
@ -393,10 +393,11 @@ MACHINE_CONFIG_START(laserbas_state::laserbas)
|
||||
MCFG_SCREEN_RAW_PARAMS(4000000, 256, 0, 256, 256, 0, 256) /* temporary, CRTC will configure screen */
|
||||
MCFG_SCREEN_UPDATE_DEVICE("crtc", mc6845_device, screen_update)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", H46505, "screen", 3000000/4) /* unknown clock, hand tuned to get ~60 fps */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(laserbas_state, crtc_update_row)
|
||||
h46505_device &crtc(H46505(config, "crtc", 3000000/4)); /* unknown clock, hand tuned to get ~60 fps */
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
crtc.set_update_row_callback(FUNC(laserbas_state::crtc_update_row), this);
|
||||
|
||||
MCFG_PALETTE_ADD("palette", 32)
|
||||
MCFG_PALETTE_FORMAT(RRRGGGBB)
|
||||
|
@ -867,9 +867,10 @@ MACHINE_CONFIG_START(luckgrln_state::luckgrln)
|
||||
MCFG_DEVICE_IO_MAP(luckgrln_io)
|
||||
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", luckgrln_state, irq)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", H46505, "screen", 6000000/4) /* unknown clock, hand tuned to get ~60 fps */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
h46505_device &crtc(H46505(config, "crtc", 6000000/4)); /* unknown clock, hand tuned to get ~60 fps */
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
|
||||
MCFG_DEVICE_ADD("rtc", MSM6242, 0)
|
||||
|
||||
|
@ -814,10 +814,11 @@ MACHINE_CONFIG_START(m20_state::m20)
|
||||
MCFG_FLOPPY_DRIVE_ADD("fd1797:0", m20_floppies, "5dd", m20_state::floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("fd1797:1", m20_floppies, "5dd", m20_state::floppy_formats)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", PIXEL_CLOCK/8) /* hand tuned to get ~50 fps */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(16)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(m20_state, update_row)
|
||||
mc6845_device &crtc(MC6845(config, "crtc", PIXEL_CLOCK/8)); /* hand tuned to get ~50 fps */
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(16);
|
||||
crtc.set_update_row_callback(FUNC(m20_state::update_row), this);
|
||||
|
||||
I8255A(config, m_i8255, 0);
|
||||
|
||||
|
@ -961,10 +961,11 @@ MACHINE_CONFIG_START(magicfly_state::magicfly)
|
||||
MCFG_PALETTE_ADD("palette", 32)
|
||||
MCFG_PALETTE_INIT_OWNER(magicfly_state, magicfly)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", MASTER_CLOCK / 16) /* guess */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(INPUTLINE("maincpu", INPUT_LINE_NMI))
|
||||
mc6845_device &crtc(MC6845(config, "crtc", MASTER_CLOCK/16)); /* guess */
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
crtc.out_vsync_callback().set_inputline(m_maincpu, INPUT_LINE_NMI);
|
||||
|
||||
/* sound hardware */
|
||||
SPEAKER(config, "speaker").front_center();
|
||||
|
@ -1026,10 +1026,11 @@ MACHINE_CONFIG_START(majorpkr_state::majorpkr)
|
||||
MCFG_PALETTE_ADD("palette", 0x100 * 16)
|
||||
MCFG_PALETTE_FORMAT(xGGGGGRRRRRBBBBB)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", CRTC_CLOCK) // verified.
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_VISAREA_ADJUST(0, -16, 0, 0)
|
||||
MCFG_MC6845_CHAR_WIDTH(16)
|
||||
mc6845_device &crtc(MC6845(config, "crtc", CRTC_CLOCK)); // verified.
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_visarea_adjust(0, -16, 0, 0);
|
||||
crtc.set_char_width(16);
|
||||
|
||||
/* sound hardware */
|
||||
SPEAKER(config, "mono").front_center();
|
||||
|
@ -679,12 +679,13 @@ MACHINE_CONFIG_START(mbee_state::mbee)
|
||||
SPEAKER_SOUND(config, "speaker").add_route(ALL_OUTPUTS, "mono", 0.50);
|
||||
|
||||
/* devices */
|
||||
MCFG_MC6845_ADD("crtc", SY6545_1, "screen", 12_MHz_XTAL / 8)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(mbee_state, crtc_update_row)
|
||||
MCFG_MC6845_ADDR_CHANGED_CB(mbee_state, crtc_update_addr)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE(*this, mbee_state, crtc_vs))
|
||||
SY6545_1(config, m_crtc, 12_MHz_XTAL / 8);
|
||||
m_crtc->set_screen(m_screen);
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(8);
|
||||
m_crtc->set_update_row_callback(FUNC(mbee_state::crtc_update_row), this);
|
||||
m_crtc->set_on_update_addr_change_callback(FUNC(mbee_state::crtc_update_addr), this);
|
||||
m_crtc->out_vsync_callback().set(FUNC(mbee_state::crtc_vs));
|
||||
|
||||
MCFG_QUICKLOAD_ADD("quickload", mbee_state, mbee, "mwb,com,bee", 3)
|
||||
MCFG_QUICKLOAD_ADD("quickload2", mbee_state, mbee_z80bin, "bin", 3)
|
||||
@ -736,12 +737,13 @@ MACHINE_CONFIG_START(mbee_state::mbeeic)
|
||||
SPEAKER_SOUND(config, "speaker").add_route(ALL_OUTPUTS, "mono", 0.50);
|
||||
|
||||
/* devices */
|
||||
MCFG_MC6845_ADD("crtc", SY6545_1, "screen", 13.5_MHz_XTAL / 8)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(mbee_state, crtc_update_row)
|
||||
MCFG_MC6845_ADDR_CHANGED_CB(mbee_state, crtc_update_addr)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE(*this, mbee_state, crtc_vs))
|
||||
SY6545_1(config, m_crtc, 13.5_MHz_XTAL / 8);
|
||||
m_crtc->set_screen(m_screen);
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(8);
|
||||
m_crtc->set_update_row_callback(FUNC(mbee_state::crtc_update_row), this);
|
||||
m_crtc->set_on_update_addr_change_callback(FUNC(mbee_state::crtc_update_addr), this);
|
||||
m_crtc->out_vsync_callback().set(FUNC(mbee_state::crtc_vs));
|
||||
|
||||
MCFG_QUICKLOAD_ADD("quickload", mbee_state, mbee, "mwb,com,bee", 2)
|
||||
MCFG_QUICKLOAD_ADD("quickload2", mbee_state, mbee_z80bin, "bin", 2)
|
||||
|
@ -1429,13 +1429,14 @@ MACHINE_CONFIG_START(merit_state::pitboss)
|
||||
MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, 512, 0, 512, 256, 0, 256) /* temporary, CRTC will configure screen */
|
||||
MCFG_SCREEN_UPDATE_DEVICE("crtc", mc6845_device, screen_update)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", CRTC_CLOCK)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_BEGIN_UPDATE_CB(merit_state, crtc_begin_update)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(merit_state, crtc_update_row)
|
||||
MCFG_MC6845_OUT_HSYNC_CB(WRITELINE(*this, merit_state, hsync_changed))
|
||||
MCFG_MC6845_OUT_VSYNC_CB(INPUTLINE("maincpu", 0))
|
||||
mc6845_device &crtc(MC6845(config, "crtc", CRTC_CLOCK));
|
||||
crtc.set_screen(m_screen);
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
crtc.set_begin_update_callback(FUNC(merit_state::crtc_begin_update), this);
|
||||
crtc.set_update_row_callback(FUNC(merit_state::crtc_update_row), this);
|
||||
crtc.out_hsync_callback().set(FUNC(merit_state::hsync_changed));
|
||||
crtc.out_vsync_callback().set_inputline(m_maincpu, 0);
|
||||
|
||||
/* sound hardware */
|
||||
SPEAKER(config, "mono").front_center();
|
||||
|
@ -539,11 +539,12 @@ MACHINE_CONFIG_START(miniboy7_state::miniboy7)
|
||||
MCFG_PALETTE_ADD("palette", 256)
|
||||
MCFG_PALETTE_INIT_OWNER(miniboy7_state, miniboy7)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", MASTER_CLOCK / 12) /* guess */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(miniboy7_state, crtc_update_row)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE("pia0", pia6821_device, ca1_w))
|
||||
mc6845_device &crtc(MC6845(config, "crtc", MASTER_CLOCK / 12)); /* guess */
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
crtc.set_update_row_callback(FUNC(miniboy7_state::crtc_update_row), this);
|
||||
crtc.out_vsync_callback().set("pia0", FUNC(pia6821_device::ca1_w));
|
||||
|
||||
/* sound hardware */
|
||||
SPEAKER(config, "mono").front_center();
|
||||
|
@ -511,10 +511,11 @@ MACHINE_CONFIG_START(mpu12wbk_state::mpu12wbk)
|
||||
MCFG_PALETTE_ADD("palette", 512)
|
||||
MCFG_PALETTE_INIT_OWNER(mpu12wbk_state, mpu12wbk)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", MASTER_CLOCK/4) /* guess */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(4)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(INPUTLINE("maincpu", INPUT_LINE_NMI))
|
||||
mc6845_device &crtc(MC6845(config, "crtc", MASTER_CLOCK/4)); /* guess */
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(4);
|
||||
crtc.out_vsync_callback().set_inputline(m_maincpu, INPUT_LINE_NMI);
|
||||
|
||||
/* sound hardware */
|
||||
SPEAKER(config, "mono").front_center();
|
||||
|
@ -230,10 +230,11 @@ MACHINE_CONFIG_START(mpu4dealem_state::dealem)
|
||||
MCFG_PALETTE_ADD("palette", 32)
|
||||
MCFG_PALETTE_INIT_OWNER(mpu4dealem_state,dealem)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", HD6845, "screen", MPU4_MASTER_CLOCK / 4 / 8) /* HD68B45 */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE(*this, mpu4dealem_state, dealem_vsync_changed))
|
||||
hd6845_device &crtc(HD6845(config, "crtc", MPU4_MASTER_CLOCK / 4 / 8)); /* HD68B45 */
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
crtc.out_vsync_callback().set(FUNC(mpu4dealem_state::dealem_vsync_changed));
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
||||
|
@ -157,9 +157,10 @@ MACHINE_CONFIG_START(multi16_state::multi16)
|
||||
MCFG_PALETTE_ADD("palette", 8)
|
||||
|
||||
/* devices */
|
||||
MCFG_MC6845_ADD("crtc", H46505, "screen", 16000000/5) /* unknown clock, hand tuned to get ~60 fps */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
H46505(config, m_crtc, 16000000/5); /* unknown clock, hand tuned to get ~60 fps */
|
||||
m_crtc->set_screen("screen");
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(8);
|
||||
|
||||
PIC8259(config, m_pic, 0);
|
||||
m_pic->out_int_callback().set_inputline(m_maincpu, 0);
|
||||
|
@ -594,10 +594,11 @@ MACHINE_CONFIG_START(multi8_state::multi8)
|
||||
/* devices */
|
||||
MCFG_TIMER_DRIVER_ADD_PERIODIC("keyboard_timer", multi8_state, keyboard_callback, attotime::from_hz(240/32))
|
||||
|
||||
MCFG_MC6845_ADD("crtc", H46505, "screen", XTAL(3'579'545)/2) /* unknown clock, hand tuned to get ~60 fps */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(multi8_state, crtc_update_row)
|
||||
H46505(config, m_crtc, XTAL(3'579'545)/2); /* unknown clock, hand tuned to get ~60 fps */
|
||||
m_crtc->set_screen("screen");
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(8);
|
||||
m_crtc->set_update_row_callback(FUNC(multi8_state::crtc_update_row), this);
|
||||
|
||||
I8255(config, m_ppi);
|
||||
m_ppi->in_pa_callback().set(FUNC(multi8_state::porta_r));
|
||||
|
@ -270,9 +270,10 @@ MACHINE_CONFIG_START(murogem_state::murogem)
|
||||
MCFG_PALETTE_ADD("palette", 0x100)
|
||||
MCFG_PALETTE_INIT_OWNER(murogem_state, murogem)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", 750000) /* ? MHz */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
mc6845_device &crtc(MC6845(config, "crtc", 750000)); /* ? MHz */
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
|
||||
/* sound hardware */
|
||||
SPEAKER(config, "speaker").front_center();
|
||||
|
@ -979,10 +979,11 @@ MACHINE_CONFIG_START(myb3k_state::myb3k)
|
||||
// m_pit8253->out_handler<2>().set(FUNC(myb3k_state::pit_out2_changed));
|
||||
|
||||
/* Video controller */
|
||||
MCFG_MC6845_ADD("crtc", H46505, "screen", XTAL(14'318'181) / 16) /* Main crystal divided by 16 through a 74163 4 bit counter */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(myb3k_state, crtc_update_row)
|
||||
H46505(config, m_crtc, XTAL(14'318'181) / 16); /* Main crystal divided by 16 through a 74163 4 bit counter */
|
||||
m_crtc->set_screen(m_screen);
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(8);
|
||||
m_crtc->set_update_row_callback(FUNC(myb3k_state::crtc_update_row), this);
|
||||
|
||||
/* ISA8+ Expansion bus */
|
||||
ISA8(config, m_isabus, 0);
|
||||
|
@ -355,9 +355,10 @@ MACHINE_CONFIG_START(nibble_state::nibble)
|
||||
|
||||
MCFG_PALETTE_ADD("palette", 0x200)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", MASTER_CLOCK/8) /* guess */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
mc6845_device &crtc(MC6845(config, "crtc", MASTER_CLOCK/8)); /* guess */
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
|
||||
SPEAKER(config, "mono").front_center();
|
||||
AY8910(config, "aysnd", MASTER_CLOCK/8).add_route(ALL_OUTPUTS, "mono", 0.50);
|
||||
|
@ -617,12 +617,13 @@ MACHINE_CONFIG_START(nyny_state::nyny)
|
||||
|
||||
MCFG_PALETTE_ADD_3BIT_RGB("palette")
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", CRTC_CLOCK)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(nyny_state, crtc_update_row)
|
||||
MCFG_MC6845_END_UPDATE_CB(nyny_state, crtc_end_update)
|
||||
MCFG_MC6845_OUT_DE_CB(WRITELINE("ic48_1", ttl74123_device, a_w))
|
||||
H46505(config, m_mc6845, CRTC_CLOCK);
|
||||
m_mc6845->set_screen("screen");
|
||||
m_mc6845->set_show_border_area(false);
|
||||
m_mc6845->set_char_width(8);
|
||||
m_mc6845->set_update_row_callback(FUNC(nyny_state::crtc_update_row), this);
|
||||
m_mc6845->set_end_update_callback(FUNC(nyny_state::crtc_end_update), this);
|
||||
m_mc6845->out_de_callback().set(m_ic48_1, FUNC(ttl74123_device::a_w));
|
||||
|
||||
/* 74LS123 */
|
||||
TTL74123(config, m_ic48_1, 0);
|
||||
|
@ -350,11 +350,12 @@ MACHINE_CONFIG_START(osborne1nv_state::osborne1nv)
|
||||
MCFG_SCREEN_NO_PALETTE
|
||||
MCFG_SCREEN_UPDATE_DEVICE("crtc", mc6845_device, screen_update)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", SY6545_1, "screen", XTAL(12'288'000)/8)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(osborne1nv_state, crtc_update_row)
|
||||
MCFG_MC6845_ADDR_CHANGED_CB(osborne1nv_state, crtc_update_addr_changed)
|
||||
sy6545_1_device &crtc(SY6545_1(config, "crtc", XTAL(12'288'000)/8));
|
||||
crtc.set_screen(m_screen);
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
crtc.set_update_row_callback(FUNC(osborne1nv_state::crtc_update_row), this);
|
||||
crtc.set_on_update_addr_change_callback(FUNC(osborne1nv_state::crtc_update_addr_changed), this);
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
||||
|
@ -424,10 +424,11 @@ MACHINE_CONFIG_START(othello_state::othello)
|
||||
MCFG_PALETTE_ADD(m_palette, 0x10)
|
||||
MCFG_PALETTE_INIT_OWNER(othello_state, othello)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", H46505, "screen", 1000000 /* ? MHz */) /* H46505 @ CPU clock */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(TILE_WIDTH)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(othello_state, crtc_update_row)
|
||||
h46505_device &crtc(H46505(config, "crtc", 1000000 /* ? MHz */)); /* H46505 @ CPU clock */
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(TILE_WIDTH);
|
||||
crtc.set_update_row_callback(FUNC(othello_state::crtc_update_row), this);
|
||||
|
||||
/* sound hardware */
|
||||
SPEAKER(config, "speaker").front_center();
|
||||
|
@ -275,10 +275,11 @@ MACHINE_CONFIG_START(peoplepc_state::olypeopl)
|
||||
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfxdecode_device::empty)
|
||||
MCFG_PALETTE_ADD_MONOCHROME("palette")
|
||||
|
||||
MCFG_MC6845_ADD("h46505", H46505, "screen", XTAL(22'000'000)/8)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(peoplepc_state, update_row)
|
||||
h46505_device &crtc(H46505(config, "h46505", XTAL(22'000'000)/8));
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
crtc.set_update_row_callback(FUNC(peoplepc_state::update_row), this);
|
||||
|
||||
I8257(config, m_dmac, XTAL(14'745'600)/3);
|
||||
m_dmac->out_hrq_cb().set(FUNC(peoplepc_state::hrq_w));
|
||||
|
@ -1390,11 +1390,12 @@ MACHINE_CONFIG_START(peplus_state::peplus)
|
||||
MCFG_PALETTE_ADD(m_palette, 16*16*2)
|
||||
MCFG_PALETTE_INIT_OWNER(peplus_state, peplus)
|
||||
|
||||
MCFG_MC6845_ADD(m_crtc, R6545_1, "screen", XTAL(20'000'000)/8/3)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_ADDR_CHANGED_CB(peplus_state, crtc_addr)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE(*this, peplus_state, crtc_vsync))
|
||||
R6545_1(config, m_crtc, XTAL(20'000'000)/8/3);
|
||||
m_crtc->set_screen(m_screen);
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(8);
|
||||
m_crtc->set_on_update_addr_change_callback(FUNC(peplus_state::crtc_addr), this);
|
||||
m_crtc->out_vsync_callback().set(FUNC(peplus_state::crtc_vsync));
|
||||
|
||||
MCFG_X2404P_ADD(m_i2cmem)
|
||||
|
||||
|
@ -445,9 +445,10 @@ MACHINE_CONFIG_START(progolf_state::progolf)
|
||||
MCFG_PALETTE_ADD("palette", 32*3)
|
||||
MCFG_PALETTE_INIT_OWNER(progolf_state, progolf)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", 3000000/4) /* hand tuned to get ~57 fps */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
mc6845_device &crtc(MC6845(config, "crtc", 3000000/4)); /* hand tuned to get ~57 fps */
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
|
||||
/* sound hardware */
|
||||
SPEAKER(config, "mono").front_center();
|
||||
|
@ -429,9 +429,9 @@ MACHINE_CONFIG_START(pwrview_state::pwrview)
|
||||
|
||||
Z80SIO2(config, "sio", 4000000);
|
||||
|
||||
MCFG_DEVICE_ADD("crtc", HD6845, XTAL(64'000'000)/64) // clock unknown
|
||||
MCFG_MC6845_CHAR_WIDTH(32) // ??
|
||||
MCFG_MC6845_UPDATE_ROW_CB(pwrview_state, update_row)
|
||||
hd6845_device &crtc(HD6845(config, "crtc", XTAL(64'000'000)/64)); // clock unknown
|
||||
crtc.set_char_width(32); /* ? */
|
||||
crtc.set_update_row_callback(FUNC(pwrview_state::update_row), this);
|
||||
|
||||
ADDRESS_MAP_BANK(config, "bios_bank").set_map(&pwrview_state::bios_bank).set_options(ENDIANNESS_LITTLE, 16, 17, 0x8000);
|
||||
MACHINE_CONFIG_END
|
||||
|
@ -564,10 +564,11 @@ MACHINE_CONFIG_START(pyl601_state::pyl601)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
|
||||
/* Devices */
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", XTAL(2'000'000))
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8) /* ? */
|
||||
MCFG_MC6845_UPDATE_ROW_CB(pyl601_state, pyl601_update_row)
|
||||
mc6845_device &crtc(MC6845(config, "crtc", XTAL(2'000'000)));
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8); /* ? */
|
||||
crtc.set_update_row_callback(FUNC(pyl601_state::pyl601_update_row), this);
|
||||
|
||||
UPD765A(config, m_fdc, true, true);
|
||||
MCFG_FLOPPY_DRIVE_ADD("upd765:0", pyl601_floppies, "525hd", pyl601_state::floppy_formats)
|
||||
@ -585,11 +586,7 @@ MACHINE_CONFIG_START(pyl601_state::pyl601a)
|
||||
|
||||
MCFG_GFXDECODE_MODIFY("gfxdecode", gfx_pyl601a)
|
||||
|
||||
MCFG_DEVICE_REMOVE("crtc")
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", XTAL(2'000'000))
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8) /* ? */
|
||||
MCFG_MC6845_UPDATE_ROW_CB(pyl601_state, pyl601a_update_row)
|
||||
subdevice<mc6845_device>("crtc")->set_update_row_callback(FUNC(pyl601_state::pyl601a_update_row), this);
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
/* ROM definition */
|
||||
|
@ -457,11 +457,12 @@ MACHINE_CONFIG_START(r2dtank_state::r2dtank)
|
||||
|
||||
MCFG_PALETTE_ADD_3BIT_BGR("palette")
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", CRTC_CLOCK)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(r2dtank_state, crtc_update_row)
|
||||
MCFG_MC6845_OUT_DE_CB(WRITELINE("74123", ttl74123_device, a_w))
|
||||
mc6845_device &crtc(MC6845(config, "crtc", CRTC_CLOCK));
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
crtc.set_update_row_callback(FUNC(r2dtank_state::crtc_update_row), this);
|
||||
crtc.out_de_callback().set("74123", FUNC(ttl74123_device::a_w));
|
||||
|
||||
/* 74LS123 */
|
||||
|
||||
|
@ -259,10 +259,11 @@ MACHINE_CONFIG_START(rgum_state::rgum)
|
||||
MCFG_SCREEN_UPDATE_DRIVER(rgum_state, screen_update_royalgum)
|
||||
MCFG_SCREEN_PALETTE("palette")
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", 24000000/16) /* unknown clock & type, hand tuned to get ~50 fps (?) */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(INPUTLINE("maincpu", INPUT_LINE_NMI))
|
||||
mc6845_device &crtc(MC6845(config, "crtc", 24000000/16)); /* unknown clock & type, hand tuned to get ~50 fps (?) */
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
crtc.out_vsync_callback().set_inputline(m_maincpu, INPUT_LINE_NMI);
|
||||
|
||||
i8255_device &ppi(I8255A(config, "ppi8255"));
|
||||
ppi.in_pa_callback().set_ioport("IN0");
|
||||
|
@ -3590,9 +3590,10 @@ MACHINE_CONFIG_START(royalmah_state::janyoup2)
|
||||
MCFG_DEVICE_CLOCK(XTAL(18'432'000)/4) // unknown divider
|
||||
MCFG_DEVICE_IO_MAP(janyoup2_iomap)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", H46505, "screen", XTAL(18'432'000)/12) // unknown divider
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(4)
|
||||
h46505_device &crtc(H46505(config, "crtc", XTAL(18'432'000)/12)); // unknown divider
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(4);
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
MACHINE_CONFIG_START(royalmah_state::seljan)
|
||||
|
@ -373,13 +373,14 @@ MACHINE_CONFIG_START(sanremo_state::sanremo)
|
||||
MCFG_SCREEN_UPDATE_DRIVER(sanremo_state, screen_update)
|
||||
MCFG_SCREEN_PALETTE("palette")
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", CRTC_CLOCK)
|
||||
mc6845_device &crtc(MC6845(config, "crtc", CRTC_CLOCK));
|
||||
// *** MC6845 init ***
|
||||
//
|
||||
// Register: 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17
|
||||
// Value: 0x45 0x30 0x36 0x0A 0x28 0x00 0x26 0x27 0x00 0x07 0x20 0x0B 0x00 0x00 0x00 0x00 0x00 0x00.
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
|
||||
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_sanremo)
|
||||
MCFG_PALETTE_ADD("palette", 0x10)
|
||||
|
@ -10,7 +10,7 @@
|
||||
Notes:
|
||||
|
||||
- Very similar to merit.c
|
||||
- We're using the MC6845 drawing code from merit.c, but it will need
|
||||
- We're using the MC6845 drawing code from merit.cpp, but it will need
|
||||
modifications to support the reels and proper colors.
|
||||
|
||||
|
||||
@ -567,13 +567,14 @@ MACHINE_CONFIG_START(slotcarn_state::slotcarn)
|
||||
MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, 512, 0, 512, 256, 0, 256) /* temporary, CRTC will configure screen */
|
||||
MCFG_SCREEN_UPDATE_DEVICE("crtc", mc6845_device, screen_update)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", CRTC_CLOCK)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_BEGIN_UPDATE_CB(slotcarn_state, crtc_begin_update)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(slotcarn_state, crtc_update_row)
|
||||
MCFG_MC6845_OUT_HSYNC_CB(WRITELINE(*this, slotcarn_state, hsync_changed))
|
||||
MCFG_MC6845_OUT_VSYNC_CB(INPUTLINE("maincpu", 0))
|
||||
mc6845_device &crtc(MC6845(config, "crtc", CRTC_CLOCK));
|
||||
crtc.set_screen(m_screen);
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
crtc.set_begin_update_callback(FUNC(slotcarn_state::crtc_begin_update), this);
|
||||
crtc.set_update_row_callback(FUNC(slotcarn_state::crtc_update_row), this);
|
||||
crtc.out_hsync_callback().set(FUNC(slotcarn_state::hsync_changed));
|
||||
crtc.out_vsync_callback().set_inputline(m_maincpu, 0);
|
||||
|
||||
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_slotcarn)
|
||||
MCFG_PALETTE_ADD("palette", 0x400)
|
||||
|
@ -827,9 +827,10 @@ MACHINE_CONFIG_START(snk6502_state::sasuke)
|
||||
MCFG_PALETTE_INIT_OWNER(snk6502_state,satansat)
|
||||
MCFG_VIDEO_START_OVERRIDE(snk6502_state,satansat)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", MASTER_CLOCK / 16)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
mc6845_device &crtc(MC6845(config, "crtc", MASTER_CLOCK / 16));
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
|
||||
MCFG_TIMER_DRIVER_ADD_PERIODIC("sasuke_timer", snk6502_state, sasuke_update_counter, attotime::from_hz(MASTER_CLOCK / 8))
|
||||
|
||||
@ -873,9 +874,10 @@ MACHINE_CONFIG_START(snk6502_state::vanguard)
|
||||
MCFG_PALETTE_INIT_OWNER(snk6502_state,snk6502)
|
||||
MCFG_VIDEO_START_OVERRIDE(snk6502_state,snk6502)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", MASTER_CLOCK / 16)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
mc6845_device &crtc(MC6845(config, "crtc", MASTER_CLOCK / 16));
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
|
||||
// sound hardware
|
||||
MCFG_DEVICE_ADD("snk6502", VANGUARD_SOUND, 0)
|
||||
|
@ -324,9 +324,10 @@ MACHINE_CONFIG_START(speedatk_state::speedatk)
|
||||
MCFG_SCREEN_UPDATE_DRIVER(speedatk_state, screen_update)
|
||||
MCFG_SCREEN_PALETTE("palette")
|
||||
|
||||
MCFG_MC6845_ADD("crtc", H46505, "screen", MASTER_CLOCK/16) /* hand tuned to get ~60 fps */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
H46505(config, m_crtc, MASTER_CLOCK/16); /* hand tuned to get ~60 fps */
|
||||
m_crtc->set_screen("screen");
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(8);
|
||||
|
||||
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_speedatk)
|
||||
MCFG_PALETTE_ADD("palette", 0x100)
|
||||
|
@ -207,18 +207,6 @@
|
||||
#define CRTC_CLOCK (MAIN_CPU_MASTER_CLOCK / 16)
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Prototypes
|
||||
*
|
||||
*************************************/
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* PIA1 - Main CPU
|
||||
@ -535,13 +523,12 @@ MACHINE_CONFIG_START(spiders_state::spiders)
|
||||
|
||||
MCFG_PALETTE_ADD_3BIT_RGB("palette")
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", CRTC_CLOCK)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(spiders_state, crtc_update_row)
|
||||
MCFG_MC6845_OUT_DE_CB(WRITELINE("ic60", ttl74123_device, a_w))
|
||||
|
||||
/* 74LS123 */
|
||||
mc6845_device &crtc(MC6845(config, "crtc", CRTC_CLOCK));
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
crtc.set_update_row_callback(FUNC(spiders_state::crtc_update_row), this);
|
||||
crtc.out_de_callback().set("ic60", FUNC(ttl74123_device::a_w));
|
||||
|
||||
PIA6821(config, m_pia[0], 0);
|
||||
m_pia[0]->readpa_handler().set_ioport("IN0");
|
||||
|
@ -566,11 +566,12 @@ MACHINE_CONFIG_START(ssingles_state::ssingles)
|
||||
|
||||
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_ssingles)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", 1000000 /* ? MHz */)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(ssingles_state, ssingles_update_row)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(INPUTLINE("maincpu", INPUT_LINE_NMI))
|
||||
mc6845_device &crtc(MC6845(config, "crtc", 1000000 /* ? MHz */));
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
crtc.set_update_row_callback(FUNC(ssingles_state::ssingles_update_row), this);
|
||||
crtc.out_vsync_callback().set_inputline(m_maincpu, INPUT_LINE_NMI);
|
||||
|
||||
/* sound hardware */
|
||||
SPEAKER(config, "mono").front_center();
|
||||
@ -592,13 +593,9 @@ MACHINE_CONFIG_START(ssingles_state::atamanot)
|
||||
MCFG_DEVICE_PROGRAM_MAP(atamanot_map)
|
||||
MCFG_DEVICE_IO_MAP(atamanot_io_map)
|
||||
|
||||
MCFG_DEVICE_REMOVE("crtc")
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", 1000000 /* ? MHz */)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(ssingles_state, atamanot_update_row)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE(*this, ssingles_state, atamanot_irq))
|
||||
mc6845_device &crtc(*subdevice<mc6845_device>("crtc"));
|
||||
crtc.set_update_row_callback(FUNC(ssingles_state::atamanot_update_row), this);
|
||||
crtc.out_vsync_callback().set(FUNC(ssingles_state::atamanot_irq));
|
||||
|
||||
MCFG_GFXDECODE_MODIFY("gfxdecode", gfx_atamanot)
|
||||
MACHINE_CONFIG_END
|
||||
|
@ -817,10 +817,11 @@ MACHINE_CONFIG_START(super80_state::super80v)
|
||||
MCFG_PALETTE_ADD("palette", 32)
|
||||
MCFG_PALETTE_INIT_OWNER(super80_state,super80m)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", MASTER_CLOCK / SUPER80V_DOTS)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(SUPER80V_DOTS)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(super80_state, crtc_update_row)
|
||||
MC6845(config, m_crtc, MASTER_CLOCK / SUPER80V_DOTS);
|
||||
m_crtc->set_screen("screen");
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(SUPER80V_DOTS);
|
||||
m_crtc->set_update_row_callback(FUNC(super80_state::crtc_update_row), this);
|
||||
|
||||
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_super80v)
|
||||
config.set_default_layout(layout_super80);
|
||||
|
@ -444,9 +444,10 @@ MACHINE_CONFIG_START(supercrd_state::supercrd)
|
||||
MCFG_PALETTE_INIT_OWNER(supercrd_state, supercrd)
|
||||
MCFG_VIDEO_START_OVERRIDE(supercrd_state, supercrd)
|
||||
|
||||
// MCFG_MC6845_ADD("crtc", MC6845, "screen", MASTER_CLOCK/8)
|
||||
// MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
// MCFG_MC6845_CHAR_WIDTH(4)
|
||||
// mc6845_device &crtc(MC6845(config, "crtc", MASTER_CLOCK/8));
|
||||
// crtc.set_screen("screen");
|
||||
// crtc.set_show_border_area(false);
|
||||
// crtc.set_char_width(4);
|
||||
|
||||
/* sound hardware */
|
||||
SPEAKER(config, "mono").front_center();
|
||||
|
@ -549,12 +549,13 @@ MACHINE_CONFIG_START(tapatune_state::tapatune)
|
||||
|
||||
MCFG_QUANTUM_PERFECT_CPU("videocpu")
|
||||
|
||||
MCFG_MC6845_ADD("crtc", H46505, "screen", XTAL(24'000'000) / 16)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(5)
|
||||
MCFG_MC6845_BEGIN_UPDATE_CB(tapatune_state, crtc_begin_update)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(tapatune_state, crtc_update_row)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE(*this, tapatune_state, crtc_vsync))
|
||||
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)
|
||||
|
@ -582,9 +582,10 @@ MACHINE_CONFIG_START(tmspoker_state::tmspoker)
|
||||
MCFG_PALETTE_ADD("palette", 256)
|
||||
MCFG_PALETTE_INIT_OWNER(tmspoker_state, tmspoker)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", MASTER_CLOCK/4) /* guess */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
mc6845_device &crtc(MC6845(config, "crtc", MASTER_CLOCK/4)); /* guess */
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -447,9 +447,10 @@ MACHINE_CONFIG_START(truco_state::truco)
|
||||
MCFG_PALETTE_ADD("palette", 16)
|
||||
MCFG_PALETTE_INIT_OWNER(truco_state, truco)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", CRTC_CLOCK) /* Identified as UM6845 */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(4)
|
||||
mc6845_device &crtc(MC6845(config, "crtc", CRTC_CLOCK)); /* Identified as UM6845 */
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(4);
|
||||
|
||||
/* sound hardware */
|
||||
SPEAKER(config, "speaker").front_center();
|
||||
|
@ -436,11 +436,12 @@ MACHINE_CONFIG_START(ts803_state::ts803)
|
||||
MCFG_PALETTE_ADD_MONOCHROME("palette")
|
||||
|
||||
/* crtc */
|
||||
MCFG_MC6845_ADD("crtc", SY6545_1, "screen", 13608000 / 8)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(ts803_state, crtc_update_row)
|
||||
MCFG_MC6845_ADDR_CHANGED_CB(ts803_state, crtc_update_addr)
|
||||
sy6545_1_device &crtc(SY6545_1(config, "crtc", 13608000 / 8));
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
crtc.set_update_row_callback(FUNC(ts803_state::crtc_update_row), this);
|
||||
crtc.set_on_update_addr_change_callback(FUNC(ts803_state::crtc_update_addr), this);
|
||||
|
||||
clock_device &sti_clock(CLOCK(config, "sti_clock", 16_MHz_XTAL / 13));
|
||||
sti_clock.signal_handler().set("sti", FUNC(z80sti_device::tc_w));
|
||||
|
@ -521,12 +521,13 @@ MACHINE_CONFIG_START(tv910_state::tv910)
|
||||
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK, 840, 0, 640, 270, 0, 240)
|
||||
MCFG_SCREEN_UPDATE_DEVICE( CRTC_TAG, r6545_1_device, screen_update )
|
||||
|
||||
MCFG_MC6845_ADD(CRTC_TAG, R6545_1, "screen", MASTER_CLOCK/8)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(tv910_state, crtc_update_row)
|
||||
MCFG_MC6845_ADDR_CHANGED_CB(tv910_state, crtc_update_addr)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE(*this, tv910_state, vbl_w))
|
||||
R6545_1(config, m_crtc, MASTER_CLOCK/8);
|
||||
m_crtc->set_screen("screen");
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(8);
|
||||
m_crtc->set_update_row_callback(FUNC(tv910_state::crtc_update_row), this);
|
||||
m_crtc->set_on_update_addr_change_callback(FUNC(tv910_state::crtc_update_addr), this);
|
||||
m_crtc->out_vsync_callback().set(FUNC(tv910_state::vbl_w));
|
||||
|
||||
AY3600(config, m_ay3600, 0);
|
||||
m_ay3600->x0().set_ioport("X0");
|
||||
|
@ -685,9 +685,10 @@ MACHINE_CONFIG_START(twincobr_state::twincobr)
|
||||
m_coinlatch->q_out_cb<7>().set(FUNC(twincobr_state::coin_lockout_2_w));
|
||||
|
||||
/* video hardware */
|
||||
MCFG_MC6845_ADD("crtc", HD6845, "screen", XTAL(28'000'000)/8) /* 3.5MHz measured on CLKin */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(2)
|
||||
hd6845_device &crtc(HD6845(config, "crtc", XTAL(28'000'000)/8)); /* 3.5MHz measured on CLKin */
|
||||
crtc.set_screen(m_screen);
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(2);
|
||||
|
||||
MCFG_TOAPLAN_SCU_ADD("scu", "palette", 31, 15)
|
||||
|
||||
|
@ -240,9 +240,10 @@ MACHINE_CONFIG_START(usgames_state::usg32)
|
||||
MCFG_PALETTE_ADD("palette", 2*256)
|
||||
MCFG_PALETTE_INIT_OWNER(usgames_state, usgames)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", 18_MHz_XTAL / 16)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
mc6845_device &crtc(MC6845(config, "crtc", 18_MHz_XTAL / 16));
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
|
||||
/* sound hardware */
|
||||
SPEAKER(config, "mono").front_center();
|
||||
|
@ -303,11 +303,12 @@ MACHINE_CONFIG_START(v6809_state::v6809)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
|
||||
/* devices */
|
||||
MCFG_MC6845_ADD("crtc", SY6545_1, "screen", 16_MHz_XTAL / 8)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(v6809_state, crtc_update_row)
|
||||
MCFG_MC6845_ADDR_CHANGED_CB(v6809_state, crtc_update_addr)
|
||||
SY6545_1(config, m_crtc, 16_MHz_XTAL / 8);
|
||||
m_crtc->set_screen("screen");
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(8);
|
||||
m_crtc->set_update_row_callback(FUNC(v6809_state::crtc_update_row), this);
|
||||
m_crtc->set_on_update_addr_change_callback(FUNC(v6809_state::crtc_update_addr), this);
|
||||
|
||||
MCFG_DEVICE_ADD("keyboard", GENERIC_KEYBOARD, 0)
|
||||
MCFG_GENERIC_KEYBOARD_CB(PUT(v6809_state, kbd_put))
|
||||
|
@ -590,7 +590,8 @@ MACHINE_CONFIG_START(vcombat_state::vcombat)
|
||||
MCFG_TLC34076_ADD("tlc34076", TLC34076_6_BIT)
|
||||
|
||||
/* Disabled for now as it can't handle multiple screens */
|
||||
// MCFG_MC6845_ADD("crtc", MC6845, "screen", 6000000 / 16)
|
||||
// MC6845(config, m_crtc, 6000000 / 16);
|
||||
// m_crtc->set_screen("screen");
|
||||
config.set_default_layout(layout_dualhsxs);
|
||||
|
||||
MCFG_SCREEN_ADD("screen", RASTER)
|
||||
@ -626,10 +627,11 @@ MACHINE_CONFIG_START(vcombat_state::shadfgtr)
|
||||
|
||||
MCFG_TLC34076_ADD("tlc34076", TLC34076_6_BIT)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", XTAL(20'000'000) / 4 / 16)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(16)
|
||||
MCFG_MC6845_OUT_HSYNC_CB(WRITELINE(*this, vcombat_state, sound_update))
|
||||
MC6845(config, m_crtc, XTAL(20'000'000) / 4 / 16);
|
||||
m_crtc->set_screen("screen");
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(16);
|
||||
m_crtc->out_hsync_callback().set(FUNC(vcombat_state::sound_update));
|
||||
|
||||
MCFG_SCREEN_ADD("screen", RASTER)
|
||||
MCFG_SCREEN_RAW_PARAMS(XTAL(20'000'000) / 4, 320, 0, 256, 277, 0, 224)
|
||||
|
@ -593,9 +593,10 @@ MACHINE_CONFIG_START(nevada_state::nevada)
|
||||
MCFG_PALETTE_ADD("palette", 256)
|
||||
MCFG_PALETTE_INIT_OWNER(nevada_state, nevada)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", MC6845_CLOCK)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
mc6845_device &crtc(MC6845(config, "crtc", MC6845_CLOCK));
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
|
||||
// sound hardware
|
||||
SPEAKER(config, "mono").front_center();
|
||||
|
@ -415,9 +415,10 @@ MACHINE_CONFIG_START(wardner_state::wardner)
|
||||
coinlatch.q_out_cb<7>().set(FUNC(wardner_state::coin_lockout_2_w));
|
||||
|
||||
/* video hardware */
|
||||
MCFG_MC6845_ADD("crtc", HD6845, "screen", XTAL(14'000'000)/4) /* 3.5MHz measured on CLKin */
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(2)
|
||||
hd6845_device &crtc(HD6845(config, "crtc", XTAL(14'000'000)/4)); /* 3.5MHz measured on CLKin */
|
||||
crtc.set_screen(m_screen);
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(2);
|
||||
|
||||
MCFG_TOAPLAN_SCU_ADD("scu", "palette", 32, 14)
|
||||
|
||||
|
@ -34,9 +34,9 @@ public:
|
||||
osborne1_state(const machine_config &mconfig, device_type type, const char *tag) :
|
||||
driver_device(mconfig, type, tag),
|
||||
m_ram(*this, RAM_TAG),
|
||||
m_screen(*this, "screen"),
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_gfxdecode(*this, "gfxdecode"),
|
||||
m_screen(*this, "screen"),
|
||||
m_speaker(*this, "speaker"),
|
||||
m_pia0(*this, "pia_0"),
|
||||
m_pia1(*this, "pia_1"),
|
||||
@ -72,6 +72,7 @@ protected:
|
||||
void osborne1nv_io(address_map &map);
|
||||
|
||||
required_device<ram_device> m_ram;
|
||||
required_device<screen_device> m_screen;
|
||||
|
||||
private:
|
||||
DECLARE_WRITE8_MEMBER(bank_0xxx_w);
|
||||
@ -98,7 +99,6 @@ private:
|
||||
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<gfxdecode_device> m_gfxdecode;
|
||||
required_device<screen_device> m_screen;
|
||||
required_device<speaker_sound_device> m_speaker;
|
||||
required_device<pia6821_device> m_pia0;
|
||||
required_device<pia6821_device> m_pia1;
|
||||
|
@ -54,8 +54,8 @@ void abc1600_mover_device::vram_map(address_map &map)
|
||||
|
||||
void abc1600_mover_device::crtc_map(address_map &map)
|
||||
{
|
||||
map(0x00, 0x00).mirror(0xfe).rw(SY6845E_TAG, FUNC(mc6845_device::status_r), FUNC(mc6845_device::address_w));
|
||||
map(0x01, 0x01).mirror(0xfe).rw(SY6845E_TAG, FUNC(mc6845_device::register_r), FUNC(mc6845_device::register_w));
|
||||
map(0x00, 0x00).mirror(0xfe).rw(m_crtc, FUNC(mc6845_device::status_r), FUNC(mc6845_device::address_w));
|
||||
map(0x01, 0x01).mirror(0xfe).rw(m_crtc, FUNC(mc6845_device::register_r), FUNC(mc6845_device::register_w));
|
||||
}
|
||||
|
||||
void abc1600_mover_device::iowr0_map(address_map &map)
|
||||
@ -208,11 +208,12 @@ MACHINE_CONFIG_START(abc1600_mover_device::device_add_mconfig)
|
||||
|
||||
MCFG_PALETTE_ADD_MONOCHROME("palette")
|
||||
|
||||
MCFG_MC6845_ADD(SY6845E_TAG, SY6845E, SCREEN_TAG, XTAL(64'000'000)/32)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(true)
|
||||
MCFG_MC6845_CHAR_WIDTH(32)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(abc1600_mover_device, crtc_update_row)
|
||||
MCFG_MC6845_ADDR_CHANGED_CB(abc1600_mover_device, crtc_update)
|
||||
SY6845E(config, m_crtc, XTAL(64'000'000)/32);
|
||||
m_crtc->set_screen(SCREEN_TAG);
|
||||
m_crtc->set_show_border_area(true);
|
||||
m_crtc->set_char_width(32);
|
||||
m_crtc->set_update_row_callback(FUNC(abc1600_mover_device::crtc_update_row), this);
|
||||
m_crtc->set_on_update_addr_change_callback(FUNC(abc1600_mover_device::crtc_update), this);
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
||||
|
@ -478,12 +478,13 @@ PALETTE_INIT_MEMBER( abc806_state, abc806 )
|
||||
//-------------------------------------------------
|
||||
|
||||
MACHINE_CONFIG_START(abc806_state::abc806_video)
|
||||
MCFG_MC6845_ADD(MC6845_TAG, MC6845, SCREEN_TAG, ABC800_CCLK)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(true)
|
||||
MCFG_MC6845_CHAR_WIDTH(ABC800_CHAR_WIDTH)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(abc806_state, abc806_update_row)
|
||||
MCFG_MC6845_OUT_HSYNC_CB(WRITELINE(*this, abc806_state, hs_w))
|
||||
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE(*this, abc806_state, vs_w))
|
||||
MC6845(config, m_crtc, ABC800_CCLK);
|
||||
m_crtc->set_screen(SCREEN_TAG);
|
||||
m_crtc->set_show_border_area(true);
|
||||
m_crtc->set_char_width(ABC800_CHAR_WIDTH);
|
||||
m_crtc->set_update_row_callback(FUNC(abc806_state::abc806_update_row), this);
|
||||
m_crtc->out_hsync_callback().set(FUNC(abc806_state::hs_w));
|
||||
m_crtc->out_vsync_callback().set(FUNC(abc806_state::vs_w));
|
||||
|
||||
MCFG_SCREEN_ADD(SCREEN_TAG, RASTER)
|
||||
MCFG_SCREEN_UPDATE_DRIVER(abc806_state, screen_update)
|
||||
|
@ -128,19 +128,20 @@ void decodmd_type2_device::decodmd2_map(address_map &map)
|
||||
map(0x8000, 0xffff).bankr("dmdbank2"); // last 32k of ROM
|
||||
}
|
||||
|
||||
MACHINE_CONFIG_START(decodmd_type2_device::device_add_mconfig)
|
||||
void decodmd_type2_device::device_add_mconfig(machine_config &config)
|
||||
{
|
||||
/* basic machine hardware */
|
||||
MCFG_DEVICE_ADD("dmdcpu", MC6809E, XTAL(8'000'000) / 4)
|
||||
MCFG_DEVICE_PROGRAM_MAP(decodmd2_map)
|
||||
MC6809E(config, m_cpu, XTAL(8'000'000) / 4);
|
||||
m_cpu->set_addrmap(AS_PROGRAM, &decodmd_type2_device::decodmd2_map);
|
||||
|
||||
MCFG_QUANTUM_TIME(attotime::from_hz(60))
|
||||
config.m_minimum_quantum = attotime::from_hz(60);
|
||||
|
||||
MCFG_TIMER_DRIVER_ADD_PERIODIC("firq_timer", decodmd_type2_device, dmd_firq, attotime::from_hz(80))
|
||||
TIMER(config, "firq_timer", 0).configure_periodic(timer_device::expired_delegate(FUNC(decodmd_type2_device::dmd_firq), this), attotime::from_hz(80));
|
||||
|
||||
MCFG_MC6845_ADD("dmd6845", MC6845, nullptr, XTAL(8'000'000) / 8) // TODO: confirm clock speed
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(decodmd_type2_device, crtc_update_row)
|
||||
MC6845(config, m_mc6845, XTAL(8'000'000) / 8); // TODO: confirm clock speed
|
||||
m_mc6845->set_show_border_area(false);
|
||||
m_mc6845->set_char_width(8);
|
||||
m_mc6845->set_update_row_callback(FUNC(decodmd_type2_device::crtc_update_row), this);
|
||||
|
||||
screen_device &screen(SCREEN(config, "dmd", SCREEN_TYPE_RASTER));
|
||||
screen.set_native_aspect();
|
||||
@ -150,7 +151,7 @@ MACHINE_CONFIG_START(decodmd_type2_device::device_add_mconfig)
|
||||
screen.set_refresh_hz(60);
|
||||
|
||||
RAM(config, RAM_TAG).set_default_size("12K");
|
||||
MACHINE_CONFIG_END
|
||||
}
|
||||
|
||||
|
||||
decodmd_type2_device::decodmd_type2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
||||
|
@ -130,19 +130,20 @@ void decodmd_type3_device::decodmd3_map(address_map &map)
|
||||
map(0x00c00020, 0x00c00021).rw(FUNC(decodmd_type3_device::latch_r), FUNC(decodmd_type3_device::status_w));
|
||||
}
|
||||
|
||||
MACHINE_CONFIG_START(decodmd_type3_device::device_add_mconfig)
|
||||
void decodmd_type3_device::device_add_mconfig(machine_config &config)
|
||||
{
|
||||
/* basic machine hardware */
|
||||
MCFG_DEVICE_ADD("dmdcpu", M68000, XTAL(12'000'000))
|
||||
MCFG_DEVICE_PROGRAM_MAP(decodmd3_map)
|
||||
M68000(config, m_cpu, XTAL(12'000'000));
|
||||
m_cpu->set_addrmap(AS_PROGRAM, &decodmd_type3_device::decodmd3_map);
|
||||
|
||||
MCFG_QUANTUM_TIME(attotime::from_hz(60))
|
||||
config.m_minimum_quantum = attotime::from_hz(60);
|
||||
|
||||
MCFG_TIMER_DRIVER_ADD_PERIODIC("irq_timer", decodmd_type3_device, dmd_irq, attotime::from_hz(150))
|
||||
TIMER(config, "irq_timer", 0).configure_periodic(timer_device::expired_delegate(FUNC(decodmd_type3_device::dmd_irq), this), attotime::from_hz(150));
|
||||
|
||||
MCFG_MC6845_ADD("dmd6845", MC6845, nullptr, XTAL(12'000'000) / 4) // TODO: confirm clock speed
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(16)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(decodmd_type3_device, crtc_update_row)
|
||||
MC6845(config, m_mc6845, XTAL(12'000'000) / 4); // TODO: confirm clock speed
|
||||
m_mc6845->set_show_border_area(false);
|
||||
m_mc6845->set_char_width(16);
|
||||
m_mc6845->set_update_row_callback(FUNC(decodmd_type3_device::crtc_update_row), this);
|
||||
|
||||
screen_device &screen(SCREEN(config, "dmd", SCREEN_TYPE_RASTER));
|
||||
screen.set_native_aspect();
|
||||
@ -152,7 +153,7 @@ MACHINE_CONFIG_START(decodmd_type3_device::device_add_mconfig)
|
||||
screen.set_refresh_hz(60);
|
||||
|
||||
RAM(config, RAM_TAG).set_default_size("64K");
|
||||
MACHINE_CONFIG_END
|
||||
}
|
||||
|
||||
|
||||
decodmd_type3_device::decodmd_type3_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
||||
|
@ -377,8 +377,9 @@ MACHINE_CONFIG_START(madalien_state::madalien_video)
|
||||
MCFG_PALETTE_INIT_OWNER(madalien_state,madalien)
|
||||
MCFG_VIDEO_START_OVERRIDE(madalien_state,madalien)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", PIXEL_CLOCK / 8)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_OUT_VSYNC_CB(INPUTLINE("audiocpu", INPUT_LINE_NMI))
|
||||
mc6845_device &crtc(MC6845(config, "crtc", PIXEL_CLOCK / 8));
|
||||
crtc.set_screen("screen");
|
||||
crtc.set_show_border_area(false);
|
||||
crtc.set_char_width(8);
|
||||
crtc.out_vsync_callback().set_inputline(m_audiocpu, INPUT_LINE_NMI);
|
||||
MACHINE_CONFIG_END
|
||||
|
@ -593,16 +593,18 @@ uint32_t pc1512_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap
|
||||
// MACHINE_CONFIG( pc1512 )
|
||||
//-------------------------------------------------
|
||||
|
||||
MACHINE_CONFIG_START(pc1512_state::pc1512_video)
|
||||
MCFG_SCREEN_ADD(SCREEN_TAG, RASTER)
|
||||
MCFG_SCREEN_UPDATE_DRIVER(pc1512_state, screen_update)
|
||||
MCFG_SCREEN_SIZE(80*8, 24*8)
|
||||
MCFG_SCREEN_VISIBLE_AREA(0, 80*8-1, 0, 24*8-1)
|
||||
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500))
|
||||
MCFG_SCREEN_REFRESH_RATE(50)
|
||||
void pc1512_state::pc1512_video(machine_config &config)
|
||||
{
|
||||
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
|
||||
m_screen->set_screen_update(FUNC(pc1512_state::screen_update));
|
||||
m_screen->set_size(80*8, 24*8);
|
||||
m_screen->set_visarea(0, 80*8-1, 0, 24*8-1);
|
||||
m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(2500));
|
||||
m_screen->set_refresh_hz(50);
|
||||
|
||||
MCFG_MC6845_ADD(AMS40041_TAG, AMS40041, SCREEN_TAG, XTAL(28'636'363)/32)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(true)
|
||||
MCFG_MC6845_CHAR_WIDTH(8)
|
||||
MCFG_MC6845_UPDATE_ROW_CB(pc1512_state, crtc_update_row)
|
||||
MACHINE_CONFIG_END
|
||||
AMS40041(config, m_vdu, XTAL(28'636'363)/32);
|
||||
m_vdu->set_screen(m_screen);
|
||||
m_vdu->set_show_border_area(true);
|
||||
m_vdu->set_char_width(8);
|
||||
m_vdu->set_update_row_callback(FUNC(pc1512_state::crtc_update_row), this);
|
||||
}
|
||||
|
@ -104,7 +104,8 @@ MACHINE_CONFIG_START(pc8500_state::pc8500_video)
|
||||
MCFG_SCREEN_REFRESH_RATE(50)
|
||||
MCFG_SCREEN_PALETTE("palette")
|
||||
|
||||
MCFG_MC6845_ADD(MC6845_TAG, MC6845, CRT_SCREEN_TAG, 400000)
|
||||
MCFG_MC6845_SHOW_BORDER_AREA(false)
|
||||
MCFG_MC6845_CHAR_WIDTH(6)
|
||||
MC6845(config, m_crtc, 400000);
|
||||
m_crtc->set_screen(CRT_SCREEN_TAG);
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(6);
|
||||
MACHINE_CONFIG_END
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user