Homebrew Saturn emulation using Cotton/Guardian Force testing and debug

LordShadowNWolf

Member
Newcomer
Joined
Oct 20, 2021
Messages
7
Trophies
0
Age
27
XP
15
Country
Costa Rica
Im getting to run the game, but when I select cotton 2 to load the game I want I get an error message twice, and a black void screen, the options and everything else seems to work just tha the game doesnt load... Im trying to play dragon force...
 

LordShadowNWolf

Member
Newcomer
Joined
Oct 20, 2021
Messages
7
Trophies
0
Age
27
XP
15
Country
Costa Rica
I followed the intructions...
Place the Dragon Force (USA).bin without changing the name in the romfs file
Change the Dragon Force (USA).cue to Cotton2.cue and place it in the romfs file

I tried with a different rom but no luck.
 

LordShadowNWolf

Member
Newcomer
Joined
Oct 20, 2021
Messages
7
Trophies
0
Age
27
XP
15
Country
Costa Rica
Sounds like a cue problem. Make sure you have BIN file name in it exactly right.
I followed the intructions...
Place the Dragon Force (USA).bin without changing the name in the romfs file
Change the Dragon Force (USA).cue to Cotton2.cue and place it in the romfs file
I tried with a different rom but no luck.
 

Zomorph

Well-Known Member
Member
Joined
Mar 28, 2021
Messages
100
Trophies
0
Age
42
XP
92
Country
United Kingdom
I just managed, here are the steps:
- Download Ultimate-Switch-Hack-Script from github
- Install Guardian Force - Saturn Tribute NSP on your switch (I failed using Cotton2, Guardian worked)
- After the title was installed, from your switch dump prod.keys and title.keys using Lockpick
- Insert your switch sd card on your PC, move prod.keys and title.keys from sdcard/switch/ to your PC
- Now you can finally generate your game, launch Ultimate-Switch-Hack-Script
- Proceed to the main menu where you see the entry "6: Other functions?"
- After entering that submenu, proceed to "16: Inject a Sega Saturn game"

The rest is straight forward, it will ask you for the keys files you generated, it will also ask you for a 256x256 jpeg cover (non-interlaced, has to be less than 128k).

After the nsp has been generated, you can go inside the Ultimate-Switch-Hack-Script folders and find the uncompressed content of Guardian Force, here you can swap some files around. If you go back a few threads, you will see a Texture.tex file that makes the lower-right menu icon disappear, there are also ini files being shared with good settings for various games.

Hope it helps!
Thanks for this. I've generated the uncompressed GF folder but not sure what to do now :huh: I've read all 40 pages of this thread several times...

Do I just rename the folder to the injected game (Nights Into Dreams) and then transfer the folder to Tinfoil on Switch in the usual way with the NUT tool? Or do I need to put the game files in the romfs folder as per the method without using the script? I thought the script would automatically do this? Apologies if these are all really numpty questions. Feels like I'm close, just not quite there.
 

Zomorph

Well-Known Member
Member
Joined
Mar 28, 2021
Messages
100
Trophies
0
Age
42
XP
92
Country
United Kingdom
I just managed, here are the steps:
- Download Ultimate-Switch-Hack-Script from github
- Install Guardian Force - Saturn Tribute NSP on your switch (I failed using Cotton2, Guardian worked)
- After the title was installed, from your switch dump prod.keys and title.keys using Lockpick
- Insert your switch sd card on your PC, move prod.keys and title.keys from sdcard/switch/ to your PC
- Now you can finally generate your game, launch Ultimate-Switch-Hack-Script
- Proceed to the main menu where you see the entry "6: Other functions?"
- After entering that submenu, proceed to "16: Inject a Sega Saturn game"

The rest is straight forward, it will ask you for the keys files you generated, it will also ask you for a 256x256 jpeg cover (non-interlaced, has to be less than 128k).

After the nsp has been generated, you can go inside the Ultimate-Switch-Hack-Script folders and find the uncompressed content of Guardian Force, here you can swap some files around. If you go back a few threads, you will see a Texture.tex file that makes the lower-right menu icon disappear, there are also ini files being shared with good settings for various games.

Hope it helps!
Thanks for this. I've generated the uncompressed GF folder but not sure what to do now :huh: I've read all 40 pages of this thread several times...

Do I just rename the folder to the injected game (Nights Into Dreams) and then transfer the folder to Tinfoil on Switch in the usual way with the NUT tool? Or do I need to put the game files in the romfs folder as per the method without using the script? I thought the script would automatically do this? Apologies if these are all really numpty questions. Feels like I'm close, just not quite there.
 

EddieRiggs

Member
Newcomer
Joined
Oct 17, 2021
Messages
18
Trophies
0
Age
34
XP
27
Country
Russia
I followed the intructions...
Place the Dragon Force (USA).bin without changing the name in the romfs file
Change the Dragon Force (USA).cue to Cotton2.cue and place it in the romfs file
I tried with a different rom but no luck.
Open your cotton2.cue file (which you've renamed) in any text editor and check FILE BINARY line. It must contain the EXACT name of bin file. Try deleting spaces and uppercases to be sure. For example, this is cue file of dragonforce and the name of bin file is "dragonforce.bin" in this instance.
1634724808337.png

Make sure there is no absolute paths in this line, just filename. I've seen cues with directories such as "C:\Users\... etc" in this line.


Thanks for this. I've generated the uncompressed GF folder but not sure what to do now :huh: I've read all 40 pages of this thread several times...

Do I just rename the folder to the injected game (Nights Into Dreams) and then transfer the folder to Tinfoil on Switch in the usual way with the NUT tool? Or do I need to put the game files in the romfs folder as per the method without using the script? I thought the script would automatically do this? Apologies if these are all really numpty questions. Feels like I'm close, just not quite there.
The last step before the 'injecting process' begins is to choose the path where you wanna store your generated .nsp file. Open it, get the nsp and just install the way you install nsp.
Uncompressed GF folder is there to speed up the process of injecting games later on. You can also use it to modify it (change wallpapers and so on).
 
Last edited by EddieRiggs,

Zomorph

Well-Known Member
Member
Joined
Mar 28, 2021
Messages
100
Trophies
0
Age
42
XP
92
Country
United Kingdom
Open your cotton2.cue file (which you've renamed) in any text editor and check FILE BINARY line. It must contain the EXACT name of bin file. Try deleting spaces and uppercases to be sure. For example, this is cue file of dragonforce and the name of bin file is "dragonforce.bin" in this instance.
View attachment 280657
Make sure there is no absolute paths in this line, just filename. I've seen cues with directories such as "C:\Users\... etc" in this line.



The last step before the 'injecting process' begins is to choose the path where you wanna store your generated .nsp file. Open it, get the nsp and just install the way you install nsp.
Uncompressed GF folder is there to speed up the process of injecting games later on. You can also use it to modify it (change wallpapers and so on).
Thanks for your reply.

I chose the path USHS>Saturn_emu_inject_datas>games for the generated NSP file. A GF folder is there but it doesn't seem to be an NSP file or contain one. I did get error messages when I ran the script but since the GF folder appeared I assumed it worked. Thinking not now. I tried the script again with the same steps but with a different destination folder for the NSP and error messages appeared in the script and no folder was generated. Guess I should run a log report and ask Shadow if he could take a look. I did fresh prod and title keys from EmmuNAND after installing the game on the switch. Do I need to use a specific ID in the script? I've just been generating a random. Also, the saturn path needs to be a folder containing the unamended bin and cue files for the saturn game I want to play right?

Thanks in advance for a help. I'll be sure to help others if I ever get this working!
 

EddieRiggs

Member
Newcomer
Joined
Oct 17, 2021
Messages
18
Trophies
0
Age
34
XP
27
Country
Russia
Thanks for your reply.

I chose the path USHS>Saturn_emu_inject_datas>games for the generated NSP file. A GF folder is there but it doesn't seem to be an NSP file or contain one. I did get error messages when I ran the script but since the GF folder appeared I assumed it worked. Thinking not now. I tried the script again with the same steps but with a different destination folder for the NSP and error messages appeared in the script and no folder was generated. Guess I should run a log report and ask Shadow if he could take a look. I did fresh prod and title keys from EmmuNAND after installing the game on the switch. Do I need to use a specific ID in the script? I've just been generating a random. Also, the saturn path needs to be a folder containing the unamended bin and cue files for the saturn game I want to play right?

Thanks in advance for a help. I'll be sure to help others if I ever get this working!
You don't need specific ID (it's for some other particular reasons) to get working nsp, random one is fine.
Saturn path must contain folder where cue&bin pair of desired game is located.
Since you get fresh keys after installing GF, I'm afraid, logging is the only way to solve the problem.
One general idea which is coming to my mind: path names. Make it simple for all files (USHS, saturn iso folder, keys, icon, etc.)
 
  • Like
Reactions: Zomorph

Zomorph

Well-Known Member
Member
Joined
Mar 28, 2021
Messages
100
Trophies
0
Age
42
XP
92
Country
United Kingdom
You don't need specific ID (it's for some other particular reasons) to get working nsp, random one is fine.
Saturn path must contain folder where cue&bin pair of desired game is located.
Since you get fresh keys after installing GF, I'm afraid, logging is the only way to solve the problem.
One general idea which is coming to my mind: path names. Make it simple for all files (USHS, saturn iso folder, keys, icon, etc.)
Thanks for this. I'll make some shorter paths- all come from the desktop atm so too long I guess. Failing this I'll run the log.

Just checking, I used CHDMAN to convert my Saturn CHD files to bin and cue- these are fine to use with the script right?
 

EddieRiggs

Member
Newcomer
Joined
Oct 17, 2021
Messages
18
Trophies
0
Age
34
XP
27
Country
Russia
Thanks for this. I'll make some shorter paths- all come from the desktop atm so too long I guess. Failing this I'll run the log.

Just checking, I used CHDMAN to convert my Saturn CHD files to bin and cue- these are fine to use with the script right?
I guess it is for shadow256 to answer. But I don't think that script check internals of iso files. I run tests with 1kb dummy bin file and it was injected perfectly.
 
  • Like
Reactions: Zomorph

Zomorph

Well-Known Member
Member
Joined
Mar 28, 2021
Messages
100
Trophies
0
Age
42
XP
92
Country
United Kingdom
No luck with moving the paths off the desk top. Here's the last bit of the error log. I can send print screens of the whole of it if needed. Many thanks in advance for any support.

1634731196098.png
 

Rikua

Well-Known Member
Member
Joined
Dec 2, 2014
Messages
178
Trophies
0
Age
34
XP
1,264
Country
United States
Okay, first off, great thread! Got everything sorted for the most part. I have Guardian Heroes running over Cotton2 using the Collection as a base (0100094014BE4006), however, is there any way to overwrite all 3 games included? If so, how can I figure out the ID for contents/IDNUMBER/romfs of the other two titles? Or are we just restricted to one for now unless we install the other standalone's? Thanks!
 

Zomorph

Well-Known Member
Member
Joined
Mar 28, 2021
Messages
100
Trophies
0
Age
42
XP
92
Country
United Kingdom
Holy smoke i got it work! After long ass strugle i found out that the reason why i could not get the programm to work was that i had old version of the hack tool. So to you all who has issues use the latest version! Damn i'm so happy now and same time mad at myself 🤣
https://github.com/shadow2560/Ultimate-Switch-Hack-Script/releases/tag/V4.3.63
When I saw this I had high hopes that it would fix my problem as I was using the master version of the programe. But no such luck. Any chance you could give a step by step idiot proof guide of what you did? You might stop me from going crazy.
 

gersonzero

Member
Newcomer
Joined
Sep 15, 2020
Messages
17
Trophies
0
Age
36
XP
106
Country
United States
Thank you to everyone that made a post in this thread. It was very helpful seeing all types of scenarios and solutions play out, I even watched an awesome video by NickMoses05. I had an issue every time I manually created the title id folder within "sd/atmosphere/contents" where launching cotton 2 from the compilation led to nothing. Not even an error message was being shown. I initially created "sd/atmosphere/contents/0100094014BE4006/romfs" manually then put all the necessary files, but again nothing happened. So I deleted the title id folder named "0100094014BE4006" and decided to use NXDumpTool, then selected dump romfs. It created the "sd/atmosphere/contents/0100094014BE4006/romfs" for me, I then deleted everything within the newly created "romfs" folder.

At that point I used "XCI_NCA_NSP_v2" and extracted the Cotton 2 complilation NSP, which created several NCA files, I then extracted the NCA with filesize "105,728KB" and threw the extracted files into the "sd/atmosphere/contents/0100094014BE4006/romfs" folder. After I placed my Astal bin and cue files, the provided "Cotton2_Switch.ini" file into the sd card. I then renamed "astal.cue" to "cotton2.cue". When I launched Cotton 2 from within the complication pack...I received an error right before the controller layout screen. Prior to placing those astal files i did not receive an error so I took out astal files and tried saturn bomberman....IT WORKED!!! Apparently the astal bin and cue files weren't working.

Again thank you to everyone here. It may not seem like a big deal but for someone like me that isn't knowledgeable in these things it was a massive help. Also thanks NickMoses05. Your video helped a lot too!
 
  • Like
Reactions: Purple_Shyguy

helvetinperkeles

Well-Known Member
Newcomer
Joined
Oct 8, 2021
Messages
98
Trophies
0
Age
37
XP
73
Country
Finland
When I saw this I had high hopes that it would fix my problem as I was using the master version of the programe. But no such luck. Any chance you could give a step by step idiot proof guide of what you did? You might stop me from going crazy.
1. Install guardian force tribute nsp to your switch. 2. Dumb that guardian game using tinfoil. 3. Dumb your keys remember to dumb from emuMMC if the nsp is istalled there. Copy the game nsp you are using as source and keys to pc into same folder. No idea is this necessary but worked with me. Then make sure you have the latest version of hack tool. Launch hacktool and proseed and hope for the best 😄
This might not be the right way to proceed but it worked so that is the way i do it. Also i put all other files etc to the same folder as keys and nsp source is.
 
  • Like
Reactions: Zomorph

EddieRiggs

Member
Newcomer
Joined
Oct 17, 2021
Messages
18
Trophies
0
Age
34
XP
27
Country
Russia
No luck with moving the paths off the desk top. Here's the last bit of the error log. I can send print screens of the whole of it if needed. Many thanks in advance for any support.

View attachment 280668
That's the hell of the path you got here. Put entire USHS folder to the root directory of your drive (something like c:\USHS\)
And I personally don't think this is an encoding problem, but please read first message of the script and change command prompt font.
 
  • Like
Reactions: Zomorph
General chit-chat
Help Users
  • No one is chatting at the moment.
    Julie_Pilgrim @ Julie_Pilgrim: https://www.youtube.com/watch?v=9McGKrxOnB8 me looking at the switch's library like