Thomas Harte
b5406b90cd
Introduces a new class hierarchy for disk images.
...
Increasing independence of format-specific stuff and generic caching without mangling them into a common namespace, and allowing in some cases for a decrease in read/write blocking.
2017-09-22 20:28:11 -04:00
Thomas Harte
e01f3f06c8
Completed curly bracket movement.
2017-03-26 14:34:47 -04:00
Thomas Harte
f44542c18c
Improved naming: this now explains what, not the mechanics of how.
2016-11-26 23:35:11 +08:00
Thomas Harte
5c8ecd3051
It probably needs a better name, but hastily implemented track caching at the Disk level.
2016-11-26 14:27:06 +08:00
Thomas Harte
8499783b14
Dragged multibyte primitives and signature checks up to the base class. Implemented support for Oric MFM-style .DSK, at the file format level.
2016-11-21 20:47:16 +08:00
Thomas Harte
31c2548804
Created a base class for the boilerplate fopen
stuff, switched as many classes as possible to its use, switched to postfix underscores and non-camelCase names.
2016-11-21 20:14:09 +08:00
Thomas Harte
91cd7e143b
Started on the SSD/DSD support. Realised I had ommitted multiple head support from my disk class. Fixed that.
2016-09-18 19:21:02 -04:00
Thomas Harte
5409c8ec54
Switched PCMSegment
s to std::vector
; ensured generated [M]FM tracks are correctly sized, thereby making sure the individual flux windows will be correctly sized.
2016-09-18 18:56:35 -04:00
Thomas Harte
82c8459055
Minor tidying of namespace usage declarations.
2016-08-27 17:18:12 -04:00
Thomas Harte
56c0d70c1f
Gave disks their own namespace.
2016-08-27 17:15:09 -04:00
Thomas Harte
2799a87218
Reduced possibility of overflow on LCM, improved commenting widely, removed one stale piece of G64 bootstrapping caveman stuff.
2016-08-01 06:04:55 -04:00
Thomas Harte
89a1881fef
Started turning the 1540 into an actual disk drive.
2016-07-29 11:03:09 -04:00
Thomas Harte
0aa90b943b
Switched to specifying bit length as a quotient for the purposes of a PCMSegment and verified that I had the logic for picking a Commodore time zone backwards: bigger numbers are faster, not slower.
...
Started sketching out a DiskDrive class.
2016-07-15 06:51:11 -04:00
Thomas Harte
1e9eedc314
Factored out the PCM track since it's going to be a useful construct for almost every file format. Documented it a little better.
2016-07-10 18:36:52 -04:00
Thomas Harte
66895d3ac7
Actually, I think this is the correct conversion from received speed to clock rate. It'll become obvious if it's not when I get back to working on the 1541 itself.
2016-07-10 18:24:12 -04:00
Thomas Harte
19ee430d4a
Made an effort to support zoned tracks, at least.
2016-07-10 18:07:53 -04:00
Thomas Harte
6593caca93
Switched to a probably more helpful way around of expecting bits in bytes.
2016-07-10 16:21:52 -04:00
Thomas Harte
845a00ccef
Attempted via linear search to implement PCMTrack::get_next_event
.
2016-07-10 16:17:25 -04:00
Thomas Harte
f9510c1b67
Put sufficiently much of PCMTrack
into place to get to a stored list of segments, having determined a common clock rate between them and therefore a complete track length.
2016-07-10 16:10:05 -04:00
Thomas Harte
4ae9f5ad5d
Added preliminaries of reading the speed zone information.
2016-07-10 13:42:45 -04:00
Thomas Harte
8ae78ba4e0
Fixed signature check and fseek
parameter order.
2016-07-10 13:32:59 -04:00
Thomas Harte
ff49857f5c
Started sketching out support for the G64 file format.
2016-07-10 10:17:53 -04:00