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

  • Thread starter Thread starter chaoskagami
  • Start date Start date
  • Views Views 287,572
  • Replies Replies 2,153
  • Likes Likes 60
Clean install AGB Bootscreen enabled, games working just fine. I am not using the latest commit though, I am just using 0.0.8.

The TWL one is the one that appears to cause issues in all instances, but the AGB ones likely don't work correctly. I think it depends on what order the patches are cached in (which is FS order dependent.)
 
The TWL one is the one that appears to cause issues in all instances, but the AGB ones likely don't work correctly. I think it depends on what order the patches are cached in (which is FS order dependent.)
I actually deleted my previous install and only copied over firmware files. So magic?
 
Thanks! ;)

Always doing a clean install and I have big problems selecting the options and patches every time but only on the one unit. It always jumps two or three selections ;)

That really is weird. It doesn't seem to persist more than two times (so it never seems to cause issues here.) I can implement a cursor delay before next release.

I actually deleted my previous install and only copied over firmware files. So magic?

Probably magic, yeah. If you could take a picture of the patches menu, that may help. The order they're listed is the order they're cached in.
 
That really is weird. It doesn't seem to persist more than two times (so it never seems to cause issues here.) I can implement a cursor delay before next release.



Probably magic, yeah. If you could take a picture of the patches menu, that may help. The order they're listed is the order they're cached in.
My camera is shit, so here's my list
Title Downgrade Fix
Signature Fix
ErrDisp devmenu
Developer UNITINFO
ARM11 XN Disable
Block eShop Updates
AGB Signature Fix
Region free HOME
Secure Info_A Signature Fix
FIRM Protection
Fake Friends module version
MSET Version
RO Signature fix
Force TestMenu
TWL Patches
Block NIM updates
AGB Bootscreen

That is the order they are listed in on my 3DS.
 
My camera is shit, so here's my list
Title Downgrade Fix
Signature Fix
ErrDisp devmenu
Developer UNITINFO
ARM11 XN Disable
Block eShop Updates
AGB Signature Fix
Region free HOME
Secure Info_A Signature Fix
FIRM Protection
Fake Friends module version
MSET Version
RO Signature fix
Force TestMenu
TWL Patches
Block NIM updates
AGB Bootscreen

That is the order they are listed in on my 3DS.

Out of those, which are enabled? I think *maybe* it's because they're separated with other patches in between that it doesn't explode, but I'm unsure.

(I should probably just sort patches alphabetically.)
 
That really is weird. It doesn't seem to persist more than two times (so it never seems to cause issues here.) I can implement a cursor delay before next release.



Probably magic, yeah. If you could take a picture of the patches menu, that may help. The order they're listed is the order they're cached in.

Thanks!
I have it every time.

Video:
https://minfil.org/j50an7bcb9/20160611_214926.mp4
 
@chaoskagami
To make the CFW releases more true to Nintendo you should fix the following stuff:

- On every update you make -> only post:
0.0.8 - Terror of Crashes (or - more bugfixing)
  • Further improvements to overall system stability and other minor adjustments have been made to enhance the user experience
 
  • Like
Reactions: Temptress Cerise
Out of those, which are enabled? I think *maybe* it's because they're separated with other patches in between that it doesn't explode, but I'm unsure.

(I should probably just sort patches alphabetically.)
These are the ones enabled
Title Downgrade Fix *
Signature Fix *
ErrDisp devmenu
Developer UNITINFO
ARM11 XN Disable
Block eShop Updates *
AGB Signature Fix *
Region free HOME *
Secure Info_A Signature Fix *
FIRM Protection *
Fake Friends module version *
MSET Version *
RO Signature fix *
Force TestMenu
TWL Patches *
Block NIM updates *
AGB Bootscreen *
 

I'm getting 1kb/s ratio on that, so please take a picture. It's going to take forever to download that. Extract the relevant frames with PrtScr or something like VLC's snapshot feature.

These are the ones enabled

Everything important, then. Hm. Guess that's not what's going on here. Anybody who has this issue should do one or more of the following to help me get 0.0.9 out ASAP: Logs in verbose mode, and potentially the /corbenik/cache/loader/BOOT file.

@chaoskagami
To make the CFW releases more true to Nintendo you should fix the following stuff:

No. I pride myself on actually documenting what has changed. Funny, though. :P
 
Last edited by chaoskagami,
I'm getting 1kb/s ratio on that, so please take a picture. It's going to take forever to download that. Extract the relevant frames with PrtScr or something like VLC's snapshot feature.

Oh, I'm sorry. It was just to show the cursor jumping around so stills will not do any good. ;)
 
Oh, I'm sorry. It was just to show the cursor jumping around so stills will not do any good. ;)

I streamed it directly from the download URL instead.

That really is odd, because the way the code works is it checks if the button was pressed and then lifted, so it shouldn't move multiple times without being pressed multiple times, unless your DPad is failing or something. It's never been nearly THAT bad here.
 
I streamed it directly from the download URL instead.

That really is odd, because the way the code works is it checks if the button was pressed and then lifted, so it shouldn't move multiple times without being pressed multiple times, unless your DPad is failing or something. It's never been nearly THAT bad here.

I have several CFW's on my units. I don't have that jumping in menus in Luma or Cakes. So yeah, really strange. :/

Edit: Using CtrBootManager9 sometimes too and no jumping..
 
I have several CFW's on my units. I don't have that jumping in menus in Luma or Cakes. So yeah, really strange. :/

My menu code is completely different in the way it's implemented than both Luma and Cakes, so that's not unusual. I suspect adding a delay would fix the issue here.
 
  • Like
Reactions: Orkna
Everything important, then. Hm. Guess that's not what's going on here. Anybody who has this issue should do one or more of the following to help me get 0.0.9 out ASAP: Logs in verbose mode, and potentially the /corbenik/cache/loader/BOOT file.
Uhhhh.... >.>.... So..... Uhhhh... I was having that issue. I guess I was the first one that brought it up.... and now.... it's gone. Like magic. AGB Bootscreen is enabled and I booted into the system just fine, instead of hanging like I used to. Tried it on my Ice White JPN o3DS as well, which also showed the symptom, and it's... gone as well.
 
  • Like
Reactions: chaoskagami
Uhhhh.... >.>.... So..... Uhhhh... I was having that issue. I guess I was the first one that brought it up.... and now.... it's gone. Like magic. AGB Bootscreen is enabled and I booted into the system just fine, instead of hanging like I used to. Tried it on my Ice White JPN o3DS as well, which also showed the symptom, and it's... gone as well.

Odd. I have absolutely zero clue, either. I've been hunting for a bug in the VM for a while, and have yet to find one. >_<
 
I keep getting stuck at set with agb bottscreen enabled so here's my boot log if you want it.

All of your logs end in 'Copied FIRM' which means it booted. Either those logs are out of date or you aren't hanging.

EDIT: Or, you're hanging on the first screen, but considering what you have enabled, it will always scroll at least once before applying.
 
Last edited by chaoskagami,
I can just have agb stuff and twl enabled if it helps find the cause of the problem some people are having.

That probably won't help much. Anyways, I've added better debug information to verbose and it's occuring on my n3DS so hopefully I'll fix it soon. No next release until I've isolated the issue. It's weird, and I'm still not sure what's happening. :/
 
So I think I figured out what the heck is going on here. It doesn't make it any less strange, though.

Apparently, GCC is emitting wrong code with unaligned memory access via derefs like:

Code:
*(off + 1) // uint8_t
but not
Code:
code[1] // uint8_t

I'll need to keep track of this in the future, but this *should* fix the issues with AGB/TWL crashing.

EDIT: Looks like memcpy and memmove were also subject to this, which could be causing the logging crashes too.
 
Last edited by chaoskagami,

Site & Scene News

Popular threads in this forum