[unix-pc.general] MGR on the 3b1

dcarver@bsadrc.UUCP (Darrel R. Carver) (01/27/89)

Anyone working on a port of this package?  It would seem to be a
canidate for replacing wmgr, smgr and relatives (look ma, source!).  

I have just started looking at the package as it came through
comp.sources.unix.  I have not looked at the code real throughly yet,
however.  Anyone else scanned it closely?   

Opinions are welcome...
-- 
Darrel R Carver	            -	A clever quote goes here.  Have we got any in
CommTek Publishing Company  -	the unquotable quotes?
Vienna, Va  22180           -
uunet!bsadrc!drc	    -			Mr. Bear

alex@umbc3.UMBC.EDU (Alex S. Crain) (01/28/89)

In article <124@bsadrc.UUCP> dcarver@bsadrc.UUCP (Darrel R. Carver) writes:
>Anyone working on a port of this package?  It would seem to be a
>canidate for replacing wmgr, smgr and relatives (look ma, source!).  

	I scanned through MGR awile ago (its been available from bellcore
for some time) and regected it because:

     1)	It's pretty sun specific. getting it to run on a 3b1 would probably
mean building it *over* the existing interface (Yeech!).

     2)	I'm not sure that it would buy you anything. There are almost no tools
available for it and you would lose the existing 3b1 tools (texview, etc), in
exchange for a nicer programming interface. little or no gain for alot of work.

     3) because of 2, I doubt that there would be a mass interest in it among
unix-pc'rs. lack of support means that few clinets would be written, which 
would dampen support, a vicious circle.

	Admittedly, there is not much in the way of alternatives. I have been 
tossing around an idea, though:

	The X server could be ported to the 3b1 pretty easily. the mfb code
is straight forward, and with the lowlevel access available, it could even
run fast. I expand:

	The two hard parts of the server port are the screen/kbd/mouse
interface and the socket code. The first is not trivail, but its not
too painful either. One could allocate a signal (say SIGWIND) and
rework the keyboard driver to write into some shared memory and
generate a signal on input. Add a listening deamon that would listen
for IPC on some kind of port setup (ala more shared memory) and
generate a SIGWIND on input. Use semaphores as queuing flags, and have
the X server wait on SIGWIND for an event. On an event, the X server
reads the shared segment, processes the event, and goes back to sleep.

	Ironically, this is far superior to the existing sun code, which
loops doing non-blocking reads (barf!). 

	So if its so easy, why arn't I coding away? well, there's a few issues
here.

	-1) Do this and kiss off everything that uses the existing wmgr. I 
personally wouldn't miss it, but alot of people use that stuff (like the UA,
texview, picture, 3b1tools, even the fancy font for nethack).

	-2) There is now way that this is not a huge project. the X11R3 
distribution and contrib files is right around 100 Mb of source. The X server
is a 400Kb+ process that runs all the time. I have no idea how much of it
could be stripped out or could stay swapped out, but its still alot of
resources.

	-3) X11 is slow on a VAX, it's got to be pretty slow on a 3b1.

	-4) 740x320 is pretty small for a windowed environment.

On the plus side:

	1) I fully intend to put another 2meg in this machine as soon as I can
scrape up the bread, and with 4meg RAM, the server should run ok.

	2) there's alot of stuff available for X, like Tex and troff 
previewers, drawing programs, icons, windows with adjustable borders, 
window managers, etc.

	3) X is a great programmers interface (sure beats wrastop()). loads
of graphics primitives, neat wiget sets, etc.

	4) X is mega popular, and growing.

Notice that I did not mention networking. Its my opinion that the 3b1 is 
not a fast network machine, given the popularity (or lack of) of ethernet 
cards. I'm sure that those in possesion of such cards feel differently, but
for most of us, network means 1200-19200 baud. (nobody runs 300 baud for
anything anymore, do they?)

	I figure that stripped sources would run about 10-20 megabytes, so
the multiple drive cards make this somewhat more attractive. Anybody care to
comment on the idea?
-- 
					:alex
Alex Crain
Systems Programmer			alex@umbc3.umbc.edu
Univ Md Baltimore County		nerwin!alex@umbc3.umbc.edu (NEW DOMAIN)

pjh@mccc.UUCP (Pete Holsberg) (01/30/89)

In article <1615@umbc3.UMBC.EDU> alex@umbc3.umbc.edu.UMBC.EDU (Alex S. Crain) writes:
=	The X server could be ported to the 3b1 pretty easily. the mfb code
=is straight forward, and with the lowlevel access available, it could even
=run fast. I expand:
=

 [ stuff about x-specific coding ]

=
=	So if its so easy, why arn't I coding away? well, there's a few issues
=here.
=
=	-1) Do this and kiss off everything that uses the existing wmgr. I 
=personally wouldn't miss it, but alot of people use that stuff (like the UA,
=texview, picture, 3b1tools, even the fancy font for nethack).

I'm not too worried about losing the UA stuff.  I'd happily kiss-off all the
GSS-based graphics stuff to get a REAL windowing environment for this beast.
A point though - most of the UA routines are shell-script based, and could
probably be moved into an X-windows-based routine without too much hassle.

=
=	-2) There is now way that this is not a huge project. the X11R3 
=distribution and contrib files is right around 100 Mb of source. The X server
=is a 400Kb+ process that runs all the time. I have no idea how much of it
=could be stripped out or could stay swapped out, but its still alot of
=resources.
=

Well, you wanted to upgrade anyway, right?  Most people doing serious
things with their 3b1's are STARTING at 1 meg, with plans to go higher
anyway (is anyone making a nice simple Mem card for this machine?  I 
DONT want to piggy back stuff)

=	-3) X11 is slow on a VAX, it's got to be pretty slow on a 3b1.
=

We're used to it.

=	-4) 740x320 is pretty small for a windowed environment.

Ever run Microsoft Windows in CGA mode?  Frightening, but functional.

=
=On the plus side:
=
=	2) there's alot of stuff available for X, like Tex and troff 
=previewers, drawing programs, icons, windows with adjustable borders, 
=window managers, etc.
=

Bingo.  There's a serious lack of GOOD software for this machine (polished,
I mean).  With all the talk of 'x' floating around, we're goign to be up 
to our eyeballs in X software, with no way to run it.

=
=	I figure that stripped sources would run about 10-20 megabytes, so
=the multiple drive cards make this somewhat more attractive. Anybody care to
=comment on the idea?

I'm not an officianado of 3b1 programmers, I don't even profess to be a good
C programmer.  BUT, an X windows handler for the 3b1 would make my year.  
I'm always trying to talk myself into spending money on this machine, saying
its outdated and not keeping up.  With an X windows driver, I could sleep
easier at night.



market, e-mail me and I'll see if I can squeeze it in. 

+----------------------------------------------------------------+
| Dave Shevett   ~----------------------~    Labyrinth II BBS    |
| W. Trenton, NJ | Have you made your   | ...!mccc!labii!shevett |
| (609) 883-9352 | saving throw today?  |  --------------------  |
|   1200/2400    ~----------------------~ 3b1ish and proud of it |
+----------------------------------------------------------------+