XGDTool v1.4.0 — High-Throughput Engine & Quality of Life Overhaul
Version 1.4.0 is a major Engine Throughput & Quality of Life Overhaul by Ashnar2602, featuring hardware-accelerated CRC32 vectorization, asynchronous double-buffering I/O prefetching, real-time MB/s throughput and ETA tracking, an image verification diagnostic engine, smart title renamer, Windows Explorer context menu integration, and automated post-conversion workflows.
Key Improvements & Features
-
Hardware-Accelerated Vectorized CRC32 (
ChecksumHelper.h):- Implemented ARMv8-A ACLE hardware CRC32 (
__ARM_FEATURE_CRC32via__crc32dand__crc32b), reaching 15–20 GB/s on modern ARM64 devices (Android & Apple Silicon). - Implemented Slice-by-8 vectorized algorithm on x86_64, processing 8 bytes per clock cycle straight in L1 cache (4–5 GB/s per core).
- Implemented ARMv8-A ACLE hardware CRC32 (
-
Asynchronous Double-Buffering Ring Pipeline (
CSOWriter&CCIWriter):- Integrated ping-pong double-buffering with background asynchronous read prefetching (
std::async(std::launch::async, ...)). - Completely hides storage read latency behind parallel LZ4 compression passes, keeping worker threads continuously fed at maximum NVMe speed.
- Integrated ping-pong double-buffering with background asynchronous read prefetching (
-
OS Sequential Hints & Zero-Fragmentation Pre-allocation (
IOHints.h):- Integrated
FILE_FLAG_SEQUENTIAL_SCANon Windows andposix_fadvise(POSIX_FADV_SEQUENTIAL | POSIX_FADV_WILLNEED)on Linux/Android. - Zero-fragmentation disk pre-allocation (
resize_file/posix_fallocate) eliminates dynamic cluster fragmentation during file extraction.
- Integrated
-
Real-Time Throughput (MB/s) & Dynamic ETA Countdown:
- Live throughput metric (MB/s) and formatted ETA countdown (
hh:mm:ss) computed inXGDLog::print_progress()for both terminal CLI output and GUI status.
- Live throughput metric (MB/s) and formatted ETA countdown (
-
Diagnostic Image Verification Mode (
--verify/ UI button):- New diagnostic scanner inspecting disc geometry (XGD2/XGD3, layer break), AVL filesystem tree, primary executable (
default.xex/default.xbe), Title ID, Title Name, and streaming checksums (CRC32, MD5, SHA-1) without modifying disc images.
- New diagnostic scanner inspecting disc geometry (XGD2/XGD3, layer break), AVL filesystem tree, primary executable (
-
Smart Game Renamer (
--smart-rename/ UI option):- Automatically formats output file and directory names as
[<TitleID>] <GameName>using internal executable certificates and online title matching.
- Automatically formats output file and directory names as
-
Windows Explorer Shell Context Menu (
--register-shell/--unregister-shell):- Instant non-elevated context menu integration in
HKEY_CURRENT_USER\Software\Classes\SystemFileAssociationsfor.iso,.xiso,.cso,.cci, and.zar.
- Instant non-elevated context menu integration in
-
Quality of Life Enhancements:
- Added completion sound alert (
wxBell()), automatic destination folder opening upon queue completion, and Android keep-screen-on setting.
- Added completion sound alert (
Included Release Binaries
XGDTool-GUI.exe: Complete modern Windows GUI application with Dark Mode, Drag & Drop, batch queue manager, and multilingual support.XGDTool-CLI.exe: Standalone Windows command-line executable for terminal automation, scripts, and batch processing.XGDTool-Android.apk: Native Android app with Material 3 Xbox Dark UI, Zero-Copy storage access, background service, and multilingual localization.