summaryrefslogtreecommitdiffstatshomepage
path: root/src/lib/formats/fs_unformatted.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/formats/fs_unformatted.h')
-rw-r--r--src/lib/formats/fs_unformatted.h48
1 files changed, 48 insertions, 0 deletions
diff --git a/src/lib/formats/fs_unformatted.h b/src/lib/formats/fs_unformatted.h
new file mode 100644
index 00000000000..5bcaaf1e34e
--- /dev/null
+++ b/src/lib/formats/fs_unformatted.h
@@ -0,0 +1,48 @@
+// license:BSD-3-Clause
+// copyright-holders:Olivier Galibert
+
+// Creation of unformatted floppy images
+
+#ifndef MAME_FORMATS_FS_UNFORMATTED_H
+#define MAME_FORMATS_FS_UNFORMATTED_H
+
+#pragma once
+
+#include "fsmgr.h"
+
+class fs_unformatted : public filesystem_manager_t {
+public:
+ fs_unformatted() : filesystem_manager_t() {}
+
+ virtual void enumerate(floppy_enumerator &fe, uint32_t form_factor, const std::vector<uint32_t> &variants) const override;
+ virtual void floppy_instantiate_raw(u32 key, floppy_image *image) const override;
+
+private:
+ enum {
+ FSI_NONE,
+
+ FSI_8_SSSD,
+ FSI_8_DSSD,
+ FSI_8_DSDD,
+
+ FSI_525_SSSD,
+ FSI_525_SSDD,
+ FSI_525_SSQD,
+ FSI_525_DSSD,
+ FSI_525_DSDD,
+ FSI_525_DSQD,
+ FSI_525_DSHD,
+
+ FSI_35_SSDD,
+ FSI_35_DSDD,
+ FSI_35_DSHD,
+ FSI_35_DSED,
+
+ FSI_3_DSDD,
+ FSI_3_SSDD,
+ };
+};
+
+extern const filesystem_manager_type FS_UNFORMATTED;
+
+#endif