diff options
Diffstat (limited to 'firmware')
-rw-r--r-- | firmware/drivers/button.c | 11 | ||||
-rw-r--r-- | firmware/drivers/serial.c | 2 | ||||
-rw-r--r-- | firmware/export/button.h | 33 | ||||
-rw-r--r-- | firmware/usb.c | 2 |
4 files changed, 24 insertions, 24 deletions
diff --git a/firmware/drivers/button.c b/firmware/drivers/button.c index f934052746..25cdd3d96b 100644 --- a/firmware/drivers/button.c +++ b/firmware/drivers/button.c | |||
@@ -267,7 +267,6 @@ void button_set_flip(bool flip) | |||
267 | } | 267 | } |
268 | } | 268 | } |
269 | 269 | ||
270 | |||
271 | /* | 270 | /* |
272 | * Get button pressed from hardware | 271 | * Get button pressed from hardware |
273 | */ | 272 | */ |
@@ -376,12 +375,12 @@ static int button_read(void) | |||
376 | if(adc_read(2) < 0x180) | 375 | if(adc_read(2) < 0x180) |
377 | btn |= BUTTON_RIGHT; | 376 | btn |= BUTTON_RIGHT; |
378 | if(adc_read(3) < 0x180) | 377 | if(adc_read(3) < 0x180) |
379 | btn |= BUTTON_PLAY | BUTTON_UP; | 378 | btn |= BUTTON_PLAY; |
380 | 379 | ||
381 | if ( !(porta & 0x20) ) | 380 | if ( !(porta & 0x20) ) |
382 | btn |= BUTTON_ON; | 381 | btn |= BUTTON_ON; |
383 | if ( !(porta & 0x800) ) | 382 | if ( !(porta & 0x800) ) |
384 | btn |= BUTTON_STOP | BUTTON_DOWN; | 383 | btn |= BUTTON_STOP; |
385 | 384 | ||
386 | return btn; | 385 | return btn; |
387 | } | 386 | } |
@@ -488,7 +487,7 @@ static int button_read(void) | |||
488 | if(adc_read(ADC_BUTTON_OPTION) > 0x200) /* active high */ | 487 | if(adc_read(ADC_BUTTON_OPTION) > 0x200) /* active high */ |
489 | btn |= BUTTON_MENU; | 488 | btn |= BUTTON_MENU; |
490 | if(adc_read(ADC_BUTTON_ONOFF) < 0x120) /* active low */ | 489 | if(adc_read(ADC_BUTTON_ONOFF) < 0x120) /* active low */ |
491 | btn |= BUTTON_ON; | 490 | btn |= BUTTON_OFF; |
492 | 491 | ||
493 | /* Check the 4 direction keys, hard-coded analog limits for now */ | 492 | /* Check the 4 direction keys, hard-coded analog limits for now */ |
494 | if (data >= 0x2EF) | 493 | if (data >= 0x2EF) |
@@ -496,9 +495,9 @@ static int button_read(void) | |||
496 | else if (data >= 0x246) | 495 | else if (data >= 0x246) |
497 | btn |= BUTTON_RIGHT; | 496 | btn |= BUTTON_RIGHT; |
498 | else if (data >= 0x19D) | 497 | else if (data >= 0x19D) |
499 | btn |= BUTTON_PLAY | BUTTON_UP; | 498 | btn |= BUTTON_UP; |
500 | else if (data >= 0x0A1) | 499 | else if (data >= 0x0A1) |
501 | btn |= BUTTON_STOP | BUTTON_DOWN; | 500 | btn |= BUTTON_DOWN; |
502 | 501 | ||
503 | return btn; | 502 | return btn; |
504 | } | 503 | } |
diff --git a/firmware/drivers/serial.c b/firmware/drivers/serial.c index 11dadc6f19..e1e0eb82e9 100644 --- a/firmware/drivers/serial.c +++ b/firmware/drivers/serial.c | |||
@@ -85,7 +85,7 @@ int remote_control_rx(void) | |||
85 | } | 85 | } |
86 | else | 86 | else |
87 | { | 87 | { |
88 | #ifndef HAVE_NEO_KEYPAD /* This needs to be fixed for Neo */ | 88 | #if !defined(HAVE_NEO_KEYPAD) && !defined(HAVE_ONDIO_KEYPAD) |
89 | switch (btn) | 89 | switch (btn) |
90 | { | 90 | { |
91 | case STOP: | 91 | case STOP: |
diff --git a/firmware/export/button.h b/firmware/export/button.h index 7f4998f48d..7ec484440f 100644 --- a/firmware/export/button.h +++ b/firmware/export/button.h | |||
@@ -37,7 +37,7 @@ void button_set_flip(bool flip); /* turn 180 degrees */ | |||
37 | #define BUTTON_NONE 0x0000 | 37 | #define BUTTON_NONE 0x0000 |
38 | 38 | ||
39 | #ifdef HAVE_NEO_KEYPAD | 39 | #ifdef HAVE_NEO_KEYPAD |
40 | 40 | /* neo button codes */ | |
41 | #define BUTTON_UP 0x0080 | 41 | #define BUTTON_UP 0x0080 |
42 | #define BUTTON_DOWN 0x0010 | 42 | #define BUTTON_DOWN 0x0010 |
43 | #define BUTTON_LEFT 0x0001 | 43 | #define BUTTON_LEFT 0x0001 |
@@ -80,9 +80,6 @@ void button_set_flip(bool flip); /* turn 180 degrees */ | |||
80 | #else | 80 | #else |
81 | 81 | ||
82 | /* Shared button codes */ | 82 | /* Shared button codes */ |
83 | #define BUTTON_ON 0x0001 | ||
84 | #define BUTTON_UP 0x0010 | ||
85 | #define BUTTON_DOWN 0x0020 | ||
86 | #define BUTTON_LEFT 0x0040 | 83 | #define BUTTON_LEFT 0x0040 |
87 | #define BUTTON_RIGHT 0x0080 | 84 | #define BUTTON_RIGHT 0x0080 |
88 | 85 | ||
@@ -94,38 +91,42 @@ void button_set_flip(bool flip); /* turn 180 degrees */ | |||
94 | /* remote control buttons */ | 91 | /* remote control buttons */ |
95 | #define BUTTON_RC_VOL_UP (0x0008 | BUTTON_REMOTE) | 92 | #define BUTTON_RC_VOL_UP (0x0008 | BUTTON_REMOTE) |
96 | #define BUTTON_RC_VOL_DOWN (0x0800 | BUTTON_REMOTE) | 93 | #define BUTTON_RC_VOL_DOWN (0x0800 | BUTTON_REMOTE) |
97 | #define BUTTON_RC_PLAY (BUTTON_UP | BUTTON_REMOTE) | ||
98 | #define BUTTON_RC_STOP (BUTTON_DOWN | BUTTON_REMOTE) | ||
99 | #define BUTTON_RC_LEFT (BUTTON_LEFT | BUTTON_REMOTE) | 94 | #define BUTTON_RC_LEFT (BUTTON_LEFT | BUTTON_REMOTE) |
100 | #define BUTTON_RC_RIGHT (BUTTON_RIGHT| BUTTON_REMOTE) | 95 | #define BUTTON_RC_RIGHT (BUTTON_RIGHT| BUTTON_REMOTE) |
101 | 96 | ||
102 | #ifdef HAVE_RECORDER_KEYPAD | 97 | #ifdef HAVE_RECORDER_KEYPAD |
103 | 98 | ||
104 | /* Recorder specific button codes */ | 99 | /* Recorder specific button codes */ |
100 | #define BUTTON_ON 0x0001 | ||
105 | #define BUTTON_OFF 0x0002 | 101 | #define BUTTON_OFF 0x0002 |
106 | #define BUTTON_PLAY 0x0004 | 102 | #define BUTTON_PLAY 0x0004 |
103 | #define BUTTON_UP 0x0010 | ||
104 | #define BUTTON_DOWN 0x0020 | ||
107 | #define BUTTON_F1 0x0100 | 105 | #define BUTTON_F1 0x0100 |
108 | #define BUTTON_F2 0x0200 | 106 | #define BUTTON_F2 0x0200 |
109 | #define BUTTON_F3 0x0400 | 107 | #define BUTTON_F3 0x0400 |
110 | 108 | ||
109 | #define BUTTON_RC_PLAY (BUTTON_PLAY | BUTTON_REMOTE) | ||
110 | #define BUTTON_RC_STOP (BUTTON_OFF | BUTTON_REMOTE) | ||
111 | |||
111 | #elif defined(HAVE_PLAYER_KEYPAD) | 112 | #elif defined(HAVE_PLAYER_KEYPAD) |
112 | 113 | ||
113 | /* Jukebox 6000 and Studio specific button codes */ | 114 | /* Jukebox 6000 and Studio specific button codes */ |
115 | #define BUTTON_ON 0x0001 | ||
114 | #define BUTTON_MENU 0x0002 | 116 | #define BUTTON_MENU 0x0002 |
115 | #define BUTTON_PLAY BUTTON_UP | 117 | #define BUTTON_PLAY 0x0010 |
116 | #define BUTTON_STOP BUTTON_DOWN | 118 | #define BUTTON_STOP 0x0020 |
119 | |||
120 | #define BUTTON_RC_PLAY (BUTTON_PLAY | BUTTON_REMOTE) | ||
121 | #define BUTTON_RC_STOP (BUTTON_STOP | BUTTON_REMOTE) | ||
117 | 122 | ||
118 | #elif defined HAVE_ONDIO_KEYPAD | 123 | #elif defined HAVE_ONDIO_KEYPAD |
119 | 124 | ||
120 | /* Ondio specific button codes */ | 125 | /* Ondio specific button codes */ |
121 | #define BUTTON_MENU 0x0002 | 126 | #define BUTTON_OFF 0x0002 |
122 | #define BUTTON_PLAY BUTTON_UP | 127 | #define BUTTON_UP 0x0010 |
123 | #define BUTTON_STOP BUTTON_DOWN | 128 | #define BUTTON_DOWN 0x0020 |
124 | /* ON is also interpreted as OFF, let's see if that helps a bit */ | 129 | #define BUTTON_MENU 0x0100 |
125 | #define BUTTON_OFF BUTTON_ON | ||
126 | #define BUTTON_F1 0x0100 /* unreacheable */ | ||
127 | #define BUTTON_F2 0x0200 /* unreacheable */ | ||
128 | #define BUTTON_F3 0x0400 /* unreacheable */ | ||
129 | 130 | ||
130 | #endif /* HAVE_RECORDER/PLAYER/ONDIO_KEYPAD */ | 131 | #endif /* HAVE_RECORDER/PLAYER/ONDIO_KEYPAD */ |
131 | 132 | ||
diff --git a/firmware/usb.c b/firmware/usb.c index 566f9c43d2..6c14b75f19 100644 --- a/firmware/usb.c +++ b/firmware/usb.c | |||
@@ -135,7 +135,7 @@ static void usb_slave_mode(bool on) | |||
135 | lcd_puts(0, 0, str); | 135 | lcd_puts(0, 0, str); |
136 | lcd_puts(0, 1, "Press ON to debug"); | 136 | lcd_puts(0, 1, "Press ON to debug"); |
137 | lcd_update(); | 137 | lcd_update(); |
138 | while(button_get(true) != BUTTON_ON) {}; | 138 | while(!(button_get(true) & BUTTON_REL)) {}; |
139 | dbg_ports(); | 139 | dbg_ports(); |
140 | panicf("ata: %d",rc); | 140 | panicf("ata: %d",rc); |
141 | } | 141 | } |