Gamecube mode code

Discussion in 'Wii - Hacking' started by Mrkinator, Sep 28, 2008.

Sep 28, 2008

Gamecube mode code by Mrkinator at 3:26 AM (1,715 Views / 0 Likes) 12 replies

  1. Mrkinator
    OP

    Member Mrkinator Neil Peart Wannabe

    Joined:
    Sep 28, 2008
    Messages:
    890
    Location:
    Great White North, Eh!
    Country:
    Canada
    I don't know if anybody noticed this, but bushing released code for when the Wii boots into GC Mode (probably can't lead to a GC Backup loader, but you never know [​IMG] ).

    http://forum.wiibrew.org/read.php?8,925

    CODE#define BC 0x0000000100000100ULL

    u32 *cc_reg = (u32 *)0xCC003024;

    *ccreg |= 7;

    tikview view;

    int retval = ES_GetTicketViews(BC, &view, 1);

    if (retval != 0) OSPanic("fail");
    retval = ES_LaunchTitle(BC, &view);
    OSPanic("fail!!!1");

    Someone play around with it. I want to play MGS: Twin Snakes [​IMG]
     
  2. HowardC

    Member HowardC GBAtemp Fan

    Joined:
    May 4, 2008
    Messages:
    490
    Country:
    United States
    What this function is doing is checking for a valid ticket. If the ticket is invalid then it fails.

    Now in theory one could simply remove the check and force the boot of the disc (do the one line inside the "if" statement) BUT that doesn't guarantee that it'll work as there is probably more checking involved upon boot or else we'd have a loader for gc discs already.


    edit:

    the problem are the lines:

    tikview view;
    int retval = ES_GetTicketViews(BC, &view, 1);

    what I GUESS that this is doing is creating a variable to store the game's key and storing it in the "view" variable.

    when the game is actually launched you'll notice that it is lanched with this view variable as an option. My guess is it's used to decrypt the data on the disc.

    The only hope of a loader would be to write a custom ES_LaunchTitle function, which isn't shown in your snippet of code and I'm guessing is buried much deeper.
     
  3. Mrkinator
    OP

    Member Mrkinator Neil Peart Wannabe

    Joined:
    Sep 28, 2008
    Messages:
    890
    Location:
    Great White North, Eh!
    Country:
    Canada
    Okay, yeah I guess it can't be that easy.
     
  4. SanGor

    Member SanGor Witchhunter

    Joined:
    Aug 21, 2008
    Messages:
    993
    Country:
    United States
    did you ever hear the phrase "if you don't have a clue stfu" ?

    basicly everything you said is wrong.
    so where do I start ... for you loader you had to write a custom MIOS not ES_LaunchTitle. (ES_LaunchTitle is part of libogc btw).
    GC Discs aren't encrypted.
    well it does create a variable view, but that doesn't store the game's key, the tikview hold severeal information about a Title, you can look that up in the libogc source.
    The tikview is necessary for the ES_LaunchTitle function so it knows what Title to launch.
    And no you can't remove the if to force the start, that if checks if the function succeded, removing it would most likely lead to an exception in the case the function would fail.
    Also a TicketView isn't a Ticket, so it does not check for a valid ticket.

    so next time just stfu ok ? [​IMG]
     
  5. sampson

    Newcomer sampson Advanced Member

    Joined:
    Jul 25, 2008
    Messages:
    90
    Country:
    United States
    damn someone forgot to drink their coffee today

    the newer loader appears to already have some form of this code in it and uses it so you can boot gc games region free as well as force video modes... i would imagine the dip module would need updating to make the games work

    Code:
    /* Check not a Gamecube Game */
    ÂÂÂÂif(gameidbuffer[0] == 0x47 || gameidbuffer[0] == 0x55 || gameidbuffer[0] == 0x44){
    ÂÂÂÂÂÂÂÂretval = ES_GetTicketViews(BC, &view, 1);
    ÂÂÂÂÂÂÂÂif (retval != 0){
    ÂÂÂÂÂÂÂÂÂÂÂÂwrite_font(195, 202, "Gamecube Error");
    ÂÂÂÂÂÂÂÂ}
    ÂÂÂÂÂÂÂÂ
    ÂÂÂÂÂÂÂÂ__setappvideo();
    ÂÂÂÂÂÂÂÂ__setforceflags();
    ÂÂÂÂÂÂÂÂDI_Close();
    ÂÂÂÂÂÂÂÂWPAD_Shutdown();
    ÂÂÂÂÂÂÂÂ*(volatile unsigned int *)0xCC003024 |= 7;
    
    /* TBD: I believe this will not work, there are future patches required. */
    ÂÂÂÂÂÂÂÂretval = ES_LaunchTitle(BC, &view);ÂÂÂÂ// bushing's code
    ÂÂÂÂÂÂÂÂwrite_font(195, 202, "Gamecube BC Error");
    ÂÂÂÂÂÂÂÂreturn 0;
    ÂÂÂÂ}
     
  6. LagunaCid

    Member LagunaCid GBAtemp Fan

    Joined:
    May 14, 2008
    Messages:
    370
    Country:
    Canada
    Um.
    Dude, there is a GC backup loader already, through GeckoOS.
     
  7. sampson

    Newcomer sampson Advanced Member

    Joined:
    Jul 25, 2008
    Messages:
    90
    Country:
    United States
    without a modchip? i thought you had to have sdload so you could run it in gc mode for it to work or some shit
     
  8. FGOD

    Member FGOD Wii gaming bitch

    Joined:
    Jun 1, 2008
    Messages:
    1,339
    Location:
    Netherlands, Den Helder
    Country:
    Netherlands
    but you need a chip or a sdgecko and the ones that doesn't need chip is only for gc homebrew not backups as far as i know, or you must know something i don't know...
     
  9. sampson

    Newcomer sampson Advanced Member

    Joined:
    Jul 25, 2008
    Messages:
    90
    Country:
    United States
    well i fiddled with the gamecube function but i can't even get a disc to pull the id in gcos and will error out before the attempt at booting it happens. real games work fine though of course.

    unfortunately none of the decryption programs for wii isos and claimed gc isos actually work so *shrug*

    sweet bed here i come
     
  10. jinxvorheeze

    Member jinxvorheeze GBAtemp Advanced Fan

    Joined:
    May 13, 2008
    Messages:
    572
    Country:
    United States
    Didn't know any of the backup loaders claim to have GC support. Must have missed that one. And as for the GC Boot with SDGecko, it works just fine. So you are either bad at following directions, or you also have no idea what your talking about. An SD Gecko is only like 3 euro's, why don't you people just buy one and stop complaining. Or follow a tutorial and build your own. This problem was solved a while ago.
     
  11. Miles

    Member Miles GBAtemp Fan

    Joined:
    Apr 28, 2008
    Messages:
    367
    Country:
    United States
    I'm pretty sure that not even bushing can code something to make gamecube GCMs and ISOs work in Wii mode.
    You'll need an SD Gecko, USB Gecko, or a mod chip.

    The only GC ISO Loader that works on Wii Hardware is SDboot.
     
  12. sampson

    Newcomer sampson Advanced Member

    Joined:
    Jul 25, 2008
    Messages:
    90
    Country:
    United States
    re: jinxvorheeze

    i am well aware of sdboot and the sort pull the corncob out of your ass. i wanted to see how the function works in relation to the custom dip module but i guess that doesn't matter because i should go buy something else because it already works. guess i better get a modchip to because hey, they already work.


    your line of logic is flawed at best and is terribly annoying. you come off as a pompous asshole when you didn't even read anything i said in regards to booting gc games. everyone knows about sdboot.

    if you read the code i pasted the guy attempted to put gc support in his loader but is going to require further work. r;c;p and grow up a bit while you're at it
     
  13. Mrkinator
    OP

    Member Mrkinator Neil Peart Wannabe

    Joined:
    Sep 28, 2008
    Messages:
    890
    Location:
    Great White North, Eh!
    Country:
    Canada
    Wow, sorry to get everyone pissed [​IMG]. I just thought I'd share that code.

    I know there's a way using GC Homebrew Launcher and using SD Gecko to boot SDBOOT to run the game from SD Gecko (but there's a chance of bricking). Has anybody tried that method?
     

Share This Page