diff options
Diffstat (limited to 'apps')
-rw-r--r-- | apps/plugins/rockboy/sys_rockbox.c | 62 |
1 files changed, 55 insertions, 7 deletions
diff --git a/apps/plugins/rockboy/sys_rockbox.c b/apps/plugins/rockboy/sys_rockbox.c index 0bed7f8de6..faba95ea68 100644 --- a/apps/plugins/rockboy/sys_rockbox.c +++ b/apps/plugins/rockboy/sys_rockbox.c | |||
@@ -134,10 +134,34 @@ void ev_poll(void) | |||
134 | #else | 134 | #else |
135 | if(released) { | 135 | if(released) { |
136 | ev.type = EV_RELEASE; | 136 | ev.type = EV_RELEASE; |
137 | if(released & options.LEFT) { ev.code=PAD_LEFT; ev_postevent(&ev); } | 137 | #ifdef HAVE_LCD_COLOR |
138 | if (options.rotate == 1) /* if screen is rotated, rotate direction keys */ | ||
139 | { | ||
140 | if(released & options.LEFT) {ev.code=PAD_DOWN; ev_postevent(&ev);} | ||
141 | if(released & options.RIGHT) {ev.code=PAD_UP; ev_postevent(&ev);} | ||
142 | if(released & options.DOWN) {ev.code=PAD_RIGHT; ev_postevent(&ev);} | ||
143 | if(released & options.UP) {ev.code=PAD_LEFT; ev_postevent(&ev);} | ||
144 | } | ||
145 | else if (options.rotate == 2) /* if screen is rotated, rotate direction keys */ | ||
146 | { | ||
147 | if(released & options.LEFT) {ev.code=PAD_UP; ev_postevent(&ev);} | ||
148 | if(released & options.RIGHT) {ev.code=PAD_DOWN; ev_postevent(&ev);} | ||
149 | if(released & options.DOWN) {ev.code=PAD_LEFT; ev_postevent(&ev);} | ||
150 | if(released & options.UP) {ev.code=PAD_RIGHT; ev_postevent(&ev);} | ||
151 | } | ||
152 | else /* screen is not rotated, do not rotate direction keys */ | ||
153 | { | ||
154 | if(released & options.LEFT) {ev.code=PAD_LEFT; ev_postevent(&ev);} | ||
155 | if(released & options.RIGHT) {ev.code=PAD_RIGHT; ev_postevent(&ev);} | ||
156 | if(released & options.DOWN) {ev.code=PAD_DOWN; ev_postevent(&ev);} | ||
157 | if(released & options.UP) {ev.code=PAD_UP; ev_postevent(&ev);} | ||
158 | } | ||
159 | #else | ||
160 | if(released & options.LEFT) {ev.code=PAD_LEFT; ev_postevent(&ev);} | ||
138 | if(released & options.RIGHT) {ev.code=PAD_RIGHT; ev_postevent(&ev);} | 161 | if(released & options.RIGHT) {ev.code=PAD_RIGHT; ev_postevent(&ev);} |
139 | if(released & options.DOWN) { ev.code=PAD_DOWN; ev_postevent(&ev); } | 162 | if(released & options.DOWN) {ev.code=PAD_DOWN; ev_postevent(&ev);} |
140 | if(released & options.UP) { ev.code=PAD_UP; ev_postevent(&ev); } | 163 | if(released & options.UP) {ev.code=PAD_UP; ev_postevent(&ev);} |
164 | #endif | ||
141 | if(released & options.A) { ev.code=PAD_A; ev_postevent(&ev); } | 165 | if(released & options.A) { ev.code=PAD_A; ev_postevent(&ev); } |
142 | if(released & options.B) { ev.code=PAD_B; ev_postevent(&ev); } | 166 | if(released & options.B) { ev.code=PAD_B; ev_postevent(&ev); } |
143 | if(released & options.START) { | 167 | if(released & options.START) { |
@@ -151,10 +175,34 @@ void ev_poll(void) | |||
151 | } | 175 | } |
152 | if(pressed) { /* button press */ | 176 | if(pressed) { /* button press */ |
153 | ev.type = EV_PRESS; | 177 | ev.type = EV_PRESS; |
154 | if(pressed & options.LEFT) { ev.code=PAD_LEFT; ev_postevent(&ev); } | 178 | #ifdef HAVE_LCD_COLOR |
155 | if(pressed & options.RIGHT) { ev.code=PAD_RIGHT; ev_postevent(&ev);} | 179 | if (options.rotate == 1) /* if screen is rotated, rotate direction keys */ |
156 | if(pressed & options.DOWN) { ev.code=PAD_DOWN; ev_postevent(&ev); } | 180 | { |
157 | if(pressed & options.UP) { ev.code=PAD_UP; ev_postevent(&ev); } | 181 | if(pressed & options.LEFT) {ev.code=PAD_DOWN; ev_postevent(&ev);} |
182 | if(pressed & options.RIGHT) {ev.code=PAD_UP; ev_postevent(&ev);} | ||
183 | if(pressed & options.DOWN) {ev.code=PAD_RIGHT; ev_postevent(&ev);} | ||
184 | if(pressed & options.UP) {ev.code=PAD_LEFT; ev_postevent(&ev);} | ||
185 | } | ||
186 | else if (options.rotate == 2) /* if screen is rotated, rotate direction keys */ | ||
187 | { | ||
188 | if(pressed & options.LEFT) {ev.code=PAD_UP; ev_postevent(&ev);} | ||
189 | if(pressed & options.RIGHT) {ev.code=PAD_DOWN; ev_postevent(&ev);} | ||
190 | if(pressed & options.DOWN) {ev.code=PAD_LEFT; ev_postevent(&ev);} | ||
191 | if(pressed & options.UP) {ev.code=PAD_RIGHT; ev_postevent(&ev);} | ||
192 | } | ||
193 | else /* screen is not rotated, do not rotate direction keys */ | ||
194 | { | ||
195 | if(pressed & options.LEFT) {ev.code=PAD_LEFT; ev_postevent(&ev);} | ||
196 | if(pressed & options.RIGHT) {ev.code=PAD_RIGHT; ev_postevent(&ev);} | ||
197 | if(pressed & options.DOWN) {ev.code=PAD_DOWN; ev_postevent(&ev);} | ||
198 | if(pressed & options.UP) {ev.code=PAD_UP; ev_postevent(&ev);} | ||
199 | } | ||
200 | #else | ||
201 | if(pressed & options.LEFT) {ev.code=PAD_LEFT; ev_postevent(&ev);} | ||
202 | if(pressed & options.RIGHT) {ev.code=PAD_RIGHT; ev_postevent(&ev);} | ||
203 | if(pressed & options.DOWN) {ev.code=PAD_DOWN; ev_postevent(&ev);} | ||
204 | if(pressed & options.UP) {ev.code=PAD_UP; ev_postevent(&ev);} | ||
205 | #endif | ||
158 | if(pressed & options.A) { ev.code=PAD_A; ev_postevent(&ev); } | 206 | if(pressed & options.A) { ev.code=PAD_A; ev_postevent(&ev); } |
159 | if(pressed & options.B) { ev.code=PAD_B; ev_postevent(&ev); } | 207 | if(pressed & options.B) { ev.code=PAD_B; ev_postevent(&ev); } |
160 | if(pressed & options.START) { | 208 | if(pressed & options.START) { |