chris@umcp-cs.UUCP (10/10/83)
Ok, I have now found several things that I forgot to send or erroneously included: 1. LoadSearchPath is undefined. I added it to the top of mlisp.h; here's the definition: -------------------------------------------------------------------------- char *LoadSearchPath; /* The load search path for mlisp files. Set to environment EPATH (if any), or PATH_LOADSEARCH if not specified */ -------------------------------------------------------------------------- 2. The mlisp functions (sleep-for) and (bitwise-and): (sleep-for) is a hack I stuck in when I needed it; one should really use sit-for or nothing at all. If you must define it, it takes a single argument and does a sleep(n) on it. (bitwise-and) takes an arbitrary number of parameters, and returns the result of binary-ANDing each value. Spencer Thomas sent out an equivalent function with a different name a while ago. Here's my definitions from arithmetic.c: -------------------------------------------------------------------------- static bitw_and () { register result = binsetup (); register i; for (i=2; !err && i <= CurExec->p_nargs; i++) result &= NumericArg(i); MLvalue -> exp_int = result; return 0; } static bitw_or () { register result = binsetup (); register i; for (i=2; !err && i <= CurExec->p_nargs; i++) result |= NumericArg(i); MLvalue -> exp_int = result; return 0; } static bitw_not () { MLvalue -> exp_int = ~NumericArg(1); return 0; } -------------------------------------------------------------------------- And, of course, they must be defined in InitArith: -------------------------------------------------------------------------- defproc (bitw_and, "bitwise-and"); defproc (bitw_or, "bitwise-or"); defproc (bitw_not, "~"); -------------------------------------------------------------------------- 3. The functions bcopy() and cpyn() are missing. I forgot to include the short assembly language file "bcopy.s" -- look at the next (or perhaps even previous) net.sources message... 4. ChangeScreenHeight is called from inside SaveWindowExcursion in mlisp.c; I shouldn't have sent out this version. ChangeScreenHeight is one of those atrocities that people just want too much to leave out. It's for changing the number of lines Emacs uses, and is probably useful only on Ann Arbor Ambassador terminals. Anyway, if you don't have the function, delete (or comment out) the call to it. 5. FullNameFromGecos is what we use to expand the Berkeley-style gecos field; this was defined in config.h as the user's-full-name function. You should probably use whatever you've been using. If there's enough demand, I'll post mine. Happy hacking, -- In-Real-Life: Chris Torek, Univ of MD Comp Sci UUCP: {seismo,allegra,brl-bmd}!umcp-cs!chris CSNet: chris@umcp-cs ARPA: chris.umcp-cs@UDel-Relay