Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[VFS/STFS] STFS structure improvements & CON support #1793

Merged
merged 8 commits into from
May 5, 2021

Commits on May 5, 2021

  1. [VFS] STFS/XContent structure improvements

    Now makes use of xe::be<T> and removes need for read() method
    emoose committed May 5, 2021
    Configuration menu
    Copy the full SHA
    4e8a99a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    ec35b7a View commit details
    Browse the repository at this point in the history
  3. [VFS/STFS] Fix BlockToOffsetSTFS for non-read_only_format (CON) packages

    Previous code would give wrong results for those types of packages as the block_shift would cancel itself out, moving it to happen afterward let it give the right result though, probably a mistake while reversing it.
    (eg. block 0 would give 0xB000, but that's wrong for non-read_only packages as 0xA000 and 0xB000 are reserved for the first hash-table there, fixed code returns the correct 0xC000 offset)
    
    Also changed it to a multiply & renamed it to blocks_per_hash_table to make it more obvious what the purpose is.
    emoose committed May 5, 2021
    Configuration menu
    Copy the full SHA
    7683aad View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    715bddb View commit details
    Browse the repository at this point in the history
  5. [VFS/STFS] Secondary hash-block improvements

    GetBlockHash now visits upper-level hash tables (if needed) to check the active_index flag that decides if secondary hash-block should be used or not.
    This should give better support for CON packages, important for X360 profiles/game saves (some well-used profiles can be heavily fragmented)
    emoose committed May 5, 2021
    Configuration menu
    Copy the full SHA
    c6440d6 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    164eaac View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    1f1baea View commit details
    Browse the repository at this point in the history
  8. [Base] Move XdbfLocale to xbox.h as XLanguage, let STFS headers use it

    Renamed to XLanguage because AFAIK locale on Xbox is a different concept involving countries, this enum only involves languages though.
    emoose committed May 5, 2021
    Configuration menu
    Copy the full SHA
    f2a65c1 View commit details
    Browse the repository at this point in the history