Minor speed optimization to m4a lookup table build up.
[kugel-rb.git] / uisimulator / buttonmap / iriver-h10.c
blob24dbe831927cd720410c7ae0a4ebb1750dfbe303
1 /***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
10 * Copyright (C) 2006 by Barry Wardell
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation; either version 2
15 * of the License, or (at your option) any later version.
17 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
18 * KIND, either express or implied.
20 ****************************************************************************/
22 #include <SDL.h>
23 #include "config.h"
24 #include "button.h"
25 #include "buttonmap.h"
27 int key_to_button(int keyboard_button)
29 int new_btn = BUTTON_NONE;
30 switch (keyboard_button)
32 case SDLK_KP4:
33 case SDLK_LEFT:
34 new_btn = BUTTON_LEFT;
35 break;
36 case SDLK_KP6:
37 case SDLK_RIGHT:
38 new_btn = BUTTON_RIGHT;
39 break;
40 case SDLK_KP8:
41 case SDLK_UP:
42 new_btn = BUTTON_SCROLL_UP;
43 break;
44 case SDLK_KP2:
45 case SDLK_DOWN:
46 new_btn = BUTTON_SCROLL_DOWN;
47 break;
48 case SDLK_KP_PLUS:
49 case SDLK_F8:
50 new_btn = BUTTON_POWER;
51 break;
52 case SDLK_ESCAPE:
53 new_btn = BUTTON_POWER;
54 break;
55 case SDLK_KP_DIVIDE:
56 case SDLK_F1:
57 new_btn = BUTTON_REW;
58 break;
59 case SDLK_KP_MULTIPLY:
60 case SDLK_F2:
61 new_btn = BUTTON_FF;
62 break;
63 case SDLK_KP5:
64 case SDLK_SPACE:
65 new_btn = BUTTON_PLAY;
66 break;
68 return new_btn;
71 struct button_map bm[] = {
72 #if defined (IRIVER_H10)
73 { SDLK_KP_PLUS, 38, 70, 37, "Power" },
74 { SDLK_KP4, 123, 194, 26, "Cancel" },
75 { SDLK_KP6, 257, 195, 34, "Select" },
76 { SDLK_KP8, 190, 221, 28, "Up" },
77 { SDLK_KP2, 192, 320, 27, "Down" },
78 { SDLK_KP_DIVIDE, 349, 49, 20, "Rew" },
79 { SDLK_KP5, 349, 96, 20, "Play" },
80 { SDLK_KP_MULTIPLY, 350, 141, 23, "FF" },
81 #elif defined (IRIVER_H10_5GB)
82 { SDLK_KP_PLUS, 34, 76, 23, "Power" },
83 { SDLK_KP4, 106, 222, 28, "Cancel" },
84 { SDLK_KP6, 243, 220, 31, "Select" },
85 { SDLK_KP8, 176, 254, 34, "Up" },
86 { SDLK_KP2, 175, 371, 35, "Down" },
87 { SDLK_KP_DIVIDE, 319, 63, 26, "Rew" },
88 { SDLK_KP5, 320, 124, 26, "Play" },
89 { SDLK_KP_MULTIPLY, 320, 181, 32, "FF" },
90 #endif
91 { 0, 0, 0, 0, "None" }