From d52ffe6d88a877557be7a83ed9e70a5f334aa5a2 Mon Sep 17 00:00:00 2001 From: Dirk Best Date: Wed, 1 Nov 2017 11:36:22 +0100 Subject: [PATCH] floppy: Add TEAC FD-30A 3 inch floppy drive --- src/devices/imagedev/floppy.cpp | 36 +++++++++++++++++++++++++++++++++ src/devices/imagedev/floppy.h | 1 + 2 files changed, 37 insertions(+) diff --git a/src/devices/imagedev/floppy.cpp b/src/devices/imagedev/floppy.cpp index 549dc4b7cbd..deaf8400aec 100644 --- a/src/devices/imagedev/floppy.cpp +++ b/src/devices/imagedev/floppy.cpp @@ -100,6 +100,9 @@ DEFINE_DEVICE_TYPE(SONY_OA_D31V, sony_oa_d31v, "sony_oa_d31v", "Sony OA-D31V Mic DEFINE_DEVICE_TYPE(SONY_OA_D32W, sony_oa_d32w, "sony_oa_d32w", "Sony OA-D32W Micro Floppydisk Drive") DEFINE_DEVICE_TYPE(SONY_OA_D32V, sony_oa_d32v, "sony_oa_d32v", "Sony OA-D32V Micro Floppydisk Drive") +// TEAC 3" drives +DEFINE_DEVICE_TYPE(TEAC_FD_30A, teac_fd_30a, "teac_fd_30a", "TEAC FD-30A FDD") + // TEAC 5.25" drives #if 0 DEFINE_DEVICE_TYPE(TEAC_FD_55A, teac_fd_55a, "teac_fd_55a", "TEAC FD-55A FDD") @@ -2150,6 +2153,39 @@ void sony_oa_d32v::handled_variants(uint32_t *variants, int &var_count) const variants[var_count++] = floppy_image::SSDD; } +//------------------------------------------------- +// TEAC FD-30A +// +// track to track: 12 ms +// average: 171 ms +// setting time: 15 ms +// motor start time: 400 ms +// +//------------------------------------------------- + +teac_fd_30a::teac_fd_30a(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : + floppy_image_device(mconfig, TEAC_FD_30A, tag, owner, clock) +{ +} + +teac_fd_30a::~teac_fd_30a() +{ +} + +void teac_fd_30a::setup_characteristics() +{ + form_factor = floppy_image::FF_3; + tracks = 40; + sides = 1; + set_rpm(300); +} + +void teac_fd_30a::handled_variants(uint32_t *variants, int &var_count) const +{ + var_count = 0; + variants[var_count++] = floppy_image::SSSD; +} + //------------------------------------------------- // TEAC FD-55E // diff --git a/src/devices/imagedev/floppy.h b/src/devices/imagedev/floppy.h index d30b338c6e9..9e458b141cc 100644 --- a/src/devices/imagedev/floppy.h +++ b/src/devices/imagedev/floppy.h @@ -261,6 +261,7 @@ DECLARE_FLOPPY_IMAGE_DEVICE(EPSON_SD_321, epson_sd_321, "floppy_5_ DECLARE_FLOPPY_IMAGE_DEVICE(SONY_OA_D31V, sony_oa_d31v, "floppy_3_5") DECLARE_FLOPPY_IMAGE_DEVICE(SONY_OA_D32W, sony_oa_d32w, "floppy_3_5") DECLARE_FLOPPY_IMAGE_DEVICE(SONY_OA_D32V, sony_oa_d32v, "floppy_3_5") +DECLARE_FLOPPY_IMAGE_DEVICE(TEAC_FD_30A, teac_fd_30a, "floppy_3") DECLARE_FLOPPY_IMAGE_DEVICE(TEAC_FD_55E, teac_fd_55e, "floppy_5_25") DECLARE_FLOPPY_IMAGE_DEVICE(TEAC_FD_55F, teac_fd_55f, "floppy_5_25") DECLARE_FLOPPY_IMAGE_DEVICE(TEAC_FD_55G, teac_fd_55g, "floppy_5_25")