From 426274386a03781a855c876dbceeb81f9d23dcb1 Mon Sep 17 00:00:00 2001 From: Olivier Galibert Date: Fri, 5 Mar 2021 15:49:57 +0100 Subject: floppy: make format determination earlier --- src/devices/imagedev/floppy.cpp | 19 ++++++++++++------- src/devices/imagedev/floppy.h | 2 +- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/src/devices/imagedev/floppy.cpp b/src/devices/imagedev/floppy.cpp index d8dee6b96f1..ee5b22c001d 100644 --- a/src/devices/imagedev/floppy.cpp +++ b/src/devices/imagedev/floppy.cpp @@ -398,17 +398,24 @@ void floppy_image_device::commit_image() output_format->save(&io, variants, image.get()); } -//------------------------------------------------- -// device_start - device-specific startup -//------------------------------------------------- - -void floppy_image_device::device_start() +void floppy_image_device::device_config_complete() { rpm = 0; motor_always_on = false; dskchg_writable = false; has_trk00_sensor = true; + setup_characteristics(); + register_formats(); +} + + +//------------------------------------------------- +// device_start - device-specific startup +//------------------------------------------------- + +void floppy_image_device::device_start() +{ // better would be an extra parameter in the MCFG macro drive_index = atoi(owner()->basetag()); @@ -431,8 +438,6 @@ void floppy_image_device::device_start() ready_counter = 0; phases = 0; - setup_characteristics(); - register_formats(); if (m_make_sound) m_sound_out = subdevice(FLOPSND_TAG); diff --git a/src/devices/imagedev/floppy.h b/src/devices/imagedev/floppy.h index b6bee52a775..ab716104f7e 100644 --- a/src/devices/imagedev/floppy.h +++ b/src/devices/imagedev/floppy.h @@ -167,7 +167,7 @@ protected: virtual void device_start() override; virtual void device_reset() override; virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override; - + virtual void device_config_complete() override; virtual void device_add_mconfig(machine_config &config) override; // device_image_interface implementation -- cgit v1.2.3