diff options
Diffstat (limited to 'src/devices/imagedev/floppy.h')
-rw-r--r-- | src/devices/imagedev/floppy.h | 31 |
1 files changed, 20 insertions, 11 deletions
diff --git a/src/devices/imagedev/floppy.h b/src/devices/imagedev/floppy.h index 95f2442d308..a57b2c7b72e 100644 --- a/src/devices/imagedev/floppy.h +++ b/src/devices/imagedev/floppy.h @@ -265,9 +265,13 @@ DECLARE_FLOPPY_IMAGE_DEVICE(alps_3255190x, "floppy_5_25") extern const device_type FLOPPYSOUND; + /* Floppy drive sound */ + +#define MAX_STEP_SAMPLES 5 + class floppy_sound_device : public samples_device { public: @@ -286,21 +290,26 @@ private: sound_stream* m_sound; bool m_loaded; - - int m_sampleend_motor; + bool m_is525; // true if this is a 5.25" floppy drive + + int m_sampleindex_motor_start; + int m_sampleindex_motor_loop; + int m_sampleindex_motor_end; + int m_samplesize_motor_start; + int m_samplesize_motor_loop; + int m_samplesize_motor_end; int m_samplepos_motor; - int m_samplestart_motor; - int m_motor_mintime; // min time for the samples; sound persists for that time - int m_motor_time; - bool m_motor; + int m_motor_playback_state; + bool m_motor_on; - int m_sampleend_step; - int m_samplestart_step; + int m_step_samples; + int m_sampleindex_step1; + int m_samplesize_step[MAX_STEP_SAMPLES]; int m_samplepos_step; - int m_step_mintime; - int m_step_time; + int m_step_playback_state; }; + class floppy_connector: public device_t, public device_slot_interface { @@ -318,7 +327,7 @@ protected: private: const floppy_format_type *formats; - bool m_enable_sound; + bool m_enable_sound; }; |