[comp.os.minix] wanted: 16bit compress

S_WIEZORKE@iravcl.ira.uka.de (Hans B. Wiezorke) (06/26/91)

I am in need of a 16bit compress for minix386.
Can someone please tell me, where to find one or how I can patch the
compress that comes with 1.5.

thanks in advance,

opus



 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
I                  __     I   Hans Bernhard Wiezorke  (at Uni. of Karlsruhe)  I
I /opus\    _____(@  \    I   E-Mail :  S_WIEZORKE@iravcl.ira.uka.de          I
I \sndo/   /.         !   I          or UK9K@DKAUNI2.bitnet (for large mails) I
I          ------)    !   I- - - - - - - - - - - - - - - - - - - - - - - - - -I
I                X~~~~!   I  Maybe it'll rub off, less rubbin' is a sin,      I
I- - - - - - - - - - - - -I  'cause if it doesn't rub off, we go'n rub it in! I
I std. disclaimers apply  I                                 (Tower of Power)  I
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

kjh@pollux.usc.edu (Kenneth J. Hendrickson) (06/26/91)

In article <1991Jun26.155515.25831@ira.uka.de> S_WIEZORKE@iravcl.ira.uka.de (Hans B. Wiezorke) writes:
>I am in need of a 16bit compress for minix386.

I am currently working on this.  I got the source for a version of
compress that has much conditional stuff for machines like M_XENIX,
interdata, and others, but which doesn't have extra stuff for PCDOS like
the source for Minix has.  I am working on merging these two versions
together, so that all of the conditionally compiled code for any machine
will be included.

In addition, I am adding quite a bit of extra DOS support.

Now the important stuff:  My idea is that compress on Minix-386 should
be able to uncompress 16 bit files, and compress to 16 bits, but should
compress to 13 bits unless explicitly instructed to compress to 16 bits.
This is to retain compatibility with older PC Minix.  You will just
compile compress.c with -D_MINIX and -DINTEL_32BITS like any other
command.  This code is already working great.

I need information from the 68K people.  What #define's are used for 68K
Minix to indicate a 68K machine?  The 68K machines should exhibit the
same behaviour as Minix-386 does for compress.  16-bit compression will
be available upon explicit request, 16-bit uncompression is always
available, and without explicit '-b 16', compress will compress to
13-bits to keep compatibility with PC Minix.  If you 68K people don't
want to be compatible with the PC Minix people, then don't hesitate to
send hate mail indicating such.

I also need information about Sun _MINIX, and all other versions.  What
common #defines can I expect for these various versions?

>Can someone please tell me, where to find one or how I can patch the
>compress that comes with 1.5.

Please wait about 3 more days, and I'll post this new version of
compress.c, that can go on all versions of Minix and be appropriately
compiled by #defining the right machine parameters.  Of course, this
will also work well with all other machines like DOS and XENIX as well.

>thanks in advance,

You're welcome.

-- 
favourite oxymorons:   student athlete, military justice, mercy killing
Ken Hendrickson N8DGN/6       kjh@usc.edu      ...!uunet!usc!pollux!kjh

greg@viewlogic.com (Gregory Larkin) (06/27/91)

In article <33902@usc.edu>, kjh@pollux.usc.edu (Kenneth J. Hendrickson) writes:
> In article <1991Jun26.155515.25831@ira.uka.de> S_WIEZORKE@iravcl.ira.uka.de (Hans B. Wiezorke) writes:
> >I am in need of a 16bit compress for minix386.
> 
> I am currently working on this.  I got the source for a version of
> compress that has much conditional stuff for machines like M_XENIX,
> interdata, and others, but which doesn't have extra stuff for PCDOS like
> the source for Minix has.  I am working on merging these two versions
> together, so that all of the conditionally compiled code for any machine
> will be included.
> 


I just got the newest version of Compress (4.1) from comp.sources.misc.

I am just using a lowly '286 with 640K of memory.  I have always wanted
a version of compress that could handle 16 bits.  In the source of compress,
there is a define for M_XENIX.  One of the important things that this define
does is split the hash table into smaller ( <65535 ) chunks.  I saw this and
thought that this might solve the '286/no-16-bit-compression problem.

Well, I got it onto the Minix box and compiled with these flags:

-DSHORTNAMES -D_POSIX_SOURCE -D_MINIX -DM_XENIX -DDIRENT -DVOIDSIG

The executable actually compiled and linked with the ACK compiler!
(There was one small change to make when a couple of symbols with names
 >8 characters conflicted).

Now, when I try to run this thing, the worst I get are all kinds of core
dumps.  The best I get is an infinite loop.

Has anyone played around with this version of Compress on a '286?  Is the
only reason that 16 bit compress won't run on a '286 because ACK won't 
allocate >64K arrays or is there some other limitation that I am over-
looking?

I would love to get this working!! Any tips?

Thanks,
-- 
Greg Larkin (ASIC Engineer)|"This is a fragile ball we are living on; 
Viewlogic Systems, Inc.    |it's a miracle and we are destroying it.."
293 Boston Post Road West  |Peter Garrett, Midnight Oil               
Marlboro, MA 01752  (greg@Viewlogic.COM)

cechew@sol0.cs.monash.edu.au (Earl Chew) (06/27/91)

kjh@pollux.usc.edu (Kenneth J. Hendrickson) writes:

>In article <1991Jun26.155515.25831@ira.uka.de> S_WIEZORKE@iravcl.ira.uka.de (Hans B. Wiezorke) writes:
>>I am in need of a 16bit compress for minix386.

>I am currently working on this.  I got the source for a version of
>compress that has much conditional stuff for machines like M_XENIX,

I took the source for compress from simtel-20 and fiddled it for 16 bit
compress. However, the main problem is lack of memory -- ie 64k data is
insufficient for 16 bit compression. It works ok on Minix386. It does work
s l o w l y  with a array paging.

Earl
--
Earl Chew, Dept of Computer Science, Monash University, Australia 3168
EMAIL: cechew@bruce.cs.monash.edu.au PHONE: 03 5655778 FAX: 03 5655146
----------------------------------------------------------------------