Hardware FixRecommendedDevice not working? Your driver may be the problemCheck updates for common hardware issues.Fix DriversHalloween DealsAmazon USHalloween week deals: useful picks before month-endAmazon US: current deals, useful picks and tech finds.Check DealsPC HealthRecommendedCrashes, freezes, slowdowns? Check your PC nowSpot repairable issues before they interrupt work.Check PC×
FREEDOM251

Freedom251 › Blog › BizHawk

Best Emulator Settings for Reproducing Ocarina of Time Glitches Reliably

By Freedom251 Team · · 11 min read

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

For a practical, repeatable baseline, use an Ocarina of Time 1.0 NTSC-US ROM in Project64 3.0.0 or newer with GlideN64, a calibrated controller, console-baseline timing, and no texture pack. Set Project64’s VI refresh to 1490 when you need settings comparable with Ocarina of Time Randomizer (OoTR) races. Choose BizHawk instead when RAM inspection, Lua automation, rerecording, or accuracy-oriented debugging matters more than low resource use. In every case, record the ROM revision, emulator build, graphics core or plug-in, timing values, input device, analog range, and expansion-memory state. No published source establishes one configuration that reproduces every glitch, so surprising results should be checked on original hardware or a second accuracy-focused emulator.

What makes an Ocarina of Time glitch reproducible?

Most glitch attempts depend on a narrow combination of game revision, frame or VI timing, controller state, memory configuration, and the exact sequence of inputs. Two emulators can display the same scene while differing in how they schedule frames, handle analog values, flush save data, or expose expansion memory. A setup that works once is therefore not automatically a reliable setup.

As an Amazon Associate I earn from qualifying purchases.

The OoTR documentation provides supported configurations and race rules, but not a complete glitch-by-glitch compatibility matrix. Treat each experiment as a controlled reproduction: start from a known save, change one variable at a time, and preserve a record that another person can rebuild.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Recommended baselines at a glance

Emulator Best use Important settings or limits Trade-off
Project64 3.0.0 or newer Lightweight Windows setup and documented OoTR racing GlideN64; VI refresh 1490 for race-comparable OoTR settings; visible speed display; calibrated analog input; no texture packs Easiest baseline, but fewer integrated accuracy and debugging tools than BizHawk
BizHawk Accuracy-oriented experiments, RAM inspection, Lua, rerecording and multiworld workflows Load the ROM first, enable N64 > Use Expansion Slot, then Emulation > Reboot Core; configure cautious SaveRAM handling More resource-intensive and more complex to configure
RetroArch Cross-platform play and lower resource demand Use a supported N64 core, show original framerate, and leave VI Refresh (Overclock) at Auto OoTR documentation describes controller setup as frustrating
Ares Accuracy-focused desktop emulation Follow its current core defaults and document the build Not permitted for official OoTR races
Dolphin Wii Virtual Console behavior and straightforward GameCube-controller support Do not use overclocking for race-comparable work Some areas have extra lag compared with the original behavior

Prepare the ROM and test conditions

Use the correct game revision

The OoT Randomizer project is based on The Legend of Zelda: Ocarina of Time version 1.0 NTSC-US. Its documented randomizer workflow requires that revision; regional or later revisions can have different code and bug behavior. Verify the revision and, where possible, record the ROM hash in your experiment notes.

#1 Best Overall
miadore 2 Pack USB Wired N64 Controller, Classic N64 PC Gamepad Joystick Controller for Windows PC MAC Linux Raspberry Pi 3 (Black/Gray)
  • Use the generic standard USB port, if your program or application accepts USB controller input, it can be used natively without drivers or patches, JUST PLUG AND PLAY!
  • Supported Operating system: Windows 98, ME, Vista, 2000, 2003, XP, 7, 8, 8.1, 10; Linux UBUNTU, Linux Mint, Android Linux (via an USB OTG cable); Mac OS X and beyond; Retrogaming operating systems: RetroPie, Recalbox, Happi Game Center, Lakka, ChameleonPi, Piplay.
  • Supported Device (With USB storage device): PC, Notebook Computer, Laptop Computer; Android Smartphone: connect via an USB OTG cable; Raspberry Pi (RPI, Raspberry pie): Raspberry Pi 1 Model B, Model A, Raspberry Pi 1 Model B+, Raspberry Pi Zero, Raspberry Pi 2, Raspberry Pi 3 Model B, Raspberry Pi 3, Retro Pie. --- Note: NOT SUPPORT Android TV BOX.
  • Supported Game Emulators: Current: Project64, 1964, MAME (MESS), Mupen64Plus, Sixtyforce, CEN64; Historical: Project Unreality, Corn, UltraHLE, Nemu64.
  • Super sensitive buttons for precision control. Third party controller, not original Nintendo 64 controller. But it works phenomenal with the Raspberry Pi game emulation and so on. Cord is approx 5.9 ft. Long.

For emulator play, the project strongly encourages compressing patched ROMs. Uncompressed patched ROMs cannot be injected into Virtual Console and are reported to suffer random crashing on emulators. Keep an untouched source ROM and a separate copy of each patched or randomized image so that a crash or failed test does not overwrite your reference file.

Record a reproducibility sheet

Before attempting a trick, write down:

  • ROM revision, region and hash, plus whether it is a clean, patched or randomized image.
  • Emulator name and exact version, including the N64 core or graphics plug-in.
  • VI refresh, framerate, speed-limit and any overclock values.
  • Input device, controller profile, deadzone and analog range.
  • Whether expansion memory is enabled.
  • Save location, starting scene, hearts or inventory if they affect the setup, and the exact input sequence.
  • Whether texture packs, widescreen changes, cheats, frame advance or other enhancements are active.

This information matters more than a generic statement such as “it works on an emulator.” It lets another tester distinguish a game-revision difference from an input or timing difference.

Project64: the easiest documented Windows baseline

Install a supported version

Use Project64 3.0.0 or newer. The OoTR documentation calls Project64 v3.0+ the least resource-intensive emulator and the easiest to set up, and does not support earlier versions for official racing. Project64 3.0.0 was released on May 26, 2021; still record the exact build you install because later builds and plug-in revisions can change behavior.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Select the graphics plug-in

  1. Open Project64 and choose the relevant game in the library.
  2. Open the video or graphics plug-in settings.
  3. Select GlideN64.
  4. Leave enhancements that alter timing or visibility disabled while establishing a baseline.

GlideN64 is the recommended plug-in in the OoTR settings documentation. If the computer cannot support it, use the Project64 video plug-in as a fallback. Do not use Jabo’s Direct3D8 plug-in for this testing purpose; it is not the recommended configuration for the documented OoTR workflow.

Calibrate the controller before recording an attempt

Analog input is part of the experiment, not merely a comfort setting. Calibrate the physical stick in the operating system or controller utility, then verify the neutral position and the extreme directions in Project64. Check that a diagonal, a small partial tilt and a full tilt are registered consistently.

Keyboard users should set Analog Stick > Range to 100% and test diagonal input. A keyboard maps digital keys to an emulated analog value; an incorrect range can make a movement too short or too wide and turn a repeatable setup into a luck-based one. If a trick requires a partial angle, use a controller profile capable of producing that angle rather than assuming a keyboard key is equivalent.

Rank #2
Classic N64 Controller, Wired USB PC Gamepad for Windows PC, macOS (Gray)
  • Plug & Play: Standard USB controller; no drivers needed for compatible devices
  • Compatible with Windows PC, macOS, Linux and Raspberry Pi
  • Iconic original M-shaped configuration, featuring 10 action buttons, a precision analog Control Stick, and an 8-way D-pad.
  • The 3D analog stick provides nuanced control for precise movements and enhanced gameplay comfort.
  • Features a 6-foot (1.8 m) cable for comfortable gameplay.

Set race-comparable timing

For work intended to match official OoTR race conditions, set Project64’s VI refresh to 1490. Apply the value in both the global Defaults and the OoT Randomizer game configuration so that a per-game profile does not silently override the default.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  1. Open Project64’s emulator or video settings and locate the VI refresh control.
  2. Enter 1490 in the default profile.
  3. Open the OoT Randomizer game-specific configuration and enter 1490 there as well.
  4. Enable the speed display so VI/s and DL/s are visible during a test.
  5. Keep the FPS limit at the documented original behavior; do not use an overclock to make the game run faster.

The speed display is a diagnostic aid. If VI/s or DL/s fluctuate during a timing-sensitive attempt, note the fluctuation instead of treating the run as equivalent to a stable run. The 1490 value is a race-comparability requirement, not a claim that every glitch needs that exact value outside racing.

Disable visual modifications for controlled tests

Turn off texture packs when the goal is to reproduce an official race setup. Texture packs are prohibited in OoTR races and can change visual cues, memory use or rendering load even when the underlying game code is unchanged. Establish the unmodified baseline first; only then test a visual enhancement as a separately labeled experiment.

BizHawk: the stronger laboratory-style choice

Enable the N64 expansion slot correctly

BizHawk’s N64 menu appears only after a ROM is open. The required sequence is:

  1. Load the Ocarina of Time ROM.
  2. Open N64 > Use Expansion Slot and enable it for the relevant ROM.
  3. Choose Emulation > Reboot Core.
  4. Confirm that the game has restarted with the expansion-memory setting active before beginning the test.

Changing the option without rebooting the core leaves the running session in its previous state. Record whether the expansion slot was enabled because memory configuration can affect a comparison between emulators.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Why choose BizHawk?

BizHawk is designed around accuracy-oriented emulation and includes debugging, rerecording and automation features such as RAM inspection and Lua support. Those tools make it useful for finding the exact state in which a trick succeeds, measuring an input sequence, or building a repeatable test harness. The same features and broader framework can make it more resource-intensive than a lightweight standalone emulator, so close unnecessary applications and note any performance-related settings.

Rank #3
miadore 2 Pack Classic N64 Controller, N64 Wired USB PC Game pad Joystick, N64 Bit USB Wired Game Stick Joy pad Controller for Windows PC MAC Linux Raspberry Pi 3 Sega Genesis (Clear Green/Black)
  • Use the generic standard USB port, if your program or application accepts USB controller input, it can be used natively without drivers or patches, JUST PLUG AND PLAY!
  • Supported Operating system: Windows 98, ME, Vista, 2000, 2003, XP, 7, 8, 8.1, 10; Linux UBUNTU, Linux Mint, Android Linux (via an USB OTG cable); Mac OS X and beyond; Retrogaming operating systems: RetroPie, Recalbox, Happi Game Center, Lakka, ChameleonPi, Piplay.
  • Supported Device (With USB storage device): PC, Notebook Computer, Laptop Computer; Android Smartphone: connect via an USB OTG cable; Raspberry Pi (RPI, Raspberry pie): Raspberry Pi 1 Model B, Model A, Raspberry Pi 1 Model B+, Raspberry Pi Zero, Raspberry Pi 2, Raspberry Pi 3 Model B, Raspberry Pi 3, Retro Pie. --- Note: NOT SUPPORT Android TV BOX.
  • Supported Game Emulators: Current: Project64, 1964, MAME (MESS), Mupen64Plus, Sixtyforce, CEN64; Historical: Project Unreality, Corn, UltraHLE, Nemu64.
  • Super sensitive buttons for precision control. Third party controller, not original Nintendo 64 controller. But it works phenomenal with the Raspberry Pi game emulation and so on. Cord is approx 5.9 ft. Long.

Protect SaveRAM

Use automatic SaveRAM flushing cautiously. The OoT guide gives approximately 30–45 seconds as a reasonable example interval, while warning that very frequent flushing can increase lag and that a crash can create save-data problems. Upstream BizHawk guidance recommends manually flushing SaveRAM after in-game saves, keeping backups, and not relying on automatic flushing as the only protection because it can be unreliable and may corrupt a previous save.

  • Save in the game normally.
  • Manually flush SaveRAM when the emulator provides that command.
  • Copy or back up the resulting save before a long batch of experiments.
  • Use a separate save directory or named backup for each test branch.

Remove unnecessary hotkeys. During a frame-sensitive attempt, a controller press should not also invoke a rewind, reset, save-state, fast-forward or emulator menu command. Keep only the bindings required for the experiment and label any save states with their scene and revision.

RetroArch, Ares and Dolphin: when their trade-offs fit

RetroArch

RetroArch is useful when you need one interface across several operating systems or want a lower-resource alternative to BizHawk. The OoTR setup documentation describes controller configuration as frustrating, so plan time to verify every button, analog axis and deadzone rather than importing an untested profile.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

For supported race cores, show the original framerate and leave VI Refresh (Overclock) at Auto. Do not increase the value to make movement or menus faster when comparing with race footage. Record the exact core name and version because “RetroArch” alone does not identify the N64 emulation implementation.

Ares

Ares prioritizes accurate console emulation and runs on several desktop platforms. It can be a useful second opinion when a result in Project64 looks suspicious, but the OoTR setup guide currently says Ares is not allowed for official races. Mark Ares results as non-race experiments and do not use them to claim race legality.

Dolphin

Dolphin runs the Wii Virtual Console version and offers convenient GameCube-controller support. It can also provide faster item-menu pauses, but the OoTR project notes extra lag in some areas. Overclocking to reduce that lag is not permitted for racing. A Dolphin result should therefore be labeled as Wii Virtual Console behavior, not assumed to be identical to an original N64 or Project64 result.

Rank #4
Classic N64 Wired Controller Joystick Remote for Original N64 Console Gray | Plug and play, Wired Connection Compatible with Nintendo 64, Classic N64 style- "M" grip shape, Rumble Pak & Memory Card Pak
  • 🎮[Compatible ]This wired controller is fully compatible with the original N64 system console, specially designed for enjoying old school Online N64 video games, perfectly for Mario Kart 64, Zelda n64, Mario party, Perfect Dark, Super Mario 64, ocarina of time 64,Super Smash Bros and many other N64 games.(Not for Windows PC Games)
  • 🎮[Ergonomic Design]Tight and accurate analog control, the controller features 10 function buttons (including Left and Right shoulder functions and Z-trigger). Based on ergonomic and designed to fit your hands nicely, easier to grip than other controllers. It is a great replacement for old original N64 controller you have.
  • 🎮[Rumble Pak & Memory Card ]: Compatible with most of game memory cards. you can use a memory card and transfer the game memory card save data. Upgraded 3D analog control stick commands your action with precision, perfectly compatible with N64 System console.
  • 🎮[N64 Wired connection]The cord is approx. 1.7 meters (6ft), including a push-on N64 connector and easy to use. Use a N64 Controller Extension Cord Cables, you can play across the room. The joystick is removeable and replaceable.
  • 🎮Third party controller, not original N64 controller(non-USB edition). The best gift for your families or friends, that will bring back those childhood memories when you are playing these classic N64 games.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

A repeatable glitch-testing procedure

1. Establish a clean starting state

Use a clean save or a documented state. Note the room, entrance, camera orientation, equipment, health and any flags that influence the setup. If you use a save state, create it only after confirming that the emulator and timing settings are final.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

2. Stabilize timing before inputs

Disable fast-forward, turbo, frame skipping, overclocking and unnecessary background load. On Project64, check the VI/s and DL/s display; on RetroArch, keep the original framerate visible and VI Refresh (Overclock) at Auto. A test performed while the emulator is catching up is not comparable with one running at a stable console baseline.

3. Calibrate and verify the input path

Test neutral, full-direction, diagonal and partial-stick values. Confirm that the correct controller port is active and that no hotkey shares a gameplay button. For keyboard profiles, verify the 100% analog range before attempting a trick that depends on angle or distance.

4. Perform a controlled sequence

Use a written sequence with frame counts or timing cues where known. Repeat from the same state several times without changing settings. Record successes and failures, not just the successful clip; a 1-in-20 success rate indicates a different problem from a consistent result.

5. Change one variable

If the attempt fails, alter one factor—such as controller range, VI setting, expansion memory or plug-in—then repeat. Changing the emulator, ROM and controller simultaneously prevents you from identifying the cause.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

6. Cross-check unusual results

Verify a surprising success on original hardware or a second accuracy-focused emulator. If both emulators fail while hardware succeeds, inspect timing and analog values. If both emulators succeed only with a particular ROM revision, the revision is likely part of the trick rather than an incidental detail.

Best Value
KIWITATA 2xClassic N64 Controller, Retro N64 Remote Wired Game Joystick Replacement Controller for N64 Console N 64 System Black+Gray
  • ⚡【Compatibility】2 Pack wired controller fully compatible with N64 system console, perfect for Mario Kart 64, The Legend of Zelda,Perfect Dark, Super Mario 64,ocarina of time 64,Super smash, Ocarina of Time and many other classic N64 retro games.
  • ⚡CLASSIC DESIGN: Tight and accurate analog control, the controller features 10 function buttons (including Left and Right shoulder functions and Z-trigger). This is a great replacement for any old original N64 controller you have.
  • ⚡Rumble Pak & Memory Card Feature: Compatible with most of game memory cards. you can use a memory card and transfer to an SD card. Not support Transfer Pak function.
  • ⚡COMFORTABLE GRIP: Ergonomic handle design fits naturally in your hands during extended gaming sessions. The cord is approx 6ft. Use a N64 Controller Extension Cord Cables,you can play across the room.
  • ⚡Third party controller, not original N64 controller.The best alternative wired controller for N64 games, that will bring back those childhood memories when you are playing classic games.

Choosing settings for OoTR racing versus private research

Goal Use Avoid
Official OoTR race comparability Project64 3.0.0+, GlideN64, VI refresh 1490 in Defaults and the game profile, visible VI/s and DL/s, original FPS behavior, calibrated controller Older Project64 releases, texture packs, overclocking, Ares, or Dolphin overclocking
Glitch investigation and automation BizHawk with expansion slot enabled and core rebooted; RAM tools, Lua or rerecording as needed Unlogged hotkeys, unbacked-up SaveRAM and automatic flushing without manual saves
Cross-platform casual reproduction RetroArch with a documented core, original framerate and VI overclock set to Auto Assuming a generic controller profile or unspecified core is equivalent to Project64
Accuracy cross-check Ares or another documented setup, clearly labeled as a non-race test where applicable Presenting the result as officially race-legal

Common failure modes and fixes

The trick works only occasionally

  • Recalibrate the analog stick and inspect deadzone and range.
  • For keyboard input, confirm Analog Stick > Range is 100%.
  • Check VI/s or framerate for instability and remove fast-forward or overclocking.
  • Repeat from an identical save state and record the success rate.

The game crashes after patching

Confirm that the image is the required 1.0 NTSC-US revision and use a compressed patched ROM as encouraged by the OoTR project. Keep the clean source separate. Do not infer that a crash proves the glitch is incompatible until the ROM format and revision have been checked.

BizHawk behaves as though expansion memory is missing

Load the ROM before opening the N64 menu, enable N64 > Use Expansion Slot, and reboot the core through Emulation > Reboot Core. A setting changed without the reboot is not active in the current session.

Save data rolls back or becomes unreadable

Flush SaveRAM manually after in-game saves, retain dated backups, and avoid very short automatic-flush intervals. If a crash occurred, restore the last known-good backup before testing again.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

A race setup looks visually different

Disable texture packs and confirm that no enhancement or overclock is active. Compare the documented VI refresh and speed display rather than judging equivalence from appearance alone.

Controller and hardware considerations

An N64-style USB controller can make analog calibration and repeatable partial-stick input easier than a keyboard, but the controller itself does not reproduce a glitch automatically. The important properties are a stable neutral position, predictable range, a working diagonal and a profile that does not add hidden deadzone or smoothing. Save the calibration profile with your experiment notes and repeat the check after reconnecting the device or changing USB ports.

If you use a modern pad, map the N64 buttons explicitly and confirm that the Z, C-button and analog axes are not sharing modifiers. A comfortable layout is useful only when it produces the same input values from attempt to attempt.

What you can and cannot conclude

These settings support disciplined reproduction, not a universal guarantee. The available documentation identifies supported emulators, timing requirements and setup rules, but it does not publish a numeric percentage of glitches reproduced by each emulator. Do not describe Project64, BizHawk or any other configuration as “working for every glitch.” State the exact ROM, emulator, plug-in or core, timing, controller and expansion-memory setting alongside each result.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

For a first attempt, choose Project64 3.0.0 or newer with GlideN64 and a calibrated controller. Add VI refresh 1490 and the speed display when race comparability matters. Move to BizHawk when you need RAM-level evidence or automation, and use RetroArch, Ares or Dolphin as deliberately documented alternatives rather than interchangeable defaults.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

BizHawkemulationglitch huntingN64Ocarina of TimeOoT RandomizerProject64

Leave a Reply

Your email address will not be published. Required fields are marked *

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Recommended PC Tool
Recommended PC Tool
Crashes, No Sound, or Screen Glitches?Free driver scan
Windows Errors? Fix Them Before They SpreadFree repair scan

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.