From patchwork Thu Mar 24 01:18:03 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Programmingkid X-Patchwork-Id: 601422 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3qVpTx50GXz9s5w for ; Thu, 24 Mar 2016 12:18:29 +1100 (AEDT) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b=jjFB9NIa; dkim-atps=neutral Received: from localhost ([::1]:46919 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aitut-00043X-Sm for incoming@patchwork.ozlabs.org; Wed, 23 Mar 2016 21:18:27 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:47726) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aituc-0003mL-HH for qemu-devel@nongnu.org; Wed, 23 Mar 2016 21:18:11 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aituX-0002uk-De for qemu-devel@nongnu.org; Wed, 23 Mar 2016 21:18:10 -0400 Received: from mail-ig0-x242.google.com ([2607:f8b0:4001:c05::242]:32863) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aituX-0002uf-72 for qemu-devel@nongnu.org; Wed, 23 Mar 2016 21:18:05 -0400 Received: by mail-ig0-x242.google.com with SMTP id nt3so453484igb.0 for ; Wed, 23 Mar 2016 18:18:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:content-transfer-encoding:subject:date:message-id:to :mime-version; bh=EsQIKsSMB4WvKYjpT72OgKnKPAzsZFoG8wTsvwuZeWs=; b=jjFB9NIaZT4MASYceutwYRYDy81ZrpoZtKdpF0CqlpfyiXmnqgVoKfXAD7mxHNZw2l V8KXP0tX5auvduhcmQzajunrUljZTyXpG0VTgy5ZGPnnsyTsinPsXeT5UsCVtIeG6IQw NFj+QmrB8nempLXkHnZveNGLtl4EcE22aawky819oKl/NNn/ckylyDzamKrovi20n8o4 vxIA6/GErBdkYQ1bwXzjZwCHlBrc+GSJLGiV4l/JnWRbeX8opdOgRUoFzCGBh1TeXlQH 6mgQYiCCmoHsz7XG95Cn6P+902ay4WWvaxpKPucvj1pE359tubtdIfTszsQe/cyCeoXm 8E/w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:content-transfer-encoding:subject:date :message-id:to:mime-version; bh=EsQIKsSMB4WvKYjpT72OgKnKPAzsZFoG8wTsvwuZeWs=; b=Sv3qX8OawG6yQurdZ2IA2DiO/YTdkzlVrEObkbqwJUKpZHgErxLKropHfk/Oxi3uKS 7eQBCuJfoN/WYPj0jMrhpZuqLy6FT3Ikaa6//xQdfXfu2xjHB9bFckre39+DLT/EeARI 4/+l1rvKq4KNJABTvKabschKdLLp6L6BhTVzTNFzjKdiMLMqse5og6oo4dzTpyPERLMP Z66aK9XhRJPPF3nCw+18rJRYQlnBry/Tm+NjbELQNgnrLXobtc4OLh+xguYjtwv57085 lSlw3X+Gj+6NNYBkJ8YjeeBvVC6qZMjlJSbNHJHjRLF257i+u5nNQxvk8xxkjJQCS5P0 3/3w== X-Gm-Message-State: AD7BkJJro8SWYDY8V6Vmd4MZQaTk08HMdRUrkvS7qvkvNwdjD1w5K5+WJ/nKfF6dWM2G8Q== X-Received: by 10.50.73.164 with SMTP id m4mr6242731igv.30.1458782284851; Wed, 23 Mar 2016 18:18:04 -0700 (PDT) Received: from [192.168.0.5] (d199-74-164-53.col.wideopenwest.com. [74.199.53.164]) by smtp.gmail.com with ESMTPSA id 94sm2244799ios.25.2016.03.23.18.18.04 (version=TLS1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Wed, 23 Mar 2016 18:18:04 -0700 (PDT) From: Programmingkid Date: Wed, 23 Mar 2016 21:18:03 -0400 Message-Id: To: Peter Maydell , Gerd Hoffmann , qemu-devel qemu-devel Mime-Version: 1.0 (Apple Message framework v1084) X-Mailer: Apple Mail (2.1084) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2607:f8b0:4001:c05::242 Subject: [Qemu-devel] [PATCH 2/4] adb-keys.h - initial commit X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Add the adb-keys.h file. It maps ADB transition key codes with values. Signed-off-by: John Arbuckle --- include/hw/input/adb-keys.h | 147 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 147 insertions(+) create mode 100644 include/hw/input/adb-keys.h diff --git a/include/hw/input/adb-keys.h b/include/hw/input/adb-keys.h new file mode 100644 index 0000000..633cf71 --- /dev/null +++ b/include/hw/input/adb-keys.h @@ -0,0 +1,147 @@ +/* + * QEMU System Emulator + * + * Copyright (c) 2016 John Arbuckle + * + * This work is licensed under the terms of the GNU GPL, version 2 or later. + * See the COPYING file in the top-level directory. + */ + +/* + * adb-keys.h + * + * Provides an enum of all the Macintosh keycodes. + * Note: keys like Power, volume related, and eject are handled at a lower + * level and are not available to QEMU. That doesn't mean we can't + * substitute one key for another. The function keys like F1 make a good + * substitute for these keys. This can be done in the GTK, SDL, or Cocoa + * code. + * Additional information: http://www.archive.org/stream/apple-guide-macintosh-family-hardware/Apple_Guide_to_the_Macintosh_Family_Hardware_2e#page/n345/mode/2up + * page 308 + */ + +#ifndef ADB_KEYS_H +#define ADB_KEYS_H + +enum { + ADB_KEY_A = 0x00, + ADB_KEY_B = 0x0b, + ADB_KEY_C = 0x08, + ADB_KEY_D = 0x02, + ADB_KEY_E = 0x0e, + ADB_KEY_F = 0x03, + ADB_KEY_G = 0x05, + ADB_KEY_H = 0x04, + ADB_KEY_I = 0x22, + ADB_KEY_J = 0x26, + ADB_KEY_K = 0x28, + ADB_KEY_L = 0x25, + ADB_KEY_M = 0x2e, + ADB_KEY_N = 0x2d, + ADB_KEY_O = 0x1f, + ADB_KEY_P = 0x23, + ADB_KEY_Q = 0x0c, + ADB_KEY_R = 0x0f, + ADB_KEY_S = 0x01, + ADB_KEY_T = 0x11, + ADB_KEY_U = 0x20, + ADB_KEY_V = 0x09, + ADB_KEY_W = 0x0d, + ADB_KEY_X = 0x07, + ADB_KEY_Y = 0x10, + ADB_KEY_Z = 0x06, + + ADB_KEY_0 = 0x1d, + ADB_KEY_1 = 0x12, + ADB_KEY_2 = 0x13, + ADB_KEY_3 = 0x14, + ADB_KEY_4 = 0x15, + ADB_KEY_5 = 0x17, + ADB_KEY_6 = 0x16, + ADB_KEY_7 = 0x1a, + ADB_KEY_8 = 0x1c, + ADB_KEY_9 = 0x19, + + ADB_KEY_GRAVE_ACCENT = 0x32, + ADB_KEY_MINUS = 0x1b, + ADB_KEY_EQUAL = 0x18, + ADB_KEY_DELETE = 0x33, + ADB_KEY_CAPS_LOCK = 0x39, + ADB_KEY_TAB = 0x30, + ADB_KEY_RETURN = 0x24, + ADB_KEY_LEFT_BRACKET = 0x21, + ADB_KEY_RIGHT_BRACKET = 0x1e, + ADB_KEY_BACKSLASH = 0x2a, + ADB_KEY_SEMICOLON = 0x29, + ADB_KEY_APOSTROPHE = 0x27, + ADB_KEY_COMMA = 0x2b, + ADB_KEY_PERIOD = 0x2f, + ADB_KEY_FORWARD_SLASH = 0x2c, + ADB_KEY_LEFT_SHIFT = 0x38, + ADB_KEY_RIGHT_SHIFT = 0x7b, + ADB_KEY_SPACEBAR = 0x31, + ADB_KEY_LEFT_CONTROL = 0x36, + ADB_KEY_RIGHT_CONTROL = 0x7d, + ADB_KEY_LEFT_OPTION = 0x3a, + ADB_KEY_RIGHT_OPTION = 0x7c, + ADB_KEY_LEFT_COMMAND = 0x37, + ADB_KEY_RIGHT_COMMAND = 0x7e, + + ADB_KEY_KP_0 = 0x52, + ADB_KEY_KP_1 = 0x53, + ADB_KEY_KP_2 = 0x54, + ADB_KEY_KP_3 = 0x55, + ADB_KEY_KP_4 = 0x56, + ADB_KEY_KP_5 = 0x57, + ADB_KEY_KP_6 = 0x58, + ADB_KEY_KP_7 = 0x59, + ADB_KEY_KP_8 = 0x5b, + ADB_KEY_KP_9 = 0x5c, + ADB_KEY_KP_PERIOD = 0x41, + ADB_KEY_KP_ENTER = 0x4c, + ADB_KEY_KP_PLUS = 0x45, + ADB_KEY_KP_SUBTRACT = 0x4e, + ADB_KEY_KP_MULTIPLY = 0x43, + ADB_KEY_KP_DIVIDE = 0x4b, + ADB_KEY_KP_EQUAL = 0x51, + ADB_KEY_KP_CLEAR = 0x47, + + ADB_KEY_UP = 0x3e, + ADB_KEY_DOWN = 0x3d, + ADB_KEY_LEFT = 0x3b, + ADB_KEY_RIGHT = 0x3c, + + ADB_KEY_HELP = 0x72, + ADB_KEY_HOME = 0x73, + ADB_KEY_PAGE_UP = 0x74, + ADB_KEY_PAGE_DOWN = 0x79, + ADB_KEY_END = 0x77, + ADB_KEY_FORWARD_DELETE = 0x75, + + ADB_KEY_ESC = 0x35, + ADB_KEY_F1 = 0x7a, + ADB_KEY_F2 = 0x78, + ADB_KEY_F3 = 0x63, + ADB_KEY_F4 = 0x76, + ADB_KEY_F5 = 0x60, + ADB_KEY_F6 = 0x61, + ADB_KEY_F7 = 0x62, + ADB_KEY_F8 = 0x64, + ADB_KEY_F9 = 0x65, + ADB_KEY_F10 = 0x6d, + ADB_KEY_F11 = 0x67, + ADB_KEY_F12 = 0x6f, + ADB_KEY_F13 = 0x69, + ADB_KEY_F14 = 0x6b, + ADB_KEY_F15 = 0x71, + + ADB_KEY_VOLUME_UP = 0x48, + ADB_KEY_VOLUME_DOWN = 0x49, + ADB_KEY_VOLUME_MUTE = 0x4a, + /* ADB_KEY_POWER = 0x7f7f, */ +}; + +/* Could not find the value for this key. */ +/* #define ADB_KEY_EJECT */ + +#endif /* ADB_KEYS_H */