Open Miepee opened 1 year ago
My guess is that some of the game instructions in memory have been inadvertently overridden by the injected code that make the button combination possible. When the game tries to execute that overridden code path, the crash occurs.
The fix for this is not clear, but being able to reproduce this crash would be necessary to verify a potential fix in the future.
So, some questions would be:
'Daisy Circuit v1.0.zip' 'lanayru mining facility.zip' 'pianta village v1.2.zip'
DKSummit.zip mariocircuit1.zip Royal64_V1_1.zip
'DS Desert Hills V.1.zip' 'Moonview Highway v1.2.zip' 'Shroom Ridge 1.0.zip'
'DS Mario circuit V.1.zip' 'N64 Choco Mountain 1.0.zip' ShyGuyGBA_v1_1_DBCherry_Riidefi.zip
'DS - Peach Gardens.zip' N64_Frappe_Snowland_v1.0.zip SNES-Mario-Circuit-3-v1.1a.zip
"funky kong's hideaway.zip" N64_Kalimari_Desert_v1.0.zip 'SNES Rainbow Road 2.0.zip'
'FZGPL White Land Flower II v1.0.zip' 'N64 Mario Raceway v1.0.zip' toads-turnpike-v1.2.zip
GBA_Luigi_Circuit_v1.0.zip old_choco_sfc.zip 'WII DS Delfino Square v1.1.zip'
GBA_Riverside_Park_v1.0.zip 'peach circuit.zip' Wii-Luigi-Circuit-v1.0.zip
GBA-Sky-Garden-v1.3.zip 'pianta parlor.zip' 'wii rainbow road.zip'
all of them are available on the mkdd ct wiki. The order is the following:
#DPAD RIGHT:
(all vanilla)
(all empty / DS Test Circuit)
Happened with both no options, as well as --sample-rate=2400 --use-auxiliary-audio-track
Cheats were disabled
Can't really clarify this. I know it only happened after I played a little bit of some cups at varying ccm's with a german locale. I can't remember though which cups i played at which ccm's in which order. I just tried replicating it by playing DOWN 100CCM Flower, but couldn't actually manage to repro the crash this way.
(I'll assume you meant 24000 Hz
, as otherwise 2400 Hz
is incredibly low.)
Thanks for the detailed description. My current hypothesis is that memory fragmentation eventually makes the game run out of memory. So, when it needs to load something new (e.g. the RECORDS screen), it crashes.
I'll try to reproduce this at some point, but I can't imagine there is much I can do to address it.
...except superseding the injected Gecko codes with injected functions written directly in C/assembly, which I am planning to do eventually for adding support for arbitrary number of pages.
I guess we can retest this then.
(I'll assume you meant 24000 Hz, as otherwise 2400 Hz is incredibly low.)
Correct, accidentally had a typo there.
Slightly offtopic but
to do eventually for adding support for arbitrary number of pages
How do you plan to move between the different ones? How it's done in most MKW modpacks right now, where one can just scroll infinitely to the right/left?
How do you plan to move between the different ones? How it's done in most MKW modpacks right now, where one can just scroll infinitely to the right/left?
I haven't really seen how it is done in Mario Kart Wii. In this case, it wouldn't be an infinite scroll, but rather the same approach that is currently followed.
At the moment, pressing a key combination (Z + D-pad <direction>
) triggers the page change, using the four directions to choose between four different pages, which is pretty limiting. The idea would be to use only two directions (up and down), and then cycle through the pages, which would no longer be limited by the controls.
I see. Since GCN has the combined cup, where mushroom+flower+star+special are all played in random order, this probably makes more sense.
If you go for that, may i request to drop the Z input, and make it cycle via analog stick up/down? AFAIK they currently don't do anything in the cup (not track) selection.
If you go for that, may i request to drop the Z input, and make it cycle via analog stick up/down? AFAIK they currently don't do anything in the cup (not track) selection.
Even if it is possible to determine whether the user is currently selecting cup, or track, I find it convenient that course pages can be changed while selecting tracks. I was thinking of sticking with the D-pad
, but we'll see it. The Z
button will be hopefully dropped.
Hopefully this has been addressed by b6602f47304c4c1be3e917cd964d543eb7a4200f (although I am still to give a good test).
Thanks, my testing will sadly have to wait a few weeks though. Is there any reason why the legacy method is still implemented? I assume it's there to find out whether the new method has any bugs/regressions?
I think the legacy implementation can stay for one or two releases more, in case there are any unforeseen problems with the new approach. Once users confirm things work as expected (also on GameCube and Wii), the Gecko codes can be removed.
Not sure what causes it, there isn't any crash message from dolphin afaik, it just does the "beeeep" and black screen.