From GameBrew - a wiki dedicated to Video Game Homebrew.
dsZip is a handy utility to compress and decompress .nds files directly on the Nintendo DS. This way it is possible to store many more homebrew applications (or whatever floats your boat) on a memory card than possible when using normal files, and decompress them only when you really want to use them.
When dsZip is run it displays a list of files and directories present in the current directory (that is, the one it has been launched from). Only .gz files are currently listed, as those are the only one you can decompress for now.
If it is a file, dsZip will try to decompress the file. It will list the gzip'd file name, the output file name and then a progress indicator (for every compressed block that has been decompressed a . is printed). Decompression is done when the message asking you to reboot your DS is printed on screen. Please wait for that message before resetting or power cycling your DS. If it seems to be stuck it might be because you are decompressing a very large file. Just wait a bit. An uncompressed 128MB file can take up to 4-5 minutes.
Just before the reboot message an exit code is printed. 0 is fine, everything else represents failure.
The gzip decompressor is tested with different compressed file sizes, up to 128 MB.
Note from developer:
This is pre-alpha quality code. It might work, or not. It might fail in silent and subtle ways. It might destroy your console, or it might eat your data. Use at your own risk.
Up/Down - Change the currently selected entry
A - Take action
B or "Activating the..." - Back to the parent folder
Tested on a DS Lite with a R4 adapter.
Error reporting is minimal (hint: result = 0 means everything is fine).
No checks on the output file name apart from extension stripping (could overwrite something important).
Compression does not work yet.
Archives different from .gz are not supported (even if gzip can normally handle them).
No check is done for available space on the device.