Bring pcvt console driver into the tree - now users can chose whichever
console driver they like best (2 is ok, it was 4 that was a little insane for awhile there! :-). Submitted by: hm
This commit is contained in:
parent
4530be5246
commit
b19f21cf89
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=6194
473
sys/i386/isa/pcvt/pcvt_conf.h
Normal file
473
sys/i386/isa/pcvt/pcvt_conf.h
Normal file
@ -0,0 +1,473 @@
|
||||
/*
|
||||
* Copyright (c) 1992, 1995 Hellmuth Michaelis and Joerg Wunsch.
|
||||
*
|
||||
* Copyright (c) 1992, 1994 Brian Dunford-Shore.
|
||||
*
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
* 3. All advertising materials mentioning features or use of this software
|
||||
* must display the following acknowledgement:
|
||||
* This product includes software developed by
|
||||
* Hellmuth Michaelis, Brian Dunford-Shore and Joerg Wunsch.
|
||||
* 4. The name authors may not be used to endorse or promote products
|
||||
* derived from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE AUTHORS ``AS IS'' AND ANY EXPRESS OR
|
||||
* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||
* IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
*
|
||||
* @(#)pcvt_conf.h, 3.20, Last Edit-Date: [Wed Jan 11 09:20:27 1995]
|
||||
*
|
||||
*/
|
||||
|
||||
/*---------------------------------------------------------------------------
|
||||
*
|
||||
* pcvt_conf.h VT220 driver global configuration file
|
||||
* ------------------------------------------------------
|
||||
* -hm introduced pcvt_conf.h
|
||||
* -hm re-integrated selfconfiguration for NetBSD from Onno
|
||||
* -hm patch from Onno for NetBSD-current
|
||||
*
|
||||
*---------------------------------------------------------------------------*/
|
||||
|
||||
/*---------------------------------------------------------------------------
|
||||
*
|
||||
* from: Onno van der Linden c/o vdlinden@fwi.uva.nl
|
||||
*
|
||||
* Here's an idea how to automatically detect the version of NetBSD pcvt is
|
||||
* being compiled on:
|
||||
*
|
||||
* NetBSD 0.8 : NetBSD0_8 defined in <sys/param.h>
|
||||
* NetBSD 0.9 : NetBSD0_9 defined in <sys/param.h>
|
||||
* NetBSD 1.0 : NetBSD1_0 defined as 1 in <sys/param.h>
|
||||
* NetBSD 1.0A: NetBSD1_0 defined as 2 in <sys/param.h>
|
||||
*
|
||||
* The NetBSDx_y defines are mutual exclusive.
|
||||
*
|
||||
* This leads to something like this in pcvt_hdr.h (#elif is possible too):
|
||||
*
|
||||
*---------------------------------------------------------------------------*/
|
||||
|
||||
#ifdef NetBSD0_8
|
||||
#define PCVT_NETBSD 8
|
||||
#endif
|
||||
|
||||
#ifdef NetBSD0_9
|
||||
#define PCVT_NETBSD 9
|
||||
#endif
|
||||
|
||||
#ifdef NetBSD1_0
|
||||
#if NetBSD1_0 > 1
|
||||
#define PCVT_NETBSD 199
|
||||
#else
|
||||
#define PCVT_NETBSD 100
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/*---------------------------------------------------------------------------
|
||||
* Note that each of the options below should rather be overriden by the
|
||||
* kernel config file instead of this .h file - this allows for different
|
||||
* definitions in different kernels compiled at the same machine
|
||||
*
|
||||
* The convention is as follows:
|
||||
*
|
||||
* options "PCVT_FOO=1" - enables the option
|
||||
* options "PCVT_FOO" - is a synonym for the above
|
||||
* options "PCVT_FOO=0" - disables the option
|
||||
*
|
||||
* omitting an option defaults to what is shown below
|
||||
*
|
||||
* exceptions from this rule are i.e.:
|
||||
*
|
||||
* options "PCVT_NSCREENS=x"
|
||||
* options "PCVT_SCANSET=x"
|
||||
* options "PCVT_UPDATEFAST=x"
|
||||
* options "PCVT_UPDATESLOW=x"
|
||||
* options "PCVT_SYSBEEPF=x"
|
||||
*
|
||||
* which are always numeric!
|
||||
*---------------------------------------------------------------------------*/
|
||||
|
||||
/* -------------------------------------------------------------------- */
|
||||
/* -------------------- OPERATING SYSTEM ------------------------------ */
|
||||
/* -------------------------------------------------------------------- */
|
||||
|
||||
/*
|
||||
* one of the following options must be set in the kernel config file:
|
||||
*
|
||||
*======================================================================*
|
||||
* N e t B S D *
|
||||
*======================================================================*
|
||||
*
|
||||
* options "PCVT_NETBSD=xxx" enables support for NetBSD
|
||||
*
|
||||
* select:
|
||||
* PCVT_NETBSD = 9 for NetBSD 0.9
|
||||
* PCVT_NETBSD = 99 for PRE-1.0 NetBSD-current
|
||||
* PCVT_NETBSD = 100 for NetBSD 1.0
|
||||
* PCVT_NETBSD = 199 for PRE-2.0 NetBSD-current
|
||||
*
|
||||
*
|
||||
*======================================================================*
|
||||
* F r e e B S D *
|
||||
*======================================================================*
|
||||
*
|
||||
* options "PCVT_FREEBSD=xxx" enables support for FreeBSD
|
||||
*
|
||||
* select:
|
||||
* PCVT_FREEBSD = 102 for 1.0 release (actually 1.0.2)
|
||||
* PCVT_FREEBSD = 110 for FreeBSD 1.1-Release
|
||||
* PCVT_FREEBSD = 115 for FreeBSD 1.1.5.1-Release
|
||||
* PCVT_FREEBSD = 200 for FreeBSD 2.0-Release
|
||||
* PCVT_FREEBSD = 299 for PRE-3.0 FreeBSD-current
|
||||
*
|
||||
*======================================================================*
|
||||
* 3 8 6 B S D *
|
||||
*======================================================================*
|
||||
*
|
||||
* options "PCVT_386BSD" enables support for 386BSD + pk 0.2.4
|
||||
*
|
||||
*/
|
||||
|
||||
/* -------------------------------------------------------------------- */
|
||||
/* ---------------- USER PREFERENCE DRIVER OPTIONS -------------------- */
|
||||
/* -------------------------------------------------------------------- */
|
||||
|
||||
/*----------------------------------------------------------------------*/
|
||||
/* NOTE: if FAT_CURSOR is defined, a block cursor is used instead of */
|
||||
/* the cursor shape we got from the BIOS, see pcvt_out.c */
|
||||
/*----------------------------------------------------------------------*/
|
||||
|
||||
#if !defined PCVT_NSCREENS /* ---------- DEFAULT: 8 -------------- */
|
||||
# define PCVT_NSCREENS 8 /* this option defines how many virtual */
|
||||
#endif /* screens you want to have in your */
|
||||
/* system. each screen allocates memory,*/
|
||||
/* so you can't have an unlimited num- */
|
||||
/* ber...; the value is intented to be */
|
||||
/* compile-time overridable by a config */
|
||||
/* options "PCVT_NSCREENS=x" line */
|
||||
|
||||
#if !defined PCVT_VT220KEYB /* ---------- DEFAULT: OFF ------------ */
|
||||
# define PCVT_VT220KEYB 0 /* this compiles a more vt220-like */
|
||||
#elif PCVT_VT220KEYB != 0 /* keyboardlayout as described in the */
|
||||
# undef PCVT_VT220KEYB /* file Keyboard.VT220. */
|
||||
# define PCVT_VT220KEYB 1 /* if undefined, a more HP-like */
|
||||
#endif /* keyboardlayout is compiled */
|
||||
/* try to find out what YOU like ! */
|
||||
|
||||
#if !defined PCVT_SCREENSAVER /* ---------- DEFAULT: ON ------------- */
|
||||
# define PCVT_SCREENSAVER 1 /* enable screen saver feature - this */
|
||||
#elif PCVT_SCREENSAVER != 0 /* just blanks the display screen. */
|
||||
# undef PCVT_SCREENSAVER /* see PCVT_PRETTYSCRNS below ... */
|
||||
# define PCVT_SCREENSAVER 1
|
||||
#endif
|
||||
|
||||
#if !defined PCVT_PRETTYSCRNS /* ---------- DEFAULT: OFF ------------ */
|
||||
# define PCVT_PRETTYSCRNS 0 /* for the cost of some microseconds of */
|
||||
#elif PCVT_PRETTYSCRNS != 0 /* cpu time this adds a more "pretty" */
|
||||
# undef PCVT_PRETTYSCRNS /* version to the screensaver, an "*" */
|
||||
# define PCVT_PRETTYSCRNS 1 /* in random locations of the display. */
|
||||
#endif /* NOTE: this should not be defined if */
|
||||
/* you have an energy-saving monitor */
|
||||
/* which turns off the display if its */
|
||||
/* black !!!!!! */
|
||||
|
||||
#if !defined PCVT_CTRL_ALT_DEL /* ---------- DEFAULT: OFF ------------ */
|
||||
# define PCVT_CTRL_ALT_DEL 0 /* this enables the execution of a cpu */
|
||||
#elif PCVT_CTRL_ALT_DEL != 0 /* reset by pressing the CTRL, ALT and */
|
||||
# undef PCVT_CTRL_ALT_DEL /* DEL keys simultanously. Because this */
|
||||
# define PCVT_CTRL_ALT_DEL 1 /* is a feature of an ancient simple */
|
||||
#endif /* bootstrap loader, it does not belong */
|
||||
/* into modern operating systems and */
|
||||
/* was commented out by default ... */
|
||||
|
||||
#if !defined PCVT_KBD_FIFO /* ---------- DEFAULT: ON ------------- */
|
||||
# define PCVT_KBD_FIFO 1 /* this enables Keyboad fifo so that we */
|
||||
#elif PCVT_KBD_FIFO != 0 /* are not any longer forced to switch */
|
||||
# undef PCVT_KBD_FIFO /* off tty interrupts while switching */
|
||||
# define PCVT_KBD_FIFO 1 /* virtual screens - AND loosing chars */
|
||||
#endif /* on the serial lines is gone :-) */
|
||||
|
||||
#if PCVT_KBD_FIFO
|
||||
|
||||
# if !defined PCVT_KBD_FIFO_SZ /* ---------- DEFAULT: 256 ------------ */
|
||||
# define PCVT_KBD_FIFO_SZ 256 /* this specifies the size of the above */
|
||||
# elif PCVT_KBD_FIFO_SZ < 16 /* mentioned keyboard buffer. buffer */
|
||||
# undef PCVT_KBD_FIFO_SZ /* overflows are logged via syslog, so */
|
||||
# define PCVT_KBD_FIFO_SZ 256 /* have a look at /var/log/messages */
|
||||
# endif
|
||||
|
||||
#endif /* PCVT_KBD_FIFO */
|
||||
|
||||
#if !defined PCVT_USEKBDSEC /* ---------- DEFAULT: ON ------------- */
|
||||
# define PCVT_USEKBDSEC 1 /* do not set the COMMAND_INHOVR bit */
|
||||
#elif PCVT_USEKBDSEC != 0 /* (1 = override security lock inhibit) */
|
||||
# undef PCVT_USEKBDSEC /* when initializing the keyboard, so */
|
||||
# define PCVT_USEKBDSEC 1 /* that security locking should work */
|
||||
#endif /* now. I guess this has to be done also*/
|
||||
/* in the boot code to prevent single */
|
||||
/* user startup .... */
|
||||
|
||||
#if !defined PCVT_24LINESDEF /* ---------- DEFAULT: OFF ------------ */
|
||||
# define PCVT_24LINESDEF 0 /* use 24 lines in VT 25 lines mode and */
|
||||
#elif PCVT_24LINESDEF != 0 /* HP 28 lines mode by default to have */
|
||||
# undef PCVT_24LINESDEF /* the the better compatibility to the */
|
||||
# define PCVT_24LINESDEF 1 /* real VT220 - you can switch between */
|
||||
#endif /* the maximum possible screensizes in */
|
||||
/* those two modes (25 lines) and true */
|
||||
/* compatibility (24 lines) by using */
|
||||
/* the scon utility at runtime */
|
||||
|
||||
#if !defined PCVT_EMU_MOUSE /* ---------- DEFAULT: OFF ------------ */
|
||||
# define PCVT_EMU_MOUSE 0 /* emulate a mouse systems mouse via */
|
||||
#elif PCVT_EMU_MOUSE != 0 /* the keypad; this is experimental */
|
||||
# undef PCVT_EMU_MOUSE /* code intented to be used on note- */
|
||||
# define PCVT_EMU_MOUSE 1 /* books in conjunction with XFree86; */
|
||||
#endif /* look at the comments in pcvt_kbd.c */
|
||||
/* if you are interested in testing it. */
|
||||
|
||||
#if !defined PCVT_META_ESC /* ---------- DEFAULT: OFF ------------ */
|
||||
# define PCVT_META_ESC 0 /* if ON, send the sequence "ESC key" */
|
||||
#elif PCVT_META_ESC != 0 /* for a meta-shifted key; if OFF, */
|
||||
# undef PCVT_META_ESC /* send the normal key code with 0x80 */
|
||||
# define PCVT_META_ESC 1 /* added. */
|
||||
#endif
|
||||
|
||||
#if !defined PCVT_SW0CNOUTP /* ---------- DEFAULT: OFF ------------ */
|
||||
# define PCVT_SW0CNOUTP 0 /* if ON, on console/kernel output the */
|
||||
#elif PCVT_SW0CNOUTP != 0 /* current screen is switched to screen */
|
||||
# undef PCVT_SW0CNOUTP /* 0 if not already at screen 0. */
|
||||
# define PCVT_SW0CNOUTP 1 /* CAUTION: CURRENTLY THIS CAUSES AN X- */
|
||||
#endif /* SESSION TO CLUTTER VIDEO MEMORY !!!! */
|
||||
|
||||
/* -------------------------------------------------------------------- */
|
||||
/* -------------------- DRIVER DEBUGGING ------------------------------ */
|
||||
/* -------------------------------------------------------------------- */
|
||||
|
||||
#if !defined PCVT_SHOWKEYS /* ---------- DEFAULT: OFF ------------ */
|
||||
# define PCVT_SHOWKEYS 0 /* this replaces the system load line */
|
||||
#elif PCVT_SHOWKEYS != 0 /* on the vt 0 in hp mode with a display*/
|
||||
# undef PCVT_SHOWKEYS /* of the most recent keyboard scan- */
|
||||
# define PCVT_SHOWKEYS 1 /* and status codes received from the */
|
||||
#endif /* keyboard controller chip. */
|
||||
/* this is just for some hardcore */
|
||||
/* keyboarders .... */
|
||||
|
||||
/* -------------------------------------------------------------------- */
|
||||
/* -------------------- DRIVER OPTIONS -------------------------------- */
|
||||
/* -------------------------------------------------------------------- */
|
||||
/* it is unlikely that anybody wants to change anything below */
|
||||
|
||||
#if !defined PCVT_NO_LED_UPDATE /* ---------- DEFAULT: OFF ------------ */
|
||||
# define PCVT_NO_LED_UPDATE 0 /* On some (Notebook?) keyboards it is */
|
||||
#elif PCVT_NO_LED_UPDATE != 0 /* not possible to update the LED's */
|
||||
# undef PCVT_NO_LED_UPDATE /* without hanging the keyboard after- */
|
||||
# define PCVT_NO_LED_UPDATE 1 /* wards. If you experience Problems */
|
||||
#endif /* like this, try to enable this option */
|
||||
|
||||
#if !defined PCVT_PCBURST /* ---------- DEFAULT: 256 ------------ */
|
||||
# define PCVT_PCBURST 256 /* NETBSD only: this is the number of */
|
||||
#endif /* characters handled as a burst in */
|
||||
/* routine pcstart(), file pcvt_drv.c */
|
||||
|
||||
#if !defined PCVT_SCANSET /* ---------- DEFAULT: 1 -------------- */
|
||||
# define PCVT_SCANSET 1 /* define the keyboard scancode set you */
|
||||
#endif /* want to use: */
|
||||
/* 1 - code set 1 (supported) */
|
||||
/* 2 - code set 2 (supported) */
|
||||
/* 3 - code set 3 (UNsupported) */
|
||||
|
||||
#if !defined PCVT_KEYBDID /* ---------- DEFAULT: ON ------------- */
|
||||
# define PCVT_KEYBDID 1 /* check type of keyboard connected. at */
|
||||
#elif PCVT_KEYBDID != 0 /* least HP-keyboards send an id other */
|
||||
# undef PCVT_KEYBDID /* than the industry standard, so it */
|
||||
# define PCVT_KEYBDID 1 /* CAN lead to problems. if you have */
|
||||
#endif /* problems with this, TELL ME PLEASE ! */
|
||||
|
||||
#if !defined PCVT_SIGWINCH /* ---------- DEFAULT: ON ------------- */
|
||||
# define PCVT_SIGWINCH 1 /* this sends a SIGWINCH signal in case */
|
||||
#elif PCVT_SIGWINCH != 0 /* the window size is changed. to try, */
|
||||
# undef PCVT_SIGWINCH /* issue "scons -s<size>" while in elvis*/
|
||||
# define PCVT_SIGWINCH 1 /* and you'll see the effect. */
|
||||
#endif /* i'm not sure, whether this feature */
|
||||
/* has to be in the driver or has to */
|
||||
/* move as an ioctl call to scon .... */
|
||||
|
||||
#if !defined PCVT_NULLCHARS /* ---------- DEFAULT: ON ------------- */
|
||||
# define PCVT_NULLCHARS 1 /* allow the keyboard to send null */
|
||||
#elif PCVT_NULLCHARS != 0 /* program. this has the side effect, */
|
||||
# undef PCVT_NULLCHARS /* (0x00) characters to the calling */
|
||||
# define PCVT_NULLCHARS 1 /* that every undefined key also sends */
|
||||
#endif /* out nulls. take it as experimental */
|
||||
/* code, this behaviour will change in */
|
||||
/* a future release */
|
||||
|
||||
#if !defined PCVT_BACKUP_FONTS /* ---------- DEFAULT: ON ------------- */
|
||||
# define PCVT_BACKUP_FONTS 1 /* fonts are always kept memory-backed; */
|
||||
#elif PCVT_BACKUP_FONTS != 0 /* otherwise copies are only made if */
|
||||
# undef PCVT_BACKUP_FONTS /* they are needed. */
|
||||
# define PCVT_BACKUP_FONTS 1
|
||||
#endif
|
||||
|
||||
#ifndef PCVT_UPDATEFAST /* this is the rate at which the cursor */
|
||||
# define PCVT_UPDATEFAST (hz/10) /* gets updated with it's new position */
|
||||
#endif /* see: async_update() in pcvt_sup.c */
|
||||
|
||||
#ifndef PCVT_UPDATESLOW /* this is the rate at which the cursor */
|
||||
# define PCVT_UPDATESLOW 3 /* position display and the system load */
|
||||
#endif /* (or the keyboard scancode display) */
|
||||
/* is updated. the relation is: */
|
||||
/* PCVT_UPDATEFAST/PCVT_UPDATESLOW */
|
||||
|
||||
#ifndef PCVT_SYSBEEPF /* timer chip value to be used for the */
|
||||
# define PCVT_SYSBEEPF 1193182 /* sysbeep frequency value. */
|
||||
#endif /* this should really go somewhere else,*/
|
||||
/* e.g. in isa.h; but it used to be in */
|
||||
/* each driver, sometimes even with */
|
||||
/* different values (:-) */
|
||||
|
||||
#if !defined PCVT_NEEDPG /* ---------- DEFAULT: OFF ------------ */
|
||||
# define PCVT_NEEDPG 0 /* pg moved out to cons.c with pk 0.2.2 */
|
||||
#elif PCVT_NEEDPG != 0 /* if you run a system with patchkit */
|
||||
# undef PCVT_NEEDPG /* 0.2.1 or earlier you must define this*/
|
||||
# define PCVT_NEEDPG 1 /* OBSOLETE, just for 386BSD 0.1 !! */
|
||||
#endif
|
||||
|
||||
#if !defined PCVT_SETCOLOR /* ---------- DEFAULT: OFF ------------ */
|
||||
# define PCVT_SETCOLOR 0 /* enable making colors settable. this */
|
||||
#elif PCVT_SETCOLOR != 0 /* introduces a new escape sequence */
|
||||
# undef PCVT_SETCOLOR /* <ESC d> which is (i think) not */
|
||||
# define PCVT_SETCOLOR 1 /* standardized, so this is an option */
|
||||
#endif /* (Birthday present for Bruce ! :-) */
|
||||
|
||||
#if !defined PCVT_132GENERIC /* ---------- DEFAULT: OFF ------------ */
|
||||
# define PCVT_132GENERIC 0 /* if you #define this, you enable */
|
||||
#elif PCVT_132GENERIC != 0 /* EXPERIMENTAL (!!!!!!!!!!!!) */
|
||||
# undef PCVT_132GENERIC /* USE-AT-YOUR-OWN-RISK, */
|
||||
# define PCVT_132GENERIC 1 /* MAY-DAMAGE-YOUR-MONITOR */
|
||||
#endif /* code to switch generic VGA boards/ */
|
||||
/* chipsets to 132 column mode. Since */
|
||||
/* i could not verify this option, i */
|
||||
/* prefer to NOT generally enable this, */
|
||||
/* if you want to play, look at the */
|
||||
/* hints and the code in pcvt_sup.c and */
|
||||
/* get in contact with Joerg Wunsch, who*/
|
||||
/* submitted this code. Be careful !!! */
|
||||
|
||||
#if !defined PCVT_PALFLICKER /* ---------- DEFAULT: OFF ------------ */
|
||||
# define PCVT_PALFLICKER 0 /* this option turns off the screen */
|
||||
#elif PCVT_PALFLICKER != 0 /* during accesses to the VGA DAC */
|
||||
# undef PCVT_PALFLICKER /* registers. why: on one fo the tested */
|
||||
# define PCVT_PALFLICKER 1 /* pc's (WD-chipset), accesses to the */
|
||||
#endif /* vga dac registers caused distortions */
|
||||
/* on the screen. Ferraro says, one has */
|
||||
/* to blank the screen. the method used */
|
||||
/* to accomplish this stopped the noise */
|
||||
/* but introduced another flicker, so */
|
||||
/* this is for you to experiment ..... */
|
||||
/* - see also PCVT_WAITRETRACE below -- */
|
||||
|
||||
#if !defined PCVT_WAITRETRACE /* ---------- DEFAULT: OFF ------------ */
|
||||
# define PCVT_WAITRETRACE 0 /* this option waits for being in a */
|
||||
#elif PCVT_WAITRETRACE != 0 /* retrace window prior to accessing */
|
||||
# undef PCVT_WAITRETRACE /* the VGA DAC registers. */
|
||||
# define PCVT_WAITRETRACE 1 /* this is the other method Ferraro */
|
||||
#endif /* mentioned in his book. this option */
|
||||
/* did eleminate the flicker noticably */
|
||||
/* but not completely. besides that, it */
|
||||
/* is implemented as a busy-wait loop */
|
||||
/* which is a no-no-no in environments */
|
||||
/* like this - VERY BAD PRACTICE !!!!! */
|
||||
/* the other method implementing it is */
|
||||
/* using the vertical retrace irq, but */
|
||||
/* we get short of irq-lines on pc's. */
|
||||
/* this is for you to experiment ..... */
|
||||
/* -- see also PCVT_PALFLICKER above -- */
|
||||
|
||||
#if !defined PCVT_INHIBIT_NUMLOCK /* --------- DEFAULT: OFF ----------- */
|
||||
# define PCVT_INHIBIT_NUMLOCK 0 /* A notebook hack: since i am getting */
|
||||
#elif PCVT_INHIBIT_NUMLOCK != 0 /* tired of the numlock LED always */
|
||||
# undef PCVT_INHIBIT_NUMLOCK /* being turned on - which causes the */
|
||||
# define PCVT_INHIBIT_NUMLOCK 1 /* right half of my keyboard being */
|
||||
#endif /* interpreted as a numeric keypad and */
|
||||
/* thus going unusable - i want to */
|
||||
/* have a better control over it. If */
|
||||
/* this option is enabled, only the */
|
||||
/* numlock key itself and the related */
|
||||
/* ioctls will modify the numlock */
|
||||
/* LED. (The ioctl is needed for the */
|
||||
/* ServerNumLock feature of XFree86.) */
|
||||
/* The default state is changed to */
|
||||
/* numlock off, and the escape */
|
||||
/* sequences to switch between numeric */
|
||||
/* and application mode keypad are */
|
||||
/* silently ignored. */
|
||||
|
||||
#if !defined PCVT_NOFASTSCROLL /* ---------- DEFAULT: OFF ------------ */
|
||||
# define PCVT_NOFASTSCROLL 0 /* If off, enables code for fast scroll.*/
|
||||
#elif PCVT_NOFASTSCROLL != 0 /* This is done by changing the CRTC */
|
||||
# undef PCVT_NOFASTSCROLL /* screen start address for scrolling */
|
||||
# define PCVT_NOFASTSCROLL 1 /* and using 2 times the screen size as */
|
||||
#endif /* buffer. */
|
||||
|
||||
#if !defined PCVT_SLOW_INTERRUPT/* ---------- DEFAULT: OFF ------------ */
|
||||
# define PCVT_SLOW_INTERRUPT 0 /* If off, protecting critical regions */
|
||||
#elif PCVT_SLOW_INTERRUPT != 0 /* in the keyboard fifo code is done by */
|
||||
# undef PCVT_SLOW_INTERRUPT /* disabling the processor irq's, if on */
|
||||
# define PCVT_SLOW_INTERRUPT 1 /* this is done by spl()/splx() calls. */
|
||||
#endif
|
||||
|
||||
#ifdef XSERVER
|
||||
|
||||
#if !defined PCVT_USL_VT_COMPAT /* ---------- DEFAULT: ON ------------- */
|
||||
# define PCVT_USL_VT_COMPAT 1 /* emulate some compatibility ioctls */
|
||||
#elif PCVT_USL_VT_COMPAT != 0 /* this is not a full USL VT compatibi- */
|
||||
# undef PCVT_USL_VT_COMPAT /* lity, but just enough to fool XFree86*/
|
||||
# define PCVT_USL_VT_COMPAT 1 /* release 2 (or higher) in believing */
|
||||
#endif /* it runs on syscons and thus enabling */
|
||||
/* the stuff to switch VTs within an X */
|
||||
/* session */
|
||||
|
||||
#if !defined PCVT_FAKE_SYSCONS10/* ---------- DEFAULT: OFF ------------ */
|
||||
# define PCVT_FAKE_SYSCONS10 0 /* fake syscons 1.0; this causes XFree86*/
|
||||
#elif PCVT_FAKE_SYSCONS10 != 0 /* 2.0 to use the VT_OPENQRY ioctl in */
|
||||
# undef PCVT_FAKE_SYSCONS10 /* order to test for a free vt to use */
|
||||
# define PCVT_FAKE_SYSCONS10 1 /* This is NOT REQUIRED, and not enabled*/
|
||||
#endif /* by default due to the possible */
|
||||
/* confusion for other utilities. */
|
||||
/* NB: XFree86 (tm) version 2.1 will be */
|
||||
/* fixed w.r.t. VT_OPENQRY */
|
||||
|
||||
#endif /* XSERVER */
|
||||
|
||||
/*---------------------------------------------------------------------------*
|
||||
* Kernel messages attribute definitions
|
||||
* These define the foreground and background attributes used to
|
||||
* emphasize messages from the kernel on color and mono displays.
|
||||
*---------------------------------------------------------------------------*/
|
||||
|
||||
/* color displays */
|
||||
#define COLOR_KERNEL_FG FG_LIGHTGREY /* kernel messages, foreground */
|
||||
#define COLOR_KERNEL_BG BG_RED /* kernel messages, background */
|
||||
|
||||
/* monochrome displays */
|
||||
#define MONO_KERNEL_FG FG_UNDERLINE /* kernel messages, foreground */
|
||||
#define MONO_KERNEL_BG BG_BLACK /* kernel messages, background */
|
||||
|
||||
/*---------------------------------- E O F ----------------------------------*/
|
1427
sys/i386/isa/pcvt/pcvt_drv.c
Normal file
1427
sys/i386/isa/pcvt/pcvt_drv.c
Normal file
File diff suppressed because it is too large
Load Diff
2613
sys/i386/isa/pcvt/pcvt_ext.c
Normal file
2613
sys/i386/isa/pcvt/pcvt_ext.c
Normal file
File diff suppressed because it is too large
Load Diff
1350
sys/i386/isa/pcvt/pcvt_hdr.h
Normal file
1350
sys/i386/isa/pcvt/pcvt_hdr.h
Normal file
File diff suppressed because it is too large
Load Diff
2914
sys/i386/isa/pcvt/pcvt_kbd.c
Normal file
2914
sys/i386/isa/pcvt/pcvt_kbd.c
Normal file
File diff suppressed because it is too large
Load Diff
566
sys/i386/isa/pcvt/pcvt_kbd.h
Normal file
566
sys/i386/isa/pcvt/pcvt_kbd.h
Normal file
@ -0,0 +1,566 @@
|
||||
/*
|
||||
* Copyright (c) 1992, 1995 Hellmuth Michaelis and Joerg Wunsch.
|
||||
*
|
||||
* Copyright (c) 1992, 1993 Brian Dunford-Shore and Holger Veit.
|
||||
*
|
||||
* All rights reserved.
|
||||
*
|
||||
* This code is derived from software contributed to Berkeley by
|
||||
* William Jolitz and Don Ahn.
|
||||
*
|
||||
* This code is derived from software contributed to 386BSD by
|
||||
* Holger Veit.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
* 3. All advertising materials mentioning features or use of this software
|
||||
* must display the following acknowledgement:
|
||||
* This product includes software developed by Hellmuth Michaelis,
|
||||
* Brian Dunford-Shore and Joerg Wunsch.
|
||||
* 4. The name authors may not be used to endorse or promote products
|
||||
* derived from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE AUTHORS ``AS IS'' AND ANY EXPRESS OR
|
||||
* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||
* IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
*
|
||||
* @(#)pcvt_kbd.h, 3.20, Last Edit-Date: [Thu Jan 5 15:55:30 1995]
|
||||
*
|
||||
*/
|
||||
|
||||
/*---------------------------------------------------------------------------*
|
||||
*
|
||||
* pcvt_kbd.h VT220 Driver Keyboard Interface Header
|
||||
* ------------------------------------------------------
|
||||
* -hm split off from pcvt_kbd.c
|
||||
*
|
||||
*---------------------------------------------------------------------------*/
|
||||
|
||||
/*---------------------------------------------------------------------------*
|
||||
* this is one sub-entry for the table. the type can be either
|
||||
* "pointer to a string" or "pointer to a function"
|
||||
*---------------------------------------------------------------------------*/
|
||||
typedef struct
|
||||
{
|
||||
u_char subtype; /* subtype, string or function */
|
||||
#ifdef PCVT_ALT_ENH
|
||||
u_short str_leng; /* if string, stringlength */
|
||||
#endif
|
||||
union what
|
||||
{
|
||||
u_char *string; /* ptr to string, null terminated */
|
||||
void (*func)(); /* ptr to function */
|
||||
} what;
|
||||
} entry;
|
||||
|
||||
/*---------------------------------------------------------------------------*
|
||||
* this is the "outer" table
|
||||
*---------------------------------------------------------------------------*/
|
||||
typedef struct
|
||||
{
|
||||
u_short type; /* type of key */
|
||||
u_short ovlindex; /* -hv- index into overload table */
|
||||
entry unshift; /* normal default codes/funcs */
|
||||
entry shift; /* shifted default codes/funcs */
|
||||
entry ctrl; /* control default codes/funcs */
|
||||
#ifdef PCVT_ALT_ENH
|
||||
entry alt; /* normal default codes/funcs */
|
||||
entry alt_shift; /* shifted default codes/funcs */
|
||||
entry alt_ctrl; /* control default codes/funcs */
|
||||
entry alt_ctrl_shift; /* normal default codes/funcs */
|
||||
#endif
|
||||
} Keycap_def;
|
||||
|
||||
#define IDX0 0 /* default indexvalue into ovl table */
|
||||
|
||||
#define STR KBD_SUBT_STR /* subtype = ptr to string */
|
||||
#define FNC KBD_SUBT_FNC /* subtype = ptr to function */
|
||||
|
||||
#define CODE_SIZE 5
|
||||
|
||||
/*---------------------------------------------------------------------------*
|
||||
* the overlaytable table is a static fixed size scratchpad where all the
|
||||
* overloaded definitions are stored.
|
||||
* an entry consists of a short (holding the new type attribute) and
|
||||
* four entries for a new keydefinition.
|
||||
*---------------------------------------------------------------------------*/
|
||||
|
||||
#define OVLTBL_SIZE 64 /* 64 keys can be overloaded */
|
||||
|
||||
#define Ovl_tbl struct kbd_ovlkey
|
||||
|
||||
static Ovl_tbl *ovltbl; /* the table itself */
|
||||
|
||||
static ovlinitflag = 0; /* the init flag for the table */
|
||||
|
||||
/*
|
||||
* key codes >= 128 denote "virtual" shift/control
|
||||
* They are resolved before any keymapping is handled
|
||||
*/
|
||||
|
||||
#if PCVT_SCANSET == 2
|
||||
static u_char scantokey[] = {
|
||||
/* -0- -1- -2- -3- -4- -5- -6- -7- This layout is valid for US only */
|
||||
/*00*/ 0,120, 0,116,114,112,113,123, /* ?? F9 ?? F5 F3 F1 F2 F12 */
|
||||
/*08*/ 0,121,119,117,115, 16, 1, 0, /* ?? F10 F8 F6 F4 TAB ` ?? */
|
||||
/*10*/ 0, 60, 44, 0, 58, 17, 2, 0, /* ?? ALl SHl ?? CTl Q 1 ?? */
|
||||
/*18*/ 0, 0, 46, 32, 31, 18, 3, 0, /* ?? Z S A W 2 ?? ?? */
|
||||
/*20*/ 0, 48, 47, 33, 19, 5, 4, 0, /* ?? C X D E 4 3 ?? */
|
||||
/*28*/ 0, 61, 49, 34, 21, 20, 6, 0, /* ?? SP V F T R 5 ?? */
|
||||
/*30*/ 0, 51, 50, 36, 35, 22, 7, 0, /* ?? N B H G Y 6 ?? */
|
||||
/*38*/ 0, 0, 52, 37, 23, 8, 9, 0, /* ?? ?? M J U 7 8 ?? */
|
||||
/*40*/ 0, 53, 38, 24, 25, 11, 10, 0, /* ?? , K I O 0 9 ?? */
|
||||
/*48*/ 0, 54, 55, 39, 40, 26, 12, 0, /* ?? . / L ; P - ?? */
|
||||
/*50*/ 0, 0, 41, 0, 27, 13, 0, 0, /* ?? ?? " ?? [ = ?? ?? */
|
||||
/*58*/ 30, 57, 43, 28, 0, 29, 0, 0, /* CAP SHr ENT ] ?? \ ?? ?? */
|
||||
/*60*/ 0, 45, 0, 0, 0, 0, 15, 0, /* ?? NL1 ?? ?? ?? ?? BS ?? */
|
||||
/*68*/ 0, 93, 0, 92, 91, 0, 0, 0, /* ?? KP1 ?? KP4 KP7 ?? ?? ?? */
|
||||
/*70*/ 99,104, 98, 97,102, 96,110, 90, /* KP0 KP. KP2 KP5 KP6 KP8 ESC NUM */
|
||||
/*78*/ 122,106,103,105,100,101,125, 0, /* F11 KP+ KP3 KP- KP* KP9 LOC ?? */
|
||||
/*80*/ 0, 0, 0,118,127 /* ?? ?? ?? F7 SyRQ */
|
||||
};
|
||||
|
||||
static u_char extscantokey[] = {
|
||||
/* -0- -1- -2- -3- -4- -5- -6- -7- This layout is valid for US only */
|
||||
/*00*/ 0,120, 0,116,114,112,113,123, /* ?? F9 ?? F5 F3 F1 F2 F12 */
|
||||
/*08*/ 0,121,119,117,115, 16, 1, 0, /* ?? F10 F8 F6 F4 TAB ` ?? */
|
||||
/*10*/ 0, 62,128, 0, 58, 17, 2, 0, /* ?? ALr vSh ?? CTr Q 1 ?? */
|
||||
/*18*/ 0, 0, 46, 32, 31, 18, 3, 0, /* ?? Z S A W 2 ?? ?? */
|
||||
/*20*/ 0, 48, 47, 33, 19, 5, 4, 0, /* ?? C X D E 4 3 ?? */
|
||||
/*28*/ 0, 61, 49, 34, 21, 20, 6, 0, /* ?? SP V F T R 5 ?? */
|
||||
/*30*/ 0, 51, 50, 36, 35, 22, 7, 0, /* ?? N B H G Y 6 ?? */
|
||||
/*38*/ 0, 0, 52, 37, 23, 8, 9, 0, /* ?? ?? M J U 7 8 ?? */
|
||||
/*40*/ 0, 53, 38, 24, 25, 11, 10, 0, /* ?? , K I O 0 9 ?? */
|
||||
/*48*/ 0, 54, 95, 39, 40, 26, 12, 0, /* ?? . KP/ L ; P - ?? */
|
||||
/*50*/ 0, 0, 41, 0, 27, 13, 0, 0, /* ?? ?? " ?? [ = ?? ?? */
|
||||
/*58*/ 30, 57,108, 28, 0, 29, 0, 0, /* CAP SHr KPE ] ?? \ ?? ?? */
|
||||
/*60*/ 0, 45, 0, 0, 0, 0, 15, 0, /* ?? NL1 ?? ?? ?? ?? BS ?? */
|
||||
/*68*/ 0, 81, 0, 79, 80, 0, 0, 0, /* ?? END ?? LA HOM ?? ?? ?? */
|
||||
/*70*/ 75, 76, 84, 97, 89, 83,110, 90, /* INS DEL DA KP5 RA UA ESC NUM */
|
||||
/*78*/ 122,106, 86,105,124, 85,126, 0, /* F11 KP+ PD KP- PSc PU Brk ?? */
|
||||
/*80*/ 0, 0, 0,118,127 /* ?? ?? ?? F7 SysRq */
|
||||
};
|
||||
|
||||
#else /* PCVT_SCANSET != 2 */
|
||||
|
||||
static u_char scantokey[] = {
|
||||
/* -0- -1- -2- -3- -4- -5- -6- -7- This layout is valid for US only */
|
||||
/*00*/ 0,110, 2, 3, 4, 5, 6, 7, /* ?? ESC 1 2 3 4 5 6 */
|
||||
/*08*/ 8, 9, 10, 11, 12, 13, 15, 16, /* 7 8 9 0 - = BS TAB */
|
||||
/*10*/ 17, 18, 19, 20, 21, 22, 23, 24, /* Q W E R T Y U I */
|
||||
/*18*/ 25, 26, 27, 28, 43, 58, 31, 32, /* O P [ ] ENT CTl A S */
|
||||
/*20*/ 33, 34, 35, 36, 37, 38, 39, 40, /* D F G H J K L ; */
|
||||
/*28*/ 41, 1, 44, 29, 46, 47, 48, 49, /* ' ` SHl \ Z X C V */
|
||||
/*30*/ 50, 51, 52, 53, 54, 55, 57,100, /* B N M , . / SHr KP* */
|
||||
/*38*/ 60, 61, 30,112,113,114,115,116, /* ALl SP CAP F1 F2 F3 F4 F5 */
|
||||
/*40*/ 117,118,119,120,121, 90,125, 91, /* F6 F7 F8 F9 F10 NUM LOC KP7 */
|
||||
/*48*/ 96,101,105, 92, 97,102,106, 93, /* KP8 KP9 KP- KP4 KP5 KP6 KP+ KP1 */
|
||||
/*50*/ 98,103, 99,104,127, 0, 45,122, /* KP2 KP3 KP0 KP. SyRq?? NL1 F11 */
|
||||
/*58*/ 123 /* F12 */
|
||||
};
|
||||
|
||||
static u_char extscantokey[] = {
|
||||
/* -0- -1- -2- -3- -4- -5- -6- -7- This layout is valid for US only */
|
||||
/*00*/ 0,110, 2, 3, 4, 5, 6, 7, /* ?? ESC 1 2 3 4 5 6 */
|
||||
/*08*/ 8, 9, 10, 11, 12, 13, 15, 16, /* 7 8 9 0 - = BS TAB */
|
||||
/*10*/ 17, 18, 19, 20, 21, 22, 23, 24, /* Q W E R T Y U I */
|
||||
/*18*/ 25, 26, 27, 28,108, 58, 31, 32, /* O P [ ] KPE CTr A S */
|
||||
/*20*/ 33, 34, 35, 36, 37, 38, 39, 40, /* D F G H J K L ; */
|
||||
/*28*/ 41, 1,128, 29, 46, 47, 48, 49, /* ' ` vSh \ Z X C V */
|
||||
/*30*/ 50, 51, 52, 53, 54, 95, 57,124, /* B N M , . KP/ SHr KP* */
|
||||
/*38*/ 62, 61, 30,112,113,114,115,116, /* ALr SP CAP F1 F2 F3 F4 F5 */
|
||||
/*40*/ 117,118,119,120,121, 90,126, 80, /* F6 F7 F8 F9 F10 NUM Brk HOM */
|
||||
/*48*/ 83, 85,105, 79, 97, 89,106, 81, /* UA PU KP- LA KP5 RA KP+ END */
|
||||
/*50*/ 84, 86, 75, 76, 0, 0, 45,122, /* DA PD INS DEL ?? ?? NL1 F11 */
|
||||
/*58*/ 123, /* F12 */
|
||||
};
|
||||
#endif /* PCVT_SCANSET == 2 */
|
||||
|
||||
static Keycap_def key2ascii[] =
|
||||
{
|
||||
|
||||
#ifdef PCVT_ALT_ENH
|
||||
|
||||
#define C (u_char *)
|
||||
#define U (u_short)
|
||||
#define V (void *)
|
||||
#define S STR
|
||||
#define F FNC
|
||||
#define I IDX0
|
||||
|
||||
#define DFAULT {S, 0, C ""}
|
||||
|
||||
/* DONT EVER OVERLOAD KEY 0, THIS IS A KEY THAT MUSTN'T EXIST */
|
||||
|
||||
/* type index unshift shift ctrl alt alt_shift alt_ctrl alt_ctrl_shift */
|
||||
/* -------------------------------------------------------------------------------------------------------------------------------------------------- */
|
||||
/* 0*/ KBD_NONE, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 1*/ KBD_ASCII, I, {S,1,C "`"}, {S,1,C "~"}, {S,1,C "`"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 2*/ KBD_ASCII, I, {S,1,C "1"}, {S,1,C "!"}, {S,1,C "1"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 3*/ KBD_ASCII, I, {S,1,C "2"}, {S,1,C "@"}, {S,1,C "\000"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 4*/ KBD_ASCII, I, {S,1,C "3"}, {S,1,C "#"}, {S,1,C "3"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 5*/ KBD_ASCII, I, {S,1,C "4"}, {S,1,C "$"}, {S,1,C "4"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 6*/ KBD_ASCII, I, {S,1,C "5"}, {S,1,C "%"}, {S,1,C "5"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 7*/ KBD_ASCII, I, {S,1,C "6"}, {S,1,C "^"}, {S,1,C "\036"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 8*/ KBD_ASCII, I, {S,1,C "7"}, {S,1,C "&"}, {S,1,C "7"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 9*/ KBD_ASCII, I, {S,1,C "8"}, {S,1,C "*"}, {S,1,C "9"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 10*/ KBD_ASCII, I, {S,1,C "9"}, {S,1,C "("}, {S,1,C "9"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 11*/ KBD_ASCII, I, {S,1,C "0"}, {S,1,C ")"}, {S,1,C "0"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 12*/ KBD_ASCII, I, {S,1,C "-"}, {S,1,C "_"}, {S,1,C "\037"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 13*/ KBD_ASCII, I, {S,1,C "="}, {S,1,C "+"}, {S,1,C "="}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 14*/ KBD_NONE, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 15*/ KBD_ASCII, I, {S,1,C "\177"}, {S,1,C "\010"}, {S,1,C "\177"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 16*/ KBD_ASCII, I, {S,1,C "\t"}, {S,1,C "\t"}, {S,1,C "\t"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 17*/ KBD_ASCII, I, {S,1,C "q"}, {S,1,C "Q"}, {S,1,C "\021"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 18*/ KBD_ASCII, I, {S,1,C "w"}, {S,1,C "W"}, {S,1,C "\027"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 19*/ KBD_ASCII, I, {S,1,C "e"}, {S,1,C "E"}, {S,1,C "\005"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 20*/ KBD_ASCII, I, {S,1,C "r"}, {S,1,C "R"}, {S,1,C "\022"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 21*/ KBD_ASCII, I, {S,1,C "t"}, {S,1,C "T"}, {S,1,C "\024"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 22*/ KBD_ASCII, I, {S,1,C "y"}, {S,1,C "Y"}, {S,1,C "\031"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 23*/ KBD_ASCII, I, {S,1,C "u"}, {S,1,C "U"}, {S,1,C "\025"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 24*/ KBD_ASCII, I, {S,1,C "i"}, {S,1,C "I"}, {S,1,C "\011"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 25*/ KBD_ASCII, I, {S,1,C "o"}, {S,1,C "O"}, {S,1,C "\017"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 26*/ KBD_ASCII, I, {S,1,C "p"}, {S,1,C "P"}, {S,1,C "\020"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 27*/ KBD_ASCII, I, {S,1,C "["}, {S,1,C "{"}, {S,1,C "\033"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 28*/ KBD_ASCII, I, {S,1,C "]"}, {S,1,C "}"}, {S,1,C "\035"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 29*/ KBD_ASCII, I, {S,1,C "\\"}, {S,1,C "|"}, {S,1,C "\034"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 30*/ KBD_CAPS, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 31*/ KBD_ASCII, I, {S,1,C "a"}, {S,1,C "A"}, {S,1,C "\001"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 32*/ KBD_ASCII, I, {S,1,C "s"}, {S,1,C "S"}, {S,1,C "\023"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 33*/ KBD_ASCII, I, {S,1,C "d"}, {S,1,C "D"}, {S,1,C "\004"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 34*/ KBD_ASCII, I, {S,1,C "f"}, {S,1,C "F"}, {S,1,C "\006"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 35*/ KBD_ASCII, I, {S,1,C "g"}, {S,1,C "G"}, {S,1,C "\007"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 36*/ KBD_ASCII, I, {S,1,C "h"}, {S,1,C "H"}, {S,1,C "\010"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 37*/ KBD_ASCII, I, {S,1,C "j"}, {S,1,C "J"}, {S,1,C "\n"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 38*/ KBD_ASCII, I, {S,1,C "k"}, {S,1,C "K"}, {S,1,C "\013"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 39*/ KBD_ASCII, I, {S,1,C "l"}, {S,1,C "L"}, {S,1,C "\014"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 40*/ KBD_ASCII, I, {S,1,C ";"}, {S,1,C ":"}, {S,1,C ";"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 41*/ KBD_ASCII, I, {S,1,C "'"}, {S,1,C "\""}, {S,1,C "'"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 42*/ KBD_ASCII, I, {S,1,C "\\"}, {S,1,C "|"}, {S,1,C "\034"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 43*/ KBD_RETURN,I, {S,1,C "\r"}, {S,1,C "\r"}, {S,1,C "\r"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 44*/ KBD_SHIFT, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 45*/ KBD_ASCII, I, {S,1,C "<"}, {S,1,C ">"}, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 46*/ KBD_ASCII, I, {S,1,C "z"}, {S,1,C "Z"}, {S,1,C "\032"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 47*/ KBD_ASCII, I, {S,1,C "x"}, {S,1,C "X"}, {S,1,C "\030"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 48*/ KBD_ASCII, I, {S,1,C "c"}, {S,1,C "C"}, {S,1,C "\003"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 49*/ KBD_ASCII, I, {S,1,C "v"}, {S,1,C "V"}, {S,1,C "\026"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 50*/ KBD_ASCII, I, {S,1,C "b"}, {S,1,C "B"}, {S,1,C "\002"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 51*/ KBD_ASCII, I, {S,1,C "n"}, {S,1,C "N"}, {S,1,C "\016"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 52*/ KBD_ASCII, I, {S,1,C "m"}, {S,1,C "M"}, {S,1,C "\r"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 53*/ KBD_ASCII, I, {S,1,C ","}, {S,1,C "<"}, {S,1,C ","}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 54*/ KBD_ASCII, I, {S,1,C "."}, {S,1,C ">"}, {S,1,C "."}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 55*/ KBD_ASCII, I, {S,1,C "/"}, {S,1,C "?"}, {S,1,C "/"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 56*/ KBD_NONE, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 57*/ KBD_SHIFT, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 58*/ KBD_CTL, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 59*/ KBD_ASCII, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 60*/ KBD_META, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
#if !PCVT_NULLCHARS
|
||||
/* 61*/ KBD_ASCII, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
#else
|
||||
/* 61*/ KBD_ASCII, I, DFAULT, DFAULT, {S,1,C "\000"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
#endif /* PCVT_NULLCHARS */
|
||||
/* 62*/ KBD_META, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 63*/ KBD_ASCII, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 64*/ KBD_CTL, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 65*/ KBD_NONE, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 66*/ KBD_NONE, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 67*/ KBD_NONE, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 68*/ KBD_NONE, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 69*/ KBD_NONE, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 70*/ KBD_NONE, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 71*/ KBD_NONE, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 72*/ KBD_NONE, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 73*/ KBD_NONE, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 74*/ KBD_NONE, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 75*/ KBD_FUNC, I, {S,4,C "\033[2~"}, {S,4,C "\033[2~"}, {S,4,C "\033[2~"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 76*/ KBD_FUNC, I, {S,4,C "\033[3~"}, {S,4,C "\033[3~"}, {S,4,C "\033[3~"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 77*/ KBD_NONE, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 78*/ KBD_NONE, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 79*/ KBD_CURSOR,I, {S,4,C "\033[D"}, {S,4,C "\033OD"}, {S,4,C "\033[D"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 80*/ KBD_FUNC, I, {S,4,C "\033[1~"}, {S,4,C "\033[1~"}, {S,4,C "\033[1~"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 81*/ KBD_FUNC, I, {S,4,C "\033[4~"}, {S,4,C "\033[4~"}, {S,4,C "\033[4~"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 82*/ KBD_NONE, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 83*/ KBD_CURSOR,I, {S,4,C "\033[A"}, {S,4,C "\033OA"}, {S,4,C "\033[A"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 84*/ KBD_CURSOR,I, {S,4,C "\033[B"}, {S,4,C "\033OB"}, {S,4,C "\033[B"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 85*/ KBD_FUNC, I, {S,4,C "\033[5~"}, {S,4,C "\033[5~"}, {S,4,C "\033[5~"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 86*/ KBD_FUNC, I, {S,4,C "\033[6~"}, {S,4,C "\033[6~"}, {S,4,C "\033[6~"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 87*/ KBD_NONE, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 88*/ KBD_NONE, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 89*/ KBD_CURSOR,I, {S,3,C "\033[C"}, {S,3,C "\033OC"}, {S,3,C "\033[C"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 90*/ KBD_NUM, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 91*/ KBD_KP, I, {S,1,C "7"}, {S,2,C "\033Ow"}, {S,1,C "7"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 92*/ KBD_KP, I, {S,1,C "4"}, {S,2,C "\033Ot"}, {S,1,C "4"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 93*/ KBD_KP, I, {S,1,C "1"}, {S,2,C "\033Oq"}, {S,1,C "1"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 94*/ KBD_NONE, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 95*/ KBD_KP, I, {S,1,C "/"}, {S,1,C "/"}, {S,1,C "/"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 96*/ KBD_KP, I, {S,1,C "8"}, {S,2,C "\033Ox"}, {S,1,C "8"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 97*/ KBD_KP, I, {S,1,C "5"}, {S,2,C "\033Ou"}, {S,1,C "5"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 98*/ KBD_KP, I, {S,1,C "2"}, {S,2,C "\033Or"}, {S,1,C "2"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/* 99*/ KBD_KP, I, {S,1,C "0"}, {S,2,C "\033Op"}, {S,1,C "0"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/*100*/ KBD_KP, I, {S,1,C "*"}, {S,1,C "*"}, {S,1,C "*"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/*101*/ KBD_KP, I, {S,1,C "9"}, {S,2,C "\033Oy"}, {S,1,C "9"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/*102*/ KBD_KP, I, {S,1,C "6"}, {S,2,C "\033Ov"}, {S,1,C "6"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/*103*/ KBD_KP, I, {S,1,C "3"}, {S,2,C "\033Os"}, {S,1,C "3"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/*104*/ KBD_KP, I, {S,1,C "."}, {S,2,C "\033On"}, {S,1,C "."}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/*105*/ KBD_KP, I, {S,1,C "-"}, {S,2,C "\033Om"}, {S,1,C "-"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/*106*/ KBD_KP, I, {S,1,C "+"}, {S,1,C "+"}, {S,1,C "+"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/*107*/ KBD_NONE, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/*108*/ KBD_RETURN,I, {S,1,C "\r"}, {S,2,C "\033OM"}, {S,1,C "\r"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/*109*/ KBD_NONE, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/*110*/ KBD_ASCII, I, {S,1,C "\033"}, {S,2,C "\033"}, {S,1,C "\033"}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/*111*/ KBD_NONE, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/*112*/ KBD_FUNC, I, {F,0,V fkey1}, {F,0,V sfkey1}, {F,0,V cfkey1}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/*113*/ KBD_FUNC, I, {F,0,V fkey2}, {F,0,V sfkey2}, {F,0,V cfkey2}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/*114*/ KBD_FUNC, I, {F,0,V fkey3}, {F,0,V sfkey3}, {F,0,V cfkey3}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/*115*/ KBD_FUNC, I, {F,0,V fkey4}, {F,0,V sfkey4}, {F,0,V cfkey4}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/*116*/ KBD_FUNC, I, {F,0,V fkey5}, {F,0,V sfkey5}, {F,0,V cfkey5}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/*117*/ KBD_FUNC, I, {F,0,V fkey6}, {F,0,V sfkey6}, {F,0,V cfkey6}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/*118*/ KBD_FUNC, I, {F,0,V fkey7}, {F,0,V sfkey7}, {F,0,V cfkey7}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/*119*/ KBD_FUNC, I, {F,0,V fkey8}, {F,0,V sfkey8}, {F,0,V cfkey8}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/*120*/ KBD_FUNC, I, {F,0,V fkey9}, {F,0,V sfkey9}, {F,0,V cfkey9}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/*121*/ KBD_FUNC, I, {F,0,V fkey10}, {F,0,V sfkey10}, {F,0,V cfkey10}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/*122*/ KBD_FUNC, I, {F,0,V fkey11}, {F,0,V sfkey11}, {F,0,V cfkey11}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/*123*/ KBD_FUNC, I, {F,0,V fkey12}, {F,0,V sfkey12}, {F,0,V cfkey12}, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/*124*/ KBD_KP, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/*125*/ KBD_SCROLL,I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/*126*/ KBD_BREAK, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
/*127*/ KBD_FUNC, I, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT, DFAULT,
|
||||
|
||||
#undef C
|
||||
#undef U
|
||||
#undef V
|
||||
#undef S
|
||||
#undef F
|
||||
#undef I
|
||||
#undef DFLT
|
||||
};
|
||||
|
||||
#else /* PCVT_ALT_ENH */
|
||||
|
||||
/* define some shorthands to make the table (almost) fit into 80 columns */
|
||||
#define C (u_char *)
|
||||
#define V (void *)
|
||||
#define S STR
|
||||
#define F FNC
|
||||
#define I IDX0
|
||||
|
||||
/* DONT EVER OVERLOAD KEY 0, THIS IS A KEY THAT MUSTN'T EXIST */
|
||||
|
||||
/* type index unshift shift ctrl */
|
||||
/* ---------------------------------------------------------- */
|
||||
/* 0*/ KBD_NONE, I, {S,C "df"}, {S,C ""}, {S,C ""},
|
||||
/* 1*/ KBD_ASCII, I, {S,C "`"}, {S,C "~"}, {S,C "`"},
|
||||
/* 2*/ KBD_ASCII, I, {S,C "1"}, {S,C "!"}, {S,C "1"},
|
||||
/* 3*/ KBD_ASCII, I, {S,C "2"}, {S,C "@"}, {S,C "\000"},
|
||||
/* 4*/ KBD_ASCII, I, {S,C "3"}, {S,C "#"}, {S,C "3"},
|
||||
/* 5*/ KBD_ASCII, I, {S,C "4"}, {S,C "$"}, {S,C "4"},
|
||||
/* 6*/ KBD_ASCII, I, {S,C "5"}, {S,C "%"}, {S,C "5"},
|
||||
/* 7*/ KBD_ASCII, I, {S,C "6"}, {S,C "^"}, {S,C "\036"},
|
||||
/* 8*/ KBD_ASCII, I, {S,C "7"}, {S,C "&"}, {S,C "7"},
|
||||
/* 9*/ KBD_ASCII, I, {S,C "8"}, {S,C "*"}, {S,C "9"},
|
||||
/* 10*/ KBD_ASCII, I, {S,C "9"}, {S,C "("}, {S,C "9"},
|
||||
/* 11*/ KBD_ASCII, I, {S,C "0"}, {S,C ")"}, {S,C "0"},
|
||||
/* 12*/ KBD_ASCII, I, {S,C "-"}, {S,C "_"}, {S,C "\037"},
|
||||
/* 13*/ KBD_ASCII, I, {S,C "="}, {S,C "+"}, {S,C "="},
|
||||
/* 14*/ KBD_NONE, I, {S,C ""}, {S,C ""}, {S,C ""},
|
||||
/* 15*/ KBD_ASCII, I, {S,C "\177"}, {S,C "\010"}, {S,C "\177"}, /* BS */
|
||||
/* 16*/ KBD_ASCII, I, {S,C "\t"}, {S,C "\t"}, {S,C "\t"}, /* TAB */
|
||||
/* 17*/ KBD_ASCII, I, {S,C "q"}, {S,C "Q"}, {S,C "\021"},
|
||||
/* 18*/ KBD_ASCII, I, {S,C "w"}, {S,C "W"}, {S,C "\027"},
|
||||
/* 19*/ KBD_ASCII, I, {S,C "e"}, {S,C "E"}, {S,C "\005"},
|
||||
/* 20*/ KBD_ASCII, I, {S,C "r"}, {S,C "R"}, {S,C "\022"},
|
||||
/* 21*/ KBD_ASCII, I, {S,C "t"}, {S,C "T"}, {S,C "\024"},
|
||||
/* 22*/ KBD_ASCII, I, {S,C "y"}, {S,C "Y"}, {S,C "\031"},
|
||||
/* 23*/ KBD_ASCII, I, {S,C "u"}, {S,C "U"}, {S,C "\025"},
|
||||
/* 24*/ KBD_ASCII, I, {S,C "i"}, {S,C "I"}, {S,C "\011"},
|
||||
/* 25*/ KBD_ASCII, I, {S,C "o"}, {S,C "O"}, {S,C "\017"},
|
||||
/* 26*/ KBD_ASCII, I, {S,C "p"}, {S,C "P"}, {S,C "\020"},
|
||||
/* 27*/ KBD_ASCII, I, {S,C "["}, {S,C "{"}, {S,C "\033"},
|
||||
/* 28*/ KBD_ASCII, I, {S,C "]"}, {S,C "}"}, {S,C "\035"},
|
||||
/* 29*/ KBD_ASCII, I, {S,C "\\"}, {S,C "|"}, {S,C "\034"},
|
||||
/* 30*/ KBD_CAPS, I, {S,C ""}, {S,C ""}, {S,C ""},
|
||||
/* 31*/ KBD_ASCII, I, {S,C "a"}, {S,C "A"}, {S,C "\001"},
|
||||
/* 32*/ KBD_ASCII, I, {S,C "s"}, {S,C "S"}, {S,C "\023"},
|
||||
/* 33*/ KBD_ASCII, I, {S,C "d"}, {S,C "D"}, {S,C "\004"},
|
||||
/* 34*/ KBD_ASCII, I, {S,C "f"}, {S,C "F"}, {S,C "\006"},
|
||||
/* 35*/ KBD_ASCII, I, {S,C "g"}, {S,C "G"}, {S,C "\007"},
|
||||
/* 36*/ KBD_ASCII, I, {S,C "h"}, {S,C "H"}, {S,C "\010"},
|
||||
/* 37*/ KBD_ASCII, I, {S,C "j"}, {S,C "J"}, {S,C "\n"},
|
||||
/* 38*/ KBD_ASCII, I, {S,C "k"}, {S,C "K"}, {S,C "\013"},
|
||||
/* 39*/ KBD_ASCII, I, {S,C "l"}, {S,C "L"}, {S,C "\014"},
|
||||
/* 40*/ KBD_ASCII, I, {S,C ";"}, {S,C ":"}, {S,C ";"},
|
||||
/* 41*/ KBD_ASCII, I, {S,C "'"}, {S,C "\""}, {S,C "'"},
|
||||
/* 42*/ KBD_ASCII, I, {S,C "\\"}, {S,C "|"}, {S,C "\034"}, /* special */
|
||||
/* 43*/ KBD_RETURN,I, {S,C "\r"}, {S,C "\r"}, {S,C "\r"}, /* RETURN */
|
||||
/* 44*/ KBD_SHIFT, I, {S,C ""}, {S,C ""}, {S,C ""}, /* SHIFT left */
|
||||
/* 45*/ KBD_ASCII, I, {S,C "<"}, {S,C ">"}, {S,C ""},
|
||||
/* 46*/ KBD_ASCII, I, {S,C "z"}, {S,C "Z"}, {S,C "\032"},
|
||||
/* 47*/ KBD_ASCII, I, {S,C "x"}, {S,C "X"}, {S,C "\030"},
|
||||
/* 48*/ KBD_ASCII, I, {S,C "c"}, {S,C "C"}, {S,C "\003"},
|
||||
/* 49*/ KBD_ASCII, I, {S,C "v"}, {S,C "V"}, {S,C "\026"},
|
||||
/* 50*/ KBD_ASCII, I, {S,C "b"}, {S,C "B"}, {S,C "\002"},
|
||||
/* 51*/ KBD_ASCII, I, {S,C "n"}, {S,C "N"}, {S,C "\016"},
|
||||
/* 52*/ KBD_ASCII, I, {S,C "m"}, {S,C "M"}, {S,C "\r"},
|
||||
/* 53*/ KBD_ASCII, I, {S,C ","}, {S,C "<"}, {S,C ","},
|
||||
/* 54*/ KBD_ASCII, I, {S,C "."}, {S,C ">"}, {S,C "."},
|
||||
/* 55*/ KBD_ASCII, I, {S,C "/"}, {S,C "?"}, {S,C "/"},
|
||||
/* 56*/ KBD_NONE, I, {S,C ""}, {S,C ""}, {S,C ""},
|
||||
/* 57*/ KBD_SHIFT, I, {S,C ""}, {S,C ""}, {S,C ""}, /* SHIFT right */
|
||||
/* 58*/ KBD_CTL, I, {S,C ""}, {S,C ""}, {S,C ""}, /* CTL left */
|
||||
/* 59*/ KBD_ASCII, I, {S,C ""}, {S,C ""}, {S,C ""},
|
||||
/* 60*/ KBD_META, I, {S,C ""}, {S,C ""}, {S,C ""}, /* ALT left */
|
||||
#if !PCVT_NULLCHARS
|
||||
/* 61*/ KBD_ASCII, I, {S,C " "}, {S,C " "}, {S,C " "}, /* SPACE */
|
||||
#else
|
||||
/* 61*/ KBD_ASCII, I, {S,C " "}, {S,C " "}, {S,C "\000"}, /* SPACE */
|
||||
#endif /* PCVT_NULLCHARS */
|
||||
/* 62*/ KBD_META, I, {S,C ""}, {S,C ""}, {S,C ""}, /* ALT right */
|
||||
/* 63*/ KBD_ASCII, I, {S,C ""}, {S,C ""}, {S,C ""},
|
||||
/* 64*/ KBD_CTL, I, {S,C ""}, {S,C ""}, {S,C ""}, /* CTL right */
|
||||
/* 65*/ KBD_NONE, I, {S,C ""}, {S,C ""}, {S,C ""},
|
||||
/* 66*/ KBD_NONE, I, {S,C ""}, {S,C ""}, {S,C ""},
|
||||
/* 67*/ KBD_NONE, I, {S,C ""}, {S,C ""}, {S,C ""},
|
||||
/* 68*/ KBD_NONE, I, {S,C ""}, {S,C ""}, {S,C ""},
|
||||
/* 69*/ KBD_NONE, I, {S,C ""}, {S,C ""}, {S,C ""},
|
||||
/* 70*/ KBD_NONE, I, {S,C ""}, {S,C ""}, {S,C ""},
|
||||
/* 71*/ KBD_NONE, I, {S,C ""}, {S,C ""}, {S,C ""},
|
||||
/* 72*/ KBD_NONE, I, {S,C ""}, {S,C ""}, {S,C ""},
|
||||
/* 73*/ KBD_NONE, I, {S,C ""}, {S,C ""}, {S,C ""},
|
||||
/* 74*/ KBD_NONE, I, {S,C ""}, {S,C ""}, {S,C ""},
|
||||
/* 75*/ KBD_FUNC, I, {S,C "\033[2~"},{S,C "\033[2~"},{S,C "\033[2~"},/* INS */
|
||||
/* 76*/ KBD_FUNC, I, {S,C "\033[3~"},{S,C "\033[3~"},{S,C "\033[3~"},/* DEL */
|
||||
/* 77*/ KBD_NONE, I, {S,C ""}, {S,C ""}, {S,C ""},
|
||||
/* 78*/ KBD_NONE, I, {S,C ""}, {S,C ""}, {S,C ""},
|
||||
/* 79*/ KBD_CURSOR,I, {S,C "\033[D"},{S,C "\033OD"},{S,C "\033[D"}, /* CU <- */
|
||||
/* 80*/ KBD_FUNC, I, {S,C "\033[1~"},{S,C "\033[1~"},{S,C "\033[1~"},/* HOME = FIND*/
|
||||
/* 81*/ KBD_FUNC, I, {S,C "\033[4~"},{S,C "\033[4~"},{S,C "\033[4~"},/* END = SELECT */
|
||||
/* 82*/ KBD_NONE, I, {S,C ""}, {S,C ""}, {S,C ""},
|
||||
/* 83*/ KBD_CURSOR,I, {S,C "\033[A"},{S,C "\033OA"},{S,C "\033[A"}, /* CU ^ */
|
||||
/* 84*/ KBD_CURSOR,I, {S,C "\033[B"},{S,C "\033OB"},{S,C "\033[B"}, /* CU v */
|
||||
/* 85*/ KBD_FUNC, I, {S,C "\033[5~"},{S,C "\033[5~"},{S,C "\033[5~"},/*PG UP*/
|
||||
/* 86*/ KBD_FUNC, I, {S,C "\033[6~"},{S,C "\033[6~"},{S,C "\033[6~"},/*PG DN*/
|
||||
/* 87*/ KBD_NONE, I, {S,C ""}, {S,C ""}, {S,C ""},
|
||||
/* 88*/ KBD_NONE, I, {S,C ""}, {S,C ""}, {S,C ""},
|
||||
/* 89*/ KBD_CURSOR,I, {S,C "\033[C"},{S,C "\033OC"},{S,C "\033[C"}, /* CU -> */
|
||||
/* 90*/ KBD_NUM, I, {S,C ""}, {S,C ""}, {S,C ""},
|
||||
/* 91*/ KBD_KP, I, {S,C "7"}, {S,C "\033Ow"},{S,C "7"},
|
||||
/* 92*/ KBD_KP, I, {S,C "4"}, {S,C "\033Ot"},{S,C "4"},
|
||||
/* 93*/ KBD_KP, I, {S,C "1"}, {S,C "\033Oq"},{S,C "1"},
|
||||
/* 94*/ KBD_NONE, I, {S,C ""}, {S,C ""}, {S,C ""},
|
||||
/* 95*/ KBD_KP, I, {S,C "/"}, {S,C "/"}, {S,C "/"},
|
||||
/* 96*/ KBD_KP, I, {S,C "8"}, {S,C "\033Ox"},{S,C "8"},
|
||||
/* 97*/ KBD_KP, I, {S,C "5"}, {S,C "\033Ou"},{S,C "5"},
|
||||
/* 98*/ KBD_KP, I, {S,C "2"}, {S,C "\033Or"},{S,C "2"},
|
||||
/* 99*/ KBD_KP, I, {S,C "0"}, {S,C "\033Op"},{S,C "0"},
|
||||
/*100*/ KBD_KP, I, {S,C "*"}, {S,C "*"}, {S,C "*"},
|
||||
/*101*/ KBD_KP, I, {S,C "9"}, {S,C "\033Oy"},{S,C "9"},
|
||||
/*102*/ KBD_KP, I, {S,C "6"}, {S,C "\033Ov"},{S,C "6"},
|
||||
/*103*/ KBD_KP, I, {S,C "3"}, {S,C "\033Os"},{S,C "3"},
|
||||
/*104*/ KBD_KP, I, {S,C "."}, {S,C "\033On"},{S,C "."},
|
||||
/*105*/ KBD_KP, I, {S,C "-"}, {S,C "\033Om"},{S,C "-"},
|
||||
/*106*/ KBD_KP, I, {S,C "+"}, {S,C "+"}, {S,C "+"},
|
||||
/*107*/ KBD_NONE, I, {S,C ""}, {S,C ""}, {S,C ""},
|
||||
/*108*/ KBD_RETURN,I, {S,C "\r"}, {S,C "\033OM"},{S,C "\r"}, /* KP ENTER */
|
||||
/*109*/ KBD_NONE, I, {S,C ""}, {S,C ""}, {S,C ""},
|
||||
/*110*/ KBD_ASCII, I, {S,C "\033"}, {S,C "\033"}, {S,C "\033"},
|
||||
/*111*/ KBD_NONE, I, {S,C ""}, {S,C ""}, {S,C ""},
|
||||
/*112*/ KBD_FUNC, I, {F,V fkey1}, {F,V sfkey1}, {F,V cfkey1}, /* F1 */
|
||||
/*113*/ KBD_FUNC, I, {F,V fkey2}, {F,V sfkey2}, {F,V cfkey2}, /* F2 */
|
||||
/*114*/ KBD_FUNC, I, {F,V fkey3}, {F,V sfkey3}, {F,V cfkey3}, /* F3 */
|
||||
/*115*/ KBD_FUNC, I, {F,V fkey4}, {F,V sfkey4}, {F,V cfkey4}, /* F4 */
|
||||
/*116*/ KBD_FUNC, I, {F,V fkey5}, {F,V sfkey5}, {F,V cfkey5}, /* F5 */
|
||||
/*117*/ KBD_FUNC, I, {F,V fkey6}, {F,V sfkey6}, {F,V cfkey6}, /* F6 */
|
||||
/*118*/ KBD_FUNC, I, {F,V fkey7}, {F,V sfkey7}, {F,V cfkey7}, /* F7 */
|
||||
/*119*/ KBD_FUNC, I, {F,V fkey8}, {F,V sfkey8}, {F,V cfkey8}, /* F8 */
|
||||
/*120*/ KBD_FUNC, I, {F,V fkey9}, {F,V sfkey9}, {F,V cfkey9}, /* F9 */
|
||||
/*121*/ KBD_FUNC, I, {F,V fkey10}, {F,V sfkey10}, {F,V cfkey10}, /* F10 */
|
||||
/*122*/ KBD_FUNC, I, {F,V fkey11}, {F,V sfkey11}, {F,V cfkey11}, /* F11 */
|
||||
/*123*/ KBD_FUNC, I, {F,V fkey12}, {F,V sfkey12}, {F,V cfkey12}, /* F12 */
|
||||
/*124*/ KBD_KP, I, {S,C ""}, {S,C ""}, {S,C ""},
|
||||
/*125*/ KBD_SCROLL,I, {S,C ""}, {S,C ""}, {S,C ""},
|
||||
/*126*/ KBD_BREAK, I, {S,C ""}, {S,C ""}, {S,C ""},
|
||||
/*127*/ KBD_FUNC, I, {S,C ""}, {S,C ""}, {S,C ""}, /* SysRq */
|
||||
|
||||
#undef C
|
||||
#undef V
|
||||
#undef S
|
||||
#undef F
|
||||
#undef I
|
||||
};
|
||||
|
||||
#endif /* PCVT_ALT_ENH */
|
||||
|
||||
static short keypad2num[] = {
|
||||
7, 4, 1, -1, -1, 8, 5, 2, 0, -1, 9, 6, 3, -1, -1, -1, -1
|
||||
};
|
||||
|
||||
#if PCVT_USL_VT_COMPAT
|
||||
|
||||
#define N_KEYNUMS 128
|
||||
|
||||
/*
|
||||
* this is the reverse mapping from keynumbers to scanset 1 codes
|
||||
* it is used to emulate the SysV-style GIO_KEYMAP ioctl cmd
|
||||
*/
|
||||
|
||||
static u_char key2scan1[N_KEYNUMS] = {
|
||||
0,0x29,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09, /* 0 */
|
||||
0x0a,0x0b,0x0c,0x0d, 0,0x0e,0x0f,0x10,0x11,0x12, /* 10 */
|
||||
0x13,0x14,0x15,0x16,0x17,0x18,0x19,0x1a,0x1b,0x2b, /* 20 */
|
||||
0x3a,0x1e,0x1f,0x20,0x21,0x22,0x23,0x24,0x25,0x26, /* 30 */
|
||||
0x27,0x28, 0,0x1c,0x2a,0x56,0x2c,0x2d,0x2e,0x2f, /* 40 */
|
||||
0x30,0x31,0x32,0x33,0x34,0x35,0x56,0x36,0x1d, 0, /* 50 */
|
||||
0x38,0x39, 0, 0, 0, 0, 0, 0, 0, 0, /* 60 */
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 70 */
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 80 */
|
||||
0x45,0x47,0x4b,0x4f, 0, 0,0x48,0x4c,0x50,0x52, /* 90 */
|
||||
0x37,0x49,0x4d,0x51,0x53,0x4a,0x4e, 0, 0, 0, /* 100 */
|
||||
0x01, 0,0x3b,0x3c,0x3d,0x3e,0x3f,0x40,0x41,0x42, /* 110 */
|
||||
0x43,0x44,0x57,0x58, 0,0x46, 0,0x54 /* 120 */
|
||||
};
|
||||
|
||||
/*
|
||||
* SysV is brain-dead enough to stick on the IBM code page 437. So we
|
||||
* have to translate our keymapping into IBM 437 (possibly losing keys),
|
||||
* in order to have the X server convert it back into ISO8859.1
|
||||
*/
|
||||
|
||||
/* NB: this table only contains the mapping for codes >= 128 */
|
||||
|
||||
static u_char iso2ibm437[] =
|
||||
{
|
||||
0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0xff, 0xad, 0x9b, 0x9c, 0, 0x9d, 0, 0x40,
|
||||
0x6f, 0x63, 0x61, 0xae, 0, 0, 0, 0,
|
||||
0xf8, 0xf1, 0xfd, 0x33, 0, 0xe6, 0, 0xfa,
|
||||
0, 0x31, 0x6f, 0xaf, 0xac, 0xab, 0, 0xa8,
|
||||
0x41, 0x41, 0x41, 0x41, 0x8e, 0x8f, 0x92, 0x80,
|
||||
0x45, 0x90, 0x45, 0x45, 0x49, 0x49, 0x49, 0x49,
|
||||
0x81, 0xa5, 0x4f, 0x4f, 0x4f, 0x4f, 0x99, 0x4f,
|
||||
0x4f, 0x55, 0x55, 0x55, 0x9a, 0x59, 0, 0xe1,
|
||||
0x85, 0xa0, 0x83, 0x61, 0x84, 0x86, 0x91, 0x87,
|
||||
0x8a, 0x82, 0x88, 0x89, 0x8d, 0xa1, 0x8c, 0x8b,
|
||||
0, 0xa4, 0x95, 0xa2, 0x93, 0x6f, 0x94, 0x6f,
|
||||
0x6f, 0x97, 0xa3, 0x96, 0x81, 0x98, 0, 0
|
||||
};
|
||||
|
||||
#endif /* PCVT_USL_VT_COMPAT */
|
||||
|
2185
sys/i386/isa/pcvt/pcvt_out.c
Normal file
2185
sys/i386/isa/pcvt/pcvt_out.c
Normal file
File diff suppressed because it is too large
Load Diff
2151
sys/i386/isa/pcvt/pcvt_sup.c
Normal file
2151
sys/i386/isa/pcvt/pcvt_sup.c
Normal file
File diff suppressed because it is too large
Load Diff
475
sys/i386/isa/pcvt/pcvt_tbl.h
Normal file
475
sys/i386/isa/pcvt/pcvt_tbl.h
Normal file
@ -0,0 +1,475 @@
|
||||
/*
|
||||
* Copyright (c) 1992, 1995 Hellmuth Michaelis.
|
||||
*
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
* 3. All advertising materials mentioning features or use of this software
|
||||
* must display the following acknowledgement:
|
||||
* This product includes software developed by Hellmuth Michaelis
|
||||
* 4. The name authors may not be used to endorse or promote products
|
||||
* derived from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE AUTHORS ``AS IS'' AND ANY EXPRESS OR
|
||||
* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||
* IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
*
|
||||
* @(#)pcvt_tbl.h, 3.20, Last Edit-Date: [Thu Jan 5 15:56:17 1995]
|
||||
*
|
||||
*/
|
||||
|
||||
/*---------------------------------------------------------------------------*
|
||||
*
|
||||
* pcvt_tbl.h VT220 Driver Character Set Conversion Tables
|
||||
* ------------------------------------------------------------
|
||||
* -hm splitting off pccons_out.c
|
||||
* -hm default tables for pure mda/hcg/cga
|
||||
*
|
||||
* in pcvt_out.c, hooks are provided for the following charactersets:
|
||||
*
|
||||
* HAVECS_BRITISH
|
||||
* HAVECS_ASCII
|
||||
* HAVECS_FINNISH
|
||||
* HAVECS_NORWEGIANDANISH
|
||||
* HAVECS_SWEDISH
|
||||
* HAVECS_GERMAN
|
||||
* HAVECS_FRENCHCANADA
|
||||
* HAVECS_FRENCH
|
||||
* HAVECS_ITALIAN
|
||||
* HAVECS_SPANISH
|
||||
* HAVECS_SPECIAL
|
||||
* HAVECS_ALTERNATEROM1
|
||||
* HAVECS_ALTERNATEROM2
|
||||
* HAVECS_ROMAN8
|
||||
* HAVECS_DUTCH
|
||||
* HAVECS_SUPPLEMENTAL
|
||||
* HAVECS_SWISS
|
||||
* HAVECS_TECHNICAL
|
||||
* HAVECS_ISOLATIN
|
||||
*
|
||||
* to add support for a new charcterset, you have to provide the
|
||||
* table named "cs_<charset>",define the according "HAVECS_<CHARSET>"
|
||||
* and recompile everything. ref: pcvt_out.c, vt_designate()
|
||||
*
|
||||
*---------------------------------------------------------------------------*/
|
||||
|
||||
/*===========================================================================*
|
||||
* DEFAULT TABLES FOR MDA/HCG/CGA
|
||||
*===========================================================================*/
|
||||
|
||||
/*---------------------------------------------------------------------------*
|
||||
* ASCII Characterset
|
||||
*---------------------------------------------------------------------------*/
|
||||
#define HAVECSD_ASCII
|
||||
u_short csd_ascii[CSSIZE] = {
|
||||
/* 20 */ 0x20 | CSL, 0x21 | CSL, 0x22 | CSL, 0x23 | CSL,
|
||||
/* 24 */ 0x24 | CSL, 0x25 | CSL, 0x26 | CSL, 0x27 | CSL,
|
||||
/* 28 */ 0x28 | CSL, 0x29 | CSL, 0x2A | CSL, 0x2B | CSL,
|
||||
/* 2C */ 0x2C | CSL, 0x2D | CSL, 0x2E | CSL, 0x2F | CSL,
|
||||
|
||||
/* 30 */ 0x30 | CSL, 0x31 | CSL, 0x32 | CSL, 0x33 | CSL,
|
||||
/* 34 */ 0x34 | CSL, 0x35 | CSL, 0x36 | CSL, 0x37 | CSL,
|
||||
/* 38 */ 0x38 | CSL, 0x39 | CSL, 0x3A | CSL, 0x3B | CSL,
|
||||
/* 3C */ 0x3C | CSL, 0x3D | CSL, 0x3E | CSL, 0x3F | CSL,
|
||||
|
||||
/* 40 */ 0x40 | CSL, 0x41 | CSL, 0x42 | CSL, 0x43 | CSL,
|
||||
/* 44 */ 0x44 | CSL, 0x45 | CSL, 0x46 | CSL, 0x47 | CSL,
|
||||
/* 48 */ 0x48 | CSL, 0x49 | CSL, 0x4A | CSL, 0x4B | CSL,
|
||||
/* 4C */ 0x4C | CSL, 0x4D | CSL, 0x4E | CSL, 0x4F | CSL,
|
||||
|
||||
/* 50 */ 0x50 | CSL, 0x51 | CSL, 0x52 | CSL, 0x53 | CSL,
|
||||
/* 54 */ 0x54 | CSL, 0x55 | CSL, 0x56 | CSL, 0x57 | CSL,
|
||||
/* 58 */ 0x58 | CSL, 0x59 | CSL, 0x5A | CSL, 0x5B | CSL,
|
||||
/* 5C */ 0x5C | CSL, 0x5D | CSL, 0x5E | CSL, 0x5F | CSL,
|
||||
|
||||
/* 60 */ 0x60 | CSL, 0x61 | CSL, 0x62 | CSL, 0x63 | CSL,
|
||||
/* 64 */ 0x64 | CSL, 0x65 | CSL, 0x66 | CSL, 0x67 | CSL,
|
||||
/* 68 */ 0x68 | CSL, 0x69 | CSL, 0x6A | CSL, 0x6B | CSL,
|
||||
/* 6C */ 0x6C | CSL, 0x6D | CSL, 0x6E | CSL, 0x6F | CSL,
|
||||
|
||||
/* 70 */ 0x70 | CSL, 0x71 | CSL, 0x72 | CSL, 0x73 | CSL,
|
||||
/* 74 */ 0x74 | CSL, 0x75 | CSL, 0x76 | CSL, 0x77 | CSL,
|
||||
/* 78 */ 0x78 | CSL, 0x79 | CSL, 0x7A | CSL, 0x7B | CSL,
|
||||
/* 7C */ 0x7C | CSL, 0x7D | CSL, 0x7E | CSL, 0x7F | CSL,
|
||||
};
|
||||
|
||||
/*---------------------------------------------------------------------------*
|
||||
* DEC Supplemental Graphic Characterset
|
||||
*---------------------------------------------------------------------------*/
|
||||
#define HAVECSD_SUPPLEMENTAL
|
||||
u_short csd_supplemental[CSSIZE] = {
|
||||
/* 20 */ 0x20 | CSL, 0xAD | CSL, 0x9B | CSL, 0x9C | CSL,
|
||||
/* 24 */ 0x20 | CSL, 0x9D | CSL, 0x20 | CSL, 0x20 | CSL,
|
||||
/* 28 */ 0x20 | CSL, 0x20 | CSL, 0xA6 | CSL, 0xAE | CSL,
|
||||
/* 2C */ 0x20 | CSL, 0x20 | CSL, 0x20 | CSL, 0x20 | CSL,
|
||||
|
||||
/* 30 */ 0xF8 | CSL, 0xF1 | CSL, 0xFD | CSL, 0x20 | CSL,
|
||||
/* 34 */ 0x20 | CSL, 0xE6 | CSL, 0x20 | CSL, 0x20 | CSL,
|
||||
/* 38 */ 0x20 | CSL, 0x20 | CSL, 0xA7 | CSL, 0xAF | CSL,
|
||||
/* 3C */ 0xAC | CSL, 0xAB | CSL, 0x20 | CSL, 0xA8 | CSL,
|
||||
|
||||
/* 40 */ 0x20 | CSL, 0x20 | CSL, 0x20 | CSL, 0x20 | CSL,
|
||||
/* 44 */ 0x8E | CSL, 0x8F | CSL, 0x92 | CSL, 0x80 | CSL,
|
||||
/* 48 */ 0x20 | CSL, 0x90 | CSL, 0x20 | CSL, 0x20 | CSL,
|
||||
/* 4C */ 0x8D | CSL, 0xA1 | CSL, 0x8C | CSL, 0x8B | CSL,
|
||||
|
||||
/* 50 */ 0x20 | CSL, 0xA5 | CSL, 0x20 | CSL, 0x20 | CSL,
|
||||
/* 54 */ 0x20 | CSL, 0x20 | CSL, 0x99 | CSL, 0x20 | CSL,
|
||||
/* 58 */ 0x20 | CSL, 0x20 | CSL, 0x20 | CSL, 0x20 | CSL,
|
||||
/* 5C */ 0x9A | CSL, 0x20 | CSL, 0x20 | CSL, 0xE1 | CSL,
|
||||
|
||||
/* 60 */ 0x85 | CSL, 0xA0 | CSL, 0x83 | CSL, 0x20 | CSL,
|
||||
/* 64 */ 0x84 | CSL, 0x86 | CSL, 0x91 | CSL, 0x87 | CSL,
|
||||
/* 68 */ 0x8A | CSL, 0x82 | CSL, 0x88 | CSL, 0x89 | CSL,
|
||||
/* 6C */ 0x8D | CSL, 0xA1 | CSL, 0x8C | CSL, 0x8B | CSL,
|
||||
|
||||
/* 70 */ 0x20 | CSL, 0xA4 | CSL, 0x95 | CSL, 0xA2 | CSL,
|
||||
/* 74 */ 0x93 | CSL, 0x20 | CSL, 0x94 | CSL, 0x20 | CSL,
|
||||
/* 78 */ 0x20 | CSL, 0x97 | CSL, 0xA3 | CSL, 0x96 | CSL,
|
||||
/* 7C */ 0x81 | CSL, 0x98 | CSL, 0x20 | CSL, 0x20 | CSL
|
||||
};
|
||||
|
||||
/*---------------------------------------------------------------------------*
|
||||
* DEC Special Graphic Characterset
|
||||
*---------------------------------------------------------------------------*/
|
||||
#define HAVECSD_SPECIAL
|
||||
u_short csd_special[CSSIZE] = {
|
||||
/* 20 */ 0x20 | CSL, 0x21 | CSL, 0x22 | CSL, 0x23 | CSL,
|
||||
/* 24 */ 0x24 | CSL, 0x25 | CSL, 0x26 | CSL, 0x27 | CSL,
|
||||
/* 28 */ 0x28 | CSL, 0x29 | CSL, 0x2A | CSL, 0x2B | CSL,
|
||||
/* 2C */ 0x2C | CSL, 0x2D | CSL, 0x2E | CSL, 0x2F | CSL,
|
||||
|
||||
/* 30 */ 0x30 | CSL, 0x31 | CSL, 0x32 | CSL, 0x33 | CSL,
|
||||
/* 34 */ 0x34 | CSL, 0x35 | CSL, 0x36 | CSL, 0x37 | CSL,
|
||||
/* 38 */ 0x38 | CSL, 0x39 | CSL, 0x3A | CSL, 0x3B | CSL,
|
||||
/* 3C */ 0x3C | CSL, 0x3D | CSL, 0x3E | CSL, 0x3F | CSL,
|
||||
|
||||
/* 40 */ 0x40 | CSL, 0x41 | CSL, 0x42 | CSL, 0x43 | CSL,
|
||||
/* 44 */ 0x44 | CSL, 0x45 | CSL, 0x46 | CSL, 0x47 | CSL,
|
||||
/* 48 */ 0x48 | CSL, 0x49 | CSL, 0x4A | CSL, 0x4B | CSL,
|
||||
/* 4C */ 0x4C | CSL, 0x4D | CSL, 0x4E | CSL, 0x4F | CSL,
|
||||
|
||||
/* 50 */ 0x50 | CSL, 0x51 | CSL, 0x52 | CSL, 0x53 | CSL,
|
||||
/* 54 */ 0x54 | CSL, 0x55 | CSL, 0x56 | CSL, 0x57 | CSL,
|
||||
/* 58 */ 0x58 | CSL, 0x59 | CSL, 0x5A | CSL, 0x5B | CSL,
|
||||
/* 5C */ 0x5C | CSL, 0x5D | CSL, 0x5E | CSL, 0x20 | CSL,
|
||||
|
||||
/* 60 */ 0x20 | CSL, 0xB0 | CSL, 0x20 | CSL, 0x20 | CSL,
|
||||
/* 64 */ 0x20 | CSL, 0x20 | CSL, 0xF8 | CSL, 0xF1 | CSL,
|
||||
/* 68 */ 0x20 | CSL, 0x20 | CSL, 0xD9 | CSL, 0xBF | CSL,
|
||||
/* 6C */ 0xDA | CSL, 0xC0 | CSL, 0xC5 | CSL, 0x20 | CSL,
|
||||
|
||||
/* 70 */ 0x20 | CSL, 0xC4 | CSL, 0x20 | CSL, 0x20 | CSL,
|
||||
/* 74 */ 0xC3 | CSL, 0xB4 | CSL, 0xC1 | CSL, 0xC2 | CSL,
|
||||
/* 78 */ 0xB3 | CSL, 0xF3 | CSL, 0xF2 | CSL, 0xE3 | CSL,
|
||||
/* 7C */ 0x20 | CSL, 0x9C | CSL, 0x20 | CSL, 0x20 | CSL
|
||||
};
|
||||
|
||||
/*---------------------------------------------------------------------------*
|
||||
* DEC Technical Characterset
|
||||
*---------------------------------------------------------------------------*/
|
||||
#define HAVECSD_TECHNICAL
|
||||
u_short csd_technical[CSSIZE] = {
|
||||
/* 20 */ 0xFE | CSH, 0xFB | CSL, 0xDA | CSL, 0xC4 | CSL,
|
||||
/* 24 */ 0xF4 | CSL, 0xF5 | CSL, 0xB3 | CSL, 0xDA | CSL,
|
||||
/* 28 */ 0xC0 | CSL, 0xBF | CSL, 0xD9 | CSL, 0x20 | CSL,
|
||||
/* 2C */ 0x20 | CSL, 0x20 | CSL, 0x20 | CSL, 0x20 | CSL,
|
||||
|
||||
/* 30 */ 0x20 | CSL, 0x20 | CSL, 0x20 | CSL, 0x20 | CSL,
|
||||
/* 34 */ 0x20 | CSL, 0xAA | CSL, 0xA9 | CSL, 0x3E | CSL,
|
||||
/* 38 */ 0x20 | CSL, 0x20 | CSL, 0x20 | CSL, 0x20 | CSL,
|
||||
/* 3C */ 0xF3 | CSL, 0x20 | CSL, 0xF2 | CSL, 0x20 | CSL,
|
||||
|
||||
/* 40 */ 0x20 | CSL, 0x20 | CSL, 0xEC | CSL, 0xF6 | CSL,
|
||||
/* 44 */ 0x20 | CSL, 0x20 | CSL, 0xE8 | CSL, 0xE2 | CSL,
|
||||
/* 48 */ 0x20 | CSL, 0xF7 | CSL, 0xE9 | CSL, 0x78 | CSL,
|
||||
/* 4C */ 0x20 | CSL, 0x20 | CSL, 0x20 | CSL, 0xF0 | CSL,
|
||||
|
||||
/* 50 */ 0x20 | CSL, 0x20 | CSL, 0x20 | CSL, 0xE4 | CSL,
|
||||
/* 54 */ 0x20 | CSL, 0x20 | CSL, 0xFB | CSL, 0xEA | CSL,
|
||||
/* 58 */ 0x20 | CSL, 0x20 | CSL, 0x20 | CSL, 0x20 | CSL,
|
||||
/* 5C */ 0xEF | CSL, 0x20 | CSL, 0x20 | CSL, 0x20 | CSL,
|
||||
|
||||
/* 60 */ 0xAA | CSL, 0xE0 | CSL, 0xE1 | CSL, 0x20 | CSL,
|
||||
/* 64 */ 0xEB | CSL, 0x20 | CSL, 0xED | CSL, 0x59 | CSL,
|
||||
/* 68 */ 0x20 | CSL, 0x20 | CSL, 0xE9 | CSL, 0x20 | CSL,
|
||||
/* 6C */ 0x20 | CSL, 0x20 | CSL, 0x20 | CSL, 0x20 | CSL,
|
||||
|
||||
/* 70 */ 0xE3 | CSL, 0x20 | CSL, 0x20 | CSL, 0xE5 | CSL,
|
||||
/* 74 */ 0xE7 | CSL, 0x20 | CSL, 0x9F | CSL, 0x20 | CSL,
|
||||
/* 78 */ 0x20 | CSL, 0x20 | CSL, 0x20 | CSL, 0x20 | CSL,
|
||||
/* 7C */ 0x20 | CSL, 0x20 | CSL, 0x20 | CSL, 0x20 | CSL
|
||||
};
|
||||
|
||||
/*---------------------------------------------------------------------------*
|
||||
* ISO Latin-1 Characterset
|
||||
*---------------------------------------------------------------------------*/
|
||||
#define HAVECSD_ISOLATIN
|
||||
u_short csd_isolatin[CSSIZE] = {
|
||||
/* 20 */ 0x20 | CSL, 0xAD | CSL, 0x9B | CSL, 0x9C | CSL,
|
||||
/* 24 */ 0x20 | CSL, 0x9D | CSL, 0x7C | CSL, 0x20 | CSL,
|
||||
/* 28 */ 0x22 | CSL, 0x20 | CSL, 0xA6 | CSL, 0xAE | CSL,
|
||||
/* 2C */ 0xAA | CSL, 0x2D | CSL, 0x20 | CSL, 0x2D | CSL,
|
||||
|
||||
/* 30 */ 0xF8 | CSL, 0xF1 | CSL, 0xFD | CSL, 0x20 | CSL,
|
||||
/* 34 */ 0x27 | CSL, 0xE6 | CSL, 0x20 | CSL, 0x20 | CSL,
|
||||
/* 38 */ 0x20 | CSL, 0x20 | CSL, 0xA7 | CSL, 0xAF | CSL,
|
||||
/* 3C */ 0xAC | CSL, 0xAB | CSL, 0x20 | CSL, 0xA8 | CSL,
|
||||
|
||||
/* 40 */ 0x20 | CSL, 0x20 | CSL, 0x20 | CSL, 0x20 | CSL,
|
||||
/* 44 */ 0x8E | CSL, 0x8F | CSL, 0x92 | CSL, 0x80 | CSL,
|
||||
/* 48 */ 0x20 | CSL, 0x90 | CSL, 0x20 | CSL, 0x20 | CSL,
|
||||
/* 4C */ 0x8D | CSL, 0xA1 | CSL, 0x8C | CSL, 0x8B | CSL,
|
||||
|
||||
/* 50 */ 0x20 | CSL, 0xA5 | CSL, 0x20 | CSL, 0x20 | CSL,
|
||||
/* 54 */ 0x20 | CSL, 0x20 | CSL, 0x99 | CSL, 0x78 | CSL,
|
||||
/* 58 */ 0x20 | CSL, 0x20 | CSL, 0x20 | CSL, 0x20 | CSL,
|
||||
/* 5C */ 0x9A | CSL, 0x20 | CSL, 0x20 | CSL, 0xE1 | CSL,
|
||||
|
||||
/* 60 */ 0x85 | CSL, 0xA0 | CSL, 0x83 | CSL, 0x20 | CSL,
|
||||
/* 64 */ 0x84 | CSL, 0x86 | CSL, 0x91 | CSL, 0x87 | CSL,
|
||||
/* 68 */ 0x8A | CSL, 0x82 | CSL, 0x88 | CSL, 0x89 | CSL,
|
||||
/* 6C */ 0x8D | CSL, 0xA1 | CSL, 0x8C | CSL, 0x8B | CSL,
|
||||
|
||||
/* 70 */ 0x20 | CSL, 0xA4 | CSL, 0x95 | CSL, 0xA2 | CSL,
|
||||
/* 74 */ 0x93 | CSL, 0x20 | CSL, 0x94 | CSL, 0xF6 | CSL,
|
||||
/* 78 */ 0x20 | CSL, 0x97 | CSL, 0xA3 | CSL, 0x96 | CSL,
|
||||
/* 7C */ 0x81 | CSL, 0x20 | CSL, 0x20 | CSL, 0x98 | CSL
|
||||
};
|
||||
|
||||
/*===========================================================================*
|
||||
* EXTENDED TABLES FOR EGA/VGA
|
||||
*===========================================================================*/
|
||||
|
||||
/*---------------------------------------------------------------------------*
|
||||
* ASCII Characterset
|
||||
*---------------------------------------------------------------------------*/
|
||||
#define HAVECSE_ASCII
|
||||
u_short cse_ascii[CSSIZE] = {
|
||||
/* 20 */ 0x20 | CSL, 0x21 | CSL, 0x22 | CSL, 0x23 | CSL,
|
||||
/* 24 */ 0x24 | CSL, 0x25 | CSL, 0x26 | CSL, 0x27 | CSL,
|
||||
/* 28 */ 0x28 | CSL, 0x29 | CSL, 0x2A | CSL, 0x2B | CSL,
|
||||
/* 2C */ 0x2C | CSL, 0x2D | CSL, 0x2E | CSL, 0x2F | CSL,
|
||||
|
||||
/* 30 */ 0x30 | CSL, 0x31 | CSL, 0x32 | CSL, 0x33 | CSL,
|
||||
/* 34 */ 0x34 | CSL, 0x35 | CSL, 0x36 | CSL, 0x37 | CSL,
|
||||
/* 38 */ 0x38 | CSL, 0x39 | CSL, 0x3A | CSL, 0x3B | CSL,
|
||||
/* 3C */ 0x3C | CSL, 0x3D | CSL, 0x3E | CSL, 0x3F | CSL,
|
||||
|
||||
/* 40 */ 0x40 | CSL, 0x41 | CSL, 0x42 | CSL, 0x43 | CSL,
|
||||
/* 44 */ 0x44 | CSL, 0x45 | CSL, 0x46 | CSL, 0x47 | CSL,
|
||||
/* 48 */ 0x48 | CSL, 0x49 | CSL, 0x4A | CSL, 0x4B | CSL,
|
||||
/* 4C */ 0x4C | CSL, 0x4D | CSL, 0x4E | CSL, 0x4F | CSL,
|
||||
|
||||
/* 50 */ 0x50 | CSL, 0x51 | CSL, 0x52 | CSL, 0x53 | CSL,
|
||||
/* 54 */ 0x54 | CSL, 0x55 | CSL, 0x56 | CSL, 0x57 | CSL,
|
||||
/* 58 */ 0x58 | CSL, 0x59 | CSL, 0x5A | CSL, 0x5B | CSL,
|
||||
/* 5C */ 0x5C | CSL, 0x5D | CSL, 0x5E | CSL, 0x5F | CSL,
|
||||
|
||||
/* 60 */ 0x60 | CSL, 0x61 | CSL, 0x62 | CSL, 0x63 | CSL,
|
||||
/* 64 */ 0x64 | CSL, 0x65 | CSL, 0x66 | CSL, 0x67 | CSL,
|
||||
/* 68 */ 0x68 | CSL, 0x69 | CSL, 0x6A | CSL, 0x6B | CSL,
|
||||
/* 6C */ 0x6C | CSL, 0x6D | CSL, 0x6E | CSL, 0x6F | CSL,
|
||||
|
||||
/* 70 */ 0x70 | CSL, 0x71 | CSL, 0x72 | CSL, 0x73 | CSL,
|
||||
/* 74 */ 0x74 | CSL, 0x75 | CSL, 0x76 | CSL, 0x77 | CSL,
|
||||
/* 78 */ 0x78 | CSL, 0x79 | CSL, 0x7A | CSL, 0x7B | CSL,
|
||||
/* 7C */ 0x7C | CSL, 0x7D | CSL, 0x7E | CSL, 0xB0 | CSL,
|
||||
};
|
||||
|
||||
/*---------------------------------------------------------------------------*
|
||||
* DEC Supplemental Graphic Characterset
|
||||
*---------------------------------------------------------------------------*/
|
||||
#define HAVECSE_SUPPLEMENTAL
|
||||
u_short cse_supplemental[CSSIZE] = {
|
||||
/* 20 */ 0x20 | CSL, 0xAD | CSL, 0x9B | CSL, 0x9C | CSL,
|
||||
/* 24 */ 0x9F | CSH, 0x67 | CSH, 0x9F | CSH, 0x15 | CSL,
|
||||
/* 28 */ 0x9D | CSH, 0x9C | CSH, 0xA6 | CSL, 0xAE | CSL,
|
||||
/* 2C */ 0x9F | CSH, 0x9F | CSH, 0x9F | CSH, 0x9F | CSH,
|
||||
|
||||
/* 30 */ 0xF8 | CSL, 0xF1 | CSL, 0xFD | CSL, 0x9B | CSH,
|
||||
/* 34 */ 0x9F | CSH, 0xE6 | CSL, 0x14 | CSL, 0x99 | CSH,
|
||||
/* 38 */ 0x9F | CSH, 0x98 | CSH, 0xA7 | CSL, 0xAF | CSL,
|
||||
/* 3C */ 0xAC | CSL, 0xAB | CSL, 0x9F | CSH, 0xA8 | CSL,
|
||||
|
||||
/* 40 */ 0x97 | CSH, 0x96 | CSH, 0x95 | CSH, 0x94 | CSH,
|
||||
/* 44 */ 0x8E | CSL, 0x8F | CSL, 0x92 | CSL, 0x80 | CSL,
|
||||
/* 48 */ 0x93 | CSH, 0x90 | CSL, 0x92 | CSH, 0x91 | CSH,
|
||||
/* 4C */ 0x90 | CSH, 0x8F | CSH, 0x8E | CSH, 0x8D | CSH,
|
||||
|
||||
/* 50 */ 0x9F | CSH, 0xA5 | CSL, 0x8C | CSH, 0x8B | CSH,
|
||||
/* 54 */ 0x8A | CSH, 0x89 | CSH, 0x99 | CSL, 0x88 | CSH,
|
||||
/* 58 */ 0x87 | CSH, 0x86 | CSH, 0x85 | CSH, 0x84 | CSH,
|
||||
/* 5C */ 0x9A | CSL, 0x83 | CSH, 0x9F | CSH, 0xE1 | CSL,
|
||||
|
||||
/* 60 */ 0x85 | CSL, 0xA0 | CSL, 0x83 | CSL, 0x82 | CSH,
|
||||
/* 64 */ 0x84 | CSL, 0x86 | CSL, 0x91 | CSL, 0x87 | CSL,
|
||||
/* 68 */ 0x8A | CSL, 0x82 | CSL, 0x88 | CSL, 0x89 | CSL,
|
||||
/* 6C */ 0x8D | CSL, 0xA1 | CSL, 0x8C | CSL, 0x8B | CSL,
|
||||
|
||||
/* 70 */ 0x9F | CSH, 0xA4 | CSL, 0x95 | CSL, 0xA2 | CSL,
|
||||
/* 74 */ 0x93 | CSL, 0x81 | CSH, 0x94 | CSL, 0x80 | CSH,
|
||||
/* 78 */ 0x7F | CSH, 0x97 | CSL, 0xA3 | CSL, 0x96 | CSL,
|
||||
/* 7C */ 0x81 | CSL, 0x98 | CSL, 0x9F | CSH, 0x20 | CSL
|
||||
};
|
||||
|
||||
/*---------------------------------------------------------------------------*
|
||||
* DEC Special Graphic Characterset
|
||||
*---------------------------------------------------------------------------*/
|
||||
#define HAVECSE_SPECIAL
|
||||
u_short cse_special[CSSIZE] = {
|
||||
/* 20 */ 0x20 | CSL, 0x21 | CSL, 0x22 | CSL, 0x23 | CSL,
|
||||
/* 24 */ 0x24 | CSL, 0x25 | CSL, 0x26 | CSL, 0x27 | CSL,
|
||||
/* 28 */ 0x28 | CSL, 0x29 | CSL, 0x2A | CSL, 0x2B | CSL,
|
||||
/* 2C */ 0x2C | CSL, 0x2D | CSL, 0x2E | CSL, 0x2F | CSL,
|
||||
|
||||
/* 30 */ 0x30 | CSL, 0x31 | CSL, 0x32 | CSL, 0x33 | CSL,
|
||||
/* 34 */ 0x34 | CSL, 0x35 | CSL, 0x36 | CSL, 0x37 | CSL,
|
||||
/* 38 */ 0x38 | CSL, 0x39 | CSL, 0x3A | CSL, 0x3B | CSL,
|
||||
/* 3C */ 0x3C | CSL, 0x3D | CSL, 0x3E | CSL, 0x3F | CSL,
|
||||
|
||||
/* 40 */ 0x40 | CSL, 0x41 | CSL, 0x42 | CSL, 0x43 | CSL,
|
||||
/* 44 */ 0x44 | CSL, 0x45 | CSL, 0x46 | CSL, 0x47 | CSL,
|
||||
/* 48 */ 0x48 | CSL, 0x49 | CSL, 0x4A | CSL, 0x4B | CSL,
|
||||
/* 4C */ 0x4C | CSL, 0x4D | CSL, 0x4E | CSL, 0x4F | CSL,
|
||||
|
||||
/* 50 */ 0x50 | CSL, 0x51 | CSL, 0x52 | CSL, 0x53 | CSL,
|
||||
/* 54 */ 0x54 | CSL, 0x55 | CSL, 0x56 | CSL, 0x57 | CSL,
|
||||
/* 58 */ 0x58 | CSL, 0x59 | CSL, 0x5A | CSL, 0x5B | CSL,
|
||||
/* 5C */ 0x5C | CSL, 0x5D | CSL, 0x5E | CSL, 0x20 | CSL,
|
||||
|
||||
/* 60 */ 0x04 | CSL, 0xB0 | CSL, 0x09 | CSH, 0x0C | CSH,
|
||||
/* 64 */ 0x0D | CSH, 0x0A | CSH, 0xF8 | CSL, 0xF1 | CSL,
|
||||
/* 68 */ 0x00 | CSH, 0x0B | CSH, 0xD9 | CSL, 0xBF | CSL,
|
||||
/* 6C */ 0xDA | CSL, 0xC0 | CSL, 0xC5 | CSL, 0x7D | CSH,
|
||||
|
||||
/* 70 */ 0x7C | CSH, 0x7B | CSH, 0x7A | CSH, 0x79 | CSH,
|
||||
/* 74 */ 0xC3 | CSL, 0xB4 | CSL, 0xC1 | CSL, 0xC2 | CSL,
|
||||
/* 78 */ 0xB3 | CSL, 0xF3 | CSL, 0xF2 | CSL, 0xE3 | CSL,
|
||||
/* 7C */ 0x78 | CSH, 0x9C | CSL, 0x99 | CSH, 0x20 | CSL
|
||||
};
|
||||
|
||||
/*---------------------------------------------------------------------------*
|
||||
* DEC Technical Characterset
|
||||
*---------------------------------------------------------------------------*/
|
||||
#define HAVECSE_TECHNICAL
|
||||
u_short cse_technical[CSSIZE] = {
|
||||
/* 20 */ 0x20 | CSL, 0x65 | CSH, 0xDA | CSL, 0xC4 | CSL,
|
||||
/* 24 */ 0xF4 | CSL, 0xF5 | CSL, 0xB3 | CSL, 0xDA | CSL,
|
||||
/* 28 */ 0xC0 | CSL, 0xBF | CSL, 0xD9 | CSL, 0x61 | CSH,
|
||||
/* 2C */ 0x62 | CSH, 0x63 | CSH, 0x64 | CSH, 0x5F | CSH,
|
||||
|
||||
/* 30 */ 0x60 | CSH, 0x5E | CSH, 0x5D | CSH, 0x5C | CSH,
|
||||
/* 34 */ 0x5B | CSH, 0xAA | CSL, 0xA9 | CSL, 0x3E | CSL,
|
||||
/* 38 */ 0x9F | CSH, 0x9F | CSH, 0x9F | CSH, 0x9F | CSH,
|
||||
/* 3C */ 0xF3 | CSL, 0x78 | CSH, 0xF2 | CSL, 0x5A | CSH,
|
||||
|
||||
/* 40 */ 0x59 | CSH, 0x58 | CSH, 0xEC | CSL, 0xF6 | CSL,
|
||||
/* 44 */ 0x57 | CSH, 0x56 | CSH, 0xE8 | CSL, 0xE2 | CSL,
|
||||
/* 48 */ 0x77 | CSH, 0x55 | CSH, 0x54 | CSH, 0x6E | CSH,
|
||||
/* 4C */ 0x53 | CSH, 0x52 | CSH, 0x51 | CSH, 0xF0 | CSL,
|
||||
|
||||
/* 50 */ 0x50 | CSH, 0x4F | CSH, 0x9F | CSH, 0xE4 | CSL,
|
||||
/* 54 */ 0x9F | CSH, 0x9F | CSH, 0xFB | CSL, 0xEA | CSL,
|
||||
/* 58 */ 0x4E | CSH, 0x4D | CSH, 0x4C | CSH, 0x4B | CSH,
|
||||
/* 5C */ 0xEF | CSL, 0x4A | CSH, 0x49 | CSH, 0x48 | CSH,
|
||||
|
||||
/* 60 */ 0xAA | CSL, 0xE0 | CSL, 0xE1 | CSL, 0x47 | CSH,
|
||||
/* 64 */ 0xEB | CSL, 0x46 | CSH, 0xED | CSL, 0x59 | CSL,
|
||||
/* 68 */ 0x45 | CSH, 0x44 | CSH, 0xE9 | CSL, 0x9E | CSH,
|
||||
/* 6C */ 0x43 | CSH, 0x9F | CSH, 0x76 | CSL, 0x42 | CSH,
|
||||
|
||||
/* 70 */ 0xE3 | CSL, 0x41 | CSH, 0x40 | CSH, 0xE5 | CSL,
|
||||
/* 74 */ 0xE7 | CSL, 0x9F | CSH, 0x9F | CSL, 0x66 | CSH,
|
||||
/* 78 */ 0x68 | CSH, 0x7E | CSH, 0x9A | CSH, 0x1B | CSL,
|
||||
/* 7C */ 0x18 | CSL, 0x1A | CSL, 0x19 | CSL, 0x20 | CSL
|
||||
};
|
||||
|
||||
/*---------------------------------------------------------------------------*
|
||||
* ISO Latin-1 Characterset
|
||||
*---------------------------------------------------------------------------*/
|
||||
#define HAVECSE_ISOLATIN
|
||||
u_short cse_isolatin[CSSIZE] = {
|
||||
/* 20 */ 0x20 | CSL, 0xAD | CSL, 0x9B | CSL, 0x9C | CSL,
|
||||
/* 24 */ 0x9D | CSH, 0x9D | CSL, 0x7C | CSL, 0x15 | CSL,
|
||||
/* 28 */ 0x77 | CSH, 0x9C | CSH, 0xA6 | CSL, 0xAE | CSL,
|
||||
/* 2C */ 0x76 | CSH, 0x75 | CSH, 0x74 | CSH, 0x73 | CSH,
|
||||
|
||||
/* 30 */ 0xF8 | CSL, 0xF1 | CSL, 0xFD | CSL, 0x9B | CSH,
|
||||
/* 34 */ 0x72 | CSH, 0xE6 | CSL, 0x14 | CSL, 0x99 | CSH,
|
||||
/* 38 */ 0x71 | CSH, 0x98 | CSH, 0xA7 | CSL, 0xAF | CSL,
|
||||
/* 3C */ 0xAC | CSL, 0xAB | CSL, 0x70 | CSH, 0xA8 | CSL,
|
||||
|
||||
/* 40 */ 0x97 | CSH, 0x96 | CSH, 0x95 | CSH, 0x94 | CSH,
|
||||
/* 44 */ 0x8E | CSL, 0x8F | CSL, 0x92 | CSL, 0x80 | CSL,
|
||||
/* 48 */ 0x93 | CSH, 0x90 | CSL, 0x92 | CSH, 0x91 | CSH,
|
||||
/* 4C */ 0x90 | CSH, 0x8F | CSH, 0x8E | CSH, 0x8D | CSH,
|
||||
|
||||
/* 50 */ 0x6F | CSH, 0xA5 | CSL, 0x8C | CSH, 0x8B | CSH,
|
||||
/* 54 */ 0x8A | CSH, 0x89 | CSH, 0x99 | CSL, 0x6E | CSH,
|
||||
/* 58 */ 0x87 | CSH, 0x86 | CSH, 0x85 | CSH, 0x84 | CSH,
|
||||
/* 5C */ 0x9A | CSL, 0x6D | CSH, 0x6C | CSH, 0xE1 | CSL,
|
||||
|
||||
/* 60 */ 0x85 | CSL, 0xA0 | CSL, 0x83 | CSL, 0x82 | CSH,
|
||||
/* 64 */ 0x84 | CSL, 0x86 | CSL, 0x91 | CSL, 0x87 | CSL,
|
||||
/* 68 */ 0x8A | CSL, 0x82 | CSL, 0x88 | CSL, 0x89 | CSL,
|
||||
/* 6C */ 0x8D | CSL, 0xA1 | CSL, 0x8C | CSL, 0x8B | CSL,
|
||||
|
||||
/* 70 */ 0x6B | CSH, 0xA4 | CSL, 0x95 | CSL, 0xA2 | CSL,
|
||||
/* 74 */ 0x93 | CSL, 0x81 | CSH, 0x94 | CSL, 0xF6 | CSL,
|
||||
/* 78 */ 0x7F | CSH, 0x97 | CSL, 0xA3 | CSL, 0x96 | CSL,
|
||||
/* 7C */ 0x81 | CSL, 0x69 | CSL, 0x6A | CSH, 0x98 | CSL
|
||||
};
|
||||
|
||||
/*---------------------------------------------------------------------------*
|
||||
* Downloadable Characterset
|
||||
*---------------------------------------------------------------------------*/
|
||||
#define HAVECSE_DOWNLOADABLE
|
||||
u_short cse_downloadable[CSSIZE] = {
|
||||
/* 20 */ 0xA0 | CSH, 0xA1 | CSH, 0xA2 | CSH, 0xA3 | CSH,
|
||||
/* 24 */ 0xA4 | CSH, 0xA5 | CSH, 0xA6 | CSH, 0xA7 | CSH,
|
||||
/* 28 */ 0xA8 | CSH, 0xA9 | CSH, 0xAA | CSH, 0xAB | CSH,
|
||||
/* 2C */ 0xAC | CSH, 0xAD | CSH, 0xAE | CSH, 0xAF | CSH,
|
||||
|
||||
/* 30 */ 0xB0 | CSH, 0xB1 | CSH, 0xB2 | CSH, 0xB3 | CSH,
|
||||
/* 34 */ 0xB4 | CSH, 0xB5 | CSH, 0xB6 | CSH, 0xB7 | CSH,
|
||||
/* 38 */ 0xB8 | CSH, 0xB9 | CSH, 0xBA | CSH, 0xBB | CSH,
|
||||
/* 3C */ 0xBC | CSH, 0xBD | CSH, 0xBE | CSH, 0xBF | CSH,
|
||||
|
||||
/* 40 */ 0xC0 | CSH, 0xC1 | CSH, 0xC2 | CSH, 0xC3 | CSH,
|
||||
/* 44 */ 0xC4 | CSH, 0xC5 | CSH, 0xC6 | CSH, 0xC7 | CSH,
|
||||
/* 48 */ 0xC8 | CSH, 0xC9 | CSH, 0xCA | CSH, 0xCB | CSH,
|
||||
/* 4C */ 0xCC | CSH, 0xCD | CSH, 0xCE | CSH, 0xCF | CSH,
|
||||
|
||||
/* 50 */ 0xD0 | CSH, 0xD1 | CSH, 0xD2 | CSH, 0xD3 | CSH,
|
||||
/* 54 */ 0xD4 | CSH, 0xD5 | CSH, 0xD6 | CSH, 0xD7 | CSH,
|
||||
/* 58 */ 0xD8 | CSH, 0xD9 | CSH, 0xDA | CSH, 0xDB | CSH,
|
||||
/* 5C */ 0xDC | CSH, 0xDD | CSH, 0xDE | CSH, 0xDF | CSH,
|
||||
|
||||
/* 60 */ 0xE0 | CSH, 0xE1 | CSH, 0xE2 | CSH, 0xE3 | CSH,
|
||||
/* 64 */ 0xE4 | CSH, 0xE5 | CSH, 0xE6 | CSH, 0xE7 | CSH,
|
||||
/* 68 */ 0xE8 | CSH, 0xE9 | CSH, 0xEA | CSH, 0xEB | CSH,
|
||||
/* 6C */ 0xEC | CSH, 0xED | CSH, 0xEE | CSH, 0xEF | CSH,
|
||||
|
||||
/* 70 */ 0xF0 | CSH, 0xF1 | CSH, 0xF2 | CSH, 0xF3 | CSH,
|
||||
/* 74 */ 0xF4 | CSH, 0xF5 | CSH, 0xF6 | CSH, 0xF7 | CSH,
|
||||
/* 78 */ 0xF8 | CSH, 0xF9 | CSH, 0xFA | CSH, 0xFB | CSH,
|
||||
/* 7C */ 0xFC | CSH, 0xFD | CSH, 0xFE | CSH, 0xFF | CSH,
|
||||
};
|
||||
|
||||
/* ------------------------- E O F ------------------------------------------*/
|
2146
sys/i386/isa/pcvt/pcvt_vtf.c
Normal file
2146
sys/i386/isa/pcvt/pcvt_vtf.c
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user