How to use the Homebrew Channel as a simple loader for games (skip the emulator menu)

Discussion in 'Wii - Emulation and Homebrew' started by libertyernie, Oct 11, 2018.

  1. libertyernie
    OP

    libertyernie GBAtemp Regular

    Member
    3
    Apr 6, 2011
    United States
    This probably isn't of interest to most people, but it fits my setup well. I have a Wii U, and most of the games I want to play, I already have copies of (either from eShop or on disc). That leaves a handful of GameCube games and a few SNES games (BS Zelda, I'm looking at you!)

    Instead of setting up a loader like Wiiflow or USB Loader GX, I just launch each game from its own Homebrew Channel entry. I've got this working with GameCube games (via Ninendont), Genesis and Game Gear games (via Genesis Plus GX), and NES, SNES, and Game Boy games (through dborth's emulators.)

    This isn't so much a tutorial as a way for me to remember this later :)

    Nintendont

    Use a version of Nintendont that includes my base64 patch. You can get one at: https://github.com/libertyernie/Nintendont/releases/

    (If compiling from source, this patch is the one you need.)

    Grab NinCFGEditor (it's a Windows application, but it might work on Mono too) and follow these steps:

    1. Put the custom Nintendont .dol file in the same folder as NinCFGEditor.exe, and name it boot.dol

    2. Put the GameCube game on your SD card as /games/{name of game}/game.iso (like you normally do for Nintendont)

    3. Open NinCFGEditor

    4. Use the "..." button next to the Game Path entry area to find and select the game's .iso or .gcm file on your SD/USB; the Game ID will be filled in automatically

    5. Turn Auto Boot on (and adjust other settings if you want to)

    6. Use Tools > Export All Files to save the files to a folder on your SD/USB directly underneath /apps - this should save boot.dol, meta.xml, and icon.png

    7. Make any custom edits to meta.xml or icon.png (if you want to)

    Genesis Plus GX

    Use a recent version of Genesis Plus GX. 1.7.5RC1 might be too old to autoload games properly. Try using genplus_wii.dol from https://github.com/ekeeke/Genesis-Plus-GX/tree/master/builds.

    Genesis Plus GX will share at least some settings (e.g. video size and filter) among all games. These are stored in the /genplus folder in your SD card, which it will create if it does not exist.

    Make a folder in your /apps folder with boot.dol (the genplus_wii.dol file you downloaded earlier), icon.png, meta.xml, and the rom file. I like to make sure the folder and rom file names don't have spaces.

    Example of meta.xml:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <app version="1">
    <name>Rocket Knight Adventures</name>
    <coder></coder>
    <version></version>
    <release_date></release_date>
    <short_description>Sega Genesis</short_description>
    <long_description> </long_description>
    <arguments>
    <arg>sd:/apps/rocketknightadventures/</arg> <!-- This trailing slash is necessary -->
    <arg>rocketknightadventures.bin</arg>
    </arguments>
    <ahb_access/>
    </app>

    icon.png should be 128x48, with transparency. You'll probably want to make one yourself in a program like GIMP.

    Snes9x GX, FCE Ultra GX, VisualBoy Advance GX

    You'll need to use a version built some time after 30 July 2018. This means fceugx 3.4.0+, snes9xgx 4.3.8+, and vbagx 2.3.7+. These versions have a patch I contributed to make sure this method of loading games works properly.

    These emulators store their settings in an XML file in the app folder, so they will vary depending on the game.

    You will want to create some folders on your SD card:
    * fceugx/saves
    * snes9xgx/saves
    * vbagx/saves
    * vbagx/borders (optional - for saving Super Game Boy borders in SGB mode so you can use them in GBC mode)

    Example of meta.xml:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <app version="1">
    <name>Tetris Blast</name>
    <coder></coder>
    <version></version>
    <release_date></release_date>
    <short_description>Super Game Boy</short_description>
    <long_description> </long_description>
    <arguments>
    <arg>sd:/apps/tetrisblast</arg>
    <arg>tetrisblast.gb</arg>
    </arguments>
    <ahb_access />
    </app>
     
    Hakaisha likes this.
  2. Cyan

    Cyan GBATemp's lurking knight

    Global Moderator
    22
    Oct 27, 2002
    France
    Engine room, learning
    USBLoaderGX can also benefit from launching a game directly using arguments.
    if you set a titleID6 as argument, you get autolaunch.

    <arguments>
    <arg>SMNP01</arg>
    </arguments>

    will launch New super Mario Wii automatically, without any GUI, using the settings set in USBloaderGX global+individual settings.
    You can make multiple different folders, but it can create issues if the loader is not setup correctly and you might have to store multiple settings (unless you use sd:/config/ path). first setup the loader, then add the TitleID6 to argument.

    There's no meta editor, you have to edit it manually, but your nincfgEditor is also launched on computer and need a user action to edit it. the config file is overwritten if you edit your settings/use another loader to launch nintendont. So, you'd require to replace nincfg.bin often.
    But you can also set a Gamecube TitleID6, it will launch nintendont, with the setting set in USBLoaderGX. it will generate a new nincfg.bin for each launched game, based on settings stored on the USBLoaderGX settings, no need to use a computer's binary file generator anymore.
    <arg>GZLP01</arg> will launch nintendont with generated settings and path to Zelda game.


    I'm sure Wiiflow has the same feature.
     
    Last edited by Cyan, Oct 11, 2018
    libertyernie likes this.
  3. libertyernie
    OP

    libertyernie GBAtemp Regular

    Member
    3
    Apr 6, 2011
    United States
    I made sure NinCFGEditor could store the nincfg.bin inside the meta.xml as base64. That's actually the only reason my tutorial uses a patched nintendont. It uses that instead of the actual nincfg.bin file.

    But if you have USB Loader GX installed already, it's way easier to just use that.
     
  4. fatherjack

    fatherjack GBAtemp Fan

    Member
    3
    Jul 3, 2007
    Still Here
    Hi,
    could these custom boot.dol's be used for a wii sysmenu channel forwarder (wad)?
     
  5. Cyan

    Cyan GBATemp's lurking knight

    Global Moderator
    22
    Oct 27, 2002
    France
    Engine room, learning
    you can use these dols into a channel, but you'll lose the arguments feature to launch a different game per channel.
    it you want a channel with the argument, you'll need to inject a forwarder per channel to that dol, the forwarder will be the one sending the arguments to the loaded boot.dol on SD card.
     
    Last edited by Cyan, Oct 13, 2018
    fatherjack likes this.
Loading...