This manual covers firmware V2.0.0 and above. If you have a GC Adapter with V1.x.x firmware, please upgrade or refer to the V1.x.x firmware manual instead. The firmware version is shown in the About section of your adapter menu.

Filter:
Getting Started

USB Port / V2.0 / V2.1

N64GCWiimote

All EM adapters have a USB port on the right-hand side of the enclosure:

  • V2.1 adapters have a USB-C port
  • V2.0 adapters have a micro-USB port

If you intend to use any USB features, use a cable suitable for data transfer (not charge-only). The type of USB port is the only functional difference between V2.0 and V2.1 - the microcontroller, firmware, and features are identical.

The USB port is used for the following features:

For all USB features, you will need the CH340 drivers installed. Windows should show the adapter as USB-Serial CH340 in Device Manager. These are very often pre-installed already, so you may not need to install them manually.

USB Menu Viewer

N64GCWiimote

When the adapter is connected over USB with Input Display and EMSpy Cmds enabled (both on by default), it streams its OLED menu over the serial connection. This lets you view and navigate the adapter menu live from your PC, which can be more convenient than reading the small on-device display.

On your PC, you can use EMSpy, which mirrors the adapter menu live whenever it is open. You can then scroll and navigate the menu directly from EMSpy using the mouse or keyboard. See the EMSpy section for setup instructions.

PuTTY (Legacy / Diagnostic)

A plain serial terminal such as PuTTY can also be used to view the raw serial output for diagnostic purposes.

Setup: set Connection type to Serial, Speed to 115200, and Serial line to the COM port shown in Device Manager for your CH340 adapter. Click Open. While in normal mode, raw input data appears. When the adapter menu is open, the OLED screen content appears as text.

Notes:

  • EMSpy V2 also supports an ASCII mode for viewing the serial output, so PuTTY is no longer needed, except for diagnostic purposes.
  • Only one program can use a COM port at a time. You must close PuTTY before opening EMSpy, and vice versa.
  • EMSpy must not have been connected since power-on, or EMSpy Cmds must be disabled, as EMSpy will disable the raw serial output when connected.
Adapter-Specific Features

Wii VC Options › VC Features

GCWiimote
DefaultOff

The Wii Virtual Console applies its own internal analog stick transformation when running N64 titles, which warps the stick range significantly and introduces a large deadzone. The VC correction mapping reverses this transformation so that stick inputs feel exactly as they would on real N64 hardware.

Enabling VC Features does the following:

  • It applies the correct VC stick mapping, so your analog stick feels correct in-game
  • It sets the Default button mappings to be correct for the selected game
  • Any buttons already mapped correctly for the selected game get set to Default

These features can be toggled on or off via Wii VC Options VC Features. The correct mapping is chosen based on your Game Selection. It is important to have the correct game selected, as different games have different stick and button mappings.

GC Adapter: As well as the Wii Virtual Console titles, the correction also includes a dedicated mapping for the GameCube re-releases of Ocarina of Time and Majora's Mask (the Master Quest mapping), so those discs are supported too when used with a GameCube console - not just Wii VC.

If you are using the adapter to play non N64 rerelease titles, such as regular GameCube or Wii games, you should disable this feature in order to avoid issues.

Disabling this feature does the following:

  • All controller sticks bypass the VC correction mapping (other features still work)
  • N64 sticks are mapped to fit the GameCube range, so they can still reach full range
  • Default button mappings take their literal values (according to the selected game)

With the VC features enabled, you can still override specific button mappings using the Button Mapping feature. Putting them back to Default will restore the correct mapping for the selected game.

Important: If you are using the adapter purely as a generic GameCube controller adapter for non-N64 titles, you'll want to disable this to pass stick values through unmodified.

Wii VC Options › Game Selection

GCWiimote
DefaultOcarina of Time

Each Wii Virtual Console N64 title uses a slightly different internal stick mapping. You must select the correct game from the Wii VC Options menu before playing. If the wrong game (or no game) is selected, buttons and/or the analogue stick will not be mapped correctly.

The game selected also determines the function of the default button mapping. You can still override individual buttons using the Button Mapping feature.

The following games are supported:

Menu OptionCorresponding TitlePlatform
1080 Snowboarding1080 SnowboardingWii VC
Bomberman HeroBomberman HeroWii VC
Cruis'n USACruis'n USAWii VC
F-Zero XF-Zero XWii VC
Kirby 64Kirby 64: The Crystal ShardsWii VC
Majora's MaskThe Legend of Zelda: Majora's MaskWii VC
Majora's Mask KZ *Majora's Mask KZ Practice ROMWii VC
Mario GolfMario GolfWii VC
Mario Kart 64Mario Kart 64Wii VC
Mario Party 2Mario Party 2Wii VC
Mario TennisMario TennisWii VC
Master QuestTLoZ: Ocarina of Time & Master QuestGameCube
TLoZ: Collector's EditionGameCube
Ocarina of TimeTLoZ: Ocarina of TimeWii VC
Ocarina of Time GZ *Ocarina of Time GZ Practice ROMWii VC
Ogre Battle 64Ogre Battle 64Wii VC
Paper MarioPaper MarioWii VC
Pokemon Puzzle LgPokemon Puzzle LeagueWii VC
Pokemon SnapPokemon SnapWii VC
Sin & PunishmentSin and PunishmentWii VC
Star Fox 64Star Fox 64Wii VC
Super Mario 64Super Mario 64Wii VC
Super Smash BrosSuper Smash Bros.Wii VC
Wave Race 64Wave Race 64Wii VC
Yoshi's StoryYoshi's StoryWii VC
SNES VCCustom mapping for SNES VC titlesWii VC
* Practice ROM entries (KZ, GZ) only affect the N64 L-button, and so are omitted if you do not have a physical N64 controller input.
Important - Ocarina of Time and Majora's Mask: These games exist in both a Wii Virtual Console version and a GameCube version (e.g. Collector's Edition, OoT & Master Quest disc). These versions use different mappings. Make sure you select the correct option for the version you are playing.

N64 Pak Settings

N64
DefaultsVirtual Pak TypeVirtual MemPakMemory Pak BankBank 0

The N64 Adapter can emulate different controller pak types being connected, found under N64 Pak Settings in the main menu:

OptionDescription
Virtual Memory PakThe adapter emulates a memory pak and stores save data on its internal EEPROM. No physical memory pak is required.
Virtual Rumble PakThe adapter emulates a rumble pak, allowing games to trigger controller vibration if a physical rumble pak is connected.
No PakThe adapter reports that no pak is inserted in the controller port.

Virtual Memory Pak

The adapter emulates a standard N64 Controller Pak using its own internal EEPROM, so no physical pak is required. It provides two independent 256 Kilobit (32 KB) memory paks - Bank 0 and Bank 1 - each the same size as a real N64 Controller Pak and holding its own full, separate set of game saves. The active bank is chosen under N64 Pak Settings Memory Pak Bank (default Bank 0), so you can, for example, keep different games' saves on different banks.

Either bank can be backed up to or restored from your PC with EMSpy:

  • MemPak → Read Virtual MemPak - save the active bank to your PC as a file.
  • MemPak → Write Virtual MemPak - restore a file back onto the active bank.

See the MemPak Management section for details.

Bringing across saves from a physical Controller Pak: A real Controller Pak inserted in the N64 controller is not read by games directly - in-game saving always uses the adapter's virtual memory pak, not the physical pak. To carry existing saves over, back the physical pak up in EMSpy with MemPak → Read N64 MemPak, then write that file onto a virtual bank with MemPak → Write Virtual MemPak. Those saves are then available in-game from the virtual memory pak.

Virtual Rumble Pak

The adapter emulates a Rumble Pak, so games that support rumble can trigger controller vibration. If a physical N64 Rumble Pak is inserted in the connected N64 controller, the rumble commands are passed through to it, driving the real motor.

GameCube controllers: rumble is not supported for a GameCube controller used on the N64 Adapter. The N64 controller port cannot supply enough power to drive a GameCube controller's rumble motor. See Rumble for more.
Button Mapping

Button Mapping

N64GCWiimote
DefaultsActive presetPreset 1Preset namesPreset 1-4

The adapter supports fully customisable button mapping, allowing any input button to be remapped to a different output button, or disabled entirely. This is configured via the Button Mapping menu.

Button Mapping menu Rename Preset screen Map Buttons screen
Button Mapping Menu

There are 4 independent presets for each controller input type (N64, GC, WCC). Presets are stored separately per input type, so switching from an N64 controller to a GC controller will use that input type's own set of presets. You can switch the active preset, edit button assignments, and rename presets from within the Button Mapping menu.

Preset names can be up to 12 characters. In the name editor, pressing the trigger buttons toggles between upper and lower case.

The default names are Preset 1, Preset 2, Preset 3, and Preset 4. But you can change them to better suit your preferences, For example: Zelda, Mario 64, Generic, etc.

Select Map Buttons to edit the current preset. Any button can be remapped to any output button, or set to None to disable it. Navigate to a button with the stick/d-pad, then use left/right to cycle through available output assignments.

The following table shows what can be remapped for each controller type:

N64 (14)GameCube (16)Wii Classic Controller (19)
AAA
BBB
ZXX
LYY
RZZL
C-UpLZR
C-DownRL
C-LeftStartR
C-RightD-Up-
D-UpD-Down+
D-DownD-LeftHome
D-LeftD-RightD-Up
D-RightC-UpD-Down
StartC-DownD-Left
C-LeftD-Right
C-RightC-Up
C-Down
C-Left
C-Right
GC / Wiimote Adapter: All four presets default to Default, which applies the per-game button mappings for the selected VC title. Individual button assignments within a preset can still be overridden.
Stick Settings

GC / WCC to N64 Stick Mapping

N64GCWiimote
DefaultEM Mapping V2

When using a GameCube or Wii Classic Controller to play a Nintendo 64 game, the analog stick values must be mapped to fit within the working range of the N64 analog stick.

There are 5 built-in mappings available, selectable from the Stick Settings menu:

MappingDescription
EM Mapping V2Custom mapping optimised for accuracy and feel. Recommended for most users.
EM Mapping V1An earlier version of the EM mapping. Reaches approximately ±76 stick units instead of ±80 - this was corrected in V2.
Raphnet V2.0Matches the GC-to-N64 Raphnet adapter V2.0 mapping.
Raphnet V1.5Matches the Raphnet adapter V1.5 mapping.
Raphnet ExtendedMatches the Raphnet adapter Extended mode.

The Raphnet mappings are provided for users already familiar with Raphnet's GC-to-N64 adapters who would prefer a similar stick feel. They are based on the 3 stick mappings from the gc_to_n64 project by Raphael Assenat (raphnet).

Note: This section only applies to GameCube and Wii Classic Controller inputs. It is not relevant when using a N64 controller.
GC / Wiimote Adapter: This stick mapping only takes effect when the VC Features (VC stick correction) is enabled. With the VC Features disabled, GameCube and Wii Classic Controller stick values are passed through unmodified, so the selected mapping has no effect.

Notch Calibration

N64GCWiimote
DefaultsEnabledOffNotch SnappingOffTarget Offsets0

Notch calibration lets the adapter learn the actual positions of your controller's 8 cardinal and diagonal notches. Once calibrated, it continuously remaps the whole stick range so that your physical notches line up as closely as possible with the ideal notch positions. This corrects sticks whose notches are worn or slightly misaligned, and it does so smoothly - the stick values in between the notches are remapped too, not snapped or discarded.

It is configured from the Notch Calibration sub-menu within Stick Settings, which contains the following options:

  • Enabled - Turns notch calibration on or off.
  • Calibrate Notches - Opens the interactive calibration wizard (see below).
  • Notch Snapping - Snaps stick values that land very close to a notch onto the exact notch position (see below).
  • Target Offsets - Adjusts where each notch maps to. Best left at zero (see below).

Calibrate Notches launches an interactive wizard. It prompts you for each of the eight notches in turn - hold the stick firmly into the notch shown on screen, then press A to record it. Once all eight have been captured, the adapter saves them. If enabled, the adapter will then always use these calibrated notches to remap the stick values. Re-run the notch calibration wizard it any time you change controllers (of the same type), or if the stick wears over time. Each controller input type (N64, GC, WCC) has its own independent calibration, so you'll need to calibrate each one separately, but don't need to re-calibrate if you switch between controllers of different types (e.g. N64 to GC).

Notch Snapping forces any stick value that lands within a few units of a calibrated notch. Use left/right to adjust the threshold. The threshold is adjustable, up to 5 stick units (radially). It is off by default and is not generally recommended - standard calibration is precise enough for almost all use, and snapping throws away the fine stick movement around each notch. It is really only worth enabling if you need to hit one exact, repeatable angle every single time.

Target Offsets opens a similar wizard, but instead of recording where your notches physically sit, you can nudge where each notch is mapped to. With every offset left at zero (the default), the notches map to their ideal positions, which is what almost everyone will want. This is only useful when you want to consistently hit a deliberately off angle - for example a specific diagonal that is not quite the standard notch position. Adjusting these is not normally needed or recommended, so it's strongly recommended to leave them at zero unless you have a specific usecase for this.

Note: Because this feature smoothly remaps the entire stick range from your calibrated notch positions, it also makes some unusual things possible - you could, for instance, calibrate the notches so that your stick ends up effectively upside down or mirrored along one axis. There is probably no good reason to do this, but it is possible!

ESS Adapter

N64GCWiimote
DefaultsFeatureOffDeadzone5ESS Start10ESS Range25N64 Zelda: Start 8, Range 19

The ESS adapter feature is a feature specific to the Legend of Zelda: Ocarina of Time and Majora's Mask, and should be disabled for other games.

The ESS adapter feature remaps the analog stick so that the ESS position (the position just outside the deadzone where Link shuffles in place) begins and ends at exactly the values you configure. This allows you to dial in precise ESS control regardless of your controller type or wear.

ESS settings are configured separately for each controller input type (GameCube, Wii Classic Controller, and N64), accessed via Stick Settings ESS Adapter.

Selecting ESS Adapter opens an interactive wizard with three adjustable values:

  • Deadzone (DZ) - The stick radius within which the output stays at zero.
  • ESS Start - The stick radius at which ESS begins.
  • ESS Range - The size of ESS position (end - start).

Inside the wizard:

  • Press A to toggle the ESS adapter feature On or Off.
  • Press up / down to select a value (Deadzone, Start, or Range), and left / right to adjust it.
  • Press Start to reset all values back to their defaults.

The wizard also shows a live graph that previews how your stick will be remapped radially. The horizontal axis is the input radius (how far you push the stick) and the vertical axis is the output radius (what the game receives). When the feature is off, the graph is a straight diagonal line (output equals input), because stick values are passed through unmodified. When it is on, the line flattens within the deadzone and is reshaped so that the ESS zone falls exactly where you set the Start and Range.

ESS wizard with ESS enabled ESS wizard with ESS disabled
ESS On

About the deadzone: In Ocarina of Time, the game already applies its own in-game deadzone (greater than 5 units), so raising the Deadzone value from 0 up to that point makes no practical difference (to my knowledge). Majora's Mask, however, handles the deadzone differently, which can make things like backwalking unreliable. The Deadzone setting can be used to force a deadzone (up to the ESS Start position), which may feel better than leaving at 0.

If you leave a gap between the Deadzone and ESS Start, the stick values in that gap are passed to the game as an intermediate range. In Ocarina of Time, there is no gap between the game's own deadzone and where ESS begins, so any gap you leave between Deadzone and Start simply maps into the in-game deadzone, making no functional difference. In Majora's Mask, however, there is a region between the in-game deadzone and the ESS start that is still meaningful (it is used for things like aiming), so this Deadzone-to-Start gap maps into that region also, and can behave noticeably differently. This is why selecting the correct game is important when using this feature.

Important: ESS adapters are banned in Majora's Mask speedruns. For Majora's Mask, this feature is intended for casual play only.
GC / Wiimote Adapter: The ESS feature works alongside the VC Mapping Correction, using your selected game. It can also continue to function when this is disabled (e.g. for playing OoT or MM on N64 by chaining adapters), but you will need to specify which GC-to-N64 mapping the other adapter in your chain uses (Via in the ESS wizard), so the adapter can calculate the correct transformation.
N64 Adapter: A Zelda game type (Ocarina of Time or Majora's Mask) can be selected in the ESS menu to apply the appropriate default parameters.

Sensitivity

N64GCWiimote
Default100%

The sensitivity setting is a general-purpose analog stick response curve, offered as a simpler, generic alternative to the ESS adapter feature. It works for GameCube, N64, and Wii Classic Controllers, and each controller type keeps its own independent saved value.

As the generic alternative to the ESS adapter feature, the sensitivity setting only takes effect when the ESS mapping is not being applied to the connected controller. That is the case when any of the following is true:

  • The ESS adapter feature is turned off for that controller, or
  • No Zelda game (Ocarina of Time or Majora's Mask) is selected, or
  • GCWiimote The VC correction mapping is disabled and ESS Via is set to Off.

The value ranges from 70% to 140% (adjusted with left / right in the Stick Settings menu), where 100% is a direct 1:1 mapping. Values above 100% make the middle of the stick range less sensitive (more precision at small deflections), which is the typical use case. This control affects the full stick range via a curve, not just the centre zone.

Note: "Sensitivity" is a bit of a misnomer - a higher value actually makes the stick less responsive around the centre (and a lower value makes it more responsive). This is the opposite of what the name suggests.

Stick Calibration

N64GCWiimote
DefaultOn

When stick calibration is enabled (the default), the adapter automatically reads the controller's resting stick position the moment a controller is connected, and uses that as the neutral (0,0) point. This corrects for slight drift or offset in the physical stick.

If you prefer to use a fixed neutral point rather than auto-calibration, you can disable this option from the Stick Settings menu.

Note: if your controller has been physically modified in a way that affects the stick's resting behaviour when plugged in (e.g. snapback capacitors), calibration may not work as intended. In that case, disabling stick calibration may be the better choice.

C-Stick Settings

N64GCWiimote
DefaultsDigitiseOffThreshold50%

These settings apply to the GameCube controller's C-stick, and the Wii Classic Controller's right-stick. They are found under Stick Settings C Stick:

  • Digitise - Converts the analog C-stick into four digital directions (up, down, left, right). Each axis snaps to one of three states: centered, or fully deflected in that direction, based on whether it exceeds the threshold below.
  • Threshold - How far the stick must be pushed in a single direction to register as active when Digitise is on. Adjustable between 10% and 90%.
N64 Adapter: The Digitise toggle is not present for the N64 adapter, because the N64 controller only has digital C-buttons, and no analog C-stick. So the C-stick always has to map to digital inputs anyway. The Threshold setting still applies.
Trigger Settings - GameCube & Wii Classic Controller

The Trigger Settings options only make sense for GameCube and Wii Classic Controller. N64 controllers only have digital triggers, so this menu is not available if a N64 controller is connected.

Trigger Mode

N64GCWiimote
DefaultUnmodified

Changes how analog triggers are processed and mapped. Cycle through modes using left/right in the Trigger Settings menu.

ModeDescription
UnmodifiedTrigger analog values are passed through unchanged. The game receives whatever analog value the trigger is physically at.
SoftThe trigger outputs zero until the analog value reaches the configurable threshold, at which point it registers as a full press.
HardThe trigger outputs zero until the trigger is fully depressed to its hard digital stop. Only a complete press registers.

Trigger Threshold

N64GCWiimote
Default25%

When Trigger Mode is set to Soft, this value determines how far the trigger must be pressed to count as a full press. Displayed as a percentage (0–100%).

Adjust using left/right while the threshold option is highlighted in the Trigger Settings menu. A lower value means the trigger registers earlier in its travel; a higher value requires a deeper press.

Rapid Trigger

N64GCWiimote
DefaultsEnabledOffSensitivity10Hard PressOn

Rapid trigger is available when Trigger Mode is set to Soft. It allows the trigger to release without having to release all the way past the threshold. Instead, releasing the trigger by a small amount counts as a release, so it's ready to press again immediately. The goal of this is to reduce effective latency when releasing (and re-pressing).

Configure from the Trigger Settings Rapid Trigger sub-menu:

  • Enabled - Toggle rapid trigger on or off.
  • Sensitivity - The minimum trigger movement required to count as a release and allow a re-press. Lower values mean the trigger will release and re-press with smaller movements, but may cause unintended releases if set too low.
  • Hard Press - When enabled, releasing the trigger from the hard stop (digital press) always registers as a release, regardless of the soft threshold.

Which Trigger

N64GCWiimote
DefaultBoth L & R

Controls which physical trigger(s) the trigger settings apply to. This includes the:

The available options are:

  • Both L & R
  • Only L
  • Only R
  • None

This setting is available when the trigger mode is set to Soft or Hard (not Unmodified). For example, you can set L to Hard mode only, while R remains Unmodified.

Trigger Calibration

N64GCWiimote
DefaultOn

When Trigger Calibration is enabled, the adapter reads the resting position of the GameCube / Wii Classic Controller's analog triggers at the moment the controller is connected, and uses that as the zero point. This compensates for triggers that do not return fully to zero when released.

Toggle this on or off from the Trigger Settings menu. Keep it enabled unless you have a specific reason to use a fixed zero point.

Advanced

EMSpy

N64GCWiimote

EMSpy is a utility program for the EM Adapter V2. It communicates with the adapter over a single USB connection and provides a range of features:

  • Input display - a live, real-time view of your controller inputs (see Input Display).
  • Adapter menu mirror - when the adapter's OLED menu is open, EMSpy mirrors it live on your screen, so you can scroll and navigate it with mouse or keyboard without looking at the device.
  • Firmware updates - handled automatically. Use Device → Update Firmware, or let EMSpy check on startup (a notification appears if an update is available; this check can be disabled in EMSpy's settings). See Update Firmware.
  • Menu combo - change the button combination that opens the adapter menu via Device → Menu Combo, without using the OLED.
  • Settings management - read and write adapter settings directly from your PC.
  • MemPak operations - read and write both the virtual EEPROM MemPak and a physical N64 MemPak (see MemPak Management).

Enabling USB communication: Connect the adapter to your PC with a USB data cable (a charge-only cable will not work). Input Display (under Advanced Input Display) must be On - it is on by default, so usually nothing needs changing. EMSpy can then connect via the correct COM port.

Driver: The adapter uses a CH340 USB-to-serial chip. If your PC does not recognise the device, install the CH340 driver from the Downloads page.

Important - Serial Mouse Conflict (Windows): On some Windows systems, the CH340 serial port may be claimed by the legacy Serial Mouse driver, causing the adapter to behave as a mouse cursor. If this occurs:
  1. Open Device Manager.
  2. Locate the CH340 device (often listed as USB-SERIAL CH340 under Ports (COM & LPT)).
  3. Right-click → Update driverBrowse my computerLet me pick from a list.
  4. Deselect "Show compatible hardware" and select Standard Serial over Bluetooth link or manually assign the CH340 driver.
  5. Alternatively, disable the Serial Mouse service via services.msc.

Input Display

N64GCWiimote
DefaultOn

When Input Display is enabled, the adapter streams live controller data to your PC over USB, and EMSpy displays this as a real-time input viewer. It is found under Advanced Input Display and is on by default, so in most cases no action is needed - just connect the adapter to your PC with a USB data cable.

EMSpy uses NintendoSpy style skins to display button presses, stick positions, and trigger values. Skins are loaded from a folder on your PC; EMSpy can automatically download example skins for you, for N64, GameCube, and Wii Classic controllers.

Note: NintendoSpy and RetroSpy can also be used as a basic input viewer with the NintendoSpy skin format, though EMSpy is recommended for full feature support.

WCC Packet Format

N64GCWiimote
DefaultRS (RetroSpy)

This setting controls the input display packet format used when a Wii Classic Controller is connected. Found under Advanced WCC ID Fmt, use left or right to switch between RS (RetroSpy format, the default) and GC (GameCube format).

FormatDetails
RetroSpy (RS)
default
Reports every Wii Classic Controller button correctly using the native RetroSpy format. Works with dedicated Wii Classic Controller skins. Compatible with EMSpy and RetroSpy, but not NintendoSpy.
GameCube (GC)A legacy format that maps each Wii Classic Controller button onto a GameCube button. It therefore works with GameCube skins, but not with Wii Classic Controller skins. Compatible with EMSpy, RetroSpy, and NintendoSpy (using the GameCube controller type).

Example Skins

Here is an example Wii Classic Controller skin, available for each format:

Important: This setting only affects the Wii Classic Controller; other controllers are unaffected. Both formats work with EMSpy - the choice mainly determines which input display skins you can use.

Poll Rate

N64GCWiimote
Default1 ms

Controls how frequently the adapter polls the connected controller for input. Found under Advanced Poll Rate. The poll interval is adjustable from 1 ms to 8 ms in 0.05 ms increments.

The default setting of 1 ms is the fastest available and is recommended for virtually all use cases, providing the lowest possible input lag. A slower poll rate may be required for compatibility with certain third-party controllers or accessories that cannot respond reliably at 1 ms.

Auto Switch

N64GCWiimote
DefaultOn

When more than one controller is connected to the adapter at the same time - for example an N64 and a GameCube controller both plugged in - Auto Switch will automatically switch between them based on which controller you last picked up. Found under Advanced Auto Switch. This option only applies to adapters that accept more than one type of controller input.

Enabled (the default): the adapter watches the other connected controller and switches the active controller automatically as soon as you press any button on it. This lets you swap between two connected controllers just by pressing a button on the one you want to use, with nothing to unplug.

Disabled: the adapter only ever polls the controller that was connected first. Any other connected controllers are ignored until that active controller is disconnected, at which point another one can take over.

Important: Auto Switch only supports switching to an N64 or GameCube controller. A Wii Classic Controller is not auto-detected, so the adapter will never switch to one automatically. You can still switch away from a connected Wii Classic Controller by pressing a button on a GameCube or N64 controller.

OLED Timeout

N64GCWiimote
Default10 s

Sets how long the OLED display stays on after the last menu interaction. Found under Advanced OLED Timeout. Adjustable from 3 seconds to 30 seconds. After the timeout elapses the display turns off, and opening or navigating the menu wakes it again. Setting a shorter timeout may reduce OLED degradation over time.

Note: Even with the OLED off (or if it ever fails), the menu can still be fully navigated from your PC using EMSpy over USB - see EMSpy.

Rumble

N64GCWiimote
DefaultOn

Rumble behaviour varies by adapter type and connected controller.

GC Adapter: Toggle the rumble feature on or off using Advanced Rumble. When enabled, rumble commands sent by the host console are forwarded to the connected GameCube controller, or the Rumble Pak of a connected N64 controller.

The Wii Classic Controller doesn't have any rumble capability, so this option does nothing for the Wii Classic Controller input.

Wii Virtual Console titles also do not send any rumble signals at all, even to the GameCube port. So this option does nothing in Wii VC titles.

N64 Adapter: The N64 controller port doesn't provide enough power to drive a GameCube controller's rumble motor, so GC controller rumble is not supported on the N64 Adapter.

However, N64 controller rumble works through the Rumble Pak, which is powered separately by batteries. Under N64 Pak Settings, if your Virtual Pak is set to Rumble Pak, the adapter presents a rumble pak to the N64 console. Then, any rumble commands sent by the console are forwarded to a connected physical N64 Rumble Pak (if one is inserted). See N64 Pak Settings for more.

Note that whilst your virtual pak is set to Rumble Pak, the game won't be able to save to the virtual MemPak, as the game will only see a Rumble Pak inserted.

Wiimote Adapter: Wii extension controllers such as the Wii Classic Controller do not support rumble. Games rely exclusively on vibrating the Wii Remote itself for any rumble features, so this option is omitted for the Wiimote Adapter.

MemPak Management

N64

EMSpy can read and write both the adapter's Virtual MemPak (stored in EEPROM) and a physical N64 MemPak inserted into a connected N64 controller. Use the MemPak menu in EMSpy.

Virtual MemPak (EEPROM)

The N64 adapter stores two independent 32 KB save banks in its internal EEPROM - Bank 0 and Bank 1. Only one bank is active at a time: the active bank is the one games save to, and the one EMSpy reads from and writes to.

  • Switching bank is done on the adapter, under N64 Pak Settings Memory Pak Bank (default Bank 0). EMSpy itself does not switch banks - it always targets whichever bank is currently selected there.
  • MemPak → Read Virtual MemPak - Downloads the currently active bank from EEPROM and saves it as a .mpk file on your PC. Useful for backing up saves.
  • MemPak → Write Virtual MemPak - Uploads a .mpk file from your PC into the currently active EEPROM bank. Useful for restoring a backup or transferring saves from another device. ⚠ This erases and overwrites all existing data in that bank.

Physical N64 MemPak

With an N64 controller plugged into the adapter and a physical MemPak inserted into the controller, EMSpy can read or write the pak directly:

  • MemPak → Read N64 MemPak - Reads the entire 32 KB pak and saves it to your PC as a .mpk file. Good for backing up your old save data.
  • MemPak → Write N64 MemPak - Writes a .mpk file from your PC to the physical pak. ⚠ This overwrites all existing saves on the pak.

Important: Both write operations are destructive. Writing the Virtual MemPak erases and replaces all save data in the active EEPROM bank, and writing the physical N64 MemPak overwrites all saves on the inserted pak. There is no undo, so please be careful when using this feature.

EMSpy Commands

N64GCWiimote
DefaultOn

The EMSpy Cmds option, found under Advanced EMSpy Cmds, enables bi-directional communication between the adapter and EMSpy over the same USB serial connection used for Input Display. It is enabled by default, and is what powers the adapter's advanced USB features, such as the live menu mirror and navigation and MemPak operations.

The adapter only responds to these commands while Input Display is active. With EMSpy Cmds disabled, EMSpy won't negotiate with the adapter, and the adapter falls back to a basic text-only menu stream and those graphical features are unavailable.

Show Menu Combo

N64GCWiimote
DefaultOn

Displays a reminder of the menu button combination for the currently connected controller type on the OLED screen. Found under Advanced Show Menu Combo. Useful if you have forgotten the combo and do not have access to this manual.

Turning this off will make the adapter show the regular splash screen instead, with some information about various settings, and the firmware version.

Reset Settings

N64GCWiimote

Resets all adapter settings to factory defaults. Found under Advanced Reset Settings.

After selecting Reset Settings, the adapter will ask for confirmation. Press the confirm button (as indicated on screen) to proceed.

Important: This action cannot be undone - all custom button mappings, ESS settings, stick calibration data, and other saved preferences will be permanently erased.

Update Firmware

N64GCWiimote

Firmware is updated through EMSpy over USB - no separate flashing tools are required. New firmware versions are listed on the Downloads page, and EMSpy can download and install them for you.

As long as your PC is connected to the internet, EMSpy automatically checks for newer firmware on startup. If an update is available, a notification appears so you can install it in one click. You can also check at any time from Device → Update Firmware.

  1. Connect the adapter to your PC with a USB data cable. Enable Advanced Input Display on the adapter if it is not already on.
  2. Open EMSpy and connect to the adapter's COM port.
  3. If an update is available, EMSpy notifies you on a successful connection. Click the notification to install it. Alternatively, use Device → Update Firmware to check manually. The automatic startup check can be disabled in EMSpy's settings if preferred.
  4. EMSpy downloads the correct firmware for your adapter type and flashes it. The adapter restarts automatically when complete.
Important: This applies to devices already running V2.x.x firmware. If your GC Adapter is still on V1.x.x firmware, a one-time migration is required first - see Upgrading from V1.x.x to V2.0.0 below.

Migrating V1.x.x → V2.x.x Firmware

GC

V1.x.x firmware used the legacy update process via the EM Firmware Flasher tool. This involved first manually putting the device into "update mode", and then download and flashing the firmware manually. Whilst it worked OK, it wasn't ideal.

Newer V2.x.x firmware uses the new update process via EMSpy V2. This is much more reliable, convenient, and faster than the old process. EMSpy will tell you there's a firmware update available, and you can optionally install it with one click.

However, this new process relies on a custom bootloader being installed on your device. If you have a V1.x.x device, this custom bootloader must first be installed, before the newer V2.x.x firmware can be flashed via EMSpy.

Don't worry - this is quick and easy to do, and it only needs to be done once.

You simply have to flash firmware V1.10.0 onto your device using the legacy EM Firmware Flasher tool. This process should work just like any other V1.x.x update.

Once this is done, you should see a Migration Complete message.

From this point on, the V2.x.x update process should work for you. Connecting to EMSpy should prompt you to update to the latest V2.x.x firmware with a single click.

For the full steps and downloads, see here on the Downloads page.

Important: Flashing the V1.10.0 migration firmware is permanent. Once flashed, the legacy EM Firmware Flasher will no longer work with your device, and you cannot return to V1.x.x firmware, as it does not contain or support the V2 bootloader. All future updates must be done through EMSpy.