1
0
mirror of https://github.com/TomHarte/CLK.git synced 2024-11-23 03:32:32 +00:00
CLK/Storage/Disk
Thomas Harte 73080d6c36 Added an easy way for disk controllers to clamp termination of written data exactly to the index hole.
This commit also temporarily provides a whole load of extra logging and minor logic improvements from the 8272. I'm mid-flow on finding a particularly vicious error in its handling of writing; wait for the pull request. But, at least: now waits for the first part of a post-ID gap before writing data, and attempts partially to handle appearance of the index hole during writing a track. More work to do on that though.
2017-08-15 16:05:10 -04:00
..
Encodings Sought to correct my interpretation of 'gap 3'. 2017-08-13 21:52:48 -04:00
Formats Flagged as not read-only, at least for now, to allow 8272 writing tests definitively to function. 2017-08-13 18:54:39 -04:00
Parsers Added an attempt to deal with 16-bit allocation units, and to ensure middle-of-file holes are respected. 2017-08-11 10:59:37 -04:00
DigitalPhaseLockedLoop.cpp After a quick check, added a couple of other _delegate initialisations. I should probably find a way to template this. 2017-08-01 07:07:43 -04:00
DigitalPhaseLockedLoop.hpp Standardises on const [Half]Cycles as the thing called and returned, rather than const [Half]Cycles & as it's explicitly defined to be only one int in size, so using a reference is overly weighty. 2017-07-27 22:05:29 -04:00
Disk.cpp Completed curly bracket movement. 2017-03-26 14:34:47 -04:00
Disk.hpp Made an attempt to explain the requirements placed upon Disk subclasses that wish to support writing. 2016-12-31 15:30:48 -05:00
DiskController.cpp Added an easy way for disk controllers to clamp termination of written data exactly to the index hole. 2017-08-15 16:05:10 -04:00
DiskController.hpp Added an easy way for disk controllers to clamp termination of written data exactly to the index hole. 2017-08-15 16:05:10 -04:00
Drive.cpp Sought more robustly (i.e. less repetitively) to handle dispatch, including cancelling seeks where appropriate. 2017-08-14 10:37:39 -04:00
Drive.hpp Entrusted further status to drives; also adjusted them to report read only if diskless, which I now believe to be correct. 2017-08-13 11:50:49 -04:00
MFMDiskController.cpp Added: write_id_data_joiner can now be instructed not to write the first portion of gap. Which makes more sense as an option, to avoiding splicing errors. 2017-08-15 15:29:23 -04:00
MFMDiskController.hpp Added: write_id_data_joiner can now be instructed not to write the first portion of gap. Which makes more sense as an option, to avoiding splicing errors. 2017-08-15 15:29:23 -04:00
PCMPatchedTrack.cpp Added an easy way for disk controllers to clamp termination of written data exactly to the index hole. 2017-08-15 16:05:10 -04:00
PCMPatchedTrack.hpp Added an easy way for disk controllers to clamp termination of written data exactly to the index hole. 2017-08-15 16:05:10 -04:00
PCMSegment.cpp Completed curly bracket movement. 2017-03-26 14:34:47 -04:00
PCMSegment.hpp If asynchronous background processing is to occur on tracks then, given that they inherently have state, they'll need to be copyable, and ideally 'cheaply' (though it's not too great a priority). So started implementing appropriate copy constructors. Also introduced an extra level of indirection to PCMSegmentEventSource so that it can copy itself without copying the underlying PCMSegment, which is 95% of the heft of a track in all currently-implemented cases. 2016-12-30 14:23:26 -05:00
PCMTrack.cpp Completed curly bracket movement. 2017-03-26 14:34:47 -04:00
PCMTrack.hpp After a quick bit of reading, discovered the virtual copy constructor pattern really is only a convention in C++, and conformed to it. Which hopefully gives copyable tracks. 2016-12-30 17:25:39 -05:00