diff options
author | 2021-03-02 15:29:33 +0100 | |
---|---|---|
committer | 2021-03-02 15:30:45 +0100 | |
commit | 3c9e3749541b1da8a0c5409c582070aae66dd3d6 (patch) | |
tree | 7fafe993b6679ef13fb48ed7d5e18f47a8226928 /src/devices/bus/isbx | |
parent | dd75841b96ec3a16e937ae970a986b87cc9c9ee2 (diff) |
floppies: Turn the format arrays into function calls. Create a default "mfm", "fm" and "pc" list of formats. Their contents, and which driver uses what, may need some tuning.
Diffstat (limited to 'src/devices/bus/isbx')
-rw-r--r-- | src/devices/bus/isbx/compis_fdc.cpp | 8 | ||||
-rw-r--r-- | src/devices/bus/isbx/compis_fdc.h | 2 | ||||
-rw-r--r-- | src/devices/bus/isbx/isbc_218a.cpp | 11 | ||||
-rw-r--r-- | src/devices/bus/isbx/isbc_218a.h | 2 |
4 files changed, 8 insertions, 15 deletions
diff --git a/src/devices/bus/isbx/compis_fdc.cpp b/src/devices/bus/isbx/compis_fdc.cpp index fea0e7f59b5..3cfed059e70 100644 --- a/src/devices/bus/isbx/compis_fdc.cpp +++ b/src/devices/bus/isbx/compis_fdc.cpp @@ -39,9 +39,11 @@ WRITE_LINE_MEMBER( compis_fdc_device::fdc_drq ) m_slot->mdrqt_w(state); } -FLOPPY_FORMATS_MEMBER( compis_fdc_device::floppy_formats ) - FLOPPY_CPIS_FORMAT -FLOPPY_FORMATS_END +void compis_fdc_device::floppy_formats(format_registration &fr) +{ + fr.add_mfm_containers(); + fr.add(FLOPPY_CPIS_FORMAT); +} static void compis_floppies(device_slot_interface &device) { diff --git a/src/devices/bus/isbx/compis_fdc.h b/src/devices/bus/isbx/compis_fdc.h index af1d71a3af2..5e50b3a3696 100644 --- a/src/devices/bus/isbx/compis_fdc.h +++ b/src/devices/bus/isbx/compis_fdc.h @@ -50,7 +50,7 @@ protected: private: DECLARE_WRITE_LINE_MEMBER( fdc_irq ); DECLARE_WRITE_LINE_MEMBER( fdc_drq ); - DECLARE_FLOPPY_FORMATS( floppy_formats ); + static void floppy_formats(format_registration &fr); required_device<i8272a_device> m_fdc; required_device<floppy_connector> m_floppy0; diff --git a/src/devices/bus/isbx/isbc_218a.cpp b/src/devices/bus/isbx/isbc_218a.cpp index 8e57a13877b..3c1dd92b4fa 100644 --- a/src/devices/bus/isbx/isbc_218a.cpp +++ b/src/devices/bus/isbx/isbc_218a.cpp @@ -24,11 +24,6 @@ DEFINE_DEVICE_TYPE(ISBC_218A, isbc_218a_device, "isbc_218a", "ISBX 218a for ISBC") - -//------------------------------------------------- -// floppy_format_type floppy_formats -//------------------------------------------------- - WRITE_LINE_MEMBER( isbc_218a_device::fdc_irq ) { m_slot->mintr1_w(state); @@ -39,10 +34,6 @@ WRITE_LINE_MEMBER( isbc_218a_device::fdc_drq ) m_slot->mdrqt_w(state); } -FLOPPY_FORMATS_MEMBER( isbc_218a_device::floppy_formats ) - FLOPPY_PC_FORMAT -FLOPPY_FORMATS_END - static void isbc_218a_floppies(device_slot_interface &device) { device.option_add("8dd", FLOPPY_8_DSDD); @@ -60,7 +51,7 @@ void isbc_218a_device::device_add_mconfig(machine_config &config) I8272A(config, m_fdc, 8_MHz_XTAL, true); m_fdc->intrq_wr_callback().set(FUNC(isbc_218a_device::fdc_irq)); m_fdc->drq_wr_callback().set(FUNC(isbc_218a_device::fdc_drq)); - FLOPPY_CONNECTOR(config, m_floppy0, isbc_218a_floppies, "525dd", isbc_218a_device::floppy_formats); + FLOPPY_CONNECTOR(config, m_floppy0, isbc_218a_floppies, "525dd", floppy_image_device::default_pc_floppy_formats); } diff --git a/src/devices/bus/isbx/isbc_218a.h b/src/devices/bus/isbx/isbc_218a.h index bdf37c52806..c654c74aae8 100644 --- a/src/devices/bus/isbx/isbc_218a.h +++ b/src/devices/bus/isbx/isbc_218a.h @@ -51,7 +51,7 @@ protected: private: DECLARE_WRITE_LINE_MEMBER( fdc_irq ); DECLARE_WRITE_LINE_MEMBER( fdc_drq ); - DECLARE_FLOPPY_FORMATS( floppy_formats ); + static void floppy_formats(format_registration &fr); required_device<i8272a_device> m_fdc; required_device<floppy_connector> m_floppy0; |