The Xmacppc package uses the raw device that is set up by Open Firmware. It is very limited in capability, but runs on almost all supported macppc models. It cannot change the resolution of your screen or use more than 8 bpp color depth. It does not have any acceleration of any sort.
The XFree86 package uses its own knowledge about the video card's chipset, but there are no drivers for the older macppc models which used Apple-developed video chipsets (as opposed to newer systems which use video cards from ATI or NVIDIA). Thus, XFree86 supports a small subset of all supported macppc models, but it is a much more capable X server -- it handles resolution switching and more than 8 bpp color depth, in addition to some acceleration.
To select a different X server, redirect the link /usr/X11R6/bin/X to point at your preferred server:
# cd /usr/X11R6/bin # ls -l X* lrwxr-xr-x 1 root wheel 22 Nov 12 13:50 X@ -> /usr/X11R6/bin/XFree86 -rws--x--x 1 root wheel 1918906 Nov 12 13:48 XFree86* -rws--x--x 1 root wheel 1506734 Nov 12 13:48 Xmacppc* -r-xr-xr-x 1 root wheel 27494 Jun 9 2001 Xmark* -r-xr-xr-x 1 root wheel 3518011 Nov 12 13:48 Xnest* -r-xr-xr-x 1 root wheel 1914704 Nov 12 13:48 Xprt* -r-xr-xr-x 1 root wheel 3832078 Nov 12 13:48 Xvfb* # rm X # ln -s Xmacppc X
You will need to run the following command each time you start the X server:
# xmodmap -e "keycode 59 = BackSpace"Of course, you can place this command into your xdm/Xsetup_0 file or in each users' .xinitrc.
To get only xterm to recognize this, insert the following line into one of the default setting locations:
XTerm*VT100*deleteIsDEL: true
While the most universal location would be /usr/X11R6/lib/X11/app-defaults/XTerm, this might cause problems if you or one of your users runs an xterm on a remote X server without the correct VT100 delete key. Less intrusively, you could put it into the .Xdefaults file in the home directory of each user that will be using X from the console.
Alternatively, you can use ttyaction(5) which changes the permissions when the user logs in. For example, create /etc/ttyaction with the following contents:
console * /usr/sbin/chown ${USER} /dev/wskbd0 /dev/wsmouse0 ttyE0 * /usr/sbin/chown ${USER} /dev/wskbd0 /dev/wsmouse0
You will be using xmodmap(1) to remap keys on your keyboard to mouse buttons. Create an .xmodmaprc file in each users' home directory, and have their .xinitrc run `xmodmap .xmodmaprc'. The contents of the .xmodmaprc will specify which key enables/disables the keyboard pointer buttons, and which keys correspond to which mouse buttons. For example, on an Apple Extended Keyboard II, I use:
keycode 79 = Pointer_EnableKeys keycode 113 = Pointer_Button1 keycode 115 = Pointer_Button2 keycode 121 = Pointer_Button3where keycode 79 is the `Num Lock' key (which enables/disables mouse keys), and 113, 115, and 121 correspond to F13, F14, and F15.
On my PowerBook (FireWire), I use F8 (108) to enable and F10 (117), F11 (111), and F12 (119) for the mouse keys.
To figure out what keys correspond to which keycodes, use the xev(1) command. You may also want to put your keymap for the delete key into your .xmodmaprc as well.
You will need to create an XF86Config file.
You will need to compile a new kernel with `options INSECURE', as this is not enabled in the default GENERIC kernel shipped with distributions of NetBSD.
mkdir -p /var/db/xkb;chmod 755 /var/db/xkb
While it supports almost every NetBSD/macppc model, the downside is that the color depth is limited to 8 bpp, there is no way to change screen resolution, and there is no graphics acceleration.
Older machines (7300 - 8600) cannot change resolutions from within Open Firmware. They are fixed to 640x480 at 67 Hz (after applying the patch). Without this patch, the frequency is undetermined (usually 60 Hz or 120 Hz, but could be just about anything).
On newer machines, you need to set the resolution you want from within MacOS. Open Firmware should then keep that setting.
Chris Tribo reports that his XClaimVR 64 card ignores the MacOS monitor setting and always comes up at the same resolution.
|
|