diff options
Diffstat (limited to 'src/KINDLE/i_video.c')
-rw-r--r-- | src/KINDLE/i_video.c | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/src/KINDLE/i_video.c b/src/KINDLE/i_video.c index b379f97..5672b28 100644 --- a/src/KINDLE/i_video.c +++ b/src/KINDLE/i_video.c | |||
@@ -133,6 +133,8 @@ static void init_kindle_keys() { | |||
133 | } | 133 | } |
134 | } | 134 | } |
135 | 135 | ||
136 | #define KINDLE_READ_AGAIN 4 | ||
137 | |||
136 | static int kindle_poll_keys(kindle_key_t *k) { | 138 | static int kindle_poll_keys(kindle_key_t *k) { |
137 | int retval = read(kindleKeysFd, k, sizeof(kindle_key_t)); | 139 | int retval = read(kindleKeysFd, k, sizeof(kindle_key_t)); |
138 | if (retval == -1) { | 140 | if (retval == -1) { |
@@ -152,6 +154,10 @@ static int kindle_poll_keys(kindle_key_t *k) { | |||
152 | perror("read()"); | 154 | perror("read()"); |
153 | exit(1); | 155 | exit(1); |
154 | } | 156 | } |
157 | } else if (k->keyCode == KINDLE_READ_AGAIN) { | ||
158 | printf("Read again\n"); | ||
159 | read(kindleKeysFd2, k, sizeof(kindle_key_t)); | ||
160 | return 1; | ||
155 | } else if (retval > 0) { | 161 | } else if (retval > 0) { |
156 | return 1; | 162 | return 1; |
157 | } | 163 | } |
@@ -179,10 +185,11 @@ static boolean mouse_currently_grabbed; | |||
179 | #define KINDLE_RIGHT 106 | 185 | #define KINDLE_RIGHT 106 |
180 | #define KINDLE_UP 103 | 186 | #define KINDLE_UP 103 |
181 | #define KINDLE_DOWN 108 | 187 | #define KINDLE_DOWN 108 |
182 | #define KINDE_OK 194 | 188 | #define KINDLE_OK 194 |
183 | #define KINDLE_HOME 102 | 189 | #define KINDLE_HOME 102 |
184 | #define KINDLE_MENU 139 | 190 | #define KINDLE_MENU 139 |
185 | #define KINDLE_BACK 158 | 191 | #define KINDLE_BACK 158 |
192 | #define KINDLE_KEYBOARD 29 | ||
186 | 193 | ||
187 | static int I_TranslateKey(unsigned short code) | 194 | static int I_TranslateKey(unsigned short code) |
188 | { | 195 | { |
@@ -193,7 +200,10 @@ static int I_TranslateKey(unsigned short code) | |||
193 | case KINDLE_RIGHT: rc = KEYD_UPARROW; break; | 200 | case KINDLE_RIGHT: rc = KEYD_UPARROW; break; |
194 | case KINDLE_UP: rc = KEYD_LEFTARROW; break; | 201 | case KINDLE_UP: rc = KEYD_LEFTARROW; break; |
195 | case KINDLE_DOWN: rc = KEYD_RIGHTARROW; break; | 202 | case KINDLE_DOWN: rc = KEYD_RIGHTARROW; break; |
196 | case KINDE_OK: rc = KEYD_RCTRL; break; | 203 | case KINDLE_OK: rc = KEYD_RCTRL; break; |
204 | case KINDLE_BACK: rc = KEYD_ESCAPE; break; | ||
205 | case KINDLE_MENU: rc = KEYD_ENTER; break; | ||
206 | case KINDLE_KEYBOARD: rc = KEYD_SPACEBAR; break; | ||
197 | default: break; | 207 | default: break; |
198 | } | 208 | } |
199 | 209 | ||