1 Commits

Author SHA1 Message Date
njohnson
2f84e41cb7 Add native LZX decompression via libmspack
Integrate libmspack's LZX decompressor for Xbox 360 and UE-style
compressed data. This replaces the need for external xcompress64.dll
which was hanging/crashing on certain files.

- Add mspack/ library (lzxd.c decompressor with Gildor's fixes)
- Implement memory-based mspack_system for in-memory decompression
- Support multiple LZX formats: raw streams, Xbox 360 block format,
  and Dead Rising 2's per-block format with 4-byte size headers
- Add DecompressDeadRisingLZX() with per-block independent contexts
  to handle the block-based compression correctly

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-12 20:52:18 -05:00