Thomas Harte
3b26e0a7c5
Tweaks NTSC colour generation.
2018-03-26 21:22:06 -04:00
Thomas Harte
6d464557a0
Reintroduces a warm-up run for the C1540.
...
That simulates the normal real-life scenario of switching the drive on slightly before the computer, and causes it to function correctly from immediate fast typing on an American Vic.
Also switches a couple of casts within the C1540 to functional style.
2018-03-26 21:06:07 -04:00
Thomas Harte
a776bec46a
Tweaks PAL colours for the 6560 to be closer to screenshots found online.
2018-03-26 19:02:16 -04:00
Thomas Harte
a2da51c30b
Commutes Vic-20 machine configuration options to its Target.
2018-03-26 19:01:57 -04:00
Thomas Harte
8067bf548a
Merge pull request #390 from TomHarte/VicOptions
...
Ensures the Vic-20 doesn't show the ZX80/81 options panel on macOS.
2018-03-25 16:07:13 -04:00
Thomas Harte
62b0645ed0
Ensures the Vic-20 doesn't show the ZX80/81 options panel on macOS.
2018-03-25 16:04:44 -04:00
Thomas Harte
39a94874ae
Merge pull request #389 from TomHarte/VicAnalysis
...
Strips back Vic-20 static analysis to the bare minimum.
2018-03-25 13:42:59 -04:00
Thomas Harte
e15d6717a1
Strips back Vic-20 static analysis to the bare minimum.
...
Also corrects an unsafe assumption in fast loading.
2018-03-25 13:37:33 -04:00
Thomas Harte
37ef46e7bb
Merge branch 'SDLTravis' of github.com:TomHarte/CLK into SDLTravis
2018-03-23 21:52:27 -04:00
Thomas Harte
70c09b3031
Attempted to draft a travis.yml for SDL.
2018-03-23 21:51:15 -04:00
Thomas Harte
9378fbb0df
Attempted to draft a travis.yml for SDL.
2018-03-23 21:40:46 -04:00
Thomas Harte
2118b9c0cd
Merge pull request #385 from TomHarte/OricHFE
...
Corrects nullptr references in the CPC static analyser.
2018-03-23 18:40:13 -04:00
Thomas Harte
d0c53de250
Corrects nullptr references in the CPC static analyser.
2018-03-23 18:39:37 -04:00
Thomas Harte
d98507eab0
Merge pull request #384 from TomHarte/PlentifulIcons
...
Fills out the application icon set.
2018-03-23 18:33:02 -04:00
Thomas Harte
760c75103e
Fills out the application icon set.
2018-03-23 18:29:18 -04:00
Thomas Harte
4407fd2f1f
Merge pull request #383 from TomHarte/D64Crash
...
Ensures the rom fetcher is properly provided to the C1540.
2018-03-23 18:22:37 -04:00
Thomas Harte
7fcd243be0
Ensures the rom fetcher is properly recorded for potential provision to the C1540.
2018-03-23 18:20:17 -04:00
Thomas Harte
3165e9d82e
Merge pull request #382 from TomHarte/Headers
...
Introduces missing #includes.
2018-03-23 18:08:55 -04:00
Thomas Harte
6656a08c60
Introduces missing #includes.
2018-03-23 18:05:51 -04:00
Thomas Harte
76661c0b51
Merge pull request #375 from TomHarte/UndefinedBehaviour
...
Resolves various pieces of undefined behaviour.
2018-03-22 22:01:19 -04:00
Thomas Harte
3bb496f9ae
Enforces a maximum sector size to avoid impossible sizes.
...
Such as 128 * 2^255.
2018-03-22 22:00:26 -04:00
Thomas Harte
45be1c19df
Resolves undefined behaviour of a signed shift left.
2018-03-22 21:59:39 -04:00
Thomas Harte
a301964bd0
Ensures all audio queues are fully merged before machine destruction.
...
Thereby avoids a race condition.
2018-03-22 21:59:19 -04:00
Thomas Harte
eea6858121
Resolves undefined behaviour from uninitialised limited-range values.
2018-03-22 21:58:42 -04:00
Thomas Harte
2a320fdf56
Merge pull request #374 from TomHarte/HFEFixup
...
Corrects two errors in all-machine HFE offering.
2018-03-22 20:24:24 -04:00
Thomas Harte
4695296ef2
Corrects bit mask for offering HFE around.
2018-03-22 20:23:39 -04:00
Thomas Harte
0fdbbeca1d
Ensures the Commodore parser properly rejects non-GCR disks.
2018-03-22 20:23:21 -04:00
Thomas Harte
34cc39ad65
Merge pull request #373 from TomHarte/SpeakerCritical
...
Moves all LowpassSpeaker delegate calls outside of critical sections.
2018-03-22 20:07:20 -04:00
Thomas Harte
3d0c832a21
Moves all LowpassSpeaker delegate calls outside of critical sections.
2018-03-22 19:01:20 -04:00
Thomas Harte
1acdab9448
Expanded potential HFE targets to everything other than the MSX.
...
The MSX does not yet perform any sanity checks on disks. That's TODO.
2018-03-22 18:55:52 -04:00
Thomas Harte
93e85c5c4a
The CPC now accepts disks only if it can make sense of them.
2018-03-22 18:52:43 -04:00
Thomas Harte
ab98189d25
Merge pull request #372 from TomHarte/MultiJoystick
...
Implements multimachine joystick support.
2018-03-22 11:09:38 -04:00
Thomas Harte
cd0fb7624b
Pulls delegate messages out of the critical sections.
2018-03-22 11:08:07 -04:00
Thomas Harte
bae38497bb
Implements multitarget joysticks.
2018-03-22 11:07:52 -04:00
Thomas Harte
29921bfa8d
Merge pull request #371 from TomHarte/NanosecondMachines
...
Devolves time -> clock rate mapping to machines.
2018-03-22 10:08:58 -04:00
Thomas Harte
2712702461
Makes get_clock_rate
protected. It's now an implementation detail.
2018-03-22 10:01:18 -04:00
Thomas Harte
a3fa9440d1
Renames method better to communicate purpose.
2018-03-22 09:49:36 -04:00
Thomas Harte
6419b0e619
Reintroduces CSMachineDelegate
, allowing the Mac port to switch output audio rate dynamically.
2018-03-22 09:48:19 -04:00
Thomas Harte
58e5b6e3f1
Updates SDL kiosk mode to the death of CRTMachineDelegate.
2018-03-22 09:23:27 -04:00
Thomas Harte
682c3d8079
Adds new hook for watching audio output rate changes.
2018-03-22 09:23:01 -04:00
Thomas Harte
da3d65c18f
Devolves time to cycle conversion to machines.
...
Thereby avoids a whole bunch of complicated machinations that would otherwise have been required of the multimachine.
2018-03-21 22:18:13 -04:00
Thomas Harte
ece3a05504
Merge pull request #370 from TomHarte/OricDiskDetection
...
Causes the Oric properly to evaluate disks offered to it.
2018-03-21 20:51:12 -04:00
Thomas Harte
927697b0f0
Causes the Oric properly to evaluate disks offered to it.
2018-03-21 20:48:21 -04:00
Thomas Harte
74dfc80b0f
Merge pull request #369 from TomHarte/AnalyserUnion
...
Encapsulates per-platform analyser result fields.
2018-03-09 16:13:17 -05:00
Thomas Harte
a7f229bc4b
Adds missing files.
2018-03-09 16:10:17 -05:00
Thomas Harte
89bec2919f
Encapsulates machine configuration properties for all remaining platforms.
2018-03-09 16:07:29 -05:00
Thomas Harte
78eaecb29e
Provides the proper framework for encapsulation of analyser target specifics.
...
... while making them a safe container for objects too. Uses the ZX80/81 as the pilot platform.
2018-03-09 15:36:11 -05:00
Thomas Harte
d410aea856
Merge pull request #368 from TomHarte/DiamondInheritance
...
Eliminates diamond inheritance of KeyboardMachine::Machine by typers.
2018-03-09 15:19:54 -05:00
Thomas Harte
6b1eef572b
Eliminates diamond inheritance of KeyboardMachine::Machine by typers.
...
Specifically by pulling the key action stuff into a purely abstract class [/interface]. Takes the opportunity to unpublish a bunch of machine details.
2018-03-09 15:19:02 -05:00
Thomas Harte
719f5d79c2
Merge pull request #367 from TomHarte/DynamicVolume
...
Introduces formal setting of the output volume to `SampleSource`.
2018-03-09 14:10:55 -05:00