Hacking DIOS MIOS (Lite)

  • Thread starter Thread starter sk0ld
  • Start date Start date
  • Views Views 1,056,145
  • Replies Replies 4,949
  • Likes Likes 38
Yeah, I got the impression it was recently set to default to not showing anything for new accounts but there are still a lot who it was already set to the US by default and just never got around to changing it . . . or just never really cared. Some have hard enough time with English anyway that it's too much of an effort to decipher all the profile settings. It's enough effort just to read and write in the actual forums (the part they actually care about.)
 
I'm posting this, but I don't know if it will be useful to anyone else but Crediar.

When the Wii switch off automatically, I have either this :

Code:
DIOS-MIOS v2.0b
Built: Jul  8 2012 04:08:02
This software is licensed under GPLv3, for more details visit:
http://code.google.com/p/diosmios
Alloc:Failed to clear memory!:F5FB554F

or this:
Code:
DIOS-MIOS v2.0b
Built: Jul  8 2012 04:08:02
This software is licensed under GPLv3, for more details visit:
http://code.google.com/p/diosmios
DIP:f_mount():0
EHCI:port 0 has usb2 device connected! reset it...
EHCI:port 0 reseted status:1005...
EHCI:device 1: BC2 2100...
ehci_discover():0
DataAbort: LR:ffff8ee2, 13600090, 34, 32340000, ffffee18, 800002, 10009, 10029

Code:
DIP:f_mount():0
EHCI:port 0 has usb2 device connected! reset it...
EHCI:port 0 reseted status:1005...
EHCI:device 1: FF3E FFFF...
ehci_discover():0
DataAbort: LR:ffff8db0, cd600000, f033, cd60f033, ffffee18, 800002, 10009, 10029

DM v2.0 update5
both launching a PAL game, from a PAL wii, using USBLoaderGX, from disc (I put the video mode and config setting in the log).
It's also doing it when booting from USB (config 0x20)
I'm in 480p in wii settings.

my HDD has 32k clusters, and is self powered (it has never be a problem). Though, when USBGX see the drive, sometime DM doesn't and is stuck in a reset loop.
Code:
DIP:f_mount():0
EHCI:port 0 has usb2 device connected! reset it...
EHCI:port 0 reseted status:1005...
EHCI:device 1: 0 0...
ehci_discover():0
USB:USB_Alloc():failed:53
USB_GetDescriptors():-4
USB:Could not open device:-4
EHCI:port 0 has usb2 device connected! reset it...
EHCI:port 0 reseted status:1005...
EHCI:device 1: 0 0...
ehci_discover():0
USB:USB_Alloc():failed:53
USB_GetDescriptors():-4
USB:Could not open device:-4
EHCI:port 0 has usb2 device connected! reset it...
EHCI:port 0 reseted status:1005...
EHCI:device 1: 0 0...
etc.
 
Yes,I live in Europe...It never crossed my mind that the default flag is pre-set in USA.

Cyan,I really appreciate your effort.I hope Crediar finds a solution soon enough.And I think that this is not a huge problem as some months before DML rev52+ was running almost all the PAL 576i games.

Thanks a lot!
 
Just some good news.
It is now possible to use your external hard disk even if your FAT partition is not the first partition.
I have my NTFS partition as my first partition and FAT partition as my 2nd partition. After applying what is said on the post i linked below by bleucheese7, i succesfully managed to get DIOS MIOS working on my external without transferring data and/or deleting partitions.
http://gbatemp.net/t...ost__p__4302931
 
  • Like
Reactions: 2 people
Something I was thinking about earlier, surely its been asked. Rather than fixing Audio Streaming in DM, would it be possible to patch the iso's? I wouldn't think so, but just thought I'd ask.
 
to give you an idea (at least based on the concept I have of it) of how audio streaming is supposed to work and why it's not just a patchable thing ...

the game basically says to the Wii (particularly in this case, DM) "start playing audio from X part of the disk" and then the game just forgets about it. At most it tells it where or when to stop but that's about it. It's the Wii's job to read a little audio into, play it, monitor when it's running out and go get some more without loosing it's place on the disk. It's a little more complicated when you have to keep track of the where on the disk image that is on USB or SD while still running the normal game stuff from another part of the disk image as well. There might be a space issue as well keeping the information for both buffered at the same time.

You can't patch the disk because what's on the disk isn't the problem. The game just relies on the Wii to do all the work. The "patch" would be a matter or rewriting the whole video game's code and adding an audio streaming handler in there so it could take care of it without the Wii's help.
 
to give you an idea (at least based on the concept I have of it) of how audio streaming is supposed to work and why it's not just a patchable thing ...

the game basically says to the Wii (particularly in this case, DM) "start playing audio from X part of the disk" and then the game just forgets about it. At most it tells it where or when to stop but that's about it. It's the Wii's job to read a little audio into, play it, monitor when it's running out and go get some more without loosing it's place on the disk. It's a little more complicated when you have to keep track of the where on the disk image that is on USB or SD while still running the normal game stuff from another part of the disk image as well. There might be a space issue as well keeping the information for both buffered at the same time.

You can't patch the disk because what's on the disk isn't the problem. The game just relies on the Wii to do all the work. The "patch" would be a matter or rewriting the whole video game's code and adding an audio streaming handler in there so it could take care of it without the Wii's help.

Gotcha. I was thinking the audio streaming worked more inline with earlier consoles that had separate audio tracks, like some dreamcast games did (chu chu rocket comes to mind). IIRC there was a way to inject those audio files and change the TOC on the disc or something along those lines.
 
I think my devkitpro has devkitARM r34, devkitPPC r24, and libogc 1.8.7 tool-chain. I used it to compile either S/UNEEK or DM/L.
Once you get the iosmodule.elf or diosmioslite.elf, you could use fixelfmod to insert iosmodule.elf/diosmioslite.elf into the 00000001.app extracted from the DM or DML wad correspondingly.

Here are the steps to create the new WAD for DM:
1. Unpack DM wad file (e.g. use WadMii) to get 00000001.app
2. Compile DM source codes to get iosmodule.elf
3. Run fixelfmod 00000001.app iosmodule.elf temp.app
4. Rename temp.app as 00000001.app
5. Pack DM wad file back by changing the old 00000001.app to the newly created 00000001.app
6. Profit
Similar steps could be used for DML.

Let me know whether these steps work for you or not.

Cheers.

It worked perfect for me, however no more DM updates for sneek nor svn source updates :unsure:
 
I think my devkitpro has devkitARM r34, devkitPPC r24, and libogc 1.8.7 tool-chain. I used it to compile either S/UNEEK or DM/L.
Once you get the iosmodule.elf or diosmioslite.elf, you could use fixelfmod to insert iosmodule.elf/diosmioslite.elf into the 00000001.app extracted from the DM or DML wad correspondingly.

Here are the steps to create the new WAD for DM:
1. Unpack DM wad file (e.g. use WadMii) to get 00000001.app
2. Compile DM source codes to get iosmodule.elf
3. Run fixelfmod 00000001.app iosmodule.elf temp.app
4. Rename temp.app as 00000001.app
5. Pack DM wad file back by changing the old 00000001.app to the newly created 00000001.app
6. Profit
Similar steps could be used for DML.

Let me know whether these steps work for you or not.

Cheers.

It worked perfect for me, however no more DM updates for sneek nor svn source updates :unsure:

I have a question, what exactly does does this do to the DM wad, just make it work better?
 
Does someone know if DM (Lite) support ocarina when launched from disc ?
(by loader)
That would be nice. I would wonder where you'd put the file IF it works, anyway.
I don't see why it wouldn't work.

The Loader send to DM(L) the path to the .gct file, without the device name.
the path looks like this: "/codes/ID6.gct"
there's no SD:/ nor USB1:/ etc.

DM(L) just check the said path on the device it is meant to use: SD for DML, USB1 for DM.

Just set the folder in the loader as usb1:/any/path/ if you are using DM.


Even when launching from Disc, DM try to mount the USB because it's used for different things (gct, logs, etc.)
 
Does someone know if DM (Lite) support ocarina when launched from disc ?
(by loader)
That would be nice. I would wonder where you'd put the file IF it works, anyway.
I don't see why it wouldn't work.

The Loader send to DM(L) the path to the .gct file, without the device name.
the path looks like this: "/codes/ID6.gct"
there's no SD:/ nor USB1:/ etc.

DM(L) just check the said path on the device it is meant to use: SD for DML, USB1 for DM.

Just set the folder in the loader as usb1:/any/path/ if you are using DM.


Even when launching from Disc, DM try to mount the USB because it's used for different things (gct, logs, etc.)

Actually I have tried all loaders and none of them work . (EX:DM v2.0+ULGX r1193 mod2)
(I put .GCT in both SD card and USB)
 
and you correctly set the path to the GCT in the loader?
or you just copied the ID6.gct file randomly in the /games/ folder or the /games/ID6/ folder?

The loader always send a cheat path to DM(L), you can't decide the path by placing it randomly in hope that DM(L) use it, unless the loader tells DML that you want to load a gct file but without providing a path (which I think no loader are doing).

It could work if you place the gct at the same hierarchy on USB and SD.
if you have sd:/codes/ set in the loader, and you place the gct in usb:/codes/
then when launching DM, the loader sends "/codes/" which DM will find on USB.

If you correctly set it in the loader, then it might not work when launching from disc.
I'll have to test it.
 
and you correctly set the path to the GCT in the loader?
or you just copied the ID6.gct file randomly in the /games/ folder or the /games/ID6/ folder?

The loader always send a cheat path to DM(L), you can't decide the path by placing it randomly in hope that DM(L) use it, unless the loader tells DML that you want to load a gct file but without providing a path (which I think no loader are doing).

It could work if you place the gct at the same hierarchy on USB and SD.
if you have sd:/codes/ set in the loader, and you place the gct in usb:/codes/
then when launching DM, the loader sends "/codes/" which DM will find on USB.

If you correctly set it in the loader, then it might not work when launching from disc.
I'll have to test it.

Yes, I am sure I set the path correctly in the loader and there is no problem
if I launch the game from USB or SD. (ULGX r1193 mod2)

However,it doesn't work if I launch from disc.

I am not sure if this is something to do with the source code of DM (main.c)
Code:
if( !ConfigGetConfig(DML_CFG_BOOT_DISC) )
{
if( DVDSelectGame() == DI_SUCCESS )
{
if( ConfigGetConfig(DML_CFG_NMM) )
CardInit();
} else {
dbgprintf("Loading disc\n");

((DML_CFG*)0x01200000)->Version = CONFIG_VERSION;
((DML_CFG*)0x01200000)->Magicbytes = 0xD1050CF6;
((DML_CFG*)0x01200000)->VideoMode = DML_VID_DML_AUTO;
((DML_CFG*)0x01200000)->Config = DML_CFG_BOOT_DISC;
}
}
 
this code is run only if you don't run from disc (if boot_disc is not true), so it's irrelevant to the problem when run from disc.
(but it's strange, as it would init NMM only if it's not from a disc?).


the cheat file is loaded here.
It depends on the Config set by the loader, it require both "DML_CFG_CHEATS" and "DML_CFG_CHEAT_PATH" to be set.

I will do some test this evening and see the DM logs.
 
New GCReEx-v0.3

Changelog:

3.0:
- fixed a "bug" which would crash systems that didn't have 1GB RAM free (beyond good and evil)
GCReEX now uses a 2MB copy buffer for files over 32MB in size
- GCReEX now extracts all files in order of the FST which might decrease seek time when extracted to an unfragmented drive
- added two disc support, both games are now extracted into the same folder
 

Site & Scene News

Popular threads in this forum