Commit graph

210 commits

Author SHA1 Message Date
jakcron
4ef93db423 [nstool] Add NRO HB extention AssetHeader support. 2018-06-10 14:57:57 +08:00
jakcron
f5997c01f4 [nstool] Add NRO Support.
And cleaned up NSO support.
2018-06-09 23:32:35 +08:00
jakcron
7a09be650f [nstool] Add SdkApiString 2018-06-09 23:31:52 +08:00
jakcron
82aa069ba1 [nstool] Add compress as a makefile dependency. 2018-06-09 14:54:22 +08:00
jakcron
b42c551a20 [nstool] Fix XCI partition validation. 2018-06-06 21:27:46 +08:00
jakcron
bd2e1dd927 Remove unused function/variable. 2018-06-04 13:38:51 +08:00
jakcron
aaffe12e8a [nx|nstool] Add nro.h and nrr.h. 2018-06-04 12:00:28 +08:00
jakcron
a1b1d4662e Update VS project files. 2018-06-03 16:48:26 +08:00
jakcron
08f7f36e68 [nstool] Refactored creation and sharing of fnd::IFile ptrs. 2018-06-03 16:48:12 +08:00
jakcron
782811da47 [nx|nstool] Changed struct magic from strings to words. 2018-06-03 15:41:56 +08:00
jakcron
a8f39b721d [nx|nstool] Added support for xci logo partition. 2018-06-03 15:10:47 +08:00
jakcron
36d7d7a5bf [nstool] Add dynamic symbol processing to NsoProcess. 2018-06-02 20:16:19 +08:00
jakcron
caeea8f119 [nstool] Add DynamicSymbolParser. 2018-06-02 20:15:13 +08:00
jakcron
f7e49c50f3 Update VS project files. 2018-06-02 11:17:53 +08:00
jakcron
5a2f998cb9 [nstool] Update readme and help text to reflect present functionality. 2018-06-01 22:35:48 +08:00
jakcron
503318795a [nstool] NSO RO api list isn't part of the NSO header. 2018-06-01 22:18:28 +08:00
jakcron
c027537af6 [nstool] Implement decompression and hash validation to NsoProcess. 2018-06-01 22:14:39 +08:00
jakcron
915bd80f6f [nx|nstool] Encapsulated NsoHeader parsing into nx::NsoHeader 2018-06-01 21:35:36 +08:00
jakcron
57f3b04b11 [nstool] Change grouping. 2018-05-30 12:41:06 +08:00
jakcron
7f27f344bd [nstool] Prototype reading NSO header. 2018-05-27 20:34:10 +08:00
jakcron
6960911ab0 [nstool] Improve Pfs/Romfs export time. 2018-05-27 18:17:34 +08:00
jakcron
f4d3501f8c [nstool] Fix bug in AesCtrWrappedIFile. 2018-05-27 18:16:42 +08:00
jakcron
634b202b5a [nstool] Aligned file extraction block sizes
For optimisation, IFile wrappers and processes that all used a cache have similar or the same cache sizes.
2018-05-26 21:13:21 +08:00
jakcron
76ce22dc69 [nx|nstool] Silence format warnings. Cleanup string resource processing. 2018-05-26 12:07:42 +08:00
jakcron
8b37665be6 [nx|nstool] Changed Romfs FileNode and DirNode to not include an empty name[] variable. 2018-05-26 11:26:56 +08:00
jakcron
57d03b6076 [nstool] Fixed seek() typo in HashTreeWrappedIFile 2018-05-25 22:53:19 +08:00
jakcron
0b0d546605 [nstool] Change processing of NCA key area. 2018-05-23 15:19:54 +08:00
jakcron
cd00be2221 [nstool] Add source to VS Project files. 2018-05-23 15:07:31 +08:00
jakcron
7428640df9 [nstool] Whitespace. 2018-05-22 19:55:56 +08:00
jakcron
33313f208d [nstool] Where not guarenteed to control file position, IFile wrappers assert their position. 2018-05-22 19:45:40 +08:00
jakcron
e1ccf81e54 [nstool] Fixed a bug in OffsetAdjustedIFile that failed to track file position. 2018-05-22 19:38:05 +08:00
jakcron
7c024c290b [nstool] Removed relative offsets in Pfs/Romfs Process because it isn't guarenteed to be reliable. 2018-05-22 19:36:39 +08:00
jakcron
3437031128 [nstool] NCA processing more robust. 2018-05-22 19:03:42 +08:00
jakcron
60eda9e42e [nstool] Give reasons for why a NCA partition is unreadable. 2018-05-22 14:38:14 +08:00
jakcron
c7e79b1d55 [nstool] Fix titlekey decryption. 2018-05-22 13:47:07 +08:00
jakcron
a2aefc2827 [nstool] Fix bug where titlekek_source was not read. 2018-05-22 13:01:58 +08:00
jakcron
d4a5bacceb [nstool] Misc 2018-05-22 10:30:52 +08:00
jakcron
24437935e7 [nstool] Made a disctinction between NSP and PFS, for future use. 2018-05-22 10:30:31 +08:00
jakcron
9ee1033e31 [nstool] Remove unneeded empty lines. 2018-05-21 23:06:53 +08:00
jakcron
cd322434c6 [nstool] Encorporate HashWrappedIFile to NcaProcess. 2018-05-21 23:04:35 +08:00
jakcron
18e4c175df [nstool] Add HashTreeWrappedIFile 2018-05-21 23:03:57 +08:00
jakcron
c1f343d052 [nstool] Add flag to signal hash calc aligning. 2018-05-21 23:03:28 +08:00
jakcron
bd991a25e1 [nstool] Integrate HashTreeMeta into NcaProcess 2018-05-21 21:08:37 +08:00
jakcron
1f3865c979 [nstool] Add HashTreeMeta. 2018-05-21 20:49:46 +08:00
jakcron
e4b86ab566 [nstool] Formatting changes. 2018-05-21 20:49:28 +08:00
jakcron
1e75262f3f [nstool] Wrapped IFile classes now can optionally specify when constructed if they own their IFile pointer. By default they do not. 2018-05-21 20:48:59 +08:00
jakcron
446927b53e [libnx|nstool] Added HierarchicalSha256Header and HierarchicalIntegrityHeader 2018-05-20 21:57:38 +08:00
jakcron
aa1ed007eb Start moving towards a more generatlised hash tree system. 2018-05-19 11:57:40 +08:00
jakcron
f2021d851a [nstool] Remove unused private method. 2018-05-18 17:43:51 +08:00
jakcron
1a5f045e0a [nstool] Show pfs and romfs file offsets from the base offsets. 2018-05-18 17:08:48 +08:00
jakcron
96927dca8f Merge branch 'refactor' of https://github.com/jakcron/NXTools into refactor 2018-05-18 16:41:17 +08:00
jakcron
7c123ca97b [nstool] Add descriptive names to NCA mount points. 2018-05-15 23:00:07 +08:00
jakcron
6069cbb1cb [nstool] Remove magic values. 2018-05-15 21:36:04 +08:00
jakcron
af35e0410d [nstool] Add type raw value to CnmtProcess 2018-05-15 18:23:56 +08:00
jakcron
7da6aee09d [nx|nstool] Update VS project files. 2018-05-15 18:13:10 +08:00
jakcron
bd25c8c364 [nstool] Corrected formatting of title version strings. 2018-05-13 00:04:07 +08:00
jakcron
79c24153bb [nx|nstool] Added support for reading ContentMeta (.cnmt). 2018-05-12 23:02:53 +08:00
jakcron
b36875661e [nstool] Start CmntProcess 2018-05-12 17:37:15 +08:00
jakcron
3fe7582811 [nstool] Updated VS project files. 2018-05-12 11:51:38 +08:00
jakcron
acc8494224 [nstool] remove unused files. 2018-05-12 00:28:27 +08:00
jakcron
a6c30a8f0f [nstool] Add NCA sig[1] validation, better code structure. 2018-05-12 00:26:19 +08:00
jakcron
3d57420c70 [nstool] Fix typo importing --titlekey 2018-05-12 00:20:39 +08:00
jakcron
13f595f3f4 misc 2018-05-11 23:51:39 +08:00
jakcron
7237a15098 [nstool] Added PfsProcess struct check before using struct. 2018-05-11 23:47:31 +08:00
jakcron
8e360332e5 [nstool] Changed handling of shared IFile derrivatives. Always a pointer 2018-05-11 21:20:28 +08:00
jakcron
90bbbede60 [nstool] Misc rename. 2018-05-11 21:10:39 +08:00
Jack
c7d78d0f1e
Merge pull request #10 from jakcron/nca-development
[nx|nstool] Nca development
2018-05-11 17:54:25 +08:00
jakcron
00e1571ec7 [nstool] Add NCA partition decryption/extraction. 2018-05-11 17:51:14 +08:00
jakcron
b69dc62062 [nstool] implement --partX command for nca. 2018-05-01 13:20:50 +08:00
jakcron
aee573f5ce [nx|nstool] Updated npdm->aci flag information. Also corrected some bugs 2018-04-28 00:13:35 +08:00
jakcron
bf1273e5ba [nstool] Add inital NCA support. Reads header and decrypts key area. 2018-04-25 23:21:47 +08:00
jakcron
10655e828e [nstool] Removed duplicated definition of the platform path dividers. 2018-04-25 23:21:05 +08:00
jakcron
b6abf658de [nstool] Update VS files. 2018-04-25 22:23:35 +08:00
jakcron
322e4d2b48 [nstool] Added RomFs extraction support. 2018-04-25 20:27:47 +08:00
jakcron
d017a95a3a [fnd|nstool] Replaced io::makePath() with io::appendToPath(). Enabled utf-8 support to io::makeDirectory. 2018-04-25 20:27:18 +08:00
jakcron
2bfe11bf16 [nstool] Add RomFs file previewing. 2018-04-25 19:37:22 +08:00
jakcron
3411118e26 [nstool] Add checks to ensure a reader object is provided to the Process classes. 2018-04-25 19:36:58 +08:00
jakcron
b164299473 [nstool] Fix automatic ROMFS detection. 2018-04-25 16:35:45 +08:00
jakcron
27347214f7 Add Visual Studio (2017) support. 2018-04-25 12:59:42 +08:00
jakcron
b4d3fbe7f9 [nstool] Add alternative name to "key_area_key_*": "nca_body_keak_*". 2018-04-24 16:23:29 +08:00
jakcron
14bdc0a795 [nstool] Enabled derivation of nca_header_key from sources. Key generation was also refactored. 2018-04-24 15:53:43 +08:00
jakcron
14220dced8 [nstool] Change includes. 2018-04-24 15:51:29 +08:00
jakcron
8ef9f478b0 [programs] Remove xcitool, npdmtool, pfstool. Add nstool. 2018-04-24 13:24:20 +08:00
jakcron
9073c4a6d8 [xcitool] Show a pageAddr field also as a real address. Pfs addresses now relative to start of XCI. 2018-04-07 18:08:32 +08:00
jakcron
4019febb23 [xcitool] Add PFS preview function. 2018-04-07 16:05:25 +08:00
jakcron
584edf1f3d [tiktool] Behind the scenes formating changes. 2018-04-07 16:03:39 +08:00
jakcron
109b64be52 [nx|pfstool] Add support for HFS0. Take out PFS consts and structs to a separate file. 2018-04-07 16:03:01 +08:00
jakcron
fd9261b789 [nx|ncatool] Take out NCA constants and structures to separate file. Add support for NCA key area index 5. 2018-04-07 16:01:11 +08:00
jakcron
bafdaffe13 Update Makefiles 2018-04-07 15:57:04 +08:00
jakcron
7167477874 [fnd] overloaded fnd::io::readFile to allow specifying an offset and size. 2018-03-25 19:52:56 +08:00
jakcron
b5c6cf6cb4 [xcitool] Fix typo and add VS project files. 2018-03-25 19:10:48 +08:00
jakcron
1d934bf0a7 Add xcitool 2018-03-25 18:27:14 +08:00
jakcron
1dbef17165 Fixed typo 2018-03-22 13:29:52 +08:00
jakcron
1c60c86803 Removed u8,u16,u32,u64 typedef 2018-03-22 13:26:22 +08:00
jakcron
1362bac1cb [ncatool] Self select NCA header key. 2018-03-21 20:31:39 +08:00
jakcron
ed2e0f462d Update NCA code 2018-03-18 17:08:42 +08:00
jakcron
bbd975d21b remove binaries 2017-08-05 21:11:13 +08:00
jakcron
e74f214a3b change directory structure, and add support for VS compile, and fix aes-xts bug. 2017-08-05 21:09:50 +08:00
jakcron
e8c39ace04 [es/tiktool] start eticket. 2017-07-22 16:59:06 +08:00
jakcron
bf811f1107 [fnd/nx] Moved ISerialiseableBinary from nx to fnd. AciHeader corrected specification. 2017-07-21 18:30:16 +08:00
jakcron
d730c1e3b8 final commit 2017-07-19 00:17:32 +10:00
jakcron
98c933305d [npdmtool] Add source for sample NPDM reader. 2017-07-17 18:26:19 +10:00
jakcron
20b4984ae3 [nx] Removed importBinary(const u8* bytes) from ISerialisableBinary and all children. AciHeader supports ACID version 1. Size bug in SacEntry fixed(?). Bitlength typo in SystemCallEntry fixed(?). MiscFlagsHandler now returns a fnd::List of flags, not the raw word. Forloop in MemoryMappingHandler fixed. 2017-07-15 18:28:01 +10:00
jakcron
076fba9bcb [fnd] Changed internal behavior of fnd::Exception. 2017-07-07 19:57:38 +10:00
jakcron
6531b1083e [ncatool] Update to work with namespace change. 2017-07-07 17:09:29 +10:00
jakcron
7b34bd404d [nx] Added nx namespace. 2017-07-06 21:17:21 +10:00
jakcron
e7172949da [nx/ncatool] Update SacEntry and NcaHeader to inherit from ISerialiseableBinary. ncatool is updated accordingly. 2017-07-06 20:55:58 +10:00
jakcron
c15ab66262 [ncatool] Update API changes. 2017-07-06 13:30:50 +10:00
jakcron
57e45278da Update VS include directory project configuration. 2017-07-06 01:41:25 +10:00
jakcron
18b5826bfb [ncatool] Add program. Can only process header currently. 2017-07-05 18:58:33 +10:00