summaryrefslogtreecommitdiffstatshomepage
path: root/src/lib/formats/opd_dsk.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/formats/opd_dsk.cpp')
-rw-r--r--src/lib/formats/opd_dsk.cpp17
1 files changed, 9 insertions, 8 deletions
diff --git a/src/lib/formats/opd_dsk.cpp b/src/lib/formats/opd_dsk.cpp
index b45b58762ed..e3bed7a2017 100644
--- a/src/lib/formats/opd_dsk.cpp
+++ b/src/lib/formats/opd_dsk.cpp
@@ -15,31 +15,32 @@ opd_format::opd_format() : wd177x_format(formats)
{
}
-const char *opd_format::name() const
+const char *opd_format::name() const noexcept
{
return "opd";
}
-const char *opd_format::description() const
+const char *opd_format::description() const noexcept
{
return "Opus Discovery disk image";
}
-const char *opd_format::extensions() const
+const char *opd_format::extensions() const noexcept
{
return "opd,opu";
}
-int opd_format::identify(io_generic *io, uint32_t form_factor)
+int opd_format::identify(util::random_read &io, uint32_t form_factor, const std::vector<uint32_t> &variants) const
{
- int type = find_size(io, form_factor);
+ int const type = find_size(io, form_factor, variants);
if (type != -1)
- return 90;
+ return FIFID_SIZE;
+
return 0;
}
-int opd_format::get_image_offset(const format &f, int head, int track)
+int opd_format::get_image_offset(const format &f, int head, int track) const
{
return (f.track_count * head + track) * compute_track_size(f);
}
@@ -58,4 +59,4 @@ const opd_format::format opd_format::formats[] =
};
-const floppy_format_type FLOPPY_OPD_FORMAT = &floppy_image_format_creator<opd_format>;
+const opd_format FLOPPY_OPD_FORMAT;