diff options
Diffstat (limited to 'src/core/hle/service')
-rw-r--r-- | src/core/hle/service/am/am.cpp | 8 | ||||
-rw-r--r-- | src/core/hle/service/es/es.cpp | 10 | ||||
-rw-r--r-- | src/core/hle/service/mii/mii_manager.cpp | 2 | ||||
-rw-r--r-- | src/core/hle/service/mii/raw_data.cpp | 104 | ||||
-rw-r--r-- | src/core/hle/service/mii/raw_data.h | 2 |
5 files changed, 13 insertions, 113 deletions
diff --git a/src/core/hle/service/am/am.cpp b/src/core/hle/service/am/am.cpp index da33f0e44..e92f400de 100644 --- a/src/core/hle/service/am/am.cpp +++ b/src/core/hle/service/am/am.cpp @@ -341,7 +341,7 @@ void ISelfController::Exit(HLERequestContext& ctx) { void ISelfController::LockExit(HLERequestContext& ctx) { LOG_DEBUG(Service_AM, "called"); - system.SetExitLock(true); + system.SetExitLocked(true); IPC::ResponseBuilder rb{ctx, 2}; rb.Push(ResultSuccess); @@ -350,10 +350,14 @@ void ISelfController::LockExit(HLERequestContext& ctx) { void ISelfController::UnlockExit(HLERequestContext& ctx) { LOG_DEBUG(Service_AM, "called"); - system.SetExitLock(false); + system.SetExitLocked(false); IPC::ResponseBuilder rb{ctx, 2}; rb.Push(ResultSuccess); + + if (system.GetExitRequested()) { + system.Exit(); + } } void ISelfController::EnterFatalSection(HLERequestContext& ctx) { diff --git a/src/core/hle/service/es/es.cpp b/src/core/hle/service/es/es.cpp index 446f46b3c..9eaae4c4b 100644 --- a/src/core/hle/service/es/es.cpp +++ b/src/core/hle/service/es/es.cpp @@ -122,20 +122,18 @@ private: } void ImportTicket(HLERequestContext& ctx) { - const auto ticket = ctx.ReadBuffer(); + const auto raw_ticket = ctx.ReadBuffer(); [[maybe_unused]] const auto cert = ctx.ReadBuffer(1); - if (ticket.size() < sizeof(Core::Crypto::Ticket)) { + if (raw_ticket.size() < sizeof(Core::Crypto::Ticket)) { LOG_ERROR(Service_ETicket, "The input buffer is not large enough!"); IPC::ResponseBuilder rb{ctx, 2}; rb.Push(ERROR_INVALID_ARGUMENT); return; } - Core::Crypto::Ticket raw{}; - std::memcpy(&raw, ticket.data(), sizeof(Core::Crypto::Ticket)); - - if (!keys.AddTicketPersonalized(raw)) { + Core::Crypto::Ticket ticket = Core::Crypto::Ticket::Read(raw_ticket); + if (!keys.AddTicket(ticket)) { LOG_ERROR(Service_ETicket, "The ticket could not be imported!"); IPC::ResponseBuilder rb{ctx, 2}; rb.Push(ERROR_INVALID_ARGUMENT); diff --git a/src/core/hle/service/mii/mii_manager.cpp b/src/core/hle/service/mii/mii_manager.cpp index 46125d473..6b966f20d 100644 --- a/src/core/hle/service/mii/mii_manager.cpp +++ b/src/core/hle/service/mii/mii_manager.cpp @@ -21,7 +21,7 @@ constexpr Result ERROR_CANNOT_FIND_ENTRY{ErrorModule::Mii, 4}; constexpr std::size_t BaseMiiCount{2}; constexpr std::size_t DefaultMiiCount{RawData::DefaultMii.size()}; -constexpr MiiStoreData::Name DefaultMiiName{u'y', u'u', u'z', u'u'}; +constexpr MiiStoreData::Name DefaultMiiName{u'n', u'o', u' ', u'n', u'a', u'm', u'e'}; constexpr std::array<u8, 8> HairColorLookup{8, 1, 2, 3, 4, 5, 6, 7}; constexpr std::array<u8, 6> EyeColorLookup{8, 9, 10, 11, 12, 13}; constexpr std::array<u8, 5> MouthColorLookup{19, 20, 21, 22, 23}; diff --git a/src/core/hle/service/mii/raw_data.cpp b/src/core/hle/service/mii/raw_data.cpp index 1442280c8..80369cdb0 100644 --- a/src/core/hle/service/mii/raw_data.cpp +++ b/src/core/hle/service/mii/raw_data.cpp @@ -5,109 +5,7 @@ namespace Service::Mii::RawData { -const std::array<Service::Mii::DefaultMii, 8> DefaultMii{ - Service::Mii::DefaultMii{ - .face_type = 0, - .face_color = 0, - .face_wrinkle = 0, - .face_makeup = 0, - .hair_type = 33, - .hair_color = 1, - .hair_flip = 0, - .eye_type = 2, - .eye_color = 0, - .eye_scale = 4, - .eye_aspect = 3, - .eye_rotate = 4, - .eye_x = 2, - .eye_y = 12, - .eyebrow_type = 6, - .eyebrow_color = 1, - .eyebrow_scale = 4, - .eyebrow_aspect = 3, - .eyebrow_rotate = 6, - .eyebrow_x = 2, - .eyebrow_y = 10, - .nose_type = 1, - .nose_scale = 4, - .nose_y = 9, - .mouth_type = 23, - .mouth_color = 0, - .mouth_scale = 4, - .mouth_aspect = 3, - .mouth_y = 13, - .mustache_type = 0, - .beard_type = 0, - .beard_color = 0, - .mustache_scale = 4, - .mustache_y = 10, - .glasses_type = 0, - .glasses_color = 0, - .glasses_scale = 4, - .glasses_y = 10, - .mole_type = 0, - .mole_scale = 4, - .mole_x = 2, - .mole_y = 20, - .height = 64, - .weight = 64, - .gender = Gender::Male, - .favorite_color = 0, - .region = 0, - .font_region = FontRegion::Standard, - .type = 0, - }, - Service::Mii::DefaultMii{ - .face_type = 0, - .face_color = 0, - .face_wrinkle = 0, - .face_makeup = 0, - .hair_type = 12, - .hair_color = 1, - .hair_flip = 0, - .eye_type = 4, - .eye_color = 0, - .eye_scale = 4, - .eye_aspect = 3, - .eye_rotate = 3, - .eye_x = 2, - .eye_y = 12, - .eyebrow_type = 0, - .eyebrow_color = 1, - .eyebrow_scale = 4, - .eyebrow_aspect = 3, - .eyebrow_rotate = 6, - .eyebrow_x = 2, - .eyebrow_y = 10, - .nose_type = 1, - .nose_scale = 4, - .nose_y = 9, - .mouth_type = 23, - .mouth_color = 0, - .mouth_scale = 4, - .mouth_aspect = 3, - .mouth_y = 13, - .mustache_type = 0, - .beard_type = 0, - .beard_color = 0, - .mustache_scale = 4, - .mustache_y = 10, - .glasses_type = 0, - .glasses_color = 0, - .glasses_scale = 4, - .glasses_y = 10, - .mole_type = 0, - .mole_scale = 4, - .mole_x = 2, - .mole_y = 20, - .height = 64, - .weight = 64, - .gender = Gender::Female, - .favorite_color = 0, - .region = 0, - .font_region = FontRegion::Standard, - .type = 0, - }, +const std::array<Service::Mii::DefaultMii, 6> DefaultMii{ Service::Mii::DefaultMii{ .face_type = 0, .face_color = 4, diff --git a/src/core/hle/service/mii/raw_data.h b/src/core/hle/service/mii/raw_data.h index c2bec68d4..5b81b013b 100644 --- a/src/core/hle/service/mii/raw_data.h +++ b/src/core/hle/service/mii/raw_data.h @@ -9,7 +9,7 @@ namespace Service::Mii::RawData { -extern const std::array<Service::Mii::DefaultMii, 8> DefaultMii; +extern const std::array<Service::Mii::DefaultMii, 6> DefaultMii; extern const std::array<Service::Mii::RandomMiiData4, 18> RandomMiiFaceline; extern const std::array<Service::Mii::RandomMiiData3, 6> RandomMiiFacelineColor; extern const std::array<Service::Mii::RandomMiiData4, 18> RandomMiiFacelineWrinkle; |