Commit Graph

1685 Commits

Author SHA1 Message Date
David Given
fb66e49a1f Correct number of cylinders (now that empty tracks aren't ignored any more). 2022-03-26 00:35:20 +01:00
David Given
79e37f2c18 Format. 2022-03-26 00:19:22 +01:00
David Given
9ab1dae553 Correctly support retrying on hardware. 2022-03-26 00:19:07 +01:00
David Given
c5ad0b4bec Fix track display in the visualiser when reading and writing. 2022-03-25 23:01:34 +01:00
David Given
606d1012d3 Don't use <=>. Sigh. 2022-03-25 22:10:27 +01:00
David Given
45f2d98f3c Typo fix? 2022-03-25 21:57:02 +01:00
David Given
5cf15a9b11 Try to work around the issue with <compare>. 2022-03-25 21:37:39 +01:00
David Given
178aa9d32f Remove the obsolete reader.* and rename writer.* to readerwriter.*. 2022-03-25 20:57:42 +01:00
David Given
29f181f9bf Change the readers to correctly set the physical track for each sector using
the mapper (where appropriate).
2022-03-25 20:50:57 +01:00
David Given
86c5cccb08 Rename cylinder to track throughout (mostly). 2022-03-25 20:16:12 +01:00
David Given
ea8af83d61 Add missing header. 2022-03-25 00:45:25 +01: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
David Given
aaccd648b3 Merge pull request #502 from davidgiven/windows
Don't build the Windows CLI as a GUI program.
2022-03-21 19:48:30 +00:00
David Given
9596cbd85a Don't use the wxwidgets settings for the console fluxengine binary, because it
ends up building a windows-mode binary and not a console-mode binary.
2022-03-21 19:25:38 +00:00
David Given
5b6320b61a Merge pull request #457 from davidgiven/agat
Add support for the Agat 340kB disk format.
2022-03-19 19:04:15 +00:00
David Given
4de4fdc0d1 Add documentation. 2022-03-19 19:13:04 +01:00
David Given
77a0c9f341 Typo fix. 2022-03-19 18:43:20 +01:00
David Given
fc7859dc27 Update comment about the generation of the desync sequence. 2022-03-19 18:41:03 +01:00
David Given
39d6b0525f Fix incredibly stupid bug. 2022-03-19 18:07:10 +01:00
David Given
51e091ded6 Better documentation of the missing clock bit. 2022-03-19 14:00:35 +01:00
David Given
52407848c1 Do more sanity checks for bad sectors, improving the reads by a lot. 2022-03-19 13:55:22 +01:00
David Given
a6e2511e6b Don't test SCP files --- it's taking too long. 2022-03-19 13:55:00 +01:00
David Given
422f3ba8c8 Sort the records and sectors dumps. 2022-03-19 13:54:48 +01:00
David Given
276282e847 Merge from master. 2022-03-19 00:51:59 +01:00
David Given
7782e27cc5 Merge pull request #500 from davidgiven/retry
Retries got broken in a recent change. Fix them.
2022-03-18 19:02:07 +00:00
David Given
4f0a178984 Fix retries to work. 2022-03-18 19:19:08 +01:00
David Given
28ddda4635 Merge pull request #483 from davidgiven/mapper
Add support for soft sector skew
2022-03-16 15:31:26 +00:00
David Given
36e20ec396 Merge from master. 2022-03-16 16:01:24 +01:00
David Given
7d93692468 Merge pull request #496 from davidgiven/fixes1
Fix regression with verification on writes.
2022-03-15 20:13:24 +00:00
David Given
93121275ae Verification on writes now works by default. 2022-03-15 20:49:37 +01:00
David Given
07b48b2e0d Merge pull request #493 from davidgiven/drive
Move drive configuration settings out of flux_source/flux_sink into a common config area.
2022-03-14 19:39:40 +00:00
David Given
294672d946 Update documentation. 2022-03-13 21:15:18 +01:00
David Given
ba3f806616 Move a lot of drive parameters into a toplevel drive{} config rather than
leaving them in the source/sink configs (which means they have to be set
twice).
2022-03-13 21:13:56 +01:00
David Given
9e4d99faca Merge pull request #489 from jepler/further-apple-fixes
Further apple fixes - have now booted a DOS 3.3 written with FE + GW
2022-03-08 16:01:15 +00:00
David Given
e89648200b Merge pull request #490 from jepler/mapper
Upgrade Apple II writing to 'unicorn', fix & explain remapping
2022-03-08 15:13:06 +00:00
Jeff Epler
3c305e8a37 Fix & Document Apple II sector mapping
* Update documentation (note apple flux writing is a unicorn now even though this isn't quite true until #489)
 * Fix DOS 3.3 mapping
 * Add ProDOS (all versions) mapping
2022-03-08 08:44:14 -06:00
Jeff Epler
6cfe69634c Merge remote-tracking branch 'origin/master' into further-apple-fixes 2022-03-08 07:45:20 -06:00
Jeff Epler
61be3714a5 apple2: encoder: Fix writing of "FF40"
I was writing "FF40" as "FF48": 1111 1111 0000 instead of 1111 1111 00.
This sequence of four zeros will not allow the real hardware to synchronize
to the bitstream.

With this change, I was able to boot a DOS 3.3 disk I rearranged into
"physical" order; some 'there's a disk error' raspberries occur (probably
indicating a data error within a sector) during the boot process, so
something is still obviously marginal, but this is a huge step forward.
2022-03-08 07:44:03 -06:00
Jeff Epler
0aed615ee5 Fix crash when reading disks written on real apple2
`readRaw8` throws an exception if you run out of data. This did not
turn up during my testing, because I was reading back a disk written by
fluxengine, so everything was aligned to the index pulse and no sector
ever straddled a revolution. On a "real" apple2-written disk, this was
not the case.

Incidentally, the "extra 0" problem exists on a real apple2-written
floppy as well.
2022-03-07 22:40:33 -06:00
David Given
6797037bdb Merge pull request #488 from davidgiven/multiread
Refactor to deprecate F_DESYNC.
2022-03-07 23:14:07 +00:00
David Given
39f8b25fd8 Tidy. 2022-03-07 00:28:19 +01:00
David Given
96214bf3fd Refactor for better multi-read support. Each read is now held separately, with
F_DESYNC being deprecated, and FluxSource returns an iterator which can be used
to retry reads.
2022-03-07 00:07:42 +01:00
David Given
400cd87802 Update documentation with new dependencies.
Fixes: #487
2022-03-06 12:07:55 +01:00
David Given
00c458db1e Merge pull request #486 from davidgiven/brother
Add support for creating bootable Brother 120kB disks.
2022-03-06 01:00:45 +00:00
David Given
1454e200db Create bootable Brother disks. 2022-03-06 01:32:19 +01:00
David Given
752875061c Format. 2022-03-06 00:47:11 +01:00
David Given
78186d8a45 Archive. 2022-03-06 00:46:53 +01:00
David Given
a4ef434f11 Merge pull request #485 from davidgiven/brother
Add support for writing 120kB Brother disk images.
2022-03-04 23:49:09 +00:00
David Given
9842c9945d Typo fix. 2022-03-05 00:33:10 +01:00
David Given
6dcd97dedf Create executable files (although possibly not correctly). 2022-03-05 00:15:11 +01:00