[XEX] - log outputs

- Finish XEX_HEADER_XBOX360_LOGO, XEX_HEADER_FILE_FORMAT_INFO, XEX_HEADER_DELTA_PATCH_DESCRIPTOR, XEX_HEADER_SYSTEM_FLAGS_32, XEX_HEADER_ENABLED_FOR_CALLCAP, and XEX_HEADER_GAME_RATINGS
- Add missing xex2_header_keys
- Add flag name outputs
- Removed magic number
- Added X_FILE_CHARACTERISTICS to X_FILE_FS_DEVICE_INFORMATION
This commit is contained in:
The-Little-Wolf
2026-01-09 17:15:58 -08:00
committed by Radosław Gliński
parent 38ccc71afa
commit a8fe4666ad
4 changed files with 613 additions and 150 deletions

View File

@@ -309,12 +309,13 @@ uint32_t GetQueryVolumeInfoMinimumLength(uint32_t info_class) {
return sizeof(X_FILE_FS_VOLUME_INFORMATION);
case XFileFsSizeInformation:
return sizeof(X_FILE_FS_SIZE_INFORMATION);
case XFileFsDeviceInformation:
return sizeof(X_FILE_FS_DEVICE_INFORMATION);
case XFileFsAttributeInformation:
return sizeof(X_FILE_FS_ATTRIBUTE_INFORMATION);
// TODO(gibbed): structures to get the size of.
case XFileFsDeviceInformation:
return 8;
default:
XELOGW("Unimplemented Info Class: 0x{:08x}", info_class);
return 0;
}
}
@@ -384,7 +385,8 @@ dword_result_t NtQueryVolumeInformationFile_entry(
auto info = info_ptr.as<X_FILE_FS_DEVICE_INFORMATION*>();
auto file_device = file->device();
XELOGW("Stub XFileFsDeviceInformation!");
info->device_type = FILE_DEVICE_UNKNOWN; // 415608D8 checks for 0x46;
info->device_type =
FILE_DEVICE_UNKNOWN; // 415608D8 checks for FILE_DEVICE_EHSTOR;
info->characteristics = 0;
out_length = sizeof(X_FILE_FS_DEVICE_INFORMATION);
break;