Commit Graph
122 Commits
Author SHA1 Message Date
Thomas Harte 761c544763 Move optional to a post hoc flag. 2026-05-25 12:08:19 -04:00
Thomas Harte 25b433b6bc Remove spaces. 2026-05-14 20:47:43 -04:00
Thomas Harte 5eb2cf108e Prefer reference: this shouldn't be nullable. 2026-05-02 10:59:31 -04:00
Thomas Harte 85ddc42f9c Regularise factory method name. 2026-05-01 22:41:25 -04:00
Thomas Harte afdd20022d Normalise last_valid to get. 2026-05-01 14:00:45 -04:00
Thomas Harte 7016cb4013 Respect bits 3 and 2 of FFFC. 2026-04-19 10:32:46 -04:00
Thomas Harte 811cb2a50c Limit line lengths. 2026-04-19 10:20:15 -04:00
Thomas Harte 12aede0514 Catch writes to FFFC. 2026-04-19 10:18:25 -04:00
Thomas Harte 4ec043a4c7 Wire though unicode character lookup. 2026-04-14 18:17:29 -04:00
Thomas Harte bf7e9f42ac Add support for M5 cartridge images. 2026-04-06 22:10:47 -04:00
Thomas Harte 4ee674287e Neaten. 2026-03-09 12:30:53 -04:00
Thomas Harte 892f16be7b Tilt back towards fused divide-and-convert. 2026-03-09 11:52:51 -04:00
Thomas Harte 2d1c865366 Attempt fully generic formulation of divide/flush. 2026-03-07 16:22:16 -05:00
Thomas Harte 67171f348a Use std::copy_n where it more directly matches intent. 2025-12-10 22:23:42 -05:00
Thomas Harte e0b595477b std::vector can inherently do this. 2025-12-07 20:48:28 -05:00
Thomas Harte 461239e2e9 Further reduce memcpy reliance. 2025-12-06 14:03:00 -06:00
Thomas Harte 6ac6157d06 Eliminate memset from C++ files. 2025-12-06 10:55:32 -06:00
Thomas Harte c9c1bde6e2 Switch to spinning on SID thread synchronisation. 2025-11-13 17:59:24 -05:00
Thomas Harte ecc623cd6c Improve option naming, add one for dynamic crop. 2025-10-29 17:19:15 -04:00
Thomas Harte 105272630e Definitively eliminate per-logger state. 2025-09-11 23:29:47 -04:00
Thomas Harte 6f1db15d7c Further reduce indentation. 2025-09-05 23:07:45 -04:00
Thomas Harte d825c03372 Prefer references for delegate protocols. 2025-08-30 00:09:38 -04:00
Thomas Harte 2c2216afae Further eliminate file-relative includes. 2025-02-28 13:18:48 -05:00
Thomas Harte 0823fc32fe Eliminate file-relative paths. 2025-02-28 12:30:25 -05:00
Thomas Harte 1f6f30ae9e Implement MediaChangeObserver for the consoles. 2025-02-25 23:03:45 -05:00
Thomas Harte b15a083a15 Switch to a non-macro route for startup declarations. 2024-12-07 10:15:38 -06:00
Thomas Harte 7248470950 Roll formatting and const tweaks into Inputs. 2024-11-30 18:57:56 -05:00
Thomas Harte bc5727af14 Switch to = default. 2024-02-16 21:50:15 -05:00
Thomas Harte b61317ba7e Continue conversion of logging. 2024-01-19 22:02:26 -05:00
Thomas Harte a3d37640aa Switch include guards to #pragma once. 2024-01-16 23:34:46 -05:00
Thomas Harte 3ab6953246 Avoid use of raw pointers in machine creation. 2024-01-12 22:03:19 -05:00
Thomas Harte 2b56b7be0d Simplify namespace syntax. 2023-05-10 16:02:18 -05:00
Thomas Harte 9836a108da Avoid VDP access races. 2023-03-10 21:04:55 -05:00
Thomas Harte c9643c4145 Log memory control meaningfully. 2023-01-21 14:13:02 -05:00
Thomas Harte 23ff3fc366 Ensure all routes go somewhere. 2023-01-13 08:05:12 -05:00
Thomas Harte e8aab1fd2a Restore proper VDP selection. 2022-12-31 21:54:14 -05:00
Thomas Harte ffb0b2ce0b Eliminate runtime duplication of personality. 2022-12-31 21:50:57 -05:00
Thomas Harte 7d6eac2895 Template the TMS on its personality.
Template parameter currently unused, but preparatory to other improvements.
2022-12-31 15:08:33 -05:00
Thomas Harte 8f2e94a1d8 Switch name back to emphasise _async_. 2022-07-16 14:41:04 -04:00
Thomas Harte bf03bda314 Generalise AsyncTaskQueue, DeferringAsyncTaskQueue and AsyncUpdater into a single template. 2022-07-14 16:39:26 -04:00
Thomas Harte 6dabdaca45 Switch to int; attempt to do a better job of initial audio filling. 2022-07-09 13:33:46 -04:00
Thomas Harte b097b1296b Adopt granular flushing widely. 2022-07-08 16:04:32 -04:00
Thomas Harte b03d91d5dd Permit granular specification of what to flush. 2022-07-08 15:38:29 -04:00
Thomas Harte 96189bde4b Loop the Master System into the experiment. 2022-07-07 16:46:08 -04:00
Thomas Harte f5d3d6bcea Splits the lowpass filter into push and pull variants. 2021-11-21 15:37:29 -05:00
Thomas Harte 5bfedff8d1 Mutate dangling printf to a LOG. 2021-07-16 17:32:05 -04:00
Thomas Harte f4db4c3a73 Implements ROM::Request::validate.
It now also validates ROM sizes, so can no longer take a const Map.
2021-06-04 18:54:50 -04:00
Thomas Harte a30eeaab6a Starts to introduce a new grammar for ROM requests.
They can be optional, and chained together in AND or OR combinations. A central catalogue knows the definitions of all ROMs.
2021-06-03 21:55:59 -04:00
Thomas Harte 1266bbb224 Makes the TMS a sequence-point-generating JustInTimeActor. 2021-04-05 21:02:37 -04:00
Thomas Harte 512a52e88d Increases const correctness, marks some additional constructors as constexpr, switches std::atomic construction style. 2020-05-20 23:34:26 -04:00