Commit Graph

23 Commits

Author SHA1 Message Date
David Given
5ce2acdfb4 The new decoder architecture now works, at least for the FB100. All I need now
is to rewrite every single other decoder.
2019-04-18 00:47:28 +02:00
David Given
6e31a9e4ae Refactor so track state is passed around in the Track object. 2019-04-16 22:49:35 +02:00
David Given
7a49ec7819 Moderately crudely hack in routing side information to the decoders; this is
needed by the Victor 9000 decoder to figure out the right clock rate.
2019-04-16 19:50:25 +02:00
David Given
9b59e7025d Add the ability for decoders to specify their own clocks --- necessary for the
Victor 9k. We now have _much_ better decoding for this platform.
2019-04-16 01:13:28 +02:00
David Given
84076674fd Add stateful decoders, which makes formats like the FB-100 much easier to work
with. Add a generic CRC tool allowing all the parameters to be set (currently
unused).
2019-04-12 00:13:56 +02:00
David Given
490821da09 Hard sector segmentation can now cope with the extra index hole. We are
correctly decoding the Zilog MCZ disk.
2019-03-09 12:32:42 +01:00
David Given
cf9730fbb3 Splitting by hard sectors works, up to a point; we can correctly decode (with
CRC checking!) most of the Zilog MCS disk. However, we're still stumped by the
extra index hole.
2019-03-09 12:19:28 +01:00
David Given
456791e20c Refactor to use FluxmapReader. 2019-03-09 11:30:50 +01:00
David Given
574d383573 Remove discrete segmenters, instead rolling the logic into Decoders; prepare
for splitting decoders into soft-sector and hard-sector.
2019-03-08 23:57:46 +01:00
David Given
6d530c332e Tweak signal floor: the Brother disk doesn't read any more. 2019-03-03 22:12:13 +01:00
David Given
06af553760 Make the noise floor and signal level configurable for clock detection. 2019-03-02 11:56:17 +01:00
David Given
e16a9f77f3 Skip long runs of noise in the clock histogram. 2019-03-01 17:15:39 +01:00
David Given
c1edff2b7e Eek, calculate the noise floor properly! 2019-03-01 16:58:18 +01:00
David Given
719e8801fe Allow the clock to be specified manually. Turn the clock histogram into an
actual bar chart.
2019-03-01 16:53:22 +01:00
David Given
f5a3f18478 Cleanup (the Fluxmap doesn't store intervals any more, just byte opcode
things).
2019-02-22 20:25:28 +01:00
David Given
79e3e686eb Update the read path of the client to cope with long intervals. 2019-02-22 20:18:22 +01:00
David Given
e53841f79d Use a bit more statistical nous when trying to sense the bit rate, and use the
median of the pulse to pick the normative clock rate.
2019-02-20 22:09:06 +01:00
David Given
259a02898f Massive refactor to overhaul and simplify the decoder system. Amiga has been
disabled (because it needs rewriting now).
2019-02-19 00:39:13 +01:00
David Given
61d98073a7 Add support for reading Kryoflux stream files. 2019-02-14 21:44:23 +01:00
David Given
3da75c0f9b Add a very simple clock histogram display. 2019-01-22 00:05:16 +01:00
David Given
cce65d7bd0 Common out the disk read code between the two fe-read commands. 2019-01-21 23:30:30 +01:00
David Given
ed41bc013f More refactoring. 2019-01-01 20:04:04 +01:00
David Given
8244f9ec51 We can now decode IBM MFM disks all the way to an image, although with no CRC
checking as yet.
2018-10-20 19:25:20 +02:00