Commit Graph

1583 Commits

Author SHA1 Message Date
David Given
376270dd53 Merge pull request #377 from tdaede/d88trackfill
Set FM gap fill byte in D88.
2021-12-06 16:21:13 +00:00
Thomas Daede
9056b23eaa Set FM gap fill byte in D88. 2021-12-06 08:10:02 -08:00
Thomas Daede
634be4ae51 Fix SCP writer to always write complete revolutions.
There were a couple of problems that needed to be fixed:

- Fluxmaps can be produced with zero index pulses by encoders.
This is somewhat ambiguous but it's assumed that this means there
is exactly one revolution.

- The SCP unindexed mode wasn't properly supported, as it should
create equal-length revolutions not aligned to indexes. However,
fluxmaps don't contain any information on rotation speed. Therefore,
drop the ability to create unindexed SCPs and slightly change the
meaning of the option to not include pre-index data.

- Real flux reads can potentially produce duplicate index pulses.
Avoid creating zero-length revs.

- Fix off-by-one error for rev count.
2021-12-06 07:41:16 -08:00
David Given
422620f4fe Merge pull request #374 from davidgiven/ibm
Make the gap fill byte configurable.
2021-12-05 22:27:45 +00:00
dg
194b9b1193 Modify the flux upgrader to convert from sqlite flux files to fl2 flux files. 2021-12-05 17:46:23 +00:00
dg
27fceb3f41 Make the new FL2 flux format the default. 2021-12-05 17:09:02 +00:00
dg
930e0bcd67 Let the tests run on OSX. 2021-12-05 17:04:35 +00:00
dg
d81e0a3ed4 Merge from master. 2021-12-05 16:44:15 +00:00
dg
ebb5c17be4 Make the IBM format gap fill byte configurable. 2021-12-05 16:43:45 +00:00
dg
1e99fe5b04 Merge from master. 2021-12-05 16:37:04 +00:00
David Given
5f5f22c82b Merge pull request #373 from davidgiven/fl2
Add a new much simpler file format.
2021-12-05 16:29:21 +00:00
David Given
709e300960 More typo fixing. 2021-12-05 17:17:03 +01:00
David Given
d2f677d84e Typo fix. 2021-12-05 17:00:28 +01:00
dg
18d90c44dd Rework the flux decoders to add a desync opcode for separating multiple reads
in a flux stream. Finally add a unit test for the flux decoder.
2021-12-05 14:42:57 +00:00
dg
298f77f52e Add the FL2 reader. 2021-12-05 11:33:19 +00:00
David Given
70b2f7efb4 Merge pull request #372 from davidgiven/osx
Add a warning if you use a /dev/tty file on OSX
2021-12-04 21:14:46 +00:00
dg
78a070bd99 Add a simple warning if you're using OSX with a GreaseWeazle and select a
/dev/tty file rather than a /dev/cu one (the /dev/tty files usually don't work).
2021-12-04 20:57:53 +00:00
dg
c88ff973b1 Merge from master. 2021-12-04 19:23:41 +00:00
Thomas Daede
66f82f764d Set media density automatically for D88 format. 2021-12-04 10:31:17 -08:00
dg
d36a18c17a Add the experimental FL2 encoder. 2021-12-04 12:39:36 +00:00
David Given
8efd95346a Merge pull request #369 from tdaede/d88plus
Use per-track encoding specified in D88 files.
2021-12-04 11:44:28 +00:00
Thomas Daede
04b91377c9 Use per-track encoding specified in D88 files.
This supports varying sector sizes, counts, and modulation on
a per-track basis. It also supports writing sectors in the
original order.
2021-12-04 03:36:06 -08:00
David Given
f5d04d989c Merge pull request #366 from davidgiven/victor9k
Add a Victor 9000 encoder.
2021-12-03 23:03:46 +00:00
David Given
06a497f346 As the victor9k profile is single-sided only, rename it. 2021-12-03 23:43:29 +01:00
David Given
b1cf706a8f Update Victor9K documentation. 2021-12-03 23:41:53 +01:00
David Given
91f04e36e9 Bash the Victor9K encoder into producing images that look almost plausible. 2021-12-03 23:39:06 +01:00
David Given
5d76eec0f6 Merge pull request #361 from tdaede/autodim
Automatically configure format for DIM when no format is specified.
2021-12-03 21:38:47 +00:00
Thomas Daede
7822325866 Automatically configure format for DIM when no format is specified. 2021-12-03 13:34:35 -08:00
David Given
521123f139 Merge from master. 2021-12-03 22:34:31 +01:00
David Given
b3f511b025 Merge pull request #364 from davidgiven/scp
Improve SCP handling.
2021-12-03 21:28:43 +00:00
David Given
ff63840beb Run the encodedecode tests with scp as well as flux. 2021-12-03 22:12:33 +01:00
David Given
1fbcf4aa5f More Victor9K encoder. 2021-12-03 22:04:25 +01:00
dtrg
8d6a811204 Correctly write the number of revolutions in SCP files. 2021-12-03 18:13:17 +00:00
dtrg
08fe2a9e27 Merge from master. 2021-12-03 13:59:03 +00:00
David Given
d8465f4374 Merge pull request #357 from tdaede/d88
Add minimal D88 image format reader.
2021-12-03 11:59:28 +00:00
Thomas Daede
8a3cd14723 Add minimal D88 image format reader.
This implements a subset of D88, only supporting the first floppy
in an image. It only supports images with equal sector sizes,
equal numbers of sectors per track, and no bad sectors.
2021-12-03 02:18:29 -08:00
Thomas Daede
08c1671f21 Add Make target to build compdb. 2021-12-03 02:13:01 -08:00
David Given
91e794add1 Merge pull request #358 from davidgiven/imageformats
Refactor to allow image readers to specify the encoder/decoder formats, if desired.
2021-12-02 22:55:23 +00:00
dg
9c98caf21d Remove the prototype IMD automatic encoder code, because it needs a lot more
work.
2021-12-02 22:44:33 +00:00
dg
f97c42017f Instead of preloading the image, just explicitly load it in fe-write and change
the writeDiskCommand interface to take an Image rather than an ImageReader.
2021-12-01 19:58:24 +00:00
dg
3033a2cb95 Add semi-functioning prototype code to set the encoder and decoder
automatically with IMD files. Also make the IMD reader work properly again.
2021-12-01 18:18:48 +00:00
dg
bcf6f48d46 In fe-read, load the image before constructing the encoder, decoder etc so as
to allow the image reader to modify the config if necessary.
2021-12-01 17:55:05 +00:00
David Given
4c97f15a65 Merge pull request #355 from tdaede/lowercase
Make filename endings case insensitive.
2021-12-01 17:23:08 +01:00
David Given
5dc6349818 Merge pull request #356 from tdaede/fix_sizes
Fix reported size of DIM and FDI images.
2021-12-01 17:22:08 +01:00
Thomas Daede
6ab5c4012a Make filename endings case insensitive. 2021-12-01 06:35:15 -08:00
Thomas Daede
1d50e45777 Fix reported size of DIM and FDI images.
The computation for size accidentally included header size.
2021-12-01 06:32:18 -08:00
David Given
3cbf420acd Merge pull request #354 from tdaede/fdi
Add FDI format reader.
2021-12-01 13:00:41 +01:00
Thomas Daede
ea407b2182 Add FDI format reader.
This format is common for NEC PC-98 disk images.
2021-12-01 03:44:18 -08:00
David Given
5228885760 Merge pull request #348 from tdaede/dim
Add DIM format reader.
2021-12-01 12:01:33 +01:00
Thomas Daede
676845aaf3 Add DIM format reader.
This format is common for Japanese PC floppy images.
2021-12-01 00:07:02 -08:00