Thomas Harte
|
8960f471a0
|
Use unspread_bits for FM and MFM decoding.
|
2021-10-12 15:18:50 -07:00 |
|
Thomas Harte
|
955cb6411c
|
Factor out bit spreading.
(And do a better job of it)
|
2021-10-12 14:49:01 -07:00 |
|
Thomas Harte
|
addf9f9af4
|
Moves block byte writes into Storage::Encodings::MFM::Encoder .
|
2021-10-10 16:06:51 -07:00 |
|
Thomas Harte
|
da8563733b
|
Adds an informal guarantee.
|
2020-11-16 19:53:17 -05:00 |
|
Thomas Harte
|
5ebbab6f35
|
Further relax Apple GCR static analysis requirements.
|
2020-07-20 19:50:33 -04:00 |
|
Thomas Harte
|
c7ef258494
|
Ensures that five-and-three sectors pass static analysis.
|
2020-07-16 21:44:14 -04:00 |
|
Thomas Harte
|
8da7806ee9
|
Liberalises segment parser not necessarily to require a standard epilogue.
It seems that real disks don't always have them; I guess the boot ROM doesn't require one.
|
2020-07-15 22:27:04 -04:00 |
|
Thomas Harte
|
73131735fa
|
Further qmake warning corrections.
|
2020-05-30 19:31:17 -04:00 |
|
Thomas Harte
|
48afc54af6
|
Cuts down unused parameter warnings to just a few that may well indicate implementation errors.
|
2020-05-30 01:06:43 -04:00 |
|
Thomas Harte
|
25996ce180
|
Further doubles down on construction syntax for type conversions.
|
2020-05-09 23:00:39 -04:00 |
|
Thomas Harte
|
ea26f4f7bf
|
Eliminates test code, adds a caveat.
|
2020-03-25 21:22:30 -04:00 |
|
Thomas Harte
|
5fd2be3c8e
|
Makes a genuine attempt at five and three decoding.
|
2020-03-25 20:50:26 -04:00 |
|
Thomas Harte
|
2320b5c1fe
|
Takes some steps towards five-and-three decoding.
Now I 'just' need to figure out how bits are distributed within the decoded sector. The XORing and data checksum seem the same (?)
|
2020-03-25 00:15:31 -04:00 |
|
Thomas Harte
|
e5cbdfc67c
|
It turns out that 5-and-3 disks have a different header prologue.
|
2020-03-24 21:59:55 -04:00 |
|
Thomas Harte
|
1b4b6b0aee
|
Renames: NumberTheory -> Numeric.
|
2020-01-19 23:14:35 -05:00 |
|
Thomas Harte
|
357137918d
|
Adds fuzzy but marking through the GetTrackWithSectors interface.
|
2020-01-19 21:41:10 -05:00 |
|
Thomas Harte
|
da3ee381f4
|
Attempts a full wiring up of fuzzy bits.
|
2020-01-19 21:20:21 -05:00 |
|
Thomas Harte
|
b0326530d6
|
Allows fuzzy masks to be fed into the FM and MFM encoders.
|
2020-01-19 21:08:15 -05:00 |
|
Thomas Harte
|
84f5feab70
|
Properly flags up overloads.
|
2020-01-19 20:37:54 -05:00 |
|
Thomas Harte
|
50348c9fe7
|
Adds the ability to substitute a target during encoding.
|
2020-01-19 12:11:56 -05:00 |
|
Thomas Harte
|
1f539822ee
|
Adds better support for WD-esque false sync, improves STX track patching.
|
2020-01-13 22:19:48 -05:00 |
|
Thomas Harte
|
c0b5bfe726
|
Ensure no possible return without value.
|
2020-01-02 23:43:53 -05:00 |
|
Thomas Harte
|
0dae608da5
|
Embraces std::make_[unique/shared] in place of .reset(new .
|
2019-12-23 21:31:46 -05:00 |
|
Thomas Harte
|
34a3790e11
|
Minor static_cast clean-ups.
|
2019-12-22 17:56:59 -05:00 |
|
Thomas Harte
|
e9318efeb6
|
Switches to std::make_shared/make_unique in a bunch of applicable places.
No doubt many more similar improvements are available, these are just the ones that were easy to find.
|
2019-12-21 23:34:25 -05:00 |
|
Thomas Harte
|
797abae4b3
|
Compacts gaps when necessary to fit more sectors.
|
2019-12-19 19:36:19 -05:00 |
|
Thomas Harte
|
786b26d23e
|
Adds an admission of incompleteness.
I really need to figure out the 5-and-3 encoding.
|
2019-07-26 23:23:40 -04:00 |
|
Thomas Harte
|
79a624e696
|
Applies more rigorous logic to deciding when to stop parsing.
|
2019-07-16 18:06:54 -04:00 |
|
Thomas Harte
|
46b98dab70
|
Bumps up the amount of reserved storage.
To avoid a reallocation when reading Mac data.
|
2019-07-15 17:12:31 -04:00 |
|
Thomas Harte
|
5a9f3cfc1e
|
Completes Mac GCR decoding and its associated test.
|
2019-07-11 17:37:07 -04:00 |
|
Thomas Harte
|
8f28b33342
|
Starts work on Macintosh GCR decoding.
|
2019-07-11 16:28:52 -04:00 |
|
Thomas Harte
|
df56e6fe53
|
Fixed: the sector number also goes into sector bodies.
Also the checksum is written in the other order, and the final byte of data isn't output.
|
2019-06-18 10:34:10 -04:00 |
|
Thomas Harte
|
5c8aacdc17
|
Fixes the more obvious issues with GCR encoding: byte order, top bit selection.
|
2019-06-16 17:17:24 -04:00 |
|
Thomas Harte
|
fe0dc4df88
|
Starts building out some tests for Apple GCR encoding.
|
2019-06-15 22:48:24 -04:00 |
|
Thomas Harte
|
33f2664fe9
|
Makes a first attempt at Macintosh GCR encoding.
|
2019-06-15 22:29:02 -04:00 |
|
Thomas Harte
|
a17e47fa43
|
Apple's GCR header varies between the Mac and the Apple II.
|
2019-06-15 16:32:56 -04:00 |
|
Thomas Harte
|
1033abd9fe
|
Starts making some space for Macintosh-style GCR encoding.
|
2019-06-04 15:41:15 -04:00 |
|
Thomas Harte
|
2ef6d4327c
|
Resolves further build warnings.
|
2019-01-13 20:37:50 -05:00 |
|
Thomas Harte
|
cc95e587db
|
Adds virtual destructors for various interface classes.
|
2019-01-13 19:19:01 -05:00 |
|
Thomas Harte
|
2d83eeb9c4
|
Further minor style improvements.
|
2018-07-01 17:59:43 -04:00 |
|
Thomas Harte
|
be664b5695
|
Ensures that start positions are properly related to sectors.
|
2018-07-01 15:53:48 -04:00 |
|
Thomas Harte
|
c3751066b7
|
Ensures segments are properly sized.
|
2018-07-01 15:43:31 -04:00 |
|
Thomas Harte
|
1471a35bb8
|
Reserves a more appropriate amount of data.
|
2018-07-01 14:40:48 -04:00 |
|
Thomas Harte
|
555c2a4377
|
Makes a first sweep at converting the storage underlying PCMSegment to vector<bool> .
This is to remove another pain point, in preparation for the work immediately forthcoming but also work as-yet unknown.
|
2018-07-01 12:05:41 -04:00 |
|
Thomas Harte
|
853261364e
|
Generalised CRC generation and created specific subclasses for the CCITT CRC16 and CRC32.
|
2018-05-23 22:21:57 -04:00 |
|
Thomas Harte
|
5d6b5d9f10
|
Eliminates all emdashes in cross-platform code.
|
2018-05-13 15:34:31 -04:00 |
|
Thomas Harte
|
0b771ce61a
|
Removes all instances of the copyright symbol.
|
2018-05-13 15:19:52 -04:00 |
|
Thomas Harte
|
3fdefb94e4
|
Removes requirement for correct sector epilogues.
It's now a length test that at present accepts 6-and-2 sectors only.
|
2018-05-12 23:03:08 -04:00 |
|
Thomas Harte
|
49592ebaf3
|
Ensures initialisation of scanner and that sectors overlapping the end of track are captured.
|
2018-05-12 18:42:07 -04:00 |
|
Thomas Harte
|
f65c65569a
|
Makes disk head position explicitly something with sub-integral precision.
Also as a drive-by fix, corrects accidental assumption of 10 sectors for all MFMSectorDump descendants.
|
2018-05-06 23:17:36 -04:00 |
|