1
0
mirror of https://github.com/TomHarte/CLK.git synced 2026-04-20 10:17:05 +00:00
Commit Graph

2391 Commits

Author SHA1 Message Date
Thomas Harte 90bf6565d0 Reduced int/Cycle conversions in the Electron and on the Atari 2600, where the current framework makes it possible to do so. 2017-07-24 22:53:13 -04:00
Thomas Harte 9be9bd9106 Neatened layout. 2017-07-24 22:52:35 -04:00
Thomas Harte c1527cc9e2 Reduced back-and-forth between Cycles and ints within the Oric. 2017-07-24 22:46:31 -04:00
Thomas Harte a1a3aab115 Fixed implicit sign conversion. 2017-07-24 22:40:15 -04:00
Thomas Harte c77a83d86f The 6560 is now a ClockReceiver. This reduces to zero the number of remaining instances of the text run_for_cycles in this codebase. 2017-07-24 22:38:35 -04:00
Thomas Harte a6e377aa57 The Electron's video is now a ClockReceiver. 2017-07-24 22:36:42 -04:00
Thomas Harte df4732be2e Corrected test. 2017-07-24 22:33:49 -04:00
Thomas Harte 9435c1e12a The 1540 is now a ClockReceiver. 2017-07-24 22:32:41 -04:00
Thomas Harte efdac2ce8c The 6522 is now a ClockReceiver. 2017-07-24 22:29:09 -04:00
Thomas Harte 2912d7055b The 6532 is now a ClockReceiver. 2017-07-24 21:57:24 -04:00
Thomas Harte d056f2e246 Updated comment. 2017-07-24 21:51:22 -04:00
Thomas Harte 55ecb0c022 Converted the Microdisc into a ClockReceiver. 2017-07-24 21:51:13 -04:00
Thomas Harte 13f7aa4063 The TIA is now a ClockReceiver. 2017-07-24 21:48:34 -04:00
Thomas Harte 915f587ef1 Updated the Electron's tape class to be a ClockReceiver. 2017-07-24 21:36:30 -04:00
Thomas Harte b7f88e8f61 Filter is now a ClockReciever, affecting all sound output devices. 2017-07-24 21:29:13 -04:00
Thomas Harte 677ed463f0 Updated comment per new method name. 2017-07-24 21:19:49 -04:00
Thomas Harte 8a2bdb8d22 Converted the TimedEventLoop and the things that sit atop it into ClockReceivers. 2017-07-24 21:19:05 -04:00
Thomas Harte 9bff787ee1 Corrected for the new, non-integral type. 2017-07-24 21:05:07 -04:00
Thomas Harte b3ae920746 Converted the DPLL and disk controller classes to be ClockReceivers. 2017-07-24 21:04:47 -04:00
Thomas Harte b82bef95f3 Decided to follow through on Cycles and HalfCycles as complete integer-alikes. Which means giving them the interesting range of operators. Also killed the implicit conversion to int as likely to lead to type confusion. 2017-07-24 20:10:05 -04:00
Thomas Harte e6578defcd It turns out that quite a few tests still rely on CSTestMachine6502JamOpcode. Though since it no longer works, that'll need to be fixed. In the meantime, fixed the test build process at least, as it's not really what this branch is meant to be invested in. 2017-07-23 22:22:50 -04:00
Thomas Harte ace8e30818 Bubbled the Z80's move into clock receiver territory up into the Z80 test machine. 2017-07-23 22:21:39 -04:00
Thomas Harte ec3aa06caf Removed dangling reference. 2017-07-23 22:16:00 -04:00
Thomas Harte ba088e5545 Adapted the Z80 into a clock receiver, which also vends Cycles rather than a raw int within its PartialMachineCycle struct. The objective is to update it to vend HalfCycles within its struct, but I think I need to do some work on cycle/half-cycle arithmetic first. 2017-07-23 22:15:04 -04:00
Thomas Harte 8a0b0cb3d7 Extended both classes to allow copy assignment, copy construction and implicit zero-length construction. 2017-07-23 22:13:41 -04:00
Thomas Harte 6369138bd1 Converted the Oric's video output into a ClockReceiver. 2017-07-22 23:11:30 -04:00
Thomas Harte c2a7dffa7d Converted the ZX80/81 video component into a ClockReceiver. As it happens, it's most convenient to take the half-cycle bus here. 2017-07-22 23:02:28 -04:00
Thomas Harte b0c2325adc Corrected run call, and accepted that jam handling is gone forever. 2017-07-22 22:21:26 -04:00
Thomas Harte 2ff157cf7a Switched CRTMachine over to use Cycles as an explicit statement of units, and followed through on the effects of that. 2017-07-22 22:17:29 -04:00
Thomas Harte 83628b285b Experimentally turned the 6502 into a clock receiver. No problem encountered. 2017-07-22 21:52:21 -04:00
Thomas Harte 1ba3f262a2 Sketched out a template for clock-receiving components to allow them to be implemented in terms of either half or whole cycles. 2017-07-22 21:46:50 -04:00
Thomas Harte 97334e10af Merge pull request #157 from TomHarte/Documentation
Brings some minor documentation improvements
2017-07-22 17:40:44 -04:00
Thomas Harte 31b4f8fa31 Added an expository TODO. 2017-07-22 17:40:06 -04:00
Thomas Harte 1bbb4cb478 Increased documentation. 2017-07-22 17:39:51 -04:00
Thomas Harte d46da6ac9d Added documentation. 2017-07-22 17:31:12 -04:00
Thomas Harte 825b38850e Removes non-idiomatic line break. 2017-07-22 17:30:58 -04:00
Thomas Harte 8755824c64 Added some documentation. 2017-07-22 17:25:53 -04:00
Thomas Harte b3d3fd70aa Merge pull request #156 from TomHarte/P81
Adds support for the P81 file format
2017-07-22 16:03:38 -04:00
Thomas Harte 6633537fb8 Discovering that there is such a thing as P81 — a ZX81 file without the name omitted — added support for it. Extended FileHolder while I was here to retain the file name and be able to supply its extension, as my quick-fix test-the-last-character approach to o/p/80/81 discrimination stops working with p81 thrown into the mix and this feels like the correct factoring. 2017-07-22 16:02:25 -04:00
Thomas Harte 4dec9716c4 Merge pull request #155 from TomHarte/MissingByte
Corrects infrastructure that led to the final bit of a ZX80 or ZX81 tape never exiting the parser
2017-07-22 15:43:50 -04:00
Thomas Harte 313b36944f Ensured that the final bit of a tape isn't dropped even if the tape ends exactly after it, by not posting a false pulse, being less restrictive about what can cap a bit, and in any case using a long gap as the end-of-file bookend. 2017-07-22 15:41:33 -04:00
Thomas Harte 456fdda6c2 Ensured that the mark_end step can't overwrite another recognised symbol. 2017-07-22 15:40:22 -04:00
Thomas Harte a6b239698c Merge pull request #153 from TomHarte/StricterWarnings
Enabled stricter compiler warnings
2017-07-21 22:28:55 -04:00
Thomas Harte 92d1dd9a4a Attempts to eliminate all remaining type variations. 2017-07-21 21:54:05 -04:00
Thomas Harte 45ec5f8eab Eliminated implicit sign conversion. 2017-07-21 21:53:27 -04:00
Thomas Harte 1d01acce06 Fixed differing types of loop variables and targets. 2017-07-21 21:53:05 -04:00
Thomas Harte be750ee427 Eliminated all dangling implicit signedness conversions. 2017-07-21 21:52:37 -04:00
Thomas Harte dddb30477b Used a different inner-loop variable, for clarity. 2017-07-21 21:52:08 -04:00
Thomas Harte 37459a3ebc Fixed parameter shadowing. 2017-07-21 21:51:18 -04:00
Thomas Harte 449c33ee8b Signedness fixes. 2017-07-21 21:28:04 -04:00