Skip to content

Analog and CRT output

Changed in v0.4.0

The Analog Out setting used up to v0.3.0 has been replaced by the single Video Output option, and updating resets your saved settings once.

The core drives a real CRT natively: with Video Output = Interlaced (or Auto with the ini below), the analog pins carry a native 15 kHz 480i/576i raster of the disc's authored fields — the same presentation a set-top player feeds a TV.

Rebuilt in v0.4.0

The analog raster is now the core's main interlaced raster driven straight to the pins, like every other MiSTer 480i core — the separate re-timed second raster used by v0.3.0 and the PR #37 prerelease is gone.

The measurable result is that the signal is now what it claims to be: MiSTer reports a steady 720x480i @ 59.94 Hz (on the idle logo too), where before it could read 1441x478i at a rate wandering between 59.8 and 60.1 Hz. The raster carries a true half-line, so vsync falls exactly 262.5 lines apart on every field. Interlaced at boot also used to come up as 719x…i @ 31.48 kHz with no picture at all on a CRT; that is fixed.

Those numbers are what the reports of a picture that shakes or tears about once a second were describing. Reports of sawtooth edges turned out to be a second, separate thing — the shape of the composite sync itself — and there is now a setting for it: see Analog CSync below. The composite and S-video paths carry the same sync as RGB and component.

Turning it on

There is nothing to set in the OSD. It engages from MiSTer.ini exactly like any other core:

vga_scaler=0        ; (the default) native video on the analog pins
composite_sync=1    ; or ypbpr=1, or vga_sog=1 — match your cable

Composite or S-video additionally needs the framework's Y/C encoder switched on — without it the pins carry raw RGB and the picture arrives black & white:

vga_mode=svideo     ; or vga_mode=cvbs for composite

The chroma standard (PAL/NTSC subcarrier) follows the disc automatically — the framework picks it from the video rate.

That is the whole setup — Video Output = Auto reads those bits and lands on Interlaced. Set the mode explicitly only when the ini bits cannot describe your rig (a 15 kHz RGBHV monitor: Interlaced) or when your analog display wants a progressive signal (480p/576p component or VGA: Progressive). The mode table and the full description live on the Video Output page.

In Progressive mode the analog pins carry the plain progressive raster through the stock path — a 31 kHz signal a 15 kHz CRT cannot sync — and the analog-only extras (line-21 captions, sub-720 fill) are off. Analog Aspect works there only when you set it to Letterbox or Crop — see On Progressive.

Changed in v0.4.0

On a rig configured for analog in MiSTer.ini (vga_scaler=0 plus a sync mode) but set to Progressive, an Auto Film 24p verdict no longer engages, so a film disc cannot switch the pins to a 23.976/25 Hz raster the display drops when the feature starts. Setting Film 24p Out = On overrides that — it is an explicit choice, and it is how you watch 24p over HDMI with the CRT switched off while leaving the analog lines in your ini. HDMI-only setups (vga_scaler=1, or no analog sync mode set) are unaffected on any setting. On v0.3.0, set Film 24p Out = Off on such a rig to avoid the signal loss.

HDMI shows 480i while a CRT is active

Interlaced mode puts the whole core in field mode, so HDMI drops to 480i via the framework scaler for the session. The earlier arrangement that kept HDMI progressive alongside the CRT was removed with its structurally unstable field-pairing (the "wobbly interlace" reports) — pick the output that matters and set Video Output for it.

Motion looks right on video-sourced discs by construction — every displayed refresh is one genuine authored field — and film's 3:2 field cadence on a CRT is exactly what an NTSC player output. On some televisions a seek or aspect change can come back with the fields the wrong way round — see field alignment.

The raster carries a true 2:1 interlace half-line, the same way the N64 and PSX cores do it, so every analog connection — composite, S-video, RGB SCART, YPbPr, RGBHV — gets correctly interleaved fields, and the OSD reports a steady 720x480i @ 59.94 Hz. If a set or scaler shows a per-field wobble or reports the line count toggling, that is worth reporting with the connection type — see troubleshooting.

Analog Aspect

An anamorphic 16:9 DVD is stored as 720×480 with the picture horizontally squeezed into a 4:3 raster. A widescreen TV unsqueezes it; a 4:3 CRT cannot, so everything looks tall and thin. Analog Aspect picks the correction.

Mode What it does Result
Auto Letterbox for 16:9 content, Fit for 4:3 Correct for most people
Fit No correction at all 4:3 content correct; 16:9 shows tall and thin
Letterbox Scales the picture down vertically by ¾, centred, with black bars Correct geometry, full width, bars top and bottom
Crop Shows the centre ¾ of the width, stretched back to full width Correct geometry, full vertical resolution, sides cut off, no bars

Both corrections use the same ×¾ factor — a 16:9 image inside a 4:3 frame has scale factor (4∕3)∕(16∕9) = ¾. Letterbox applies it vertically, costing resolution but keeping the whole frame. Crop applies it horizontally, keeping every one of the 480 source lines but losing about ⅛ of the picture from each side. (Crop works in 16-pixel blocks, so it keeps the centre 528 pixels rather than an exact 540, and the picture comes out about 2 % wider than true.) This is the pan-and-scan trade-off, and which you prefer is a matter of taste.

Analog Aspect also tells the disc what kind of TV it is playing on. Some discs carry two copies of an intro or a menu page, one 4:3 and one 16:9, and pick between them from that answer:

  • Auto, Letterbox: a 4:3 TV that letterboxes.
  • Crop: a 4:3 TV that shows pan-and-scan.
  • Fit: a widescreen TV.

On Progressive, Auto answers "a widescreen TV" as well, since it applies no correction there.

The disc reads it as it reaches each choice, so changing the setting mid-disc affects only the choices that come after.

Letterbox uses a true two-tap vertical blend rather than dropping lines, so the scaled image is smooth rather than aliased.

Letterbox also lifts the picture's bottom edge up the screen, away from where a CRT's overscan would hide it. On the few discs that carry a half-line at the picture edge that can make it visible. It is on the disc, and a set-top player letterboxing the same disc puts it in the same place.

For movies, Auto never selects Crop — it chooses between Letterbox and Fit, and Crop is a deliberate manual choice. Disc menus can override that choice, as described below.

Analog Aspect on Progressive

With Video Output on Progressive, only an explicit Letterbox or Crop changes the picture. That is for a 4:3 display fed the progressive signal: a VGA CRT, a 4:3 set on 480p component, or a 4:3 HDMI display.

Setting On Progressive
Auto No correction. The MiSTer scaler handles the aspect, exactly as on HDMI.
Fit No correction (the same as Auto here).
Letterbox The picture is letterboxed in the core, with black bars, as on a CRT.
Crop The picture is cropped to fill a 4:3 screen, as on a CRT.
  • On a widescreen display, leave it on Auto. Letterbox and Crop make the picture 4:3, so a 16:9 TV shows Letterbox with bars on all four sides, and Crop with the sides cut off and bars left and right.
  • Changing between Auto/Fit and Letterbox/Crop while a disc plays makes the display re-sync once, like changing the Aspect Ratio setting.
  • The Aspect button still cycles Aspect Ratio on Progressive; set Letterbox or Crop in the OSD.
  • With Deinterlace set to Bob or Blend, the deinterlaced picture is what gets letterboxed.
  • With an external scaler on the analog output (a RetroTINK, an OSSC), the scaler decides the shape of what it outputs, because an analog signal carries no aspect information. Under Auto or Fit the core sends the unmodified anamorphic picture; set the scaler's own aspect to 16:9 for a widescreen picture. Aspect Ratio doesn't reach this path: it only affects the MiSTer's own HDMI output.

Widescreen disc menus

A 16:9 disc menu says which 4:3 treatment it allows, and the core follows it the way a set-top player connected to a 4:3 TV does:

  • Most widescreen menus allow pan-and-scan only. They are drawn so that everything that matters, including every button, sits inside the centre 4:3 of the picture. With Analog Aspect on Letterbox or Auto, these menus are shown cropped to fill the screen instead of being shrunk between black bars.
  • Some menus allow letterbox only, usually because their buttons reach the edges of the frame. With Analog Aspect on Crop, these menus are shown letterboxed so no button is cut off.
  • Menus that allow both follow your setting, as do Fit and all movie playback. When you leave the menu, the picture goes back to your setting.

Menu highlights follow the cropped or letterboxed picture, so they stay on their buttons. This happens wherever the correction is in effect: on the 15 kHz analog output (the interlaced raster) under any setting, and on Progressive when Analog Aspect is Letterbox or Crop. On Progressive under Auto or Fit, a widescreen menu is shown the same way as before.

Changed in v0.4.0

Subtitles are no longer scaled by Letterbox or Crop. Dialogue subtitles now draw at their authored position and full resolution, with clean edges — like a set-top player, they may reach into the black bars rather than being squeezed with the picture. (Previously they were repositioned by a nearest-line map, which gave diagonal subtitle edges a sawtooth look.) Menu button art and highlights still track the scaled picture so highlights land on their buttons, and sub-720 content (MPEG-1/SIF, SVCD) keeps its scaled subtitles — those are authored at the smaller picture size.

Sub-720 content on a CRT

MPEG-1 SIF (352×240 / 352×288), SVCD (480 wide) and the sub-D1 DVD sizes (704, 544) are narrower than the 720-pixel raster, and the core fills the screen in fabric on the analog output — a 352→720 horizontal stretch for SIF, and the same horizontal fill for the other sub-720 widths. HDMI is unaffected and keeps the framework scaler's upscale.

Native 240p for VCDs and MPEG-1

SIF content is only 240 lines tall (288 on PAL), so on a normal interlaced raster it has to be stretched to twice its height — and that doubling is a plain line repeat, which makes the picture look blocky. The core avoids it: when you play SIF-height content with the 15 kHz analog raster running, it switches to a native 240p raster (288p on PAL) and sends the picture out at its own height, one line for one line.

That is the same double-strike 240p a games console puts out, so a CRT takes it happily, and it is a real improvement on both outputs at once — your TV gets a genuinely progressive picture instead of fake interlace, and over HDMI the framework scaler is handed the original frame to scale rather than an already-doubled one.

It happens on its own, with nothing to set. There is no OSD option, and a normal DVD is untouched — only content 288 lines or shorter takes the 240p raster.

Analog Aspect has no effect on VCD and MPEG-1 SIF content, on the 240p raster or on Progressive. It is 4:3, so there is nothing to letterbox or crop; the setting still applies to everything else.

What you may notice

Switching in and out of the mode is a brief interruption, like a chapter skip, because the raster itself changes. In practice a disc settles on one raster as it loads and stays there. The status line and the seek bar sit lower on the screen and look proportionally larger, because the picture is half as tall while the text stays the same size.

New in v0.6.0

Earlier versions line-doubled SIF content into 480i instead. If you are on v0.5.0 or older, that is what you have, and it is not a fault.

Analog CSync — if your set jitters or shows sawtooth edges

New in v0.5.0

This setting is not in v0.4.0 or earlier.

Debug page → Analog CSync → SMPTE (default) / 2H.

Composite sync is the single signal that tells a television where every line and every field begins. A broadcast signal surrounds its vertical sync with equalizing pulses — short pulses at twice line rate, before and after — and splits the vertical sync itself into six serrations. They exist for one job: to make the two fields of an interlaced picture look identical to the circuit inside your television that decides where a field starts.

Up to and including v0.4.0 this core emitted neither. The consequence is measurable: the two fields presented first sync pulses of about 50 µs and 18 µs, because their vertical syncs begin half a line apart while the pulse pattern around them does not move with them. 18 µs is right at the threshold some televisions use to recognise the pulse at all — so a set could read the two fields differently, and lay the second field's lines on top of the first field's instead of between them.

That is what a sawtooth or ragged look on vertical edges is, and why it also costs half the vertical detail the picture should have. It is display-dependent: a set with a tolerant sync separator never notices, which is why the same build can look perfect on one television and wrong on another.

SMPTE emits the full standard block (SMPTE 170M on NTSC, ITU-R BT.470 on PAL) and is the default. 2H adds the serrations but not the equalizing pulses — closer to correct than what earlier versions emitted, but still measurably behind SMPTE, and it is here only until we know whether any real display prefers it.

You should not need to change this

SMPTE is what a real player, a broadcast signal and a DVD deck all put out. 2H is there because televisions of this age vary, and because we would rather you could get a picture back from the OSD than have to wait for a new build. If your set is happier on 2H, please say so — that is exactly the report we are looking for, and it decides whether the setting stays at all.

It has no effect if vga_scaler=1

With the scaler on the analog pins, or a framebuffer active, sync comes from a different place entirely and this setting does nothing. It applies to the direct analog path — vga_scaler=0 — which is the CRT case.

HDMI is completely unaffected by this setting, on every option. Composite and S-video use the same sync as RGB/component, so they change with it.

Analog Dither — if dark scenes show bands

Main page → Analog Dither → Off (default) / On.

The DE10-Nano's standard analog I/O board has a 6-bit video DAC: it shows 64 levels per colour channel, where the decoded picture has 256. Bright, detailed scenes hide this. Smooth dark gradients do not: a night sky, a fade to black or a dim wall can break into visible bands on a CRT, each one four levels wide.

On adds a very fine ordered dither, a fixed pattern of tiny offsets, just before the picture reaches the DAC. The television blurs it into the in-between levels the DAC cannot output, so a gradient comes out smooth. The two fields of an interlaced picture get opposite patterns. On a progressive picture the pattern flips every frame.

  • Leave it Off on a board with a full 8-bit (24-bit colour) analog DAC, such as a SuperStation. It has no bands to fix.
  • On a 31 kHz VGA monitor (Video Output = Progressive) the pattern is one pixel fine and may be faintly visible up close. Turn it off if you prefer that.
  • It applies to RGB, component, S-video and composite alike. It never touches blanking, sync, the colour burst or the line-21 closed captions.

HDMI is completely unaffected by this setting. Like Analog CSync, it applies to the direct analog path (vga_scaler=0). With vga_scaler=1 or direct video the setting does nothing.

Known limitations

  • While Video Output = Interlaced, Film 24p output is unavailable — a 23.976 Hz raster cannot carry fields. Film on the CRT plays with its normal 3:2 field cadence instead, which is what an NTSC player always did.