[comp.emacs] MicroEmacs 3.10 Beta Test porting..

phil@bcscal.UUCP (Phil Kemp) (12/06/88)

I am trying to port the Beta test version of MicroEmacs to Microport
System V/AT version 2.4 (286 version). Understandably there are going to
be some problems, that's why Beta tests exist. I have had experience
only with Microport UNIX and am experiencing problems with the
conversion. 

First off, there is the following chunk of code:

	fd_set fdset;
	struct timeval timeout;
	char cseq[6];		/* current sequence being parsed */

	c = tgetc();

	/* if it is not an escape character */
	if (c != 27) {
		/* flag control chars as such */
        	if (c>=0x00 && c<=0x1F)
                	c = CTRL | (c+'@');
	        return(c);
	}

	/* process a possible escape sequence */
	/* set up to check the keyboard for input */
	fdset.fds_bits[0] = (fd_mask)1;
	timeout.tv_sec = 0;
	timeout.tv_usec = 35000L;

	/* check to see if things are pending soon */
	if (kbdmode != PLAY && select(1, &fdset, NULL, NULL, &timeout) == 0)
		return(CTRL | '[');

	/* a key is pending within 1/30 of a sec... its an escape sequence */

This seems to be a sort of time pending check on input based on the
stuctures timeout and fdset, and the system call select. ( select I
understand to be a BSD animal )

Could someone suggest a System V equivalent function to select, or
possibly a function which could perform the same as above?

I am also experiencing core dumps, ( if I circumvent the above code
section.  ).  I have traced them down to a call to tcapopen, which calls
tgetstr and then makes a call to a routine 'lp' to which I can find no
reference to.  It sounds like curses may be getting upset about some
termcap equivalent calls, sending function references into never-never
land.  Tcapopen is in tcap.c. 

As a point of reference, is anyone else porting Micro-Emacs 3.10 Beta to
Microport System V/AT 2.4? If so please write me with some suggestions
on my project. 

I am using this as a training ground for UNIX and C. Any guidance is
greatly appreciated.

Please e-mail your responses to me. I will forward any success summaries to
Daniel Lawrence and summarize for the net.

BTW this is a modified reposting of an article I tried to send last
week. I hope this one gets further.....
Thanks in advance....

Phil Kemp
Boeing Computer Services, Calgary
Voice - (403)-269-8281
calgary!bcscal!phil



-- 
Phil Kemp
Boeing Computer Services, Calgary
Voice - (403)-269-8281
bcscal!phil@calgary.uucp