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

735 Commits

Author SHA1 Message Date
Thomas Harte ecb5504bd1 Switches enable_vertex_attribute_with_pointer to silent failure (versus glGetError). 2018-11-12 22:51:44 -05:00
Thomas Harte 2adf3d353e Subtracts retrace periods from output scale. 2018-11-12 20:20:09 -05:00
Thomas Harte 3045e85004 Ensures redraws when resizing; declines to busy wait otherwise. 2018-11-12 20:15:38 -05:00
Thomas Harte e9d1afd515 Appears to demonstrates that the line buffer is approximately working. 2018-11-12 19:10:48 -05:00
Thomas Harte 833ab7945b Slow steps towards switching to line output. 2018-11-12 18:56:54 -05:00
Thomas Harte 0af1d668a6 Takes a first step towards generality, and thereby starts submitting lines. 2018-11-12 18:47:55 -05:00
Thomas Harte 0ac62e3805 Flips and properly sizes output scans. 2018-11-12 18:28:09 -05:00
Thomas Harte 938d09f34a Corrects scan outline generation. 2018-11-12 18:23:45 -05:00
Thomas Harte dce52d740d Finally gets some pixels back on screen.
For now, just the raw scans, direct to the framebuffer, with no intermediate processing. But it seems to prove that at least some of the proper data is reaching the GPU.
2018-11-11 23:23:42 -05:00
Thomas Harte 3ae333fa84 Edges further towards reviving the shaders. 2018-11-11 21:41:13 -05:00
Thomas Harte d5af1f3948 Removes some migrated work. 2018-11-11 16:22:14 -05:00
Thomas Harte 0ba3ae53ab Connects up the necessary recording to use intermediate composite buffers. 2018-11-11 15:20:18 -05:00
Thomas Harte be12d78c83 Corrects vertical event announcement, and adjusts namespaces for OpenGL primitives. 2018-11-11 15:11:32 -05:00
Thomas Harte b70227ac1b Ensures proper write area locations end up in the scans. 2018-11-10 21:10:33 -05:00
Thomas Harte 6d277fecd5 Makes ScanTarget a little more communicative and orthogonal. 2018-11-10 19:52:57 -05:00
Thomas Harte 491817d85c Corrects allocation error and begins submitting raw textures. 2018-11-08 23:02:36 -05:00
Thomas Harte 20faf4e477 Adds submission of scans to the GPU. 2018-11-08 22:21:11 -05:00
Thomas Harte 4fe5c7c24e Conspires to handle multithreading side of things in a lockless fashion.
At least on x86-64.
2018-11-08 21:57:28 -05:00
Thomas Harte 36bf640c6f Acts as if it is going to submit scans, at least. 2018-11-07 22:53:46 -05:00
Thomas Harte 7881e40e0b Shuffles the OpenGL primitives into their own collection. 2018-11-07 19:11:01 -05:00
Thomas Harte 55da1e9c0f Simplifies semantics a little and starts accepting a single buffer of pixel data. 2018-11-06 22:23:38 -05:00
Thomas Harte 9799aa0975 Completes documentation and rounds out implementation. 2018-11-04 22:17:33 -05:00
Thomas Harte 1effb97b74 Reintroduces colour phase acquisition from the colour burst. 2018-11-04 21:57:46 -05:00
Thomas Harte eb28095041 Ensures proper accumulation and reporting of colour phase across lines. 2018-11-04 21:44:22 -05:00
Thomas Harte 014da41471 Ensures scan positions are communicated with a specified range, and switches manner of pixel clock communication. 2018-11-04 21:06:25 -05:00
Thomas Harte 0446e350d3 Resolves sizing of texture coordinates, and improves constness slightly. 2018-11-03 23:51:26 -04:00
Thomas Harte 05fb7db147 Reduces CRT chattiness. 2018-11-03 23:47:41 -04: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 373820f080 Attempts to establish interface to decouple scan output from generation.
Restores some functionality that had dropped out in the interim: diagonal scans, decoupling of scan scaling from timing of the composite subcarrier.
2018-10-30 21:50:35 -04:00
Thomas Harte 4701aa149a Adds first draft of an interface to separate CRT logic from the GPU-side stuff. 2018-10-29 22:08:17 -04:00
Thomas Harte 7eeefd2602 Ensures LOGs look like statements even in release builds. 2018-10-22 22:37:11 -04:00
Thomas Harte 7c65cfd932 Adds default values for WriteArea. 2018-10-21 21:18:54 -04:00
Thomas Harte e582b4c8ca Eliminates some dangling references to iCoordinate. 2018-09-13 19:35:15 -04:00
Thomas Harte a7508bc2ae Switching explicitly to one pixel per sample eliminates the need for a bookender. 2018-09-12 20:11:17 -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 d73d3b4480 Adds a left border to complement the right. 2018-09-09 21:52:48 -04:00
Thomas Harte 6e9cd5cb21 Resolves over-brightness created by over-composition. 2018-09-09 20:30:43 -04:00
Thomas Harte c73445199c Eliminates a couple of instances of manual memory management. 2018-09-09 20:29:58 -04:00
Thomas Harte 4c8781c762 Increases documentation slightly. 2018-09-09 17:17:38 -04:00
Thomas Harte 3c33ccd730 Eliminates various blank lines. 2018-07-28 10:52:34 -04:00
Thomas Harte 2832792fed Corrects improper use of doubles. 2018-07-16 21:55:19 -04:00
Thomas Harte efa45b9504 Adds a right gutter to clip persistence errors.
Also uncovers and corrects a long-standing centring error.
2018-07-16 21:52:31 -04:00
Thomas Harte c9451a5382 Introduces an object for drawing OpenGL rectangles. 2018-07-14 17:42:23 -04:00
Thomas Harte 00cb4d26b3 Corrects typo. 2018-07-11 19:52:55 -04:00
Thomas Harte c97c5fa03a [Re-]recalibrates CRT retrace period and affected view windows.
In the hope of moving the CPC closer to the real CTM visible area.
2018-07-05 22:07:18 -04:00
Thomas Harte 5ab4cfee84 Factors out repeated hex-size setting. 2018-06-21 19:27:54 -04:00
Thomas Harte a9eb0d02c6 Returns sanity to 8272 logging. 2018-06-20 23:02:32 -04:00
Thomas Harte 283ed8dbae Increases permissible error in scanline length. 2018-06-19 22:24:11 -04:00