Thomas Harte
6802318784
Removes audio_queue_.flush() calls; I don't think I really need to block. At least, not usually.
2020-01-23 20:13:16 -05:00
Thomas Harte
428d141bc9
Factors out the logic behind the Atari 2600's frequency switching.
2020-01-23 20:12:44 -05:00
Thomas Harte
a86fb33789
Ensures that the ColecoVision, MSX and Master System fully flush.
2020-01-22 22:57:16 -05:00
Thomas Harte
beefb70f75
Adds vertical sync as something that can be run_until.
2020-01-22 22:20:56 -05:00
Thomas Harte
3c6a00dc3c
Breaks a potential deadlock.
2020-01-22 22:10:20 -05:00
Thomas Harte
8404409c0d
Causes the Atari 2600 to obey normal flush semantics.
...
This stuff is going to become more important with run_until.
2020-01-22 22:05:51 -05:00
Thomas Harte
a5f285b4ce
Enhances reported data.
2020-01-22 22:01:17 -05:00
Thomas Harte
9d97a294a7
Corrects the TMS' get_scaled_scan_status
.
...
I think all platforms are now returning credible numbers.
2020-01-22 19:34:10 -05:00
Thomas Harte
56448373ae
Splits one line into two, for the benefit of step debugging.
2020-01-22 19:32:23 -05:00
Thomas Harte
a71c5946f0
Ensures proper manipulation of scan_statuses, leading to the correct result out of a CRTMachine.
...
Possibly with the exception of the TMS, as I appear to have uncovered an unrelated issue there.
2020-01-21 22:28:25 -05:00
Thomas Harte
e7fff6e123
Minor step towards correct answers: divide by time_multiplier_.
2020-01-20 22:33:51 -05:00
Thomas Harte
82e5def7c4
Implements get_scan_status, but for scale being incorrect.
2020-01-20 21:58:34 -05:00
Thomas Harte
d97a073d1b
Adds the necessary routine for all machines to be able to respond to get_scan_status.
...
They all just as the CRT, as all are currently based on the CRT. Which doesn't currently know the total clock rate it would need to in order properly to scale the answer to the question. Further thought coming.
2020-01-20 21:45:10 -05:00
Thomas Harte
e74f37d6ed
Merge pull request #736 from TomHarte/RunUntil
...
Implements a nascent `run_until`
2020-01-20 17:48:13 -05:00
Thomas Harte
3aa2c297a2
Adds feedback to the best-effort updater; enables the Cocoa port for audio event requests.
2020-01-20 17:38:25 -05:00
Thomas Harte
290db67f09
Adds a forward route for event flags. Doesn't yet account for extra time expended.
2020-01-20 17:09:01 -05:00
Thomas Harte
4de121142b
Adds a flags parameter to the BestEffortUpdater delegate.
...
On the Cocoa side, cuts Swift out of the update loop, as that seems merely to add code.
2020-01-20 16:21:53 -05:00
Thomas Harte
3c760e585a
Switches to accepting a bit mask of events to run_until.
2020-01-20 16:08:21 -05:00
Thomas Harte
8adb2283b5
Rewrites the best-effort updater to try to get better thread affinity.
2020-01-20 13:38:46 -05:00
Thomas Harte
cb61e84868
Starts building out higher-level run_until
functionality.
...
Specifically: you can now run until the next set of speaker samples has been delivered.
2020-01-20 12:12:23 -05:00
Thomas Harte
8349005c4b
Adds CRTMachine::run_until, which will run until a condition is true.
...
I want to get to being able to say "run until the beam is 60% of the way down", "run until a new packet of audio has been delivered", etc.
2020-01-19 23:52:47 -05:00
Thomas Harte
a2847f4f8e
Merge pull request #735 from TomHarte/Numeric
...
Eliminates homegrown factoring code
2020-01-19 23:32:50 -05:00
Thomas Harte
add3ebcb44
Updates Xcode project.
2020-01-19 23:23:44 -05:00
Thomas Harte
98daad45c7
Removers Factors.hpp; now this is a C++17 project.
2020-01-19 23:18:59 -05:00
Thomas Harte
1b4b6b0aee
Renames: NumberTheory -> Numeric.
2020-01-19 23:14:35 -05:00
Thomas Harte
8f94da9daf
Merge pull request #734 from TomHarte/FuzzyBits
...
Adds PCMSegementEventSource support for 'fuzzy' bits
2020-01-19 21:48:07 -05:00
Thomas Harte
357137918d
Adds fuzzy but marking through the GetTrackWithSectors interface.
2020-01-19 21:41:10 -05:00
Thomas Harte
b0f7b762af
Adds a possible const.
2020-01-19 21:40:30 -05:00
Thomas Harte
da3ee381f4
Attempts a full wiring up of fuzzy bits.
2020-01-19 21:20:21 -05:00
Thomas Harte
d27d14d2b0
Supplies fuzzy masks where specified.
2020-01-19 21:08:49 -05:00
Thomas Harte
b0326530d6
Allows fuzzy masks to be fed into the FM and MFM encoders.
2020-01-19 21:08:15 -05:00
Thomas Harte
c2bd5be51a
This seems to be the proper interpretation of speeds?
2020-01-19 20:42:51 -05:00
Thomas Harte
84f5feab70
Properly flags up overloads.
2020-01-19 20:37:54 -05:00
Thomas Harte
4b2c68c3d3
Documents next
.
2020-01-19 20:32:58 -05:00
Thomas Harte
5391a699a4
Adds the ability for a PCMSegment to maintain 'fuzzy' (i.e. random) bits. Implements an LFSR for bit generation.
...
I'm not necessarily happy with the idea of just shoving in a [pseudo-]random number generator in rather than emulating the proper process underneath, but for now I throw my arms up.
2020-01-19 20:09:11 -05:00
Thomas Harte
f3f8345e5e
Corrects spelling mistake.
2020-01-19 20:05:52 -05:00
Thomas Harte
c755411636
Slightly improves comments.
2020-01-19 20:05:22 -05:00
Thomas Harte
f02759b76b
Merge pull request #733 from TomHarte/STXTiming
...
Adds support for STX speed zones.
2020-01-19 12:41:31 -05:00
Thomas Harte
f34ddce28f
Adds support for STX speed zones.
2020-01-19 12:38:33 -05:00
Thomas Harte
50348c9fe7
Adds the ability to substitute a target during encoding.
2020-01-19 12:11:56 -05:00
Thomas Harte
3bfeebf2a1
Merge pull request #732 from TomHarte/TraceFlag
...
Improves 68000 trace support
2020-01-18 23:17:21 -05:00
Thomas Harte
dca79ea10e
Requires trace flag currently set.
2020-01-18 22:52:53 -05:00
Thomas Harte
b7fd4de32f
Ensures a one-instruction latency on the trace flag.
2020-01-18 22:06:00 -05:00
Thomas Harte
78d08278ed
Merge pull request #731 from TomHarte/ShifterSync
...
Improves STX track locating, plus minor WD emulation improvements
2020-01-18 14:59:07 -05:00
Thomas Harte
d4be052e76
Switch to matching fragments.
2020-01-18 14:18:59 -05:00
Thomas Harte
d674fd0e67
The WD uses only the low two bits for sector size.
2020-01-18 13:40:50 -05:00
Thomas Harte
229b7b36ed
Merge branch 'master' into ShifterSync
2020-01-18 13:38:56 -05:00
Thomas Harte
8a8b8db5d1
Merge pull request #729 from TomHarte/JasminLED
...
Corrects Jasmin activity light.
2020-01-16 23:16:55 -05:00
Thomas Harte
d30f83871d
Corrects Jasmin activity light.
2020-01-16 22:59:43 -05:00
Thomas Harte
1422f8a93a
Merge pull request #728 from TomHarte/HardenedRuntime
...
Opts in for the hardened macOS runtime.
2020-01-16 22:27:58 -05:00