Create your own NSP Forwarder with NSO's N64 Emulator

  • Thread starter Thread starter Naminave
  • Start date Start date
  • Views Views 16,468
  • Replies Replies 35
  • Likes Likes 6
when i try to start a the game (that is a super mario 64 romhack), my switch shows me an error, but i've done it just like the text said.

why that is happening?
Post automatically merged:

i tried to install a sm64 romhack but my switch shows me an error

why is that happening?
 
I will try to be brief

You need to download the workflow
https://bit.ly/3F9EkZY

(DO NOT USE SPACES IN THE FOLDERS)

Insert your game (20_Yourgame.z64) and config file (10_YourConfig.cfg) in this path:
N64-Hovercraft\Files\Romfs\rom\Stardust_JP

Delete:
10_delete this and insert CONFIG.cfg
20_delete this and insert ROM.bin

Run SM3DAS.exe
Go to Buld NSP packages

Insert all the values as shown in the screenshot, found in the Files folder
N64-Hovercraft\Files\Exefs
N64-Hovercraft\Files\Romfs
N64-Hovercraft\Files\logo
N64-Hovercraft\Files\legalinfo\important.htdocs
N64-Hovercraft\Files\legalinfo\ipnotices.htdocs
N64-Hovercraft\Files\legalinfo\support.htdocs
N64-Hovercraft\Files\legalinfo\manual_html
View attachment 292967

Offline HTML contains information from the Pause Menu, it is mandatory or the game will freeze. You must manually copy the values, do not try to hit the purple icon (It will give an error because there is no .html file).
N64-Hovercraft\Files\legalinfo\manual_html
View attachment 292966

Add information

Title ID: Title ID (important)
Name: Name of the NSP icon (Important)
Author: Your name Author
Version: Version of your NSP (it doesn't matter)
Product code / serial: Identifier (does not matter)
Icon: The NSP icon
Keyset File: dump prod.keys echo in Lockpick_RCM (Important)
View attachment 292968

When you're done, press Build NSP package! (Don't give save yet). Name the NSP
View attachment 292841

MAKE CONTROL
This is done manually, but it is easy to explain
go to the Control folder and open control.xml with some text editor (I recommend Notepad ++)

Change the following information:
Your GAME TITLE = Place here the name of the title of the game, for each language.
Your AUTOR NAME = Replace them all with the name of the Author of the NSP
0x0100000000000000 = Replace them all with the ID of the NSP that you put in SM3DAS.exe (Do not remove 0x)

Save the changes.

Run "Make Control.bat"

Now yes, click save in SM3DAS.exe to create the NSP

That's it.

Don't try to run "Make Control.bat" without giving "Build NSP package!" in SM3DAS.exe. It will give an error because there is no ".Build\control" folder to create "control.nacp" the first time you run or close SM3DAS.exe. Also, do not first create the "control.nacp" with the .bat because every time you click the button Build NSP package! it will be overwritten, since the files that will be used to build the NSP are being copied.

EXTRA:
You can edit the PAUSE Menu. Go to manual_html

Credit:
The-4n(hacPack), XorTroll(GUI-mod SM3DAS)
I get INVALID NCA.
This is my NSP
 

Attachments

  • NSPack tool → Ready to build NSP packages! 04-10-2025 14_48_33.png
    NSPack tool → Ready to build NSP packages! 04-10-2025 14_48_33.png
    1,002.9 KB · Views: 24
I will try to be brief

You need to download the workflow
https://bit.ly/3F9EkZY

(DO NOT USE SPACES IN THE FOLDERS)

Insert your game (20_Yourgame.z64) and config file (10_YourConfig.cfg) in this path:
N64-Hovercraft\Files\Romfs\rom\Stardust_JP

Delete:
10_delete this and insert CONFIG.cfg
20_delete this and insert ROM.bin

Run SM3DAS.exe
Go to Buld NSP packages

Insert all the values as shown in the screenshot, found in the Files folder
N64-Hovercraft\Files\Exefs
N64-Hovercraft\Files\Romfs
N64-Hovercraft\Files\logo
N64-Hovercraft\Files\legalinfo\important.htdocs
N64-Hovercraft\Files\legalinfo\ipnotices.htdocs
N64-Hovercraft\Files\legalinfo\support.htdocs
N64-Hovercraft\Files\legalinfo\manual_html
View attachment 292967

Offline HTML contains information from the Pause Menu, it is mandatory or the game will freeze. You must manually copy the values, do not try to hit the purple icon (It will give an error because there is no .html file).
N64-Hovercraft\Files\legalinfo\manual_html
View attachment 292966

Add information

Title ID: Title ID (important)
Name: Name of the NSP icon (Important)
Author: Your name Author
Version: Version of your NSP (it doesn't matter)
Product code / serial: Identifier (does not matter)
Icon: The NSP icon
Keyset File: dump prod.keys echo in Lockpick_RCM (Important)
View attachment 292968

When you're done, press Build NSP package! (Don't give save yet). Name the NSP
View attachment 292841

MAKE CONTROL
This is done manually, but it is easy to explain
go to the Control folder and open control.xml with some text editor (I recommend Notepad ++)

Change the following information:
Your GAME TITLE = Place here the name of the title of the game, for each language.
Your AUTOR NAME = Replace them all with the name of the Author of the NSP
0x0100000000000000 = Replace them all with the ID of the NSP that you put in SM3DAS.exe (Do not remove 0x)

Save the changes.

Run "Make Control.bat"

Now yes, click save in SM3DAS.exe to create the NSP

That's it.

Don't try to run "Make Control.bat" without giving "Build NSP package!" in SM3DAS.exe. It will give an error because there is no ".Build\control" folder to create "control.nacp" the first time you run or close SM3DAS.exe. Also, do not first create the "control.nacp" with the .bat because every time you click the button Build NSP package! it will be overwritten, since the files that will be used to build the NSP are being copied.

EXTRA:
You can edit the PAUSE Menu. Go to manual_html

Credit:
The-4n(hacPack), XorTroll(GUI-mod SM3DAS)
I've been tinkering with this for the past couple of hours so far trying to make one for paper mario, and im really confused on where to get this config.cfg from. Am I supposed to grab it online? Dump it from somewhere? Build it using an emulator? It really feels like its the only part im missing to get the nsp to function (at the moment it boots but into a black screen) any advice? If its not the issue I am having ill have to get alot more help to solve it lol
 
  • Like
Reactions: laz305
I've been tinkering with this for the past couple of hours so far trying to make one for paper mario, and im really confused on where to get this config.cfg from. Am I supposed to grab it online? Dump it from somewhere? Build it using an emulator? It really feels like its the only part im missing to get the nsp to function (at the moment it boots but into a black screen) any advice? If its not the issue I am having ill have to get alot more help to solve it lol
That file goes with the ROM and contains graphical configuration as addresses to correct bugs. One of the most important are the Idle, addresses in the ROM that contain loop-type instructions and if not provided the emulator will enter a loop, consume 100% CPU and have to force close. The Config are created, they do not exist, I already provided in the past a minimal example file plus a method to search for Idle, which requires some trial and error. There are already . cfg files made by others, you can go to the ROG Samurai community and ask, I DO NOT RECOMMEND THE CRAP OF THE CAVE COMMUNITY ... the . cfg is very limited and very few games will actually work well.
 
That file goes with the ROM and contains graphical configuration as addresses to correct bugs. One of the most important are the Idle, addresses in the ROM that contain loop-type instructions and if not provided the emulator will enter a loop, consume 100% CPU and have to force close. The Config are created, they do not exist, I already provided in the past a minimal example file plus a method to search for Idle, which requires some trial and error. There are already . cfg files made by others, you can go to the ROG Samurai community and ask, I DO NOT RECOMMEND THE CRAP OF THE CAVE COMMUNITY ... the . cfg is very limited and very few games will actually work well.
Thanks for the reply, but what is the rog samurai community? Could you send a link? Google couldn't tell me about it 🙁
 
Thanks for the reply, but what is the rog samurai community? Could you send a link? Google couldn't tell me about it 🙁
Coming back to give an update, i was able to find the community you were talking about, but the dtz they recommended me did not work any better. I'm a little stumped on what the issue is (or why there is an issue since this game is rated as working fine on every compatability list ive seen) all that keeps happening is i will boot the game and after a few seconds get a software crash (im assuming since it hits 100%cpu load like you've said could happen before) if linking the newest build i have that doesnt work would help diagnose the issue then id be more than happy to do so, but I am really not sure what the issue is, which sucks.
 
Can you explain what this does in layman's terms? Is it to play any 64 titles through the NSO emu on Switch?
 
That file goes with the ROM and contains graphical configuration as addresses to correct bugs. One of the most important are the Idle, addresses in the ROM that contain loop-type instructions and if not provided the emulator will enter a loop, consume 100% CPU and have to force close. The Config are created, they do not exist, I already provided in the past a minimal example file plus a method to search for Idle, which requires some trial and error. There are already . cfg files made by others, you can go to the ROG Samurai community and ask, I DO NOT RECOMMEND THE CRAP OF THE CAVE COMMUNITY ... the . cfg is very limited and very few games will actually work well.
i have been working on this on and off for about the past week, and this is what I have so far. My .cfg is perfectly fine by my understanding, and all the ones I have seen both in the NSO emulator and online are the same. I've attached that, the .lua and .meta, and a nsp that ive been able to build (not piracy since it should not work). I have tried different rom dumps, different rom formats (.z64 and .bin) different software (this one, CaVE 1.5 and CaVE 1.4.6) different icons (all edited in adobe as specified) and even tried all over again to build a different game to see if it was due to Paper Mario itself or another issue. all of my efforts have so far been unsuccessful. I have reached out to the ROGSamurai community to no avail at solving the problem, and have reached a point where there is no more leads on things I can do that may make it work. I message again in hopes that you or someone else will have a solution to my problem, as Paper Mario is one of my favorite games and I would love to get this working.

EDIT: the nsp is too big to send sadly (~77MiB) so if it would help enough i could send a mega link but that would take time to make
 

Attachments

i have been working on this on and off for about the past week, and this is what I have so far. My .cfg is perfectly fine by my understanding, and all the ones I have seen both in the NSO emulator and online are the same. I've attached that, the .lua and .meta, and a nsp that ive been able to build (not piracy since it should not work). I have tried different rom dumps, different rom formats (.z64 and .bin) different software (this one, CaVE 1.5 and CaVE 1.4.6) different icons (all edited in adobe as specified) and even tried all over again to build a different game to see if it was due to Paper Mario itself or another issue. all of my efforts have so far been unsuccessful. I have reached out to the ROGSamurai community to no avail at solving the problem, and have reached a point where there is no more leads on things I can do that may make it work. I message again in hopes that you or someone else will have a solution to my problem, as Paper Mario is one of my favorite games and I would love to get this working.

EDIT: the nsp is too big to send sadly (~77MiB) so if it would help enough i could send a mega link but that would take time to make
What exactly is the problem?
 
What exactly is the problem?
I'm not entirely sure. Running it in an emulator on PC (Yuzu) shows that it may have something to do with the title ID from the logs (i used the same one you did in the screenshot) other than that I dont know what could be causing the nsp to not work, or what title ID would make it work (i kinda just assume the 3d all stars title id is the one I should use, which is the one ive been using this entire time) have you experienced an issue similar to this?
 
I'm not entirely sure. Running it in an emulator on PC (Yuzu) shows that it may have something to do with the title ID from the logs (i used the same one you did in the screenshot) other than that I dont know what could be causing the nsp to not work, or what title ID would make it work (i kinda just assume the 3d all stars title id is the one I should use, which is the one ive been using this entire time) have you experienced an issue similar to this?
Update 1.0.1

JSON:
{
"RomOption": {
"TickPerInst": 8,
"BackupType": "FLASH",
"SIDevice_PakType": "Rumble Pak"
},
"RSP" : {
},
"Idle" : [
{
"JmpAddr": "0x8005E98C",
"JmpInst": "0x1040FFFF",
"IsIdle": "0x1",
"Comment": "Requerido para iniciar juego"
},
{
"JmpAddr": "0x80026054",
"JmpInst": "0x08009815",
"IsIdle": "0x1",
"Comment": "Requerido para iniciar juego"
}
],
"SpecialInst" : [
],
"RendererSetting": {
"CopyInMiddle": 1
}
}

MI lista esta fuera de linea, pero tendras contexto sobre idle.
https://docs.google.com/spreadsheets/d/1M8CMfQyJ4qJZ92jiBjJLzt2hF7twwNG5cEwwjlAbH0k
 
Last edited by Naminave,
Update 1.0.1

JSON:
{
"RomOption": {
"TickPerInst": 8,
"BackupType": "FLASH",
"SIDevice_PakType": "Rumble Pak"
},
"RSP" : {
},
"Idle" : [
{
"JmpAddr": "0x8005E98C",
"JmpInst": "0x1040FFFF",
"IsIdle": "0x1",
"Comment": "Requerido para iniciar juego"
},
{
"JmpAddr": "0x80026054",
"JmpInst": "0x08009815",
"IsIdle": "0x1",
"Comment": "Requerido para iniciar juego"
}
],
"SpecialInst" : [
],
"RendererSetting": {
"CopyInMiddle": 1
}
}

MI lista esta fuera de linea, pero tendras contexto sobre idle.
https://docs.google.com/spreadsheets/d/1M8CMfQyJ4qJZ92jiBjJLzt2hF7twwNG5cEwwjlAbH0k
Screenshot 2025-10-24 at 6.13.35 PM.png

this is what i get when i try to run the game in Yuzu, what am i doing wrong?
 

Site & Scene News

Popular threads in this forum