summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/includes/thomson.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/includes/thomson.h')
-rw-r--r--src/mame/includes/thomson.h17
1 files changed, 11 insertions, 6 deletions
diff --git a/src/mame/includes/thomson.h b/src/mame/includes/thomson.h
index 9a8378836f6..ba3b4579564 100644
--- a/src/mame/includes/thomson.h
+++ b/src/mame/includes/thomson.h
@@ -28,6 +28,7 @@
#include "machine/mos6551.h"
#include "machine/ram.h"
#include "machine/thomflop.h"
+#include "machine/wd_fdc.h"
#include "sound/dac.h"
#include "sound/mea8000.h"
@@ -115,6 +116,7 @@ public:
m_ram(*this, RAM_TAG),
m_mc6846(*this, "mc6846"),
m_mc6843(*this, "mc6843"),
+ m_wd2793_fdc(*this, "wd2793"),
m_screen(*this, "screen"),
m_mainirq(*this, "mainirq"),
m_mainfirq(*this, "mainfirq"),
@@ -143,7 +145,8 @@ public:
m_biosbank(*this, TO8_BIOS_BANK),
m_cartlobank(*this, MO6_CART_LO),
m_carthibank(*this, MO6_CART_HI),
- m_floppy(*this, "floppy")
+ m_floppy_led(*this, "floppy"),
+ m_floppy_image(*this, "floppy%u", 0U)
{
}
@@ -342,7 +345,7 @@ public:
WRITE_LINE_MEMBER( fdc_index_1_w );
WRITE_LINE_MEMBER( fdc_index_2_w );
WRITE_LINE_MEMBER( fdc_index_3_w );
- void thomson_index_callback(legacy_floppy_image_device *device, int state);
+ void thomson_index_callback(int index, int state);
DECLARE_PALETTE_INIT(thom);
DECLARE_PALETTE_INIT(mo5);
@@ -389,6 +392,7 @@ protected:
required_device<ram_device> m_ram;
optional_device<mc6846_device> m_mc6846;
optional_device<mc6843_device> m_mc6843;
+ required_device<wd2793_device> m_wd2793_fdc;
required_device<screen_device> m_screen;
required_device<input_merger_device> m_mainirq;
required_device<input_merger_device> m_mainfirq;
@@ -418,7 +422,8 @@ protected:
optional_memory_bank m_cartlobank;
optional_memory_bank m_carthibank;
- output_finder<> m_floppy;
+ output_finder<> m_floppy_led;
+ required_device_array<legacy_floppy_image_device, 4> m_floppy_image;
/* bank logging and optimisations */
int m_old_cart_bank;
@@ -604,10 +609,10 @@ protected:
int thom_qdd_make_disk ( legacy_floppy_image_device* img, uint8_t* dst );
void to7_5p14_reset();
void to7_5p14_init();
- void to7_5p14_index_pulse_callback( device_t *controller,legacy_floppy_image_device *image, int state );
+ void to7_5p14_index_pulse_callback( int state );
void to7_5p14sd_reset();
void to7_5p14sd_init();
- void to7_qdd_index_pulse_cb( device_t *controller,legacy_floppy_image_device *image, int state );
+ void to7_qdd_index_pulse_cb( int state );
legacy_floppy_image_device * to7_qdd_image();
void to7_qdd_stat_update();
uint8_t to7_qdd_read_byte();
@@ -616,7 +621,7 @@ protected:
void to7_qdd_init();
legacy_floppy_image_device * thmfc_floppy_image();
int thmfc_floppy_is_qdd( legacy_floppy_image_device *image );
- void thmfc_floppy_index_pulse_cb( device_t *controller,legacy_floppy_image_device *image, int state );
+ void thmfc_floppy_index_pulse_cb( int index, int state );
int thmfc_floppy_find_sector( chrn_id* dst );
void thmfc_floppy_cmd_complete();
uint8_t thmfc_floppy_read_byte();