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
drochner
68aabb6d21
First cut on a VT100 emulation.
...
It should be able to parse escape sequences up to VT300, but not everything
is implemented. Most notably, there is no font handling - all displayable
characters are handed to the graphics driver. To solve this, a serious
interface change to the graphics driver is needed (Unicode?).
1998-06-20 19:17:47 +00:00
drochner
c06d6aa64a
add some more ASCII definitions, move NP->FF for consistency
1998-06-20 19:11:04 +00:00
drochner
5a3dd2249a
change initialization order to avoid a race condition if a switch is
...
performed at the same time
1998-06-16 13:31:59 +00:00
drochner
4b5822f4e4
add missing keys for vt100
1998-06-16 11:08:30 +00:00
drochner
e17c765503
prepare for VT100 emulation
1998-06-15 17:51:56 +00:00
drochner
bd3b88b6a6
Move the translation of keypad and function keys into the realm of the
...
terminal emulation. For this, change the interface to wsdisplay_kbdinput()
to take a "keysym_t" as argument. From there, the code is handed to the
appropriate emulation module via a new entry point: "translate".
Nuke the ioctls dealing with global assignment of character sequences
to keypad/function keys.
The "sun" emulation works much better now!
1998-06-15 17:48:32 +00:00
drochner
e96a163c22
#define NUL 0 -- isn't that great?
1998-06-15 17:38:39 +00:00
drochner
7560f4c5d7
Fix broken pointer arithmetic.
...
Being here, add hooks for the highly-desired-but-not-yet-done
vt100 emulation.
1998-06-15 17:10:37 +00:00
drochner
b45b8e0fc0
clean up if a controlling process exits while a switch is in progress,
...
initialize the flag used for keeping track of this
1998-06-13 14:36:32 +00:00
drochner
61edae3ba0
fix initialization in non-console case
1998-06-13 14:28:50 +00:00
cgd
651b44e211
Rework the way kernel include files are installed. In the new method,
...
as with user-land programs, include files are installed by each directory
in the tree that has includes to install. (This allows more flexibility
as to what gets installed, makes 'partial installs' easier, and gives us
more options as to which machines' includes get installed at any given
time.) The old SYS_INCLUDES={symlinks,copies} behaviours are _both_
still supported, though at least one bug in the 'symlinks' case is
fixed by this change. Include files can't be build before installation,
so directories that have includes as targets (e.g. dev/pci) have to move
those targets into a different Makefile.
1998-06-12 23:22:30 +00:00
drochner
ad793db324
access the "raw keyboard" flag inside spltty() to make sure there is
...
no screen switch in between
1998-06-12 18:15:27 +00:00
drochner
107df2472d
add options for new compatibility stuff, add wsdisplay_compat_usl.c
1998-06-11 22:16:27 +00:00
drochner
68891be537
implement a way to get raw keyboard data (for X)
1998-06-11 22:15:14 +00:00
drochner
0aa10dad6b
Add calls to process / VT synchronization functions (as provided in
...
wsdisplay_compat_usl.c).
add "sleeping ok" argument to wsdisplay_switch()
implement a way to get raw keyboard data (for X)
some cleanup
1998-06-11 22:13:52 +00:00
drochner
95ce034ada
add "sleeping ok" argument to wsdisplay_switch()
...
implement a way to get raw keyboard data (for X)
1998-06-11 22:08:57 +00:00
drochner
c90fa98f4a
add "sleeping ok" argument to wsdisplay_switch()
1998-06-11 22:03:15 +00:00
drochner
8fb1d35ab5
Implement the VT access and keyboard control ioctl()s needed for
...
compatibility to PCVT, syscons and the Linux console.
1998-06-11 22:00:04 +00:00
thorpej
5bc2217a49
Nuke __BROKEN_INDIRECT_CONFIG.
1998-06-09 07:24:55 +00:00
drochner
f5482453a0
fix "Cursor Next Line (CNL)" (did the opposite)
1998-05-24 10:56:16 +00:00
thorpej
492ee1399e
Make it possible to build a kernel with a wscons display device but not
...
a wscons keyboard device.
1998-05-23 01:06:36 +00:00
drochner
e1f67ace67
Initialize the "curattr" member of the emulation data in early console
...
setup -- it is used to fill empty space.
Fixes 2/3 of PR kern/5457 (Jason Thorpe).
1998-05-19 18:47:13 +00:00
drochner
95bdb660ed
Simple screen attribute handling for wscons.
...
The graphics device driver passes a "default attribute" for normal text
output to the wscons framework. If the emulation module needs more
attributes (for different "renditions") it can allocate them via a
callback.
For now, only the "sun" emulation makes use of it.
1998-05-14 20:49:55 +00:00
hannken
3cdf7f6607
Undo change from drochner (Rev 1.4 of wsksymdef.h) and fix PR #5298 and #5299 .
1998-04-20 10:47:36 +00:00
drochner
fb43bb5f19
Add danish keymap.
...
From Soren S. Jorvang (PR kern/5312).
1998-04-18 10:57:13 +00:00
drochner
302692bf8d
Namespace protection: give key description table a more private name.
1998-04-18 09:51:20 +00:00
thorpej
085787ddbe
defopt the WSEMUL options.
1998-04-17 00:17:27 +00:00
drochner
10860a27c6
Don't use KS_GROUP_xxx values which have set something in the lower
...
8 bits. This allows to OR them with keycodes.
This is probably a workaround for namespace confusion happening else-
where (in wskbdutil.c:ksym_upcase() perhaps?), but it helps without
too much digging into the details.
1998-04-16 13:29:41 +00:00
drochner
ca0d504418
some attributes are now global
1998-04-15 20:29:16 +00:00
hannken
30244f4eb7
Forgot to initialize sc->ioctl. From Matthias Drochner.
1998-04-09 17:16:57 +00:00
hannken
311e30018d
Split wscons/wskbd.c's softc into a static and a nonstatic part.
...
Booting into debugger (-d) now works.
Cleaned wscons/wskbdvar.h. Use the same attach arguments for
console and normal keyboards.
1998-04-09 13:09:45 +00:00
drochner
ec9776e3ab
Fix calculation of console minor device number.
...
Being here, remove BROKEN_INDIRECT_CONFIG.
1998-04-07 16:06:33 +00:00
hannken
244266226c
Fix typo.
1998-04-07 13:59:38 +00:00
hannken
47e698143a
Oops. Forgot RCS ident and copyright.
1998-04-07 13:57:56 +00:00
hannken
64f1bb73d6
Initial import of MI keyboard translation for dev/wscons.
1998-04-07 13:43:16 +00:00
drochner
46f85eeab2
let all 8 bits go through
1998-03-27 18:26:22 +00:00
drochner
cbff98f7ff
fix max() vs min() confusion at 2 places
1998-03-27 18:22:36 +00:00
drochner
b31e63865f
Initial import of cgd's new wscons code.
1998-03-22 14:24:02 +00:00