David Given
33d241c33e
Move common.proto into config.
2024-10-19 16:58:44 +02:00
David Given
1bcc8f45b5
Modularise encoders. Change arch to not depend on +lib.
2024-10-16 22:00:51 +02:00
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
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
27ab1e3e5a
Refactor a lot of the proto stuff.
2024-10-08 23:18:30 +02:00
David Given
ca940d1599
Refactor core libraries into their own library.
2024-10-01 20:36:53 +02:00
David Given
a84cf83ce5
Add a prototype Tartu encoder.
2024-04-30 00:56:26 +02:00
David Given
f5f223f622
First steps towards reworking the build system... again.
2023-10-21 23:02:46 +02:00
Eric Anderson
c623d95a80
Micropolis: Fix encoder and decoder to support encodedecodetest
...
These changes should not impact reading/writing from real disks. This
includes a bug fix to Fluxmap where it might miss a trailing interval
when adding bits, as mentioned in #333 .
With the Fluxmap bug fixed, the encoder now includes index pulses in its
output. The decoder was relaxed to allow reading precisely one track.
We don't actually add an encodedecodetest for micropolis, though,
because the SCP encoder is unhappy with so many revolutions.
2023-07-29 07:08:23 -07: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
330410ec61
Rework the GUI so that each panel is a different class. It doesn't work yet,
...
but the bulk of the restructuring is done.
2023-04-02 12:37:27 +00:00
dg
b0c77653a2
Add the boilerplate for the Agat encoder.
2023-01-05 12:04:36 +00: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
1267191e8e
Abstract is for Java.
2022-09-12 23:52:24 +02:00
David Given
339e9cca10
Hopefully actually fix the C64 side issue, this time, by rethinking how the IBM
...
encoder/decoder handles side swapping. We want to be able to swap everything,
or just the side bytes.
2022-09-12 22:04:58 +02:00
David Given
c63a761ca4
Actually fix the c64 1581 side issue. Turns out the data's not flipped between
...
the two sides, only the bit in the sector header...
2022-09-12 15:34:21 +02:00
David Given
dda713a6be
Remove the rest of the mapper.
2022-09-10 22:47:35 +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
Jeff Epler
87cb4b6d18
Add apple2 encoder
...
This is tested with encodedecodetest.sh but is not tested on HW yet.
It's likely that the sector order (interleave) doesn't match real systems.
2022-02-28 16:22:53 -06: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
3795abc19e
Add the Victor9k boilerplate.
2021-11-27 19:44:53 +01:00
Eric Anderson
41e9c46cba
Port Micropolis encoder to protobuf-based config
2021-10-02 16:24:38 -07:00
David Given
9a12b651f9
Remember to wire up the tids990 encoder.
2021-07-31 00:44:07 +02:00
David Given
46eead34c4
Warning fix.
2021-07-21 21:00:57 +02:00
David Given
13deef3416
Plumb the verifier stuff through the rest of the encoders; fix it to actually
...
work and not crash, god I hate C++.
2021-07-19 21:46:48 +02:00
David Given
b887bebb26
First largely untested draft of a working verifier.
2021-07-19 00:13:06 +02:00
David Given
239cecff9e
Convert all the encoders and imagereaders to the new scheme.
2021-07-15 23:43:07 +02:00
David Given
fa36af454e
The encoders and decoders all build now.
2021-07-15 23:13:59 +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
b423a71b38
Refactor the encoders the same way that's been done for the decoders.
2021-07-11 16:55:18 +02:00
David Given
bf4831be9f
Migrate the Northstar code to the new framework.
2021-05-24 23:20:59 +02:00
David Given
4614b63c30
Convert wybren1971's D64 reader and 1541 encoder to work with the new
...
architecture.
2021-05-21 23:34:28 +02:00
David Given
2de3b4f92e
Make rawwrite work (which replaces erase and writeflux).
2021-05-15 23:30:58 +02:00
David Given
4ab8b4984d
Rename all InputProto and OutputProtos for clarity.
2021-05-15 18:05:53 +02:00
David Given
5554d5e608
Convert the TIDS990 encoder and decoder.
2021-05-15 17:24:20 +02:00
David Given
93dcc7e242
Convert the image readers and Mac encoder and decoder.
2021-05-15 12:33:22 +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
5a186b6960
Rename all protos to end with 'Proto' to avoid name conflicts.
2021-05-13 18:05:08 +02:00
David Given
639588fa68
Hardware flux sources are configurable.
2021-05-13 17:39:49 +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