Thomas Harte
6488f46850
Normalise variable names.
2024-06-02 21:58:49 -04:00
Thomas Harte
5f4b798cff
Clarify scope of this_state
.
2024-06-01 20:05:51 -04:00
Thomas Harte
d49c07687c
Unify [get_/skip_]samples, adding a third option for in-place mixing.
2024-02-12 10:55:52 -05:00
Thomas Harte
609d81d75d
Distinguish sources of samples and of whole buffers.
2024-02-09 14:25:40 -05:00
Thomas Harte
f3d0827d14
Introduce [Mono/Stereo]Sample types.
2024-02-09 09:15:48 -05:00
Thomas Harte
a4a983eb81
Promote stereo status to template parameter.
2024-02-08 15:21:47 -05:00
Thomas Harte
c6c9be0b08
Adopt CRTP for SampleSource.
2024-02-01 21:47:44 -05:00
Thomas Harte
ce0d53b277
Clean up SampleSource's getters.
2024-02-01 21:29:00 -05:00
Thomas Harte
a3d37640aa
Switch include guards to #pragma once
.
2024-01-16 23:34:46 -05:00
Thomas Harte
fc63fcb751
Unify usages of output_level
for border.
2023-12-07 11:04:18 -05:00
Thomas Harte
28c79b2885
Eliminate redundant [space][tab] pairs.
2023-05-12 14:14:45 -04:00
Thomas Harte
2b56b7be0d
Simplify namespace syntax.
2023-05-10 16:02:18 -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
f5d3d6bcea
Splits the lowpass filter into push and pull variants.
2021-11-21 15:37:29 -05:00
Thomas Harte
bb57f0bcc7
Ensures all 6560 properties have a valid default value.
2020-09-16 17:24:18 -04:00
Thomas Harte
267006782f
Starts to add Qt target; resolves many build warnings.
2020-05-30 00:37:06 -04:00
Thomas Harte
25996ce180
Further doubles down on construction syntax for type conversions.
2020-05-09 23:00:39 -04:00
Thomas Harte
31c6faf3c8
Adds a bunch of const
s.
2020-05-09 21:23:52 -04:00
Thomas Harte
394ee61c78
Starts a switch to reflectable-style runtime options.
...
The Amstrad CPC and ZX80/81 have made the jump so far, subject to caveats. The macOS build is unlikely currently to work properly.
2020-03-16 23:25:05 -04:00
Thomas Harte
9835e800ec
Fixed: individual audio generators now either are or are not stereo. The speaker acts accordingly.
2020-02-16 18:28:03 -05:00
Thomas Harte
e02d109864
Nudges the LowpassSpeaker towards supporting stereo generation.
2020-02-15 18:03:12 -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
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
c1bae49a92
Standardises on read
and write
for bus accesses.
...
Logic being: name these things for the bus action they model, not the effect they have.
2020-01-05 13:40:02 -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
7030abca97
Corrects PAL colours for the Vic-20.
2019-02-25 19:28:52 -05:00
Thomas Harte
248a8efd2f
Corrects declared pixel clock GCD.
2019-01-06 16:32:13 -05: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
ee89be6730
Removes many stray spaces.
2018-11-23 22:32:32 -05:00
Thomas Harte
b9aca39eb0
Reintroduces Vic-20 output.
...
Resolving errors in shader generation while I'm here.
2018-11-22 22:43:42 -05:00
Thomas Harte
6d277fecd5
Makes ScanTarget
a little more communicative and orthogonal.
2018-11-10 19: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
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
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
31b048f966
Ensures all bool
s start in a valid state.
2018-09-10 22:21:03 -04:00
Thomas Harte
35e84ff1a8
Corrects NTSC quadrature phase.
2018-05-31 21:40:46 -04:00
Thomas Harte
ad9b0cd4e3
Eliminates all endashes.
2018-05-13 15:43:03 -04:00
Thomas Harte
0b771ce61a
Removes all instances of the copyright symbol.
2018-05-13 15:19:52 -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
467cd5450f
Adjusts PAL Vic timing.
2018-04-12 21:12:09 -04:00
Thomas Harte
428b6145fa
Converts 6560 to more project normative templated form.
2018-04-11 22:00:42 -04:00
Thomas Harte
4c8a68c6a4
Implements late-0 with proper timing, and NTSC interlaced raster count timing.
2018-04-11 08:00:37 -04:00
Thomas Harte
0b4b6f4aec
Tweaks luminances and reintroduces late-to-zero line counts.
2018-04-10 23:05:18 -04:00
Thomas Harte
cf6f6c5c15
Eliminates the full_frame_counter_ and slightly tweaks NTSC raster timing.
2018-04-08 18:51:20 -04:00
Thomas Harte
1c5972f7b0
Ensures NTSC raster count rollover; previously it was positing a line '261' for half of '0'.
2018-04-08 16:18:41 -04:00
Thomas Harte
3e846f89a1
Introduces different clipping zones for NTSC and PAL output.
2018-04-05 21:25:19 -04:00
Thomas Harte
60c1da6a66
Causes the 6560 to obey set_sample_volume_range
.
...
Thereby resolves a clipping issue.
2018-04-05 21:04:46 -04:00