Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[xsrc/trunk]: xsrc/external/mit/xorg-server/dist/hw/sun Import WIP Xorg-Serve...



details:   https://anonhg.NetBSD.org/xsrc/rev/56cb873ce347
branches:  trunk
changeset: 10506:56cb873ce347
user:      tsutsui <tsutsui%NetBSD.org@localhost>
date:      Wed Jul 22 20:38:29 2020 +0000

description:
Import WIP Xorg-Server-1.20'fied monolithic Xsun servers.

This is based on 1.10 version imported into xorg-server.old and
all upstream API changes between xorg-server 1.10 and 1.20 are
applied almost mechanically.
 https://github.com/tsutsui/xorg-server-Xsun/commits/xorg-server-1.20

Xsun and XsunMono servers are also confirmed working with bwtwo on
3/60 and tme, and cgtwo on tme. XKB stuff is still to be resolved.

diffstat:

 external/mit/xorg-server/dist/hw/sun/README          |   118 +
 external/mit/xorg-server/dist/hw/sun/Xsun.man        |   176 +
 external/mit/xorg-server/dist/hw/sun/circleset.h     |   136 +
 external/mit/xorg-server/dist/hw/sun/constype.c      |   198 +
 external/mit/xorg-server/dist/hw/sun/constype.man    |    58 +
 external/mit/xorg-server/dist/hw/sun/kbd_mode.c      |   154 +
 external/mit/xorg-server/dist/hw/sun/kbd_mode.man    |    53 +
 external/mit/xorg-server/dist/hw/sun/sun.h           |   428 +
 external/mit/xorg-server/dist/hw/sun/sunCfb.c        |   532 +
 external/mit/xorg-server/dist/hw/sun/sunCfb24.c      |   142 +
 external/mit/xorg-server/dist/hw/sun/sunCursor.c     |   326 +
 external/mit/xorg-server/dist/hw/sun/sunFbs.c        |   236 +
 external/mit/xorg-server/dist/hw/sun/sunGX.c         |  2829 ++++++++
 external/mit/xorg-server/dist/hw/sun/sunGX.h         |   238 +
 external/mit/xorg-server/dist/hw/sun/sunInit.c       |   820 ++
 external/mit/xorg-server/dist/hw/sun/sunIo.c         |   260 +
 external/mit/xorg-server/dist/hw/sun/sunKbd.c        |   824 ++
 external/mit/xorg-server/dist/hw/sun/sunKeyMap.c     |  5797 ++++++++++++++++++
 external/mit/xorg-server/dist/hw/sun/sunMfb.c        |   112 +
 external/mit/xorg-server/dist/hw/sun/sunMouse.c      |   387 +
 external/mit/xorg-server/dist/hw/sun/sunMultiDepth.c |   243 +
 21 files changed, 14067 insertions(+), 0 deletions(-)

diffs (truncated from 14151 to 300 lines):

diff -r 754f833a2282 -r 56cb873ce347 external/mit/xorg-server/dist/hw/sun/README
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/external/mit/xorg-server/dist/hw/sun/README       Wed Jul 22 20:38:29 2020 +0000
@@ -0,0 +1,118 @@
+A joint production of:
+
+       Adam de Boor            University of California,  Berkeley
+
+       David Rosenthal
+       Stuart Marks
+       Robin Schaufler
+       Mike Schwartz
+       Frances Ho
+       Geoff Lee
+       Mark Opperman           Sun Microsystems
+
+       Bob Scheifler           MIT Laboratory for Computer Science
+       Keith Packard
+
+This version of the Sun X11 drivers uses ../mi,  ../mfb and ../cfb to support
+the following configurations:
+
+       Sun/2           bw2     cg2/3/5
+       Sun/3           bw2     cg2/3/4/5
+       Sun/4           bw2     cg2/4
+       SPARCstation            cg3/6
+       Sun/386i        mono    color
+
+The following configurations are NOT supported:
+
+       Sun/1           bw1     cg1     (requires separate port)
+       Sun/2                   gp      (use /dev/cgtwo0)
+       Sun/3                   gp      (use /dev/cgtwo0)
+       Sun/4                   gp      (use /dev/cgtwo0)
+
+The mfb and cfb code has been substantially tuned for 1- and 8-bit framebuffers
+(with code for both fast and slow cpu-to-memory ratios).  It installs and runs
+on these configurations under SunOS 3.2, 3.4, and 4.0.  However, we must stress
+that it is completely unsupported, and if you have problems installing or using
+it you are on your own.
+
+
+Things to check before building:
+
+1)     config/sun.cf - set the SunOSMajorVersion and SunOSMinorVersion 
+       parameters to the right values.
+
+2)     config/Project.tmpl - check LIBDIR, FONTDIR, etc.; set 
+       define LibDir, FontDir, etc. in site.def as required.
+
+
+
+Then build the system by:
+
+1)     Go for it.  In the top-level directory, type
+
+       make World
+
+       This takes about forty minutes on a 4/260, and somewhat longer
+       on other Suns.
+
+
+2)     Go for it.  In the top-level directory, type
+
+       make install
+
+       Otherwise, you'll want to create a bunch of symbolic links to
+       the various executables and data files scattered throughout
+       the hierarchy.
+
+
+
+3)     On the console, or from an rlogin connection, put whatever you
+       chose for BINDIR (in Imake.tmpl) in your search path, and then
+       start the server:
+
+           xinit
+       or
+           xinit -- -dev /dev/??? [see below]
+
+       If it's from the console,  you probably want to redirect the
+       output thus:
+
+           xinit >& /tmp/x11.out
+
+4)     xinit should start up an xterm window that acts as a console.  When
+       this xterm terminates, the xinit will kill the server.  You can also
+       start up client programs from a terminal or rlogin, but you must
+       first set the DISPLAY environment variable:
+
+           setenv DISPLAY unix:0
+           xterm &
+
+
+5)     Make sure that you have special devices in /dev for the appropriate 
+       framebuffer.  See the manual page for Xsun for details or run the
+       constype program. VME systems require special .o files when more
+        than one of a particular frame buffer type is installed.
+
+
+6)     In general,  Xsun auto-configures to use all the available framebuffers
+       (see the Xsun manual page).  In some circumstances, you may need to 
+       use the -dev switch on the command line to specify a specific device
+       to use.  In particular, on the GP, GP+, and GP2, you'll need to
+       specify -dev /dev/cgtwo0 your xdm Xservers file or your xinit script.
+
+
+7)     To shut the server down,  send it a Hangup or Terminate signal.
+
+
+8)     If X crashes, it will leave the keyboard in a funny state.  There is a
+       program called "kbd_mode" that will reset the mode of the keyboard.
+       "kbd_mode -a" is the appropriate setting for the bare console, and
+       "kbd_mode -e" is the appropriate setting for running with SunWindows.
+       You may have to issue this command from a terminal or from an rlogin
+       connection.  If you run from the bare console, you can give the
+       command
+
+       xinit ; kbd_mode -a
+
+       so that the keyboard mode will ALWAYS be set properly when the server
+       terminates.
diff -r 754f833a2282 -r 56cb873ce347 external/mit/xorg-server/dist/hw/sun/Xsun.man
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/external/mit/xorg-server/dist/hw/sun/Xsun.man     Wed Jul 22 20:38:29 2020 +0000
@@ -0,0 +1,176 @@
+.\" $Xorg: Xsun.man,v 1.4 2001/02/09 02:04:43 xorgcvs Exp $
+.\" Copyright 1988 Sun Microsystems, Inc.
+.\" Copyright 1993, 1994, 1998  The Open Group
+.\" 
+.\" Permission to use, copy, modify, distribute, and sell this software and its
+.\" documentation for any purpose is hereby granted without fee, provided that
+.\" the above copyright notice appear in all copies and that both that
+.\" copyright notice and this permission notice appear in supporting
+.\" documentation.
+.\" 
+.\" The above copyright notice and this permission notice shall be included
+.\" in all copies or substantial portions of the Software.
+.\" 
+.\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+.\" OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+.\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+.\" IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
+.\" OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+.\" ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+.\" OTHER DEALINGS IN THE SOFTWARE.
+.\" 
+.\" Except as contained in this notice, the name of The Open Group shall
+.\" not be used in advertising or otherwise to promote the sale, use or
+.\" other dealings in this Software without prior written authorization
+.\" from The Open Group.
+.\"
+.\" $XFree86: xc/programs/Xserver/hw/sun/Xsun.man,v 1.9 2005/02/11 03:03:10 dawes Exp $
+.\"
+.TH XSUN 1 __vendorversion__
+.SH NAME
+Xsun, XsunMono, Xsun24 \- Sun server for X Version 11
+.SH SYNOPSIS
+.B Xsun
+[ option ] ...
+.SH DESCRIPTION
+.I Xsun
+is the server for Version 11 of the X window system on Sun hardware.
+It will normally be started by the \fIxdm(1)\fP daemon or by a script
+that runs the program \fIxinit(1)\fP.
+.SH CONFIGURATIONS
+.PP
+.I XsunMono
+supports the BW2 monochrome frame buffer.
+.I Xsun
+supports the CG2, CG3, CG4, and CG6 8-bit color frame buffers in
+addition to the BW2 monochrome frame buffer. On Solaris 2.5 it also
+supports the TCX as an 8-bit color frame buffer.
+.I Xsun24
+supports the cgeight 24-bit color frame buffer in addition to the
+8-bit color and monochrome frame buffers that
+.I Xsun
+supports.
+.PP
+If specific framebuffer device files aren't specified on the command 
+line with the \fI\-dev\fP switch or in the \fIXDEVICE\fP environment
+variable, the server will search for all installed frame buffers and 
+will use all those that it finds.
+.PP
+Finally, if no specific framebuffers are found, the generic framebuffer 
+interface \fI/dev/fb\fP is used.
+.PP
+.SH KEYBOARDS
+.PP
+Xsun, Xsun24, and XsunMono support the Type-2, Type-3, and many variations 
+of the Type-4 and Type-5 keyboards.
+.PP
+Type-4 and Type-5 keyboards feature a key labeled \fIAltGraph\fP which 
+is a mode-shift key. The mode-shift key is used to generate the symbols 
+painted on the fronts of the keys. The mode-shift key works exactly like 
+the \fIShift\fP, \fIControl\fP, \fIAlt\fP, and \fI<Meta>\fP keys.
+.PP
+The ten function keys on the left side of the Type-5 keyboard may be 
+considered as having L1..L10 painted on their fronts.  Shift-AltGraph 
+will cause different keysyms to be generated for some keys, e.g. the 
+Type-5 \fISysRq\fP key.
+.PP
+For compatibility with Sun's X11/NeWS server, the F11 and F12 keys may 
+be made to generate the equivalent X11/NeWS keysyms by using mode-switch.
+.PP
+For backwards compatibility, the normal and mode-shifted keysyms for 
+the ten function keys on the left side of Type-4 and Type-5 keyboards 
+may be swapped via command line option. See \fI-swapLkeys\fP.
+.PP
+The X LEDs 1..4 correspond to the NumLock, ScrollLock, Compose, and
+CapsLock LEDs respectively. Pressing the key once turns the corresponding
+LED on. Pressing the key again turns the LED off. Turning an LED on or 
+off with e.g. 'xset [-]led [1234]' is equivalent to pressing the 
+corresponding key.
+.SH OPTIONS
+.PP
+In addition to the normal server options described in the \fIXserver(1)\fP
+manual page, \fIXsun\fP accepts the following command line switches:
+.TP 8
+.B "\-ar1 \fImilliseconds\fP"
+This option specifies amount of time in milliseconds before which a 
+pressed key should begin to autorepeat.
+.TP 8
+.B "\-ar2 \fImilliseconds\fP"
+This option specifies the interval in milliseconds between autorepeats 
+of pressed keys.
+.TP 8
+.B \-swapLkeys
+Swaps the normal keysyms for the function keys on the left side of 
+Type-4 and Type-5 keyboards with the alternate keysyms, i.e. the keysyms 
+painted on the front of the keys.
+.TP 8
+.B \-flipPixels
+The normal pixel values for white and black are 0 and 1 respectively. 
+When -flipPixels is specified these values are reversed.
+.TP 8
+.B \-mono
+When used with the \fBcgtwo\fP, this option indicates that the server 
+should emulate a monochrome framebuffer instead of the normal color 
+framebuffer.  When used with the \fBcgfour\fP, this option indicates 
+that the monochrome screen should be numbered 0 and the color screen 
+numbered 1 (instead of the other way around).
+.TP 8
+.B \-zaphod
+This option disables switching between screens by sliding the mouse off 
+the left or right edges.  With this disabled, a window manager function 
+must be used to switch between screens.
+.TP 8
+.B \-debug
+This option indicates that the server is being run from a debugger, and 
+that it should \fBnot\fP put its standard input, output and error files 
+into non-blocking mode.
+.TP 8
+.B "\-dev \fIfilename[:filename]...\fP"
+This option specifies the colon separated names of the framebuffer device 
+files to be used.
+.TP 8
+.B "\-fbinfo
+This option indicates that the server should enumerate the available
+frame buffers that it will use.
+.SH ENVIRONMENT
+.TP 8
+\fBXDEVICE\fP
+If present,  and if no explicit \fB-dev\fP options are given, specifies 
+the (colon separated) list of display devices to use.
+.SH "SEE ALSO"
+.PP
+X(__miscmansuffix__), Xserver(1), xdm(1), xinit(1)
+.SH BUGS
+The auto-configuration depends on there being appropriate special files 
+in the
+.I /dev
+directory for the framebuffers which are to be used.  Extra entries can 
+confuse the server.  For example,  the X/160C in fact has the hardware 
+for a monochrome
+.B bwtwo0
+on the CPU board.  So if 
+.I /dev
+has a special file for
+.IR /dev/bwtwo0 ,
+the server will use it,  even though there is no monitor attached to the
+monochrome framebuffer.
+The server will appear to start,  but not to paint a cursor,  because the
+cursor is on the monochrome frame buffer. The solution is to remove the
+.I /dev
+entries for any device you don't have a monitor for.
+.PP
+There is a bug in pre-FCS operating systems for the Sun-4 which causes 
+the server to crash driving a \fBcgtwo\fP.
+.PP
+.SH AUTHORS
+.TP 8
+U. C. Berkeley
+Adam de Boor.
+.TP 8
+Sun Microsystems
+David Rosenthal,  Stuart Marks,  Robin Schaufler,  Mike Schwartz,
+Frances Ho,  Geoff Lee,  and Mark Opperman.
+.TP 8
+MIT Laboratory for Computer Science



Home | Main Index | Thread Index | Old Index