David Given
adff739a5d
Partial conversion to do automatic scaling of flux based on the disk rotation
...
speed. Although, something seems to have broken for 5.25" disks.
2022-03-27 23:50:32 +02:00
David Given
d303067deb
Massive refactor to work in logical cylinders everywhere. The logical/physical
...
mapping is now done at the last stage and should, ideally, be automatic. I'm
sure there are bugs everywhere.
2022-03-25 00:22:28 +01:00
David Given
96214bf3fd
Refactor for better multi-read support. Each read is now held separately, with
...
F_DESYNC being deprecated, and FluxSource returns an iterator which can be used
to retry reads.
2022-03-07 00:07:42 +01:00
David Given
40bca8b38c
Merge pull request #370 from tdaede/rescale
2022-01-10 23:02:18 +01:00
David Given
3d1ee7a43e
Don't spin in an infinite loop if the decoder tries to find a data record and
...
the matcher fails to find anything, leaving the seek point unchanged.
2021-12-10 19:56:00 +00:00
Thomas Daede
ce1daf6a2b
Add option to rescale flux sink pulses.
...
Note that this does not affect the decoder used for verify,
but at least for tame rescaling the decoders are still able to
lock.
This is a precursor to automatic scaling via the disk speed
measurement.
2021-12-07 14:45:32 -08:00
Thomas Daede
0c3c08db36
SCP: Only write the last continuous fluxmap.
2021-12-06 11:47:42 -08:00
dg
18d90c44dd
Rework the flux decoders to add a desync opcode for separating multiple reads
...
in a flux stream. Finally add a unit test for the flux decoder.
2021-12-05 14:42:57 +00:00
David Given
4b3fada646
Archival checkin (WIP).
2021-07-11 17:36:42 +02:00
David Given
fc2655ecd6
Rework the bytecode format to use a much simplified setup: a six-bit timer with
...
the top two bits reserved for pulse and index state. This is actually smaller,
bandwidth-wise, than the old version, and may be smaller than the crunched
version.
2020-03-14 18:58:43 +00:00
David Given
a1d345856e
Add a tool for converting flux files directly to mono or stereo au files,
...
suitable for comparison in Audacity.
2019-07-10 22:56:39 +02:00
David Given
27fb17b9b5
Move the clock guesser stuff into fe-inspect.
2019-04-30 21:55:44 +02:00
David Given
bd448e081f
Remove the obsolete Fluxmap::decodeToBits().
2019-04-28 20:57:55 +02:00
David Given
4e3d4e31af
The flux pattern matcher will now preserve leading zeroes (although it can't
...
match them). The IBM decoder is now properly converted, autodetecting FM and
MFM.
2019-04-27 22:11:39 +02:00
David Given
5f8e0c846c
Allow split decoders (into sector record and data record).
2019-04-19 00:55:01 +02:00
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
db14642504
Beat the Kryoflux stream reader into enough shape that it will handle the weird
...
Kryoflux index markers; refactor it to use Bytes rather than raw streams
(because streams in C++ are terrible).
2019-04-14 14:35:52 +02: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
d02e6b5936
Update cwftoflux to handle index information from CWF files.
2019-03-07 00:22:43 +01:00
David Given
94fb10eb02
Behemoth change to rework everything to use Bytes rather than vectors of
...
uint8_t. The tests pass, but of course, nothing decodes any more.
2019-03-05 00:10:20 +01:00
David Given
6a1327e3f6
Attempt to translate the sequencer into Verilog and have it handle long
...
intervals properly.
2019-02-23 00:50:36 +01:00
David Given
970668aca5
Non-working attempt to replace the playback logic with Verilog.
2019-02-22 21:26:54 +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
61d98073a7
Add support for reading Kryoflux stream files.
2019-02-14 21:44:23 +01:00
David Given
8d8f7b43c7
Precompensation adjustment is now done before writing (using hard-coded
...
values).
2019-01-03 22:03:00 +01:00
David Given
c564e6e14d
Begin generating the Brother bitstream and convert it to a fluxmap.
2019-01-03 01:37:37 +01:00
David Given
ed41bc013f
More refactoring.
2019-01-01 20:04:04 +01:00
David Given
cf28d05a4b
Don't crash when trying to access tracks with no data.
2018-12-22 10:54:08 +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
David Given
30f716d1b5
More missing files.
2018-10-20 16:25:19 +02:00