Previous 199869 Revisions Next

r19442 Monday 10th December, 2012 at 09:28:48 UTC by Curt Coder
upd765: Added WD37C65C variant. (nw)
[src/emu/machine]upd765.c upd765.h

trunk/src/emu/machine/upd765.c
r19441r19442
1111const device_type PC_FDC_SUPERIO = &device_creator<pc_fdc_superio_device>;
1212const device_type DP8473 = &device_creator<dp8473_device>;
1313const device_type PC8477A = &device_creator<pc8477a_device>;
14const device_type WD37C65C = &device_creator<wd37c65c_device>;
1415
1516DEVICE_ADDRESS_MAP_START(map, 8, upd765a_device)
1617   AM_RANGE(0x0, 0x0) AM_READ(msr_r)
r19441r19442
8081   AM_RANGE(0x7, 0x7) AM_READWRITE(dir_r, ccr_w)
8182ADDRESS_MAP_END
8283
84DEVICE_ADDRESS_MAP_START(map, 8, wd37c65c_device)
85   AM_RANGE(0x0, 0x0) AM_READ(msr_r)
86   AM_RANGE(0x1, 0x1) AM_READWRITE(fifo_r, fifo_w)
87ADDRESS_MAP_END
8388
89
8490int upd765_family_device::rates[4] = { 500000, 300000, 250000, 1000000 };
8591
8692upd765_family_device::upd765_family_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock) : pc_fdc_interface(mconfig, type, name, tag, owner, clock)
r19441r19442
22392245   ready_connected = false;
22402246   select_connected = true;
22412247}
2248
2249wd37c65c_device::wd37c65c_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : upd765_family_device(mconfig, PC_FDC_SUPERIO, "PC FDC SUPERIO", tag, owner, clock)
2250{
2251   m_shortname = "wd37c65c";
2252   ready_polled = false;
2253   ready_connected = false;
2254   select_connected = true;
2255}
trunk/src/emu/machine/upd765.h
r19441r19442
4646#define MCFG_PC8477A_ADD(_tag)   \
4747   MCFG_DEVICE_ADD(_tag, PC8477A, 0)
4848
49#define MCFG_WD37C65C_ADD(_tag)   \
50   MCFG_DEVICE_ADD(_tag, WD37C65C, 0)
51
4952/* Interface required for PC ISA wrapping */
5053class pc_fdc_interface : public device_t {
5154public:
r19441r19442
451454   virtual DECLARE_ADDRESS_MAP(map, 8);
452455};
453456
457class wd37c65c_device : public upd765_family_device {
458public:
459   wd37c65c_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
460
461   virtual DECLARE_ADDRESS_MAP(map, 8);
462};
463
454464extern const device_type UPD765A;
455465extern const device_type UPD765B;
456466extern const device_type I8272A;
r19441r19442
460470extern const device_type PC_FDC_SUPERIO;
461471extern const device_type DP8473;
462472extern const device_type PC8477A;
473extern const device_type WD37C65C;
463474
464475#endif

Previous 199869 Revisions Next


© 1997-2024 The MAME Team