diff options
author | 2015-11-08 12:56:12 +0100 | |
---|---|---|
committer | 2015-11-08 12:56:12 +0100 | |
commit | 7c19aac60e12d6f5ea301bdb34d7826a01e0b06f (patch) | |
tree | f310d86aa2c6bfc19d115307dedde4eb0cd52dad /src/lib/formats/apollo_dsk.cpp | |
parent | a57b46ae933badd7441ce1644711dbb851e2b504 (diff) |
Rename *.c -> *.cpp in our source (nw)
Diffstat (limited to 'src/lib/formats/apollo_dsk.cpp')
-rw-r--r-- | src/lib/formats/apollo_dsk.cpp | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/src/lib/formats/apollo_dsk.cpp b/src/lib/formats/apollo_dsk.cpp new file mode 100644 index 00000000000..29dbe23b0b5 --- /dev/null +++ b/src/lib/formats/apollo_dsk.cpp @@ -0,0 +1,55 @@ +// license:BSD-3-Clause +// copyright-holders:Olivier Galibert +/********************************************************************* + + formats/apollo_dsk.c + + apollo format + +*********************************************************************/ + +#include <assert.h> + +#include "formats/apollo_dsk.h" + +apollo_format::apollo_format() : upd765_format(formats) +{ +} + +const char *apollo_format::name() const +{ + return "apollo"; +} + +const char *apollo_format::description() const +{ + return "APOLLO disk image"; +} + +const char *apollo_format::extensions() const +{ + return "afd"; +} + +// Unverified gap sizes +const apollo_format::format apollo_format::formats[] = { + { + floppy_image::FF_525, floppy_image::DSHD, floppy_image::MFM, + 1200, // 1us, 360rpm + 8, 77, 2, + 1024, {}, + 1, {}, + 80, 50, 22, 80 + }, + {} +}; + +const floppy_format_type FLOPPY_APOLLO_FORMAT = &floppy_image_format_creator<apollo_format>; + +int apollo_format::identify(io_generic *io, UINT32 form_factor) +{ + UINT64 size = io_generic_size(io); + UINT32 expected_size = 77*2*8*1024; + + return ((size == expected_size) || (size == 0)) ? 1 : 0; +} |