Previous 199869 Revisions Next

r33006 Monday 27th October, 2014 at 14:37:57 UTC by Carl
(mess) hdc: xenix 8086 hates this so isolate it (nw)
[src/emu/bus/isa]hdc.c hdc.h xsu_cards.c

trunk/src/emu/bus/isa/hdc.c
r241517r241518
149149//**************************************************************************
150150
151151const device_type ISA8_HDC = &device_creator<isa8_hdc_device>;
152const device_type ISA8_HDC_EC1841 = &device_creator<isa8_hdc_ec1841_device>;
152153
153154//-------------------------------------------------
154155//  machine_config_additions - device-specific
r241517r241518
190191      device_t(mconfig, ISA8_HDC, "Fixed Disk Controller Card", tag, owner, clock, "hdc", __FILE__),
191192      device_isa8_card_interface(mconfig, *this)
192193{
194   m_type = STANDARD;
193195}
194196
197isa8_hdc_device::isa8_hdc_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) :
198      device_t(mconfig, type, name, tag, owner, clock, shortname, source),
199      device_isa8_card_interface(mconfig, *this)
200{
201}
202
203isa8_hdc_ec1841_device::isa8_hdc_ec1841_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) :
204      isa8_hdc_device( mconfig, ISA8_HDC_EC1841, "EC1841 HDC", tag, owner, clock, "hdc_ec1841", __FILE__)
205{
206   m_type = EC1841;
207}
208
195209//-------------------------------------------------
196210//  device_start - device-specific startup
197211//-------------------------------------------------
r241517r241518
750764
751765      *buffer_ptr++ = data;
752766      // XXX ec1841 wants this
753      if (buffer[0] == CMD_SETPARAM && data_cnt == 9) {
767      if (buffer[0] == CMD_SETPARAM && data_cnt == 9 && (m_type == EC1841)) {
754768         status &= ~STA_READY;
755769      } else {
756770         status |= STA_READY;
trunk/src/emu/bus/isa/hdc.h
r241517r241518
2525public:
2626      // construction/destruction
2727      isa8_hdc_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
28      isa8_hdc_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);
2829
2930      // optional information overrides
3031      virtual machine_config_constructor device_mconfig_additions() const;
r241517r241518
8990      void get_drive();
9091      void get_chsn();
9192      int test_ready();
93
94      enum {
95         STANDARD,
96         EC1841
97      };
98      int m_type;
9299public:
93100      void hdc_command();
94101      void pc_hdc_data_w(int data);
r241517r241518
101108};
102109
103110
111class isa8_hdc_ec1841_device : public isa8_hdc_device
112{
113public:
114   isa8_hdc_ec1841_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
115};
116
104117// device type definition
105118extern const device_type ISA8_HDC;
119extern const device_type ISA8_HDC_EC1841;
106120
107121#endif  /* ISA_HDC_H */
trunk/src/emu/bus/isa/xsu_cards.c
r241517r241518
4848   SLOT_INTERFACE("ec1841.0004", ISA8_EC1841_0004)   // BSC-like serial ports + parallel port
4949*/
5050   SLOT_INTERFACE("mda", ISA8_MDA)
51   SLOT_INTERFACE("hdc", ISA8_HDC)
51   SLOT_INTERFACE("hdc", ISA8_HDC_EC1841)
5252   SLOT_INTERFACE("pccom", ISA8_COM)
5353   SLOT_INTERFACE("pclpt", ISA8_LPT)
5454   SLOT_INTERFACE("xtide", ISA8_XTIDE)


Previous 199869 Revisions Next


© 1997-2024 The MAME Team