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
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
drochner
bdb85f9116
add definition for french keyboard
1998-10-03 11:59:44 +00:00
drochner
1eda36523a
Add option bit which covers the delta between LK201 and LK401.
1998-09-17 18:16:39 +00:00
drochner
fdfd53e5af
Add end mark to list of keymaps.
...
XXX This file will be removed, it is only left until the USB driver
XXX got an own keymap.
1998-09-17 18:14:06 +00:00
drochner
ec9b2072bb
Reorganize the list of keyboard maps: no explicite length counter, use
...
an end mark instead. This allows to keep keymaps separate from the drivers
referring to them.
1998-09-17 18:10:53 +00:00
drochner
1a9e20e98c
Define a new keyboard eveny type "all keys up". This allows to reduce
...
the amount of statekeeping in drivers for LK201-like keyboards, and it
might be useful to resync after resets or overflows.
(reused the unused WSCONS_EVENT_KEY_OTHER event ID)
Implement the necessary decoding bits.
1998-09-17 18:05:43 +00:00
drochner
a442e328e7
-add italian layout, from Dante Profeta <dante@mclink.it>
...
-name pckbd_keydesc_declk -> pckbd_keydesc_us_declk for consistency
1998-09-01 18:11:13 +00:00
drochner
9d3ed7d925
add definition for italian keyboard
1998-09-01 18:09:27 +00:00
thorpej
ff266f0937
Add some braces to make egcs happy.
1998-08-18 18:23:07 +00:00
eeh
a2dd74ed79
Merge paddr_t changes into the main branch.
1998-08-13 02:10:37 +00:00
drochner
3292aee22b
Separate special character handling from normal output so that they
...
are obeyed even during an escape sequence.
This is how the original VT100 behaves.
1998-08-12 20:09:47 +00:00
drochner
8e12b6c020
stricter parameter check for scrolling regions
...
(PR kern/5954 by Dave Huang <khym@bga.com>)
1998-08-12 20:04:12 +00:00
drochner
4ee71fe4f4
Split the wskbd_attach arguments into console and autoconfiguration parts
...
(again); put some constant data into shared structures. This makes it
more look like the mouse part, and it helps USB integration.
Implement wskbd_enable() to enable/disable the keyboard.
1998-08-02 14:18:07 +00:00
augustss
0733d4c87f
Do locator related defines using defines from locators.h rather
...
than literal constants.
1998-07-28 22:01:24 +00:00
drochner
87ad9bca7a
add third axis for pointing devices (flying mice)
1998-07-27 22:33:22 +00:00
drochner
1e737a4010
add definition for pointing device's absolute z coordinates
1998-07-27 18:17:08 +00:00
drochner
e6f2ea1f40
define a z axis for pointing devices which support this
1998-07-27 16:59:22 +00:00
augustss
7c50ea1e65
Insert lots of ``#if NWSMOUSE > 0'' and ``#if NWSDISPLAY > 0'' to make it
...
possible to have a wsmouse and/or wskbd without having a wsdisplay.
1998-07-25 20:02:20 +00:00
drochner
56a5adfaff
Switch keyboard to "event mode" on open.
...
Nuke wskbd_set_translation(). It doesn't fit into the "screen" model.
1998-07-23 14:33:01 +00:00
drochner
dc08679458
Fix ioctl definitions for WSKBDIO_{SET,GET}LEDS.
...
from Takuya Koumoto <takuya-k@is.aist-nara.ac.jp>
1998-07-21 09:17:33 +00:00
drochner
9d504aa676
rename "LK" -> "declk" for consistency
1998-07-15 14:06:34 +00:00
drochner
37040ed809
support keyboards with PC interface and DEC layout (LK461)
1998-07-14 19:33:58 +00:00
drochner
bfd46dadad
fix codes delivered by "Help" and "Do" keys
1998-07-14 19:32:17 +00:00
jonathan
3472ba67bb
* defopt COMPAT_{09,10,11,12,13} and COMPAT_NOMID (from unsaved buffers).
...
TODO: revisit interaction between native compat and emul compat usage.
1998-07-05 18:27:18 +00:00
jonathan
466e784ee1
defopt DDB.
1998-07-04 22:18:13 +00:00
drochner
02e2e73771
fix VT300 tab stop report format
1998-06-29 21:14:40 +00:00
drochner
406be71827
don't set a tabstop in column 1
1998-06-29 21:10:53 +00:00
drochner
bcb927f8e9
fix gcc unused variable warning
...
From Matthias Scheler <tron@lyssa.owl.de>.
1998-06-29 14:04:27 +00:00
drochner
158d2cdd40
Fix initialization in console case: use the paramerters which were passed
...
in the cninit() call - the new ones are not useful.
1998-06-26 22:35:27 +00:00
drochner
bbb4f765cc
Improvements to the VT100 emulation:
...
-display DEC special graphics and DEC technical characters as far as
possible
-implement the font switching controls (need documentation!)
-behave well if double-width characters are requested
-simplify the state machine: store CSI command modifiers in variables
instead of dedicating own states to each of them
1998-06-26 21:20:34 +00:00
drochner
3320e0727b
add dummy character mapping function
1998-06-26 21:12:49 +00:00
drochner
9260b705a5
define a "mapping" function which can be used by the emulation module
...
to display non-ASCII characters
1998-06-26 21:10:52 +00:00
thorpej
1a2cb1b9d4
defopt COMPAT_FREEBSD
1998-06-25 22:49:18 +00:00
drochner
d3e8687b47
Change the calling interface for text output (to the graphics driver)
...
to take a single character at a time, where the character is an "int" now.
The old interface (took a string) was never called with more than 1
char to print, and the "int" allows us to handle charsets cleanly.
1998-06-20 21:52:49 +00:00