Hacking Official Corbenik - Another CFW for advanced users (with bytecode patches!)

chaoskagami

G̷̘̫̍̈́̊̓̈l̴̙͔̞͠i̵̳͊ţ̸̙͇͒̓c̵̬̪̯̥̳͒͌̚h̵̹̭͛̒̊̽̚
OP
Developer
Joined
Mar 26, 2016
Messages
1,365
Trophies
1
Location
↑↑↓↓←→←→BA
Website
github.com
XP
2,287
Country
United States
Stable is up. Test it, report back etc etc.

0.2.0 - I'm not dead. Yet.

No, seriously. 86 commits and constant work does not qualify as dead by Gbatemp/4chan/whatever standards. Anyone tracking git knows I've been working on this on-and-off. Even the anons seem to be using the skeith builds, so time for another stable release. I went too long, apologies.

Frontend/user stuff changes:
  • Chainloader now passes argc = 1, argv[0] to chainloaded payloads. This doesn't mean much now, but is obviously useful.
  • Gigantic directory restructure to be more unix-y. Yes, you're going to have to get used to it. No, this will not be reverted. Please re-read the readme to figure out where things moved to.
  • Background support. This has been in the nightly for a while. Put menuhax splashes at /corbenik/share/top.bin//corbenik/share/bottom.bin.
  • Framebuffer is re-initialized as RGBA8 (really ABGR8, but w/e.) Notably, this means whether you run a screeninit payload, what happens is pretty much the same. The screen is reinitialized on boot. The screen mode will be properly reset to RGB8 when launching things via chainload (so don't worry about that.)
  • Dimming support on backgrounds. This means that while you are in the menu, the background is dimmed for readability of text. The algorithm isn't quite perfect; it tunes it down by roughly 30% regardless of average brightness.
  • The need to get firmware titlekeys externally has been obviated. I can retrieve the needed keys to decrypt the cetk from FIRM0 despite a9lh tampering with it. You'll still need to provide 0x11 key96 externally - a9lh destroys this, and there's nothing I can do about this.
  • Implemented a psuedo-pager mode (think less) and updated the help menu to be more, well, helpful.
  • Allow changing of the accent color.
  • Bugfixes and performance optimizations.
  • Probably missed something, I bet.
Changes to distribution:
  • Dropped nochain. The option is still there in the source code and you can pass --disable-chainloader. Problem is that as I may end up adding more options in the future, I'm only going to officially release one configuration. Take firefox for example; there's a huge number of toggles. Building them all for release is absurd.
  • Locales were dropped from being prebuilt. I may provide them in a separate zip later, but for now - you'll need to use the included script to fetch and generate them manually. I can't be arsed to provide a bat file since windows scripting is not sane.
  • Sha512sums are generated against the release.zip as well as the files within - mainly to resolve the issue with any sort of totally unacceptable repacks. Please verify against the sha512sums if you didn't get this off github. If the sha512sums don't match, you'll recieve zero support. I still don't like the whole idea of repacking binaries, but w/e GPL and all that.
Backend/you don't care unless you're looking at the source:
  • Ported to libctr9. This eases some maintenance and cut out much code which needed to be done manually.
  • Dropped makefile in favor of autotools. You can argue about how it sucks all you want; it does the job well.
  • Some amount of refactoring (read: a lot)
 

The Catboy

GBAtemp Official Catboy™: Boywife
Member
Joined
Sep 13, 2009
Messages
27,930
Trophies
4
Location
Making a non-binary fuss
XP
39,281
Country
Antarctica
Stable is up. Test it, report back etc etc.
YES!! I AM GOING TO ABUSE THE SHIT OUT OF YOUR CFW!
Honestly, with all of the testing I've done with the nighties, I doubt I can break this, but I'll try :P
 

The Catboy

GBAtemp Official Catboy™: Boywife
Member
Joined
Sep 13, 2009
Messages
27,930
Trophies
4
Location
Making a non-binary fuss
XP
39,281
Country
Antarctica
Normally I hate double posting, but it's worth for test results! So these are just going to be basic results testing to ensure compatibility is still working. Why? You never know if something can get broken and worth testing! It's the little details that's worth dicking around with. So enough rambling, here's my list!
Old 3DS: A9LH (mini-CFW version) using Corbenik, arm9loaderhax.bin, clean install.
Reboot patches: Monster Hunter Generations US and Monster Hunter 4 US
Boots up and reboots when closing
AGB testing: Final Fantasy 1&2 EU version rom injection: Boots up: shows GBA bootscreen when option is selected and doesn't show boot screen when the option is not selected. Closing reboots the system just fine
TWL testing: R4i Gold Rev7: Boots just fine and reboots system when closing the app.
TWL testing with custom DSi app: TWL Slot-1 Launcher: Boots R4i Gold Rev 7 and reboots system when app is closed
TWL testing pirated DSi game: Crystal Monsters: Boots game and reboots when closing app.
Region-Free: Return to PoPoLoCrois: A Story of Seasons Fairytale: EU: Boots up and closes just fine.
Patched games: Bravely Default Uncensored: Boots and closes just fine
GBC game injections: Dragon Warriors Monsters: Boots up and closes just fine.
And of course: System settings patches work as well

No patches conflict with each other, so it's safe to run as many patches as you want, including region-free and reboot patches. And of course, here's a screen shot of my bootmenu!
screenshot.png
And shameless plug for my theme
http://filetrip.net/dl?Dk4ZY8BNs2

Test results thus far, nothing broke, still trying to break it.
 
Last edited by The Catboy,

chaoskagami

G̷̘̫̍̈́̊̓̈l̴̙͔̞͠i̵̳͊ţ̸̙͇͒̓c̵̬̪̯̥̳͒͌̚h̵̹̭͛̒̊̽̚
OP
Developer
Joined
Mar 26, 2016
Messages
1,365
Trophies
1
Location
↑↑↓↓←→←→BA
Website
github.com
XP
2,287
Country
United States
Normally I hate double posting, but it's worth for test results! So these are just going to be basic results testing to ensure compatibility is still working. Why? You never know if something can get broken and worth testing! It's the little details that's worth dicking around with. So enough rambling, here's my list!
Old 3DS: A9LH (mini-CFW version) using Corbenik, arm9loaderhax.bin, clean install.
Reboot patches: Monster Hunter Generations US and Monster Hunter 4 US
Boots up and reboots when closing
AGB testing: Final Fantasy 1&2 EU version rom injection: Boots up: shows GBA bootscreen when option is selected and doesn't show boot screen when the option is not selected. Closing reboots the system just fine
TWL testing: R4i Gold Rev7: Boots just fine and reboots system when closing the app.
TWL testing with custom DSi app: TWL Slot-1 Launcher: Boots R4i Gold Rev 7 and reboots system when app is closed
TWL testing pirated DSi game: Crystal Monsters: Boots game and reboots when closing app.
Region-Free: Return to PoPoLoCrois: A Story of Seasons Fairytale: EU: Boots up and closes just fine.
Patched games: Bravely Default Uncensored: Boots and closes just fine
GBC game injections: Dragon Warriors Monsters: Boots up and closes just fine.
And of course: System settings patches work as well

No patches conflict with each other, so it's safe to run as many patches as you want, including region-free and reboot patches. And of course, here's a screen shot of my bootmenu!
View attachment 57080
And shameless plug for my theme
http://filetrip.net/dl?Dk4ZY8BNs2

Test results thus far, nothing broke, still trying to break it.

Well, the VM hasn't changed much, so as long as your console boots - there's close to zero chance for anything to go wrong past that point. :P
 

The Catboy

GBAtemp Official Catboy™: Boywife
Member
Joined
Sep 13, 2009
Messages
27,930
Trophies
4
Location
Making a non-binary fuss
XP
39,281
Country
Antarctica
Well, the VM hasn't changed much, so as long as your console boots - there's close to zero chance for anything to go wrong past that point. :P
Well, it was mostly to ensure that the filesystem changes didn't effect the overall performance. Sure I knew it was going to work since I was already using the latest nightlies, but it was worth really making sure it was tested.
I mean, you did just change from I am going to call it "CakesFW" style of filesystem to a Unix-Like filesystem (which I love, btw.) So it was worth making sure that all the small patches are still working.
You would be amazed at how often CFW's update and small details like that get overlooked and they still boot, but something like GBA games stopped working.
 

MiePx3

Well-Known Member
Member
Joined
Jan 4, 2016
Messages
130
Trophies
0
XP
352
Country
Gambia, The
Maybe its me, but has the skipping lines isse gone worse?
I press down on my dpad and it skips like 3~5 lines now.
 

Kuroi-Akira

Well-Known Member
Newcomer
Joined
Mar 24, 2016
Messages
90
Trophies
0
Age
32
XP
136
Country
Maybe its me, but has the skipping lines isse gone worse?
I press down on my dpad and it skips like 3~5 lines now.

its not just you, I get the issue aswell, I really hope it is fixable as it is very annoying, aside from that Corbenik is Superb
 

laharl22

Well-Known Member
Member
Joined
Dec 19, 2014
Messages
1,767
Trophies
0
Age
38
XP
615
Country
France
With v0.2.0 screen init bug ils back for me i use corbenik as boot.bin with shadownand edit:its my fault i have actived silent mode by error
 
Last edited by laharl22,

gnmmarechal

Well-Known Member
Member
GBAtemp Patron
Joined
Jul 13, 2014
Messages
6,038
Trophies
2
Age
25
Location
https://gs2012.xyz
Website
gs2012.xyz
XP
5,989
Country
Portugal
its not just you, I get the issue aswell, I really hope it is fixable as it is very annoying, aside from that Corbenik is Superb
No idea what could cause this. You sure your DPAD isn't somehow damaged or dirty? Mine works flawlessly.
 

Kuroi-Akira

Well-Known Member
Newcomer
Joined
Mar 24, 2016
Messages
90
Trophies
0
Age
32
XP
136
Country
No idea what could cause this. You sure your DPAD isn't somehow damaged or dirty? Mine works flawlessly.

Pretty sure its not my D-Pad, since the Corbenik Menu is the only place it exhibits this behavior, not in the Luma Menu, not in the Cake Menu, not in the Home Menu, not ingames, just Corbenik.
 

gnmmarechal

Well-Known Member
Member
GBAtemp Patron
Joined
Jul 13, 2014
Messages
6,038
Trophies
2
Age
25
Location
https://gs2012.xyz
Website
gs2012.xyz
XP
5,989
Country
Portugal
Pretty sure its not my D-Pad, since the Corbenik Menu is the only place it exhibits this behavior, not in the Luma Menu, not in the Cake Menu, not in the Home Menu, not ingames, just Corbenik.
Could still be caused by a combination of a dirty dpad + the way Corbenik handles input.

--------------------- MERGED ---------------------------

These are the background images I currently use with Corbenik and Skeith: :)


6e1dffd500c444b795360cd8efb353bb.png

cd1088091cfa41b6bb48f6adf9c7abcf.png
 

Attachments

  • Sinon1.zip
    488.1 KB · Views: 122
  • Sinon2.zip
    139.9 KB · Views: 109

The Catboy

GBAtemp Official Catboy™: Boywife
Member
Joined
Sep 13, 2009
Messages
27,930
Trophies
4
Location
Making a non-binary fuss
XP
39,281
Country
Antarctica
Pretty sure its not my D-Pad, since the Corbenik Menu is the only place it exhibits this behavior, not in the Luma Menu, not in the Cake Menu, not in the Home Menu, not ingames, just Corbenik.
This issue has been reported before, but I've yet to be able to replicate it. We tried to narrow it down to see if it's region based, but not enough people contributed.
What is your region and current version of A9LH?
 

chaoskagami

G̷̘̫̍̈́̊̓̈l̴̙͔̞͠i̵̳͊ţ̸̙͇͒̓c̵̬̪̯̥̳͒͌̚h̵̹̭͛̒̊̽̚
OP
Developer
Joined
Mar 26, 2016
Messages
1,365
Trophies
1
Location
↑↑↓↓←→←→BA
Website
github.com
XP
2,287
Country
United States
Could still be caused by a combination of a dirty dpad + the way Corbenik handles input.

That is the cause. I've said this N times at this point; corbenik runs as fast as the processor lets it and waits to do anything until there's a button pushed. It shouldn't be jumping around, because it doesn't perform the action until the console says all buttons have been lifted.

Luma/the console firmware/whatever vsyncs and only processes in a while loop input about 60/s times.

This is likely a defective/dpad shorting issue that's just being made worse by how I process input. It isn't on me.

It's worse since last release since I removed the delay - it was negatively impacting the speed of navigation for me, and I couldn't justify keeping it.
 
Last edited by chaoskagami,

Kuroi-Akira

Well-Known Member
Newcomer
Joined
Mar 24, 2016
Messages
90
Trophies
0
Age
32
XP
136
Country
This issue has been reported before, but I've yet to be able to replicate it. We tried to narrow it down to see if it's region based, but not enough people contributed.
What is your region and current version of A9LH?

it is a US n3DS XL with Aurora's CFW'd A9LH
I'll try testing it on one of my o3DSes to see if it is a n3DS only issue in my case
 

chaoskagami

G̷̘̫̍̈́̊̓̈l̴̙͔̞͠i̵̳͊ţ̸̙͇͒̓c̵̬̪̯̥̳͒͌̚h̵̹̭͛̒̊̽̚
OP
Developer
Joined
Mar 26, 2016
Messages
1,365
Trophies
1
Location
↑↑↓↓←→←→BA
Website
github.com
XP
2,287
Country
United States
it is a US n3DS XL with Aurora's CFW'd A9LH
I'll try testing it on one of my o3DSes to see if it is a n3DS only issue in my case

This issue has been reported before, but I've yet to be able to replicate it. We tried to narrow it down to see if it's region based, but not enough people contributed.
What is your region and current version of A9LH?

I'm rather sure this has nothing to do with region, nor type of 3DS. I'm pretty sure it's a dirty dpad pad (under the plastic) combined with how I handle input.
 

The Catboy

GBAtemp Official Catboy™: Boywife
Member
Joined
Sep 13, 2009
Messages
27,930
Trophies
4
Location
Making a non-binary fuss
XP
39,281
Country
Antarctica
I'm rather sure this has nothing to do with region, nor type of 3DS. I'm pretty sure it's a dirty dpad pad (under the plastic) combined with how I handle input.
I wanted to see if there was a pattern, but considering there's a complete lack of pattern, I am also going to agree that it sounds like dirty d-pads.
The last ones all reported different branches, builds, regions, ect. If they were all say EU A9LHv1, that would be worth noting. But since all of them have been completely random, it looks more like a hardware issue and not a Corbenik issue.
 

chaoskagami

G̷̘̫̍̈́̊̓̈l̴̙͔̞͠i̵̳͊ţ̸̙͇͒̓c̵̬̪̯̥̳͒͌̚h̵̹̭͛̒̊̽̚
OP
Developer
Joined
Mar 26, 2016
Messages
1,365
Trophies
1
Location
↑↑↓↓←→←→BA
Website
github.com
XP
2,287
Country
United States
I wanted to see if there was a pattern, but considering there's a complete lack of pattern, I am also going to agree that it sounds like dirty d-pads.
The last ones all reported different branches, builds, regions, ect. If they were all say EU A9LHv1, that would be worth noting. But since all of them have been completely random, it looks more like a hardware issue and not a Corbenik issue.

Arguably the way I'm handling input doesn't help the problem, though. :P
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    K3Nv2 @ K3Nv2: The mutated Axolotl was awesome