forked from len0rd/rockbox
Removed the Neo code. Nobody is interested in it.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5096 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
995d24ca2c
commit
57945b125d
12 changed files with 1 additions and 609 deletions
|
|
@ -1,38 +0,0 @@
|
||||||
/***************************************************************************
|
|
||||||
* __________ __ ___.
|
|
||||||
* Open \______ \ ____ ____ | | _\_ |__ _______ ___
|
|
||||||
* Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
|
|
||||||
* Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
|
|
||||||
* Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
|
|
||||||
* \/ \/ \/ \/ \/
|
|
||||||
* $Id$
|
|
||||||
*
|
|
||||||
* Copyright (C) 2002 Justin Heiner
|
|
||||||
*
|
|
||||||
* All files in this archive are subject to the GNU General Public License.
|
|
||||||
* See the file COPYING in the source tree root for full license agreement.
|
|
||||||
*
|
|
||||||
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
|
||||||
* KIND, either express or implied.
|
|
||||||
*
|
|
||||||
****************************************************************************/
|
|
||||||
#ifndef _ICONS_H_
|
|
||||||
#define _ICONS_H_
|
|
||||||
|
|
||||||
#include <lcd.h>
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Icons of size 5x7 pixels for the Player LCD
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifdef HAVE_LCD_CHARCELLS
|
|
||||||
|
|
||||||
enum {
|
|
||||||
Unknown=0x90,
|
|
||||||
Bookmark = 0x16,
|
|
||||||
Plugin, Folder, Mod_Ajz, Language, File, Wps, Playlist, Text, Config,
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
@ -1,308 +0,0 @@
|
||||||
|
|
||||||
/***************************************************************************
|
|
||||||
* __________ __ ___.
|
|
||||||
* Open \______ \ ____ ____ | | _\_ |__ _______ ___
|
|
||||||
* Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
|
|
||||||
* Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
|
|
||||||
* Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
|
|
||||||
* \/ \/ \/ \/ \/
|
|
||||||
* $Id$
|
|
||||||
*
|
|
||||||
* Copyright (C) 2003 by Francois Boucher
|
|
||||||
*
|
|
||||||
* All files in this archive are subject to the GNU General Public License.
|
|
||||||
* See the file COPYING in the source tree root for full license agreement.
|
|
||||||
*
|
|
||||||
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
|
||||||
* KIND, either express or implied.
|
|
||||||
*
|
|
||||||
****************************************************************************/
|
|
||||||
#include <string.h>
|
|
||||||
|
|
||||||
#include "lcd.h"
|
|
||||||
#include "button.h"
|
|
||||||
#include "kernel.h"
|
|
||||||
#include "version.h"
|
|
||||||
#include "sprintf.h"
|
|
||||||
#include "lcd-charset.h"
|
|
||||||
#include "lang.h"
|
|
||||||
#include "debug.h"
|
|
||||||
|
|
||||||
/* Two functions that are part of the firmware for the Neo-builds only.
|
|
||||||
TODO: make them proper "official" firmware functions or replace them
|
|
||||||
with apps code */
|
|
||||||
extern void lcd_cursor(int x, int y);
|
|
||||||
extern int button_add(unsigned int button);
|
|
||||||
|
|
||||||
#define KEYBOARD_MAX_LENGTH 255
|
|
||||||
|
|
||||||
static const unsigned char* const kbd_screens[3] = {
|
|
||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZ",
|
|
||||||
"abcdefghijklmnopqrstuvwxyz",
|
|
||||||
" !\"#$%&'()*+,-./0123456789;<=>?@[]^_`{|}"
|
|
||||||
};
|
|
||||||
|
|
||||||
static const unsigned char* const kbd_screens_names[3] = {
|
|
||||||
"Capitals",
|
|
||||||
"Small",
|
|
||||||
"Others"
|
|
||||||
};
|
|
||||||
|
|
||||||
static void kbd_show_legend( int nb )
|
|
||||||
{
|
|
||||||
char buf[24];
|
|
||||||
snprintf(buf, sizeof(buf), "[%s]", kbd_screens_names[nb] );
|
|
||||||
lcd_puts( 0, 1, buf );
|
|
||||||
lcd_puts( 0, 2, kbd_screens[nb] );
|
|
||||||
lcd_puts( 0, 3, &kbd_screens[nb][20] );
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
Returns text len Max = KEYBOARD_MAX_LENGTH characters.
|
|
||||||
|
|
||||||
This function MUST NOT fill in more than 'buflen' bytes into the given
|
|
||||||
buffer!
|
|
||||||
*/
|
|
||||||
static char kbdbuffer[KEYBOARD_MAX_LENGTH+1]; /* no use to alloc this huge one
|
|
||||||
on the stack */
|
|
||||||
int kbd_input(char* text, int buflen)
|
|
||||||
{
|
|
||||||
char* pstart;
|
|
||||||
char* pcursor;
|
|
||||||
char* pold;
|
|
||||||
int bufferlen;
|
|
||||||
char cursorpos = 0;
|
|
||||||
int ret = 0;
|
|
||||||
bool done = false;
|
|
||||||
int key;
|
|
||||||
int screen = 0;
|
|
||||||
int screenidx = -1;
|
|
||||||
const unsigned char * pcurscreen = kbd_screens[0];
|
|
||||||
bool ctl;
|
|
||||||
|
|
||||||
bufferlen = strlen(text);
|
|
||||||
|
|
||||||
if(bufferlen > KEYBOARD_MAX_LENGTH)
|
|
||||||
bufferlen = KEYBOARD_MAX_LENGTH;
|
|
||||||
|
|
||||||
strncpy(kbdbuffer, text, bufferlen);
|
|
||||||
kbdbuffer[bufferlen] = 0;
|
|
||||||
|
|
||||||
lcd_clear_display();
|
|
||||||
|
|
||||||
/* Initial setup */
|
|
||||||
lcd_puts(0, 0, kbdbuffer);
|
|
||||||
kbd_show_legend(screen);
|
|
||||||
lcd_cursor(cursorpos, 0);
|
|
||||||
lcd_write_command(LCD_BLINKCUR);
|
|
||||||
|
|
||||||
pstart = pcursor = kbdbuffer;
|
|
||||||
|
|
||||||
while(!done) {
|
|
||||||
/* We want all the keys except the releases and the repeats */
|
|
||||||
key = button_get(true);
|
|
||||||
|
|
||||||
if( key & BUTTON_IR)
|
|
||||||
ctl = key & (NEO_IR_BUTTON_PLAY|NEO_IR_BUTTON_STOP|NEO_IR_BUTTON_BROWSE);
|
|
||||||
else
|
|
||||||
ctl = key & (BUTTON_PLAY|BUTTON_STOP|BUTTON_MENU);
|
|
||||||
|
|
||||||
if( ctl ) {
|
|
||||||
/* These key do not change the first line */
|
|
||||||
switch( key ) {
|
|
||||||
case BUTTON_MENU:
|
|
||||||
case BUTTON_IR|NEO_IR_BUTTON_BROWSE:
|
|
||||||
|
|
||||||
/* Toggle legend screen */
|
|
||||||
screen++;
|
|
||||||
if( screen == 3 )
|
|
||||||
screen = 0;
|
|
||||||
|
|
||||||
pcurscreen = kbd_screens[screen];
|
|
||||||
|
|
||||||
screenidx = -1;
|
|
||||||
kbd_show_legend( screen );
|
|
||||||
|
|
||||||
/* Restore cursor */
|
|
||||||
lcd_cursor( cursorpos, 0 );
|
|
||||||
break;
|
|
||||||
|
|
||||||
case BUTTON_PLAY:
|
|
||||||
case BUTTON_IR|NEO_IR_BUTTON_PLAY:
|
|
||||||
if( bufferlen ) {
|
|
||||||
strncpy(text, kbdbuffer, bufferlen);
|
|
||||||
text[bufferlen] = 0;
|
|
||||||
ret = bufferlen;
|
|
||||||
}
|
|
||||||
/* fallthrough */
|
|
||||||
|
|
||||||
case BUTTON_STOP:
|
|
||||||
case BUTTON_IR|NEO_IR_BUTTON_STOP:
|
|
||||||
|
|
||||||
/* Remove blinking cursor */
|
|
||||||
lcd_write_command(LCD_OFFCUR);
|
|
||||||
done = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
|
|
||||||
switch( key ) {
|
|
||||||
|
|
||||||
case BUTTON_PROGRAM:
|
|
||||||
case BUTTON_PROGRAM|BUTTON_REPEAT:
|
|
||||||
case BUTTON_IR|NEO_IR_BUTTON_PROGRAM:
|
|
||||||
|
|
||||||
/* Delete char at pcursor */
|
|
||||||
/* Check if we are at the last char */
|
|
||||||
|
|
||||||
if( *(pcursor+1) != 0 ) {
|
|
||||||
/* move rest of the string to the left in buffer */
|
|
||||||
pold = pcursor;
|
|
||||||
while( *pcursor ){
|
|
||||||
*pcursor = *(pcursor+1);
|
|
||||||
pcursor++;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Restore position */
|
|
||||||
pcursor = pold;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
*pcursor = 0;
|
|
||||||
pcursor--;
|
|
||||||
cursorpos--;
|
|
||||||
}
|
|
||||||
|
|
||||||
bufferlen--;
|
|
||||||
break;
|
|
||||||
|
|
||||||
case BUTTON_IR|NEO_IR_BUTTON_EQ:
|
|
||||||
case BUTTON_SELECT|BUTTON_LEFT:
|
|
||||||
|
|
||||||
/* Insert left */
|
|
||||||
|
|
||||||
if(bufferlen >= buflen)
|
|
||||||
break;
|
|
||||||
|
|
||||||
pold = pcursor;
|
|
||||||
|
|
||||||
/* Goto end */
|
|
||||||
while( *pcursor )
|
|
||||||
pcursor++;
|
|
||||||
|
|
||||||
/* Move string content to the right */
|
|
||||||
while( pcursor >= pold ){
|
|
||||||
*(pcursor+1) = *pcursor;
|
|
||||||
pcursor--;
|
|
||||||
}
|
|
||||||
|
|
||||||
pcursor = pold;
|
|
||||||
*pcursor = ' ';
|
|
||||||
|
|
||||||
bufferlen++;
|
|
||||||
break;
|
|
||||||
|
|
||||||
case BUTTON_IR|NEO_IR_BUTTON_MUTE:
|
|
||||||
case BUTTON_SELECT|BUTTON_RIGHT:
|
|
||||||
|
|
||||||
/* Insert Right */
|
|
||||||
|
|
||||||
if(bufferlen >= buflen)
|
|
||||||
break;
|
|
||||||
|
|
||||||
pold = pcursor;
|
|
||||||
|
|
||||||
/* Goto end */
|
|
||||||
while(*pcursor)
|
|
||||||
pcursor++;
|
|
||||||
|
|
||||||
/* Move string content to the right */
|
|
||||||
while(pcursor > pold){
|
|
||||||
*(pcursor+1) = *pcursor;
|
|
||||||
pcursor--;
|
|
||||||
}
|
|
||||||
|
|
||||||
pcursor = pold;
|
|
||||||
*(pcursor+1) = ' ';
|
|
||||||
|
|
||||||
bufferlen++;
|
|
||||||
|
|
||||||
button_add( BUTTON_RIGHT );
|
|
||||||
break;
|
|
||||||
|
|
||||||
case BUTTON_LEFT:
|
|
||||||
case BUTTON_REPEAT|BUTTON_LEFT:
|
|
||||||
case BUTTON_IR|NEO_IR_BUTTON_REWIND:
|
|
||||||
case BUTTON_IR|NEO_IR_BUTTON_REWIND|BUTTON_REPEAT:
|
|
||||||
|
|
||||||
/* Move cursor left. Shift text right if all the way to the
|
|
||||||
left */
|
|
||||||
|
|
||||||
/* Check for start of string */
|
|
||||||
if(pcursor > kbdbuffer) {
|
|
||||||
|
|
||||||
screenidx = -1;
|
|
||||||
cursorpos--;
|
|
||||||
pcursor--;
|
|
||||||
|
|
||||||
/* Check if were going off the screen */
|
|
||||||
if( cursorpos == -1 ) {
|
|
||||||
cursorpos = 0;
|
|
||||||
|
|
||||||
/* Shift text right if we are */
|
|
||||||
pstart--;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
|
|
||||||
case BUTTON_RIGHT:
|
|
||||||
case BUTTON_REPEAT|BUTTON_RIGHT:
|
|
||||||
case BUTTON_IR|NEO_IR_BUTTON_FFORWARD:
|
|
||||||
case BUTTON_IR|NEO_IR_BUTTON_FFORWARD|BUTTON_REPEAT:
|
|
||||||
|
|
||||||
/* Move cursor right. Shift text left if all the way to
|
|
||||||
the right */
|
|
||||||
|
|
||||||
/* Check for end of string */
|
|
||||||
if( *(pcursor+1) != 0 ) {
|
|
||||||
screenidx = -1;
|
|
||||||
cursorpos++;
|
|
||||||
pcursor++;
|
|
||||||
|
|
||||||
/* Check if were going of the screen */
|
|
||||||
if( cursorpos == 20 ) {
|
|
||||||
cursorpos = 19;
|
|
||||||
|
|
||||||
/* Shift text left if we are */
|
|
||||||
pstart++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
|
|
||||||
case BUTTON_UP:
|
|
||||||
case BUTTON_UP|BUTTON_REPEAT:
|
|
||||||
case BUTTON_IR|NEO_IR_BUTTON_VOLUP:
|
|
||||||
case BUTTON_IR|NEO_IR_BUTTON_VOLUP|BUTTON_REPEAT:
|
|
||||||
screenidx += 2;
|
|
||||||
/* fallthrough */
|
|
||||||
case BUTTON_DOWN:
|
|
||||||
case BUTTON_DOWN|BUTTON_REPEAT:
|
|
||||||
case BUTTON_IR|NEO_IR_BUTTON_VOLDN:
|
|
||||||
case BUTTON_IR|NEO_IR_BUTTON_VOLDN|BUTTON_REPEAT:
|
|
||||||
screenidx--;
|
|
||||||
|
|
||||||
if( screenidx < 0 )
|
|
||||||
screenidx = strlen(pcurscreen)-1;
|
|
||||||
|
|
||||||
if( pcurscreen[screenidx] == 0 )
|
|
||||||
screenidx = 0;
|
|
||||||
|
|
||||||
/* Changes the character over the cursor */
|
|
||||||
*pcursor = pcurscreen[screenidx];
|
|
||||||
}
|
|
||||||
|
|
||||||
lcd_puts( 0, 0, pstart);
|
|
||||||
lcd_cursor( cursorpos, 0 );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
|
|
@ -1,46 +0,0 @@
|
||||||
#define CGRAM0 0x00
|
|
||||||
#define CGRAM1 0x01
|
|
||||||
#define CGRAM2 0x02
|
|
||||||
#define CGRAM3 0x03
|
|
||||||
#define CGRAM4 0x04
|
|
||||||
#define CGRAM5 0x05
|
|
||||||
#define CGRAM6 0x06
|
|
||||||
#define CGRAM7 0x07
|
|
||||||
|
|
||||||
#define CGRAM0_CHAR 0x10
|
|
||||||
#define CGRAM1_CHAR 0x11
|
|
||||||
#define CGRAM2_CHAR 0x12
|
|
||||||
#define CGRAM3_CHAR 0x13
|
|
||||||
#define CGRAM4_CHAR 0x14
|
|
||||||
#define CGRAM5_CHAR 0x15
|
|
||||||
#define CGRAM6_CHAR 0x16
|
|
||||||
#define CGRAM7_CHAR 0x17
|
|
||||||
|
|
||||||
#define RESERVED_CHAR 0xff
|
|
||||||
#define NOCHAR_OLD 0x24
|
|
||||||
#define UNKNOWN_CHAR 0x3f
|
|
||||||
|
|
||||||
#define LARROW_CHAR 0x1e
|
|
||||||
#define RARROW_CHAR 0x1f
|
|
||||||
#define FULLGRID_CHAR 0x7f
|
|
||||||
|
|
||||||
#define BACKSLASH_LCD CGRAM0
|
|
||||||
#define RARROW_LCD 0x7e
|
|
||||||
#define LARROW_LCD 0x7f
|
|
||||||
#define FULLGRID_LCD 0xff
|
|
||||||
|
|
||||||
#define PROGRESS1_LCD CGRAM1
|
|
||||||
#define PROGRESS2_LCD CGRAM2
|
|
||||||
#define PROGRESS3_LCD CGRAM3
|
|
||||||
#define PROGRESS4_LCD CGRAM4
|
|
||||||
#define PROGRESS5_LCD FULLGRID_LCD
|
|
||||||
|
|
||||||
#define PROGRESS1_CHAR CGRAM1_CHAR
|
|
||||||
#define PROGRESS2_CHAR CGRAM2_CHAR
|
|
||||||
#define PROGRESS3_CHAR CGRAM3_CHAR
|
|
||||||
#define PROGRESS4_CHAR CGRAM4_CHAR
|
|
||||||
#define PROGRESS5_CHAR FULLGRID_CHAR
|
|
||||||
|
|
||||||
|
|
||||||
extern unsigned char latin1_to_lcd[256];
|
|
||||||
|
|
||||||
|
|
@ -461,7 +461,6 @@ static char* get_tag(struct mp3entry* cid3,
|
||||||
#endif
|
#endif
|
||||||
case 'f': /* full-line progress bar */
|
case 'f': /* full-line progress bar */
|
||||||
#ifdef HAVE_LCD_CHARCELLS
|
#ifdef HAVE_LCD_CHARCELLS
|
||||||
#ifndef HAVE_NEO_LCD
|
|
||||||
if(has_new_lcd()) {
|
if(has_new_lcd()) {
|
||||||
*flags |= WPS_REFRESH_PLAYER_PROGRESS;
|
*flags |= WPS_REFRESH_PLAYER_PROGRESS;
|
||||||
*flags |= WPS_REFRESH_DYNAMIC;
|
*flags |= WPS_REFRESH_DYNAMIC;
|
||||||
|
|
@ -471,7 +470,6 @@ static char* get_tag(struct mp3entry* cid3,
|
||||||
snprintf(buf, buf_size, " ");
|
snprintf(buf, buf_size, " ");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
#endif /* HAVE_NEO_LCD */
|
|
||||||
{
|
{
|
||||||
/* Tell the user if we have an OldPlayer */
|
/* Tell the user if we have an OldPlayer */
|
||||||
snprintf(buf, buf_size, " <Old LCD> ");
|
snprintf(buf, buf_size, " <Old LCD> ");
|
||||||
|
|
|
||||||
|
|
@ -385,42 +385,6 @@ static int button_read(void)
|
||||||
return btn;
|
return btn;
|
||||||
}
|
}
|
||||||
|
|
||||||
#elif defined(HAVE_NEO_KEYPAD)
|
|
||||||
static bool mStation = false;
|
|
||||||
void button_init(void)
|
|
||||||
{
|
|
||||||
/* set port pins as input */
|
|
||||||
PAIOR &= ~0x4000; /* PA14 for stop button */
|
|
||||||
|
|
||||||
queue_init(&button_queue);
|
|
||||||
lastbtn = 0;
|
|
||||||
tick_add_task(button_tick);
|
|
||||||
|
|
||||||
reset_poweroff_timer();
|
|
||||||
}
|
|
||||||
int button_read(void)
|
|
||||||
{
|
|
||||||
int btn=BUTTON_NONE;
|
|
||||||
|
|
||||||
btn|=((~PCDR)&0xFF);
|
|
||||||
|
|
||||||
/* mStation does not have a stop button and this floods the button queue
|
|
||||||
with stops if used on a mStation */
|
|
||||||
if (!mStation)
|
|
||||||
btn|=((~(PADR>>6))&0x100);
|
|
||||||
|
|
||||||
return btn;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* This function adds a button press event to the button queue, and this
|
|
||||||
really isn't anything Neo-specific but might be subject for adding to
|
|
||||||
the generic button driver */
|
|
||||||
int button_add(unsigned int button)
|
|
||||||
{
|
|
||||||
queue_post(&button_queue,button,NULL);
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
#elif defined HAVE_ONDIO_KEYPAD
|
#elif defined HAVE_ONDIO_KEYPAD
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
|
||||||
|
|
@ -488,11 +488,7 @@ void lcd_set_contrast(int val)
|
||||||
|
|
||||||
void lcd_init (void)
|
void lcd_init (void)
|
||||||
{
|
{
|
||||||
#ifdef HAVE_NEO_LCD
|
|
||||||
new_lcd = true;
|
|
||||||
#else
|
|
||||||
new_lcd = has_new_lcd();
|
new_lcd = has_new_lcd();
|
||||||
#endif
|
|
||||||
memset(extended_chars_mapped, NO_CHAR, sizeof(extended_chars_mapped));
|
memset(extended_chars_mapped, NO_CHAR, sizeof(extended_chars_mapped));
|
||||||
memset(extended_pattern_content, NO_CHAR,sizeof(extended_pattern_content));
|
memset(extended_pattern_content, NO_CHAR,sizeof(extended_pattern_content));
|
||||||
memset(extended_pattern_usage, 0, sizeof(extended_pattern_usage));
|
memset(extended_pattern_usage, 0, sizeof(extended_pattern_usage));
|
||||||
|
|
@ -731,46 +727,4 @@ static void scroll_thread(void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef HAVE_NEO_LCD
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Function use by the Neo code, but could/should be made a generic one.
|
|
||||||
*/
|
|
||||||
void lcd_cursor(int x, int y)
|
|
||||||
{
|
|
||||||
/* If we make sure the display size is setup with proper defines in the
|
|
||||||
config-*.h files, this should work on all displays */
|
|
||||||
if ((cursor.y_pos==y && cursor.x_pos==x) ||
|
|
||||||
x>=20 ||
|
|
||||||
y>3 ||
|
|
||||||
x<0 ||
|
|
||||||
y<0) {
|
|
||||||
DEBUGF("ignoring request for cursor to %d,%d - currently %d,%d\n",
|
|
||||||
x,y,cursor.x_pos,cursor.y_pos);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
char value=0;
|
|
||||||
|
|
||||||
cursor.y_pos=y;
|
|
||||||
cursor.x_pos=x;
|
|
||||||
|
|
||||||
switch (y) {
|
|
||||||
case 0:
|
|
||||||
value=0x80|x;
|
|
||||||
break;
|
|
||||||
case 1:
|
|
||||||
value=0x80|(x+0x40);
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
value=0x80|(x+0x14);
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
value=0x80|(x+0x54);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
lcd_write_command(value);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif /* HAVE_LCD_CHARCELLS */
|
#endif /* HAVE_LCD_CHARCELLS */
|
||||||
|
|
|
||||||
|
|
@ -85,7 +85,7 @@ int remote_control_rx(void)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
#if !defined(HAVE_NEO_KEYPAD) && !defined(HAVE_ONDIO_KEYPAD)
|
#ifndef HAVE_ONDIO_KEYPAD
|
||||||
switch (btn)
|
switch (btn)
|
||||||
{
|
{
|
||||||
case STOP:
|
case STOP:
|
||||||
|
|
|
||||||
|
|
@ -36,49 +36,6 @@ void button_set_flip(bool flip); /* turn 180 degrees */
|
||||||
|
|
||||||
#define BUTTON_NONE 0x0000
|
#define BUTTON_NONE 0x0000
|
||||||
|
|
||||||
#ifdef HAVE_NEO_KEYPAD
|
|
||||||
/* neo button codes */
|
|
||||||
#define BUTTON_UP 0x0080
|
|
||||||
#define BUTTON_DOWN 0x0010
|
|
||||||
#define BUTTON_LEFT 0x0001
|
|
||||||
#define BUTTON_RIGHT 0x0002
|
|
||||||
|
|
||||||
#define BUTTON_SELECT 0x0040
|
|
||||||
|
|
||||||
#define BUTTON_ON BUTTON_SELECT
|
|
||||||
|
|
||||||
#define BUTTON_PROGRAM 0x0020
|
|
||||||
#define BUTTON_MENU 0x0004
|
|
||||||
#define BUTTON_PLAY 0x0008
|
|
||||||
#define BUTTON_STOP 0x0100
|
|
||||||
|
|
||||||
#define BUTTON_IR 0x2000
|
|
||||||
#define BUTTON_REPEAT 0x4000
|
|
||||||
#define BUTTON_REL 0x8000
|
|
||||||
|
|
||||||
#define BUTTON_FLAG_MASK 0xF000
|
|
||||||
#define BUTTON_MASK 0x0FFF
|
|
||||||
#define BUTTON_ALL BUTTON_MASK
|
|
||||||
#define BUTTON_ALL_FLAGS BUTTON_FLAG_MASK
|
|
||||||
|
|
||||||
#define NEO_IR_BUTTON_POWER 0x0001
|
|
||||||
#define NEO_IR_BUTTON_SETTING 0x0002
|
|
||||||
#define NEO_IR_BUTTON_REWIND 0x0004
|
|
||||||
#define NEO_IR_BUTTON_FFORWARD 0x0008
|
|
||||||
#define NEO_IR_BUTTON_PLAY 0x0010
|
|
||||||
#define NEO_IR_BUTTON_VOLUP 0x0020
|
|
||||||
#define NEO_IR_BUTTON_VOLDN 0x0040
|
|
||||||
#define NEO_IR_BUTTON_BROWSE 0x0080
|
|
||||||
#define NEO_IR_BUTTON_EQ 0x0100
|
|
||||||
#define NEO_IR_BUTTON_MUTE 0x0200
|
|
||||||
#define NEO_IR_BUTTON_PROGRAM 0x0400
|
|
||||||
#define NEO_IR_BUTTON_STOP 0x0800
|
|
||||||
#define NEO_IR_BUTTON_NONE 0x0000
|
|
||||||
|
|
||||||
#define NEO_IR_BUTTON_REPEAT 0x1000
|
|
||||||
|
|
||||||
#else
|
|
||||||
|
|
||||||
/* Shared button codes */
|
/* Shared button codes */
|
||||||
#define BUTTON_LEFT 0x0040
|
#define BUTTON_LEFT 0x0040
|
||||||
#define BUTTON_RIGHT 0x0080
|
#define BUTTON_RIGHT 0x0080
|
||||||
|
|
@ -130,7 +87,5 @@ void button_set_flip(bool flip); /* turn 180 degrees */
|
||||||
|
|
||||||
#endif /* HAVE_RECORDER/PLAYER/ONDIO_KEYPAD */
|
#endif /* HAVE_RECORDER/PLAYER/ONDIO_KEYPAD */
|
||||||
|
|
||||||
#endif /* HAVE_NEO_KEYPAD */
|
|
||||||
|
|
||||||
#endif /* _BUTTON_H_ */
|
#endif /* _BUTTON_H_ */
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,52 +0,0 @@
|
||||||
/* define this if you have a charcell LCD display */
|
|
||||||
#define HAVE_LCD_CHARCELLS 1
|
|
||||||
|
|
||||||
/* define this if you have a neo-style LCD */
|
|
||||||
#define HAVE_NEO_LCD 1
|
|
||||||
|
|
||||||
/* define this if you have the Player's keyboard */
|
|
||||||
#define HAVE_NEO_KEYPAD 1
|
|
||||||
|
|
||||||
/* Define this if you have a SH7034 */
|
|
||||||
#define HAVE_SH7034
|
|
||||||
|
|
||||||
/* Define this if you have a MAS3507D */
|
|
||||||
#define HAVE_MAS3507D
|
|
||||||
|
|
||||||
/* Define this if you have a DAC3550A */
|
|
||||||
#define HAVE_DAC3550A
|
|
||||||
|
|
||||||
/* Define this to the CPU frequency */
|
|
||||||
#define CPU_FREQ 12000000 /* cycle time ~83.3ns */
|
|
||||||
|
|
||||||
/* Battery scale factor (?) */
|
|
||||||
#define BATTERY_SCALE_FACTOR 6546
|
|
||||||
|
|
||||||
/* Define this if you must discharge the data line by driving it low
|
|
||||||
and then set it to input to see if it stays low or goes high */
|
|
||||||
#define HAVE_I2C_LOW_FIRST
|
|
||||||
|
|
||||||
/* Define this if you control power on PADR (instead of PBDR) */
|
|
||||||
#define HAVE_POWEROFF_ON_PADR
|
|
||||||
|
|
||||||
/* Offset ( in the firmware file's header ) to the file length */
|
|
||||||
#define FIRMWARE_OFFSET_FILE_LENGTH 0
|
|
||||||
|
|
||||||
/* Offset ( in the firmware file's header ) to the file CRC */
|
|
||||||
#define FIRMWARE_OFFSET_FILE_CRC 4
|
|
||||||
|
|
||||||
/* Offset ( in the firmware file's header ) to the real data */
|
|
||||||
#define FIRMWARE_OFFSET_FILE_DATA 6
|
|
||||||
|
|
||||||
/* How to detect USB */
|
|
||||||
#define USB_NONE 1
|
|
||||||
|
|
||||||
/* If this is a Neo-style memory architecture platform */
|
|
||||||
#define NEO_MEMORY 1
|
|
||||||
|
|
||||||
/* Define this for programmable LED available */
|
|
||||||
#define HAVE_LED
|
|
||||||
|
|
||||||
/* Define this for LCD backlight available */
|
|
||||||
#define HAVE_BACKLIGHT
|
|
||||||
|
|
||||||
|
|
@ -28,8 +28,6 @@
|
||||||
#include "config-fmrecorder.h"
|
#include "config-fmrecorder.h"
|
||||||
#elif defined(ARCHOS_RECORDERV2)
|
#elif defined(ARCHOS_RECORDERV2)
|
||||||
#include "config-recorderv2.h"
|
#include "config-recorderv2.h"
|
||||||
#elif defined(NEO_35)
|
|
||||||
#include "config-neo35.h"
|
|
||||||
#elif defined(ARCHOS_ONDIOSP)
|
#elif defined(ARCHOS_ONDIOSP)
|
||||||
#include "config-ondiosp.h"
|
#include "config-ondiosp.h"
|
||||||
#elif defined(ARCHOS_ONDIOFM)
|
#elif defined(ARCHOS_ONDIOFM)
|
||||||
|
|
|
||||||
|
|
@ -142,25 +142,4 @@ extern int lcd_getstringsize(const unsigned char *str, int *w, int *h);
|
||||||
|
|
||||||
#endif /* CHARCELLS / BITMAP */
|
#endif /* CHARCELLS / BITMAP */
|
||||||
|
|
||||||
/* These control codes may only work on the Neo LCD display */
|
|
||||||
#ifdef HAVE_NEO_LCD
|
|
||||||
|
|
||||||
/* Cursor Control Instructions */
|
|
||||||
#define LCD_OFFCUR 0x0C
|
|
||||||
#define LCD_LINECUR 0x0E
|
|
||||||
#define LCD_BLINKCUR 0x0D
|
|
||||||
#define LCD_COMBNCUR 0x0F
|
|
||||||
#define LCD_HOMECUR 0x02
|
|
||||||
#define LCD_SHLFCUR 0x10
|
|
||||||
#define LCD_SHRTCUR 0x14
|
|
||||||
|
|
||||||
/* Display Control Instructions */
|
|
||||||
#define LCD_CLEAR 0x01
|
|
||||||
#define LCD_OFFDISP 0x08
|
|
||||||
#define LCD_ONDISP 0x0C
|
|
||||||
#define LCD_SHLFDISP 0x18
|
|
||||||
#define LCD_SHRTDISP 0x1C
|
|
||||||
#define LCD_SET_CGRAM 0x40
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif /* __LCD_H__ */
|
#endif /* __LCD_H__ */
|
||||||
|
|
|
||||||
12
tools/configure
vendored
12
tools/configure
vendored
|
|
@ -208,8 +208,6 @@ if [ -z "$archos" ]; then
|
||||||
echo "2 - Archos Recorder"
|
echo "2 - Archos Recorder"
|
||||||
echo "3 - Archos FM Recorder"
|
echo "3 - Archos FM Recorder"
|
||||||
echo "4 - Archos Recorder v2"
|
echo "4 - Archos Recorder v2"
|
||||||
echo "5 - Neo mStation"
|
|
||||||
echo "6 - Neo 35"
|
|
||||||
echo "7 - Archos Ondio SP"
|
echo "7 - Archos Ondio SP"
|
||||||
echo "8 - Archos Ondio FM"
|
echo "8 - Archos Ondio FM"
|
||||||
echo "9 - Iriver H100"
|
echo "9 - Iriver H100"
|
||||||
|
|
@ -233,16 +231,6 @@ if [ -z "$archos" ]; then
|
||||||
target="-DARCHOS_RECORDERV2"
|
target="-DARCHOS_RECORDERV2"
|
||||||
;;
|
;;
|
||||||
|
|
||||||
5)
|
|
||||||
archos="neomstation"
|
|
||||||
target="-DNEO_MSTATION"
|
|
||||||
;;
|
|
||||||
|
|
||||||
6)
|
|
||||||
archos="neo35"
|
|
||||||
target="-DNEO_35"
|
|
||||||
;;
|
|
||||||
|
|
||||||
7)
|
7)
|
||||||
archos="ondiosp"
|
archos="ondiosp"
|
||||||
target="-DARCHOS_ONDIOSP"
|
target="-DARCHOS_ONDIOSP"
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue