de78fb7a1c
Eliminate all references to M_PI.
2025-04-24 21:57:29 -04:00
5ef6b190af
Fix typos
2023-12-16 03:53:07 -06:00
50343dec43
Eliminate all whitespace-only lines.
2023-05-12 14:16:39 -04:00
0499dbd4cf
Align Scan to be a multiple of four bytes
...
Some GPUs (e.g. r600) require the stride of vertex attributes to be a
multiple of four bytes, add two bytes of padding to the Scan struct to
meet this alignment requirement and reduce driver CPU overhead.
2022-08-29 16:32:25 +12:00
5ee9630624
Use compositeAmplitude
in favour of its reciprocal.
2020-11-28 19:53:34 -05:00
1b3836eb1c
Adds an overt branch for mono/colour composite selection.
2020-11-28 19:47:04 -05:00
33dec3c220
Given that lineCompositeAmplitude
is not normalised, ups threshold.
2020-11-28 17:19:28 -05:00
0b4b271e3d
Pulls out redundant check.
2020-11-27 21:04:20 -05:00
807cb99f6d
Composite angles are signed.
2020-08-23 21:39:04 -04:00
8b6879a782
Brief detour: introduces myself to C++11 multiline string literals.
...
A full cleaning coming soon, I imagine.
2020-08-23 21:18:38 -04:00
2470055d90
Hides the modals.
2020-07-27 23:33:39 -04:00
2230ac6c38
Merge pull request #800 from TomHarte/QtProject
...
UNREADY. Adds a provisional Qt target.
2020-07-06 22:33:39 -04:00
267006782f
Starts to add Qt target; resolves many build warnings.
2020-05-30 00:37:06 -04:00
603b747ac5
Fix Windows MSYS2 build (mostly)
2020-05-27 18:09:56 -05:00
e9318efeb6
Switches to std::make_shared/make_unique in a bunch of applicable places.
...
No doubt many more similar improvements are available, these are just the ones that were easy to find.
2019-12-21 23:34:25 -05:00
f6f9024631
Corrects Macintosh aspect ratio (and framing).
2019-06-13 18:41:38 -04:00
5b8375f0a0
Disallows smaller buffer use for 'sharp' displays and tightens sampling window.
2019-06-03 15:57:31 -04:00
79707a3c66
Improves filtering slightly, and ensures coefficients are always set when needed.
2019-02-26 22:35:55 -05:00
694783efe9
Brings S-Video inside the group that filters luminance.
...
Thereby revealing some sort of error in offset selection.
2019-02-26 22:27:40 -05:00
68c5474e36
Reintroduces basic filtering for RGB mode (and introduces it for monochrome composite).
2019-02-26 22:21:49 -05:00
2f491b5be1
Reintroduces fragment snapping for composite colour sampling.
...
Thereby uncovers some sort of slightly-off recording of scan lines. On the Apple II, individual scans reach the ScanTarget at a density of exactly 0.25 colour cycles per pixel. So that timing information propagates exactly. But the whole lines that are composed via ::announce end up trying to fit 0.250154 colour cycles per pixel. Which creates a phase error as the display progresses from left to right.
This will need to be resolved in order to be able to fix the Apple II's intended colour phase. But, also, it's probably what was wrong with the Oric. And, quite possibly, why the single-step shader didn't work.
2019-02-24 13:39:14 -05:00
6d76b7cd94
Attempts to ensure proper colour output during alternating PAL lines.
2019-02-17 21:50:15 -05:00
ec8f1157c8
Corrects S-Video output.
2019-02-12 19:31:12 -05:00
037cbd534e
Corrects phase error in chrominance separation.
2019-02-12 19:24:28 -05:00
2fa4c59523
Correction: use the QAM texture for colours.
2019-02-12 18:42:28 -05:00
cda0a2de79
Establishes QAM colour buffer lookups within the composite colour path.
...
Subject to errors in channel scaling and absolute position.
2019-02-10 23:02:31 -05:00
008f50832c
Fixed: the two shaders that use a common input array should use common bindings.
2019-02-10 22:39:24 -05:00
c94acb1ca2
With a little more debug logging, discovered an issue with incrementing by four.
2019-02-09 22:45:20 -05:00
d341f98b09
Corrects horizontal scale.
2019-02-09 18:52:43 -05:00
e35a3ab566
Ensures proper uniforms and varyings for the qam_separation_shader.
2019-02-09 18:35:14 -05:00
1cd6d58f17
Restores S-Video through line, as monochrome.
2019-02-09 17:13:43 -05:00
eecd4417e7
Bites the bullet and accepts that an additional texture will be useful for QAM separation.
2019-02-09 16:54:31 -05:00
798cc58f76
Simplifies the composite colour shader no longer to handle colour.
2019-02-05 19:22:35 -05:00
e5f75b5df2
Resolves repetition between svideo_sample
and composite_sample
.
2019-02-03 22:09:16 -05:00
caf72afcb4
Switches to a seven-point scheme, to determine whether falsely-shared luminance is at fault.
...
It doesn't seem to be, alas.
2019-01-31 21:19:30 -05:00
5002290428
Makes consistent use of textureLod rather than texture.
2019-01-26 22:05:15 -05:00
b6a4a7e0a5
This is no longer TODO.
2019-01-25 22:47:15 -05:00
85ad490089
Offers a less error-prone route to attribute binding.
2019-01-25 21:56:55 -05:00
74e1a9a621
Declines improper use of offset
within loops and adds missing header.
2019-01-25 20:14:53 -05:00
ae0bc7e7aa
Calculates sampling offsets up front.
2019-01-23 20:53:10 -05:00
a8acadbe13
Gives the shader builders freer rein over what to use as inputs, and turns angles
into a varying.
...
All dropping out during the never-ending diagnosis at play here.
2019-01-22 22:20:12 -05:00
a6683cb9b8
Avoids scaling luminance prior to extracting chrominance.
2019-01-17 20:52:33 -05:00
d593796dae
Reintroduces less-filtered black and white video where there's no colour burst.
2019-01-16 22:22:29 -05:00
6c49953115
Returns gamma correction, and corrects Amstrad CPC brightness.
2019-01-14 22:56:08 -05:00
bb03d2f2ad
Removes redundant enumeration.
2019-01-13 23:07:50 -05:00
7aec5be61a
Cleans up and simplifies shader creation.
2019-01-13 22:49:01 -05:00
e89e55a9bb
Attempts to factor actual composite amplitude into output.
2019-01-13 14:45:17 -05:00
7c2c243985
Corrects sample spacing, and removes a lot of detritus.
2019-01-12 18:36:54 -05:00
25a1f23fc0
Takes a first shot at re[re,re]-implementing composite colour decoding.
2019-01-12 17:59:24 -05:00
27541196cc
Corrects Luminance8Phase8 and PhaseLinkedLuminance8 composite encodings.
2019-01-11 22:46:50 -05:00