mame\video: removed MACHINE_CONFIG macros (nw)

mame\drivers: mostly removed MACHINE_CONFIG macros from drivers starting with w, x, y and z (nw)
This commit is contained in:
Ivan Vangelista 2019-02-14 17:57:12 +01:00
parent 2ed835fc02
commit 9aa0a78c98
117 changed files with 1273 additions and 1297 deletions

View File

@ -61,15 +61,19 @@ ROM_END
// device_add_mconfig - add device configuration
//-------------------------------------------------
MACHINE_CONFIG_START(a2bus_floppy_device::device_add_mconfig)
void a2bus_floppy_device::device_add_mconfig(machine_config &config)
{
APPLEFDC(config, m_fdc, &fdc_interface);
MCFG_LEGACY_FLOPPY_APPLE_2_DRIVES_ADD(floppy_interface,15,16)
MACHINE_CONFIG_END
FLOPPY_APPLE(config, FLOPPY_0, &floppy_interface, 15, 16);
FLOPPY_APPLE(config, FLOPPY_1, &floppy_interface, 15, 16);
}
MACHINE_CONFIG_START(a2bus_iwmflop_device::device_add_mconfig)
void a2bus_iwmflop_device::device_add_mconfig(machine_config &config)
{
IWM(config, m_fdc, &fdc_interface);
MCFG_LEGACY_FLOPPY_APPLE_2_DRIVES_ADD(floppy_interface,15,16)
MACHINE_CONFIG_END
FLOPPY_APPLE(config, FLOPPY_0, &floppy_interface, 15, 16);
FLOPPY_APPLE(config, FLOPPY_1, &floppy_interface, 15, 16);
}
//-------------------------------------------------
// rom_region - device-specific ROM region

View File

@ -51,13 +51,12 @@ static const floppy_interface agat840k_hle_floppy_interface =
"floppy_5_25"
};
MACHINE_CONFIG_START(a2bus_agat840k_hle_device::device_add_mconfig)
MCFG_DEVICE_ADD(FLOPPY_0, LEGACY_FLOPPY, 0)
MCFG_LEGACY_FLOPPY_CONFIG(agat840k_hle_floppy_interface)
MCFG_LEGACY_FLOPPY_IDX_CB(WRITELINE(*this, a2bus_agat840k_hle_device, index_0_w))
MCFG_DEVICE_ADD(FLOPPY_1, LEGACY_FLOPPY, 0)
MCFG_LEGACY_FLOPPY_CONFIG(agat840k_hle_floppy_interface)
MCFG_LEGACY_FLOPPY_IDX_CB(WRITELINE(*this, a2bus_agat840k_hle_device, index_1_w))
void a2bus_agat840k_hle_device::device_add_mconfig(machine_config &config)
{
legacy_floppy_image_device &floppy0(LEGACY_FLOPPY(config, FLOPPY_0, 0, &agat840k_hle_floppy_interface));
floppy0.out_idx_cb().set(FUNC(a2bus_agat840k_hle_device::index_0_w));
legacy_floppy_image_device &floppy1(LEGACY_FLOPPY(config, FLOPPY_1, 0, &agat840k_hle_floppy_interface));
floppy1.out_idx_cb().set(FUNC(a2bus_agat840k_hle_device::index_1_w));
I8255(config, m_d14);
// PA not connected
@ -69,7 +68,7 @@ MACHINE_CONFIG_START(a2bus_agat840k_hle_device::device_add_mconfig)
// m_d15->out_pb_callback().set(FUNC(a2bus_agat840k_hle_device::d15_o_b)); // write data
m_d15->in_pc_callback().set(FUNC(a2bus_agat840k_hle_device::d15_i_c));
m_d15->out_pc_callback().set(FUNC(a2bus_agat840k_hle_device::d15_o_c));
MACHINE_CONFIG_END
}
//-------------------------------------------------
// rom_region - device-specific ROM region

View File

@ -51,9 +51,10 @@ static const floppy_interface nes_floppy_interface =
// device_add_mconfig - add device configuration
//-------------------------------------------------
MACHINE_CONFIG_START(nes_disksys_device::device_add_mconfig)
MCFG_LEGACY_FLOPPY_DRIVE_ADD(FLOPPY_0, nes_floppy_interface)
MACHINE_CONFIG_END
void nes_disksys_device::device_add_mconfig(machine_config &config)
{
LEGACY_FLOPPY(config, FLOPPY_0, 0, &nes_floppy_interface);
}
ROM_START( disksys )

View File

@ -84,10 +84,4 @@ extern const input_device_default DEVICE_INPUT_DEFAULTS_NAME(SCSI_ID_5)[];
extern const input_device_default DEVICE_INPUT_DEFAULTS_NAME(SCSI_ID_6)[];
extern const input_device_default DEVICE_INPUT_DEFAULTS_NAME(SCSI_ID_7)[];
#define MCFG_SCSIDEV_ADD(_tag, _option, _type, _id) \
MCFG_DEVICE_MODIFY(_tag ) \
MCFG_SLOT_OPTION_ADD( _option, _type ) \
MCFG_SLOT_OPTION_DEVICE_INPUT_DEFAULTS( _option, _id ) \
MCFG_SLOT_DEFAULT_OPTION( _option )
#endif // MAME_BUS_SCSI_SCSIHLE_H

View File

@ -92,9 +92,6 @@ struct chrn_id
/* set if index has just occurred */
#define FLOPPY_DRIVE_INDEX 0x0020
#define MCFG_LEGACY_FLOPPY_IDX_CB(_devcb) \
downcast<legacy_floppy_image_device &>(*device).set_out_idx_func(DEVCB_##_devcb);
class legacy_floppy_image_device : public device_t,
public device_image_interface
{
@ -110,7 +107,7 @@ public:
~legacy_floppy_image_device();
void set_floppy_config(const floppy_interface *config) { m_config = config; }
template<class Object> devcb_base &set_out_idx_func(Object &&cb) { return m_out_idx_func.set_callback(std::forward<Object>(cb)); }
auto out_idx_cb() { return m_out_idx_func.bind(); }
static void add_4drives(machine_config &mconfig, const floppy_interface *config)
{
@ -120,6 +117,12 @@ public:
LEGACY_FLOPPY(mconfig, FLOPPY_3, 0, config);
}
static void add_2drives(machine_config &mconfig, const floppy_interface *config)
{
LEGACY_FLOPPY(mconfig, FLOPPY_0, 0, config);
LEGACY_FLOPPY(mconfig, FLOPPY_1, 0, config);
}
virtual image_init_result call_load() override;
virtual const software_list_loader &get_software_list_loader() const override { return image_software_list_loader::instance(); }
virtual image_init_result call_create(int format_type, util::option_resolution *format_options) override;
@ -250,33 +253,4 @@ legacy_floppy_image_device *floppy_get_device_by_type(running_machine &machine,i
int floppy_get_drive_by_type(legacy_floppy_image_device *image,int ftype);
int floppy_get_count(running_machine &machine);
/***************************************************************************
DEVICE CONFIGURATION MACROS
***************************************************************************/
#define MCFG_LEGACY_FLOPPY_CONFIG(_config) \
downcast<legacy_floppy_image_device &>(*device).set_floppy_config(&(_config));
#define MCFG_LEGACY_FLOPPY_DRIVE_ADD(_tag, _config) \
MCFG_DEVICE_ADD(_tag, LEGACY_FLOPPY, 0) \
MCFG_LEGACY_FLOPPY_CONFIG(_config)
#define MCFG_LEGACY_FLOPPY_4_DRIVES_ADD(_config) \
MCFG_DEVICE_ADD(FLOPPY_0, LEGACY_FLOPPY, 0) \
MCFG_LEGACY_FLOPPY_CONFIG(_config) \
MCFG_DEVICE_ADD(FLOPPY_1, LEGACY_FLOPPY, 0) \
MCFG_LEGACY_FLOPPY_CONFIG(_config) \
MCFG_DEVICE_ADD(FLOPPY_2, LEGACY_FLOPPY, 0) \
MCFG_LEGACY_FLOPPY_CONFIG(_config) \
MCFG_DEVICE_ADD(FLOPPY_3, LEGACY_FLOPPY, 0) \
MCFG_LEGACY_FLOPPY_CONFIG(_config)
#define MCFG_LEGACY_FLOPPY_2_DRIVES_ADD(_config) \
MCFG_DEVICE_ADD(FLOPPY_0, LEGACY_FLOPPY, 0) \
MCFG_LEGACY_FLOPPY_CONFIG(_config) \
MCFG_DEVICE_ADD(FLOPPY_1, LEGACY_FLOPPY, 0) \
MCFG_LEGACY_FLOPPY_CONFIG(_config)
#endif // MAME_DEVICES_IMAGEDV_FLOPDRV_H

View File

@ -63,29 +63,4 @@ private:
// device type definition
DECLARE_DEVICE_TYPE(FLOPPY_APPLE, apple525_floppy_image_device)
#define MCFG_LEGACY_FLOPPY_APPLE_PARAMS(_dividend,_divisor) \
downcast<apple525_floppy_image_device *>(device)->set_params(_dividend,_divisor);
#define MCFG_LEGACY_FLOPPY_APPLE_2_DRIVES_ADD(_config,_dividend,_divisor) \
MCFG_DEVICE_ADD(FLOPPY_0, FLOPPY_APPLE, 0) \
MCFG_LEGACY_FLOPPY_CONFIG(_config) \
MCFG_LEGACY_FLOPPY_APPLE_PARAMS(_dividend,_divisor) \
MCFG_DEVICE_ADD(FLOPPY_1, FLOPPY_APPLE, 0) \
MCFG_LEGACY_FLOPPY_CONFIG(_config) \
MCFG_LEGACY_FLOPPY_APPLE_PARAMS(_dividend,_divisor)
#define MCFG_LEGACY_FLOPPY_APPLE_4_DRIVES_ADD(_config,_dividend,_divisor) \
MCFG_DEVICE_ADD(FLOPPY_0, FLOPPY_APPLE, 0) \
MCFG_LEGACY_FLOPPY_CONFIG(_config) \
MCFG_LEGACY_FLOPPY_APPLE_PARAMS(_dividend,_divisor) \
MCFG_DEVICE_ADD(FLOPPY_1, FLOPPY_APPLE, 0) \
MCFG_LEGACY_FLOPPY_CONFIG(_config) \
MCFG_LEGACY_FLOPPY_APPLE_PARAMS(_dividend,_divisor) \
MCFG_DEVICE_ADD(FLOPPY_2, FLOPPY_APPLE, 0) \
MCFG_LEGACY_FLOPPY_CONFIG(_config) \
MCFG_LEGACY_FLOPPY_APPLE_PARAMS(_dividend,_divisor) \
MCFG_DEVICE_ADD(FLOPPY_3, FLOPPY_APPLE, 0) \
MCFG_LEGACY_FLOPPY_CONFIG(_config) \
MCFG_LEGACY_FLOPPY_APPLE_PARAMS(_dividend,_divisor)
#endif // MAME_MACHINE_APPLDRIV_H

View File

@ -58,22 +58,4 @@ protected:
// device type definition
DECLARE_DEVICE_TYPE(FLOPPY_SONY, sonydriv_floppy_image_device)
#define MCFG_LEGACY_FLOPPY_SONY_2_DRIVES_ADD(_config) \
MCFG_DEVICE_ADD(FLOPPY_0, FLOPPY_SONY, 0) \
MCFG_LEGACY_FLOPPY_CONFIG(_config) \
MCFG_DEVICE_ADD(FLOPPY_1, FLOPPY_SONY, 0) \
MCFG_LEGACY_FLOPPY_CONFIG(_config)
#define MCFG_LEGACY_FLOPPY_SONY_2_DRIVES_ADDITIONAL_ADD(_config) \
MCFG_DEVICE_ADD(FLOPPY_2, FLOPPY_SONY, 0) \
MCFG_LEGACY_FLOPPY_CONFIG(_config) \
MCFG_DEVICE_ADD(FLOPPY_3, FLOPPY_SONY, 0) \
MCFG_LEGACY_FLOPPY_CONFIG(_config)
#define MCFG_LEGACY_FLOPPY_SONY_2_DRIVES_MODIFY(_config) \
MCFG_DEVICE_MODIFY(FLOPPY_0) \
MCFG_LEGACY_FLOPPY_CONFIG(_config) \
MCFG_DEVICE_MODIFY(FLOPPY_1) \
MCFG_LEGACY_FLOPPY_CONFIG(_config)
#endif // MAME_MACHINE_SONYDRIV_H

View File

@ -4263,7 +4263,8 @@ static const floppy_interface floppy_interface =
"floppy_5_25"
};
MACHINE_CONFIG_START(apple2e_state::apple2cp)
void apple2e_state::apple2cp(machine_config &config)
{
apple2c(config);
M65C02(config.replace(), m_maincpu, 1021800);
m_maincpu->set_addrmap(AS_PROGRAM, &apple2e_state::apple2c_memexp_map);
@ -4271,11 +4272,13 @@ MACHINE_CONFIG_START(apple2e_state::apple2cp)
config.device_remove("sl4");
config.device_remove("sl6");
IWM(config, m_iicpiwm, &a2cp_interface);
MCFG_LEGACY_FLOPPY_APPLE_2_DRIVES_ADD(floppy_interface,15,16)
MCFG_LEGACY_FLOPPY_SONY_2_DRIVES_ADDITIONAL_ADD(apple2cp_floppy35_floppy_interface)
FLOPPY_APPLE(config, FLOPPY_0, &floppy_interface, 15, 16);
FLOPPY_APPLE(config, FLOPPY_1, &floppy_interface, 15, 16);
FLOPPY_SONY(config, FLOPPY_2, &apple2cp_floppy35_floppy_interface);
FLOPPY_SONY(config, FLOPPY_3, &apple2cp_floppy35_floppy_interface);
m_ram->set_default_size("128K").set_extra_options("128K, 384K, 640K, 896K, 1152K");
MACHINE_CONFIG_END
}
void apple2e_state::apple2c_iwm(machine_config &config)
{
@ -4307,13 +4310,15 @@ const applefdc_interface fdc_interface =
apple525_read_status /* read_status */
};
MACHINE_CONFIG_START(apple2e_state::laser128)
void apple2e_state::laser128(machine_config &config)
{
apple2c(config);
M65C02(config.replace(), m_maincpu, 1021800);
m_maincpu->set_addrmap(AS_PROGRAM, &apple2e_state::laser128_map);
APPLEFDC(config, m_laserudc, &fdc_interface);
MCFG_LEGACY_FLOPPY_APPLE_2_DRIVES_ADD(floppy_interface,15,16)
FLOPPY_APPLE(config, FLOPPY_0, &floppy_interface, 15, 16);
FLOPPY_APPLE(config, FLOPPY_1, &floppy_interface, 15, 16);
config.device_remove("sl4");
config.device_remove("sl6");
@ -4327,15 +4332,17 @@ MACHINE_CONFIG_START(apple2e_state::laser128)
A2BUS_SLOT(config, "sl7", m_a2bus, apple2_cards, nullptr);
m_ram->set_default_size("128K").set_extra_options("128K, 384K, 640K, 896K, 1152K");
MACHINE_CONFIG_END
}
MACHINE_CONFIG_START(apple2e_state::laser128ex2)
void apple2e_state::laser128ex2(machine_config &config)
{
apple2c(config);
M65C02(config.replace(), m_maincpu, 1021800);
m_maincpu->set_addrmap(AS_PROGRAM, &apple2e_state::laser128_map);
APPLEFDC(config, m_laserudc, &fdc_interface);
MCFG_LEGACY_FLOPPY_APPLE_2_DRIVES_ADD(floppy_interface,15,16)
FLOPPY_APPLE(config, FLOPPY_0, &floppy_interface, 15, 16);
FLOPPY_APPLE(config, FLOPPY_1, &floppy_interface, 15, 16);
config.device_remove("sl4");
config.device_remove("sl6");
@ -4349,7 +4356,7 @@ MACHINE_CONFIG_START(apple2e_state::laser128ex2)
A2BUS_LASER128(config, "sl7", A2BUS_7M_CLOCK).set_onboard(m_a2bus);
m_ram->set_default_size("128K").set_extra_options("128K, 384K, 640K, 896K, 1152K");
MACHINE_CONFIG_END
}
void apple2e_state::ceci(machine_config &config)
{

View File

@ -1187,7 +1187,8 @@ void bullet_state::bullet(machine_config &config)
// MACHINE_CONFIG( bulletf )
//-------------------------------------------------
MACHINE_CONFIG_START(bulletf_state::bulletf)
void bulletf_state::bulletf(machine_config &config)
{
// basic machine hardware
Z80(config, m_maincpu, 16_MHz_XTAL / 4);
m_maincpu->set_addrmap(AS_PROGRAM, &bulletf_state::bulletf_mem);
@ -1263,20 +1264,19 @@ MACHINE_CONFIG_START(bulletf_state::bulletf)
m_scsibus->req_handler().set(FUNC(bulletf_state::req_w));
m_scsibus->io_handler().set(m_scsi_ctrl_in, FUNC(input_buffer_device::write_bit7));
m_scsibus->set_data_input_buffer(m_scsi_data_in);
m_scsibus->set_slot_device(1, "harddisk", SCSIHD, DEVICE_INPUT_DEFAULTS_NAME(SCSI_ID_0));
OUTPUT_LATCH(config, m_scsi_data_out);
m_scsibus->set_output_latch(*m_scsi_data_out);
INPUT_BUFFER(config, m_scsi_data_in);
INPUT_BUFFER(config, m_scsi_ctrl_in);
MCFG_SCSIDEV_ADD(SCSIBUS_TAG ":" SCSI_PORT_DEVICE1, "harddisk", SCSIHD, SCSI_ID_0)
// software lists
SOFTWARE_LIST(config, "flop_list").set_original("wmbullet");
// internal ram
RAM(config, RAM_TAG).set_default_size("128K");
MACHINE_CONFIG_END
}

View File

@ -533,7 +533,7 @@ void dai3wksi_state::dai3wksi(machine_config &config)
m_ic81->set_enable(1);
m_ic81->add_route(ALL_OUTPUTS, "mono", 0.4);
#endif
MACHINE_CONFIG_END
}
/*************************************

View File

@ -996,11 +996,11 @@ INPUT_PORTS_END
*
*************************************/
MACHINE_CONFIG_START(exidy440_state::exidy440)
void exidy440_state::exidy440(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", MC6809E, MAIN_CPU_CLOCK)
MCFG_DEVICE_PROGRAM_MAP(exidy440_map)
MC6809E(config, m_maincpu, MAIN_CPU_CLOCK);
m_maincpu->set_addrmap(AS_PROGRAM, &exidy440_state::exidy440_map);
NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
@ -1011,20 +1011,19 @@ MACHINE_CONFIG_START(exidy440_state::exidy440)
SPEAKER(config, "lspeaker").front_left();
SPEAKER(config, "rspeaker").front_right();
MCFG_DEVICE_ADD("440audio", EXIDY440, EXIDY440_MC3418_CLOCK)
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
MACHINE_CONFIG_END
EXIDY440(config, m_custom, EXIDY440_MC3418_CLOCK);
m_custom->add_route(0, "lspeaker", 1.0);
m_custom->add_route(1, "rspeaker", 1.0);
}
MACHINE_CONFIG_START(topsecex_state::topsecex)
void topsecex_state::topsecex(machine_config &config)
{
exidy440(config);
/* basic machine hardware */
/* video hardware */
topsecex_video(config);
MACHINE_CONFIG_END
}

View File

@ -676,7 +676,7 @@ void fastfred_state::fastfred(machine_config &config)
AY8910(config, "ay8910.1", XTAL(12'432'000)/8).add_route(ALL_OUTPUTS, "mono", 0.25); /* 1.554 MHz; xtal from pcb pics, divider not verified */
AY8910(config, "ay8910.2", XTAL(12'432'000)/8).add_route(ALL_OUTPUTS, "mono", 0.25); /* 1.554 MHz; xtal from pcb pics, divider not verified */
MACHINE_CONFIG_END
}
void fastfred_state::jumpcoas(machine_config &config)
{

View File

@ -1175,8 +1175,8 @@ static void firebeat_ata_devices(device_slot_interface &device)
device.option_add("cdrom", ATAPI_FIXED_CDROM);
}
MACHINE_CONFIG_START(firebeat_state::firebeat)
void firebeat_state::firebeat(machine_config &config)
{
/* basic machine hardware */
PPC403GCX(config, m_maincpu, XTAL(64'000'000));
m_maincpu->set_addrmap(AS_PROGRAM, &firebeat_state::firebeat_map);

View File

@ -386,7 +386,7 @@ void foodf_state::foodf(machine_config &config)
pokey_device &pokey3(POKEY(config, "pokey3", MASTER_CLOCK/2/10));
pokey3.add_route(ALL_OUTPUTS, "mono", 0.33);
MACHINE_CONFIG_END
}

View File

@ -462,7 +462,8 @@ static GFXDECODE_START( gfx_hitpoker )
GFXDECODE_ENTRY( "gfx1", 0, hitpoker_layout_8bpp, 0, 8 )
GFXDECODE_END
MACHINE_CONFIG_START(hitpoker_state::hitpoker)
void hitpoker_state::hitpoker(machine_config &config)
{
MC68HC11(config, m_maincpu, 1000000);
m_maincpu->set_addrmap(AS_PROGRAM, &hitpoker_state::hitpoker_map);
m_maincpu->set_addrmap(AS_IO, &hitpoker_state::hitpoker_io);

View File

@ -2106,7 +2106,8 @@ void hng64_state::init_io()
m_ex_ramaddr_upper = 0;
}
MACHINE_CONFIG_START(hng64_state::hng64)
void hng64_state::hng64(machine_config &config)
{
/* basic machine hardware */
VR4300BE(config, m_maincpu, HNG64_MASTER_CLOCK); // actually R4300
m_maincpu->set_icache_size(16384);

View File

@ -335,7 +335,8 @@ void joctronic_state::machine_reset()
static INPUT_PORTS_START( joctronic )
INPUT_PORTS_END
MACHINE_CONFIG_START(joctronic_state::joctronic)
void joctronic_state::joctronic(machine_config &config)
{
/* basic machine hardware */
Z80(config, m_maincpu, XTAL(12'000'000)/4); // 3 MHz - uses WAIT
m_maincpu->set_addrmap(AS_PROGRAM, &joctronic_state::maincpu_map); // 139

View File

@ -165,7 +165,7 @@ void k8915_state::k8915(machine_config &config)
rs232.rxd_handler().set("sio", FUNC(z80sio_device::rxb_w));
rs232.dcd_handler().set("sio", FUNC(z80sio_device::dcdb_w));
rs232.cts_handler().set("sio", FUNC(z80sio_device::ctsb_w));
MACHINE_CONFIG_END
}
/* ROM definition */

View File

@ -755,8 +755,8 @@ INTERRUPT_GEN_MEMBER(m63_state::vblank_irq)
device.execute().pulse_input_line(INPUT_LINE_NMI, attotime::zero);
}
MACHINE_CONFIG_START(m63_state::m63)
void m63_state::m63(machine_config &config)
{
/* basic machine hardware */
Z80(config, m_maincpu, XTAL(12'000'000)/4); /* 3 MHz */
m_maincpu->set_addrmap(AS_PROGRAM, &m63_state::m63_map);

View File

@ -296,8 +296,8 @@ void mjkjidai_state::machine_reset()
m_adpcm_pos = m_adpcm_end = 0;
}
MACHINE_CONFIG_START(mjkjidai_state::mjkjidai)
void mjkjidai_state::mjkjidai(machine_config &config)
{
/* basic machine hardware */
Z80(config, m_maincpu, 10000000/2); /* 5 MHz ??? */
m_maincpu->set_addrmap(AS_PROGRAM, &mjkjidai_state::mjkjidai_map);

View File

@ -500,7 +500,8 @@ void neoprint_state::machine_start()
m_upd4990a->c2_w(1);
}
MACHINE_CONFIG_START(neoprint_state::neoprint)
void neoprint_state::neoprint(machine_config &config)
{
M68000(config, m_maincpu, 12000000);
m_maincpu->set_addrmap(AS_PROGRAM, &neoprint_state::neoprint_map);
m_maincpu->set_periodic_int(FUNC(neoprint_state::irq3_line_hold), attotime::from_hz(45)); /* camera / printer irq, unknown timing */

View File

@ -978,8 +978,8 @@ void nmg5_state::machine_reset()
m_input_data = 0;
}
MACHINE_CONFIG_START(nmg5_state::nmg5)
void nmg5_state::nmg5(machine_config &config)
{
/* basic machine hardware */
M68000(config, m_maincpu, 16000000); /* 16 MHz */
m_maincpu->set_addrmap(AS_PROGRAM, &nmg5_state::nmg5_map);

View File

@ -1371,7 +1371,8 @@ void peplus_state::machine_start()
* Machine Driver *
*************************/
MACHINE_CONFIG_START(peplus_state::peplus)
void peplus_state::peplus(machine_config &config)
{
// basic machine hardware
I80C32(config, m_maincpu, XTAL(20'000'000)/2); // 10MHz
m_maincpu->set_addrmap(AS_PROGRAM, &peplus_state::main_map);

View File

@ -579,7 +579,7 @@ void pyl601_state::pyl601(machine_config &config)
/* internal ram */
RAM(config, RAM_TAG).set_default_size("576K"); // 64 + 512
MACHINE_CONFIG_END
}
void pyl601_state::pyl601a(machine_config &config)
{

View File

@ -480,8 +480,8 @@ static GFXDECODE_START( gfx_seabattl )
GFXDECODE_ENTRY( "gfx3", 0, tiles8x8_layout, 24, 1 )
GFXDECODE_END
MACHINE_CONFIG_START(seabattl_state::seabattl)
void seabattl_state::seabattl(machine_config &config)
{
/* basic machine hardware */
S2650(config, m_maincpu, 14318180/4/2);
m_maincpu->set_addrmap(AS_PROGRAM, &seabattl_state::seabattl_map);

View File

@ -577,8 +577,8 @@ WRITE16_MEMBER( sengokmj_state::layer_scroll_w )
}
MACHINE_CONFIG_START(sengokmj_state::sengokmj)
void sengokmj_state::sengokmj(machine_config &config)
{
/* basic machine hardware */
V30(config, m_maincpu, 16000000/2); /* V30-8 */
m_maincpu->set_addrmap(AS_PROGRAM, &sengokmj_state::sengokmj_map);

View File

@ -2034,7 +2034,7 @@ void snowbros_state::yutnori(machine_config &config)
okim6295_device &oki2(OKIM6295(config, "oki2", XTAL(16'000'000)/16, okim6295_device::PIN7_HIGH)); // clock frequency & pin 7 not verified
oki2.add_route(ALL_OUTPUTS, "mono", 1.0);
MACHINE_CONFIG_END
}
/***************************************************************************

View File

@ -487,7 +487,7 @@ MACHINE_CONFIG_START(sorcerer_state::sorcererd)
MICROPOLIS(config, m_fdc, 0);
m_fdc->set_default_drive_tags();
MCFG_LEGACY_FLOPPY_4_DRIVES_ADD(sorcerer_floppy_interface)
legacy_floppy_image_device::add_4drives(config, &sorcerer_floppy_interface);
FD1793(config, m_fdc2, 8_MHz_XTAL / 8); // confirmed clock
m_fdc2->set_force_ready(true); // should be able to get rid of this when fdc issue is fixed

View File

@ -269,7 +269,7 @@ void spectra_state::spectra(machine_config &config)
m_snsnd->set_envelope_params(0, 0);
m_snsnd->set_enable(1);
m_snsnd->add_route(ALL_OUTPUTS, "mono", 0.30);
MACHINE_CONFIG_END
}
/*--------------------------------
/ Spectra IV

View File

@ -591,12 +591,13 @@ static void sun_floppies(device_slot_interface &device)
device.option_add("35hd", FLOPPY_35_HD);
}
MACHINE_CONFIG_START(sun3x_state::sun3_80)
void sun3x_state::sun3_80(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", M68030, 20000000)
MCFG_DEVICE_PROGRAM_MAP(sun3_80_mem)
M68030(config, m_maincpu, 20000000);
m_maincpu->set_addrmap(AS_PROGRAM, &sun3x_state::sun3_80_mem);
MCFG_DEVICE_ADD(TIMEKEEPER_TAG, M48T02, 0)
M48T02(config, TIMEKEEPER_TAG, 0);
SCC8530N(config, m_scc1, 4.9152_MHz_XTAL);
m_scc1->out_txda_callback().set(KEYBOARD_TAG, FUNC(sun_keyboard_port_device::write_txd));
@ -619,9 +620,9 @@ MACHINE_CONFIG_START(sun3x_state::sun3_80)
rs232b.dcd_handler().set(m_scc2, FUNC(z80scc_device::dcdb_w));
rs232b.cts_handler().set(m_scc2, FUNC(z80scc_device::ctsb_w));
MCFG_DEVICE_ADD("scsi", SCSI_PORT, 0)
MCFG_SCSIDEV_ADD("scsi:" SCSI_PORT_DEVICE1, "harddisk", SCSIHD, SCSI_ID_6)
MCFG_SCSIDEV_ADD("scsi:" SCSI_PORT_DEVICE2, "harddisk", SCSIHD, SCSI_ID_5)
scsi_port_device &scsi(SCSI_PORT(config, "scsi"));
scsi.set_slot_device(1, "harddisk", SCSIHD, DEVICE_INPUT_DEFAULTS_NAME(SCSI_ID_6));
scsi.set_slot_device(2, "harddisk", SCSIHD, DEVICE_INPUT_DEFAULTS_NAME(SCSI_ID_5));
NCR539X(config, ESP_TAG, 20000000/2).set_scsi_port("scsi");
@ -631,12 +632,12 @@ MACHINE_CONFIG_START(sun3x_state::sun3_80)
// the timekeeper has no interrupt output, so 3/80 includes a dedicated timer circuit
TIMER(config, "timer").configure_periodic(FUNC(sun3x_state::sun380_timer), attotime::from_hz(100));
MCFG_SCREEN_ADD("bwtwo", RASTER)
MCFG_SCREEN_UPDATE_DRIVER(sun3x_state, bw2_update)
MCFG_SCREEN_SIZE(1152,900)
MCFG_SCREEN_VISIBLE_AREA(0, 1152-1, 0, 900-1)
MCFG_SCREEN_REFRESH_RATE(72)
MACHINE_CONFIG_END
screen_device &bwtwo(SCREEN(config, "bwtwo", SCREEN_TYPE_RASTER));
bwtwo.set_screen_update(FUNC(sun3x_state::bw2_update));
bwtwo.set_size(1152,900);
bwtwo.set_visarea(0, 1152-1, 0, 900-1);
bwtwo.set_refresh_hz(72);
}
void sun3x_state::sun3_460(machine_config &config)
{

View File

@ -668,18 +668,14 @@ MACHINE_CONFIG_START(thomson_state::to7_base)
/* floppy */
MCFG_DEVICE_ADD("mc6843", MC6843, 16_MHz_XTAL / 16 / 2)
MCFG_DEVICE_ADD(m_floppy_image[0], LEGACY_FLOPPY, 0)
MCFG_LEGACY_FLOPPY_CONFIG(thomson_floppy_interface)
MCFG_LEGACY_FLOPPY_IDX_CB(WRITELINE(*this, thomson_state, fdc_index_0_w))
MCFG_DEVICE_ADD(m_floppy_image[1], LEGACY_FLOPPY, 0)
MCFG_LEGACY_FLOPPY_CONFIG(thomson_floppy_interface)
MCFG_LEGACY_FLOPPY_IDX_CB(WRITELINE(*this, thomson_state, fdc_index_1_w))
MCFG_DEVICE_ADD(m_floppy_image[2], LEGACY_FLOPPY, 0)
MCFG_LEGACY_FLOPPY_CONFIG(thomson_floppy_interface)
MCFG_LEGACY_FLOPPY_IDX_CB(WRITELINE(*this, thomson_state, fdc_index_2_w))
MCFG_DEVICE_ADD(m_floppy_image[3], LEGACY_FLOPPY, 0)
MCFG_LEGACY_FLOPPY_CONFIG(thomson_floppy_interface)
MCFG_LEGACY_FLOPPY_IDX_CB(WRITELINE(*this, thomson_state, fdc_index_3_w))
LEGACY_FLOPPY(config, m_floppy_image[0], 0, &thomson_floppy_interface);
m_floppy_image[0]->out_idx_cb().set(FUNC(thomson_state::fdc_index_0_w));
LEGACY_FLOPPY(config, m_floppy_image[1], 0, &thomson_floppy_interface);
m_floppy_image[1]->out_idx_cb().set(FUNC(thomson_state::fdc_index_1_w));
LEGACY_FLOPPY(config, m_floppy_image[2], 0, &thomson_floppy_interface);
m_floppy_image[2]->out_idx_cb().set(FUNC(thomson_state::fdc_index_2_w));
LEGACY_FLOPPY(config, m_floppy_image[3], 0, &thomson_floppy_interface);
m_floppy_image[3]->out_idx_cb().set(FUNC(thomson_state::fdc_index_3_w));
WD2793(config, m_wd2793_fdc, 16_MHz_XTAL / 16);
FLOPPY_CONNECTOR(config, "wd2793:0", cd90_640_floppies, "dd", thomson_state::cd90_640_formats);

View File

@ -338,7 +338,7 @@ void travrusa_state::shtrider(machine_config &config)
/* video hardware */
m_gfxdecode->set_info(gfx_shtrider);
m_palette->set_init(FUNC(travrusa_state::shtrider_palette));
MACHINE_CONFIG_END
}
void travrusa_state::shtriderb(machine_config &config)
{

View File

@ -1022,17 +1022,18 @@ void v1050_state::machine_reset()
// Machine Driver
MACHINE_CONFIG_START(v1050_state::v1050)
void v1050_state::v1050(machine_config &config)
{
// basic machine hardware
MCFG_DEVICE_ADD(Z80_TAG, Z80, 16_MHz_XTAL/4)
MCFG_DEVICE_PROGRAM_MAP(v1050_mem)
MCFG_DEVICE_IO_MAP(v1050_io)
MCFG_DEVICE_IRQ_ACKNOWLEDGE_DRIVER(v1050_state,v1050_int_ack)
Z80(config, m_maincpu, 16_MHz_XTAL/4);
m_maincpu->set_addrmap(AS_PROGRAM, &v1050_state::v1050_mem);
m_maincpu->set_addrmap(AS_IO, &v1050_state::v1050_io);
m_maincpu->set_irq_acknowledge_callback(FUNC(v1050_state::v1050_int_ack));
config.m_perfect_cpu_quantum = subtag(Z80_TAG);
MCFG_DEVICE_ADD(M6502_TAG, M6502, 15.36_MHz_XTAL/16)
MCFG_DEVICE_PROGRAM_MAP(v1050_crt_mem)
M6502(config, m_subcpu, 15.36_MHz_XTAL/16);
m_subcpu->set_addrmap(AS_PROGRAM, &v1050_state::v1050_crt_mem);
config.m_perfect_cpu_quantum = subtag(M6502_TAG);
// keyboard HACK
@ -1114,7 +1115,7 @@ MACHINE_CONFIG_START(v1050_state::v1050)
m_sasibus->msg_handler().set(m_sasi_ctrl_in, FUNC(input_buffer_device::write_bit2));
m_sasibus->cd_handler().set(m_sasi_ctrl_in, FUNC(input_buffer_device::write_bit3));
m_sasibus->io_handler().set(FUNC(v1050_state::write_sasi_io)).exor(1); // bit4
MCFG_SCSIDEV_ADD(SASIBUS_TAG ":" SCSI_PORT_DEVICE1, "harddisk", S1410, SCSI_ID_0)
m_sasibus->set_slot_device(1, "harddisk", S1410, DEVICE_INPUT_DEFAULTS_NAME(SCSI_ID_0));
OUTPUT_LATCH(config, m_sasi_data_out);
m_sasibus->set_output_latch(*m_sasi_data_out);
@ -1138,7 +1139,7 @@ MACHINE_CONFIG_START(v1050_state::v1050)
// internal ram
RAM(config, RAM_TAG).set_default_size("128K");
MACHINE_CONFIG_END
}
// ROMs

View File

@ -526,7 +526,7 @@ MACHINE_CONFIG_START(vtech2_state::laser350)
MCFG_GENERIC_LOAD(vtech2_state, cart_load)
/* 5.25" Floppy drive */
MCFG_LEGACY_FLOPPY_DRIVE_ADD( FLOPPY_0, vtech2_floppy_interface )
LEGACY_FLOPPY(config, FLOPPY_0, 0, &vtech2_floppy_interface);
MACHINE_CONFIG_END
@ -541,7 +541,8 @@ void vtech2_state::laser500(machine_config &config)
}
MACHINE_CONFIG_START(vtech2_state::laser700)
void vtech2_state::laser700(machine_config &config)
{
laser350(config);
ADDRESS_MAP_BANK(config.replace(), "banka").set_map(&vtech2_state::m_map700).set_options(ENDIANNESS_LITTLE, 8, 18, 0x4000);
@ -550,8 +551,8 @@ MACHINE_CONFIG_START(vtech2_state::laser700)
ADDRESS_MAP_BANK(config.replace(), "bankd").set_map(&vtech2_state::m_map700).set_options(ENDIANNESS_LITTLE, 8, 18, 0x4000);
/* Second 5.25" floppy drive */
MCFG_LEGACY_FLOPPY_DRIVE_ADD( FLOPPY_1, vtech2_floppy_interface )
MACHINE_CONFIG_END
LEGACY_FLOPPY(config, FLOPPY_1, 0, &vtech2_floppy_interface);
}
ROM_START(laser350)

View File

@ -281,8 +281,8 @@ void wackygtr_state::program_map(address_map &map)
map(0x8000, 0xffff).rom();
}
MACHINE_CONFIG_START(wackygtr_state::wackygtr)
void wackygtr_state::wackygtr(machine_config &config)
{
MC6809(config, m_maincpu, XTAL(3'579'545)); // HD68B09P
m_maincpu->set_addrmap(AS_PROGRAM, &wackygtr_state::program_map);
m_maincpu->set_periodic_int(FUNC(wackygtr_state::irq0_line_assert), attotime::from_hz(50)); // FIXME

View File

@ -514,20 +514,21 @@ void wallc_state::init_wallca()
}
MACHINE_CONFIG_START(wallc_state::wallc)
void wallc_state::wallc(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", Z80, 12.288_MHz_XTAL / 4) /* 3.072 MHz ? */
MCFG_DEVICE_PROGRAM_MAP(wallc_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", wallc_state, irq0_line_hold)
Z80(config, m_maincpu, 12.288_MHz_XTAL / 4); /* 3.072 MHz ? */
m_maincpu->set_addrmap(AS_PROGRAM, &wallc_state::wallc_map);
m_maincpu->set_vblank_int("screen", FUNC(wallc_state::irq0_line_hold));
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(wallc_state, screen_update)
MCFG_SCREEN_PALETTE("palette")
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_refresh_hz(60);
screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500) /* not accurate */);
screen.set_size(32*8, 32*8);
screen.set_visarea(0*8, 32*8-1, 0*8, 32*8-1);
screen.set_screen_update(FUNC(wallc_state::screen_update));
screen.set_palette("palette");
GFXDECODE(config, m_gfxdecode, "palette", gfx_wallc);
PALETTE(config, "palette", FUNC(wallc_state::wallc_palette), 32);
@ -535,19 +536,19 @@ MACHINE_CONFIG_START(wallc_state::wallc)
/* sound hardware */
SPEAKER(config, "mono").front_center();
AY8912(config, "aysnd", 12288000 / 8).add_route(ALL_OUTPUTS, "mono", 0.30);
MACHINE_CONFIG_END
}
MACHINE_CONFIG_START(wallc_state::wallca)
void wallc_state::wallca(machine_config &config)
{
wallc(config);
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_CLOCK(12_MHz_XTAL / 4)
MACHINE_CONFIG_END
m_maincpu->set_clock(12_MHz_XTAL / 4);
}
MACHINE_CONFIG_START(wallc_state::unkitpkr)
void wallc_state::unkitpkr(machine_config &config)
{
wallc(config);
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(unkitpkr_map)
m_maincpu->set_addrmap(AS_PROGRAM, &wallc_state::unkitpkr_map);
MCFG_VIDEO_START_OVERRIDE(wallc_state, unkitpkr)
subdevice<palette_device>("palette")->set_init(FUNC(wallc_state::unkitpkr_palette));
@ -556,13 +557,14 @@ MACHINE_CONFIG_START(wallc_state::unkitpkr)
subdevice<ay8912_device>("aysnd")->port_a_read_callback().set_ioport("DSW2");
subdevice<ay8912_device>("aysnd")->reset_routes();
subdevice<ay8912_device>("aysnd")->add_route(ALL_OUTPUTS, "mono", 0.50);
MACHINE_CONFIG_END
}
MACHINE_CONFIG_START(wallc_state::sidampkr)
void wallc_state::sidampkr(machine_config &config)
{
unkitpkr(config);
MCFG_VIDEO_START_OVERRIDE(wallc_state, sidampkr)
MACHINE_CONFIG_END
}
/***************************************************************************

View File

@ -1272,7 +1272,7 @@ void wangpc_state::on_disk1_unload(floppy_image_device *image)
//**************************************************************************
//-------------------------------------------------
// MACHINE_CONFIG( wangpc )
// machine_config( wangpc )
//-------------------------------------------------
void wangpc_state::wangpc(machine_config &config)

View File

@ -322,26 +322,26 @@ void warpspeed_state::warpsped_palette(palette_device &palette) const
palette.set_pen_color(2 + i, 0xff * BIT(i, 0), 0xff * BIT(i, 1), 0xff * BIT(i, 2));
}
MACHINE_CONFIG_START(warpspeed_state::warpspeed)
void warpspeed_state::warpspeed(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", Z80, XTAL(5'000'000)/2)
MCFG_DEVICE_PROGRAM_MAP(warpspeed_map)
MCFG_DEVICE_IO_MAP(warpspeed_io_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", warpspeed_state, irq0_line_hold)
Z80(config, m_maincpu, XTAL(5'000'000)/2);
m_maincpu->set_addrmap(AS_PROGRAM, &warpspeed_state::warpspeed_map);
m_maincpu->set_addrmap(AS_IO, &warpspeed_state::warpspeed_io_map);
m_maincpu->set_vblank_int("screen", FUNC(warpspeed_state::irq0_line_hold));
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500))
MCFG_SCREEN_SIZE((32)*8, (32)*8)
MCFG_SCREEN_VISIBLE_AREA(4*8, 32*8-1, 8*8, 32*8-1)
MCFG_SCREEN_PALETTE("palette")
MCFG_SCREEN_UPDATE_DRIVER(warpspeed_state, screen_update)
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_refresh_hz(60);
screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500));
screen.set_size((32)*8, (32)*8);
screen.set_visarea(4*8, 32*8-1, 8*8, 32*8-1);
screen.set_palette("palette");
screen.set_screen_update(FUNC(warpspeed_state::screen_update));
GFXDECODE(config, m_gfxdecode, "palette", gfx_warpspeed);
PALETTE(config, "palette", FUNC(warpspeed_state::warpsped_palette), 2 + 8);
MACHINE_CONFIG_END
}
ROM_START( warpsped )
ROM_REGION(0x1000, "maincpu", 0)

View File

@ -712,12 +712,12 @@ GFXDECODE_END
MACHINE_CONFIG_START(warpwarp_state::geebee)
void warpwarp_state::geebee(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", I8080, MASTER_CLOCK/9) /* verified on pcb */
MCFG_DEVICE_PROGRAM_MAP(geebee_map)
MCFG_DEVICE_IO_MAP(geebee_port_map)
I8080(config, m_maincpu, MASTER_CLOCK/9); /* verified on pcb */
m_maincpu->set_addrmap(AS_PROGRAM, &warpwarp_state::geebee_map);
m_maincpu->set_addrmap(AS_IO, &warpwarp_state::geebee_port_map);
LS259(config, m_latch); // 5N
m_latch->q_out_cb<0>().set_output("led0"); // LAMP 1
@ -730,11 +730,11 @@ MACHINE_CONFIG_START(warpwarp_state::geebee)
m_latch->q_out_cb<7>().set(FUNC(warpwarp_state::inv_w));
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/3, 384, 0, 272, 264, 0, 224)
MCFG_SCREEN_UPDATE_DRIVER(warpwarp_state, screen_update)
MCFG_SCREEN_PALETTE(m_palette)
MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(*this, warpwarp_state, vblank_irq))
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_raw(MASTER_CLOCK/3, 384, 0, 272, 264, 0, 224);
screen.set_screen_update(FUNC(warpwarp_state::screen_update));
screen.set_palette(m_palette);
screen.screen_vblank().set(FUNC(warpwarp_state::vblank_irq));
GFXDECODE(config, m_gfxdecode, m_palette, gfx_1k);
PALETTE(config, m_palette, FUNC(warpwarp_state::geebee_palette), 4*2);
@ -744,9 +744,8 @@ MACHINE_CONFIG_START(warpwarp_state::geebee)
/* sound hardware */
SPEAKER(config, "mono").front_center();
MCFG_DEVICE_ADD("geebee_custom", GEEBEE_SOUND, MASTER_CLOCK)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
GEEBEE_SOUND(config, m_geebee_sound, MASTER_CLOCK).add_route(ALL_OUTPUTS, "mono", 1.0);
}
void warpwarp_state::geebeeb(machine_config &config)
{
@ -754,7 +753,8 @@ void warpwarp_state::geebeeb(machine_config &config)
m_latch->q_out_cb<4>().set_nop(); // remove coin lockout
}
MACHINE_CONFIG_START(warpwarp_state::navarone)
void warpwarp_state::navarone(machine_config &config)
{
geebee(config);
/* basic machine hardware */
@ -763,9 +763,10 @@ MACHINE_CONFIG_START(warpwarp_state::navarone)
m_palette->set_init(FUNC(warpwarp_state::navarone_palette));
MCFG_VIDEO_START_OVERRIDE(warpwarp_state,navarone)
MACHINE_CONFIG_END
}
MACHINE_CONFIG_START(warpwarp_state::kaitei)
void warpwarp_state::kaitei(machine_config &config)
{
geebee(config);
/* basic machine hardware */
@ -773,14 +774,14 @@ MACHINE_CONFIG_START(warpwarp_state::kaitei)
m_palette->set_entries(4*2+1);
MCFG_MACHINE_RESET_OVERRIDE(warpwarp_state,kaitei)
MACHINE_CONFIG_END
}
MACHINE_CONFIG_START(warpwarp_state::bombbee)
void warpwarp_state::bombbee(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", I8080, MASTER_CLOCK/9)
MCFG_DEVICE_PROGRAM_MAP(bombbee_map)
I8080(config, m_maincpu, MASTER_CLOCK/9);
m_maincpu->set_addrmap(AS_PROGRAM, &warpwarp_state::bombbee_map);
LS259(config, m_latch); // 6L on Warp Warp
m_latch->q_out_cb<0>().set_output("led0"); // LAMP 1
@ -795,11 +796,11 @@ MACHINE_CONFIG_START(warpwarp_state::bombbee)
WATCHDOG_TIMER(config, m_watchdog);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/3, 384, 0, 272, 264, 0, 224)
MCFG_SCREEN_UPDATE_DRIVER(warpwarp_state, screen_update)
MCFG_SCREEN_PALETTE(m_palette)
MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(*this, warpwarp_state, vblank_irq))
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_raw(MASTER_CLOCK/3, 384, 0, 272, 264, 0, 224);
screen.set_screen_update(FUNC(warpwarp_state::screen_update));
screen.set_palette(m_palette);
screen.screen_vblank().set(FUNC(warpwarp_state::vblank_irq));
GFXDECODE(config, m_gfxdecode, m_palette, gfx_color);
@ -809,17 +810,16 @@ MACHINE_CONFIG_START(warpwarp_state::bombbee)
/* sound hardware */
SPEAKER(config, "mono").front_center();
MCFG_DEVICE_ADD("warpwarp_custom", WARPWARP_SOUND, MASTER_CLOCK)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
WARPWARP_SOUND(config, m_warpwarp_sound, MASTER_CLOCK).add_route(ALL_OUTPUTS, "mono", 1.0);
}
MACHINE_CONFIG_START(warpwarp_state::warpwarp)
void warpwarp_state::warpwarp(machine_config &config)
{
bombbee(config);
/* basic machine hardware */
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(warpwarp_map)
MACHINE_CONFIG_END
m_maincpu->set_addrmap(AS_PROGRAM, &warpwarp_state::warpwarp_map);
}
/***************************************************************************

View File

@ -732,13 +732,13 @@ void wheelfir_state::ramdac_map(address_map &map)
map(0x000, 0x3ff).rw("ramdac", FUNC(ramdac_device::ramdac_pal_r), FUNC(ramdac_device::ramdac_rgb888_w));
}
MACHINE_CONFIG_START(wheelfir_state::wheelfir)
void wheelfir_state::wheelfir(machine_config &config)
{
M68000(config, m_maincpu, 32000000/2);
m_maincpu->set_addrmap(AS_PROGRAM, &wheelfir_state::wheelfir_main);
MCFG_DEVICE_ADD("maincpu", M68000, 32000000/2)
MCFG_DEVICE_PROGRAM_MAP(wheelfir_main)
MCFG_DEVICE_ADD("subcpu", M68000, 32000000/2)
MCFG_DEVICE_PROGRAM_MAP(wheelfir_sub)
M68000(config, m_subcpu, 32000000/2);
m_subcpu->set_addrmap(AS_PROGRAM, &wheelfir_state::wheelfir_sub);
//config.m_minimum_quantum = attotime::from_hz(12000);
@ -750,15 +750,15 @@ MACHINE_CONFIG_START(wheelfir_state::wheelfir)
TIMER(config, "scan_timer").configure_scanline(FUNC(wheelfir_state::scanline_timer_callback), "screen", 0, 1);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_SIZE(336, NUM_SCANLINES+NUM_VBLANK_LINES)
MCFG_SCREEN_VISIBLE_AREA(0,335, 0, NUM_SCANLINES-1)
MCFG_SCREEN_UPDATE_DRIVER(wheelfir_state, screen_update_wheelfir)
MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(*this, wheelfir_state, screen_vblank_wheelfir))
MCFG_SCREEN_PALETTE("palette")
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
m_screen->set_refresh_hz(60);
m_screen->set_size(336, NUM_SCANLINES+NUM_VBLANK_LINES);
m_screen->set_visarea(0,335, 0, NUM_SCANLINES-1);
m_screen->set_screen_update(FUNC(wheelfir_state::screen_update_wheelfir));
m_screen->screen_vblank().set(FUNC(wheelfir_state::screen_vblank_wheelfir));
m_screen->set_palette(m_palette);
MCFG_PALETTE_ADD("palette", NUM_COLORS)
PALETTE(config, m_palette).set_entries(NUM_COLORS);
ramdac_device &ramdac(RAMDAC(config, "ramdac", 0, m_palette));
ramdac.set_addrmap(0, &wheelfir_state::ramdac_map);
@ -775,7 +775,7 @@ MACHINE_CONFIG_START(wheelfir_state::wheelfir)
vref.set_output(5.0);
vref.add_route(0, "ldac", 1.0, DAC_VREF_POS_INPUT); vref.add_route(0, "ldac", -1.0, DAC_VREF_NEG_INPUT);
vref.add_route(0, "rdac", 1.0, DAC_VREF_POS_INPUT); vref.add_route(0, "rdac", -1.0, DAC_VREF_NEG_INPUT);
MACHINE_CONFIG_END
}
ROM_START( wheelfir )

View File

@ -47,11 +47,12 @@ void whitestar_mod_state::init_whitestar_mod()
{
}
MACHINE_CONFIG_START(whitestar_mod_state::whitestar_mod)
void whitestar_mod_state::whitestar_mod(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", MC6809E, 2000000)
MCFG_DEVICE_PROGRAM_MAP(whitestar_mod_map)
MACHINE_CONFIG_END
MC6809E(config, m_maincpu, 2000000);
m_maincpu->set_addrmap(AS_PROGRAM, &whitestar_mod_state::whitestar_mod_map);
}
/*-------------------------------------------------------------------
/ Elvis

View File

@ -440,12 +440,15 @@ void wico_state::machine_reset()
}
MACHINE_CONFIG_START(wico_state::wico)
void wico_state::wico(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("ccpu", MC6809E, XTAL(10'000'000) / 8) // MC68A09EP @ U51
MCFG_DEVICE_PROGRAM_MAP(ccpu_map)
MCFG_DEVICE_ADD("hcpu", MC6809E, XTAL(10'000'000) / 8) // MC68A09EP @ U24
MCFG_DEVICE_PROGRAM_MAP(hcpu_map)
MC6809E(config, m_ccpu, XTAL(10'000'000) / 8); // MC68A09EP @ U51
m_ccpu->set_addrmap(AS_PROGRAM, &wico_state::ccpu_map);
MC6809E(config, m_hcpu, XTAL(10'000'000) / 8); // MC68A09EP @ U24
m_hcpu->set_addrmap(AS_PROGRAM, &wico_state::hcpu_map);
TIMER(config, "irq").configure_periodic(FUNC(wico_state::irq_housekeeping), attotime::from_hz(120)); // zero crossing
TIMER(config, "firq").configure_periodic(FUNC(wico_state::firq_housekeeping), attotime::from_hz(750)); // time generator
NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
@ -456,9 +459,8 @@ MACHINE_CONFIG_START(wico_state::wico)
/* Sound */
genpin_audio(config);
SPEAKER(config, "mono").front_center();
MCFG_DEVICE_ADD("sn76494", SN76494, XTAL(10'000'000) / 64)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
MACHINE_CONFIG_END
SN76494(config, "sn76494", XTAL(10'000'000) / 64).add_route(ALL_OUTPUTS, "mono", 0.75);
}
/*-------------------------------------------------------------------
/ Af-Tor (1984)

View File

@ -465,22 +465,22 @@ IRQ_CALLBACK_MEMBER(wildpkr_state::tabpkr_irq_ack)
* Machine Drivers *
*************************/
MACHINE_CONFIG_START(wildpkr_state::wildpkr)
void wildpkr_state::wildpkr(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", M68000, MAIN_CLOCK)
MCFG_DEVICE_PROGRAM_MAP(wildpkr_map)
//MCFG_DEVICE_VBLANK_INT_DRIVER("screen", wildpkr_state, irq2_line_hold) // guess
M68000(config, m_maincpu, MAIN_CLOCK);
m_maincpu->set_addrmap(AS_PROGRAM, &wildpkr_state::wildpkr_map);
//m_maincpu->set_vblank_int("screen", FUNC(wildpkr_state::irq2_line_hold)); // guess
MC68681(config, m_duart, SEC_CLOCK);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500))
MCFG_SCREEN_SIZE(384, 280)
MCFG_SCREEN_VISIBLE_AREA(0, 384-1, 0, 280-1)
MCFG_SCREEN_UPDATE_DEVICE("acrtc", hd63484_device, update_screen)
MCFG_SCREEN_PALETTE("palette")
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_refresh_hz(60);
screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500));
screen.set_size(384, 280);
screen.set_visarea(0, 384-1, 0, 280-1);
screen.set_screen_update("acrtc", FUNC(hd63484_device::update_screen));
screen.set_palette("palette");
HD63484(config, "acrtc", 0).set_addrmap(0, &wildpkr_state::hd63484_map);
@ -492,16 +492,16 @@ MACHINE_CONFIG_START(wildpkr_state::wildpkr)
/* sound hardware */
SPEAKER(config, "mono").front_center();
AY8930(config, "aysnd", AY_CLOCK).add_route(ALL_OUTPUTS, "mono", 0.50);
MACHINE_CONFIG_END
}
MACHINE_CONFIG_START(wildpkr_state::tabpkr)
void wildpkr_state::tabpkr(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", M68000, XTAL(24'000'000) / 2)
MCFG_DEVICE_PROGRAM_MAP(tabpkr_map)
MCFG_DEVICE_PERIODIC_INT_DRIVER(wildpkr_state, irq3_line_assert, 60*256)
MCFG_DEVICE_IRQ_ACKNOWLEDGE_DRIVER(wildpkr_state, tabpkr_irq_ack)
M68000(config, m_maincpu, XTAL(24'000'000) / 2);
m_maincpu->set_addrmap(AS_PROGRAM, &wildpkr_state::tabpkr_map);
m_maincpu->set_periodic_int(FUNC(wildpkr_state::irq3_line_assert), attotime::from_hz(60*256));
m_maincpu->set_irq_acknowledge_callback(FUNC(wildpkr_state::tabpkr_irq_ack));
NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1); // DS1220Y
@ -513,14 +513,14 @@ MACHINE_CONFIG_START(wildpkr_state::tabpkr)
CLOCK(config, m_dac_clock, 1500000); // base rate derived from program code
m_dac_clock->signal_handler().set_inputline(m_maincpu, M68K_IRQ_5, ASSERT_LINE);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500))
MCFG_SCREEN_SIZE(384, 280)
MCFG_SCREEN_VISIBLE_AREA(0, 384-1, 0, 280-1)
MCFG_SCREEN_UPDATE_DEVICE("acrtc", hd63484_device, update_screen)
MCFG_SCREEN_PALETTE("palette")
MCFG_SCREEN_VBLANK_CALLBACK(ASSERTLINE("maincpu", M68K_IRQ_4))
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_refresh_hz(60);
screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500));
screen.set_size(384, 280);
screen.set_visarea(0, 384-1, 0, 280-1);
screen.set_screen_update("acrtc", FUNC(hd63484_device::update_screen));
screen.set_palette("palette");
screen.screen_vblank().set_inputline(m_maincpu, M68K_IRQ_4, ASSERT_LINE);
HD63484(config, "acrtc", 0).set_addrmap(0, &wildpkr_state::hd63484_map);
@ -536,7 +536,7 @@ MACHINE_CONFIG_START(wildpkr_state::tabpkr)
vref.set_output(5.0);
vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT);
vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT);
MACHINE_CONFIG_END
}
/*************************

View File

@ -1482,14 +1482,14 @@ GFXDECODE_END
*
*************************************/
MACHINE_CONFIG_START(williams_state::williams)
void williams_state::williams(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", MC6809E, MASTER_CLOCK/3/4)
MCFG_DEVICE_PROGRAM_MAP(williams_map)
MC6809E(config, m_maincpu, MASTER_CLOCK/3/4);
m_maincpu->set_addrmap(AS_PROGRAM, &williams_state::williams_map);
MCFG_DEVICE_ADD("soundcpu", M6808, SOUND_CLOCK) // internal clock divider of 4, effective frequency is 894.886kHz
MCFG_DEVICE_PROGRAM_MAP(sound_map)
M6808(config, m_soundcpu, SOUND_CLOCK); // internal clock divider of 4, effective frequency is 894.886kHz
m_soundcpu->set_addrmap(AS_PROGRAM, &williams_state::sound_map);
MCFG_MACHINE_START_OVERRIDE(williams_state,williams)
NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // 5101 (Defender), 5114 or 6514 (later games) + battery
@ -1503,10 +1503,10 @@ MACHINE_CONFIG_START(williams_state::williams)
WATCHDOG_TIMER(config, m_watchdog);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_UPDATE_SCANLINE | VIDEO_ALWAYS_UPDATE)
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK*2/3, 512, 6, 298, 260, 7, 247)
MCFG_SCREEN_UPDATE_DRIVER(williams_state, screen_update_williams)
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
m_screen->set_video_attributes(VIDEO_UPDATE_SCANLINE | VIDEO_ALWAYS_UPDATE);
m_screen->set_raw(MASTER_CLOCK*2/3, 512, 6, 298, 260, 7, 247);
m_screen->set_screen_update(FUNC(williams_state::screen_update_williams));
MCFG_VIDEO_START_OVERRIDE(williams_state,williams)
@ -1539,39 +1539,38 @@ MACHINE_CONFIG_START(williams_state::williams)
m_pia[2]->writepa_handler().set("dac", FUNC(dac_byte_interface::data_w));
m_pia[2]->irqa_handler().set("soundirq", FUNC(input_merger_any_high_device::in_w<0>));
m_pia[2]->irqb_handler().set("soundirq", FUNC(input_merger_any_high_device::in_w<1>));
MACHINE_CONFIG_END
}
MACHINE_CONFIG_START(williams_state::defender)
void williams_state::defender(machine_config &config)
{
williams(config);
/* basic machine hardware */
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(defender_map)
m_maincpu->set_addrmap(AS_PROGRAM, &williams_state::defender_map);
MCFG_DEVICE_MODIFY("soundcpu")
MCFG_DEVICE_PROGRAM_MAP(defender_sound_map)
m_soundcpu->set_addrmap(AS_PROGRAM, &williams_state::defender_sound_map);
ADDRESS_MAP_BANK(config, "bankc000").set_map(&williams_state::defender_bankc000_map).set_options(ENDIANNESS_BIG, 8, 16, 0x1000);
MCFG_MACHINE_START_OVERRIDE(williams_state,defender)
MCFG_MACHINE_RESET_OVERRIDE(williams_state,defender)
MCFG_SCREEN_MODIFY("screen")
MCFG_SCREEN_VISIBLE_AREA(12, 304-1, 7, 247-1)
MACHINE_CONFIG_END
m_screen->set_visarea(12, 304-1, 7, 247-1);
}
MACHINE_CONFIG_START(williams_state::jin) // needs a different screen size or the credit text is clipped
void williams_state::jin(machine_config &config) // needs a different screen size or the credit text is clipped
{
defender(config);
/* basic machine hardware */
MCFG_SCREEN_MODIFY("screen")
MCFG_SCREEN_VISIBLE_AREA(0, 315, 7, 247-1)
MACHINE_CONFIG_END
m_screen->set_visarea(0, 315, 7, 247-1);
}
MACHINE_CONFIG_START(williams_state::williams_muxed)
void williams_state::williams_muxed(machine_config &config)
{
williams(config);
/* basic machine hardware */
@ -1592,21 +1591,21 @@ MACHINE_CONFIG_START(williams_state::williams_muxed)
LS157(config, m_mux1, 0); // IC4 on interface board (actually LS257 with OC tied low)
m_mux1->a_in_callback().set_ioport("INP2A");
m_mux1->b_in_callback().set_ioport("INP1A");
MACHINE_CONFIG_END
}
MACHINE_CONFIG_START(spdball_state::spdball)
void spdball_state::spdball(machine_config &config)
{
williams(config);
/* basic machine hardware */
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(spdball_map)
m_maincpu->set_addrmap(AS_PROGRAM, &spdball_state::spdball_map);
/* pia */
PIA6821(config, m_pia[3], 0);
m_pia[3]->readpa_handler().set_ioport("IN3");
m_pia[3]->readpb_handler().set_ioport("IN4");
MACHINE_CONFIG_END
}
void williams_state::lottofun(machine_config &config)
@ -1623,59 +1622,56 @@ void williams_state::lottofun(machine_config &config)
}
MACHINE_CONFIG_START(williams_state::sinistar)
void williams_state::sinistar(machine_config &config)
{
williams(config);
/* basic machine hardware */
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(sinistar_map)
m_maincpu->set_addrmap(AS_PROGRAM, &williams_state::sinistar_map);
/* sound hardware */
MCFG_DEVICE_ADD("cvsd", HC55516, 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.8)
HC55516(config, "cvsd", 0).add_route(ALL_OUTPUTS, "speaker", 0.8);
/* pia */
m_pia[0]->readpa_handler().set(FUNC(williams_state::williams_49way_port_0_r));
m_pia[2]->ca2_handler().set("cvsd", FUNC(hc55516_device::digit_w));
m_pia[2]->cb2_handler().set("cvsd", FUNC(hc55516_device::clock_w));
MACHINE_CONFIG_END
}
MACHINE_CONFIG_START(williams_state::playball)
void williams_state::playball(machine_config &config)
{
williams(config);
/* basic machine hardware */
/* video hardware */
MCFG_SCREEN_MODIFY("screen")
MCFG_SCREEN_VISIBLE_AREA(6, 298-1, 8, 240-1)
m_screen->set_visarea(6, 298-1, 8, 240-1);
/* sound hardware */
MCFG_DEVICE_ADD("cvsd", HC55516, 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.8)
HC55516(config, "cvsd", 0).add_route(ALL_OUTPUTS, "speaker", 0.8);
/* pia */
m_pia[1]->writepb_handler().set(FUNC(williams_state::playball_snd_cmd_w));
m_pia[2]->ca2_handler().set("cvsd", FUNC(hc55516_device::digit_w));
m_pia[2]->cb2_handler().set("cvsd", FUNC(hc55516_device::clock_w));
MACHINE_CONFIG_END
}
MACHINE_CONFIG_START(blaster_state::blastkit)
void blaster_state::blastkit(machine_config &config)
{
williams(config);
/* basic machine hardware */
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(blaster_map)
m_maincpu->set_addrmap(AS_PROGRAM, &blaster_state::blaster_map);
MCFG_MACHINE_START_OVERRIDE(blaster_state,blaster)
/* video hardware */
MCFG_VIDEO_START_OVERRIDE(blaster_state,blaster)
MCFG_SCREEN_MODIFY("screen")
MCFG_SCREEN_UPDATE_DRIVER(blaster_state, screen_update_blaster)
m_screen->set_screen_update(FUNC(blaster_state::screen_update_blaster));
/* pia */
m_pia[0]->readpa_handler().set("mux_a", FUNC(ls157_x2_device::output_r));
@ -1686,7 +1682,7 @@ MACHINE_CONFIG_START(blaster_state::blastkit)
LS157_X2(config, m_muxa, 0);
m_muxa->a_in_callback().set_ioport("IN3");
m_muxa->b_in_callback().set(FUNC(williams_state::williams_49way_port_0_r));
MACHINE_CONFIG_END
}
void blaster_state::blaster(machine_config &config)
@ -1738,14 +1734,14 @@ void blaster_state::blaster(machine_config &config)
}
MACHINE_CONFIG_START(williams2_state::williams2)
void williams2_state::williams2(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", MC6809E, MASTER_CLOCK/3/4)
MCFG_DEVICE_PROGRAM_MAP(williams2_d000_ram_map)
MC6809E(config, m_maincpu, MASTER_CLOCK/3/4);
m_maincpu->set_addrmap(AS_PROGRAM, &williams2_state::williams2_d000_ram_map);
MCFG_DEVICE_ADD("soundcpu", M6808, MASTER_CLOCK/3) /* yes, this is different from the older games */
MCFG_DEVICE_PROGRAM_MAP(williams2_sound_map)
M6808(config, m_soundcpu, MASTER_CLOCK/3); /* yes, this is different from the older games */
m_soundcpu->set_addrmap(AS_PROGRAM, &williams2_state::williams2_sound_map);
ADDRESS_MAP_BANK(config, "bank8000").set_map(&williams2_state::williams2_bank8000_map).set_options(ENDIANNESS_BIG, 8, 12, 0x800);
@ -1765,10 +1761,10 @@ MACHINE_CONFIG_START(williams2_state::williams2)
PALETTE(config, m_palette).set_entries(1024);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_williams2);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_UPDATE_SCANLINE | VIDEO_ALWAYS_UPDATE)
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK*2/3, 512, 8, 284, 260, 8, 248)
MCFG_SCREEN_UPDATE_DRIVER(williams2_state, screen_update_williams2)
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
m_screen->set_video_attributes(VIDEO_UPDATE_SCANLINE | VIDEO_ALWAYS_UPDATE);
m_screen->set_raw(MASTER_CLOCK*2/3, 512, 8, 284, 260, 8, 248);
m_screen->set_screen_update(FUNC(williams2_state::screen_update_williams2));
MCFG_VIDEO_START_OVERRIDE(williams2_state,williams2)
@ -1802,10 +1798,11 @@ MACHINE_CONFIG_START(williams2_state::williams2)
m_pia[2]->ca2_handler().set(m_pia[1], FUNC(pia6821_device::cb1_w));
m_pia[2]->irqa_handler().set("soundirq", FUNC(input_merger_any_high_device::in_w<0>));
m_pia[2]->irqb_handler().set("soundirq", FUNC(input_merger_any_high_device::in_w<1>));
MACHINE_CONFIG_END
}
MACHINE_CONFIG_START(williams2_state::inferno)
void williams2_state::inferno(machine_config &config)
{
williams2(config);
m_pia[0]->readpa_handler().set("mux", FUNC(ls157_x2_device::output_r));
m_pia[0]->ca2_handler().set("mux", FUNC(ls157_x2_device::select_w));
@ -1813,10 +1810,11 @@ MACHINE_CONFIG_START(williams2_state::inferno)
LS157_X2(config, m_mux, 0); // IC45 (for PA4-PA7) + IC46 (for PA0-PA3) on CPU board
m_mux->a_in_callback().set_ioport("INP1");
m_mux->b_in_callback().set_ioport("INP2");
MACHINE_CONFIG_END
}
MACHINE_CONFIG_START(williams2_state::mysticm)
void williams2_state::mysticm(machine_config &config)
{
williams2(config);
/* basic machine hardware */
@ -1827,15 +1825,15 @@ MACHINE_CONFIG_START(williams2_state::mysticm)
m_pia[1]->irqa_handler().set("mainirq", FUNC(input_merger_any_high_device::in_w<1>));
m_pia[1]->irqb_handler().set("mainirq", FUNC(input_merger_any_high_device::in_w<2>));
MACHINE_CONFIG_END
}
MACHINE_CONFIG_START(tshoot_state::tshoot)
void tshoot_state::tshoot(machine_config &config)
{
williams2(config);
/* basic machine hardware */
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(williams2_d000_rom_map)
m_maincpu->set_addrmap(AS_PROGRAM, &tshoot_state::williams2_d000_rom_map);
MCFG_MACHINE_START_OVERRIDE(tshoot_state,tshoot)
@ -1849,24 +1847,22 @@ MACHINE_CONFIG_START(tshoot_state::tshoot)
m_pia[1]->irqa_handler().set("mainirq", FUNC(input_merger_any_high_device::in_w<2>));
m_pia[1]->irqb_handler().set("mainirq", FUNC(input_merger_any_high_device::in_w<3>));
MCFG_DEVICE_MODIFY("pia_2")
m_pia[2]->cb2_handler().set(FUNC(tshoot_state::maxvol_w));
LS157_X2(config, m_mux, 0); // U2 + U3 on interface board
m_mux->a_in_callback().set_ioport("INP1");
m_mux->b_in_callback().set_ioport("INP2");
MACHINE_CONFIG_END
}
MACHINE_CONFIG_START(joust2_state::joust2)
void joust2_state::joust2(machine_config &config)
{
williams2(config);
/* basic machine hardware */
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(williams2_d000_rom_map)
m_maincpu->set_addrmap(AS_PROGRAM, &joust2_state::williams2_d000_rom_map);
MCFG_DEVICE_ADD("cvsd", WILLIAMS_CVSD_SOUND)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0)
WILLIAMS_CVSD_SOUND(config, m_cvsd_sound).add_route(ALL_OUTPUTS, "speaker", 1.0);
MCFG_MACHINE_START_OVERRIDE(joust2_state,joust2)
MCFG_MACHINE_RESET_OVERRIDE(joust2_state,joust2)
@ -1886,7 +1882,7 @@ MACHINE_CONFIG_START(joust2_state::joust2)
LS157(config, m_mux, 0);
m_mux->a_in_callback().set_ioport("INP1");
m_mux->b_in_callback().set_ioport("INP2");
MACHINE_CONFIG_END
}

View File

@ -383,11 +383,12 @@ void wink_state::machine_reset()
m_sound_flag = 0;
}
MACHINE_CONFIG_START(wink_state::wink)
void wink_state::wink(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", Z80, 12000000 / 4)
MCFG_DEVICE_PROGRAM_MAP(wink_map)
MCFG_DEVICE_IO_MAP(wink_io)
Z80(config, m_maincpu, 12000000 / 4);
m_maincpu->set_addrmap(AS_PROGRAM, &wink_state::wink_map);
m_maincpu->set_addrmap(AS_IO, &wink_state::wink_io);
ls259_device &mainlatch(LS259(config, "mainlatch"));
mainlatch.q_out_cb<0>().set(FUNC(wink_state::nmi_enable_w));
@ -399,22 +400,22 @@ MACHINE_CONFIG_START(wink_state::wink)
mainlatch.q_out_cb<6>().set(FUNC(wink_state::coin_counter_w<1>));
mainlatch.q_out_cb<7>().set(FUNC(wink_state::coin_counter_w<2>));
MCFG_DEVICE_ADD("audiocpu", Z80, 12000000 / 8)
MCFG_DEVICE_PROGRAM_MAP(wink_sound_map)
MCFG_DEVICE_IO_MAP(wink_sound_io)
MCFG_DEVICE_PERIODIC_INT_DRIVER(wink_state, wink_sound, 15625)
Z80(config, m_audiocpu, 12000000 / 8);
m_audiocpu->set_addrmap(AS_PROGRAM, &wink_state::wink_sound_map);
m_audiocpu->set_addrmap(AS_IO, &wink_state::wink_sound_io);
m_audiocpu->set_periodic_int(FUNC(wink_state::wink_sound), attotime::from_hz(15625));
NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(wink_state, screen_update_wink)
MCFG_SCREEN_PALETTE("palette")
MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(*this, wink_state, nmi_clock_w))
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_refresh_hz(60);
screen.set_vblank_time(ATTOSECONDS_IN_USEC(0));
screen.set_size(32*8, 32*8);
screen.set_visarea(0*8, 32*8-1, 0*8, 32*8-1);
screen.set_screen_update(FUNC(wink_state::screen_update_wink));
screen.set_palette("palette");
screen.screen_vblank().set(FUNC(wink_state::nmi_clock_w));
GFXDECODE(config, m_gfxdecode, "palette", gfx_wink);
PALETTE(config, "palette").set_format(palette_device::xBRG_444, 16);
@ -427,7 +428,7 @@ MACHINE_CONFIG_START(wink_state::wink)
ay8912_device &aysnd(AY8912(config, "aysnd", 12000000 / 8));
aysnd.port_a_read_callback().set(FUNC(wink_state::sound_r));
aysnd.add_route(ALL_OUTPUTS, "mono", 1.0);
MACHINE_CONFIG_END
}
/***************************************************************************

View File

@ -285,16 +285,16 @@ INTERRUPT_GEN_MEMBER(wiping_state::sound_timer_irq)
MACHINE_CONFIG_START(wiping_state::wiping)
void wiping_state::wiping(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", Z80,18432000/6) /* 3.072 MHz */
MCFG_DEVICE_PROGRAM_MAP(main_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", wiping_state, vblank_irq)
Z80(config, m_maincpu, 18432000/6); /* 3.072 MHz */
m_maincpu->set_addrmap(AS_PROGRAM, &wiping_state::main_map);
m_maincpu->set_vblank_int("screen", FUNC(wiping_state::vblank_irq));
MCFG_DEVICE_ADD("audiocpu", Z80,18432000/6) /* 3.072 MHz */
MCFG_DEVICE_PROGRAM_MAP(sound_map)
MCFG_DEVICE_PERIODIC_INT_DRIVER(wiping_state, sound_timer_irq, 120) /* periodic interrupt, don't know about the frequency */
Z80(config, m_audiocpu, 18432000/6); /* 3.072 MHz */
m_audiocpu->set_addrmap(AS_PROGRAM, &wiping_state::sound_map);
m_audiocpu->set_periodic_int(FUNC(wiping_state::sound_timer_irq), attotime::from_hz(120)); /* periodic interrupt, don't know about the frequency */
ls259_device &mainlatch(LS259(config, "mainlatch")); // 5A
mainlatch.q_out_cb<0>().set(FUNC(wiping_state::main_irq_mask_w)); // INT1
@ -305,13 +305,13 @@ MACHINE_CONFIG_START(wiping_state::wiping)
WATCHDOG_TIMER(config, "watchdog");
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MCFG_SCREEN_SIZE(36*8, 28*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(wiping_state, screen_update)
MCFG_SCREEN_PALETTE(m_palette)
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_refresh_hz(60);
screen.set_vblank_time(ATTOSECONDS_IN_USEC(0));
screen.set_size(36*8, 28*8);
screen.set_visarea(0*8, 36*8-1, 0*8, 28*8-1);
screen.set_screen_update(FUNC(wiping_state::screen_update));
screen.set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_wiping);
PALETTE(config, m_palette, FUNC(wiping_state::wiping_palette), 64*4+64*4, 32);
@ -320,7 +320,7 @@ MACHINE_CONFIG_START(wiping_state::wiping)
SPEAKER(config, "mono").front_center();
WIPING_CUSTOM(config, "wiping", 96000).add_route(ALL_OUTPUTS, "mono", 1.0);
MACHINE_CONFIG_END
}

View File

@ -954,16 +954,17 @@ void witch_state::machine_reset()
m_motor_active = (ioport("YM_PortB")->read() & 0x08) ? 0 : 1;
}
MACHINE_CONFIG_START(witch_state::witch)
void witch_state::witch(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", Z80, CPU_CLOCK) /* 3 MHz */
MCFG_DEVICE_PROGRAM_MAP(witch_main_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", witch_state, irq0_line_assert)
Z80(config, m_maincpu, CPU_CLOCK); /* 3 MHz */
m_maincpu->set_addrmap(AS_PROGRAM, &witch_state::witch_main_map);
m_maincpu->set_vblank_int("screen", FUNC(witch_state::irq0_line_assert));
/* 2nd z80 */
MCFG_DEVICE_ADD("sub", Z80, CPU_CLOCK) /* 3 MHz */
MCFG_DEVICE_PROGRAM_MAP(witch_sub_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", witch_state, irq0_line_assert)
Z80(config, m_subcpu, CPU_CLOCK); /* 3 MHz */
m_subcpu->set_addrmap(AS_PROGRAM, &witch_state::witch_sub_map);
m_maincpu->set_vblank_int("screen", FUNC(witch_state::irq0_line_assert));
config.m_minimum_quantum = attotime::from_hz(6000);
@ -983,13 +984,13 @@ MACHINE_CONFIG_START(witch_state::witch)
m_ppi[1]->out_pc_callback().set(FUNC(witch_state::write_a006));
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(8, 256-1-8, 8*4, 256-8*4-1)
MCFG_SCREEN_UPDATE_DRIVER(witch_state, screen_update_witch)
MCFG_SCREEN_PALETTE(m_palette)
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_refresh_hz(60);
screen.set_vblank_time(ATTOSECONDS_IN_USEC(0));
screen.set_size(256, 256);
screen.set_visarea(8, 256-1-8, 8*4, 256-8*4-1);
screen.set_screen_update(FUNC(witch_state::screen_update_witch));
screen.set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_witch);
PALETTE(config, m_palette).set_format(palette_device::xBGR_555, 0x800);
@ -1015,16 +1016,15 @@ MACHINE_CONFIG_START(witch_state::witch)
ym2.port_a_write_callback().set(FUNC(witch_state::xscroll_w));
ym2.port_b_write_callback().set(FUNC(witch_state::yscroll_w));
ym2.add_route(ALL_OUTPUTS, "mono", 0.5);
MACHINE_CONFIG_END
}
MACHINE_CONFIG_START(keirinou_state::keirinou)
void keirinou_state::keirinou(machine_config &config)
{
witch(config);
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(keirinou_main_map)
m_maincpu->set_addrmap(AS_PROGRAM, &keirinou_state::keirinou_main_map);
MCFG_DEVICE_MODIFY("sub")
MCFG_DEVICE_PROGRAM_MAP(keirinou_sub_map)
m_subcpu->set_addrmap(AS_PROGRAM, &keirinou_state::keirinou_sub_map);
PALETTE(config.replace(), m_palette).set_entries(0x200+0x80);
m_gfxdecode->set_info(gfx_keirinou);
@ -1048,7 +1048,7 @@ MACHINE_CONFIG_START(keirinou_state::keirinou)
config.device_remove("msm");
config.device_remove("ym1");
config.device_remove("ym2");
MACHINE_CONFIG_END
}
ROM_START( witch )
ROM_REGION( 0x30000, "maincpu", 0 )

View File

@ -790,25 +790,25 @@ INTERRUPT_GEN_MEMBER(wiz_state::wiz_sound_interrupt)
device.execute().pulse_input_line(INPUT_LINE_NMI, attotime::zero);
}
MACHINE_CONFIG_START(wiz_state::kungfut)
void wiz_state::kungfut(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", Z80, 18432000/6) /* 3.072 MHz ??? */
MCFG_DEVICE_PROGRAM_MAP(kungfut_main_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", wiz_state, wiz_vblank_interrupt)
Z80(config, m_maincpu, 18432000/6); /* 3.072 MHz ??? */
m_maincpu->set_addrmap(AS_PROGRAM, &wiz_state::kungfut_main_map);
m_maincpu->set_vblank_int("screen", FUNC(wiz_state::wiz_vblank_interrupt));
MCFG_DEVICE_ADD("audiocpu", Z80, 18432000/6) /* 3.072 MHz ??? */
MCFG_DEVICE_PROGRAM_MAP(kungfut_sound_map)
MCFG_DEVICE_PERIODIC_INT_DRIVER(wiz_state, wiz_sound_interrupt, 4*60) /* ??? */
Z80(config, m_audiocpu, 18432000/6); /* 3.072 MHz ??? */
m_audiocpu->set_addrmap(AS_PROGRAM, &wiz_state::kungfut_sound_map);
m_audiocpu->set_periodic_int(FUNC(wiz_state::wiz_sound_interrupt), attotime::from_hz(4*60)); /* ??? */
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */ )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(wiz_state, screen_update_kungfut)
MCFG_SCREEN_PALETTE(m_palette)
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_refresh_hz(60);
screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500) /* not accurate */ );
screen.set_size(32*8, 32*8);
screen.set_visarea(0*8, 32*8-1, 2*8, 30*8-1);
screen.set_screen_update(FUNC(wiz_state::screen_update_kungfut));
screen.set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_stinger);
PALETTE(config, m_palette, FUNC(wiz_state::wiz_palette), 256);
@ -823,57 +823,54 @@ MACHINE_CONFIG_START(wiz_state::kungfut)
AY8910(config, "8910.2", 18432000/12).add_route(ALL_OUTPUTS, "mono", 0.10);
AY8910(config, "8910.3", 18432000/12).add_route(ALL_OUTPUTS, "mono", 0.10);
MACHINE_CONFIG_END
}
MACHINE_CONFIG_START(wiz_state::wiz)
void wiz_state::wiz(machine_config &config)
{
kungfut(config);
/* basic machine hardware */
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(wiz_main_map)
m_maincpu->set_addrmap(AS_PROGRAM, &wiz_state::wiz_main_map);
/* video hardware */
m_gfxdecode->set_info(gfx_wiz);
MCFG_SCREEN_MODIFY("screen")
MCFG_SCREEN_UPDATE_DRIVER(wiz_state, screen_update_wiz)
MACHINE_CONFIG_END
subdevice<screen_device>("screen")->set_screen_update(FUNC(wiz_state::screen_update_wiz));
}
MACHINE_CONFIG_START(wiz_state::stinger)
void wiz_state::stinger(machine_config &config)
{
kungfut(config);
/* basic machine hardware */
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(stinger_main_map)
MCFG_DEVICE_OPCODES_MAP(decrypted_opcodes_map)
m_maincpu->set_addrmap(AS_PROGRAM, &wiz_state::stinger_main_map);
m_maincpu->set_addrmap(AS_OPCODES, &wiz_state::decrypted_opcodes_map);
/* basic machine hardware */
MCFG_DEVICE_MODIFY("audiocpu")
MCFG_DEVICE_PROGRAM_MAP(stinger_sound_map)
m_audiocpu->set_addrmap(AS_PROGRAM, &wiz_state::stinger_sound_map);
WATCHDOG_TIMER(config, "watchdog");
/* video hardware */
MCFG_SCREEN_MODIFY("screen")
MCFG_SCREEN_UPDATE_DRIVER(wiz_state, screen_update_stinger)
subdevice<screen_device>("screen")->set_screen_update(FUNC(wiz_state::screen_update_stinger));
/* sound hardware */
config.device_remove("8910.3");
MCFG_DEVICE_ADD("discrete", DISCRETE, stinger_discrete)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
MACHINE_CONFIG_END
DISCRETE(config, m_discrete, stinger_discrete).add_route(ALL_OUTPUTS, "mono", 0.5);
}
MACHINE_CONFIG_START(wiz_state::scion)
void wiz_state::scion(machine_config &config)
{
stinger(config);
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_REMOVE_ADDRESS_MAP(AS_OPCODES)
Z80(config.replace(), m_maincpu, 18432000/6); /* 3.072 MHz ??? */
m_maincpu->set_addrmap(AS_PROGRAM, &wiz_state::stinger_main_map);
m_maincpu->set_vblank_int("screen", FUNC(wiz_state::wiz_vblank_interrupt));
/* video hardware */
MCFG_SCREEN_MODIFY("screen")
MCFG_SCREEN_VISIBLE_AREA(2*8, 32*8-1, 2*8, 30*8-1)
MACHINE_CONFIG_END
subdevice<screen_device>("screen")->set_visarea(2*8, 32*8-1, 2*8, 30*8-1);
}

View File

@ -515,14 +515,14 @@ void wmg_state::init_wmg()
* Machine Driver
*
*************************************/
MACHINE_CONFIG_START(wmg_state::wmg)
void wmg_state::wmg(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", MC6809E, MASTER_CLOCK/3/4)
MCFG_DEVICE_PROGRAM_MAP(wmg_cpu1)
MC6809E(config, m_maincpu, MASTER_CLOCK/3/4);
m_maincpu->set_addrmap(AS_PROGRAM, &wmg_state::wmg_cpu1);
MCFG_DEVICE_ADD("soundcpu", M6808, SOUND_CLOCK)
MCFG_DEVICE_PROGRAM_MAP(wmg_cpu2)
M6808(config, m_soundcpu, SOUND_CLOCK);
m_soundcpu->set_addrmap(AS_PROGRAM, &wmg_state::wmg_cpu2);
NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
@ -537,10 +537,10 @@ MACHINE_CONFIG_START(wmg_state::wmg)
WATCHDOG_TIMER(config, "watchdog");
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_UPDATE_SCANLINE | VIDEO_ALWAYS_UPDATE)
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK*2/3, 512, 6, 298, 260, 7, 247)
MCFG_SCREEN_UPDATE_DRIVER(williams_state, screen_update_williams)
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
m_screen->set_video_attributes(VIDEO_UPDATE_SCANLINE | VIDEO_ALWAYS_UPDATE);
m_screen->set_raw(MASTER_CLOCK*2/3, 512, 6, 298, 260, 7, 247);
m_screen->set_screen_update(FUNC(williams_state::screen_update_williams));
MCFG_VIDEO_START_OVERRIDE(williams_state,williams)
@ -575,7 +575,7 @@ MACHINE_CONFIG_START(wmg_state::wmg)
pia2.writepa_handler().set("dac", FUNC(dac_byte_interface::data_w));
pia2.irqa_handler().set("soundirq", FUNC(input_merger_any_high_device::in_w<0>));
pia2.irqb_handler().set("soundirq", FUNC(input_merger_any_high_device::in_w<1>));
MACHINE_CONFIG_END
}
/*************************************
*

View File

@ -178,28 +178,29 @@ static GFXDECODE_START( gfx_wms )
GFXDECODE_END
MACHINE_CONFIG_START(wms_state::wms)
void wms_state::wms(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", I80188, MAIN_CLOCK ) // AMD N80C188-20, ( 40 MHz. internally divided by 2)
MCFG_DEVICE_PROGRAM_MAP(wms_map)
MCFG_DEVICE_IO_MAP(wms_io)
I80188(config, m_maincpu, MAIN_CLOCK); // AMD N80C188-20, ( 40 MHz. internally divided by 2)
m_maincpu->set_addrmap(AS_PROGRAM, &wms_state::wms_map);
m_maincpu->set_addrmap(AS_IO, &wms_state::wms_io);
MCFG_DEVICE_ADD("adsp", ADSP2105, MAIN_CLOCK / 2) // ADSP-2105 could run either at 13.824 or 20 MHz...
MCFG_DEVICE_DISABLE()
MCFG_DEVICE_PROGRAM_MAP(adsp_program_map)
MCFG_DEVICE_DATA_MAP(adsp_data_map)
adsp2105_device &adsp(ADSP2105(config, "adsp", MAIN_CLOCK / 2)); // ADSP-2105 could run either at 13.824 or 20 MHz...
adsp.set_disable();
adsp.set_addrmap(AS_PROGRAM, &wms_state::adsp_program_map);
adsp.set_addrmap(AS_DATA, &wms_state::adsp_data_map);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(wms_state, screen_update_wms)
MCFG_SCREEN_PALETTE("palette")
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_refresh_hz(60);
screen.set_vblank_time(ATTOSECONDS_IN_USEC(0));
screen.set_size(32*8, 32*8);
screen.set_visarea(0*8, 32*8-1, 2*8, 30*8-1);
screen.set_screen_update(FUNC(wms_state::screen_update_wms));
screen.set_palette("palette");
GFXDECODE(config, "gfxdecode", "palette", gfx_wms);
MCFG_PALETTE_ADD("palette", 0x100)
MACHINE_CONFIG_END
PALETTE(config, "palette").set_entries(0x100);
}
/*********************************************

View File

@ -306,31 +306,31 @@ static GFXDECODE_START( gfx_wolfpack )
GFXDECODE_END
MACHINE_CONFIG_START(wolfpack_state::wolfpack)
void wolfpack_state::wolfpack(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", M6502, 12096000 / 16)
MCFG_DEVICE_PROGRAM_MAP(main_map)
M6502(config, m_maincpu, 12096000 / 16);
m_maincpu->set_addrmap(AS_PROGRAM, &wolfpack_state::main_map);
WATCHDOG_TIMER(config, "watchdog");
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_SIZE(512, 262)
MCFG_SCREEN_VISIBLE_AREA(0, 511, 16, 239)
MCFG_SCREEN_UPDATE_DRIVER(wolfpack_state, screen_update)
MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(*this, wolfpack_state, screen_vblank))
MCFG_SCREEN_PALETTE(m_palette)
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
m_screen->set_refresh_hz(60);
m_screen->set_size(512, 262);
m_screen->set_visarea(0, 511, 16, 239);
m_screen->set_screen_update(FUNC(wolfpack_state::screen_update));
m_screen->screen_vblank().set(FUNC(wolfpack_state::screen_vblank));
m_screen->set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_wolfpack);
PALETTE(config, m_palette, FUNC(wolfpack_state::wolfpack_palette), 12, 8);
/* sound hardware */
SPEAKER(config, "mono").front_center();
MCFG_DEVICE_ADD("speech", S14001A, 20000) /* RC Clock (C=100pf, R=470K-670K ohms, adjustable) ranging from 14925.37313hz to 21276.59574hz, likely factory set to 20000hz since anything below 19500 is too slow */
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
MACHINE_CONFIG_END
S14001A(config, m_s14001a, 20000); /* RC Clock (C=100pf, R=470K-670K ohms, adjustable) ranging from 14925.37313hz to 21276.59574hz, likely factory set to 20000hz since anything below 19500 is too slow */
m_s14001a->add_route(ALL_OUTPUTS, "mono", 1.00);
}
ROM_START( wolfpack )

View File

@ -2249,22 +2249,24 @@ static INPUT_PORTS_START( ttt )
PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("UL Flipper Button")
INPUT_PORTS_END
MACHINE_CONFIG_START(wpc_95_state::wpc_95)
void wpc_95_state::wpc_95(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", MC6809E, XTAL(8'000'000)/4) // 68B09E
MCFG_DEVICE_PROGRAM_MAP(wpc_95_map)
MCFG_DEVICE_PERIODIC_INT_DRIVER(wpc_95_state, irq0_line_assert, XTAL(8'000'000)/8192.0)
MC6809E(config, maincpu, XTAL(8'000'000)/4); // 68B09E
maincpu->set_addrmap(AS_PROGRAM, &wpc_95_state::wpc_95_map);
maincpu->set_periodic_int(FUNC(wpc_95_state::irq0_line_assert), attotime::from_hz(XTAL(8'000'000)/8192.0));
TIMER(config, "zero_crossing").configure_periodic(FUNC(wpc_95_state::zc_timer), attotime::from_hz(120)); // Mains power zero crossing
MCFG_DEVICE_ADD("pic", WPC_PIC, 0)
MCFG_DEVICE_ADD("lamp", WPC_LAMP, 0)
MCFG_DEVICE_ADD("out", WPC_OUT, 0, 3)
MCFG_DEVICE_ADD("shift", WPC_SHIFT, 0)
WPC_PIC(config, pic, 0);
WPC_LAMP(config, lamp, 0);
WPC_OUT(config, out, 0, 3);
WPC_SHIFT(config, "shift", 0);
WPC_DMD(config, "dmd", 0).scanline_callback().set(FUNC(wpc_95_state::scanline_irq));
NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
DCS_AUDIO_WPC(config, dcs, 0);
MACHINE_CONFIG_END
}
/*-----------------
/ Attack From Mars #50041

View File

@ -424,22 +424,23 @@ static INPUT_PORTS_START( wpc_dcs )
INPUT_PORTS_END
MACHINE_CONFIG_START(wpc_dcs_state::wpc_dcs)
void wpc_dcs_state::wpc_dcs(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", M6809, XTAL(8'000'000)/4)
MCFG_DEVICE_PROGRAM_MAP(wpc_dcs_map)
M6809(config, maincpu, XTAL(8'000'000)/4);
maincpu->set_addrmap(AS_PROGRAM, &wpc_dcs_state::wpc_dcs_map);
maincpu->set_periodic_int(FUNC(wpc_dcs_state::irq0_line_assert), attotime::from_hz(XTAL(8'000'000)/8192.0));
MCFG_DEVICE_PERIODIC_INT_DRIVER(wpc_dcs_state, irq0_line_assert, XTAL(8'000'000)/8192.0)
TIMER(config, "zero_crossing").configure_periodic(FUNC(wpc_dcs_state::zc_timer), attotime::from_hz(120)); // Mains power zero crossing
MCFG_DEVICE_ADD("lamp", WPC_LAMP, 0)
MCFG_DEVICE_ADD("out", WPC_OUT, 0, 3)
MCFG_DEVICE_ADD("shift", WPC_SHIFT, 0)
WPC_LAMP(config, lamp, 0);
WPC_OUT(config, out, 0, 3);
WPC_SHIFT(config, "shift", 0);
WPC_DMD(config, "dmd", 0).scanline_callback().set(FUNC(wpc_dcs_state::scanline_irq));
NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
DCS_AUDIO_8K(config, dcs, 0);
MACHINE_CONFIG_END
}
/*-------------
/ Demolition Man #50028

View File

@ -1971,22 +1971,24 @@ static INPUT_PORTS_START( tfs )
PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("UL Flipper Button")
INPUT_PORTS_END
MACHINE_CONFIG_START(wpc_s_state::wpc_s)
void wpc_s_state::wpc_s(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", MC6809E, XTAL(8'000'000)/4)
MCFG_DEVICE_PROGRAM_MAP(wpc_s_map)
MCFG_DEVICE_PERIODIC_INT_DRIVER(wpc_s_state, irq0_line_assert, XTAL(8'000'000)/8192.0)
MC6809E(config, maincpu, XTAL(8'000'000)/4);
maincpu->set_addrmap(AS_PROGRAM, &wpc_s_state::wpc_s_map);
maincpu->set_periodic_int(FUNC(wpc_s_state::irq0_line_assert), attotime::from_hz(XTAL(8'000'000)/8192.0));
TIMER(config, "zero_crossing").configure_periodic(FUNC(wpc_s_state::zc_timer), attotime::from_hz(120)); // Mains power zero crossing
MCFG_DEVICE_ADD("shift", WPC_SHIFT, 0)
MCFG_DEVICE_ADD("pic", WPC_PIC, 0)
MCFG_DEVICE_ADD("lamp", WPC_LAMP, 0)
MCFG_DEVICE_ADD("out", WPC_OUT, 0, 5)
WPC_SHIFT(config, "shift", 0);
WPC_PIC(config, pic, 0);
WPC_LAMP(config, lamp, 0);
WPC_OUT(config, out, 0, 5);
WPC_DMD(config, "dmd", 0).scanline_callback().set(FUNC(wpc_s_state::scanline_irq));
NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
DCS_AUDIO_8K(config, dcs, 0);
MACHINE_CONFIG_END
}
/*-----------------
/ Corvette #50036

View File

@ -264,23 +264,24 @@ static GFXDECODE_START( gfx_wrally )
GFXDECODE_END
MACHINE_CONFIG_START(wrally_state::wrally)
void wrally_state::wrally(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", M68000,XTAL(24'000'000)/2) /* verified on pcb */
MCFG_DEVICE_PROGRAM_MAP(wrally_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", wrally_state, irq6_line_hold)
M68000(config, m_maincpu, XTAL(24'000'000)/2); /* verified on pcb */
m_maincpu->set_addrmap(AS_PROGRAM, &wrally_state::wrally_map);
m_maincpu->set_vblank_int("screen", FUNC(wrally_state::irq6_line_hold));
MCFG_DEVICE_ADD("gaelco_ds5002fp", GAELCO_DS5002FP, XTAL(24'000'000) / 2) /* verified on pcb */
MCFG_DEVICE_ADDRESS_MAP(0, mcu_hostmem_map)
gaelco_ds5002fp_device &ds5002(GAELCO_DS5002FP(config, "gaelco_ds5002fp", XTAL(24'000'000) / 2)); /* verified on pcb */
ds5002.set_addrmap(0, &wrally_state::mcu_hostmem_map);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
MCFG_SCREEN_SIZE(64*16, 32*16)
MCFG_SCREEN_VISIBLE_AREA(8, 24*16-8-1, 16, 16*16-8-1)
MCFG_SCREEN_UPDATE_DRIVER(wrally_state, screen_update)
MCFG_SCREEN_PALETTE(m_palette)
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_refresh_hz(60);
screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */
screen.set_size(64*16, 32*16);
screen.set_visarea(8, 24*16-8-1, 16, 16*16-8-1);
screen.set_screen_update(FUNC(wrally_state::screen_update));
screen.set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_wrally);
PALETTE(config, m_palette).set_format(palette_device::xBRG_444, 1024*8);
@ -302,10 +303,10 @@ MACHINE_CONFIG_START(wrally_state::wrally)
/* sound hardware */
SPEAKER(config, "mono").front_center();
MCFG_DEVICE_ADD("oki", OKIM6295, XTAL(1'000'000), okim6295_device::PIN7_HIGH) /* verified on pcb */
MCFG_DEVICE_ADDRESS_MAP(0, oki_map)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
okim6295_device &oki(OKIM6295(config, "oki", XTAL(1'000'000), okim6295_device::PIN7_HIGH)); /* verified on pcb */
oki.set_addrmap(0, &wrally_state::oki_map);
oki.add_route(ALL_OUTPUTS, "mono", 1.0);
}
ROM_START( wrally )

View File

@ -117,25 +117,26 @@ static void wswan_cart(device_slot_interface &device)
device.option_add_internal("ws_eeprom", WS_ROM_EEPROM);
}
MACHINE_CONFIG_START(wswan_state::wswan)
void wswan_state::wswan(machine_config &config)
{
/* Basic machine hardware */
MCFG_DEVICE_ADD(m_maincpu, V30MZ, 3.072_MHz_XTAL)
MCFG_DEVICE_PROGRAM_MAP(wswan_mem)
MCFG_DEVICE_IO_MAP(wswan_io)
V30MZ(config, m_maincpu, 3.072_MHz_XTAL);
m_maincpu->set_addrmap(AS_PROGRAM, &wswan_state::wswan_mem);
m_maincpu->set_addrmap(AS_IO, &wswan_state::wswan_io);
WSWAN_VIDEO(config, m_vdp, 0);
m_vdp->set_vdp_type(VDP_TYPE_WSWAN);
m_vdp->set_irq_callback(FUNC(wswan_state::set_irq_line), this);
m_vdp->set_dmasnd_callback(FUNC(wswan_state::dma_sound_cb), this);
MCFG_SCREEN_ADD("screen", LCD)
// MCFG_SCREEN_REFRESH_RATE(75)
// MCFG_SCREEN_VBLANK_TIME(0)
MCFG_SCREEN_UPDATE_DEVICE("vdp", wswan_video_device, screen_update)
// MCFG_SCREEN_SIZE(WSWAN_X_PIXELS, WSWAN_Y_PIXELS)
// MCFG_SCREEN_VISIBLE_AREA(0*8, WSWAN_X_PIXELS - 1, 0, WSWAN_Y_PIXELS - 1)
MCFG_SCREEN_RAW_PARAMS(3.072_MHz_XTAL, 256, 0, WSWAN_X_PIXELS, 159, 0, WSWAN_Y_PIXELS)
MCFG_SCREEN_PALETTE("palette")
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_LCD));
// screen.set_refresh_rate(75);
// screen.set_vblank_time(0);
screen.set_screen_update("vdp", FUNC(wswan_video_device::screen_update));
// screen.set_size(WSWAN_X_PIXELS, WSWAN_Y_PIXELS);
// screen.set_visarea(0*8, WSWAN_X_PIXELS - 1, 0, WSWAN_Y_PIXELS - 1);
screen.set_raw(3.072_MHz_XTAL, 256, 0, WSWAN_X_PIXELS, 159, 0, WSWAN_Y_PIXELS);
screen.set_palette("palette");
config.set_default_layout(layout_wswan);
@ -149,20 +150,20 @@ MACHINE_CONFIG_START(wswan_state::wswan)
/* sound hardware */
SPEAKER(config, "lspeaker").front_left();
SPEAKER(config, "rspeaker").front_right();
MCFG_DEVICE_ADD(m_sound, WSWAN_SND, 3.072_MHz_XTAL)
MCFG_DEVICE_ADDRESS_MAP(0, wswan_snd)
MCFG_SOUND_ROUTE(0, "lspeaker", 0.50)
MCFG_SOUND_ROUTE(1, "rspeaker", 0.50)
WSWAN_SND(config, m_sound, 3.072_MHz_XTAL);
m_sound->set_addrmap(0, &wswan_state::wswan_snd);
m_sound->add_route(0, "lspeaker", 0.50);
m_sound->add_route(1, "rspeaker", 0.50);
/* cartridge */
MCFG_DEVICE_ADD(m_cart, WS_CART_SLOT, 3.072_MHz_XTAL / 8, wswan_cart, nullptr)
WS_CART_SLOT(config, m_cart, 3.072_MHz_XTAL / 8, wswan_cart, nullptr);
/* software lists */
SOFTWARE_LIST(config, "cart_list").set_original("wswan");
SOFTWARE_LIST(config, "wsc_list").set_compatible("wscolor");
SOFTWARE_LIST(config, "pc2_list").set_compatible("pockchalv2");
MACHINE_CONFIG_END
}
void wscolor_state::wscolor(machine_config &config)
{

View File

@ -413,21 +413,22 @@ GFXDECODE_END
Machine Driver(s)
*******************************************************************************/
MACHINE_CONFIG_START(wwfsstar_state::wwfsstar)
void wwfsstar_state::wwfsstar(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", M68000, CPU_CLOCK)
MCFG_DEVICE_PROGRAM_MAP(main_map)
M68000(config, m_maincpu, CPU_CLOCK);
m_maincpu->set_addrmap(AS_PROGRAM, &wwfsstar_state::main_map);
TIMER(config, "scantimer").configure_scanline(FUNC(wwfsstar_state::scanline), "screen", 0, 1);
MCFG_DEVICE_ADD("audiocpu", Z80, XTAL(3'579'545))
MCFG_DEVICE_PROGRAM_MAP(sound_map)
Z80(config, m_audiocpu, XTAL(3'579'545));
m_audiocpu->set_addrmap(AS_PROGRAM, &wwfsstar_state::sound_map);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, 320, 0, 256, 272, 8, 248) /* HTOTAL and VTOTAL are guessed */
MCFG_SCREEN_UPDATE_DRIVER(wwfsstar_state, screen_update)
MCFG_SCREEN_PALETTE(m_palette)
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
m_screen->set_raw(PIXEL_CLOCK, 320, 0, 256, 272, 8, 248); /* HTOTAL and VTOTAL are guessed */
m_screen->set_screen_update(FUNC(wwfsstar_state::screen_update));
m_screen->set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_wwfsstar);
PALETTE(config, m_palette).set_format(palette_device::xBGR_444, 384);
@ -444,10 +445,10 @@ MACHINE_CONFIG_START(wwfsstar_state::wwfsstar)
ymsnd.add_route(0, "lspeaker", 0.45);
ymsnd.add_route(1, "rspeaker", 0.45);
MCFG_DEVICE_ADD("oki", OKIM6295, 1.056_MHz_XTAL, okim6295_device::PIN7_HIGH)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.47)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.47)
MACHINE_CONFIG_END
okim6295_device &oki(OKIM6295(config, "oki", 1.056_MHz_XTAL, okim6295_device::PIN7_HIGH));
oki.add_route(ALL_OUTPUTS, "lspeaker", 0.47);
oki.add_route(ALL_OUTPUTS, "rspeaker", 0.47);
}
/*******************************************************************************
Rom Loaders / Game Drivers

View File

@ -54,11 +54,12 @@ void wyse_state::io_map(address_map &map)
static INPUT_PORTS_START( wyse )
INPUT_PORTS_END
MACHINE_CONFIG_START(wyse_state::wyse)
MCFG_DEVICE_ADD("maincpu", I8031, 11'000'000)
MCFG_DEVICE_PROGRAM_MAP(mem_map)
MCFG_DEVICE_IO_MAP(io_map)
MACHINE_CONFIG_END
void wyse_state::wyse(machine_config &config)
{
i8031_device &maincpu(I8031(config, "maincpu", 11'000'000));
maincpu.set_addrmap(AS_PROGRAM, &wyse_state::mem_map);
maincpu.set_addrmap(AS_IO, &wyse_state::io_map);
}
ROM_START( wy30p )
ROM_REGION( 0x10000, "maincpu", 0 )

View File

@ -1482,18 +1482,18 @@ void x07_state::machine_reset()
MACHINE_CONFIG_START(x07_state::x07)
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", NSC800, 15.36_MHz_XTAL / 4)
MCFG_DEVICE_PROGRAM_MAP(x07_mem)
MCFG_DEVICE_IO_MAP(x07_io)
NSC800(config, m_maincpu, 15.36_MHz_XTAL / 4);
m_maincpu->set_addrmap(AS_PROGRAM, &x07_state::x07_mem);
m_maincpu->set_addrmap(AS_IO, &x07_state::x07_io);
/* video hardware */
MCFG_SCREEN_ADD("lcd", LCD)
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
MCFG_SCREEN_UPDATE_DRIVER(x07_state, screen_update)
MCFG_SCREEN_SIZE(120, 32)
MCFG_SCREEN_VISIBLE_AREA(0, 120-1, 0, 32-1)
MCFG_SCREEN_PALETTE("palette")
screen_device &lcd(SCREEN(config, "lcd", SCREEN_TYPE_LCD));
lcd.set_refresh_hz(60);
lcd.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */
lcd.set_screen_update(FUNC(x07_state::screen_update));
lcd.set_size(120, 32);
lcd.set_visarea(0, 120-1, 0, 32-1);
lcd.set_palette("palette");
PALETTE(config, "palette", FUNC(x07_state::x07_palette), 2);
GFXDECODE(config, "gfxdecode", "palette", gfx_x07);

View File

@ -2191,14 +2191,15 @@ static void x1_floppies(device_slot_interface &device)
device.option_add("dd", FLOPPY_525_DD);
}
MACHINE_CONFIG_START(x1_state::x1)
void x1_state::x1(machine_config &config)
{
/* basic machine hardware */
Z80(config, m_maincpu, MAIN_CLOCK/4);
m_maincpu->set_addrmap(AS_PROGRAM, &x1_state::x1_mem);
m_maincpu->set_addrmap(AS_IO, &x1_state::x1_io);
m_maincpu->set_daisy_config(x1_daisy);
ADDRESS_MAP_BANK(config, "iobank").set_map(&x1_state::x1_io_banks).set_options(ENDIANNESS_LITTLE, 8, 17, 0x10000);
ADDRESS_MAP_BANK(config, m_iobank).set_map(&x1_state::x1_io_banks).set_options(ENDIANNESS_LITTLE, 8, 17, 0x10000);
z80ctc_device& ctc(Z80CTC(config, "ctc", MAIN_CLOCK/4));
ctc.intr_callback().set_inputline(m_maincpu, INPUT_LINE_IRQ0);
@ -2206,7 +2207,7 @@ MACHINE_CONFIG_START(x1_state::x1)
ctc.zc_callback<1>().set("ctc", FUNC(z80ctc_device::trg1));
ctc.zc_callback<2>().set("ctc", FUNC(z80ctc_device::trg2));
MCFG_DEVICE_ADD("x1kb", X1_KEYBOARD, 0)
X1_KEYBOARD(config, "x1kb", 0);
i8255_device &ppi(I8255A(config, "ppi8255_0"));
ppi.in_pa_callback().set(FUNC(x1_state::x1_porta_r));
@ -2220,12 +2221,12 @@ MACHINE_CONFIG_START(x1_state::x1)
MCFG_MACHINE_RESET_OVERRIDE(x1_state,x1)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
MCFG_SCREEN_UPDATE_DRIVER(x1_state, screen_update_x1)
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
m_screen->set_refresh_hz(60);
m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */
m_screen->set_size(640, 480);
m_screen->set_visarea(0, 640-1, 0, 480-1);
m_screen->set_screen_update(FUNC(x1_state::screen_update_x1));
H46505(config, m_crtc, (VDP_CLOCK/48)); //unknown divider
m_crtc->set_screen(m_screen);
@ -2249,8 +2250,7 @@ MACHINE_CONFIG_START(x1_state::x1)
SOFTWARE_LIST(config, "flop_list").set_original("x1_flop");
MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "x1_cart")
MCFG_GENERIC_EXTENSIONS("bin,rom")
GENERIC_CARTSLOT(config, m_cart, generic_plain_slot, "x1_cart", "bin,rom");
SPEAKER(config, "lspeaker").front_left();
SPEAKER(config, "rspeaker").front_right();
@ -2274,9 +2274,10 @@ MACHINE_CONFIG_START(x1_state::x1)
TIMER(config, "keyboard_timer").configure_periodic(FUNC(x1_state::x1_keyboard_callback), attotime::from_hz(250));
TIMER(config, "cmt_wind_timer").configure_periodic(FUNC(x1_state::x1_cmt_wind_timer), attotime::from_hz(16));
MACHINE_CONFIG_END
}
MACHINE_CONFIG_START(x1_state::x1turbo)
void x1_state::x1turbo(machine_config &config)
{
x1(config);
m_maincpu->set_addrmap(AS_PROGRAM, &x1_state::x1turbo_mem);
@ -2284,8 +2285,7 @@ MACHINE_CONFIG_START(x1_state::x1turbo)
MCFG_MACHINE_RESET_OVERRIDE(x1_state,x1turbo)
MCFG_DEVICE_MODIFY("iobank")
MCFG_DEVICE_PROGRAM_MAP(x1turbo_io_banks)
m_iobank->set_map(&x1_state::x1turbo_io_banks);
z80sio0_device& sio(Z80SIO0(config, "sio", MAIN_CLOCK/4));
sio.out_int_callback().set_inputline(m_maincpu, INPUT_LINE_IRQ0);
@ -2303,7 +2303,7 @@ MACHINE_CONFIG_START(x1_state::x1turbo)
YM2151(config, m_ym, MAIN_CLOCK/8); //option board
m_ym->add_route(0, "lspeaker", 0.50);
m_ym->add_route(1, "rspeaker", 0.50);
MACHINE_CONFIG_END
}
/*************************************
*

View File

@ -410,7 +410,8 @@ static void x1_floppies(device_slot_interface &device)
device.option_add("dd", FLOPPY_525_DD);
}
MACHINE_CONFIG_START(x1twin_state::x1twin)
void x1twin_state::x1twin(machine_config &config)
{
/* basic machine hardware */
Z80(config, m_maincpu, X1_MAIN_CLOCK/4);
m_maincpu->set_addrmap(AS_PROGRAM, &x1twin_state::x1_mem);
@ -425,7 +426,7 @@ MACHINE_CONFIG_START(x1twin_state::x1twin)
ctc.zc_callback<1>().set("ctc", FUNC(z80ctc_device::trg1));
ctc.zc_callback<2>().set("ctc", FUNC(z80ctc_device::trg2));
MCFG_DEVICE_ADD("x1kb", X1_KEYBOARD, 0)
X1_KEYBOARD(config, "x1kb", 0);
i8255_device &ppi(I8255A(config, "ppi8255_0"));
ppi.in_pa_callback().set(FUNC(x1_state::x1_porta_r));
@ -447,23 +448,23 @@ MACHINE_CONFIG_START(x1twin_state::x1twin)
m_maincpu->add_route(0, "pce_l", 0.5);
m_maincpu->add_route(1, "pce_r", 0.5);
MCFG_TIMER_ADD_SCANLINE("scantimer", pce_interrupt, "pce_screen", 0, 1)
TIMER(config, "scantimer").configure_scanline(FUNC(x1twin_state::pce_interrupt), "pce_screen", 0, 1);
#endif
config.set_default_layout(layout_dualhsxs);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
MCFG_SCREEN_UPDATE_DRIVER(x1twin_state, screen_update_x1)
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
m_screen->set_refresh_hz(60);
m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */
m_screen->set_size(640, 480);
m_screen->set_visarea(0, 640-1, 0, 480-1);
m_screen->set_screen_update(FUNC(x1twin_state::screen_update_x1));
MCFG_SCREEN_ADD("pce_screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
MCFG_SCREEN_RAW_PARAMS(PCE_MAIN_CLOCK/2, huc6260_device::WPF, 70, 70 + 512 + 32, huc6260_device::LPF, 14, 14+242)
MCFG_SCREEN_UPDATE_DRIVER(x1twin_state, screen_update_x1pce)
screen_device &pce_screen(SCREEN(config, "pce_screen", SCREEN_TYPE_RASTER));
pce_screen.set_refresh_hz(60);
pce_screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */
pce_screen.set_raw(PCE_MAIN_CLOCK/2, huc6260_device::WPF, 70, 70 + 512 + 32, huc6260_device::LPF, 14, 14+242);
pce_screen.set_screen_update(FUNC(x1twin_state::screen_update_x1pce));
H46505(config, m_crtc, (VDP_CLOCK/48)); //unknown divider
m_crtc->set_screen(m_screen);
@ -487,8 +488,7 @@ MACHINE_CONFIG_START(x1twin_state::x1twin)
SOFTWARE_LIST(config, "flop_list").set_original("x1_flop");
MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "x1_cart")
MCFG_GENERIC_EXTENSIONS("bin,rom")
GENERIC_CARTSLOT(config, m_cart, generic_plain_slot, "x1_cart", "bin,rom");
SPEAKER(config, "x1_l").front_left();
SPEAKER(config, "x1_r").front_right();
@ -517,7 +517,7 @@ MACHINE_CONFIG_START(x1twin_state::x1twin)
TIMER(config, "keyboard_timer").configure_periodic(FUNC(x1twin_state::x1_keyboard_callback), attotime::from_hz(250));
TIMER(config, "cmt_wind_timer").configure_periodic(FUNC(x1twin_state::x1_cmt_wind_timer), attotime::from_hz(16));
MACHINE_CONFIG_END
}
ROM_START( x1twin )
ROM_REGION( 0x10000, "x1_cpu", ROMREGION_ERASEFF )

View File

@ -471,28 +471,29 @@ void xain_state::machine_start()
save_item(NAME(m_vblank));
}
MACHINE_CONFIG_START(xain_state::xsleena)
void xain_state::xsleena(machine_config &config)
{
// basic machine hardware
MCFG_DEVICE_ADD(m_maincpu, MC6809E, CPU_CLOCK) // 68B09E
MCFG_DEVICE_PROGRAM_MAP(main_map)
MC6809E(config, m_maincpu, CPU_CLOCK); // 68B09E
m_maincpu->set_addrmap(AS_PROGRAM, &xain_state::main_map);
TIMER(config, "scantimer").configure_scanline(FUNC(xain_state::scanline), "screen", 0, 1);
MCFG_DEVICE_ADD(m_subcpu, MC6809E, CPU_CLOCK) // 68B09E
MCFG_DEVICE_PROGRAM_MAP(cpu_map_B)
MC6809E(config, m_subcpu, CPU_CLOCK); // 68B09E
m_subcpu->set_addrmap(AS_PROGRAM, &xain_state::cpu_map_B);
MCFG_DEVICE_ADD(m_audiocpu, MC6809, PIXEL_CLOCK) // 68A09
MCFG_DEVICE_PROGRAM_MAP(sound_map)
MC6809(config, m_audiocpu, PIXEL_CLOCK); // 68A09
m_audiocpu->set_addrmap(AS_PROGRAM, &xain_state::sound_map);
TAITO68705_MCU(config, m_mcu, MCU_CLOCK);
config.m_perfect_cpu_quantum = subtag("maincpu");
// video hardware
MCFG_SCREEN_ADD(m_screen, RASTER)
MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, 384, 0, 256, 272, 8, 248) // based on ddragon driver
MCFG_SCREEN_UPDATE_DRIVER(xain_state, screen_update)
MCFG_SCREEN_PALETTE(m_palette)
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
m_screen->set_raw(PIXEL_CLOCK, 384, 0, 256, 272, 8, 248); // based on ddragon driver
m_screen->set_screen_update(FUNC(xain_state::screen_update));
m_screen->set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_xain);
PALETTE(config, m_palette).set_format(palette_device::xBGR_444, 512);
@ -514,17 +515,17 @@ MACHINE_CONFIG_START(xain_state::xsleena)
ym2.add_route(1, "mono", 0.50);
ym2.add_route(2, "mono", 0.50);
ym2.add_route(3, "mono", 0.40);
MACHINE_CONFIG_END
}
MACHINE_CONFIG_START(xain_state::xsleenab)
void xain_state::xsleenab(machine_config &config)
{
xsleena(config);
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(bootleg_map)
m_maincpu->set_addrmap(AS_PROGRAM, &xain_state::bootleg_map);
config.device_remove("mcu");
MACHINE_CONFIG_END
}
/***************************************************************************

View File

@ -172,9 +172,8 @@ void xbox_ata_devices(device_slot_interface &device)
MACHINE_CONFIG_START(xbox_state::xbox)
xbox_base(config);
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(xbox_map)
MCFG_DEVICE_IO_MAP(xbox_map_io)
m_maincpu->set_addrmap(AS_PROGRAM, &xbox_state::xbox_map);
m_maincpu->set_addrmap(AS_IO, &xbox_state::xbox_map_io);
MCFG_DEVICE_MODIFY(":pci:09.0:ide:0")
MCFG_DEVICE_SLOT_INTERFACE(xbox_ata_devices, "hdd", true)
@ -189,7 +188,7 @@ MACHINE_CONFIG_START(xbox_state::xbox)
/* sound hardware */
SPEAKER(config, "mono").front_center();
MCFG_DEVICE_ADD("ohci_gamepad", OHCI_GAME_CONTROLLER, 0)
OHCI_GAME_CONTROLLER(config, "ohci_gamepad", 0);
MACHINE_CONFIG_END

View File

@ -609,9 +609,9 @@ MACHINE_CONFIG_START(xerox820_state::xerox820)
m_maincpu->set_daisy_config(xerox820_daisy_chain);
/* video hardware */
MCFG_SCREEN_ADD(SCREEN_TAG, RASTER)
MCFG_SCREEN_UPDATE_DRIVER(xerox820_state, screen_update)
MCFG_SCREEN_RAW_PARAMS(10.69425_MHz_XTAL, 700, 0, 560, 260, 0, 240)
screen_device &screen(SCREEN(config, SCREEN_TAG, SCREEN_TYPE_RASTER));
screen.set_screen_update(FUNC(xerox820_state::screen_update));
screen.set_raw(10.69425_MHz_XTAL, 700, 0, 560, 260, 0, 240);
GFXDECODE(config, "gfxdecode", m_palette, gfx_xerox820);
PALETTE(config, m_palette, palette_device::MONOCHROME);
@ -669,13 +669,13 @@ MACHINE_CONFIG_START(xerox820_state::xerox820)
MCFG_QUICKLOAD_ADD("quickload", xerox820_state, xerox820, "com,cpm", attotime::from_seconds(3))
MACHINE_CONFIG_END
MACHINE_CONFIG_START(bigboard_state::bigboard)
void bigboard_state::bigboard(machine_config &config)
{
xerox820(config);
/* sound hardware */
SPEAKER(config, "mono").front_center();
MCFG_DEVICE_ADD("beeper", BEEP, 950)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00) /* bigboard only */
MACHINE_CONFIG_END
BEEP(config, m_beeper, 950).add_route(ALL_OUTPUTS, "mono", 1.00); /* bigboard only */
}
MACHINE_CONFIG_START(xerox820ii_state::xerox820ii)
/* basic machine hardware */
@ -685,17 +685,16 @@ MACHINE_CONFIG_START(xerox820ii_state::xerox820ii)
m_maincpu->set_daisy_config(xerox820_daisy_chain);
/* video hardware */
MCFG_SCREEN_ADD(SCREEN_TAG, RASTER)
MCFG_SCREEN_UPDATE_DRIVER(xerox820ii_state, screen_update)
MCFG_SCREEN_RAW_PARAMS(10.69425_MHz_XTAL, 700, 0, 560, 260, 0, 240)
screen_device &screen(SCREEN(config, SCREEN_TAG, SCREEN_TYPE_RASTER));
screen.set_screen_update(FUNC(xerox820ii_state::screen_update));
screen.set_raw(10.69425_MHz_XTAL, 700, 0, 560, 260, 0, 240);
GFXDECODE(config, "gfxdecode", m_palette, gfx_xerox820ii);
PALETTE(config, m_palette, palette_device::MONOCHROME);
/* sound hardware */
SPEAKER(config, "mono").front_center();
MCFG_DEVICE_ADD("speaker", SPEAKER_SOUND)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
SPEAKER_SOUND(config, m_speaker).add_route(ALL_OUTPUTS, "mono", 0.50);
/* devices */
Z80PIO(config, m_kbpio, 16_MHz_XTAL / 4);
@ -758,8 +757,7 @@ MACHINE_CONFIG_START(xerox820ii_state::xerox820ii)
m_sasibus->cd_handler().set("sasi_ctrl_in", FUNC(input_buffer_device::write_bit2)).exor(1);
m_sasibus->req_handler().set("sasi_ctrl_in", FUNC(input_buffer_device::write_bit3)).exor(1);
m_sasibus->io_handler().set("sasi_ctrl_in", FUNC(input_buffer_device::write_bit4)).exor(1);
MCFG_SCSIDEV_ADD(SASIBUS_TAG ":" SCSI_PORT_DEVICE1, "harddisk", SA1403D, SCSI_ID_0)
m_sasibus->set_slot_device(1, "harddisk", SA1403D, DEVICE_INPUT_DEFAULTS_NAME(SCSI_ID_0));
output_latch_device &sasi_data_out(OUTPUT_LATCH(config, "sasi_data_out"));
m_sasibus->set_output_latch(sasi_data_out);
@ -774,14 +772,15 @@ MACHINE_CONFIG_START(xerox820ii_state::xerox820ii)
MCFG_QUICKLOAD_ADD("quickload", xerox820_state, xerox820, "com,cpm", attotime::from_seconds(3))
MACHINE_CONFIG_END
MACHINE_CONFIG_START(xerox820ii_state::xerox168)
void xerox820ii_state::xerox168(machine_config &config)
{
xerox820ii(config);
MCFG_DEVICE_ADD(I8086_TAG, I8086, 4770000)
MCFG_DEVICE_PROGRAM_MAP(xerox168_mem)
i8086_cpu_device &i8086(I8086(config, I8086_TAG, 4770000));
i8086.set_addrmap(AS_PROGRAM, &xerox820ii_state::xerox168_mem);
/* internal ram */
m_ram->set_default_size("192K").set_extra_options("320K");
MACHINE_CONFIG_END
}
void xerox820_state::mk83(machine_config & config)
{

View File

@ -298,28 +298,29 @@ TIMER_DEVICE_CALLBACK_MEMBER(xmen_state::xmen_scanline)
}
MACHINE_CONFIG_START(xmen_state::xmen)
void xmen_state::xmen(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", M68000, XTAL(16'000'000)) /* verified on pcb */
MCFG_DEVICE_PROGRAM_MAP(main_map)
M68000(config, m_maincpu, XTAL(16'000'000)); /* verified on pcb */
m_maincpu->set_addrmap(AS_PROGRAM, &xmen_state::main_map);
TIMER(config, "scantimer").configure_scanline(FUNC(xmen_state::xmen_scanline), "screen", 0, 1);
MCFG_DEVICE_ADD("audiocpu", Z80, XTAL(16'000'000)/2) /* verified on pcb */
MCFG_DEVICE_PROGRAM_MAP(sound_map)
Z80(config, m_audiocpu, XTAL(16'000'000)/2); /* verified on pcb */
m_audiocpu->set_addrmap(AS_PROGRAM, &xmen_state::sound_map);
EEPROM_ER5911_8BIT(config, "eeprom");
WATCHDOG_TIMER(config, "watchdog");
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(59.17) /* verified on pcb */
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(13*8, (64-13)*8-1, 2*8, 30*8-1 ) /* correct, same issue of TMNT2 */
MCFG_SCREEN_UPDATE_DRIVER(xmen_state, screen_update_xmen)
MCFG_SCREEN_PALETTE("palette")
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
m_screen->set_refresh_hz(59.17); /* verified on pcb */
m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(0));
m_screen->set_size(64*8, 32*8);
m_screen->set_visarea(13*8, (64-13)*8-1, 2*8, 30*8-1 ); /* correct, same issue of tmnt2 */
m_screen->set_screen_update(FUNC(xmen_state::screen_update_xmen));
m_screen->set_palette("palette");
PALETTE(config, "palette").set_format(palette_device::xBGR_555, 2048).enable_shadows();
@ -342,20 +343,21 @@ MACHINE_CONFIG_START(xmen_state::xmen)
YM2151(config, "ymsnd", XTAL(16'000'000)/4).add_route(0, "lspeaker", 0.20).add_route(1, "rspeaker", 0.20); /* verified on pcb */
MCFG_DEVICE_ADD("k054539", K054539, XTAL(18'432'000))
MCFG_SOUND_ROUTE(0, "rspeaker", 1.00)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.00)
MACHINE_CONFIG_END
MACHINE_CONFIG_START(xmen_state::xmen6p)
K054539(config, m_k054539, XTAL(18'432'000));
m_k054539->add_route(0, "rspeaker", 1.00);
m_k054539->add_route(1, "lspeaker", 1.00);
}
void xmen_state::xmen6p(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", M68000, XTAL(16'000'000))
MCFG_DEVICE_PROGRAM_MAP(_6p_main_map)
M68000(config, m_maincpu, XTAL(16'000'000));
m_maincpu->set_addrmap(AS_PROGRAM, &xmen_state::_6p_main_map);
TIMER(config, "scantimer").configure_scanline(FUNC(xmen_state::xmen_scanline), "screen", 0, 1);
MCFG_DEVICE_ADD("audiocpu", Z80, XTAL(16'000'000)/2)
MCFG_DEVICE_PROGRAM_MAP(sound_map)
Z80(config, m_audiocpu, XTAL(16'000'000)/2);
m_audiocpu->set_addrmap(AS_PROGRAM, &xmen_state::sound_map);
EEPROM_ER5911_8BIT(config, "eeprom");
@ -365,22 +367,22 @@ MACHINE_CONFIG_START(xmen_state::xmen6p)
PALETTE(config, "palette").set_format(palette_device::xBGR_555, 2048).enable_shadows();
config.set_default_layout(layout_dualhsxs);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(12*8, 48*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(xmen_state, screen_update_xmen6p_left)
MCFG_SCREEN_PALETTE("palette")
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
m_screen->set_refresh_hz(60);
m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(0));
m_screen->set_size(64*8, 32*8);
m_screen->set_visarea(12*8, 48*8-1, 2*8, 30*8-1);
m_screen->set_screen_update(FUNC(xmen_state::screen_update_xmen6p_left));
m_screen->set_palette("palette");
MCFG_SCREEN_ADD("screen2", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(16*8, 52*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(xmen_state, screen_update_xmen6p_right)
MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(*this, xmen_state, screen_vblank_xmen6p))
MCFG_SCREEN_PALETTE("palette")
screen_device &screen2(SCREEN(config, "screen2", SCREEN_TYPE_RASTER));
screen2.set_refresh_hz(60);
screen2.set_vblank_time(ATTOSECONDS_IN_USEC(0));
screen2.set_size(64*8, 32*8);
screen2.set_visarea(16*8, 52*8-1, 2*8, 30*8-1);
screen2.set_screen_update(FUNC(xmen_state::screen_update_xmen6p_right));
screen2.screen_vblank().set(FUNC(xmen_state::screen_vblank_xmen6p));
screen2.set_palette("palette");
MCFG_VIDEO_START_OVERRIDE(xmen_state,xmen6p)
@ -404,10 +406,10 @@ MACHINE_CONFIG_START(xmen_state::xmen6p)
YM2151(config, "ymsnd", XTAL(16'000'000)/4).add_route(0, "lspeaker", 0.20).add_route(1, "rspeaker", 0.20);
MCFG_DEVICE_ADD("k054539", K054539, XTAL(18'432'000))
MCFG_SOUND_ROUTE(0, "rspeaker", 1.00)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.00)
MACHINE_CONFIG_END
K054539(config, m_k054539, XTAL(18'432'000));
m_k054539->add_route(0, "rspeaker", 1.00);
m_k054539->add_route(1, "lspeaker", 1.00);
}
/***************************************************************************

View File

@ -408,10 +408,10 @@ void xtom3d_state::machine_reset()
}
MACHINE_CONFIG_START(xtom3d_state::xtom3d)
MCFG_DEVICE_ADD("maincpu", PENTIUM2, 450000000/16) // actually Pentium II 450
MCFG_DEVICE_PROGRAM_MAP(xtom3d_map)
MCFG_DEVICE_IO_MAP(xtom3d_io)
MCFG_DEVICE_IRQ_ACKNOWLEDGE_DEVICE("pic8259_1", pic8259_device, inta_cb)
PENTIUM2(config, m_maincpu, 450000000/16); // actually Pentium II 450
m_maincpu->set_addrmap(AS_PROGRAM, &xtom3d_state::xtom3d_map);
m_maincpu->set_addrmap(AS_IO, &xtom3d_state::xtom3d_io);
m_maincpu->set_irq_acknowledge_callback("pic8259_1", FUNC(pic8259_device::inta_cb));
pcat_common(config);

View File

@ -265,27 +265,27 @@ GFXDECODE_END
/****************************************************************************/
MACHINE_CONFIG_START(xxmissio_state::xxmissio)
void xxmissio_state::xxmissio(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", Z80,12000000/4) /* 3.0MHz */
MCFG_DEVICE_PROGRAM_MAP(map1)
Z80(config, m_maincpu, 12000000/4); /* 3.0MHz */
m_maincpu->set_addrmap(AS_PROGRAM, &xxmissio_state::map1);
MCFG_DEVICE_ADD("sub", Z80,12000000/4) /* 3.0MHz */
MCFG_DEVICE_PROGRAM_MAP(map2)
MCFG_DEVICE_PERIODIC_INT_DRIVER(xxmissio_state, interrupt_s, 2*60)
Z80(config, m_subcpu, 12000000/4); /* 3.0MHz */
m_subcpu->set_addrmap(AS_PROGRAM, &xxmissio_state::map2);
m_subcpu->set_periodic_int(FUNC(xxmissio_state::interrupt_s), attotime::from_hz(2*60));
config.m_minimum_quantum = attotime::from_hz(6000);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 4*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(xxmissio_state, screen_update)
MCFG_SCREEN_PALETTE(m_palette)
MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(*this, xxmissio_state, interrupt_m))
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_refresh_hz(60);
screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500) /* not accurate */);
screen.set_size(64*8, 32*8);
screen.set_visarea(0*8, 64*8-1, 4*8, 28*8-1);
screen.set_screen_update(FUNC(xxmissio_state::screen_update));
screen.set_palette(m_palette);
screen.screen_vblank().set(FUNC(xxmissio_state::interrupt_m));
GFXDECODE(config, m_gfxdecode, m_palette, gfx_xxmissio);
PALETTE(config, m_palette).set_format(1, &xxmissio_state::BBGGRRII, 768);
@ -308,7 +308,7 @@ MACHINE_CONFIG_START(xxmissio_state::xxmissio)
ym2.add_route(1, "mono", 0.15);
ym2.add_route(2, "mono", 0.15);
ym2.add_route(3, "mono", 0.40);
MACHINE_CONFIG_END
}
/****************************************************************************/

View File

@ -175,11 +175,11 @@ GFXDECODE_END
*
*************************************/
MACHINE_CONFIG_START(xybots_state::xybots)
void xybots_state::xybots(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", M68000, ATARI_CLOCK_14MHz/2)
MCFG_DEVICE_PROGRAM_MAP(main_map)
M68000(config, m_maincpu, ATARI_CLOCK_14MHz/2);
m_maincpu->set_addrmap(AS_PROGRAM, &xybots_state::main_map);
SLAPSTIC(config, "slapstic", 107, true);
@ -191,20 +191,20 @@ MACHINE_CONFIG_START(xybots_state::xybots)
GFXDECODE(config, "gfxdecode", "palette", gfx_xybots);
PALETTE(config, "palette").set_format(palette_device::IRGB_4444, 1024);
MCFG_TILEMAP_ADD_STANDARD("playfield", "gfxdecode", 2, xybots_state, get_playfield_tile_info, 8,8, SCAN_ROWS, 64,32)
MCFG_TILEMAP_ADD_STANDARD_TRANSPEN("alpha", "gfxdecode", 2, xybots_state, get_alpha_tile_info, 8,8, SCAN_ROWS, 64,32, 0)
TILEMAP(config, m_playfield_tilemap, "gfxdecode", 2, 8, 8, TILEMAP_SCAN_ROWS, 64, 32).set_info_callback(FUNC(xybots_state::get_playfield_tile_info));
TILEMAP(config, m_alpha_tilemap, "gfxdecode", 2, 8, 8, TILEMAP_SCAN_ROWS, 64, 32, 0).set_info_callback(FUNC(xybots_state::get_alpha_tile_info));
ATARI_MOTION_OBJECTS(config, m_mob, 0, m_screen, xybots_state::s_mob_config);
m_mob->set_gfxdecode(m_gfxdecode);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
m_screen->set_video_attributes(VIDEO_UPDATE_BEFORE_VBLANK);
/* note: these parameters are from published specs, not derived */
/* the board uses a SYNGEN chip to generate video signals */
MCFG_SCREEN_RAW_PARAMS(ATARI_CLOCK_14MHz/2, 456, 0, 336, 262, 0, 240)
MCFG_SCREEN_UPDATE_DRIVER(xybots_state, screen_update_xybots)
MCFG_SCREEN_PALETTE("palette")
MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(*this, xybots_state, video_int_write_line))
m_screen->set_raw(ATARI_CLOCK_14MHz/2, 456, 0, 336, 262, 0, 240);
m_screen->set_screen_update(FUNC(xybots_state::screen_update_xybots));
m_screen->set_palette("palette");
m_screen->screen_vblank().set(FUNC(xybots_state::video_int_write_line));
/* sound hardware */
SPEAKER(config, "lspeaker").front_left();
@ -217,7 +217,7 @@ MACHINE_CONFIG_START(xybots_state::xybots)
m_jsa->add_route(1, "lspeaker", 1.0);
config.device_remove("jsa:pokey");
config.device_remove("jsa:tms");
MACHINE_CONFIG_END
}

View File

@ -246,23 +246,23 @@ GFXDECODE_END
/* MACHINE driver *************************************************************/
MACHINE_CONFIG_START(xyonix_state::xyonix)
void xyonix_state::xyonix(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", Z80,16000000 / 4) /* 4 MHz ? */
MCFG_DEVICE_PROGRAM_MAP(main_map)
MCFG_DEVICE_IO_MAP(port_map)
MCFG_DEVICE_PERIODIC_INT_DRIVER(xyonix_state, irq0_line_assert, 4*60) /* ?? controls music tempo */
Z80(config, m_maincpu, 16000000 / 4); /* 4 MHz ? */
m_maincpu->set_addrmap(AS_PROGRAM, &xyonix_state::main_map);
m_maincpu->set_addrmap(AS_IO, &xyonix_state::port_map);
m_maincpu->set_periodic_int(FUNC(xyonix_state::irq0_line_assert), attotime::from_hz(4*60)); /* ?? controls music tempo */
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MCFG_SCREEN_SIZE(80*4, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0, 80*4-1, 0, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(xyonix_state, screen_update)
MCFG_SCREEN_PALETTE("palette")
MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(*this, xyonix_state, nmiclk_w))
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_refresh_hz(60);
screen.set_vblank_time(ATTOSECONDS_IN_USEC(0));
screen.set_size(80*4, 32*8);
screen.set_visarea(0, 80*4-1, 0, 28*8-1);
screen.set_screen_update(FUNC(xyonix_state::screen_update));
screen.set_palette("palette");
screen.screen_vblank().set(FUNC(xyonix_state::nmiclk_w));
GFXDECODE(config, m_gfxdecode, "palette", gfx_xyonix);
PALETTE(config, "palette", FUNC(xyonix_state::xyonix_palette), 256);
@ -272,7 +272,7 @@ MACHINE_CONFIG_START(xyonix_state::xyonix)
SN76496(config, "sn1", 16000000/4).add_route(ALL_OUTPUTS, "mono", 1.0);
SN76496(config, "sn2", 16000000/4).add_route(ALL_OUTPUTS, "mono", 1.0);
MACHINE_CONFIG_END
}
/* ROM Loading ***************************************************************/

View File

@ -53,7 +53,8 @@ static INPUT_PORTS_START( system_board_y2 )
INPUT_PORTS_END
MACHINE_CONFIG_START(system_board_y2_state::system_board_y2)
void system_board_y2_state::system_board_y2(machine_config &config)
{
/*
SH4LE(config, m_maincpu, 266666666);
m_maincpu->set_md(0, 1);
@ -68,18 +69,18 @@ MACHINE_CONFIG_START(system_board_y2_state::system_board_y2)
m_maincpu->set_sh4_clock(CPU_CLOCK);
*/
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
MCFG_SCREEN_UPDATE_DRIVER(system_board_y2_state, screen_update_system_board_y2)
MCFG_SCREEN_PALETTE("palette")
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_refresh_hz(60);
screen.set_vblank_time(ATTOSECONDS_IN_USEC(0));
screen.set_size(640, 480);
screen.set_visarea(0, 640-1, 0, 480-1);
screen.set_screen_update(FUNC(system_board_y2_state::screen_update_system_board_y2));
screen.set_palette("palette");
MCFG_PALETTE_ADD("palette", 0x1000)
PALETTE(config, "palette").set_entries(0x1000);
SPEAKER(config, "mono").front_center();
MACHINE_CONFIG_END
}
ROM_START( kof2002um ) // The King of Fighters 复仇之路/Fùchóu zhī lù/Road to Revenge
ROM_REGION( 0x8000000, "boot", 0 ) // sound program only? or boot too?

View File

@ -278,24 +278,24 @@ void yiear_state::machine_reset()
m_yiear_nmi_enable = 0;
}
MACHINE_CONFIG_START(yiear_state::yiear)
void yiear_state::yiear(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD(m_maincpu, MC6809E, XTAL(18'432'000)/12) /* verified on pcb */
MCFG_DEVICE_PROGRAM_MAP(main_map)
MCFG_DEVICE_PERIODIC_INT_DRIVER(yiear_state, yiear_nmi_interrupt, 480) /* music tempo (correct frequency unknown) */
MC6809E(config, m_maincpu, XTAL(18'432'000)/12); /* verified on pcb */
m_maincpu->set_addrmap(AS_PROGRAM, &yiear_state::main_map);
m_maincpu->set_periodic_int(FUNC(yiear_state::yiear_nmi_interrupt), attotime::from_hz(480)); /* music tempo (correct frequency unknown) */
WATCHDOG_TIMER(config, "watchdog");
/* video hardware */
MCFG_SCREEN_ADD(m_screen, RASTER)
MCFG_SCREEN_REFRESH_RATE(60.58) /* verified on pcb */
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(yiear_state, screen_update_yiear)
MCFG_SCREEN_PALETTE(m_palette)
MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(*this, yiear_state, vblank_irq))
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
m_screen->set_refresh_hz(60.58); /* verified on pcb */
m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(0));
m_screen->set_size(32*8, 32*8);
m_screen->set_visarea(0*8, 32*8-1, 2*8, 30*8-1);
m_screen->set_screen_update(FUNC(yiear_state::screen_update_yiear));
m_screen->set_palette(m_palette);
m_screen->screen_vblank().set(FUNC(yiear_state::vblank_irq));
GFXDECODE(config, m_gfxdecode, m_palette, gfx_yiear);
PALETTE(config, m_palette, FUNC(yiear_state::yiear_palette), 32);
@ -303,15 +303,14 @@ MACHINE_CONFIG_START(yiear_state::yiear)
/* sound hardware */
SPEAKER(config, "mono").front_center();
MCFG_DEVICE_ADD(m_audio, TRACKFLD_AUDIO, 0, finder_base::DUMMY_TAG, m_vlm)
TRACKFLD_AUDIO(config, m_audio, 0, finder_base::DUMMY_TAG, m_vlm);
MCFG_DEVICE_ADD(m_sn, SN76489A, XTAL(18'432'000)/12) /* verified on pcb */
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
SN76489A(config, m_sn, XTAL(18'432'000)/12).add_route(ALL_OUTPUTS, "mono", 1.0); /* verified on pcb */
MCFG_DEVICE_ADD(m_vlm, VLM5030, XTAL(3'579'545)) /* verified on pcb */
MCFG_DEVICE_ADDRESS_MAP(0, vlm_map)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
VLM5030(config, m_vlm, XTAL(3'579'545)); /* verified on pcb */
m_vlm->set_addrmap(0, &yiear_state::vlm_map);
m_vlm->add_route(ALL_OUTPUTS, "mono", 1.0);
}
/***************************************************************************

View File

@ -664,7 +664,8 @@ static void z100_floppies(device_slot_interface &device)
device.option_add("dd", FLOPPY_525_DD);
}
MACHINE_CONFIG_START(z100_state::z100)
void z100_state::z100(machine_config &config)
{
/* basic machine hardware */
I8088(config, m_maincpu, 14.318181_MHz_XTAL / 3);
m_maincpu->set_addrmap(AS_PROGRAM, &z100_state::z100_mem);
@ -672,15 +673,15 @@ MACHINE_CONFIG_START(z100_state::z100)
m_maincpu->set_irq_acknowledge_callback("pic8259_master", FUNC(pic8259_device::inta_cb));
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
MCFG_SCREEN_UPDATE_DRIVER(z100_state, screen_update)
MCFG_SCREEN_PALETTE("palette")
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_refresh_hz(50);
screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */
screen.set_size(640, 480);
screen.set_visarea(0, 640-1, 0, 480-1);
screen.set_screen_update(FUNC(z100_state::screen_update));
screen.set_palette(m_palette);
MCFG_PALETTE_ADD("palette", 8)
PALETTE(config, m_palette).set_entries(8);
/* devices */
MC6845(config, m_crtc, 14.318181_MHz_XTAL / 8); /* unknown clock, hand tuned to get ~50/~60 fps */
@ -725,7 +726,7 @@ MACHINE_CONFIG_START(z100_state::z100)
input_merger_device &epci1int(INPUT_MERGER_ANY_HIGH(config, "epci1int"));
epci1int.output_handler().set(m_picm, FUNC(pic8259_device::ir5_w));
MACHINE_CONFIG_END
}
/* ROM definition */
ROM_START( z100 )

View File

@ -373,18 +373,18 @@ GFXDECODE_END
/* Machine driver */
MACHINE_CONFIG_START(z1013_state::z1013)
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", Z80, XTAL(1'000'000) )
MCFG_DEVICE_PROGRAM_MAP(z1013_mem)
MCFG_DEVICE_IO_MAP(z1013_io)
Z80(config, m_maincpu, XTAL(1'000'000));
m_maincpu->set_addrmap(AS_PROGRAM, &z1013_state::z1013_mem);
m_maincpu->set_addrmap(AS_IO, &z1013_state::z1013_io);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0, 32*8-1, 0, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(z1013_state, screen_update_z1013)
MCFG_SCREEN_PALETTE("palette")
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_refresh_hz(50);
screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */
screen.set_size(32*8, 32*8);
screen.set_visarea(0, 32*8-1, 0, 32*8-1);
screen.set_screen_update(FUNC(z1013_state::screen_update_z1013));
screen.set_palette("palette");
GFXDECODE(config, "gfxdecode", "palette", gfx_z1013);
PALETTE(config, "palette", palette_device::MONOCHROME);
@ -404,13 +404,14 @@ MACHINE_CONFIG_START(z1013_state::z1013)
MCFG_SNAPSHOT_ADD("snapshot", z1013_state, z1013, "z80")
MACHINE_CONFIG_END
MACHINE_CONFIG_START(z1013_state::z1013k76)
void z1013_state::z1013k76(machine_config &config)
{
z1013(config);
z80pio_device &pio(*subdevice<z80pio_device>("z80pio"));
pio.in_pb_callback().set(FUNC(z1013_state::k7659_port_b_r));
pio.out_pb_callback().set_nop();
MACHINE_CONFIG_END
}
/* ROM definition */
ROM_START( z1013 )

View File

@ -123,15 +123,16 @@ INPUT_PORTS_START( z80dev )
PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("LD") PORT_CODE(KEYCODE_L)
INPUT_PORTS_END
MACHINE_CONFIG_START(z80dev_state::z80dev)
void z80dev_state::z80dev(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", Z80, 4_MHz_XTAL)
MCFG_DEVICE_PROGRAM_MAP(mem_map)
MCFG_DEVICE_IO_MAP(io_map)
Z80(config, m_maincpu, 4_MHz_XTAL);
m_maincpu->set_addrmap(AS_PROGRAM, &z80dev_state::mem_map);
m_maincpu->set_addrmap(AS_IO, &z80dev_state::io_map);
/* video hardware */
config.set_default_layout(layout_z80dev);
MACHINE_CONFIG_END
}
/* ROM definition */
ROM_START( z80dev )

View File

@ -414,11 +414,12 @@ static void z80ne_floppies(device_slot_interface &device)
device.option_add("sssd", FLOPPY_525_SSSD);
}
MACHINE_CONFIG_START(z80ne_state::z80ne)
void z80ne_state::z80ne(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("z80ne", Z80, Z80NE_CPU_SPEED_HZ)
MCFG_DEVICE_PROGRAM_MAP(z80ne_mem)
MCFG_DEVICE_IO_MAP(z80ne_io)
Z80(config, m_maincpu, Z80NE_CPU_SPEED_HZ);
m_maincpu->set_addrmap(AS_PROGRAM, &z80ne_state::z80ne_mem);
m_maincpu->set_addrmap(AS_IO, &z80ne_state::z80ne_io);
MCFG_MACHINE_START_OVERRIDE(z80ne_state,z80ne)
MCFG_MACHINE_RESET_OVERRIDE(z80ne_state,z80ne)
@ -444,14 +445,14 @@ MACHINE_CONFIG_START(z80ne_state::z80ne)
// all known tapes require LX.388 expansion
//SOFTWARE_LIST(config, "cass_list").set_original("z80ne_cass");
MACHINE_CONFIG_END
}
MACHINE_CONFIG_START(z80ne_state::z80net)
void z80ne_state::z80net(machine_config &config)
{
z80ne(config);
MCFG_DEVICE_MODIFY("z80ne")
MCFG_DEVICE_PROGRAM_MAP(z80net_mem)
MCFG_DEVICE_IO_MAP(z80net_io)
m_maincpu->set_addrmap(AS_PROGRAM, &z80ne_state::z80net_mem);
m_maincpu->set_addrmap(AS_IO, &z80ne_state::z80net_io);
MCFG_MACHINE_START_OVERRIDE(z80ne_state, z80net )
MCFG_MACHINE_RESET_OVERRIDE(z80ne_state, z80net )
@ -483,13 +484,14 @@ MACHINE_CONFIG_START(z80ne_state::z80net)
m_ram->set_default_size("32K").set_extra_options("1K");
SOFTWARE_LIST(config, "cass_list").set_original("z80ne_cass");
MACHINE_CONFIG_END
}
MACHINE_CONFIG_START(z80ne_state::z80netb)
void z80ne_state::z80netb(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("z80ne", Z80, Z80NE_CPU_SPEED_HZ)
MCFG_DEVICE_PROGRAM_MAP(z80netb_mem)
MCFG_DEVICE_IO_MAP(z80net_io)
Z80(config, m_maincpu, Z80NE_CPU_SPEED_HZ);
m_maincpu->set_addrmap(AS_PROGRAM, &z80ne_state::z80netb_mem);
m_maincpu->set_addrmap(AS_IO, &z80ne_state::z80net_io);
MCFG_MACHINE_START_OVERRIDE(z80ne_state,z80netb)
MCFG_MACHINE_RESET_OVERRIDE(z80ne_state,z80netb)
@ -535,13 +537,14 @@ MACHINE_CONFIG_START(z80ne_state::z80netb)
RAM(config, m_ram).set_default_size("32K").set_extra_options("1K");
SOFTWARE_LIST(config, "cass_list").set_original("z80ne_cass");
MACHINE_CONFIG_END
}
MACHINE_CONFIG_START(z80netf_state::z80netf)
void z80netf_state::z80netf(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("z80ne", Z80, Z80NE_CPU_SPEED_HZ)
MCFG_DEVICE_PROGRAM_MAP(z80netf_mem)
MCFG_DEVICE_IO_MAP(z80netf_io)
Z80(config, m_maincpu, Z80NE_CPU_SPEED_HZ);
m_maincpu->set_addrmap(AS_PROGRAM, &z80netf_state::z80netf_mem);
m_maincpu->set_addrmap(AS_IO, &z80netf_state::z80netf_io);
MCFG_MACHINE_START_OVERRIDE(z80netf_state,z80netf)
MCFG_MACHINE_RESET_OVERRIDE(z80netf_state,z80netf)
@ -584,7 +587,7 @@ MACHINE_CONFIG_START(z80netf_state::z80netf)
SOFTWARE_LIST(config, "cass_list").set_original("z80ne_cass");
SOFTWARE_LIST(config, "flop_list").set_original("z80ne_flop");
MACHINE_CONFIG_END
}
/******************************************************************************
ROM Definitions

View File

@ -206,7 +206,8 @@ static GFXDECODE_START( gfx_z9001 )
GFXDECODE_END
MACHINE_CONFIG_START(z9001_state::z9001)
void z9001_state::z9001(machine_config &config)
{
/* basic machine hardware */
Z80(config, m_maincpu, XTAL(9'830'400) / 4);
m_maincpu->set_addrmap(AS_PROGRAM, &z9001_state::z9001_mem);
@ -214,16 +215,16 @@ MACHINE_CONFIG_START(z9001_state::z9001)
m_maincpu->set_daisy_config(z9001_daisy_chain);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
MCFG_SCREEN_SIZE(40*8, 24*8)
MCFG_SCREEN_VISIBLE_AREA(0, 40*8-1, 0, 24*8-1)
MCFG_SCREEN_UPDATE_DRIVER(z9001_state, screen_update_z9001)
MCFG_SCREEN_PALETTE("palette")
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_refresh_hz(50);
screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */
screen.set_size(40*8, 24*8);
screen.set_visarea(0, 40*8-1, 0, 24*8-1);
screen.set_screen_update(FUNC(z9001_state::screen_update_z9001));
screen.set_palette("palette");
GFXDECODE(config, "gfxdecode", "palette", gfx_z9001);
MCFG_PALETTE_ADD("palette", 16)
PALETTE(config, "palette").set_entries(16);
/* Sound */
SPEAKER(config, "mono").front_center();
@ -248,7 +249,7 @@ MACHINE_CONFIG_START(z9001_state::z9001)
ctc.zc_callback<2>().set("z80ctc", FUNC(z80ctc_device::trg3));
CASSETTE(config, m_cass);
MACHINE_CONFIG_END
}
/* ROM definition */
ROM_START( z9001 )

View File

@ -241,10 +241,12 @@ void zac_proto_state::machine_reset()
m_digits[10] = 0x3f; // units shows zero all the time
}
MACHINE_CONFIG_START(zac_proto_state::zac_proto)
void zac_proto_state::zac_proto(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", INS8060, XTAL(4'000'000) / 2) // Using SC/MP II chip which has an internal /2 circuit.
MCFG_DEVICE_PROGRAM_MAP(zac_proto_map)
INS8060(config, m_maincpu, XTAL(4'000'000) / 2); // Using SC/MP II chip which has an internal /2 circuit.
m_maincpu->set_addrmap(AS_PROGRAM, &zac_proto_state::zac_proto_map);
NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* Video */
@ -252,7 +254,7 @@ MACHINE_CONFIG_START(zac_proto_state::zac_proto)
/* Sound */
genpin_audio(config);
MACHINE_CONFIG_END
}
/*--------------------------------
/ Strike

View File

@ -331,11 +331,11 @@ WRITE_LINE_MEMBER(zaccaria_state::vblank_irq)
}
MACHINE_CONFIG_START(zaccaria_state::zaccaria)
void zaccaria_state::zaccaria(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", Z80,XTAL(18'432'000)/6) /* verified on pcb */
MCFG_DEVICE_PROGRAM_MAP(main_map)
Z80(config, m_maincpu, XTAL(18'432'000)/6); /* verified on pcb */
m_maincpu->set_addrmap(AS_PROGRAM, &zaccaria_state::main_map);
// config.m_minimum_quantum = attotime::from_hz(1000000);
@ -355,14 +355,14 @@ MACHINE_CONFIG_START(zaccaria_state::zaccaria)
ppi.out_pc_callback().set(FUNC(zaccaria_state::dsw_sel_w));
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60.57) /* verified on pcb */
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(zaccaria_state, screen_update)
MCFG_SCREEN_PALETTE(m_palette)
MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(*this, zaccaria_state, vblank_irq))
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_refresh_hz(60.57); /* verified on pcb */
screen.set_vblank_time(ATTOSECONDS_IN_USEC(0));
screen.set_size(32*8, 32*8);
screen.set_visarea(0*8, 32*8-1, 2*8, 30*8-1);
screen.set_screen_update(FUNC(zaccaria_state::screen_update));
screen.set_palette(m_palette);
screen.screen_vblank().set(FUNC(zaccaria_state::vblank_irq));
GFXDECODE(config, m_gfxdecode, m_palette, gfx_zaccaria);
PALETTE(config, m_palette, FUNC(zaccaria_state::zaccaria_palette), 32*8 + 32*8, 512);
@ -370,7 +370,7 @@ MACHINE_CONFIG_START(zaccaria_state::zaccaria)
/* sound hardware */
SPEAKER(config, "speaker").front_center();
ZACCARIA_1B11142(config, "audiopcb").add_route(ALL_OUTPUTS, "speaker", 1.0);
MACHINE_CONFIG_END
}

View File

@ -155,15 +155,16 @@ void zapcomp_state::machine_start()
m_digits.resolve();
}
MACHINE_CONFIG_START(zapcomp_state::zapcomp)
void zapcomp_state::zapcomp(machine_config &config)
{
// basic machine hardware
MCFG_DEVICE_ADD("maincpu", Z80, XTAL(2'000'000))
MCFG_DEVICE_PROGRAM_MAP(zapcomp_mem)
MCFG_DEVICE_IO_MAP(zapcomp_io)
Z80(config, m_maincpu, XTAL(2'000'000));
m_maincpu->set_addrmap(AS_PROGRAM, &zapcomp_state::zapcomp_mem);
m_maincpu->set_addrmap(AS_IO, &zapcomp_state::zapcomp_io);
/* video hardware */
config.set_default_layout(layout_zapcomputer);
MACHINE_CONFIG_END
}
ROM_START( zapcomp )
ROM_REGION( 0x10000, "roms", 0 )

View File

@ -1519,30 +1519,30 @@ TIMER_DEVICE_CALLBACK_MEMBER(zaurus_state::rtc_irq_callback)
}
// TODO: main CPU differs greatly between versions!
MACHINE_CONFIG_START(zaurus_state::zaurus)
void zaurus_state::zaurus(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD(m_maincpu,PXA255,MAIN_CLOCK)
MCFG_DEVICE_PROGRAM_MAP(zaurus_map)
PXA255(config, m_maincpu, MAIN_CLOCK);
m_maincpu->set_addrmap(AS_PROGRAM, &zaurus_state::zaurus_map);
TIMER(config, "rtc_timer").configure_periodic(FUNC(zaurus_state::rtc_irq_callback), attotime::from_hz(XTAL(32'768)));
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500))
MCFG_SCREEN_UPDATE_DRIVER(zaurus_state, screen_update)
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_refresh_hz(60);
screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500));
screen.set_screen_update(FUNC(zaurus_state::screen_update));
screen.set_size(32*8, 32*8);
screen.set_visarea(0*8, 32*8-1, 0*8, 32*8-1);
MCFG_PALETTE_ADD("palette", 8)
PALETTE(config, "palette").set_entries(8);
/* sound hardware */
SPEAKER(config, "mono").front_center();
// AY8910(config, "aysnd", MAIN_CLOCK/4).add_route(ALL_OUTPUTS, "mono", 0.30);
PXA255_PERIPHERALS(config, m_pxa_periphs, MAIN_CLOCK, m_maincpu);
MACHINE_CONFIG_END
}
/***************************************************************************

View File

@ -915,11 +915,11 @@ GFXDECODE_END
*
*************************************/
MACHINE_CONFIG_START(zaxxon_state::root)
void zaxxon_state::root(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", Z80, MASTER_CLOCK/16)
MCFG_DEVICE_PROGRAM_MAP(zaxxon_map)
Z80(config, m_maincpu, MASTER_CLOCK/16);
m_maincpu->set_addrmap(AS_PROGRAM, &zaxxon_state::zaxxon_map);
I8255A(config, m_ppi);
m_ppi->out_pa_callback().set(FUNC(zaxxon_state::zaxxon_sound_a_w));
@ -944,29 +944,29 @@ MACHINE_CONFIG_START(zaxxon_state::root)
GFXDECODE(config, m_gfxdecode, m_palette, gfx_zaxxon);
PALETTE(config, m_palette, FUNC(zaxxon_state::zaxxon_palette), 256);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(zaxxon_state, screen_update_zaxxon)
MCFG_SCREEN_PALETTE("palette")
MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(*this, zaxxon_state, vblank_int))
MACHINE_CONFIG_END
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_raw(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART);
screen.set_screen_update(FUNC(zaxxon_state::screen_update_zaxxon));
screen.set_palette(m_palette);
screen.screen_vblank().set(FUNC(zaxxon_state::vblank_int));
}
MACHINE_CONFIG_START(zaxxon_state::zaxxon)
void zaxxon_state::zaxxon(machine_config &config)
{
root(config);
/* sound hardware */
SPEAKER(config, "speaker").front_center();
zaxxon_samples(config);
MACHINE_CONFIG_END
}
MACHINE_CONFIG_START(zaxxon_state::szaxxon)
void zaxxon_state::szaxxon(machine_config &config)
{
zaxxon(config);
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_OPCODES_MAP(decrypted_opcodes_map)
MACHINE_CONFIG_END
m_maincpu->set_addrmap(AS_OPCODES, &zaxxon_state::decrypted_opcodes_map);
}
void zaxxon_state::szaxxone(machine_config &config)
@ -980,8 +980,8 @@ void zaxxon_state::szaxxone(machine_config &config)
}
MACHINE_CONFIG_START(zaxxon_state::futspye)
void zaxxon_state::futspye(machine_config &config)
{
root(config);
sega_315_5061_device &maincpu(SEGA_315_5061(config.replace(), m_maincpu, MASTER_CLOCK/16));
maincpu.set_addrmap(AS_PROGRAM, &zaxxon_state::zaxxon_map);
@ -991,19 +991,16 @@ MACHINE_CONFIG_START(zaxxon_state::futspye)
/* video hardware */
MCFG_SCREEN_MODIFY("screen")
MCFG_SCREEN_UPDATE_DRIVER(zaxxon_state, screen_update_futspy)
subdevice<screen_device>("screen")->set_screen_update(FUNC(zaxxon_state::screen_update_futspy));
/* sound hardware */
SPEAKER(config, "speaker").front_center();
zaxxon_samples(config);
MACHINE_CONFIG_END
}
MACHINE_CONFIG_START(zaxxon_state::razmataze)
void zaxxon_state::razmataze(machine_config &config)
{
root(config);
sega_315_5098_device &maincpu(SEGA_315_5098(config.replace(), m_maincpu, MASTER_CLOCK/16));
maincpu.set_addrmap(AS_PROGRAM, &zaxxon_state::ixion_map);
@ -1015,13 +1012,13 @@ MACHINE_CONFIG_START(zaxxon_state::razmataze)
/* video hardware */
MCFG_VIDEO_START_OVERRIDE(zaxxon_state,razmataz)
MCFG_SCREEN_MODIFY("screen")
MCFG_SCREEN_UPDATE_DRIVER(zaxxon_state, screen_update_razmataz)
subdevice<screen_device>("screen")->set_screen_update(FUNC(zaxxon_state::screen_update_razmataz));
/* sound hardware */
SPEAKER(config, "speaker").front_center();
SEGAUSBROM(config, "usbsnd", 0, m_maincpu).add_route(ALL_OUTPUTS, "speaker", 1.0);
MACHINE_CONFIG_END
}
void zaxxon_state::ixion(machine_config &config)
{
@ -1035,11 +1032,12 @@ void zaxxon_state::ixion(machine_config &config)
m_mainlatch[0]->q_out_cb<6>().set_nop(); // flip screen not used
}
MACHINE_CONFIG_START(zaxxon_state::congo)
void zaxxon_state::congo(machine_config &config)
{
root(config);
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(congo_map)
m_maincpu->set_addrmap(AS_PROGRAM, &zaxxon_state::congo_map);
m_ppi->in_pa_callback().set("soundlatch", FUNC(generic_latch_8_device::read));
m_ppi->out_pa_callback().set_nop();
@ -1056,31 +1054,27 @@ MACHINE_CONFIG_START(zaxxon_state::congo)
m_mainlatch[1]->q_out_cb<6>().set(FUNC(zaxxon_state::congo_fg_bank_w)); // BS
m_mainlatch[1]->q_out_cb<7>().set(FUNC(zaxxon_state::congo_color_bank_w)); // CBS
MCFG_DEVICE_ADD("audiocpu", Z80, SOUND_CLOCK)
MCFG_DEVICE_PROGRAM_MAP(congo_sound_map)
MCFG_DEVICE_PERIODIC_INT_DRIVER(zaxxon_state, irq0_line_hold, SOUND_CLOCK/16/16/16/4)
z80_device &audiocpu(Z80(config, "audiocpu", SOUND_CLOCK));
audiocpu.set_addrmap(AS_PROGRAM, &zaxxon_state::congo_sound_map);
audiocpu.set_periodic_int(FUNC(zaxxon_state::irq0_line_hold), attotime::from_hz(SOUND_CLOCK/16/16/16/4));
/* video hardware */
m_palette->set_entries(512).set_init(FUNC(zaxxon_state::zaxxon_palette));
MCFG_VIDEO_START_OVERRIDE(zaxxon_state,congo)
MCFG_SCREEN_MODIFY("screen")
MCFG_SCREEN_UPDATE_DRIVER(zaxxon_state, screen_update_congo)
subdevice<screen_device>("screen")->set_screen_update(FUNC(zaxxon_state::screen_update_congo));
/* sound hardware */
SPEAKER(config, "speaker").front_center();
GENERIC_LATCH_8(config, "soundlatch");
MCFG_DEVICE_ADD("sn1", SN76489A, SOUND_CLOCK) // schematic shows sn76489A
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0)
SN76489A(config, "sn1", SOUND_CLOCK).add_route(ALL_OUTPUTS, "speaker", 1.0); // schematic shows sn76489A
MCFG_DEVICE_ADD("sn2", SN76489A, SOUND_CLOCK/4) // schematic shows sn76489A
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0)
SN76489A(config, "sn2", SOUND_CLOCK/4).add_route(ALL_OUTPUTS, "speaker", 1.0); // schematic shows sn76489A
congo_samples(config);
MACHINE_CONFIG_END
}
/*************************************

View File

@ -49,6 +49,9 @@ public:
DECLARE_INPUT_CHANGED_MEMBER(coin_inserted);
protected:
virtual void video_start() override;
private:
required_shared_ptr<uint8_t> m_videoram;
required_shared_ptr<uint8_t> m_charram;
@ -79,7 +82,6 @@ private:
TILE_GET_INFO_MEMBER(get_tile_info_BG_1);
TILE_GET_INFO_MEMBER(get_tile_info_BG_2);
TILE_GET_INFO_MEMBER(get_tile_info_FG);
DECLARE_VIDEO_START(madalien);
void madalien_palette(palette_device &palette) const;
uint32_t screen_update_madalien(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
inline int scan_helper(int col, int row, int section);

View File

@ -39,6 +39,10 @@ public:
DECLARE_INPUT_CHANGED_MEMBER(coin_inserted);
protected:
virtual void video_start() override;
virtual void video_reset() override;
private:
/* machine state */
@ -61,8 +65,6 @@ private:
DECLARE_WRITE8_MEMBER(mystston_video_control_w);
TILE_GET_INFO_MEMBER(get_bg_tile_info);
TILE_GET_INFO_MEMBER(get_fg_tile_info);
DECLARE_VIDEO_START(mystston);
DECLARE_VIDEO_RESET(mystston);
uint32_t screen_update_mystston(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
TIMER_CALLBACK_MEMBER(interrupt_callback);
void set_palette();

View File

@ -796,6 +796,7 @@ void atari_fdc_device::device_start()
// device_add_mconfig - add device configuration
//-------------------------------------------------
MACHINE_CONFIG_START(atari_fdc_device::device_add_mconfig)
MCFG_LEGACY_FLOPPY_4_DRIVES_ADD(atari_floppy_interface)
MACHINE_CONFIG_END
void atari_fdc_device::device_add_mconfig(machine_config &config)
{
legacy_floppy_image_device::add_4drives(config, &atari_floppy_interface);
}

View File

@ -53,9 +53,10 @@ rx01_device::rx01_device(const machine_config &mconfig, const char *tag, device_
// device_add_mconfig - add device configuration
//-------------------------------------------------
MACHINE_CONFIG_START(rx01_device::device_add_mconfig)
MCFG_LEGACY_FLOPPY_2_DRIVES_ADD(rx01_floppy_interface)
MACHINE_CONFIG_END
void rx01_device::device_add_mconfig(machine_config &config)
{
legacy_floppy_image_device::add_2drives(config, &rx01_floppy_interface);
}
//-------------------------------------------------
// device_start - device-specific startup

View File

@ -445,14 +445,15 @@ void _20pacgal_state::video_start()
*
*************************************/
MACHINE_CONFIG_START(_20pacgal_state::_20pacgal_video)
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MCFG_SCREEN_SIZE(SCREEN_WIDTH, SCREEN_HEIGHT)
MCFG_SCREEN_VISIBLE_AREA(0, SCREEN_WIDTH - 1, 0, SCREEN_HEIGHT - 1)
MCFG_SCREEN_UPDATE_DRIVER(_20pacgal_state, screen_update_20pacgal)
MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(*this, _20pacgal_state, vblank_irq))
void _20pacgal_state::_20pacgal_video(machine_config &config)
{
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_refresh_hz(60);
screen.set_vblank_time(ATTOSECONDS_IN_USEC(0));
screen.set_size(SCREEN_WIDTH, SCREEN_HEIGHT);
screen.set_visarea(0, SCREEN_WIDTH - 1, 0, SCREEN_HEIGHT - 1);
screen.set_screen_update(FUNC(_20pacgal_state::screen_update_20pacgal));
screen.screen_vblank().set(FUNC(_20pacgal_state::vblank_irq));
PALETTE(config, m_palette, FUNC(_20pacgal_state::starpal_init), NUM_PENS + NUM_PENS);
MACHINE_CONFIG_END
}

View File

@ -777,15 +777,15 @@ ioport_constructor asr733_device::device_input_ports() const
//-------------------------------------------------
MACHINE_CONFIG_START(asr733_device::device_add_mconfig)
void asr733_device::device_add_mconfig(machine_config &config)
{
PALETTE(config, "palette", palette_device::MONOCHROME_INVERTED);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
MCFG_SCREEN_UPDATE_DEVICE(DEVICE_SELF, asr733_device, screen_update)
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
MCFG_SCREEN_PALETTE("palette")
MACHINE_CONFIG_END
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
m_screen->set_refresh_hz(60);
m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */
m_screen->set_screen_update(FUNC(asr733_device::screen_update));
m_screen->set_size(640, 480);
m_screen->set_visarea(0, 640-1, 0, 480-1);
m_screen->set_palette("palette");
}

View File

@ -794,18 +794,18 @@ INPUT_PORTS_END
// device_add_mconfig - add device configuration
//-------------------------------------------------
MACHINE_CONFIG_START(vdt911_device::device_add_mconfig)
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_raw(11.004_MHz_XTAL, 700, 0, 560, 262, 0, 240);
screen.set_screen_update(FUNC(vdt911_device::screen_update));
screen.set_palette("palette");
void vdt911_device::device_add_mconfig(machine_config &config)
{
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
m_screen->set_raw(11.004_MHz_XTAL, 700, 0, 560, 262, 0, 240);
m_screen->set_screen_update(FUNC(vdt911_device::screen_update));
m_screen->set_palette("palette");
SPEAKER(config, "speaker").front_center();
MCFG_DEVICE_ADD("beeper", BEEP, 3250)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.50)
BEEP(config, m_beeper, 3250).add_route(ALL_OUTPUTS, "speaker", 0.50);
PALETTE(config, "palette", FUNC(vdt911_device::vdt911_palette), ARRAY_LENGTH(vdt911_pens), ARRAY_LENGTH(vdt911_colors));
MACHINE_CONFIG_END
}
ioport_constructor vdt911_device::device_input_ports() const
{

View File

@ -189,15 +189,15 @@ uint32_t abc80_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap,
//-------------------------------------------------
// MACHINE_CONFIG_START( abc80_video )
// machine_config( abc80_video )
//-------------------------------------------------
MACHINE_CONFIG_START(abc80_state::abc80_video)
MCFG_SCREEN_ADD(SCREEN_TAG, RASTER)
MCFG_SCREEN_UPDATE_DRIVER(abc80_state, screen_update)
MCFG_SCREEN_RAW_PARAMS(XTAL(11'980'800)/2, ABC80_HTOTAL, ABC80_HBEND, ABC80_HBSTART, ABC80_VTOTAL, ABC80_VBEND, ABC80_VBSTART)
void abc80_state::abc80_video(machine_config &config)
{
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
m_screen->set_screen_update(FUNC(abc80_state::screen_update));
m_screen->set_raw(XTAL(11'980'800)/2, ABC80_HTOTAL, ABC80_HBEND, ABC80_HBSTART, ABC80_VTOTAL, ABC80_VBEND, ABC80_VBSTART);
GFXDECODE(config, "gfxdecode", m_palette, gfx_abc80);
PALETTE(config, m_palette, palette_device::MONOCHROME);
MACHINE_CONFIG_END
}

View File

@ -153,23 +153,24 @@ void abc800c_state::abc800c_palette(palette_device &palette) const
//-------------------------------------------------
// MACHINE_CONFIG_START( abc800c_video )
// machine_config( abc800c_video )
//-------------------------------------------------
MACHINE_CONFIG_START(abc800c_state::abc800c_video)
MCFG_SCREEN_ADD(SCREEN_TAG, RASTER)
MCFG_SCREEN_UPDATE_DRIVER(abc800c_state, screen_update)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500))
MCFG_SCREEN_SIZE(480, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 480-1, 0, 480-1)
void abc800c_state::abc800c_video(machine_config &config)
{
screen_device &screen(SCREEN(config, SCREEN_TAG, SCREEN_TYPE_RASTER));
screen.set_screen_update(FUNC(abc800c_state::screen_update));
screen.set_refresh_hz(50);
screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500));
screen.set_size(480, 480);
screen.set_visarea(0, 480-1, 0, 480-1);
PALETTE(config, m_palette, FUNC(abc800c_state::abc800c_palette), 8);
SAA5052(config, m_trom, XTAL(12'000'000)/2);
m_trom->d_cb().set(FUNC(abc800c_state::char_ram_r));
m_trom->set_screen_size(40, 24, 40);
MACHINE_CONFIG_END
}
@ -273,7 +274,7 @@ uint32_t abc800m_state::screen_update(screen_device &screen, bitmap_rgb32 &bitma
//-------------------------------------------------
// MACHINE_CONFIG_START( abc800m_video )
// machine_config( abc800m_video )
//-------------------------------------------------
void abc800m_state::abc800m_video(machine_config &config)

View File

@ -175,7 +175,7 @@ WRITE_LINE_MEMBER( abc802_state::vs_w )
//-------------------------------------------------
// MACHINE_CONFIG_START( abc802_video )
// machine_config( abc802_video )
//-------------------------------------------------
void abc802_state::abc802_video(machine_config &config)

View File

@ -474,10 +474,11 @@ void abc806_state::abc806_palette(palette_device &palette) const
//-------------------------------------------------
// MACHINE_CONFIG_START( abc806_video )
// machine_config( abc806_video )
//-------------------------------------------------
MACHINE_CONFIG_START(abc806_state::abc806_video)
void abc806_state::abc806_video(machine_config &config)
{
MC6845(config, m_crtc, ABC800_CCLK);
m_crtc->set_screen(SCREEN_TAG);
m_crtc->set_show_border_area(true);
@ -486,9 +487,9 @@ MACHINE_CONFIG_START(abc806_state::abc806_video)
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)
MCFG_SCREEN_RAW_PARAMS(XTAL(12'000'000), 0x300, 0, 0x1e0, 0x13a, 0, 0xfa)
screen_device &screen(SCREEN(config, SCREEN_TAG, SCREEN_TYPE_RASTER));
screen.set_screen_update(FUNC(abc806_state::screen_update));
screen.set_raw(XTAL(12'000'000), 0x300, 0, 0x1e0, 0x13a, 0, 0xfa);
PALETTE(config, m_palette, FUNC(abc806_state::abc806_palette), 8);
MACHINE_CONFIG_END
}

View File

@ -39,12 +39,13 @@ DEFINE_DEVICE_TYPE(AGAT7VIDEO, agat7video_device, "agat7video", "Agat-7 Video")
// device_add_mconfig - add device configuration
//-------------------------------------------------
MACHINE_CONFIG_START(agat7video_device::device_add_mconfig)
MCFG_SCREEN_ADD("a7screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(XTAL(10'500'000), 672, 0, 512, 312, 0, 256)
MCFG_SCREEN_UPDATE_DRIVER(agat7video_device, screen_update)
MCFG_SCREEN_PALETTE(DEVICE_SELF)
MACHINE_CONFIG_END
void agat7video_device::device_add_mconfig(machine_config &config)
{
screen_device &a7screen(SCREEN(config, "a7screen", SCREEN_TYPE_RASTER));
a7screen.set_raw(XTAL(10'500'000), 672, 0, 512, 312, 0, 256);
a7screen.set_screen_update(FUNC(agat7video_device::screen_update));
a7screen.set_palette(DEVICE_SELF);
}
//**************************************************************************

View File

@ -58,20 +58,19 @@ static GFXDECODE_START( gfx_cshooter )
GFXDECODE_ENTRY( "fg_gfx", 0, char16layout, 0, 16 )
GFXDECODE_END
MACHINE_CONFIG_START(airraid_video_device::device_add_mconfig)
void airraid_video_device::device_add_mconfig(machine_config &config)
{
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 16, 256-1-16)
MCFG_SCREEN_UPDATE_DRIVER(airraid_video_device, screen_update_airraid)
MCFG_SCREEN_PALETTE("^palette")
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
m_screen->set_refresh_hz(60);
m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(0));
m_screen->set_size(256, 256);
m_screen->set_visarea(0, 256-1, 16, 256-1-16);
m_screen->set_screen_update(FUNC(airraid_video_device::screen_update_airraid));
m_screen->set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_cshooter);
MACHINE_CONFIG_END
}
void airraid_video_device::device_start()

View File

@ -1094,26 +1094,28 @@ void amiga_state::update_screenmode()
// MACHINE DRIVER FRAGMENTS
//**************************************************************************
MACHINE_CONFIG_START(amiga_state::pal_video)
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS
void amiga_state::pal_video(machine_config &config)
{
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
m_screen->set_raw
(
(amiga_state::CLK_28M_PAL / 4) * 2 * 2,
amiga_state::SCREEN_WIDTH, amiga_state::HBLANK, amiga_state::SCREEN_WIDTH,
amiga_state::SCREEN_HEIGHT_PAL, amiga_state::VBLANK_PAL, amiga_state::SCREEN_HEIGHT_PAL
)
MCFG_SCREEN_UPDATE_DRIVER(amiga_state, screen_update_amiga)
MCFG_SCREEN_PALETTE("palette")
MACHINE_CONFIG_END
);
m_screen->set_screen_update(FUNC(amiga_state::screen_update_amiga));
m_screen->set_palette(m_palette);
}
MACHINE_CONFIG_START(amiga_state::ntsc_video)
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS
void amiga_state::ntsc_video(machine_config &config)
{
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
m_screen->set_raw
(
(amiga_state::CLK_28M_NTSC / 4) * 2 * 2,
amiga_state::SCREEN_WIDTH, amiga_state::HBLANK, amiga_state::SCREEN_WIDTH,
amiga_state::SCREEN_HEIGHT_NTSC, amiga_state::VBLANK_NTSC, amiga_state::SCREEN_HEIGHT_NTSC
)
MCFG_SCREEN_UPDATE_DRIVER(amiga_state, screen_update_amiga)
MCFG_SCREEN_PALETTE("palette")
MACHINE_CONFIG_END
);
m_screen->set_screen_update(FUNC(amiga_state::screen_update_amiga));
m_screen->set_palette(m_palette);
}

View File

@ -1712,13 +1712,14 @@ void apollo_graphics_15i::register_vblank_callback()
MACHINE DRIVERS
***************************************************************************/
MACHINE_CONFIG_START(apollo_graphics_15i::device_add_mconfig)
void apollo_graphics_15i::device_add_mconfig(machine_config &config)
{
config.set_default_layout(layout_apollo_15i);
MCFG_SCREEN_ADD(m_screen, RASTER)
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK)
MCFG_SCREEN_RAW_PARAMS(68000000, 1346, 0, 1024, 841, 0, 800)
MCFG_SCREEN_UPDATE_DEVICE(DEVICE_SELF, apollo_graphics_15i, screen_update)
MACHINE_CONFIG_END
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
m_screen->set_video_attributes(VIDEO_UPDATE_AFTER_VBLANK);
m_screen->set_raw(68000000, 1346, 0, 1024, 841, 0, 800);
m_screen->set_screen_update(FUNC(apollo_graphics_15i::screen_update));
}
DEFINE_DEVICE_TYPE(APOLLO_GRAPHICS, apollo_graphics_15i, "apollo_graphics_15i", "Apollo Screen")
@ -1884,14 +1885,15 @@ void apollo_graphics_15i::device_reset()
//-------------------------------------------------
MACHINE_CONFIG_START(apollo_graphics_19i::device_add_mconfig)
void apollo_graphics_19i::device_add_mconfig(machine_config &config)
{
config.set_default_layout(layout_apollo);
PALETTE(config, "palette", palette_device::MONOCHROME);
MCFG_SCREEN_ADD(m_screen, RASTER)
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK)
MCFG_SCREEN_RAW_PARAMS(120000000, 1728, 0, 1280, 1066, 0, 1024)
MCFG_SCREEN_UPDATE_DEVICE(DEVICE_SELF, apollo_graphics_19i, screen_update)
MACHINE_CONFIG_END
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
m_screen->set_video_attributes(VIDEO_UPDATE_AFTER_VBLANK);
m_screen->set_raw(120000000, 1728, 0, 1280, 1066, 0, 1024);
m_screen->set_screen_update(FUNC(apollo_graphics_19i::screen_update));
}
DEFINE_DEVICE_TYPE(APOLLO_MONO19I, apollo_graphics_19i, "apollo_graphics_19i", "Apollo 19\" Monochrome Screen")

View File

@ -549,17 +549,18 @@ void bfm_adder2_device::adder2_memmap(address_map &map)
// device_add_mconfig - add device configuration
//-------------------------------------------------
MACHINE_CONFIG_START(bfm_adder2_device::device_add_mconfig)
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_SIZE( 400, 280)
MCFG_SCREEN_VISIBLE_AREA( 0, 400-1, 0, 280-1)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_PALETTE("palette")
MCFG_SCREEN_UPDATE_DEVICE(DEVICE_SELF, bfm_adder2_device, update_screen)
MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(*this, bfm_adder2_device, adder2_vbl_w)) // board has a VBL IRQ
void bfm_adder2_device::device_add_mconfig(machine_config &config)
{
M6809(config, m_cpu, ADDER_CLOCK/4); // adder2 board 6809 CPU at 2 Mhz
m_cpu->set_addrmap(AS_PROGRAM, &bfm_adder2_device::adder2_memmap); // setup adder2 board memorymap
MCFG_PALETTE_ADD("palette", 16)
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_size(400, 280);
screen.set_visarea(0, 400-1, 0, 280-1);
screen.set_refresh_hz(50);
screen.set_palette("palette");
screen.set_screen_update(FUNC(bfm_adder2_device::update_screen));
screen.screen_vblank().set(FUNC(bfm_adder2_device::adder2_vbl_w)); // board has a VBL IRQ
MCFG_DEVICE_ADD("adder2", M6809, ADDER_CLOCK/4 ) // adder2 board 6809 CPU at 2 Mhz
MCFG_DEVICE_PROGRAM_MAP(adder2_memmap) // setup adder2 board memorymap
MACHINE_CONFIG_END
PALETTE(config, "palette").set_entries(16);
}

View File

@ -288,22 +288,22 @@ INTERRUPT_GEN_MEMBER( bfm_dm01_device::nmi_line_assert )
m_matrixcpu->set_input_line(INPUT_LINE_NMI, ASSERT_LINE);
}
MACHINE_CONFIG_START(bfm_dm01_device::device_add_mconfig)
MCFG_DEVICE_ADD("matrix", M6809, 2000000 ) /* matrix board 6809 CPU at 2 Mhz ?? I don't know the exact freq.*/
MCFG_DEVICE_PROGRAM_MAP(bfm_dm01_memmap)
MCFG_DEVICE_PERIODIC_INT_DRIVER(bfm_dm01_device, nmi_line_assert, 1500 ) /* generate 1500 NMI's per second ?? what is the exact freq?? */
void bfm_dm01_device::device_add_mconfig(machine_config &config)
{
M6809(config, m_matrixcpu, 2000000); /* matrix board 6809 CPU at 2 Mhz ?? I don't know the exact freq.*/
m_matrixcpu->set_addrmap(AS_PROGRAM, &bfm_dm01_device::bfm_dm01_memmap);
m_matrixcpu->set_periodic_int(FUNC(bfm_dm01_device::nmi_line_assert), attotime::from_hz(1500)); /* generate 1500 NMI's per second ?? what is the exact freq?? */
MCFG_PALETTE_ADD("palette_lcd", 3)
PALETTE(config, m_palette).set_entries(3);
MCFG_SCREEN_ADD("dmd", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MCFG_SCREEN_SIZE(65*2, 21*2)
MCFG_SCREEN_VISIBLE_AREA(0, 65*2-1, 0, 21*2-1)
MCFG_SCREEN_UPDATE_DRIVER(bfm_dm01_device, screen_update)
MCFG_SCREEN_PALETTE("palette_lcd")
MACHINE_CONFIG_END
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
m_screen->set_refresh_hz(60);
m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(0));
m_screen->set_size(65*2, 21*2);
m_screen->set_visarea(0, 65*2-1, 0, 21*2-1);
m_screen->set_screen_update(FUNC(bfm_dm01_device::screen_update));
m_screen->set_palette(m_palette);
}
///////////////////////////////////////////////////////////////////////////

View File

@ -227,17 +227,18 @@ GFXDECODE_END
MACHINE_DRIVER( cgc7900_video )
-------------------------------------------------*/
MACHINE_CONFIG_START(cgc7900_state::cgc7900_video)
MCFG_SCREEN_ADD(SCREEN_TAG, RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
MCFG_SCREEN_UPDATE_DRIVER(cgc7900_state, screen_update)
MCFG_SCREEN_SIZE(1024, 768)
MCFG_SCREEN_VISIBLE_AREA(0, 1024-1, 0, 768-1)
MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(*this, cgc7900_state, irq<0xc>))
void cgc7900_state::cgc7900_video(machine_config &config)
{
screen_device &screen(SCREEN(config, SCREEN_TAG, SCREEN_TYPE_RASTER));
screen.set_refresh_hz(60);
screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */
screen.set_screen_update(FUNC(cgc7900_state::screen_update));
screen.set_size(1024, 768);
screen.set_visarea(0, 1024-1, 0, 768-1);
screen.screen_vblank().set(FUNC(cgc7900_state::irq<0xc>));
GFXDECODE(config, "gfxdecode", m_palette, gfx_cgc7900);
PALETTE(config, m_palette, FUNC(cgc7900_state::cgc7900_palette), 8);
TIMER(config, "blink").configure_periodic(FUNC(cgc7900_state::blink_tick), attotime::from_hz(XTAL(28'480'000)/7500000));
MACHINE_CONFIG_END
}

View File

@ -195,21 +195,22 @@ void decodmd_type1_device::decodmd1_io_map(address_map &map)
map(0x00, 0xff).rw(FUNC(decodmd_type1_device::dmd_port_r), FUNC(decodmd_type1_device::dmd_port_w));
}
MACHINE_CONFIG_START(decodmd_type1_device::device_add_mconfig)
void decodmd_type1_device::device_add_mconfig(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("dmdcpu", Z80, XTAL(8'000'000) / 2)
MCFG_DEVICE_PROGRAM_MAP(decodmd1_map)
MCFG_DEVICE_IO_MAP(decodmd1_io_map)
Z80(config, m_cpu, XTAL(8'000'000) / 2);
m_cpu->set_addrmap(AS_PROGRAM, &decodmd_type1_device::decodmd1_map);
m_cpu->set_addrmap(AS_IO, &decodmd_type1_device::decodmd1_io_map);
config.m_minimum_quantum = attotime::from_hz(50);
TIMER(config, "nmi_timer").configure_periodic(FUNC(decodmd_type1_device::dmd_nmi), attotime::from_hz(2000)); // seems a lot
MCFG_SCREEN_ADD("dmd", LCD)
MCFG_SCREEN_SIZE(128, 16)
MCFG_SCREEN_VISIBLE_AREA(0, 128-1, 0, 16-1)
MCFG_SCREEN_UPDATE_DRIVER(decodmd_type1_device, screen_update)
MCFG_SCREEN_REFRESH_RATE(50)
screen_device &dmd(SCREEN(config, "dmd", SCREEN_TYPE_LCD));
dmd.set_size(128, 16);
dmd.set_visarea(0, 128-1, 0, 16-1);
dmd.set_screen_update(FUNC(decodmd_type1_device::screen_update));
dmd.set_refresh_hz(50);
RAM(config, RAM_TAG).set_default_size("8K");
@ -220,7 +221,7 @@ MACHINE_CONFIG_START(decodmd_type1_device::device_add_mconfig)
m_bitlatch->q_out_cb<5>().set(FUNC(decodmd_type1_device::rowdata_w));
m_bitlatch->q_out_cb<6>().set(FUNC(decodmd_type1_device::rowclock_w));
m_bitlatch->q_out_cb<7>().set(FUNC(decodmd_type1_device::test_w));
MACHINE_CONFIG_END
}
decodmd_type1_device::decodmd_type1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)

Some files were not shown because too many files have changed in this diff Show More