Version 1.8 of "64Inject" is the final version of independent development. "64Inject" was the base and is integrated into "Phacox's Injector", and its development continues within this.
Thanks to all who supported this thread.
Thanks to all who supported this thread.
Hello,
64Inject is a program that allows you to inject games into the Nintendo 64 virtual console of the Wii U. Focused on streamlining the testing of different combination of ROM, ".ini" configuration file and base game.
Features
- Two modes of use, graphic and by commands.
- Contextual help and two languages, English and Spanish.
- Virtual console configuration, easily disable the dark filter, aspect ratio and display scale of the game.
- Simplify the incorporation of the ".ini" configuration file for the game.
- Support for ROM formats *.z64, *.n64, *.v64 and *.u64
- Support images *.png, *.jpg and *.bmp
- The Title ID reflects if you have used the same combination of ROM, ".ini" configuration file and base game.
- Option to package the result (WUP Installer format) or leave it unpacked (Loadiine format).
- Define folders for your ROM collection, ".ini" configuration files and image gallery.
- Use packed Wii U virtual console games (files, title.cert, title.tik, title.tmd, "* .app" and "* .h3") or unpacked (folders, code, content and meta) as base.
- Multiple options through the command window, you can define each thing or simply an input folder and an output folder, or combine (see examples).
Have the Wii U common key (look it up on Google).
To pack or unpack in WUP format you must have Java installed.
You can get the "base" games with USBHelper or similar. I recommend F-Zero (USA) for being the last version they released.
Use in graphic mode
Main
In this section you only need to choose a ROM (it can be from any region, USA, EUR, JPN), put the name that will appear in the console menus and load a base (you can leave the one that is already loaded).
You can optionally change the Virtual Console settings:
- Disable the dark filter.
- Change the aspect ratio from 4:3 to 16:9 (this stretches the image if the ROM does not have a widescreen patch)
- Change the display scale of the game.
- Choose the configuration file that corresponds to the game you are going to inject (not all games have a configuration file and partly because of that they do not work in the virtual console). You can download all existing configuration files here.
Images
In this section you can modify the menu icon and the game presentation images.
You can load only the image of the title screen and it will be updated in all templates, select the year of launch of the game, the number of players it supports and if you want to show or hide the name you gave the game.
Packing
To enable the buttons, first choose a ROM, name the game and load a base.
By clicking on the "Pack" button you will have to select a folder where the game will be placed in WUP Installer format (files, title.cert, title.tik, title.tmd, "* .app" and "* .h3"). If you do not have Java installed or have not yet set the Wii U common key, it will result in a failed injection (technically the injection is performed, but the result cannot be packed).
By clicking on the "Not pack" button, you must select a folder where the game will be placed in Loadiine format (folders, code, content and meta).
Regardless of whether it fails or not, an injection will show the program log file.
Settings
In this section you can enter the Wii U common key, this will allow you to pack and unpack games in WUP format.
You can change the language of the program and disable contextual help.
You can also choose the folders of your ROM, image and configuration files ".ini" collections.
- Choosing the ROM collection folder allows you to go directly to that folder when you click on the button to choose a ROM in the Main section.
- Choosing the configuration file collection folder allows you to go directly to that folder when you click on the button to choose a configuration file in the Main section.
- Choosing the image collection folder allows you to go directly to that folder when you click on the "Icon", "GamePad", "TV" buttons in the Images section.
In this section you only need to choose a ROM (it can be from any region, USA, EUR, JPN), put the name that will appear in the console menus and load a base (you can leave the one that is already loaded).
You can optionally change the Virtual Console settings:
- Disable the dark filter.
- Change the aspect ratio from 4:3 to 16:9 (this stretches the image if the ROM does not have a widescreen patch)
- Change the display scale of the game.
- Choose the configuration file that corresponds to the game you are going to inject (not all games have a configuration file and partly because of that they do not work in the virtual console). You can download all existing configuration files here.
Images
In this section you can modify the menu icon and the game presentation images.
You can load only the image of the title screen and it will be updated in all templates, select the year of launch of the game, the number of players it supports and if you want to show or hide the name you gave the game.
Packing
To enable the buttons, first choose a ROM, name the game and load a base.
By clicking on the "Pack" button you will have to select a folder where the game will be placed in WUP Installer format (files, title.cert, title.tik, title.tmd, "* .app" and "* .h3"). If you do not have Java installed or have not yet set the Wii U common key, it will result in a failed injection (technically the injection is performed, but the result cannot be packed).
By clicking on the "Not pack" button, you must select a folder where the game will be placed in Loadiine format (folders, code, content and meta).
Regardless of whether it fails or not, an injection will show the program log file.
Settings
In this section you can enter the Wii U common key, this will allow you to pack and unpack games in WUP format.
You can change the language of the program and disable contextual help.
You can also choose the folders of your ROM, image and configuration files ".ini" collections.
- Choosing the ROM collection folder allows you to go directly to that folder when you click on the button to choose a ROM in the Main section.
- Choosing the configuration file collection folder allows you to go directly to that folder when you click on the button to choose a configuration file in the Main section.
- Choosing the image collection folder allows you to go directly to that folder when you click on the "Icon", "GamePad", "TV" buttons in the Images section.
Help comand:
Examples:
First use
>64inject load-key XXXXXXXXXXXXXXXXXX
Load the Common Key to be able to decrypt and encrypt NUS content.
>64inject load-base "c:\path\to\n64 game [00050000XXXXXXXX]"
Load the game "n64 game [00050000XXXXXXXX]" as the base for the injections.
Simple injection
>64inject -name "Game Name" -rom "c:\path\to\some n64 rom.z64" -ini "c:\path\to\some n64 vc INI file.ini"
Change the ROM of the base game and put the specified INI file. Use the specified name. Encrypts the result.
Simpler injection
>64inject -name "Game Name" -in "c:\path\to\input folder"
Previously the "input folder" must contain the file "rom.z64" and optionally the files "vc.ini", "icon.png", "tv.png" and "drc.png". Encrypts the result.
Even simpler injection
>64inject -rom "c:\path\to\some n64 rom.z64"
Change the ROM of the base game and put an empty INI file. Use the internal name of the ROM. Encrypts the result.
Advanced injection
>64inject -base "c:\path\to\other n64 game [00050000XXXXXXXX]" -name "Game Name" -in "c:\path\to\input folder" -rom "c:\path\to\some n64 rom.z64" -icon "c:\path\to\some Image.jpg" -out "c:\path\to\output folder" not-encrypt
Load the game "other n64 game [00050000XXXXXXXX]" as a base. Use the indicated rom and icon (skip the search for the files "rom.z64" and "icon.png"), if the "input folder" contains the files "vc.ini", "tv.png" or "drc .png ", will use them for the injection. Put the result unencrypted in the folder "output folder".
Use: 64inject [-base folder_path] [-name short_name] [-longname name_line_1 name_line_2] [no-darkfilter] [widescreen] [-zoom value] [-in folder_path] [-rom file_path] [-ini file_path] [-icon file_path] [-tv file_path] [-drc file_path] [-out folder_path] [not-encrypt]
Or: 64inject help
Or: 64inject load-key common_key
Or: 64inject load-base folder_path
Or: 64inject create-image [-frame file_path] [-title file_path] [-name short_name|-longname name_line_1 name_line_2] [-r value] [-p value] [-out folder_path]
Or: 64inject create-icon [-frame file_path] [-title file_path] [-out folder_path]
Or: 64inject pack|unpack -in folder_path [-out folder_path]
Options:
help
Show this help message.
load-key common_key
The Wii U Common Key is required to pack and unpack NUS CONTENT.
load-base folder_path
Path to the N64 VC game that will be copied internally "base" where the ROM will be injected.
create-image
Indicates that must create an image for the boot screen.
create-icon
Indicates that must create an icon to represent a game.
pack
Indicates that the NUS CONTENT input will be encrypted.
unpack
Indicates that the NUS CONTENT input will be decrypted.
-base folder_path
Path to the N64 VC game where the ROM will be injected.
The process does not modify the N64 VC game since it creates an internal copy of the game "base", if not specified, the previous loaded base will be used.
-name short_name
A short game name to show.
If not specified, the name inside ROM will be used.
If the create-image option is present, it indicates the name of a single line that will be placed on the frame image.
-longname name_line_1 name_line_2
A long game name to show can be two lines.
If not specified, the short name will be used.
If the create-image option is present, it indicates the name of two lines that will be placed on the frame image.
no-darkfilter
Indicates that the dark filter should be removed from the layout.
If not specified, the dark filter will remain active.
widescreen
Indicates that the masking pillarbox must be removed from the layout.
If not specified, the masking pillarbox will remain active.
-zoom value
A value between 50 and 200 that represents the zoom percentage of the game image. If not specified, the value 100 will be used.
-in folder_path
Path where the "rom.z64", "vc.ini", "icon.png", "tv.png" and "drc.png" files are taken.
If the pack|unpack option is present it indicates the path to the NUS CONTENT.
-rom file_path
Path to the N64 game ROM.
If not specified, the "rom.z64" file will be searched in the "-in" folder.
-ini file_path
Path to the N64 VC INI file.
If not specified, the "vc.ini" file will be searched in the "-in" folder, if not found an empty INI file will be injected.
-icon file_path
Path to an image file to use as icon (*.png, *.jpg or *.bmp).
If not specified, the "icon.png" file will be searched in the "-in" folder, if not found a default image will be used.
-tv file_path
Path to an image file to use as boot tv (*.png, *.jpg or *.bmp).
If not specified, the "tv.png" file will be searched in the "-in" folder, if not found a default image will be used.
-drc file_path
Path to an image file to use as boot drc (*.png, *.jpg or *.bmp).
If not specified, the "drc.png" file will be searched in the "-in" folder, if not found the boot tv image will be used.
-out folder_path
Path where the result will be put.
If not specified, the root folder of 64Inject will be used.
not-encrypt
Indicates that the result should not be encrypted, by default is encrypted.
-title file_path
Path to the image of the title screen, which will be placed on the background by default. If not specified, a black box will be placed.
-frame file_path
Path to the frame image, which will be placed on the title screen.
If not specified, the background will be seen by default.
-r value
A value greater than or equal to 1996, that represents the launch year of the game, will be placed on the frame image.
-p value
A value between 1 and 4, that represents the number of players that the game supports, will be placed on the frame image.
Note:
If the paths or names contain spaces put them in quotes.
Or: 64inject help
Or: 64inject load-key common_key
Or: 64inject load-base folder_path
Or: 64inject create-image [-frame file_path] [-title file_path] [-name short_name|-longname name_line_1 name_line_2] [-r value] [-p value] [-out folder_path]
Or: 64inject create-icon [-frame file_path] [-title file_path] [-out folder_path]
Or: 64inject pack|unpack -in folder_path [-out folder_path]
Options:
help
Show this help message.
load-key common_key
The Wii U Common Key is required to pack and unpack NUS CONTENT.
load-base folder_path
Path to the N64 VC game that will be copied internally "base" where the ROM will be injected.
create-image
Indicates that must create an image for the boot screen.
create-icon
Indicates that must create an icon to represent a game.
pack
Indicates that the NUS CONTENT input will be encrypted.
unpack
Indicates that the NUS CONTENT input will be decrypted.
-base folder_path
Path to the N64 VC game where the ROM will be injected.
The process does not modify the N64 VC game since it creates an internal copy of the game "base", if not specified, the previous loaded base will be used.
-name short_name
A short game name to show.
If not specified, the name inside ROM will be used.
If the create-image option is present, it indicates the name of a single line that will be placed on the frame image.
-longname name_line_1 name_line_2
A long game name to show can be two lines.
If not specified, the short name will be used.
If the create-image option is present, it indicates the name of two lines that will be placed on the frame image.
no-darkfilter
Indicates that the dark filter should be removed from the layout.
If not specified, the dark filter will remain active.
widescreen
Indicates that the masking pillarbox must be removed from the layout.
If not specified, the masking pillarbox will remain active.
-zoom value
A value between 50 and 200 that represents the zoom percentage of the game image. If not specified, the value 100 will be used.
-in folder_path
Path where the "rom.z64", "vc.ini", "icon.png", "tv.png" and "drc.png" files are taken.
If the pack|unpack option is present it indicates the path to the NUS CONTENT.
-rom file_path
Path to the N64 game ROM.
If not specified, the "rom.z64" file will be searched in the "-in" folder.
-ini file_path
Path to the N64 VC INI file.
If not specified, the "vc.ini" file will be searched in the "-in" folder, if not found an empty INI file will be injected.
-icon file_path
Path to an image file to use as icon (*.png, *.jpg or *.bmp).
If not specified, the "icon.png" file will be searched in the "-in" folder, if not found a default image will be used.
-tv file_path
Path to an image file to use as boot tv (*.png, *.jpg or *.bmp).
If not specified, the "tv.png" file will be searched in the "-in" folder, if not found a default image will be used.
-drc file_path
Path to an image file to use as boot drc (*.png, *.jpg or *.bmp).
If not specified, the "drc.png" file will be searched in the "-in" folder, if not found the boot tv image will be used.
-out folder_path
Path where the result will be put.
If not specified, the root folder of 64Inject will be used.
not-encrypt
Indicates that the result should not be encrypted, by default is encrypted.
-title file_path
Path to the image of the title screen, which will be placed on the background by default. If not specified, a black box will be placed.
-frame file_path
Path to the frame image, which will be placed on the title screen.
If not specified, the background will be seen by default.
-r value
A value greater than or equal to 1996, that represents the launch year of the game, will be placed on the frame image.
-p value
A value between 1 and 4, that represents the number of players that the game supports, will be placed on the frame image.
Note:
If the paths or names contain spaces put them in quotes.
First use
>64inject load-key XXXXXXXXXXXXXXXXXX
Load the Common Key to be able to decrypt and encrypt NUS content.
>64inject load-base "c:\path\to\n64 game [00050000XXXXXXXX]"
Load the game "n64 game [00050000XXXXXXXX]" as the base for the injections.
Simple injection
>64inject -name "Game Name" -rom "c:\path\to\some n64 rom.z64" -ini "c:\path\to\some n64 vc INI file.ini"
Change the ROM of the base game and put the specified INI file. Use the specified name. Encrypts the result.
Simpler injection
>64inject -name "Game Name" -in "c:\path\to\input folder"
Previously the "input folder" must contain the file "rom.z64" and optionally the files "vc.ini", "icon.png", "tv.png" and "drc.png". Encrypts the result.
Even simpler injection
>64inject -rom "c:\path\to\some n64 rom.z64"
Change the ROM of the base game and put an empty INI file. Use the internal name of the ROM. Encrypts the result.
Advanced injection
>64inject -base "c:\path\to\other n64 game [00050000XXXXXXXX]" -name "Game Name" -in "c:\path\to\input folder" -rom "c:\path\to\some n64 rom.z64" -icon "c:\path\to\some Image.jpg" -out "c:\path\to\output folder" not-encrypt
Load the game "other n64 game [00050000XXXXXXXX]" as a base. Use the indicated rom and icon (skip the search for the files "rom.z64" and "icon.png"), if the "input folder" contains the files "vc.ini", "tv.png" or "drc .png ", will use them for the injection. Put the result unencrypted in the folder "output folder".
Two warning messages are considered, when 64Inject is started.
One occurs when Java is not detected, which is necessary to run both NUSPacker and JNUSTool.
The second occurs when NUSPacker or JNUSTool are not detected. 64Inject will work, although these tools are not present, but it will not be able to decipher or encrypt NUS content, if it is requested to decrypt an encrypted base game it will simply detect it as invalid, if it is requested to encrypt the result, it will perform the injection in the base game but it will not can complete the process by launching a failed injection message.
One occurs when Java is not detected, which is necessary to run both NUSPacker and JNUSTool.
The second occurs when NUSPacker or JNUSTool are not detected. 64Inject will work, although these tools are not present, but it will not be able to decipher or encrypt NUS content, if it is requested to decrypt an encrypted base game it will simply detect it as invalid, if it is requested to encrypt the result, it will perform the injection in the base game but it will not can complete the process by launching a failed injection message.
WiiU VC N64 inject compatibility list
Wii U Virtual Console N64 Research by CORE
All existing ".ini" configuration files made by nintendo
Wii U Virtual Console N64 Research by CORE
All existing ".ini" configuration files made by nintendo
Changelog
1.8 FINAL (2019-12-02)
- Now set the names (short and long) as the title of all regions.
- Show more relevant information in the log file.
- Change the way to calculate the Title ID.
- Other corrections and minor changes.
1.7 (2019-10-15)
- Leave the beta phase.
- Includes VCN64Config Editor 1.1.
- Fixes an error that produced invalid injections if it did not go through the Images section before Packing section.
- Now load the log file every time the Packing section is loaded.
- Prevents errors when the VCN64Config Editor program is not available.
- Other corrections and minor changes.
1.6 beta (2019-10-11)
- Includes the Wii U N64 virtual console configuration file editor.
- Missing files to validate a base game are best indicated in the program log file (thanks piratesephiroth).
1.5 beta (2019-09-16)
- Redesigned graphical user interface.
- Contextual help and two languages, English and Español.
- It is no longer necessary to correctly load an ".ini" file to enable packing.
- Now identify all the base games correctly.
- Change the way the program settings are saved.
1.4 beta (2019-07-22)
- Usability improvements, the graphic mode saves the output folder. Now the common key is no case sensitive.
- When an injection error occurs, the user is instructed to find more information in the log file.
- Other minor fixes.
1.3 beta (2019-07-11)
- By default it creates a log file (both in CMD mode and in GUI mode) with the messages of the injection process of the command line.
- Minor corrections.
1.2 beta (2019-05-16)
- Changed the layout of some elements of the GUI form.
- Change the way to calculate the Title ID.
- Minor corrections and improvements in stability.
1.1.1 beta (2019-04-24)
- Fixes an error that prevented packing NUS content without a loaded base.
1.1 beta (2019-04-22)
- Change version of .Net Framework from 2.0 to 3.5.
- Fixes an error that caused the arguments not to be compiled correctly from the command line.
- Show more messages in the injection process on the command line to detect problems.
1.0 beta (2019-04-08)
- Initial release.
- Now set the names (short and long) as the title of all regions.
- Show more relevant information in the log file.
- Change the way to calculate the Title ID.
- Other corrections and minor changes.
1.7 (2019-10-15)
- Leave the beta phase.
- Includes VCN64Config Editor 1.1.
- Fixes an error that produced invalid injections if it did not go through the Images section before Packing section.
- Now load the log file every time the Packing section is loaded.
- Prevents errors when the VCN64Config Editor program is not available.
- Other corrections and minor changes.
1.6 beta (2019-10-11)
- Includes the Wii U N64 virtual console configuration file editor.
- Missing files to validate a base game are best indicated in the program log file (thanks piratesephiroth).
1.5 beta (2019-09-16)
- Redesigned graphical user interface.
- Contextual help and two languages, English and Español.
- It is no longer necessary to correctly load an ".ini" file to enable packing.
- Now identify all the base games correctly.
- Change the way the program settings are saved.
1.4 beta (2019-07-22)
- Usability improvements, the graphic mode saves the output folder. Now the common key is no case sensitive.
- When an injection error occurs, the user is instructed to find more information in the log file.
- Other minor fixes.
1.3 beta (2019-07-11)
- By default it creates a log file (both in CMD mode and in GUI mode) with the messages of the injection process of the command line.
- Minor corrections.
1.2 beta (2019-05-16)
- Changed the layout of some elements of the GUI form.
- Change the way to calculate the Title ID.
- Minor corrections and improvements in stability.
1.1.1 beta (2019-04-24)
- Fixes an error that prevented packing NUS content without a loaded base.
1.1 beta (2019-04-22)
- Change version of .Net Framework from 2.0 to 3.5.
- Fixes an error that caused the arguments not to be compiled correctly from the command line.
- Show more messages in the injection process on the command line to detect problems.
1.0 beta (2019-04-08)
- Initial release.
The tools packaged with this application belong to their respective developers.
Credits
NUSPacker by timogus.
JNUSTool by Maschell.
Last edited by phacox_cll,