Commit Graph

350 Commits

Author SHA1 Message Date
augustss b609967aa7 Don't enable/disable kbds that belong to a display; they are always enabled. 2001-10-27 00:35:48 +00:00
augustss 48673c604a Having a display does not preclude the mux from being open. 2001-10-27 00:34:57 +00:00
augustss 49c2ea7a87 Compare against coreect value to determine if we belong to a mux. 2001-10-26 20:48:47 +00:00
augustss eadca0dfa3 Remove TODO list. 2001-10-26 20:45:05 +00:00
augustss a5d3f7530d Small rearrangement and more error checking. 2001-10-26 20:36:27 +00:00
augustss 6d55fe438e Change a debug message. 2001-10-26 20:35:55 +00:00
augustss 59121d58f5 Change back to have a wseventvar in the softc for event sources. This
way the effect of FIOASYNC survives close()/open().  Later versions
of XFree86 relies on this bug/feature.
Also add some more debug stuff.
2001-10-25 14:46:41 +00:00
shin a9df6b6421 make this compile without WSDISPLAY_COMPAT_RAWKBD. 2001-10-25 13:19:41 +00:00
augustss 9e06709975 Clear wskbd_console_device when console keyboard is detached. 2001-10-24 15:44:50 +00:00
augustss 2f1f0a1702 Major rototilling of the wsmux code. No user visible changes (except that
many bugs have been fixed).
Changes:
The wskbd, wsmouse, and wsmux are now "sub-classes" of wsevsrc, which is
a source of ws events.  This make the structure of those drivers a little
more uniform.
Many bug fixes involving adding and removing devices from muxes.
When a kernel is configured without wsmux there will now be none (unlike
before where you got a console mux anyway).
The kernel now compiles with all combinations of ws devices present.
2001-10-24 14:07:31 +00:00
jmc 97deb18c10 Wrap ifdef's cleaner so wsmouse_[add|rem]_mux only get pulled in if NWSMUX > 0. 2001-10-21 23:04:57 +00:00
augustss 3527006336 Don't use wsmux_getmux() if we NWSMUX == 0. Fixes PR kern/14252.
This is only a stop gap measure until the real wsmux changed get in.
2001-10-15 21:51:33 +00:00
veego 8d71019a14 Fix a pasto in the last revision. 2001-10-14 21:49:00 +00:00
augustss 5da06efad4 Allow for control devices (minor+128) to make it possible to manipulate
muxes that are in use.
Create muxes on demand.
2001-10-13 20:03:38 +00:00
augustss ad74203973 Fix a pasto. 2001-10-13 19:58:35 +00:00
augustss 2efffa7ad7 Fix a (very old) pasto. 2001-10-13 19:56:09 +00:00
augustss 04b1440239 Use memset(), not bzero(). 2001-10-13 15:59:01 +00:00
augustss 82e5e6ab85 ANSIfy. 2001-10-13 15:56:15 +00:00
augustss d701e45c14 Two changes to the wsmux code:
* Allow the wsmux used by wsdisplay for the keyboard(s) to be explicitely
  specified with the kbdmux locator.
* Allow keyboards and mice that have a mux to be opened in the regular way.
These changes should be totally backwards compatible.
2001-10-13 13:35:59 +00:00
eeh 7fbd726cc8 Stop wscons from conflicting with rcons. 2001-10-05 22:08:28 +00:00
mycroft 5f1dd50365 Add a WSKBD_TYPE_ADB for Macs. 2001-10-02 21:03:05 +00:00
matthias da7395fac9 wskbd_rawinput: check sc->sc_displaydv before calling wsdisplay_kbdinput. 2001-09-26 15:13:23 +00:00
ad 21787ea4c6 Get/set keyclick volume. 2001-09-18 23:25:25 +00:00
drochner f2d93c6685 add encoding for ISO-2 2001-09-04 17:57:16 +00:00
jdolecek 57a49a2de0 introduce hard limit on maximum font size (WSDISPLAY_MAXFONTSZ - 512KB)
and keymap size (WSKBDIO_MAXMAPLEN - 64KB)
2001-08-05 11:26:52 +00:00
lukem d84d2c6c85 add missing #include "opt_kgdb.h" 2001-05-30 15:24:23 +00:00
mrg c13e3a6693 use _KERNEL_OPT 2001-05-30 11:40:35 +00:00
drochner 3df4a7a4a8 do this console device lookup thing the right way this time
(This "dev" argument to the console functions is nonsense - nothing
should depend on it.)
2001-05-18 11:49:21 +00:00
lukem e3134697e1 delint: remove comments from macro args; confuses cpp/lint 2001-05-15 15:06:23 +00:00
scw 2963ff5c58 Add `l_poll' to `struct linesw' and provide an xxxpoll() entry point
in each tty driver to indirect through it.

This allows tty line-disciplines to handle poll(2) system calls.
2001-05-02 10:32:08 +00:00
jdolecek 745ab257dc Put back all header files defining ioctls 2001-04-11 19:07:36 +00:00
tsutsui 42e44c1408 Make Sony's fonts ISO8859-1 compliant. 2001-03-30 13:06:45 +00:00
lukem b240b7a4e1 #ifdef KGDB, call kgdb_connect(1) if KS_Cmd_Debugger (a la ddb invoking
console_debugger() in the same situation).
this makes it easier to get remote kgdb going if you forget to use boot -d.
2001-03-23 04:22:36 +00:00
reinoud d7858fb571 Add RiscPC (arm32) keyboard. It basicly returns AT scancodes but since it has to
use a seperate keyboard driver (pckbdc not available) i cant guarantee that it is
100% compatible with AT scan codes
2001-03-20 15:51:18 +00:00
lukem 3aeb5f2f29 whitespace police 2001-02-24 01:59:46 +00:00
cgd 023e9f0649 C requires that labels be followed by statements. 2001-02-24 00:01:22 +00:00
jdolecek aceb9e23c9 don't panic if there is ESC in kernel output, just print a warning and
ignore the ESC; also remove the #ifdef DIAGNOSTIC
2001-02-21 23:12:58 +00:00
bjh21 3cbd9caea7 Fix an uninitialised variable which could have caused corruption of the user
button state (and hence spurious mouse clicks) if the event queue filled
up.
2001-02-13 01:14:45 +00:00
marcus 24f268a691 Added a fontencoding for the Sony fonts. 2001-02-02 05:58:04 +00:00
thorpej bd8c908512 Add a display type for the Dreamcast PowerVR. 2001-02-01 17:53:12 +00:00
jdolecek 34c8ae80da constify 2001-01-18 20:28:15 +00:00
takemura 757dca55b7 These ioctl commands should be '_IOW' to set value.
WSMOUSEIO_SRES
  WSMOUSEIO_SSCALE
  WSMOUSEIO_SRATE
2001-01-08 11:20:24 +00:00
enami 25481ad786 Redo previous; we need to notify kbd driver. 2001-01-04 01:33:37 +00:00
enami 62a4aefda9 Avoid null pointer dereference so that boot -d works again. 2001-01-03 23:03:45 +00:00
enami 7eab063a4f Use device_lookup. 2001-01-03 23:00:24 +00:00
sato a2fe1adf2a for calling sc->sc_acessops->pollc,
use wsdisplay_cd.cd_devs[unit] in accessing wsdisplay_softc
instead of casting pointer.
XXX: i compiled it in i386, hpcmips, alpha.
2000-12-30 05:38:50 +00:00
mjacob e5482757b5 Fix at least alpha kernel builds. You can't pun a pointer to a dev_t on
alpha. This is also a bad idea. I really don't know the ws code at all
or I would just fix the whole issue.
2000-12-30 02:58:42 +00:00
sato 9785bf0526 notify console polling mode or not to lower level framebuffer driver.
notify EMUL mode or not to lower level framebuffer driver.
these may use framebuffer level hardware acceleration/software optimization.
2000-12-30 01:41:51 +00:00
drochner 2d8bb6f643 add some missing definitions for hungarian keymap support
(It won't help much since there is no way to get characters not in
iso-1 or the function key set through the vt100/sun/dumb terminal
emulations:-(
2000-12-05 17:53:46 +00:00
ad 7433fb33e8 In wsdisplay_switchtoconsole(), ensure that the switch happens
synchronously. Suggested by drochner.
2000-12-04 13:22:17 +00:00
simonb d76cf8b502 Add multiple include detection - all userland installed headers are now
safe.
2000-11-26 06:03:24 +00:00
eeh 507aaec04c Adapt to the new line discipline scheme. 2000-11-02 00:01:44 +00:00
simonb 25f61791dd Only install wsconsio.h, wsdisplay_usl_io.h, wsksymdef.h and wsksymvar.h
into /usr/include/dev/wscons.
2000-10-20 05:32:47 +00:00
mjl 2898929f94 Revert previous since the finnish keymap is already present under
the name "sv". Note to myself: Read PRs completely before acting.
Note to Santa Claus: I want a mailing list that carries all follow
ups to PRs!
2000-10-13 12:53:23 +00:00
mjl 38fd6528ac Add finnish keymap, from Heikki Kallasjoki in PR/11186. 2000-10-12 12:41:22 +00:00
takemura dcfcbaf8ae - Add ioctl commands to wsdisplay which set/get some LCD status,
backlight, brightness and contrast.
- Add 9 command key symbols which make wskbd to call wsdisplay's
  iocontrol.
- Add special key map variant KB_MACHDEP. This variant does not
  have any real keymap but it's just a placeholder for machine dependent
  maps which will be overwrite by machine dependent keyboard driver.
2000-10-01 03:29:12 +00:00
drochner 8d027cedf8 add definitions for ISO-7 (greek) support 2000-09-15 14:09:10 +00:00
lukem 6439b28202 * rename vga_stdscreen* -> vga_25lscreen*
* in vga_init(), set the screen type to WSCONS_DEFAULT_TYPE, which defaults
  to "80x25".
    XXX: the code currently makes no attempt to ensure that a font
	 with the appropriate width & height is available, effectively
	 limiting this default to either "80x25" or "80x24" at this
	 time.
* make wsdisplay_screentype_pick() non static, so that vga_init() can use it
2000-09-10 11:44:13 +00:00
simonb 7381ac703b KNF - variable declarations. 2000-09-10 10:43:53 +00:00
takemura ed9f910cc8 Introduce WSDISPLAY_NULLSCREEN to allow low level device to detach control
process. Hpcmips frame buffer driver(hpcfb) call wsdisplay_switch with
WSDISPLAY_NULLSCREEN to notify user process of suspend/resume event.
2000-09-10 09:39:57 +00:00
simonb 665eca96e0 In wsdisplay_usl_ioctl2(), use a u_long for the request to be passed off
to wsdisplay_internal_ioctl() instead of an int.
With this, the pcvt compat ioctl's work on an Alpha and probably other
64 bit archs.
2000-09-08 15:32:57 +00:00
hannken c8793c3d7e Change type `kbd_t' from `u_int_16_t' to `u_int32_t'.
This eliminates bogus casts from `int *' to `u_int_16_t*'.
2000-07-06 16:29:49 +00:00
simonb 889c658b5b Change the kernel mmap interface so that the offset to map is an
"off_t" and the return value is a "paddr_t" to allow mappings
at offsets past 2^31 bytes.  Somewhat inspired by FreeBSD, which
only changed the offset to a "vm_offset_t".

Includes updates for the i386, pc532 and sh3 mmmmap from Jason Thorpe.
2000-06-26 04:55:19 +00:00
drochner 7b82c5ef6c add EGA display type 2000-06-09 16:07:55 +00:00
matt 2c336f1de3 Add VAX display types along with the SPARCbook P9100. 2000-06-02 23:45:13 +00:00
takemura 5b3cb6b1a1 Add async I/O support.
FIOASYNC ioctrl command had been forwarded from wsmux to each mouse devices
and the devices had set their own event queue async mode. But no one had took
care of the event queue's mode of wsmux itself. Wsmux should make it's own
event queue async mode when it receive FIOASYNC command.
2000-05-28 10:33:14 +00:00
drochner 4a523cfe34 define spanish keymap 2000-05-19 16:39:15 +00:00
bjh21 9d61165c26 Oops. Swedish is KB_SV. 2000-05-13 14:40:10 +00:00
bjh21 83d50760d8 Add keypad-# and Swedish layout 2000-05-13 12:16:35 +00:00
bjh21 5d05bf7a7a Add Archimedes mouse/kbd/video 2000-05-13 12:13:45 +00:00
takemura 7d3231b37a Mouse move event should be made before mouse bown event. Without that,
you may got a mouse down event in strange plase.
2000-05-01 07:36:58 +00:00
mycroft 73ac8c709b Add a concept of the `background attribute'. This is the same as the
current attribute, but has all non-color flags turned off.  Use this when
doing erasure, as this allows us to optimize repainting in curses.

XXX The way the default attribute is handled is totally bogus and needs to
be fixed.
2000-04-28 21:56:16 +00:00
tsarna 501c07e5d4 Add an "iopener" keymap variant, giving us.iopener and
us.iopener.swapctrlcaps.  This makes F1 ("Back") into Escape, and shifts
the other keys over by one, so F2-F12 ("Forward"-"Home") become F1-F11.
2000-04-14 23:11:08 +00:00
augustss 169ac5b3c1 Remove register declarations. 2000-03-30 12:41:09 +00:00
thorpej fc96443d15 New callout mechanism with two major improvements over the old
timeout()/untimeout() API:
- Clients supply callout handle storage, thus eliminating problems of
  resource allocation.
- Insertion and removal of callouts is constant time, important as
  this facility is used quite a lot in the kernel.

The old timeout()/untimeout() API has been removed from the kernel.
2000-03-23 07:01:25 +00:00
tsarna 893f3574fb Make clearer. IMHO, all of this code should stop referring to Control-L
and Control-R, since those suggest ^L and ^R, not Left and Right Control.
2000-03-19 06:31:17 +00:00
tsarna 4f2a934e05 Correct a comment 2000-03-19 06:24:52 +00:00
sato 035f58c823 HPC/PsPC keyboard types. 2000-03-13 01:46:44 +00:00
takemura 058d87a788 Add a new frame buffer identifier for the hpcmips. 2000-03-12 04:59:24 +00:00
thorpej da4dc67d3e Add cnbell() support. 2000-03-06 21:37:16 +00:00
soren d610ec4cb0 Add Norwegian keymap from Haavard Lygre. 2000-03-05 08:56:53 +00:00
takemura 32817a3257 WSMOUSE_SCALIBCOORDS had not worked because ioctrl code was wrong. 2000-02-28 12:34:31 +00:00
mycroft 2fd2b78c1f Only call the cursor method when the cursor state is actually changing.
This avoid corrupting VGA displays in text mode (e.g. the first character
of the prompt when you exit vi).
2000-02-25 17:42:51 +00:00
drochner dadc2bc21d pass raw keyboard data unsigned to avoid sign extension 2000-01-22 15:09:00 +00:00
deberg 4cf19b07ea add the NeXT mouse type 2000-01-18 19:52:50 +00:00
takemura ba04c55ed3 Absolute pointing device support.
- Wsmouse_input() get new argument 'flag', which indicates whether x/y/z are
   relative or absolute.
 - Wsmouse get new io controls, WSMOUSEIO_SCALIBCOORDS and
   WSMOUSEIO_GCALIBCOORDS.
2000-01-08 02:57:22 +00:00
enami fa8c26f547 Don't define WSDISPLAY_FONTORDER_L2R as 0. The function wsfont_lock uses
the value 0 specially.
2000-01-07 03:13:23 +00:00
ad 2794212f20 Got too excited with cut and paste in previous. Noted by itojun. 2000-01-06 11:38:02 +00:00
ad 59a1ab9791 Add two new members to 'struct wsdisplay_font': 'bitorder' and 'byteorder'. 2000-01-05 18:44:21 +00:00
drochner b32647d4ea replace embedded _rcsid[] string by __KERNEL_RCSID(), remove _copyright[] 2000-01-05 11:19:36 +00:00
drochner caaf1beab2 change decoding function to return multiple symbols per keypress
(through the "internal" structure), derive a METAESC flag from the
layout variant and translate ALT-<key> into ESC <key> if the flag is set
1999-12-21 12:02:04 +00:00
drochner 54e8bcd294 add a symbol for keyboard variant bits which are not handled by the
mapping code
1999-12-21 11:59:13 +00:00
drochner fc4003355e introduce a METAESC keyboard variant bit 1999-12-21 11:57:59 +00:00
scottr 51fc367157 defopt RCONS_4BPP. 1999-12-12 08:17:28 +00:00
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
drochner 309847b355 improve error handling in 2 cases:
1. If the current screen becomes invalid (ie no focus anymore), always
   set the keyboard to translating mode. Otherwise, we could get stuck
   because the command keystokes don't come through.
2. Catch errors in attaching to a process (X server) - For this,
   implement a callback mechanism similar to the detach case. Add an
   argument to report an errno via callback.
1999-01-26 14:22:14 +00:00
drochner be7c382051 forgot to commit last week: define wsmouse type constants for busmice 1999-01-26 13:43:00 +00:00
drochner 428461ab21 add definitions for the additional modifiers on japanese keyboards
(These are not of use for wscons, but we want to give names to the keys
at least.)
1999-01-23 16:59:22 +00:00
drochner a1038a18af remove wsdisplay_has_emulator(), this is not meaningful with virtual screens,
and it did not work with external (serial) consoles what can cause that
a display has no screen and thus no "focus"
1999-01-18 20:03:59 +00:00
drochner 6424072ccd extend the interface for reset-like commands from the keyboard 1999-01-17 16:01:38 +00:00
drochner 3bc0bad0af adapt to "reset" interface change, pass "close all" to wsdisplay 1999-01-17 15:59:17 +00:00