-
Notifications
You must be signed in to change notification settings - Fork 14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rumble issues in Windows CE titles #13
Comments
Sega Rally 2 test from 9/17/22:
MaplePad's SendControllerStatus packet (A press) looks the same as the HKT-7700's in this capture. I did see some spurious spikes on the data lines after turning off the glitch filter in DSView. Maybe the next step is to capture this particular transaction with the scope and make sure this isn't a SI issue or a bug in the PIO engine. |
the problem is that the current implementation of maple in pio is very crap and misses some packets, you need to completely rewrite the pio rx module and get rid of state_machine.c |
Thanks for the heads up! I'm no longer working on this project, but feel free to open a PR if you want to contribute |
I'm currently busy with my project of connecting USB keyboards/mouses to DreamCast. |
Sounds like your rewritten Maple Bus core works well. If it's abstracted enough to merge into MaplePad you're welcome to open a PR. |
Description:
One of many, many problems with WinCE software. Some titles don't detect rumble at all. Some titles advise that an unsupported accessory has been connected when rumble is enabled, and work fine with rumble disabled. Sega Rally 2 seems to detect rumble, but hard crashes when rumble actually activates in-game, i.e. when the DC sends a setCondition packet to MaplePad (how this is even possible is beyond me.)
This is probably a packet format issue, or a packet that isn't being handled correctly by MaplePad. I already fixed some bugs where MaplePad wasn't responding to GetMediaInfo packets properly, so maybe there are more issues like that lurking in the code. The worst possible scenario would be if the vibeHandler timer ISR is somehow interfering with the receipt/transmission of rumble-related packets. Also, maybe continuous vibration/AST not being implemented is causing problems...? Really need to address that.
To-do:
Capture logic traces with HKT-7700+stock VMU and MaplePad to compare behavior. Some analysis of Sega Rally 2 already performed last year.
Affected titles:
(tested on 1.4b/c)
The text was updated successfully, but these errors were encountered: