1
0
mirror of https://github.com/TomHarte/CLK.git synced 2026-03-14 10:16:29 +00:00
Commit Graph

1267 Commits

Author SHA1 Message Date
Thomas Harte
a7eb0b14f4 Always divide lines; use interlaced merely as final weighting. 2026-02-23 16:48:52 -05:00
Thomas Harte
0643a81e4f Always alternate fields. 2026-02-23 16:47:12 -05:00
Thomas Harte
26afdf972c Explain fields. 2026-02-23 14:20:26 -05:00
Thomas Harte
486a67586a Include interlacing information in Field. 2026-02-22 23:16:33 -05:00
Thomas Harte
93fb57a478 Set alphas less often. 2026-02-22 09:43:13 -05:00
Thomas Harte
29fa6b21ed Fix to-weave transition, alphas. 2026-02-21 23:19:18 -05:00
Thomas Harte
cbf5b79a5b Attempt different frame weighting for interlaced output. 2026-02-21 22:42:51 -05:00
Thomas Harte
2cf0c4f8aa Switch horses only when certain. 2026-02-21 22:42:22 -05:00
Thomas Harte
ea3e9a96f1 Detect and expose is-interlaced flag.
With plenty of exposition to avoid confusing the reader into thinking that the emulator is predicated on this in an unrealistic fashion.
2026-02-21 21:17:35 -05:00
Thomas Harte
69b9aa9b57 Remove done TODO. 2026-02-19 12:31:45 -05:00
Thomas Harte
4f114d8370 Add header for std::lock_guard. 2026-02-18 16:02:44 -05:00
Thomas Harte
fa9bae55d8 Add lock for using scan_target_. 2026-02-18 14:12:05 -05:00
Thomas Harte
9b65349908 Ensure safe usage of force_horizontal_scans.load. 2026-02-18 13:01:56 -05:00
Thomas Harte
406fc85186 First blush: force always-horizontal, always. 2026-02-16 23:35:30 -05:00
Thomas Harte
717235cede Add a delegate route for requesting exactly-horizontal scans. 2026-02-16 23:07:14 -05:00
Thomas Harte
abe844505f Eliminate LineMetadata, redundant memory barriers. 2026-02-15 15:53:26 -05:00
Thomas Harte
0562a5aa00 Consume Frames correctly. 2026-02-15 15:49:56 -05:00
Thomas Harte
742bf46297 Attempt to consume Frames. Seems faulty. 2026-02-15 14:03:48 -05:00
Thomas Harte
dc9e9f194c Capture completeness. 2026-02-15 13:35:32 -05:00
Thomas Harte
5abff02d56 Factor out the stuff of being a circular counter. 2026-02-15 13:10:24 -05:00
Thomas Harte
a8761bdd43 Complete relocation. 2026-02-15 13:02:10 -05:00
Thomas Harte
45602cf5f1 Relocalise PointerSet definition. 2026-02-15 11:04:36 -05:00
Thomas Harte
694ffea92d Add justification. 2026-02-15 07:54:15 -05:00
Thomas Harte
4b9e37f163 Attempt to update frame areas. 2026-02-15 07:51:38 -05:00
Thomas Harte
f24a8ea93f Continue baby steps towards keeping per-frame records. 2026-02-14 18:17:08 -05:00
Thomas Harte
031f00cd1e Eliminate 'frame's from 'PointerSet'. 2026-02-14 11:56:08 -05:00
Thomas Harte
2311707764 Restore header for lock_guard, etc. 2026-02-14 11:39:54 -05:00
Thomas Harte
9a55cc1f55 Eat own dogfood on spin locks. 2026-02-14 11:21:23 -05:00
Thomas Harte
ed061fa9b3 Factor out spin lock, get a bit stricter on PointerSets. 2026-02-14 11:14:20 -05:00
Thomas Harte
6d52fdea4d Factor out and unify line/scan frame subdivision. 2026-02-13 21:57:59 -05:00
Thomas Harte
b64da038d6 Eliminate unused Line properties. 2026-02-13 21:17:17 -05:00
Thomas Harte
17ee68f227 Stop assuming consistency of glEnables. 2026-02-10 02:15:17 +00:00
Thomas Harte
06a16a62b9 Avoid accidental quadrature clamping. 2026-02-09 20:30:22 -05:00
Thomas Harte
0d83b4a808 Overtly rebind all textures.
This is defensive, based on prior experience of Qt, which seems to reserve the right to mutate your OpenGL state.
2026-02-09 11:03:24 -05:00
Thomas Harte
2e663e60a1 Restore real output path. 2026-02-09 14:49:28 +00:00
Thomas Harte
1e38a0000f Be more overt in creation tests. 2026-02-09 14:47:15 +00:00
Thomas Harte
2258871159 Introduce random fill in debug builds. 2026-02-08 22:30:47 -05:00
Thomas Harte
cdddfca788 Ensure successful compilation on stricter compilers. 2026-02-08 16:23:56 +00:00
Thomas Harte
c55ded88a5 Remove done TODO. 2026-02-07 22:39:15 -05:00
Thomas Harte
17ab2e2aaf Clean up resources. 2026-02-07 22:38:39 -05:00
Thomas Harte
2d8c4a3a2e Copy old output buffer when resizing; remove draw. 2026-02-07 22:32:51 -05:00
Thomas Harte
92302fd0b5 Fix Luminanice8Phase8 output. 2026-02-07 21:20:56 -05:00
Thomas Harte
887ef36fec Strip all precision modifiers.
I'll either reestablish them when I have a broader range of testing hardware,
or just leave the highp defaults as is.
2026-02-07 20:43:25 -05:00
Thomas Harte
5633f09e43 Reduce number of varyings. 2026-02-07 18:22:54 -05:00
Thomas Harte
2de6b22fec Apply alpha during scan-based RGB output. 2026-02-07 16:05:52 -05:00
Thomas Harte
8150d283a1 Correct scan output.
Over-saturation seems to be a current issue.
2026-02-07 15:58:24 -05:00
Thomas Harte
52075f89b2 Avoid recalculation. 2026-02-07 15:32:54 -05:00
Thomas Harte
2d8f3d8e15 Factor out repetitive circular buffer logic. 2026-02-07 15:29:10 -05:00
Thomas Harte
02283f8bfc Further eliminate redundant code. 2026-02-07 14:51:01 -05:00
Thomas Harte
3e85d280ca Avoid code duplication. 2026-02-07 14:46:33 -05:00