summaryrefslogtreecommitdiffstatshomepage
path: root/src/lib/formats/fs_oric_jasmin.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/formats/fs_oric_jasmin.h')
-rw-r--r--src/lib/formats/fs_oric_jasmin.h35
1 files changed, 35 insertions, 0 deletions
diff --git a/src/lib/formats/fs_oric_jasmin.h b/src/lib/formats/fs_oric_jasmin.h
new file mode 100644
index 00000000000..f2f212b1065
--- /dev/null
+++ b/src/lib/formats/fs_oric_jasmin.h
@@ -0,0 +1,35 @@
+// license:BSD-3-Clause
+// copyright-holders:Olivier Galibert
+
+// Creation of Oric Jasmin floppy images
+
+#ifndef MAME_FORMATS_FS_ORIC_JASMIN_H
+#define MAME_FORMATS_FS_ORIC_JASMIN_H
+
+#pragma once
+
+#include "fsmgr.h"
+
+class fs_oric_jasmin : public filesystem_manager_t {
+public:
+ class impl : public filesystem_t {
+ public:
+ impl(fsblk_t &blockdev) : filesystem_t(blockdev) {}
+ virtual ~impl() = default;
+
+ virtual void format() override;
+ };
+
+ fs_oric_jasmin() : filesystem_manager_t() {}
+
+ virtual void enumerate(floppy_enumerator &fe, uint32_t form_factor, const std::vector<uint32_t> &variants) const override;
+ virtual std::unique_ptr<filesystem_t> mount(fsblk_t &blockdev) const override;
+
+ virtual bool can_format() const override;
+ virtual bool can_read() const override;
+ virtual bool can_write() const override;
+};
+
+extern const filesystem_manager_type FS_ORIC_JASMIN;
+
+#endif