Previous 199869 Revisions Next

r19537 Thursday 13th December, 2012 at 20:47:44 UTC by Curt Coder
(MESS) fd2000: WIP. (nw)
[src/mess/machine]fd2000.c

trunk/src/mess/machine/fd2000.c
r19536r19537
2626//  MACROS / CONSTANTS
2727//**************************************************************************
2828
29#define M6502_TAG      "m6502"
30#define M6522_TAG      "m6522"
31#define DP8473_TAG      "dp8473"
29#define G65SC02PI2_TAG   "m6502"
30#define R65C02P4_TAG   "m6502"
31#define G65SC22P2_TAG   "m6522"
32#define DP8473V_TAG      "dp8473"
3233#define PC8477AV1_TAG   "pc8477av1"
34#define DS1216E_TAG      "ds1216e"
3335
3436
3537
r19536r19537
4648//-------------------------------------------------
4749
4850ROM_START( fd2000 )
49   ROM_REGION( 0x8000, M6502_TAG, 0 )
51   ROM_REGION( 0x8000, G65SC02PI2_TAG, 0 )
5052   ROM_DEFAULT_BIOS( "v140" )
5153   ROM_SYSTEM_BIOS( 0, "v134", "Version 1.34" )
5254   ROMX_LOAD( "cmd fd-2000 dos v1.34 fd-350026.bin", 0x0000, 0x8000, CRC(859a5edc) SHA1(487fa82a7977e5208d5088f3580f34e8c89560d1), ROM_BIOS(1) )
r19536r19537
6062//-------------------------------------------------
6163
6264ROM_START( fd4000 )
63   ROM_REGION( 0x8000, M6502_TAG, 0 )
65   ROM_REGION( 0x8000, R65C02P4_TAG, 0 )
6466   ROM_DEFAULT_BIOS( "v140" )
6567   ROM_SYSTEM_BIOS( 0, "v134", "Version 1.34" )
6668   ROMX_LOAD( "cmd fd-4000 dos v1.34 fd-350022.bin", 0x0000, 0x8000, CRC(1f4820c1) SHA1(7a2966662e7840fd9377549727ccba62e4349c6f), ROM_BIOS(1) )
r19536r19537
9294
9395static ADDRESS_MAP_START( fd2000_mem, AS_PROGRAM, 8, fd2000_device )
9496   AM_RANGE(0x0000, 0x3fff) AM_RAM
95   AM_RANGE(0x4000, 0x400f) AM_MIRROR(0xbf0) AM_DEVREADWRITE(M6522_TAG, via6522_device, read, write)
96   AM_RANGE(0x4e00, 0x4e07) AM_MIRROR(0x1f8) AM_DEVICE(DP8473_TAG, dp8473_device, map)
97   AM_RANGE(0x4000, 0x400f) AM_MIRROR(0xbf0) AM_DEVREADWRITE(G65SC22P2_TAG, via6522_device, read, write)
98   AM_RANGE(0x4e00, 0x4e07) AM_MIRROR(0x1f8) AM_DEVICE(DP8473V_TAG, dp8473_device, map)
9799   AM_RANGE(0x5000, 0x7fff) AM_RAM
98   AM_RANGE(0x8000, 0xffff) AM_ROM AM_REGION(M6502_TAG, 0)
100   AM_RANGE(0x8000, 0xffff) AM_ROM AM_REGION(G65SC02PI2_TAG, 0)
99101ADDRESS_MAP_END
100102
101103
r19536r19537
105107
106108static ADDRESS_MAP_START( fd4000_mem, AS_PROGRAM, 8, fd4000_device )
107109   AM_RANGE(0x0000, 0x3fff) AM_RAM
108   AM_RANGE(0x4000, 0x400f) AM_MIRROR(0xbf0) AM_DEVREADWRITE(M6522_TAG, via6522_device, read, write)
110   AM_RANGE(0x4000, 0x400f) AM_MIRROR(0xbf0) AM_DEVREADWRITE(G65SC22P2_TAG, via6522_device, read, write)
109111   AM_RANGE(0x4e00, 0x4e07) AM_MIRROR(0x1f8) AM_DEVICE(PC8477AV1_TAG, pc8477a_device, map)
110112   AM_RANGE(0x5000, 0x7fff) AM_RAM
111   AM_RANGE(0x8000, 0xffff) AM_ROM AM_REGION(M6502_TAG, 0)
113   AM_RANGE(0x8000, 0xffff) AM_ROM AM_REGION(R65C02P4_TAG, 0)
112114ADDRESS_MAP_END
113115
114116
r19536r19537
217219};
218220
219221static SLOT_INTERFACE_START( fd2000_floppies )
220   SLOT_INTERFACE( "35hd", FLOPPY_35_HD )
222   SLOT_INTERFACE( "35hd", FLOPPY_35_HD ) // TEAC FD-235HF
221223SLOT_INTERFACE_END
222224
223225static SLOT_INTERFACE_START( fd4000_floppies )
224   SLOT_INTERFACE( "35ed", FLOPPY_35_ED )
226   SLOT_INTERFACE( "35ed", FLOPPY_35_ED ) // TEAC FD-235J
225227SLOT_INTERFACE_END
226228/*
227229FLOPPY_FORMATS_MEMBER( fd2000_device::floppy_formats )
r19536r19537
235237//-------------------------------------------------
236238
237239static MACHINE_CONFIG_FRAGMENT( fd2000 )
238   MCFG_CPU_ADD(M6502_TAG, M65C02, 2000000)
240   MCFG_CPU_ADD(G65SC02PI2_TAG, M65C02, XTAL_24MHz/12)
239241   MCFG_CPU_PROGRAM_MAP(fd2000_mem)
240242
241   MCFG_VIA6522_ADD(M6522_TAG, 2000000, via_intf)
242   MCFG_DP8473_ADD(DP8473_TAG)
243   MCFG_VIA6522_ADD(G65SC22P2_TAG, XTAL_24MHz/12, via_intf)
244   MCFG_DP8473_ADD(DP8473V_TAG)
243245
244   MCFG_FLOPPY_DRIVE_ADD(DP8473_TAG":0", fd2000_floppies, "35hd", 0, floppy_image_device::default_floppy_formats)//fd2000_device::floppy_formats)
246   MCFG_FLOPPY_DRIVE_ADD(DP8473V_TAG":0", fd2000_floppies, "35hd", 0, floppy_image_device::default_floppy_formats)//fd2000_device::floppy_formats)
245247MACHINE_CONFIG_END
246248
247249
r19536r19537
250252//-------------------------------------------------
251253
252254static MACHINE_CONFIG_FRAGMENT( fd4000 )
253   MCFG_CPU_ADD(M6502_TAG, M65C02, 2000000)
255   MCFG_CPU_ADD(R65C02P4_TAG, M65C02, XTAL_24MHz/6)
254256   MCFG_CPU_PROGRAM_MAP(fd4000_mem)
255257
256   MCFG_VIA6522_ADD(M6522_TAG, 2000000, via_intf)
258   MCFG_VIA6522_ADD(G65SC22P2_TAG, XTAL_24MHz/12, via_intf)
257259   MCFG_PC8477A_ADD(PC8477AV1_TAG)
258260
259261   MCFG_FLOPPY_DRIVE_ADD(PC8477AV1_TAG":0", fd4000_floppies, "35ed", 0, floppy_image_device::default_floppy_formats)//fd2000_device::floppy_formats)
r19536r19537
311313fd2000_device::fd2000_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
312314    : device_t(mconfig, FD2000, "FD-2000", tag, owner, clock),
313315     device_cbm_iec_interface(mconfig, *this),
314     m_maincpu(*this, M6502_TAG),
315     m_fdc(*this, DP8473_TAG),
316     m_floppy0(*this, DP8473_TAG":0"),
316     m_maincpu(*this, G65SC02PI2_TAG),
317     m_fdc(*this, DP8473V_TAG),
318     m_floppy0(*this, DP8473V_TAG":0"),
317319     m_variant(TYPE_FD2000)
318320{
319321}
r19536r19537
321323fd2000_device::fd2000_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, UINT32 variant)
322324    : device_t(mconfig, type, name, tag, owner, clock),
323325     device_cbm_iec_interface(mconfig, *this),
324     m_maincpu(*this, M6502_TAG),
326     m_maincpu(*this, R65C02P4_TAG),
325327     m_fdc(*this, PC8477AV1_TAG),
326328     m_floppy0(*this, PC8477AV1_TAG":0"),
327329     m_variant(variant)

Previous 199869 Revisions Next


© 1997-2024 The MAME Team