Version 4 · 28 September 2026
The source and white balance
The fourth version is about the light that reaches the film: the rack's new first card, SOURCE, decides how much of it the film gets and what colour it is. A night frame no longer needs pulling back out of overexposure, RAW shadows develop in full, and white balance is now the light of the scene. And on the same day Zerno came out for Windows — the same version 4, one licence for both computers.
3 new · 9 fixed · 6 changed
The build is not yet signed by Apple: macOS will stop it the first time you open it. It takes two minutes — how to open it →
Need to roll back — here is the version 4 image. It is an old build: everything fixed later is still broken in it.
01 · New
- Source is the first card of the rack. The old lines about the file (resolution, master, what it was shot with) are now the header of the SOURCE card, and below it is only the light that reached the film. Source exposure for RAW: “As shot” (a dark frame stays dark — the photographer’s exposure), “Auto” (the middle of the frame goes to the middle of the film, as before), “Protect highlights” (the brightest parts no lighter than the paper white — it rescues night shots and street lights) and “Protect shadows” (shadows no darker than zone III). White balance: “Film” — the scene light keeps its colour, as the emulsion sees it; “As shot” — the camera’s balance; and a new “Custom” position for tungsten-balanced films (CineStill 800T, Vision3 500T): no daylight blue, the colour is set by Temperature and Tint alone. Knobs a file does not need are not there: a JPEG has no exposure, a daylight film has no “Custom”.
- Open Recent. In the File menu, right after Open Project…, a submenu with the ten most recent projects, newest first. Projects with the same name are labelled with their folder, files that are not in place right now are not shown (plug the disk back in and the item returns), and Clear Menu is at the bottom.
- The Three matrices preset. A print from a slide as it was made for exhibitions: Kodachrome 64 and dye transfer — three matrices, one per dye. The softest of the prints from a slide: contrast close to the slide itself, dense reds and blues, the white a warm paper white. Last in the Slide group.
02 · Fixed
- A white balance change now reaches the export. With films balanced for tungsten light (CineStill 800T, Vision3 500T) and a RAW frame, the file came out noticeably bluer than the picture on screen: the 85B conversion filter or a shift of Temperature seemed not to work. The export developed the RAW for the film's light, while the preview developed it for daylight, and the blue was laid on twice. RAW is now developed the same way everywhere, and the file gets exactly what is on screen. JPEG and the “As shot” mode were not affected — hence “not always”.
- RAW shadows are no longer clipped in development. The camera decoder subtracted a small amount from the shadows by default — barely visible on an ordinary frame, but on a dark one it zeroed a third of the frame or more: the shadows fell into dead black, and auto exposure on a night shot hit its limit. Shadows now develop in full: the darkest parts of daylight frames are 0.2–0.3 stops lighter, and a night frame no longer hits the limit of auto exposure — the middle falls into place and the lights do not burn out. Frames in your projects redevelop by themselves when opened.
- A frame's original keeps its orientation and crop. A frame without settings was neither rotated nor cropped in PRINT, in the grid or in the exported file; the same with the Originals switch and with ⌥. Rotation, mirroring and crop belong to the photograph, and now they apply on every path; ⌥ shows the whole original, but in the frame's orientation.
- The trial without a connection says so. Every launch in the trial asks the server for permission, and when no answer came, the licence window showed “Trial until …” with a buy button — it looked as if the trial had ended. Now it says “The trial needs the internet” with a “Check again” button: the connection is back — press it, and the program opens without a restart.
- Rotating no longer waits for the master. If a full-size frame was being computed at that moment — especially on a press paper — the new frame waited for it to finish: three seconds on offset at 60 MP. Now a master in progress is dropped as soon as the frame is asked for again: half a second.
- The presets panel no longer draws a row of block chips under the built-in presets. Once the Source block appeared they were counted as partial, and in the English panel the chips broke apart by syllables. The chips stay only on truly partial presets, and the word in a chip no longer wraps.
- Presets in Select now apply to the selected frames, or to the frame under the cursor if nothing is selected, as one undo step. Before, clicking a preset in the grid did nothing; it only worked in Print.
- Quitting with a sheet open now works. While About, the licence window or What's New was open, ⌘Q and Quit Zerno did nothing; now the sheet closes and the program quits as usual, saving the project.
- An interrupted computation on the graphics card. If macOS interrupted a frame's computation on the graphics card — this can happen on weak graphics when a frame holds it too long — Zerno showed the unfinished frame, and export could write it to a file. Now such a computation is redone automatically; if the second attempt fails too, the frame is replaced by an honest message with the reason and a Try again button, and export skips the frame and names it in its report. Work on the graphics card now goes in short portions so that it does not come to an interruption.
03 · Changed
- The neighbour arrows are always light. The arrows at the sides of the frame changed colour and sometimes merged into their own backing. Now the sign is always light on the same dark backing, and the first and last frames simply have no extra arrow.
- Temperature and Tint are in SOURCE, before the lens. They used to sit in FILTER and tint the light after the glass, like a gel on the thread. Now they are the colour of the scene light itself, and lens veil, halos and diffusion mix light that is already tinted — as in life. The difference shows only on strong halos. Presets with a white balance open as before: it has moved to the new block by itself.
- Auto exposure reads a reduced copy of the frame. The program now looks for the middle of the frame on a 1024-point copy — one rule for the preview, the export and the command line, and the same at any size of the original. On ordinary frames the shift is hundredths of a stop.
- An untouched frame and the first touch start from the Neutral film. Before, the rack of an unprocessed frame named Portra 400, which was not on the frame, and the first knob you touched silently gave its colour. Now “Neutral”, where printing starts, is the Neutral film, the Neutral lens and the Neutral scan: the first touch barely changes the picture, and the film is yours to choose.
- The grid opens at once, and the preview cache is half the size. Finished tiles are kept on disk and found by a “view key” — the file's fingerprint plus everything done to the frame; a project opens with them in a second or two without loading the sources into memory, and a project of hundreds of frames no longer takes ten gigabytes of memory. Source previews are stored two to four times more compactly. In Print the tile is updated from the same print that is on screen. After the update, previews and tiles are recomputed once — the first opening of each project will take longer than usual.
- Slide presets are lighter. Goldin, Eggleston and Long evening came out very dark and clipped in the shadows and highlights: the first two printed on reversal papers, and an already dense slide darkened a second time. Now all three are the slides themselves on a film scanner, and the tone is set with the scanner's contrast, not its exposure: the white stays white. For a print from a slide, use the new Three matrices preset or a paper in the PRINTING block.
Updates
The program checks for a new version once a day and offers it by itself. How to update by hand and why macOS asks for permission for every build — “How updates work”.