Skip to content

Instantly share code, notes, and snippets.

@bmaupin
Last active April 2, 2025 09:31
Show Gist options
  • Save bmaupin/93d31e1b2d738ae656b9d3617e19622b to your computer and use it in GitHub Desktop.
Save bmaupin/93d31e1b2d738ae656b9d3617e19622b to your computer and use it in GitHub Desktop.
Run New Super Ultimate Injector with Wine

Installation

Prerequisites

Install NSUI

  1. Download NSUI from https://gbatemp.net/threads/discussion-new-super-ultimate-injector-nsui.500376/

  2. Create a new Wine prefix and install .NET 4.6

    export WINEARCH=win32
    export WINEPREFIX=~/.local/share/wineprefixes/nsui
    winetricks -q dotnet46
    

    ⓘ If dotnet46 installation fails, try dotnet48 instead:

    winetricks -q dotnet48
    

    ⚠️ .NET 4.6 or greater is required for the image download feature to work

  3. Apply a registry fix to force .NET to use TLS 1.2

    echo 'Windows Registry Editor Version 5.00
    
    [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319]
    "SchUseStrongCrypto"=dword:00000001
    
    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319]
    "SchUseStrongCrypto"=dword:00000001' > sslfix.reg
    wine regedit sslfix.reg
    rm sslfix.reg
    
  4. Extract NSUI to Wine prefix

    unzip Release_beta27.zip
    mv Release $WINEPREFIX/drive_c/NSUI
    
  5. Change the language, e.g.

    sed -i.bak 's/language=.*/language=en/' $WINEPREFIX/drive_c/NSUI/config.ini
    

    Available languages are: de, en, es, ru

Create desktop entry

  1. (Optional) Extract application icon

    cd ~/.local/share/wineprefixes/nsui/drive_c/NSUI/
    7z x New\ Super\ Ultimate\ Injector\ for\ 3DS.exe .rsrc/ICON -aoa
    cd -
    
  2. Create the desktop entry

    echo "[Desktop Entry]
    Type=Application
    Name=New Super Ultimate Injector for 3DS
    Exec=env WINEPREFIX=/home/$USER/.local/share/wineprefixes/nsui wine \"/home/$USER/.local/share/wineprefixes/nsui/drive_c/NSUI/New Super Ultimate Injector for 3DS.exe\"
    Icon=/home/$USER/.local/share/wineprefixes/nsui/drive_c/NSUI/.rsrc/ICON/5.ico
    Terminal=false" > ~/.local/share/applications/nsui.desktop
    

Open NSUI

Open with the desktop entry, or:

export WINEPREFIX=~/.local/share/wineprefixes/nsui; wine $WINEPREFIX/drive_c/NSUI/New\ Super\ Ultimate\ Injector\ for\ 3DS.exe

Troubleshooting

The request was aborted: Could not create SSL/TLS secure channel.

Make sure you're using .NET 4.6 or greater. See here for more information:

Could not find Wine Gecko. HTML rendering will be disabled.

Install Wine Gecko (this should not be needed on newer versions of Wine (6+?) as Wine will automatically prompt you to install Gecko as needed)

wget http://dl.winehq.org/wine/wine-gecko/2.47.1/wine-gecko-2.47.1-x86.msi
wget http://dl.winehq.org/wine/wine-gecko/2.47.1/wine-gecko-2.47.1-x86_64.msi
WINEPREFIX=~/.local/share/wineprefixes/nsui wine msiexec /i wine-gecko-2.47.1-x86.msi
WINEPREFIX=~/.local/share/wineprefixes/nsui wine msiexec /i wine-gecko-2.47.1-x86_64.msi
@matheusflavio
Copy link

matheusflavio commented Sep 1, 2021

Thanks for the guide man, you're a life saver!
By now I'm trying to make it work with version 28 of nsui that I had saved on my windows. Only changed destination folder and tried to run. I've gotten 'you need .net 4.5.2', and pretty sure that it's easy to make it work. Maybe I could never use this on my linux (Mint 20.2) without your guide. Thank you so much

@matheusflavio
Copy link

It was quit easy making this work for version 28, just replaced that line:
winetricks -q dotnet46
for this one:
winetricks -q dotnet452
Can't actually use image download feature, though, but I'm not sure if it works even on windows.

@bmaupin
Copy link
Author

bmaupin commented Sep 1, 2021

It was quit easy making this work for version 28, just replaced that line:
winetricks -q dotnet46
for this one:
winetricks -q dotnet452
Can't actually use image download feature, though, but I'm not sure if it works even on windows.

The image download feature will only work with .NET 4.6 and above as per https://gist.github.com/bmaupin/981c496ca35093dcbccb7c365c76bbfc

Cheers!

@Bisc0tt1
Copy link

Bisc0tt1 commented Mar 9, 2024

Followed these instructions to a tee and the program is in a mostly functional state, except for creating the virtual console banner, which does not display anything in the preview despite entering text. I thought that it might've been a font rendering issue, but even after installing allfonts into the prefix the issue remains. It probably goes beyond a simple display issue, even the exported .cia has an empty banner.
Using wine 9.3 and installed dotnet48

@rileyJones
Copy link

This fixes the empty banner:

winetricks -q gdiplus

@RubyRaven6
Copy link

RubyRaven6 commented Apr 2, 2025

I've followed the installation to a T, though I've run into the same "Unhandled Exception" error as the very first comment

Error Message for NES project
See the end of this message for details on invoking 
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.NullReferenceException: Object reference not set to an instance of an object.
   at New_Super_Ultimate_Injector_for_3DS.NES.NESProjectProperties.set_InjectionMethod(NESInjectionMethod value) in C:\workspace\cs\New-Super-Ultimate-Injector-for-3DS\New Super Ultimate Injector for 3DS\New Super Ultimate Injector for 3DS\ProjectProperties.cs:line 1173
   at New_Super_Ultimate_Injector_for_3DS.NES.frmNESInject..ctor() in C:\workspace\cs\New-Super-Ultimate-Injector-for-3DS\New Super Ultimate Injector for 3DS\New Super Ultimate Injector for 3DS\NES\frmNESInject.cs:line 756
   at New_Super_Ultimate_Injector_for_3DS.frmMain.famicomNESInjectToolStripMenuItem_Click(Object sender, EventArgs e) in C:\workspace\cs\New-Super-Ultimate-Injector-for-3DS\New Super Ultimate Injector for 3DS\New Super Ultimate Injector for 3DS\frmMain.cs:line 230
   at System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
   at System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e)
   at System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
   at System.Windows.Forms.ToolStripItem.FireEventInteractive(EventArgs e, ToolStripItemEventType met)
   at System.Windows.Forms.ToolStripItem.FireEvent(EventArgs e, ToolStripItemEventType met)
   at System.Windows.Forms.ToolStripMenuItem.ProcessCmdKey(Message& m, Keys keyData)
   at System.Windows.Forms.ToolStripManager.ProcessShortcut(Message& m, Keys shortcut)
   at System.Windows.Forms.ToolStripManager.ProcessCmdKey(Message& m, Keys keyData)
   at System.Windows.Forms.ContainerControl.ProcessCmdKey(Message& msg, Keys keyData)
   at System.Windows.Forms.Form.ProcessCmdKey(Message& msg, Keys keyData)
   at System.Windows.Forms.Control.ProcessCmdKey(Message& msg, Keys keyData)
   at System.Windows.Forms.Control.ProcessCmdKey(Message& msg, Keys keyData)
   at System.Windows.Forms.Control.ProcessCmdKey(Message& msg, Keys keyData)
   at System.Windows.Forms.ContainerControl.ProcessCmdKey(Message& msg, Keys keyData)
   at System.Windows.Forms.Control.ProcessCmdKey(Message& msg, Keys keyData)
   at System.Windows.Forms.Control.PreProcessMessage(Message& msg)
   at System.Windows.Forms.Control.PreProcessControlMessageInternal(Control target, Message& msg)
   at System.Windows.Forms.Application.ThreadContext.PreTranslateMessage(MSG& msg)


************** Loaded Assemblies **************
mscorlib
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.3761.0 built by: NET48REL1
    CodeBase: file:///C:/windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
----------------------------------------
New Super Ultimate Injector for 3DS
    Assembly Version: 0.27.0.0
    Win32 Version: 0.27.0.0
    CodeBase: file:///C:/NSUI/New%20Super%20Ultimate%20Injector%20for%203DS.exe
----------------------------------------
System.Windows.Forms
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.3761.0 built by: NET48REL1
    CodeBase: file:///C:/windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.3761.0 built by: NET48REL1
    CodeBase: file:///C:/windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.3761.0 built by: NET48REL1
    CodeBase: file:///C:/windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Core
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.3761.0 built by: NET48REL1
    CodeBase: file:///C:/windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Configuration
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.3761.0 built by: NET48REL1
    CodeBase: file:///C:/windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.3761.0 built by: NET48REL1
    CodeBase: file:///C:/windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
MdiTabControl
    Assembly Version: 1.1.3159.34934
    Win32 Version: 1.1.3159.34934
    CodeBase: file:///C:/NSUI/MdiTabControl.DLL
----------------------------------------
Microsoft.VisualBasic
    Assembly Version: 10.0.0.0
    Win32 Version: 14.8.3761.0 built by: NET48REL1
    CodeBase: file:///C:/windows/Microsoft.Net/assembly/GAC_MSIL/Microsoft.VisualBasic/v4.0_10.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll
----------------------------------------
Microsoft.GeneratedCode
    Assembly Version: 1.0.0.0
    Win32 Version: 4.8.3761.0 built by: NET48REL1
    CodeBase: file:///C:/windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Ionic.Zip
    Assembly Version: 1.9.1.8
    Win32 Version: 1.9.1.8
    CodeBase: file:///C:/NSUI/Ionic.Zip.DLL
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.

As for the answers to the first questions:

  • What distro are you using?
    • I'm currently using Linux Mint 22.1, which runs on Ubuntu 24.04
  • What version of Wine are you using?
    • wine-9.0 (Ubuntu 9.0~repack-4build3)
  • What version of NSUI are you using?
    • Version 27
  • Does it fail with all projects or just certain ones?
    • I tried every project type, and results are all the same.
  • Does it fail with all games or just certain ones?
    • I tried dragging a game into NSUI, but it unfortunately still doesn't work.
  • Did you install it in its own Wine prefix (as indicated in the instructions)?
    • Yes.

If anyone has any answers I'd be happy to hear them. I tried out a VM but I think my laptop's a little too lightweight for me just to run a VM to inject games into my 3ds. Thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment