mirror of
https://github.com/rvtr/ctr_Repair.git
synced 2025-10-31 13:51:08 -04:00
SDカードにインポート可能かチェックできるように
git-svn-id: file:///Volumes/Transfer/gigaleak_20231201/2020-05-23%20-%20ctr.7z%20+%20svn_v1.068.zip/ctr/svn/ctr_Repair@594 385bec56-5757-e545-9c3a-d8741f4650f1
This commit is contained in:
parent
2db61f8b8e
commit
8bfa6718bd
@ -36,14 +36,20 @@ PreinstallImporter::~PreinstallImporter()
|
|||||||
// TODO Auto-generated destructor stub
|
// TODO Auto-generated destructor stub
|
||||||
}
|
}
|
||||||
|
|
||||||
nn::Result PreinstallImporter::CleanUpAndSetupSd()
|
nn::Result PreinstallImporter::SetupSd(bool* isAlreadyAvailable)
|
||||||
{
|
{
|
||||||
// TODO:SDカードのセーブデータを削除する?
|
// SDカードがインポート可能状態かどうかチェック
|
||||||
|
NN_UTIL_RETURN_IF_FAILED(
|
||||||
|
nn::am::QueryAvailableExternalTitleDatabase(isAlreadyAvailable)
|
||||||
|
);
|
||||||
|
|
||||||
// タイトルデータベースを作成する
|
// タイトルデータベースを作成する
|
||||||
NN_UTIL_RETURN_IF_FAILED(
|
if (!isAlreadyAvailable)
|
||||||
nn::am::InitializeExternalTitleDatabase(true)
|
{
|
||||||
);
|
NN_UTIL_RETURN_IF_FAILED(
|
||||||
|
nn::am::InitializeExternalTitleDatabase()
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
return nn::ResultSuccess();
|
return nn::ResultSuccess();
|
||||||
}
|
}
|
||||||
|
|||||||
@ -30,8 +30,8 @@ public:
|
|||||||
PreinstallImporter();
|
PreinstallImporter();
|
||||||
virtual ~PreinstallImporter();
|
virtual ~PreinstallImporter();
|
||||||
|
|
||||||
//! @brief 不要なSDカードのデータを削除して、新たにタイトルデータベースを作成します
|
//! @brief 外部タイトルデータベースを作成します
|
||||||
nn::Result CleanUpAndSetupSd();
|
nn::Result SetupSd(bool* isAlreadyAvailable);
|
||||||
|
|
||||||
//! @brief ダウンロードするプリインストールタイトルをBGS経由でリストアップする
|
//! @brief ダウンロードするプリインストールタイトルをBGS経由でリストアップする
|
||||||
//! @param[out] list プリインストールタイトルの配列。十分に大きいものを渡すこと。
|
//! @param[out] list プリインストールタイトルの配列。十分に大きいものを渡すこと。
|
||||||
|
|||||||
@ -125,7 +125,7 @@ void TwlTitleDownloaderThreadFunc()
|
|||||||
size_t num = 0;
|
size_t num = 0;
|
||||||
nn::ProgramId list[256];
|
nn::ProgramId list[256];
|
||||||
TitleDownloader::m_Result = ListUpTwlTitles(list, &num);
|
TitleDownloader::m_Result = ListUpTwlTitles(list, &num);
|
||||||
NN_UTIL_RETURN_IF_FAILED(TitleDownloader::m_Result);
|
COMMON_LOGGER_RETURN_VOID_IF_FAILED(TitleDownloader::m_Result);
|
||||||
TwlTitleDownloader.SetupTitleList(list, num);
|
TwlTitleDownloader.SetupTitleList(list, num);
|
||||||
TwlTitleDownloader.Start();
|
TwlTitleDownloader.Start();
|
||||||
}
|
}
|
||||||
@ -135,14 +135,11 @@ void PreinstallTitleDownloaderThreadFunc(PreinstallListupParam param)
|
|||||||
TitleDownloader PreinstallTitleDownloader;
|
TitleDownloader PreinstallTitleDownloader;
|
||||||
PreinstallImporter importer;
|
PreinstallImporter importer;
|
||||||
|
|
||||||
TitleDownloader::m_Result = importer.CleanUpAndSetupSd();
|
|
||||||
NN_UTIL_RETURN_IF_FAILED(TitleDownloader::m_Result);
|
|
||||||
|
|
||||||
s_Progress = 0;
|
s_Progress = 0;
|
||||||
size_t num = 0;
|
size_t num = 0;
|
||||||
nn::ProgramId list[256];
|
nn::ProgramId list[256];
|
||||||
TitleDownloader::m_Result = importer.ListTitles(list, &num, param.deviceId, param.serialNo);
|
TitleDownloader::m_Result = importer.ListTitles(list, &num, param.deviceId, param.serialNo);
|
||||||
NN_UTIL_RETURN_IF_FAILED(TitleDownloader::m_Result);
|
COMMON_LOGGER_RETURN_VOID_IF_FAILED(TitleDownloader::m_Result);
|
||||||
PreinstallTitleDownloader.SetupTitleList(list, num);
|
PreinstallTitleDownloader.SetupTitleList(list, num);
|
||||||
PreinstallTitleDownloader.Start();
|
PreinstallTitleDownloader.Start();
|
||||||
}
|
}
|
||||||
@ -153,6 +150,20 @@ void StartTwlTitleDownload()
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
bool PreparePreinstallTitleDownload()
|
||||||
|
{
|
||||||
|
PreinstallImporter importer;
|
||||||
|
bool isAlreadyAvailable = false;
|
||||||
|
TitleDownloader::m_Result = importer.SetupSd(&isAlreadyAvailable);
|
||||||
|
|
||||||
|
if(isAlreadyAvailable)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
return TitleDownloader::m_Result.IsSuccess();
|
||||||
|
}
|
||||||
|
|
||||||
void StartPreinstallTitleDownload(bit64 deviceId, u8* serialNo)
|
void StartPreinstallTitleDownload(bit64 deviceId, u8* serialNo)
|
||||||
{
|
{
|
||||||
PreinstallListupParam param;
|
PreinstallListupParam param;
|
||||||
|
|||||||
@ -24,6 +24,10 @@ namespace ConsoleRestore
|
|||||||
// 新たにスレッドを立て、TWLタイトルのダウンロードを開始する
|
// 新たにスレッドを立て、TWLタイトルのダウンロードを開始する
|
||||||
void StartTwlTitleDownload();
|
void StartTwlTitleDownload();
|
||||||
|
|
||||||
|
//! @brief SDカードをインポート可能状態にします
|
||||||
|
//! @return すでに初期化済みかどうか
|
||||||
|
bool PreparePreinstallTitleDownload();
|
||||||
|
|
||||||
//! @brief 新たにスレッドを立て、プリインストールタイトルのダウンロードを開始します <BR/>
|
//! @brief 新たにスレッドを立て、プリインストールタイトルのダウンロードを開始します <BR/>
|
||||||
//! SDカードはインポート可能な状態にしておく必要があります。
|
//! SDカードはインポート可能な状態にしておく必要があります。
|
||||||
//! @param[in] deviceId デバイスID
|
//! @param[in] deviceId デバイスID
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user