Thomas Harte 
							
						 
					 
					
						
						
							
						
						8fdf32cde8 
					 
					
						
						
							
							Avoid OpenGL churn.  
						
						
						
						
					 
					
						2025-10-06 20:43:12 -04:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						fac3d99f64 
					 
					
						
						
							
							Switch to no-instance logging.  
						
						
						
						
					 
					
						2025-09-12 07:17:23 -04:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						2c2216afae 
					 
					
						
						
							
							Further eliminate file-relative includes.  
						
						
						
						
					 
					
						2025-02-28 13:18:48 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						ce5aae3f7d 
					 
					
						
						
							
							Adjust more dangling indentation changes.  
						
						
						
						
					 
					
						2024-12-04 22:29:08 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						b61317ba7e 
					 
					
						
						
							
							Continue conversion of logging.  
						
						
						
						
					 
					
						2024-01-19 22:02:26 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						a3d37640aa 
					 
					
						
						
							
							Switch include guards to #pragma once.  
						
						
						
						
					 
					
						2024-01-16 23:34:46 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						2b56b7be0d 
					 
					
						
						
							
							Simplify namespace syntax.  
						
						
						
						
					 
					
						2023-05-10 16:02:18 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						583f6b1ba2 
					 
					
						
						
							
							Modifies BufferingScanTarget to allow has-a relationship.  
						
						... 
						
						
						
						I might switch fully to has-a. Further consideration required. 
						
						
					 
					
						2020-08-07 22:03:27 -04:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						5165e65021 
					 
					
						
						
							
							Reduces scan_buffer_ to a saner size.  
						
						... 
						
						
						
						Albeit still probably overspecified. 
						
						
					 
					
						2020-07-28 22:36:57 -04:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						77c5b86acc 
					 
					
						
						
							
							Moves ownership of the scan and line buffers out of the BufferingScanTarget.  
						
						
						
						
					 
					
						2020-07-26 22:46:03 -04:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						e260f92988 
					 
					
						
						
							
							Privatises write_pointers_mutex_ and write_pointers_.  
						
						... 
						
						
						
						Also gives subclasses control over write-area texture space allocation. 
						
						
					 
					
						2020-07-23 22:54:40 -04:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						74788ccf8e 
					 
					
						
						
							
							Pulls the BufferingScanTarget into a separate file.  
						
						
						
						
					 
					
						2020-07-22 22:16:47 -04:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						0da5c07942 
					 
					
						
						
							
							Starts splitting ring-buffer stuff from OpenGL stuff.  
						
						... 
						
						
						
						Initially via two very codependent classes. 
						
						
					 
					
						2020-07-21 22:49:46 -04:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						3715e6b48a 
					 
					
						
						
							
							Resolves potential data race on write_area_texture_.  
						
						
						
						
					 
					
						2020-02-18 22:41:46 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						95756f9716 
					 
					
						
						
							
							Resolves data race on write_pointers_ close to machine setup.  
						
						
						
						
					 
					
						2020-02-18 20:41:51 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						b04daca98e 
					 
					
						
						
							
							Picks a safer default construction.  
						
						
						
						
					 
					
						2020-02-09 19:13:21 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						b41920990f 
					 
					
						
						
							
							Moves submit step to end of line, rather than end of scan.  
						
						
						
						
					 
					
						2020-02-04 22:15:20 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						294e09f275 
					 
					
						
						
							
							All these 'override's can be 'final's.  
						
						... 
						
						
						
						At least for the purpose of being communicative. I doubt there's much to gain in terms of compiler output — the DiskImageHolder can avoid some virtual lookups but nothing else leaps out. 
						
						
					 
					
						2020-01-23 22:57:51 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						684644420a 
					 
					
						
						
							
							Increases scan buffer availability.  
						
						
						
						
					 
					
						2019-10-20 17:22:41 -04:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						66540ff86f 
					 
					
						
						
							
							Permits end_data only after a begin_data.  
						
						
						
						
					 
					
						2019-06-03 21:56:53 -04:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						b860ba2ee3 
					 
					
						
						
							
							Disallows smaller buffer use for 'sharp' displays and tightens sampling window.  
						
						
						
						
					 
					
						2019-06-03 15:58:14 -04:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						6f7dd10d95 
					 
					
						
						
							
							Reduces draw/update contention.  
						
						... 
						
						
						
						This won't yet have any effect on either port owing to the way they handle contexts, but here it is. 
						
						
					 
					
						2019-03-07 19:28:32 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						5660007221 
					 
					
						
						
							
							Experimentally introduces adaptive quality intermediate buffers.  
						
						
						
						
					 
					
						2019-03-05 21:41:20 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						86a6b04d4a 
					 
					
						
						
							
							Begins attempts to keep track of display metrics.  
						
						... 
						
						
						
						i.e. a system that can both make smart decisions about when to use a lower resolution, and hopefully allow some sort of flywheel-esque horizontal retrace synchronisation. And possibly some raster beam chasing? 
						
						
					 
					
						2019-03-04 21:54:50 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						bee0d09877 
					 
					
						
						
							
							Splits display update and draw functions.  
						
						... 
						
						
						
						On the Mac, draw is now called without an update for resizing events, and
anything else requested by AppKit. In all other cases — including from
the SDL version — both are called as if they were still a single function. 
						
						
					 
					
						2019-03-02 19:33:28 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						68c5474e36 
					 
					
						
						
							
							Reintroduces basic filtering for RGB mode (and introduces it for monochrome composite).  
						
						
						
						
					 
					
						2019-02-26 22:21:49 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						c0c4704419 
					 
					
						
						
							
							Ensures that failure to allocate a line blocks all other allocations.  
						
						
						
						
					 
					
						2019-02-21 21:38:48 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						080f949f89 
					 
					
						
						
							
							Ensures OpenGL version is logged prior to any other GL calls.  
						
						
						
						
					 
					
						2019-02-20 20:21:17 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						008f50832c 
					 
					
						
						
							
							Fixed: the two shaders that use a common input array should use common bindings.  
						
						
						
						
					 
					
						2019-02-10 22:39:24 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						eecd4417e7 
					 
					
						
						
							
							Bites the bullet and accepts that an additional texture will be useful for QAM separation.  
						
						
						
						
					 
					
						2019-02-09 16:54:31 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						b75ad3def2 
					 
					
						
						
							
							Updates the multimachine for the ScanTarget world.  
						
						
						
						
					 
					
						2019-02-03 15:07:22 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						68d6feaa03 
					 
					
						
						
							
							Adds missing includes and gets more explicit about exceptions.  
						
						
						
						
					 
					
						2019-01-25 20:19:50 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						6a43fc5df0 
					 
					
						
						
							
							Resolves a GCC-troubling circular declaration issue vs. atomic.h.  
						
						
						
						
					 
					
						2019-01-25 19:30:39 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						a8acadbe13 
					 
					
						
						
							
							Gives the shader builders freer rein over what to use as inputs, and turns angles into a varying.  
						
						... 
						
						
						
						All dropping out during the never-ending diagnosis at play here. 
						
						
					 
					
						2019-01-22 22:20:12 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						727f2e2ba0 
					 
					
						
						
							
							Updates to the ScanTarget world.  
						
						
						
						
					 
					
						2019-01-17 22:28:02 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						ef0dbc2a41 
					 
					
						
						
							
							Undoes hard-coding of target framebuffer and display gamma.  
						
						
						
						
					 
					
						2019-01-15 21:33:30 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						6c49953115 
					 
					
						
						
							
							Returns gamma correction, and corrects Amstrad CPC brightness.  
						
						
						
						
					 
					
						2019-01-14 22:56:08 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						55290f4dad 
					 
					
						
						
							
							Attempts a fix of frame_was_complete_ logic, to try to eliminate black flashes.  
						
						
						
						
					 
					
						2019-01-14 21:42:45 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						bb03d2f2ad 
					 
					
						
						
							
							Removes redundant enumeration.  
						
						
						
						
					 
					
						2019-01-13 23:07:50 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						7aec5be61a 
					 
					
						
						
							
							Cleans up and simplifies shader creation.  
						
						
						
						
					 
					
						2019-01-13 22:49:01 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						5d9521fcb9 
					 
					
						
						
							
							Advances back to a semi-complete monochrome composite output.  
						
						... 
						
						
						
						i.e. composite phase and amplitude is ostensibly flowing to its new destination. 
						
						
					 
					
						2019-01-11 22:02:15 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						906a2ff6eb 
					 
					
						
						
							
							Switches to using clock times for buffer merging and output.  
						
						
						
						
					 
					
						2019-01-06 18:47:01 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						c392c819c1 
					 
					
						
						
							
							Switches to using the announce is_visible flag to spot line ends.  
						
						
						
						
					 
					
						2019-01-06 13:37:34 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						e9d9ff0da0 
					 
					
						
						
							
							Enhances ScanTarget to provide additional timing information.  
						
						
						
						
					 
					
						2019-01-05 23:09:17 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						46d756d298 
					 
					
						
						
							
							Starts towards a flattening of the intermediate video processing.  
						
						... 
						
						
						
						Immediate issue: using x position to index into a bitmap sampled at the input data rate doesn't allow for the disconnection between input rate and output speed provided by the flywheels. 
						
						
					 
					
						2019-01-05 18:11:39 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						fd0ffc7085 
					 
					
						
						
							
							Attempts an initial flattening of the pipeline, seemingly losing all output.  
						
						
						
						
					 
					
						2019-01-01 21:02:21 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						557a2a0ddf 
					 
					
						
						
							
							Moves pipeline setup into draw(), where there'll definitely be an OpenGL context.  
						
						
						
						
					 
					
						2018-11-29 19:41:54 -08:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						d45c2a1f28 
					 
					
						
						
							
							Settles, at least for now, on 15-tap notch filtering.  
						
						
						
						
					 
					
						2018-11-26 22:34:31 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						cf49603a9e 
					 
					
						
						
							
							Makes first reintroduction of colour composite decoding.  
						
						
						
						
					 
					
						2018-11-24 22:30:39 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						538c57664f 
					 
					
						
						
							
							Establishes attribute bindings to allow multiple shaders to use the same vertex array.  
						
						
						
						
					 
					
						2018-11-24 16:06:26 -05:00