Gamecube Backup Loading development

Discussion in 'Wii - Backup Loaders' started by WiiPower, Feb 16, 2010.

Feb 16, 2010
  1. WiiPower
    OP

    Member WiiPower GBAtemp Guru

    Joined:
    Oct 17, 2008
    Messages:
    8,165
    Country:
    Germany
    Keep all questions and talk about usb loading, replacing memory cards with nand or sd cards and running GC games at higher speed somewhere else. There are enough topics already for these.


    I want to discuss some questions about gamecube development here, because i see quite a lot interest in this, but nobody(except Waninkoko) is doing it. I have a few questions myself and i want to gather some questions and answers here.


    Q: Why is nobody picking GC development up? WiiGator's loader is open source and there are 100s of people developing wii game loaders, why isn't there anybody working at GC loading?
    A: ...

    Q: Is the BC version important? I mean, are new BC versions a problem for GC loading, because that have the signature checking fixed and the MIOS is trucha signed.
    A: ...

    Q: Can somebody help me to move all menu stuff from GC mode to Wii mode? First of all i mean the disc selection for multi game discs. My plan is to select it in NeoGamma(or any other loader) while still in wii mode, and have a reduced GC loader that gets the info which disc to boot from the loader running in wii mode. This will allow a nicer GUI and also motivate to put other features(alternative .dol loading) in there.
    A: ...

    Q: Does the gamecube Gecko OS work with WiiGator's cMIOS in NeoGamma on retail discs(!) with external gamecube mode? I didn't find a .dol for this, but i think this would help a lot. Right now it's quite complicated to get Ocarina and more important Wiird to run on gamecube games, if it would work from NeoGamma easily i hope this would help the development.
    A: ...


    That's it to start with, i will add more when they come to my mind
     


  2. waninkoko

    Member waninkoko GBAtemp Fan

    Joined:
    Feb 1, 2008
    Messages:
    300
    Location:
    Salamanca, Spain
    Country:
    Spain
    Q: When running GC backups, what does have an infuence, what not? I mean, which MIOS is used as base clearly has an influence, also which loader is used(the one inside the MIOS or an external one if that's different). Do the patches to the MIOS have any more influence? To me it looks like the MIOS is patched to allow dvd video read calls at all and also to run GC homebrew if told so by the loader(wii side). Are there more patches done to the MIOS or is really EVERYTHING else done by the loader?

    Only MIOS has influence. IOS (and cIOS) do nothing. Loaders do nothing.

    Loaders basically reset the DVD drive, read the disc ID and if the ID is of a GameCube discs then launch MIOS. No more no less.
    The key in GC loading is the loader inside MIOS. MIOS, by default, includes a simple loader that launches the Gamecube disc. This loader gets "replaced" by a custom one that patches the read routine in the games with a custom routine that reads the disc using DVD reading function(of course MIOS is patched to re-enable DVD video mode).
    Patching the read routine of each game is a hard job (some games have different read routines that need a different custom read routine/patching method, we need to find some free space to store our custom routine and the buffer needed to run, etc.), that's why there are some compatibility issues.
     
  3. WiiPower
    OP

    Member WiiPower GBAtemp Guru

    Joined:
    Oct 17, 2008
    Messages:
    8,165
    Country:
    Germany
    Thanks, i meant the loader inside the GC mode. The naming for all this stuff is complicated. So development can concentrate on the loader inside the MIOS / the external GC loader, good to know.

    Ok new question:
    Is it possible to set a register or whatever to access more RAM? TT did some trick to read RAM in GC mode that belongs to the RAM a GC doesn't have. Is it possible to enable access to all memory, or does move the memory access(->useless for us).
    Edit: I think i mixed something up, i don't think it was GC mode they manipulated, but still a question
    Edit2: Maybe i was right:
    http://hackmii.com/2008/06/genie-into-bottle-mios/
    Why else should nintendo overwrite the memory with random data on the newer MIOS?
     
  4. toejam316

    Member toejam316 GBAtemp Regular

    Joined:
    Apr 20, 2007
    Messages:
    259
    Country:
    New Zealand
    You are right, WiiPower - it was the original PoC hack where they manipulated something (I can't remember what) in gamecube mode to gain access to the additional RAM only accessible in Wii mode, and I believe they initialized the wiimote. It was a very basic hello world.

    It'd be nice to move as many functions as possible out of the mIOS and into the actual loaders, although I have my doubts on what can and cannot be done. It would definitely be beneficial to be able to move the read routine's outside of the mIOS (ie. have the loader read the Game ID and add the appropriate one in during the launch instead), as with a bit of research it could sharply increase compatibility.

    Edit: come to think of it, wouldn't it be possible to manually patch the routines before burning the ISOs? That'd be messier in some ways, but it'd be easier then trying to modularize the function in the mIOS, wouldn't it?
     
  5. WiiPower
    OP

    Member WiiPower GBAtemp Guru

    Joined:
    Oct 17, 2008
    Messages:
    8,165
    Country:
    Germany
    Well since i intend to allow alternative .dol loading and maybe Ocarina/Wiird, patching .isos and removing the need for a loader wouldn't be too good. Hmm, for multi dol games it would be nice, since now it's very complicated to patch the 2nd .dol.

    Waninkoko already said that it's possible to move the development outside the MIOS. Maybe his MIOS does not support this, but with WiiGator's cMIOS does, you only need to write a Magic word to a certain memory offset, the GC loader .dol to another, boot the MIOS and you get into the loader which is able to actually boot the game(after patching the read routines).

    So if it was possible to enable access to the whole RAM, there would be plenty of it for the new dvd read functions and also for lots of Ocarina codes. But i think if it was that easy Waninkoko or WiiGator would have done it already. Hmm, i wonder if the memory at 0x1800-0x3000 is used at the moment. Part of me hopes it is not, because if it was used, we woulldn't be able to add Ocarina/Wiird(if it's possible at all).
     
  6. waninkoko

    Member waninkoko GBAtemp Fan

    Joined:
    Feb 1, 2008
    Messages:
    300
    Location:
    Salamanca, Spain
    Country:
    Spain
    That's possible with mine too.
     
  7. WiiPower
    OP

    Member WiiPower GBAtemp Guru

    Joined:
    Oct 17, 2008
    Messages:
    8,165
    Country:
    Germany
    Ok, then i have to try it again.
     
  8. adamnewy

    Newcomer adamnewy Member

    Joined:
    Feb 2, 2009
    Messages:
    40
    Country:
    United States
    MMM.... I once successfully got a Gamecube Backup to launch from USB. I never release it because I didn't think there was enough demand.
     
  9. hunterm

    Newcomer hunterm Member

    Joined:
    Jan 10, 2010
    Messages:
    36
    Location:
    earth
    Country:
    United States
    LIAR.

    There is no way to do that yet, without a WODE at least...
     
  10. adamnewy

    Newcomer adamnewy Member

    Joined:
    Feb 2, 2009
    Messages:
    40
    Country:
    United States
    Well isn't that what they are trying to do now? isn't that what they are talking about?
     
  11. OOPMan

    Newcomer OOPMan Member

    Joined:
    Mar 20, 2007
    Messages:
    39
    Country:
    South Africa
    Care to post some actual source code for that? I think we would all love to see it and if you did actually somehow manage to do it that would be a huge breakthrough...
     
  12. DKAngel

    Member DKAngel GBAtemp Advanced Fan

    Joined:
    Jan 5, 2009
    Messages:
    659
    Location:
    Perth,Australia
    Country:
    Australia
    hes talking about loaders not getting iso's to load from usb
     
  13. Det1re

    Member Det1re det1re.de

    Joined:
    Oct 28, 2008
    Messages:
    1,272
    Location:
    Germany
    Country:
    Germany
    Well, USB loaders are loaders, too.

    And about those I had another idea to do this:
    Q: Is it possible to change a GC ISO to identify itself as a Wii Disc? Or on another hand modify a Wii ISO in a way that it holds all files necessairy for a GC game and then play it? I haven't put any effort in this idea, but it seems to me, that this would probably allow GC USB loading...
     
  14. Thoob

    Member Thoob LOLmonade.

    Joined:
    May 28, 2009
    Messages:
    1,126
    Location:
    Scotland
    Country:
    United Kingdom
    GTFO.

    No you didn't.
     
  15. WiiPower
    OP

    Member WiiPower GBAtemp Guru

    Joined:
    Oct 17, 2008
    Messages:
    8,165
    Country:
    Germany
    There's a big problem in that. The Wii has basically the same processor as the GC, but faster with some added commands(well i guess it has...), so far so good. But wii games call the IOS to access the dvd drive, while GC games call the dvd drive and everything else itself. I'm not sure, if you were able to patch ALL hardware access in the GC .dol to use IOS functions if it would work. I guess then there would be still something that would make it not work. Also, i can't even imagine how complicated that would be, because now, "only" the dvd functions in the .dol need to be patched, and stuff like the memory card access works the very same way it does for retail games.

    Using the IOS for dvd and direct access for the rest seems impossible, as you need to switch the wii into gamecube mode to be able to access the hardware with the GC commands.
     
  16. VashTS

    Member VashTS Beat it, son

    Joined:
    Mar 14, 2009
    Messages:
    3,654
    Location:
    Upstate NY
    Country:
    United States
    So basically if you were to code an IOS that would emualte the processes of the MIOS then techincally you could make a GC loader using the Wii's full hardware? Am I understanding that correctly Wiipower?

    Of course that is stated simply, the actual process would be insane to code, I would imagine. But if an IOS (or two or three IOS's) had the full instruction set of the MIOS then we would be loading GC games from usb.

    I assume it would be easier to make a GC emulator?
     
  17. giantpune

    Member giantpune GBAtemp Addict

    Joined:
    Apr 10, 2009
    Messages:
    2,860
    Country:
    United States
    when a gamecube game wants to get data from the dvd, it talks directly to the dvd drive. so you need to do 2 things to get it to work. first, you need to add a way to access the usb drive into the equation. and second, you need to direct all dvd assess to the usb instead of the dvd drive.

    obviously WODE and flatmii do this the simplest way. just put a usb device in place of the dvd drive. this action takes care of both requirements. to do this without hardware modification means that you must patch the gamecube game, since, out of the 2 choices, it is the only one that is software. and there are apparently 2 choices for enabling the usb access. its either use GC mode and somehow enable the usb drive to work, or use an ios to play the gamecube game.

    what wiipower is saying is this..
    using the usb while in GC mode would require less patching to the GC game. since the only thing you need to patch are the DVD access commands. The rest of the commands in the game can do what they normally do.

    using an IOS to play a GC game means you would have to patch every command in the game that was accessing hardware that the PPC cannot access in wii mode.

    So my thoughts on that are,
    1) if you were to somehow enable USB to work in GC mode, it would need a whole usb driver to be written and running on the ppc. you couldnt just use the stuff that already exists for the arm.

    2)if you do take the other route, and decide to use a IOS to play wii games, what other commands need to be patched besides the DVD drive stuff? network stuff doesnt work for GC games anyways, so you dont need to patch those. you can already access the GC memory card slots while in wii mode. obviously we can access the controllers. we can already access a big chunk of the memory also. the only other commands are the video output, right?

    3) since using an IOS would require more patching to games, it would mean that there is more of a chance that a certain patch or combination of patches wont work for certain games. So game compatibility would have to be less than using the other method.
     
  18. adamnewy

    Newcomer adamnewy Member

    Joined:
    Feb 2, 2009
    Messages:
    40
    Country:
    United States
    I was only joking anyway but Will it ever be possible to run a Gamecube ISO from USB do you think Wiipower?
     
  19. cobleman

    Member cobleman GBAtemp Maniac

    Joined:
    Jun 23, 2009
    Messages:
    1,449
    Location:
    Australia
    Country:
    Australia
    In GC mode can you use the internet lan adapter connected to Usb to play Phantasy Star Online?
    And if you can, wasnt there a hack to play backups
     
  20. adamnewy

    Newcomer adamnewy Member

    Joined:
    Feb 2, 2009
    Messages:
    40
    Country:
    United States
    If thats the case with the Fantasy Star Online could you make a program to play Gamecube Games over Wifi from your computer
     

Share This Page