From 5898911f728bdfe4245f93c4129dcd844c8bb868 Mon Sep 17 00:00:00 2001 From: N2614 Date: Tue, 13 Mar 2012 07:37:15 +0000 Subject: [PATCH] =?UTF-8?q?QR=E8=A1=A8=E7=A4=BA=E3=82=92=E5=8F=B3=E3=83=9C?= =?UTF-8?q?=E3=82=BF=E3=83=B3=E3=81=AB=E5=A4=89=E6=9B=B4=20SD=E3=83=81?= =?UTF-8?q?=E3=82=A7=E3=83=83=E3=82=AF=E5=89=8D=E3=81=AB=E3=83=9C=E3=82=BF?= =?UTF-8?q?=E3=83=B3=E3=82=92=E5=85=A5=E5=8A=9B=E3=81=95=E3=81=9B=E3=82=8B?= =?UTF-8?q?=E3=82=88=E3=81=86=E3=81=AB=20SD=E6=8A=9C=E3=81=91=E5=BE=8C?= =?UTF-8?q?=E3=81=AB=E3=83=97=E3=83=AA=E3=82=A4=E3=83=B3=E3=82=B9=E3=83=88?= =?UTF-8?q?=E3=83=BC=E3=83=AB=E3=82=A2=E3=83=97=E3=83=AA=E3=81=AE=E3=83=80?= =?UTF-8?q?=E3=82=A6=E3=83=B3=E3=83=AD=E3=83=BC=E3=83=89=E3=81=8C=E3=83=AA?= =?UTF-8?q?=E3=83=88=E3=83=A9=E3=82=A4=E3=81=A7=E3=81=8D=E3=82=8B=E3=82=88?= =?UTF-8?q?=E3=81=86=E3=81=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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 --- .../sources/ConsoleBackup/ConsoleBackup.cpp | 11 --- .../sources/ConsoleRestore/ConsoleRestore.cpp | 14 +--- .../sources/ConsoleRestore/Controller.cpp | 82 ++++++++++++++++--- .../ConsoleRestore/TitleDownloader.cpp | 1 + .../sources/common/QrImage.cpp | 4 +- 5 files changed, 74 insertions(+), 38 deletions(-) diff --git a/trunk/ConsoleDataMigration/sources/ConsoleBackup/ConsoleBackup.cpp b/trunk/ConsoleDataMigration/sources/ConsoleBackup/ConsoleBackup.cpp index 6dd1696..7d6a1cf 100644 --- a/trunk/ConsoleDataMigration/sources/ConsoleBackup/ConsoleBackup.cpp +++ b/trunk/ConsoleDataMigration/sources/ConsoleBackup/ConsoleBackup.cpp @@ -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; diff --git a/trunk/ConsoleDataMigration/sources/ConsoleRestore/ConsoleRestore.cpp b/trunk/ConsoleDataMigration/sources/ConsoleRestore/ConsoleRestore.cpp index 60e0861..9f6333b 100644 --- a/trunk/ConsoleDataMigration/sources/ConsoleRestore/ConsoleRestore.cpp +++ b/trunk/ConsoleDataMigration/sources/ConsoleRestore/ConsoleRestore.cpp @@ -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; diff --git a/trunk/ConsoleDataMigration/sources/ConsoleRestore/Controller.cpp b/trunk/ConsoleDataMigration/sources/ConsoleRestore/Controller.cpp index 14401bf..3a962dc 100644 --- a/trunk/ConsoleDataMigration/sources/ConsoleRestore/Controller.cpp +++ b/trunk/ConsoleDataMigration/sources/ConsoleRestore/Controller.cpp @@ -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() diff --git a/trunk/ConsoleDataMigration/sources/ConsoleRestore/TitleDownloader.cpp b/trunk/ConsoleDataMigration/sources/ConsoleRestore/TitleDownloader.cpp index 3d0239f..4dedbcf 100644 --- a/trunk/ConsoleDataMigration/sources/ConsoleRestore/TitleDownloader.cpp +++ b/trunk/ConsoleDataMigration/sources/ConsoleRestore/TitleDownloader.cpp @@ -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(); diff --git a/trunk/ConsoleDataMigration/sources/common/QrImage.cpp b/trunk/ConsoleDataMigration/sources/common/QrImage.cpp index 530b792..b96473a 100644 --- a/trunk/ConsoleDataMigration/sources/common/QrImage.cpp +++ b/trunk/ConsoleDataMigration/sources/common/QrImage.cpp @@ -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;