Commit Graph

156 Commits

Author SHA1 Message Date
drochner 8996199a85 -allow the "show_screen" call to the display driver to complete
asynchronously, in the same style like the process attach/detach functions
-intercept the "cnpollc" call which originally went directly to the
 keyboard driver and keep track whether the console is in "polling" state
 (DDB!)
-pass a NULL callback to the screen switcher and the process attach/detach
 functions if the console is "polling", to tell them that asynchronous
 completion is forbidden
1999-12-06 18:52:23 +00:00
augustss 02faf8d588 Done something half sensible if a USB console keyboard is unplugged instead
of panic()ing.
XXX Untested.  I will test it the next time I can borrow an iMac.
1999-12-01 23:22:57 +00:00
augustss a9aba751e7 Make it compile even if there is no wsdisplay. 1999-12-01 11:41:46 +00:00
drochner 3bc4cec200 allow to set multiple keyboard "variants" simultanously.
Follows PR kern/8456 by Michael Eriksson <eramore@era-t.ericsson.se>,
implemented diffently.
1999-11-10 16:49:38 +00:00
augustss 9cec807b1c Return -1 from wsmux_displayioctl() if no muxes components like the ioctl(). 1999-11-08 10:10:25 +00:00
mycroft 0c1542d9a4 Apply wrstuden's stopgap change to make alpha/macppc X work without wsmux. 1999-11-08 04:48:18 +00:00
augustss 1e460723a5 Don't flag an error when doing ioctl() on a mux without any
multiplexees.  Should fix PR 8723.
1999-11-03 22:48:38 +00:00
mycroft d2b362b685 Only update the cursor state if it's enabled. 1999-11-03 15:55:27 +00:00
mycroft 02bd5fa80e Split wsdisplay_usl_ioctl() into two functions -- one which is screen-dependent
and one which isn't.  The latter is now used for ttyEcfg, enabling the
VT-switching ioctls to work on it.  (This allows Linux X servers to work when
/emul/linux/dev/tty0 is linked to /dev/ttyEcfg.)
1999-10-19 00:03:18 +00:00
jdolecek d22624c1d2 add wsdisplay_switchtoconsole() to allow other parts of kernel to force
the wscons to switch to console; code taken from wsdisplay_shutdownhook(),
which is now just a wrapper around wsdisplay_switchtoconsole()
1999-10-12 16:47:41 +00:00
ad 71639bf8a7 At shutdown, switch to screen 0 on console display so that we see some
notification from the kernel.
1999-10-01 22:29:12 +00:00
nisimura 1f50d00cc1 Add one new dispaly type for DEC TC TX 8/24bpp framebuffer. Currently acts
as an 8bpp pseudo color device.
1999-09-20 06:29:06 +00:00
jdolecek 61cf56ebf2 introduce new variable wsdisplay_defaultscreens (initialized to
WSDISPLAY_DEFAULTSCREENS or 0 if it's not defined) and use it instead
of WSDISPLAY_DEFAULTSCREENS as approptiate, so that number of screens
added on bootup is patchable

move printing of info about added screen into separate routine and
print just one message for all screens added in wsdisplay_common_attach(),
such as:
	wsdisplay0: screen 1-7 added (80x25, vt100 emulation)

while here, do minor const poisoning

Reviewed by: drochner
Tested by: jdolecek
1999-09-16 18:16:51 +00:00
nisimura 94073f1fd9 One more ioctl() fix. Most of WSDISPLAYIO_xxx were never been called when
no wsmux device is installed.
1999-08-26 06:37:42 +00:00
augustss 6516d0b239 Fix an ioctl() problem. From nisimura@itc.aist-nara.ac.jp (Toru Nishimura). 1999-08-25 21:05:21 +00:00
augustss f7c5edea20 Mention mux # when ignoring it for the console. 1999-08-16 23:22:22 +00:00
augustss 23906f1d41 defopt COMPAT_14 1999-08-14 14:40:08 +00:00
simonb 6b7eee9252 Initialise "error" in wsmux_detach_sc() before testing if it set. 1999-08-14 11:40:31 +00:00
augustss cdfc12a291 Make it possible to open wskbd devices for write (i.e. ioctl) even
if it is already open.
1999-08-07 15:04:35 +00:00
augustss fe98b81a44 Get the dependencies on NWSMUX right (I hope). 1999-08-04 11:26:04 +00:00
augustss b6b44d6809 Eliminate the need for needs-count for wsmux. This should make
wsdisplays work properly again.
1999-07-30 20:52:27 +00:00
thorpej fff1639c50 GRR! Kludge around the extremely annoying wsmux configuration lossage
by removing the "| wsdisplay" from the wsmux.c file declaration.  This
will cause any kernel which includes wsdisplay but not wsmux explicitly
to fail to link, but at least those of us with multiple wsdisplays on
a single machine can build kernels again.
1999-07-30 20:42:16 +00:00
augustss 3d3f77c49e Add the wsmux pseudo device. 1999-07-29 18:20:02 +00:00
augustss 7875415701 Add the detach and activate entry points to the cfattach struct. 1999-07-06 07:42:23 +00:00
drochner f3a6841709 make it compile if WSDISPLAY_COMPAT_RAWKBD is defined, but NWSDISPLAY not,
reported by Kazushi Marukawa <jam@pobox.com>
1999-07-01 11:18:20 +00:00
augustss dd048d428b Make it possible to detach wsmouse and wskbd.
XXX wskbd probably needs some more work.
1999-06-30 06:21:21 +00:00
christos b4bf637a41 Don't let bd.which be unitialized... Thanks Dave! 1999-05-30 21:13:04 +00:00
christos 8567d6cad0 PR/7665: Dave Sainty: X server bell pitch setting doesn't reflect reality
Applied with a little more error checking.
1999-05-30 04:21:29 +00:00
drochner 9c0c171c30 add some #ifdefs to make it link w/o wskbd
(especially for vax)
1999-05-17 16:53:43 +00:00
thorpej 8745214a3c Make this build without wsdisplay. 1999-05-16 19:21:31 +00:00
drochner b7a56e27df Get rid of the timeout-driven wscons_glue stuff which caused a lot of
headaches.
Now console keyboard and display are connected at autoconfiguration time,
when the last of them is found. Other keyboards / displays remain
unconnected until a new ioctl (WSDISPLAYIO_SETKEYBOARD) is called.
1999-05-15 14:22:46 +00:00
drochner 10584c9e73 Sort out the inclusion of wscons source files: the files are only
compiled if the corresponding devices are configured.
(Files calling wscons functions have to check whether these are present.)
1999-05-14 16:01:11 +00:00
drochner 51a0e1a705 define swedish layout and "dvorak" variant 1999-05-11 09:21:07 +00:00
ad 0a77d05407 Add ioctl definitions for setting mouse resolution, scale factor and sample
rate. Add two new display types (DEC PX, PXG). Replace instances of '???' in
comments about DEC hardware with meaningful representations.
1999-05-03 15:43:25 +00:00
mycroft 3800206dc5 Map the Home and End keys as xterm does. 1999-04-22 20:06:02 +00:00
drochner 4f0acde07b defopt WSCONS_SUPPORT_PCVTFONTS 1999-04-01 11:50:02 +00:00
drochner 1663f7072b remove a diagnostic panic in the keyboard autorepeat timeout() handler.
There is a rece condition which might trigger this but is harmless
otherwise. Leave the handler silently instead.
1999-03-27 11:22:23 +00:00
dbj 9d326d488b defopt RCONS_2BPP and RCONS_16BPP
add support for 16bpp framebuffers as found on color nexten.
1999-03-27 00:07:58 +00:00
drochner 5575305f99 If no screen got the "focus" (which happens with serial console or if
the current screen is deleted), automatically give focus to the next
screen created. Saves the need to switch to a usable screen manually.
1999-03-23 15:56:56 +00:00
sommerfe d48e548abb defopt WSDISPLAY_DEFAULTSCREENS 1999-03-22 16:50:54 +00:00
drochner 7cfac216d7 Don't initialize any virtual screens (except the system console) at
autoconfiguration time; this can be done better from rc.local.
(For INSTALL kernels, WSDISPLAY_DEFAULTSCREENS can be defined which
sets up that many screens with default parameters.)
1999-03-13 14:46:20 +00:00
drochner b241f995f0 don't erase the characters moved over on a <TAB>, a real VT100 doesn't
do this - thanks Bill Sommerfeld (PR kern/7124)
1999-03-10 19:54:52 +00:00
drochner cc294f2cc5 complete the font tables for the DEC special fonts; assign some codes
from the private Unicode area (0xe000 ff.) to stuff I didn't find in
the Unicode database
1999-02-20 18:20:02 +00:00
drochner dbdaf91650 change the "mapchar" interface to return a "quality" or "match level"
arguments which allows to find approximations for characters which are
not present in a font
1999-02-12 11:25:23 +00:00
drochner 2414f4ac80 "NEXT" is a keyboard type, not a keymap variation. 1999-02-12 11:14:49 +00:00
sommerfe 999d27da77 Don't bother copying output queue into automatic buffer; instead, pass
contiguous chunk of outq to emulation routine.  Fix based on patch
from M. Drochner, modified to call output routine once with each
contiguous chunk when the ring buffer wraps around.
1999-02-08 14:48:07 +00:00
sommerfe 95ee03319d Change WSDISPLAYBURST from OBUFSIZ-1 to OBUFSIZ*4, for a ~15x
improvement in the "cat /usr/share/misc/termcap" benchmark on 486/75

ttwrite queues data for us in OBUFSIZ chunks.  If we only consume
OBUFSIZ-1 bytes per call to wsdisplaystart(), we're *guaranteed* to
fall behind when given maximum-sized reads (which will defer
processing the leftovers until ttrstrt gets called, after a timeout)

Note that OBUFSIZ*4 may be overkill; OBUFSIZ*3 may be sufficient to
get maximal performance; OBUFSIZ*2 resulted in only about a 2.5x
performance improvement, but it's 2am and I've done enough tweaking
for the night.
1999-02-08 07:05:51 +00:00
drochner b6867c91a4 make the timeout for process/vt synchronization "config" settable and
ddb/gdb patchable
1999-01-29 22:24:24 +00:00
dbj 7919e08986 wscons based console video & keyboard support for the NeXT
from Matt DeBergalis
1999-01-28 11:46:22 +00:00
drochner a7f50b8178 Debugger() -> console_debugger() to honour the ddb_fromconsole sysctl 1999-01-26 17:08:37 +00:00