Thomas Harte
|
b40211d2c0
|
Starts to bend 'CRTMachine' to a world farther from owning the GPU relationship.
|
2018-11-03 21:54:25 -04:00 |
|
Thomas Harte
|
da4d883321
|
Adds first, incomplete attempts to talk to a ScanTarget from the CRT.
Does away with the hassle of `unsigned` while I'm here; that was a schoolboy error.
|
2018-11-03 19:58:44 -04:00 |
|
Thomas Harte
|
a8645f80bf
|
Introduces 'non-exclusive' emulator-space keyboards.
i.e. sets of keys that don't amount to an entire keyboard in the modern sense. Experimentally used by the Master System for its reset key.
|
2018-10-24 21:59:30 -04:00 |
|
Thomas Harte
|
868cd5cb09
|
Improves alignment request.
|
2018-09-12 20:27:02 -04:00 |
|
Thomas Harte
|
dec18d9acc
|
Restores full pixel output to the Electron.
|
2018-09-12 20:25:30 -04:00 |
|
Thomas Harte
|
a7508bc2ae
|
Switching explicitly to one pixel per sample eliminates the need for a bookender.
|
2018-09-12 20:11:17 -04:00 |
|
Thomas Harte
|
a38639d099
|
Eliminates the concept of an iCoordinate.
Real-life precision appears not to support the idea of sub-sample pixel storage.
|
2018-09-12 20:05:39 -04:00 |
|
Thomas Harte
|
be01203cc1
|
Starts to expand the range of supported 6502s.
This fully implements the NES 6502 because, well, it's virtually no extra work, and ensures that RDY takes effect on write cycles on 65C02s.
|
2018-08-13 22:17:22 -04:00 |
|
Thomas Harte
|
76a73c835c
|
Forces 6502 consumers to declare which model — the original, 65C02 or 65SC02.
All present machines use a regular 6502.
|
2018-08-06 20:06:07 -04:00 |
|
Thomas Harte
|
3c33ccd730
|
Eliminates various blank lines.
|
2018-07-28 10:52:34 -04:00 |
|
Thomas Harte
|
8503589828
|
Corrects failure to retain OS.
|
2018-07-10 22:05:50 -04:00 |
|
Thomas Harte
|
efd812cf22
|
Ensures no buffer overrun when installing the OS ROM.
|
2018-07-10 21:54:36 -04:00 |
|
Thomas Harte
|
7e58a44771
|
Renames ConfigurationTarget to MediaTarget as per its newly-reduced interface.
|
2018-07-10 21:32:28 -04:00 |
|
Thomas Harte
|
3862fdb44c
|
Simplifies initialisation procedure for all machines.
With the side effect of allowing every machine to try to load only the ROMs that it needs.
|
2018-07-10 20:00:46 -04:00 |
|
Thomas Harte
|
c97c5fa03a
|
[Re-]recalibrates CRT retrace period and affected view windows.
In the hope of moving the CPC closer to the real CTM visible area.
|
2018-07-05 22:07:18 -04:00 |
|
Thomas Harte
|
154c89e041
|
Introduces a missing separator.
|
2018-06-21 20:01:04 -04:00 |
|
Thomas Harte
|
685a80f95b
|
Ensures the Electron Plus 3 properly announces drives to an activity observer.
Does away with lazy allocation as not all that helpful, and liable to cause complexity.
|
2018-06-18 21:49:57 -04:00 |
|
Thomas Harte
|
d576ff1172
|
Exposes DOS 3.3 acceleration as an option.
Albeit with an unhelpful label in the macOS GUI for now.
|
2018-06-10 18:28:29 -04:00 |
|
Thomas Harte
|
ad9b0cd4e3
|
Eliminates all endashes.
|
2018-05-13 15:43:03 -04:00 |
|
Thomas Harte
|
5d6b5d9f10
|
Eliminates all emdashes in cross-platform code.
|
2018-05-13 15:34:31 -04:00 |
|
Thomas Harte
|
0b771ce61a
|
Removes all instances of the copyright symbol.
|
2018-05-13 15:19:52 -04:00 |
|
Thomas Harte
|
ef19a03efc
|
Drives can now deliver activity events.
|
2018-05-10 21:54:10 -04:00 |
|
Thomas Harte
|
70e6c3b2f6
|
Introduces the ActivityObserver protocol for LEDs, drive events, etc.
The Electron's caps lock LED is the test case.
|
2018-05-07 21:57:54 -04:00 |
|
Thomas Harte
|
e92e06a5f4
|
Doubled down on the ROMMachine::ROMFetcher typedef.
|
2018-04-23 20:20:14 -07:00 |
|
Thomas Harte
|
6547560e52
|
Gives the CRT the ability to move iCoordinate multiplication outside of the fragment loop.
That resolves precision issues, as were plaguing the Apple II.
|
2018-04-18 19:29:03 -04:00 |
|
Thomas Harte
|
a167e3849b
|
Allows multiple ROMs to be inserted into the Electron.
|
2018-04-18 18:13:30 -04:00 |
|
Thomas Harte
|
1c605d58e3
|
Removes the CRT requirement for an integral relationship between cycles and samples.
|
2018-04-16 20:00:56 -04:00 |
|
Thomas Harte
|
079dc671e1
|
Rationalises per-machine static analyser call pattern, and adds Apple II as an option.
|
2018-04-14 12:12:12 -04:00 |
|
Thomas Harte
|
33084899d0
|
Provides s-video as a command-line option.
|
2018-03-31 22:14:34 -04:00 |
|
Thomas Harte
|
33281b9d89
|
Introduces S-Video as a video signal type at the interface level.
|
2018-03-30 10:25:41 -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
|
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
|
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
|
48737a32a7
|
Introduces formal setting of the output volume to SampleSource .
Previously every output device was making its own decision. Which is increasingly less sustainable due to the CompoundSource.
|
2018-03-09 13:23:18 -05:00 |
|
Thomas Harte
|
3673cfe9be
|
Pulls method call for tape fast loading checks out of inner loop for the Vic, Electron and ZX80/81.
|
2018-02-19 16:57:24 -05:00 |
|
Thomas Harte
|
43b682a5af
|
Adds multiple target versions of all the DynamicMachine-vended types.
|
2018-02-09 16:31:05 -05:00 |
|
Thomas Harte
|
21efb32b6f
|
Integrates the static and nascent dynamic analyser namespaces.
|
2018-01-24 21:48:44 -05:00 |
|
Thomas Harte
|
765c0d4ff8
|
Allows the Electron to load 8kb ROMs.
|
2018-01-15 21:27:45 -05:00 |
|
Thomas Harte
|
d5b1a9d918
|
Moves the typer functionality behind a functionality-based naming scheme, eliminates its C-style memory management.
|
2017-12-29 15:26:03 -05:00 |
|
Thomas Harte
|
76af0228dd
|
Corrects longstanding survival of camel case in the analyser's loadingCommand .
|
2017-12-29 15:15:29 -05:00 |
|
Thomas Harte
|
d36e9d0b0d
|
Reintroduces cstring.h to a few files that previously got it implicitly.
|
2017-12-18 21:47:30 -05:00 |
|
Thomas Harte
|
2dc1d4443e
|
Separates LowpassFilter and SampleSource.
|
2017-12-18 21:39:23 -05:00 |
|
Thomas Harte
|
ac80d10cd8
|
Separates the component parts of running an audio stream: task deferral, filtering and generation.
Walking towards improving opportunities for composition.
|
2017-12-17 21:26:06 -05:00 |
|
Thomas Harte
|
c83b3cefbc
|
Eliminates the generalised special case selectors and ROM suppliers from the CPC, Vic-20, Electron and ZX80/81.
|
2017-11-24 17:55:28 -05:00 |
|
Thomas Harte
|
c7dd6247f0
|
Corrects Electron Mode 3 timing.
|
2017-11-23 16:06:05 -05:00 |
|
Thomas Harte
|
7b25b03cd5
|
Formally standardises machine options and introduces a --help option for the SDL target.
|
2017-11-20 21:55:32 -05:00 |
|
Thomas Harte
|
90d33949f9
|
Adds a mapping of backspace for the Electron.
|
2017-11-18 20:02:04 -05:00 |
|
Thomas Harte
|
82ad0354c4
|
Adds configuration options to the Vic-20, Oric and ZX80/81.
|
2017-11-18 19:48:10 -05:00 |
|
Thomas Harte
|
de9db724a7
|
Introduces Configurable::Device and implements it for the Electron.
Configurable::Device covers devices that have user-facing configuration options, listing them and accepting them.
|
2017-11-17 23:02:00 -05:00 |
|