Thomas Harte
d17fadbe0b
Avoid off-by-one error in sector decoding.
...
Specific issue: retaining the 256 bytes up to _and including_ the checksum, rather than excluding.
2022-09-16 15:47:38 -04:00
Thomas Harte
9cba56237d
Upgrade to constexpr
.
2022-09-16 15:46:09 -04: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
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
0dae608da5
Embraces std::make_[unique/shared] in place of .reset(new .
2019-12-23 21:31:46 -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
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
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
36f8b165cf
Makes the epilogue test a bit more thorough.
2018-05-05 20:52:42 -04:00
Thomas Harte
ba7fbc4032
Reroutes all Disk II types through the Disk II analyser and returns actual sector from the Apple GCR parser results.
2018-05-05 16:37:33 -04:00
Thomas Harte
c36d7b4972
Makes first attempt at 6 and 2 decoder.
2018-05-04 23:11:12 -04:00
Thomas Harte
e3b4aebf1a
Introduces the Disk II as a unique media target platform.
...
As it makes a little more sense to analyse Apple GCR images to determine target platform than it does to have the potential platforms vote over them.
Also starts on the parser that'll be necessary for making a decision.
2018-05-04 18:02:36 -04:00
Thomas Harte
2e20191c01
Relocates and cleans up what is currently written of Apple GCR handling as the encoder.
...
A decoder will be forthcoming.
2018-05-03 22:40:45 -04:00