Commit Graph
100 Commits
Author SHA1 Message Date
Thomas Harte ca25358b7b Make conversion explicit, to avoid false expectations with e.g. x + 3. 2026-04-23 21:33:54 -04:00
Thomas Harte 05a85b6ba9 Resolve various compiler warnings: primarily ~'s promotion to int. 2026-03-25 13:57:32 -04:00
Thomas Harte 71992cbd5b Aim for a multiple of the colour subcarrier for phase-linked-luminance. 2026-02-27 09:54:51 -05:00
Thomas Harte e3d137f443 Unify (and correct) interframe alpha choices. 2026-02-26 15:40:07 -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 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 406fc85186 First blush: force always-horizontal, always. 2026-02-16 23:35:30 -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 0650eb9d16 Adopt idiomatic name. 2026-02-05 12:32:45 -05:00
Thomas Harte 65ebcd9c99 Attempt a line output shader. 2026-02-04 14:41:34 -05:00
Thomas Harte 7fb594d571 Reduce #includes. 2026-02-03 22:59:49 -05:00
Thomas Harte f4f1dbd4d5 Strike towards a separation filter. 2026-02-03 22:48:48 -05:00
Thomas Harte 961669168a Slim perform call path; establish that uniforms are now in place. 2026-02-02 11:00:02 -05:00
Thomas Harte e72ab3dd01 Factor out clock multiplier selection; apply composition uniforms. 2026-01-28 17:43:19 -05:00
Thomas Harte 13655320e2 Merge pull request #1684 from TomHarte/ChromaFloor
Add a floor for chroma, to reduce rainbow effect.
2026-01-21 21:54:41 -05:00
Thomas Harte 0a5559e358 Add a floor for chroma, to reduce rainbow effect. 2026-01-21 15:35:45 -05:00
Thomas Harte 0852a8e970 Allow shader generator to shrink; avoid colour deterioration. 2026-01-19 08:51:41 -05:00
Thomas Harte 8743b00f85 Try to minimise and standardise-ish chroma kernel size. 2026-01-18 23:41:32 -05:00
Thomas Harte 9f7adc25e3 Make a reasoned decision on luma sharpening. 2026-01-18 20:30:43 -05:00
Thomas Harte db163ec362 Give the FilterGenerator ownership of kernel sizes. 2026-01-18 09:08:10 -05:00
Thomas Harte 46a97f4c44 Avoid oversharpening. 2026-01-17 22:56:13 -05:00
Thomas Harte c93dfd7db7 Experiment with but discover that 'real' FIRs remain out of reach. 2026-01-17 22:50:35 -05:00
Thomas Harte 3bb1fe5335 Avoid magic constants. 2026-01-17 16:37:51 -05:00
Thomas Harte 31d6524755 Reorder slightly to avoid resize. 2026-01-16 23:10:33 -05:00
Thomas Harte 46bd69de7f Improve lambdas, comment. 2026-01-16 22:53:26 -05:00
Thomas Harte e67e9fd3d2 Clean up, in pursuit of how/where I'm introducing a phase error. 2026-01-16 22:49:34 -05:00
Thomas Harte 26064cb9a4 Tweak my way to a great-looking NTSC Master System.
Other things look bad though.
2026-01-16 22:38:37 -05:00
Thomas Harte 89e8e20fcf Entrust the FilterGenerator. 2026-01-16 11:43:05 -05:00
Thomas Harte cbf4a479a0 Double buffer and kernel sizes. 2026-01-14 22:02:46 -05:00
Thomas Harte 87749415bd Flesh out interface for the filter generator. 2026-01-14 17:42:17 -05:00
Thomas Harte e175848270 Start factoring out and formalising filter generation. 2026-01-12 14:30:42 -05:00