128 Commits

Author SHA1 Message Date
1b6e0db26d
Revert changes related to processing content indices
Changes released in libWiiPy v0.5.0 and v0.5.1 to how indices were handled ended up way overcomplicating things, resulting in lots of issues now that I'm working with the content module again in WiiPy. These changes have mostly been reverted.
The issues were related to handling WADs where the content indices don't align with the actual index of the content, like in cases where content has bene removed. This issue has been fixed again with a new and much simpler patch that should not introduce new bugs.
2024-10-20 19:03:26 -04:00
9ae059b797
Add support for extracting/packing/otherwise handling dev WADs 2024-10-13 21:39:52 -04:00
c604c195d2
Correct line endings when dumping setting.txt 2024-10-09 20:38:00 -04:00
0c2e13f18a
Remove leftover debugging print 2024-10-08 14:06:09 -04:00
7fed039fdc
Added methods to get a content index from a CID and add content from a Title() 2024-09-13 14:56:37 -04:00
0d306076a2
Added methods to content module to remove contents by index or CID 2024-09-11 11:13:01 -04:00
a1773b9a02
Improved adding new content to title, fixed minor bugs
Dumping a title now properly updates the "number of contents" field in the TMD, so you're able to add more content than there was previously, and that new content will be added correctly.
2024-09-08 13:15:52 -04:00
7c2f0fb21f
Fix getting a title's type 2024-09-05 11:07:14 -04:00
0edd4fa6bb
Update how TMD regions are handled 2024-09-04 14:28:13 -04:00
e163d34f0b
Allow for calculating title size with and without shared content 2024-09-04 14:23:24 -04:00
9fb0fdbc17
Added setting.txt parser, moved some modules under a new "nand" subpackage 2024-08-14 01:26:46 -04:00
b782e5dea5
Fix typing issue with emunand class 2024-08-08 13:39:22 -04:00
894aa3a04b
Added new module for EmuNAND features previously found in WiiPy 2024-08-08 13:24:10 -04:00
152a13fbe2
Rewrote most of U8 module, now extracts and packs all archives as expected 2024-08-07 22:46:28 -04:00
72a8b9b6a6
Added automatic documentation for modules new since v0.4.1 2024-08-04 01:04:47 -04:00
128f4a9303
Merge remote-tracking branch 'origin/main' 2024-08-03 23:26:50 -04:00
bab777b8b9
Added new module for handling sys files, currently supports uid.sys 2024-08-03 23:26:32 -04:00
fb87c2c58c
Added methods to check if a TMD, Ticket, and Title are fakesigned 2024-08-03 14:01:09 -04:00
6220821a2f
Cleaned up AccessFlags enum in TMD class 2024-08-03 13:44:15 -04:00
580ba8526f
Add method to check for specific access rights in TMD 2024-08-03 13:36:35 -04:00
7e308a35eb
Save access rights as an int and not bytes 2024-08-03 13:13:29 -04:00
194b65c6d6
Added hard-coded table of System Menu versions for conversions 2024-08-03 02:12:47 -04:00
cfd5abac7e
Merge remote-tracking branch 'origin/main' 2024-08-02 23:57:58 -04:00
7edf764768
Fix handling of title and content types in tmd module 2024-08-02 23:57:43 -04:00
544e65a109 Fix title version cap 2024-08-02 14:28:22 -04:00
bcbdd284e9
Don't automatically set content to normal when applying IOS patches 2024-08-02 08:40:39 -04:00
415af7b8b8
Write the footer at the bottom when dumping 2024-08-01 17:04:59 -04:00
f81398e854
Disable automatically making patched content non-shared 2024-08-01 15:49:06 -04:00
60975dc62d
Add experimental patch to make IOS work without a DVD drive 2024-07-31 01:29:54 -04:00
5c56eabe9f
Fix a minor bug in how title versions were handled in the ticket module 2024-07-29 16:46:38 -04:00
9d26ff74ff
Return count of applied patches from iospatcher instead of erroring on 0 applied 2024-07-29 15:29:51 -04:00
18b54af091
Fix formatting issue with setting the Title ID in the ticket module 2024-07-28 03:33:28 -04:00
2d67f982dc
Re-encrypt Title Key when setting the Title ID (title module only) 2024-07-28 03:28:44 -04:00
d6e6352d0a
Correctly generate IV for Title Key decrpytion for all Title ID formats 2024-07-28 03:15:51 -04:00
7daba7ec86
Add IOSPatcher to apply patches to IOS WADs loaded into a Title()
Also fixes a MAJOR bug with WAD packing where changes to the content records would be dropped when dumping a WAD (!!)
2024-07-28 01:43:46 -04:00
930e09828e
Always return lowercase file names from SharedContentMap.add_content() 2024-07-27 20:47:22 -04:00
a5ce7e9cd1
Minor fix for accepting different input types for SharedContentMap.add_content() 2024-07-27 19:56:43 -04:00
76b773ee36
Fix adding content to the content map if it is empty 2024-07-27 19:36:27 -04:00
817a2c9ac5
Added SharedContentMap to content module to handle content.map files 2024-07-27 19:22:21 -04:00
102da808e6
Add option to skip hash checks when unpacking a WAD 2024-07-25 21:14:12 -04:00
f7f67d3414
Rewrote most of the content module, code is much cleaner now
It also has more checks, so that should ensure that more errors get caught and aren't either ignored or allowed to fall through to the interpreter.
Also, part of this cleanup is that the content module now entirely operates on content indexes and not literal indexes, so this makes sure that WADs where the content and literal indexes don't match are handed properly
2024-07-25 17:15:26 -04:00
39eecec864
Fall back on key 0 when invalid, fix footer reading code 2024-07-25 13:09:01 -04:00
5f4fa8827c
Added new methods to TMD/Ticket/Title modules for changing title versions 2024-07-22 02:42:04 -04:00
e70b9570de
Fix handling WADs where content index != actual index in the array 2024-07-20 15:07:23 -04:00
bcd61b8a37
Slightly improve fakesign docstrings 2024-07-17 20:48:16 -04:00
a56fa6e051
Added methods to fakesign a TMD or Ticket 2024-07-17 20:44:04 -04:00
535de7f228
Read/write minor version in tmd module, allows for fakesigning 2024-07-10 20:18:15 +10:00
adac67b158
Change title version handling in tmd module
Now saving the version number (like v513) straight from the TMD and using that to dump the TMD, in case the converted version number (like v2.2) doesn't work right, which mostly applies to the system menu.
2024-07-10 08:11:14 +10:00
f96da98d23
Separate out components of a TMD signature
Not sure why this hadn't been done already given that the ticket module has always used separate properties for the signature type and data.
2024-07-06 20:15:18 +10:00
c5abf16f67
Finally fix content region size in WAD headers 2024-07-06 20:00:18 +10:00