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
David Given
98918d160a
Convert the ZilogMcz decoder.
2021-07-11 16:12:34 +02:00
David Given
969298fb58
Convert the Victor9k decoder.
2021-07-11 16:10:26 +02:00
David Given
bc60f3b45a
Convert the Northstar decoder.
2021-07-11 16:08:16 +02:00
David Given
f7a4785d22
Convert the Tids990 decoder.
2021-07-11 16:04:44 +02:00
David Given
1bf41cbfd7
Convert the MX decoder.
2021-07-11 16:02:41 +02:00
David Given
e9d80423ae
Convert the Micropolis decoder.
2021-07-11 16:00:46 +02:00
David Given
928ffbd7af
Convert the Macintosh decoder.
2021-07-11 15:58:40 +02:00
David Given
25ebad2448
Convert the IBM decoder.
2021-07-11 15:56:20 +02:00
David Given
dd951dc0ed
Convert the Fb100 decoder (which I think got lost in the last big refactor).
2021-07-11 15:54:04 +02:00
David Given
aed9e44b6b
Convert the Durango F85 decoder.
2021-07-11 15:50:35 +02:00
David Given
1fa2547aff
Convert the C64 decoder.
2021-07-11 13:04:07 +02:00
David Given
164ceb845e
Convert the Brother decoder.
2021-07-11 13:01:56 +02:00
David Given
ce463686dc
Convert the Apple2 decoder.
2021-07-11 12:57:41 +02:00
David Given
92aa28cac2
Convert the AES Lanier decoder.
2021-07-11 12:55:05 +02:00
David Given
326969e488
Clean up the Amiga decoder.
2021-07-11 12:34:40 +02:00
David Given
bf4831be9f
Migrate the Northstar code to the new framework.
2021-05-24 23:20:59 +02:00
David Given
f741ad058e
Convert the ZilogMcz decoder.
2021-05-15 17:40:20 +02:00
David Given
2512a4fc32
Convert the Victor9k decoder.
2021-05-15 17:29:59 +02:00
David Given
5554d5e608
Convert the TIDS990 encoder and decoder.
2021-05-15 17:24:20 +02:00
David Given
48d5ed2ff9
Convert the MX decoder.
2021-05-15 17:06:28 +02:00
David Given
f46e444aa2
Convert the Micropolis decoder.
2021-05-15 14:10:08 +02:00
David Given
1149ad86a2
Convert the Apple2 decoder.
2021-05-15 14:04:44 +02:00
David Given
93dcc7e242
Convert the image readers and Mac encoder and decoder.
2021-05-15 12:33:22 +02:00
David Given
38a8367f62
Convert the F85 decoder.
2021-05-15 12:05:31 +02:00
David Given
f7c31281e0
Convert the C64 decoder to the new configuration scheme. Also convert all the
...
imagewriters.
2021-05-15 00:25:32 +02:00
David Given
c8d0950979
Convert the Amiga encoder and decoder to the new system.
2021-05-15 00:06:39 +02:00
David Given
a4ff59eccb
Remember to actually hook the aeslanier decoder up.
2021-05-14 23:42:01 +02:00
David Given
5a186b6960
Rename all protos to end with 'Proto' to avoid name conflicts.
2021-05-13 18:05:08 +02:00
David Given
f9510c54b2
Split the encoder/decoder configuration away from inputs and outputs. Make the
...
test pattern creator a flux source.
2021-05-13 17:23:06 +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
323da8272a
Hopefully add support for giving the reader a set of required sectors, so if
...
one is missing then we can tell and the track can be reread.
2020-02-21 22:14:44 +01:00
David Given
a8eca06cf0
Don't hang if we hit the end of stream while waiting for a data record.
2020-01-27 23:09:29 +01:00
David Given
91ffcf59c3
When reading data records, retry if we get an UNKNOWN record to work the
...
occasional false positive (which happens now and again with MFM).
2020-01-27 01:15:14 +01:00
David Given
9dc1067032
Add --dump-sectors. Sector positions are recorded correctly.
2020-01-26 18:30:35 +01:00