home *** CD-ROM | disk | FTP | other *** search
-
-
- WWPACK
- executable file compressor for DOS
- version 3.0
- Copyright by Rafal Wierzbicki and Piotr Warezak
- This program was finished 16 november 1994
- Our address: Piotr Warezak
- ul. Edukacyjna 31
- 90-155 Lodz
- Poland
- Email: ASTER@krysia.uni.lodz.pl
-
- ──────────────────────────────────────────────────────────────────
-
- Warning: <R> means that command is available in registered version
-
- ──────────────────────────────────────────────────────────────────
-
- Table of contents:
-
- 1) Introduction - features
-
- 2) Hardware requirements
-
- 3) Quick start
-
- 4) Commands
-
- 4.1) Packing executable files 'P' , 'PU' , 'PR'
-
- 4.2) Unpacking packed EXE files 'U' , 'UR' <R>
-
- 4.3) Testing files 'T'
-
- 4.4) Optimizing headers of EXE files 'O'
-
- 4.5) Data files - packing and unpacking 'PD' , 'UD'
-
- 4.6) Wildcards ('*' and '?')
-
- 5) Configuration
-
- 6) Backup files
-
- 7) Files that can't be pack
-
- 8) WWPACK - how does it work ?
-
- 9) Efficiency
-
- 10) Errors - messages
-
- 11) Questions and answers
-
- 12) History of program
-
- 13) How to registrate and get full version of WWPACK
-
- ──────────────────────────────────────────────────────────────────
-
- 1) Introduction - features
-
- WWPACK is a short program that belongs to a very popular group of
- executable file compressors. What does it mean ? It means that if
- you decide to use this program most of your DOS executable files
- will take less space on your disks because they will be much
- shorter ! Executable files packed by WWPACK runs normally, and
- whats more they even don't need WWPACK to run. It means that
- programs packed by WWPACK you can normally give to your friends
- and possibly they won't know that those programs are packed.
-
- In this doc-file we wrote something about all commands of WWPACK.
- If you have had any other executable file compressor, you can
- read only 'Quick start' and 'How to registrate and get full...'.
- You can find answers for many problems in 'Errors - messages'
- chapter too.
- But if you see this kind of program first time, we think that you
- should read all chapters.
-
- Main features:
- - compressing EXE files (in most cases more than 50 %)
- - fast decompressing of packed EXE files <R>
- - packing and unpacking data files
- - optimizing headers of EXE files
- - recognizing other compressors
- - using 80386 code (when 386 or better processor)
- - working on 286, 386, 486 and PENTIUM systems
- - compatilble with WWPACK 2.0x
-
- ──────────────────────────────────────────────────────────────────
-
- 2) Hardware requirements
-
- WWPACK is advanced executable file compressor and it really need
- fast computer. It can be run only on 80286 computers or highers
- so you can't run it on XT computer. Whats more programs packed by
- WWPACK need AT computer too ! The second think we should write
- here is that you ought to have as many base memory as possible
- (at least 540Kb).
-
- What hardware is recomended ? We think it should be fast 80386
- computer with hard disk of course (on floppy disk WWPACK works
- much slower). To unpack files 80286 computer is enough.
-
- ──────────────────────────────────────────────────────────────────
-
- 3) Quick start
-
- WWPACK works exactly like other executable files compressors.
- Here we wrotes what WWPACK can do.
-
- Packing and unpacking DOS EXE files:
- - to pack file write: 'WWPACK P FileName.EXE'
- 'WWPACK PU FileName.EXE' to make an unextracable file (this is
- only is Enhanced version)
- - to unpack packed executable file <R>:
- 'WWPACK U FileName.EXE' - unpack code and relocation table
- 'WWPACK UR FileName.EXE' - unpack code but not relocation table
-
- Packing and unpacking relocation table:
- - to pack only relocation table: 'WWPACK PR FileName.EXE'
- - to unpack relocation table: 'WWPACK U FileName.EXE'
-
- Packing and unpacking data files:
- - to pack any file just write: 'WWPACK PD FileName.EXT'
- - to unpack packed file you must write 'WWPACK UD FileName.EXT'
-
- Command we hadn't met in any other executable file compressor is
- option 'T'. Using this option you can find out if the file is
- already packed by WWPACK or any other compressor.
- Example: 'WWPACK T FILE.EXE'.
-
- The last option is 'O'. Using this option you can optimize the
- header of EXE file.
- Warinig: works only if the file you want to process has at least
- two positions in relocation table !
- How to use 'O' command: 'WWPACK O FileName.EXE'
-
- When running WWPACK wildcards can be use. It's very useful when
- 'T' option is use. For example to scan directory you can write:
- 'WWPACK T *.EXE' (it works similary to DIR command from DOS).
-
- ──────────────────────────────────────────────────────────────────
-
- 4) Commands
-
- In this chapter we wrote about commands of WWPACK compressor.
- So if you don't know how to use our program, just read what we
- wrote below.
-
- 4.1) Packing executable files
-
- P - this command lets you pack executable DOS EXE file.
- How can you use it ? Just write: 'WWPACK P FileName.EXE'
- where FileName.EXE is a name of a file to pack.
- In case of any problem WWPACK will inform you what's wrong.
- PU - this option works just like 'P' but it makes files that
- can't be unpack. Example: 'WWPACK PU NCMAIN.EXE'.
- This option is perfect for the people who want to
- distribute their own programs, but it's available only
- in Enhanced version !
- PR - using this option you can pack relocation table of EXE file.
- This is not as good as 'P' option but we wanted to keep the
- compatibility with WWPACK 2.04. What's more file packed
- by WWPACK 'PR' option can be packed by any other compressor.
- Can you believe that his option increases ratio of other
- compressors ?
-
- 4.2) Unpacking packed EXE files <R>
-
- U - this command you can use to unpack EXE files (of course
- file must be already packed by WWPACK).
- Warning: file must be packed by WWPACK 3.0 with 'P' or 'PR'
- option but it can't be packed with 'PU' option.
- This option lets you unpack files packed by WWPACK 2.0, 2.01,
- 2.02a, 2.03, 2.04 and 3.00.
- Example: 'WWPACK U NCMAIN.EXE' will unpack NCMAIN.EXE file.
- UR - this parameter you can use to unpack executable file packed
- by WWPACK 3.0 with 'P' option. It unpacks only code but it
- doesn't unpack relocation table.
- Those two operations will give you the same effect:
- 1) WWPACK P NCAMIN.EXE
- WWPACK UR NCMAIN.EXE
- 2) WWPACK PR NCMAIN.EXE
- Try it !
-
- 4.3) Testing files
-
- Using option 'T' you can fint out if any EXE file is already
- packed. WWPACK can write what program was use to pack a file.
- Write: 'WWPACK T NCMAIN.EXE' and you will know if the file is
- packed and which program was used to pack this file.
- This copy can recognize WWPACK 2.0, 2.01, 2.02a, 2.03, 2.04, 3.00.
- It can say too if the file was packed by one of those compressors:
- COMPACK, DIET, Microsoft EXEPACK, XLAND EXEPACK, LINK/EXEPACK,
- LZEXE, OPTLINK, PKLITE, PRO-PACK, TINYPROG.
-
- 4.4) Optimizing headers
-
- This option doesn't pack files. It can only optimize relocation
- table of DOS executable file. It isn't useful for you when you
- use WWPACK. But we added this option to WWPACK because many other
- compressors has it implemented.
- This option can be use to cut unused space form headers.
- Usage: 'WWPACK O FileName.EXE'.
- It works only for EXE files of course.
-
- 4.5) Data files
-
- WWPACK packs not only DOS executable files. It can packs all kinds
- of files just like other compressors.
- To pack or unpack data files you can use two commands:
- PD - it can be use to pack any file
- UD - to unpack packed file (file must be packed by 'PD' option
- of course; not 'P', 'PR' , 'PU' !)
- To pack a file as a data you can write: 'WWPACK PD File.Ext'
- To unpack that file write: 'WWPACK UD File.Ext'
-
- 4.6) Wildcards ('*' and '?')
-
- Wildcards can be use in every command of WWPACK.
- Examples:
- 'WWPACK PD *.*' will pack all files in current directory as a data
- files;
- 'WWPACK P *.EXE' can be use to pack all EXE files;
- 'WWPACK T *.EXE' will check all EXE files.
- It's very useful; Isn't it ?
-
- ──────────────────────────────────────────────────────────────────
-
- 5) Configuration
-
- As in many other program in WWPACK you should set configuration
- too. For WWPACK it's enough to set configuration only once and
- since that time this program will always use that first setting.
- Of course if you want to change something you can always do it.
-
- To run configuration menu just write 'WWPACK C' and press ENTER.
- You will see a screen where you can change some options.
- By pressing '1' key you can decide if you want WWPACK to delete
- or not to delete backup files (OLD and OLP).
- By pressing '2' key you can turn on 'Advanced mode'. In this mode
- program will show you some informations about file that is beeing
- packing.
- Using '3' key you can decide what WWPACK should do if it find an
- overlay in file. If you set it on 'YES' WWPACK will automaticly
- pack the file with overlay. If you set 'ASK' WWPACK will ask you
- what to do. If you set 'NO' - file with overlay won't be packed.
- By pressing key '4' you can turn on and turn off sound effect.
- WWPACK can sygnalize end of a long packing or unpacking.
- Key '5' will let you to select kind of code you want to work with.
- 80386 is of course faster but there are two exceptions:
- it won't work on AT computers and it won't work in protected
- mode.
- 80286 will work on all computers (at least AT of course)
- AUTODETECT - WWPACK can automaticly set the best code everytime
- you run it.
- Keys '6' and '7' will let you to change compression method.
-
- When you are in configuration menu you can press 'M' to set best
- compression mode or 'F' to set fastest compression.
-
- When you finish setting new configuration press 'S' to save it
- to a file. To quit without saving press 'ESC'.
-
- Here is an example of configuration
- (we think it's the best but the slowest):
- Backup files ON
- Advanced mode OFF
- Overlays ASK
- Beep when done ON
- 32-bit code AUTODETECT
- Analising data OPTIMAL
- Compression method MAXIMUM
-
- ──────────────────────────────────────────────────────────────────
-
- 6) Backup files
-
- When you work with WWPACK you should know that this program can
- make backup files. It means that if you pack any EXE file (for
- example NCMAIN.EXE) you will get packed file (NCMAIN.EXE) and
- backup file (NCMAIN.OLD - unpacked).
- You will get backup file during unpacking too but the extension
- will be OLP.
-
- Why WWPACK makes backup files ?
- Because some EXE files you pack may not work properly. But if you
- make backup file you will be able to delete packed file and copy
- OLD (or OLP) file to EXE.
- Of course that wouldn't make any sense to keep all OLD and OLP
- files on your hard disk. So everytime you pack or unpack any EXE
- file check if it still works properly and then delete backup file.
-
- Warning: WWPACK makes backup files only when you pack executable
- file so you will not get backup files when using 'PD' or 'UD'
- command.
-
- ──────────────────────────────────────────────────────────────────
-
- 7) Files that can't be pack
-
- Using WWPACK you can pack most of your DOS executable files but
- there are some exceptions. From time to time you will find program
- that won't work correctly. It's impossible to say which program
- won't work; you just have to check every packed file.
-
- Which program may not work ?
- a) program that uses CRC of a file you want to pack or checks it's
- size;
- b) program that has configuration data hidden in EXE file;
- c) device drivers (installed in CONFIG.SYS by DEVICE command).
- Examples: EMM386.EXE, SETVER.EXE, SMARTDRV.EXE, NCACHE2.EXE.
- d) program for WINDOWS and OS/2.
-
- Many of files that contains overlays may not work too.
- Very often you will read 'Overlay not found' or 'Overlay error'
- message. That tells that file can't be pack.
-
- ──────────────────────────────────────────────────────────────────
-
- 8) WWPACK - how does it work ?
-
- Only in some sentences.
- When you run unpacked file DOS loads it into memory and jumps to
- adress shown in header. That is easy.
- But packed file can't be run in this way because packed code and
- data aren't readable for CPU. That's why WWPACK must add to packed
- file short decompression procedure. Now when you run packed
- program DOS jumps to decompression procedure which unpacks code
- and data to memory; after that program can be run normally.
-
- In WWPACK we used our own compression method. We think that it's
- similar to other compression methods but there is one difference
- between our and other procedures. In other compressors code and
- data are beeing packing in only one phase.
- But in WWPACK compression consists of three phases:
- first: code analyzing (when WWPACK is looking for all strings)
- second: WWPACK optimizes founded strings
- third: now code is beeing packing.
- That's why WWPACK is so slow but so powerful.
-
- ──────────────────────────────────────────────────────────────────
-
- 9) Efficiency
-
- WWPACK is the most powerful executable file compressor. We don't
- want write here any numbers and compare it to other programs
- because you could say that we used to test selected files ("that
- are better for WWPACK").
- We think that you should try WWPACK on your own computer and that
- you should try how does it compare to any other program.
- We can guarantee that it will be the most powerful executable file
- compressors in most cases (unless you will find a new program that
- we don't know).
-
- JUST TRY IT AND COMPARE TO THE OTHER COMPRESSOR !
-
- Here we can only show different between unpacked and packed files:
- (all sizes in bytes)
-
- FileName │ Original │WWPACK PR │WWPACK P │RATIO (P)
- ─────────────┼──────────┼──────────┼──────────┼──────────
- ARJ.EXE │ 116228 │ 115299 │ 77250 │ 33.00 %
- GWS.EXE │ 173212 │ 165940 │ 61540 │ 62.91 %
- LHA.EXE │ 33819 │ 33888 │ 24945 │ 26.24 %
- RAR.EXE │ 181450 │ 174562 │ 74887 │ 57.10 %
- ─────────────┼──────────┼──────────┼──────────┼──────────
- All files │ 504709 │ 489689 │ 238622 │ 47.27 %
-
- I hope that's enough to convince you to use WWPACK!
-
- ──────────────────────────────────────────────────────────────────
-
- 10) Errors - messages
-
- Here is a short explanation of each ERROR and message that may
- appear when working with WWPACK.
-
- ERROR #1
- Name of the file to process wasn't entered.
- Please enter command and filename and than run WWPACK again.
-
- ERROR #2
- File you want to process has set attribute SYSTEM or HIDDEN.
- Please change file attributes.
-
- ERROR #3
- WWPACK can't find the file you want to process.
- Probably you entered bad file name - please check it and run
- program again.
-
- ERROR #4
- Try run WWPACK from other disk.
- You need more free space on disk to continue.
-
- ERROR #5
- File probalby contains an overlay. If you still want to pack it
- change configuration (run WWPACK with 'C' parameter).
-
- ERROR #6
- File you wanted to pack, optimize or check isn't DOS executable
- file. It can be pack only with 'PD' command.
-
- ERROR #7
- File isn't packed by WWPACK so it can't be unpacked.
-
- ERROR #8
- File header is damaged.
- It can be packed only with 'PD' command.
-
- ERROR #9
- To many relocations - file can't be processed.
-
- ERROR #10
- Program is already packed by other compressor.
- If you want to pack it using WWPACK, you must first unpack it.
-
- ERROR #11 / #12
- 'PR' nor 'O' command can't be used because file doesn't consist
- long enough relocation table. In file there should be at least
- two relocation to use those commands.
-
- ERROR #13
- Error in relocation table of EXE file.
- File can't be pack nor optimize.
-
- ERROR #14
- Packed relocation table is to long so file can't be packed.
-
- ERROR #15
- Unrecognized error while saving compressed file.
- Please check if on the disk there is enough free space.
-
- ERROR #16
- Please delete READ ONLY attribute to continue.
-
- ERROR #17 / #18
- Bad file extension.
- OLD and OLP files can't be processed by WWPACK.
- Please change file extension.
-
- ERROR #19
- File is packed by unrecognized version of WWPACK
- (probalby new version of WWPACK was used to pack it).
-
- ERROR #20 / #21
- Error while saving or reading configuration data.
- Please check WWPACK.EXE attributes (only ARCHIVE attribute
- can be set; READ ONLY, SYSTEM and HIDDEN should be deleted).
-
- ERROR #22
- To many files in current directory. Please move part of those
- files to other directory and than try again.
-
- ERROR #23
- File can't be unpacked because it was packed by WWPACK Enhanced
- with 'PU' option.
-
- ERROR #24
- Code is already unpacked - you can use only 'U' option to unpack
- relocation table.
-
- ERROR #25
- Not enough free memory to run WWPACK.
- Please remove some resident programs from base memory and than
- run WWPACK again.
-
- ERROR #26
- Unrecognized command.
- Please check entered command and run program again.
-
- ERROR #27
- File header probably damaged.
- File can't be pack by WWPACK.
-
- ERROR #28
- File can't be pack by WWPACK because relocation table has data
- that can't be compress.
-
- ERROR #29
- Sorry, but WWPACK can't work when SHARE program (from MS-DOS)
- is loaded. Please remove SHARE from memory and than run WWPACK
- again.
-
-
- Here are explanation to other messages and questions that you
- may meet when working with WWPACK:
-
- Delete file FILENAME.EXT to make backup file [Y/N] ?
- WWPACK operates on WORK.WWP, *.OLD and *.OLP files.
- That's why from time to time this question may appear.
- WWPACK must be sure that those files can be delete.
- Press 'Y' key if you want to pack, unpack or optimize file
- and delete old FILENAME.EXT.
-
- File FILENAME.EXE has set attribute READ ONLY.
- Change file attribute [Y/N] ?
- Files with set attribute READ ONLY can't be processed.
- Before compression WWPACK must ask if attribute can be changed.
- Press 'Y' to continue or 'N' to abort and quit to DOS.
-
- Warning: file may contains overlays (xx bytes). Continue [Y/N] ?
- This question will appear if in configuration menu option
- 'Overlays' you set on 'ASK' and WWPACK find an overlay in file.
- Press 'Y' if you want to continue packing (optimizing)
- or 'N' to abort operation.
-
- File size put in header bigger than real file size.
- Packed file may not work properly. Continue [Y/N] ?
- This message appears very seldon. It says that file is probably
- damaged. But you can continue if you prees 'Y' key.
- Warning: packed file may not work !
-
- Warning: file already packed by (Microsoft/LINK) EXEPACK.
- Continue [Y/N] ?
- File is already packed by Microsoft EXEPACK or LINK/EXEPACK.
- If you still want to pack it press 'Y' key.
- But remember that file will be packed better if you first unpack
- EXEPACK's procedures.
-
- Warning: protected mode detected - can't use 32-bit code.
- When computer is in protected mode 32-bit code can't be use.
- WWPACK recognizes this mode and automaticly turns on 80286 mode.
- This message may appear when EMM386 or any other expanded
- memory manager is loaded.
-
- ──────────────────────────────────────────────────────────────────
-
- 11) Questions and answers
-
- Q: Can I extract files packed by other compressor ?
- A: Of course not ! If you find file packed by other compressor
- you should use an unpacker for procedures of this file.
- We can only say that in SHAREWARE there is a lot of unpackers
- that can unpack almost all packed files.
-
- Q: Do I have to register WWPACK if I want to use it ?
- A: Yes. It isn't FREEWARE and it isn't PUBLIC DOMAIN too.
- You will became legal user only if you register and pay at
- least 25$. What's more when you register you will get full
- and the newest version of WWPACK.
-
- Q: Why WWPACK is so slow ?
- A: We know that WWPACK 3.0 is very slow. But now we can't do
- anything about it. May be in future...
- Now we can only say that it's powerful and that's the reason.
-
- Q: Does WWPACK work with STACKER ?
- A: Yes. We've tested it and everything has worked correctly.
- Here are results for four files saved on Stacker drive:
- (ARJ.EXE, GWS.EXE, RAR.EXE and LHA.EXE)
- when files are unpacked: 6.422.528 bytes free on disk
- when files are packed by WWPACK: 6.692.864 bytes free on disk
- As you see more space on stacked drive you will have when you
- pack all DOS executable files.
-
- Q: Why can't I pack COM files ?
- A: If you register our program you will get COMEXE file that will
- let you pack those files.
-
- Questions, problems, bugs - please send: ASTER@krysia.uni.lodz.pl
-
- ──────────────────────────────────────────────────────────────────
-
- 12) History of program
-
- Version 1.00 date: 20-05-93
- First version of WWPACK (it was a part of WWUTILITY package).
- Not distributed. Packs only relocation table.
-
- Version 2.00 date: 24-11-93
- First shareware WWPACK.
- Still packs only relocation table.
- - added 'U' option (unpacking files)
- - added 'PT' packing option (CRC procedures in packed files)
- - new unpacking procedures for packed files (now it really works
- properly)
- - code is better and faster
- - removed many bugs
-
- Version 2.01 date: 08-01-94
- - new parameter: 'T' (check file if it's already packed)
- - better packing and optimizing procedures
- - now READ ONLY files can be packed
- - removed error (range check error in relocation table)
- - automatic anti-vir test
- - some changes in code
-
- Version 2.02 date: 10-02-94
- That was test version (not distributed).
- - packing files with overlays
- - removed error in optimizing files
-
- Version 2.02a date: 06-03-94
- - shorter unpack procedures
- - faster optimizing procedures
- - optimized code
-
- Version 2.03 date: 10-07-94
- - new, faster unpacks procedures (changed method of running
- packed files)
- - removed 'PT' procedures (it was to easy to hack and not useful
- really)
-
- Version 2.04 date: 29-08-94
- - better interpreting of incorrect relocation tables
- (overflow ? - relocation on farther than 65536*16 position ?)
-
- Version 3.00 date: 16-11-94
- Now it packs not only relocation table but code and data too.
- Built on v2.04 but with more than 50 changes in old procedures
- and more than 1500 lines of new source code.
- Main changes from 2.04:
- - packs code and data
- - option 'T' recognizes files packed not only by WWPACK but by
- any other compressor too
- - added 'PU' option (enhanced version only)
- - new parameter: 'UR' (to unpack code and data only) <R>
- - now WWPACK packs data files (added 'PD' and 'UD' options)
- - new configuration menu
- - now WWPACK understands wildcards ('?' and '*') and can pack all
- files in current directory
-
- Soon available: WWPACK 3.01
- - more than 50% faster compression (sometime even 75%)
- - faster decompression
- - less memory needed to run WWPACK
-
- ──────────────────────────────────────────────────────────────────
-
- 13) How to registrate and get full version of WWPACK
-
- WWPACK isn't freeware product. You can use shareware version for
- two weeks and you can give it to your friends.But after that time
- you should decide if it's good enough and if it can be useful for
- you.
-
- If you registrate our program, you will get full version and you
- will be able to get new version cheaper (when available).
-
- If you want to registrate you should decide which version you are
- interested in. You can choose between two:
- WWPACK 3.0 for personal use only.
- It costs 25 USD but you musn't sell and distribute any programs
- packed with this version !
- WWPACK 3.0 Enhanced for distributors.
- It has added 'PU' option that makes unextracable files.
- It costs 50 USD. You must have this version to distribute your
- programs packed with WWPACK.
-
- If you decide to registrate run WWPACK with /? parameter and then
- press 'R' key. Than enter your name and address, select disk type
- and WWPACK version (Enhanced or no). Than print order form and
- send it to our address and pay for WWPACK.
- We will send you full version of WWPACK registered to you.
-
- ──────────────────────────────────────────────────────────────────
-
- Thanks for help to:
- Piotr Kuciel, Bartek Kurzyk and Wojciech Wysznacki.
-
- ──────────────────────────────────────────────────────────────────
-
- End of WWPACK documentation.