[Misc] Cleanup in Kernel
This commit is contained in:
parent
50492a951e
commit
b864149575
|
@ -34,7 +34,7 @@ class Emulator;
|
|||
namespace xe {
|
||||
namespace gpu {
|
||||
|
||||
static const std::vector<std::pair<uint16_t, uint16_t>>
|
||||
inline const std::vector<std::pair<uint16_t, uint16_t>>
|
||||
internal_display_resolution_entries = {
|
||||
{640, 480}, {640, 576}, {720, 480}, {720, 576}, {800, 600},
|
||||
{848, 480}, {1024, 768}, {1152, 864}, {1280, 720}, {1280, 768},
|
||||
|
|
|
@ -10,8 +10,6 @@
|
|||
#include "xenia/kernel/kernel_module.h"
|
||||
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/mutex.h"
|
||||
#include "xenia/cpu/processor.h"
|
||||
#include "xenia/cpu/raw_module.h"
|
||||
#include "xenia/emulator.h"
|
||||
#include "xenia/kernel/xthread.h"
|
||||
|
|
|
@ -9,20 +9,12 @@
|
|||
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
|
||||
#include <string>
|
||||
|
||||
#include "third_party/fmt/include/fmt/format.h"
|
||||
#include "xenia/base/assert.h"
|
||||
#include "xenia/base/byte_stream.h"
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/string.h"
|
||||
#include "xenia/cpu/processor.h"
|
||||
#include "xenia/emulator.h"
|
||||
#include "xenia/hid/input_system.h"
|
||||
#include "xenia/kernel/user_module.h"
|
||||
#include "xenia/kernel/util/shim_utils.h"
|
||||
#include "xenia/kernel/xam/xam_module.h"
|
||||
#include "xenia/kernel/xam/xdbf/xdbf_io.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_memory.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_module.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_ob.h"
|
||||
|
|
|
@ -10,17 +10,13 @@
|
|||
#ifndef XENIA_KERNEL_KERNEL_STATE_H_
|
||||
#define XENIA_KERNEL_KERNEL_STATE_H_
|
||||
|
||||
#include <atomic>
|
||||
#include <bitset>
|
||||
#include <condition_variable>
|
||||
#include <functional>
|
||||
#include <list>
|
||||
#include <memory>
|
||||
#include <vector>
|
||||
|
||||
#include "xenia/base/bit_map.h"
|
||||
#include "xenia/base/cvar.h"
|
||||
#include "xenia/base/mutex.h"
|
||||
#include "xenia/cpu/backend/backend.h"
|
||||
#include "xenia/cpu/export_resolver.h"
|
||||
#include "xenia/kernel/smc.h"
|
||||
|
@ -33,9 +29,7 @@
|
|||
#include "xenia/kernel/xam/user_profile.h"
|
||||
#include "xenia/kernel/xam/xam_state.h"
|
||||
#include "xenia/kernel/xam/xdbf/spa_info.h"
|
||||
#include "xenia/kernel/xam/xdbf/xdbf_io.h"
|
||||
#include "xenia/kernel/xevent.h"
|
||||
#include "xenia/memory.h"
|
||||
#include "xenia/vfs/virtual_file_system.h"
|
||||
#include "xenia/xbox.h"
|
||||
|
||||
|
|
|
@ -16,19 +16,19 @@
|
|||
namespace xe {
|
||||
namespace kernel {
|
||||
|
||||
static constexpr uint32_t kXN_2001 = 0x584E07D1;
|
||||
static constexpr uint32_t kXN_2002 = 0x584E07D2;
|
||||
static constexpr uint32_t kDashboardID = 0xFFFE07D1;
|
||||
inline constexpr uint32_t kXN_2001 = 0x584E07D1;
|
||||
inline constexpr uint32_t kXN_2002 = 0x584E07D2;
|
||||
inline constexpr uint32_t kDashboardID = 0xFFFE07D1;
|
||||
|
||||
static constexpr uint16_t GetGameId(const uint32_t title_id) {
|
||||
inline constexpr uint16_t GetGameId(const uint32_t title_id) {
|
||||
return title_id >> 16;
|
||||
}
|
||||
|
||||
static constexpr bool IsValidGameId(const uint32_t title_id) {
|
||||
inline constexpr bool IsValidGameId(const uint32_t title_id) {
|
||||
return (title_id >> 16) != 0xFFFE;
|
||||
}
|
||||
|
||||
static constexpr std::pair<char, char> GetTitlePublisher(
|
||||
inline constexpr std::pair<char, char> GetTitlePublisher(
|
||||
const uint32_t title_id) {
|
||||
const char first_char = title_id >> 24;
|
||||
const char second_char = (title_id >> 16) & 0xFF;
|
||||
|
@ -36,13 +36,13 @@ static constexpr std::pair<char, char> GetTitlePublisher(
|
|||
return {first_char, second_char};
|
||||
}
|
||||
|
||||
static constexpr bool IsXboxTitle(const uint32_t title_id) {
|
||||
inline constexpr bool IsXboxTitle(const uint32_t title_id) {
|
||||
const auto publisher = GetTitlePublisher(title_id);
|
||||
|
||||
return publisher.first == 'X';
|
||||
}
|
||||
|
||||
static constexpr bool IsXblaTitle(const uint32_t title_id) {
|
||||
inline constexpr bool IsXblaTitle(const uint32_t title_id) {
|
||||
const auto publisher = GetTitlePublisher(title_id);
|
||||
|
||||
return publisher.first == 'X' && publisher.second == 'A';
|
||||
|
@ -51,18 +51,18 @@ static constexpr bool IsXblaTitle(const uint32_t title_id) {
|
|||
static_assert(IsXblaTitle(0x5841127D)); // XBLA Game
|
||||
static_assert(!IsXblaTitle(0x4D5309C9)); // Non-XBLA Game
|
||||
|
||||
static constexpr bool IsAppTitle(const uint32_t title_id) {
|
||||
inline constexpr bool IsAppTitle(const uint32_t title_id) {
|
||||
const auto publisher = GetTitlePublisher(title_id);
|
||||
|
||||
return publisher.first == 'X' && publisher.second == 'H' ||
|
||||
publisher.first == 'X' && publisher.second == 'J';
|
||||
}
|
||||
|
||||
static constexpr bool IsXNTitle(const uint32_t title_id) {
|
||||
inline constexpr bool IsXNTitle(const uint32_t title_id) {
|
||||
return title_id == kXN_2001 || title_id == kXN_2002;
|
||||
}
|
||||
|
||||
static constexpr bool IsSystemExperienceTitle(const uint32_t title_id) {
|
||||
inline constexpr bool IsSystemExperienceTitle(const uint32_t title_id) {
|
||||
if (IsAppTitle(title_id)) {
|
||||
return true;
|
||||
}
|
||||
|
@ -70,7 +70,7 @@ static constexpr bool IsSystemExperienceTitle(const uint32_t title_id) {
|
|||
return IsXNTitle(title_id);
|
||||
};
|
||||
|
||||
static constexpr bool IsSystemTitle(const uint32_t title_id) {
|
||||
inline constexpr bool IsSystemTitle(const uint32_t title_id) {
|
||||
if (!title_id) {
|
||||
return true;
|
||||
}
|
||||
|
@ -90,7 +90,7 @@ static_assert(IsSystemTitle(kDashboardID)); // Dashboard check
|
|||
static_assert(!IsSystemTitle(0x4D5308BC)); // Non-XBLA Game
|
||||
static_assert(!IsSystemTitle(0x5841089A)); // XBLA Game
|
||||
|
||||
static constexpr bool IsOriginalXboxTitle(const uint32_t title_id) {
|
||||
inline constexpr bool IsOriginalXboxTitle(const uint32_t title_id) {
|
||||
if (!IsValidGameId(title_id)) {
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -15,11 +15,7 @@
|
|||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/xxhash.h"
|
||||
#include "xenia/cpu/elf_module.h"
|
||||
#include "xenia/cpu/processor.h"
|
||||
#include "xenia/cpu/xex_module.h"
|
||||
#include "xenia/emulator.h"
|
||||
#include "xenia/kernel/xfile.h"
|
||||
#include "xenia/kernel/xthread.h"
|
||||
|
||||
namespace xe {
|
||||
namespace kernel {
|
||||
|
|
|
@ -6,10 +6,10 @@
|
|||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
|
||||
#include <algorithm>
|
||||
|
||||
#include "xenia/kernel/util/crypto_utils.h"
|
||||
#include "xenia/xbox.h"
|
||||
|
||||
#include "third_party/crypto/TinySHA1.hpp"
|
||||
|
||||
|
|
|
@ -7,7 +7,10 @@
|
|||
******************************************************************************
|
||||
*/
|
||||
|
||||
#include "xenia/xbox.h"
|
||||
#ifndef XENIA_KERNEL_UTIL_CRYPTO_UTILS_H_
|
||||
#define XENIA_KERNEL_UTIL_CRYPTO_UTILS_H_
|
||||
|
||||
#include <cstdint>
|
||||
|
||||
namespace xe {
|
||||
namespace kernel {
|
||||
|
@ -25,4 +28,6 @@ void RC4(const uint8_t* key, uint32_t key_size_in, const uint8_t* data,
|
|||
|
||||
} // namespace util
|
||||
} // namespace kernel
|
||||
} // namespace xe
|
||||
} // namespace xe
|
||||
|
||||
#endif // XENIA_KERNEL_UTIL_CRYPTO_UTILS_H_
|
|
@ -22,8 +22,6 @@ GameInfoDatabase::GameInfoDatabase(const xam::SpaInfo* data) {
|
|||
Init(data);
|
||||
}
|
||||
|
||||
GameInfoDatabase::~GameInfoDatabase() {}
|
||||
|
||||
void GameInfoDatabase::Init(const xam::SpaInfo* data) {
|
||||
spa_gamedata_ = std::make_unique<xam::SpaInfo>(*data);
|
||||
spa_gamedata_->Load();
|
||||
|
|
|
@ -88,7 +88,7 @@ class GameInfoDatabase {
|
|||
// Normally titles have at least XDBF file embedded into xex. There are
|
||||
// certain exceptions and that's why we need to check if it is even valid.
|
||||
GameInfoDatabase(const xam::SpaInfo* data);
|
||||
~GameInfoDatabase();
|
||||
~GameInfoDatabase() = default;
|
||||
|
||||
bool IsValid() const { return is_valid_; }
|
||||
|
||||
|
|
|
@ -2,16 +2,16 @@
|
|||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2023 Xenia Canary. All rights reserved. * Released under the BSD
|
||||
*license - see LICENSE in the root for more details. *
|
||||
* Copyright 2023 Xenia Canary. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
|
||||
#include "xenia/kernel/util/guest_object_table.h"
|
||||
#include "xenia/base/atomic.h"
|
||||
#include "xenia/cpu/processor.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_memory.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_threading.h"
|
||||
|
||||
namespace xe {
|
||||
namespace kernel {
|
||||
namespace util {
|
||||
|
|
|
@ -2,16 +2,16 @@
|
|||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2023 Xenia Canary. All rights reserved. * Released under the BSD
|
||||
*license - see LICENSE in the root for more details. *
|
||||
* Copyright 2023 Xenia Canary. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
|
||||
#ifndef XENIA_KERNEL_UTIL_GUEST_OBJECT_TABLE_H_
|
||||
#define XENIA_KERNEL_UTIL_GUEST_OBJECT_TABLE_H_
|
||||
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/xbox.h"
|
||||
|
||||
namespace xe {
|
||||
namespace kernel {
|
||||
namespace util {
|
||||
|
@ -32,9 +32,9 @@ struct X_HANDLE_TABLE {
|
|||
uint8_t unk_36;
|
||||
uint8_t unk_38;
|
||||
};
|
||||
|
||||
static_assert_size(X_HANDLE_TABLE, 0x38);
|
||||
|
||||
/*
|
||||
bool GrowHandleTable(uint32_t table_ptr, cpu::ppc::PPCContext* context);
|
||||
uint32_t NewObjectHandle(uint32_t table_guest, uint32_t object_guest,
|
||||
cpu::ppc::PPCContext* context);
|
||||
|
@ -45,6 +45,8 @@ uint32_t LookupHandleUnlocked(X_HANDLE_TABLE* table, guest_handle_t handle,
|
|||
cpu::ppc::PPCContext* context);
|
||||
uint32_t LookupHandle(uint32_t table, guest_handle_t handle,
|
||||
uint32_t reference_object, cpu::ppc::PPCContext* context);
|
||||
|
||||
*/
|
||||
} // namespace util
|
||||
} // namespace kernel
|
||||
} // namespace xe
|
||||
|
|
|
@ -9,9 +9,6 @@
|
|||
|
||||
#include "xenia/kernel/util/object_table.h"
|
||||
|
||||
#include <algorithm>
|
||||
#include <cstring>
|
||||
|
||||
#include "xenia/base/byte_stream.h"
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/kernel/xobject.h"
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
*/
|
||||
|
||||
#include "xenia/kernel/util/presence_string_builder.h"
|
||||
#include "xenia/kernel/util/shim_utils.h"
|
||||
#include "third_party/fmt/include/fmt/format.h"
|
||||
|
||||
namespace xe {
|
||||
namespace kernel {
|
||||
|
|
|
@ -14,7 +14,6 @@
|
|||
#include <string>
|
||||
#include <type_traits>
|
||||
|
||||
#include "third_party/fmt/include/fmt/format.h"
|
||||
#include "xenia/base/byte_order.h"
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/memory.h"
|
||||
|
|
|
@ -639,7 +639,7 @@ struct X_IMAGE_EXPORT_DIRECTORY {
|
|||
uint32_t AddressOfNameOrdinals; // RVA from base of image
|
||||
};
|
||||
|
||||
const std::unordered_map<uint32_t, std::string> xex2_system_flags_map = {
|
||||
inline const std::unordered_map<uint32_t, std::string> xex2_system_flags_map = {
|
||||
{XEX_SYSTEM_NO_FORCED_REBOOT, "XEX_SYSTEM_NO_FORCED_REBOOT"},
|
||||
{XEX_SYSTEM_FOREGROUND_TASKS, "XEX_SYSTEM_FOREGROUND_TASKS"},
|
||||
{XEX_SYSTEM_NO_ODD_MAPPING, "XEX_SYSTEM_NO_ODD_MAPPING"},
|
||||
|
|
|
@ -0,0 +1,64 @@
|
|||
/**
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2025 Xenia Canary. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
|
||||
#ifndef XENIA_KERNEL_UTIL_XFILETIME_H_
|
||||
#define XENIA_KERNEL_UTIL_XFILETIME_H_
|
||||
|
||||
#include "xenia/base/byte_order.h"
|
||||
#include "xenia/base/chrono.h"
|
||||
|
||||
namespace xe {
|
||||
namespace kernel {
|
||||
|
||||
struct X_FILETIME {
|
||||
static constexpr uint64_t minimal_valid_time = 125911584000000000;
|
||||
static constexpr uint64_t maximal_valid_time = 157469184000000000;
|
||||
|
||||
xe::be<uint32_t> high_part;
|
||||
xe::be<uint32_t> low_part;
|
||||
|
||||
X_FILETIME() {
|
||||
high_part = 0;
|
||||
low_part = 0;
|
||||
}
|
||||
|
||||
X_FILETIME(uint64_t filetime) {
|
||||
high_part = static_cast<uint32_t>(filetime >> 32);
|
||||
low_part = static_cast<uint32_t>(filetime);
|
||||
}
|
||||
|
||||
X_FILETIME(std::time_t time) {
|
||||
const auto file_time =
|
||||
chrono::WinSystemClock::to_file_time(chrono::WinSystemClock::from_sys(
|
||||
std::chrono::system_clock::from_time_t(time)));
|
||||
|
||||
high_part = static_cast<uint32_t>(file_time >> 32);
|
||||
low_part = static_cast<uint32_t>(file_time);
|
||||
}
|
||||
|
||||
chrono::WinSystemClock::time_point to_time_point() const {
|
||||
const uint64_t filetime =
|
||||
(static_cast<uint64_t>(high_part) << 32) | low_part;
|
||||
|
||||
return chrono::WinSystemClock::from_file_time(filetime);
|
||||
}
|
||||
|
||||
bool is_valid() const {
|
||||
const uint64_t filetime =
|
||||
(static_cast<uint64_t>(high_part) << 32) | low_part;
|
||||
|
||||
return filetime >= minimal_valid_time && filetime <= maximal_valid_time;
|
||||
}
|
||||
};
|
||||
static_assert_size(X_FILETIME, 0x8);
|
||||
|
||||
} // namespace kernel
|
||||
} // namespace xe
|
||||
|
||||
#endif
|
|
@ -39,8 +39,6 @@ std::vector<uint32_t> XLastMatchmakingQuery::GetFilters() const {
|
|||
return XLast::GetAllValuesFromNode(node_, "Filters", "left");
|
||||
}
|
||||
|
||||
XLast::XLast() : parsed_xlast_(nullptr) {}
|
||||
|
||||
XLast::XLast(const uint8_t* compressed_xml_data,
|
||||
const uint32_t compressed_data_size,
|
||||
const uint32_t decompressed_data_size) {
|
||||
|
@ -84,8 +82,6 @@ XLast::XLast(const uint8_t* compressed_xml_data,
|
|||
xlast_decompressed_xml_.size());
|
||||
}
|
||||
|
||||
XLast::~XLast() {}
|
||||
|
||||
std::u16string XLast::GetTitleName() const {
|
||||
std::string xpath = "/XboxLiveSubmissionProject/GameConfigProject";
|
||||
|
||||
|
|
|
@ -32,7 +32,7 @@ enum class ProductInformationEntry {
|
|||
GenreTypeString
|
||||
};
|
||||
|
||||
static const std::map<std::string, ProductInformationEntry>
|
||||
inline const std::map<std::string, ProductInformationEntry>
|
||||
product_information_entry_string_to_enum = {
|
||||
{"offlinePlayersMax", ProductInformationEntry::MaxOfflinePlayers},
|
||||
{"systemLinkPlayersMax", ProductInformationEntry::MaxSystemLinkPlayers},
|
||||
|
@ -43,7 +43,7 @@ static const std::map<std::string, ProductInformationEntry>
|
|||
{"genreTextStringId", ProductInformationEntry::GenreTypeString},
|
||||
};
|
||||
|
||||
static const std::map<XLanguage, std::string> language_mapping = {
|
||||
inline const std::map<XLanguage, std::string> language_mapping = {
|
||||
{XLanguage::kEnglish, "en-US"}, {XLanguage::kJapanese, "ja-JP"},
|
||||
{XLanguage::kGerman, "de-DE"}, {XLanguage::kFrench, "fr-FR"},
|
||||
{XLanguage::kSpanish, "es-ES"}, {XLanguage::kItalian, "it-IT"},
|
||||
|
@ -67,10 +67,10 @@ class XLastMatchmakingQuery {
|
|||
|
||||
class XLast {
|
||||
public:
|
||||
XLast();
|
||||
XLast() = default;
|
||||
XLast(const uint8_t* compressed_xml_data, const uint32_t compressed_data_size,
|
||||
const uint32_t decompressed_data_size);
|
||||
~XLast();
|
||||
~XLast() = default;
|
||||
|
||||
std::u16string GetTitleName() const;
|
||||
std::map<ProductInformationEntry, uint32_t> GetProductInformationAttributes()
|
||||
|
|
|
@ -17,9 +17,6 @@ namespace xe {
|
|||
namespace kernel {
|
||||
namespace xam {
|
||||
|
||||
GpdAchievementBackend::GpdAchievementBackend() {}
|
||||
GpdAchievementBackend::~GpdAchievementBackend() {}
|
||||
|
||||
void GpdAchievementBackend::EarnAchievement(const uint64_t xuid,
|
||||
const uint32_t title_id,
|
||||
const uint32_t achievement_id) {
|
||||
|
|
|
@ -25,8 +25,8 @@ namespace xam {
|
|||
|
||||
class GpdAchievementBackend : public AchievementBackendInterface {
|
||||
public:
|
||||
GpdAchievementBackend();
|
||||
~GpdAchievementBackend();
|
||||
GpdAchievementBackend() = default;
|
||||
~GpdAchievementBackend() = default;
|
||||
|
||||
void EarnAchievement(const uint64_t xuid, const uint32_t title_id,
|
||||
const uint32_t achievement_id) override;
|
||||
|
|
|
@ -15,10 +15,9 @@
|
|||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
#include "xenia/base/chrono.h"
|
||||
#include "xenia/kernel/util/xfiletime.h"
|
||||
#include "xenia/kernel/xam/xdbf/gpd_info.h"
|
||||
#include "xenia/kernel/xam/xdbf/spa_info.h"
|
||||
#include "xenia/xbox.h"
|
||||
|
||||
namespace xe {
|
||||
namespace kernel {
|
||||
|
|
|
@ -10,7 +10,6 @@
|
|||
#include "xenia/kernel/xam/apps/messenger_app.h"
|
||||
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/threading.h"
|
||||
|
||||
namespace xe {
|
||||
namespace kernel {
|
||||
|
|
|
@ -10,7 +10,6 @@
|
|||
#include "xenia/kernel/xam/apps/xam_app.h"
|
||||
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/threading.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/xam/xam_content_device.h"
|
||||
#include "xenia/kernel/xenumerator.h"
|
||||
|
|
|
@ -10,7 +10,6 @@
|
|||
#include "xenia/kernel/xam/apps/xgi_app.h"
|
||||
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/threading.h"
|
||||
|
||||
namespace xe {
|
||||
namespace kernel {
|
||||
|
|
|
@ -10,7 +10,6 @@
|
|||
#include "xenia/kernel/xam/apps/xlivebase_app.h"
|
||||
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/threading.h"
|
||||
|
||||
namespace xe {
|
||||
namespace kernel {
|
||||
|
|
|
@ -11,7 +11,6 @@
|
|||
#include "xenia/kernel/xthread.h"
|
||||
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/threading.h"
|
||||
#include "xenia/emulator.h"
|
||||
#include "xenia/xbox.h"
|
||||
|
||||
|
|
|
@ -10,13 +10,6 @@
|
|||
#ifndef XENIA_KERNEL_XAM_APPS_XMP_APP_H_
|
||||
#define XENIA_KERNEL_XAM_APPS_XMP_APP_H_
|
||||
|
||||
#include <memory>
|
||||
#include <mutex>
|
||||
#include <string>
|
||||
#include <unordered_map>
|
||||
#include <vector>
|
||||
|
||||
#include "xenia/base/mutex.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/xam/app_manager.h"
|
||||
|
||||
|
|
|
@ -108,7 +108,9 @@ ProfileManager::ProfileManager(KernelState* kernel_state,
|
|||
logged_profiles_.clear();
|
||||
accounts_.clear();
|
||||
|
||||
LoadAccounts(FindProfiles());
|
||||
for (const auto account_xuid : FindProfiles()) {
|
||||
LoadAccount(account_xuid);
|
||||
}
|
||||
|
||||
if (!cvars::logged_profile_slot_0_xuid.empty()) {
|
||||
Login(xe::string_util::from_string<uint64_t>(
|
||||
|
@ -135,8 +137,6 @@ ProfileManager::ProfileManager(KernelState* kernel_state,
|
|||
}
|
||||
}
|
||||
|
||||
ProfileManager::~ProfileManager() {}
|
||||
|
||||
void ProfileManager::ReloadProfile(const uint64_t xuid) {
|
||||
if (accounts_.contains(xuid)) {
|
||||
accounts_.erase(xuid);
|
||||
|
@ -145,7 +145,11 @@ void ProfileManager::ReloadProfile(const uint64_t xuid) {
|
|||
LoadAccount(xuid);
|
||||
}
|
||||
|
||||
void ProfileManager::ReloadProfiles() { LoadAccounts(FindProfiles()); }
|
||||
void ProfileManager::ReloadProfiles() {
|
||||
for (const auto account_xuid : FindProfiles()) {
|
||||
LoadAccount(account_xuid);
|
||||
}
|
||||
}
|
||||
|
||||
UserProfile* ProfileManager::GetProfile(const uint64_t xuid) const {
|
||||
const uint8_t user_index = GetUserIndexAssignedToProfile(xuid);
|
||||
|
@ -236,12 +240,6 @@ bool ProfileManager::LoadAccount(const uint64_t xuid) {
|
|||
return true;
|
||||
}
|
||||
|
||||
void ProfileManager::LoadAccounts(const std::vector<uint64_t> profiles_xuids) {
|
||||
for (const auto& path : profiles_xuids) {
|
||||
LoadAccount(path);
|
||||
}
|
||||
}
|
||||
|
||||
bool ProfileManager::MountProfile(const uint64_t xuid, std::string mount_path) {
|
||||
std::filesystem::path profile_path = GetProfilePath(xuid);
|
||||
if (mount_path.empty()) {
|
||||
|
|
|
@ -39,7 +39,7 @@ namespace xe {
|
|||
namespace kernel {
|
||||
namespace xam {
|
||||
|
||||
const static std::string kDashboardStringID =
|
||||
inline const std::string kDashboardStringID =
|
||||
fmt::format("{:08X}", kDashboardID);
|
||||
|
||||
constexpr std::string_view kDefaultMountFormat = "User_{:016X}";
|
||||
|
@ -60,7 +60,7 @@ class ProfileManager {
|
|||
// Loading Account means load basic data
|
||||
ProfileManager(KernelState* kernel_state, UserTracker* user_tracker);
|
||||
|
||||
~ProfileManager();
|
||||
~ProfileManager() = default;
|
||||
|
||||
bool CreateProfile(const std::string gamertag, bool autologin,
|
||||
bool default_xuid = false);
|
||||
|
@ -77,7 +77,6 @@ class ProfileManager {
|
|||
void LoginMultiple(const std::map<uint8_t, uint64_t>& profiles);
|
||||
|
||||
bool LoadAccount(const uint64_t xuid);
|
||||
void LoadAccounts(const std::vector<uint64_t> profiles_xuids);
|
||||
|
||||
void ReloadProfiles();
|
||||
void ReloadProfile(const uint64_t xuid);
|
||||
|
|
|
@ -27,6 +27,8 @@ class CreateProfileUI final : public XamDialog {
|
|||
memset(gamertag_, 0, sizeof(gamertag_));
|
||||
}
|
||||
|
||||
~CreateProfileUI() = default;
|
||||
|
||||
private:
|
||||
void OnDraw(ImGuiIO& io) override;
|
||||
|
||||
|
|
|
@ -46,6 +46,8 @@ class GamercardUI final : public XamDialog {
|
|||
GamercardUI(xe::ui::Window* window, xe::ui::ImGuiDrawer* imgui_drawer,
|
||||
KernelState* kernel_state, uint64_t xuid);
|
||||
|
||||
~GamercardUI() = default;
|
||||
|
||||
private:
|
||||
void OnDraw(ImGuiIO& io) override;
|
||||
void DrawBaseSettings(ImGuiIO& io);
|
||||
|
|
|
@ -22,12 +22,7 @@ class ProfilePasscodeUI final : public XamDialog {
|
|||
ProfilePasscodeUI(xe::ui::ImGuiDrawer* imgui_drawer, std::string_view title,
|
||||
std::string_view description,
|
||||
MESSAGEBOX_RESULT* result_ptr);
|
||||
|
||||
void DrawPasscodeField(uint8_t key_id);
|
||||
|
||||
void OnDraw(ImGuiIO& io) override;
|
||||
|
||||
virtual ~ProfilePasscodeUI() {}
|
||||
~ProfilePasscodeUI() = default;
|
||||
|
||||
bool SelectedSignedIn() const { return selected_signed_in_; }
|
||||
|
||||
|
@ -48,6 +43,10 @@ class ProfilePasscodeUI final : public XamDialog {
|
|||
{"Left", DPAD_LEFT_PASSCODE},
|
||||
{"Right", DPAD_RIGHT_PASSCODE}};
|
||||
|
||||
void OnDraw(ImGuiIO& io) override;
|
||||
|
||||
void DrawPasscodeField(uint8_t key_id);
|
||||
|
||||
bool has_opened_ = false;
|
||||
bool selected_signed_in_ = false;
|
||||
std::string title_;
|
||||
|
|
|
@ -22,6 +22,8 @@ class SigninUI final : public XamDialog {
|
|||
SigninUI(xe::ui::ImGuiDrawer* imgui_drawer, ProfileManager* profile_manager,
|
||||
uint32_t last_used_slot, uint32_t users_needed);
|
||||
|
||||
~SigninUI() = default;
|
||||
|
||||
private:
|
||||
void OnDraw(ImGuiIO& io) override;
|
||||
|
||||
|
|
|
@ -22,9 +22,9 @@ class TitleListUI final : public XamDialog {
|
|||
TitleListUI(xe::ui::ImGuiDrawer* imgui_drawer, const ImVec2 drawing_position,
|
||||
const UserProfile* profile);
|
||||
|
||||
private:
|
||||
~TitleListUI();
|
||||
|
||||
private:
|
||||
void OnDraw(ImGuiIO& io) override;
|
||||
|
||||
void LoadProfileTitleList(xe::ui::ImGuiDrawer* imgui_drawer,
|
||||
|
|
|
@ -15,9 +15,6 @@ namespace xe {
|
|||
namespace kernel {
|
||||
namespace xam {
|
||||
|
||||
UserData::UserData() {}
|
||||
UserData::~UserData() {}
|
||||
|
||||
UserData::UserData(const UserData& user_data) {
|
||||
data_ = user_data.data_;
|
||||
extended_data_ = user_data.extended_data_;
|
||||
|
|
|
@ -14,6 +14,7 @@
|
|||
#include <variant>
|
||||
#include <vector>
|
||||
|
||||
#include "xenia/base/string_util.h"
|
||||
#include "xenia/xbox.h"
|
||||
|
||||
namespace xe {
|
||||
|
@ -175,9 +176,7 @@ class UserData {
|
|||
}
|
||||
|
||||
protected:
|
||||
~UserData();
|
||||
|
||||
UserData();
|
||||
UserData() = default;
|
||||
UserData(const UserData& user_data);
|
||||
|
||||
// From host
|
||||
|
@ -193,6 +192,8 @@ class UserData {
|
|||
UserData(const X_USER_DATA_TYPE data_type, const X_USER_DATA_UNION* user_data,
|
||||
std::span<const uint8_t> extended_data);
|
||||
|
||||
~UserData() = default;
|
||||
|
||||
X_USER_DATA data_ = {};
|
||||
std::vector<uint8_t> extended_data_ = {};
|
||||
};
|
||||
|
|
|
@ -10,7 +10,6 @@
|
|||
#include "xenia/kernel/xam/user_profile.h"
|
||||
|
||||
#include <ranges>
|
||||
#include <sstream>
|
||||
|
||||
#include "third_party/fmt/include/fmt/format.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
|
@ -21,7 +20,8 @@ namespace xe {
|
|||
namespace kernel {
|
||||
namespace xam {
|
||||
|
||||
UserProfile::UserProfile(uint64_t xuid, X_XAMACCOUNTINFO* account_info)
|
||||
UserProfile::UserProfile(const uint64_t xuid,
|
||||
const X_XAMACCOUNTINFO* account_info)
|
||||
: xuid_(xuid), account_info_(*account_info), profile_images_() {
|
||||
// 58410A1F checks the user XUID against a mask of 0x00C0000000000000 (3<<54),
|
||||
// if non-zero, it prevents the user from playing the game.
|
||||
|
|
|
@ -74,7 +74,7 @@ enum class XTileType {
|
|||
};
|
||||
|
||||
// TODO: find filenames of other tile types that are stored in profile
|
||||
static const std::map<XTileType, std::string> kTileFileNames = {
|
||||
inline const std::map<XTileType, std::string> kTileFileNames = {
|
||||
{XTileType::kGamerTile, "tile_64.png"},
|
||||
{XTileType::kGamerTileSmall, "tile_32.png"},
|
||||
{XTileType::kPersonalGamerTile, "tile_64.png"},
|
||||
|
@ -88,7 +88,7 @@ static constexpr std::pair<uint16_t, uint16_t> kProfileIconSizeSmall = {32, 32};
|
|||
|
||||
class UserProfile {
|
||||
public:
|
||||
UserProfile(uint64_t xuid, X_XAMACCOUNTINFO* account_info);
|
||||
UserProfile(const uint64_t xuid, const X_XAMACCOUNTINFO* account_info);
|
||||
|
||||
uint64_t xuid() const { return xuid_; }
|
||||
std::string name() const { return account_info_.GetGamertagString(); }
|
||||
|
|
|
@ -15,8 +15,6 @@ namespace xe {
|
|||
namespace kernel {
|
||||
namespace xam {
|
||||
|
||||
Property::Property() : UserData() {};
|
||||
|
||||
Property::Property(const Property& property)
|
||||
: UserData(property), property_id_(property.property_id_) {}
|
||||
|
||||
|
@ -43,8 +41,6 @@ Property::Property(std::span<const uint8_t> serialized_data)
|
|||
*reinterpret_cast<const uint32_t*>(serialized_data.data());
|
||||
}
|
||||
|
||||
Property::~Property() {};
|
||||
|
||||
std::vector<uint8_t> Property::Serialize() const {
|
||||
std::vector<uint8_t> serialized_property(
|
||||
sizeof(AttributeKey) + sizeof(X_USER_DATA) + extended_data_.size());
|
||||
|
|
|
@ -35,7 +35,7 @@ static_assert_size(XUSER_PROPERTY, 0x18);
|
|||
|
||||
class Property : public UserData {
|
||||
public:
|
||||
Property();
|
||||
Property() = default;
|
||||
Property(const Property& property);
|
||||
|
||||
Property(uint32_t property_id, UserDataTypes property_data);
|
||||
|
@ -44,7 +44,8 @@ class Property : public UserData {
|
|||
// Ctor used for deserialization
|
||||
Property(const uint8_t* serialized_data, size_t data_size);
|
||||
Property(std::span<const uint8_t> serialized_data);
|
||||
~Property();
|
||||
|
||||
~Property() = default;
|
||||
|
||||
const AttributeKey GetPropertyId() const { return property_id_; }
|
||||
|
||||
|
|
|
@ -27,11 +27,6 @@ const static std::array<UserSetting, 3> default_setting_values = {
|
|||
UserSettingId::XPROFILE_GAMERCARD_PICTURE_KEY,
|
||||
xe::string_util::read_u16string_and_swap(u"gamercard_picture_key"))};
|
||||
|
||||
UserSetting::UserSetting(UserSetting& setting) : UserData(setting) {
|
||||
setting_id_ = setting.setting_id_;
|
||||
setting_source_ = setting.setting_source_;
|
||||
}
|
||||
|
||||
UserSetting::UserSetting(const UserSetting& setting) : UserData(setting) {
|
||||
setting_id_ = setting.setting_id_;
|
||||
setting_source_ = setting.setting_source_;
|
||||
|
|
|
@ -267,7 +267,7 @@ enum class UserSettingId : uint32_t {
|
|||
0x4F), // 0x7008004F, named "LastOnLIVE" in Velocity
|
||||
};
|
||||
|
||||
constexpr static std::array<UserSettingId, 104> known_settings = {
|
||||
inline constexpr std::array<UserSettingId, 104> known_settings = {
|
||||
UserSettingId::XPROFILE_PERMISSIONS,
|
||||
UserSettingId::XPROFILE_GAMER_TYPE,
|
||||
UserSettingId::XPROFILE_GAMER_YAXIS_INVERSION,
|
||||
|
@ -374,7 +374,7 @@ constexpr static std::array<UserSettingId, 104> known_settings = {
|
|||
UserSettingId::XPROFILE_LAST_LIVE_SIGNIN,
|
||||
};
|
||||
|
||||
const static std::set<UserSettingId> title_writable_settings = {
|
||||
inline const std::set<UserSettingId> title_writable_settings = {
|
||||
UserSettingId::XPROFILE_TITLE_SPECIFIC1,
|
||||
UserSettingId::XPROFILE_TITLE_SPECIFIC2,
|
||||
UserSettingId::XPROFILE_TITLE_SPECIFIC3};
|
||||
|
@ -447,7 +447,6 @@ enum ACCELERATOR_CONTROL_OPTIONS : uint8_t {
|
|||
|
||||
class UserSetting : public UserData {
|
||||
public:
|
||||
UserSetting(UserSetting& setting);
|
||||
UserSetting(const UserSetting& setting);
|
||||
// Ctor for writing from host
|
||||
UserSetting(UserSettingId setting_id, UserDataTypes setting_data);
|
||||
|
|
|
@ -28,8 +28,6 @@ DECLARE_int32(user_language);
|
|||
namespace xe {
|
||||
namespace kernel {
|
||||
namespace xam {
|
||||
UserTracker::UserTracker() : spa_data_(nullptr) {}
|
||||
UserTracker::~UserTracker() {}
|
||||
|
||||
bool UserTracker::AddUser(uint64_t xuid) {
|
||||
if (IsUserTracked(xuid)) {
|
||||
|
|
|
@ -45,8 +45,8 @@ struct TitleInfo {
|
|||
|
||||
class UserTracker {
|
||||
public:
|
||||
UserTracker();
|
||||
~UserTracker();
|
||||
UserTracker() = default;
|
||||
~UserTracker() = default;
|
||||
|
||||
// UserTracker specific methods
|
||||
bool AddUser(uint64_t xuid);
|
||||
|
@ -115,7 +115,7 @@ class UserTracker {
|
|||
|
||||
void FlushUserData(const uint64_t xuid);
|
||||
|
||||
SpaInfo* spa_data_;
|
||||
SpaInfo* spa_data_ = nullptr;
|
||||
|
||||
std::set<uint64_t> tracked_xuids_;
|
||||
};
|
||||
|
|
|
@ -16,10 +16,6 @@
|
|||
#include "xenia/kernel/xenumerator.h"
|
||||
#include "xenia/xbox.h"
|
||||
|
||||
#if XE_PLATFORM_WIN32
|
||||
#include "xenia/base/platform_win.h"
|
||||
#endif
|
||||
|
||||
#include "third_party/fmt/include/fmt/format.h"
|
||||
|
||||
namespace xe {
|
||||
|
|
|
@ -7,8 +7,6 @@
|
|||
******************************************************************************
|
||||
*/
|
||||
|
||||
#include <xenia/kernel/xboxkrnl/xboxkrnl_error.h>
|
||||
#include <xenia/kernel/xboxkrnl/xboxkrnl_modules.h>
|
||||
#include "xenia/base/cvar.h"
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/string_util.h"
|
||||
|
@ -18,7 +16,9 @@
|
|||
#include "xenia/kernel/util/shim_utils.h"
|
||||
#include "xenia/kernel/xam/xam_module.h"
|
||||
#include "xenia/kernel/xam/xam_private.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_error.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_memory.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_modules.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_threading.h"
|
||||
#include "xenia/kernel/xenumerator.h"
|
||||
#include "xenia/kernel/xthread.h"
|
||||
|
|
|
@ -15,7 +15,6 @@
|
|||
#include "xenia/cpu/export_resolver.h"
|
||||
#include "xenia/kernel/kernel_module.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/xam/xam_ordinals.h"
|
||||
|
||||
namespace xe {
|
||||
namespace kernel {
|
||||
|
|
|
@ -7,9 +7,6 @@
|
|||
******************************************************************************
|
||||
*/
|
||||
|
||||
#include <cstring>
|
||||
|
||||
#include "xenia/base/clock.h"
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/util/shim_utils.h"
|
||||
|
|
|
@ -7,7 +7,6 @@
|
|||
******************************************************************************
|
||||
*/
|
||||
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/util/shim_utils.h"
|
||||
#include "xenia/kernel/xam/xam_private.h"
|
||||
|
|
|
@ -11,7 +11,6 @@
|
|||
#define XENIA_KERNEL_XAM_XAM_PRIVATE_H_
|
||||
|
||||
#include "xenia/cpu/export_resolver.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/xam/xam_ordinals.h"
|
||||
|
||||
namespace xe {
|
||||
|
|
|
@ -33,12 +33,6 @@ XamState::XamState(Emulator* emulator, KernelState* kernel_state)
|
|||
AppManager::RegisterApps(kernel_state, app_manager_.get());
|
||||
}
|
||||
|
||||
XamState::~XamState() {
|
||||
app_manager_.reset();
|
||||
achievement_manager_.reset();
|
||||
content_manager_.reset();
|
||||
}
|
||||
|
||||
UserProfile* XamState::GetUserProfile(uint32_t user_index) const {
|
||||
if (user_index >= XUserMaxUserCount && user_index < XUserIndexLatest) {
|
||||
return nullptr;
|
||||
|
|
|
@ -34,7 +34,7 @@ namespace xam {
|
|||
class XamState {
|
||||
public:
|
||||
XamState(Emulator* emulator, KernelState* kernel_state);
|
||||
~XamState();
|
||||
~XamState() = default;
|
||||
|
||||
AppManager* app_manager() const { return app_manager_.get(); }
|
||||
ContentManager* content_manager() const { return content_manager_.get(); }
|
||||
|
|
|
@ -8,20 +8,13 @@
|
|||
*/
|
||||
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/string_util.h"
|
||||
#include "xenia/cpu/processor.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/user_module.h"
|
||||
#include "xenia/kernel/util/shim_utils.h"
|
||||
#include "xenia/kernel/xam/xam_module.h"
|
||||
#include "xenia/kernel/xam/xam_private.h"
|
||||
#include "xenia/kernel/xthread.h"
|
||||
#include "xenia/xbox.h"
|
||||
|
||||
#if XE_PLATFORM_WIN32
|
||||
#include "xenia/base/platform_win.h"
|
||||
#endif
|
||||
|
||||
#include "third_party/fmt/include/fmt/format.h"
|
||||
|
||||
namespace xe {
|
||||
|
|
|
@ -8,15 +8,12 @@
|
|||
*/
|
||||
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/math.h"
|
||||
#include "xenia/base/string_util.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/util/shim_utils.h"
|
||||
#include "xenia/kernel/xam/user_profile.h"
|
||||
#include "xenia/kernel/xam/user_settings.h"
|
||||
#include "xenia/kernel/xam/xam_private.h"
|
||||
#include "xenia/kernel/xenumerator.h"
|
||||
#include "xenia/kernel/xthread.h"
|
||||
#include "xenia/xbox.h"
|
||||
|
||||
#include "third_party/stb/stb_image.h"
|
||||
|
|
|
@ -7,12 +7,9 @@
|
|||
******************************************************************************
|
||||
*/
|
||||
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/util/shim_utils.h"
|
||||
#include "xenia/kernel/xam/xam_private.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_video.h"
|
||||
#include "xenia/xbox.h"
|
||||
|
||||
namespace xe {
|
||||
namespace kernel {
|
||||
|
@ -20,7 +17,7 @@ namespace xam {
|
|||
|
||||
void XGetVideoMode_entry(pointer_t<X_VIDEO_MODE> video_mode) {
|
||||
// TODO(benvanik): actually check to see if these are the same.
|
||||
xboxkrnl::VdQueryVideoMode(std::move(video_mode));
|
||||
xboxkrnl::VdQueryVideoMode(video_mode);
|
||||
}
|
||||
DECLARE_XAM_EXPORT1(XGetVideoMode, kVideo, ExportTag::kSketchy);
|
||||
|
||||
|
|
|
@ -7,8 +7,6 @@
|
|||
******************************************************************************
|
||||
*/
|
||||
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/util/shim_utils.h"
|
||||
#include "xenia/kernel/xam/xam_private.h"
|
||||
#include "xenia/xbox.h"
|
||||
|
|
|
@ -10,14 +10,14 @@
|
|||
#ifndef XENIA_KERNEL_XAM_XDBF_GPD_INFO_H_
|
||||
#define XENIA_KERNEL_XAM_XDBF_GPD_INFO_H_
|
||||
|
||||
#include "xenia/kernel/xam/user_data.h"
|
||||
#include "xenia/kernel/xam/xdbf/xdbf_io.h"
|
||||
|
||||
#include <span>
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
#include "xenia/xbox.h"
|
||||
#include "xenia/base/byte_order.h"
|
||||
#include "xenia/kernel/util/xfiletime.h"
|
||||
#include "xenia/kernel/xam/user_data.h"
|
||||
#include "xenia/kernel/xam/xdbf/xdbf_io.h"
|
||||
|
||||
namespace xe {
|
||||
namespace kernel {
|
||||
|
@ -111,6 +111,8 @@ class GpdInfo : public XdbfFile {
|
|||
GpdInfo(const uint32_t title_id);
|
||||
GpdInfo(const uint32_t title_id, const std::vector<uint8_t> buffer);
|
||||
|
||||
~GpdInfo() = default;
|
||||
|
||||
// Normally GPD ALWAYS contains one free entry that indicates EOF
|
||||
bool IsValid() const { return !free_entries_.empty(); }
|
||||
// r/w image, setting, string.
|
||||
|
|
|
@ -29,7 +29,7 @@ class GpdInfoProfile : public GpdInfo {
|
|||
GpdInfoProfile(const std::vector<uint8_t> buffer)
|
||||
: GpdInfo(kDashboardID, buffer) {};
|
||||
|
||||
~GpdInfoProfile() {};
|
||||
~GpdInfoProfile() = default;
|
||||
|
||||
void AddNewTitle(const SpaInfo* title_data);
|
||||
void UpdateTitleInfo(const uint32_t title_id,
|
||||
|
|
|
@ -32,7 +32,7 @@ class GpdInfoTitle : public GpdInfo {
|
|||
GpdInfoTitle(const uint32_t title_id, const std::vector<uint8_t> buffer)
|
||||
: GpdInfo(title_id, buffer) {};
|
||||
|
||||
~GpdInfoTitle() {};
|
||||
~GpdInfoTitle() = default;
|
||||
|
||||
std::vector<uint32_t> GetAchievementsIds() const;
|
||||
|
||||
|
|
|
@ -130,6 +130,7 @@ static_assert_size(AchievementTableEntry, 0x24);
|
|||
class SpaInfo : public XdbfFile {
|
||||
public:
|
||||
SpaInfo(const std::span<uint8_t> buffer);
|
||||
~SpaInfo() = default;
|
||||
|
||||
void Load();
|
||||
|
||||
|
|
|
@ -163,9 +163,11 @@ struct Entry {
|
|||
// https://free60project.github.io/wiki/XDBF.html
|
||||
class XdbfFile {
|
||||
public:
|
||||
XdbfFile() {};
|
||||
XdbfFile() = default;
|
||||
XdbfFile(const std::span<const uint8_t> buffer);
|
||||
|
||||
~XdbfFile() = default;
|
||||
|
||||
const Entry* const GetEntry(uint16_t section, uint64_t id) const;
|
||||
|
||||
protected:
|
||||
|
|
|
@ -7,21 +7,11 @@
|
|||
******************************************************************************
|
||||
*/
|
||||
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_module.h"
|
||||
|
||||
#include <vector>
|
||||
|
||||
#include "xenia/base/clock.h"
|
||||
#include "xenia/base/debugging.h"
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/math.h"
|
||||
#include "xenia/cpu/ppc/ppc_context.h"
|
||||
#include "xenia/cpu/processor.h"
|
||||
#include "xenia/emulator.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/user_module.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_module.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_private.h"
|
||||
#include "xenia/kernel/xthread.h"
|
||||
|
||||
namespace xe {
|
||||
namespace kernel {
|
||||
|
|
|
@ -10,11 +10,7 @@
|
|||
#ifndef XENIA_KERNEL_KERNEL_XBOXKRNL_CERT_MONITOR_H_
|
||||
#define XENIA_KERNEL_KERNEL_XBOXKRNL_CERT_MONITOR_H_
|
||||
|
||||
#include <memory>
|
||||
|
||||
#include "xenia/base/threading.h"
|
||||
#include "xenia/cpu/export_resolver.h"
|
||||
#include "xenia/kernel/kernel_module.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
|
||||
namespace xe {
|
||||
|
|
|
@ -7,22 +7,13 @@
|
|||
******************************************************************************
|
||||
*/
|
||||
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_module.h"
|
||||
|
||||
#include <vector>
|
||||
|
||||
#include "xenia/base/clock.h"
|
||||
#include "xenia/base/debugging.h"
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/math.h"
|
||||
#include "xenia/cpu/ppc/ppc_context.h"
|
||||
#include "xenia/cpu/processor.h"
|
||||
#include "xenia/emulator.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/user_module.h"
|
||||
#include "xenia/kernel/util/shim_utils.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_module.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_private.h"
|
||||
#include "xenia/kernel/xthread.h"
|
||||
|
||||
DECLARE_bool(kernel_pix);
|
||||
|
||||
|
|
|
@ -10,11 +10,7 @@
|
|||
#ifndef XENIA_KERNEL_KERNEL_XBOXKRNL_DEBUG_MONITOR_H_
|
||||
#define XENIA_KERNEL_KERNEL_XBOXKRNL_DEBUG_MONITOR_H_
|
||||
|
||||
#include <memory>
|
||||
|
||||
#include "xenia/base/threading.h"
|
||||
#include "xenia/cpu/export_resolver.h"
|
||||
#include "xenia/kernel/kernel_module.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
|
||||
namespace xe {
|
||||
|
|
|
@ -8,7 +8,6 @@
|
|||
*/
|
||||
|
||||
#include "xenia/apu/audio_system.h"
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/emulator.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/util/shim_utils.h"
|
||||
|
|
|
@ -7,11 +7,8 @@
|
|||
******************************************************************************
|
||||
*/
|
||||
|
||||
#include <cstring>
|
||||
|
||||
#include "xenia/apu/audio_system.h"
|
||||
#include "xenia/apu/xma_decoder.h"
|
||||
#include "xenia/base/assert.h"
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/emulator.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
|
|
|
@ -13,7 +13,6 @@
|
|||
#include "xenia/kernel/util/shim_utils.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_private.h"
|
||||
#include "xenia/kernel/xthread.h"
|
||||
#include "xenia/xbox.h"
|
||||
|
||||
namespace xe {
|
||||
namespace kernel {
|
||||
|
|
|
@ -7,17 +7,12 @@
|
|||
******************************************************************************
|
||||
*/
|
||||
|
||||
#include <algorithm>
|
||||
|
||||
#include "xenia/base/atomic.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_error.h"
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/string.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/user_module.h"
|
||||
#include "xenia/kernel/util/shim_utils.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_error.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_private.h"
|
||||
#include "xenia/kernel/xthread.h"
|
||||
|
||||
namespace xe {
|
||||
namespace kernel {
|
||||
|
|
|
@ -10,8 +10,7 @@
|
|||
#ifndef XENIA_KERNEL_XBOXKRNL_XBOXKRNL_ERROR_H_
|
||||
#define XENIA_KERNEL_XBOXKRNL_XBOXKRNL_ERROR_H_
|
||||
|
||||
#include "xenia/kernel/util/shim_utils.h"
|
||||
#include "xenia/xbox.h"
|
||||
#include <cstdint>
|
||||
|
||||
namespace xe {
|
||||
namespace kernel {
|
||||
|
|
|
@ -7,11 +7,8 @@
|
|||
******************************************************************************
|
||||
*/
|
||||
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/util/shim_utils.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_private.h"
|
||||
#include "xenia/xbox.h"
|
||||
|
||||
namespace xe {
|
||||
namespace kernel {
|
||||
|
|
|
@ -8,9 +8,6 @@
|
|||
*/
|
||||
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/memory.h"
|
||||
#include "xenia/base/mutex.h"
|
||||
#include "xenia/cpu/processor.h"
|
||||
#include "xenia/kernel/info/file.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/util/shim_utils.h"
|
||||
|
|
|
@ -8,19 +8,12 @@
|
|||
*/
|
||||
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/memory.h"
|
||||
#include "xenia/base/mutex.h"
|
||||
#include "xenia/cpu/processor.h"
|
||||
#include "xenia/kernel/info/file.h"
|
||||
#include "xenia/kernel/info/volume.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/util/shim_utils.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_private.h"
|
||||
#include "xenia/kernel/xevent.h"
|
||||
#include "xenia/kernel/xfile.h"
|
||||
#include "xenia/kernel/xiocompletion.h"
|
||||
#include "xenia/kernel/xsymboliclink.h"
|
||||
#include "xenia/kernel/xthread.h"
|
||||
#include "xenia/vfs/device.h"
|
||||
#include "xenia/xbox.h"
|
||||
|
||||
|
|
|
@ -7,14 +7,10 @@
|
|||
******************************************************************************
|
||||
*/
|
||||
|
||||
#include <cstring>
|
||||
|
||||
#include "xenia/base/assert.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_memory.h"
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/math.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/util/shim_utils.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_memory.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_private.h"
|
||||
#include "xenia/xbox.h"
|
||||
|
||||
|
|
|
@ -15,7 +15,6 @@
|
|||
|
||||
namespace xe {
|
||||
namespace kernel {
|
||||
|
||||
namespace xboxkrnl {
|
||||
|
||||
uint32_t xeMmAllocatePhysicalMemoryEx(uint32_t flags, uint32_t region_size,
|
||||
|
|
|
@ -7,14 +7,11 @@
|
|||
******************************************************************************
|
||||
*/
|
||||
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/cpu/ppc/ppc_frontend.h"
|
||||
#include "xenia/cpu/processor.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/util/shim_utils.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_private.h"
|
||||
#include "xenia/kernel/xthread.h"
|
||||
#include "xenia/xbox.h"
|
||||
|
||||
namespace xe {
|
||||
namespace kernel {
|
||||
namespace xboxkrnl {
|
||||
|
|
|
@ -9,22 +9,12 @@
|
|||
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_module.h"
|
||||
|
||||
#include <vector>
|
||||
|
||||
#include "third_party/fmt/include/fmt/format.h"
|
||||
#include "xenia/base/clock.h"
|
||||
#include "xenia/base/debugging.h"
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/math.h"
|
||||
#include "xenia/cpu/ppc/ppc_context.h"
|
||||
#include "xenia/cpu/processor.h"
|
||||
#include "xenia/emulator.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/user_module.h"
|
||||
#include "xenia/kernel/xboxkrnl/cert_monitor.h"
|
||||
#include "xenia/kernel/xboxkrnl/debug_monitor.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_private.h"
|
||||
#include "xenia/kernel/xthread.h"
|
||||
|
||||
DEFINE_string(cl, "", "Specify additional command-line provided to guest.",
|
||||
"Kernel");
|
||||
|
|
|
@ -10,9 +10,6 @@
|
|||
#ifndef XENIA_KERNEL_XBOXKRNL_XBOXKRNL_MODULE_H_
|
||||
#define XENIA_KERNEL_XBOXKRNL_XBOXKRNL_MODULE_H_
|
||||
|
||||
#include <memory>
|
||||
|
||||
#include "xenia/base/threading.h"
|
||||
#include "xenia/cpu/export_resolver.h"
|
||||
#include "xenia/kernel/kernel_module.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
|
|
|
@ -7,13 +7,11 @@
|
|||
******************************************************************************
|
||||
*/
|
||||
|
||||
#include "xboxkrnl_modules.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_modules.h"
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/cpu/processor.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/user_module.h"
|
||||
#include "xenia/kernel/util/shim_utils.h"
|
||||
#include "xenia/kernel/util/xex2_info.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_private.h"
|
||||
#include "xenia/xbox.h"
|
||||
|
||||
|
|
|
@ -8,19 +8,14 @@
|
|||
*/
|
||||
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_ob.h"
|
||||
#include "xenia/base/assert.h"
|
||||
#include "xenia/base/atomic.h"
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/utf8.h"
|
||||
#include "xenia/cpu/processor.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/util/shim_utils.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_private.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_threading.h"
|
||||
#include "xenia/kernel/xobject.h"
|
||||
#include "xenia/kernel/xsemaphore.h"
|
||||
#include "xenia/kernel/xthread.h"
|
||||
#include "xenia/xbox.h"
|
||||
|
||||
namespace xe {
|
||||
namespace kernel {
|
||||
namespace xboxkrnl {
|
||||
|
|
|
@ -10,11 +10,15 @@
|
|||
#ifndef XENIA_KERNEL_XBOXKRNL_XBOXKRNL_OB_H_
|
||||
#define XENIA_KERNEL_XBOXKRNL_XBOXKRNL_OB_H_
|
||||
|
||||
#include "xenia/kernel/util/shim_utils.h"
|
||||
#include "xenia/cpu/ppc/ppc_context.h"
|
||||
#include "xenia/xbox.h"
|
||||
|
||||
using PPCContext = xe::cpu::ppc::PPCContext;
|
||||
|
||||
namespace xe {
|
||||
namespace kernel {
|
||||
namespace xboxkrnl {
|
||||
|
||||
void xeObDereferenceObject(PPCContext* context, uint32_t native_ptr);
|
||||
void xeObSplitName(X_ANSI_STRING input_string,
|
||||
X_ANSI_STRING* leading_path_component,
|
||||
|
|
|
@ -9,22 +9,15 @@
|
|||
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_rtl.h"
|
||||
|
||||
#include <algorithm>
|
||||
#include <string>
|
||||
|
||||
#include "xenia/base/atomic.h"
|
||||
#include "xenia/base/chrono.h"
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/pe_image.h"
|
||||
#include "xenia/base/string.h"
|
||||
#include "xenia/base/threading.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/user_module.h"
|
||||
#include "xenia/kernel/util/shim_utils.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_private.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_threading.h"
|
||||
#include "xenia/kernel/xevent.h"
|
||||
#include "xenia/kernel/xthread.h"
|
||||
|
||||
namespace xe {
|
||||
namespace kernel {
|
||||
namespace xboxkrnl {
|
||||
|
|
|
@ -7,17 +7,8 @@
|
|||
******************************************************************************
|
||||
*/
|
||||
|
||||
#include <cstring>
|
||||
#include <iomanip>
|
||||
#include <sstream>
|
||||
#include <string>
|
||||
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/user_module.h"
|
||||
#include "xenia/kernel/util/shim_utils.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_private.h"
|
||||
#include "xenia/kernel/xthread.h"
|
||||
#include "xenia/xbox.h"
|
||||
|
||||
DEFINE_bool(log_string_format_kernel_calls, false,
|
||||
|
|
|
@ -8,21 +8,12 @@
|
|||
*/
|
||||
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_threading.h"
|
||||
#include <algorithm>
|
||||
#include <vector>
|
||||
#include "xenia/base/atomic.h"
|
||||
#include "xenia/base/clock.h"
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/mutex.h"
|
||||
#include "xenia/cpu/processor.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/user_module.h"
|
||||
#include "xenia/kernel/util/shim_utils.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_private.h"
|
||||
#include "xenia/kernel/xevent.h"
|
||||
#include "xenia/kernel/xmutant.h"
|
||||
#include "xenia/kernel/xsemaphore.h"
|
||||
#include "xenia/kernel/xthread.h"
|
||||
#include "xenia/kernel/xtimer.h"
|
||||
#include "xenia/xbox.h"
|
||||
|
||||
|
|
|
@ -7,8 +7,6 @@
|
|||
******************************************************************************
|
||||
*/
|
||||
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/util/shim_utils.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_private.h"
|
||||
#include "xenia/xbox.h"
|
||||
|
|
|
@ -12,8 +12,6 @@
|
|||
#include "xenia/base/logging.h"
|
||||
#include "xenia/emulator.h"
|
||||
#include "xenia/gpu/graphics_system.h"
|
||||
#include "xenia/gpu/texture_info.h"
|
||||
#include "xenia/gpu/xenos.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/util/shim_utils.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_private.h"
|
||||
|
|
|
@ -10,7 +10,6 @@
|
|||
#ifndef XENIA_KERNEL_XBOXKRNL_XBOXKRNL_VIDEO_H_
|
||||
#define XENIA_KERNEL_XBOXKRNL_XBOXKRNL_VIDEO_H_
|
||||
|
||||
#include "xenia/kernel/util/shim_utils.h"
|
||||
#include "xenia/xbox.h"
|
||||
|
||||
namespace xe {
|
||||
|
|
|
@ -9,9 +9,7 @@
|
|||
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_xconfig.h"
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/cpu/processor.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/user_module.h"
|
||||
#include "xenia/kernel/util/shim_utils.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_private.h"
|
||||
#include "xenia/xbox.h"
|
||||
|
|
|
@ -10,8 +10,8 @@
|
|||
#ifndef XENIA_KERNEL_XBOXKRNL_XBOXKRNL_XCONFIG_H_
|
||||
#define XENIA_KERNEL_XBOXKRNL_XBOXKRNL_XCONFIG_H_
|
||||
|
||||
#include "xenia/kernel/util/shim_utils.h"
|
||||
#include "xenia/xbox.h"
|
||||
#include <cstdint>
|
||||
#include <map>
|
||||
|
||||
namespace xe {
|
||||
namespace kernel {
|
||||
|
|
|
@ -10,14 +10,11 @@
|
|||
#ifndef XENIA_KERNEL_XENUMERATOR_H_
|
||||
#define XENIA_KERNEL_XENUMERATOR_H_
|
||||
|
||||
#include <algorithm>
|
||||
#include <cstring>
|
||||
#include <vector>
|
||||
|
||||
#include "xenia/kernel/xam/achievement_manager.h"
|
||||
#include "xenia/kernel/xam/user_tracker.h"
|
||||
#include "xenia/kernel/xobject.h"
|
||||
#include "xenia/xbox.h"
|
||||
|
||||
namespace xe {
|
||||
namespace kernel {
|
||||
|
|
|
@ -11,12 +11,7 @@
|
|||
#include "xenia/vfs/virtual_file_system.h"
|
||||
|
||||
#include "xenia/base/byte_stream.h"
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/math.h"
|
||||
#include "xenia/base/mutex.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/xevent.h"
|
||||
#include "xenia/memory.h"
|
||||
|
||||
namespace xe {
|
||||
namespace kernel {
|
||||
|
@ -300,8 +295,8 @@ void XFile::RemoveIOCompletionPort(uint32_t key) {
|
|||
}
|
||||
|
||||
bool XFile::Save(ByteStream* stream) {
|
||||
XELOGD("XFile {:08X} ({})", handle(),
|
||||
file_->entry()->absolute_path().c_str());
|
||||
// XELOGD("XFile {:08X} ({})", handle(),
|
||||
// file_->entry()->absolute_path().c_str());
|
||||
|
||||
if (!SaveObject(stream)) {
|
||||
return false;
|
||||
|
@ -332,7 +327,7 @@ object_ref<XFile> XFile::Restore(KernelState* kernel_state,
|
|||
auto is_directory = stream->Read<bool>();
|
||||
auto is_synchronous = stream->Read<bool>();
|
||||
|
||||
XELOGD("XFile {:08X} ({})", file->handle(), abs_path);
|
||||
// XELOGD("XFile {:08X} ({})", file->handle(), abs_path);
|
||||
|
||||
vfs::File* vfs_file = nullptr;
|
||||
vfs::FileAction action;
|
||||
|
@ -340,7 +335,7 @@ object_ref<XFile> XFile::Restore(KernelState* kernel_state,
|
|||
nullptr, abs_path, vfs::FileDisposition::kOpen, access, is_directory,
|
||||
false, &vfs_file, &action);
|
||||
if (XFAILED(res)) {
|
||||
XELOGE("Failed to open XFile: error {:08X}", res);
|
||||
// XELOGE("Failed to open XFile: error {:08X}", res);
|
||||
return object_ref<XFile>(file);
|
||||
}
|
||||
|
||||
|
|
|
@ -12,9 +12,7 @@
|
|||
|
||||
#include <string>
|
||||
|
||||
#include "xenia/kernel/xevent.h"
|
||||
#include "xenia/kernel/xiocompletion.h"
|
||||
#include "xenia/kernel/xobject.h"
|
||||
#include "xenia/vfs/device.h"
|
||||
#include "xenia/vfs/entry.h"
|
||||
#include "xenia/vfs/file.h"
|
||||
|
|
|
@ -12,7 +12,6 @@
|
|||
#include <vector>
|
||||
|
||||
#include "xenia/base/byte_stream.h"
|
||||
#include "xenia/base/clock.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/util/shim_utils.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_private.h"
|
||||
|
|
|
@ -14,6 +14,7 @@
|
|||
#include "xenia/kernel/xobject.h"
|
||||
#include "xenia/kernel/xthread.h"
|
||||
#include "xenia/xbox.h"
|
||||
|
||||
namespace xe {
|
||||
namespace kernel {
|
||||
|
||||
|
|
|
@ -14,7 +14,6 @@
|
|||
#include <queue>
|
||||
|
||||
#include "xenia/base/byte_order.h"
|
||||
#include "xenia/base/math.h"
|
||||
#include "xenia/kernel/xobject.h"
|
||||
|
||||
namespace xe {
|
||||
|
|
|
@ -10,11 +10,6 @@
|
|||
#ifndef XENIA_KERNEL_XSYMBOLICLINK_H_
|
||||
#define XENIA_KERNEL_XSYMBOLICLINK_H_
|
||||
|
||||
#include <memory>
|
||||
#include <unordered_map>
|
||||
|
||||
#include "xenia/base/mutex.h"
|
||||
#include "xenia/base/threading.h"
|
||||
#include "xenia/kernel/xobject.h"
|
||||
#include "xenia/xbox.h"
|
||||
|
||||
|
|
|
@ -9,25 +9,16 @@
|
|||
|
||||
#include "xenia/kernel/xthread.h"
|
||||
|
||||
#include <cstring>
|
||||
|
||||
#include "third_party/fmt/include/fmt/format.h"
|
||||
#include "xenia/base/byte_stream.h"
|
||||
#include "xenia/base/clock.h"
|
||||
#include "xenia/base/literals.h"
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/math.h"
|
||||
#include "xenia/base/profiling.h"
|
||||
#include "xenia/base/threading.h"
|
||||
#include "xenia/cpu/breakpoint.h"
|
||||
#include "xenia/cpu/ppc/ppc_decode_data.h"
|
||||
#include "xenia/cpu/processor.h"
|
||||
#include "xenia/emulator.h"
|
||||
#include "xenia/kernel/kernel_state.h"
|
||||
#include "xenia/kernel/user_module.h"
|
||||
#include "xenia/kernel/xboxkrnl/xboxkrnl_threading.h"
|
||||
#include "xenia/kernel/xevent.h"
|
||||
#include "xenia/kernel/xmutant.h"
|
||||
|
||||
DEFINE_bool(ignore_thread_priorities, true,
|
||||
"Ignores game-specified thread priorities.", "Kernel");
|
||||
DEFINE_bool(ignore_thread_affinities, true,
|
||||
|
@ -39,6 +30,7 @@ DEFINE_int64(stack_size_multiplier_hack, 1,
|
|||
DEFINE_int64(main_xthread_stack_size_multiplier_hack, 1,
|
||||
"A hack for games with setjmp/longjmp issues.", "Kernel");
|
||||
#endif
|
||||
|
||||
namespace xe {
|
||||
namespace kernel {
|
||||
|
||||
|
@ -46,8 +38,6 @@ const uint32_t XAPC::kSize;
|
|||
const uint32_t XAPC::kDummyKernelRoutine;
|
||||
const uint32_t XAPC::kDummyRundownRoutine;
|
||||
|
||||
using xe::cpu::ppc::PPCOpcode;
|
||||
|
||||
using namespace xe::literals;
|
||||
|
||||
uint32_t next_xthread_id_ = 0;
|
||||
|
|
|
@ -9,9 +9,7 @@
|
|||
|
||||
#include "xenia/kernel/xtimer.h"
|
||||
|
||||
#include "xenia/base/chrono.h"
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/cpu/processor.h"
|
||||
#include "xenia/kernel/xthread.h"
|
||||
|
||||
namespace xe {
|
||||
|
|
|
@ -30,7 +30,7 @@ enum class NotificationAlignment : uint8_t {
|
|||
kAlignUnknown = 0xFF
|
||||
};
|
||||
|
||||
const static std::vector<ImVec2> notification_position_id_screen_offset = {
|
||||
inline const std::vector<ImVec2> notification_position_id_screen_offset = {
|
||||
{0.50f, 0.45f}, // CENTER-CENTER - 0
|
||||
{0.50f, 0.10f}, // CENTER-TOP - 1
|
||||
{0.50f, 0.80f}, // CENTER-BOTTOM - 2
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue