/** ****************************************************************************** * Xenia : Xbox 360 Emulator Research Project * ****************************************************************************** * Copyright 2025 Ben Vanik. All rights reserved. * * Released under the BSD license - see LICENSE in the root for more details. * ****************************************************************************** */ #ifndef XENIA_KERNEL_XBOXKRNL_XBOXKRNL_XCONFIG_H_ #define XENIA_KERNEL_XBOXKRNL_XBOXKRNL_XCONFIG_H_ #include #include namespace xe { namespace kernel { namespace xboxkrnl { enum X_CONFIG_CATEGORY : uint16_t { XCONFIG_STATIC_CATEGORY = 0x00, XCONFIG_STATISTIC_CATEGORY = 0x01, XCONFIG_SECURED_CATEGORY = 0x02, XCONFIG_USER_CATEGORY = 0x03, XCONFIG_XNET_MACHINE_ACCOUNT_CATEGORY = 0x04, XCONFIG_XNET_PARAMETERS_CATEGORY = 0x05, XCONFIG_MEDIA_CENTER_CATEGORY = 0x06, XCONFIG_CONSOLE_CATEGORY = 0x07, XCONFIG_DVD_CATEGORY = 0x08, XCONFIG_IPTV_CATEGORY = 0x09, XCONFIG_SYSTEM_CATEGORY = 0x0A, XCONFIG_DEVKIT_CATEGORY = 0x0B }; enum XCONFIG_STATIC_CATEGORY_ENTRIES : uint8_t { XCONFIG_STATIC_FIRST_POWER_ON_DATE = 0x01, XCONFIG_STATIC_SMC_CONFIG = 0x02 }; enum XCONFIG_STATISTIC_CATEGORY_ENTRIES : uint8_t { XCONFIG_STATISTICS_XUID_MAC_ADDRESS = 0x01, XCONFIG_STATISTICS_XUID_COUNT = 0x02, XCONFIG_STATISTICS_ODD_FAILURES = 0x03, XCONFIG_STATISTICS_HDD_SMART_DATA = 0x04, XCONFIG_STATISTICS_UEM_ERRORS = 0x05, XCONFIG_STATISTICS_FPM_ERRORS = 0x06, XCONFIG_STATISTICS_LAST_REPORT_TIME = 0x07, XCONFIG_STATISTICS_BUG_CHECK_DATA = 0x08, XCONFIG_STATISTICS_TEMPERATURE = 0x09, XCONFIG_STATISTICS_XEKEYS_WRITE_FAILURE = 0x0A }; enum XCONFIG_SECURED_CATEGORY_ENTRIES : uint8_t { XCONFIG_SECURED_MAC_ADDRESS = 0x01, XCONFIG_SECURED_AV_REGION = 0x02, XCONFIG_SECURED_GAME_REGION = 0x03, XCONFIG_SECURED_DVD_REGION = 0x04, XCONFIG_SECURED_RESET_KEY = 0x05, XCONFIG_SECURED_SYSTEM_FLAGS = 0x06, XCONFIG_SECURED_POWER_MODE = 0x07, XCONFIG_SECURED_ONLINE_NETWORK_ID = 0x08, XCONFIG_SECURED_POWER_VCS_CONTROL = 0x09 }; enum XCONFIG_USER_CATEGORY_ENTRIES : uint8_t { XCONFIG_USER_TIME_ZONE_BIAS = 0x01, XCONFIG_USER_TIME_ZONE_STD_NAME = 0x02, XCONFIG_USER_TIME_ZONE_DLT_NAME = 0x03, XCONFIG_USER_TIME_ZONE_STD_DATE = 0x04, XCONFIG_USER_TIME_ZONE_DLT_DATE = 0x05, XCONFIG_USER_TIME_ZONE_STD_BIAS = 0x06, XCONFIG_USER_TIME_ZONE_DLT_BIAS = 0x07, XCONFIG_USER_DEFAULT_PROFILE = 0x08, XCONFIG_USER_LANGUAGE = 0x09, XCONFIG_USER_VIDEO_FLAGS = 0x0A, XCONFIG_USER_AUDIO_FLAGS = 0x0B, XCONFIG_USER_RETAIL_FLAGS = 0x0C, XCONFIG_USER_DEVKIT_FLAGS = 0x0D, XCONFIG_USER_COUNTRY = 0x0E, XCONFIG_USER_PC_FLAGS = 0x0F, XCONFIG_USER_SMB_CONFIG = 0x10, XCONFIG_USER_LIVE_PUID = 0x11, XCONFIG_USER_LIVE_CREDENTIALS = 0x12, XCONFIG_USER_AV_COMPOSITE_SCREENSZ = 0x13, XCONFIG_USER_AV_COMPONENT_SCREENSZ = 0x14, XCONFIG_USER_AV_VGA_SCREENSZ = 0x15, XCONFIG_USER_PC_GAME = 0x16, XCONFIG_USER_PC_PASSWORD = 0x17, XCONFIG_USER_PC_MOVIE = 0x18, XCONFIG_USER_PC_GAME_RATING = 0x19, XCONFIG_USER_PC_MOVIE_RATING = 0x1A, XCONFIG_USER_PC_HINT = 0x1B, XCONFIG_USER_PC_HINT_ANSWER = 0x1C, XCONFIG_USER_PC_OVERRIDE = 0x1D, XCONFIG_USER_MUSIC_PLAYBACK_MODE = 0x1E, XCONFIG_USER_MUSIC_VOLUME = 0x1F, XCONFIG_USER_MUSIC_FLAGS = 0x20, XCONFIG_USER_ARCADE_FLAGS = 0x21, XCONFIG_USER_PC_VERSION = 0x22, XCONFIG_USER_PC_TV = 0x23, XCONFIG_USER_PC_TV_RATING = 0x24, XCONFIG_USER_PC_EXPLICIT_VIDEO = 0x25, XCONFIG_USER_PC_EXPLICIT_VIDEO_RATING = 0x26, XCONFIG_USER_PC_UNRATED_VIDEO = 0x27, XCONFIG_USER_PC_UNRATED_VIDEO_RATING = 0x28, XCONFIG_USER_VIDEO_OUTPUT_BLACK_LEVELS = 0x29, XCONFIG_USER_VIDEO_PLAYER_DISPLAY_MODE = 0x2A, XCONFIG_USER_ALTERNATE_VIDEO_TIMING_ID = 0x2B, XCONFIG_USER_VIDEO_DRIVER_OPTIONS = 0x2C, XCONFIG_USER_MUSIC_UI_FLAGS = 0x2D, XCONFIG_USER_VIDEO_MEDIA_SOURCE_TYPE = 0x2E, XCONFIG_USER_MUSIC_MEDIA_SOURCE_TYPE = 0x2F, XCONFIG_USER_PHOTO_MEDIA_SOURCE_TYPE = 0x30 }; enum XCONFIG_XNET_CATEGORY_ENTRIES : uint8_t { XCONFIG_XNET_DATA = 0x01 }; enum XCONFIG_MEDIA_CENTER_CATEGORY_ENTRIES : uint8_t { XCONFIG_MEDIA_CENTER_MEDIA_PLAYER = 0x01, XCONFIG_MEDIA_CENTER_XESLED_VERSION = 0x02, XCONFIG_MEDIA_CENTER_XESLED_TRUST_SECRET = 0x03, XCONFIG_MEDIA_CENTER_XESLED_TRUST_CODE = 0x04, XCONFIG_MEDIA_CENTER_XESLED_HOST_ID = 0x05, XCONFIG_MEDIA_CENTER_XESLED_KEY = 0x06, XCONFIG_MEDIA_CENTER_XESLED_HOST_MAC_ADDRESS = 0x07, XCONFIG_MEDIA_CENTER_SERVER_UUID = 0x08, XCONFIG_MEDIA_CENTER_SERVER_NAME = 0x09, XCONFIG_MEDIA_CENTER_SERVER_FLAG = 0x0A }; enum XCONFIG_CONSOLE_CATEGORY_ENTRIES : uint8_t { XCONFIG_CONSOLE_SCREEN_SAVER = 0x01, XCONFIG_CONSOLE_AUTO_SHUT_OFF = 0x02, XCONFIG_CONSOLE_WIRELESS_SETTINGS = 0x03, XCONFIG_CONSOLE_CAMERA_SETTINGS = 0x04, XCONFIG_CONSOLE_PLAYTIMERDATA = 0x05, XCONFIG_CONSOLE_MEDIA_DISABLEAUTOLAUNCH = 0x06, XCONFIG_CONSOLE_KEYBOARD_LAYOUT = 0x07, XCONFIG_CONSOLE_PC_TITLE_EXEMPTIONS = 0x08, XCONFIG_CONSOLE_NUI = 0x09, XCONFIG_CONSOLE_VOICE = 0x0A, XCONFIG_CONSOLE_RETAIL_EX_FLAGS = 0x0B, XCONFIG_CONSOLE_DASH_FIRST_USE_TUTORIAL_FLAGS = 0x0C, XCONFIG_CONSOLE_TV_DIAGONAL_SIZE_IN_CM = 0x0D, XCONFIG_CONSOLE_NETWORKSTORAGEDEVICE_SERIALNUMBER = 0x0E, XCONFIG_CONSOLE_DISCOVERABLE = 0x0F, XCONFIG_CONSOLE_LIVE_TV_PROVIDER = 0x10 }; enum XCONFIG_DVD_CATEGORY_ENTRIES : uint8_t { XCONFIG_DVD_VOLUME_ID = 0x01, XCONFIG_DVD_BOOKMARK = 0x02 }; enum XCONFIG_IPTV_CATEGORY_ENTRIES : uint8_t { XCONFIG_IPTV_SERVICE_PROVIDER_NAME = 0x01, XCONFIG_IPTV_PROVISIONING_SERVER_URL = 0x02, XCONFIG_IPTV_SUPPORT_INFO = 0x03, XCONFIG_IPTV_BOOTSTRAP_SERVER_URL = 0x04 }; enum XCONFIG_SYSTEM_CATEGORY_ENTRIES : uint8_t { XCONFIG_SYSTEM_ALARM_TIME = 0x01, XCONFIG_SYSTEM_PREVIOUS_FLASH_VERSION = 0x02 }; enum XCONFIG_DEVKIT_CATEGORY_ENTRIES : uint8_t { XCONFIG_DEVKIT_USBD_ROOT_HUB_PORT_DISABLE_MASK = 0x01, XCONFIG_DEVKIT_XAM_FEATURE_ENABLE_DISABLE_MASK = 0x02, XCONFIG_DEVKIT_KIOSK_ID = 0x03 }; // XCONFIG_SECURED_AV_REGION enum X_AV_REGION : uint32_t { NTSCM = 0x00400100, NTSCJ = 0x00400200, PAL = 0x00400400, PAL_50 = 0x00800300, }; // XCONFIG_USER_VIDEO_FLAGS enum X_VIDEO_FLAGS : uint32_t { RatioNormal = 0x00000000, Widescreen = 0x00010000, }; // XCONFIG_USER_AV_COMPONENT_SCREENSZ const static std::map XHDTVResolution = { {0, 0x028001E0}, // 480p {8, 0x050002D0}, // 720p, always widescreen {16, 0x07800438}, // 1080, interlaced added in 1888, always widescreen }; // XCONFIG_USER_AV_COMPONENT_SCREENSZ const static std::map XVGAResolution = { // Existed since 1888 {0, 0x028001E0}, // 680x480 {5, 0x035001E0}, // 848x480 {6, 0x04000300}, // 1024x768 {8, 0x050002D0}, // 1280x720 {9, 0x05000300}, // 1280x768 {12, 0x05500300}, // 1360x768 // added in later Versions {11, 0x05000400}, // 1280x1024 {13, 0x05A00384}, // 1440x900 {14, 0x0690041A}, // 1680x1050 {16, 0x07800438}, // 1920x1080 }; // XCONFIG_USER_AUDIO_FLAGS enum X_AUDIO_FLAGS : uint32_t { // Audio Mode Analog DolbyProLogic = 0x00000001, AnalogMono = 0x00000002, // Audio Mode Digital DigitalStereo = 0x00000000, DolbyDigital = 0x00010000, DolbyDigitalWithWMAPRO = 0x00030000, // Special Flags StereoBypass = 0x00000003, LowLatency = 0x80000000, }; // XCONFIG_USER_RETAIL_FLAGS enum X_RETAIL_FLAGS : uint32_t { // Clock DSTOff = 0x00000002, TwentyFourHourClock = 0x00000008, // Startup DashboardStartup = 0x00000080, IPTVStartup = 0x00000800, DiscStartup = 0x00002000, MCXDownloaderStartup = 0x00020000, // IPTV IPTVEnabled = 0x00001000, IPTVDVRENABLED = 0x00080000, IPTVDisabled = 0x02000000, // Kinect KinectInitialized = 0x20000000, KinectDisabled = 0x80000000, // Other DashboardInitialized = 0x00000040, BackgroundDownloadOn = 0x00010000, }; // XCONFIG_USER_PC_FLAGS enum X_PC_FLAGS : uint8_t { XBLAllowed = 0x01, XBLMembershipCreationAllowed = 0x02, PCEnabled = 0x80, }; enum X_PC_HINTS : uint8_t { FavoriteFictionalCharactar = 0, FavoritePersonFromHistory = 1, FavoriteChildhoodBookOrStory = 2, FavoriteMovie = 3, FavoriteFood = 4 }; // XCONFIG_USER_VIDEO_OUTPUT_BLACK_LEVELS enum X_BLACK_LEVEL : uint32_t { High = 0x00000100, Intermediate = 0x00000200, LevelNormal = 0x00000300, }; // XCONFIG_CONSOLE_SCREENSAVER enum X_SCREENSAVER : uint32_t { ScreensaverOn = 0x000A, ScreensaverOff = 0x1000, }; // XCONFIG_CONSOLE_AUTO_SHUTDOWN enum X_AUTO_SHUTDOWN : uint32_t { AutoShutdownOff = 0x0000, AutoShutdownOneHr = 0x003C, AutoShutdownSixHr = 0x0168, }; // XCONFIG_CONSOLE_CAMERA_SETTINGS enum X_CAMERA_FLAGS : uint32_t { // Room RoomAuto = 0x00000000, DarkWall = 0x00000001, LightWall = 0x00000002, // Lighting LightingAuto = 0x00000000, Incandescent = 0x00000004, Flourescent = 0x00000008, Daylight = 0x0000000C, // Flourescent Anti-Flicker AntiFlickerAuto = 0x00000000, AntiFlickerOn = 0x00000001, AntiFlickerOff = 0x00000002, // Default AutoAll = 0x00000001, }; // XCONFIG_CONSOLE_KEYBOARD_LAYOUT enum X_KEYBOARD_LAYOUT : uint16_t { KeyboardDefault = 0x0000, EnglishQWERTY = 0x0001, }; } // namespace xboxkrnl } // namespace kernel } // namespace xe #endif // XENIA_KERNEL_XBOXKRNL_XBOXKRNL_XCONFIG_H_