Pablo Curiel
59d0e0ba90
bktr: handle compression in patches (part 1).
...
Some parts of the code need to be still need to be slightly restructured.
bktrIsBlockWithinIndirectStorageRange() must be updated as well, too.
2022-07-09 14:56:44 +02:00
Pablo Curiel
6bf314bcea
romfs: implement romfsIsFileEntryUpdated().
...
Also modified romfsGetTotalDataSize() to add an 'only_updated' argument.
2022-07-07 02:30:45 +02:00
Pablo Curiel
942a407247
Codebase cleanup.
...
Remove legacy code and trailing whitespace from all files.
2022-07-05 03:04:28 +02:00
Pablo Curiel
91dc20b7f3
Fix some issues + update PoCs.
...
ncaStorageSetPatchOriginalSubStorage: allow Patch title version to be equal to the Base title version (e.g. sparse titles).
ncaStorageGetHashTargetExtents: actually set proper storage extents.
bktrGetTreeNodeEntryIndex: fix index lookup algorithm.
bktrStorageNodeFind: fix binary search.
bktrVisitorMoveNext / bktrVisitorMovePrevious: fix integer overflows.
2022-07-05 01:25:28 +02:00
Pablo Curiel
de6eb1a7e8
romfs: add support for Patch RomFS.
...
Uses the new NCA storage interface.
Also implemented ncaStorageGetHashTargetExtents().
2022-07-04 14:30:48 +02:00
Pablo Curiel
aad7af702f
Fix some minor issues.
2022-07-04 02:20:51 +02:00
Pablo Curiel
c2a8f025b3
pfs: use new NCA storage interface.
2022-07-04 01:36:01 +02:00
Pablo Curiel
cc17c4a458
Implement layered NCA storage interface.
...
Updating PFS and RomFS comes next. Also fixed Sparse storages not being supported as an indirect storage's original substorage.
2022-07-04 00:14:03 +02:00