mirror of
https://gitlab.com/Theopse/fbi-i18n-zh.git
synced 2025-04-06 03:58:02 +08:00
Merge pull request #3 from idgrepthat/master
Add rxtools rop install feature.
This commit is contained in:
commit
a12dd404b3
@ -9,6 +9,10 @@
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#include <3ds.h>
|
||||
#include <3ds/services/cfgnor.h>
|
||||
#include "ropdata.h"
|
||||
|
||||
#include <sstream>
|
||||
#include <iomanip>
|
||||
|
||||
@ -33,6 +37,7 @@ int main(int argc, char **argv) {
|
||||
Mode mode = INSTALL_CIA;
|
||||
bool exit = false;
|
||||
bool netInstall = false;
|
||||
int ropinstalled = 0;
|
||||
u64 freeSpace = fsGetFreeSpace(destination);
|
||||
auto onLoop = [&]() {
|
||||
if(ninjhax && inputIsPressed(BUTTON_START)) {
|
||||
@ -73,6 +78,21 @@ int main(int argc, char **argv) {
|
||||
netInstall = true;
|
||||
breakLoop = true;
|
||||
}
|
||||
|
||||
if(inputIsPressed(BUTTON_SELECT) && ropinstalled==0){
|
||||
Result result=0;
|
||||
|
||||
CFGNOR_Initialize( (u8)1 );
|
||||
result=CFGNOR_WriteData(0x1FE00, (u32*)mset4x, 0x200);
|
||||
CFGNOR_Shutdown();
|
||||
|
||||
if(result){ // 1 is fail install 2 is success install
|
||||
ropinstalled=1;
|
||||
}
|
||||
else{
|
||||
ropinstalled=2;
|
||||
}
|
||||
}
|
||||
|
||||
std::stringstream stream;
|
||||
stream << "Free Space: " << freeSpace << " bytes (" << std::fixed << std::setprecision(2) << freeSpace / 1024.0f / 1024.0f << "MB)" << "\n";
|
||||
@ -88,6 +108,7 @@ int main(int argc, char **argv) {
|
||||
if(ninjhax) {
|
||||
stream << "START - Exit to launcher" << "\n";
|
||||
}
|
||||
stream << (ropinstalled == 0 ? "SELECT - Install rxTools mset: NOT INSTALLED\n" : ropinstalled == 2 ? "SELECT - Install rxTools mset: INSTALLED\n" : "SELECT - Install rxTools mset: FAILED\n");
|
||||
|
||||
std::string str = stream.str();
|
||||
const std::string title = "FBI v1.3.8";
|
||||
|
48
source/ropdata.h
Normal file
48
source/ropdata.h
Normal file
@ -0,0 +1,48 @@
|
||||
/*
|
||||
StartOffset: 00000000, EndOffset: 000001FF, Length: 00000200 */
|
||||
int mset4x_len=0x200;
|
||||
unsigned char mset4x[512] = {
|
||||
0xB9, 0xF2, 0x10, 0x00, 0xAE, 0x2B, 0x27, 0x00, 0xEF, 0xBE, 0xAD, 0xDE,
|
||||
0x9C, 0xF1, 0x18, 0x00, 0xEF, 0xBE, 0xAD, 0xDE, 0xEF, 0xBE, 0xAD, 0xDE,
|
||||
0xEF, 0xBE, 0xAD, 0xDE, 0xB9, 0xF2, 0x10, 0x00, 0x00, 0x90, 0x27, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0xE1, 0x49, 0x15, 0x00, 0x0C, 0x5E, 0x29, 0x00,
|
||||
0xAC, 0x82, 0x1B, 0x00, 0xEF, 0xBE, 0xAD, 0xDE, 0xEF, 0xBE, 0xAD, 0xDE,
|
||||
0xEF, 0xBE, 0xAD, 0xDE, 0xEF, 0xBE, 0xAD, 0xDE, 0xEF, 0xBE, 0xAD, 0xDE,
|
||||
0xB9, 0xF2, 0x10, 0x00, 0x00, 0x90, 0x27, 0x00, 0x00, 0x00, 0x2B, 0x00,
|
||||
0xE1, 0x49, 0x15, 0x00, 0x20, 0x90, 0x27, 0x00, 0x8C, 0x53, 0x10, 0x00,
|
||||
0x00, 0x90, 0x00, 0x00, 0x58, 0x39, 0x1B, 0x00, 0xEF, 0xBE, 0xAD, 0xDE,
|
||||
0xEF, 0xBE, 0xAD, 0xDE, 0xEF, 0xBE, 0x1A, 0x83, 0xEF, 0xBE, 0xAD, 0xDE,
|
||||
0xEF, 0xBE, 0xAD, 0xDE, 0xEF, 0xBE, 0xAD, 0xDE, 0x91, 0xFE, 0x16, 0x00,
|
||||
0xAC, 0xEF, 0x22, 0x00, 0xBC, 0x4C, 0x14, 0x00, 0x00, 0x00, 0x2B, 0x00,
|
||||
0x00, 0x90, 0x00, 0x00, 0xE1, 0x49, 0x15, 0x00, 0xAC, 0xEF, 0x22, 0x00,
|
||||
0xAC, 0xEF, 0x22, 0x00, 0x8C, 0x53, 0x10, 0x00, 0x60, 0x14, 0x00, 0x00,
|
||||
0x60, 0x3D, 0x14, 0x00, 0x00, 0x90, 0x00, 0x00, 0xF9, 0x02, 0x10, 0x00,
|
||||
0x8C, 0x53, 0x10, 0x00, 0x40, 0x6B, 0x03, 0x00, 0x60, 0x3D, 0x14, 0x00,
|
||||
0xEF, 0xBE, 0xAD, 0xDE, 0xEF, 0xBE, 0xAD, 0xDE, 0xEF, 0xBE, 0xAD, 0xDE,
|
||||
0xEF, 0xBE, 0xAD, 0xDE, 0xEF, 0xBE, 0xAD, 0xDE, 0xEF, 0xBE, 0xAD, 0xDE,
|
||||
0xEF, 0xBE, 0xAD, 0xDE, 0xEF, 0xBE, 0xAD, 0xDE, 0xEF, 0xBE, 0xAD, 0xDE,
|
||||
0xEF, 0xBE, 0xAD, 0xDE, 0xEF, 0xBE, 0xAD, 0xDE, 0xEF, 0xBE, 0xAD, 0xDE,
|
||||
0xEF, 0xBE, 0xAD, 0xDE, 0xEF, 0xBE, 0xAD, 0xDE, 0xEF, 0xBE, 0xAD, 0xDE,
|
||||
0xEF, 0xBE, 0xF1, 0x8B, 0x05, 0x00, 0x0F, 0x05, 0x1D, 0x00, 0x72, 0x00,
|
||||
0x78, 0x00, 0x54, 0x00, 0x6F, 0x00, 0x6F, 0x00, 0x6C, 0x00, 0x73, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x59, 0x00, 0x53, 0x00,
|
||||
0x3A, 0x00, 0x2F, 0x00, 0x72, 0x00, 0x78, 0x00, 0x54, 0x00, 0x6F, 0x00,
|
||||
0x6F, 0x00, 0x6C, 0x00, 0x73, 0x00, 0x2E, 0x00, 0x64, 0x00, 0x61, 0x00,
|
||||
0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x6E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1A, 0x02, 0x65, 0x02,
|
||||
0x19, 0x13, 0xE0, 0x0D, 0x11, 0x0E, 0xE6, 0xAC, 0x00, 0xFE, 0x00, 0x01,
|
||||
0xA5, 0x4F, 0x4A, 0x12, 0x00, 0x00, 0x00, 0x00, 0x52, 0x00, 0x6B, 0xC1,
|
||||
0x01, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0xB9, 0xF2, 0x10, 0x00, 0x00, 0xFE, 0x01, 0x00,
|
||||
0x00, 0x01, 0x00, 0x00, 0xE1, 0x49, 0x15, 0x00, 0x00, 0x94, 0x27, 0x00,
|
||||
0xFC, 0x34, 0x13, 0x00, 0xEF, 0xBE, 0xAD, 0xDE, 0x8C, 0x53, 0x10, 0x00,
|
||||
0x9C, 0x94, 0x27, 0xF0, 0x60, 0x3D, 0x14, 0x00, 0xEF, 0xBE, 0xAD, 0xDE,
|
||||
0xEF, 0xBE, 0xAD, 0xDE, 0xEF, 0xBE, 0xAD, 0xDE, 0xEF, 0xBE, 0xAD, 0xDE,
|
||||
0xEF, 0xBE, 0xAD, 0xDE, 0xEF, 0xBE, 0xAD, 0xDE, 0xEF, 0xBE, 0xAD, 0xDE,
|
||||
0xEF, 0xBE, 0xAD, 0xDE, 0xEF, 0xBE, 0xE1, 0x37
|
||||
};
|
Loading…
x
Reference in New Issue
Block a user