Commit Graph

878 Commits

Author SHA1 Message Date
dg
35008656a9 Remove stray logging. 2022-12-17 17:54:33 +00:00
dg
e4c67f18bd Fix the sector skew stuff, again. Modify the mac400 format to emit sectors in
the right order.
2022-12-05 20:22:01 +00:00
dg
a91dee27e7 Rework the layout stuff to be more correct. Physical skew no longer affects the
order in the resulting images.
2022-12-04 19:19:37 +00:00
dg
a33cc5710c Be more rigorous about checking for invalid brother120fs filesystems --- even
though the filesystem is so simple that positively identifying it is quite
hard.
2022-12-02 19:54:58 +00:00
David Given
bd99bc6d94 Don't trust isprint() to return ascii characters, because Unicode. 2022-12-01 21:28:49 +01:00
dg
2f4b15293a Adjust the FLX tick rate to something more resembling normality. 2022-11-29 20:26:58 +00:00
dg
5136dda598 Made the FLX reader work. 2022-11-29 20:17:24 +00:00
dg
d26940304b Boilerplate for a FLX file reader. 2022-11-29 19:33:47 +00:00
dg
fd10840cc0 Display raw bits in the flux viewer. 2022-11-28 20:15:57 +00:00
dg
731d1efcc4 Add missing file. 2022-11-27 22:38:44 +00:00
dg
ec1bcdb9e5 Add a simple Smaky 6 filesystem backend. 2022-11-27 22:22:59 +00:00
David Given
4df6afa9c1 Merge pull request #620 from davidgiven/b593
Correct generation of SCP files.
2022-11-27 13:28:02 +01:00
dg
d0620f8efe Fix readTracks to use locations. 2022-11-27 11:55:25 +00:00
dg
2b1a6dbb03 Make the scp flux sink use the layout to determine which tracks and sectors are
being written rather than the range flags directly.
2022-11-27 11:52:16 +00:00
David Given
c6ef667c3f Merge pull request #619 from davidgiven/b602
Fix weird error when trying to create fatfs filesystems.
2022-11-27 12:33:33 +01:00
dg
8be174e65a Fix incorrect types when calling fatfs which was leading to really weird
behaviour when optimisation was enabled.
2022-11-27 11:11:26 +00:00
dg
6d37fafb02 Add a helper function for checking if a file exists. 2022-11-27 11:10:58 +00:00
dg
46ce882daa Allow implicit creation of disk images when writing. 2022-11-27 11:09:46 +00:00
dg
87a1b2e6f8 Don't hang when calling findAllProtoFields on recursive protos. 2022-11-27 10:24:40 +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
dg
a60b8e68ca Add a Bytes method for reversing each bit. 2022-11-23 21:44:10 +00:00
David Given
d1fffb1d08 Merge pull request #616 from davidgiven/gui
Fix a crash when using the GUI.
2022-11-21 20:37:52 +01:00
dg
52d66d9555 Only iterate the environment if the set has been created. 2022-11-21 19:10:37 +00:00
dg
d4a94551d9 Don't define a global structure called Entry because it conflicts with
something in adflib.
2022-11-21 18:31:59 +00:00
David Given
345cd6bd92 Convert the VFS protos to use enums rather than oneofs. 2022-11-20 10:37:45 +01:00
David Given
48540245b5 Convert the imagereader/writer to use proto enums rather than oneofs. 2022-11-20 10:25:19 +01:00
David Given
088bd9434d Switch from using a oneof to an explicit enum for the flux source/sink
configurations, as this allows default options for multiple source/sink types.
2022-11-19 22:52:52 +01:00
David Given
4ae43d0503 Merge pull request #607 from tdaede/fix_layout_cache
Remove the layout cache and rename layout -> trackInfo.
2022-10-13 23:01:44 +02:00
Thomas Daede
f8257e697a D88: Use the data length field to seek past any extra data.
This will effectively ignore the field length if it is shorter
than the sector size (or 0).
2022-10-02 16:45:51 -07:00
David Given
0ddfd3bead Merge pull request #605 from tdaede/fix_physical_sector_ordering
D88/NFD: Add physical layout before adding sector.
2022-10-02 20:46:38 +02:00
Thomas Daede
d20ce3dde7 Remove the layout cache and rename layout -> trackInfo.
The layout cache is busted and seems not worth the effort.

Fixes #603.
2022-10-02 09:43:48 -07:00
Thomas Daede
ef5f7ec9c3 D88/NFD: Add physical layout before adding sector.
Partially fixes #603, it is still busted if the number of
tracks is specified larger than what is in the image, which
used to work.
2022-10-01 19:43:17 -07:00
Thomas Daede
69c60c4026 Force density setting for D88/NFD.
This fixes #560 (partially).

I do not understand how the protobuf parsing stuff works enough
to make it detect optional fields.
2022-10-01 18:48:12 -07:00
David Given
2f4f2083ba Merge pull request #600 from wybren1971/IMDwriter
bug fix in data rates
2022-09-21 16:00:02 +02:00
wybren1971
77ada0471b bug fix in data rates 2022-09-21 15:20:58 +02:00
David Given
12fb39baa9 More variable renaming. 2022-09-16 00:31:19 +02: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
8eb17bf104 Merge pull request #591 from davidgiven/c64
Rework the entire layout stuff.
2022-09-15 21:07:16 +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
924d077315 Don't allow includes inside options. 2022-09-14 00:20:16 +02:00
David Given
b1a6fa4084 Make the AppleDOS and ProDOS settings options. 2022-09-14 00:16:42 +02:00
David Given
0665fc0a6f Add an option for, er, options defined in config files. 2022-09-14 00:04:29 +02:00