More actions
No edit summary |
No edit summary |
||
(4 intermediate revisions by the same user not shown) | |||
Line 5: | Line 5: | ||
|author=LITTOMA | |author=LITTOMA | ||
|lastupdated=2018/11/30 | |lastupdated=2018/11/30 | ||
|type= | |type=File Operation | ||
|version=2018 | |version=2018 | ||
|license=Mixed | |license=Mixed | ||
|download=https://dlhb.gamebrew.org/3dshomebrews/ | |download=https://dlhb.gamebrew.org/3dshomebrews/sarc_littoma.zip | ||
|website=https://gbatemp.net/threads/release-yet-another-sarc-tool.467395/ | |website=https://gbatemp.net/threads/release-yet-another-sarc-tool.467395/ | ||
|source=https://github.com/LITTOMA/sarc | |source=https://github.com/LITTOMA/sarc | ||
Line 71: | Line 71: | ||
* GitHub - https://github.com/LITTOMA/sarc | * GitHub - https://github.com/LITTOMA/sarc | ||
* GBAtemp - https://gbatemp.net/threads/release-yet-another-sarc-tool.467395 | * GBAtemp - https://gbatemp.net/threads/release-yet-another-sarc-tool.467395 | ||
Latest revision as of 11:59, 22 Haziran 2024
Yet another sarc tool | |
---|---|
General | |
Author | LITTOMA |
Type | File Operation |
Version | 2018 |
License | Mixed |
Last Updated | 2018/11/30 |
Links | |
Download | |
Website | |
Source | |
A simple archive tool with auto padding feature.
Features
- Creating archives.
- Extracting archives.
- Support both big and little endianess archives.
- Auto padding (Support bflim files only for now).
- Importable.
User guide
Using as a script:
sarc.py [-h] [-v] (-x | -c | -l) [-e {big,little}] [-k HASHKEY] [-d DIR] -f ARCHIVE
optional arguments: -h, --help show this help message and exit -v, --verbose Enable verbose output -x, --extract Extract the archive -c, --create Create an archive -l, --list List contents of the archive -e {big,little}, --endianess {big,little} Set archive endianess -k HASHKEY, --hashkey HASHKEY Set hash key -d DIR, --dir DIR Set working directory -f ARCHIVE, --archive ARCHIVE Set archive file
Import as a module:
from sarc import *
#Initialize an archive with a file:
arc = Sarc('Path/To/Archive')
#Initialize an archive with a directory:
arc = Sarc(path='Path/To/Directory/', order='<', hash_key=0x65)
#Add a file to the archive:
arc.add_file_entry('Path/to/File')
#Save the archive:
arc.archive(archive_path='Path/To/Archive')
#Extract the archive file entries:
arc.extract(path='Path/To/Output/', all=True)
#Extract a single file from the archive by name:
arc.extract(path='Path/To/Output/', name='Name/Of/File')
#Extract a single file from the archive by hash:
arc.extract(path='Path/To/Output/', hash=0x12345678)
#List out all file entries (Hash and Name):
arc.extract(path='', all=True, save_file=False)