Thomas Harte
|
d0f096a20b
|
Substitutes std::osringstream for C-esque asprintf .
|
2017-11-15 21:28:48 -05:00 |
|
Thomas Harte
|
fd96e3e657
|
Eliminates all unused #ifdef GL_NV_texture_barrier code.
|
2017-11-13 22:39:18 -05:00 |
|
Thomas Harte
|
88551607a6
|
Ensures the GL error flag is cleared after a potential error-raising call.
|
2017-11-13 22:31:41 -05:00 |
|
Thomas Harte
|
2a9dccff26
|
Fixes typo.
|
2017-11-13 22:28:11 -05:00 |
|
Thomas Harte
|
9bb9cb4a65
|
Adds a fallback route for the array builder if it can't map a buffer.
|
2017-11-13 22:27:04 -05:00 |
|
Thomas Harte
|
bf4ed57f68
|
Updates style of OpenGL::TextureTarget for instance variable names and preference for RAII.
|
2017-11-13 22:04:13 -05:00 |
|
Thomas Harte
|
70039d22f1
|
Allows a CRT machine owner to set the target frame buffer for OpenGL output, breaking the assumption that it'll be zero.
|
2017-11-12 19:29:22 -05:00 |
|
Thomas Harte
|
8713cfa613
|
Ensured all asprintf return values are checked.
|
2017-11-12 17:29:20 -05:00 |
|
Thomas Harte
|
aa77be1c10
|
Introduces missing include.
|
2017-11-12 17:20:37 -05:00 |
|
Thomas Harte
|
c827d14d97
|
Corrects various GCC warnings across the 6560, CPC, TIA, Oric video and elsewhere.
|
2017-11-12 17:17:27 -05:00 |
|
Thomas Harte
|
5aef81cf24
|
Commutes cross-platform #pragma mark s to //MARK: s.
|
2017-11-12 15:59:11 -05:00 |
|
Thomas Harte
|
2e15fab651
|
Doubles down on <cX> over <X.h> for C includes, and usage of the namespace for those types and functions.
|
2017-11-11 15:28:40 -05:00 |
|
Thomas Harte
|
2e12370251
|
Resolves some of the dangling C-isms remaining in my FIR filter, and introduces filter composition.
|
2017-11-11 12:30:45 -05:00 |
|
Thomas Harte
|
cb0f58ab7a
|
Corrects order-of-initialisation errors in the CPC (again), TextureBuilder, TextureTarget, Z80, MFM parser and binary tape player.
|
2017-11-10 22:57:03 -05:00 |
|
Thomas Harte
|
fabaf4e607
|
Adds missing include files, corrects bad include paths and eliminates the Clang-specific __undefined .
|
2017-11-10 21:56:53 -05:00 |
|
Thomas Harte
|
cb015c83e1
|
Eliminated C99-style struct initialisations.
|
2017-11-10 19:14:19 -05:00 |
|
Thomas Harte
|
c0055a5a5f
|
Further builds up SConstruct, correcting many missed imports and a couple of improper uses of C99 in C++ code.
|
2017-11-09 22:04:49 -05:00 |
|
Thomas Harte
|
c45d4831ec
|
Introduces an SConstruct file and corrects those errors and warnings that arise in Ubuntu.
|
2017-11-08 22:36:41 -05:00 |
|
Thomas Harte
|
6e1d69581c
|
Eliminates a variety of end-of-line spaces.
|
2017-11-07 22:54:22 -05:00 |
|
Thomas Harte
|
218b976dbc
|
Adds through route for setting a texture bookender, and exploits it from the Electron.
|
2017-10-23 18:35:37 -04:00 |
|
Thomas Harte
|
513903890e
|
Corrects definition of Bookender and provides the default implementation.
|
2017-10-22 17:24:41 -04:00 |
|
Thomas Harte
|
1157bde453
|
Sketches interface for a GPU data bookender, to avoid stray errors with packed pixel formats.
|
2017-10-22 10:48:10 -04:00 |
|
Thomas Harte
|
ad9df4bb90
|
Commutes uint8_t * , uint16_t * , uint32_t * , size_t , off_t and long to functional-style casts.
|
2017-10-21 22:30:15 -04:00 |
|
Thomas Harte
|
e983854e71
|
Converts all uint8_t and uint16_t casts to the functional style.
|
2017-10-21 21:50:53 -04:00 |
|
Thomas Harte
|
ec999446e8
|
Commutes int and unsigned casts to the functional style.
|
2017-10-21 21:00:40 -04:00 |
|
Thomas Harte
|
5e3e91373a
|
Switches all unsigned int and double casts to functional style.
|
2017-10-21 19:49:04 -04:00 |
|
Thomas Harte
|
b5b6219cb7
|
Slightly simplifies TextureBuilder arithmetic.
|
2017-10-19 22:02:00 -04:00 |
|
Thomas Harte
|
ba5f668338
|
Ensured full CRT instance initialisation.
|
2017-10-17 22:34:10 -04:00 |
|
Thomas Harte
|
ce78d9d12c
|
Introduces buffer alignment when writing to textures.
To avoid cross-boundary writes and hopefully to eke out a little better performance.
|
2017-10-17 22:09:48 -04:00 |
|
Thomas Harte
|
edbc60a3fb
|
Various undefined behaviour fixes.
Primarily around uninitialised variables, but also with an attempted use of a negative pointer.
|
2017-10-17 21:29:19 -04:00 |
|
Thomas Harte
|
c6e6c3fcfb
|
Resolves all current analyser warnings.
|
2017-08-24 22:18:44 -04:00 |
|
Thomas Harte
|
2d81acb82e
|
Upped C++ standard to C++14 and added an #if that's intended to use the built-in std::gcd when compiled on C++17 or better. Fixed for new signedness warnings resulting for taking the step to C++14.
|
2017-08-11 19:18:45 -04:00 |
|
Thomas Harte
|
62eadbb51a
|
Adjusted gamma ratio to be the correct way around. The PAL midrange should be slightly darker now.
|
2017-08-10 15:36:27 -04:00 |
|
Thomas Harte
|
ad8c8166bc
|
Built in gamma conversion for all machines, assuming an output of 2.8 for PAL, 2.2 for NTSC.
|
2017-08-10 15:17:08 -04:00 |
|
Thomas Harte
|
55fd9122d0
|
Slightly relaxed vertical sync testing.
|
2017-07-30 21:19:42 -04:00 |
|
Thomas Harte
|
0bf4fdc9af
|
Simplified slightly.
|
2017-07-29 21:37:59 -04:00 |
|
Thomas Harte
|
ed8c73eb14
|
Ensured lengthy constant sync can't appear to be two sync pulses, regardless of other interruption.
|
2017-07-29 18:25:04 -04:00 |
|
Thomas Harte
|
3528a7f78b
|
Made an attempt at triggering vertical sync the expected number of time after it begins, regardless of total length.
|
2017-07-29 17:33:52 -04:00 |
|
Thomas Harte
|
54bcc40192
|
With an eye towards being more accurate as to vertical sync recognition: acknowledged that the detection period varies between PAL and NTSC.
|
2017-07-29 14:53:53 -04:00 |
|
Thomas Harte
|
be750ee427
|
Eliminated all dangling implicit signedness conversions.
|
2017-07-21 21:52:37 -04:00 |
|
Thomas Harte
|
449c33ee8b
|
Signedness fixes.
|
2017-07-21 21:28:04 -04:00 |
|
Thomas Harte
|
ef03c84b21
|
More definitively removed the old sample-offset blending approach to filtering.
|
2017-07-21 20:58:55 -04:00 |
|
Thomas Harte
|
5b4c5b0cbf
|
Avoided having two different variables named next_output_run.
|
2017-07-21 20:46:08 -04:00 |
|
Thomas Harte
|
8ccec37a4b
|
Eliminated a further potential cause of texture/geometry mismatch: the texture retain succeeded but then there wasn't room for geometry.
|
2017-07-09 19:11:38 -04:00 |
|
Thomas Harte
|
a25c2fd6b5
|
Got more explicit about what the thinking is here re: multiple sources of action.
|
2017-07-09 17:54:26 -04:00 |
|
Thomas Harte
|
ee1a9a4781
|
Eliminates attempts cleverly to shuffle unsubmitted runs, because no mechanism exists to stop them overwriting previously-submitted-but-not-yet-flushed runs. Which implies that the buffer must be fully circular. The cost of which is sometimes having to make two calls to glTexSubImage2D . Also added some TODOs, and a means for reporting when a retain_latest is ineffective, in which situation it would be inappropriate to attempt to generate correlated geometry
|
2017-07-09 17:50:22 -04:00 |
|
Thomas Harte
|
2f90f35478
|
Ensured the same write area can be submitted multiple times — this is actively used if a run of data overlaps a flywheel-suggested sync. Which nullifies the idea of not having a write area in the barrel, at least as soon as any one has been allocated.
|
2017-07-07 23:37:44 -04:00 |
|
Thomas Harte
|
12f7e1b804
|
Enshrined a default colour burst amplitude. Which now everybody relies on. The 102 figure is derived from the burst apparently being 40 IRE.
|
2017-07-07 23:35:14 -04:00 |
|
Thomas Harte
|
c7fa2ed11a
|
It makes more sense not to retain the previous texture builder run until vertex storage is confirmed.
|
2017-07-07 23:21:25 -04:00 |
|
Thomas Harte
|
bfbe12b94b
|
Made an attempt further to tie geometry and texture generation fully together, removing the assumption that the caller will achieve one-to-one calling.
|
2017-07-07 22:25:05 -04:00 |
|