Thomas Harte
772093c311
Add missing header.
2021-02-16 22:51:57 -05:00
Thomas Harte
bd54e30748
Adds workaround for Sweet 16, which can produce bad data.
2021-02-16 22:21:10 -05:00
Thomas Harte
b5ecd5f7ef
Merge branch 'master' into AppleIIgs
2021-01-31 11:47:40 -05:00
Thomas Harte
ac95e4d758
Adds support for ADL-format disk images.
2021-01-30 18:39:29 -05:00
Thomas Harte
0bd3103949
Wires in the most common IIgs style of 2MG.
2020-11-24 18:19:34 -05:00
Thomas Harte
9a819d6ca0
Transcribes interesting 2MG fields, albeit without acting on them.
2020-11-23 22:02:32 -05:00
Thomas Harte
b4bf541eec
Adds boilerplate route into a 2MG-handling class.
2020-11-23 21:42:18 -05:00
Thomas Harte
e41faeb557
Adds a quick protection against sector ID buffer overrun.
2020-11-16 19:52:42 -05:00
Thomas Harte
a2a928e262
Takes a guess at the format of IIgs .po files; wires them through to the actual machine.
...
... which still declines to boot.
2020-11-12 18:01:26 -05:00
Thomas Harte
b961665985
Ensures WOZ2 behaviour even if type_
has an invalid value.
...
This pleases GCC 7.
2020-07-24 21:56:20 -04:00
Thomas Harte
84dd194afd
Corrects test for ::tracks_differ.
2020-07-20 19:48:20 -04:00
Thomas Harte
47f121ee4c
Mark WOZs as read-only, with exposition as to why.
2020-07-19 00:08:49 -04:00
Thomas Harte
f6b7467d75
Implement custom tracks_differ
; support WOZ 2 3.5" drive geometry properly.
2020-07-17 22:09:55 -04:00
Thomas Harte
9d1d162cc8
Add an ability to avoid track flushing when file formats have sub-track precision.
2020-07-17 22:09:21 -04:00
Thomas Harte
4fec7c82ab
Very minor grammar improvement.
2020-07-16 21:43:03 -04:00
Thomas Harte
d065d6d98f
Adds read-only WOZ 2 support.
2020-07-15 19:15:03 -04:00
Thomas Harte
59458f6444
Resolves errant spaces.
2020-06-16 23:15:38 -04:00
Thomas Harte
495024d6fe
Cleans up all redundant lock/unique_guard declarations.
2020-06-15 00:24:10 -04:00
Thomas Harte
73131735fa
Further qmake warning corrections.
2020-05-30 19:31:17 -04:00
Thomas Harte
267006782f
Starts to add Qt target; resolves many build warnings.
2020-05-30 00:37:06 -04:00
Thomas Harte
25996ce180
Further doubles down on construction syntax for type conversions.
2020-05-09 23:00:39 -04:00
Thomas Harte
ea26f4f7bf
Eliminates test code, adds a caveat.
2020-03-25 21:22:30 -04:00
Thomas Harte
894d196b64
Avoids massive overallocation where sync blocks overlap the index hole.
2020-03-24 21:34:33 -04:00
Thomas Harte
294e09f275
All these 'override's can be 'final's.
...
At least for the purpose of being communicative. I doubt there's much to gain in terms of compiler output — the DiskImageHolder can avoid some virtual lookups but nothing else leaps out.
2020-01-23 22:57:51 -05:00
Thomas Harte
1b4b6b0aee
Renames: NumberTheory -> Numeric.
2020-01-19 23:14:35 -05:00
Thomas Harte
d27d14d2b0
Supplies fuzzy masks where specified.
2020-01-19 21:08:49 -05:00
Thomas Harte
c2bd5be51a
This seems to be the proper interpretation of speeds?
2020-01-19 20:42:51 -05:00
Thomas Harte
f3f8345e5e
Corrects spelling mistake.
2020-01-19 20:05:52 -05:00
Thomas Harte
f34ddce28f
Adds support for STX speed zones.
2020-01-19 12:38:33 -05:00
Thomas Harte
d4be052e76
Switch to matching fragments.
2020-01-18 14:18:59 -05:00
Thomas Harte
229b7b36ed
Merge branch 'master' into ShifterSync
2020-01-18 13:38:56 -05:00
Thomas Harte
6b08239199
Adapts slightly; it would seem that BD-DOS disks really fill up space.
2020-01-14 23:16:06 -05:00
Thomas Harte
ecb5807ec0
Enssures STX interprets sector sizes correctly.
2020-01-14 21:35:37 -05:00
Thomas Harte
942986aadc
Insures against badly-placed locations.
2020-01-13 22:49:12 -05:00
Thomas Harte
1f539822ee
Adds better support for WD-esque false sync, improves STX track patching.
2020-01-13 22:19:48 -05:00
Thomas Harte
fab35b360a
Ensure an encoder is created even if no sectors are placed.
2020-01-12 22:37:00 -05:00
Thomas Harte
b3b2e18c4b
Ensures head and track counts are reported accurately.
2020-01-12 22:23:34 -05:00
Thomas Harte
2d233b6358
Makes a more concrete attempt at track/sector combination.
2020-01-12 22:18:31 -05:00
Thomas Harte
83ed36eb08
Add missing #include.
2020-01-12 17:56:04 -05:00
Thomas Harte
f81a7f0faf
Ensures prefixes are MFM encoded and decoded.
2020-01-11 22:10:41 -05:00
Thomas Harte
2b4c924399
Makes an effort to locate address and data bodies within track.
...
"Not completely successful" would be the polite term.
2020-01-09 23:28:07 -05:00
Thomas Harte
64517a02b7
Adds code to deal with sector-free tracks.
2020-01-09 21:50:32 -05:00
Thomas Harte
b4befd57a9
Advances to being able to cope with STXs with no special features whatsoever.
...
Well, other than perhaps a broken data CRC. Fuzzy bits, timing differences and the stuff between sectors are all currently absent.
2020-01-09 21:03:01 -05:00
Thomas Harte
985b36da73
Starts towards STX support.
2020-01-07 23:21:32 -05:00
Thomas Harte
54fe01b532
Fixed: the final track is inclusive, not exclusive.
2019-12-24 23:08:16 -05:00
Thomas Harte
0dae608da5
Embraces std::make_[unique/shared] in place of .reset(new .
2019-12-23 21:31:46 -05:00
Thomas Harte
274867579b
Deploys constexpr
as a stricter const
.
2019-12-22 00:22:17 -05:00
Thomas Harte
e9318efeb6
Switches to std::make_shared/make_unique in a bunch of applicable places.
...
No doubt many more similar improvements are available, these are just the ones that were easy to find.
2019-12-21 23:34:25 -05:00
Thomas Harte
416d68ab3a
Installs some additional safety guards.
2019-12-19 22:27:50 -05:00
Thomas Harte
332f0d6167
Ensures MSAs are explicitly read-only.
2019-12-08 11:52:15 -05:00
Thomas Harte
9d07765823
Ensures proper precedence of * over %.
2019-11-14 23:19:31 -05:00
Thomas Harte
2c4f372872
Adds support for the .ST file format.
2019-11-12 23:23:14 -05:00
Thomas Harte
74be876d72
Corrects track count calculation for DSD disks.
2019-11-12 23:22:56 -05:00
Thomas Harte
e8e166eec5
Ensures no out-of-disk-bounds mirroring.
2019-11-12 23:22:25 -05:00
Thomas Harte
0204003680
Resolves GCC warnings.
2019-11-09 16:12:37 -05:00
Thomas Harte
0971bbeebe
Merge branch 'master' into AtariST
2019-11-05 23:24:26 -05:00
Thomas Harte
f3e2e88986
Update explanation of NIB processing.
2019-11-05 23:20:20 -05:00
Thomas Harte
46ec3510be
Fixed: ST sectors are numbered from 1, not 0.
2019-11-03 21:18:29 -05:00
Thomas Harte
1c154131f9
Expands size of storage in Cycles/HalfCycles; adjusts widely to compensate.
2019-10-29 22:36:29 -04:00
Thomas Harte
c66c484c54
Removes unused includes.
2019-10-20 20:38:54 -04:00
Thomas Harte
345b32d6e3
Implements read-only MSA support.
2019-10-20 20:38:54 -04:00
Thomas Harte
8b397626bf
Adds a route through the static analyser to the Atari ST.
2019-10-20 20:38:54 -04:00
Thomas Harte
b1f04ed96d
Eliminates the crutch of PlusToo BIN files.
...
Thereby returning the .bin extension to the various consoles.
2019-07-28 16:07:16 -04:00
Thomas Harte
77333ff9f7
It appears that file checksums are not reliable.
2019-07-17 14:56:50 -04:00
Thomas Harte
9f0f35033d
Introduces sector interleaving.
2019-07-16 18:05:40 -04:00
Thomas Harte
cb16790330
Improves qualifiers.
2019-07-15 22:40:45 -04:00
Thomas Harte
ca37fd8f4c
Corrects tag preservation.
2019-07-15 17:15:06 -04:00
Thomas Harte
0568996264
Fixes a couple of data arrangement issues on output.
2019-07-15 17:11:58 -04:00
Thomas Harte
6c2cc206a6
Takes a first stab at write support for Macintosh disk images.
...
Albeit that the Macintosh itself can't yet write.
2019-07-11 18:09:37 -04:00
Thomas Harte
3f303511bd
Adds cstring
include, in support of memcpy
.
2019-07-08 18:06:58 -04:00
Thomas Harte
68a3e5a739
Renamed DiskCopy42 to MacintoshIMG, now that it's not just DiskCopy 4.2 files.
2019-06-18 14:32:58 -04:00
Thomas Harte
9730800b6a
Adds support for raw sector dumps.
2019-06-18 14:14:25 -04:00
Thomas Harte
506276a2bd
Corrected: use format tag as intended.
2019-06-18 14:04:28 -04:00
Thomas Harte
df56e6fe53
Fixed: the sector number also goes into sector bodies.
...
Also the checksum is written in the other order, and the final byte of data isn't output.
2019-06-18 10:34:10 -04:00
Thomas Harte
756641e837
Fixed: tags go first, then data.
2019-06-16 22:00:12 -04:00
Thomas Harte
05c2854dbc
Makes at least some attempt at producing real disk tracks.
2019-06-16 21:17:24 -04:00
Thomas Harte
a17e47fa43
Apple's GCR header varies between the Mac and the Apple II.
2019-06-15 16:32:56 -04:00
Thomas Harte
877b46d2c1
Advances IWM/drive emulation very close to the point of 'Welcome to Macintosh'.
2019-06-15 16:08:54 -04:00
Thomas Harte
b8a1553368
Adds putative support for PlusToo-style BIN files.
...
Albeit a bit of a guess, since it's not intended to be an emulator file format.
2019-06-04 21:41:09 -04:00
Thomas Harte
1033abd9fe
Starts making some space for Macintosh-style GCR encoding.
2019-06-04 15:41:15 -04:00
Thomas Harte
881feb1bd3
Adds preliminary parsing of the Disk Copy 4.2 format.
2019-06-02 13:39:25 -04:00
Thomas Harte
ee89be6730
Removes many stray spaces.
2018-11-23 22:32:32 -05:00
Thomas Harte
fc84ae611e
Resolves various instances of spaces in place of tabs.
2018-09-09 20:33:56 -04:00
Thomas Harte
71ec7624ca
Corrects Apple DSK track length, inter-track skew, and Pro-DOS volume number.
2018-08-27 20:56:25 -04:00
Thomas Harte
a0f817108e
Minor style fix.
2018-07-10 20:01:11 -04:00
Thomas Harte
bfccadd356
Corrects comment typo.
2018-07-03 21:38:04 -04:00
Thomas Harte
5b3512f1df
Attempts to pick an intelligent place to pad out tracks.
2018-07-03 20:10:22 -04:00
Thomas Harte
6e34e60f8a
Ensures no data is dropped in transcribing a NIB to real track data.
2018-07-03 20:01:07 -04:00
Thomas Harte
2d83eeb9c4
Further minor style improvements.
2018-07-01 17:59:43 -04:00
Thomas Harte
4d9e897cc3
Corrects addressing for deserialisation of bytes.
2018-07-01 15:58:56 -04:00
Thomas Harte
555c2a4377
Makes a first sweep at converting the storage underlying PCMSegment to vector<bool>
.
...
This is to remove another pain point, in preparation for the work immediately forthcoming but also work as-yet unknown.
2018-07-01 12:05:41 -04:00
Thomas Harte
a694844190
Moves gap 1 into proper ownership.
2018-06-09 17:28:08 -04:00
Thomas Harte
28f2d331a8
Switches to more realistic gaps.
2018-06-09 13:06:45 -04:00
Thomas Harte
744c35b617
Caps the number of sync bytes inserted at five.
2018-06-06 21:52:26 -04:00
Thomas Harte
9ac21a4e71
Switches to ignoring the byte count, trusting the bit count entirely.
2018-06-06 21:51:55 -04:00
Thomas Harte
d45231c1a8
Introduces an additional validation test.
...
Thereby satisfying the TODO.
2018-05-25 18:40:15 -04:00
Thomas Harte
772812b35f
Corrects improper textual reference to interface names.
2018-05-25 18:31:20 -04:00
Thomas Harte
f443fd44b5
Introduces support for writing NIBs.
2018-05-25 18:30:55 -04:00
Thomas Harte
79c60b8984
Adds necessary import for memcpy
.
2018-05-24 21:58:50 -04:00
Thomas Harte
523ca3264b
Implements write support for WOZ files.
2018-05-24 21:44:31 -04:00