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
Thomas Harte
8f78e5039e
Factors out track seeking.
2018-05-24 18:45:00 -04:00
Thomas Harte
57ee6d4e41
Merge branch 'master' into WOZWriting
2018-05-23 22:32:30 -04:00
Thomas Harte
2868b1eca7
Adds missing import for memcpy
.
2018-05-23 22:31:35 -04:00
Thomas Harte
ca4bc92c33
Adds WOZ CRC checking.
2018-05-23 22:22:17 -04:00
Thomas Harte
4952657b31
Factors out physical to logical sector conversion.
2018-05-19 22:59:59 -04:00
Thomas Harte
46fae1a761
Corrected: now maps in the proper direction.
2018-05-19 22:50:33 -04:00
Thomas Harte
a09fb01d71
Makes an attempt at write support for Apple DSK files.
2018-05-19 22:30:52 -04:00
Thomas Harte
7b7beb13a3
Eliminates the fiction of setting and getting registers.
...
The Disk II seems lower level than that; it will read the data bus whenever it likes, it is the programmer's responsibility to keep up with that. It also reserves the right not to load the bus regardless of whether it receives a read or write access.
2018-05-17 21:39:11 -04:00
Thomas Harte
0055efb720
Corrects failure of expression in track size expansion.
2018-05-13 22:29:36 -04:00
Thomas Harte
5d6b5d9f10
Eliminates all emdashes in cross-platform code.
2018-05-13 15:34:31 -04:00