- Re-worked render target handling to align pixels better, reducing unintentional blurring
- Made major fixes to CVBS simulation, significantly increasing color saturation
- The defocus pass is now switched off when defocus_x and defocus_y are zero, allowing finer-grained performance tuning.
- Removed YIQ convolution from the main color-convolution shader and replaced it with a full composite encode/decode pass. This is slower, but looks amazing(ly like a terrible TV) and can be turned off.
- More authentic NTSC dot crawl and bandwidth limiting.
- Potential fix for some crashing reported by John IV
- Split color convolution and deconvergence into separate shaders for potential GPU savings down the line
- Added light and heavy variants of the color convolution shader, the former with YIQ colorspace removed
- Re-worked defocus to occur prior to shadow mask application, as it would be on a real monitor.
- Removed Edge Detection, as it was just for fun and can easily be added in by users if desired.
- Split "pincushion" into "Pincushion" and "Screen Curvature", the former affecting the only the displayed image and the latter only affecting the shadow mask.
---------------
Amidar (Konami/1982) [Patrik Styrnell]
Comment: Since this was a newer set than the current Amidar Konami set, I made this the parent instead - naming the other one as amidar1. If this needs correction, please do so.
- 5-pass post-processing: Upscale, Post-Process, Store Last Frame, Defocus 1, Defocus 2
- Many tunable effects including: Scanlines, defocus, linear deconvergence, radial deconvergence, pincushion, RGB colorspace convolution, YIQ colorspace convolution, saturation, simulated dot crawl, simulated chroma subsampling, aperture masking, and more.
- Requires a GPU that supports Shader Model 3.0 to be enabled and a powerful GPU, the entire pipeline consists of approximately 30 texel fetches and approximately 230 arthimetic ops.
- Will supersample the framebuffer up to 9x in both X and Y, but this requires an enormously powerful GPU that has not been invented; users with Radeon 5000-class cards should limit themselves to 3x, Radeon 4000 to 1.5x.
- The default configuration will NOT appear to do anything; it requires tuning to the user's liking.
- Should nicely fall back in all cases except missing shaders, and it might fall back correctly in that case as well. Report any anomalies.
- For obvious reasons, the Direct3D8 renderer cannont support this.
Part II: Artwork.
aperture.png: Based on Aaron's aperture_4x6 mask but with more prominent notching to bring out the "brick" pattern that was used on many period colour monitors, including the Commodore 1702 - which was, admittedly, not an arcade monitor, but it looks believable and can be changed.
white.png: Default 8x8 255,255,255,255 texture.
Focus: 8-sample blur that averages 7 samples around a center sample.
Phosphor: Not currently used, treated as a pass-through by drawd3d.c, but could be used to implement additional convolutions in a second pass.
Pincushion: Used (when commented in in drawd3d.c) to pincushion an entire full-screen texture but not otherwise apply any convolutions.
Post: The meat and potatoes. It does scanlines, it does aperture masking, it does dot crawl, it does chroma subsampling, it does YIQ colorspace convolution, it does RGB colorspace convolution, it does pincushioning, it walks, it talks, it does the dishes, it'll screw your wife for you, and if you don't have a wife it will find one for you, get you married to her, and screw her for you, IT IS THAT GOOD, LADIES AND GENTLEMEN.
Primary: Simple passthrough for UI and artwork.
A3) in the i386 and NEC disassemblers. The argument (the memory
address) was being displayed as a signed number, which doesn't make
any sense. [Alex Jackson]
Fixed a tiny bug with the debugger hex dump command: the printable
characters in ASCII range from 32 to 12*6*, not 127. [Alex Jackson]