Hacking M3i Zero - Replace firmware with hbmenu?

Atashi

Out of the Loop
OP
Member
Joined
Feb 4, 2010
Messages
176
Trophies
0
Location
Ontario, Canada
Website
planetstephanie.net
XP
94
Country
Canada
I've recently got an M3i zero card and I'm trying to figure out if I can replace the firmware with Homebrew Menu aka hbmenu. With everything I've seen about multiboot / quadboot etc. I'm hoping it is possible to get it to launch straight into hbmenu.

I've been looking at all the files in the /system folder but can't figure out which one I'd need to replace. Eg. is there a single boot file like for example _ds_menu.dat or akmenu4.nds that are used on other cards?

Thanks!

-Atashi
 

DeltaBurnt

I'm bored
Member
Joined
Feb 21, 2009
Messages
3,353
Trophies
0
Age
28
Location
Where intellect matters
Website
Visit site
XP
276
Country
United States
Goto the system folder and look for a file along the lines of "G6.ini". There will be a line that says something like "Directboot=" and put the nds file that launches the menu there. I think this only works for touchpod though, not sure.

If you want to really to have it boot to it naturally, look into some of the files like loader.eng, g6load.eng, etc.

I'm sure Xenon++ and dsrules would have more info on this aspect.
 

Atashi

Out of the Loop
OP
Member
Joined
Feb 4, 2010
Messages
176
Trophies
0
Location
Ontario, Canada
Website
planetstephanie.net
XP
94
Country
Canada
Thanks for the tip! I tried it but it didn't work... some googling indicates that the directrun= function only works with roms rather than homebrews.

I'll poke around at those .eng files and see if I can figure out what's the first thing to be run.

-Atashi
 

Atashi

Out of the Loop
OP
Member
Joined
Feb 4, 2010
Messages
176
Trophies
0
Location
Ontario, Canada
Website
planetstephanie.net
XP
94
Country
Canada
Thanks Dizzy, that seems to work!

It looks like Sakura is still doing something in there, or maybe it's the M3 itself - something happens but it's fairly quick, but it looks like something is loading before defaultn.nds gets run.

I still haven't figured out how the M3 firmware does things (i.e. how to replace it completely) but till then, this works!

-Atashi
 

thedicemaster

Well-Known Member
Member
Joined
Apr 26, 2008
Messages
2,432
Trophies
0
XP
303
Country
Netherlands
Atashi said:
Thanks Dizzy, that seems to work!

It looks like Sakura is still doing something in there, or maybe it's the M3 itself - something happens but it's fairly quick, but it looks like something is loading before defaultn.nds gets run.

I still haven't figured out how the M3 firmware does things (i.e. how to replace it completely) but till then, this works!

-Atashi
you'd have to replace g6dsload.eng, but that would require more work than you think.

the fcore(the real firmware, the piece of code in the flashcart itself) boots the g6dsload.eng which contains the code to boot a firmware.
g6dsload however isn't a plain nds file, and aside from that if you don't boot into a proper firmware first dldi patching is never done so the homebrew loader would never be able to find homebrew.

what your m3i does right now is: DS(i) boots fcore.dat from the m3i's own memory, the fcore.dat boots g6dsload.eng from your microsd, g6dsload.eng boots m3sakura, and m3sakura autoboots the homebrew loader.
 

DeltaBurnt

I'm bored
Member
Joined
Feb 21, 2009
Messages
3,353
Trophies
0
Age
28
Location
Where intellect matters
Website
Visit site
XP
276
Country
United States
thedicemaster said:
Atashi said:
Thanks Dizzy, that seems to work!

It looks like Sakura is still doing something in there, or maybe it's the M3 itself - something happens but it's fairly quick, but it looks like something is loading before defaultn.nds gets run.

I still haven't figured out how the M3 firmware does things (i.e. how to replace it completely) but till then, this works!

-Atashi
you'd have to replace g6dsload.eng, but that would require more work than you think.

the fcore(the real firmware, the piece of code in the flashcart itself) boots the g6dsload.eng which contains the code to boot a firmware.
g6dsload however isn't a plain nds file, and aside from that if you don't boot into a proper firmware first dldi patching is never done so the homebrew loader would never be able to find homebrew.

what your m3i does right now is: DS(i) boots fcore.dat from the m3i's own memory, the fcore.dat boots g6dsload.eng from your microsd, g6dsload.eng boots m3sakura, and m3sakura autoboots the homebrew loader.

There needs to be a rom included somewhere in the boot process.

Also I think the defaultn.nds will work on the latest Sakura as well.
 

Atashi

Out of the Loop
OP
Member
Joined
Feb 4, 2010
Messages
176
Trophies
0
Location
Ontario, Canada
Website
planetstephanie.net
XP
94
Country
Canada
thedicemaster said:
you'd have to replace g6dsload.eng, but that would require more work than you think.

the fcore(the real firmware, the piece of code in the flashcart itself) boots the g6dsload.eng which contains the code to boot a firmware.
g6dsload however isn't a plain nds file, and aside from that if you don't boot into a proper firmware first dldi patching is never done so the homebrew loader would never be able to find homebrew.

what your m3i does right now is: DS(i) boots fcore.dat from the m3i's own memory, the fcore.dat boots g6dsload.eng from your microsd, g6dsload.eng boots m3sakura, and m3sakura autoboots the homebrew loader.

Thanks, this is the sort of info I wasn't able to find on my own.

Aside from dldi patching, does m3sakura do anything else? Like any other patching, or leave anything in memory? Or when the homebrew loader runs, is m3sakura completely gone from memory?

For what it's worth, hbmenu is supposed to be a complete firmware replacement and is pre-patched (or at least, contains dldi code) for a couple different cards, but looking through the sources, I realize that M3 is not one of them. I should have done more research before-hand, hehe.

Thanks again for the help!

-Atashi
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Xdqwerty @ Xdqwerty: yawn