home *** CD-ROM | disk | FTP | other *** search
- 17.Feb.1987
- COMPRESS - Komprimieren von Files
-
- Das Programm COMPRESS wurde von
-
- Jens-Peter Haack
- Agricolastr. 6
- D-1000 Berlin 21
- W-Germany
-
- nach dem beim UNIX(1) COMPRESS 4.0 verwendten Algorithmus nach-
- implementiert. Ich selbst erhebe keinen Anspruch auf jedwede
- Urheber oder Nutzungsrechte. So weit ich informiert bin gestatten
- die Authoren der UNIX-Version die nicht komerzielle Verwendung
- des Programmes.
-
- - Komprimiert
- - Text-Files um ca. 60%.
- DEGAS-Files um ca. 70-95% !!
- .PRG Files um ca. 30-50%
-
- - ca. 5-10kByte / Sekunde.
-
- - Unbegrenzte Filegröße.
-
- - Automatische Anpassung an den verfügbaren Speicherplatz.
-
- - Als GEM-Applikation
- - Als angemeldtete Anwendung
- - Oder vom Shell (ohne Alerts)
-
- Einfach starten... und im File-Menü das File anklicken, das komprimiert
- oder dekomprimiert werden soll. Beim Komprimieren wird der letzte
- Buchstabe des Filenamens um 1 erhöht, beim Dekomprimieren um 1 verringert.
-
- Wird z.B. das File COMPRESS.DOC selektiert, so wird ein neues File
- mit dem Namen COMPRESS.DOD erzeugt, in dem sich die komprimierte
- Version von COMPRESS.DOC befindet.
- Bei Selektieren des Files COMPRESS.DOD wird dieses dekomprimiert und
- als COMPRESS.DOC abgelegt.
-
- Durch Umbenennung des Programmes selbst kann dessen Verhalten verändert
- werden:
-
- Enthält der Name eine Zahl zwischen 10 und 16, so wird die maximale
- Länge von generierten CODES(*) festgelegt.
- Enthält der Name ein 'I', so wird der Unterschied beim Komprimieren
- zwischen dem Original und der komprimierten Version in Prozent
- ausgegeben.
- Enthält der Name ein 'T', so wird die benötigte Zeit angegeben.
- Enthält der Name ein 'R' so wird das selektierte File nach erfolg-
- reicher komprimierung/dekomprimierung gelöscht.
- Wird das Programm von einem SHELL aus aufgerufen (z.B. COMMAND.TOS)
- so darf der Name kein 'P' vor dem '.' enthalten, da dann statt Alerts
- normale printf's verwendet werden.
- Anstatt ein einzelnes File in dem Menü zu selektieren, kann auch ein
- File-pattern (z.B. *.C) angegeben werden, dann werden alle File der
- jeweiligen Direktory die diesem Pattern entsprechen hintereinander
- komprimiert/dekomprimiert.
- COMPRESS kann auch als Anwendung angemeldet werden, um bei selektierung
- des jeweiligen Files automatisch gestartet zu werden.
- Wenn COMPRESS von einem Shell aus gestartet wird, so können
- die oben beschriebenen Optionen als erster Parameter angegeben
- werden: z.B.: COM -i14 COMPRESS.DOC
- COM -ri14 *.C,*.H
- COM *.C
- COM -ti *.PRG
-
- COMPRESS.PRG : komprimieren mit höchstmöglicher Bit-Zahl
- und löscht bei Erfolg das Original.
-
- COMP12.PRG : komprimieren mit 12-Bit maximaler CODE-Länge.
- COMP13.PRG : komprimieren mit 13-Bit maximaler CODE-Länge.
- ...
-
- COMPIT.PRG : komprimiert mit höchstmöglicher Bit-Zahl bei Ausgabe
- der benötigten Zeit und der erzielten Kompression.
- COMPRI14.PRG : komprimiert mit 14-Bit, informiert über die erzielte
- Kompression und löscht bei Erfolg das Original.
-
- Der von COMPRESS benötigte Speicherplatz hängt von der verwendeten
- Bit-Zahl der CODE's ab:
-
- 12-Bit: 85.000 Bytes 13-Bit: 110.000 Bytes
- 14-Bit: 170.000 Bytes 15-Bit: 290.000 Bytes
- 16-Bit: 530.000 Bytes
-
- Daher halte ich es für vernünftig nur 14-Bits zu verwenden, so
- das die Dekomprimierung auch unter Verwendung einer RAM-Disk
- oder auf 512k-Ataris möglich ist.
-
- (1): UNIX ist ein eingetragenes Warenzeichen der Firma AT&T.
-
- (*): Der Algorithmus legt für mehrfach vorkommende Byte-Folgen
- beim zweiten Auftauchen nur noch ein CODE-Wort bis zur Länge
- 16 Bit (je nach erlaubter Bit-Zahl) ab.
-