David Given
1b5b170557
Add support for possibly writing 40-track disks on an 80-track drive.
2021-05-07 22:01:20 +02:00
David Given
9eb33d31ac
Merge from master.
2021-01-17 18:57:49 +01:00
hpingel
66cb39dce2
added parameter swapSides to IBM encoder
2021-01-17 12:54:14 +01:00
David Given
d44c871c54
Remove stray debug tracing.
2021-01-16 22:26:54 +01:00
David Given
231aa44d03
The clock compensation factor for Mac doesn't seem to be needed?
2021-01-08 01:14:39 +01:00
David Given
41f2da71e4
Merge.
2021-01-05 01:36:10 +01:00
David Given
cb4ee0fd74
Comment typo fix.
2021-01-05 01:36:00 +01:00
David Given
884edfd497
Tweak the Mac encoder parameters to work.
2021-01-04 23:06:15 +01:00
David Given
fd4d1c4bb7
Writing Mac disks now looks like it's about half working, but some of the
...
tracks are ending up mangled on disk --- maybe it's a firmware bug?
2021-01-04 19:16:09 +01:00
David Given
7eaf3de572
Mac encoder is code-complete.
2021-01-04 17:48:59 +01:00
David Given
a8a8ce4a36
Do the basic skeleton of the writer.
2021-01-04 01:49:15 +01:00
David Given
c61376d5a1
Add skeleton of Mac encoder.
2021-01-04 00:50:12 +01:00
Eric Anderson
b8786866db
Fix carry handling in Micropolis checksum
...
Two bugs make a right, mostly. The very last carry should be ignored and
when adding the low and high bytes they commonly would commonly produce
a carry which was being ignored. On the test disks these two bugs
cancelled themselves out, except only for track 1, side 1, sector 0. I
had noticed it was suspicously off-by-one earlier for both test disks,
but the cause wasn't obvious.
On some old 1980s disks, with real data, it changed number of bad
sectors from 224 (out of 2464) to 5 for one disk and 81 to 3 for
another.
2020-10-04 19:55:25 -05:00
Eric Anderson
82bd1bead4
Add Micropolis decoder
...
Resolves #187
2020-10-03 13:05:06 -05:00
David Given
0bab038454
Make the DS990 encoder work, maybe?
2020-08-22 00:36:48 +02:00
David Given
6c3b49f4d0
Add the DS990 encoder skeleton.
2020-08-21 23:07:35 +02:00
David Given
03dd689f17
Make the DS990 decoder work.
2020-08-21 00:32:36 +02:00
David Given
c375c948c0
Add boilerplate for the TI DS990 decoder.
2020-08-20 22:41:14 +02:00
David Given
e86de4483a
Fix stupid bug where the mac decoder was looking at the wrong bit for the side
...
data.
2020-07-28 01:25:50 +02:00
David Given
3841942153
Fix a crash when decoding MX disks if advanceToNextRecord finds no records in a
...
track.
2020-06-25 21:56:33 +02:00
David Given
98587d04a7
Merge from trunk.
2020-05-24 00:56:17 +02:00
vanbogaertetienne
603009ba15
Typo fix in FM_TRS80DAM2_PATTERN
2020-05-22 20:46:48 +02:00
David Given
06eb10d2a0
Merge.
2020-05-16 10:38:17 +02:00
David Given
2244299bd9
Add a bias parameter to allow the entire Brother format to be moved around on
...
the disk.
2020-05-16 10:37:48 +02:00
David Given
6ca06ecafb
Fix several embarassingly stupid bugs in the brother 120kB encoder code path.
2020-05-14 10:41:25 +02:00
David Given
5deba8af41
Untested Brother 120kB write support.
2020-05-13 14:49:06 +02:00
David Given
1fd65452c4
Typo fix.
2020-04-08 23:37:08 +02:00
David Given
30646ccb07
Fix an Amiga decoder bug where truncated sectors would be considered valid (the
...
Amiga checksum algorithm is weak and zero bytes don't contribute to the
checksum).
2020-04-08 23:35:55 +02:00
David Given
a401173f6d
Teach the Amiga decoder how many sectors to expect on each track.
2020-03-09 12:54:29 +00:00
David Given
025802b2d0
Count required sectors correctly on mac disks.
2020-02-27 22:30:05 +01:00
David Given
323da8272a
Hopefully add support for giving the reader a set of required sectors, so if
...
one is missing then we can tell and the track can be reread.
2020-02-21 22:14:44 +01:00
David Given
89a27619ff
Correctly propagate MFM encoding state.
2020-02-15 21:47:01 +01:00
David Given
a4002d2617
Fix a few encoder issues; but while 720kB disks work fine in a real machine,
...
1440kB disks don't.
2020-02-14 22:47:15 +01:00
David Given
d25f96dd24
The IBM encoder now works well enough that my USB floppy drive thinks the disk
...
is formatted... but has trouble reading sectors above about 1000. Also remember
that encoding MFM needs to keep one bit of state at all times.
2020-02-14 00:06:51 +01:00
David Given
ad3a930c6a
Do the boilerplate of the IBM encoder.
2020-02-09 23:56:20 +01:00
David Given
efa4c933b3
Made the MFM marker byte detection a lot more robust --- prevents false
...
positives; it looks like the new sampler is producing a little bit of wobble
which randomly spoofs a marker byte now and again. This prevents this from
happening (so far).
2020-01-26 17:58:08 +01:00
David Given
6af80d1e5e
Improve some messaging. A data record is always pushed, even if it's empty (to
...
help debugging).
2020-01-26 17:49:12 +01:00
David Given
d0ed5b32f7
Add support for 528-byte sectors. Adjust the post-index gap to (try?) and fit
...
all the data in one revolution. I think my write clock is a bit slow.
2019-12-14 21:49:31 +01:00
David Given
792cc88192
The Amiga writer now generates valid flux files --- but it looks like the
...
writer's broken (both the Amiga and the Brother have failed).
2019-12-14 20:44:48 +01:00
David Given
d2f8c27cb6
Add checksum routine.
2019-12-01 09:11:36 +01:00
David Given
eaa3c57425
Non-functional boilerplate of Amiga write support.
2019-12-01 09:07:43 +01:00
David Given
04ff31c348
Add a flag to the IBM decoder to tell it to ignore the logical sector IDs (some
...
formats don't use these).
2019-08-25 00:24:02 +02:00
David Given
2f72c3f8f0
Mac images now put the metadata second.
2019-08-09 21:13:29 +02:00
David Given
54edff9b94
Amiga disks can now optionally emit the metadata.
2019-08-09 21:04:48 +02:00
David Given
4b07c38782
Mechanical refactor to rearrange the source files into a more pleasing order.
2019-08-06 22:25:11 +02:00