diff --git a/Libraries/FsLib b/Libraries/FsLib
index 6e9443b..bae65f9 160000
--- a/Libraries/FsLib
+++ b/Libraries/FsLib
@@ -1 +1 @@
-Subproject commit 6e9443be6456f109b940da33a4ee10949ff6aa0e
+Subproject commit bae65f98fa5c7a34555d85d92eaf6ba78c4fa3cb
diff --git a/Libraries/SDLLib b/Libraries/SDLLib
index bf1e6f4..fa7d0f4 160000
--- a/Libraries/SDLLib
+++ b/Libraries/SDLLib
@@ -1 +1 @@
-Subproject commit bf1e6f40677a48d8b350b93b4aa49d411cb363c3
+Subproject commit fa7d0f456c78d7f94b8519260978419b564610b8
diff --git a/Remote Instructions/GoogleDrive_EN.MD b/Remote Instructions/GoogleDrive_EN.MD
deleted file mode 100644
index 1b22efc..0000000
--- a/Remote Instructions/GoogleDrive_EN.MD
+++ /dev/null
@@ -1,116 +0,0 @@
-# JKSV Google Drive Instructions (2025)
-
-**Update 2025 / JKSV rewrite:**
-JKSV's rewrite returns to using UTF-8 titles for Google Drive like the original JKSV did in the beginning. This change was made by a less skilled developer than myself. I apologize for this. I should have scrutinized this decision, _and the WebDav code in general_, more before merging. I mistakenly assumed using "path safe" titles would only apply to WebDav and not be applied to both. I apologize for any issues this has caused.
-
-**Note:** Throughout this guide, clickable items in screenshots will be highlighted in **red**. I did the best I could with Markdown's limitations.
-
----
-
-### 1. Create a new project
-1. Go to [Google Cloud Console](https://console.cloud.google.com/welcome/new) and click **Select a project** (top-left corner).
-
-Screenshot
-
-
-
-
-
-
-2. Click **New Project** (top-right). Name it `JKSV`. It's fine to leave **Organization** blank.
-
-
-Screenshots
-
-
-
-
-
-
-
-3. Wait for the project to be created, then click **Select Project**.
-
-
-Screenshot
-
-
-
-
-
-
----
-
-### 2. Enable the Google Drive API
-1. Click the **Navigation menu** (top-left) → **APIs & Services** → **Enabled APIs & Services**.
-
-Screenshots
-
-
-
-
-
-
-
-2. Click **+ Enable APIs and services**, scroll to **Google Workspace**, select **Google Drive API**, and click **Enable**.
-
-Screenshots
-
-
-
-
-
-
-
-
----
-
-### 3. Create OAuth credentials
-1. Go to **Credentials** → **+ Create Credentials** → **OAuth client ID**.
-
-Screenshot
-
-
-
-
-
-
-2. Click **Configure consent screen**.
- - Set the **Application Type** to **TVs and limited input devices**.
- - **Download the JSON file containing your client info! Google no longer allows you to download this again after this point!**
-
-Screenshots
-
-
-
-
-
-
-
-
-3. Rename the downloaded file to `client_secret.json` and store it somewhere safe.
-
----
-
-### 4. Add yourself as a test user
-1. Go to **Navigation menu** → **APIs & Services** → **OAuth consent screen** → **Audience**.
-2. Click **+ Add users** and add your email.
-
-Screenshots
-
-
-
-
-
-
-
----
-
-### 5. Copy the JSON to your Switch
-- Move the JSON to: `sdmc:/config/JKSV/client_secret.json`.
-- The next time JKSV starts with an internet connection, it will guide you to complete the login process.
-
----
-
-### **6. (OPTIONAL BONUS STEP!)**
-- Make a secure backup of `client_secret.json` from your Switch's SD card **after logging in with JKSV**.
-- This is recommended if you plan to share saves between multiple Switches due to Google’s OAuth scope policies.
diff --git a/source/appstates/BackupMenuState.cpp b/source/appstates/BackupMenuState.cpp
index 72e5988..0849e8c 100644
--- a/source/appstates/BackupMenuState.cpp
+++ b/source/appstates/BackupMenuState.cpp
@@ -127,7 +127,7 @@ void BackupMenuState::refresh()
}
int index{};
- for (const fslib::DirectoryEntry &entry : m_directoryListing)
+ for (const fslib::DirectoryEntry &entry : m_directoryListing.list())
{
sm_backupMenu->add_option(entry.get_filename());
m_menuEntries.push_back({MenuEntryType::Local, index});
diff --git a/source/data/DataContext.cpp b/source/data/DataContext.cpp
index 26ddd3c..33a454a 100644
--- a/source/data/DataContext.cpp
+++ b/source/data/DataContext.cpp
@@ -171,7 +171,7 @@ void data::DataContext::import_svi_files(sys::Task *task)
task->set_status(statusLoadingSvi);
- for (const fslib::DirectoryEntry &entry : sviDir)
+ for (const fslib::DirectoryEntry &entry : sviDir.list())
{
const fslib::Path target{sviPath / entry};
fslib::File sviFile{target, FsOpenMode_Read};
diff --git a/source/fs/directory_functions.cpp b/source/fs/directory_functions.cpp
index 989b49d..0caa294 100644
--- a/source/fs/directory_functions.cpp
+++ b/source/fs/directory_functions.cpp
@@ -8,7 +8,7 @@ uint64_t fs::get_directory_total_size(const fslib::Path &targetPath)
if (!targetDir.is_open()) { return 0; }
uint64_t directorySize = 0;
- for (const fslib::DirectoryEntry &entry : targetDir)
+ for (const fslib::DirectoryEntry &entry : targetDir.list())
{
if (entry.is_directory())
{
@@ -26,7 +26,7 @@ bool fs::directory_has_contents(const fslib::Path &directoryPath)
fslib::Directory testDir{directoryPath};
if (!testDir.is_open()) { return false; }
- for (const fslib::DirectoryEntry &entry : testDir)
+ for (const fslib::DirectoryEntry &entry : testDir.list())
{
if (entry.get_filename() != fs::NAME_SAVE_META) { return true; }
}
diff --git a/source/fs/io.cpp b/source/fs/io.cpp
index 6e31483..6c0fcc9 100644
--- a/source/fs/io.cpp
+++ b/source/fs/io.cpp
@@ -189,7 +189,7 @@ void fs::copy_directory(const fslib::Path &source, const fslib::Path &destinatio
fslib::Directory sourceDir{source};
if (error::fslib(sourceDir.is_open())) { return; }
- for (const fslib::DirectoryEntry &entry : sourceDir)
+ for (const fslib::DirectoryEntry &entry : sourceDir.list())
{
const char *filename = entry.get_filename();
if (filename == fs::NAME_SAVE_META) { continue; }
@@ -217,7 +217,7 @@ void fs::copy_directory_commit(const fslib::Path &source,
fslib::Directory sourceDir{source};
if (error::fslib(sourceDir.is_open())) { return; }
- for (const fslib::DirectoryEntry &entry : sourceDir)
+ for (const fslib::DirectoryEntry &entry : sourceDir.list())
{
const char *filename = entry.get_filename();
if (filename == fs::NAME_SAVE_META) { continue; }
diff --git a/source/fs/zip.cpp b/source/fs/zip.cpp
index 43b71f8..25286fd 100644
--- a/source/fs/zip.cpp
+++ b/source/fs/zip.cpp
@@ -100,7 +100,7 @@ void fs::copy_directory_to_zip(const fslib::Path &source, fs::MiniZip &dest, sys
fslib::Directory sourceDir{source};
if (error::fslib(sourceDir.is_open())) { return; }
- for (const fslib::DirectoryEntry &entry : sourceDir)
+ for (const fslib::DirectoryEntry &entry : sourceDir.list())
{
const fslib::Path fullSource{source / entry};
if (entry.is_directory()) { fs::copy_directory_to_zip(fullSource, dest, task); }