David Given
6d3969ab79
Split the dependency so that the encoders/decoders don't depend on arch.
2024-10-16 21:00:48 +02:00
David Given
ea4a147751
Move fluxmapreader/fluxpattern into data.
2024-10-15 00:00:27 +02:00
David Given
c5373480ba
Move a lot of the data-handling utilities into their own module.
2024-10-13 13:35:48 +02:00
David Given
e1f2494966
Create a config module containing all the configuration, proto and flags
...
stuff.
2024-10-13 11:57:18 +02:00
David Given
7e80e255a4
Config no longer depends on Flux/Image/Encode/Decode, breaking a circular
...
dependency.
2024-10-12 01:49:13 +02:00
David Given
ca940d1599
Refactor core libraries into their own library.
2024-10-01 20:36:53 +02:00
David Given
15d34aff15
Work-in-progress Tartu decoder.
2024-04-20 01:20:49 +02:00
David Given
af3e257c78
Add boilerplate for the Tartu.
2024-04-19 21:10:49 +02:00
David Given
f5f223f622
First steps towards reworking the build system... again.
2023-10-21 23:02:46 +02:00
dg
466c3c34e5
Replace the Error() object with an error() function which takes fmt
...
formatspecs, making for much cleaner code. Reformatted everything.
This actually happened in multiple steps but then I corrupted my local
repository and I had to recover from the working tree.
2023-05-09 20:59:44 +00:00
dg
a633b73e12
Add boilerplate for Roland D20 decoder.
2023-04-05 22:36:54 +00:00
dg
4598b3a7a6
Fix line endings.
2022-11-26 11:19:05 +00:00
dg
cf975b74bf
Rename smaky to smaky6.
2022-11-26 11:18:38 +00:00
dg
f299ec1f8d
More Smaky improvements.
2022-11-25 20:23:24 +00:00
dg
7e9a1268a5
Add an extremely prototype version of the Smaky decoder.
2022-11-23 21:44:40 +00:00
David Given
201fd22861
Roll requiredSectors into readerwriter.cc.
2022-09-16 00:26:02 +02:00
David Given
d0fb85e712
Rename all the remaining layout and location variables to trackInfo (where
...
appropriate).
2022-09-16 00:20:54 +02:00
David Given
81cbd00cc8
Rename Track to TrackInfo, which better describes what it is.
2022-09-16 00:09:39 +02:00
David Given
4a565b5ea0
Split the Layout class.
2022-09-16 00:07:22 +02:00
David Given
82f61eee12
Eliminate Location in favour of Layout.
2022-09-15 23:52:07 +02:00
David Given
88fc7ff9c3
Begin cleaning up the Layout stuff.
2022-09-15 21:45:12 +02:00
David Given
9a8fc80220
Massive overhaul of how the physical/logical layout mapping is done, to make it
...
more consistent and bidirectional everywhere and just generally better.
Hopefully this fixes that pesky 1581 problem.
2022-09-15 20:23:33 +02:00
David Given
6b7e81d7fb
Move requiredSectors() to the base class.
2022-09-13 00:32:04 +02:00
David Given
1267191e8e
Abstract is for Java.
2022-09-12 23:52:24 +02:00
David Given
3cb098f9ba
Rip out the old approach to soft sector remapping as it wasn't working.
2022-09-11 17:05:40 +02:00
David Given
085ad5f2a4
Actually start using the new physical sector stuff.
2022-09-10 20:43:24 +02:00
David Given
86c5cccb08
Rename cylinder to track throughout (mostly).
2022-03-25 20:16:12 +01: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
276282e847
Merge from master.
2022-03-19 00:51:59 +01:00
David Given
eade2e279e
Make the internal disk data structures all const, to allow us to pass them to
...
the GUI UI thread safely.
2022-02-24 22:46:10 +01:00
David Given
f2bdd1cc49
More work on the logger overhaul: the reader should be done now.
2022-02-19 22:48:44 +01:00
David Given
1bfe518f74
First draft (very bad) agat340 decoder.
2022-02-13 20:53:23 +01:00
David Given
bc6753e5bf
Correctly record sector positions.
2022-02-12 22:42:40 +01:00
David Given
03dd9e6e83
Add back support for capturing raw records.
2022-02-12 15:16:25 +01:00
David Given
e8d1c90182
Fix, hopefully, the rest of the decoders.
2022-02-12 15:02:42 +01:00
David Given
0933dc1afa
Partially complete rework of all the decoders to avoid seeking inside the
...
fluxmap. This requires resetting the FluxDecoder, which loses any pending
state, resulting in bad reads for (some) formats which don't have gaps between
sectors --- the DVK MX is the main victim.
2022-02-12 00:55:09 +01:00
David Given
18af881fe5
Attach the underlying raw records to Sector structures; add a .raw exporter for
...
getting the MFM/FM/GCR stream.
2022-01-04 23:49:39 +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
David Given
709e300960
More typo fixing.
2021-12-05 17:17:03 +01: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
2cbe39e553
Fix bugs to make the IBM decoder work again.
2021-11-26 21:17:58 +01:00
David Given
20ade1de7b
Replace the flux decoder with a PLL-based one stolen from samdisk. It almost
...
works.
2021-11-25 00:00:51 +01:00
David Given
c087539eb7
swap_sides isn't symmetrical for the encoder and the decoder. On the encoder,
...
it affects which logical side is being written to which physical side. On the
decoder, it modifies the logical side bit in the sector header itself.
2021-07-28 20:33:07 +02:00
David Given
5d889d4d95
Remove Track, which is now obsolete.
2021-07-16 00:00:11 +02:00
David Given
f589e094b2
Remove RawRecord, which is now obsolete.
2021-07-15 23:55:29 +02:00
David Given
fa36af454e
The encoders and decoders all build now.
2021-07-15 23:13:59 +02:00
David Given
458d0f7a1b
Another mahoosive refactor: move away from using protos for the disk output in
...
favour of pod objects, which allows STL contains. Lots of shared_ptrs
everywhere. Much simpler and more effective code. The reader works with one of
the decoders; still have to do the rest of them and the encoders.
2021-07-15 22:50:29 +02:00
David Given
f1f27ffd33
The protoified reader now builds and runs, although doesn't work properly.
2021-07-11 23:53:50 +02:00
David Given
4a2e09e8eb
Merge from master.
2021-07-11 17:38:09 +02:00
David Given
4b3fada646
Archival checkin (WIP).
2021-07-11 17:36:42 +02:00