Homebrew Discussion Confirmed: Mario All Stars 3D Collection have 3 emulators

  • Thread starter Thread starter GatoFiestero
  • Start date Start date
  • Views Views 151,427
  • Replies Replies 418
  • Likes Likes 17
If we can swap roms oh my god
This is not exactly what I was thinking. If possible and/or legal we need to reverse engineer this process of Wii emulation to try and get other Wii games running on the switch. There is A LOT of Wii games I would love to "Inject" into my switch and just click them off my Home menu. It would really be a dream come true!!!
 
  • Like
Reactions: Silent_Gunner
Luigi's Mansion seems to boot and work with swapped .gcm (First 5 minutes anyway!)
Oh dear.. there goes my whole day..
Edit: The first cutscene didn't play at all. I'm guessing it's something to do with hagi.config?
Didn't touch the rom.json or hashes at all and seems to work right out of the box?

I don't think it's too much to ask for video proof. You seem to be the only one who has accomplished getting a game to boot at least that has posted in this thread.
 
I wouldn't call Nintendo lazy though, creating emulators take a lot of work and making Gamecube games work emulated on the Switch is quite an achievement (if it's strictly emulation)
Also it seems like they have altered the "roms", Mario 64 for instance seems to have some kind of texture pack for various things like text trees and more.
I say that because it doesn't really look like it's upscaled in real-time.
It also have rumble, could be that they brought that from the japanese n64 rumble rom. but that rom was only in japanese if I'm not mistaken.

Sunshine also looks a lot crisper when it comes to text, I don't know how they pulled this off but it looks way better than just runningt the original games emulated with widescreen patch and higher resolution.
 
Sunshine also looks a lot crisper when it comes to text, I don't know how they pulled this off but it looks way better than just runningt the original games emulated with widescreen patch and higher resolution.

It's crazy - people on this emulation forum acting like they have not ever heard of higher render resolution+widescreen hacks, high res texture and sound packs AND FONTS for roms and emulation before...smh

I get the concept, we're all excited.
 
Last edited by PeterGemp,
  • Like
Reactions: ShadowOne333
It's crazy - people on this emulation forum acting like they have not ever heard of higher render resolution+widescreen hacks, high res texture and sound packs AND FONTS for roms and emulation before...smh

I get the concept, we're all excited.
it's like they don't know what emulation and romhacking is capable of at all lol
 
  • Like
Reactions: PeterGemp
It's crazy - people on this emulation forum acting like they have not ever heard of higher render resolution+widescreen hacks, high res texture and sound packs AND FONTS for roms and emulation before...smh

I get the concept, we're all excited.

I at least have not seen HD fonts for Mario 64 before, all the other things I have seen.
 
I at least have not seen HD fonts for Mario 64 before, all the other things I have seen.
It's as simple as taking the font table and retouching it in ERSGAN.
I can even do them in GIMP in like half an hour manually if I wanted to.
 
Last edited by ShadowOne333,
he's probably busy playing the game, leave him alone ;)

17c.png
 
Made an account just to post this but:

Just replacing the ROM file will crash the emulator without changing corresponding config files related to the ROM.

In order to replace the ROM you need to have your replacement file located at:
Code:
\atmosphere\contents\010049900F546002\romfs\MarioSunshine\Super_Mario_Sunshine_Stardust-trimmed.gcm

The file that loads the ROM is:
Code:
\atmosphere\contents\010049900F546002\romfs\rom.json

That contains the text:
Code:
{   "UID": "MarioSunshine",   "DolHash": "4e10808fdbd8a8beefab38163bb43a5002f60d63",   "ROM": [     "rom:/MarioSunshine/Super_Mario_Sunshine_Stardust-trimmed.gcm"   ] }

The UID is how the emulator searches the /data/ folder to replace textures and gecko codes, so in theory we could replace that with something like "NewGame" and then match that to "rom:/NewGame/NewGame.gcm" in the replacement "rom.json" file we would load with LayeredFS.

We would then also need to find out how to generate new hashes associated with a newly inserted ROM (NewGame.gcm) in the files:


Code:
\atmosphere\contents\010049900F546002\romfs\NewGame\NewGame.gcm
Code:
\atmosphere\contents\010049900F546002\romfs\NewGame\NewGame.hash

Code:
{
    "hash": {
        "exe": "corresponding exe hash with NewGame",
        "media": "corresponding media hash with NewGame",
        "full": "corresponding full hash with NewGame"
    }
}


as well as

Code:
\atmosphere\contents\010049900F546002\romfs\data\database\hagi\NewGame.json

Code:
{     "Info": {         "GCM": {             "Name": "New Game",             "CountryCode": "US",             "GameID": "GAME",             "DVD": 0,             "ROMVersion": 0,             "GCMID": "GAME.0.0"         },         "Hashes": {             "exe": "appropriate hash here",             "media": "appropriate hash here",             "full": "appropriate hash here"         },         "UID": "NewGame",         "ShortName": "NewGame"     },     "Mxic": {         "Hashes": ["appropriate hash here", "appropriate hash here"]     } }

and finally the "boot" code needs the GameID ("FourCC") and VideoMode changed in this file

Code:
\atmosphere\contents\010049900F546002\romfs\data\database\config\NewGame.config

Code:
        },
        "Boot" :
        {
            "Country" : "US",
            "DVDRoot" :
            {
                "FourCC" : "GAME"
            },
            "VideoMode" : "NTSC",
            "Retail" : true,
            "UseDolHash" : true,
            "LoadBios" : false
        },
 
Last edited by WatchMeNow,
Made an account just to post this but:

Just replacing the ROM file will crash the emulator without changing corresponding config files related to the ROM.

In order to replace the ROM you need to have your replacement file located at:
Code:
\atmosphere\contents\010049900F546002\romfs\MarioSunshine\Super_Mario_Sunshine_Stardust-trimmed.gcm

The file that loads the ROM is:
Code:
\atmosphere\contents\010049900F546002\romfs\rom.json

That contains the text:
Code:
{   "UID": "MarioSunshine",   "DolHash": "4e10808fdbd8a8beefab38163bb43a5002f60d63",   "ROM": [     "rom:/MarioSunshine/Super_Mario_Sunshine_Stardust-trimmed.gcm"   ] }

The UID is how the emulator searches the /data/ folder to replace textures and gecko codes, so in theory we could replace that with something like "NewGame" and then match that to "rom:/NewGame/NewGame.gcm" in the replacement "rom.json" file we would load with LayeredFS.

We would then also need to find out how to generate new hashes associated with a newly inserted ROM (NewGame.gcm) in the files:

Code:
\atmosphere\contents\010049900F546002\romfs\NewGame.hash

Code:
{
    "hash": {
        "exe": "corresponding exe hash with NewGame",
        "media": "corresponding media hash with NewGame",
        "full": "corresponding full hash with NewGame"
    }
}


as well as

Code:
\atmosphere\contents\010049900F546002\romfs\data\database\hagi\NewGame.json

Code:
{     "Info": {         "GCM": {             "Name": "New Game",             "CountryCode": "US",             "GameID": "GAME",             "DVD": 0,             "ROMVersion": 0,             "GCMID": "GAME.0.0"         },         "Hashes": {             "exe": "appropriate hash here",             "media": "appropriate hash here",             "full": "appropriate hash here"         },         "UID": "NewGame",         "ShortName": "NewGame"     },     "Mxic": {         "Hashes": ["appropriate hash here", "appropriate hash here"]     } }

and finally the "boot" code needs the GameID and VideoMode changed in this file

Code:
\atmosphere\contents\010049900F546002\romfs\data\database\config\NewGame.config

Code:
        },
        "Boot" :
        {
            "Country" : "US",
            "DVDRoot" :
            {
                "FourCC" : "GAME"
            },
            "VideoMode" : "NTSC",
            "Retail" : true,
            "UseDolHash" : true,
            "LoadBios" : false
        },


k wtf why you sooooo SMART!!!

but in all seriousness, if this means what I think it means you have at least started to figure out how to inject and boot other games? If so could you possibly test Wii Sports? Assuming all the button layouts will transfer over
 
Made an account just to post this but:

Just replacing the ROM file will crash the emulator without changing corresponding config files related to the ROM.

In order to replace the ROM you need to have your replacement file located at:
Code:
\atmosphere\contents\010049900F546002\romfs\MarioSunshine\Super_Mario_Sunshine_Stardust-trimmed.gcm

The file that loads the ROM is:
Code:
\atmosphere\contents\010049900F546002\romfs\rom.json

That contains the text:
Code:
{   "UID": "MarioSunshine",   "DolHash": "4e10808fdbd8a8beefab38163bb43a5002f60d63",   "ROM": [     "rom:/MarioSunshine/Super_Mario_Sunshine_Stardust-trimmed.gcm"   ] }

The UID is how the emulator searches the /data/ folder to replace textures and gecko codes, so in theory we could replace that with something like "NewGame" and then match that to "rom:/NewGame/NewGame.gcm" in the replacement "rom.json" file we would load with LayeredFS.

We would then also need to find out how to generate new hashes associated with a newly inserted ROM (NewGame.gcm) in the files:


Code:
\atmosphere\contents\010049900F546002\romfs\NewGame\NewGame.gcm
Code:
\atmosphere\contents\010049900F546002\romfs\NewGame\NewGame.hash

Code:
{
    "hash": {
        "exe": "corresponding exe hash with NewGame",
        "media": "corresponding media hash with NewGame",
        "full": "corresponding full hash with NewGame"
    }
}


as well as

Code:
\atmosphere\contents\010049900F546002\romfs\data\database\hagi\NewGame.json

Code:
{     "Info": {         "GCM": {             "Name": "New Game",             "CountryCode": "US",             "GameID": "GAME",             "DVD": 0,             "ROMVersion": 0,             "GCMID": "GAME.0.0"         },         "Hashes": {             "exe": "appropriate hash here",             "media": "appropriate hash here",             "full": "appropriate hash here"         },         "UID": "NewGame",         "ShortName": "NewGame"     },     "Mxic": {         "Hashes": ["appropriate hash here", "appropriate hash here"]     } }

and finally the "boot" code needs the GameID ("FourCC") and VideoMode changed in this file

Code:
\atmosphere\contents\010049900F546002\romfs\data\database\config\NewGame.config

Code:
        },
        "Boot" :
        {
            "Country" : "US",
            "DVDRoot" :
            {
                "FourCC" : "GAME"
            },
            "VideoMode" : "NTSC",
            "Retail" : true,
            "UseDolHash" : true,
            "LoadBios" : false
        },

So... injects already possible?
 
I have to ask....

Have the roms/isos been upscaled/upgraded in anyway or is that left to the emulators and switch to do?

In short..... Is there any point of me trying to extract the roms/isos to inject for wii u? (dont laugh!)
 
  • Like
Reactions: Moon164
Made an account just to post this but:

Just replacing the ROM file will crash the emulator without changing corresponding config files related to the ROM.

In order to replace the ROM you need to have your replacement file located at:
Code:
\atmosphere\contents\010049900F546002\romfs\MarioSunshine\Super_Mario_Sunshine_Stardust-trimmed.gcm

The file that loads the ROM is:
Code:
\atmosphere\contents\010049900F546002\romfs\rom.json

That contains the text:
Code:
{   "UID": "MarioSunshine",   "DolHash": "4e10808fdbd8a8beefab38163bb43a5002f60d63",   "ROM": [     "rom:/MarioSunshine/Super_Mario_Sunshine_Stardust-trimmed.gcm"   ] }

The UID is how the emulator searches the /data/ folder to replace textures and gecko codes, so in theory we could replace that with something like "NewGame" and then match that to "rom:/NewGame/NewGame.gcm" in the replacement "rom.json" file we would load with LayeredFS.

We would then also need to find out how to generate new hashes associated with a newly inserted ROM (NewGame.gcm) in the files:


Code:
\atmosphere\contents\010049900F546002\romfs\NewGame\NewGame.gcm
Code:
\atmosphere\contents\010049900F546002\romfs\NewGame\NewGame.hash

Code:
{
    "hash": {
        "exe": "corresponding exe hash with NewGame",
        "media": "corresponding media hash with NewGame",
        "full": "corresponding full hash with NewGame"
    }
}


as well as

Code:
\atmosphere\contents\010049900F546002\romfs\data\database\hagi\NewGame.json

Code:
{     "Info": {         "GCM": {             "Name": "New Game",             "CountryCode": "US",             "GameID": "GAME",             "DVD": 0,             "ROMVersion": 0,             "GCMID": "GAME.0.0"         },         "Hashes": {             "exe": "appropriate hash here",             "media": "appropriate hash here",             "full": "appropriate hash here"         },         "UID": "NewGame",         "ShortName": "NewGame"     },     "Mxic": {         "Hashes": ["appropriate hash here", "appropriate hash here"]     } }

and finally the "boot" code needs the GameID ("FourCC") and VideoMode changed in this file

Code:
\atmosphere\contents\010049900F546002\romfs\data\database\config\NewGame.config

Code:
        },
        "Boot" :
        {
            "Country" : "US",
            "DVDRoot" :
            {
                "FourCC" : "GAME"
            },
            "VideoMode" : "NTSC",
            "Retail" : true,
            "UseDolHash" : true,
            "LoadBios" : false
        },

Just want to say I appreciate you.
 
  • Like
Reactions: Dominator211
k wtf why you sooooo SMART!!!

but in all seriousness, if this means what I think it means you have at least started to figure out how to inject and boot other games? If so could you possibly test Wii Sports? Assuming all the button layouts will transfer over
Well no one really knows if Wii games will work since it’s a hybrid. SMG is emulated but also recompiled too.
 
I have to ask....

Have the roms/isos been upscaled/upgraded in anyway or is that left to the emulators and switch to do?

In short..... Is there any point of me trying to extract the roms/isos to inject for wii u? (dont laugh!)
The Game Cube's control layout is not very good on the Wii U GamePad, I didn't have such a good experience playing Super Mario Sunshine on Nintendont because of that.

I think the biggest advantage of playing the Super Mario Sunshine .iso on the Wii U is that you will have the button layout perfectly adapted (since the Switch button layout is the same as the Wii U and Nintendont also supports the Nintendo Switch Pro Controller via USB), in addition it may be possible to force the game to run in widescreen on Wii U.

I've been looking for .iso all day just to test this, but so far I couldn't find it.

PS: I don't think the Nintendo 64 version has any advantage since it is just the Shindou version with some modifications made by the emulator itself, but I am also curious to test it.
 

Site & Scene News

Popular threads in this forum