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

iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more

For repeatable Ocarina of Time glitches, start with a verified version 1.0 NTSC-US ROM, Project64 3.0.0 or newer with GlideN64, a calibrated controller, and console-baseline timing. Use VI refresh 1490 when you need settings comparable with official Ocarina of Time Randomizer races. Choose BizHawk instead when accuracy-oriented debugging, Lua tools, or rerecording matter more than minimum resource use. No emulator setting guarantees every trick, so record the full configuration and confirm surprising results on original hardware or a second emulator.

What makes an OoT glitch reproducible?

Glitches in The Legend of Zelda: Ocarina of Time can depend on game revision, emulator timing, graphics behavior, controller range, memory configuration, and even save-data state. A setup that works once is not necessarily a reliable setup. Treat each attempt as an experiment with a fixed environment.

For every recorded result, write down:

  • ROM revision and hash, including whether it is the 1.0 NTSC-US release.
  • Emulator name and exact version or build.
  • Graphics plugin or emulation core.
  • VI refresh, frame-rate, speed-limit, and any overclock settings.
  • Controller type, calibration, deadzone, and analog range.
  • Whether expansion memory is enabled.
  • Save-state or save-file conditions used to begin the attempt.

This information is more useful than naming an emulator alone because there is no published glitch-by-glitch compatibility matrix that proves one configuration reproduces every OoT trick.

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

Use the correct ROM before changing emulator options

Required revision for Randomizer-based testing

The OoT Randomizer workflow is based on Ocarina of Time 1.0 NTSC-US. Region or revision differences can change bugs, memory addresses, and timing, so do not substitute a later revision when trying to reproduce a documented 1.0 behavior.

#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.

Compress patched ROMs

The project strongly encourages compressing patched ROMs for emulator play. An uncompressed patched ROM cannot be injected into Virtual Console and is known to have random crashing problems on emulators. If a patched game crashes unpredictably, rebuild it from a clean 1.0 NTSC-US source and use the recommended compressed output rather than treating the crash as a gameplay glitch.

Start from a controlled save

Use a clean save or a documented state for each run. Record the room, inventory, time-of-day, equipment, and any flags that affect the setup. Save states are useful for practice, but a state made on one emulator or build should not be assumed portable to another.

Project64: the practical Windows baseline

Project64 3.0.0 or newer is the supported lightweight Windows baseline in OoT Randomizer documentation. Project64 3.0.0 was released on May 26, 2021. Earlier versions are not supported for official OoT Randomizer racing, so they are a poor choice for race-comparable glitch research.

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 Project64 configuration

  1. Install Project64 3.0.0 or newer. Keep the exact installer or build number in your experiment log.
  2. Choose GlideN64. Open the video or graphics plugin settings and select GlideN64. It is the recommended plugin for this use. If the computer cannot run it, use the Project64 video plugin. Avoid Jabo’s Direct3D8 plugin for this purpose.
  3. Calibrate the controller. Verify the center position, full cardinal directions, diagonals, and partial-stick movement before attempting a trick.
  4. Set keyboard analog range to 100% when applicable. Keyboard users need the full range so simulated stick directions reach the intended values consistently.
  5. Apply race-comparable timing when required. Set VI refresh to 1490 in both Project64 Defaults and the OoT Randomizer game configuration. Turn on the speed display showing VI/s and DL/s, and retain the documented original FPS-limit behavior.
  6. Disable texture packs. Texture packs are prohibited in official races and can change visual cues, so leave them off when comparing your result with race footage or race-legal setups.

Why Project64 is a good first choice

Project64 is the least resource-intensive and easiest to set up among the documented options for a Windows user. That makes it useful for quick repetition, streaming, and a baseline that other players can reproduce. Its simplicity does not make every timing-sensitive result authoritative; verify unusual behavior with another accuracy-focused setup.

Project64 timing settings for OoTR races

Use VI refresh 1490 when the goal is official-race comparability. Enter it in both places that can affect the game: the global Defaults profile and the specific OoT Randomizer game configuration. Enable the on-screen speed display so VI/s and DL/s remain visible during testing.

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.

Do not overclock the emulator to make a trick easier or to compensate for slow hardware. Overclocking changes the timing environment and is not comparable with the documented race baseline. Texture packs and other enhancements should also remain disabled for race-oriented experiments.

For non-race laboratory work, you may test a different timing configuration, but label it clearly. A result obtained with a custom overclock or altered frame pacing is a result for that configuration, not proof that the same input works at console timing.

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

Controller calibration is part of the glitch setup

Many OoT techniques depend on a precise analog angle, a brief partial-stick input, or a consistent diagonal. Calibration errors can look like an emulator timing problem.

Checks for a physical controller

  • Confirm that the stick rests at center without drift.
  • Check that up, down, left, and right reach full range.
  • Test both diagonals and note whether one direction reaches a smaller range.
  • Repeat a partial-stick movement several times and compare the resulting character motion.
  • Use the same USB port, operating-system profile, and controller mapping for every run.

Checks for keyboard input

Set Analog Stick > Range to 100% in the Project64 controller settings. Test diagonal combinations and any partial-stick technique separately; a key combination that appears diagonal may not produce the same analog value on every setup. If a trick works only with a narrow timing window, a keyboard’s digital-to-analog mapping can be the limiting factor rather than the game.

Remove emulator hotkeys that overlap with controller buttons. A mistimed press that opens a menu, changes speed, or creates a save state can invalidate an attempt without being obvious in a recording.

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.

BizHawk: choose it for accuracy-oriented tools

BizHawk is a strong alternative when you need debugging, rerecording, Lua automation, RAM inspection, or multiworld support. Its accuracy-oriented cores target console behavior, making it useful for investigating whether a result is an emulator artifact. The added tools and accuracy focus can demand more CPU and memory than a lightweight standalone setup.

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

Enable the N64 expansion slot correctly

  1. Load the OoT ROM first. The N64 menu is not available until a ROM is open.
  2. Open N64 > Use Expansion Slot.
  3. Choose Emulation > Reboot Core. The expansion-memory change does not take effect until the core reboots.
  4. Confirm the game starts normally, then record that expansion memory was enabled in your experiment notes.

If you enable the option but skip the core reboot, you may continue testing with the old memory configuration and draw the wrong conclusion about a glitch.

SaveRAM safety

Use BizHawk’s AutoSaveRAM cautiously. The OoT guide gives approximately 30–45 seconds as a reasonable interval, while warning that very frequent flushing can increase lag and that a crash can create save-data problems. Upstream guidance recommends manually flushing SaveRAM after in-game saves and retaining backups because automatic flushing can be unreliable and may corrupt a previous save.

A safe routine is to save in-game, manually flush SaveRAM, copy the resulting save file to a backup location, and only then continue a long series of attempts. Do not rely on a save state as your only copy of progress.

Use BizHawk’s tools without changing the test

RAM inspection and Lua scripts can reveal why a setup succeeds, but automation can also hide a human-input issue. Keep a manual control run for comparison, document script versions, and avoid scripts that alter timing unless timing modification is the subject of the test.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
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.

RetroArch, Ares, and Dolphin compared

Emulator Best use Important settings or trade-offs Race status
Project64 3.0.0+ Lightweight Windows baseline and easiest setup Use GlideN64; VI refresh 1490 for race-comparable OoTR settings; calibrate analog input Supported baseline for official OoTR racing
BizHawk Accuracy-oriented work, RAM inspection, Lua, rerecording, and multiworld use Enable N64 > Use Expansion Slot, then reboot the core; manage SaveRAM carefully Use depends on the event’s rules; Project64 is the documented race baseline
RetroArch Cross-platform play with lower resource demand than BizHawk Controller setup can be frustrating; show the original framerate and leave VI Refresh (Overclock) at auto for supported race cores Use only supported cores and the event’s documented settings
Ares Accuracy-focused desktop emulation Runs on several desktop platforms Currently not allowed for official OoTR races
Dolphin Wii Virtual Console behavior, faster item-menu pauses, and easy GameCube-controller support Some areas have extra lag; overclocking to reduce it is not race-legal Not suitable for race comparisons that prohibit overclocking

RetroArch

RetroArch broadens platform support and can use fewer resources than BizHawk, but the OoTR documentation describes setup, especially controller setup, as frustrating. For a supported race core, display the original framerate and leave VI Refresh (Overclock) set to auto. If you change the core, video synchronization, or input mapping, record those changes because a generic RetroArch label is not enough to reproduce the result.

Ares

Ares prioritizes accurate console emulation and runs on several desktop platforms. The OoTR setup guidance currently does not allow it for official races. It can still be useful for private cross-checking when you clearly separate that result from race-legal evidence.

Dolphin

Dolphin runs the Wii Virtual Console version of OoT. It offers faster item-menu pauses and straightforward GameCube-controller support, but the OoTR project notes extra lag in some areas. Overclocking to mitigate that lag is not permitted for racing, so Dolphin should not be treated as interchangeable with the Project64 race baseline.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

How to run a repeatable glitch experiment

  1. Verify the ROM. Confirm 1.0 NTSC-US and retain its hash in your notes.
  2. Choose one emulator profile. Start with Project64 3.0.0+ and GlideN64, or use BizHawk when you need its inspection and rerecording tools.
  3. Fix timing. Use VI refresh 1490 and the documented speed display for race comparisons; otherwise state the exact timing profile you selected.
  4. Configure memory. In BizHawk, enable the expansion slot and reboot the core before testing.
  5. Calibrate input. Check center, cardinal directions, diagonals, partial range, and keyboard range if relevant.
  6. Prepare the save. Begin from a clean or documented state and back up SaveRAM before a long session.
  7. Remove variables. Disable texture packs, overclocking, unnecessary hotkeys, and other enhancements that alter timing or visibility.
  8. Record attempts. Capture the emulator build, plugin or core, timing display, input device, and whether the attempt succeeded, failed, or produced a crash.
  9. Repeat from the same conditions. Several successes from one clean setup are more informative than one success after changing multiple settings.
  10. Cross-check anomalies. Test an unexpected result on original hardware or a second accuracy-focused emulator before calling it a game behavior.

Diagnosing inconsistent results

The trick works once, then fails

Return to the same save, recalibrate the stick, and verify that VI/s and DL/s remain at the intended values. Check for accidental speed-display changes, a different controller profile, or a save state made at a different frame.

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

The game crashes during or after patching

Rebuild from a clean 1.0 NTSC-US ROM and use a compressed patched ROM. Uncompressed patched images are associated with random emulator crashes and should not be used to judge glitch reliability.

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.

BizHawk behaves differently after enabling expansion memory

Confirm that the ROM was already loaded when you selected N64 > Use Expansion Slot, then use Emulation > Reboot Core. Without the reboot, the new setting is not active.

Input feels correct but the character misses the setup

Test the analog range numerically or with a repeatable movement pattern. A drifting stick, uneven diagonal, keyboard range below 100%, or overlapping hotkey can change the input even when the visible button press looks identical.

Performance changes after enabling AutoSaveRAM

Increase the interval toward the 30–45-second example, flush manually after in-game saves, and keep backups. Very frequent flushing can add lag, while an emulator crash can damage save data.

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

Which emulator should you choose?

  • Choose Project64 3.0.0+ with GlideN64 for the simplest Windows setup, low resource demand, and official OoTR race comparability.
  • Choose BizHawk when you need RAM inspection, Lua automation, rerecording, or an accuracy-oriented investigation and can manage its additional configuration and SaveRAM precautions.
  • Choose RetroArch when cross-platform support is more important than easy setup, and use the documented original-framerate and auto-overclock behavior.
  • Choose Ares for private accuracy comparisons, not official OoTR races under the current rules.
  • Choose Dolphin only when Wii Virtual Console behavior or GameCube-controller support is specifically relevant, and do not overclock it for race evidence.

The most defensible result is not simply “this emulator works.” It is a result tied to a known ROM revision, emulator build, plugin or core, timing profile, controller calibration, memory configuration, and save state. Publishing those details lets another player reproduce the same conditions and distinguish a real 1.0 behavior from an emulator-specific artifact.

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.