Skip to content

Commit e5e652f

Browse files
authored
Merge pull request #590 from davidgiven/options
Add a feature where configs can add simple command line options.
2 parents 4bf5fd4 + 924d077 commit e5e652f

21 files changed

+308
-384
lines changed

doc/disk-apple2.md

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -40,15 +40,17 @@ Just do:
4040
fluxengine read apple2
4141
```
4242

43-
You should end up with an `apple2.img` which is 143360 bytes long.
44-
It will be in physical sector ordering. You can specify a sector ordering,
45-
`appledos` or `prodos` to get an image intended for use in an emulator,
46-
due to the logical sector mapping issue described above:
43+
You should end up with an `apple2.img` which is 143360 bytes long. It will be in
44+
physical sector ordering. You can specify a sector ordering, `--appledos` or
45+
`--prodos` to get an image intended for use in an emulator, due to the logical
46+
sector mapping issue described above:
4747

4848
```
49-
fluxengine read apple2 prodos
49+
fluxengine read apple2 --prodos
5050
```
5151

52+
You will also need this for filesystem access.
53+
5254
Writing discs
5355
-------------
5456

@@ -58,10 +60,10 @@ fluxengine write apple2 -i apple2.img
5860
```
5961

6062
If your image is in logical sector ordering (images intended for emulators
61-
usually are), specify a modifier of `appledos` or `prodos`:
63+
usually are), specify a modifier of `--appledos` or `--prodos`:
6264

6365
```
64-
fluxengine write apple2 prodos -i apple2.img
66+
fluxengine write apple2 --prodos -i apple2.img
6567
```
6668

6769

doc/disk-micropolis.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -42,13 +42,13 @@ logically followed the first side (e.g., tracks 77-153). Micropolis disks
4242
tended to be the latter.
4343

4444
It's also possible to output to VGI, which retains OS-specific "user data" and
45-
machine-specific ECC. Add "vgi" to the command line after the chosen Micropolis
46-
profile:
45+
machine-specific ECC. Add `--vgi` to the command line after the chosen
46+
Micropolis profile:
4747
```
48-
fluxengine read micropolis143 vgi # single-sided Mod I
49-
fluxengine read micropolis287 vgi # double-sided Mod I
50-
fluxengine read micropolis315 vgi # single-sided Mod II
51-
fluxengine read micropolis630 vgi # double-sided Mod II
48+
fluxengine read micropolis143 --vgi # single-sided Mod I
49+
fluxengine read micropolis287 --vgi # double-sided Mod I
50+
fluxengine read micropolis315 --vgi # single-sided Mod II
51+
fluxengine read micropolis630 --vgi # double-sided Mod II
5252
```
5353

5454
You should end up with a `micropolis.vgi` instead. The format is well-defined
@@ -77,10 +77,10 @@ fluxengine write micropolis287 # double-sided Mod I
7777
fluxengine write micropolis315 # single-sided Mod II
7878
fluxengine write micropolis630 # double-sided Mod II
7979
80-
fluxengine write micropolis143 vgi # single-sided Mod I
81-
fluxengine write micropolis287 vgi # double-sided Mod I
82-
fluxengine write micropolis315 vgi # single-sided Mod II
83-
fluxengine write micropolis630 vgi # double-sided Mod II
80+
fluxengine write micropolis143 --vgi # single-sided Mod I
81+
fluxengine write micropolis287 --vgi # double-sided Mod I
82+
fluxengine write micropolis315 --vgi # single-sided Mod II
83+
fluxengine write micropolis630 --vgi # double-sided Mod II
8484
```
8585

8686
Useful references

lib/config.proto

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import "lib/drive.proto";
1212
import "lib/common.proto";
1313
import "lib/layout.proto";
1414

15-
// NEXT_TAG: 19
15+
// NEXT_TAG: 21
1616
message ConfigProto {
1717
optional string comment = 8;
1818
optional bool is_extension = 13;
@@ -36,5 +36,14 @@ message ConfigProto {
3636
optional int32 tpi = 16 [ (help) = "TPI of image; if 0, use TPI of drive" ];
3737

3838
optional FilesystemProto filesystem = 17;
39+
40+
repeated OptionProto option = 20;
41+
}
42+
43+
message OptionProto {
44+
optional string name = 1 [(help) = "Option name" ];
45+
optional string comment = 2 [(help) = "Help text for option" ];
46+
optional string message = 3 [(help) = "Message to display when option is in use" ];
47+
optional ConfigProto config = 4 [(help) = "Option data" ];
3948
}
4049

0 commit comments

Comments
 (0)