Hacking WIT: Wiimms ISO Tools / beta test

  • Thread starter Thread starter Wiimm
  • Start date Start date
  • Views Views 44,286
  • Replies Replies 223
A WARNING FOR "WIT MIX":

I wanted to cleanup the code of "wit MIX" and now I'm not sure, if all times the correct data is copied when using the multi hole overlay. If you are using wit and something isn't working like expected then it's possible that I'm the bad guy.

I'm trying to fix it ...
 
Wiimm said:
airline38 said:
@Wiimm , does wit support Korea ISO file ? Some people told me they can't use wit to merge
Wit Fit (Korea version) ISO with other Korea ISO file because there is a special key (Korea key)
requirement.
I don't know; you're the first who asked me.
I remember that I have sometimes read something about a Korean common key ... is this the only difference?
http://hackmii.com/2008/09/korean-wii/
rundown of korean Wii with korean key at the bottom.
 
Wiimm said:
A WARNING FOR "WIT MIX":

I wanted to cleanup the code of "wit MIX" and now I'm not sure, if all times the correct data is copied when using the multi hole overlay. If you are using wit and something isn't working like expected then it's possible that I'm the bad guy.

I'm trying to fix it ...
Fixed!
I have committed the bug fix and more into the public branch (beta) branch.
 
mauifrog said:
To open Korean iso in wiiscrubber, edit key.bin with hex editor. Change the common key to the korean common key.

Or just download KOR-wiiscrubber.zip
And this can me help to verify my WIT implementation?

I need someone with a korean disc who does something like "wit dump image" and "wit ilist image" and tells me, that a general disc info and a file list was printed.
 
@Wiimm,

Is there a simple way to use "ignore" quilifier to exclude a directory ?

For example , I would like to ignore (exclude) the "Sound" directory
so I use "+/files/Sound/ " in the ignore file.

However, then I use wit mix ........... ,I don't see any difference of the merged iso file size.

I wonder if I use the right format for the ignore file ? (I didn't get any error message)

PS. 1. I use wit v1.15a beta 2
2. Regarding the Korea common key test, the guy who has few Korea ISO files didn't
advise me if he did any test or not. I am still waiting his feedback .......
 
@airline38
"+/files/Sound/" (without the trailing space) does it. But it only enlarge the holes. The file size depends on the last used partition sector.

The best way to check the ignore lists is: wit dump image --show files --rm-files ruleset
the ignore options will only ignore the files, but they are still in the file system. Using --rm-files instead will remove them including the files system entries.
 
So.... what's the correct way to "remove" those "ignore files" from the ISO file ?

My purpose is to use wit mix to have Wii Fit+Lego Indy merged iso file size
can be burned into a D5 disc. (then I don't need to use "Let's Tap" )

My D2Ckey modchip Wii can't read most of the DL disc.


Code:
D:\Wii\WiiGF>wit dump fit.iso --rm-files "@fit.txt"
NAME-DELTA=288=648
NAME-DELTA=288=648

Dump of file fit.iso

ÂÂReal path:ÂÂÂÂÂÂ /WiiGF/fit.iso
ÂÂID & type:ÂÂÂÂÂÂ RFNW01, ISO
ÂÂFile size:ÂÂÂÂÂÂ 118240000/hex = 4699979776 = 4482 MiB
ÂÂDisc name:ÂÂÂÂÂÂ RVL Wii Fit
ÂÂDB title:ÂÂÂÂÂÂÂÂWii Fit(Traditional Chinese)
ÂÂRegion:ÂÂÂÂÂÂÂÂÂÂ-?- [-?- ]
ÂÂRegion setting:ÂÂ0 / 00 80 80 80ÂÂ80 80 80 80
ÂÂDirectories:ÂÂÂÂÂÂÂÂ164
ÂÂFiles:ÂÂÂÂÂÂÂÂÂÂÂÂÂÂ175
ÂÂUsed ISO blocks:ÂÂ 1469 * 32 KiB = 46 MiB

ÂÂ1 partition table with 1 partition:

ÂÂÂÂ tab.idxÂÂ n(part)ÂÂÂÂÂÂ offset(part.tab) .. end(p.tab)
ÂÂÂÂ--------------------------------------------------------
ÂÂÂÂÂÂÂÂ0ÂÂÂÂÂÂÂÂ1ÂÂÂÂÂÂ 10008*4 =ÂÂÂÂÂÂ40020 ..ÂÂÂÂÂÂ40028
 
If you remove a file, it was 1.) removed from the FST (file system) and the storage of the content is ignored for copying (like scrubbing). Because changing the FST fake signing is necessary. If you list the FST you don't see the removed files.

If you ignore a file it is still in the FST, but the storage of the content is ignored for copying. If you list the FST you see the ignored files and they can be accessd, but the content of the files is invalid. It's tricky, but there is no need to fake sign.

Conclusion:

If fake signing is forbidden (and that is true for the "MarioKart Pwns" project), use --ignore files (or wit mix ignore) and be aware that you image becomes a bad dump.

If fake signing is ok or for controlling and testing the file lists, use --rm-files instead.
 
Seems it's not possible to reduce the merged iso file size of Wii Fit+Lego Indy w/o
changing the partition.bin . (yes, I tried to find an alternative for the MarioKart Pwns
project even there are more and more people have successfully solved their 4.3J modchip
Wii problem by using Wii Fit+Let's tap + Lego Indy.)


The wit v1.14a beta 2 works perfectly on that.
 
WIT: Wiimms ISO Tools v1.15a.beta4 - 2010-08-13
Beta test version, for EXPERIMENTAL use only.

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).

For productive versions see the main WIT thread or visit http://wit.wiimm.de/.

Download this EXPERIMENTAL release:
Change log:


Code:
wit v1.15a.beta r1511 - 2010-08-10

- New "wit MIX" qualifer: HEADER: Copy the disc header (first 256 bytes of
ÂÂ disc) of the related source image to the destination image. Patching with
ÂÂ the options --id and --name is possible.
- New "wit MIX" qualifer: REGION: Copy the region infor (32 Bytes at offset
ÂÂ 0x4e000) of the related source image to the destination image. Patching
ÂÂ with the option --region is possible.
- Bug fix: "wit mix --name discname" didn't work.

wit v1.15a.beta2 r1534 - 2010-08-12

- Writing a WBFS file is now part of the file layer and libwbfs is only used
ÂÂ as helper. Now every command, and also "wit MIX", is able to write to a
ÂÂ WBFS file like to any other formats without special code.
- "INSTALLER" is now an alternative name for the "UPDATE" partition, like
ÂÂ "GAME" for "DATA" since the epoch.
- To manage allowed and permitted options, 64 bit integer numbers had been
ÂÂ used. Now arrays will be used, because wwt have already reached the limit
ÂÂ of 64 command specific options. Hope that all run as before.

wit v1.15a.beta4 r1544 - 2010-08-13

- Bug fix for "wit mix --overlay".

The source is published under the license of GPL2. Checkout the sources directly from the SVN repository or browse the source. These URLs are different from the product version. Visit http://wit.wiimm.de/ for more information.
 
i dont really use a WBFS partition, but i have created a tiny one to test some other stuff out. and i ( like a dumbass ) tried to add a 4GB game to a 2GB partition using wwt. obviously this didnt work. but it did write data until it ran out of space before saying that there was no more room.

before i tried to add the game, i ran it with --test and it didnt spit out any error. so, do you think it would be appropriate for wwt to check the available space on the partition before trying to write the first bit of the game?
 
giantpune said:
i dont really use a WBFS partition, but i have created a tiny one to test some other stuff out. and i ( like a dumbass ) tried to add a 4GB game to a 2GB partition using wwt. obviously this didnt work. but it did write data until it ran out of space before saying that there was no more room.

before i tried to add the game, i ran it with --test and it didnt spit out any error. so, do you think it would be appropriate for wwt to check the available space on the partition before trying to write the first bit of the game?
This is because using the old libwbfs adding function: While adding it allocs block by block until there is no block available. And only then the "disc full" error message is generated. It is on my 2do list with a minor priority.
 
WIT: Wiimms ISO Tools v1.16a.beta4 - 2010-08-28
Beta test version, for EXPERIMENTAL use only.

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).

For productive versions see the main WIT thread or visit http://wit.wiimm.de/.

Download this EXPERIMENTAL release:Highlights of this release:
  • A new file format: WIA = Wii ISO Archive. Read this article for details. The WIA support is EXPERIMENTAL!
    .

Change log:


Code:
wit v1.16a.beta4 r1619 - 2010-08-28

- wit MIX: Forgotten options: --iso --wdf --ciso --wbfs
- wit ID6 --long: Print disc title too.
- wwt ADD: Default is now: --enc encrypt
- wit DIFF: Will patch the partiton tables for scrubbed diff, because
ÂÂ different tools modify them in a different way while scrubbing.
- New file format supported: WIA = Wii ISO Archive (EXPERIMENTAL!)
ÂÂ WIA will decrypt partitions and compress the data in chunks with bzip2.
ÂÂ Because of the chunks the archive allows random read access to view
ÂÂ only parts of the image. The option --no-compress disables compressing.
ÂÂ The resulting image is very effective packable by all compression tools.

The source is published under the license of GPL2. Checkout the sources directly from the SVN repository or browse the source. These URLs are different from the product version. Visit http://wit.wiimm.de/ for more information.
 
WIT: Wiimms ISO Tools v1.17a.beta3 - 2010-09-12
Beta test version, for EXPERIMENTAL use only.

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).

For productive versions see the main WIT thread or visit http://wit.wiimm.de/.

Download this EXPERIMENTAL release:Highlights of this release:
  • WIA = Wii ISO Archive
    I have reimplemented WIA. It support now 3 compression methods:
    • --compression NONE

    • Data of used (=non scrubbed sectors) are stored 1:1 with 0x8000 bytes (32KiB) or 0x7c00 bytes for decrypted data partitions (hash removed). This format is very good for an external packer. No hash values for the chunks available.
    • --compression PURGE

    • Data is purged like WDF: Areas with zeros are detected and skipped. The image is smaller than 'NONE' but contains more management info. There is a SHA1 hash for each data chunk so that data errors can be noticed.
    • --compression BZIP2

    • Each chunk is compressed with bzip2 level 9. bzip2 has its own verification code.
    WIA is experimental! The file format may change!
    Please use the thread "WIA = Wii ISO Archive" for WIA discussions.
    .
  • GameCube support
    I'm still working at GameCube support. Reading of GameCube (standard and multiboot) works. Reading means, that the wit commands COPY, EXTRACT, DUMP, LIST, FILES, MOVE, RENAME and some more works fine. "wit MIX" is able to create a multiboot disc without a special boot partition, but the qualifier "boot" will mark one source partition as boot partition.

    The GameCube support is experimental!
    Please use the thread "WIT GameCube disc support" for WIT GameCube discussions.

Change log:


Code:
wit v1.17a.beta3 r1724 - 2010-09-12

- The new tool wdf should replace the tools wdf-cat, wdf-dump and should
ÂÂ compensate the old tools wdf2iso and iso2wdf as general wdf converters.
ÂÂ See built in help for details. wdf is EXPERIMENTAL!
- Support of GameCube multiboot discs. (EXPERIMENTAL!)
- New options --align-part: Align partitions while moving or creating them.
- New options --disc-size: Define a minimal disc size.
- Command "wit SCRUB" renamed to "wit CONVERT". "wit SCRUB" is still allowed.
- From now the first 0x50000 bytes of Wii discs will be scanned for non zero
ÂÂ data. Such data is included into the copy operations. The old and standard
ÂÂ scrubbing algorithm ignore such sectors in the range 0x08000..0x3ffff.
- The WIA file format was completely redesigned and a new beta test phase is
ÂÂ starting. Please see WIA still as EXPERIMENTAL!

Known bugs:

- wit COPY --raw: Copying a image in raw mode to a wbfs file is buggy.
- There are new problems while reading from non seekable sources (e.g. pipes).
ÂÂ The reason is the complete new and more intelligent wiidisc lib which makes
ÂÂ more lookups. I have to insert some code especially for pipes. My plans
ÂÂ that copying multiple partition discs works too.
ÂÂ ==> The best is to use a version 1.01c for pipes.
- No bzip2 (WIA) support for MAC/x86_64. (bug in the bzip2 library)

Missing docu:

- wit commands FILES + EXTRACT + EDIT => see built in help
- Option --show => see built in help
- Tool wdf => see built in help

The source is published under the license of GPL2. Checkout the sources directly from the SVN repository or browse the source. These URLs are different from the product version. Visit http://wit.wiimm.de/ for more information.
 
what does this mean?
Code:
MAGIC: 5d1c9ea3 00000000 => 1 0

i get this whenever i use wwt on my wbfs partition. i didnt used to get this message. and whenever i do wwt REPAIR, it spits out this message but doesnt make any changes to the partition.
 
giantpune said:
i dont really use a WBFS partition, but i have created a tiny one to test some other stuff out. and i ( like a dumbass ) tried to add a 4GB game to a 2GB partition using wwt. obviously this didnt work. but it did write data until it ran out of space before saying that there was no more room.

before i tried to add the game, i ran it with --test and it didnt spit out any error. so, do you think it would be appropriate for wwt to check the available space on the partition before trying to write the first bit of the game?
hmmm, --test doesn't always work out the way you want it to huh ??? That's how I jacked up my drive.
 
@giantpune:
"MAGIC: 5d1c9ea3 00000000 => 1 0" is a control output. It should only be printed, if the tools are made
in test mode (make test all). The hex values are the magic for wii and gamecube, the second pair is the validity status ==> forget them!

@ChokeD
For some operations its hard to create a good test mode. As I told, the first half of the striping raid looked like a correct wbfs.


EDIT @giantpune:
Which release? The current one don't print such message.
The print statement is there since r1645, but as PRINT(...) statement. In none test mode PRINT(..) expands to space.
 
@ wiimm

Understandably, I agree, your doing an excellent job and I value your work, time and energy to the Wii scene and all other possible uses your tools can be used for as well as punes work he put out. I made that statement because pune used the --test feature like I did and it didn't work out for him the same way it didn't work out for me. When he commented on my problem he automatically assumed it was my fault and played me for being dumb. I was just letting him know. I remember. It can happen to anyone, even someone following the rules.
smile.gif
 

Site & Scene News

Popular threads in this forum