summaryrefslogtreecommitdiffstatshomepage
path: root/src/lib/formats/pc_dsk.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/formats/pc_dsk.cpp')
-rw-r--r--src/lib/formats/pc_dsk.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/lib/formats/pc_dsk.cpp b/src/lib/formats/pc_dsk.cpp
index 73ef727cdaf..32b6f079bbb 100644
--- a/src/lib/formats/pc_dsk.cpp
+++ b/src/lib/formats/pc_dsk.cpp
@@ -159,6 +159,18 @@ const char *pc_format::extensions() const
return "dsk,ima,img,ufi,360";
}
+int pc_format::identify(io_generic *io, uint32_t form_factor)
+{
+ uint64_t size = io_generic_size(io);
+
+ /* some 360K images have a 512-byte header */
+ if (size == 368640 + 0x200) {
+ file_header_skip_bytes = 0x200;
+ }
+
+ return upd765_format::identify(io, form_factor);
+}
+
const pc_format::format pc_format::formats[] = {
{ /* 160K 5 1/4 inch double density single sided */
floppy_image::FF_525, floppy_image::SSDD, floppy_image::MFM,