1
0
mirror of https://github.com/TomHarte/CLK.git synced 2026-04-19 19:16:34 +00:00
Commit Graph

1260 Commits

Author SHA1 Message Date
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
Thomas Harte e6a1e02cff Correct frame-clear test; prove that the stencil isn't the issue. 2026-02-07 14:26:47 -05:00
Thomas Harte 2948b96953 Take a swing at scan output. 2026-02-07 14:24:07 -05:00
Thomas Harte 5636bc8260 Generate scan shader when needed. 2026-02-07 14:15:11 -05:00
Thomas Harte b5e393d639 Extract conditional parts of the pipeline. 2026-02-07 08:57:49 -05:00
Thomas Harte 653c2ddd14 Rearrange to reduce code in the contended area. 2026-02-07 08:45:25 -05:00
Thomas Harte 56140566a2 Attempt direct-to-display scan shader. 2026-02-06 21:57:15 -05:00
Thomas Harte 36319bcb39 Fix S-Video -> composite encoder. 2026-02-06 18:15:25 -05:00