dg
a03478b011
Don't store the actual DriveProto in FL2 files, because it makes the proto tags
...
significant.
2023-05-15 21:59:24 +00:00
dg
5c428e1f07
Don't require the user to specify the drive TPI if they don't want to.
2023-05-15 21:51:05 +00:00
dg
ee57615735
Deal with invalid options in the GUI.
2023-05-15 20:55:33 +00:00
dg
67300e5769
Add the ability to validate the configuration, at least in the CLI; this may
...
require some refactoring for the GUI to apply cleanly.
2023-05-14 23:18:48 +00:00
dg
873e05051c
Massive rework of the config system to be clearer, more robust, and more
...
flexible. (But it doesn't check options any more.)
2023-05-14 22:04:51 +00:00
dg
4daaec46a7
Greying out of the option buttons now works; but the whole way configs are
...
handled is pretty unsatisfactory and needs work.
2023-05-13 23:29:34 +00:00
dg
dd8cc7bfd4
Attempt to move the configuration setup logic into Config, so it's centralised.
2023-05-13 12:42:31 +00:00
dg
5568ac382f
Eliminate Environment --- we don't use it and Config contains this
...
functionality.
2023-05-13 00:04:42 +00:00
dg
dcdb3e4455
Encoders and decoders are routed through Config.
2023-05-12 23:58:44 +00:00
dg
17b29b1626
Flux sinks and image writers are routed through Config.
2023-05-12 23:47:09 +00: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
1d77ba6429
ImageReaders can now contribute config.
2023-05-12 22:20:13 +00:00
dg
ff5f019ac1
Fetching the image reader is now done through Config.
2023-05-12 21:52:53 +00:00
dg
e61eeb8c6f
Fetching the flux source is now done through Config.
2023-05-12 21:25:54 +00:00
dg
790f0a42e3
Move setting the image writer into Config.
2023-05-11 23:06:24 +00:00
dg
08e9e508cc
Move setting the image reader into Config.
2023-05-11 23:02:05 +00:00
dg
ad1a8d608f
Migrate setting the flux sink to Config.
2023-05-11 22:54:32 +00:00
dg
d74ed71023
Move setting the flux source into Config.
2023-05-11 22:47:00 +00:00
dg
0c7f9e0888
Enforce option requirements --- but the config stuff is still kinda broken and
...
will need rethinking, especially if flux files can carry configs with them.
2023-05-11 21:58:10 +00:00
dg
ba5f6528a8
Move option handling into Config.
2023-05-11 20:37:54 +00:00
dg
65cf552ec2
Some cleanup.
2023-05-11 20:03:25 +00:00
dg
715c0a0c42
Move config file loading into config.cc.
2023-05-11 19:58:16 +00:00
dg
9e383575d1
Any drive settings in the global config will override loaded settings from an
...
fl2 file.
2023-05-11 19:21:59 +00:00
dg
d84c366480
You can now fetch config fields by path.
2023-05-11 19:03:36 +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
5022b67e4a
Drive information is stored in FL2 files.
2023-05-10 20:47:55 +00:00
dg
6b990a9f51
Overhaul the TPI stuff; now both the drive and the layout have a TPI setting,
...
which must be set.
2023-05-10 19:58:44 +00:00
dg
e69ce3b8df
Merge.
2023-05-10 18:31:42 +00:00
dg
cf537b6222
Add the proto part of option requirements.
2023-05-10 18:29:46 +00:00
dg
d4b55cd8f5
Switch from Logger() to log().
2023-05-09 22:47:36 +00:00
dg
baaeb0bca7
Fix mangled formatting caused by clang-format.
2023-05-09 21:39:35 +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
099d7969ca
Add the drive types dropdown, plus config fragments. Change the TPI settings to
...
floats (because 40-track 3.5" uses a TPI of 67.5...).
2023-05-08 23:04:52 +00:00
dg
f7b8022d3a
Switch to the traditional unicorn/dinosaur support categorisation.
2023-05-07 23:06:56 +00:00
dg
a62346c515
Add short names to each profile.
2023-05-07 21:49:14 +00:00
dg
ee53542e18
Eliminate config includes, as nothing uses them any more and it just makes
...
things like documentation generation hard.
2023-05-07 19:35:55 +00:00
dg
db004bc787
Preparse ConfigProto objects.
2023-05-07 19:28:29 +00:00
dg
2fe0cec04a
Copy documentation into the config definitions.
2023-05-07 16:48:17 +00:00
dg
ad03c187cf
Merge from master.
2023-05-06 22:45:46 +00:00
dg
7c40093698
Try to work around weird test failure on Windows.
2023-05-06 22:30:50 +00:00
dg
195534c21e
Configure the 1680kB DMF format file system.
2023-05-06 18:11:24 +00:00
dg
137c0340fb
Fix month, which was off-by-one. Add custom attributes for the other LIF dirent
...
properties.
2023-05-06 10:20:10 +00:00
dg
e6d9de2d80
Decode timestamps into a custom property.
2023-05-06 10:16:12 +00:00
dg
d9b319eaed
Add textual file types (where known) for LIF files.
2023-05-06 10:00:12 +00:00
dg
77bdc727ab
Properly handle default options in the CLI.
2023-05-05 22:57:49 +00:00
dg
8c876f555d
Move from option exclusivity groups to option groups, which are better.
2023-05-05 19:55:56 +00:00
dg
2dc649ef09
Add read-only support for LIF filesystems.
2023-05-04 21:04:55 +00:00
dg
ed634fbbf6
Fix build failure.
2023-04-07 16:20:32 +00:00
dg
4c776d584b
Add read support for A2R v2 files.
2023-04-07 15:00:20 +00:00