summaryrefslogtreecommitdiffstatshomepage
path: root/src/lib/formats/afs_dsk.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/formats/afs_dsk.cpp')
-rw-r--r--src/lib/formats/afs_dsk.cpp17
1 files changed, 9 insertions, 8 deletions
diff --git a/src/lib/formats/afs_dsk.cpp b/src/lib/formats/afs_dsk.cpp
index ee89e26a87e..5a1d9a63526 100644
--- a/src/lib/formats/afs_dsk.cpp
+++ b/src/lib/formats/afs_dsk.cpp
@@ -15,31 +15,32 @@ afs_format::afs_format() : wd177x_format(formats)
{
}
-const char *afs_format::name() const
+const char *afs_format::name() const noexcept
{
return "afs";
}
-const char *afs_format::description() const
+const char *afs_format::description() const noexcept
{
return "Acorn FileStore disk image";
}
-const char *afs_format::extensions() const
+const char *afs_format::extensions() const noexcept
{
return "adl,img";
}
-int afs_format::identify(io_generic *io, uint32_t form_factor)
+int afs_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 type = find_size(io, form_factor, variants);
if (type != -1)
- return 50;
+ return FIFID_SIZE;
+
return 0;
}
-int afs_format::get_image_offset(const format &f, int head, int track)
+int afs_format::get_image_offset(const format &f, int head, int track) const
{
if (f.sector_base_id == -1)
return (track * f.head_count + head) * compute_track_size(f);
@@ -57,4 +58,4 @@ const afs_format::format afs_format::formats[] =
};
-const floppy_format_type FLOPPY_AFS_FORMAT = &floppy_image_format_creator<afs_format>;
+const afs_format FLOPPY_AFS_FORMAT;