@benguild: The official homepage of Ben Guild.

How to play Nintendo Wii games on your [Retina] MacBook Pro!

18 Jul 2013  |  Tags: , , , , ,

Wouldn’t it be great to be able to play Zelda on your laptop?

Zelda: Skyward Sword start screen

Being that I’m between travels, between apartments, and between dedications to a specific game console, I decided to get creative and catch up on the Zelda series by Nintendo. There are a few games that I’m looking forward to this holiday season when PlayStation 4 is out, such as The Last Of Us and Grand Theft Auto 5… but, even though these are PS3 titles, I don’t own that console anymore so I can’t play them right now. :)

The primary reason that I’m going with the PlayStation 4 over the Xbox One is that I’ve owned PS2 and PS3. Most of the games I’ve played are on the PlayStation platform and the new console allows playback of previous consoles’ titles through streaming. The only other console I’ve dabbled with longterm is the Nintendo Wii, which I actually camped out for on launch in 2006. These two, of course, are consoles not handhelds. In terms of handhelds, I’ve owned various GameBoys and the Sega Genesis Nomad for the sake of playing Sonic, Tetris, and Pokémon titles.

Screenshot of Zelda Wind Waker on a Nintendo GameCube console

I sold my Wii before I moved in 2011, and I bought a new PS3 after moving cross-country in early 2012. I sold that same PS3 before I moved again in January 2013, and have been consoleless since due to traveling. Because I’d owned the Wii before, I had played the The Legend of Zelda: Twilight Princess and also the previous “Wind Waker" title that had been released for GameCube (Nintendo’s previous system that’s compatible with the Wii). A new Zelda game had come out since then called Skyward Sword, and it was something that I had been dying to play! Since I’d sold my Wii, though, I hadn’t been able to… yet.

The fact that I had been able to play a GameCube game on the Wii was a signal that the two were very similar, hardware-wise. In light of this fact, I discovered that there exists a software emulator that can perfectly emulate both of these Nintendo consoles, on most Macs and PCs! Since my MacBook Pro is fairly new, I figured that I could play Wii games this way, and all I needed was a “Wiimote” to control it and, of course, the games themselves.

However, there was one other element besides the controller(s) and game(s) that I didn’t have figured out: the sensor bar.

Photo of the Wii sensor bar located near a TV

If you have a Nintendo Wii, you have that wired bar that goes on the top of your TV as a signal to the "Wiimote" controllers of where the TV is. A friend told me that there are numerous alternatives to this, such as lighting two candles near your TV (safely!!), or even building your own Wii sensor bar using infrared emitter LEDs. I actually did consider building one, but instead saw a much better value in grabbing a USB-powered replica from eBay (for less than $5 USD shipped). Radio Shack was unfortunately charging too much for the spare parts to build it by comparison, and I figured that a manufactured option could be more durable longterm.

With the sensor bar figured out, I ordered the rest of the supplies… including a brand-new black Nintendo Wiimote Motion Plus controller (the “Plus” variant is required for Skyward Sword) and Nunchuk accessory controller from Amazon Prime. I also then downloaded the Dolphin Emulator for Nintendo Wii/GameCube. Be careful to only download it from that linked website, because other sites may have malware bundled with that emulator or offer out-of-date versions of the software. While you’re on their official site, be sure to check out the compatibility list (for games) and the FAQ to make sure that your computer and setup is compatible with Dolphin.

Setup + configuration

After a few days, the supplies had arrived and it was time to test! …Best part about Nintendo? Their handheld gear always ships with brand-new batteries! That’s one thing you won’t need to put on the shopping list for now.

Photo of Nintendo Wii controllers arriving in a box from Amazon Prime

Getting the controller to pair with my Mac was a bit tricky. Apparently, according to the support forums, this latest (at the time of writing) model of the Wiimote controller ”RVL-CNT-01-TR" for the newer "Wii U" console doesn’t connect to Macs with the old "hold the 1 and 2 buttons and pair it" method for models prior.

The correct way to connect this controller to your computer is NOT by connecting the device using the Bluetooth menu on your Mac. Instead, open the Dolphin emulator, go to its “Tools” menu, choose “Real Wiimote” for “Wiimote 1” controller (not “Emulated Wiimote”), and then hit the “Refresh” button under the “Real Wiimotes” section. Then, immediately press the red “sync” button on the back of the Wiimote. In a few seconds, you’ll feel the controller vibrate briefly and it will stop flashing … indicating a successful pairing! Easy, right?

The controller will then be listed as connected to your computer as any other Bluetooth device would be within the Bluetooth menu. However, remember NOT to try to connect it initially using the Bluetooth menu! :)

Screenshot of a Nintendo Wiimote connected via Bluetooth to a Mac

Unfortunately, by the time the controllers and game had arrived, the sensor bar I’d ordered still hadn’t arrived! Instead, I temporarily used a bright floor lamp to calibrate the Wii Motion Plus when launching the game. Luckily, since this game supports Wii Motion Plus, you don’t really need the sensor bar as much once it has calibrated….

Keep in mind that this “floorlamp trick” probably only works in an otherwise completely dark room, or at night. :)

Photo of me using a floorlamp to calibrate the Wiimote controller instead of a sensor bar's infrared emitters

UPDATE 2013/07/27: I’ve also used a lighter (for cigarettes) in a pinch to emulate the sensor bar briefly to enable games:

Using a disposable cigarette lighter to calibrate a Wii remote without a sensor bar

Anyway.

Actually running games in the emulator is easy, as you can simply open “disk images” of game discs that you’ve already created yourself, or the actual Wii game discs that you have loaded in your computer’s CD drive… directly within the software’s menus! Once the game is running, you should press Command+1 on your keyboard to enable the first controller, and Command+F to make the game fullscreen. While Wii games are simple to initialize, I imagine that there may be a different process for GameCube games given that its discs are physically much smaller than typical CDs/DVDs. I don’t know anything about this, but check the links in the Dolphin FAQs for you GameCube gaming. (if desired)

Improving performance

While actually running Wii games in Dolphin and getting the controllers connected is “easy”, getting the games to operate properly and be responsive is a bit trickier. This process can also vary from game to game. For Skyward Sword, I found that my frame-rate before adjusting settings was just 20 FPS! This is not acceptable nor enjoyable.

Dolphin offers their own performance guide, but for my particular computer (15-inch Retina MacBook Pro), there are two things in particular to take into account: 4 x CPU cores, and insane display resolution for a portable graphics processor to handle. The 15-inch Retina MacBook Pro has two separate graphics chips, and one of them is specifically for high-performance rendering. I’m not sure if Dolphin will run well on the current (at the time of writing) 13-inch Retina MacBook Pro, as it only has the single, less-powerful graphics chip.

Ironically, I found that the graphics settings didn’t bottleneck Dolphin’s performance very much at all on this machine. Instead, it was primarily the CPU that caused performance concerns during emulation! I recommend changing following graphics settings from their defaults to ensure decent playback of Skyward Sword and less CPU usage. Open Dolphin, go to the “Settings” menu, select “Graphics”, and then:

  • General tab: Select “OpenGL” for Backend. For “Fullscreen resolution”, select the maximum for your computer (15-inch Retina MBP is 2880x1800). Then, select “Hide Mouse Cursor” to prevent distraction.
  • Enhancements tab: ”Internal resolution” should definitely be “Auto (Window Size)” or you may waste CPU cycles in artificial scaling … especially when suddenly using different size external monitors (like a TV). “Anti-aliasing” can be “none” since you have a Retina display. “Anisotropic filtering” I have set to 16x for optimal visuals, and haven’t notice a performance hit given the computer’s graphics processor(s).
  • Hacks tab: This is where things can get interesting. Turning on “Skip EFB Access from CPU" gave me a huge performance boost, but may cause glitches in some games. I recommend enabling it unless it causes significant problems for you. — Also, definitely enable "OpenMP Texture Decoder" on this computer, as it has multiple cores and this offers a huge performance boost as well.

After this, hit OK, and then go back to the “Settings” menu and choose “DSP Settings”. I enabled the “DSP LLE on Thread" option, and haven’t had any issues. This is said to boost performance, and it worked OK on my computer.

In the future, pay attention to specific titles’ compatibilities in the WikiSome games require certain settings for optimal appearance, but individual settings may actually hinder or enhance performance on particular computers. Find settings that work for you, and see which games agree with these settings for optimum playability and enjoyability.

Another tip: Don’t put your computer somewhere where it’s poorly ventilated! Things that can block its vents (such as carpets, blankets/bedsheets, papers on desk, etc.) will increase the computer’s temperature and decrease performance!

Gaming + visual glitches

Because the game is emulated, you’re bound to encounter a glitch or two. So far, the only issue that I’ve encountered in Skyward Sword is that vines that were supposed to be shown on a cliff at one point weren’t there, and instead were only shown as shadows. Luckily, since I saw the shadows, I was able to keep playing. This may be due to my specific configuration above causing a glitch in exchange for boosted performance, but your results will vary. As mentioned, pay attention to specific titles’ compatibility in Dolphin’s Wiki, and watch out for other issues like this. The experience is not perfect, but it’s not bad either!

Results

Here are some shots of Skyward Sword running beautifully in Retina resolution, upscaled into high-definition:

Another screenshot of Zelda Skyward Sword running in Dolphin

Another screenshot of Zelda Skyward Sword running in Dolphin

The unforgettable “treasure chest opening” sound + experience, below … and yes, #zeldatreasurechest was an actual hashtag before I started:

… Pretty fun!

Bonus points: Since the Retina MacBook Pro has a built-in HDMI output, why not hook it up to the TV and play there? :)

Photo of Dolphin emulator on a MacBook Pro powering a TV with a game playing over HDMI

Tip: If using HDMI-out, be sure to configure your system’s sound output to go through the TV rather than through your Mac’s internal speakers. To do this, hold down the Option key and click the “Volume” icon in your Mac’s menu bar. Then, select your TV from there:

Screenshot of sound device controller selection on Mac OS X via menu bar

So, now I have a working Wii setup for my Mac. It suits my console gaming needs in a portable manner until the PlayStation 4 goes on sale this holiday season. I’m excited to get up-to-date in the Zelda series as well, and am definitely looking forward to purchasing new games and consoles from Nintendo in the future.

Comments are in a testing stage. Enabled since 2013/09/09.