mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-21 05:09:34 -06:00
Android: Add "Import Wii Save"
This commit is contained in:
@ -8,8 +8,32 @@
|
||||
|
||||
#include "jni/AndroidCommon/AndroidCommon.h"
|
||||
|
||||
#include "Core/HW/WiiSave.h"
|
||||
#include "Core/WiiUtils.h"
|
||||
|
||||
// The hardcoded values here must match WiiUtils.java
|
||||
static jint ConvertCopyResult(WiiSave::CopyResult result)
|
||||
{
|
||||
switch (result)
|
||||
{
|
||||
case WiiSave::CopyResult::Success:
|
||||
return 0;
|
||||
case WiiSave::CopyResult::Error:
|
||||
return 1;
|
||||
case WiiSave::CopyResult::Cancelled:
|
||||
return 2;
|
||||
case WiiSave::CopyResult::CorruptedSource:
|
||||
return 3;
|
||||
case WiiSave::CopyResult::TitleMissing:
|
||||
return 4;
|
||||
default:
|
||||
ASSERT(false);
|
||||
return 1;
|
||||
}
|
||||
|
||||
static_assert(static_cast<int>(WiiSave::CopyResult::NumberOfEntries) == 5);
|
||||
}
|
||||
|
||||
extern "C" {
|
||||
|
||||
JNIEXPORT jboolean JNICALL Java_org_dolphinemu_dolphinemu_utils_WiiUtils_installWAD(JNIEnv* env,
|
||||
@ -19,4 +43,14 @@ JNIEXPORT jboolean JNICALL Java_org_dolphinemu_dolphinemu_utils_WiiUtils_install
|
||||
const std::string path = GetJString(env, jFile);
|
||||
return static_cast<jboolean>(WiiUtils::InstallWAD(path));
|
||||
}
|
||||
|
||||
JNIEXPORT jint JNICALL Java_org_dolphinemu_dolphinemu_utils_WiiUtils_importWiiSave(JNIEnv* env,
|
||||
jclass,
|
||||
jstring jFile)
|
||||
{
|
||||
const std::string path = GetJString(env, jFile);
|
||||
const auto can_overwrite = [] { return true; }; // TODO
|
||||
|
||||
return ConvertCopyResult(WiiSave::Import(path, can_overwrite));
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user