AKBD(4) Device Drivers Manual AKBD(4)

akbdApple Desktop Bus keyboard driver for wscons

akbd* at obio?
wskbd* at akbd? console ?


options ALTXBUTTONS
options CAPS_IS_CONTROL
options FORCE_FUNCTION_KEYS

This driver provides the wscons(4) driver with support for Apple Desktop Bus keyboards.

options ALTXBUTTONS
To map ⟨Option⟩+⟨1⟩, ⟨Option⟩+⟨2⟩, ⟨Option⟩+⟨3⟩, to mouse buttons 1, 2, and 3 respectively.
options CAPS_IS_CONTROL
On macppc systems it is possible to tweak the keyboard driver to treat the caps lock key on an ADB keyboard as a control key. This requires special remapping because of ADB's strange emulation of a mechanically-locked key.
options FORCE_FUNCTION_KEYS
On macppc PowerBooks, several function keys double as “hot keys” (brightness, volume, eject) when the ⟨Fn⟩ modifier is held down. Mac OS X likes to reprogram the keyboard controller to send hot key events when ⟨Fn⟩ is held down and send function key events when it is. With this option you can transform the non-keyboard “button” events back into function key events.

To work around the limited number of buttons found on most ADB mice, the following key sequences trigger mouse button events:

  • ⟨Option⟩+⟨LeftArrow⟩ will work as the middle mouse button.
  • ⟨Option⟩+⟨RightArrow⟩ will work as the right mouse button.

On PowerBook (mac68k) models the following key sequences are also significant:

  • ⟨Option⟩+⟨UpArrow⟩ increase screen brightness.
  • ⟨Option⟩+⟨DownArrow⟩ decrease screen brightness.

NetBSD is known to support the following ADB keyboards:

  • On-board keyboards on PowerBook models
  • Apple Standard Keyboard
  • Apple Keyboard II
  • Apple Extended Keyboard
  • Apple Extended Keyboard II
  • Apple Adjustable Keyboard
  • Most third-party ADB keyboards are supported

xmodmap(1), adb(4), wscons(4), wskbd(4), wsconsctl(8)

The number pad on extended keyboards does not send out the proper key codes for many applications.

The LEDs on extended keyboards are not functional under NetBSD.

In X11 with the default key mapping, middle and right mouse button events will hold ‘Meta_L’ and this will clobber the intended mouse button. ⟨Option⟩ shoud be remapped with xmodmap(1) to the ⟨Command⟩ key:

remove Mod4 = Super_L
remove Mod1 = Alt_L
add Mod1 = Super_L
January 20, 2025 NetBSD 10.99