Welcome! Log In Create A New Profile

Advanced

Idea: Enhanced Gamecube functionality for Wii mode.

Posted by agoaj 
Idea: Enhanced Gamecube functionality for Wii mode.
December 06, 2008 08:35PM
Would it be possible to make a gamecube emulator for Wii mode? It would have to translate the MIOS commands appropriately, and also limit it's use of the CPU to get the right clocking.
Features this could have that Starlet doesn't:
Wiimote support(mostly classic controller, but playing Megaman anniversary collection with a mapped wiimote?)
Virtual Memory Cards(manage virtual memory cards on your SD card!)
Built in AR/Ocarina.
Run different region games on 3.4 where you can't use the menu loaders.
Overclock it for fun.

So the question is, is it possible to translate the MIOS commands quickly enough to
a)run gamecube games at fullspeed?
b)add features listed above?



Edited 2 time(s). Last edit at 01/03/2009 03:24AM by agoaj.
Re: Idea: Gamecube Emulator for Wii mode.
December 06, 2008 10:01PM
The Wii is nothing more than an upgraded Gamecube. Their machine code is exactly the same- PowerPC. There's no need to translate anything. Actually, there's no need to emulate anything. What we COULD do is make a runtime environment. It would run the game in Wii mode and then everything else could be achieved by using hooks. It is perfectly possible!
Re: Idea: Gamecube Emulator for Wii mode.
December 06, 2008 10:07PM
Well, there are some problems if you just run it in Wii mode(like through gecko OS), games tend to crash.
Re: Idea: Gamecube Emulator for Wii mode.
December 10, 2008 03:52AM
How would I go about creating these hooks or even reading off a gamecube disc. Libdi gives an error.
Re: Idea: Gamecube Emulator for Wii mode.
December 17, 2008 09:25PM
I don't know how hooks work, actually. You could look at the source for Gecko OS, if you want.
Re: Idea: Gamecube Emulator for Wii mode.
December 17, 2008 09:37PM
Within every computer system there are things called IRQ's (Interrupt Requests), these are usually tied to hardware devices and flag up when the hardware requests some information. These IRQ flags break the normal process flow of the CPU (ie, running the game), to tend to these requests.

You can overwrite the normal handler for these requests with your own code. In order not to break anything, the new hook code gets installed as the IRQ handler, however, the original IRQ handler's memory address is stored. That way, once your hook has run, you can then send the data on to the original hook, allowing everything to continue functioning as normal.
Re: Idea: Gamecube Emulator for Wii mode.
December 19, 2008 02:30AM
Sorry about giving after-life to this topic, but...
A GC emulator for Wii may sound redundant, but what about some kind of customized MIOS? I mean, patching the MIOS with these features, or something like that... Yeah, a pretty dumb thought, but there's already a patched version for use with the GC Homebrew Launcher, so, is this close to possible?
Re: Idea: Gamecube Emulator for Wii mode.
December 19, 2008 03:06AM
so it wouldn't technically be an emulator, it would use the built in capabilities of the Wii?
Re: Idea: Gamecube Emulator for Wii mode.
December 19, 2008 08:31AM
lol, I mentioned this a while ago :-)
[forum.wiibrew.org]

From my understanding MIOS does two things, 1. preps the console for running Gamecube stuff, and 2. locks down Wii specific stuff.

I reckon it'd be possible to patch it to prevent locking out the Wiimotes (maybe even find a way of making the WiFi look like a GC LAN adapter?). Not saying it would be easy tho
Re: Idea: Gamecube Emulator for Wii mode.
December 19, 2008 12:02PM
A hook basically means changing "call doSomethingCool" in the code to "call myNewCode", which ends with "goto doSomethingCool". It's not too difficult if you know assembly, but later N64 games had code in place to detect and remove hooks, and/or make the process more difficult, to stop Gameshark (and maybe copiers) from working; it wouldn't surprise me if those anti-hook developments carried through with Gamecube and Wii.

As for MIOS, you could probably patch it to create interfaces that Gamecube games can use to access Wii functionality, without breaking Gamecube compatibility. However, the games would have to be coded/hacked to use those interfaces. In some cases I imagine MIOS is already responsible for managing these things (e.g. preventing access to the extra RAM), so they could probably be transparently adapted, but other things (e.g. accessing memory cards and controllers) are done (AFAIK) by the CPU accessing hardware registers directly, so you'd need to either trap access to those registers or hook the code that does it, and hack in something to redirect to SD/Wiimote/etc.

Without a lot of work to make existing games work with the new features, I think the only real benefit you'd get is being able to write Gamecube homebrew that can detect and use extra Wii features without having to be modified to work in Wii mode, like with Game Boy games being able to detect and use Game Boy Color features without dropping compatibility with older Game Boys.
Re: Idea: Gamecube Emulator for Wii mode.
December 20, 2008 06:52AM
Its basically impossible. The GC emulator for the PC barly works. My Comp can support crysis on very high with 25-95 fps but while playing mario kart on that emulator i get fps and the graphics are disorted aswell. the only solution to this is to run a 64 bit os. even then it has its share of problems. So if it is this hard to run a gc emulator on a powerful PC imagine what will happen to the wii. it would go -45 fps then catch on fire. lol. BTW the wii is slightly powerful than the xbox one, and lacks coding similar to DX8 (which xbox 1 used). Nintendo uses something else to make up for it though.
Re: Idea: Gamecube Emulator for Wii mode.
December 20, 2008 09:54AM
@Painguy: The purpose of an emulator is to mimic the processor instruction set and system architecture of another platform. However, as the Wii is just an upgraded Gamecube, it already has the same instruction set and architecture, so it requires absolutely minimal interaction from the system. (Hence why you can plug in GC discs in the System Menu)
Re: Idea: Gamecube Emulator for Wii mode.
December 20, 2008 06:44PM
I'm pretty sure hooks still work with the Wii/Gamecube. How else do you explain Gecko OS?
Re: Idea: Gamecube Emulator for Wii mode.
December 21, 2008 10:20PM
Well, the hooks in gecko OS don't work with either 3.3 or 3.4. I was thinking of not using MIOS and just creating a runtime environment that would push most opcodes to the cpu/gpu. The environment would catch any interrupts for controls or memory cards etc, and would run it's own code to handle that with Wii features. This way you wouldn't have to patch MIOS and it could all be handled in software.

My concern is that software would be slow enough that it would be worse than MIOS.
Re: Idea: Gamecube Emulator for Wii mode.
December 22, 2008 04:19AM
Really, the way to do this is to extend MIOS, so I'm moving this to the IOS forum.
Idea: Gamecube Emulator for Wii mode.
December 22, 2008 04:19AM
-- moved topic --



Edited 1 time(s). Last edit at 12/06/2008 08:36PM by agoaj.
Re: Idea: Enhanced Gamecube functionality for Wii mode.
January 15, 2009 09:12PM
Quote
agoaj
Well, the hooks in gecko OS don't work with either 3.3 or 3.4.

I don't know about 3.4, but I used Menu Loader once with 3.3, and it worked perfectly...
Re: Idea: Enhanced Gamecube functionality for Wii mode.
January 23, 2009 11:27PM
The fact is that Wii IS a GC, with extra ram and 50% overclock (that doesn't mean Wii is 50% faster than GC, I think it isn't more than 10% faster). It's CPU and GPU is 100% identical to the NGC ones, it hasn't got any extra transistor to optimize nothing due to the fact that nintendo wanted to sell it at 99$ but at the end they rised the price to 250$ but didn't touch the specifications of the console.
So, it has no sense to try to emulate the Wii (or GC, is the same thing but just a bit slower) with a Wii.



Edited 1 time(s). Last edit at 01/23/2009 11:28PM by blacknight.
Re: Idea: Enhanced Gamecube functionality for Wii mode.
January 23, 2009 11:51PM
So, back on the topic of enhancing MIOS?
Re: Idea: Enhanced Gamecube functionality for Wii mode.
February 03, 2009 07:37PM
I guess a more accurate way of saying would be that I want to emulate MIOS on the Broadway instead of messing around with Starlet. That's what I've been wondering, is the broadway fast enough to run the GC code as well as the MIOS emulator. That way we can use the advantages of IOS without having to mess with system stability and actually changing MIOS.
Sorry, only registered users may post in this forum.

Click here to login