Test reports

3. Software test: The unarchiving tool xadmaster.library (by Uwe Pannecke)

»A Swiss Knife?

Die xadmaster.library von Dirk Stoecker

1. Program description

As time goes by, many different file- and disk-archives add up on a harddisk. Just think about all the LHA-, LZX- and DMS-archive you surely have. Or at least the LHA-archives that make up the majority of Aminet. And of course you need the suitable programs for unpacking.

All those (un)pack program must be present on the system, have their own peculiarities and require different handling. It's easy to lose the overview.

That's where Dirk Stoeckers xadmaster.library comes in: His shareware library offers a unique interface for unpacking numerous disk- and file-archives, just like xfdmaster.library offers it for packed executables and files.

According to the author, all the numerous archive types can be handled in the same way (provided that they are supported). The xadmaster.library can be used with AmigaOS 2.0 and up. It uses so called clients (either integrated in the library or external). Thanks to the included developer documentation everyone can program their own clients.

The xadmaster.library in the current version 5.0 supports the following archive formats:


Disk archives
PackDev
SuperDuper3
xDisk
xMash
Zoom, Zoom5

File archives
AmigaPlus unpack (Coverdisks of the German "AmigaPlus" magazine)
AmiPack (Coverdisks of the German "Amiga-Magazin")
Arc
Gzip
Lha
Lha SFX
Lha MS-Exe
LhPak SFX
LhSFX
Lzx
Rar
Pcompress Pack
S-Omni
S-Pack
S-Pack SFX
Shrink
SDS
Tar
WinZip MS-Exe
XPK Archive
Zip

mixed archivers (which can create disk- and file-archives)
DMS
DMS SFX

Dirk Stoecker emphasizes that his xadmaster.library also supports archives, whose original programs don't work anymore under AmigaOS 2+, and that even archives that DMS rejects as faulty can often be used with xadmaster.library.

The following test report will show whether these promises are more than hot air. For this purpose, the xadmster.library version 5.0 from 19-Feb-2000 had to prove itself under AmigaOS 3.5 and CyberGFX 3.x, powered by a 68040/40 cpu, which was equipped with 36 Mb RAM.

2. Installation

After unpacking the lha-archive, you will find a directory called "xad" in AmigaOS 3.5-look on your harddisk, where you will see besides an install-icon also some text documents accessible from the Workbench.

Screenshot

The whole installation is carried out by the installer after double-clicking on the appropriate icon. If you choose the "Beginner"-mode, all necessary files will be copied the the correct positions and the whole documentation to "Work:" without any further requests. If you don't want that, the "Expert"-mode gives you the (pain of) choice about all installation locations. The installation is done within a few seconds.

In case you can't get the current version through the Internet [1] because you don't have access or because Aminet is down again, you can get the older version 3.3 on the Aminet-CD 35 [2].

Unfortunately, in this version, the install routine contains a little error which causes the installer to quit immediately after starting.

But you can easily edit the install-script and remove the error. It's easy to find: Dirk Stoecker has just forgotten some quotation marks. If you change all lines containing (confirm expert) to (confirm "expert"), the installation will work without problems.

But a manual installation is not a problem either. You just have to copy the contents of the "C" and "Libs" directories to the corresponding directories on your system partition.

3. Program usage

The xadmaster.library communicates with the user through the following small programs:

exe2zip
xad2lha
xadLibInfo
xadList
xadUnDisk
xadUnFile
xadUnFileM

mit dem Amigianer. The documentation (in an easily understandable English) informs about the features of these tools.

Screenshot

For file-unpacking, "xadUnFile" works as interface between user and xadmaster.library. "xadUnFileM" is required for archives that are splitted in several files. For disk-archives, thre is "xadUnDisk".

So the Amigan has to face the (admittedly easy to win) fight with several programs to use a single library, therefore the stated goal of the author to provide a single interface for all archives is not completely fulfilled. For future versions, ONE program for ALL supported archives would be desirable.

All the programs come without a GUI and because of this, they appear a little rough, as you have to use the CLI.

But because all archive formats are handled the same way, you quickly get used to the shell usage. And if there is someone among you who won't touch the CLI in any case, he can be helped easily: File managers like DOpus can be configured with a few mouse clicks as an xad-control center.

And if you insist on a GUI: Andrew Bell, a Voodoo fan, has programmed a user interface with the same name [3].

3.1 In the Shell

3.1.1 XadUnFile

Now I will show how the general communication with the xadmaster.library works, without taking care of every detail. For this I'd like to point you to the good english documentation.

In the shell, you can unpack all supported archives with the following syntax:

xadUnFile archive_with_path  target_directory

An example: In the directory Work:downloads, you have the archive ğAakt0400GUIDE.lhaĞ, and you want to find the new issue of the magazine in the directory Magazines on the partition Work:.

The correct command in the shell would be:

xadUnFile Work:Downloads/Aakt0400GUIDE.lha Work:Magazines/

If you don't know which files are inside an archive, you can have the contents listed with the command

xadUnFile archive_with_path LIST

or

xadUnFile archive_with_path INFO

If you only need a few on the files from the archive, you don't have to unpack all files. xadUnFile can extract single files from an archive and also supports wildcards in filenames. Another example: You want from the archive "pictures.zip" in the partition "Data:" all pictures in JPEG format (all of them have the ending .jpg) to be extracted to "Work:pictures/". You can do this with

xadUnFile  Data:pictures.zip  Work:picturesr/ #?.jpg

whereas #? represents a name with any letters and .jpg is the desired ending. If the target directory does not exist (already), it will be created during unpacking. If you want to keep the control about this, you can add ASKMAKEDIR or AM to the command line. xadmaster.library asks for permission before it overwrites existing files.

Even archives packed with gzip and tar can be unpacked easily. You only need two runs. In the first run, the tar-archive gets unpacked and is saved as a gzip-archive. in the second run, the gzip-archive will be decompressed. If you have a (Win)Zip-archive in the form of an EXE-file, you will have to use exe2zip to change it into a normal Zip-archive which can then be handled normally with "xadUnFile".

3.1.2 XadUnDisk

If you want DMS or ZOOM archives to be written onto drives (e.g DF0:, RAD:) or into files (ADF files, which have become very popular since UAE), "xadUnDisk" comes in.

The usage has been kept consistent with the other tools. So you use

xadUnDisk  Work:Games.dms  DF0:

to write the DMS-file Games on a diskette in drive DF0:. If this disk isn't formatted already, the program can do this for you if use the switch FORMAT.

xadUnDisk  Work:Games.dms  DF0:  FORMAT

If you want the DMS-file from the last example to be converted into an ADF-file suitable for UAE (which is in fact an disk image in a file) and to be saved in the partition Work:, you type

xadUnDisk  Work:Games.dms  Work:Games.adf

in the CLI. This file (or any other ADF) can also be written to a disk. The switch DISKIMAGE orders xadmaster.libary to write a file as a disk image to a specified drive. Again you can optionally format the disk beforehand:

xadUnDisk  Work:Spiele.adf  DF0:  DISKIMAGE  FORMAT< .

3.1.3 Xad2lha

The tool allows you to convert any supported (file) archive in a Lha-archive. The command

xad2lha  Work:Daten/meinArchiv.tar  Work:neuesArchiv.lha

places all files from "myArchive.tar" in the new "newArchive.lha". Alas this doesn't work with disk archives.

In all these programs you can use the switch PASSWORD to extract password protected file, provided that you know the correct password, of course...

3.1.4 XadList

If you have archives on your harddisk that lack the correct ending, you can use "xadList". It recognizes all archive types supported by xadmaster.library.

3.2 Integration in Dopus

Two examples shall demonstrate the usage of the xadmaster-tools from within this widespread filemanager [4]. Both variations are easily set up in a few minutes and shall only serve as suggestion for individual adjustments. The integration is done from the menu entry "Settings/User menu...". In the opened window "User menus" you can create an own menu inclusive items and sub-items. In our case we add the entry "xadmaster" and (inside this entry) the sub-items "Extract file archive" and "Extract disk archive". Then double-click on each of these and set in the "Function editor" the mode to "AmigaDOS".

Screenshot

In the first case, enter "xadUnFile" (and its path) as the command line, and {f} (to use the first selected file from a DOpus-lister) and {Rd} (to open a requester where you can choose the target directory) as arguments.

In the second case, use {Rf} instead of {Rd}, because we want disk archives

Screenshot

to be saved as ADF-files. The "Enter Name" part is only meant to remind you of the desired interaction. DOpus opens you a wide field for experiments.

3.3. Voodoo-Magic

Voodoo-X is a MUI-based graphical user interface for xadmaster.libary, which gives all GUI fetishists a possibility to use xadmaster.libary. The current version 1.2 supports most of the xadmaster.libary functions.

Screenshot

The writing of disk archives to floppy disks is not (yet) possible.

But beside that, can can browse through the archives, extract interesting files, view text files directly from the archive, view pictures, check the archive contents for viruses (if you have XVS installed) and much more. The selected archives are displayed with their contents inside a window.

Screenshot

VoodooX is especially for Shell-haters a serious user interface for xadmaster.library. But contrary to xadmaster.library, VoodooX crashed several times during the test. It remains to be seen whether this was caused by VoodooX itself or by the external programs it calls.

4. Result

Dirk Stoecker has created an interesting piece of software for the Amiga. Thanks to the standardized syntax of the tools, you easily find your way in the Shell. The wildcard support helps to reduce typing. The seamless integration in DOpus and the separatly available GUI VoodooX quickly give a experience of success.

The xadmaster.libary was tested with WinZip-Exe-, Lha-, Lzx-, Zip-, Tar-, Tar.gz, Gzip-, Rar-, Zoom5-, AMPK- and DMS-archives. During the whole test period, xadmaster.library worked stable and reliable.

The xadmaster.library is Shareware. Sooner or later you will see these nag requesters.

Screenshot

The author follows an interesting Shareware strategy: He offers 3 methods of payment. You can buy a keyfile for 20$ (US). I think this amount is much too high. The other methods are more interesting: You get a keyfile for reporting 3 unknown bugs or if you program an external client for a yet unsupported archive type.

If you have many different archives on your harddisk, you should give xadmaster.libary a chance. Dirk Stoecker keeps his promises in the doc-guide.

Sources:
[1] im Aminet unter /util/arc/xadmaster.lha
[2] http://www.schatztruhe.de
[3] im Aminet unter /util/arc/Voodoo-X.lha
[4] als Vollversion 5.5 aus der Aminet-CD 31

Contact:


email: dstoecker@gmx.de 
www: http://home.pages.de/~stoecker/ 
  

Uwe Pannecke <Uwe.Pannecke@t-online.de