[<<] [<] Page 1 of 1 [>] [>>] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Subject:
RE: nterm source code.
From: Greg Haerr ####@####.#### Date: 16 Aug 1999 18:44:05 -0000 Message-Id: <01BEE7E5.6C9AE490.greg@censoft.com> : : I am quite frankly amazed that it works with Linux ptys. All it did under : ELKS was display unwrapped output from the shell, until it scrolled off the : bottom. Sounds like it could be included in the next distribution once you : have tweaked it. : Yeah, I'm definitely going to include it. I suppose I ought to send you a copy first. The text draw code is definitely too slow, and we need a couple advancements to speed it up, it's not just the low level nano-X stuff. I've been working on some other projects, but I'll get back into this at some point. The two advancements required are: 1) an X-like "RegisterInput" api that allows an fd to be included into the main select with a callback on i/o (this rids the need for the polling checknextevent, instead we use getnext event. and 2) the terminal emulator needs to be re-written to buffer lines of text. Since I write terminal emulators for a living, I know exactly the algorithm we need there. Greg Greg Haerr writes: > > > : The nterm code was written concurrently with my very naive ptty code in > : ELKS. I didn't even look at the specs for real UNIX ptys. nterm does work > : on ELKS, but I don't expect it to work on any other system. > : > Well, you would'nt believe it probably, but with very little effort > I compiled nterm on Linux, and it ran! The pty code is completely compatible. > > BTW, there were two major bugs in the code you passed me. One, > for some reason the compiler didn't complain, but the GrGetGCFontInfo call > takes a string, not a character, to get the width and height. This core dumps > if you use anything other than font #2 (the default FONT_OEM_FIXED in device.h) > > Also, I'm not sure what version of nano-X you're running, but MicroWindows > v0.8x has re-done color model, and you can't use si.white or si.black as COLORVALs, > only PIXELVALs. So, you must use the device.h values WHITE, BLACK, which > aren't simple low-numbered integers. I'm still not sure how it ran on your system. > > Anyway, I'm going to fix it up, and make it work with an added GrRegisterInput() > to add the file descriptor for the pty read to the main select(), which will allow > it to run w/o polling... > | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
[<<] [<] Page 1 of 1 [>] [>>] |