diff options
author | 2011-06-23 22:36:40 +0000 | |
---|---|---|
committer | 2011-06-23 22:36:40 +0000 | |
commit | 2ff0608ea406da68d89c2a03f84903ea90875462 (patch) | |
tree | 0867601112a9cb986a1f2ac3a232bea38bc25c1c /src | |
parent | 1dd9b4a19406c88f41098c3ca99b92063e1878ae (diff) |
Synced with MESS. (nw)
Diffstat (limited to 'src')
-rw-r--r-- | src/emu/imagedev/flopdrv.c | 2 | ||||
-rw-r--r-- | src/emu/machine/wd17xx.c | 202 | ||||
-rw-r--r-- | src/emu/machine/wd17xx.h | 107 |
3 files changed, 227 insertions, 84 deletions
diff --git a/src/emu/imagedev/flopdrv.c b/src/emu/imagedev/flopdrv.c index 9ea79278aa9..986562ce39e 100644 --- a/src/emu/imagedev/flopdrv.c +++ b/src/emu/imagedev/flopdrv.c @@ -946,7 +946,7 @@ READ_LINE_DEVICE_HANDLER( floppy_index_r ) READ_LINE_DEVICE_HANDLER( floppy_ready_r ) { - return floppy_drive_get_flag_state(device, FLOPPY_DRIVE_READY); + return !(floppy_drive_get_flag_state(device, FLOPPY_DRIVE_READY) == FLOPPY_DRIVE_READY); } /*------------------------------------------------- diff --git a/src/emu/machine/wd17xx.c b/src/emu/machine/wd17xx.c index 693eecd6011..6b53a361cc3 100644 --- a/src/emu/machine/wd17xx.c +++ b/src/emu/machine/wd17xx.c @@ -28,9 +28,9 @@ WD2793 x x 1 or 2 MHz Internal data separator WD2795 x x 1 or 2 MHz Internal data separator WD2797 x x x 1 or 2 MHz Internal data separator - WD1770 x 8 MHz Motor On signal - WD1772 x 8 MHz Motor On signal, Faster stepping rates - WD1773 x 8 MHz Enable precomp line + WD1770 x x 8 MHz Motor On signal + WD1772 x x 8 MHz Motor On signal, Faster stepping rates + WD1773 x x 8 MHz Enable precomp line Notes: - In general, later models include all features of earlier models - DAL: Data access lines, x = TRUE; otherwise inverted @@ -136,10 +136,14 @@ 2011-Apr-01 Curt Coder - Set complete command delay to 16 usec (DD) / 32 usec (SD) and removed the external delay setting hack. + + 2011-Jun-24 Curt Coder + - Added device types for all known variants, and enforced inverted DAL lines. TODO: - What happens if a track is read that doesn't have any id's on it? (e.g. unformatted disc) + - Rewrite into a C++ device ***************************************************************************/ @@ -397,10 +401,12 @@ static void wd17xx_timed_read_sector_request(device_t *device); INLINE wd1770_state *get_safe_token(device_t *device) { assert(device != NULL); - assert(device->type() == WD1770 || device->type() == WD1771 || device->type() == WD1772 || device->type() == WD1773 || - device->type() == WD1793 || device->type() == WD1795 || device->type() == WD1797 || - device->type() == WD2793 || device->type() == WD2795 || device->type() == WD2797 || - device->type() == WD177X || device->type() == WD179X || device->type() == MB8877); + assert(device->type() == FD1771 || device->type() == FD1781 || + device->type() == FD1791 || device->type() == FD1792 || device->type() == FD1793 || device->type() == FD1794 || device->type() == FD1795 || device->type() == FD1797 || + device->type() == FD1761 || device->type() == FD1762 || device->type() == FD1763 || device->type() == FD1764 || device->type() == FD1765 || device->type() == FD1767 || + device->type() == WD2791 || device->type() == WD2793 || device->type() == WD2795 || device->type() == WD2797 || + device->type() == WD1770 || device->type() == WD1772 || device->type() == WD1773 || + device->type() == MB8866 || device->type() == MB8876 || device->type() == MB8877); return (wd1770_state *)downcast<legacy_device_base *>(device)->token(); } @@ -410,9 +416,24 @@ INLINE wd1770_state *get_safe_token(device_t *device) HELPER FUNCTIONS ***************************************************************************/ +static int wd17xx_has_dal(device_t *device) +{ + return (device->type() == FD1793 || device->type() == FD1794 || device->type() == FD1797 || + device->type() == FD1763 || device->type() == FD1764 || device->type() == FD1767 || + device->type() == WD1770 || device->type() == WD1772 || device->type() == WD1773 || + device->type() == WD2793 || device->type() == WD2797 || + device->type() == MB8877); +} + +static int wd17xx_is_sd_only(device_t *device) +{ + return (device->type() == FD1771 || device->type() == FD1792 || device->type() == FD1794 || device->type() == FD1762 || device->type() == FD1764); +} + static int wd17xx_has_side_select(device_t *device) { - return (device->type() == WD1795 || device->type() == WD1797 || + return (device->type() == FD1795 || device->type() == FD1797 || + device->type() == FD1765 || device->type() == FD1767 || device->type() == WD2795 || device->type() == WD2797); } @@ -674,10 +695,10 @@ static void write_track(device_t *device) if (w->data_count==0) { - if (device->type() == WD1771) - w->data_count = TRKSIZE_SD; - else - w->data_count = wd17xx_dden(device) ? TRKSIZE_SD : TRKSIZE_DD; + if (wd17xx_is_sd_only(device)) + w->data_count = TRKSIZE_SD; + else + w->data_count = wd17xx_dden(device) ? TRKSIZE_SD : TRKSIZE_DD; } floppy_drive_write_track_data_info_buffer( w->drive, w->hd, (char *)w->buffer, &(w->data_count) ); @@ -826,10 +847,10 @@ static void read_track(device_t *device) if (w->data_count==0) { - if (device->type() == WD1771) - w->data_count = TRKSIZE_SD; - else - w->data_count = wd17xx_dden(device) ? TRKSIZE_SD : TRKSIZE_DD; + if (wd17xx_is_sd_only(device)) + w->data_count = TRKSIZE_SD; + else + w->data_count = wd17xx_dden(device) ? TRKSIZE_SD : TRKSIZE_DD; } floppy_drive_read_track_data_info_buffer( w->drive, w->hd, (char *)w->buffer, &(w->data_count) ); @@ -1322,7 +1343,7 @@ WRITE_LINE_DEVICE_HANDLER( wd17xx_dden_w ) wd1770_state *w = get_safe_token(device); /* not supported on FD1771, FD1792, FD1794, FD1762 and FD1764 */ - if (device->type() == WD1771) + if (wd17xx_is_sd_only(device)) fatalerror("wd17xx_dden_w: double density input not supported on this model!"); else if (!w->in_dden_func.isnull()) logerror("wd17xx_dden_w: write has no effect because a read handler is already defined!\n"); @@ -1402,7 +1423,7 @@ READ8_DEVICE_HANDLER( wd17xx_status_r ) logerror("%s: wd17xx_status_r: $%02X (data_count %d)\n", device->machine().describe_context(), result, w->data_count); } - return result; + return result ^ (wd17xx_has_dal(device) ? 0 : 0xff); } /* read the FDC track register */ @@ -1413,7 +1434,7 @@ READ8_DEVICE_HANDLER( wd17xx_track_r ) if (VERBOSE) logerror("%s: wd17xx_track_r: $%02X\n", device->machine().describe_context(), w->track); - return w->track; + return w->track ^ (wd17xx_has_dal(device) ? 0 : 0xff); } /* read the FDC sector register */ @@ -1424,7 +1445,7 @@ READ8_DEVICE_HANDLER( wd17xx_sector_r ) if (VERBOSE) logerror("%s: wd17xx_sector_r: $%02X\n", device->machine().describe_context(), w->sector); - return w->sector; + return w->sector ^ (wd17xx_has_dal(device) ? 0 : 0xff); } /* read the FDC data register */ @@ -1438,13 +1459,14 @@ READ8_DEVICE_HANDLER( wd17xx_data_r ) /* clear data request */ wd17xx_clear_drq(device); - return w->data; + return w->data ^ (wd17xx_has_dal(device) ? 0 : 0xff); } /* write the FDC command register */ WRITE8_DEVICE_HANDLER( wd17xx_command_w ) { wd1770_state *w = get_safe_token(device); + if (!wd17xx_has_dal(device)) data ^= 0xff; w->last_command_data = data; @@ -1597,7 +1619,7 @@ WRITE8_DEVICE_HANDLER( wd17xx_command_w ) { w->command = data & ~FDC_MASK_TYPE_III; w->data_offset = 0; - if (device->type() == WD1771) + if (wd17xx_is_sd_only(device)) w->data_count = TRKSIZE_SD; else w->data_count = wd17xx_dden(device) ? TRKSIZE_SD : TRKSIZE_DD; @@ -1790,6 +1812,7 @@ WRITE8_DEVICE_HANDLER( wd17xx_command_w ) WRITE8_DEVICE_HANDLER( wd17xx_track_w ) { wd1770_state *w = get_safe_token(device); + if (!wd17xx_has_dal(device)) data ^= 0xff; w->track = data; @@ -1801,6 +1824,7 @@ WRITE8_DEVICE_HANDLER( wd17xx_track_w ) WRITE8_DEVICE_HANDLER( wd17xx_sector_w ) { wd1770_state *w = get_safe_token(device); + if (!wd17xx_has_dal(device)) data ^= 0xff; w->sector = data; @@ -1812,6 +1836,7 @@ WRITE8_DEVICE_HANDLER( wd17xx_sector_w ) WRITE8_DEVICE_HANDLER( wd17xx_data_w ) { wd1770_state *w = get_safe_token(device); + if (!wd17xx_has_dal(device)) data ^= 0xff; if (w->data_count > 0) { @@ -1967,15 +1992,17 @@ WRITE8_DEVICE_HANDLER( wd17xx_data_w ) READ8_DEVICE_HANDLER( wd17xx_r ) { + UINT8 data = 0; + switch (offset & 0x03) { - case 0: return wd17xx_status_r(device, 0); - case 1: return wd17xx_track_r(device, 0); - case 2: return wd17xx_sector_r(device, 0); - case 3: return wd17xx_data_r(device, 0); + case 0: data = wd17xx_status_r(device, 0); break; + case 1: data = wd17xx_track_r(device, 0); break; + case 2: data = wd17xx_sector_r(device, 0); break; + case 3: data = wd17xx_data_r(device, 0); break; } - - return 0; + + return data; } WRITE8_DEVICE_HANDLER( wd17xx_w ) @@ -2096,34 +2123,79 @@ static const char DEVTEMPLATE_SOURCE[] = __FILE__; #define DEVTEMPLATE_CREDITS "Copyright MESS Team" #include "devtempl.h" -#define DEVTEMPLATE_DERIVED_ID(p,s) p##wd1771##s +#define DEVTEMPLATE_DERIVED_ID(p,s) p##fd1771##s #define DEVTEMPLATE_DERIVED_FEATURES 0 -#define DEVTEMPLATE_DERIVED_NAME "WD1771" +#define DEVTEMPLATE_DERIVED_NAME "FD1771" #include "devtempl.h" -#define DEVTEMPLATE_DERIVED_ID(p,s) p##wd1772##s -#define DEVTEMPLATE_DERIVED_FEATURES DT_HAS_START -#define DEVTEMPLATE_DERIVED_NAME "WD1772" +#define DEVTEMPLATE_DERIVED_ID(p,s) p##fd1781##s +#define DEVTEMPLATE_DERIVED_FEATURES 0 +#define DEVTEMPLATE_DERIVED_NAME "FD1781" #include "devtempl.h" -#define DEVTEMPLATE_DERIVED_ID(p,s) p##wd1773##s +#define DEVTEMPLATE_DERIVED_ID(p,s) p##fd1791##s #define DEVTEMPLATE_DERIVED_FEATURES 0 -#define DEVTEMPLATE_DERIVED_NAME "WD1773" +#define DEVTEMPLATE_DERIVED_NAME "FD1791" +#include "devtempl.h" + +#define DEVTEMPLATE_DERIVED_ID(p,s) p##fd1792##s +#define DEVTEMPLATE_DERIVED_FEATURES 0 +#define DEVTEMPLATE_DERIVED_NAME "FD1792" +#include "devtempl.h" + +#define DEVTEMPLATE_DERIVED_ID(p,s) p##fd1793##s +#define DEVTEMPLATE_DERIVED_FEATURES 0 +#define DEVTEMPLATE_DERIVED_NAME "FD1793" +#include "devtempl.h" + +#define DEVTEMPLATE_DERIVED_ID(p,s) p##fd1794##s +#define DEVTEMPLATE_DERIVED_FEATURES 0 +#define DEVTEMPLATE_DERIVED_NAME "FD1794" #include "devtempl.h" -#define DEVTEMPLATE_DERIVED_ID(p,s) p##wd1793##s +#define DEVTEMPLATE_DERIVED_ID(p,s) p##fd1795##s #define DEVTEMPLATE_DERIVED_FEATURES 0 -#define DEVTEMPLATE_DERIVED_NAME "WD1793" +#define DEVTEMPLATE_DERIVED_NAME "FD1795" #include "devtempl.h" -#define DEVTEMPLATE_DERIVED_ID(p,s) p##wd1795##s +#define DEVTEMPLATE_DERIVED_ID(p,s) p##fd1797##s #define DEVTEMPLATE_DERIVED_FEATURES 0 -#define DEVTEMPLATE_DERIVED_NAME "WD1795" +#define DEVTEMPLATE_DERIVED_NAME "FD1797" #include "devtempl.h" -#define DEVTEMPLATE_DERIVED_ID(p,s) p##wd1797##s +#define DEVTEMPLATE_DERIVED_ID(p,s) p##fd1761##s #define DEVTEMPLATE_DERIVED_FEATURES 0 -#define DEVTEMPLATE_DERIVED_NAME "WD1797" +#define DEVTEMPLATE_DERIVED_NAME "FD1761" +#include "devtempl.h" + +#define DEVTEMPLATE_DERIVED_ID(p,s) p##fd1762##s +#define DEVTEMPLATE_DERIVED_FEATURES 0 +#define DEVTEMPLATE_DERIVED_NAME "FD1762" +#include "devtempl.h" + +#define DEVTEMPLATE_DERIVED_ID(p,s) p##fd1763##s +#define DEVTEMPLATE_DERIVED_FEATURES 0 +#define DEVTEMPLATE_DERIVED_NAME "FD1763" +#include "devtempl.h" + +#define DEVTEMPLATE_DERIVED_ID(p,s) p##fd1764##s +#define DEVTEMPLATE_DERIVED_FEATURES 0 +#define DEVTEMPLATE_DERIVED_NAME "FD1764" +#include "devtempl.h" + +#define DEVTEMPLATE_DERIVED_ID(p,s) p##fd1765##s +#define DEVTEMPLATE_DERIVED_FEATURES 0 +#define DEVTEMPLATE_DERIVED_NAME "FD1765" +#include "devtempl.h" + +#define DEVTEMPLATE_DERIVED_ID(p,s) p##fd1767##s +#define DEVTEMPLATE_DERIVED_FEATURES 0 +#define DEVTEMPLATE_DERIVED_NAME "FD1767" +#include "devtempl.h" + +#define DEVTEMPLATE_DERIVED_ID(p,s) p##wd2791##s +#define DEVTEMPLATE_DERIVED_FEATURES 0 +#define DEVTEMPLATE_DERIVED_NAME "WD2791" #include "devtempl.h" #define DEVTEMPLATE_DERIVED_ID(p,s) p##wd2793##s @@ -2141,14 +2213,24 @@ static const char DEVTEMPLATE_SOURCE[] = __FILE__; #define DEVTEMPLATE_DERIVED_NAME "WD2797" #include "devtempl.h" -#define DEVTEMPLATE_DERIVED_ID(p,s) p##wd177x##s +#define DEVTEMPLATE_DERIVED_ID(p,s) p##wd1772##s +#define DEVTEMPLATE_DERIVED_FEATURES DT_HAS_START +#define DEVTEMPLATE_DERIVED_NAME "WD1772" +#include "devtempl.h" + +#define DEVTEMPLATE_DERIVED_ID(p,s) p##wd1773##s +#define DEVTEMPLATE_DERIVED_FEATURES 0 +#define DEVTEMPLATE_DERIVED_NAME "WD1773" +#include "devtempl.h" + +#define DEVTEMPLATE_DERIVED_ID(p,s) p##mb8866##s #define DEVTEMPLATE_DERIVED_FEATURES 0 -#define DEVTEMPLATE_DERIVED_NAME "WD179x" +#define DEVTEMPLATE_DERIVED_NAME "MB8866" #include "devtempl.h" -#define DEVTEMPLATE_DERIVED_ID(p,s) p##wd179x##s +#define DEVTEMPLATE_DERIVED_ID(p,s) p##mb8876##s #define DEVTEMPLATE_DERIVED_FEATURES 0 -#define DEVTEMPLATE_DERIVED_NAME "WD179x" +#define DEVTEMPLATE_DERIVED_NAME "MB8876" #include "devtempl.h" #define DEVTEMPLATE_DERIVED_ID(p,s) p##mb8877##s @@ -2156,17 +2238,27 @@ static const char DEVTEMPLATE_SOURCE[] = __FILE__; #define DEVTEMPLATE_DERIVED_NAME "MB8877" #include "devtempl.h" -DEFINE_LEGACY_DEVICE(WD1770, wd1770); -DEFINE_LEGACY_DEVICE(WD1771, wd1771); -DEFINE_LEGACY_DEVICE(WD1772, wd1772); -DEFINE_LEGACY_DEVICE(WD1773, wd1773); -DEFINE_LEGACY_DEVICE(WD1793, wd1793); -DEFINE_LEGACY_DEVICE(WD1795, wd1795); -DEFINE_LEGACY_DEVICE(WD1797, wd1797); +DEFINE_LEGACY_DEVICE(FD1771, fd1771); +DEFINE_LEGACY_DEVICE(FD1781, fd1781); +DEFINE_LEGACY_DEVICE(FD1791, fd1791); +DEFINE_LEGACY_DEVICE(FD1792, fd1792); +DEFINE_LEGACY_DEVICE(FD1793, fd1793); +DEFINE_LEGACY_DEVICE(FD1794, fd1794); +DEFINE_LEGACY_DEVICE(FD1795, fd1795); +DEFINE_LEGACY_DEVICE(FD1797, fd1797); +DEFINE_LEGACY_DEVICE(FD1761, fd1761); +DEFINE_LEGACY_DEVICE(FD1762, fd1762); +DEFINE_LEGACY_DEVICE(FD1763, fd1763); +DEFINE_LEGACY_DEVICE(FD1764, fd1764); +DEFINE_LEGACY_DEVICE(FD1765, fd1765); +DEFINE_LEGACY_DEVICE(FD1767, fd1767); +DEFINE_LEGACY_DEVICE(WD2791, wd2791); DEFINE_LEGACY_DEVICE(WD2793, wd2793); DEFINE_LEGACY_DEVICE(WD2795, wd2795); DEFINE_LEGACY_DEVICE(WD2797, wd2797); -DEFINE_LEGACY_DEVICE(WD177X, wd177x); -DEFINE_LEGACY_DEVICE(WD179X, wd179x); +DEFINE_LEGACY_DEVICE(WD1770, wd1770); +DEFINE_LEGACY_DEVICE(WD1772, wd1772); +DEFINE_LEGACY_DEVICE(WD1773, wd1773); +DEFINE_LEGACY_DEVICE(MB8866, mb8866); +DEFINE_LEGACY_DEVICE(MB8876, mb8876); DEFINE_LEGACY_DEVICE(MB8877, mb8877); - diff --git a/src/emu/machine/wd17xx.h b/src/emu/machine/wd17xx.h index 7262163370e..4a24afe6b10 100644 --- a/src/emu/machine/wd17xx.h +++ b/src/emu/machine/wd17xx.h @@ -17,21 +17,33 @@ MACROS ***************************************************************************/ -DECLARE_LEGACY_DEVICE(WD1770, wd1770); -DECLARE_LEGACY_DEVICE(WD1771, wd1771); -DECLARE_LEGACY_DEVICE(WD1772, wd1772); -DECLARE_LEGACY_DEVICE(WD1773, wd1773); -DECLARE_LEGACY_DEVICE(WD1793, wd1793); -DECLARE_LEGACY_DEVICE(WD1795, wd1795); -DECLARE_LEGACY_DEVICE(WD1797, wd1797); +DECLARE_LEGACY_DEVICE(FD1771, fd1771); +DECLARE_LEGACY_DEVICE(FD1781, fd1781); +DECLARE_LEGACY_DEVICE(FD1791, fd1791); +DECLARE_LEGACY_DEVICE(FD1792, fd1792); +DECLARE_LEGACY_DEVICE(FD1793, fd1793); +DECLARE_LEGACY_DEVICE(FD1794, fd1794); +DECLARE_LEGACY_DEVICE(FD1795, fd1795); +DECLARE_LEGACY_DEVICE(FD1797, fd1797); +DECLARE_LEGACY_DEVICE(FD1761, fd1761); +DECLARE_LEGACY_DEVICE(FD1762, fd1762); +DECLARE_LEGACY_DEVICE(FD1763, fd1763); +DECLARE_LEGACY_DEVICE(FD1764, fd1764); +DECLARE_LEGACY_DEVICE(FD1765, fd1765); +DECLARE_LEGACY_DEVICE(FD1767, fd1767); +DECLARE_LEGACY_DEVICE(WD2791, wd2791); DECLARE_LEGACY_DEVICE(WD2793, wd2793); DECLARE_LEGACY_DEVICE(WD2795, wd2795); DECLARE_LEGACY_DEVICE(WD2797, wd2797); -DECLARE_LEGACY_DEVICE(WD177X, wd177x); -DECLARE_LEGACY_DEVICE(WD179X, wd179x); +DECLARE_LEGACY_DEVICE(WD1770, wd1770); +DECLARE_LEGACY_DEVICE(WD1772, wd1772); +DECLARE_LEGACY_DEVICE(WD1773, wd1773); +DECLARE_LEGACY_DEVICE(MB8866, mb8866); +DECLARE_LEGACY_DEVICE(MB8876, mb8876); DECLARE_LEGACY_DEVICE(MB8877, mb8877); + /*************************************************************************** TYPE DEFINITIONS ***************************************************************************/ @@ -91,32 +103,60 @@ extern const wd17xx_interface default_wd17xx_interface_2_drives; DEVICE CONFIGURATION MACROS ***************************************************************************/ -#define MCFG_WD1770_ADD(_tag, _intrf) \ - MCFG_DEVICE_ADD(_tag, WD1770, 0) \ +#define MCFG_FD1771_ADD(_tag, _intrf) \ + MCFG_DEVICE_ADD(_tag, FD1771, 0) \ MCFG_DEVICE_CONFIG(_intrf) -#define MCFG_WD1771_ADD(_tag, _intrf) \ - MCFG_DEVICE_ADD(_tag, WD1771, 0) \ +#define MCFG_FD1781_ADD(_tag, _intrf) \ + MCFG_DEVICE_ADD(_tag, FD1781, 0) \ MCFG_DEVICE_CONFIG(_intrf) -#define MCFG_WD1772_ADD(_tag, _intrf) \ - MCFG_DEVICE_ADD(_tag, WD1772, 0) \ +#define MCFG_FD1791_ADD(_tag, _intrf) \ + MCFG_DEVICE_ADD(_tag, FD1791, 0) \ MCFG_DEVICE_CONFIG(_intrf) -#define MCFG_WD1773_ADD(_tag, _intrf) \ - MCFG_DEVICE_ADD(_tag, WD1773, 0) \ +#define MCFG_FD1792_ADD(_tag, _intrf) \ + MCFG_DEVICE_ADD(_tag, FD1792, 0) \ + MCFG_DEVICE_CONFIG(_intrf) + +#define MCFG_FD1793_ADD(_tag, _intrf) \ + MCFG_DEVICE_ADD(_tag, FD1793, 0) \ + MCFG_DEVICE_CONFIG(_intrf) + +#define MCFG_FD1794_ADD(_tag, _intrf) \ + MCFG_DEVICE_ADD(_tag, FD1794, 0) \ + MCFG_DEVICE_CONFIG(_intrf) + +#define MCFG_FD1795_ADD(_tag, _intrf) \ + MCFG_DEVICE_ADD(_tag, FD1795, 0) \ + MCFG_DEVICE_CONFIG(_intrf) + +#define MCFG_FD1797_ADD(_tag, _intrf) \ + MCFG_DEVICE_ADD(_tag, FD1797, 0) \ + MCFG_DEVICE_CONFIG(_intrf) + +#define MCFG_FD1761_ADD(_tag, _intrf) \ + MCFG_DEVICE_ADD(_tag, FD1761, 0) \ + MCFG_DEVICE_CONFIG(_intrf) + +#define MCFG_FD1762_ADD(_tag, _intrf) \ + MCFG_DEVICE_ADD(_tag, FD1762, 0) \ MCFG_DEVICE_CONFIG(_intrf) -#define MCFG_WD1793_ADD(_tag, _intrf) \ - MCFG_DEVICE_ADD(_tag, WD1793, 0) \ +#define MCFG_FD1763_ADD(_tag, _intrf) \ + MCFG_DEVICE_ADD(_tag, FD1763, 0) \ MCFG_DEVICE_CONFIG(_intrf) -#define MCFG_WD1795_ADD(_tag, _intrf) \ - MCFG_DEVICE_ADD(_tag, WD1795, 0) \ +#define MCFG_FD1764_ADD(_tag, _intrf) \ + MCFG_DEVICE_ADD(_tag, FD1764, 0) \ MCFG_DEVICE_CONFIG(_intrf) -#define MCFG_WD1797_ADD(_tag, _intrf) \ - MCFG_DEVICE_ADD(_tag, WD1797, 0) \ +#define MCFG_FD1765_ADD(_tag, _intrf) \ + MCFG_DEVICE_ADD(_tag, FD1765, 0) \ + MCFG_DEVICE_CONFIG(_intrf) + +#define MCFG_FD1767_ADD(_tag, _intrf) \ + MCFG_DEVICE_ADD(_tag, FD1767, 0) \ MCFG_DEVICE_CONFIG(_intrf) #define MCFG_WD2793_ADD(_tag, _intrf) \ @@ -131,17 +171,28 @@ extern const wd17xx_interface default_wd17xx_interface_2_drives; MCFG_DEVICE_ADD(_tag, WD2797, 0) \ MCFG_DEVICE_CONFIG(_intrf) -#define MCFG_WD177X_ADD(_tag, _intrf) \ - MCFG_DEVICE_ADD(_tag, WD177X, 0) \ +#define MCFG_WD1770_ADD(_tag, _intrf) \ + MCFG_DEVICE_ADD(_tag, WD1770, 0) \ + MCFG_DEVICE_CONFIG(_intrf) + +#define MCFG_WD1772_ADD(_tag, _intrf) \ + MCFG_DEVICE_ADD(_tag, WD1772, 0) \ + MCFG_DEVICE_CONFIG(_intrf) + +#define MCFG_WD1773_ADD(_tag, _intrf) \ + MCFG_DEVICE_ADD(_tag, WD1773, 0) \ MCFG_DEVICE_CONFIG(_intrf) -#define MCFG_WD179X_ADD(_tag, _intrf) \ - MCFG_DEVICE_ADD(_tag, WD179X, 0) \ +#define MCFG_MB8866_ADD(_tag, _intrf) \ + MCFG_DEVICE_ADD(_tag, MB8866, 0) \ + MCFG_DEVICE_CONFIG(_intrf) + +#define MCFG_MB8876_ADD(_tag, _intrf) \ + MCFG_DEVICE_ADD(_tag, MB8876, 0) \ MCFG_DEVICE_CONFIG(_intrf) #define MCFG_MB8877_ADD(_tag, _intrf) \ MCFG_DEVICE_ADD(_tag, MB8877, 0) \ MCFG_DEVICE_CONFIG(_intrf) - #endif /* __WD17XX_H__ */ |