Tutorial  Updated

Wii on Wii U Virtual Console: Injecting Games

Requirements:
WiiScrubber v1.40;
nfs2iso2nfs v0.5.4; it may require the Wii common Key. You can use wiiscrubber's key.bin renamed to wii_common_key.bin.
A clean rip of your Wii game;
The extracted contents of a Wii VC title for the Wii U (except the .nfs files);
-the 2 below require java to be installed-
jnustool (requires Wii U common key so you'll have to search online - hint: it begins with D7B0. Open the "config" file in notepad and paste the key inside, replacing [COMMONKEY]);
NUSpacker (must be @ihaveamac's version, requires Wii U common key as well)

Current limitations:
It's possible to use the gamepad to emulate ONLY the Classic Controller.
Wii Remote emulation is possible but there's no gyroscope or infrared commands (at least for now).
(Input emulation patches by @FIX94)

The game must be already compatible with the Classic Controller but that isn't a guarantee that it's going to work.
Here's a compatibility list: http://wiki.gbatemp.net/wiki/WiiU_VC_Wii_inject_compatibility_list

Integrity checks are still in place so only clean disc rips work.
The game iso must be pristine: untrimmed, unscrubbed and the partitions signed.
No homebrew, no mods, no wimmfi patched games until sigpatches are implemented.

Patched isos work now! Original idea by @Tock46!

Homebrew works now, even a special version of Nintendont by @FIX94

Trimmed isos still don't work, at least not isos trimmed by WiiScrubber.



HOW TO DO IT


0. Downloading a Wii VC Title
This may be illegal and I'm just telling you so you don't ever do it by mistake OK?
You can use the command line to download games' contents directly if you know the title id and title key.
I heard you can get them on a certain titlekeys site...

Once you have that, this is the command
Code:
java -jar JNUSTool.jar TITLEID TITLEKEY

NmNYbOu.png


Note: You should get a game that contains the latest revision of fw.img (r590), that's the only version supported by @FIX94's patches.
Here's some info you can use to verify that you have a good file:
Size: 1785497 bytes.
CRC32: E2F27E9B
MD5: 3CAF52A9A440EEE4F125A3AD22E305C8
SHA: A5A75EBF3164874830A1D5992495DE510AB3F74E

Now here's a list of some titles that contain the preferred fw.img (verified mostly by @fejich and @markehmus)
DONKEY KONG JUNGLE BEAT [VBXE01]
Kirby's Epic Yarn [VARE01]
Lost in Shadow [VA8E01]
Mario Strikers Charged [VBFE01]
Mario Super Sluggers [VBHE01]
Pandora's Tower [VAPE01]
PIKMIN 2 [VBTE01]
PIKMIN [VBUE01]
Resident Evil 4 Wii Edition [VBDE01]
Resident Evil The Umbrella Chronicles [VBWE01]
Rhythm Heaven Fever [VAKE01]
Sin and Punishment Star Successor [VALE01]
Super Mario Galaxy [VBKJ01]
Super Paper Mario [VBBE01]
The Legend of Zelda Skyward Sword [VANE01]
Trauma Team [VA6E01]
Wario Land Shake It [VBGE01]
WARIO WARE SMOOTH MOVES [VBVE01]





-----------------------------------------------

1. WiiScrubber
First setup WiiScrubber. Remember it needs the Wii common keys so run MakeKeyBin.exe first and do as it says.
Run it and open you iso. Right-click the UPDATE partition and select "Delete partition". Confirm.
uE02Phr.png


Now click on the + box to expand the DATA partition, then expand partition.bin.
Right click tmd.bin, select "Extract" and save it.
Do the same with ticket.bin.
jJPl3Wy.png


Rename the extracted ticket.bin to rvlt.tik
Rename the extracted tmd.bin to rvlt.tmd

Copy/move both files to the "code" folder of the Wii VC title.

Your iso is now ready and you can close WiiScrubber.


2. nfs2iso2nfs
Move your iso to the "content" folder of the Wii VC. Rename the file to "game.iso".
The content folder should contain only game.iso and the "assets" folder. Delete any nfs files that are still present.

Copy nfs2iso2nfs.exe to the content folder and run it. If everything is in place, it will begin the conversion process.
It should take around 15 minutes. Its console window will close when it's finished.
Once it ends you can delete your iso file and nfs2iso2nfs.exe (and wii_common_key.bin if it exists).
The content folder should contain only the nfs files and the "assets" folder.

Optional: You can enable Classic Controller emulation for playing using only the gamepad.
Open meta.xml (it's in the meta folder) in notepad.
Look for the line
Code:
<drc_use type="unsignedInt" length="4">1</drc_use>

replace it with
Code:
<drc_use type="unsignedInt" length="4">65537</drc_use>
and save the file.
Note that this will only work if the game supports the Classic Controller.
If it doesn't either it won't boot or you won't be able to do anything and only the gamepad's power button will work.
Here's a list of such games: https://wiki.gbatemp.net/wiki/List_of_Wii_games_compatible_with_Classic_Controller


3.NUSpacker
The final part, building the installation files.
NUSpacker requires the Wii U common key. You should find it online and then open the file "encryptKeyWith" with
notepad and paste the key inside (hint: it begins with D7B0)

It's also a command line tool so you'll have to write down the commands, or simply create a new text file,
write the command inside, save it and change the extension from .txt to .bat

I recommend copying the Wii VC folder (that contains the other 3 folders, code, content and meta) to nuspacker's folder.
That will make everything easier.

The command works like this (replace with the names of your own folders)
If you folders have spaces in their names, enclose them in quotation marks, like "Just Dance".
Code:
java -jar nuspacker.jar -in GAME_FOLDER -out INSTALATION_FILES_FOLDER

Wiait until it finishes the process.
Now just copy the folder with the installation data to the "install" folder SD card, run a CFW and install it with WUP Installer GX2!

PS: If you make a nonfunctional game, remember to uninstall it before trying again.
If you install a fiunctional game over a broken installation, it will still appear as broken.
 

Attachments

  • WiiScrubber [V-1.40 A-2009].rar
    528.8 KB · Views: 1,375
  • NUSpacker.zip
    59.6 KB · Views: 1,330
  • jnustool.zip
    99.6 KB · Views: 1,418
  • nfs2iso2nfs v0.5.4.zip
    11.3 KB · Views: 865
Last edited by piratesephiroth, , Reason: updated nfs2nfs2iso

ShadowOne333

QVID PRO QVO
Editorial Team
Joined
Jan 17, 2013
Messages
12,197
Trophies
2
XP
33,811
Country
Mexico
Is someone good enough with compiling Wii apps willing to give WiiXplorer a try to include the libwiidrc library that Fix94 released?
I tried it myself, got the libwiidrc to compile fine, however I am having lots of issues to compile a clean build of WiiXplorer at the moment with the latest devkitPro in Linux.

Here's the source:
https://sourceforge.net/p/wiixplorer/code/HEAD/tree/
 

leseratte

Wiimmfi Team
Member
Joined
Jun 2, 2012
Messages
453
Trophies
1
XP
1,859
Country
Germany
I may be able to try that next week. I remember the DevkitPro interfaces changed somewhen in the past, so I kept an old DevkitPro for Wii apps.

I remember I updated my DevkitPro to compile WiiU stuff, then that failed to compile Wii stuff, so I kept an old devkit for Wii stuff and the new one for WiiU stuff.
 
  • Like
Reactions: ShadowOne333

Feffe

Well-Known Member
Member
Joined
Oct 12, 2008
Messages
225
Trophies
1
XP
2,114
Country
Italy
@FIX94 Fix, I wanted to thank you for your hard work, between CHBC, Nintendont and the ZL/ZR patch you turned Wii U into the much pleasure experience :) I know nothing about coding but from your post I can slightly infer how hard it is to rewrite Nintendont.

Who knows, maybe with an official Nintendont-on-Gamepad that console could have sold better...

So, huge thanks :)

(Of course, thanks to @piratesephiroth @ploggy et all for all the coding and the testing. To think two weeks ago it was impossible to to use the Gamepad on vWii...)
 

leseratte

Wiimmfi Team
Member
Joined
Jun 2, 2012
Messages
453
Trophies
1
XP
1,859
Country
Germany
@FIX94 I've looked into your wiiDRC lib and saw that you invalidate 9 bytes from the I2C bus, but you only read 2 & 3 for buttons and 4-7 for the sticks (and 8 for "extra", whatever that might be). Wouldn't it be possible that byte 0, 1 or 8 contained coordinates of the touchscreen? Or do you know what these bytes contain? (Sorry if what I wrote happens to be bullshit I don't know anything about I2C and its protocol).
 

FIX94

Former Staff
Former Staff
Joined
Dec 3, 2009
Messages
7,284
Trophies
0
Age
29
Location
???
XP
11,238
Country
Germany
@FIX94 I've looked into your wiiDRC lib and saw that you invalidate 9 bytes from the I2C bus, but you only read 2 & 3 for buttons and 4-7 for the sticks (and 8 for "extra", whatever that might be). Wouldn't it be possible that byte 0, 1 or 8 contained coordinates of the touchscreen? Or do you know what these bytes contain?
0 and 1 are just counting up by 1 on every I2C transfer and byte 8 (the extra one) reports on pressing in the sticks and also the tv button (you can see that in the libwiidrc header). No extra data can be transfered over without serious modifications of the actual gamepad firmware.
 
  • Like
Reactions: DarthDub

wolf-snake

Well-Known Member
Member
Joined
Feb 5, 2009
Messages
1,556
Trophies
2
XP
3,009
Country
Mexico
Ok i recharged my classic controller and gave Metal Slug another go and works perfectly using the classic controller, it doesn't crash anymore and can play just fine with it so the issue here was the gamepad emulation is quite buggy in the 1.0.5b release of the script. So is there a way to dissable the gamepad emulation? i'm sure that with that dissabled the gamepad will be able to work flawlessly.
 

ShadowOne333

QVID PRO QVO
Editorial Team
Joined
Jan 17, 2013
Messages
12,197
Trophies
2
XP
33,811
Country
Mexico
Ok i recharged my classic controller and gave Metal Slug another go and works perfectly using the classic controller, it doesn't crash anymore and can play just fine with it so the issue here was the gamepad emulation is quite buggy in the 1.0.5b release of the script. So is there a way to dissable the gamepad emulation? i'm sure that with that dissabled the gamepad will be able to work flawlessly.
Do you get a prompt before booting the game which says something like "This game is compatible with the Gamepad. Would you like to enable it?"?
If you do, choose No.
 

wolf-snake

Well-Known Member
Member
Joined
Feb 5, 2009
Messages
1,556
Trophies
2
XP
3,009
Country
Mexico
Do you get a prompt before booting the game which says something like "This game is compatible with the Gamepad. Would you like to enable it?"?
If you do, choose No.
That's how i'm playing with the Classic Controller right now. Last time i did enable it so i could use the Wii U gamepad but it would think it was a horizontal Wiimote and it would crash every time i tried to change controller configuration.
 

AlanLC

Well-Known Member
Member
Joined
Aug 18, 2014
Messages
413
Trophies
0
Age
45
XP
2,597
Country
Brazil
Last edited by AlanLC,

wicksand420

Well-Known Member
Member
Joined
Nov 13, 2016
Messages
2,787
Trophies
1
Age
39
XP
2,295
Country
United States
Ok i recharged my classic controller and gave Metal Slug another go and works perfectly using the classic controller, it doesn't crash anymore and can play just fine with it so the issue here was the gamepad emulation is quite buggy in the 1.0.5b release of the script. So is there a way to dissable the gamepad emulation? i'm sure that with that dissabled the gamepad will be able to work flawlessly.
I used the 1.0.5b script to make Harvest Moon Tree of Tranquility and the gamepad works flawlessly, everything works, sticks, triggrers, all buttons.
 
  • Like
Reactions: DarthDub

AlanLC

Well-Known Member
Member
Joined
Aug 18, 2014
Messages
413
Trophies
0
Age
45
XP
2,597
Country
Brazil
Already did that. There are no black borders in WiiU mode. Only in vWii / VC.

Here the Wii games are not with black bars since the configuration of the Wii U (1080P) is like in the Picture and the TV in 16: 9
 

Attachments

  • 21745074_1420304991409921_1115316348_o.jpg
    21745074_1420304991409921_1115316348_o.jpg
    28.2 KB · Views: 182
Last edited by AlanLC,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Xdqwerty @ Xdqwerty: