summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatarGravatar AJR <ajrhacker@users.noreply.github.com>2020-09-26 17:19:26 -0400
committerGravatarGravatar AJR <ajrhacker@users.noreply.github.com>2020-09-26 17:19:26 -0400
commitc9920a0314dc6fe13a6a43637413f44b8065b54a (patch)
tree2e5949a8ea0a383c521905f96932f53c7ae97dce
parentf848c3b9013701c2ef437fc7dcf89632c796ccfe (diff)
omti8621: Add as standard 16-bit ISA device
-rw-r--r--src/devices/bus/isa/isa_cards.cpp2
-rw-r--r--src/devices/bus/isa/omti8621.cpp11
-rw-r--r--src/devices/bus/isa/omti8621.h2
3 files changed, 13 insertions, 2 deletions
diff --git a/src/devices/bus/isa/isa_cards.cpp b/src/devices/bus/isa/isa_cards.cpp
index 72681cc249e..8f1232dcd13 100644
--- a/src/devices/bus/isa/isa_cards.cpp
+++ b/src/devices/bus/isa/isa_cards.cpp
@@ -49,6 +49,7 @@
#include "ultra24f.h"
#include "tekram_dc820.h"
#include "asc88.h"
+#include "omti8621.h"
// sound
#include "adlib.h"
@@ -225,4 +226,5 @@ void pc_isa16_cards(device_slot_interface &device)
device.option_add("dc320e", TEKRAM_DC320E); // actually an EISA card
device.option_add("dc820", TEKRAM_DC820); // actually an EISA card
device.option_add("dc820b", TEKRAM_DC820B); // actually an EISA card
+ device.option_add("omti8621", ISA16_OMTI8621);
}
diff --git a/src/devices/bus/isa/omti8621.cpp b/src/devices/bus/isa/omti8621.cpp
index 1da5d23f819..b75b09046ed 100644
--- a/src/devices/bus/isa/omti8621.cpp
+++ b/src/devices/bus/isa/omti8621.cpp
@@ -253,8 +253,15 @@ void omti8621_device::device_add_mconfig(machine_config &config)
m_fdc->intrq_wr_callback().set(FUNC(omti8621_device::fdc_irq_w));
m_fdc->drq_wr_callback().set(FUNC(omti8621_device::fdc_drq_w));
FLOPPY_CONNECTOR(config, m_floppy[0], pc_hd_floppies, "525hd", omti8621_device::floppy_formats);
-// Apollo workstations never have more then 1 floppy drive
-// FLOPPY_CONNECTOR(config, m_floppy[1], pc_hd_floppies, nullptr, omti8621_device::floppy_formats);
+ FLOPPY_CONNECTOR(config, m_floppy[1], pc_hd_floppies, nullptr, omti8621_device::floppy_formats);
+}
+
+void omti8621_apollo_device::device_add_mconfig(machine_config &config)
+{
+ omti8621_device::device_add_mconfig(config);
+
+ // Apollo workstations never have more then 1 floppy drive
+ config.device_remove(OMTI_FDC_TAG":1");
}
const tiny_rom_entry *omti8621_device::device_rom_region() const
diff --git a/src/devices/bus/isa/omti8621.h b/src/devices/bus/isa/omti8621.h
index d637eb57611..0308b61eee6 100644
--- a/src/devices/bus/isa/omti8621.h
+++ b/src/devices/bus/isa/omti8621.h
@@ -163,7 +163,9 @@ public:
// get sector diskaddr of logical unit lun into data_buffer
uint32_t get_sector(int32_t diskaddr, uint8_t *data_buffer, uint32_t length, uint8_t lun);
+
protected:
+ virtual void device_add_mconfig(machine_config &config) override;
virtual const tiny_rom_entry *device_rom_region() const override;
};