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();
|
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アダプタ
|
// ACアダプタ
|
||||||
std::string adapterState;
|
std::string adapterState;
|
||||||
|
|||||||
@ -212,8 +212,8 @@ extern "C" void nnMain(void)
|
|||||||
flip = !flip;
|
flip = !flip;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Xボタンでモード切替
|
// 左ボタンでQR切替
|
||||||
if(padStatus.trigger & nn::hid::BUTTON_X)
|
if(padStatus.trigger & nn::hid::BUTTON_RIGHT)
|
||||||
{
|
{
|
||||||
qr = !qr;
|
qr = !qr;
|
||||||
}
|
}
|
||||||
@ -230,16 +230,6 @@ extern "C" void nnMain(void)
|
|||||||
common::Logger::GetLoggerInstance()->ScrollDown();
|
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アダプタ
|
// ACアダプタ
|
||||||
std::string adapterState;
|
std::string adapterState;
|
||||||
|
|||||||
@ -149,9 +149,11 @@ typedef enum RestoreState
|
|||||||
FAIL, // 失敗
|
FAIL, // 失敗
|
||||||
|
|
||||||
// プリインストールダウンロードモード
|
// プリインストールダウンロードモード
|
||||||
|
PREINSTALL_WAIT_START_UPDATE, // NUP開始待ち
|
||||||
PREINSTALL_WAIT_SYNC_TICKET, // 開始ボタン待ち
|
PREINSTALL_WAIT_SYNC_TICKET, // 開始ボタン待ち
|
||||||
PREINSTALL_DELETE_PERSONALIZED_TICKET, // Personalized eTicketの削除
|
PREINSTALL_DELETE_PERSONALIZED_TICKET, // Personalized eTicketの削除
|
||||||
PREINSTALL_WAIT_USER_SD_INSERT, // ユーザSD挿入待ち
|
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_INSERT, // ユーザSDの挿入チェック
|
||||||
PREINSTALL_CHECK_USER_SD, // ユーザSDのチェック
|
PREINSTALL_CHECK_USER_SD, // ユーザSDのチェック
|
||||||
PREINSTALL_CHECK_USER_SD_ALREADY_INITIALIZED, // ユーザSDのチェック、既に初期化済み
|
PREINSTALL_CHECK_USER_SD_ALREADY_INITIALIZED, // ユーザSDのチェック、既に初期化済み
|
||||||
@ -160,6 +162,7 @@ typedef enum RestoreState
|
|||||||
PREINSTALL_DOWNLOAD_APP, // アプリダウンロード
|
PREINSTALL_DOWNLOAD_APP, // アプリダウンロード
|
||||||
PREINSTALL_DOWNLOAD_APP_NOT_ENOUGH_SPACE, // アプリダウンロード失敗、空き容量不足
|
PREINSTALL_DOWNLOAD_APP_NOT_ENOUGH_SPACE, // アプリダウンロード失敗、空き容量不足
|
||||||
PREINSTALL_WAIT_USER_SD_EJECT, // ユーザSD抜き出し待ち
|
PREINSTALL_WAIT_USER_SD_EJECT, // ユーザSD抜き出し待ち
|
||||||
|
PREINSTALL_CHECK_REPAIR_SD_WAIT_NEXT, // 修理用SDのチェック・Aボタン待ち
|
||||||
PREINSTALL_CHECK_REPAIR_SD, // 修理用SDのチェック
|
PREINSTALL_CHECK_REPAIR_SD, // 修理用SDのチェック
|
||||||
|
|
||||||
RESTORE_STATE_MAX
|
RESTORE_STATE_MAX
|
||||||
@ -321,8 +324,15 @@ void CheckNupExecuted(common::HardwareStateManager& manager, common::OperationMe
|
|||||||
{
|
{
|
||||||
if (nn::nwm::CTR::IsWifiOn())
|
if (nn::nwm::CTR::IsWifiOn())
|
||||||
{
|
{
|
||||||
// ネットワークアップデートを行う
|
if(s_DownloadPreinstallMode)
|
||||||
s_RestoreState = WAIT_START_UPDATE;
|
{
|
||||||
|
s_RestoreState = PREINSTALL_WAIT_START_UPDATE;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// ネットワークアップデートを行う
|
||||||
|
s_RestoreState = WAIT_START_UPDATE;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -1592,6 +1602,20 @@ void ControlState(common::HardwareStateManager& manager, common::OperationMessag
|
|||||||
}
|
}
|
||||||
break;
|
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:
|
case PREINSTALL_WAIT_SYNC_TICKET:
|
||||||
{
|
{
|
||||||
operationMessage.Add("Press A or START Button to Continue.");
|
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);
|
PlayCursorSound(PREINSTALL_WAIT_USER_SD_INSERT);
|
||||||
operationMessage.Add("Insert User's SD Card");
|
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;
|
break;
|
||||||
|
|
||||||
@ -1732,6 +1769,12 @@ void ControlState(common::HardwareStateManager& manager, common::OperationMessag
|
|||||||
|
|
||||||
case PREINSTALL_FAIL_CHECK_REPAIR_SD:
|
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;
|
RestoreState saved = PREINSTALL_FAIL_CHECK_REPAIR_SD;
|
||||||
if (nn::fs::IsSdmcInserted())
|
if (nn::fs::IsSdmcInserted())
|
||||||
{
|
{
|
||||||
@ -1827,6 +1870,12 @@ void ControlState(common::HardwareStateManager& manager, common::OperationMessag
|
|||||||
|
|
||||||
case PREINSTALL_CHECK_REPAIR_SD:
|
case PREINSTALL_CHECK_REPAIR_SD:
|
||||||
{
|
{
|
||||||
|
operationMessage.Add("Press A or START Button to Continue.");
|
||||||
|
if(!nextStep)
|
||||||
|
{
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
RestoreState saved = PREINSTALL_CHECK_REPAIR_SD;
|
RestoreState saved = PREINSTALL_CHECK_REPAIR_SD;
|
||||||
if (nn::fs::IsSdmcInserted())
|
if (nn::fs::IsSdmcInserted())
|
||||||
{
|
{
|
||||||
@ -1894,16 +1943,6 @@ void OnSdEjected()
|
|||||||
{
|
{
|
||||||
s_RestoreState = FAIL;
|
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)
|
else if(s_RestoreState == PREINSTALL_CHECK_USER_SD_INSERT)
|
||||||
{
|
{
|
||||||
s_RestoreState = PREINSTALL_WAIT_USER_SD_INSERT;
|
s_RestoreState = PREINSTALL_WAIT_USER_SD_INSERT;
|
||||||
@ -1912,6 +1951,20 @@ void OnSdEjected()
|
|||||||
{
|
{
|
||||||
s_RestoreState = PREINSTALL_WAIT_USER_SD_EJECT;
|
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()
|
void OnSdInserted()
|
||||||
@ -1926,7 +1979,7 @@ void OnSdInserted()
|
|||||||
{
|
{
|
||||||
// SDカードが変わるのでファイルチェックは初期化する
|
// SDカードが変わるのでファイルチェックは初期化する
|
||||||
common::InitializeFileCheck();
|
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)
|
else if(s_RestoreState == PREINSTALL_WAIT_USER_SD_EJECT)
|
||||||
{
|
{
|
||||||
@ -1974,6 +2027,9 @@ void InitializeState()
|
|||||||
s_GetIvsOnlyMode = false;
|
s_GetIvsOnlyMode = false;
|
||||||
s_CheckSdOnlyMode = false;
|
s_CheckSdOnlyMode = false;
|
||||||
s_SkipNupMode = false;
|
s_SkipNupMode = false;
|
||||||
|
s_ExecutePreparePreinstallTitleDownload = false;
|
||||||
|
s_ExecutePreinstallTitleDownload = false;
|
||||||
|
s_PreinstallTitleDownloadSuccess = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
u32 GetProgress()
|
u32 GetProgress()
|
||||||
|
|||||||
@ -144,6 +144,7 @@ void PreinstallTitleDownloaderThreadFunc()
|
|||||||
TitleDownloader PreinstallTitleDownloader;
|
TitleDownloader PreinstallTitleDownloader;
|
||||||
|
|
||||||
s_Progress = 0;
|
s_Progress = 0;
|
||||||
|
s_FinishedTitleNum = 0;
|
||||||
PreinstallTitleDownloader.SetupTitleList(s_ProgramIdList, s_ProgramIdNum, s_FinishedTitleNum);
|
PreinstallTitleDownloader.SetupTitleList(s_ProgramIdList, s_ProgramIdNum, s_FinishedTitleNum);
|
||||||
PreinstallTitleDownloader.Start();
|
PreinstallTitleDownloader.Start();
|
||||||
s_FinishedTitleNum = PreinstallTitleDownloader.GetFinishedTitleNum();
|
s_FinishedTitleNum = PreinstallTitleDownloader.GetFinishedTitleNum();
|
||||||
|
|||||||
@ -54,7 +54,7 @@ void QrImage::Draw(demo::RenderSystemDrawing& renderSystem, bit64 deviceId, bool
|
|||||||
|
|
||||||
/* 作成するQRコードの情報を設定 */
|
/* 作成するQRコードの情報を設定 */
|
||||||
EncodeData info;
|
EncodeData info;
|
||||||
/* バージョンは15とする */
|
// バージョン2で数字34文字OK
|
||||||
info.version = 12;
|
info.version = 12;
|
||||||
/* 誤り訂正レベルH */
|
/* 誤り訂正レベルH */
|
||||||
info.ecc_level = ECC_LEVEL_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;
|
info.cell_size = 3;
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user