diff options
author | 2022-01-03 03:47:01 -0500 | |
---|---|---|
committer | 2022-01-03 09:47:01 +0100 | |
commit | fbff8a2483f0fd6eea53995fdf189817f81435d8 (patch) | |
tree | 7e2a641d018198bdcebd332b070bb74cf5f65cd2 /src/lib/formats/coco_rawdsk.cpp | |
parent | 53d6b930ef0b871aa041040fce22ee09bb74678d (diff) |
Reimplemented support for the CoCo's RS-DOS filesystem on top of the "fsmgr" framework (currently read only) (#9080)
* Reimplemented support for the CoCo's RS-DOS filesystem on top of the "fsmgr" framework (currently read only)
* Added support for file_type and ascii_flag metadata, minor bug fix decoding file allocation table entries
* Creating a "CoCo Raw Disk" format and changing the CoCo RS-DOS filesystem to use it
* 1. Adding COCO_RAWDSK to all.cpp
2. Fixing sector order on CoCo raw disk
Diffstat (limited to 'src/lib/formats/coco_rawdsk.cpp')
-rw-r--r-- | src/lib/formats/coco_rawdsk.cpp | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/src/lib/formats/coco_rawdsk.cpp b/src/lib/formats/coco_rawdsk.cpp new file mode 100644 index 00000000000..6100483dda3 --- /dev/null +++ b/src/lib/formats/coco_rawdsk.cpp @@ -0,0 +1,45 @@ +// license:BSD-3-Clause +// copyright-holders:Nathan Woods +/*************************************************************************** + + CoCo Raw Disk + +***************************************************************************/ + +#include "coco_rawdsk.h" + + +coco_rawdsk_format::coco_rawdsk_format() : wd177x_format(formats) +{ +} + +const char *coco_rawdsk_format::name() const +{ + return "coco_rawdsk"; +} + +const char *coco_rawdsk_format::description() const +{ + return "CoCo Raw Disk"; +} + +const char *coco_rawdsk_format::extensions() const +{ + return "raw"; +} + +const coco_rawdsk_format::format coco_rawdsk_format::formats[] = +{ + { + floppy_image::FF_525, floppy_image::SSDD, floppy_image::MFM, + 2000, 18, 35, 1, 256, {}, -1, { 1,12,5,16,9,2,13,6,17,10,3,14,7,18,11,4,15,8 }, 32, 22, 24 + }, + { + floppy_image::FF_525, floppy_image::SSDD, floppy_image::MFM, + 2000, 18, 40, 1, 256, {}, -1, { 1,12,5,16,9,2,13,6,17,10,3,14,7,18,11,4,15,8 }, 32, 22, 24 + }, + {} +}; + + +const floppy_format_type FLOPPY_COCO_RAWDSK_FORMAT = &floppy_image_format_creator<coco_rawdsk_format>; |