Difference between revisions of "ARCTool"

From WiiBrew
Jump to navigation Jump to search
Line 3: Line 3:
 
|author  = tpw_rules
 
|author  = tpw_rules
 
|type    = pc utility
 
|type    = pc utility
|version  = 0.1b
+
|version  = 0.2b
|download = Media:ARCTool_v0.1b.zip
+
|download = Media:ARCTool_v0.2b.zip
 
}}
 
}}
 
'''''ARCTool''''' is a Python script for extracting Yaz0, RARC, and U8 archives. These are used in many Nintendo games, and sometimes have the extension arc, hence the name.
 
'''''ARCTool''''' is a Python script for extracting Yaz0, RARC, and U8 archives. These are used in many Nintendo games, and sometimes have the extension arc, hence the name.
Line 19: Line 19:
  
 
==Usage==
 
==Usage==
<pre><nowiki>python ARCTool.py [-q] [-o <output>] <inputfile></nowiki></pre>
+
<pre><nowiki>python ARCTool.py [-q] [-o <output>] <inputfile> [inputfile2] ... [inputfileN]</nowiki></pre>
  
 
===Options===
 
===Options===
  
<pre>--version: show program's version number and exit<br>
+
<pre>--version             show program's version number and exit
-h, --help: show this help message and exit<br>
+
-h, --help           show this help message and exit
-o OF, --output=OF: write archive to FILE<br>
+
-o FILE/DIR, --output=FILE/DIR
-q, --quiet: don't print anything (except errors)</pre>
+
                        write output to FILE/DIR. If you are extracting
 +
                        multiple archives, all of them will be put in this
 +
                        dir.
 +
-q, --quiet           don't print anything (except errors)</pre>
  
 
==Known Bugs==
 
==Known Bugs==
Line 34: Line 37:
  
 
==Changelog==
 
==Changelog==
 +
====0.2b====
 +
*Fixed a bug in the U8 extractor where it would not change directories properly. I know I said it was 100% working, but the bug was not triggered by the archives I was using to test.
 +
*Now supports extracting multiple archives at once. Just specify them one after another on the command line.
 
====0.1b====
 
====0.1b====
 
*Initial release
 
*Initial release

Revision as of 01:59, 5 January 2010

ARCTool
General
Author(s)tpw_rules
TypePC utility
Version0.2b
Links
Download

ARCTool is a Python script for extracting Yaz0, RARC, and U8 archives. These are used in many Nintendo games, and sometimes have the extension arc, hence the name.

Info

The inspiration for this tool came about when I wrote a RARC extractor and realized that all the files I wanted to extract were U8, but they still had the arc extension.

I have confirmed Yaz0 and U8 support to be 100% working. RARC works, but I have not verified its output against another tool to be absolutely sure.

Requirements

Python 2.5 or higher (not Python 3.x however). Download Python for your OS here.

Tested with Python 2.5 and 2.6 on Mac OS X 10.5.8. It should work with Windows and Linux with a suitable version of Python installed.

Usage

python ARCTool.py [-q] [-o <output>] <inputfile> [inputfile2] ... [inputfileN]

Options

--version             show program's version number and exit
-h, --help            show this help message and exit
-o FILE/DIR, --output=FILE/DIR
                        write output to FILE/DIR. If you are extracting
                        multiple archives, all of them will be put in this
                        dir.
-q, --quiet           don't print anything (except errors)

Known Bugs

None yet :D

If you find one, message me on IRC (nick is tpw_rules) or leave a note on the talk page.

Changelog

0.2b

  • Fixed a bug in the U8 extractor where it would not change directories properly. I know I said it was 100% working, but the bug was not triggered by the archives I was using to test.
  • Now supports extracting multiple archives at once. Just specify them one after another on the command line.

0.1b

  • Initial release

Thanks To

  • #python on freenode for helping me with some stupid mistakes.
  • #wiidev for, again, helping me with stupid mistakes (and not so stupid ones).
  • YAGCD and the WiiBrew wiki for documentation and example code on the various formats.
  • Magicus for parse-u8.c which I used for testing.
  • Everybody else I forgot.