Last Updated: 5th March 2021
UltraHDMI
Quick Start Guide
(Firmware 1.08+)
Table of Contents
Overview
The UltraHDMI video processor is an internal add-on to all retail Nintendo 64 game consoles.
It’s very flexible – it can do as much processing as you want, or do the least amount possible. All of the options are accessible via the on-screen display (OSD) that can be brought up at any time.
Using the On-Screen Display
The OSD can be brought up on Controller 1
1. During a game, or
2. By itself if the N64 is powered on with no game inserted.
There are two possible combos so that you can press all the buttons no matter if your left hand is on the controller’s leftmost or center prong.
OSD HOTKEY | L/Z + Dpad right + C right + R trigger |
OSD MOVEMENT | Either Dpad, Analog stick, or C-buttons |
Menu items are selected by pressing A, or pressing rightwards on one of the 3 movement methods above.
Cancel a selection or move backwards in the menus by pressing B or leftwards.
Note on Controller Polling
While a game is running, the kit watches Controller 1. Whenever the game checks the gamepad, this is called “polling” – and the kit can only read the controller when the game decides to. There may be some times like loading screens where the OSD may not respond.
How the N64 Generates Video
PROGRESSIVE | Each field comprises a complete frame of video, displayed at 50 or 60hz. On CRTs, the scanlines are located in the same spot every time, causing dark bands to appear between them. Vertical resolution is 240 lines on NTSC, and 288 lines for PAL. |
INTERLACED | Each field makes up half of a complete frame of video, displayed at 25 or 30hz. The CRT slightly shifts up and down to scan each line, which increases perceived resolution at the cost of interlacing artifacts (called combing). Vertical resolution is 480 lines for NTSC, and 576 lines for PAL. |
A game may have an opening title screen in interlaced for a higher resolution picture, then switch to progressive for gameplay. Some of the visual effects, like scanlines, appear differently depending on what mode the N64 is currently producing. All visual effects incur zero additional latency penalty.
Main Menu Options
FILL MODE | Changes how the source material is fit onto the output area. | |
NORMAL | Fit while maintaining original aspect ratio. | |
STRETCH | Input material is stretched to cover output. | |
CINEMA | Input is enlarged so that the width matches the output, while cropping top and bottom. Used for watching letterboxed content. | |
PAL-FIX | Applies a 1.2x aspect ratio correction to remove black bars from some PAL titles. Only available in 50hz modes. | |
OVERSCAN | Enlarges the input content to better fit, if there is unrendered black space around the image. | |
GAMMA BOOST | Applies a non-linear gamma boost that approximates the response of a CRT television. | |
1.0 | Baseline, no change | |
1.3 | Moderate gamma boost, recommended for most users | |
1.45 | Extra brightness for dark games | |
Recommended to use 1.3 or 1.4 when SCANLINES: HYBRID is enabled. | ||
SCANLINES | Adds one of two types of scanlines. Best seen in progressive input modes. | |
HYBRID | Approximates non-linear CRT phosphor response and brightness bleed. Recommended. | |
SIMPLE | Applies simple darkening which matches most existing implementations of fake scanlines. Darkness is controlled by advanced setting SCAN SIMPLE DEPTH. | |
[PICTURE…] | Enters the Picture Settings menu. | |
[OPTIONS…] | Enters the general options menu. | |
[HDMI SETUP…] | Enters the HDMI output setup menu. | |
[ABOUT…] | Shows About, Thanks, and Self-Test. | |
[LOAD PRESET…] | Replaces all possible settings with ones from a slot previously saved to. | |
[SAVE PRESET…] | Save a copy of all the current settings to a slot for a later recall. |
Picture Settings
Feature Availability
Many options are only available when the HDMI output resolution is 720p or greater.
Most features are not available when running at 480p/576p.
SCAN SERRATION | Adds an adjustable inter-line distortion to scanlines. | |
SCAN SIMPLE DEPTH | Adjust the percent darkness between scanlines when scanlines is set to SIMPLE | |
SCAN INTERLACED | Normally, scanlines are disabled in the interlaced mode. This option adds scanlines that alternate every field like a real TV. Some displays may have trouble, especially ones with motion compensation. | |
TUBE CRT HV BLOOM | Simulates screen bloom exhibited by cheap CRT TVs. Inexpensive televisions typically had poor high voltage regulation, which means bright scenes cause the screen to “glow” subtly. | |
SHARP PIXELS | Disables upscaling filtering. Only applicable to 720p/1080p. | |
INTEGER | Displays the input centered in the screen at exactly 1x (720p) or 2x (1080p) with pixel doubling. | |
INTEGER+ | Multiplies each pixel by 1.5x (720p) or 2.5x (1080p). When game uses 320×240 progressive mode, each pixel will be exactly 3×3 or 5×5 pixels. Produces visual artifacts on anything higher-res. | |
FRACTION | Allows the input to be scaled while filtering is still turned off. Produces visual artifacts, not recommended. | |
VI DE-BLUR | Attempts to remove horizontal filtering added by the final video processing stage in the N64. The vast majority of games render in 320×240 and can benefit from this functionality. | |
OFF | Video data is taken as-is from N64. | |
AUTO | Uses heuristics (educated guessing) to determine if the game uses a 320px wide framebuffer, and if so, reverses it. Only in progressive. | |
ALWAYS | Ignores heuristics and always reverses the filtering, again in progressive modes. | |
ALL+INT. | Always reverses filtering in all modes, even interlaced. | |
FAST INTERLACED | Interlaced modes work by sending every other video line per field, taking up 2 fields to make a full frame. Normally de-interlacing works over a series of framebuffers, which eliminates any possible tearing artifacts, but introduces an additional 1 frame lag and stronger combing artifacts. When enabled, this option runs all interlaced content into a single working buffer, minimizing latency and visual artifacts. |
General Options
HDMI Output Setup
SHOW VIDEO MODES | Shows the N64’s current video mode for a few seconds in the left corner whenever it changes modes, or loses sync. Can be useful for debugging. | |
DISABLE HOTKEY | Prevents loading the OSD during gameplay for the rest of the power-on session, if the key combo is interfering with the game. If you SAVE SETTINGS after enabling this, the OSD will be locked out all the time. To get the OSD back, start the N64 with no game inserted, and use the hotkey to bring up the menu and disable the setting (remember to save!) | |
IN-GAME RESET | Requires both firmware 1.06+ and an extra wire to be soldered in the console. When enabled, the key combo Z+R+A+B+Start causes a soft reset, similar to pressing the console’s own reset button. | |
PRESET MNEMONIC | Changes the list of presets in [SAVE/LOAD] to some more memorable names. Has no effect on functionality. All presets are initially blank and must be set by user. Available options: | |
GENERIC | Simplest -PRESET SLOT 1, 2, etc. | |
SCENARIO | Some possible use cases where some types of games may benefit from particular settings more than others. | |
CITIES | List of well-known cities | |
DOGS | List of popular dog breeds |
While the previous settings control the intermediate processing of the N64’s video signal, the following options directly control the HDMI output used.
RESOLUTION | 480p | VESA 640×480 mode. Compatible with all monitors. Perfect fit for NTSC video signals. Only available at 60hz. |
576p | DTV 720×576 video mode for PAL video signals. Only works at 50hz. Will have some horizontal fuzziness. | |
720p | Standard baseline HDMI resolution. All visual effects enabled. | |
1080p | Enhnanced HDMI resolution. All visual effects enabled. Recommended. | |
1200p | VESA 1600×1200 mode. Compatible with PC monitors and some displays. Do not use on 1080p displays! | |
REFRESH RATE | 50 Hz | Best suited fr if you play primarily PAL games (Europe, Australia) |
60 Hz | Best for NTSC games (North America, Brazil, Japan) | |
RGB RANGE | FULL | Recommended whenever possible. Confirm your TV options. |
LIMITED | Some displays may not be able to automatically switch black levels, or don’t even have the option to manually change. Generally, if you see crushed blacks and clamped whites, you may want to run limited range RGB. Scanlines may appear slightly different. | |
DIRECT MODE | This option allows you to bypass almost all internal processing. Normally, UltraHDMI runs in buffered mode where all video data runs through a framebuffer with up to 1 frame (16ms) of latency, providing a consistent and stable video signal. Direct mode disables vertical sync of the framebuffer, giving instant access to the frame being displayed at the price of tearing artifacts. In 1.08+, the SYNC option was removed to free up logic space. | |
NO | Buffered (normal mode). Recommended for most users. | |
YES | Shows the received video frames imediately with no v-sync. Horizontal tearing will occur. Can be used with all modes and options. |