Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Yet another sarc tool 3DS: Difference between revisions

From GameBrew
No edit summary
No edit summary
Line 2: Line 2:
|title=Yet another sarc tool
|title=Yet another sarc tool
|image=Yetanothersarctool.jpg
|image=Yetanothersarctool.jpg
|description=A new simple archive tool.
|description=Nintendo Ware Layout SHArchive Tool (Module).
|author=LITTOMA
|author=LITTOMA
|lastupdated=2018/11/30
|lastupdated=2018/11/30
Line 8: Line 8:
|version=2018
|version=2018
|license=Mixed
|license=Mixed
|download=https://dlhb.gamebrew.org/3dshomebrew/Yetanothersarctool.rar
|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
}}
}}
<youtube>uXu-dHnTiJA</youtube>
A simple archive tool with auto padding feature.


Hi, guys. Today I bring you a new simple archive tool. I create this tool just because the current tools don't meet my requirements, such as auto padding. So, here it is!
==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:
<source lang="bash">
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)
</source>


==Features:==
==External links==
*Creating archives.
* GitHub - https://github.com/LITTOMA/sarc
*Extracting archives.
* GBAtemp - https://gbatemp.net/threads/release-yet-another-sarc-tool.467395
*Support both big and little endianess archives.
 
*Auto padding. (Support bflim files only for now.)
[[Category:3DS homebrew applications]]
*Importable.
[[Category:PC utilities for 3DS homebrew]]

Revision as of 00:31, 15 March 2022

Yet another sarc tool
File:Yetanothersarctool.jpg
General
AuthorLITTOMA
TypePC Utilities
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: