Commit Graph

115 Commits

Author SHA1 Message Date
David Given
3256b4f627 Eliminate the IBM trackdata sector layout stuff in favour of the layout{}
clause.
2022-08-27 23:23:28 +02:00
David Given
1dd94a7d82 Refactor disk layout information out of ImgReaderWriterProto into a new
top-level config paragraph.
2022-08-25 22:51:26 +02:00
Thomas Daede
498558c2b1 Add n88basic sector gaps to d88 reader for PC-88 DD disks.
The values used for 1.2MB HD disks are too narrow for the
PC-88's disk controller.
2022-08-09 21:47:34 -07:00
wybren1971
30681dfa2c Corrected spelling error 2022-07-02 16:04:54 +02:00
wybren1971
4470fb4312 add breaks to the switch statements 2022-06-26 18:26:03 +02:00
wybren1971
4d7ddf3d9e add writing IMD images functionality 2022-06-19 16:49:31 +02:00
wybren1971
c4603e1230 Clean up code IMD imagereader 2022-06-10 09:02:20 +02:00
wybren1971
c6fd31564d update in skewsettings 2022-06-09 23:26:28 +02:00
wybren1971
c4d72d3c11 Write IMD file to floppy 2022-06-09 07:57:11 +02:00
David Given
adff739a5d Partial conversion to do automatic scaling of flux based on the disk rotation
speed. Although, something seems to have broken for 5.25" disks.
2022-03-27 23:50:32 +02: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
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
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
d5245e3784 Don't capture parameters in static blocks. That never ends well... 2022-02-27 12:51:51 +01:00
David Given
d97e72edb6 The image writers now log to the logger. 2022-02-27 00:27:44 +01:00
David Given
23b9e9ef5f The image readers now log to the logger. 2022-02-27 00:20:20 +01:00
David Given
8b7f551505 Change the mac profiles to produce simple sector images rather the DiskCopy
files (as that seems to be what most people typically use).
2022-02-08 21:21:22 +01:00
David Given
84e997949f Merge. 2022-02-06 22:14:11 +01:00
Eric Anderson
e501c44985 Merge branch 'master' into micropolis-275 2022-01-29 10:09:35 -07:00
Thomas Daede
dfb461b05c D88: Add 2D (40 track double density) support.
This assumes a 360rpm drive, and double stepping.

If fluxengine supports the concept of 40 vs 80 track drives in the
future, it might make sense for this to assume a 300rpm drive
instead.
2022-01-28 10:50:36 -08:00
David Given
2439736cb4 When autoconfiguring, set up the decoder to allow disk verification. 2022-01-26 23:53:44 +01:00
David Given
8fb2ad1986 Automatically set the number of heads and cylinders where appropriate. 2022-01-26 23:53:16 +01:00
Thomas Daede
a4f44933ec Add NFD r0 image reader.
This format is very similar to D88, but used mostly for PC-98
rather than PC-88.
2022-01-22 08:33:43 -08:00
Thomas Daede
de8f8b7d91 FDI: Add support for automatically setting format. 2022-01-17 17:02:26 -08:00
David Given
c4e29e74b2 Support HCS as well as CHS format in the image reader/writer. 2022-01-10 23:49:25 +01:00
Eric Anderson
bd854d29a4 Merge branch 'master' into micropolis-275 2021-12-29 12:39:07 -06:00
David Given
17787b97d4 Merge pull request #371 from tdaede/d88hd
Set media density automatically for D88 format.
2021-12-07 21:54:58 +00:00
Thomas Daede
bb5d62fe69 Remove per-track sector check from D88.
It's no longer needed to be this strict.
2021-12-06 10:13:30 -08:00
Thomas Daede
9056b23eaa Set FM gap fill byte in D88. 2021-12-06 08:10:02 -08:00
Thomas Daede
66f82f764d Set media density automatically for D88 format. 2021-12-04 10:31:17 -08: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
Thomas Daede
7822325866 Automatically configure format for DIM when no format is specified. 2021-12-03 13:34:35 -08: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
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
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
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
Thomas Daede
676845aaf3 Add DIM format reader.
This format is common for Japanese PC floppy images.
2021-12-01 00:07:02 -08:00
Thomas Daede
406a433c3f Add alias for XDF image files.
This is a common extension for Sharp X68000 bare disk images.
2021-11-30 00:40:54 -08:00
Eric Anderson
3b95e56418 Support Micropolis variations and prefer VGI extension 2021-11-07 21:54:00 -08:00
David Given
b0003fc7e5 Merge from master. 2021-10-30 22:19:37 +02:00
David Given
42cacb18bd Lots of warning fixes. Can we switch to C++ 2A? 2021-08-04 20:29:04 +02:00
David Given
2ff50c0c56 Fix merge issues. 2021-08-01 20:46:48 +02:00
David Given
4f4ed1307f Merge from master. 2021-08-01 19:42:04 +02:00
David Given
b7cca1b95b Add up_to_track in the image reader/writer trackdata proto. Abstract out the
routine which fetches the trackdata for more consistent (and correct) results.
2021-08-01 13:57:35 +02:00