Hacking Official [Release] CakesFW

  • Thread starter Thread starter mid-kid
  • Start date Start date
  • Views Views 842,229
  • Replies Replies 3,542
  • Likes Likes 73
Thank you very much I will try this night(maybe morning in your country...) If I have problem,can you give me a help? :)
It's 3:30 am here, I was just getting ready to go to sleep... You'll be OK on your own, just copy files, delete config file and you'll be fine
 
no, 4.x DG is if you're on 5.x with downgraded MSET

Wrong. DG is when downgrading to 4.x MSET on firmware 6.x or higher. I think 5.x has the same MSET version as 4.x.

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

hello,I have a question, how to use the Cakes_102, There are no firmware.bin in the Cakes_102,I want to update my cakesfw, how to do?and the link of "firmware.bin and cetk download urls for new 3ds " is can't use (apaceh error) thank you very much

No release has ever contained a firmware.bin. You have to get it yourself. If you actually read, one line below the firmware.bin download link, you can see I said the n3ds one can't be downloaded anymore. You'll have to look for it yourself.
 
  • Like
Reactions: pokemon36
Wrong. DG is when downgrading to 4.x MSET on firmware 6.x or higher. I think 5.x has the same MSET version as 4.x.

Hmm, I guess I remembered what you told me about it wrong then. Sorry for any confusion caused... I'll have to mess with this some more :)
 
Wrong. DG is when downgrading to 4.x MSET on firmware 6.x or higher. I think 5.x has the same MSET version as 4.x.

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



No release has ever contained a firmware.bin. You have to get it yourself. If you actually read, one line below the firmware.bin download link, you can see I said the n3ds one can't be downloaded anymore. You'll have to look for it yourself.
Thank you I got it .you are so cool
 
how do i use sysnand to play gba games with this
Check out my signature, there's a section in my guide about patching the firmware (don't worry it's easy) you can play them on emuNAND too

EDIT: just keep in mind the actual installation sections are undergoing massive editing atm so don't try to follow those at this moment
 
Last edited by dark_samus3,
@mid-kid got some compiling errors for the first time ever.

Code:
make[1]: Entering directory `/d/CakesForeveryWan/CakeBrah'
arm11.s utils.s
khaxinit.cpp
arm-none-eabi-g++ -MMD -MP -MF /d/CakesForeveryWan/CakeBrah/build/khaxinit.d -g -Wall -Wextra -O3 -mword-relocations -fomit-frame-pointer -ffast-math -march=armv6k -mtune=mpcore -mfloat-abi=hard -I/d/CakesForeveryWan/CakeBrah/inc
lude -I/c/devkitPro/libctru/include -I/d/CakesForeveryWan/CakeBrah/build -DARM11 -D_3DS -DARM_ARCH -DLAUNCHER_PATH='"Cakes.dat"' -fno-rtti -fno-exceptions -std=gnu++11 -c /d/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp -
o khaxinit.o
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp: In member function 'void* KHAX::VersionData::ConvertLinearUserVAToKernelVA(void*) const':
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp:273:44: error: invalid conversion from 'void*' to 'u32 {aka long unsigned int}' [-fpermissive]
  u32 physical = osConvertVirtToPhys(address);
                                            ^
In file included from c:/devkitPro/libctru/include/3ds.h:13:0,
                 from d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp:1:
c:/devkitPro/libctru/include/3ds/os.h:30:5: note: initializing argument 1 of 'u32 osConvertVirtToPhys(u32)'
u32 osConvertVirtToPhys(u32 vaddr);
     ^
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp: In function 'Result KHAX::IsNew3DS(bool*, u32)':
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp:983:47: error: cannot convert 'u8* {aka unsigned char*}' to 'Handle* {aka long unsigned int*}' for argument '1' to 'Result APT_CheckNew3DS(Handle*, u8*)'
   if (Result error = APT_CheckNew3DS(&isNew3DS))
                                               ^
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp: In function 'Result KHAX::GSPwn(void*, const void*, std::size_t, bool)':
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp:1005:39: error: 'GX_TextureCopy' was not declared in this scope
   static_cast<u32 *>(dest), 0, size, 8))
                                       ^
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp: In function 'Result KHAX::userFlushDataCache(const void*, std::size_t)':
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp:1022:35: error: invalid conversion from 'const void*' to 'Handle* {aka long unsigned int*}' [-fpermissive]
  return GSPGPU_FlushDataCache(p, n);
                                   ^
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp:1022:35: error: invalid conversion from 'std::size_t {aka unsigned int}' to 'u8* {aka unsigned char*}' [-fpermissive]
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp:1022:35: error: too few arguments to function 'Result GSPGPU_FlushDataCache(Handle*, u8*, u32)'
In file included from c:/devkitPro/libctru/include/3ds/gfx.h:11:0,
                 from c:/devkitPro/libctru/include/3ds.h:14,
                 from d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp:1:
c:/devkitPro/libctru/include/3ds/services/gsp.h:83:8: note: declared here
Result GSPGPU_FlushDataCache(Handle *handle, u8* adr, u32 size);
        ^
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp: In function 'Result KHAX::userInvalidateDataCache(const void*, std::size_t)':
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp:1027:40: error: invalid conversion from 'const void*' to 'Handle* {aka long unsigned int*}' [-fpermissive]
  return GSPGPU_InvalidateDataCache(p, n);
                                        ^
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp:1027:40: error: invalid conversion from 'std::size_t {aka unsigned int}' to 'u8* {aka unsigned char*}' [-fpermissive]
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp:1027:40: error: too few arguments to function 'Result GSPGPU_InvalidateDataCache(Handle*, u8*, u32)'
In file included from c:/devkitPro/libctru/include/3ds/gfx.h:11:0,
                 from c:/devkitPro/libctru/include/3ds.h:14,
                 from d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp:1:
c:/devkitPro/libctru/include/3ds/services/gsp.h:84:8: note: declared here
Result GSPGPU_InvalidateDataCache(Handle* handle, u8* adr, u32 size);
        ^
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp:1028:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp: In function 'Result KHAX::userFlushDataCache(const void*, std::size_t)':
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp:1023:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
make[2]: *** [khaxinit.o] Error 1
make[1]: *** [build] Error 2
make[1]: Leaving directory `/d/CakesForeveryWan/CakeBrah'
make: *** [out/3ds/Cakes/Cakes.3dsx] Error 2

D:\CakesForeveryWan>
 
@mid-kid got some compiling errors for the first time ever.

Code:
make[1]: Entering directory `/d/CakesForeveryWan/CakeBrah'
arm11.s utils.s
khaxinit.cpp
arm-none-eabi-g++ -MMD -MP -MF /d/CakesForeveryWan/CakeBrah/build/khaxinit.d -g -Wall -Wextra -O3 -mword-relocations -fomit-frame-pointer -ffast-math -march=armv6k -mtune=mpcore -mfloat-abi=hard -I/d/CakesForeveryWan/CakeBrah/inc
lude -I/c/devkitPro/libctru/include -I/d/CakesForeveryWan/CakeBrah/build -DARM11 -D_3DS -DARM_ARCH -DLAUNCHER_PATH='"Cakes.dat"' -fno-rtti -fno-exceptions -std=gnu++11 -c /d/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp -
o khaxinit.o
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp: In member function 'void* KHAX::VersionData::ConvertLinearUserVAToKernelVA(void*) const':
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp:273:44: error: invalid conversion from 'void*' to 'u32 {aka long unsigned int}' [-fpermissive]
  u32 physical = osConvertVirtToPhys(address);
                                            ^
In file included from c:/devkitPro/libctru/include/3ds.h:13:0,
                 from d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp:1:
c:/devkitPro/libctru/include/3ds/os.h:30:5: note: initializing argument 1 of 'u32 osConvertVirtToPhys(u32)'
u32 osConvertVirtToPhys(u32 vaddr);
     ^
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp: In function 'Result KHAX::IsNew3DS(bool*, u32)':
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp:983:47: error: cannot convert 'u8* {aka unsigned char*}' to 'Handle* {aka long unsigned int*}' for argument '1' to 'Result APT_CheckNew3DS(Handle*, u8*)'
   if (Result error = APT_CheckNew3DS(&isNew3DS))
                                               ^
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp: In function 'Result KHAX::GSPwn(void*, const void*, std::size_t, bool)':
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp:1005:39: error: 'GX_TextureCopy' was not declared in this scope
   static_cast<u32 *>(dest), 0, size, 8))
                                       ^
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp: In function 'Result KHAX::userFlushDataCache(const void*, std::size_t)':
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp:1022:35: error: invalid conversion from 'const void*' to 'Handle* {aka long unsigned int*}' [-fpermissive]
  return GSPGPU_FlushDataCache(p, n);
                                   ^
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp:1022:35: error: invalid conversion from 'std::size_t {aka unsigned int}' to 'u8* {aka unsigned char*}' [-fpermissive]
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp:1022:35: error: too few arguments to function 'Result GSPGPU_FlushDataCache(Handle*, u8*, u32)'
In file included from c:/devkitPro/libctru/include/3ds/gfx.h:11:0,
                 from c:/devkitPro/libctru/include/3ds.h:14,
                 from d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp:1:
c:/devkitPro/libctru/include/3ds/services/gsp.h:83:8: note: declared here
Result GSPGPU_FlushDataCache(Handle *handle, u8* adr, u32 size);
        ^
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp: In function 'Result KHAX::userInvalidateDataCache(const void*, std::size_t)':
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp:1027:40: error: invalid conversion from 'const void*' to 'Handle* {aka long unsigned int*}' [-fpermissive]
  return GSPGPU_InvalidateDataCache(p, n);
                                        ^
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp:1027:40: error: invalid conversion from 'std::size_t {aka unsigned int}' to 'u8* {aka unsigned char*}' [-fpermissive]
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp:1027:40: error: too few arguments to function 'Result GSPGPU_InvalidateDataCache(Handle*, u8*, u32)'
In file included from c:/devkitPro/libctru/include/3ds/gfx.h:11:0,
                 from c:/devkitPro/libctru/include/3ds.h:14,
                 from d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp:1:
c:/devkitPro/libctru/include/3ds/services/gsp.h:84:8: note: declared here
Result GSPGPU_InvalidateDataCache(Handle* handle, u8* adr, u32 size);
        ^
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp:1028:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp: In function 'Result KHAX::userFlushDataCache(const void*, std::size_t)':
d:/CakesForeveryWan/CakeBrah/source/libkhax/khaxinit.cpp:1023:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
make[2]: *** [khaxinit.o] Error 1
make[1]: *** [build] Error 2
make[1]: Leaving directory `/d/CakesForeveryWan/CakeBrah'
make: *** [out/3ds/Cakes/Cakes.3dsx] Error 2

D:\CakesForeveryWan>
looks like mid-kid recently updated cakes to use devkitarm r45 and libctru 1.0.0.
i would suggest you do the same.
 
  • Like
Reactions: mid-kid
looks like mid-kid recently updated cakes to use devkitarm r45 and libctru 1.0.0.
i would suggest you do the same.
Yes, indeed, this solved my problem, thanks
Stupid not to check for devkitarm update!

Thanks again!

Now let's hope rxTools updates also to the latest devkitarm, cause that's now broken (compiled it before the update flawless, errors out after the update!)
 
Last edited by DjoeN,
  • Like
Reactions: zoogie
Hi, sorry for bad English. My firmware was 9.1.0-20jp it was working fine with cfw until i did two things: 1:upgrade monster hunter(cia) new patch when i conncected to wifi. 2: when selecting mset version i selected 6.x dat . now i can't boot into cfw. (it becomes black screen) still can open the menu while holding L button though. I look up to a lot of threads, i believe i accidently upgrade cfw. i was told to format my tf card and reboot it. it did not helped. PLS someone help me
 
Hi, sorry for bad English. My firmware was 9.1.0-20jp it was working fine with cfw until i did two things: 1:upgrade monster hunter(cia) new patch when i conncected to wifi. 2: when selecting mset version i selected 6.x dat . now i can't boot into cfw. (it becomes black screen) still can open the menu while holding L button though. I look up to a lot of threads, i believe i accidently upgrade cfw. i was told to format my tf card and reboot it. it did not helped. PLS someone help me
Did your firmware version change? If it did you're probably out of luck until the new exploits that were just shown are ready (they will allow you to downgrade) if your firmware is still 9.1 then try using the browser to boot cakes
 
Did your firmware version change? If it did you're probably out of luck until the new exploits that were just shown are ready (they will allow you to downgrade) if your firmware is still 9.1 then try using the browser to boot cakes
hi thanks ,my firmware still the same 9.1
how exactly do you use the browser to boot cakes? with the qr code?
 
I'm having trouble playing Monster Hunter 4 Ultimate on my o3ds with cakes. Running fine in rxtools. When ran, the game goes the usual black after the 3ds logo and then i got a bottom black "an error as occurred please power off the system" screen of death. Is this known? If so there's any workaround?
The cia is correct because is working with my n3ds, with rxtools o3ds and is a backup of my original cart.
 
I'm having trouble playing Monster Hunter 4 Ultimate on my o3ds with cakes. Running fine in rxtools. When ran, the game goes the usual black after the 3ds logo and then i got a bottom black "an error as occurred please power off the system" screen of death. Is this known? If so there's any workaround?
The cia is correct because is working with my n3ds, with rxtools o3ds and is a backup of my original cart.
Do you have the reboot patches on?
 

Site & Scene News

Popular threads in this forum