Commit Graph

121 Commits

Author SHA1 Message Date
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
drochner
b892856647 -extend the interface for reset-like commands from the keyboard,
add handling of a "close all" command
-split out code common with wsdisplay_delscreen() into
 wsdisplay_closescreen()
-add ttymodem call to signal a HUP to the application if the screen
 is closed
-add flag to force a "clear screen" on close (XXX should actually be
 controlled from userland)
-remove checks for existence of "reset" entries in the emulations - this
 is required now
1999-01-17 15:56:33 +00:00
drochner
b465a52a35 define a "close everything" keyboard command 1999-01-17 15:47:20 +00:00
drochner
b69b2fd8f4 define a "clear screen" command to the emulator and complete the
emulation's "reset" implementations as far as useful
1999-01-17 15:44:57 +00:00
drochner
6efb3afd18 add definition for japanese keyboard 1999-01-15 16:00:33 +00:00
drochner
d90442b612 add a "reset terminal emulator" command pseudo-keysym and call the
corresponding callback if one is hit
1999-01-14 11:44:54 +00:00
drochner
624d9f505f -actually reset the terminal emulator on close()
-add a callback to reset the terminal emulator by keyboard command
1999-01-14 11:40:58 +00:00
drochner
58095dfd3b change the way fonts are handled: now we have a display-global ioctl
to download fonts and a per-screen call to select a font
allows easier sharing of ressources in the display driver
change the parameters to the load_font driver vector to pass all
available font information
1999-01-13 16:21:02 +00:00
drochner
b50830062b export functions to reset the emulator and the character mappings 1999-01-13 15:38:30 +00:00
drochner
2bfadc6a8d add a hook for resetting the terminal emulator completely or partially 1999-01-13 15:30:59 +00:00
drochner
33b1cd5328 Oops, "square root" is Unicode 221a, not 211a! 1999-01-11 20:48:10 +00:00
augustss
c437dc4229 Remove redundant test if the unit numbers is in range. 1999-01-10 18:22:14 +00:00
augustss
d47a7fb7e0 Rename the "windows" keys and add the new keys to the keyboard maps. 1999-01-10 16:56:35 +00:00
augustss
851c51418d Add definitions for Pause and Print_Screen keys.
(Why were these keys missing?  Or am I missing something obvious here?)
1999-01-10 13:20:41 +00:00
drochner
a15a03eff2 Since ukbd has an own map, this file is not needed anymore. 1999-01-10 13:20:21 +00:00
augustss
fe099e481b Add definitions for left and right "Windows" keys and menu key. 1999-01-10 13:14:42 +00:00
augustss
b2acf0b9f2 Change from bcopy/bzero to memxxx. From PR 6778 by
Erik Bertelsen <erik@q610.ebe.uni-c.dk>.
1999-01-10 00:28:21 +00:00
drochner
a2b9f1ba6e add a definition for the "swap ctl and caps" option 1999-01-09 16:18:38 +00:00
drochner
5639141200 add ioctl()s for screen allocation/deallocation 1999-01-09 15:44:45 +00:00
drochner
a541ccbcb2 rename "struct wsdisplay_conf" -> "struct wsscreen_internal" to reflect
its real meaning
support allocation and deallocation of virtual screens at runtime
implement a "control device" (minor number = 255) and ioctl()s for screen
 allocation/deallocation
minor fixes to consistency checks / error handling
1999-01-09 15:42:34 +00:00
drochner
69d3aa9606 don't install wskbdmap_mfii.h to userland 1999-01-06 12:24:51 +00:00
drochner
f8402fc0be add definition for british keyboard 1999-01-06 11:45:12 +00:00
augustss
a971be193b Add USB keyboard type. 1998-12-30 19:15:11 +00:00
augustss
503bbd973d Allow the wsmouse device to be opened for writing even if it is already
open, this way ioctl() can be performed on it and wsconsctl works.
1998-12-30 14:02:18 +00:00
augustss
44df4dcc85 Add a wscons display type `unknown' that the generic VGA driver can
return until someone fixes it for real.
1998-12-30 13:54:03 +00:00
augustss
0ae031028d Add a special wsmouse type for USB mice. 1998-12-30 13:14:21 +00:00
augustss
c9cf2c5601 Fix typo. 1998-12-28 16:41:11 +00:00
hannken
bf9e279952 Prepare for wsconsctrl:
- clean up keycode defines.
- allow easy parse of wsksymdef.h.
- add misssing KB_IT entry.
- set layout to KB_USER after ioctl WSKBDIO_SETMAP.
1998-12-28 13:48:24 +00:00
drochner
4f720cad14 make sure programs cannot write to the screen while it is in graphics mode 1998-12-15 14:25:59 +00:00
drochner
3a08ae9402 always use unsigned numbers for screen positions (for sanity - the libkern
min() et al. did unsigned comparisions before)
make ROWS_ABOVE / ROWS_BELOW return signed values, the negative results
occur if the cursor is outside the scrolling region
1998-12-04 20:48:04 +00:00