TRACKS(70/[80]) SECTORS([9]/18) SECTOR_LENGTH([512]) FIRST_SECTOR_ID([1]) ) LEGACY_FLOPPY_OPTIONS_END static const floppy_interface apricot_floppy_interface = { DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, FLOPPY_STANDARD_3_5_DSDD, LEGACY_FLOPPY_OPTIONS_NAME(apricot), "floppy_3_5", NULL }; static MACHINE_CONFIG_START( apricot, apricot_state ) /* basic machine hardware */ MCFG_CPU_ADD("maincpu", I8086, XTAL_15MHz / 3) MCFG_CPU_PROGRAM_MAP(apricot_mem) MCFG_CPU_IO_MAP(apricot_io) // MCFG_CPU_ADD("ic71", I8089, XTAL_15MHz / 3) /* video hardware */ MCFG_SCREEN_ADD("screen", RASTER)
*p++ = BIT(gfx, 1); *p++ = BIT(gfx, 0); } } ma+=64; } return 0; } /**********************************************************************************************************/ static const floppy_interface sorcerer_floppy_interface = { FLOPPY_STANDARD_8_SSSD, LEGACY_FLOPPY_OPTIONS_NAME(sorcerer), "floppy_8" }; static DEVICE_INPUT_DEFAULTS_START( terminal ) DEVICE_INPUT_DEFAULTS( "RS232_TXBAUD", 0xff, RS232_BAUD_1200 ) DEVICE_INPUT_DEFAULTS( "RS232_RXBAUD", 0xff, RS232_BAUD_1200 ) DEVICE_INPUT_DEFAULTS( "RS232_STARTBITS", 0xff, RS232_STARTBITS_1 ) DEVICE_INPUT_DEFAULTS( "RS232_DATABITS", 0xff, RS232_DATABITS_8 ) DEVICE_INPUT_DEFAULTS( "RS232_PARITY", 0xff, RS232_PARITY_NONE ) DEVICE_INPUT_DEFAULTS( "RS232_STOPBITS", 0xff, RS232_STOPBITS_2 ) DEVICE_INPUT_DEFAULTS_END static MACHINE_CONFIG_START( sorcerer, sorcerer_state ) /* basic machine hardware */ MCFG_CPU_ADD("maincpu", Z80, ES_CPU_CLOCK)
#define VERBOSE 0 #endif #define LOG_MMC(x) do { if (VERBOSE) logerror x; } while (0) //----------------------------------------------- // // Disk drive implementation // //----------------------------------------------- static const floppy_interface nes_floppy_interface = { FLOPPY_STANDARD_5_25_DSHD, LEGACY_FLOPPY_OPTIONS_NAME(nes_only), "floppy_5_25" }; static MACHINE_CONFIG_FRAGMENT( nes_disksys ) MCFG_LEGACY_FLOPPY_DRIVE_ADD(FLOPPY_0, nes_floppy_interface) MACHINE_CONFIG_END //------------------------------------------------- // machine_config_additions - device-specific // machine configurations //------------------------------------------------- machine_config_constructor nes_disksys_device::device_mconfig_additions() const { return MACHINE_CONFIG_NAME( nes_disksys );
#include "formats/basicdsk.h" static LEGACY_FLOPPY_OPTIONS_START( rx01 ) LEGACY_FLOPPY_OPTION(rx01, "img", "RX01 image", basicdsk_identify_default, basicdsk_construct_default, nullptr, HEADS([1]) TRACKS([77]) SECTORS([26]) SECTOR_LENGTH([128]) FIRST_SECTOR_ID([1])) LEGACY_FLOPPY_OPTIONS_END static const floppy_interface rx01_floppy_interface = { FLOPPY_STANDARD_8_SSSD, LEGACY_FLOPPY_OPTIONS_NAME(rx01), "floppy_8" }; MACHINE_CONFIG_FRAGMENT( rx01 ) MCFG_LEGACY_FLOPPY_2_DRIVES_ADD(rx01_floppy_interface) MACHINE_CONFIG_END //************************************************************************** // DEVICE DEFINITIONS //************************************************************************** const device_type RX01 = &device_creator<rx01_device>; //-------------------------------------------------
HEADS([2]) TRACKS([80]) SECTORS([5]) SECTOR_LENGTH([1024]) FIRST_SECTOR_ID([1])) LEGACY_FLOPPY_OPTIONS_END static const floppy_interface partner_floppy_interface = { DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, FLOPPY_STANDARD_5_25_DSHD, LEGACY_FLOPPY_OPTIONS_NAME(partner), "floppy_5_25", NULL }; /* F4 Character Displayer */ static const gfx_layout partner_charlayout = { 8, 8, /* 8 x 8 characters */ 512, /* 512 characters */ 1, /* 1 bits per pixel */ { 0 }, /* no bitplanes */ /* x offsets */ { 0, 1, 2, 3, 4, 5, 6, 7 }, /* y offsets */ { 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8 },
} UINT8 apple2gs_adc_read(device_t *device) { return 0x80; } static const floppy_interface apple2gs_floppy35_floppy_interface = { DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, FLOPPY_STANDARD_5_25_DSHD, LEGACY_FLOPPY_OPTIONS_NAME(apple35_iigs), "floppy_3_5", NULL }; static const floppy_interface apple2gs_floppy525_floppy_interface = { DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, FLOPPY_STANDARD_5_25_DSHD, LEGACY_FLOPPY_OPTIONS_NAME(apple2), "floppy_5_25", NULL
} } m_fdc_latch = data; break; } } static const floppy_interface vtech1_floppy_interface = { DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, FLOPPY_STANDARD_5_25_DSHD, LEGACY_FLOPPY_OPTIONS_NAME(vtech1_only), NULL, NULL }; /*************************************************************************** PRINTER ***************************************************************************/ WRITE_LINE_MEMBER(vtech1_state::write_centronics_busy) { m_centronics_busy = state; } READ8_MEMBER(vtech1_state::vtech1_printer_r) {
HEADS([1]) TRACKS([40]) SECTORS([10]) SECTOR_LENGTH([512]) FIRST_SECTOR_ID([0])) LEGACY_FLOPPY_OPTIONS_END static const floppy_interface bw12_floppy_interface = { DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, FLOPPY_STANDARD_5_25_SSDD, LEGACY_FLOPPY_OPTIONS_NAME(bw12), NULL, NULL }; static LEGACY_FLOPPY_OPTIONS_START( bw14 ) LEGACY_FLOPPY_OPTION(bw14, "dsk", "180KB BW 12 SSDD", basicdsk_identify_default, basicdsk_construct_default, NULL, HEADS([1]) TRACKS([40]) SECTORS([18]) SECTOR_LENGTH([256]) FIRST_SECTOR_ID([0])) LEGACY_FLOPPY_OPTION(bw14, "dsk", "360KB BW 14 DSDD", basicdsk_identify_default, basicdsk_construct_default, NULL, HEADS([2]) TRACKS([40]) SECTORS([18])
LEGACY_FLOPPY_OPTIONS_END //------------------------------------------------- // floppy_interface c8280_floppy_interface //------------------------------------------------- static const floppy_interface c8280_floppy_interface = { DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, FLOPPY_STANDARD_8_DSDD, LEGACY_FLOPPY_OPTIONS_NAME(c8280), "floppy_8", NULL }; //------------------------------------------------- // MACHINE_CONFIG_FRAGMENT( c8280 ) //------------------------------------------------- static MACHINE_CONFIG_FRAGMENT( c8280 ) MCFG_CPU_ADD(M6502_DOS_TAG, M6502, 1000000) MCFG_CPU_PROGRAM_MAP(c8280_main_mem) MCFG_RIOT6532_ADD(M6532_0_TAG, 1000000, riot0_intf) MCFG_RIOT6532_ADD(M6532_1_TAG, 1000000, riot1_intf)
TRACKS([40]) SECTORS([9]) SECTOR_LENGTH([512]) FIRST_SECTOR_ID([1])) LEGACY_FLOPPY_OPTIONS_END static const floppy_interface osbexec_floppy_interface = { DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, FLOPPY_STANDARD_5_25_SSDD_40, LEGACY_FLOPPY_OPTIONS_NAME(osbexec), NULL, NULL }; TIMER_CALLBACK_MEMBER(osbexec_state::osbexec_video_callback) { int y = machine().primary_screen->vpos(); /* Start of frame */ if ( y == 0 ) { /* Clear CB1 on PIA @ UD12 */ m_pia_0->cb1_w(0); }
TYPE DEFINITIONS ***************************************************************************/ /*************************************************************************** LOCAL VARIABLES ***************************************************************************/ static const floppy_interface coco_floppy_interface = { DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, FLOPPY_STANDARD_5_25_DSHD, LEGACY_FLOPPY_OPTIONS_NAME(coco), NULL, NULL }; /*************************************************************************** IMPLEMENTATION ***************************************************************************/ /*------------------------------------------------- real_time_clock -------------------------------------------------*/ coco_rtc_type_t coco_fdc_device::real_time_clock() { coco_rtc_type_t result = (coco_rtc_type_t) machine().root_device().ioport("real_time_clock")->read_safe(RTC_NONE);
HEADS([2]) TRACKS([82]) SECTORS([5]) SECTOR_LENGTH([1024]) FIRST_SECTOR_ID([1])) LEGACY_FLOPPY_OPTIONS_END static const floppy_interface mycom_floppy_interface = { DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, FLOPPY_STANDARD_5_25_DSHD, LEGACY_FLOPPY_OPTIONS_NAME(mycom), NULL, NULL }; static const wd17xx_interface wd1771_intf = { DEVCB_NULL, DEVCB_NULL, // no information available DEVCB_NULL, {FLOPPY_0, FLOPPY_1, NULL, NULL} }; /************************************* *
HEADS([1]) TRACKS([40]) SECTORS([16]) SECTOR_LENGTH([256]) FIRST_SECTOR_ID([1])) LEGACY_FLOPPY_OPTIONS_END const floppy_interface abc830_floppy_interface = { DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, FLOPPY_STANDARD_5_25_SSDD_40, LEGACY_FLOPPY_OPTIONS_NAME(abc830), "abc830", NULL }; //------------------------------------------------- // floppy_interface abc832_floppy_interface //------------------------------------------------- static LEGACY_FLOPPY_OPTIONS_START( abc832 ) LEGACY_FLOPPY_OPTION(abc832, "dsk", "Luxor ABC 832/834", basicdsk_identify_default, basicdsk_construct_default, NULL, HEADS([2]) TRACKS([80]) SECTORS([16]) SECTOR_LENGTH([256])
HEADS([1]) TRACKS([40]) SECTORS([9]) SECTOR_LENGTH([512]) FIRST_SECTOR_ID([1])) LEGACY_FLOPPY_OPTIONS_END static const floppy_interface osborne1_floppy_interface = { DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, FLOPPY_STANDARD_5_25_SSDD_40, LEGACY_FLOPPY_OPTIONS_NAME(osborne1), "floppy_5_25", NULL }; /* F4 Character Displayer */ static const gfx_layout osborne1_charlayout = { 8, 10, /* 8 x 10 characters */ 128, /* 128 characters */ 1, /* 1 bits per pixel */ { 0 }, /* no bitplanes */ /* x offsets */ { 0, 1, 2, 3, 4, 5, 6, 7 }, /* y offsets */ { 0*128*8, 1*128*8, 2*128*8, 3*128*8, 4*128*8, 5*128*8, 6*128*8, 7*128*8, 8*128*8, 9*128*8 },
HEADS([1]) TRACKS([80]) SECTORS([5]) SECTOR_LENGTH([512]) FIRST_SECTOR_ID([0])) LEGACY_FLOPPY_OPTIONS_END static const floppy_interface mirage_floppy_interface = { DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, FLOPPY_STANDARD_3_5_DSDD, LEGACY_FLOPPY_OPTIONS_NAME(mirage), NULL, NULL }; const wd17xx_interface mirage_wd17xx_interface = { DEVCB_NULL, // dden DEVCB_CPU_INPUT_LINE("maincpu", INPUT_LINE_NMI), // intrq DEVCB_NULL, // drq {FLOPPY_0, NULL, NULL, NULL} }; static MACHINE_CONFIG_START( mirage, mirage_state ) MCFG_CPU_ADD("maincpu", M6809E, 4000000) MCFG_CPU_PROGRAM_MAP(mirage_map)
* When all data had been send the uPD launch an INT * The Z80 Disc2 writes in FF12 a flag * if the flag is set, end of DMA function, * At this point the Z80 can read the RESULT in port 61h */ // Define the hardware of the disk const floppy_interface hector_disc2_floppy_interface = { DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, FLOPPY_STANDARD_5_25_DSHD, LEGACY_FLOPPY_OPTIONS_NAME(hector_disc2), NULL, NULL }; /*****************************************************************************/ /****** Management of the uPD765 for interface with floppy images************/ /*****************************************************************************/ /* Hector Disc II uPD765 interface use interrupts and DMA! */ const upd765_interface hector_disc2_upd765_interface = { DEVCB_LINE(disc2_fdc_interrupt), DEVCB_LINE(hector_disc2_fdc_dma_irq), NULL, UPD765_RDY_PIN_NOT_CONNECTED, {FLOPPY_0,FLOPPY_1, NULL, NULL}
SECTORS([16]) SECTOR_LENGTH([512]) FIRST_SECTOR_ID([1])) LEGACY_FLOPPY_OPTION(uniflexdsdd8inch, "dsk", "UNIFlex 8 inch ds dd floppy image", basicdsk_identify_default, basicdsk_construct_default, NULL, HEADS([1]) TRACKS([77]) SECTORS([32]) SECTOR_LENGTH([512]) FIRST_SECTOR_ID([1])) LEGACY_FLOPPY_OPTIONS_END static const floppy_interface swtpc09_floppy_interface = { FLOPPY_STANDARD_5_25_DSHD, LEGACY_FLOPPY_OPTIONS_NAME(swtpc09), NULL }; WRITE_LINE_MEMBER(swtpc09_state::write_acia_clock) { m_acia->write_txc(state); m_acia->write_rxc(state); } /*************************************************************************** Machine definitions ****************************************************************************/ /* Machine driver */ /* MPU09, MPID, MPS2 DMF2 */
TRACKS([80]) SECTORS([9]) SECTOR_LENGTH([512]) FIRST_SECTOR_ID([1])) #endif LEGACY_FLOPPY_OPTIONS_END static const floppy_interface concept_floppy_interface = { DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, FLOPPY_STANDARD_5_25_DSHD, LEGACY_FLOPPY_OPTIONS_NAME(concept), NULL, NULL }; /* concept machine */ static MACHINE_CONFIG_START( concept, concept_state ) /* basic machine hardware */ MCFG_CPU_ADD("maincpu", M68000, 8182000) /* 16.364 MHz / 2 */ MCFG_CPU_PROGRAM_MAP(concept_memmap) MCFG_CPU_VBLANK_INT_DRIVER("screen", concept_state, concept_interrupt) MCFG_QUANTUM_TIME(attotime::from_hz(60)) /* video hardware */ MCFG_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
#define PEBSLOT4 "slot4" #define PEBSLOT5 "slot5" #define PEBSLOT6 "slot6" #define PEBSLOT7 "slot7" #define PEBSLOT8 "slot8" // TODO: Connect other lines (think about how to propagate to the controller) static const floppy_interface ti99_4_floppy_interface = { DEVCB_DEVICE_LINE_MEMBER( DEVICE_SELF_OWNER, peribox_device, indexhole ), // Index hole (floppy out, line) DEVCB_NULL, // Motor (floppy in, line) DEVCB_NULL, // Track 0 (out, line) DEVCB_NULL, // Write protect (out, line) DEVCB_NULL, // Ready (out, line) FLOPPY_STANDARD_5_25_DSHD, // type LEGACY_FLOPPY_OPTIONS_NAME(ti99), // image formats NULL, // interface NULL // display info }; peribox_device::peribox_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : bus8z_device(mconfig, PERIBOX, "Peripheral expansion box", tag, owner, clock, "peribox", __FILE__) { for (int i=2; i <= 8; i++) m_slot[i] = NULL; } peribox_device::peribox_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : bus8z_device(mconfig, type, name, tag, owner, clock, shortname, source) { for (int i=2; i <= 8; i++) m_slot[i] = NULL; }
else { fdc->serin_delay = 0; a800_serial_command(device); } } static const floppy_interface atari_floppy_interface = { DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, FLOPPY_STANDARD_5_25_DSHD, LEGACY_FLOPPY_OPTIONS_NAME(atari_only), "floppy_5_25", NULL }; static MACHINE_CONFIG_FRAGMENT( atari_fdc ) MCFG_LEGACY_FLOPPY_4_DRIVES_ADD(atari_floppy_interface) MCFG_SOFTWARE_LIST_ADD("flop_list","a800_flop") MACHINE_CONFIG_END device_t *atari_floppy_get_device_child(device_t *device,int drive) { switch(drive) { case 0 : return device->subdevice(FLOPPY_0); case 1 : return device->subdevice(FLOPPY_1); case 2 : return device->subdevice(FLOPPY_2);
HEADS([1]) TRACKS([80]) SECTORS([10]) SECTOR_LENGTH([512]) FIRST_SECTOR_ID([0])) LEGACY_FLOPPY_OPTIONS_END static const floppy_interface ms0515_floppy_interface = { DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, FLOPPY_STANDARD_5_25_DSHD, LEGACY_FLOPPY_OPTIONS_NAME(ms0515), NULL, NULL }; UINT32 ms0515_state::screen_update_ms0515(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) { int y, x, b; int addr = 0; if (BIT(m_sysreg,3)) { for (y = 0; y < 200; y++) { int horpos = 0; for (x = 0; x < 40; x++) { UINT16 code = (m_video_ram[addr++] << 8);
{ if (m_nden) i8237_dreq2_w(m_dmac, m_ddrq); else i8237_dreq2_w(m_dmac, CLEAR_LINE); } static const floppy_interface floppy_intf = { DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, FLOPPY_STANDARD_5_25_DSDD, LEGACY_FLOPPY_OPTIONS_NAME(pc), "floppy_5_25", NULL }; WRITE_LINE_MEMBER( pc1512_state::fdc_int_w ) { m_dint = state; update_fdc_int(); } WRITE_LINE_MEMBER( pc1512_state::fdc_drq_w ) { m_ddrq = state; update_fdc_drq(); }
HEADS([2]) TRACKS([80]) SECTORS([5]) SECTOR_LENGTH([1024]) FIRST_SECTOR_ID([1])) LEGACY_FLOPPY_OPTIONS_END static const floppy_interface pk8020_floppy_interface = { DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, FLOPPY_STANDARD_5_25_DSHD, LEGACY_FLOPPY_OPTIONS_NAME(pk8020), "floppy_5_25", NULL }; static const wd17xx_interface pk8020_wd17xx_interface = { DEVCB_LINE_VCC, DEVCB_NULL, DEVCB_NULL, { FLOPPY_0, FLOPPY_1, FLOPPY_2, FLOPPY_3 } }; /* F4 Character Displayer */ static const gfx_layout pk8020_charlayout = {
beta_disk_state *beta = get_safe_token(device); if (beta->betadisk_active==1) { wd17xx_data_w(beta->wd179x, space, offset, data); } } static const floppy_interface beta_floppy_interface = { DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, FLOPPY_STANDARD_5_25_DSHD, LEGACY_FLOPPY_OPTIONS_NAME(trd), NULL, NULL }; static MACHINE_CONFIG_FRAGMENT( beta_disk ) MCFG_WD2793_ADD("wd179x", beta_wd17xx_interface ) // KR1818VG93 MCFG_LEGACY_FLOPPY_4_DRIVES_ADD(beta_floppy_interface) MACHINE_CONFIG_END ROM_START( beta_disk ) ROM_REGION( 0x60000, "beta", 0 ) ROM_LOAD( "trd501.rom", 0x00000, 0x4000, CRC(3e3cdd4c) SHA1(8303ba0cc79daa6c04cd1e6ce27e8b6886a3f0de)) ROM_LOAD( "trd503zxvgs.rom",0x00000, 0x4000, CRC(b90ee684) SHA1(c78e1b36812fb2b3e7a62e66049c850d27de74a6)) ROM_LOAD( "trd503m.rom", 0x00000, 0x4000, CRC(2f97fe06) SHA1(6b9decc07d5d7322c6c283f5fe950f530a42d70d))
static ADDRESS_MAP_START(cru_map_v, AS_IO, 8, ti990_4_state ) AM_RANGE(0x10, 0x11) AM_DEVREAD("vdt911", vdt911_device, cru_r) AM_RANGE(0x80, 0x8f) AM_DEVWRITE("vdt911", vdt911_device, cru_w) AM_RANGE(0x08, 0x0b) AM_DEVREAD( "fd800", fd800_legacy_device, cru_r ) AM_RANGE(0x40, 0x5f) AM_DEVWRITE( "fd800", fd800_legacy_device, cru_w ) AM_RANGE(0x1fe, 0x1ff) AM_READ( panel_read ) AM_RANGE(0xff0, 0xfff) AM_WRITE( panel_write ) ADDRESS_MAP_END static const floppy_interface ti990_4_floppy_interface = { FLOPPY_STANDARD_8_DSSD, LEGACY_FLOPPY_OPTIONS_NAME(fd800), NULL }; MACHINE_RESET_MEMBER(ti990_4_state,ti990_4) { hold_load(); reset_int_lines(); m_ckon_state = false; m_maincpu->set_ready(ASSERT_LINE); } DRIVER_INIT_MEMBER(ti990_4_state, ti990_4) { m_nmi_timer = timer_alloc(NMI_TIMER_ID); }
HEADS([2]) TRACKS([40]) SECTORS([16]) SECTOR_LENGTH([256]) FIRST_SECTOR_ID([1])) LEGACY_FLOPPY_OPTIONS_END static const floppy_interface x1_floppy_interface = { DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, FLOPPY_STANDARD_5_25_DSDD_40, LEGACY_FLOPPY_OPTIONS_NAME(x1), "floppy_5_25", NULL }; #if 0 static const c6280_interface c6280_config = { "pce_cpu" }; #endif static MACHINE_CONFIG_START( x1twin, x1twin_state ) /* basic machine hardware */ MCFG_CPU_ADD("x1_cpu", Z80, X1_MAIN_CLOCK/4)
//------------------------------------------------- WRITE_LINE_MEMBER( base_c1571_device::wpt_w ) { m_via0->write_ca2(!state); } static const floppy_interface c1571_floppy_interface = { DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_DEVICE_LINE_MEMBER(DEVICE_SELF_OWNER, base_c1571_device, wpt_w), DEVCB_NULL, FLOPPY_STANDARD_5_25_DSDD, LEGACY_FLOPPY_OPTIONS_NAME(c1571), "floppy_5_25", NULL }; //------------------------------------------------- // floppy_interface c1570_floppy_interface //------------------------------------------------- static const floppy_interface c1570_floppy_interface = { DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_DEVICE_LINE_MEMBER(DEVICE_SELF_OWNER, base_c1571_device, wpt_w),
HEADS([2]) TRACKS([40]) SECTORS([18]) SECTOR_LENGTH([256]) FIRST_SECTOR_ID([1])) LEGACY_FLOPPY_OPTIONS_END static const floppy_interface m5_floppy_interface = { DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, FLOPPY_STANDARD_5_25_DSDD_40, LEGACY_FLOPPY_OPTIONS_NAME(m5), NULL, NULL }; static const struct upd765_interface fdc_intf = { DEVCB_CPU_INPUT_LINE(Z80_FD5_TAG, INPUT_LINE_IRQ0), DEVCB_NULL, NULL, UPD765_RDY_PIN_CONNECTED, { FLOPPY_0, NULL, NULL, NULL } }; //-------------------------------------------------
apple525_set_enable_lines, /* set_enable_lines */ apple525_read_data, /* read_data */ apple525_write_data, /* write_data */ apple525_read_status /* read_status */ }; static const floppy_interface floppy_interface = { DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, FLOPPY_STANDARD_5_25_DSHD, LEGACY_FLOPPY_OPTIONS_NAME(apple2), "floppy_5_25", NULL }; MACHINE_CONFIG_FRAGMENT( diskii ) MCFG_APPLEFDC_ADD(FDC_TAG, fdc_interface) MCFG_LEGACY_FLOPPY_APPLE_2_DRIVES_ADD(floppy_interface,15,16) MACHINE_CONFIG_END MACHINE_CONFIG_FRAGMENT( iwmflop ) MCFG_IWM_ADD(FDC_TAG, fdc_interface) MCFG_LEGACY_FLOPPY_APPLE_2_DRIVES_ADD(floppy_interface,15,16) MACHINE_CONFIG_END ROM_START( diskii )
static const kr2376_interface lx388_kr2376_interface = { 50000, NULL }; static const floppy_interface z80netf_floppy_interface = { DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, FLOPPY_STANDARD_5_25_DSHD, LEGACY_FLOPPY_OPTIONS_NAME(z80ne), NULL, NULL }; static const mc6847_interface z80net_mc6847_intf = { DEVCB_HANDLER(lx388_mc6847_videoram_r), DEVCB_LINE_GND, DEVCB_LINE_GND, DEVCB_LINE_GND, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_LINE_GND, DEVCB_LINE_GND,