The ARJBETA Frequently Asked Questions file

version 1.2, Hans Wessels & Ger Hobbelt 26-08-1995

0)
Q: How do I contact you?

A: As you all know, questions and suggestions about ARJ(beta) related 
   issues is warmly welcomed at both our email addresses 
   (Hans "Mr Ni!" Wessels & Ger "Insh_Allah" Hobbelt) listed at the end 
   of this FAQ.


1)
Q: When I am using ARJBETA, I feel like a MS DOS user, typing a lot of 
   cryptic commands. Will there be an ARJ shell?

A: Yes, an ARJ shell is planned. It will be programmed by Wout Klaren, 
   the author of the desktop shell 'TeraDesk'. But I think it will be 
   summertime before the first version is released.
   But you don't have to type at all to use ARJBETA and UNARJ; drag 
   and drop is enough:
   Install ARJBETA on your (Teradesk) desktop with the following command 
   line:

     c:\packed.arj %f

   Select the files, folders or drives you want to pack and drop them 
   on the ARJBETA icon. They will be packed in the file 
     c:\packed.arj
   or use this command line:

     %f %f

   Drop a folder <foldername> on the ARJBETA icon and the folder will 
   be packed in the file <foldername>.arj
   Install UNARJ with the file type 
     *.arj
   Double click on a .arj file or drop it on the UNARJ icon and the 
   file will be depacked.
   Install UNARJ with the file type 
     *.arj
   and use the following commandline 

     -~g %f

   Double click on a .arj file or drop it on the UNARJ icon and the 
   file will be depacked in a folder with de name of the file.
   As you can see: when properly installed there is no commandline 
   typing at all. It's just a matter of clicking, dragging and dropping, 
   something not regularly available on a MSDOS computer, even not when 
   using MS Windooz.
   BTW: all examples were given with the use of TeraDesk in mind, but 
   I think that any other modern desktop(shell) has the same functions 
   available.


2)
Q: I want to depack a file without it's directory structure; this should 
   be possible with the 
     e 
   or 
     -e 
   command, but the program goes on with creating directories. What am I 
   doing wrong?

A: You are doing nothing wrong, the depacker was wrong. Untill 
   ARJ 9.94A the 
     e 
   and 
     -e 
   commands were broken. It was not possible to depack a file without 
   it's directory structure. In ARJ 9.94A the bug was fixed, but the 
     -~g 
   switch was always switched on (incorrect behavior according to the 
   documentation). You had to switch it off using 
     -~g- 
   This bug was fixed in ARJ 9.95.


3)
Q: What packing ratio's are you expecting compared to LHArc and STZIP?

A: ARJBETA is the best packer on the ST, although there exist files that 
   are better compressed with LHArc or STZIP. Especially lots of small files 
   frequently result in bigger ARJ archives compared to STZIP or LHArc 
   archives. This is due to the larger file headers in the ARJ archive. 
   The packing ratio will improve again in the future, the current packer 
   has still spots where it can be improved.

   This table is for ARJBETA 9.95, ARJBETA 9.96 is better.
   
                ARJBETA   LHArc 3.10   STZIP 2.5

   Case A     : Text files, 1703513 bytes used in 26 files
   packed size:  297916       321154      297350
   pack time  :    141s         108s        113s
   depack time:     25s          25s         43s

   Case B     : Degas pictures, 2077961 bytes used in 77 files
   packed size:  203349       204416      211009
   pack time  :    630s         205s        312s
   depack time:     76s          79s        105s

   Case C     : C-sources, no object files, 4365303 bytes in 168 files
   packed size:  597642       626464      612246
   pack time  :    385s         317s        326s
   depack time:    142s         141s        190s

   Case D     : Binaries, 1725316 bytes used in 26 files
   packed size:  945827       963653      953573
   pack time  :    345s         239s        236s
   depack time:     45s          52s         81s

   Case E     : Latice C5.5, 4093418 bytes used in 30 folders and 331 files
   packed size: 1854686      1889860     1890378
   pack time  :    949s         535s        625s
   depack time:    288s         292s        391s

   Case F     : Noise tracker modules, 7928196 bytes used in 39 files
   packed size: 5320479      5372994     5376083
   pack time  :   1869s        1085s        908s
   depack time:    166s         213s        356s

   Case G : Utility drive, 28904740 bytes used in 207 folders and 1426 files 
   packed size:13816829     14053261    13954665 
   pack time  :   6455s        3509s       4652s
   depack time:   1473s        1487s       1908s

   MS DOS test, 159763639 bytes used in 997 files
	 MSDOS ported ARJBETA     ARJ 2.42(Mr. R. Jung)   PK ZIP 2.04g
	 (32-bit DOS4GW app)      -jm switch used
	 115118708                115318469 (+199761)     115281976 (+163268) 

   Quick look at the new compression ratios:
   ARJBETA 9.96   Text time    win31 time  4unlimit.mod   Drive D: time
   m0        : 1209835   51  1156337   59   325409   13          -
   m1        :  498430  177   206785  167   209287   56   13825442 5530
   m2        :  502303  189   212983  145   210122   55   13951770 4905
   m3        :  508792  159   215649  139   211080   48   14060852 4554
   m4        :  575846  161   245563  128   242235   45   15048213 4343
   m5        :  499759  174   214375  139   210328   49   14029213 4537
   m6        :  493467  178   211868  145   209445   55   13918755 4954
   m7        :  488878  192   206744  169   208802   57   13788033 5548
   m1 -jm    :  497824  203   206351  181   208811   77   13800680 6445
   m2 -jm    :  201801  198   213523  163   209339   76   13928088 5849
   m3 -jm    :  507775  171   215629  147   210752   58   14043104 4736
   m4 -jm    :  572775  148   239050  143   241378   46   14899666 4736
   m5 -jm    :  498791  173   214692  147   210073   58   14011747 4939
   m6 -jm    :  492693  198   211971  164   209089   75   13895150 5841
   m7 -jm    :  488119  209   205123  183   208100   77   13762916 6489
   lzh 3.10  :  537320  160   216341  133   211088   41   14078286 3620
   stzip 2.6 :  495231  190   213207  176   211508   31   13990756 4971
   arj 9.95  :  498484  270   208116  327   209424   76   13842068 6663

   Further speed and compression improvements are expected, especially 
   mode 1, 7 and 8 (still under development) will improve. I expect the 
   next ARJ will compete with the best compression programs like RAR 
   and Ultracompress.

4)
Q: What packing speed are you expecting?

A: ARJBETA is not severely optimized for packing speed yet. Speed 
   optimizations will start when I am finished improving packing 
   ratio. Although it is hard to predict the speed of a future product 
   I can say that my object is to be the fastest packer on the ST too! 
   Just like the depacker being the fastest on the ST. But I know 
   it will be very hard to match the packing speed of LHArc, especially 
   with a complex packer like ARJBETA.
   
   ARJBETA 9.96 is a lot faster as 9.95, but most of the program is 
   still C code and there is still no file buffering, so speed 
   improvements are still to be expected.


5)
Q: What is the difference between UNARJ and UNARJ_PR?

A: UNARJ_PR is the ARJ depacker for PRogrammers. With the switch 
     -~d<dumpfile>,<logfile>,<appendflag>,<dataformatflag>,
       <logformatflag>,<allignflag>,
   you can dump the contents of an archive into files. You can dump the 
   archive in such a format it can be included directly into your C or 
   assembley programs. You can depack the data in your program using 
   the depack routines comming with the ARJ package. See for more info 
   on this command de documentation of UNARJ_PR.


6)
Q: Why are there so many commands and switches? I can't memorize them all!

A: You don't have to know a single command or switch when your are using 
   the ARJBETA packer or the UNARJ depacker (Please refer to FAQ Q #1 above 
   for more on this subject). But if you want to depack files based on 
   various selection schemes you can depack them by using the correct 
   switches. Most of the switches were invented by Robert Jung, the author 
   of the original ARJ packer on MSDOS machines. We implemented them to be 
   fully compatible. The switches we added to the program are all starting 
   with 
     -~ 
   to avoid incompatibilities with future releases of Mr. Jungs archiver. 
   (We thought it very unlikely for a switch to be prefixed 
     -~ 
   so we chosed that one.)


7)
Q: How do I create archives that fit on a HD disk (1.4MB)?

A: You can use the switch 
     -v<number> 
   to enable packing in multiple volume archives. To create archive files 
   that fit exactly on a disk you can use one of the following switches:
     -v180      volume size is  177152 bytes (single sided 40 x 9 disk)
     -v200      volume size is  197632 bytes (single sided 40 x 10 disk)
     -v205      volume size is  202752 bytes (single sided 42 x 10 disk)
     -v360      volume size is  360448 bytes (single sided 80 x 9 or 
                                              dual sided 40 x 9 disk)
     -v400      volume size is  401408 bytes (single sided 80 x 10 or 
                                              dual sided 40 x 10 disk)
     -v405      volume size is  406528 bytes (single sided 82 x 10 disk)
     -v410      volume size is  411648 bytes (dual sided 42 x 10 disk)
     -v720      volume size is  728064 bytes (dual sided 80 x 9 disk)
     -v800      volume size is  809984 bytes (dual sided 80 x 10 disk)
     -v820      volume size is  830464 bytes (dual sided 82 x 10 disk)
     -v1440     volume size is 1456640 bytes (dual side 80 x 18 (hd)disk)
     -v1600     volume size is 1623040 bytes (dual sided 80 x 20 (hd)disk)
     -v1620     volume size is 1664000 bytes (dual sided 82 x 20 (hd)disk)
     -v2880     volume size is 2913280 bytes (dual sided 80 x 36 (ed)disk)
     -v3200     volume size is 3246080 bytes (dual sided 80 x 40 (ed)disk)
     -v3240     volume size is 3328000 bytes (dual sided 82 x 40 (ed)disk)
   You can also determine the size of an archive using the following 
   switch:
     -v<number>      The volume size will be <number> bytes where <number> 
                     has to be a value larger than 8191.
   If the number is smaller than 8192 and none of the standard disk volumes 
   sizes, the default size of 1456640 bytes (the size of a HD disk) will be 
   assumed.
     -v without a number will fit the volume size to fill the free disk
        space on the specified diskdrive. When de disk is full you are
        prompted to insert the next disk into the drive.


8)
Q: Your packer is great stuff, but my friend working at the university 
   would much like it to run on the Sun machines he's got access to: he 
   likes to carry his work up and down to the Atari at home. Is this 
   possible in the near future or do we seek some other solution?

A: As we are currently in beta development of the archiver, we do not 
   miss the point about portability towards other platforms. We are 
   actively porting the archiver to MSDOS 32-bit machinery (386SX or 
   better) and are also in the process of making ARJBETA running on 
   Linux machines.
   From there, we will embark on the path to multiple platform supporting 
   ARJ; once intended by Mr Jung long ago (looking at the depacker C 
   sources distributed with various ARJ versions (ARJ 2.0, 2.30, 2.41, 
   etc.))
   We expect to have the 32-bit MSDOS and Linux port available before 
   summer.
   Any progress in these fields will be reported on the Internet 
   newsgroups: keep a close eye at comp.compression these months ;-)


9)
Q: Above are listed the compression results of ARJBETA for MSDOS. Where 
   can I get a copy for testing? And why are those packing ratios 
   different from Mr. R. Jungs ARJ - are they compatible?

A: Your first question can be easily answered: ARJBETA for MSDOS is not 
   yet released - Ger Hobbelt is busy testing it, but he hasn't yet 
   given a version suitable for wide-spread release.
   Second, we can only say our ARJ implementation is archive-compatible 
   with Mr R. Jungs ARJ.EXE, though we use quite different tactics 
   when archiving. As Hans Wessels has put quite some effort in 
   developing bit-level compatible compression methods, he has hit 
   upon better ways of packing. Viewing our current progress (from quite 
   worse to far better ratios within a short period of development time) 
   we are absolutely convinced this thingy can be stretched even farther:
   our target is to beat all well-known Atari and MSDOS based archivers 
   such as PK ZIP, LHA and Mr. R. Jungs ARJ.
   I know well this quite a challenge, but we will overcome... ;-))


10)
Q: Will you make a Falcon version of ARJ that will use de DSP for packing 
   and/or depacking?

A: No, I don't think there will ever be a special ARJ for the Falcon using 
   its DSP. Because I haven't got a Falcon (and I am not planning in buying 
   one, but feel free to send one, I might reconsider this statement ;-) ) 
   and, as far as my knowledge goes, the DSP hasn't got the right command 
   set for UNARJ; it's specialized in fixed point calculations, not the 
   bit-level instructions needed for ARJ (although the hardware supported 
   cyclic buffers should work nice for the sliding dictionary).


11)
Q: Why are ARJBETA and UNARJ seperate programs?

A: Because ARJBETA is arjBETA, it is a test tool for my ARJ pack code. To 
   keep the program simple it contains only the most necessary functions 
   to test the packer code. In the end we will join ARJBETA and UNARJ into 
   one big program.


12)
Q: Where can I get in touch with you both?

A: Of course we can be reached through Internet email at the 
   addresses listed below:
   Hans Wessels: MR_NI@MBH.ORG or MR_NI@MST.TN.UTWENTE.NL
   Ger Hobbelt: I_A@MBH.ORG

