Added icon functions for the Player model
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1404 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
b81adc40c0
commit
cc22cd0736
2 changed files with 81 additions and 29 deletions
|
@ -375,6 +375,61 @@ void lcd_double_height(bool on)
|
|||
lcd_write(true,on?9:8);
|
||||
}
|
||||
|
||||
unsigned char icon_mirror[11];
|
||||
static char icon_pos[] =
|
||||
{
|
||||
0, 0, 0, 0, /* Battery */
|
||||
2, /* USB */
|
||||
3, /* Play */
|
||||
4, /* Record */
|
||||
5, /* Pause */
|
||||
5, /* Audio */
|
||||
6, /* Repeat */
|
||||
7, /* 1 */
|
||||
9, /* Volume */
|
||||
9, /* Volume 1 */
|
||||
9, /* Volume 2 */
|
||||
10, /* Volume 3 */
|
||||
10, /* Volume 4 */
|
||||
10, /* Volume 5 */
|
||||
10, /* Param */
|
||||
};
|
||||
|
||||
static char icon_mask[] =
|
||||
{
|
||||
0x02, 0x08, 0x04, 0x10, /* Battery */
|
||||
0x04, /* USB */
|
||||
0x10, /* Play */
|
||||
0x10, /* Record */
|
||||
0x02, /* Pause */
|
||||
0x10, /* Audio */
|
||||
0x02, /* Repeat */
|
||||
0x01, /* 1 */
|
||||
0x04, /* Volume */
|
||||
0x02, /* Volume 1 */
|
||||
0x01, /* Volume 2 */
|
||||
0x08, /* Volume 3 */
|
||||
0x04, /* Volume 4 */
|
||||
0x01, /* Volume 5 */
|
||||
0x10, /* Param */
|
||||
};
|
||||
|
||||
void lcd_icon(int icon, bool enable)
|
||||
{
|
||||
int pos, mask;
|
||||
|
||||
pos = icon_pos[icon];
|
||||
mask = icon_mask[icon];
|
||||
|
||||
lcd_write(true, LCD_ICON(pos));
|
||||
|
||||
if(enable)
|
||||
icon_mirror[pos] |= mask;
|
||||
else
|
||||
icon_mirror[pos] &= ~mask;
|
||||
|
||||
lcd_write(false, icon_mirror[pos]);
|
||||
}
|
||||
#endif /* !SIMULATOR */
|
||||
|
||||
#endif /* HAVE_LCD_CHARCELLS */
|
||||
|
@ -384,6 +439,8 @@ void lcd_init (void)
|
|||
{
|
||||
create_thread(scroll_thread, scroll_stack,
|
||||
sizeof(scroll_stack), scroll_name);
|
||||
|
||||
memset(icon_mirror, sizeof(icon_mirror), 0);
|
||||
}
|
||||
#endif
|
||||
|
||||
|
|
|
@ -30,6 +30,7 @@ extern void lcd_clear_display(void);
|
|||
extern void lcd_backlight(bool on);
|
||||
extern void lcd_puts(int x, int y, unsigned char *string);
|
||||
extern void lcd_puts_scroll(int x, int y, unsigned char* string );
|
||||
extern void lcd_icon(int icon, bool enable);
|
||||
extern void lcd_stop_scroll(void);
|
||||
extern void lcd_scroll_speed( int speed );
|
||||
|
||||
|
@ -40,35 +41,29 @@ extern void lcd_scroll_speed( int speed );
|
|||
#endif
|
||||
|
||||
#ifdef HAVE_LCD_CHARCELLS
|
||||
# define LCD_ICON_BATTERY 0
|
||||
# define LCD_BATTERY_FRAME 0x02
|
||||
# define LCD_BATTERY_BAR1 0x08
|
||||
# define LCD_BATTERY_BAR2 0x04
|
||||
# define LCD_BATTERY_BAR3 0x10
|
||||
# define LCD_ICON_USB 2
|
||||
# define LCD_USB_LOGO 0xFF
|
||||
# define LCD_ICON_PLAY 3
|
||||
# define LCD_PLAY_ICON 0xFF
|
||||
# define LCD_ICON_RECORD 4
|
||||
# define LCD_RECORD_ICON 0x10
|
||||
# define LCD_ICON_STOP 5
|
||||
# define LCD_STOP_ICON 0x0F
|
||||
# define LCD_ICON_AUDIO 5
|
||||
# define LCD_AUDIO_ICON 0xF0
|
||||
# define LCD_ICON_REVERSE 6
|
||||
# define LCD_REVERSE_ICON 0xFF
|
||||
# define LCD_ICON_SINGLE 7
|
||||
# define LCD_SINGLE_ICON 0xFF
|
||||
# define LCD_ICON_VOLUME0 9
|
||||
# define LCD_VOLUME_ICON 0x04
|
||||
# define LCD_VOLUME_BAR1 0x02
|
||||
# define LCD_VOLUME_BAR2 0x01
|
||||
# define LCD_ICON_VOLUME1 10
|
||||
# define LCD_VOLUME_BAR3 0x08
|
||||
# define LCD_VOLUME_BAR4 0x04
|
||||
# define LCD_VOLUME_BAR5 0x01
|
||||
# define LCD_ICON_PARAM 10
|
||||
# define LCD_PARAM_SYMBOL 0xF0
|
||||
|
||||
/* Icon definitions for lcd_icon() */
|
||||
enum
|
||||
{
|
||||
ICON_BATTERY = 0,
|
||||
ICON_BATTERY_1,
|
||||
ICON_BATTERY_2,
|
||||
ICON_BATTERY_3,
|
||||
ICON_USB,
|
||||
ICON_PLAY,
|
||||
ICON_RECORD,
|
||||
ICON_PAUSE,
|
||||
ICON_AUDIO,
|
||||
ICON_REPEAT,
|
||||
ICON_1,
|
||||
ICON_VOLUME,
|
||||
ICON_VOLUME_1,
|
||||
ICON_VOLUME_2,
|
||||
ICON_VOLUME_3,
|
||||
ICON_VOLUME_4,
|
||||
ICON_VOLUME_5,
|
||||
ICON_PARAM
|
||||
};
|
||||
|
||||
extern void lcd_define_pattern (int which,char *pattern,int length);
|
||||
extern void lcd_double_height (bool on);
|
||||
|
|
Loading…
Reference in a new issue