Path: utzoo!mnetor!tmsoft!torsqnt!news-server.csri.toronto.edu!cs.utexas.edu!samsung!munnari.oz.au!csc.anu.edu.au!csis!ken From: ken@csis.dit.csiro.au (Ken Yap) Newsgroups: comp.sys.tandy Subject: Re: tandy 16B and 16 bit compress (thanks and another Q) Message-ID: <1990Dec18.225202.4693@csis.dit.csiro.au> Date: 18 Dec 90 22:52:02 GMT References: <1990Dec12.003253.18391@csis.dit.csiro.au> <1990Dec15.060825.1350@jpradley.jpr.com> Organization: CSIRO Division of Information Technology Lines: 44 >>I was trying to get 16 bit compress working on my 16B (~= 6000) and I >>found I couldn't have a large array in bss. Nor could I malloc or sbrk >>any space larger than 245k or so. Now at boot up the machine claims to >>have 892k (or so) user memory. Where's all that memory? Do I have to >>reset some limit somewhere? >> > >Where did you cop you source? >When 16-bit compress was being developed on CompuServe's UnixForum, I wrote the >make file for the t6k, which is the only machine I had at the time, so clearly >it worked - terrifically- on a t6k. I used the standard compress 4.0 distribution. It has a Makefile entry for 6000 Xenix. >The memory you own is one thing. The memory you're allowed to use is another. >You need to reconfigure the kernel or patch it, to let MAXMEM be larger. A >utility for this was provided with filePro 1.1. It's also do-able with adb; >there's a 512-byte file called MAXMEM.T6K in LIB 9 of CIS' UnixForum which does >the trick. Thanks to all who replied. Somebody told me about cfg in 3.2, but my release is 3.1. So I used adb to patch the kernel and it works now. In brief: # adb -w /xenix Maxmem?W 888 # 4k for u area $q It can also be changed at runtime by poking memsize/4k into "maxmem". Oh and increase the swap area (by a dump and restore). Mine's at 4M now. I got a swap exhausted panic the first time. Ironic note: I see no evidence that the previous owner knew about this limit so he never used all that memory. Imagine all those memory cells idle. :-) While I'm posting, did anybody save that short asm segment to do alloca() on a 68k? Even one for a Sun will do, I can add the stack probe instruction needed. Seasons greetings!