[comp.compression] Fast memory copy for 68000.

ross@spam.ua.oz.au (Ross Williams) (06/16/91)

If one of my LZRW* data compression algorithms finds that it has expanded
the data instead of contracting it, it scraps the compression operation and
resorts to a copy operation instead. This allows a fixed upper bound of
a few bytes to be placed on the potential expansion.

Compressor heads who are using the 68000 version of LZRW1 or who want
a 68000 fast memory block copy (using unrolled loops and so forth) may
be interested in my fast block memory routine written in 68000 machine code.

It will pop up in the following ftp archive in the next day or so
(I do not have the power to put stuff in our archive directly - I have to ask).

   Machine: sirius.itd.adelaide.edu.au          IP=129.127.40.3
   Directory: pub/misc
   File: fast_copy.68000

Enjoy,

Ross Williams
ross@spam.ua.oz.au

jms@tardis.Tymnet.COM (Joe Smith) (06/18/91)

In article <845@spam.ua.oz> ross@spam.ua.oz.au (Ross Williams) writes:
>Compressor heads who are using the 68000 version of LZRW1 or who want
>a 68000 fast memory block copy (using unrolled loops and so forth) may
>be interested in my fast block memory routine written in 68000 machine code.

Isn't this called "re-inventing the wheel"?

How is your code better than the other 97 implementations of
"fast block copy"?  It's been about 10 years since the idea of
using MOVEM.L in an unrolled loop was invented; have you compared
your implementation to the standard routines?

-- 
Joe Smith (408)922-6220 | SMTP: jms@tardis.tymnet.com or jms@gemini.tymnet.com
BT Tymnet Tech Services | UUCP: ...!{ames,pyramid}!oliveb!tymix!tardis!jms
PO Box 49019, MS-C51    | BIX: smithjoe | CA license plate: "POPJ P," (PDP-10)
San Jose, CA 95161-9019 | humorous disclaimer: "My Amiga 3000 speaks for me."