mirror of
https://github.com/rvtr/ctr_Repair.git
synced 2025-10-31 13:51:08 -04:00
QR表示を右ボタンに変更
SDチェック前にボタンを入力させるように SD抜け後にプリインストールアプリのダウンロードがリトライできるように git-svn-id: file:///Volumes/Transfer/gigaleak_20231201/2020-05-23%20-%20ctr.7z%20+%20svn_v1.068.zip/ctr/svn/ctr_Repair@662 385bec56-5757-e545-9c3a-d8741f4650f1
This commit is contained in:
parent
707ab24a28
commit
5898911f72
@ -199,17 +199,6 @@ extern "C" void nnMain(void)
|
||||
common::Logger::GetLoggerInstance()->ScrollDown();
|
||||
}
|
||||
|
||||
if(padStatus.hold & nn::hid::BUTTON_LEFT)
|
||||
{
|
||||
common::Logger::GetLoggerInstance()->ScrollToBegin();
|
||||
}
|
||||
|
||||
if(padStatus.hold & nn::hid::BUTTON_RIGHT)
|
||||
{
|
||||
common::Logger::GetLoggerInstance()->ScrollToEnd();
|
||||
}
|
||||
|
||||
|
||||
// 情報更新
|
||||
// ACアダプタ
|
||||
std::string adapterState;
|
||||
|
||||
@ -212,8 +212,8 @@ extern "C" void nnMain(void)
|
||||
flip = !flip;
|
||||
}
|
||||
|
||||
// Xボタンでモード切替
|
||||
if(padStatus.trigger & nn::hid::BUTTON_X)
|
||||
// 左ボタンでQR切替
|
||||
if(padStatus.trigger & nn::hid::BUTTON_RIGHT)
|
||||
{
|
||||
qr = !qr;
|
||||
}
|
||||
@ -230,16 +230,6 @@ extern "C" void nnMain(void)
|
||||
common::Logger::GetLoggerInstance()->ScrollDown();
|
||||
}
|
||||
|
||||
if(padStatus.hold & nn::hid::BUTTON_LEFT)
|
||||
{
|
||||
common::Logger::GetLoggerInstance()->ScrollToBegin();
|
||||
}
|
||||
|
||||
if(padStatus.hold & nn::hid::BUTTON_RIGHT)
|
||||
{
|
||||
common::Logger::GetLoggerInstance()->ScrollToEnd();
|
||||
}
|
||||
|
||||
// 情報更新
|
||||
// ACアダプタ
|
||||
std::string adapterState;
|
||||
|
||||
@ -149,9 +149,11 @@ typedef enum RestoreState
|
||||
FAIL, // 失敗
|
||||
|
||||
// プリインストールダウンロードモード
|
||||
PREINSTALL_WAIT_START_UPDATE, // NUP開始待ち
|
||||
PREINSTALL_WAIT_SYNC_TICKET, // 開始ボタン待ち
|
||||
PREINSTALL_DELETE_PERSONALIZED_TICKET, // Personalized eTicketの削除
|
||||
PREINSTALL_WAIT_USER_SD_INSERT, // ユーザSD挿入待ち
|
||||
PREINSTALL_WAIT_USER_SD_INSERT_WAIT_NEXT, // ユーザSD挿入後Aボタン待ち
|
||||
PREINSTALL_CHECK_USER_SD_INSERT, // ユーザSDの挿入チェック
|
||||
PREINSTALL_CHECK_USER_SD, // ユーザSDのチェック
|
||||
PREINSTALL_CHECK_USER_SD_ALREADY_INITIALIZED, // ユーザSDのチェック、既に初期化済み
|
||||
@ -160,6 +162,7 @@ typedef enum RestoreState
|
||||
PREINSTALL_DOWNLOAD_APP, // アプリダウンロード
|
||||
PREINSTALL_DOWNLOAD_APP_NOT_ENOUGH_SPACE, // アプリダウンロード失敗、空き容量不足
|
||||
PREINSTALL_WAIT_USER_SD_EJECT, // ユーザSD抜き出し待ち
|
||||
PREINSTALL_CHECK_REPAIR_SD_WAIT_NEXT, // 修理用SDのチェック・Aボタン待ち
|
||||
PREINSTALL_CHECK_REPAIR_SD, // 修理用SDのチェック
|
||||
|
||||
RESTORE_STATE_MAX
|
||||
@ -321,8 +324,15 @@ void CheckNupExecuted(common::HardwareStateManager& manager, common::OperationMe
|
||||
{
|
||||
if (nn::nwm::CTR::IsWifiOn())
|
||||
{
|
||||
// ネットワークアップデートを行う
|
||||
s_RestoreState = WAIT_START_UPDATE;
|
||||
if(s_DownloadPreinstallMode)
|
||||
{
|
||||
s_RestoreState = PREINSTALL_WAIT_START_UPDATE;
|
||||
}
|
||||
else
|
||||
{
|
||||
// ネットワークアップデートを行う
|
||||
s_RestoreState = WAIT_START_UPDATE;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -1592,6 +1602,20 @@ void ControlState(common::HardwareStateManager& manager, common::OperationMessag
|
||||
}
|
||||
break;
|
||||
|
||||
case PREINSTALL_WAIT_START_UPDATE:
|
||||
{
|
||||
operationMessage.Add("Operate BMS to Transfer PreInstalled Application");
|
||||
operationMessage.Add("Press Y Button to Continue.", nn::util::Color8(0, 255, 255, 255));
|
||||
PlayCursorSound(PREINSTALL_WAIT_START_UPDATE);
|
||||
|
||||
if (operateBmsDone)
|
||||
{
|
||||
s_RestoreState = WAIT_START_UPDATE;
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
case PREINSTALL_WAIT_SYNC_TICKET:
|
||||
{
|
||||
operationMessage.Add("Press A or START Button to Continue.");
|
||||
@ -1607,6 +1631,19 @@ void ControlState(common::HardwareStateManager& manager, common::OperationMessag
|
||||
{
|
||||
PlayCursorSound(PREINSTALL_WAIT_USER_SD_INSERT);
|
||||
operationMessage.Add("Insert User's SD Card");
|
||||
operationMessage.Add("and Press A or START Button.");
|
||||
}
|
||||
break;
|
||||
|
||||
case PREINSTALL_WAIT_USER_SD_INSERT_WAIT_NEXT:
|
||||
{
|
||||
operationMessage.Add("Insert User's SD Card");
|
||||
operationMessage.Add("and Press A or START Button.");
|
||||
|
||||
if(nextStep)
|
||||
{
|
||||
s_RestoreState = PREINSTALL_CHECK_USER_SD_INSERT;
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
@ -1732,6 +1769,12 @@ void ControlState(common::HardwareStateManager& manager, common::OperationMessag
|
||||
|
||||
case PREINSTALL_FAIL_CHECK_REPAIR_SD:
|
||||
{
|
||||
operationMessage.Add("Press A or START Button to Continue.");
|
||||
if(!nextStep)
|
||||
{
|
||||
break;
|
||||
}
|
||||
|
||||
RestoreState saved = PREINSTALL_FAIL_CHECK_REPAIR_SD;
|
||||
if (nn::fs::IsSdmcInserted())
|
||||
{
|
||||
@ -1827,6 +1870,12 @@ void ControlState(common::HardwareStateManager& manager, common::OperationMessag
|
||||
|
||||
case PREINSTALL_CHECK_REPAIR_SD:
|
||||
{
|
||||
operationMessage.Add("Press A or START Button to Continue.");
|
||||
if(!nextStep)
|
||||
{
|
||||
break;
|
||||
}
|
||||
|
||||
RestoreState saved = PREINSTALL_CHECK_REPAIR_SD;
|
||||
if (nn::fs::IsSdmcInserted())
|
||||
{
|
||||
@ -1894,16 +1943,6 @@ void OnSdEjected()
|
||||
{
|
||||
s_RestoreState = FAIL;
|
||||
}
|
||||
// FAILのときは一旦電源を切らないと動かないようにしておく
|
||||
// IVSチェック時はユーザのSDカードを挿入してもらうため
|
||||
// プリインストール時はユーザのSDカードを挿入してもらうため
|
||||
else if (s_RestoreState != FAIL && s_RestoreState != CHECK_IVS && s_RestoreState != PREINSTALL_WAIT_USER_SD_INSERT
|
||||
&& s_RestoreState != PREINSTALL_WAIT_USER_SD_EJECT && s_RestoreState != PREINSTALL_CHECK_SD_FAIL &&
|
||||
s_RestoreState != PREINSTALL_DOWNLOAD_APP_NOT_ENOUGH_SPACE)
|
||||
{
|
||||
InitializeState();
|
||||
ClearFileReadResult();
|
||||
}
|
||||
else if(s_RestoreState == PREINSTALL_CHECK_USER_SD_INSERT)
|
||||
{
|
||||
s_RestoreState = PREINSTALL_WAIT_USER_SD_INSERT;
|
||||
@ -1912,6 +1951,20 @@ void OnSdEjected()
|
||||
{
|
||||
s_RestoreState = PREINSTALL_WAIT_USER_SD_EJECT;
|
||||
}
|
||||
else if(s_RestoreState == PREINSTALL_FAIL_CHECK_REPAIR_SD)
|
||||
{
|
||||
s_RestoreState = PREINSTALL_CHECK_SD_FAIL;
|
||||
}
|
||||
// FAILのときは一旦電源を切らないと動かないようにしておく
|
||||
// IVSチェック時はユーザのSDカードを挿入してもらうため
|
||||
// プリインストール時はユーザのSDカードを挿入してもらうため
|
||||
else if (s_RestoreState != FAIL && s_RestoreState != CHECK_IVS && s_RestoreState != PREINSTALL_WAIT_USER_SD_INSERT
|
||||
&& s_RestoreState != PREINSTALL_WAIT_USER_SD_EJECT && s_RestoreState != PREINSTALL_CHECK_SD_FAIL &&
|
||||
s_RestoreState != PREINSTALL_DOWNLOAD_APP_NOT_ENOUGH_SPACE && s_RestoreState != PREINSTALL_WAIT_USER_SD_INSERT_WAIT_NEXT)
|
||||
{
|
||||
InitializeState();
|
||||
ClearFileReadResult();
|
||||
}
|
||||
}
|
||||
|
||||
void OnSdInserted()
|
||||
@ -1926,7 +1979,7 @@ void OnSdInserted()
|
||||
{
|
||||
// SDカードが変わるのでファイルチェックは初期化する
|
||||
common::InitializeFileCheck();
|
||||
s_RestoreState = PREINSTALL_CHECK_USER_SD_INSERT;
|
||||
s_RestoreState = PREINSTALL_WAIT_USER_SD_INSERT_WAIT_NEXT;
|
||||
}
|
||||
else if(s_RestoreState == PREINSTALL_WAIT_USER_SD_EJECT)
|
||||
{
|
||||
@ -1974,6 +2027,9 @@ void InitializeState()
|
||||
s_GetIvsOnlyMode = false;
|
||||
s_CheckSdOnlyMode = false;
|
||||
s_SkipNupMode = false;
|
||||
s_ExecutePreparePreinstallTitleDownload = false;
|
||||
s_ExecutePreinstallTitleDownload = false;
|
||||
s_PreinstallTitleDownloadSuccess = false;
|
||||
}
|
||||
|
||||
u32 GetProgress()
|
||||
|
||||
@ -144,6 +144,7 @@ void PreinstallTitleDownloaderThreadFunc()
|
||||
TitleDownloader PreinstallTitleDownloader;
|
||||
|
||||
s_Progress = 0;
|
||||
s_FinishedTitleNum = 0;
|
||||
PreinstallTitleDownloader.SetupTitleList(s_ProgramIdList, s_ProgramIdNum, s_FinishedTitleNum);
|
||||
PreinstallTitleDownloader.Start();
|
||||
s_FinishedTitleNum = PreinstallTitleDownloader.GetFinishedTitleNum();
|
||||
|
||||
@ -54,7 +54,7 @@ void QrImage::Draw(demo::RenderSystemDrawing& renderSystem, bit64 deviceId, bool
|
||||
|
||||
/* 作成するQRコードの情報を設定 */
|
||||
EncodeData info;
|
||||
/* バージョンは15とする */
|
||||
// バージョン2で数字34文字OK
|
||||
info.version = 12;
|
||||
/* 誤り訂正レベルH */
|
||||
info.ecc_level = ECC_LEVEL_H;
|
||||
@ -65,7 +65,7 @@ void QrImage::Draw(demo::RenderSystemDrawing& renderSystem, bit64 deviceId, bool
|
||||
* コンテンツサイズに合わせて分割、
|
||||
* このサンプルでは分割するほど大きなデータを入力することは想定していない
|
||||
*/
|
||||
info.total = 0;
|
||||
info.total = 1;
|
||||
/* セルのサイズ設定 */
|
||||
info.cell_size = 3;
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user