Repository navigation
v1.2.0 — signal-accurate composite video and display profiles
Features
Real composite colour, decoded from the real signal
An Apple //e does not send a monitor pixels. It sends one bit per 14.31818 MHz dot, four dots to a cycle of the colour subcarrier, and every colour you have ever seen on one was manufactured by the monitor from that stream of bits. The emulator used to skip all of that: it looked up colours from a table and then tinted the edges afterwards to suggest fringing. It now generates the dot stream the machine really produces and decodes it the way a monitor does, and several things that were previously approximated fall out of that on their own. The high bit of a hi-res byte is a real half-pixel delay again rather than a swap to a different set of colours, which is the actual reason orange and blue exist and why they sit half a pixel to the right of green and violet. Colour burst is modelled, so text is colourless because the machine stops sending a colour reference during it, not because white was written into the code. And artifact colours and lo-res colours are finally the same sixteen colours, because they are the same mechanism — something the old hand-tuned tables disagreed about. Text on a mixed graphics screen fringes green and violet, exactly as it does on real hardware, while a full screen of text stays crisp and white.
Save your own display profiles
The Monitor dropdown offered five monitors and no way to keep one of your own. Tune the picture however you like and Save As gives it a name; it then appears under My Profiles alongside the built-in monitors. Adjusting a saved profile keeps its name and offers Save, which writes the changes back without asking anything, so refining one does not mean naming it again every time. Unlike the built-in monitors, which deliberately leave your brightness, contrast, saturation and bezel alone, a profile remembers everything — it is a snapshot of a picture you liked, so selecting it gives that picture back whole. Profiles are kept separately from the rest of the display settings, so Reset to Defaults does not delete them.
Improvements
Composite no longer bends the picture
The Composite Color monitor came with a curved screen. Real colour sets were curved, but curvature is not what that setting is about — the composite look is in how the colour is decoded, and the barrel distortion mostly made the picture harder to read. It is now flat, and this reaches anyone who already had Composite selected rather than only new users. Screen Curvature is still under Advanced.
The NTSC Fringing slider has gone
It faked composite artifacts by tinting edges it detected in an already-finished picture, which meant it added colour to things that were never encoded in the first place and missed colour that should have been there. Now that fringing comes out of the signal itself, keeping the slider would only have applied the effect twice.
Fixes
Double hi-res was showing the wrong colours
Every double hi-res picture was a quarter turn out around the colour wheel — greens for blues, pinks for lavenders — which is subtle enough to look like a stylistic choice rather than a fault. The 80-column video path is clocked one dot later than the 40-column one, so the same pattern of dots lands on the next point of the colour cycle and comes out a different colour. That one dot was missing.
Colour where there should have been none
Pixel Exact was quietly applying a composite effect. It worked out each pixel's colour by looking at its neighbours, which meant colour bled onto dots that were switched off and spilled past the edges of white shapes — the left edge of a white block ran magenta, violet and lavender before reaching white. A sharp mode should not do that. Unlit dots are now black, colour stops at the last lit dot, and edges are hard. Hi-res pixels and text keep the colours their dot patterns really produce; what they no longer do is smear them.
Backfilled: this release predates the repository's use of GitHub Releases. The tag points at the commit that set this version, and the notes are the entries that release added to Help > Release Notes in the app.