Homebrew [indev] TreeHome - custom home menu template

Sono

cripple piss
OP
Developer
Joined
Oct 16, 2015
Messages
2,832
Trophies
2
Location
home
XP
9,444
Country
Hungary
IIRC, homemenu running in background all the time? Can we make custom services/daemons with this?

welp... I doubt... :/ if we need services/daemons, we would need to compile sysmodules, and launch them using the custom home menu on boot

that's not that simple lmao, i thought you were rewriting the home menu, so you should know that NS uses Loader for that, and that menu doesn't touch that.
you sadly kinda look like you don't know what you're doing...

I'll just only make a barebones template, so you won't need to worry about being the home menu :P The template (+ the edited ctrulib) will handle the initialization amd stuff, and I'll provide some details about how to do things differently because we're the home menu :P
About the 3dsx thing... can't I just edit *hax's sooscode to just gspwn the code into .code and jump to it?

so what exactly can we do with this? just wondering.

This will be only a template for other programmers to create a custom home menu, nothing else :P
It'll contain a Makefile-based project setup, a modified ctrulib, and some instructions on how to do homemenu-specific stuff (like launching applications)[/QUOTE]
 
Last edited by Sono,
  • Like
Reactions: gnmmarechal

Mrrraou

Well-Known Member
Member
Joined
Oct 17, 2015
Messages
1,873
Trophies
0
XP
2,374
Country
France
I'll just only make a barebones template, so you won't need to worry about being the home menu :P The template (+ the edited ctrulib) will handle the initialization amd stuff, and I'll provide some details about how to do things differently because we're the home menu :P
About the 3dsx thing... can't I just edit *hax's sooscode to just gspwn the code into .code and jump to it?
If you edited ctrulib, by the way, please do it properly... There is no reason for it to hang when pressing the Home Menu button, if you are editing it... And I am not fond of forking ctrulib either, anyway, but well.
For the .3dsx thing, there's way more to do than that... And what .code do you want to gspwn to ? You'll need to start DLplay, then gspwn the code into it, and still, you have to do way more stuff before that too.
 

Sono

cripple piss
OP
Developer
Joined
Oct 16, 2015
Messages
2,832
Trophies
2
Location
home
XP
9,444
Country
Hungary
If you edited ctrulib, by the way, please do it properly... There is no reason for it to hang when pressing the Home Menu button, if you are editing it... And I am not fond of forking ctrulib either, anyway, but well.
For the .3dsx thing, there's way more to do than that... And what .code do you want to gspwn to ? You'll need to start DLplay, then gspwn the code into it, and still, you have to do way more stuff before that too.

Do you think I want to edit ctrulib that badly? I had to edit it, because for some reason it thinks it's running in a homebrew env, using dummy values in memory, thus resulting in a crash. Also, memory allocation doesn't work on new3DS (svcControlMemory returns "out of resources") because the linear memory size is too big to allocate.
Btw, please read the OP again... I have stated in the OP, that it hangs because I'm still using aptMainLoop (leftover ctrulib code) until I get to the point that I fully reverse engineer CTRSDK's aptMainLoop.
 

TVL

#|
Member
Joined
Feb 17, 2004
Messages
577
Trophies
2
Location
World -1
XP
2,325
Country
Sweden
That's awesome. I hope someone makes the homemenu with tabs, I think that would be way better than having every game on one screen or in folders. Would be nice if wifi toggle was incorporated better too. Will be interesting to see what comes out of this.
 

Mrrraou

Well-Known Member
Member
Joined
Oct 17, 2015
Messages
1,873
Trophies
0
XP
2,374
Country
France
Do you think I want to edit ctrulib that badly? I had to edit it, because for some reason it thinks it's running in a homebrew env, using dummy values in memory, thus resulting in a crash. Also, memory allocation doesn't work on new3DS (svcControlMemory returns "out of resources") because the linear memory size is too big to allocate.
Btw, please read the OP again... I have stated in the OP, that it hangs because I'm still using aptMainLoop (leftover ctrulib code) until I get to the point that I fully reverse engineer CTRSDK's aptMainLoop.
ctrulib isn't only for homebrew environments. You don't need to edit it, there are other ways to do that stuff. https://github.com/smealum/ctrulib/blob/master/libctru/source/system/initSystem.c#L18 (see __attribute__((weak)) ?)
And lol
 

DeoNaught

I'm here to steal memes and break dreams
Member
Joined
Aug 22, 2016
Messages
2,260
Trophies
0
Location
Constant Fear
Website
Gbatemp.net
XP
2,268
Country
United States
So wait... with this we can finally take the Sleep or Shut off screen out
2012-09-02-19.40.30.jpg

Also where's that one website that hosts Homemenu fonts that you can install as CIA?
 

Sono

cripple piss
OP
Developer
Joined
Oct 16, 2015
Messages
2,832
Trophies
2
Location
home
XP
9,444
Country
Hungary
ctrulib isn't only for homebrew environments. You don't need to edit it, there are other ways to do that stuff. https://github.com/smealum/ctrulib/blob/master/libctru/source/system/initSystem.c#L18 (see __attribute__((weak)) ?)
And lol

Umm... are you a troll, or you think I'm a noob? I HAD to edit it, especually apt.c/.h, and allocateHeaps.c, otherwise it was crashing because envGetIsHomebrew always returned true for some reason, thinking it's in a *hax environment.

So wait... with this we can finally take the Sleep or Shut off screen out

ye, the power off screen is homemenu's own thing
 

Mrrraou

Well-Known Member
Member
Joined
Oct 17, 2015
Messages
1,873
Trophies
0
XP
2,374
Country
France
Umm... are you a troll, or you think I'm a noob? I HAD to edit it, especually apt.c/.h, and allocateHeaps.c, otherwise it was crashing because envGetIsHomebrew always returned true for some reason, thinking it's in a *hax environment.
https://github.com/smealum/ctrulib/blob/master/libctru/source/system/allocateHeaps.c#L14
It's __attribute__((weak)) here too.
And there's no need to fork libctru if you need just need some modifications for apt.c either. There's just no need for that, you're just making everything complicated and likely unupdatable, or just completely not-future proof. That's also dirty as hell.
 

Sono

cripple piss
OP
Developer
Joined
Oct 16, 2015
Messages
2,832
Trophies
2
Location
home
XP
9,444
Country
Hungary
https://github.com/smealum/ctrulib/blob/master/libctru/source/system/allocateHeaps.c#L14
It's __attribute__((weak)) here too.
And there's no need to fork libctru if you need just need some modifications for apt.c either. There's just no need for that, you're just making everything complicated and likely unupdatable, or just completely not-future proof. That's also dirty as hell.

Lol, I never noticed it has __attribute__((weak)) until you pointed it out :P

Anyways, ye, cloning a ctrulib into the current directory and compiling it is definitely complicated :P And using Git submodules is even harder. Even though the project template uses the libctru directory in the current directory so it won't mess up the "global" ctrulib... :P
 

TuxSH

Well-Known Member
Member
Joined
Oct 19, 2015
Messages
614
Trophies
1
Age
26
XP
1,295
Country
France
Umm... are you a troll, or you think I'm a noob? I HAD to edit it, especually apt.c/.h, and allocateHeaps.c, otherwise it was crashing because envGetIsHomebrew always returned true for some reason, thinking it's in a *hax environment

He's neither a troll nor looks down at you.

ctrulib causes no problem to my pxi module nor the custom loader provided you do the appropriate stuff (see main.c) and maybe when you don't use their memory allocation stuff (?)

Why do you need envGetIsHomebrew btw? If you think there's a bug in ctrulib, you should report it.
 
Last edited by TuxSH,
  • Like
Reactions: Mrrraou and Joel16

Sono

cripple piss
OP
Developer
Joined
Oct 16, 2015
Messages
2,832
Trophies
2
Location
home
XP
9,444
Country
Hungary
He's neither a troll nor looks down at you.

ctrulib causes no problem to my pxi module nor the custom loader provided you do the appropriate stuff (see main.c) and maybe when you don't use their memory allocation stuff (?)

Why do you need envGetIsHomebrew btw? If you think there's a bug in ctrulib, you should report it.

I don't need "envGetIsHomebrew", but it's used by allocateHeaps, so the heap variables will have invalid values, because envGetIsHomebrew is true :(
 

Aletron9000

Well-Known Member
Member
Joined
May 10, 2016
Messages
1,716
Trophies
0
Location
Classified
XP
1,610
Country
United States
So wait... with this we can finally take the Sleep or Shut off screen out
2012-09-02-19.40.30.jpg

Also where's that one website that hosts Homemenu fonts that you can install as CIA?

There is a way that allows you to change that text to something else. It doesn't remove it, but it is better than the default text.
 

craftsygaming

Genning for verlis
Member
Joined
Sep 24, 2015
Messages
166
Trophies
0
Location
Smashville
XP
158
Country
United States
yes, been waiting for this ever since i a9lh'd my 3ds

i can wait until people release stuff (cuz i cant program in c/c++ rip)

so until then, im lurking here

peace out :D
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Psionic Roshambo @ Psionic Roshambo: @BigOnYa, FarCry 5 is an awesome game with multiple endings!