diff --git a/Storage/Disk/DiskImage/Formats/AcornADF.cpp b/Storage/Disk/DiskImage/Formats/AcornADF.cpp index 5db4e51ba..3b4a1c7c4 100644 --- a/Storage/Disk/DiskImage/Formats/AcornADF.cpp +++ b/Storage/Disk/DiskImage/Formats/AcornADF.cpp @@ -9,6 +9,7 @@ #include "AcornADF.hpp" #include +#include "../../Encodings/MFM/Constants.hpp" #include "../../Encodings/MFM/Encoder.hpp" #include "../../Track/TrackSerialiser.hpp" #include "../../Encodings/MFM/SegmentParser.hpp" @@ -90,7 +91,7 @@ std::shared_ptr AcornADF::get_track_at_position(unsigned int head, unsign void AcornADF::set_track_at_position(unsigned int head, unsigned int position, const std::shared_ptr &track) { std::map sectors = Storage::Encodings::MFM::sectors_from_segment( - Storage::Disk::track_serialisation(*track, Time(1, 100000)), + Storage::Disk::track_serialisation(*track, Storage::Encodings::MFM::MFMBitLength), true); std::vector parsed_track(sectors_per_track*bytes_per_sector, 0); diff --git a/Storage/Disk/Encodings/MFM/Constants.hpp b/Storage/Disk/Encodings/MFM/Constants.hpp index 06fe8a4f1..2fa43e7af 100644 --- a/Storage/Disk/Encodings/MFM/Constants.hpp +++ b/Storage/Disk/Encodings/MFM/Constants.hpp @@ -9,6 +9,8 @@ #ifndef Constants_h #define Constants_h +#include "../../../Storage.hpp" + namespace Storage { namespace Encodings { namespace MFM { @@ -30,6 +32,9 @@ const uint16_t MFMPostSyncCRCValue = 0xcdb4; // the value the CRC generator sho const uint8_t MFMIndexSyncByteValue = 0xc2; const uint8_t MFMSyncByteValue = 0xa1; +const Time MFMBitLength = Time(1, 100000); +const Time FMBitLength = Time(1, 50000); + } } }