Hacking cIOSX rev21: controller lag [FIXED!]

  • Thread starter Thread starter netspy
  • Start date Start date
  • Views Views 114,059
  • Replies Replies 395
xabby666 said:
EDIT: Ok dudes. I've tried to solve the wiimote issue. If you want to try you can build your cios with this EHCI.APP module. Tell me if lag is assent and if wiimote sync is fast in wiiflow. Remember, i'm doing this for fun, if you don't want to test, to install, to builds new cioses tell me and i finish to bore you.
I never had this sync issue, I'm using cfg-loader, but I want to say that everything still works fine in every game, thanks for fixing this sync issue for those people
yaywii.gif
 
XFlak said:
Seriously though, I notice that you often tell people how to do something instead of doing it yourself. I've always wondered why you don't just do it yourself, especially when no one is able to follow your complicated instructions (not because you don't explain it well, but just cuz its over most ppl's heads to begin with). Anyways, I'm sure the advice your giving is sound... but I doubt some1 else from this thread is going to be able to implement your suggestion without some serious help... and u know what they say... if u want something done right, do it yourself!!
biggrin.gif
If I see someone trying to write code that they obviously don't understand I would rather have them understand why they're doing it wrong than just give them a quick-fix answer. Otherwise nobody learns anything and I end up being called upon every time the code needs to be updated. I thought the point of a forum was for people to help each other, not just sponge off the one person who knows what they're doing.

This isn't really hard stuff here; timers have initial and repeat periods, when their time period has elapsed they send preset messages to the message queues which are retrieved by os_message_receive.
I've already explained what the 3 parameters are for: the target timer id, the initial period for the first message, and the repeat period for each subsequent message. I don't know what values the original rev20 used but I would suspect it used a bad initial period seeing as it called the argument "dummy" (if the initial period is 0 the timer is effectively disabled since the first message will never be sent).
 
tueidj said:
XFlak said:
Seriously though, I notice that you often tell people how to do something instead of doing it yourself. I've always wondered why you don't just do it yourself, especially when no one is able to follow your complicated instructions (not because you don't explain it well, but just cuz its over most ppl's heads to begin with). Anyways, I'm sure the advice your giving is sound... but I doubt some1 else from this thread is going to be able to implement your suggestion without some serious help... and u know what they say... if u want something done right, do it yourself!!
biggrin.gif
If I see someone trying to write code that they obviously don't understand I would rather have them understand why they're doing it wrong than just give them a quick-fix answer. Otherwise nobody learns anything and I end up being called upon every time the code needs to be updated. I thought the point of a forum was for people to help each other, not just sponge off the one person who knows what they're doing.

This isn't really hard stuff here; timers have initial and repeat periods, when their time period has elapsed they send preset messages to the message queues which are retrieved by os_message_receive.
I've already explained what the 3 parameters are for: the target timer id, the initial period for the first message, and the repeat period for each subsequent message. I don't know what values the original rev20 used but I would suspect it used a bad initial period seeing as it called the argument "dummy" (if the initial period is 0 the timer is effectively disabled since the first message will never be sent).
So Tueidj, if daveboal and xabby666 really try right now but then admit that they do not know how to fix it, would you then help us all out?
 
Download ModMii 4.4.6D-BETA HERE



This is a special test version of ModMii for people experiencing controller lags with rev21 cIOSs

This BETA version of ModMii can build the following cIOSs (using xabby666's mod of waninkoko's rev21 EHCI module) for testing from Download page 4:
  • cIOS249[37]-v21[LagFix].wad
  • cIOS249[38]-v21[LagFix].wad
  • cIOS249[56]-v21[LagFix].wad
  • cIOS249[57]-v21[LagFix].wad
The only difference between this and 4.4.6C-Beta is that it includes daveboal/xabby666/waninkoko's rev21 EHCI lagfix2 mod instead of lagfix1.

There might be another Beta release sometime soon if someone eventually implements tueidj's recommendations to further improve rev21's EHCI module.


Enjoy!
 
tueidj said:
If I see someone trying to write code that they obviously don't understand I would rather have them understand why they're doing it wrong than just give them a quick-fix answer. Otherwise nobody learns anything and I end up being called upon every time the code needs to be updated. I thought the point of a forum was for people to help each other, not just sponge off the one person who knows what they're doing.

Off topic: I agree that providing help is better than providing a quick fix answer, as the person who has the problem will learn something as they try to solve the problem. I'm a neuroscientist and have no coding experience, but thanks to this forum (and several others) I now have a very basic understanding of coding and can write some simple programs in Matlab for my data analysis.

On topic: @davebaol & xabby - I hope that the information provided by tueidj can help you figure out how to get os_restart_timer working properly (with 3 arguments). Perhaps there is some info about this on wiibrew that can help as well.
 
TheRealVisitor said:
Sorry to say this guys but I tried xabby666s new modded ehci.app with cios249 and base57 and the sync issue with wiiflow (latest) is still there. When using the forwarder syncing is slow as with the davebaols ehci.app (7-8 sec). Syncing when starting through HBC it is a little bit faster now (about 5 sec).

Since this happens only here, you can ignore this and use the new modded superior ehci.
laugh.gif


Games still run fine, lagfree.

So Xflak, use the new EHCI.app for ModMii.
I use both CFG and wiiflow (tried from SD and a "does-lag" USB drive) and don't have any sync problem, can you share your setup? maybe i can help.
 
XflaK, my mod is over davebaol previus mod. So This ehci is modded by me and davebaol.

And... Thanks to you
yaywii.gif
 
Please test and report.
You should notice nothing different than before but now o_restart_timer has been called with 3 arguments and correct values.
It's based on our lagfix so don't worry, mate.
happy.gif
 
Oh, fotgot to mention the use of os_restart_timer was very buggy.
In usbstorage.c there was this line
QUOTE said:
os_restart_timer(1000000, 10000000);
That's obviously meaningless since the 1st argument should be the timerId which is always generated by calling os_create_timer so it cannot be a constant known at compile time.
 
One question: Someone is reporting to waninkoko this bugs collection?Maybe he could work with us.

Greetings.
 
He's too much busy with ps3 at the mo and we are really close to a definitive fix.
When we'll have a final release we'll find a way to let him know so all changes can be committed.
 
Can anyone else download the file, or is MediaFire having problems? Doesn't seem to be working.
 
davebaol said:
Oh, fotgot to mention the use of os_restart_timer was very buggy.
In usbstorage.c there was this line
QUOTE said:
os_restart_timer(1000000, 10000000);
That's obviously meaningless since the 1st argument should be the timerId which is always generated by calling os_create_timer so it cannot be a constant known at compile time.
And therefore os_restart_timer returns error almost sure.

Greetings.
 

Site & Scene News

Popular threads in this forum