Subject: Re: NetBSD usability (Xmodmap and XF86config)
To: Francis Koclas <netbsd@geekrants.org>
From: Rudi Ludwig <rudihl@gmx.de>
List: port-macppc
Date: 11/05/2005 15:21:29
This is a multi-part message in MIME format.
--Multipart=_Sat__5_Nov_2005_15_21_29_+0100_E=hSIoED8f=YXdzC
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
On Fri, 04 Nov 2005 21:50:29 -0500
Francis Koclas <netbsd@geekrants.org> wrote:
> While we're on this topic, would anyone be willing to share his X
> configuration for an iBook?
>
> I started setting up NetBSD on a 12" iBook 600 (rage 128 8M) and I have
> various problems with X. My keyboard is totally off (backspace gives me
> tilde, amongst tons of other weird stuff).
>
I think I've got something similar, 500MHz though, but the rest matches.
You find /etc/X11/xfconfig and /etc/X11/.Xmodmap attached
For the keyboard I modify these with xmodmap which is called in .xinitrc.
.xinitrc is source in .xsession, if you log in with xdm or gdm.
# .xinitrc
#
xmodmap /etc/X11/.Xmodmap
#
Xserver is:
XFree86 Version 4.4.0
Release Date: 29 February 2004
X Protocol Version 11, Revision 0, Release 6.6
Build Operating System:NetBSD/macppc 2.0_BETA - The NetBSD Foundation, Inc.
The keyboard settings are for a german keyboard with some personal taste:
e.g. "at" is <AltGr q> and not where apple printed it on the keybord <AltGr L>,
but it should give you a starter.
Other change is due to 'asciicircum degree' not working properly; press once get two.
The program xev was a good help to me figuring out the keycodes.
HTH
Rudi
--Multipart=_Sat__5_Nov_2005_15_21_29_+0100_E=hSIoED8f=YXdzC
Content-Type: application/octet-stream;
name="XF86Config"
Content-Disposition: attachment;
filename="XF86Config"
Content-Transfer-Encoding: quoted-printable
# File generated by xf86config.
#
# Copyright (c) 1999 by The XFree86 Project, Inc.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the "Software"),
# to deal in the Software without restriction, including without limitation
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
# and/or sell copies of the Software, and to permit persons to whom the
# Software is furnished to do so, subject to the following conditions:
#=20
# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.
#=20
# 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 XFREE86 PROJECT 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.
#=20
# Except as contained in this notice, the name of the XFree86 Project 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
# XFree86 Project.
#
# **********************************************************************
# Refer to the XF86Config(4/5) man page for details about the format of=20
# this file.
# **********************************************************************
# **********************************************************************
# Module section -- this section is used to specify
# which dynamically loadable modules to load.
# **********************************************************************
#
Section "Module"
# This loads the DBE extension module.
Load "dbe" # Double buffer extension
# This loads the miscellaneous extensions module, and disables
# initialisation of the XFree86-DGA extension within that module.
SubSection "extmod"
Option "omit xfree86-dga" # don't initialise the DGA extension
EndSubSection
# This loads the Type1 and FreeType font modules
Load "type1"
Load "freetype"
# This loads the GLX module
Load "glx"
EndSection
# **********************************************************************
# Files section. This allows default font and rgb paths to be set
# **********************************************************************
Section "Files"
# The location of the RGB database. Note, this is the name of the
# file minus the extension (like ".txt" or ".db"). There is normally
# no need to change the default.
RgbPath "/usr/X11R6/lib/X11/rgb"
# Multiple FontPath entries are allowed (which are concatenated together),
# as well as specifying multiple comma-separated entries in one FontPath
# command (or a combination of both methods)
#=20
# If you don't have a floating point coprocessor and emacs, Mosaic or other
# programs take long to start up, try moving the Type1 and Speedo directory
# to the end of this list (or comment them out).
#=20
FontPath "/usr/X11R6/lib/X11/fonts/local/"
FontPath "/usr/X11R6/lib/X11/fonts/misc/"
FontPath "/usr/X11R6/lib/X11/fonts/75dpi/:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/100dpi/:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/Type1/"
FontPath "/usr/X11R6/lib/X11/fonts/Speedo/"
FontPath "/usr/X11R6/lib/X11/fonts/75dpi/"
FontPath "/usr/X11R6/lib/X11/fonts/100dpi/"
# The module search path. The default path is shown here.
# ModulePath "/usr/X11R6/lib/modules"
EndSection
# **********************************************************************
# Server flags section.
# **********************************************************************
Section "ServerFlags"
# Uncomment this to cause a core dump at the spot where a signal is=20
# received. This may leave the console in an unusable state, but may
# provide a better stack trace in the core dump to aid in debugging
# Option "NoTrapSignals"
# Uncomment this to disable the <Crtl><Alt><BS> server abort sequence
# This allows clients to receive this key event.
Option "DontZap"
# Uncomment this to disable the <Crtl><Alt><KP_+>/<KP_-> mode switching
# sequences. This allows clients to receive these key events.
Option "Dont Zoom"
# Uncomment this to disable tuning with the xvidtune client. With
# it the client can still run and fetch card and monitor attributes,
# but it will not be allowed to change them. If it tries it will
# receive a protocol error.
# Option "DisableVidModeExtension"
# Uncomment this to enable the use of a non-local xvidtune client.=20
# Option "AllowNonLocalXvidtune"
# Uncomment this to disable dynamically modifying the input device
# (mouse and keyboard) settings.=20
# Option "DisableModInDev"
# Uncomment this to enable the use of a non-local client to
# change the keyboard or mouse settings (currently only xset).
# Option "AllowNonLocalModInDev"
EndSection
# **********************************************************************
# Input devices
# **********************************************************************
# **********************************************************************
# Core keyboard's InputDevice section
# **********************************************************************
Section "InputDevice"
Identifier "Keyboard1"
Driver "Keyboard"
# For most OSs the protocol can be omitted (it defaults to "Standard").
# When using XQUEUE (only for SVR3 and SVR4, but not Solaris),
# uncomment the following line.
# Option "Protocol" "Xqueue"
option "Protocol" "wskbd"
option "Device" "/dev/wskbd0"
Option "AutoRepeat" "500 30"
# Specify which keyboard LEDs can be user-controlled (eg, with xset(1))
# Option "Xleds" "1 2 3"
# Option "LeftAlt" "Meta"
Option "LeftAlt" "ModeShift"
# To customise the XKB settings to suit your keyboard, modify the
# lines below (which are the defaults). For example, for a non-U.S.
# keyboard, you will probably want to use:
# Option "XkbModel" "pc102"
# If you have a US Microsoft Natural keyboard, you can use:
# Option "XkbModel" "microsoft"
#
# Then to change the language, change the Layout setting.
# For example, a german layout can be obtained with:
# Option "XkbLayout" "de"
# or:
# Option "XkbLayout" "de"
# Option "XkbVariant" "nodeadkeys"
#
# If you'd like to switch the positions of your capslock and
# control keys, use:
# Option "XkbOptions" "ctrl:swapcaps"
# These are the default XKB settings for XFree86
# Option "XkbRules" "xfree86"
# Option "XkbModel" "pc101"
# Option "XkbLayout" "us"
# Option "XkbVariant" ""
# Option "XkbOptions" ""
# Option "XkbDisable"
Option "XkbRules" "xfree86"
# Option "XkbModel" "pc102"
# Option "XkbModel" "macintosh"
Option "XkbLayout" "de"
Option "XkbVariant" "nodeadkeys"
EndSection
# **********************************************************************
# Core Pointer's InputDevice section
# **********************************************************************
Section "InputDevice"
# Identifier and driver
Identifier "Mouse1"
Driver "mouse"
Option "Protocol" "wsmouse"
Option "Device" "/dev/wsmouse"
# Option "Buttons" "6"
Option "ZAxisMapping" "4 5"
# When using XQUEUE, comment out the above two lines, and uncomment
# the following line.
# Option "Protocol" "Xqueue"
# Baudrate and SampleRate are only for some Logitech mice. In
# almost every case these lines should be omitted.
# Option "BaudRate" "9600"
# Option "SampleRate" "150"
# Emulate3Buttons is an option for 2-button Microsoft mice
# Emulate3Timeout is the timeout in milliseconds (default is 50ms)
# Option "Emulate3Buttons"
# Option "Emulate3Timeout" "50"
# ChordMiddle is an option for some 3-button Logitech mice
# Option "ChordMiddle"
EndSection
# **********************************************************************
# Other input device sections=20
# this is optional and is required only if you
# are using extended input devices. This is for example only. Refer
# to the XF86Config man page for a description of the options.
# **********************************************************************
#
# Section "InputDevice"=20
# Identifier "Mouse2"
# Driver "mouse"
# Option "Protocol" "MouseMan"
# Option "Device" "/dev/mouse2"
# EndSection
#
# Section "InputDevice"
# Identifier "spaceball"
# Driver "magellan"
# Option "Device" "/dev/cua0"
# EndSection
#
# Section "InputDevice"
# Identifier "spaceball2"
# Driver "spaceorb"
# Option "Device" "/dev/cua0"
# EndSection
#
# Section "InputDevice"
# Identifier "touchscreen0"
# Driver "microtouch"
# Option "Device" "/dev/ttyS0"
# Option "MinX" "1412"
# Option "MaxX" "15184"
# Option "MinY" "15372"
# Option "MaxY" "1230"
# Option "ScreenNumber" "0"
# Option "ReportingMode" "Scaled"
# Option "ButtonNumber" "1"
# Option "SendCoreEvents"
# EndSection
#
# Section "InputDevice"
# Identifier "touchscreen1"
# Driver "elo2300"
# Option "Device" "/dev/ttyS0"
# Option "MinX" "231"
# Option "MaxX" "3868"
# Option "MinY" "3858"
# Option "MaxY" "272"
# Option "ScreenNumber" "0"
# Option "ReportingMode" "Scaled"
# Option "ButtonThreshold" "17"
# Option "ButtonNumber" "1"
# Option "SendCoreEvents"
# EndSection
# **********************************************************************
# Monitor section
# **********************************************************************
# Any number of monitor sections may be present
Section "Monitor"
Identifier "ibook-internal"
# HorizSync is in kHz unless units are specified.
# HorizSync may be a comma separated list of discrete values, or a
# comma separated list of ranges of values.
# NOTE: THE VALUES HERE ARE EXAMPLES ONLY. REFER TO YOUR MONITOR'S
# USER MANUAL FOR THE CORRECT NUMBERS.
HorizSync 30-80
# HorizSync 30-64 # multisync
# HorizSync 31.5, 35.2 # multiple fixed sync frequencies
# HorizSync 15-25, 30-50 # multiple ranges of sync frequencies
# VertRefresh is in Hz unless units are specified.
# VertRefresh may be a comma separated list of discrete values, or a
# comma separated list of ranges of values.
# NOTE: THE VALUES HERE ARE EXAMPLES ONLY. REFER TO YOUR MONITOR'S
# USER MANUAL FOR THE CORRECT NUMBERS.
VertRefresh 40-80
Option "NoDDC"
Option "NoInt10"
Option "DPMS"
EndSection
# **********************************************************************
# Graphics device section
# **********************************************************************
# Any number of graphics device sections may be present
# Standard VGA Device:
Section "Device"
Identifier "Standard VGA"
VendorName "Unknown"
BoardName "Unknown"
# The chipset line is optional in most cases. It can be used to override
# the driver's chipset detection, and should not normally be specified.
# Chipset "generic"
# The Driver line must be present. When using run-time loadable driver
# modules, this line instructs the server to load the specified driver
# module. Even when not using loadable driver modules, this line
# indicates which driver should interpret the information in this section.
Driver "vga"
# The BusID line is used to specify which of possibly multiple devices
# this section is intended for. When this line isn't present, a device
# section can only match up with the primary video device. For PCI
# devices a line like the following could be used. This line should not
# normally be included unless there is more than one video device
# intalled.
# BusID "PCI:0:10:0"
# VideoRam 256
# Clocks 25.2 28.3
EndSection
# Device configured by xf86config:
Section "Device"
Identifier "ATI Rage 128"
Driver "ati"
#VideoRam 8192
# Insert Clocks lines here if appropriate
EndSection
# **********************************************************************
# Screen sections
# **********************************************************************
# Any number of screen sections may be present. Each describes
# the configuration of a single screen. A single specific screen section
# may be specified from the X server command line with the "-screen"
# option.
Section "Screen"
Identifier "Screen 1"
Device "ATI Rage 128"
Monitor "ibook-internal"
DefaultDepth 16
# Subsection "Display"
# Depth 8
# Modes "640x480" "800x600" "1024x768" "1280x1024"
# ViewPort 0 0
# EndSubsection
Subsection "Display"
Depth 16
Modes "1024x768"
ViewPort 0 0
Virtual 1024 768
EndSubsection
# Subsection "Display"
# Depth 24
# Modes "640x480" "800x600" "1024x768" "1280x1024"
# ViewPort 0 0
# EndSubsection
EndSection
# **********************************************************************
# ServerLayout sections.
# **********************************************************************
# Any number of ServerLayout sections may be present. Each describes
# the way multiple screens are organised. A specific ServerLayout
# section may be specified from the X server command line with the
# "-layout" option. In the absence of this, the first section is used.
# When now ServerLayout section is present, the first Screen section
# is used alone.
Section "ServerLayout"
# The Identifier line must be present
Identifier "Simple Layout"
# Each Screen line specifies a Screen section name, and optionally
# the relative position of other screens. The four names after
# primary screen name are the screens to the top, bottom, left and right
# of the primary screen. In this example, screen 2 is located to the
# right of screen 1.
Screen "Screen 1"
# Each InputDevice line specifies an InputDevice section name and
# optionally some options to specify the way the device is to be
# used. Those options include "CorePointer", "CoreKeyboard" and
# "SendCoreEvents".
InputDevice "Mouse1" "CorePointer"
InputDevice "Keyboard1" "CoreKeyboard"
EndSection
--Multipart=_Sat__5_Nov_2005_15_21_29_+0100_E=hSIoED8f=YXdzC
Content-Type: application/octet-stream;
name=".Xmodmap"
Content-Disposition: attachment;
filename=".Xmodmap"
Content-Transfer-Encoding: quoted-printable
clear Mod1
keycode 115 =3D Alt_L
add Mod1 =3D Alt_L
keycode 11 =3D 2 quotedbl twosuperior
keycode 12 =3D 3 section threesuperior
keycode 13 =3D 4 dollar onequarter
keycode 14 =3D 5 percent onehalf
keycode 15 =3D 6 ampersand threequarters
keycode 16 =3D 7 slash braceleft
keycode 17 =3D 8 parenleft bracketleft
keycode 18 =3D 9 parenright bracketright
keycode 19 =3D 0 equal braceright
keycode 20 =3D ssharp question backslash
keycode 24 =3D q Q at
keycode 26 =3D e E EuroSign
keycode 35 =3D plus asterisk asciitilde
keycode 53 =3D x X guillemotright
keycode 49 =3D less greater bar
keycode 51 =3D numbersign apostrophe asciicircum
keycode 64 =3D Mode_switch
keycode 190 =3D BackSpace
--Multipart=_Sat__5_Nov_2005_15_21_29_+0100_E=hSIoED8f=YXdzC--