[comp.emacs] MicroEmacs 3.10 for MIPS

forbes@aries.uiuc.edu (Jeff Forbes) (11/10/89)

Does anyone have the latest version of MicroEmacs running on a MIPS
box?  I have had some trouble getting it to work properly. I have set
it up for a VT100 type keypad with ANSI terminal output, but the
function and cursor keys are not bound. I have an emacs.rc that works
fine with version 3.8 on a VAX. Has the startup format changed?

		Jeff

jerry@altos86.Altos.COM (Jerry Gardner) (11/11/89)

In article <1989Nov10.051358.25964@ux1.cso.uiuc.edu> forbes@aries.scs.uiuc.edu (Jeff Forbes) writes:
>
>Does anyone have the latest version of MicroEmacs running on a MIPS
>box?  I have had some trouble getting it to work properly. I have set
>it up for a VT100 type keypad with ANSI terminal output, but the
>function and cursor keys are not bound. I have an emacs.rc that works
>fine with version 3.8 on a VAX. Has the startup format changed?


It depends on the OS type you have defined in estruct.h.  The code that
implements function and cursor keys is in the file tcap.c.  If you have
set the OS type to generic UNIX (USG I think) in estruct.h, function and
cursor keys will not work.  They do work in XENIX, BSD, and SunOS. The
reason they don't work for generic UNIX (this includes SysV), according
to the comments in tcap.c, is that the author couldn't find a way to
delay for 30msec after an ESC character came in before deciding whether
it was part of an escape sequence generated by a function key or by a
fast typist doing something like ESC G.

If you know of a system call on your OS to delay for approx. 30msec, hack
the code in tcap.c and add the delay.  Use the code #ifdef'd for XENIX or
BSD as an example.


-- 
Jerry Gardner, NJ6A					Altos Computer Systems
UUCP: {sun|pyramid|sco|amdahl|uunet}!altos86!jerry	2641 Orchard Parkway
Internet: jerry@altos.com				San Jose, CA  95134
I don't speak for Altos, they don't speak for me.       946-6700

rbp@investor.pgh.pa.us (Bob Peirce #305) (11/14/89)

In article <3749@altos86.Altos.COM> jerry@altos86.UUCP (Jerry Gardner) writes:
>
>It depends on the OS type you have defined in estruct.h.  The code that
>implements function and cursor keys is in the file tcap.c.  If you have
>set the OS type to generic UNIX (USG I think) in estruct.h, function and
>cursor keys will not work.  They do work in XENIX, BSD, and SunOS. The
>reason they don't work for generic UNIX (this includes SysV), according
>to the comments in tcap.c, is that the author couldn't find a way to
>delay for 30msec after an ESC character came in before deciding whether
>it was part of an escape sequence generated by a function key or by a
>fast typist doing something like ESC G.
>
>If you know of a system call on your OS to delay for approx. 30msec, hack
>the code in tcap.c and add the delay.  Use the code #ifdef'd for XENIX or
>BSD as an example.
>
This always confuses me, but there is a way to time-out your input
on SysV.  Guy Harris, I think, wrote a piece on this a while back.
It is not [well] documented in the manuals but you use the VEOF and
VEOL field of c_cc in the termio structure.  I wish I could tell
you more.  I think vi uses this feature.  Some other programs must
as well.  If you have access to source it is probably easier to look
than to figure it out from any documentaion you can find!

-- 
Bob Peirce, Pittsburgh, PA				  412-471-5320
...!uunet!pitt!investor!rbp			rbp@investor.pgh.pa.us