EmuCR Feeds
Email Us

ps5rs v0.6.5 is released. A PS5 binary analysis, virtual loading, and host-side emulation framework written in Rust. Parses SELF/ELF/PRX formats, resolves NID imports, extracts clean ELFs, fingerprints game binaries through string analysis (engine/middleware/SDK detection), and generates interactive dashboards. Also provides a virtual PS5 loader: maps ELF memory, applies relocations (RELATIVE, ABS64, GLOB_DAT, JUMP_SLOT), resolves imports against runtime PRX exports and offline system-module databases, and stubs unknown symbols for multi-module dependency analysis. A host-side emulator (ps5-emu) executes guest binaries on the host CPU and routes system-library imports through pure-Rust HLE modules.

ps5rs Changelog:
Added
Scan progress traces: scan prints Found N game(s), per-game
[i/n] … OK (size, imports) / SKIPPED (already scanned) lines and a
shader-inventory phase, plus the resolved dataset directory at startup
Single-game scan and batch-load: passing a game directory directly
(instead of a corpus root) scans/loads just that title
Repeatable dashboard --games: one --games flag per corpus; middleware
reports merge by title ID (merge_middleware_reports, later scans win)
Portable reports: unknown-NIDs per-game files and the corpus root are
stored corpus-relative; no machine-specific absolute paths are emitted
Changed
Registry-aware scan retention: rescans (even without --append) keep
images for ingested titles whose sources were deleted, mirroring
batch-load report retention; present sources are still rescanned fresh
Manifest consistency: entries deduped by title ID, missing param.json
IDs fall back to the directory name, image_count always matches images/
README documents the incremental/archive workflow, the multi-corpus
dashboard, and the images/ (live) vs games/ (archive) dataset split
Top 10 Unknown NIDs panel in the dashboard NIDs section: unresolved imports
ranked by occurrence, with per-NID game count, game list and libraries —
stub-implementation candidates at a glance (NidStats::top_unknown_nids)
Changed
scan emits full BinaryImageDocument images again (segments, exports,
relocations, lib versions, TLS, string fingerprints, image_type by
extension) instead of the reduced GameAnalysis shape, stamped with
BINARY_IMAGE_VERSION so files round-trip through ps5_image::json
Fixed
Mixed-format datasets: AnalysisDataset::open now accepts both images/ formats —
current BinaryImageDocument files (written by scan, tried first) and legacy
BinaryImageDocument files. GameAnalysis is converted in-memory (full import
table, libs, needed files, TLS flag); when the same title ID exists in both
formats the converted document wins and the stale legacy duplicate is dropped.
Module images and ID-less files are never deduped. This un-breaks dashboard,
analyze, validate dataset and export-unknown against analysis_with_modules
PPSA shadowing in scan names: sanitize_filename prefers a [PPSA12345]
bracket (then a raw PPSA12345) over unrelated tags like [SuperPSX], so
image files always end with the bracketed title ID

Download: ps5rs v0.6.5
Source: Here



Random Related Topic Refresh Related Topic

Random Related Topic Loading...

0 Comments

Post a Comment

Can't post a comment? Try This!