UTILS\AUSQ.DOC  ·  DOC  ·  5.6 KB  ·  1985-05-25  ·  from CompuLink-User-Group_Magazette_Vol-1-Issue-2_1985
                           ausq version 1.00
                       written by Phil Suematsu
                            March 24, 1984

     ausq will unsqueeze files that were squeezed by an SQ program.  It
requires  64k bytes of RAM to execute.   Currently,  there is no  "asq"
counterpart  program.   Any SQ program may be used in conjunction  with
ausq  as well as other file unsqueezers.      One disadvantage to  ausq
version  1.00 is that it may only be executed under DOS version 2.0  or
greater.   However, it is easy to use. Change the default disk drive to
the disk you want the unsqueezed files to reside in and type:

     ausq filename

Where  "filename"  is  any  valid file name  path,  which  may  include
directory  paths.   You  may  also list more than  one  filename  after
"ausq".   If  the  original unsqueezed filename contained  any  illegal
filename characters, they will be replaced by a dollar sign.
     The  advantages to using ausq over any other  unsqueezing  program
are:   the  executable  file is 2K bytes long and it  unsqueezes  files
faster  than  any  other  of its  predecessors.   The  reason  why  the
executable  file  is  so  small  is that it  was  written  in  assembly
language.   The  reasons  why  the  it  outperforms  other  unsqueezing
programs,  which  are  usually written in  high-level  languages,  are:
reading and writing of data to and from files are done in blocks of 28K
bytes,  the  most  often used program variables are kept  in  the  8088
registers,  and  the  program  was designed to  avoid  the  unnecessary
branching  and  calling  that  often creeps  into  high-level  language
programs.
     Two  other unsqueezing programs,  ZUSQ and USQ (USQLC10.COM)  were
benchmarked   against  ausq.    The  test  files  were   the   WordStar
documentation files and a picture of the Mona Lisa.  The bencmarks were
performed  while running under DOS 2.1,  16 buffers were configured and
FASTDISK.COM was used.   The elapsed times that were recorded were  the
time  it  took to load the unsqueezing program and unsqueeze the  file.
Then  the  elapsed  times of the other two  unsqueezing  programs  were
divided by the elapsed time of ausq to determine how many times  faster
ausq unsqueezed the files.  These were the results:


===================*=========*=========*=========*=========*=========*
File               |  WSTOC  | WSHELP1 | WSHELP2 | WSINDEX |  MONA   |
-------------------+---------+---------+---------+---------+---------+
Squeezed length    |    2432 |   34826 |   28416 |    6400 |    6272 |
-------------------+---------+---------+---------+---------+---------+
Unsqueezed length  |    3968 |   64384 |   50176 |   12288 |   28672 |
===================*=========*=========*=========*=========*=========*

Using one memory drive:

===================*=========*=========*=========*=========*=========*
ausq time (seconds)|    1.43 |   11.04 |    9.12 |    2.69 |    3.13 |
-------------------+---------+---------+---------+---------+---------+
USQ time (seconds) |    3.35 |   42.68 |   34.44 |    8.57 |   11.48 |
-------------------+---------+---------+---------+---------+---------+
ZUSQ time (seconds)|    2.86 |   36.36 |   29.33 |    7.25 |    9.89 |
===================*=========*=========*=========*=========*=========*
USQ time/ausq time |    2.34 |    3.87 |    3.78 |    3.19 |    3.67 |
-------------------+---------+---------+---------+---------+---------+
ZUSQ time/ausq time|    2.00 |    3.29 |    3.21 |    2.70 |    3.16 |
===================*=========*=========*=========*=========*=========*

Using one disk drive:

===================*=========*=========*=========*=========*=========*
ausq time (seconds)|    4.61 |   19.61 |   16.81 |    6.59 |    8.18 |
-------------------+---------+---------+---------+---------+---------+
USQ time (seconds) |    6.97 |   78.21 |   58.78 |   16.27 |   22.02 |
-------------------+---------+---------+---------+---------+---------+
ZUSQ time (seconds)|    7.09 |   73.98 |   56.41 |   15.77 |   20.59 |
===================*=========*=========*=========*=========*=========*
USQ time/ausq time |    1.51 |    3.99 |    3.50 |    2.46 |    2.69 |
-------------------+---------+---------+---------+---------+---------+
ZUSQ time/ausq time|    1.54 |    3.77 |    3.36 |    2.39 |    2.52 |
===================*=========*=========*=========*=========*=========*

Using two disk drives:

===================*=========*=========*=========*=========*=========*
ausq time (seconds)|    4.28 |   19.77 |   16.43 |    5.87 |    7.86 |
-------------------+---------+---------+---------+---------+---------+
USQ time (seconds) |    8.73 |  100.68 |   82.94 |   20.70 |   27.08 |
-------------------+---------+---------+---------+---------+---------+
ZUSQ time (seconds)|    8.24 |   97.18 |   79.54 |   19.94 |   25.10 |
===================*=========*=========*=========*=========*=========*
USQ time/ausq time |    2.04 |    5.09 |    5.05 |    3.53 |    3.45 |
-------------------+---------+---------+---------+---------+---------+
ZUSQ time/ausq time|    1.93 |    4.91 |    4.84 |    3.40 |    3.19 |
===================*=========*=========*=========*=========*=========*


If you like this program or would like the assembly source code to this
program a twenty-five dollar contribution would be appreciated, but not
manditory.  Comments, suggestions, and problem reports would be greatly
appreciated.   Send any contributions, and your address if you want the
assembly source code, to:

     Phil Suematsu
     329 South Merelet Lane
     Orange, CA 92669


Key <ENTER> to continue: