diff options
Diffstat (limited to 'nx-X11/programs/Xserver/hw/sunLynx/patch.Console-2.4.0')
-rw-r--r-- | nx-X11/programs/Xserver/hw/sunLynx/patch.Console-2.4.0 | 493 |
1 files changed, 0 insertions, 493 deletions
diff --git a/nx-X11/programs/Xserver/hw/sunLynx/patch.Console-2.4.0 b/nx-X11/programs/Xserver/hw/sunLynx/patch.Console-2.4.0 deleted file mode 100644 index 41e2d10c3..000000000 --- a/nx-X11/programs/Xserver/hw/sunLynx/patch.Console-2.4.0 +++ /dev/null @@ -1,493 +0,0 @@ -diff -cPr --exclude-from=Excl.include /mnt/DEV_OS.microSPARC/usr/include/kbd.h /usr/include/kbd.h -*** /mnt/DEV_OS.microSPARC/usr/include/kbd.h ---- /usr/include/kbd.h Wed Jul 24 09:37:49 1996 -*************** -*** 0 **** ---- 1,90 ---- -+ /* $NetBSD: kbd.h,v 1.4 1995/07/06 05:36:29 pk Exp $ */ -+ -+ /* -+ * Copyright (c) 1992, 1993 -+ * The Regents of the University of California. All rights reserved. -+ * -+ * This software was developed by the Computer Systems Engineering group -+ * at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and -+ * contributed to Berkeley. -+ * -+ * All advertising materials mentioning features or use of this software -+ * must display the following acknowledgement: -+ * This product includes software developed by the University of -+ * California, Lawrence Berkeley Laboratory. -+ * -+ * 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 the University of -+ * California, Berkeley and its contributors. -+ * 4. Neither the name of the University nor the names of its contributors -+ * may be used to endorse or promote products derived from this software -+ * without specific prior written permission. -+ * -+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. -+ * -+ * @(#)kbd.h 8.1 (Berkeley) 6/11/93 -+ */ -+ -+ /* -+ * Keyboard `registers'. (This should be called kbd_reg.h but we need to -+ * be compatible.) -+ */ -+ -+ /* -+ * Control codes sent from type 2, 3, and 4 keyboards. -+ * -+ * Note that KBD_RESET is followed by a keyboard ID, while KBD_IDLE is not. -+ * KBD_IDLE does not take the place of any `up' transitions (it merely occurs -+ * after them). -+ */ -+ #define KBD_RESET 0xff /* keyboard `reset' response */ -+ #define KBD_IDLE 0x7f /* keyboard `all keys are up' code */ -+ #define KBD_LAYOUT 0xfe /* keyboard `get layout' response */ -+ -+ /* Keyboard IDs */ -+ #define KB_SUN2 2 /* type 2 keyboard */ -+ #define KB_SUN3 3 /* type 3 keyboard */ -+ #define KB_SUN4 4 /* type 4 keyboard */ -+ -+ /* Key codes are in 0x00..0x7e; KBD_UP is set if the key goes up */ -+ #define KBD_KEYMASK 0x7f /* keyboard key mask */ -+ #define KBD_UP 0x80 /* keyboard `up' transition */ -+ -+ /* Keyboard codes needed to recognize the L1-A sequence */ -+ #define KBD_L1 1 /* keyboard code for `L1' key */ -+ #define KBD_A 77 /* keyboard code for `A' key */ -+ -+ /* Control codes sent to the various keyboards */ -+ #define KBD_CMD_RESET 1 /* reset keyboard */ -+ #define KBD_CMD_BELL 2 /* turn bell on */ -+ #define KBD_CMD_NOBELL 3 /* turn bell off */ -+ #define KBD_CMD_CLICK 10 /* turn keyclick on */ -+ #define KBD_CMD_NOCLICK 11 /* turn keyclick off */ -+ #define KBD_CMD_SETLED 14 /* set LED state (type 4 kbd) */ -+ #define KBD_CMD_GLAYOUT 15 /* get DIP switch (type 4 kbd) */ -+ -+ #define LED_NUM_LOCK 0x1 -+ #if !defined(Lynx) || !defined(LED_COMPOSE) -+ #define LED_COMPOSE 0x2 -+ #endif -+ #define LED_SCROLL_LOCK 0x4 -+ #define LED_CAPS_LOCK 0x8 -diff -cPr --exclude-from=Excl.include /mnt/DEV_OS.microSPARC/usr/include/kbio.h /usr/include/kbio.h -*** /mnt/DEV_OS.microSPARC/usr/include/kbio.h ---- /usr/include/kbio.h Wed Aug 14 16:29:26 1996 -*************** -*** 0 **** ---- 1,115 ---- -+ /* $NetBSD: kbio.h,v 1.4 1995/05/10 16:07:27 pk Exp $ */ -+ -+ /* -+ * Copyright (c) 1992, 1993 -+ * The Regents of the University of California. All rights reserved. -+ * -+ * This software was developed by the Computer Systems Engineering group -+ * at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and -+ * contributed to Berkeley. -+ * -+ * All advertising materials mentioning features or use of this software -+ * must display the following acknowledgement: -+ * This product includes software developed by the University of -+ * California, Lawrence Berkeley Laboratory. -+ * -+ * 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 the University of -+ * California, Berkeley and its contributors. -+ * 4. Neither the name of the University nor the names of its contributors -+ * may be used to endorse or promote products derived from this software -+ * without specific prior written permission. -+ * -+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. -+ * -+ * @(#)kbio.h 8.1 (Berkeley) 6/11/93 -+ */ -+ -+ /* -+ * The following is a minimal emulation of Sun's `kio' structures -+ * and related operations necessary to make X11 happy (i.e., make it -+ * compile, and make old X11 binaries run). -+ */ -+ -+ /* -+ * The kiockey structure apparently gets and/or sets keyboard mappings. -+ * It seems to be kind of useless, but X11 uses it (according to the -+ * comments) to figure out when a Sun 386i has a type-4 keyboard but -+ * claims to have a type-3 keyboard. We need just enough to cause the -+ * appropriate ioctl to return the appropriate magic value. -+ * -+ * KIOCGETKEY fills in kio_entry from kio_station. Not sure what tablemask -+ * is for; X sets it before the call, so it is not an output, but we do not -+ * care anyway. KIOCSDIRECT is supposed to tell the kernel whether to send -+ * keys to the console or to X; we just send them to X whenever the keyboard -+ * is open at all. (XXX may need to change this later) -+ * -+ * Keyboard commands and types are defined in kbd.h as they are actually -+ * real hardware commands and type numbers. -+ */ -+ struct okiockey { /* Out-dated key translation structure */ -+ int kio_tablemask; /* whatever */ -+ u_char kio_station; /* key number */ -+ u_char kio_entry; /* HOLE if not present */ -+ char kio_text[10]; /* the silly escape sequences (unsupported) */ -+ }; -+ -+ struct kiockey { -+ int kio_tablemask; /* whatever */ -+ u_char kio_station; /* key number */ -+ u_short kio_entry; /* HOLE if not present */ -+ char kio_text[10]; /* the silly escape sequences (unsupported) */ -+ }; -+ -+ /* -+ * Values for kio_tablemask. These determine which table to read/modify -+ * in KIOC[SG]KEY ioctls. Currently, we only have "non-shift" and "shift" -+ * tables. -+ */ -+ #define KIOC_NOMASK 0x0 -+ #define KIOC_CAPSMASK 0x1 -+ #define KIOC_SHIFTMASK 0xe -+ #define KIOC_CTRLMASK 0x30 -+ #define KIOC_ALTGMASK 0x200 -+ #define KIOC_NUMLMASK 0x800 -+ -+ #define HOLE 0x302 /* value for kio_entry to say `really type 3' */ -+ -+ #define KIOCTRANS _IOW('k', 0, int) /* set translation mode */ -+ /* (we only accept TR_UNTRANS_EVENT) */ -+ #define KIOCGETKEY _IOWR('k', 2, struct okiockey) /* fill in kio_entry */ -+ #define KIOCGTRANS _IOR('k', 5, int) /* get translation mode */ -+ #define KIOCCMD _IOW('k', 8, int) /* X uses this to ring bell */ -+ #define KIOCTYPE _IOR('k', 9, int) /* get keyboard type */ -+ #define KIOCSDIRECT _IOW('k', 10, int) /* keys to console? */ -+ #define KIOCSKEY _IOW('k', 12, struct kiockey) /* set xlat mode */ -+ #ifndef Lynx -+ #define KIOCGKEY _IOWR('k', 13, struct kiockey) /* get xlat mode */ -+ #endif -+ #define KIOCLAYOUT _IOR('k', 20, int) /* get keyboard layout */ -+ #define KIOCSLED _IOW('k', 14, char) /* set LED state */ -+ #define KIOCGLED _IOR('k', 15, char) /* get LED state */ -+ -+ #define TR_NONE 0 /* X compat, unsupported */ -+ #define TR_ASCII 1 /* X compat, unsupported */ -+ #define TR_EVENT 2 /* X compat, unsupported */ -+ #define TR_UNTRANS_EVENT 3 -diff -cPr --exclude=*.[oa] /mnt/DEV_OS.microSPARC/sys/drivers/console/Makefile sys/drivers/console/Makefile -*** /mnt/DEV_OS.microSPARC/sys/drivers/console/Makefile Fri Apr 26 23:27:51 1996 ---- sys/drivers/console/Makefile Fri Aug 2 09:03:05 1996 -*************** -*** 31,37 **** - # (keyboard) duart. The mouse is attached to this port. It must be - # defined for the X server to work. - # -! SPECIAL_CFLAGS = -DMOUSESUPPORT -O - - FILES = atcdrvr.xxx gfont.xxx atkey.xxx atbeep.xxx atterm.xxx atutils.xxx - HFILES = ---- 31,37 ---- - # (keyboard) duart. The mouse is attached to this port. It must be - # defined for the X server to work. - # -! SPECIAL_CFLAGS = -DMOUSESUPPORT -DXSERVERSUPPORT -O - - FILES = atcdrvr.xxx gfont.xxx atkey.xxx atbeep.xxx atterm.xxx atutils.xxx - HFILES = -*************** -*** 117,122 **** ---- 117,130 ---- - - # Just Do It. - FORCE: -+ -+ atkey.kdb.o : atkey.c -+ $(KERN_CC) -c -o atkey.kdb.o $(SPECIAL_CFLAGS) $(KERN_CFLAGS) \ -+ $(SPECIAL_INCLUDES) $(KERN_INCLUDES) -DSKDB atkey.c -+ -+ atkey.nokdb.o : atkey.c -+ $(KERN_CC) -c -o atkey.kdb.o $(SPECIAL_CFLAGS) $(KERN_CFLAGS) \ -+ $(SPECIAL_INCLUDES) $(KERN_INCLUDES) atkey.c - - # Dependencies as of 5/20/1992 - -diff -cPr --exclude=*.[oa] /mnt/DEV_OS.microSPARC/sys/drivers/console/atc.h sys/drivers/console/atc.h -*** /mnt/DEV_OS.microSPARC/sys/drivers/console/atc.h Fri Apr 26 23:27:51 1996 ---- sys/drivers/console/atc.h Wed Jul 24 11:49:21 1996 -*************** -*** 191,196 **** ---- 191,202 ---- - #ifdef MOUSESUPPORT - struct ttystatics mousechannel; - #endif /* MOUSESUPPORT */ -+ #ifdef XSERVERSUPPORT -+ int kbd_pending; -+ int kbd_id; /* keyboard type */ -+ int kbd_layout; /* layout on type 4 */ -+ int kbd_click; /* kbd click on? */ -+ #endif - }; - - struct kbd_registers_type { -diff -cPr --exclude=*.[oa] /mnt/DEV_OS.microSPARC/sys/drivers/console/atcdrvr.c sys/drivers/console/atcdrvr.c -*** /mnt/DEV_OS.microSPARC/sys/drivers/console/atcdrvr.c Fri Apr 26 23:27:51 1996 ---- sys/drivers/console/atcdrvr.c Wed Aug 14 16:28:23 1996 -*************** -*** 270,275 **** ---- 270,279 ---- - #ifdef MOUSESUPPORT - #include "am8530.h" - #endif /* MOUSESUPPORT */ -+ #ifdef XSERVERSUPPORT -+ #include <kbd.h> -+ #include <kbio.h> -+ #endif - - char *screen_address; /* is this supposed to be in the driver info? */ - -*************** -*** 537,542 **** ---- 541,550 ---- - int m; - int ps; - extern int set_kb_lights(); -+ #ifdef XSERVERSUPPORT -+ extern int kbd_docmd(); -+ int err; -+ #endif - - if (!atc_flag){ pseterr(EIO); return(SYSERR);} - #ifdef MOUSESUPPORT -*************** -*** 586,597 **** - #ifdef TIOLED - case TIOLED: - #endif - h->curled = *arg; - if (h->ledstate == -1) { - if (timeout(set_kb_lights,h,1) != -1) - h->ledstate = 0; - } -! break; - case VT_OPENQRY: - if (h->multimode == SCM_ONE) { - if (!(h->open & 1)) { ---- 594,630 ---- - #ifdef TIOLED - case TIOLED: - #endif -+ #ifdef XSERVERSUPPORT -+ case KIOCSLED: -+ #endif - h->curled = *arg; - if (h->ledstate == -1) { - if (timeout(set_kb_lights,h,1) != -1) - h->ledstate = 0; - } -! return OK; -! #ifdef XSERVERSUPPORT -! case KIOCTYPE: -! if (wbounds(arg) < sizeof(int)) { -! pseterr(EFAULT); -! return SYSERR; -! } -! *(int *)arg = h->kbd_id; -! return OK; -! case KIOCLAYOUT: -! if (wbounds(arg) < sizeof(int)) { -! pseterr(EFAULT); -! return SYSERR; -! } -! *(int *)arg = h->kbd_layout; -! return OK; -! case KIOCCMD: -! if (err = kbd_docmd(h, *(int *)arg)) { -! pseterr(err); -! return SYSERR; -! } -! return OK; -! #endif - case VT_OPENQRY: - if (h->multimode == SCM_ONE) { - if (!(h->open & 1)) { -*************** -*** 810,815 **** ---- 843,854 ---- - h->open = 0; - h->break_code = 0; - h->info = info; -+ #ifdef XSERVERSUPPORT -+ h->kbd_pending = 0; -+ h->kbd_id = KB_SUN4; /* query KBD later.... */ -+ h->kbd_layout = 0; /* US_ASCII */ -+ h->kbd_click = 0; /* silent movie */ -+ #endif - #ifdef MOUSESUPPORT - tmgr_install(&h->mousechannel, &info->sg, 0, mouse_xmit_ena, h); - #endif /* MOUSESUPPORT */ -diff -cPr --exclude=*.[oa] /mnt/DEV_OS.microSPARC/sys/drivers/console/atkey.c sys/drivers/console/atkey.c -*** /mnt/DEV_OS.microSPARC/sys/drivers/console/atkey.c Fri Apr 26 23:27:51 1996 ---- sys/drivers/console/atkey.c Mon Sep 23 09:19:36 1996 -*************** -*** 162,167 **** ---- 162,171 ---- - #ifdef MOUSESUPPORT - #include "am8530.h" - #endif /* MOUSESUPPORT */ -+ #ifdef XSERVERSUPPORT -+ #include <kbd.h> -+ #include <kbio.h> -+ #endif - - #define NOTHING_USEFUL -1 - #define FILL NOTHING_USEFUL -*************** -*** 474,480 **** - #undef DEBUG - - j = *(volatile unsigned char *)KV_KBD_DATA; -! - /* Do the quick scan mode check first. If scanning, stuff and exit */ - screen_num = (h->g - &h->screen[0]); - if (h->screen[screen_num].scan_mode) { ---- 478,503 ---- - #undef DEBUG - - j = *(volatile unsigned char *)KV_KBD_DATA; -! #ifdef XSERVERSUPPORT -! if (h->kbd_pending == KBD_RESET) { -! h->kbd_pending = 0; -! h->kbd_id = j; -! if (j == KB_SUN4) { -! extern int byte_to_keyboard(); -! timeout(byte_to_keyboard, KBD_CMD_GLAYOUT, 1); -! } -! goto EOIandExit; -! } -! if (h->kbd_pending == KBD_LAYOUT) { -! h->kbd_pending = 0; -! h->kbd_layout = j; -! goto EOIandExit; -! } -! if (j == KBD_RESET || j == KBD_LAYOUT) { -! h->kbd_pending = j; -! goto EOIandExit; -! } -! #endif - /* Do the quick scan mode check first. If scanning, stuff and exit */ - screen_num = (h->g - &h->screen[0]); - if (h->screen[screen_num].scan_mode) { -diff -cPr --exclude=*.[oa] /mnt/DEV_OS.microSPARC/sys/drivers/console/atutils.c sys/drivers/console/atutils.c -*** /mnt/DEV_OS.microSPARC/sys/drivers/console/atutils.c Fri Apr 26 23:27:51 1996 ---- sys/drivers/console/atutils.c Tue Aug 13 11:54:38 1996 -*************** -*** 456,462 **** - } - - -! static int byte_to_keyboard(byt) - unsigned char byt; - { - int i; ---- 456,465 ---- - } - - -! #ifndef XSERVERSUPPORT -! static -! #endif -! int byte_to_keyboard(byt) - unsigned char byt; - { - int i; -*************** -*** 495,497 **** ---- 498,544 ---- - break; - } - } -+ -+ #ifdef XSERVERSUPPORT -+ #include <kbd.h> -+ #include <kbio.h> -+ -+ /* -+ * Execute a keyboard command; return 0 on success. -+ */ -+ kbd_docmd(h, cmd) -+ register struct kdhglobals *h; -+ int cmd; -+ { -+ switch (cmd) { -+ -+ case KBD_CMD_BELL: -+ case KBD_CMD_NOBELL: -+ /* Supported by type 2, 3, and 4 keyboards */ -+ break; -+ -+ case KBD_CMD_CLICK: -+ /* Unsupported by type 2 keyboards */ -+ if (h->kbd_id != KB_SUN2) { -+ h->kbd_click = 1; -+ break; -+ } -+ return (EINVAL); -+ -+ case KBD_CMD_NOCLICK: -+ /* Unsupported by type 2 keyboards */ -+ if (h->kbd_id != KB_SUN2) { -+ h->kbd_click = 0; -+ break; -+ } -+ return (EINVAL); -+ -+ default: -+ return (EINVAL); /* ENOTTY? EOPNOTSUPP? */ -+ } -+ -+ if (timeout(byte_to_keyboard, cmd, 1) < 0) -+ return (ENOSPC); /* ERESTART? */ -+ return (0); -+ } -+ #endif |