Thomas Harte 
							
						 
					 
					
						
						
							
						
						2c2216afae 
					 
					
						
						
							
							Further eliminate file-relative includes.  
						
						
						
						
					 
					
						2025-02-28 13:18:48 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						3a0f4a0bfc 
					 
					
						
						
							
							Improve constness, formatting.  
						
						
						
						
					 
					
						2024-12-01 18:09:19 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						bc5727af14 
					 
					
						
						
							
							Switch to = default.  
						
						
						
						
					 
					
						2024-02-16 21:50:15 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						a3d37640aa 
					 
					
						
						
							
							Switch include guards to #pragma once.  
						
						
						
						
					 
					
						2024-01-16 23:34:46 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						e691cc8723 
					 
					
						
						
							
							Retain dark yellow for composite output.  
						
						
						
						
					 
					
						2023-12-07 14:21:09 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						2b56b7be0d 
					 
					
						
						
							
							Simplify namespace syntax.  
						
						
						
						
					 
					
						2023-05-10 16:02:18 -05:00 
						 
				 
			
				
					
						
							
							
								Icecream95 
							
						 
					 
					
						
						
							
						
						0499dbd4cf 
					 
					
						
						
							
							Align Scan to be a multiple of four bytes  
						
						... 
						
						
						
						Some GPUs (e.g. r600) require the stride of vertex attributes to be a
multiple of four bytes, add two bytes of padding to the Scan struct to
meet this alignment requirement and reduce driver CPU overhead. 
						
						
					 
					
						2022-08-29 16:32:25 +12:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						c7ab3d4075 
					 
					
						
						
							
							Reduces cost of bookending video data.  
						
						
						
						
					 
					
						2020-11-18 17:32:11 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						5698aa6499 
					 
					
						
						
							
							Corrects colour mapping and improves documentation for self.  
						
						
						
						
					 
					
						2020-11-11 20:41:30 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						a17d0e428f 
					 
					
						
						
							
							Protects against some further uninitialised values.  
						
						
						
						
					 
					
						2020-09-16 18:15:57 -04:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						637ec35d6a 
					 
					
						
						
							
							Adds getters for standard colour-space conversion matrices.  
						
						... 
						
						
						
						These are just more details on the meaning of the colour spaces, so I think they belong here. 
						
						
					 
					
						2020-08-11 19:58:57 -04:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						8374a5e579 
					 
					
						
						
							
							Adds superficially correct compositeSampleLuminance8Phase8 function.  
						
						... 
						
						
						
						Thereby uncovering a minor error in my decoding of colour phase. 
						
						
					 
					
						2020-08-10 21:33:59 -04:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						525233e10b 
					 
					
						
						
							
							Ensures all input data types are parseable in Metal.  
						
						... 
						
						
						
						Though now I need to think a bit more about the best way to compose signal-type conversions, and whether output-type calculations (i.e. gamma, brightness) are applied. 
						
						
					 
					
						2020-08-10 19:47:47 -04:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						c1dc42a094 
					 
					
						
						
							
							Add comment on latent design aim.  
						
						... 
						
						
						
						In the hope that I don't forget why I did this. 
						
						
					 
					
						2020-08-09 21:18:23 -04:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						bdcf266e45 
					 
					
						
						
							
							Having learnt a bit more: eliminates Metal attribute tags, switches to more natural expression of structs.  
						
						... 
						
						
						
						Also thereby eliminates the need for a forced alignas(4) on various structs. 
						
						
					 
					
						2020-08-08 17:27:32 -04:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						4c9418f59a 
					 
					
						
						
							
							Guarantees alignof(4) on all GPU-bound structures.  
						
						... 
						
						
						
						Taken as given: Metal's requirement here is reasonable enough that it'll either be the same as other frameworks, or at least possibly help them down a fast path. 
						
						
					 
					
						2020-08-07 21:18:08 -04:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						7431d56166 
					 
					
						
						
							
							Ensures is_in_retrace is properly initialised.  
						
						
						
						
					 
					
						2020-06-19 23:09:02 -04:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						530ff7471d 
					 
					
						
						
							
							Adds a virtual destructor, given how these things might be held.  
						
						
						
						
					 
					
						2020-06-14 21:14:51 -04:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						267006782f 
					 
					
						
						
							
							Starts to add Qt target; resolves many build warnings.  
						
						
						
						
					 
					
						2020-05-30 00:37:06 -04:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						512a52e88d 
					 
					
						
						
							
							Increases const correctness, marks some additional constructors as constexpr, switches std::atomic construction style.  
						
						
						
						
					 
					
						2020-05-20 23:34:26 -04: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 
							
						 
					 
					
						
						
							
						
						709c229cd7 
					 
					
						
						
							
							Gets a bit more explicit with ScanTarget documentation.  
						
						
						
						
					 
					
						2020-02-04 20:19:46 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						9136917f00 
					 
					
						
						
							
							Enables the Oric for 50/60Hz mode switching, inventing PAL60 for the purpose.  
						
						
						
						
					 
					
						2020-01-23 22:14:02 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						a5f285b4ce 
					 
					
						
						
							
							Enhances reported data.  
						
						
						
						
					 
					
						2020-01-22 22:01:17 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						a71c5946f0 
					 
					
						
						
							
							Ensures proper manipulation of scan_statuses, leading to the correct result out of a CRTMachine.  
						
						... 
						
						
						
						Possibly with the exception of the TMS, as I appear to have uncovered an unrelated issue there. 
						
						
					 
					
						2020-01-21 22:28:25 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						d97a073d1b 
					 
					
						
						
							
							Adds the necessary routine for all machines to be able to respond to get_scan_status.  
						
						... 
						
						
						
						They all just as the CRT, as all are currently based on the CRT. Which doesn't currently know the total clock rate it would need to in order properly to scale the answer to the question. Further thought coming. 
						
						
					 
					
						2020-01-20 21:45:10 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						f6f9024631 
					 
					
						
						
							
							Corrects Macintosh aspect ratio (and framing).  
						
						
						
						
					 
					
						2019-06-13 18:41:38 -04:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						b75ad3def2 
					 
					
						
						
							
							Updates the multimachine for the ScanTarget world.  
						
						
						
						
					 
					
						2019-02-03 15:07:22 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						a321ff3037 
					 
					
						
						
							
							Adds some default values.  
						
						
						
						
					 
					
						2019-01-25 20:21:24 -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 
							
						 
					 
					
						
						
							
						
						e9d9ff0da0 
					 
					
						
						
							
							Enhances ScanTarget to provide additional timing information.  
						
						
						
						
					 
					
						2019-01-05 23:09:17 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						a25470ee41 
					 
					
						
						
							
							Permits tweaking of PhaseLinkedLuminance8 sampling offset.  
						
						
						
						
					 
					
						2018-11-29 16:29:28 -08:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						fd579a019b 
					 
					
						
						
							
							Introduces a new scan source data type, motivated by the reasoning used by the Oric.  
						
						... 
						
						
						
						Specifically: it'll allow PCM sampling of the potentially arbitrary composite generation logic of various machines. 
						
						
					 
					
						2018-11-28 20:40:22 -08:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						64465f97b6 
					 
					
						
						
							
							Starts towards reintroducing the proper mechanisms for selecting a display type at runtime.  
						
						
						
						
					 
					
						2018-11-28 17:53:33 -08:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						a66a20f7fe 
					 
					
						
						
							
							Manages to get a brilliant white out of the new pipeline.  
						
						
						
						
					 
					
						2018-11-23 22:54:52 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						d4ac79b0af 
					 
					
						
						
							
							Attempts to introduce a full-on processing pipeline, in theory putting me two shaders away from completion.  
						
						... 
						
						
						
						Well, subject to finding the last flashing bug and updating the multimachine, anyway. 
						
						
					 
					
						2018-11-23 22:34:38 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						b9aca39eb0 
					 
					
						
						
							
							Reintroduces Vic-20 output.  
						
						... 
						
						
						
						Resolving errors in shader generation while I'm here. 
						
						
					 
					
						2018-11-22 22:43:42 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						a697a2e4f6 
					 
					
						
						
							
							Attempts to complete all input processing — an RGB, S-Video or composite input buffer is now produced.  
						
						... 
						
						
						
						... for all input data types. 
						
						
					 
					
						2018-11-22 17:20:31 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						396cf72029 
					 
					
						
						
							
							Renames OutputType as DisplayType and promotes it to a scan target modal.  
						
						
						
						
					 
					
						2018-11-22 14:36:46 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						8f6664f0d7 
					 
					
						
						
							
							Starts towards picking an input shader based on data type and pipeline.  
						
						
						
						
					 
					
						2018-11-15 21:02:46 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						8a699b6072 
					 
					
						
						
							
							Kills setup_output definitively, saving some indirection. set_scan_target takes its place.  
						
						
						
						
					 
					
						2018-11-14 21:52:57 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						02f9cada43 
					 
					
						
						
							
							Communicates the colour subcarrier frequency, and uses it to pick a buffer width.  
						
						
						
						
					 
					
						2018-11-13 18:33:44 -05:00 
						 
				 
			
				
					
						
							
							
								Thomas Harte 
							
						 
					 
					
						
						
							
						
						6d277fecd5 
					 
					
						
						
							
							Makes ScanTarget a little more communicative and orthogonal.  
						
						
						
						
					 
					
						2018-11-10 19:52:57 -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 
							
						 
					 
					
						
						
							
						
						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 
							
						 
					 
					
						
						
							
						
						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