diff --git a/JKSM_OG_SRC/.gitignore b/JKSM_OG_SRC/.gitignore
index 142b7cf..b0d8e47 100644
--- a/JKSM_OG_SRC/.gitignore
+++ b/JKSM_OG_SRC/.gitignore
@@ -12,5 +12,3 @@ release/
*.log
*.7z
*.project
-*.cia
-*.3dsx
\ No newline at end of file
diff --git a/JKSM_OG_SRC/JKSM.xml b/JKSM_OG_SRC/JKSM.xml
new file mode 100644
index 0000000..acd58cc
--- /dev/null
+++ b/JKSM_OG_SRC/JKSM.xml
@@ -0,0 +1 @@
+
diff --git a/JKSM_OG_SRC/README.md b/JKSM_OG_SRC/README.md
index de8a4f6..8d72f3d 100644
--- a/JKSM_OG_SRC/README.md
+++ b/JKSM_OG_SRC/README.md
@@ -1,8 +1,17 @@
-# JKSM Rosalina
-This is a fork from:
+# JKSM
JKSM - JK's Save Manager
----
-This version's 3DSX is only compatible with the Rosalina entrypoint of the Homebrew Launcher.
-For the old *hax 3dsx please visit the original fork by JK.
----
-WARNING: This fork moves the JKSV folder from the root of the sdcard to the "3ds/data/JKSM" folder. You must move your saves there before you are able to restore it.
\ No newline at end of file
+
+Requires:
+ [smealum's ctrulib](https://github.com/smealum/ctrulib)
+ [xerpi's portlibs](https://github.com/xerpi/3ds_portlibs)
+ [xerpi's sf2d](https://github.com/xerpi/sf2dlib/tree/effe77ea81d21c26bad457d4f5ed8bb16ce7b753)
+ [xerpi's sftd](https://github.com/xerpi/sftdlib)
+
+Place makerom inside your devkitARM's bin directory. Type 'make cia' inside the project's directory to build.
+
+A custom font can be used by placing it in the sd:/JKSV folder and naming it "font.ttf". I also recommend replacing the font with a smaller one if you're building a 3dsx.
+
+Due to the fact that I cannot keep up with homebrew releases anymore, I've decided to make the filter list external. If you need to add a program to it, copy its lower ID to the end of filter.txt
+in your JKSV folder as 0xXXXXXXXX.
+
+A big thanks to everyone who has worked on ctrulib.
\ No newline at end of file
diff --git a/JKSM_OG_SRC/source/backup.cpp b/JKSM_OG_SRC/source/backup.cpp
index a73ed97..e87b065 100644
--- a/JKSM_OG_SRC/source/backup.cpp
+++ b/JKSM_OG_SRC/source/backup.cpp
@@ -99,7 +99,7 @@ bool backupData(const titleData dat, FS_Archive arch, int mode, bool autoName)
if(slot.empty())
return false;
- //get path returns path to /3ds/data/JKSM/[DIR]
+ //get path returns path to /JKSV/[DIR]
pathOut = getPath(mode) + dat.nameSafe + (char16_t)'/' + slot;
std::u16string recreate = pathOut;//need this later after directory is deleted.
pathOut += (char16_t)'/';
diff --git a/JKSM_OG_SRC/source/main.cpp b/JKSM_OG_SRC/source/main.cpp
index 21f4c25..8727dec 100644
--- a/JKSM_OG_SRC/source/main.cpp
+++ b/JKSM_OG_SRC/source/main.cpp
@@ -5,6 +5,7 @@
#include
#include
#include
+
#include "sys.h"
#include "global.h"
#include "util.h"
@@ -16,15 +17,28 @@ int main(int argc, const char * argv[])
hidInit();
hidScanInput();
u32 held = hidKeysHeld();
+ if((held & KEY_R) && (held & KEY_L))
+ devMode = true;
+ //This is for making sure I didn't butcher the font
+ else if(held & KEY_R)
+ sysLanguage = CFG_LANGUAGE_JP;
+
+ sysInit();
- if((held & KEY_R) && (held & KEY_L)) { devMode = true; }
-
- sysInit();
- sdTitlesInit();
- nandTitlesInit();
- while(aptMainLoop() && !kill)
+ if(runningUnder() && !devMode)
{
- handleState();
+ hbl = true;
+ start3dsxMode();
+ }
+ else
+ {
+ sdTitlesInit();
+ nandTitlesInit();
+
+ while(aptMainLoop() && !kill)
+ {
+ handleState();
+ }
}
sysExit();
diff --git a/JKSM_OG_SRC/source/sys.cpp b/JKSM_OG_SRC/source/sys.cpp
index 206e0e0..f294c27 100644
--- a/JKSM_OG_SRC/source/sys.cpp
+++ b/JKSM_OG_SRC/source/sys.cpp
@@ -59,8 +59,8 @@ void createDir(const char *path)
void sysInit()
{
romfsInit();
- mkdir("/3ds/data/JKSM", 0777);
- chdir("/3ds/data/JKSM");
+ mkdir("/JKSV", 0777);
+ chdir("/JKSV");
if(fexists("colBin"))
loadCol();
@@ -99,11 +99,11 @@ void sysInit()
if(useLang)
CFGU_GetSystemLanguage(&sysLanguage);
- createDir("/3ds/data/JKSM/Saves");
- createDir("/3ds/data/JKSM/ExtData");
- createDir("/3ds/data/JKSM/SysSave");
- createDir("/3ds/data/JKSM/Boss");
- createDir("/3ds/data/JKSM/Shared");
+ createDir("/JKSV/Saves");
+ createDir("/JKSV/ExtData");
+ createDir("/JKSV/SysSave");
+ createDir("/JKSV/Boss");
+ createDir("/JKSV/Shared");
prepareMenus();
}
diff --git a/JKSM_OG_SRC/source/util.cpp b/JKSM_OG_SRC/source/util.cpp
index be143b9..5d1190a 100644
--- a/JKSM_OG_SRC/source/util.cpp
+++ b/JKSM_OG_SRC/source/util.cpp
@@ -163,22 +163,22 @@ std::u16string getPath(int mode)
switch(mode)
{
case MODE_SAVE:
- return tou16("/3ds/data/JKSM/Saves/");
+ return tou16("/JKSV/Saves/");
break;
case MODE_EXTDATA:
- return tou16("/3ds/data/JKSM/ExtData/");
+ return tou16("/JKSV/ExtData/");
break;
case MODE_BOSS:
- return tou16("/3ds/data/JKSM/Boss/");
+ return tou16("/JKSV/Boss/");
break;
case MODE_SYSSAVE:
- return tou16("/3ds/data/JKSM/SysSave/");
+ return tou16("/JKSV/SysSave/");
break;
case MODE_SHARED:
- return tou16("/3ds/data/JKSM/Shared/");
+ return tou16("/JKSV/Shared/");
break;
default:
- return tou16("/3ds/data/JKSM/");
+ return tou16("/JKSV/");
break;
}
}