@ -55,7 +55,7 @@ System::ResultStatus System::RunLoop(bool tight_loop) {
// If we don't have a currently active thread then don't execute instructions,
// If we don't have a currently active thread then don't execute instructions,
// instead advance to the next event and try to yield to the next thread
// instead advance to the next event and try to yield to the next thread
if ( Kernel : : GetCurrentThread ( ) = = nullptr ) {
if ( Kernel : : GetCurrentThread ( ) = = nullptr ) {
LOG_TRACE( Core_ARM , " Idling " ) ;
NG LOG_TRACE( Core_ARM , " Idling " ) ;
CoreTiming : : Idle ( ) ;
CoreTiming : : Idle ( ) ;
CoreTiming : : Advance ( ) ;
CoreTiming : : Advance ( ) ;
PrepareReschedule ( ) ;
PrepareReschedule ( ) ;
@ -82,15 +82,15 @@ System::ResultStatus System::Load(EmuWindow* emu_window, const std::string& file
app_loader = Loader : : GetLoader ( filepath ) ;
app_loader = Loader : : GetLoader ( filepath ) ;
if ( ! app_loader ) {
if ( ! app_loader ) {
LOG_CRITICAL( Core , " Failed to obtain loader for %s!" , filepath . c_str ( ) ) ;
NG LOG_CRITICAL( Core , " Failed to obtain loader for {}!" , filepath ) ;
return ResultStatus : : ErrorGetLoader ;
return ResultStatus : : ErrorGetLoader ;
}
}
std : : pair < boost : : optional < u32 > , Loader : : ResultStatus > system_mode =
std : : pair < boost : : optional < u32 > , Loader : : ResultStatus > system_mode =
app_loader - > LoadKernelSystemMode ( ) ;
app_loader - > LoadKernelSystemMode ( ) ;
if ( system_mode . second ! = Loader : : ResultStatus : : Success ) {
if ( system_mode . second ! = Loader : : ResultStatus : : Success ) {
LOG_CRITICAL( Core , " Failed to determine system mode (Error %i )!" ,
NG LOG_CRITICAL( Core , " Failed to determine system mode (Error {} )!" ,
static_cast < int > ( system_mode . second ) ) ;
static_cast < int > ( system_mode . second ) ) ;
switch ( system_mode . second ) {
switch ( system_mode . second ) {
case Loader : : ResultStatus : : ErrorEncrypted :
case Loader : : ResultStatus : : ErrorEncrypted :
@ -106,15 +106,15 @@ System::ResultStatus System::Load(EmuWindow* emu_window, const std::string& file
ResultStatus init_result { Init ( emu_window , system_mode . first . get ( ) ) } ;
ResultStatus init_result { Init ( emu_window , system_mode . first . get ( ) ) } ;
if ( init_result ! = ResultStatus : : Success ) {
if ( init_result ! = ResultStatus : : Success ) {
LOG_CRITICAL( Core , " Failed to initialize system (Error %i )!" ,
NG LOG_CRITICAL( Core , " Failed to initialize system (Error {} )!" ,
static_cast < int > ( init_result ) ) ;
static_cast < int > ( init_result ) ) ;
System : : Shutdown ( ) ;
System : : Shutdown ( ) ;
return init_result ;
return init_result ;
}
}
const Loader : : ResultStatus load_result { app_loader - > Load ( current_process ) } ;
const Loader : : ResultStatus load_result { app_loader - > Load ( current_process ) } ;
if ( Loader : : ResultStatus : : Success ! = load_result ) {
if ( Loader : : ResultStatus : : Success ! = load_result ) {
LOG_CRITICAL( Core , " Failed to load ROM (Error %i )!" , static_cast < int > ( load_result ) ) ;
NG LOG_CRITICAL( Core , " Failed to load ROM (Error {} )!" , static_cast < int > ( load_result ) ) ;
System : : Shutdown ( ) ;
System : : Shutdown ( ) ;
switch ( load_result ) {
switch ( load_result ) {
@ -151,7 +151,7 @@ void System::Reschedule() {
}
}
System : : ResultStatus System : : Init ( EmuWindow * emu_window , u32 system_mode ) {
System : : ResultStatus System : : Init ( EmuWindow * emu_window , u32 system_mode ) {
LOG_DEBUG( HW_Memory , " initialized OK " ) ;
NG LOG_DEBUG( HW_Memory , " initialized OK " ) ;
CoreTiming : : Init ( ) ;
CoreTiming : : Init ( ) ;
@ -162,7 +162,7 @@ System::ResultStatus System::Init(EmuWindow* emu_window, u32 system_mode) {
cpu_core = std : : make_shared < ARM_Dynarmic > ( ) ;
cpu_core = std : : make_shared < ARM_Dynarmic > ( ) ;
# else
# else
cpu_core = std : : make_shared < ARM_Unicorn > ( ) ;
cpu_core = std : : make_shared < ARM_Unicorn > ( ) ;
LOG_WARNING( Core , " CPU JIT requested, but Dynarmic not available " ) ;
NG LOG_WARNING( Core , " CPU JIT requested, but Dynarmic not available " ) ;
# endif
# endif
} else {
} else {
cpu_core = std : : make_shared < ARM_Unicorn > ( ) ;
cpu_core = std : : make_shared < ARM_Unicorn > ( ) ;
@ -184,7 +184,7 @@ System::ResultStatus System::Init(EmuWindow* emu_window, u32 system_mode) {
return ResultStatus : : ErrorVideoCore ;
return ResultStatus : : ErrorVideoCore ;
}
}
LOG_DEBUG( Core , " Initialized OK " ) ;
NG LOG_DEBUG( Core , " Initialized OK " ) ;
// Reset counters and set time origin to current frame
// Reset counters and set time origin to current frame
GetAndResetPerfStats ( ) ;
GetAndResetPerfStats ( ) ;
@ -218,7 +218,7 @@ void System::Shutdown() {
app_loader . reset ( ) ;
app_loader . reset ( ) ;
LOG_DEBUG( Core , " Shutdown OK " ) ;
NG LOG_DEBUG( Core , " Shutdown OK " ) ;
}
}
Service : : SM : : ServiceManager & System : : ServiceManager ( ) {
Service : : SM : : ServiceManager & System : : ServiceManager ( ) {