home *** CD-ROM | disk | FTP | other *** search
-
- LHWARP 1.11
- 2nd January, 1990
-
- A disk tracker for the Amiga
-
- Written by Jonathan Forbes
-
- What is Lhwarp?
-
- (Pronounced L-H-WARP)
-
- Lhwarp is a program which will read tracks directly from your floppy disk,
- compress them, and output them to a file. The advantages of using Lhwarp are:
-
- o The entire disk structure, including the boot block, is preserved.
-
- o Lhwarp will always produce a smaller output file than ARC, ZOO or WARP.
-
- o Lhwarp will only archive sectors which contain data, by using the disk's
- bitmap (however, Lhwarp will gladly compress every single sector on
- the disk, if you wish.)
-
- o Using Lhwarp is much less hassle than archiving each and every file
- individually.
-
- o The bootblock of any disk being either read or written is displayed, so
- that bootblock viruses can easily be found.
-
- Lhwarp will produce files much smaller than those produced by Warp, due to
- the fact that Lhwarp uses a more efficient compression algorithm (Adaptive
- Huffman Encoding); the same algorithm used in Lharc. Typically, an Lhwarp
- file will be 80% of the size of an equivalent Warp file, resulting in quite
- reasonable hard drive space savings.
-
- In addition, Lhwarp will only archive sectors which contain data; deleted
- information is not archived (unless you explicity request this to be done.)
- When compressing or decompressing data, sectors which contain data are marked
- with a '.' character, while sectors which do not contain data are marked with
- a '_' character. If the NOMAP option is specified, all sectors will be marked
- with '.' automatically.
-
- Lhwarp's main (and perhaps only) disadvantage is that compression time is
- very large; it can take from 20 to 25 minutes to compress an entire disk
- (80 tracks.) There is not too much which can be done about this; you have to
- pay a price for the extra power.
-
- However, this is not as bad as it may seem; a disk only has to be Lhwarp'd
- once; after Lhwarp'ing, the output file will be transferred via a modem, from
- BBS to BBS. Because the file will be that much smaller than an equivalent
- file produced by Warp, the file will take less time to transfer, resulting in a
- lower phone bill. And, as mentioned before, it will occopy less space on the
- destination system.
-
-
- More Information
-
- Lhwarp output files have the suffix ".LHW". If the filename you give
- Lhwarp does not end in ".LHW", Lhwarp will append ".LHW" to it. Please leave
- the suffix alone, and don't change it to ".WRP".
-
- The Adaptive Huffman Encoding algorithm was originally coded by Haruyasu
- Yoshizaki.
-
- Lhwarp was compiled and very heavily optimised under Lattice C 5.04. Even
- though Lattice produces very fast code, Lhwarp needs all the speed it can get.
- I have rewritten a few of Lhwarp's compression functions in assembly language,
- and performance has improved significantly.
-
- Nevertheless, the Lzhuf routines, which are now a mixture of Lattice C 5.04
- code and assembly language, are much faster than those in either Amiga Lharc,
- or the previous versions of Lhwarp. When compressing an arbitrary 40k file:
-
- Encode time(s) Decode time(s)
- Lharc 60 15
- Lhwarp 1.03 55 13
- Lhwarp 1.10 47 11
- Lhwarp 1.11 39 11
-
-
- Parameters
-
- To view Lhwarp's parameters, type "Lhwarp"; they are included within the
- program. You will be presented with:
-
- Usage: LHWARP <Command> <Unit> <Filename> <StartTrack> <EndTrack> <TFile>
-
- <Command> - Read, NoMap, or Write
- <Unit> - Drive number (0 for internal, 1 ... 3 for external)
- <Filename> - Output|Input filename
- <StartTrack> - Track number (0 ... 79) [valid only in read mode]
- <EndTrack> - Track number (0 ... 79) [valid only in read mode]
- <TFile> - Append text in <TextFile> to output file [optional]
-
- Examples are:
-
- a) Lhwarp READ 0 mydisk 0 79
-
- This will read tracks 0 to 79 of the disk in drive 0 (i.e. the entire
- disk), and will output the result to "mydisk.lhw" Only sectors which contain
- data will be archived.
-
-
- b) Lhwarp READ 0 mydisk 0 79 mytext
-
- This will read tracks 0 to 79 of the disk in drive 0 (i.e. the entire
- disk), and will output the result to "mydisk.lhw". Only sectors which contain
- data will be archived. The text from the file "mytext" will be imported to
- the output file. Any text stored in the output file will be displayed when
- the disk is unarchived.
-
-
- c) Lhwarp NOMAP 0 mydisk 0 79
-
- This will read tracks 0 to 79 of the disk in drive 0 (i.e. the entire
- disk), and will output the result to "mydisk.lhw". All sectors will be
- archived, regardless of whether or not they contain data; the disk's bitmap
- is ignored with the 'nomap' option.
-
-
- d) Lhwarp WRITE 1 mydisk
-
- This will output all tracks stored in mydisk.lhw to drive 1. If any
- text was in the output file, it will be displayed.
-
-
- Virus detection
-
- Some people have complained about Warp in that it aids the spreading of
- boot block viruses. It is for this reason that Lhwarp will display the
- bootblock of any disk it reads or writes, so that one can see what is being
- Lhwarp'd. Any non-standard looking bootblock should be viewed with suspicion.
-
- If you see a non-standard bootblock in read mode, this means that the disk
- you are reading from might possibly contain a virus. If you see this in write
- mode, it means that the file you are writing out to your disk may contain a
- virus. In either case, you should load a virus checker to make sure (such as
- VirusX 4.0)
-
-
- Specifications
-
- Lhwarp uses ETD_READ and ETD_FORMAT to read/write directly from/to the
- trackdisk.device. The 16 bytes of label information for each sector are saved
- in the output file. A 32-bit CRC protects data integrity.
-
-
- Future Possibilities
-
- o Support for raw track reads and writes
- o Merging output files
- o Preview tracks/sectors
- o Mix raw/normal tracks in a single file
-
-
- Acknowledgements
-
- Huffman routines - Haruyasu Yoshizaki (lzhuf.c, v1.13c)
- Bitmap information - Leo Schwab (diskmap2.c)
-
-
- This Program
-
- Lhwarp is a freely distributable, copyrighted piece of software. You do
- not have to pay money to use it, and may upload it wherever you choose, but
- you are not allowed to sell Lhwarp for profit, or include Lhwarp on a disk
- which is sold for profit, without the author's (Jonathan Forbes) permission.
-
- I can be contacted at 416-927-7844 (voice) or 416-921-6638 (data.)
-
-
- Disclaimer
-
- I am in no way responsible for anything this program does; you are using
- it entirely at your own risk, so if you are kidnapped and held hostage by
- Libyan terrorists, don't blame me!
-
-
- Lhwarp vs. Warp:
-
- File size
- v1.03 Warp % Size Diff
- NewTek Dynamic HAM Disk: 670342 796665 84% 126323
-
-