Yet another sarc tool 3DS: Difference between revisions

From GameBrew
No edit summary
No edit summary
 
Line 8: Line 8:
|version=2018
|version=2018
|license=Mixed
|license=Mixed
|download=https://dlhb.gamebrew.org/3dshomebrews/Yetanothersarctool.7z
|download=https://dlhb.gamebrew.org/3dshomebrews/yetanothersarctool.7z
|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

Latest revision as of 11:54, 5 April 2022

Yet another sarc tool
3dspc.png
General
AuthorLITTOMA
TypeFile Operation
Version2018
LicenseMixed
Last Updated2018/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)

External links

Advertising: