Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ac9bdc7665 | ||
|
|
217d75024d | ||
|
|
12e5b4adb9 |
@@ -5,6 +5,8 @@
|
|||||||
|
|
||||||
You'll need armips and [bin2c](https://sourceforge.net/projects/bin2c/) added to your Path. [HERE](http://www91.zippyshare.com/v/ePGpjk9r/file.html) is a pre-compiled version of armips.
|
You'll need armips and [bin2c](https://sourceforge.net/projects/bin2c/) added to your Path. [HERE](http://www91.zippyshare.com/v/ePGpjk9r/file.html) is a pre-compiled version of armips.
|
||||||
|
|
||||||
|
You also need to have a recent build of makerom in your path for the injector to be built.
|
||||||
|
|
||||||
Lastly, just run Make and everything should work!
|
Lastly, just run Make and everything should work!
|
||||||
|
|
||||||
Copy everything in 'out' folder to SD root and run!
|
Copy everything in 'out' folder to SD root and run!
|
||||||
@@ -30,3 +32,5 @@ A skilled reverser gave me the new reboot patch.
|
|||||||
The screen init code is from dark_samus, bil1s, Normmatt, delebile and everyone who contributed.
|
The screen init code is from dark_samus, bil1s, Normmatt, delebile and everyone who contributed.
|
||||||
|
|
||||||
The code for printing to the screen is from CakesFW.
|
The code for printing to the screen is from CakesFW.
|
||||||
|
|
||||||
|
ARM11 userland patching is only possible thanks to @yifanlu's 3ds_injector, which is bundled in the CFW.
|
||||||
@@ -15,7 +15,7 @@ static u8 *memsearch(u8 *startPos, const void *pattern, u32 size, u32 patternSiz
|
|||||||
const u8 *patternc = (const u8 *)pattern;
|
const u8 *patternc = (const u8 *)pattern;
|
||||||
|
|
||||||
//Preprocessing
|
//Preprocessing
|
||||||
int table[256];
|
u32 table[256];
|
||||||
|
|
||||||
for(u32 i = 0; i < 256; ++i)
|
for(u32 i = 0; i < 256; ++i)
|
||||||
table[i] = patternSize + 1;
|
table[i] = patternSize + 1;
|
||||||
|
|||||||
@@ -71,7 +71,7 @@ void setupCFW(void){
|
|||||||
if(a9lhBoot && previousFirm && needConfig == 1){
|
if(a9lhBoot && previousFirm && needConfig == 1){
|
||||||
//Always force a sysNAND boot when quitting AGB_FIRM
|
//Always force a sysNAND boot when quitting AGB_FIRM
|
||||||
if(previousFirm == 0x7){
|
if(previousFirm == 0x7){
|
||||||
if(!updatedSys) mode = (config >> 12) & 0x1;
|
mode = updatedSys ? 1 : (config >> 12) & 0x1;
|
||||||
emuNAND = 0;
|
emuNAND = 0;
|
||||||
needConfig = 0;
|
needConfig = 0;
|
||||||
//Else, force the last used boot options unless A, L or R are pressed
|
//Else, force the last used boot options unless A, L or R are pressed
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ u8 *memsearch(u8 *startPos, const void *pattern, u32 size, u32 patternSize){
|
|||||||
const u8 *patternc = (const u8 *)pattern;
|
const u8 *patternc = (const u8 *)pattern;
|
||||||
|
|
||||||
//Preprocessing
|
//Preprocessing
|
||||||
int table[256];
|
u32 table[256];
|
||||||
|
|
||||||
for(u32 i = 0; i < 256; ++i)
|
for(u32 i = 0; i < 256; ++i)
|
||||||
table[i] = patternSize + 1;
|
table[i] = patternSize + 1;
|
||||||
|
|||||||
Reference in New Issue
Block a user