Hacking Using a gamecube controller as a wiichuck and other things

  • Thread starter Thread starter Kekelek
  • Start date Start date
  • Views Views 1,831
  • Replies Replies 9

Kekelek

New Member
Newbie
Joined
Jun 21, 2018
Messages
4
Reaction score
0
Trophies
0
Age
56
XP
78
Country
Korea, North
I want to get\make several mods but I don't know anything about programming or modding so I need help.
The mods I'd like to get are something along these lines:

1: I'd like to imitate a wiimote+nunchuck with a gamecube controller; from my basic knowledge of how electronics work, I know that the wiimote sends signals to the Wii when buttons are pressed (e.g the A button is pressed, signal 1-a gets send to the Wii) and I'd like to make a mod that translates the signals send from a gamecube controller and converts it into wiimote signals (e.g GCC presses the A button, signal 2-a gets send to the Wii, and then the mod converts it into signal 1-a).
I'd also like this to be configurable from the home menu (e.g I go to the home menu, access a configuration screen, and change what buttons on the GCC correspond to the imitated wiimote (e.g GCC A button corresponds to wiimote B button or vice versa)), in a similar way to brawl, where you can go to the nametag section and change what buttons do what (e.g change the L button from shield to jump), and I'd also like to save certain GCC to wiimote configurations (e.g set no.1, set no.2 etc.), again in a similar way to brawl.

2: I'd like to establish a connection between my Wii and my PC for ripping and backing-up my games; this one is pretty simple, I already have the homebrew channel and necessary programs installed, I just need something to store the games on during the ripping process, I don't have any SD cards or USB sticks I can use, I just have a 3.0 USB male to male cable.

3: I'd like to establish a connection between my Wii and my PC for game-loading; even simpler than the previous one, I just want it so I can still play my games if my optical-drive fails (it already has once, I had to take the Wii apart and replace it).

4: I'd like to establish a connection between my Wii and my PC for game capture; I bought a capture card a while back but I can't get it work, I tried registering for the support forum but I'm still waiting for the administrator to approve my account and since it's been two weeks I just thought to see if I can find other ways to record in the meantime.

5: I'd like to turn my wii into a GCC adapter; I want to play games on my PC with my GCC, and since I don't have a GCC adapter, I just figured that I should be able to turn my wii into one.

Now of course I'm not expecting anyone to make these mods for me, but I'd like to know if these mods already exist or not so I can be spared the effort of having to make them.
If they don't, then I'd appreciate it if someone would be willing to help me learn how to make these mods myself since, as I said at the beginning, I don't know anything about programming and I don't know where I'm supposed to look for the info I need.
Thanks in advance.
 
1- A third party "wiimote emulator" (hardware) is required, unless you're willing to add GC controller drivers to games that don't have them in the first place (which would probably be a nightmare without AT LEAST a disassembly)

2- said cable is in violation of USB standards, and you would need a CIOS to make the Wii USB stack run as device instead of host, and an homebrew to actually do something with the previous item (simulate an USB optical drive? simulate a flash drive containing an ISO you can just copy off, like on PSP?)

3- you would need an optical drive emulator like the Flatmii chip or equivalents - which are, frankly, products of questionable build quality and software support (oh, and you would need another USB cable :) )

4- pretty much the only reasonable option is again a capture card, unless someone were to design a "capture card" like the (3)DS/Vita ones (which would require soldering and are unlikely to be made in any significant quantities, if they're ever invented at all, due to competition with the former video-input type)

5- this one is at least much more realistic than software implementations of the others (since it wouldn't be competing with a simultaneously running game's processing power), however this is also nonexistant to the best of my knowledge - exactly because to use a Wiimote or its other accessories you can just cut out the middleman and use Bluetooth, while for GC controllers there are inexpensive official Wii U adapters and plenty of clones too
 
Don't connect that M-M cable if you haven't already. It's possible that voltage differences could fry the devices on either end. They're not meant for connecting two hosts together.
 
1- A third party "wiimote emulator" (hardware) is required, unless you're willing to add GC controller drivers to games that don't have them in the first place (which would probably be a nightmare without AT LEAST a disassembly)

2- said cable is in violation of USB standards, and you would need a CIOS to make the Wii USB stack run as device instead of host, and an homebrew to actually do something with the previous item (simulate an USB optical drive? simulate a flash drive containing an ISO you can just copy off, like on PSP?)

3- you would need an optical drive emulator like the Flatmii chip or equivalents - which are, frankly, products of questionable build quality and software support (oh, and you would need another USB cable :) )

4- pretty much the only reasonable option is again a capture card, unless someone were to design a "capture card" like the (3)DS/Vita ones (which would require soldering and are unlikely to be made in any significant quantities, if they're ever invented at all, due to competition with the former video-input type)

5- this one is at least much more realistic than software implementations of the others (since it wouldn't be competing with a simultaneously running game's processing power), however this is also nonexistant to the best of my knowledge - exactly because to use a Wiimote or its other accessories you can just cut out the middleman and use Bluetooth, while for GC controllers there are inexpensive official Wii U adapters and plenty of clones too

Wow thanks for the fast reply, I didn't expect a response so fast.

1: Why do I need additional hardware? Is it because the GCC doesn't have as many buttons as the wiichuck? I don't need the power button on a GCC but I guess I need the + and - buttons for most games, though I could just not use the 1 and 2 buttons since most games that can be played with the wiichuck don't seem to use them very often. I'm not sure what a driver is, isn't it the program that translates the signals sent from the input device to code? What I want is to make the wii think that when I plug in a GCC, I'm actually connecting a wiichuck. Would a program that just says "turn signal A into signal B" really take up that much of the wii's power that it would make games unplayable? Also, are you saying that I would need to make mods for every individual game? Doesn't every game already just use a wiimote/chuck/etc.? Why would I need to configure such a program for every game when I can just tell the wii to turn a GCC signal into a wiimote signal? It's not like the wiimote sends out different signals for the A button when you play a different game right?

2: I'm not sure what you mean, it was bought from Amazon, are these kinds of cables illegal? I don't know what most of these words mean but I have the homebrew channel installed and I have a program called CleanRip that I can use to take games from the disks and put them on an SD card or USB drive, but I don't have one that's big enough so I'd like to cut out the middle man and just have them put directly into my PC's hard drive.

3: Why do I need to emulate the optical drive? From what I've read the wii can just load games from an external hard drive with a mod, I didn't read anything about extra chips that need to be installed?

4: What I had in mind was something like a mod that sends the video images not just through the AV cable but also through the USB cable so that I can record it on my PC, or a mod that puts all the video signals into a file that I can later convert into MP4's with a different program.

5: Good to hear that this seems to be possible. I guess that means I'll have to make it myself then. I know there are adapters and such but I'd like to see what I can do with what I have, the official Wii U adapters seem a bit expensive from what I've seen and the clones seem to be of unreliable quality, I don't want to buy something that I can use three times and then have it stop working.

Thanks for trying to help me, I said didn't know anything about programming and such, I know as much as a toddler about all this stuff, I have a very simple concept of electronics based on what I've seen when cleaning some controllers and consoles, so I just have some vague ideas of what it is I want.

--------------------- MERGED ---------------------------

Don't connect that M-M cable if you haven't already. It's possible that voltage differences could fry the devices on either end. They're not meant for connecting two hosts together.
I haven't, I guess I'll have to check the differences and see if I can maybe limit how much gets send through either end. Thanks for the warning.

Wow the posts merged, I've never seen this before lol more sites should do this.
 
Last edited by Kekelek,
1: Why do I need additional hardware?
Because the Wiimote is a Bluetooth device (with the Bluetooth card being USB), and a GC controller it's an SPI device; at a low level (lower than a regular programmer is concerned with, as they normally use Nintendo's/libogc's premade drivers), they're accessed completely differently

There are some unofficial Gamecube to Wiimote-accessory adapter (and official Gamecube-looking controllers that have such an adapter built in), but those emulate a Classic controller; and yes, the A button on the Wiimote is technically completely different from the A button on a classic controller (as is the A button on a GC controller, if such an adapter isn't used)

It's therefore possible to develop a GC to Nunchuck adapter, but probably not GC to Wiimote itself (unless one wants to duplicate the main electronics of the Wiimote itself, meaning a box that connects wirelessly to the console)
Also, are you saying that I would need to make mods for every individual game? Doesn't every game already just use a wiimote/chuck/etc.?
Every game developer is free to implement whichever controllers they want, and if game X is not programmed to care about the Nunchuck's analog stick (which, just to repeat, outputs a different signal than a Classic controller or directly-connected GC controller) then it just won't care about its position... and that's assuming the game even knows what a Nunchuck is

Each (official) controller of the same type is supposed to read out in the same way, however, since controller drivers are baked into each game (likely at different positions in the executable/console's memory once loaded, the drivers themselves probably being different depending on when the game was made) a bulk search-and-replace, or even a short piece of code reading the controllers itself and spoofing another, are not really possible

I'm not sure what you mean, it was bought from Amazon, are these kinds of cables illegal?
Not against the law, but against the letter and spirit of the USB standards (where an USB-A port is to be found only on hosts, not on devices - regardless of what the Chinese manufacturer of the day of bottom-barrel SATA to USB adapters was thinking); such cables are indeed not certified USB (unless the logo is fake...)

I have a program called CleanRip that I can use to take games from the disks and put them on an SD card or USB drive, but I don't have one that's big enough so I'd like to cut out the middle man and just have them put directly into my PC's hard drive.
It is possible to make a dumper that sends its output to a computer on the same network, but... that takes time and effort, must consider the added complexity and failure points of networking, and said effort (which would probably not be actually used by many) would be in strong direct competition to going to the nearest electronics store and buying 3x8GB USB sticks, or a 16 GB SD card, or a 500 GB USB hard drive, ...

3: Why do I need to emulate the optical drive? From what I've read the wii can just load games from an external hard drive with a mod, I didn't read anything about extra chips that need to be installed?
When you use the combination of CIOS and USB Loader, that's indeed what gets done; but since you excluded the idea of having the game on an USB or SD plugged into the console, the only remaining options are using burnt discs (if your optical drive is old enough to support them), or using a hardware device that substitutes the original optical drive: some like the WODE and Sundriver use an USB drive in the first place (in their heyday, the Wii still got homebrew-obstructing updates), some like the Flatmii connect to a computer (which must stay on) and access whichever single ISO is currently loaded in its PC software

It's not technically impossible to make a software-only solution to load games over the network (in fact it's probably the most popular mod for PS2 Slims), but again... higher complexity when there's already a high-compatibility and proven method using commonly available and higher performing USB drives!

4: What I had in mind was something like a mod that sends the video images not just through the AV cable but also through the USB cable so that I can record it on my PC, or a mod that puts all the video signals into a file that I can later convert into MP4's with a different program.
Both are high-bandwidth (which with USB also means high CPU usage); on top of that, you would need to either significantly rewrite the USB drivers to act as a device, or to have some storage connected to the console ;)
(It is also not necessarily possible for the CPU to have access to the final picture to be output to the screen, if the software being used uses certain hardware-accelerated effects)

Thanks for trying to help me, I said didn't know anything about programming and such, I know as much as a toddler about all this stuff, I have a very simple concept of electronics based on what I've seen when cleaning some controllers and consoles, so I just have some vague ideas of what it is I want.
Don't worry: while, to be frank, most of your ideas here are unrealistic and/or duplicates of what already exists (especially since you appear to be more interested in a working result, than doing so for the entertainment value of homemade electronics/software), I'm sure we all wanted as kids a flying car that would run on free water for 1000 kilometers at a time, before someone explained us WHY that's effectively impossible!
 
Because the Wiimote is a Bluetooth device (with the Bluetooth card being USB), and a GC controller it's an SPI device; at a low level (lower than a regular programmer is concerned with, as they normally use Nintendo's/libogc's premade drivers), they're accessed completely differently

There are some unofficial Gamecube to Wiimote-accessory adapter (and official Gamecube-looking controllers that have such an adapter built in), but those emulate a Classic controller; and yes, the A button on the Wiimote is technically completely different from the A button on a classic controller (as is the A button on a GC controller, if such an adapter isn't used)

It's therefore possible to develop a GC to Nunchuck adapter, but probably not GC to Wiimote itself (unless one wants to duplicate the main electronics of the Wiimote itself, meaning a box that connects wirelessly to the console)

Every game developer is free to implement whichever controllers they want, and if game X is not programmed to care about the Nunchuck's analog stick (which, just to repeat, outputs a different signal than a Classic controller or directly-connected GC controller) then it just won't care about its position... and that's assuming the game even knows what a Nunchuck is

Each (official) controller of the same type is supposed to read out in the same way, however, since controller drivers are baked into each game (likely at different positions in the executable/console's memory once loaded, the drivers themselves probably being different depending on when the game was made) a bulk search-and-replace, or even a short piece of code reading the controllers itself and spoofing another, are not really possible


Not against the law, but against the letter and spirit of the USB standards (where an USB-A port is to be found only on hosts, not on devices - regardless of what the Chinese manufacturer of the day of bottom-barrel SATA to USB adapters was thinking); such cables are indeed not certified USB (unless the logo is fake...)


It is possible to make a dumper that sends its output to a computer on the same network, but... that takes time and effort, must consider the added complexity and failure points of networking, and said effort (which would probably not be actually used by many) would be in strong direct competition to going to the nearest electronics store and buying 3x8GB USB sticks, or a 16 GB SD card, or a 500 GB USB hard drive, ...


When you use the combination of CIOS and USB Loader, that's indeed what gets done; but since you excluded the idea of having the game on an USB or SD plugged into the console, the only remaining options are using burnt discs (if your optical drive is old enough to support them), or using a hardware device that substitutes the original optical drive: some like the WODE and Sundriver use an USB drive in the first place (in their heyday, the Wii still got homebrew-obstructing updates), some like the Flatmii connect to a computer (which must stay on) and access whichever single ISO is currently loaded in its PC software

It's not technically impossible to make a software-only solution to load games over the network (in fact it's probably the most popular mod for PS2 Slims), but again... higher complexity when there's already a high-compatibility and proven method using commonly available and higher performing USB drives!


Both are high-bandwidth (which with USB also means high CPU usage); on top of that, you would need to either significantly rewrite the USB drivers to act as a device, or to have some storage connected to the console ;)
(It is also not necessarily possible for the CPU to have access to the final picture to be output to the screen, if the software being used uses certain hardware-accelerated effects)


Don't worry: while, to be frank, most of your ideas here are unrealistic and/or duplicates of what already exists (especially since you appear to be more interested in a working result, than doing so for the entertainment value of homemade electronics/software), I'm sure we all wanted as kids a flying car that would run on free water for 1000 kilometers at a time, before someone explained us WHY that's effectively impossible!

1: It's not that I want to play games specifically with a GCC, I don't have any problems with the wiimote, it's just that the wiimote is always going through batteries so fast that they have to be replaced after less than 24 hours of gameplay, and since the wii is used every day by several people they have to be replaced pretty often, so any adapters that basically allow me to plug in a GCC into a wiimote are useless to me.

2: My understanding of how controllers work is 1; you press any button 2; a signal gets send to the console 3; the signal gets put in the translation box 4; the signal gets translated into a set of code 5; the set of code gets send to the game 6; the game checks what to do when it receives this particular set of code. I don't know if this is how it works, I'm just guessing at this point I have no idea how else it could work (pic is poor attempt at illustration). Are you saying that there's no program installed on the wii itself that automatically translates controller signals into code, and that these programs are all in the game files? Why would they do it like this, wouldn't it be much simpler to just have this ready on the wii?

3: I've looked into it a little and from what I've seen, the reason why this isn't allowed is because the USB system works in a boss(host?) and servant(device?) kind of way, and only the boss is allowed to have USB-A ports and only the boss is allowed to change things on the connected computers. I don't really get why this is though, can't you just allow both to change whatever they want on each other?

4: Based on what I've learned from the USB system, my PC would be the host and the wii would be the device(right?), so would it be possible to make a folder that the device can edit as they please? One of the reasons why I don't really want to buy anything is because I have like 600GB worth of free space on my PC and it seems crazy to go and buy more data storage when I have so much already (I also don't have that much money to spend on luxury things so I'd like to spend as little as I can), and as I said earlier, I don't like buying things that only work like three times before they need to be replaced, I'd much rather buy something once that's lasts me forever so if I'm going to buy USB drives or hard drives, I'm going to buy one that's good quality and because I don't know which brands are reliable I'm gonna have to look for ages to figure out which one I'm going to get. There's no point in getting SD cards though, the wii can't read NTFS SD cards and FAT32 doesn't allow for file sizes bigger than 4GB and since all wii games go just over 4GB, it's impossible to rip games in one piece and I can't merge multiple files back into one because I need to run a special command which I can't do because my POS computer won't admit that I'm the administrator.

5: It's not that I'm excluding USB drives, hard drives or SD cards(which I can't use for reasons above), It's more that I want to use my PC as an external hard drive for the wii and I don't know how to do this.

6: So if I try sending video data through the USB ports, it would make the game laggy right?

It didn't seem so unrealistic though, I just figured that if I could just establish a connection between all the things I want to use, I'd be able to make some programs that would make them all work together.
 

Attachments

  • idk.jpg
    idk.jpg
    66.9 KB · Views: 228
I haven't, I guess I'll have to check the differences and see if I can maybe limit how much gets send through either end. Thanks for the warning.

Wow the posts merged, I've never seen this before lol more sites should do this.

The problem with connecting the console directly to a PC is that the PC would have to act as a USB mass storage controller. AFAIK there is no Wii homebrew or cIOS patches that can access USB as a serial port.
 
it's just that the wiimote is always going through batteries so fast that they have to be replaced after less than 24 hours of gameplay
I've heard good things about Eneloop. Never used them though.
Are you saying that there's no program installed on the wii itself that automatically translates controller signals into code, and that these programs are all in the game files?
Of course the Wii knows exactly what buttons are being pressed, it's just that, for example, A on a classic controller isn't the same as any other button on any other controller. If the game is only designed for a Wii remote + nunchuk, it won't look for any buttons from GameCube controllers. I think there are gecko codes available for some games to force them to look at other controllers though, so you might want to look around for that.
 
I've heard good things about Eneloop. Never used them though.

Of course the Wii knows exactly what buttons are being pressed, it's just that, for example, A on a classic controller isn't the same as any other button on any other controller. If the game is only designed for a Wii remote + nunchuk, it won't look for any buttons from GameCube controllers. I think there are gecko codes available for some games to force them to look at other controllers though, so you might want to look around for that.

I looked into good batteries a pretty long time ago and back then I came to the conclusion that eneloop would probably be the best I can get, but it seems that I've forgotten about it somehow so thank you for reminding me about that.

I think you misinterpreted what I'm trying to say with this. I've lived under the assumption that video game systems (and other forms of electronics) work by receiving signals from controllers, translate them to code, then send the code to the game, and then the game checks what to when it gets this particular set of code, as I've tried to illustrate in the picture I included with my previous post. But, if I'm interpreting Ryccardo correctly, this translation program is not actually built into the Wii itself, and has to be included separately in every piece of software that the Wii runs. As I thought this would work differently from how it apparently actually works, I had hoped that it would be possible to go this hypothetical translation box and then install some sort of mod/hack that would make it so that, while the Wii still gets signals from a GCC and is able to recognize that it is receiving signals from a GCC, instead of sending the sets of code that it would get from translating GCC signals to the game, it would instead send sets of code that would normally get send when translating wiimote/chuck/etc. signals, thereby tricking the game into believing that it's being controlled by a wiimote/chuck/etc. while it's actually being controlled by a GCC. I had also hoped that, as an extension to this logic, it would be possible to make some sort of menu in which I could change what each button does á la smash bros brawl. As for gecko codes, I have no idea what they are but I have heard of the term before in the context of modding/hacking so I suppose I'll have to look into that as well, thank you for the tip, I really appreciate all help with this.
 
But, if I'm interpreting Ryccardo correctly, this translation program is not actually built into the Wii itself, and has to be included separately in every piece of software that the Wii runs.
Almost, the "translation program" is built into IOS (the Wii's OS, of which there are many versions).
I had hoped that it would be possible to go this hypothetical translation box and then install some sort of mod/hack that would make it so that, while the Wii still gets signals from a GCC and is able to recognize that it is receiving signals from a GCC, instead of sending the sets of code that it would get from translating GCC signals to the game, it would instead send sets of code that would normally get send when translating wiimote/chuck/etc. signals, thereby tricking the game into believing that it's being controlled by a wiimote/chuck/etc. while it's actually being controlled by a GCC.
iirc there are gecko codes for some games that do what you're thinking of, but they don't exist for every game. Gecko OS is homebrew that loads them from (titleid).gct (Gecko CheaT) files.
I had also hoped that, as an extension to this logic, it would be possible to make some sort of menu in which I could change what each button does á la smash bros brawl.
Not with conventional Gecko codes. If you made your own codes, you'd have to manually map each button to another button and recompile the .gct every time you made a change. And, iirc, you can't disable gecko codes without making a whole new gct.
 

Site & Scene News

Popular threads in this forum