Hacking Gamecube to Classic Controller Converter 2 questions

This project started just because they're working on Wiimote support for Devolution right now.And of course there will be controller inputs, Wii ones.
you cant use wii controllers in gamecube mode...
dont know what devolution is, been off the scene for like a year haha


EDIT... Ignore me, just had a look at devolution, gamecube games in wii's ios would work which is what devolution is, my bad (Y)
 
...you do realize that's essentially just shoe-horning a classic controller guts into a gamecube controller, right?

Also, such a product is no longer available:
http://infiniteneslives.com/products.php

EDIT: Mayflash adapter news! It's going to be released next month:
http://www.mayflash.com/?news/19.html said:
W007----GC Controller Adapter for Wii/Wii U will be released at the beginning of March.
 
Not trying to say the Mayflash adapters are any better than yours. Typically having multiple sources and options with different implementations of the same thing are good to have, are they not?

EDIT: Newest revision of Devolution has super early Wiimote and Classic Controller support (read: only works during the sample loader). To quote myself:

Wiimote didn't seem to do anything...aka it seems to act the same as it did in the previous revision.

EDIT: The wiimote doesn't do anything... IN-GAME. The sample loader, however, now has Wiimote controls even though the text still says "Press X and/or Y". Press 2 on the wiimote to mount USB and press 1 on the wiimote to mount SD card; also use the Home button for "Press START".

EDIT 2: Classic controller also works for the sample loader, however the controls are horribly confusing. Press "X" to mount SD card, press "A" to mount USB, press "B" to load game, press "Y" to exit, and press "Home" for 'Press Start'.
 
Not trying to say the Mayflash adapters are any better than yours. Typically having multiple sources and options with different implementations of the same thing are good to have, are they not?

EDIT: Newest revision of Devolution has super early Wiimote and Classic Controller support (read: only works during the sample loader). To quote myself:
That doesn't mean anything. Saying that the wiimote works in the sample loader is like saying that it works in wiiflow, or any other loader. The sample loader is not devolution. However, tueidj has indicated that he does have wiimote support working, but that it wouldn't be released "for awhile". The fact that the sample loader supports the wiimote is likely just an oversight in that he forgot to comment it out before releasing. It's literally like 4 lines of code.
 
It's my impression that it takes more than 4 lines of code to make that wonky button arrangement that the classic controller uses.
 
My comment about 4 lines of code was in reference to the sample loader, which has nothing to do with "that wonky button arrangement that the classic controller uses". The sample loader is a plain-ole Wii homebrew application, and a button is a button. And anyway, the whole remapping thing doesn't actually take any more code at all, just *different* code.
 
Oh? I figured because it was a standard Wii program that things like the typical A = accept, B = back would have already been baked into the code and then it would take MORE code to actually change that. I mean, surely people aren't coding Wiimote support from scratch for their homebrew apps, right?
 
Oh? I figured because it was a standard Wii program that things like the typical A = accept, B = back would have already been baked into the code and then it would take MORE code to actually change that. I mean, surely people aren't coding Wiimote support from scratch for their homebrew apps, right?
I can see how someone could make that assumption but no, a programmer has to specify EVERY SINGLE TIME if he wants A to confirm and B to cancel or if he want's some other button or combination to do it at all. It's kind of an unwritten rule but a programmer has to do just as much work to follow it as to not follow it.
 
Well I just hope Devolution makes use of some sort of control customization, because B = Accept and Y = Back just keeps throwing me for a loop, especially when everything thing else on the Wii AND the DS (homebrew for both included) uses A & B for Accept and Back. I mean, couldn't he just make a simple XML file that is created along side the verification files that has the button mappings and therefore can be edited on a per-game basis?
 
Yeah, I hope he does something like that, too. I remember being kinda weirded out at first by the button configuration in Mario World and in Super Metroid I had to ALWAYS change the button configuration. Everyone has their own idea of how the buttons should go for some games and some games it would be nice to just be able to "fix" the original button configuration they're made with. Storing and using a custom button configuration isn't all that hard. If anything, it's writing the interface to be able to set the button configuration that is a little work.

We'll just have to wait and see what he does, though.
 
Well I just hope Devolution makes use of some sort of control customization, because B = Accept and Y = Back just keeps throwing me for a loop, especially when everything thing else on the Wii AND the DS (homebrew for both included) uses A & B for Accept and Back. I mean, couldn't he just make a simple XML file that is created along side the verification files that has the button mappings and therefore can be edited on a per-game basis?
Well for the sample loader it's literally a case of editing a couple of lines of code and recompiling. I'd guess that once there's in-game support it will be mapped on a user-specified basis.
 
Hey bootsector, I've been trying to work out the issue with garbage on dis/reconnect of the GC controller. Your fix stops the wiimote from locking up completely when the GC controller is disconnected, but I think that upon disconnect, the buttons and axes need to be zeroed out, and when you reconnect, you need to re-init. I've been trying to make this work, but I'm not really familiar with the tight timing inside the GCPad_recv() function, so I'm not sure if the issues are due to bad logic or timing issues. Here's what I have so far: http://pastebin.com/U9GbawAC
 
Hey bootsector, I've been trying to work out the issue with garbage on dis/reconnect of the GC controller. Your fix stops the wiimote from locking up completely when the GC controller is disconnected, but I think that upon disconnect, the buttons and axes need to be zeroed out, and when you reconnect, you need to re-init. I've been trying to make this work, but I'm not really familiar with the tight timing inside the GCPad_recv() function, so I'm not sure if the issues are due to bad logic or timing issues. Here's what I have so far: http://pastebin.com/U9GbawAC

Hey!

Re-init doesn't seem to work: I have tried several ways of doing that and I always kept getting garbage after disconnection. The thing is, it seems to me that the init command doesn't do anything: You can even comment out the first init function call, before the polling loop, that it would still work fine.

Maybe there's an undocumented command that will properly reset the controller registers instead of cutting its power?
 
Ok, I've made some headway. No more garbage on disconnect. Still get garbage on reconnect, but I have a feeling that there still needs to be a re-init. Ignore my previous changes to GCPad.cpp, and do this in wra.cpp
Code:
// Inside gc_loop()
 
Change
for(;;) {
button_data = GCPad_data();
 
. . .
 
to
for(;;) {
if(!GCPad_timeouted())
button_data = GCPad_data();
 
else {
memset(button_data, 0, 8);
button_data[2] = center_lx << 2;
button_data[3] = center_ly << 2;
button_data[4] = center_rx << 3;
button_data[5] = center_ry << 3;
}

The N64 loop will need something similar. I have a feeling that combining this with my previous attempt at a re-init might just squash this bug for good...
 
  • Like
Reactions: Maxternal

Site & Scene News

Popular threads in this forum