Leseratte10 / d2xl-cios

d2xl-cIOS - a fork of davebaol's d2x cIOS

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

"IOS Reload Block" function not work

CerialiQ opened this issue · comments

Hello :

I just wanted to ask, is the "IOS Reload Block" function activated in the cIOS d2xl for the wii mini?

I ask this because some games that benefit from this function do not work. Like for example the Metal Slug 6 of the Metal Slug Anthology

Or "IOS Reload Block" does not work because the loaders (USB Loader GX, Wii Flow, Etc) are not able to enable it in this cIOS ?.

If this function is not enabled in cIOS d2xl, could you enable it?

Or will we have to wait for the loaders to update so that they are able to activate it?

Thank you

PS: Sorry for using the google translator, my English is very bad
PS2: Sorry if this is not the place for this question, try posting this on the "wii-homebrew.com" forum in the "Installing Homebrew on the Wii Mini" tutorial, but I still don't have enough privileges for it.

the d2xl cios is completely based on the normal d2x-cIOS, just the few bytes needed for mini compatibility are changed. I don't know much about IOS reloading to be able to figure out how it works or why it doesn't work. In theory, if it works with d2x, it should work with d2xl as well.

Thanks for your answer

In a normal wii (USA) with the cios d2x-v10-beta52 base 56 + USB LoaderGX, the "IOS Reload Block" function works correctly, for example Metal Slug Anthology, Metal Slug 6 runs without problem.
But in the mini wii (USA), using d2xl-v1-beta2 Base 57 + USB Loader GX, When trying to run Metal Slug 6 the console restarts.

I will test in the normal wii with cios d2x-v10-beta52 base 57, if the same behavior occurs I will return to report

Thank you

Yeah, please test base57 on a normal Wii. If the issue occurs there too, I will try to make my d2xl compatible with IOS56 as well, I just didn't do that yet because it's quite difficult and until now there was no reason to support other base IOS.

I am sorry to report that metal slug 6 works normal in normal wii using cios d2x-v10-beta52 base 57.
To be sure that the "IOS Reload Block" function does not work with cios d2xl-v1-beta2, try the "wii sports + wii sports resort" iso. This game has a couple of alternate dols, and using the "IOS Reload Block" function the game works correctly without the need to use the alternate dol function of the loader.
But on the Wii Mini using cios d2xl-v1-beta2, the screen goes black after choosing between "wii sports" or "wii sports resort"

Hopefully and at some point this can be solved.

Thanks

Hello again

I think I found the problem, although I'm not sure.
The "IOS Reload Block" function seems to be that it does not work due to the name change of cIOS, Analyzing some lines of code on that function, I seemed to see that for it to work, the name of the cIOS is referred to as d2x, but due to the change from name to d2xl, it seems that the function is broken.

Try to return the name of the cIOS to d2x by modifying the FFSP and MLOAD modules that seem to be what you modified, but without success.

So if it is not annoying, you could create a version of your cIOS but without changing its name, leaving it as d2x.

Thank you

Where would that code be? In the USB-Loader GX?

In the ´iosLoader.cpp` there is the following code:

(strncasecmp(info->name, "d2x", 3) == 0)

strncasecmp only compares up to 3 chars in this case, so when the cIOS is called d2xl, the first three chars are still the same and the function still returns 0. There should be no need to rename the d2xl cIOS back to d2x.

If you want, you can test https://wii.leseratte10.de/d2xl-cIOS/d2x-v10-b52mini1.7z , that was the very first test version that was still called "d2x", but I doubt that'll fix it.

I appreciate your attention

References to the name d2x seem to be that I saw them in the module ES.app and in some other

From what I understand, USB Loader GX allows the CIOS itself to manage the "IOS Reload Block" function that is set to Enabled by default in d2x v8+ (and the USB Loader GX is set to AUTO by default).

My first intention was to try the "d2x-v10-b52mini1" version, but unfortunately I have a Wii Mini USA, which has IOS 57 v31775, and the version they recommend is not possible to install.

Sorry for the inconvenience. I hope you can help me.

Thanks again and sorry for the inconvenience

During my own testing of my cIOS on a Wii I found some weird behaviour in the USB Loaders that could result in that bug appearing. I haven't been able to fully confirm that yet, but it looks like I'm going to have to provide updates for all the USB Loaders and add in some changes so it behaves properly when using a d2xl cIOS.

I don't (yet) know when I'll get to that, but I'll let you know when I have a new test version of the d2xl cIOS and the USB-Loader GX ready to test.

Thank you very much for your hard work.

I will be looking forward to the corrections and news you can add.

Thank you

I don't have any game that requires "block IOS reload" so I cannot test this - could you please test the USB Loader GX version at this link and see if the feature works again? (just replace the current boot.dol of the USB loader with the one in this archive)

http://wii.leseratte10.de/devkitPro/tmp/usbloader-gx-d2xl-test.zip

Let me know if this works, then I'll send the changes to Cyan to be included in the USB Loader GX.

Thanks for reviewing this feature.
Tested the mod of the Usb Loader GX, but still not working on wii mini (d2xl-v1-beta2), tested with:

wii sports + wii sports resort: Normal Wii OK, Wii Mini fails (Black screen after game selection)
Metal Slug 6 (Metal Slug Anthology): Normal Wii OK, Wii Mini fails (Console restarts)

Tested with activated and automatic modes, with the same results.

Thanks again

Interesting ...
Let's wait until the d2xl-cIOS can be installed on a Wii as well in the near future, then we can make some more tests if the issue is caused by my cIOS or by the Wii Mini.

My knowledge about programming is very basic, but for a few weeks I have a theory.
Is the failure of this function not due to the way Wii Mini lists its devices? (optical reader, SD and USB).
I think the Wii Mini iOS doesn't have SD support, but CiOS does have SD support. Or I'm wrong? Won't this create a conflict?

If I'm right, would removing the SD support on the CiOS for Wii Mini solve the problem?

Salu2

Well the cIOS does work on the Wii Mini, at least with some games. I've successfully played Mario Kart Wii from an USB drive on my Wii Mini, so I don't think it's a general problem related to the missing SD slot.

All the games I tried work correctly, without using the "IOS Reload Block" function. This for usb.

As I said, it is a theory, I think that CIOS tries to patch modules that use SD on the Wii Mini iOS that it does not have, and when trying to enumerate the devices (optical reader, SD, USB, etc.) this error and the function "IOS Reload Block "collapses.

Other programs such as HBC, Nintendot, sysCheck, YAWMM, etc ... when using Wii Mini iOS in a state without modifications, it seems that they are not affected (at least I think so)

I repeat, this is just a theory of mine.

PS: I hope to make myself understood, I'm using the google translator, I'm sorry

Would you mind basing your custom GX build off of this one? It has all the updated stuff.

A mi con el wii play motion y el wii sports resorts se queda la pantalla negra.
Es el mismo error?

A mi con el wii play motion y el wii sports resorts se queda la pantalla negra.
Es el mismo error?

Si, creo que se trata del mismo error, anteriormente ya lo comente.
wii sports + wii sports resort: al seleccionar alguno, se queda en negro, otros juegos me reinician la consola.
Esperemos que @Leseratte10 pueda solucionarlo.

Salu2

PD: Sorry for writing in Spanish

A mi con el wii play motion y el wii sports resorts se queda la pantalla negra.
¿Es el mismo error?

Si, creo que se trata del mismo error, anteriormente ya lo comente.
wii sports + wii sports resort: al seleccionar alguno, se queda en negro, otros juegos me reinician la consola.
Esperemos que @ Leseratte10 pueda solucionarlo.

Salu2

PD: Perdón por escribir en español

Cuanto tiempo lleva el problema
PD: Porque pides perdon al escribir en español?

@mjxdda el problema lo note desde la fecha que tiene el reporte. (primer mensaje)

Off Topic:
En muchos lugares del mundo, las personas son muy respetuosas del idioma que hablan, y se considera una falta de respeto el cambiar el idioma a uno que la mayoría de los participantes de una discusión no hablen. Así que para evitar ofender a alguien, con la disculpa se intenta demostrar que el cambio es sin esa intención.

Se pueden usar los juegos esos desde otro loader?

Hola, he estado probando en usb loader gx en la opcion load alternative dol y he estado tocando (en el wii sports + sports resorts) y en algunos casos mr ha cargado el video de wii motion plus y en otros pantalla verde, otras veces negra pero no he conseguido nada

I just tested out this feature on my Wii Mini by enabling "return to USB Loader GX" in the loader settings and can confirm that it does not work. The Wii will get stuck on a black screen after selecting Wii Menu from the home menu.

This appears to have been fixed. It appears that the compiled binaries are fine, but the hex-edited ones are not.

I set "Return to" to "USB Loader GX" but got a black screen when I press "Home" and then "Wii Menu". Is that a correct way to test the feature? That is only with beta2. Compiled binaries from devkitARM r32/docker/GitHub CI are fine.

I also set Block IOS Reload to "ON" and played Kirby's Dream Collection 20th anniversary. Moved between a couple of the different games by pressing "Home" and then "Reset" and that did not black screen or anything. "Wii Menu" goes back to USB Loader GX as directed by the settings.

Excuse me if I get this completely all wrong but the problem description is only "doesn't work" with no clear step-by-step replication directions and no clear description of expected vs problematic behavior.

beta3 zip from GitHub is gone, but the ones from my fork will work.

Only the "b52mini" version of the d2xl-cIOS was hex-edited, all the newer ones (beta1, beta2) have been compiled from this source code, so if your fork works with IOS Reload block, then my version should as well, unless you fixed something related to that.