summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Kurbjun <kkurbjun@gmail.com>2009-04-17 03:56:06 +0000
committerKarl Kurbjun <kkurbjun@gmail.com>2009-04-17 03:56:06 +0000
commit94dc016a94b04e6c114c08cdfa3a224047edeea1 (patch)
tree19ef2a9265d5deaf0006fb0f874da8444abbd602
parent4f47b3893838c8da9bea25078dc35e93d1d6df27 (diff)
downloadrockbox-94dc016a94b04e6c114c08cdfa3a224047edeea1.zip
rockbox-94dc016a94b04e6c114c08cdfa3a224047edeea1.tar.gz
rockbox-94dc016a94b04e6c114c08cdfa3a224047edeea1.tar.bz2
rockbox-94dc016a94b04e6c114c08cdfa3a224047edeea1.tar.xz
M:Robe 500: Remove some dead code and cleanup button handling
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20720 a1c6a512-1295-4272-9138-f99709370657
-rwxr-xr-xfirmware/target/arm/tms320dm320/debug-dm320.c52
-rw-r--r--firmware/target/arm/tms320dm320/mrobe-500/button-mr500.c98
2 files changed, 41 insertions, 109 deletions
diff --git a/firmware/target/arm/tms320dm320/debug-dm320.c b/firmware/target/arm/tms320dm320/debug-dm320.c
index 5dfe9bb..53acd3f 100755
--- a/firmware/target/arm/tms320dm320/debug-dm320.c
+++ b/firmware/target/arm/tms320dm320/debug-dm320.c
@@ -35,58 +35,11 @@
#include "tsc2100.h"
#endif
-#if defined(PCM_TEST)
-/* Leaving this in for potential debugging for other targets */
-#include "pcm.h"
-#include "debug-target.h"
-#include "dsp-target.h"
-#include "dsp/ipc.h"
-#define ARM_BUFFER_SIZE (PCM_SIZE)
-
-static signed short *the_rover = (signed short *)0x1900000;
-static unsigned int index_rover = 0;
-
-void pcmtest_get_more(unsigned char** start, size_t* size)
-{
- unsigned long sdem_addr;
- sdem_addr = (unsigned long)the_rover + index_rover;
-
- *start = (unsigned char*)(sdem_addr);
- *size = ARM_BUFFER_SIZE;
-
- index_rover += ARM_BUFFER_SIZE;
- if (index_rover >= 4*1024*1024)
- {
- index_rover = 0;
- }
-
- DEBUGF("pcm_sdram at 0x%08lx, sdem_addr 0x%08lx",
- (unsigned long)the_rover, (unsigned long)sdem_addr);
-}
-#endif
-
bool __dbg_ports(void)
{
-#if defined(PCM_TEST)
- int fd;
- int bytes;
-
- fd = open("/test.raw", O_RDONLY);
- bytes = read(fd, the_rover, 4*1024*1024);
- close(fd);
-
- DEBUGF("read %d rover bytes", bytes);
-
- pcm_play_data(&pcmtest_get_more,(unsigned char*)the_rover, ARM_BUFFER_SIZE);
-#endif
-
return false;
}
-#ifndef CREATIVE_ZVx
-extern char r_buffer[5];
-extern int r_button;
-#endif
bool __dbg_hw_info(void)
{
int line = 0, oldline;
@@ -171,11 +124,6 @@ bool __dbg_hw_info(void)
address+=0x800;
else if (button==BUTTON_RC_REW)
address-=0x800;
-
- snprintf(buf, sizeof(buf), "Buffer: 0x%02x%02x%02x%02x%02x",
- r_buffer[0], r_buffer[1], r_buffer[2], r_buffer[3],r_buffer[4] ); lcd_puts(0, line++, buf);
- snprintf(buf, sizeof(buf), "Button: 0x%08x, HWread: 0x%08x",
- (unsigned int)button, r_button); lcd_puts(0, line++, buf);
#else
button = button_get(false);
if(button & BUTTON_POWER)
diff --git a/firmware/target/arm/tms320dm320/mrobe-500/button-mr500.c b/firmware/target/arm/tms320dm320/mrobe-500/button-mr500.c
index daa53f7..036f777 100644
--- a/firmware/target/arm/tms320dm320/mrobe-500/button-mr500.c
+++ b/firmware/target/arm/tms320dm320/mrobe-500/button-mr500.c
@@ -35,12 +35,6 @@
#include "string.h"
#include "touchscreen.h"
-#define BUTTON_TIMEOUT 50
-
-#define BUTTON_START_BYTE 0xF0
-#define BUTTON_START_BYTE2 0xF4 /* not sure why, but sometimes you get F0 or F4, */
- /* but always the same one for the session? */
-static short last_x, last_y, last_z1, last_z2; /* for the touch screen */
static bool touch_available = false;
static bool hold_button = false;
@@ -129,93 +123,83 @@ inline bool button_hold(void)
return hold_button;
}
-#define TOUCH_MARGIN 8
-char r_buffer[5];
-int r_button = BUTTON_NONE;
int button_read_device(int *data)
{
- int retval, button1_location, button2_location;
+ char r_buffer[5];
+ int r_button = BUTTON_NONE;
+
static int oldbutton = BUTTON_NONE;
static bool oldhold = false;
-
static long last_touch = 0;
- r_button=BUTTON_NONE;
*data = 0;
+ /* Handle touchscreen */
if (touch_available)
{
short x,y;
- bool send_touch = false;
+ short last_z1, last_z2;
+
tsc2100_read_values(&x, &y, &last_z1, &last_z2);
- if (TIME_BEFORE(last_touch + HZ/5, current_tick))
- {
- if ((x > last_x + TOUCH_MARGIN) ||
- (x < last_x - TOUCH_MARGIN) ||
- (y > last_y + TOUCH_MARGIN) ||
- (y < last_y - TOUCH_MARGIN))
- {
- send_touch = true;
- }
- }
- else
- send_touch = true;
- if (send_touch)
- {
- last_x = x;
- last_y = y;
- *data = touch_to_pixels(x, y);
- r_button |= touchscreen_to_pixels((*data&0xffff0000)>>16,
- *data&0x0000ffff, data);
- oldbutton = r_button;
- }
- last_touch = current_tick;
+
+ *data = touch_to_pixels(x, y);
+ r_button |= touchscreen_to_pixels((*data&0xffff0000)>>16,
+ *data&0x0000ffff, data);
+ oldbutton = r_button;
+
touch_available = false;
+ last_touch=current_tick;
}
else
{
/* Touch hasn't happened in a while, clear the bits */
if(last_touch+3>current_tick)
- {
oldbutton&=(0xFF);
- }
}
+ /* Handle power button */
if ((IO_GIO_BITSET0&0x01) == 0)
{
r_button |= BUTTON_POWER;
oldbutton=r_button;
}
+ else
+ oldbutton&=~BUTTON_POWER;
- retval=uart1_gets_queue(r_buffer, 5);
-
- for(button1_location=0;button1_location<4;button1_location++)
+ /* Handle remote buttons */
+ if(uart1_gets_queue(r_buffer, 5)>=0)
{
- if((r_buffer[button1_location]&0xF0)==0xF0
- && (r_buffer[button1_location+1]&0xF0)!=0xF0)
- break;
- }
- button1_location++;
- if(button1_location==5)
- button1_location=0;
+ int button_location;
- if(button1_location==4)
- button2_location=0;
- else
- button2_location=button1_location+1;
+ for(button_location=0;button_location<4;button_location++)
+ {
+ if((r_buffer[button_location]&0xF0)==0xF0
+ && (r_buffer[button_location+1]&0xF0)!=0xF0)
+ break;
+ }
+
+ if(button_location==4)
+ button_location=0;
+
+ button_location++;
+
+ r_button |= r_buffer[button_location];
+
+ /* Find the hold status location */
+ if(button_location==4)
+ button_location=0;
+ else
+ button_location++;
+
+ hold_button=((r_buffer[button_location]&0x80)?true:false);
- if(retval>=0)
- {
uart1_clear_queue();
- r_button |= r_buffer[button1_location];
oldbutton=r_button;
- hold_button=((r_buffer[button2_location]&0x80)?true:false);
}
else
- {
r_button=oldbutton;
- }
+ /* Take care of hold notices */
#ifndef BOOTLOADER
/* give BL notice if HB state chaged */
if (hold_button != oldhold)