David Given
bb82dc864a
Make cross-track sector collation optional (as it usually just makes things
...
confusing).
2024-02-03 01:08:23 +01:00
David Given
f5f223f622
First steps towards reworking the build system... again.
2023-10-21 23:02:46 +02:00
dg
dcfcc6271c
Sort out a whole bunch of other things, including cleaning up the way the
...
verification source is handled.
2023-05-12 23:28:25 +00:00
dg
42e6c11081
Migrate to a new global config object.
2023-05-10 23:13:33 +00:00
dg
9ba3f90f1e
Change the global config variable to a globalConfig() function.
2023-05-10 22:07:17 +00: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
fd10840cc0
Display raw bits in the flux viewer.
2022-11-28 20:15:57 +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
2a6ebe2c04
Avoid overzealous bounds check assertions.
2022-06-16 19:37:19 +02:00
David Given
7e2d300017
Allow an option to force the reader to read all tracks in a group.
2022-04-23 12:37:52 +02:00
David Given
bf35983ebb
Merge from master.
2022-03-26 21:39:32 +00: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
9ea68b66f7
Allow viewing the raw bitstream as bytes.
2022-03-16 00:17:29 +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
a2f51b36ec
Check in missing file...
2021-11-26 21:36:22 +01:00
David Given
910ccb273a
Added the PLL phase adjustment stuff to the decoder. Much better decodes.
2021-11-26 21:27:58 +01: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
42cacb18bd
Lots of warning fixes. Can we switch to C++ 2A?
2021-08-04 20:29:04 +02: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
a06e4e862d
Remove junk files.
2021-07-16 19:56: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