Hacking wwt+wit: Wiimms WBFS+ISO Tools

Wiimm

Developer
OP
Member
Joined
Aug 11, 2009
Messages
2,292
Trophies
1
Location
Germany
Website
wiimmfi.de
XP
1,519
Country
Germany
aphiliac
1. wit VERIFY checks only the checksums and the signatures. if a signature fails it prints:
Code:
>scan  .0d DATA    RMCP01 mkw-pal.img
>info              TICKET is well signed. TMD is not signed. Partition is decrypted.
+OK    .0d DATA    RMCP01 mkw-pal.img
You can enable more infos with option --verbose.
Code:
>scan  .0  UPDATE  RUUP01 pool/wdf/animal.wdf
>info              TICKET & TMD are well signed. Partition is encrypted.
+OK    .0  UPDATE  RUUP01 pool/wdf/animal.wdf
>scan  .1  DATA    RUUP01 pool/wdf/animal.wdf
>info              TICKET & TMD are well signed. Partition is encrypted and scrubbed.
+OK    .1  DATA    RUUP01 pool/wdf/animal.wdf

2. The internal compressor compresses in chunks, the external in one piece. The advantage of chunks is the random access of the chunks. WIA has an optimization to keeps the chunks small in the management area.
 

aphiliac

Member
Newcomer
Joined
Mar 3, 2014
Messages
5
Trophies
0
XP
77
Country
I have tested some additional algorithms for post compression of the wia
format. The most reasonable was to apply it to uncompressed wia files. The
results below is on the DATA partition only. Lossless compression only.

4699979776 RMCE01.iso
2776629248 RMCE01.wbfs
2713317692 RMCE01.wia (no compression, used for post-compression)
2259318798 RMCE01.wia (BEST compression)
2245067384 RMCE01.wia.xz (lzma: xz -9 ..)
2223263669 RMCE01.wia.zpaq (zpaq v6.50:zpaq a .. -m 5 -t 1)
1695152803 RMCE01.wia.nz (nanozip v0.09a: nz a -cc -m5g ..)

The nanozip algorithm seem to deal with the wia archives quite well. Checksums
after decompression are good.
It is reseource heavy though: 1h 36m on Xeon 2.4GHz, 5GB footprint, decompression
takes about the same time and the footprint is the same. Might be useful for longterm storage.
 
  • Like
Reactions: Wiimm

Nickkk

Well-Known Member
Newcomer
Joined
May 25, 2012
Messages
61
Trophies
0
Website
desairem.altervista.org
XP
159
Country
Swaziland
Hi Wiimm,
just wanted to ask if you're going back to those --sections requests? As a reminder, it would be great to have it in wwt format/recover, wit verify, wit/wwt remove (already implemented, but seems incorrect).
Thank you very much and have a nice weekend :-)
 

naxil

Well-Known Member
Member
Joined
Oct 26, 2011
Messages
850
Trophies
1
XP
673
Country
Italy
hello, i have extract a game.iso (21mb gamecube), and wit make for me a files and sys directory called P-GAFE, after i have use COPY for make again the iso, but wit make for me a 4,4gb iso and the LL command now show WII/ISO instead of GC/ISO..what is wrong?
 

shuall

Member
Newcomer
Joined
May 6, 2014
Messages
7
Trophies
0
Age
28
XP
47
Country
United States
How hard would it be to implement gamecube iso rebuilding in wit? I'm guessing you'd have to re-generate the fst, and maybe check to see the files fit on 4.7G. I was about to try to write my own when I learned wit already has gamecube iso extracting. I need a linux alternative to gc-rebuilder. I'd be willing to write a patch for wimm if I can, but I can't find the code you use to read gamecube isos.
 

Wiimm

Developer
OP
Member
Joined
Aug 11, 2009
Messages
2,292
Trophies
1
Location
Germany
Website
wiimmfi.de
XP
1,519
Country
Germany
wiimms-tools.png


WIT: Wiimms ISO Tools v2.29a - 2014-05-16
A command line ISO+WBFS tool set for various os.

WIT (Wiimms ISO Tools) is a set of command line tools to manipulate Wii ISO images and WBFS containers. The two main tools are called wit (Wiimms ISO Tool) and wwt (Wiimms WBFS Tool, the WBFS manager).

Feature overview:
Visit http://wit.wiimm.de/features.htmlfor more details.

Download of the current version:
There are also some GUI available:
Change log:[/SIZE]

Code:
wit v2.29a r5186 - 2014-05-16
 
- New patching options to support the new custom server:
 
  - Option --http: Replace 'https' request to 'http' in the files 'main.dol'
    and 'rel/StaticR.rel'.
 
  - Option --domain=dom: Replace 'nintendowifi.net' by the new domain.
 
  - Option --wiimmfi: Patch the images for the new custom server. It is a
    short cut for: --http --domain=wiimmfi.de

The source is published under the license of GPL2. Checkout the sources directly from the SVN repository or browse the source. Visit http://wit.wiimm.de/ for more information.
 

NTA

Member
Newcomer
Joined
May 26, 2010
Messages
24
Trophies
0
XP
188
Country
United States
i'm having trouble using this tool. i have a wia files and wanted to uncompress it. using wdf in the command line is what i should be using right? i read that it's used to unpack wia archives.

wondering if this is correct:
C:\Users\g1\Desktop\wit-v2.29a-r5186-cygwin\bin>wdf +UNPACK ssasr.wia

thanks.

hopefully i can start start using your tools for compressing most of my own games once i get the hang of it
 

Antidote

Well-Known Member
Member
Joined
Jul 13, 2011
Messages
108
Trophies
0
Age
36
XP
256
Country
United States
Not sure if this is the proper thread for this (can't find an szs related thread), but the KCL export has a minor bug, which may also affect import. Basically the last triangle in the table isn't being read, which causes the exported obj to be missing one triangle. I noticed this with my own viewer and thought it was a bug in my viewer, which caused me to take a look at kclt and when it produced the same missing triangle multiple times I wrote it off. However today I accidentally fixed it in my own viewer:
Code:
Uint32 triangleCount = (spatialIndicesOffset - (trianglesOffset + 0x10)) / sizeof(KCLTriangle);
to
Code:
Uint32 triangleCount = (spatialIndicesOffset - (trianglesOffset + 0x10)) / sizeof(KCLTriangle) + 1;

So basically add one triangle to the total. All KCL files I've tested it on from TP work fine, your mileage may vary though.
 

dencrypt

New Member
Newbie
Joined
Aug 26, 2014
Messages
3
Trophies
0
Age
78
XP
85
Country
New Caledonia
Might be a stupid question but is there any uninstall.sh anywhere for linux? I accidentally installed the 32bit version on a 64bit system :(
 

i23098

Member
Newcomer
Joined
Aug 27, 2009
Messages
8
Trophies
0
XP
192
Country
Is there any way to know how many languages a game has? Not sure how easy it could be, if it's something extractable in some headers...
 

Tendency

New Member
Newbie
Joined
Sep 25, 2014
Messages
4
Trophies
0
XP
52
Country
United States
I followed the basic instructions for extracting a Wii ISO (wit extract ISO workdir.d) and a working directory was successfully created. I know it's there because it ate a good bit of my HDD, and I can also successfully copy it to a new destination. However, I'm having trouble finding the actual directory to edit the files. When I tried using (wit dump workdir.d), it gave me a real path of (cygdrive/c/Windows/system32/workdir.d), but of course the directory is not there. I've tried both explorer and the linux-based Dolphin file manager to no avail. I have hidden files shown, and it is not a problem of Window's Application Compatibility. Further, cmd turned up nothing; and by now I've scoured pretty much everywhere I can think of, but still cannot find it. I know it probably has something to do with Cygwin, but I'm a complete novice when it comes to this stuff; so if I could get a bit of guidance, I would be most grateful.

P.S. I'm running Vista x64 and the extracted game was Rune Factory Frontier (Undub). Also, the ISO wasn't in the bin folder (it was in the my Downloads folder) when I extracted. Neither wit move nor wit remove work as the source file cannot be located (I'm assuming because of the /cygdrive prefix).
 

CGar

New Member
Newbie
Joined
Sep 28, 2014
Messages
1
Trophies
0
Age
32
XP
52
Country
Hiya Wiimm thanks for these awesome tools.
1 thing though. When extracting all my games from my wbfs partition to ntfs. I found I had to export a list of titles and chop the names using:
Code:
wwt -a list | cut -d " " -f1 > names
Then i'd use:
Code:
wwt extract -a -P -d games @names
To extract them all.
Is there no easier way? Like an extract all option. Or a way to only list titleIDs with the list command?
Sorry if there already is. Its just I couldn't find such options in the "wwt extract" documentation.
 

dapps

Member
Newcomer
Joined
Aug 25, 2009
Messages
5
Trophies
0
XP
113
Country
United States
Thanks Wiimm for the tool!

I've been using it to check whether my rips have been valid. My games have been ripped as wbfs files in an NTFS partition. So far a lot of my games had errors regarding used blocks being marked as free, but running a repair on the free-blocks table seems to have fixed it.

I've got a few questions that I couldn't find answers to. I've seen you mention that the verify command generates a checksum on the wbfs file and then compares it to a checksum that's also stored in the wbfs file. My question is, how does fixing the free-blocks table not change the generated checksum? And how can I be sure that the checksum stored on the wbfs is generated from a good rip?
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    K3Nv2 @ K3Nv2: Gay history is serious +1