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
|
909685d87d
|
A drive with no disk is now happy to spin its motor.
It'll continue to produce index-hole events, which might not be accurate for 5.25" drives. Research to do.
|
2019-10-26 22:57:05 -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
|
9d17d48bca
|
Ensures cycles_per_revolution_ is populated for fixed-rate drives.
|
2019-09-28 23:23:15 -04:00 |
|
Thomas Harte
|
faec516a2c
|
Starts pushing towards figuring out a proper infrastructure for mass storage.
|
2019-08-21 23:22:58 -04:00 |
|
Thomas Harte
|
f668e4a54c
|
Makes an attempt at getting the 5380 past arbitration.
Not entirely successful. Also gets a bit smarter with `final` on ClockingHint::Sources.
|
2019-08-15 23:14:40 -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
|
786b26d23e
|
Adds an admission of incompleteness.
I really need to figure out the 5-and-3 encoding.
|
2019-07-26 23:23:40 -04:00 |
|
Thomas Harte
|
d08d8ed22c
|
Adds a further drift safeguard.
|
2019-07-26 23:23:01 -04:00 |
|
Thomas Harte
|
572e8b52e1
|
At the cost of extra storage, attempts to simplify away potential rounding issues around the index hole.
|
2019-07-26 17:20:32 -04:00 |
|
Thomas Harte
|
9b634472c6
|
Gets a little more rigorous on "high resolution".
|
2019-07-26 15:26:51 -04:00 |
|
Thomas Harte
|
d2bfd59953
|
Ensures positional continuity across rotation speed changes.
|
2019-07-25 22:29:54 -04:00 |
|
Thomas Harte
|
3d20ae47ea
|
Ensures cycles_since_index_hole_ is wrapped to track length.
|
2019-07-25 21:48:01 -04:00 |
|
Thomas Harte
|
77333ff9f7
|
It appears that file checksums are not reliable.
|
2019-07-17 14:56:50 -04:00 |
|
Thomas Harte
|
79a624e696
|
Applies more rigorous logic to deciding when to stop parsing.
|
2019-07-16 18:06:54 -04:00 |
|
Thomas Harte
|
c123ca1054
|
Slightly improves syntax.
|
2019-07-16 18:05:58 -04:00 |
|
Thomas Harte
|
9f0f35033d
|
Introduces sector interleaving.
|
2019-07-16 18:05:40 -04:00 |
|
Thomas Harte
|
3633285aaa
|
Ensures a trailing zero bit isn't dropped.
|
2019-07-16 16:36:00 -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
|
46b98dab70
|
Bumps up the amount of reserved storage.
To avoid a reallocation when reading Mac data.
|
2019-07-15 17:12:31 -04:00 |
|
Thomas Harte
|
0568996264
|
Fixes a couple of data arrangement issues on output.
|
2019-07-15 17:11:58 -04:00 |
|
Thomas Harte
|
5b05a9bc61
|
Extends Drive to report is_writing and so that writing works as the first action.
|
2019-07-12 18:53:41 -04:00 |
|
Thomas Harte
|
2c39229b13
|
Adds has-new-disk flag, allowing mounting of software from the desktop.
|
2019-07-12 13:17:24 -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
|
5a9f3cfc1e
|
Completes Mac GCR decoding and its associated test.
|
2019-07-11 17:37:07 -04:00 |
|
Thomas Harte
|
8f28b33342
|
Starts work on Macintosh GCR decoding.
|
2019-07-11 16:28:52 -04:00 |
|
Thomas Harte
|
c4ab0bb867
|
Starts sketching out an interface for IWM drives, eliminating a dangling use of unsigned as it goes.
|
2019-07-10 16:05:59 -04:00 |
|
Thomas Harte
|
3f303511bd
|
Adds cstring include, in support of memcpy .
|
2019-07-08 18:06:58 -04:00 |
|
Thomas Harte
|
b9c2c42bc0
|
Switches drives to using floats for time counting.
Hopefully to eliminate a lot of unnecessary `Time` work; inaccuracies should still be within tolerable range.
|
2019-07-02 15:43:03 -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
|
5c8aacdc17
|
Fixes the more obvious issues with GCR encoding: byte order, top bit selection.
|
2019-06-16 17:17:24 -04:00 |
|
Thomas Harte
|
fe0dc4df88
|
Starts building out some tests for Apple GCR encoding.
|
2019-06-15 22:48:24 -04:00 |
|
Thomas Harte
|
33f2664fe9
|
Makes a first attempt at Macintosh GCR encoding.
|
2019-06-15 22:29:02 -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
|
e9d0676e75
|
Fiddles further with the tachometer.
|
2019-06-06 21:36:19 -04:00 |
|
Thomas Harte
|
7591906777
|
Numerous IWM fixes: the machine now seems to be trying to measure the tachometer.
|
2019-06-06 18:32:11 -04:00 |
|
Thomas Harte
|
511d292e73
|
Ensures gain noise is forgotten upon assumption of a new track.
|
2019-06-05 14:43:17 -04:00 |
|
Thomas Harte
|
833258f3d7
|
Sets things up to allow variable rotation rates, and especially Sony 800kb-style self-selecting rates.
|
2019-06-04 21:41: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
|
2ef6d4327c
|
Resolves further build warnings.
|
2019-01-13 20:37:50 -05:00 |
|
Thomas Harte
|
cc95e587db
|
Adds virtual destructors for various interface classes.
|
2019-01-13 19:19:01 -05: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
|
78c7137427
|
Avoids observer communication if motor status hasn't changed.
|
2018-08-03 21:11:22 -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
|
abc5c50b2e
|
Added some additional exposition.
|
2018-07-02 21:51:53 -04:00 |
|
Thomas Harte
|
1fcb461c42
|
Ensures that segments are written in a properly-circular fashion.
|
2018-07-02 19:35:49 -04:00 |
|
Thomas Harte
|
abca38a548
|
Makes an initial removal of PCMPatchedTrack . Farewell, old friend.
|
2018-07-01 22:49:57 -04:00 |
|
Thomas Harte
|
b4be2cd063
|
Implements PCMTrack::add_segment. Thereby completes PCMTrack::resampled_clone.
|
2018-07-01 18:28:25 -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
|
be664b5695
|
Ensures that start positions are properly related to sectors.
|
2018-07-01 15:53:48 -04:00 |
|
Thomas Harte
|
c3751066b7
|
Ensures segments are properly sized.
|
2018-07-01 15:43:31 -04:00 |
|
Thomas Harte
|
77feee8197
|
Applies minor style improvements.
|
2018-07-01 15:38:42 -04:00 |
|
Thomas Harte
|
f75af3b45e
|
Adds some extra exposition.
|
2018-07-01 14:41:17 -04:00 |
|
Thomas Harte
|
1471a35bb8
|
Reserves a more appropriate amount of data.
|
2018-07-01 14:40:48 -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
|
16bef0dcd5
|
Starts the movement towards a world without PCMPatchedTrack.
|
2018-06-30 20:03:18 -04:00 |
|
Thomas Harte
|
62eef8cb40
|
Reinstates proper ready behaviour.
|
2018-06-18 21:35:39 -04:00 |
|
Thomas Harte
|
27657fcde0
|
Adds necessary header for assert .
|
2018-06-10 21:02:19 -04:00 |
|
Thomas Harte
|
e0b75b6e3d
|
Corrects logic for avoiding overwrite.
|
2018-06-09 21:47:51 -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
|
dde9b73a22
|
Creates the through-path that will be necessary for RWTS acceleration.
|
2018-06-09 12:51:53 -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
|
db8d8d8404
|
Commutes Sleeper to ClockingHint::Source , making state more granular.
|
2018-05-27 23:17:06 -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
|
853261364e
|
Generalised CRC generation and created specific subclasses for the CCITT CRC16 and CRC32.
|
2018-05-23 22:21:57 -04:00 |
|
Thomas Harte
|
4952657b31
|
Factors out physical to logical sector conversion.
|
2018-05-19 22:59:59 -04:00 |
|