From patchwork Thu Mar 24 14:03:07 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Programmingkid X-Patchwork-Id: 8661121 Return-Path: X-Original-To: patchwork-qemu-devel@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork2.web.kernel.org (Postfix) with ESMTP id EC67BC0553 for ; Thu, 24 Mar 2016 14:03:30 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id D702920389 for ; Thu, 24 Mar 2016 14:03:29 +0000 (UTC) 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 mail.kernel.org (Postfix) with ESMTPS id 6A45A201C0 for ; Thu, 24 Mar 2016 14:03:28 +0000 (UTC) Received: from localhost ([::1]:50522 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aj5rD-0003Bo-SS for patchwork-qemu-devel@patchwork.kernel.org; Thu, 24 Mar 2016 10:03:27 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:44476) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aj5r2-00037v-Ju for qemu-devel@nongnu.org; Thu, 24 Mar 2016 10:03:17 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aj5qw-0000Rw-P9 for qemu-devel@nongnu.org; Thu, 24 Mar 2016 10:03:16 -0400 Received: from mail-ig0-x241.google.com ([2607:f8b0:4001:c05::241]:33396) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aj5qw-0000RZ-JQ for qemu-devel@nongnu.org; Thu, 24 Mar 2016 10:03:10 -0400 Received: by mail-ig0-x241.google.com with SMTP id nt3so1996921igb.0 for ; Thu, 24 Mar 2016 07:03:10 -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=qTkt+j0MFFStTMcQYskyQKnCFSO1p6r/jaHMyzrf3GM=; b=GaHGLGNrtlg5AYtAbBICtI3I0LS23ixb1vdYs0abaoD+7k3Z0SMTHBlit4TQ52be8H 03tBeObJ2IkmYJ8Iqz72t6U/lOd7hrIEsAjnITuOjA4d+yFKbN27/EhfXRqmUUqc7lXE 5HLpg9zBpN/V9ymmKQ6lvvSAlrLG8+nRKPGXkHHhGx26rRumbarYao552difnTK4EM7t 6IsMqzLJDXbxOjaaPDScLLKDpRxUy9QB8CsmW0SoOHHz6e0f84pk/O5dW3VYMKunJiIF W6dg9mfHxEW4iMJy8NrkHVrAEYafI+lzqWj4GtgDek8e/7IRw99SE+uoDcYxA3gGBuBG VoXg== 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=qTkt+j0MFFStTMcQYskyQKnCFSO1p6r/jaHMyzrf3GM=; b=KfbJDxEPB/o/9PIVspd2KudaBKAasuHSaU8mOES64Th0jTvCLheY8vKrhxqCz7kLXN KlMmusoxikoVtu74JadszyJ9deLsK2I6apEssZr/2ai4H7tuuek/EjWVEHLfmsya3dkp yLMrUPk9176zmg1JfF8o5wXAvkPj4edlaH/vSPBlNAjeDqTVzcsUlloDJQbTzVCYQgnR 0zCelNAMFhayhudd7FJfz0k3c/9Uf5yn82+XdSrSsjRP8y09/X2r7aFPnzC+4oty0Gpj iNgICCGo5WBsDBSaCK4HsruWyWrC0f8zENgzXNnxbFi21U6/8CVfYZRVfBqGjlIeMk3+ zPMg== X-Gm-Message-State: AD7BkJKhrNPZz9IdymiV0Gt9Um+kUPTECX2wT4tDDkCLQrF2pmqFMMvsl09lwbh7OBp8nQ== X-Received: by 10.50.25.228 with SMTP id f4mr30395003igg.21.1458828189393; Thu, 24 Mar 2016 07:03:09 -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 ie10sm11436618igb.12.2016.03.24.07.03.08 (version=TLS1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Thu, 24 Mar 2016 07:03:08 -0700 (PDT) From: Programmingkid Date: Thu, 24 Mar 2016 10:03:07 -0400 Message-Id: <6C327B0C-A280-45B0-893D-26ECE4F61194@gmail.com> 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::241 Subject: [Qemu-devel] [PATCH v2 1/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+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org X-Spam-Status: No, score=-6.8 required=5.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED, FREEMAIL_FROM, RCVD_IN_DNSWL_HI, T_DKIM_INVALID, UNPARSEABLE_RELAY autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Add the adb-keys.h file. It maps ADB transition key codes with values. Signed-off-by: John Arbuckle Reviewed-by: Peter Maydell --- *v2 changes: Changed order of this patch. 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 */