|
|
BSD 4.3tahoe
This directory, libapollo, contains the sources for the device dependent
portion of the X server. It also contains cvtfont.c, an (admittedly)
ugly program for converting X fonts to Apollo fonts. The file vssite.h
defines paths for the X fonts and for the Apollo fonts produced by
cvtfont. Note that cvtfont produces two fonts for each X font, a normal
one and an inverted one. Before trying to use any clients that procduce
text output, it is necessary to convert some fonts; 6x10, 6x13, 8x13,
9x15, vtsingle, and vtbold should be a sufficient set. (Note that
cvtfont takes the font names as above, with no suffixes/extensions.)
Since mouse button events are not affected by the shift and control keys,
the keys KBD_$LD, KBD_$LE, and KBD_$LF are mapped, respectively, to
control, shift, and meta. The key KDB_$R1 (POP) is also mapped to meta.
At some future time this will be user-modifiable; right now it's hard-wired
in events.c. Also note that with the SummaMouse, right- and left-buttons
are swapped--this will also be addressed.
Also note that the SMD quit character is changed from ^Q to KBD_$F8S
(in case X wedges sufficiently hard that you need to bail out).
No effort has been made to map most of the other "special" keys.
Most development and testing has occurred on a DN330. The server has been
run on a 3-megabyte DN300 with "acceptable" performance. It has also been
used on DN5nn color nodes, but there are still some problems with color
(e.g., cursors and cursor-masks don't work quite correctly). Also, using
bitmaps to define non-rectangular clipping regions is, in general, not
implemented (an exception are the primitives used for icon generation).
A note to gnu emacs users: gnu emacs required several changes to work
with X windows on the Apollo; we will be sending them back to FSF and
will also (probably) post them to the net, as they are not extensive.
Other future enhancements will include a "push-to-display-manager" as in
the aaa terminal emulator and configurable keys. Noted deficiencies will
be remedied as time permits.
In addition, xterm must be loaded with a version of termcap that does not
invoke the vtserver when tgetent() is called for an ansi terminal. The
standard Domain/IX termcap does display this behavior, and it causes xterm to
hang, as the vtserver is unable to acquire the display.
14c14,15
< CFLAGS = -O -DAPOLLO -DJUMPSCROLL -DMODEMENU ${INCLUDES}
---
> CFLAGS = -O -DJUMPSCROLL -DMODEMENU ${INCLUDES}
> LIBS = ../XMenu/libXMenu.a ../Xlib/libX.a
19c20
< screen.o button.o Tplot.o termcap.o
---
> screen.o button.o Tplot.o
33,34c34,35
< xterm: $(OBJS)
< $(CC) $(CFLAGS) -o xterm $(OBJS) ../XMenu/libXMenu.a ../Xlib/libX.a
---
> xterm: $(OBJS)
> $(CC) $(CFLAGS) -o xterm $(OBJS) $(LIBS) -ltermcap
37c38
< $(CC) $(CFLAGS) -o resize resize.o termcap.o -lc
---
> $(CC) $(CFLAGS) -o resize resize.o -lc -ltermcap
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.