mirror of
https://github.com/rvtr/ctr_Repair.git
synced 2025-10-31 13:51:08 -04:00
CTR、SPRより後のモデルではXボタンで無線ON/OFFを切り替えられるように。ビルドにはnwm_ExtAPI.cppを差し替える必要がある
git-svn-id: file:///Volumes/Transfer/gigaleak_20231201/2020-05-23%20-%20ctr.7z%20+%20svn_v1.068.zip/ctr/svn/ctr_Repair@731 385bec56-5757-e545-9c3a-d8741f4650f1
This commit is contained in:
parent
a86972ad91
commit
46af748d2f
@ -1,6 +1,6 @@
|
|||||||
【ビルド環境】
|
【ビルド環境】
|
||||||
・SDK
|
・SDK
|
||||||
CTR_SDK-3_3 branch r45925
|
CTR_SDK-3_3 branch r45925 + r51434
|
||||||
|
|
||||||
・コンパイラ
|
・コンパイラ
|
||||||
ARM C/C++ Compiler, 4.1 [Build 1049] for Nintendo
|
ARM C/C++ Compiler, 4.1 [Build 1049] for Nintendo
|
||||||
@ -21,6 +21,10 @@ QR
|
|||||||
|
|
||||||
でビルドすること。
|
でビルドすること。
|
||||||
|
|
||||||
|
無線ON/OFF切り替えのため、sources/common/nwm_ExtAPI.cpp を
|
||||||
|
$HORIZON_ROOT/sources/libraries/nwm/CTR
|
||||||
|
にコピーしてからnwmをリビルドする必要がある。
|
||||||
|
|
||||||
【リリース時の注意】
|
【リリース時の注意】
|
||||||
ConsoleRestoreのReleaseビルドは、ショップ接続時などにで無限ループする不具合があるためDevelopmentビルドを使用する。
|
ConsoleRestoreのReleaseビルドは、ショップ接続時などにで無限ループする不具合があるためDevelopmentビルドを使用する。
|
||||||
|
|
||||||
|
|||||||
@ -187,6 +187,12 @@ extern "C" void nnMain(void)
|
|||||||
flip = !flip;
|
flip = !flip;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// XボタンでWiFi On/Off
|
||||||
|
if(padStatus.trigger & nn::hid::BUTTON_X)
|
||||||
|
{
|
||||||
|
s_HwUtility.ToggleWifiStatus();
|
||||||
|
}
|
||||||
|
|
||||||
// コンソールスクロール
|
// コンソールスクロール
|
||||||
if(padStatus.hold & nn::hid::BUTTON_UP)
|
if(padStatus.hold & nn::hid::BUTTON_UP)
|
||||||
{
|
{
|
||||||
@ -244,7 +250,8 @@ extern "C" void nnMain(void)
|
|||||||
operationMessage,
|
operationMessage,
|
||||||
s_HwUtility.GetRegion(),
|
s_HwUtility.GetRegion(),
|
||||||
s_HwUtility.GetSerialNumber(),
|
s_HwUtility.GetSerialNumber(),
|
||||||
s_HwUtility.HasReadFriendCode()
|
s_HwUtility.HasReadFriendCode(),
|
||||||
|
s_HwUtility.IsWifiOn()
|
||||||
);
|
);
|
||||||
|
|
||||||
if (GetBackupMode() == BACKUP_MODE_DELETE_IF_FAILED)
|
if (GetBackupMode() == BACKUP_MODE_DELETE_IF_FAILED)
|
||||||
|
|||||||
@ -212,6 +212,13 @@ extern "C" void nnMain(void)
|
|||||||
flip = !flip;
|
flip = !flip;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// XボタンでWiFi On/Off
|
||||||
|
if(padStatus.trigger & nn::hid::BUTTON_X)
|
||||||
|
{
|
||||||
|
s_HwUtility.ToggleWifiStatus();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// 左ボタンでQR切替
|
// 左ボタンでQR切替
|
||||||
if(padStatus.trigger & nn::hid::BUTTON_RIGHT)
|
if(padStatus.trigger & nn::hid::BUTTON_RIGHT)
|
||||||
{
|
{
|
||||||
@ -296,7 +303,7 @@ extern "C" void nnMain(void)
|
|||||||
s_HwUtility.GetCupMicroVersion(), s_HwUtility.GetNupVersion(), s_HwUtility.GetBatteryRemain(),
|
s_HwUtility.GetCupMicroVersion(), s_HwUtility.GetNupVersion(), s_HwUtility.GetBatteryRemain(),
|
||||||
s_HwUtility.GetInfraDeviceId(), s_HwUtility.GetFriendcode(), GetProgress(), IsRestoreFailed(),
|
s_HwUtility.GetInfraDeviceId(), s_HwUtility.GetFriendcode(), GetProgress(), IsRestoreFailed(),
|
||||||
IsRestoreSucceeded(), false, s_HwUtility.GetMacAddress(), operationMessage, s_HwUtility.GetRegion(),
|
IsRestoreSucceeded(), false, s_HwUtility.GetMacAddress(), operationMessage, s_HwUtility.GetRegion(),
|
||||||
s_HwUtility.GetSerialNumber(), s_HwUtility.HasReadFriendCode());
|
s_HwUtility.GetSerialNumber(), s_HwUtility.HasReadFriendCode(), s_HwUtility.IsWifiOn());
|
||||||
|
|
||||||
if (GetRestoreMode() != RESTORE_MODE_RESTORE)
|
if (GetRestoreMode() != RESTORE_MODE_RESTORE)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -41,6 +41,7 @@ std::string s_AdapterState;
|
|||||||
u8 s_Progress;
|
u8 s_Progress;
|
||||||
OperationMessage* s_OperationMessage;
|
OperationMessage* s_OperationMessage;
|
||||||
bool s_ReadFriendCode;
|
bool s_ReadFriendCode;
|
||||||
|
bool s_IsWifiOn;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -49,7 +50,21 @@ void SetTextWriterCore()
|
|||||||
GetTextWriter()->SetTextColor(nn::util::Color8(255, 255, 255, 255));
|
GetTextWriter()->SetTextColor(nn::util::Color8(255, 255, 255, 255));
|
||||||
GetTextWriter()->Print("\n");
|
GetTextWriter()->Print("\n");
|
||||||
|
|
||||||
|
f32 cursorX = GetTextWriter()->GetCursorX();
|
||||||
|
f32 cursorY = GetTextWriter()->GetCursorY();
|
||||||
GetTextWriter()->Printf("System Ver. %d.%d.%d-%d\n", s_CupMajor, s_CupMinor, s_CupMicro, s_NupMajor);
|
GetTextWriter()->Printf("System Ver. %d.%d.%d-%d\n", s_CupMajor, s_CupMinor, s_CupMicro, s_NupMajor);
|
||||||
|
GetTextWriter()->SetCursorX(cursorX);
|
||||||
|
GetTextWriter()->SetCursorY(cursorY);
|
||||||
|
if(s_IsWifiOn)
|
||||||
|
{
|
||||||
|
GetTextWriter()->Printf(" WiFi ON\n");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
GetTextWriter()->SetTextColor(nn::util::Color8(80, 80, 80, 255));
|
||||||
|
GetTextWriter()->Printf(" WiFi OFF\n");
|
||||||
|
GetTextWriter()->SetTextColor(nn::util::Color8(255, 255, 255, 255));
|
||||||
|
}
|
||||||
GetTextWriter()->Printf("System Region %s\n", nn::cfg::CTR::GetRegionCodeA3(s_Region));
|
GetTextWriter()->Printf("System Region %s\n", nn::cfg::CTR::GetRegionCodeA3(s_Region));
|
||||||
GetTextWriter()->Printf("Serial No. %s\n", s_SerialNo);
|
GetTextWriter()->Printf("Serial No. %s\n", s_SerialNo);
|
||||||
GetTextWriter()->Printf("Device ID %s\n", s_DeviceIdStr);
|
GetTextWriter()->Printf("Device ID %s\n", s_DeviceIdStr);
|
||||||
@ -97,7 +112,8 @@ void DrawSystemState
|
|||||||
OperationMessage& operationMessage,
|
OperationMessage& operationMessage,
|
||||||
nn::cfg::CTR::CfgRegionCode region,
|
nn::cfg::CTR::CfgRegionCode region,
|
||||||
u8* serialNo,
|
u8* serialNo,
|
||||||
bool readFriendCode
|
bool readFriendCode,
|
||||||
|
bool isWifiOn
|
||||||
|
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
@ -120,6 +136,7 @@ void DrawSystemState
|
|||||||
s_SerialNo[nn::cfg::CTR::CFG_SECURE_INFO_SERIAL_NO_LEN] = '\0';
|
s_SerialNo[nn::cfg::CTR::CFG_SECURE_INFO_SERIAL_NO_LEN] = '\0';
|
||||||
s_OperationMessage = &operationMessage;
|
s_OperationMessage = &operationMessage;
|
||||||
s_ReadFriendCode = readFriendCode;
|
s_ReadFriendCode = readFriendCode;
|
||||||
|
s_IsWifiOn = isWifiOn;
|
||||||
|
|
||||||
|
|
||||||
// デフォルトで上画面に描画するもの
|
// デフォルトで上画面に描画するもの
|
||||||
|
|||||||
@ -69,7 +69,8 @@ void DrawSystemState
|
|||||||
OperationMessage& operationMessage,
|
OperationMessage& operationMessage,
|
||||||
nn::cfg::CTR::CfgRegionCode region,
|
nn::cfg::CTR::CfgRegionCode region,
|
||||||
u8* s_SerialNo,
|
u8* s_SerialNo,
|
||||||
bool readFriendCode
|
bool readFriendCode,
|
||||||
|
bool isWifiOn
|
||||||
);
|
);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -32,6 +32,8 @@
|
|||||||
#include <nn/ac/private/ac.h>
|
#include <nn/ac/private/ac.h>
|
||||||
#include <nn/ac/CTR/private/ac_InternalApi.h>
|
#include <nn/ac/CTR/private/ac_InternalApi.h>
|
||||||
#include <nn/ac/CTR/private/ac_NetworkSetting.h>
|
#include <nn/ac/CTR/private/ac_NetworkSetting.h>
|
||||||
|
#include <nn/nwm/CTR/nwm_ExtAPI.h>
|
||||||
|
#include <nn/nwm/CTR/nwm_ExtHwAPI.h>
|
||||||
|
|
||||||
#include "Util.h"
|
#include "Util.h"
|
||||||
#include "FileName.h"
|
#include "FileName.h"
|
||||||
@ -109,6 +111,12 @@ void Util::Initialize()
|
|||||||
// IVSの取得
|
// IVSの取得
|
||||||
ReadIvs(m_VerData.cup.majorVersion);
|
ReadIvs(m_VerData.cup.majorVersion);
|
||||||
|
|
||||||
|
// モデルの取得
|
||||||
|
GetModel();
|
||||||
|
|
||||||
|
// nwmの初期化
|
||||||
|
nn::nwm::InitializeExtControl();
|
||||||
|
|
||||||
// MACアドレスの取得
|
// MACアドレスの取得
|
||||||
nn::nwm::Mac mac;
|
nn::nwm::Mac mac;
|
||||||
|
|
||||||
@ -130,9 +138,38 @@ void Util::FinalizeForRestore()
|
|||||||
|
|
||||||
void Util::Finalize()
|
void Util::Finalize()
|
||||||
{
|
{
|
||||||
|
nn::nwm::FinalizeExtControl();
|
||||||
nn::mcu::CTR::FinalizeHwCheck(&m_McuSession);
|
nn::mcu::CTR::FinalizeHwCheck(&m_McuSession);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Util::ToggleWifiStatus()
|
||||||
|
{
|
||||||
|
if(!CanChangeWifi())
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(nn::nwm::IsWifiOn())
|
||||||
|
{
|
||||||
|
COMMON_LOGGER_RESULT_IF_FAILED(
|
||||||
|
nn::nwm::Ext::SetWifiOff()
|
||||||
|
);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
COMMON_LOGGER_RESULT_IF_FAILED(
|
||||||
|
nn::nwm::Ext::SetWifiOn()
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 無線状態を取得する
|
||||||
|
bool Util::IsWifiOn()
|
||||||
|
{
|
||||||
|
return nn::nwm::IsWifiOn();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void Util::ReadIvs(u8 cupMajorVersion)
|
void Util::ReadIvs(u8 cupMajorVersion)
|
||||||
{
|
{
|
||||||
if (cupMajorVersion < common::CUP_MAJOR_VER_2ND_NUP)
|
if (cupMajorVersion < common::CUP_MAJOR_VER_2ND_NUP)
|
||||||
@ -187,6 +224,36 @@ void Util::ReadIvs(u8 cupMajorVersion)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Util::GetModel()
|
||||||
|
{
|
||||||
|
nn::mcu::CTR::HwCheck mcu(m_McuSession);
|
||||||
|
u8 buf[10];
|
||||||
|
const u8 RETRY = 10;
|
||||||
|
|
||||||
|
for(u8 i = 0; i < RETRY; i++)
|
||||||
|
{
|
||||||
|
nn::Result result = mcu.GetInfoRegisters(buf, sizeof(buf));
|
||||||
|
if(result.IsSuccess())
|
||||||
|
{
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
nn::os::Thread::Sleep(nn::fnd::TimeSpan::FromMilliSeconds(16));
|
||||||
|
}
|
||||||
|
|
||||||
|
// 機種情報を cfg に反映
|
||||||
|
m_Model= buf[9];
|
||||||
|
}
|
||||||
|
|
||||||
|
bool Util::CanChangeWifi()
|
||||||
|
{
|
||||||
|
if(m_Model == TARGET_MODEL_CTR || m_Model == TARGET_MODEL_SPR)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
// NULL終端されたシリアルナンバーを受け取る
|
// NULL終端されたシリアルナンバーを受け取る
|
||||||
// NULL終端された場所にチェックデジットを付加して新たにNULL終端する
|
// NULL終端された場所にチェックデジットを付加して新たにNULL終端する
|
||||||
void Util::AddCheckDigit(char* serial)
|
void Util::AddCheckDigit(char* serial)
|
||||||
|
|||||||
@ -30,6 +30,18 @@ namespace common
|
|||||||
class Util
|
class Util
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
enum TargetModel
|
||||||
|
{
|
||||||
|
TARGET_MODEL_CTR, //!< CTR を表します。
|
||||||
|
TARGET_MODEL_SPR, //!< SPR を表します。
|
||||||
|
TARGET_MODEL_RESERVE_2, //!< 予約
|
||||||
|
TARGET_MODEL_RESERVE_3, //!< 予約
|
||||||
|
TARGET_MODEL_RESERVE_4, //!< 予約
|
||||||
|
TARGET_MODEL_RESERVE_5, //!< 予約
|
||||||
|
TARGET_MODEL_RESERVE_6, //!< 予約
|
||||||
|
TARGET_MODEL_RESERVE_7 //!< 予約
|
||||||
|
};
|
||||||
|
|
||||||
Util();
|
Util();
|
||||||
virtual ~Util();
|
virtual ~Util();
|
||||||
|
|
||||||
@ -39,6 +51,12 @@ public:
|
|||||||
void FinalizeForBackup();
|
void FinalizeForBackup();
|
||||||
void FinalizeForRestore();
|
void FinalizeForRestore();
|
||||||
|
|
||||||
|
// 無線状態を変更する
|
||||||
|
void ToggleWifiStatus();
|
||||||
|
|
||||||
|
// 無線状態を取得する
|
||||||
|
bool IsWifiOn();
|
||||||
|
|
||||||
// シリアルナンバーにモジュラス10 ウェイト3・1(M10W31)でチェックデジットを付加する
|
// シリアルナンバーにモジュラス10 ウェイト3・1(M10W31)でチェックデジットを付加する
|
||||||
void AddCheckDigit(char* serial);
|
void AddCheckDigit(char* serial);
|
||||||
|
|
||||||
@ -123,6 +141,8 @@ private:
|
|||||||
void Initialize();
|
void Initialize();
|
||||||
void Finalize();
|
void Finalize();
|
||||||
void ReadIvs(u8 cupMajorVersion);
|
void ReadIvs(u8 cupMajorVersion);
|
||||||
|
void GetModel();
|
||||||
|
bool CanChangeWifi();
|
||||||
|
|
||||||
NN_PADDING4;
|
NN_PADDING4;
|
||||||
// フレンドコード
|
// フレンドコード
|
||||||
@ -169,7 +189,9 @@ private:
|
|||||||
|
|
||||||
// FriendCodeを読んだかどうか
|
// FriendCodeを読んだかどうか
|
||||||
bool m_HasReadFriendCode;
|
bool m_HasReadFriendCode;
|
||||||
NN_PADDING3;
|
// 機種情報
|
||||||
|
u8 m_Model;
|
||||||
|
NN_PADDING2;
|
||||||
NN_PADDING4;
|
NN_PADDING4;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|||||||
193
trunk/ConsoleDataMigration/sources/common/nwm_ExtAPI.cpp
Normal file
193
trunk/ConsoleDataMigration/sources/common/nwm_ExtAPI.cpp
Normal file
@ -0,0 +1,193 @@
|
|||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Project: Horizon
|
||||||
|
File: nwm_ExtAPI.cpp
|
||||||
|
|
||||||
|
Copyright (C)2009-2011 Nintendo Co., Ltd. All rights reserved.
|
||||||
|
|
||||||
|
These coded instructions, statements, and computer programs contain
|
||||||
|
proprietary information of Nintendo of America Inc. and/or Nintendo
|
||||||
|
Company Ltd., and are protected by Federal copyright law. They may
|
||||||
|
not be disclosed to third parties or copied or duplicated in any form,
|
||||||
|
in whole or in part, without the prior written consent of Nintendo.
|
||||||
|
|
||||||
|
$Rev$
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
#include <nn/srv.h>
|
||||||
|
#include <nn/nwm/CTR/nwm_ExtAPI.h>
|
||||||
|
#include <nn/nwm/CTR/nwm_ExtMpAPI.h>
|
||||||
|
#include <nn/nwm/CTR/nwm_ExtLgyAPI.h>
|
||||||
|
#include <nn/nwm/CTR/nwm_ExtHwAPI.h>
|
||||||
|
#include <nn/nwm/nwm_Result.h>
|
||||||
|
#include "nwm_Ext.h"
|
||||||
|
#include <nn/os/os_HandleManager.h>
|
||||||
|
#include <nn/cfg.h>
|
||||||
|
#include <nn/cfg/CTR/cfg_DebugParam.h>
|
||||||
|
|
||||||
|
using namespace nn;
|
||||||
|
using namespace nn::nwm::CTR;
|
||||||
|
|
||||||
|
|
||||||
|
namespace nn {
|
||||||
|
namespace nwm {
|
||||||
|
namespace CTR {
|
||||||
|
|
||||||
|
Result InitializeExtControl()
|
||||||
|
{
|
||||||
|
return detail::InitializeBase(&detail::Ext::s_Session, PORT_NAME_EXT);
|
||||||
|
}
|
||||||
|
|
||||||
|
Result FinalizeExtControl()
|
||||||
|
{
|
||||||
|
return detail::FinalizeBase(&detail::Ext::s_Session);
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace Ext {
|
||||||
|
|
||||||
|
Result GetMacAddress( Mac& mac )
|
||||||
|
{
|
||||||
|
return nn::nwm::CTR::GetMacAddress( mac );
|
||||||
|
}
|
||||||
|
|
||||||
|
Result GetState( u16* pState )
|
||||||
|
{
|
||||||
|
return detail::Ext::GetState( pState );
|
||||||
|
}
|
||||||
|
|
||||||
|
bool IsWifiOn()
|
||||||
|
{
|
||||||
|
return nn::nwm::CTR::IsWifiOn();
|
||||||
|
}
|
||||||
|
|
||||||
|
Result GetLinkLevel( LinkLevel* pLinkLevel )
|
||||||
|
{
|
||||||
|
if ( pLinkLevel )
|
||||||
|
{
|
||||||
|
*pLinkLevel = nn::nwm::CTR::GetLinkLevel();
|
||||||
|
return ResultSuccess();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return ResultInvalidPointer();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Result GetCommunicationMode( Mode* pMode )
|
||||||
|
{
|
||||||
|
if ( pMode )
|
||||||
|
{
|
||||||
|
*pMode = nn::nwm::CTR::GetCommunicationMode();
|
||||||
|
return ResultSuccess();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return ResultInvalidPointer();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 以下、MP用API
|
||||||
|
|
||||||
|
Result OpenMpMode()
|
||||||
|
{
|
||||||
|
return detail::Ext::OpenMpMode();
|
||||||
|
}
|
||||||
|
|
||||||
|
Result CloseMpMode()
|
||||||
|
{
|
||||||
|
return detail::Ext::CloseMpMode();
|
||||||
|
}
|
||||||
|
|
||||||
|
Result UpdateMpLinkLevel( LinkLevel linkLevel )
|
||||||
|
{
|
||||||
|
return detail::Ext::UpdateMpLinkLevel( linkLevel );
|
||||||
|
}
|
||||||
|
|
||||||
|
Result NotifyWifiOffPreparationComplete()
|
||||||
|
{
|
||||||
|
return detail::Ext::NotifyWifiOffPreparationComplete();
|
||||||
|
}
|
||||||
|
|
||||||
|
Result PrepareLegacyMode(u8 pParameters[32])
|
||||||
|
{
|
||||||
|
return detail::Ext::PrepareLegacyMode(pParameters);
|
||||||
|
}
|
||||||
|
|
||||||
|
Result GetHardwareInfo(HardwareInfo &info)
|
||||||
|
{
|
||||||
|
return detail::Ext::GetHardwareInfo(&info);
|
||||||
|
}
|
||||||
|
|
||||||
|
Result SetWifiOn()
|
||||||
|
{
|
||||||
|
Result result;
|
||||||
|
|
||||||
|
nn::cfg::Initialize();
|
||||||
|
|
||||||
|
#if 0
|
||||||
|
// デバッグモードフラグが有効な場合のみ、操作を行う。
|
||||||
|
if( nn::cfg::IsDebugMode() == true )
|
||||||
|
{
|
||||||
|
#endif
|
||||||
|
result = detail::Ext::PseudoToggleWifiButton(false);
|
||||||
|
#if 0
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
result = ResultNotAuthorized();
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
nn::cfg::Finalize();
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
Result SetWifiOff()
|
||||||
|
{
|
||||||
|
Result result;
|
||||||
|
|
||||||
|
nn::cfg::Initialize();
|
||||||
|
|
||||||
|
#if 0
|
||||||
|
// デバッグモードフラグが有効な場合のみ、操作を行う。
|
||||||
|
if( nn::cfg::IsDebugMode() == true )
|
||||||
|
{
|
||||||
|
#endif
|
||||||
|
result = detail::Ext::PseudoToggleWifiButton(true);
|
||||||
|
#if 0
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
result = ResultNotAuthorized();
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
nn::cfg::Finalize();
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
Result SimulateFirmwareError()
|
||||||
|
{
|
||||||
|
Result result;
|
||||||
|
|
||||||
|
nn::cfg::Initialize();
|
||||||
|
|
||||||
|
// デバッグモードフラグが有効な場合のみ、操作を行う。
|
||||||
|
if( nn::cfg::IsDebugMode() == true )
|
||||||
|
{
|
||||||
|
result = detail::Ext::SimulateFirmwareError();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
result = ResultNotAuthorized();
|
||||||
|
}
|
||||||
|
nn::cfg::Finalize();
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
} // namespace Ext
|
||||||
|
|
||||||
|
} // namespace CTR
|
||||||
|
} // namespace nwm
|
||||||
|
} // namespace nn
|
||||||
Loading…
Reference in New Issue
Block a user