Thomas Harte
|
0dae608da5
|
Embraces std::make_[unique/shared] in place of .reset(new .
|
2019-12-23 21:31:46 -05:00 |
|
Thomas Harte
|
05d77d3297
|
Also deploys make_unique/shared to avoid type repetition.
|
2019-12-21 23:52:04 -05:00 |
|
Thomas Harte
|
1c154131f9
|
Expands size of storage in Cycles/HalfCycles; adjusts widely to compensate.
|
2019-10-29 22:36:29 -04:00 |
|
Thomas Harte
|
5149f290d0
|
Starts trying to formalise just-in-time execution.
Which, at least, simplifies Cycle/HalfCycle to Cycle run_for usage via template.
|
2019-07-28 21:49:54 -04:00 |
|
Thomas Harte
|
2432151bf8
|
Puts machine name into ROMMachine::ROM.
Also switches to idiomatic exit codes.
|
2019-07-22 21:14:21 -04:00 |
|
Thomas Harte
|
f3aac603f8
|
Adds extended Introduces extended ROM details for the C1540, Electron, Master System and MSX.
|
2019-07-20 21:30:37 -04:00 |
|
Thomas Harte
|
20670bab2f
|
Expands information included in ROM load requests.
|
2019-07-19 22:35:22 -04:00 |
|
Thomas Harte
|
3cb042a49d
|
Corrects the carry and extend flags for various long-word operations.
|
2019-04-21 22:08:18 -04:00 |
|
Thomas Harte
|
601961deeb
|
Wires through set_display_type .
|
2018-11-29 20:44:21 -08:00 |
|
Thomas Harte
|
64465f97b6
|
Starts towards reintroducing the proper mechanisms for selecting a display type at runtime.
|
2018-11-28 17:53:33 -08:00 |
|
Thomas Harte
|
8a699b6072
|
Kills setup_output definitively, saving some indirection. set_scan_target takes its place.
|
2018-11-14 21:52:57 -05:00 |
|
Thomas Harte
|
f6562de325
|
Possibly adds enough for the Electron and ZX80 to start outputting dummy lines.
Let's see!
|
2018-11-03 23:40:39 -04:00 |
|
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
|
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
|
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
|
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
|
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
|
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
|
a167e3849b
|
Allows multiple ROMs to be inserted into the Electron.
|
2018-04-18 18:13:30 -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
|
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
|
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
|
7b25b03cd5
|
Formally standardises machine options and introduces a --help option for the SDL target.
|
2017-11-20 21:55:32 -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 |
|
Thomas Harte
|
2e15fab651
|
Doubles down on <cX> over <X.h> for C includes, and usage of the namespace for those types and functions.
|
2017-11-11 15:28:40 -05:00 |
|
Thomas Harte
|
ddcdd07dd0
|
Modifies the Vic-20 and C1540 to bring them into the realm of self-ROM fetching.
Hence enables Vic-20 support within kiosk mode as currently drafted.
|
2017-11-07 21:19:51 -05:00 |
|
Thomas Harte
|
35da3edf60
|
Implements install_roms on the Electron, Oric and ZX80/81.
|
2017-11-06 22:14:15 -05:00 |
|
Thomas Harte
|
ad9df4bb90
|
Commutes uint8_t * , uint16_t * , uint32_t * , size_t , off_t and long to functional-style casts.
|
2017-10-21 22:30:15 -04:00 |
|