comparewumad - Compare Two Master Archive Files


comparewumad [<options>...] wumad_file_A wumad_file_B


-wd=<path> Changes the working directory. Default is the user's temporary directory.
-save Saves the working directory set by the -wd option.
-xml[=<path>] Exports in XML format. If the path is omitted, the data is output to a file named comparewumad-result.xml.
-mi Compare masterinfo.xml.
-nc Do not check for free space.
-v Enable verbose logging.

Return Values

0 Succeeded. No difference between files.
1 Succeeded. Difference between files.
10 Terminated with error.
11 Insufficient (too many) arguments.


The comparewumad tool compares the content of two different wumad or wuma files.

Working Directory

This tool requires free space in the working directory on execution. When comparing two wuma files, 50 GB of free space is required in the working directory. By default, the user temporary directory specified by the OS is used, but the working directory can be changed with the wd option if the temporary directory does not have enough free space.

$ comparewumad -wd=E:\temp

In addition, use the -save option to save the working directory specified with the -wd option, as demonstrated below.

$ comparewumad.exe -save -wd=E:\temp     The -save option saves the value set in the -wd option.
$ comparewumad.exe foo.wuma              Now E:\temp is used even if -wd is not specified.
$ comparewumad.exe -save -wd=            Restore the default (OS setting) by assigning a blank working directory.

Comparison Target

By comparing the files above, determine whether the contents of the wumad or wuma files are effectively the same.

Master header (masterheader.bin)

The master header contains information on the sections in the master archive. Differences occur when sections are added or deleted and when section addresses or sizes change.

Disc header (discheader.bin)

The disc header includes volume ID and volume address information. Differences occur when there are any changes to this information.

Volume header of each partition (pXX.header.bin)

The volume header of a partition includes information on the entire volume. Differences occur when files are added to or removed from the volume, or when the content changes.

Files included in each partition

Whenever there is a change in a file content, including additions and deletions, it is handled as a difference.


The following example demonstrates the output when the tool is run. In this example, no differences were detected in the disc header, but differences were detected in the master header and in the volume header of partition p01. When comparing the files included in the partition between A.wumad and B.wumad, we can see that abcd.txt was deleted and efg.txt was added under the content directory. In addition, because the CRC was only calculated using Master Editor for B.wumad, different CRC values were detected in masterheader.bin. A different FST size was also detected due to changes such as filename lengths.

Example of Execution Results

comparewumad version - (c) 2012-2014 Nintendo
Original wuma file:A.wumad
Target wuma file:B.wumad
Comparing masterheader.bin: file.
File discrepancies were found.
|--Changed:HeaderCrc Before="0x0000" After="0xCCCC"
|--Changed:DataCrc Before="0x0000" After="0xDDDD"
|--Changed:MasterInformationCrc Before="0x0000" After="0xFFFF"
Comparing discheader.bin: file.
No file discrepancy was found.
Partition Name:p01
Comparing p01.header.bin: file.
File discrepancies were found.
|--Changed:FSTSize Before="1247" After="1248"
Comparing internal files.

Other Detailed Comparisons

If any discrepancies are found in app.xml, cos.xml, or meta.xml, a detailed diff is displayed for each tag value. masterinfo.xml exists independently of the partition and cannot be compared. Differences in the various header files, including hash values, addresses, and binary file sizes, are output as detailed information.

See Also

Mastering Cafe Applications
Master Applications Overview

Revision History

2015/05/07 Topic placed in command tool format.
2014/01/28 Initial version.