Thomas Harte
|
9da7716c72
|
Attempted to simplify threading, thereby allowing machines to be constructed within a valid GL context, and started adding appropriate GL syncs. Which all oddly drops everything to a negligible FPS. Investigation will follow.
|
2016-03-19 22:46:17 -04:00 |
|
Thomas Harte
|
aa8a192c7e
|
Simplified API down to their being a single texture with a specified depth.
|
2016-03-19 17:37:55 -04:00 |
|
Thomas Harte
|
4ac1f959e9
|
A shortcut here and a shortcut there; this allows me at least to determine whether use of a PBO gains anything.
|
2016-03-19 17:07:05 -04:00 |
|
Thomas Harte
|
5b37a651ac
|
Made an attemp to deal with glUnmapBuffer(GL_ARRAY_BUFFER) == GL_FALSE .
|
2016-03-18 21:35:52 -04:00 |
|
Thomas Harte
|
0b1c9fb291
|
Ensured I don't interrupt triangle strips for the purpose of glDrawArrays.
|
2016-03-18 21:28:53 -04:00 |
|
Thomas Harte
|
620257e29e
|
Switched to a client wait, as I try to figure out what's going on.
|
2016-03-18 21:21:35 -04:00 |
|
Thomas Harte
|
2e4af90e2d
|
Resolved output errors.
|
2016-03-18 21:19:11 -04:00 |
|
Thomas Harte
|
10bc33464d
|
I don't think this is quite correct, but it's better.
|
2016-03-18 21:14:06 -04:00 |
|
Thomas Harte
|
61e880de03
|
Keeping a buffer permanently bound is apparently illegal. So back to copying in on demand. Which I think still improves on synchronisation, but not much.
|
2016-03-18 21:11:09 -04:00 |
|
Thomas Harte
|
c8ecfb89d8
|
Some cleaning.
|
2016-03-16 22:52:33 -04:00 |
|
Thomas Harte
|
0d27d3bb7f
|
As messy as it is, this use glMapBufferRange to avoid explicit buffer submits.
|
2016-03-16 22:29:22 -04:00 |
|
Thomas Harte
|
ca35a7e222
|
Ensured that a much greater input rate than output is handled correctly.
|
2016-03-16 20:38:17 -04:00 |
|
Thomas Harte
|
4cd0aa3416
|
Completed FIR filter based audio output.
|
2016-03-15 23:37:35 -04:00 |
|
Thomas Harte
|
726c98446a
|
Fixed a couple of memory leaks, at least got as far as instantiating a filter.
|
2016-03-15 21:34:00 -04:00 |
|
Thomas Harte
|
67dffc89e0
|
Stripped unnecessary includes.
|
2016-03-13 13:25:34 -04:00 |
|
Thomas Harte
|
7255408313
|
Experimented with going back to horizontal sync on leading edge; not sure so (temporarily?) disabled.
|
2016-03-08 22:54:05 -05:00 |
|
Thomas Harte
|
68da673a95
|
Wrapped this up as explicitly only the Mac thing to do.
|
2016-03-08 22:53:29 -05:00 |
|
Thomas Harte
|
bf5747f83e
|
Made an attempt to chop out all the stuff of building up the OpenGL data from the stuff of parsing input.
|
2016-03-08 22:40:23 -05:00 |
|
Thomas Harte
|
14b2927275
|
Made further attempts to tidy up; trying to demarcate between public interface and private.
|
2016-03-08 20:59:16 -05:00 |
|
Thomas Harte
|
c7976dd657
|
Started trying to clean up my Outputs namespace by moving stuff related to the CRT underneath a separate subnamespace.
|
2016-03-08 20:49:07 -05:00 |
|
Thomas Harte
|
bb09a5f58c
|
The attribute locations don't really need to be stored. They can be transient.
|
2016-03-07 21:42:21 -05:00 |
|
Thomas Harte
|
6dfe877c43
|
Basic attempts to organise myself into shape for composite output continue.
|
2016-03-07 21:22:47 -05:00 |
|
Thomas Harte
|
1e5fe2b2c1
|
Made an attempt to reestablish the Atari 2600 output connection despite various changes (TODO: generalise that stuff), and to start creating the composite shader.
|
2016-03-07 21:04:04 -05:00 |
|
Thomas Harte
|
2de229152f
|
Started sketching out shaders to do the first part of the composite conversion.
|
2016-03-07 19:21:04 -05:00 |
|
Thomas Harte
|
cd9c62acca
|
Still stepping slowly towards a working composite mode, switched the RGB sampling function to returning a vec4 , which may be of benefit to any machine with a brightness part of an RGB signal, and started edging towards at least having the correct GLSL programs ready for converting composite output.
|
2016-03-07 19:08:26 -05:00 |
|
Thomas Harte
|
3b6c9c15a1
|
Switching momentarily back to monitor mode, resolved why I was suddenly getting no output upon creating some texture targets.
|
2016-03-07 18:55:15 -05:00 |
|
Thomas Harte
|
eefd17ed4c
|
Fixed sync response in composite scan output generation and stored texture coordinates.
|
2016-03-05 21:52:22 -05:00 |
|
Thomas Harte
|
6cddb4c9c8
|
Added a first attempt to generate output scans for composite mode. So this in theory completes the CPU side of composite operations. Though I'm sure problems will reveal themselves.
|
2016-03-05 21:18:28 -05:00 |
|
Thomas Harte
|
3f39803d32
|
Switched to triangle strips, to eliminate the need for any temporary storage for the composite output path.
|
2016-03-05 20:47:11 -05:00 |
|
Thomas Harte
|
23c223e2ed
|
Started edging towards completing the CPU side of accumulating enough data for composite decoding.
|
2016-03-05 17:55:18 -05:00 |
|
Thomas Harte
|
5c8db71c64
|
Corrected some constants, ensured both machines (so far) are setting the output device.
|
2016-03-05 16:19:10 -05:00 |
|
Thomas Harte
|
70b6d51451
|
Ever more baby steps back towards composite decoding.
|
2016-03-05 14:36:12 -05:00 |
|
Thomas Harte
|
2f7626a5e0
|
Okay, this definitely definitely is supposed to be this way around.
|
2016-02-28 22:00:05 -05:00 |
|
Thomas Harte
|
3449120c24
|
Added a note to future self, put the scan edge generator back to the way round it was before.
|
2016-02-27 22:51:37 -05:00 |
|
Thomas Harte
|
7839d93344
|
With the provision of an extra hint to the CRT and, finally, the realisation about why my scans weren't exactly joining up, improved output precision.
|
2016-02-27 22:39:01 -05:00 |
|
Thomas Harte
|
1c6de7692d
|
Made an attempt to fix tape output interrupts; offloaded raster width and placing conversion to the GPU.
|
2016-02-27 20:37:41 -05:00 |
|
Thomas Harte
|
db18c85423
|
Simplified the run builder rather; put a double check of Electron timing in place.
|
2016-02-25 22:01:42 -05:00 |
|
Thomas Harte
|
1eea28b692
|
Disabled some debugging parts, added some others, marked some things as inline. Ticking over.
|
2016-02-22 23:35:42 -05:00 |
|
Thomas Harte
|
4b28e7b974
|
Switched back to a single array and vertex buffer.
|
2016-02-21 22:54:55 -05:00 |
|
Thomas Harte
|
574985f9a2
|
Fixed interlaced timing; switched to a more robust detector for horizontal sync; eliminated some test logging.
|
2016-02-20 20:29:40 -05:00 |
|
Thomas Harte
|
00f414d757
|
Made an attempt to reintroduce interlacing and screen modes with gaps. Something's wrong with synchronisation though, so most likely I'm outputting a bad signal.
|
2016-02-20 17:32:51 -05:00 |
|
Thomas Harte
|
68992a62f9
|
Switched to a subtler to out-of-band syncs.
|
2016-02-20 00:16:07 -05:00 |
|
Thomas Harte
|
1954f7bcbd
|
Got back to a stable image, at least when staying in a mode. Which is what I was trying to fix. Hmmm.
|
2016-02-19 23:41:09 -05:00 |
|
Thomas Harte
|
570d88a876
|
Added a simple metric for measuring surprise. Which will hopefully allow me to reimplement PAL/NTSC auto-selection for the Atari 2600.
|
2016-02-18 23:22:06 -05:00 |
|
Thomas Harte
|
ce3c098c28
|
Widened beam a little, moved to a linear approximation of age across scans, cut number of stored frames.
|
2016-02-16 21:48:09 -05:00 |
|
Thomas Harte
|
b261e86c62
|
Reintroduced lateral as a parameter in CRT drawing, to simulate a rounded raster.
|
2016-02-16 20:37:04 -05:00 |
|
Thomas Harte
|
a01f90ff3e
|
Attempted a switch to the real PAL visible area and to something a bit like a real phosphor decay.
|
2016-02-14 21:57:23 -05:00 |
|
Thomas Harte
|
7580d192d5
|
Fixes: now setting correct frame time estimate, properly enabling the timestamp attribute, and ensuring that the Electron flushes screen work at least once per host frame update.
|
2016-02-14 19:28:02 -05:00 |
|
Thomas Harte
|
752db78431
|
No doubt still imperfect but killed the repeated whole texture uploads.
|
2016-02-13 23:55:02 -05:00 |
|
Thomas Harte
|
697e50c0cc
|
Screen output is back, no matter how inefficiently.
|
2016-02-13 23:50:18 -05:00 |
|