forked from len0rd/rockbox
h1x0/h3x0: Fix missing TIME context in remote button map
It was actually defined but not actually mapped in. Also shut up a warning in the peakmeter code when not using a color display. Both caught by -Wunused-const-variable Change-Id: Ie2403c0cd77e6fdf3468fd45115a1e0f228238e8
This commit is contained in:
parent
3b974e791a
commit
6d24ff3257
2 changed files with 150 additions and 149 deletions
|
@ -30,17 +30,17 @@
|
||||||
#include "lcd-remote.h" /* for remote_type() */
|
#include "lcd-remote.h" /* for remote_type() */
|
||||||
#include "settings.h"
|
#include "settings.h"
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The format of the list is as follows
|
* The format of the list is as follows
|
||||||
* { Action Code, Button code, Prereq button code }
|
* { Action Code, Button code, Prereq button code }
|
||||||
* if there's no need to check the previous button's value, use BUTTON_NONE
|
* if there's no need to check the previous button's value, use BUTTON_NONE
|
||||||
* Insert LAST_ITEM_IN_LIST at the end of each mapping
|
* Insert LAST_ITEM_IN_LIST at the end of each mapping
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* CONTEXT_CUSTOM's used in this file...
|
/* CONTEXT_CUSTOM's used in this file...
|
||||||
|
|
||||||
CONTEXT_CUSTOM|CONTEXT_TREE = the standard list/tree defines (without directions)
|
CONTEXT_CUSTOM|CONTEXT_TREE = the standard list/tree defines (without directions)
|
||||||
CONTEXT_CUSTOM|CONTEXT_SETTINGS = the direction keys for the eq/col picker screens
|
CONTEXT_CUSTOM|CONTEXT_SETTINGS = the direction keys for the eq/col picker screens
|
||||||
i.e where up/down is inc/dec
|
i.e where up/down is inc/dec
|
||||||
CONTEXT_SETTINGS = up/down is prev/next, l/r is inc/dec
|
CONTEXT_SETTINGS = up/down is prev/next, l/r is inc/dec
|
||||||
|
|
||||||
|
@ -52,19 +52,19 @@ static const struct button_mapping button_context_standard[] = {
|
||||||
{ ACTION_STD_PREVREPEAT, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_STD_PREVREPEAT, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
{ ACTION_STD_NEXT, BUTTON_DOWN, BUTTON_NONE },
|
{ ACTION_STD_NEXT, BUTTON_DOWN, BUTTON_NONE },
|
||||||
{ ACTION_STD_NEXTREPEAT, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_STD_NEXTREPEAT, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
|
|
||||||
{ ACTION_STD_CANCEL, BUTTON_LEFT, BUTTON_NONE },
|
{ ACTION_STD_CANCEL, BUTTON_LEFT, BUTTON_NONE },
|
||||||
{ ACTION_STD_CANCEL, BUTTON_OFF, BUTTON_NONE },
|
{ ACTION_STD_CANCEL, BUTTON_OFF, BUTTON_NONE },
|
||||||
|
|
||||||
{ ACTION_STD_CONTEXT, BUTTON_SELECT|BUTTON_REPEAT,BUTTON_SELECT },
|
{ ACTION_STD_CONTEXT, BUTTON_SELECT|BUTTON_REPEAT,BUTTON_SELECT },
|
||||||
|
|
||||||
{ ACTION_STD_QUICKSCREEN, BUTTON_MODE|BUTTON_REPEAT, BUTTON_MODE },
|
{ ACTION_STD_QUICKSCREEN, BUTTON_MODE|BUTTON_REPEAT, BUTTON_MODE },
|
||||||
{ ACTION_STD_MENU, BUTTON_MODE|BUTTON_REL, BUTTON_MODE },
|
{ ACTION_STD_MENU, BUTTON_MODE|BUTTON_REL, BUTTON_MODE },
|
||||||
{ ACTION_STD_OK, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT },
|
{ ACTION_STD_OK, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT },
|
||||||
{ ACTION_STD_OK, BUTTON_RIGHT, BUTTON_NONE },
|
{ ACTION_STD_OK, BUTTON_RIGHT, BUTTON_NONE },
|
||||||
{ ACTION_STD_OK, BUTTON_ON|BUTTON_REL, BUTTON_NONE },
|
{ ACTION_STD_OK, BUTTON_ON|BUTTON_REL, BUTTON_NONE },
|
||||||
{ ACTION_STD_REC, BUTTON_REC|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_STD_REC, BUTTON_REC|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
|
|
||||||
LAST_ITEM_IN_LIST
|
LAST_ITEM_IN_LIST
|
||||||
}; /* button_context_standard */
|
}; /* button_context_standard */
|
||||||
|
|
||||||
|
@ -93,10 +93,10 @@ static const struct button_mapping button_context_wps[] = {
|
||||||
{ ACTION_WPS_ID3SCREEN, BUTTON_ON|BUTTON_MODE, BUTTON_NONE },
|
{ ACTION_WPS_ID3SCREEN, BUTTON_ON|BUTTON_MODE, BUTTON_NONE },
|
||||||
{ ACTION_WPS_REC, BUTTON_REC|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_WPS_REC, BUTTON_REC|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
{ ACTION_WPS_HOTKEY, BUTTON_REC|BUTTON_REL, BUTTON_REC },
|
{ ACTION_WPS_HOTKEY, BUTTON_REC|BUTTON_REL, BUTTON_REC },
|
||||||
|
|
||||||
LAST_ITEM_IN_LIST
|
LAST_ITEM_IN_LIST
|
||||||
}; /* button_context_wps */
|
}; /* button_context_wps */
|
||||||
|
|
||||||
static const struct button_mapping button_context_list[] = {
|
static const struct button_mapping button_context_list[] = {
|
||||||
{ ACTION_LISTTREE_PGUP, BUTTON_ON|BUTTON_UP, BUTTON_NONE },
|
{ ACTION_LISTTREE_PGUP, BUTTON_ON|BUTTON_UP, BUTTON_NONE },
|
||||||
{ ACTION_LISTTREE_PGUP, BUTTON_ON|BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_LISTTREE_PGUP, BUTTON_ON|BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
|
@ -116,7 +116,7 @@ static const struct button_mapping button_context_tree[] = {
|
||||||
}; /* button_context_tree */
|
}; /* button_context_tree */
|
||||||
|
|
||||||
static const struct button_mapping button_context_listtree_scroll_with_combo[] = {
|
static const struct button_mapping button_context_listtree_scroll_with_combo[] = {
|
||||||
{ ACTION_NONE, BUTTON_ON, BUTTON_NONE },
|
{ ACTION_NONE, BUTTON_ON, BUTTON_NONE },
|
||||||
{ ACTION_TREE_PGLEFT, BUTTON_ON|BUTTON_LEFT, BUTTON_NONE },
|
{ ACTION_TREE_PGLEFT, BUTTON_ON|BUTTON_LEFT, BUTTON_NONE },
|
||||||
{ ACTION_TREE_ROOT_INIT, BUTTON_ON|BUTTON_LEFT|BUTTON_REPEAT, BUTTON_ON|BUTTON_LEFT },
|
{ ACTION_TREE_ROOT_INIT, BUTTON_ON|BUTTON_LEFT|BUTTON_REPEAT, BUTTON_ON|BUTTON_LEFT },
|
||||||
{ ACTION_TREE_PGLEFT, BUTTON_ON|BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_TREE_PGLEFT, BUTTON_ON|BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
|
@ -145,7 +145,7 @@ static const struct button_mapping button_context_settings[] = {
|
||||||
{ ACTION_STD_PREVREPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_STD_PREVREPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
{ ACTION_STD_NEXT, BUTTON_RIGHT, BUTTON_NONE },
|
{ ACTION_STD_NEXT, BUTTON_RIGHT, BUTTON_NONE },
|
||||||
{ ACTION_STD_NEXTREPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_STD_NEXTREPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
|
|
||||||
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
||||||
}; /* button_context_settings */
|
}; /* button_context_settings */
|
||||||
|
|
||||||
|
@ -158,7 +158,7 @@ static const struct button_mapping button_context_settings_right_is_inc[] = {
|
||||||
{ ACTION_STD_PREVREPEAT, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_STD_PREVREPEAT, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
{ ACTION_STD_NEXT, BUTTON_DOWN, BUTTON_NONE },
|
{ ACTION_STD_NEXT, BUTTON_DOWN, BUTTON_NONE },
|
||||||
{ ACTION_STD_NEXTREPEAT, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_STD_NEXTREPEAT, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
|
|
||||||
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
||||||
}; /* button_context_settingsgraphical */
|
}; /* button_context_settingsgraphical */
|
||||||
|
|
||||||
|
@ -205,7 +205,7 @@ static const struct button_mapping button_context_quickscreen[] = {
|
||||||
{ ACTION_QS_RIGHT, BUTTON_RIGHT, BUTTON_NONE },
|
{ ACTION_QS_RIGHT, BUTTON_RIGHT, BUTTON_NONE },
|
||||||
{ ACTION_QS_RIGHT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_QS_RIGHT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
{ ACTION_STD_CANCEL, BUTTON_MODE, BUTTON_NONE },
|
{ ACTION_STD_CANCEL, BUTTON_MODE, BUTTON_NONE },
|
||||||
|
|
||||||
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
||||||
}; /* button_context_quickscreen */
|
}; /* button_context_quickscreen */
|
||||||
|
|
||||||
|
@ -224,7 +224,7 @@ static const struct button_mapping button_context_pitchscreen[] = {
|
||||||
{ ACTION_PS_EXIT, BUTTON_OFF, BUTTON_NONE },
|
{ ACTION_PS_EXIT, BUTTON_OFF, BUTTON_NONE },
|
||||||
{ ACTION_PS_SLOWER, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_PS_SLOWER, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
{ ACTION_PS_FASTER, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_PS_FASTER, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
|
|
||||||
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
||||||
}; /* button_context_pitchcreen */
|
}; /* button_context_pitchcreen */
|
||||||
|
|
||||||
|
@ -235,13 +235,13 @@ static const struct button_mapping button_context_recscreen[] = {
|
||||||
{ ACTION_SETTINGS_INCREPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_SETTINGS_INCREPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
{ ACTION_SETTINGS_DEC, BUTTON_LEFT, BUTTON_NONE },
|
{ ACTION_SETTINGS_DEC, BUTTON_LEFT, BUTTON_NONE },
|
||||||
{ ACTION_SETTINGS_DECREPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_SETTINGS_DECREPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
|
|
||||||
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
||||||
}; /* button_context_recscreen */
|
}; /* button_context_recscreen */
|
||||||
|
|
||||||
static const struct button_mapping button_context_keyboard[] = {
|
static const struct button_mapping button_context_keyboard[] = {
|
||||||
{ ACTION_KBD_LEFT, BUTTON_LEFT, BUTTON_NONE },
|
{ ACTION_KBD_LEFT, BUTTON_LEFT, BUTTON_NONE },
|
||||||
{ ACTION_KBD_LEFT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_KBD_LEFT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
{ ACTION_KBD_RIGHT, BUTTON_RIGHT, BUTTON_NONE },
|
{ ACTION_KBD_RIGHT, BUTTON_RIGHT, BUTTON_NONE },
|
||||||
{ ACTION_KBD_RIGHT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_KBD_RIGHT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
{ ACTION_KBD_CURSOR_LEFT, BUTTON_ON|BUTTON_LEFT, BUTTON_NONE },
|
{ ACTION_KBD_CURSOR_LEFT, BUTTON_ON|BUTTON_LEFT, BUTTON_NONE },
|
||||||
|
@ -273,20 +273,20 @@ static const struct button_mapping button_context_radio[] = {
|
||||||
{ ACTION_FM_PLAY, BUTTON_ON | BUTTON_REL, BUTTON_ON },
|
{ ACTION_FM_PLAY, BUTTON_ON | BUTTON_REL, BUTTON_ON },
|
||||||
|
|
||||||
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_SETTINGS)
|
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_SETTINGS)
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/*****************************************************************************
|
/*****************************************************************************
|
||||||
* Remote control mappings
|
* Remote control mappings
|
||||||
*****************************************************************************/
|
*****************************************************************************/
|
||||||
|
|
||||||
|
|
||||||
static const struct button_mapping button_context_standard_h100remote[] = {
|
static const struct button_mapping button_context_standard_h100remote[] = {
|
||||||
{ ACTION_STD_PREV, BUTTON_RC_REW, BUTTON_NONE },
|
{ ACTION_STD_PREV, BUTTON_RC_REW, BUTTON_NONE },
|
||||||
{ ACTION_STD_PREVREPEAT, BUTTON_RC_REW|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_STD_PREVREPEAT, BUTTON_RC_REW|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
{ ACTION_STD_NEXT, BUTTON_RC_FF, BUTTON_NONE },
|
{ ACTION_STD_NEXT, BUTTON_RC_FF, BUTTON_NONE },
|
||||||
{ ACTION_STD_NEXTREPEAT, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_STD_NEXTREPEAT, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
|
|
||||||
{ ACTION_STD_CANCEL, BUTTON_RC_STOP, BUTTON_NONE },
|
{ ACTION_STD_CANCEL, BUTTON_RC_STOP, BUTTON_NONE },
|
||||||
{ ACTION_STD_CONTEXT, BUTTON_RC_MENU|BUTTON_REPEAT, BUTTON_RC_MENU },
|
{ ACTION_STD_CONTEXT, BUTTON_RC_MENU|BUTTON_REPEAT, BUTTON_RC_MENU },
|
||||||
|
|
||||||
|
@ -294,7 +294,7 @@ static const struct button_mapping button_context_standard_h100remote[] = {
|
||||||
{ ACTION_STD_MENU, BUTTON_RC_MODE|BUTTON_REL, BUTTON_RC_MODE },
|
{ ACTION_STD_MENU, BUTTON_RC_MODE|BUTTON_REL, BUTTON_RC_MODE },
|
||||||
{ ACTION_STD_OK, BUTTON_RC_ON, BUTTON_NONE },
|
{ ACTION_STD_OK, BUTTON_RC_ON, BUTTON_NONE },
|
||||||
{ ACTION_STD_OK, BUTTON_RC_MENU|BUTTON_REL, BUTTON_RC_MENU },
|
{ ACTION_STD_OK, BUTTON_RC_MENU|BUTTON_REL, BUTTON_RC_MENU },
|
||||||
|
|
||||||
LAST_ITEM_IN_LIST
|
LAST_ITEM_IN_LIST
|
||||||
}; /* button_context_standard_h100lcdremote */
|
}; /* button_context_standard_h100lcdremote */
|
||||||
|
|
||||||
|
@ -311,7 +311,7 @@ static const struct button_mapping button_context_standard_h300lcdremote[] = {
|
||||||
{ ACTION_STD_MENU, BUTTON_RC_MODE|BUTTON_REL, BUTTON_RC_MODE },
|
{ ACTION_STD_MENU, BUTTON_RC_MODE|BUTTON_REL, BUTTON_RC_MODE },
|
||||||
{ ACTION_STD_OK, BUTTON_RC_MENU|BUTTON_REL, BUTTON_RC_MENU },
|
{ ACTION_STD_OK, BUTTON_RC_MENU|BUTTON_REL, BUTTON_RC_MENU },
|
||||||
{ ACTION_STD_OK, BUTTON_RC_FF, BUTTON_NONE },
|
{ ACTION_STD_OK, BUTTON_RC_FF, BUTTON_NONE },
|
||||||
|
|
||||||
LAST_ITEM_IN_LIST
|
LAST_ITEM_IN_LIST
|
||||||
|
|
||||||
};
|
};
|
||||||
|
@ -336,11 +336,11 @@ static const struct button_mapping button_context_wps_remotescommon[] = {
|
||||||
{ ACTION_WPS_MENU, BUTTON_RC_MODE|BUTTON_REL, BUTTON_RC_MODE },
|
{ ACTION_WPS_MENU, BUTTON_RC_MODE|BUTTON_REL, BUTTON_RC_MODE },
|
||||||
{ ACTION_WPS_CONTEXT, BUTTON_RC_MENU|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_WPS_CONTEXT, BUTTON_RC_MENU|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
{ ACTION_WPS_BROWSE, BUTTON_RC_MENU|BUTTON_REL, BUTTON_RC_MENU },
|
{ ACTION_WPS_BROWSE, BUTTON_RC_MENU|BUTTON_REL, BUTTON_RC_MENU },
|
||||||
/* Now the specific combos, because H100 & H300 LCD remotes have different
|
/* Now the specific combos, because H100 & H300 LCD remotes have different
|
||||||
* keys, capable of acting as "modifier" - H100 : RC_ON; H300: RC_MENU
|
* keys, capable of acting as "modifier" - H100 : RC_ON; H300: RC_MENU
|
||||||
*/
|
*/
|
||||||
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_CUSTOM|CONTEXT_REMOTE|CONTEXT_WPS)
|
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_CUSTOM|CONTEXT_REMOTE|CONTEXT_WPS)
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
static const struct button_mapping button_context_wps_h100remote[] = {
|
static const struct button_mapping button_context_wps_h100remote[] = {
|
||||||
|
@ -367,7 +367,7 @@ static const struct button_mapping *button_context_list_h300lcdremote =
|
||||||
|
|
||||||
|
|
||||||
static const struct button_mapping button_context_tree_h100remote[] = {
|
static const struct button_mapping button_context_tree_h100remote[] = {
|
||||||
{ ACTION_TREE_WPS, BUTTON_RC_ON, BUTTON_NONE },
|
{ ACTION_TREE_WPS, BUTTON_RC_ON, BUTTON_NONE },
|
||||||
|
|
||||||
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_LIST|CONTEXT_REMOTE)
|
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_LIST|CONTEXT_REMOTE)
|
||||||
}; /* button_context_tree_h100remote */
|
}; /* button_context_tree_h100remote */
|
||||||
|
@ -377,7 +377,7 @@ static const struct button_mapping button_context_tree_h300lcdremote[] = {
|
||||||
{ ACTION_TREE_WPS, BUTTON_RC_ON, BUTTON_NONE },
|
{ ACTION_TREE_WPS, BUTTON_RC_ON, BUTTON_NONE },
|
||||||
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_LIST|CONTEXT_REMOTE)
|
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_LIST|CONTEXT_REMOTE)
|
||||||
}; /* button_context_tree_h300lcdremote */
|
}; /* button_context_tree_h300lcdremote */
|
||||||
|
|
||||||
|
|
||||||
static const struct button_mapping button_context_listtree_scroll_w_cmb_h100remote[] = {
|
static const struct button_mapping button_context_listtree_scroll_w_cmb_h100remote[] = {
|
||||||
{ ACTION_TREE_PGLEFT, BUTTON_RC_ON|BUTTON_RC_REW, BUTTON_NONE },
|
{ ACTION_TREE_PGLEFT, BUTTON_RC_ON|BUTTON_RC_REW, BUTTON_NONE },
|
||||||
|
@ -387,7 +387,7 @@ static const struct button_mapping button_context_listtree_scroll_w_cmb_h100remo
|
||||||
{ ACTION_TREE_PGRIGHT, BUTTON_RC_ON|BUTTON_RC_FF, BUTTON_NONE },
|
{ ACTION_TREE_PGRIGHT, BUTTON_RC_ON|BUTTON_RC_FF, BUTTON_NONE },
|
||||||
{ ACTION_TREE_PGRIGHT, BUTTON_RC_ON|BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_TREE_PGRIGHT, BUTTON_RC_ON|BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
{ ACTION_TREE_PGRIGHT, BUTTON_RC_VOL_UP, BUTTON_NONE },
|
{ ACTION_TREE_PGRIGHT, BUTTON_RC_VOL_UP, BUTTON_NONE },
|
||||||
{ ACTION_TREE_PGRIGHT, BUTTON_RC_VOL_UP|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_TREE_PGRIGHT, BUTTON_RC_VOL_UP|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_CUSTOM|CONTEXT_TREE|CONTEXT_REMOTE),
|
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_CUSTOM|CONTEXT_TREE|CONTEXT_REMOTE),
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -405,7 +405,7 @@ static const struct button_mapping button_context_listtree_scroll_wo_cmb_h100rem
|
||||||
{ ACTION_TREE_ROOT_INIT, BUTTON_RC_VOL_DOWN|BUTTON_REPEAT, BUTTON_RC_VOL_DOWN },
|
{ ACTION_TREE_ROOT_INIT, BUTTON_RC_VOL_DOWN|BUTTON_REPEAT, BUTTON_RC_VOL_DOWN },
|
||||||
{ ACTION_TREE_PGLEFT, BUTTON_RC_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_TREE_PGLEFT, BUTTON_RC_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
{ ACTION_TREE_PGRIGHT, BUTTON_RC_VOL_UP, BUTTON_NONE },
|
{ ACTION_TREE_PGRIGHT, BUTTON_RC_VOL_UP, BUTTON_NONE },
|
||||||
{ ACTION_TREE_PGRIGHT, BUTTON_RC_VOL_UP|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_TREE_PGRIGHT, BUTTON_RC_VOL_UP|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_CUSTOM|CONTEXT_TREE|CONTEXT_REMOTE),
|
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_CUSTOM|CONTEXT_TREE|CONTEXT_REMOTE),
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -428,7 +428,7 @@ static const struct button_mapping button_context_settings_h100remote[] = {
|
||||||
/* { ACTION_NONE, BUTTON_RC_ON, BUTTON_NONE },
|
/* { ACTION_NONE, BUTTON_RC_ON, BUTTON_NONE },
|
||||||
{ ACTION_NONE, BUTTON_RC_STOP, BUTTON_NONE },
|
{ ACTION_NONE, BUTTON_RC_STOP, BUTTON_NONE },
|
||||||
{ ACTION_NONE, BUTTON_RC_MENU|BUTTON_REL, BUTTON_NONE },
|
{ ACTION_NONE, BUTTON_RC_MENU|BUTTON_REL, BUTTON_NONE },
|
||||||
*/
|
*/
|
||||||
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
||||||
}; /* button_context_settings */
|
}; /* button_context_settings */
|
||||||
|
|
||||||
|
@ -439,11 +439,11 @@ static const struct button_mapping button_context_settings_h300lcdremote[] = {
|
||||||
{ ACTION_SETTINGS_DECREPEAT, BUTTON_RC_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_SETTINGS_DECREPEAT, BUTTON_RC_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
{ ACTION_NONE, BUTTON_RC_REW, BUTTON_NONE },
|
{ ACTION_NONE, BUTTON_RC_REW, BUTTON_NONE },
|
||||||
{ ACTION_NONE, BUTTON_RC_FF, BUTTON_NONE },
|
{ ACTION_NONE, BUTTON_RC_FF, BUTTON_NONE },
|
||||||
|
|
||||||
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
||||||
}; /* button_context_settings */
|
}; /* button_context_settings */
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
static const struct button_mapping button_context_settingsgraphical_h100remote[] = {
|
static const struct button_mapping button_context_settingsgraphical_h100remote[] = {
|
||||||
{ ACTION_SETTINGS_INC, BUTTON_RC_FF, BUTTON_NONE },
|
{ ACTION_SETTINGS_INC, BUTTON_RC_FF, BUTTON_NONE },
|
||||||
|
@ -454,7 +454,7 @@ static const struct button_mapping button_context_settingsgraphical_h100remote[]
|
||||||
{ ACTION_STD_PREVREPEAT, BUTTON_RC_SOURCE|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_STD_PREVREPEAT, BUTTON_RC_SOURCE|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
{ ACTION_STD_NEXT, BUTTON_RC_BITRATE, BUTTON_NONE },
|
{ ACTION_STD_NEXT, BUTTON_RC_BITRATE, BUTTON_NONE },
|
||||||
{ ACTION_STD_NEXTREPEAT, BUTTON_RC_BITRATE|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_STD_NEXTREPEAT, BUTTON_RC_BITRATE|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
|
|
||||||
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
||||||
}; /* button_context_settingsgraphical_h100remote */
|
}; /* button_context_settingsgraphical_h100remote */
|
||||||
|
|
||||||
|
@ -467,7 +467,7 @@ static const struct button_mapping button_context_settingsgraphical_h300lcdremot
|
||||||
{ ACTION_STD_PREVREPEAT, BUTTON_RC_VOL_UP|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_STD_PREVREPEAT, BUTTON_RC_VOL_UP|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
{ ACTION_STD_NEXT, BUTTON_RC_VOL_DOWN, BUTTON_NONE },
|
{ ACTION_STD_NEXT, BUTTON_RC_VOL_DOWN, BUTTON_NONE },
|
||||||
{ ACTION_STD_NEXTREPEAT, BUTTON_RC_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_STD_NEXTREPEAT, BUTTON_RC_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
|
|
||||||
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
||||||
}; /* button_context_settingsgraphical_h300remote */
|
}; /* button_context_settingsgraphical_h300remote */
|
||||||
|
|
||||||
|
@ -497,7 +497,7 @@ static const struct button_mapping button_context_quickscreen_nonlcdremote[] =
|
||||||
{ ACTION_QS_RIGHT, BUTTON_RC_FF, BUTTON_NONE },
|
{ ACTION_QS_RIGHT, BUTTON_RC_FF, BUTTON_NONE },
|
||||||
{ ACTION_QS_RIGHT, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_QS_RIGHT, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
{ ACTION_STD_CANCEL, BUTTON_RC_ON, BUTTON_NONE },
|
{ ACTION_STD_CANCEL, BUTTON_RC_ON, BUTTON_NONE },
|
||||||
|
|
||||||
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
||||||
}; /* button_context_quickscreen */
|
}; /* button_context_quickscreen */
|
||||||
|
|
||||||
|
@ -515,7 +515,7 @@ static const struct button_mapping button_context_quickscreen_h100lcdremote[] =
|
||||||
{ ACTION_QS_RIGHT, BUTTON_RC_BITRATE, BUTTON_NONE },
|
{ ACTION_QS_RIGHT, BUTTON_RC_BITRATE, BUTTON_NONE },
|
||||||
{ ACTION_QS_RIGHT, BUTTON_RC_BITRATE|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_QS_RIGHT, BUTTON_RC_BITRATE|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
{ ACTION_STD_CANCEL, BUTTON_RC_MODE, BUTTON_NONE },
|
{ ACTION_STD_CANCEL, BUTTON_RC_MODE, BUTTON_NONE },
|
||||||
|
|
||||||
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
||||||
}; /* button_context_quickscreen */
|
}; /* button_context_quickscreen */
|
||||||
|
|
||||||
|
@ -529,7 +529,7 @@ static const struct button_mapping button_context_quickscreen_h300lcdremote[] =
|
||||||
{ ACTION_QS_RIGHT, BUTTON_RC_FF, BUTTON_NONE },
|
{ ACTION_QS_RIGHT, BUTTON_RC_FF, BUTTON_NONE },
|
||||||
{ ACTION_QS_RIGHT, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_QS_RIGHT, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
{ ACTION_STD_CANCEL, BUTTON_RC_MODE, BUTTON_NONE },
|
{ ACTION_STD_CANCEL, BUTTON_RC_MODE, BUTTON_NONE },
|
||||||
|
|
||||||
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
||||||
}; /* button_context_quickscreen */
|
}; /* button_context_quickscreen */
|
||||||
|
|
||||||
|
@ -547,7 +547,7 @@ static const struct button_mapping button_context_pitchscreen_nonlcdremote[] =
|
||||||
{ ACTION_PS_EXIT, BUTTON_RC_STOP, BUTTON_NONE },
|
{ ACTION_PS_EXIT, BUTTON_RC_STOP, BUTTON_NONE },
|
||||||
{ ACTION_PS_SLOWER, BUTTON_RC_REW|BUTTON_REPEAT,BUTTON_NONE },
|
{ ACTION_PS_SLOWER, BUTTON_RC_REW|BUTTON_REPEAT,BUTTON_NONE },
|
||||||
{ ACTION_PS_FASTER, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_PS_FASTER, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
|
|
||||||
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
||||||
}; /* button_context_pitchcreen */
|
}; /* button_context_pitchcreen */
|
||||||
|
|
||||||
|
@ -565,7 +565,7 @@ static const struct button_mapping button_context_pitchscreen_h100lcdremote[] =
|
||||||
{ ACTION_PS_EXIT, BUTTON_RC_STOP, BUTTON_NONE },
|
{ ACTION_PS_EXIT, BUTTON_RC_STOP, BUTTON_NONE },
|
||||||
{ ACTION_PS_SLOWER, BUTTON_RC_SOURCE|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_PS_SLOWER, BUTTON_RC_SOURCE|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
{ ACTION_PS_FASTER, BUTTON_RC_BITRATE|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_PS_FASTER, BUTTON_RC_BITRATE|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
|
|
||||||
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -583,7 +583,7 @@ static const struct button_mapping button_context_pitchscreen_h300lcdremote[] =
|
||||||
{ ACTION_PS_EXIT, BUTTON_RC_STOP, BUTTON_NONE },
|
{ ACTION_PS_EXIT, BUTTON_RC_STOP, BUTTON_NONE },
|
||||||
{ ACTION_PS_SLOWER, BUTTON_RC_REW|BUTTON_REPEAT,BUTTON_NONE },
|
{ ACTION_PS_SLOWER, BUTTON_RC_REW|BUTTON_REPEAT,BUTTON_NONE },
|
||||||
{ ACTION_PS_FASTER, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_PS_FASTER, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
|
|
||||||
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -595,7 +595,7 @@ static const struct button_mapping button_context_recscreen_h100remote[] = {
|
||||||
{ ACTION_SETTINGS_INCREPEAT, BUTTON_RC_BITRATE|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_SETTINGS_INCREPEAT, BUTTON_RC_BITRATE|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
{ ACTION_SETTINGS_DEC, BUTTON_RC_SOURCE, BUTTON_NONE },
|
{ ACTION_SETTINGS_DEC, BUTTON_RC_SOURCE, BUTTON_NONE },
|
||||||
{ ACTION_SETTINGS_DECREPEAT, BUTTON_RC_SOURCE|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_SETTINGS_DECREPEAT, BUTTON_RC_SOURCE|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
|
|
||||||
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
||||||
}; /* button_context_recscreen_h100remote */
|
}; /* button_context_recscreen_h100remote */
|
||||||
|
|
||||||
|
@ -607,13 +607,13 @@ static const struct button_mapping button_context_recscreen_h300lcdremote[] = {
|
||||||
{ ACTION_SETTINGS_INC, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_SETTINGS_INC, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
{ ACTION_SETTINGS_DEC, BUTTON_RC_REW, BUTTON_NONE },
|
{ ACTION_SETTINGS_DEC, BUTTON_RC_REW, BUTTON_NONE },
|
||||||
{ ACTION_SETTINGS_DEC, BUTTON_RC_REW|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_SETTINGS_DEC, BUTTON_RC_REW|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
|
|
||||||
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
|
||||||
}; /* button_context_recscreen_h300lcdremote */
|
}; /* button_context_recscreen_h300lcdremote */
|
||||||
|
|
||||||
static const struct button_mapping button_context_keyboard_h100remote[] = {
|
static const struct button_mapping button_context_keyboard_h100remote[] = {
|
||||||
{ ACTION_KBD_LEFT, BUTTON_RC_REW, BUTTON_NONE },
|
{ ACTION_KBD_LEFT, BUTTON_RC_REW, BUTTON_NONE },
|
||||||
{ ACTION_KBD_LEFT, BUTTON_RC_REW|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_KBD_LEFT, BUTTON_RC_REW|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
{ ACTION_KBD_RIGHT, BUTTON_RC_FF, BUTTON_NONE },
|
{ ACTION_KBD_RIGHT, BUTTON_RC_FF, BUTTON_NONE },
|
||||||
{ ACTION_KBD_RIGHT, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_KBD_RIGHT, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
{ ACTION_KBD_CURSOR_LEFT, BUTTON_RC_ON|BUTTON_RC_REW, BUTTON_NONE },
|
{ ACTION_KBD_CURSOR_LEFT, BUTTON_RC_ON|BUTTON_RC_REW, BUTTON_NONE },
|
||||||
|
@ -642,7 +642,7 @@ static const struct button_mapping button_context_keyboard_h100remote[] = {
|
||||||
|
|
||||||
static const struct button_mapping button_context_keyboard_h300lcdremote[] = {
|
static const struct button_mapping button_context_keyboard_h300lcdremote[] = {
|
||||||
{ ACTION_KBD_LEFT, BUTTON_RC_REW, BUTTON_NONE },
|
{ ACTION_KBD_LEFT, BUTTON_RC_REW, BUTTON_NONE },
|
||||||
{ ACTION_KBD_LEFT, BUTTON_RC_REW|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_KBD_LEFT, BUTTON_RC_REW|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
{ ACTION_KBD_RIGHT, BUTTON_RC_FF, BUTTON_NONE },
|
{ ACTION_KBD_RIGHT, BUTTON_RC_FF, BUTTON_NONE },
|
||||||
{ ACTION_KBD_RIGHT, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_NONE },
|
{ ACTION_KBD_RIGHT, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_NONE },
|
||||||
{ ACTION_KBD_CURSOR_LEFT, BUTTON_RC_SOURCE, BUTTON_NONE },
|
{ ACTION_KBD_CURSOR_LEFT, BUTTON_RC_SOURCE, BUTTON_NONE },
|
||||||
|
@ -703,7 +703,6 @@ static const struct button_mapping button_context_radio_h300lcdremote[] = {
|
||||||
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_SETTINGS)
|
LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_SETTINGS)
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
static const struct button_mapping button_context_time_remote[] = {
|
static const struct button_mapping button_context_time_remote[] = {
|
||||||
{ ACTION_STD_CANCEL, BUTTON_OFF, BUTTON_NONE },
|
{ ACTION_STD_CANCEL, BUTTON_OFF, BUTTON_NONE },
|
||||||
{ ACTION_STD_OK, BUTTON_ON, BUTTON_NONE },
|
{ ACTION_STD_OK, BUTTON_ON, BUTTON_NONE },
|
||||||
|
@ -713,8 +712,8 @@ static const struct button_mapping button_context_time_remote[] = {
|
||||||
}; /* button_context_settings_bmark */
|
}; /* button_context_settings_bmark */
|
||||||
|
|
||||||
/* the actual used tables */
|
/* the actual used tables */
|
||||||
static const struct button_mapping
|
static const struct button_mapping
|
||||||
*remote_btn_ctxt_std = 0,
|
*remote_btn_ctxt_std = 0,
|
||||||
*remote_btn_ctxt_wps = 0,
|
*remote_btn_ctxt_wps = 0,
|
||||||
*remote_btn_ctxt_list = 0,
|
*remote_btn_ctxt_list = 0,
|
||||||
*remote_btn_ctxt_tree = 0,
|
*remote_btn_ctxt_tree = 0,
|
||||||
|
@ -738,7 +737,7 @@ static void remap_remote(void)
|
||||||
switch(_remote_type)
|
switch(_remote_type)
|
||||||
{
|
{
|
||||||
case REMOTETYPE_UNPLUGGED:
|
case REMOTETYPE_UNPLUGGED:
|
||||||
remote_btn_ctxt_std = NULL;
|
remote_btn_ctxt_std = NULL;
|
||||||
remote_btn_ctxt_wps = NULL;
|
remote_btn_ctxt_wps = NULL;
|
||||||
remote_btn_ctxt_list = NULL;
|
remote_btn_ctxt_list = NULL;
|
||||||
remote_btn_ctxt_tree = NULL;
|
remote_btn_ctxt_tree = NULL;
|
||||||
|
@ -756,16 +755,16 @@ static void remap_remote(void)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case REMOTETYPE_H100_LCD:
|
case REMOTETYPE_H100_LCD:
|
||||||
remote_btn_ctxt_std = button_context_standard_h100remote,
|
remote_btn_ctxt_std = button_context_standard_h100remote,
|
||||||
remote_btn_ctxt_wps = button_context_wps_h100remote,
|
remote_btn_ctxt_wps = button_context_wps_h100remote,
|
||||||
remote_btn_ctxt_list = button_context_list_h100remote,
|
remote_btn_ctxt_list = button_context_list_h100remote,
|
||||||
remote_btn_ctxt_tree = button_context_tree_h100remote,
|
remote_btn_ctxt_tree = button_context_tree_h100remote,
|
||||||
remote_btn_ctxt_listtree_scroll_w_cmb
|
remote_btn_ctxt_listtree_scroll_w_cmb
|
||||||
= button_context_listtree_scroll_w_cmb_h100remote,
|
= button_context_listtree_scroll_w_cmb_h100remote,
|
||||||
remote_btn_ctxt_listtree_scroll_wo_cmb
|
remote_btn_ctxt_listtree_scroll_wo_cmb
|
||||||
= button_context_listtree_scroll_wo_cmb_h100remote,
|
= button_context_listtree_scroll_wo_cmb_h100remote,
|
||||||
remote_btn_ctxt_settings = button_context_settings_h100remote,
|
remote_btn_ctxt_settings = button_context_settings_h100remote,
|
||||||
remote_btn_ctxt_settingsgrph
|
remote_btn_ctxt_settingsgrph
|
||||||
= button_context_settingsgraphical_h100remote,
|
= button_context_settingsgraphical_h100remote,
|
||||||
remote_btn_ctxt_yesno = button_context_yesno_h100remote,
|
remote_btn_ctxt_yesno = button_context_yesno_h100remote,
|
||||||
remote_btn_ctxt_bmark = button_context_bmark_h100remote,
|
remote_btn_ctxt_bmark = button_context_bmark_h100remote,
|
||||||
|
@ -773,25 +772,25 @@ static void remap_remote(void)
|
||||||
= button_context_quickscreen_h100lcdremote,
|
= button_context_quickscreen_h100lcdremote,
|
||||||
remote_btn_ctxt_pitchscreen
|
remote_btn_ctxt_pitchscreen
|
||||||
= button_context_pitchscreen_h100lcdremote,
|
= button_context_pitchscreen_h100lcdremote,
|
||||||
remote_btn_ctxt_recscreen
|
remote_btn_ctxt_recscreen
|
||||||
= button_context_recscreen_h100remote,
|
= button_context_recscreen_h100remote,
|
||||||
remote_btn_ctxt_keyboard
|
remote_btn_ctxt_keyboard
|
||||||
= button_context_keyboard_h100remote,
|
= button_context_keyboard_h100remote,
|
||||||
remote_btn_ctxt_radio
|
remote_btn_ctxt_radio
|
||||||
= button_context_radio_h100remote;
|
= button_context_radio_h100remote;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case REMOTETYPE_H300_LCD:
|
case REMOTETYPE_H300_LCD:
|
||||||
remote_btn_ctxt_std = button_context_standard_h300lcdremote,
|
remote_btn_ctxt_std = button_context_standard_h300lcdremote,
|
||||||
remote_btn_ctxt_wps = button_context_wps_h300lcdremote,
|
remote_btn_ctxt_wps = button_context_wps_h300lcdremote,
|
||||||
remote_btn_ctxt_list = button_context_list_h300lcdremote,
|
remote_btn_ctxt_list = button_context_list_h300lcdremote,
|
||||||
remote_btn_ctxt_tree = button_context_tree_h300lcdremote,
|
remote_btn_ctxt_tree = button_context_tree_h300lcdremote,
|
||||||
remote_btn_ctxt_listtree_scroll_w_cmb
|
remote_btn_ctxt_listtree_scroll_w_cmb
|
||||||
= button_context_listtree_scroll_w_cmb_h300lcdremote,
|
= button_context_listtree_scroll_w_cmb_h300lcdremote,
|
||||||
remote_btn_ctxt_listtree_scroll_wo_cmb
|
remote_btn_ctxt_listtree_scroll_wo_cmb
|
||||||
= button_context_listtree_scroll_wo_cmb_h300lcdremote,
|
= button_context_listtree_scroll_wo_cmb_h300lcdremote,
|
||||||
remote_btn_ctxt_settings = button_context_settings_h300lcdremote,
|
remote_btn_ctxt_settings = button_context_settings_h300lcdremote,
|
||||||
remote_btn_ctxt_settingsgrph
|
remote_btn_ctxt_settingsgrph
|
||||||
= button_context_settingsgraphical_h300lcdremote,
|
= button_context_settingsgraphical_h300lcdremote,
|
||||||
remote_btn_ctxt_yesno = button_context_yesno_h300lcdremote,
|
remote_btn_ctxt_yesno = button_context_yesno_h300lcdremote,
|
||||||
remote_btn_ctxt_bmark = button_context_bmark_h300lcdremote,
|
remote_btn_ctxt_bmark = button_context_bmark_h300lcdremote,
|
||||||
|
@ -801,23 +800,23 @@ static void remap_remote(void)
|
||||||
= button_context_pitchscreen_h300lcdremote,
|
= button_context_pitchscreen_h300lcdremote,
|
||||||
remote_btn_ctxt_recscreen
|
remote_btn_ctxt_recscreen
|
||||||
= button_context_recscreen_h300lcdremote,
|
= button_context_recscreen_h300lcdremote,
|
||||||
remote_btn_ctxt_keyboard
|
remote_btn_ctxt_keyboard
|
||||||
= button_context_keyboard_h300lcdremote,
|
= button_context_keyboard_h300lcdremote,
|
||||||
remote_btn_ctxt_radio
|
remote_btn_ctxt_radio
|
||||||
= button_context_radio_h300lcdremote;
|
= button_context_radio_h300lcdremote;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case REMOTETYPE_H300_NONLCD: /* FIXME: add its tables */
|
case REMOTETYPE_H300_NONLCD: /* FIXME: add its tables */
|
||||||
remote_btn_ctxt_std = button_context_standard_h300lcdremote,
|
remote_btn_ctxt_std = button_context_standard_h300lcdremote,
|
||||||
remote_btn_ctxt_wps = button_context_wps_h300lcdremote,
|
remote_btn_ctxt_wps = button_context_wps_h300lcdremote,
|
||||||
remote_btn_ctxt_list = button_context_list_h300lcdremote,
|
remote_btn_ctxt_list = button_context_list_h300lcdremote,
|
||||||
remote_btn_ctxt_tree = button_context_tree_h300lcdremote,
|
remote_btn_ctxt_tree = button_context_tree_h300lcdremote,
|
||||||
remote_btn_ctxt_listtree_scroll_w_cmb
|
remote_btn_ctxt_listtree_scroll_w_cmb
|
||||||
= button_context_listtree_scroll_w_cmb_h300lcdremote,
|
= button_context_listtree_scroll_w_cmb_h300lcdremote,
|
||||||
remote_btn_ctxt_listtree_scroll_wo_cmb
|
remote_btn_ctxt_listtree_scroll_wo_cmb
|
||||||
= button_context_listtree_scroll_wo_cmb_h300lcdremote,
|
= button_context_listtree_scroll_wo_cmb_h300lcdremote,
|
||||||
remote_btn_ctxt_settings = button_context_settings_h300lcdremote,
|
remote_btn_ctxt_settings = button_context_settings_h300lcdremote,
|
||||||
remote_btn_ctxt_settingsgrph
|
remote_btn_ctxt_settingsgrph
|
||||||
= button_context_settingsgraphical_h300lcdremote,
|
= button_context_settingsgraphical_h300lcdremote,
|
||||||
remote_btn_ctxt_yesno = button_context_yesno_h300lcdremote,
|
remote_btn_ctxt_yesno = button_context_yesno_h300lcdremote,
|
||||||
remote_btn_ctxt_bmark = button_context_bmark_h300lcdremote,
|
remote_btn_ctxt_bmark = button_context_bmark_h300lcdremote,
|
||||||
|
@ -827,26 +826,26 @@ static void remap_remote(void)
|
||||||
= button_context_pitchscreen_nonlcdremote,
|
= button_context_pitchscreen_nonlcdremote,
|
||||||
remote_btn_ctxt_recscreen
|
remote_btn_ctxt_recscreen
|
||||||
= button_context_recscreen_h300lcdremote,
|
= button_context_recscreen_h300lcdremote,
|
||||||
remote_btn_ctxt_keyboard
|
remote_btn_ctxt_keyboard
|
||||||
= button_context_keyboard_h300lcdremote,
|
= button_context_keyboard_h300lcdremote,
|
||||||
remote_btn_ctxt_radio
|
remote_btn_ctxt_radio
|
||||||
= button_context_radio_h300lcdremote;
|
= button_context_radio_h300lcdremote;
|
||||||
#if 0
|
#if 0
|
||||||
remote_btn_ctxt_std =
|
remote_btn_ctxt_std =
|
||||||
remote_btn_ctxt_wps =
|
remote_btn_ctxt_wps =
|
||||||
remote_btn_ctxt_list =
|
remote_btn_ctxt_list =
|
||||||
remote_btn_ctxt_tree =
|
remote_btn_ctxt_tree =
|
||||||
remote_btn_ctxt_listtree_scroll_w_cmb =
|
remote_btn_ctxt_listtree_scroll_w_cmb =
|
||||||
remote_btn_ctxt_listtree_scroll_wo_cmb =
|
remote_btn_ctxt_listtree_scroll_wo_cmb =
|
||||||
remote_btn_ctxt_settings =
|
remote_btn_ctxt_settings =
|
||||||
remote_btn_ctxt_settingsgrph =
|
remote_btn_ctxt_settingsgrph =
|
||||||
remote_btn_ctxt_yesno =
|
remote_btn_ctxt_yesno =
|
||||||
remote_btn_ctxt_bmark =
|
remote_btn_ctxt_bmark =
|
||||||
remote_btn_ctxt_quickscreen =
|
remote_btn_ctxt_quickscreen =
|
||||||
remote_btn_ctxt_pitchscreen =
|
remote_btn_ctxt_pitchscreen =
|
||||||
remote_btn_ctxt_recscreen =
|
remote_btn_ctxt_recscreen =
|
||||||
remote_btn_ctxt_keyboard =
|
remote_btn_ctxt_keyboard =
|
||||||
remote_btn_ctxt_radio =
|
remote_btn_ctxt_radio =
|
||||||
#endif
|
#endif
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@ -859,7 +858,7 @@ static const struct button_mapping* get_context_mapping_remote(int context)
|
||||||
if(remote_type() != _remote_type)
|
if(remote_type() != _remote_type)
|
||||||
remap_remote();
|
remap_remote();
|
||||||
context ^= CONTEXT_REMOTE;
|
context ^= CONTEXT_REMOTE;
|
||||||
|
|
||||||
switch (context)
|
switch (context)
|
||||||
{
|
{
|
||||||
case CONTEXT_STD:
|
case CONTEXT_STD:
|
||||||
|
@ -868,7 +867,7 @@ static const struct button_mapping* get_context_mapping_remote(int context)
|
||||||
return button_context_wps_remotescommon;
|
return button_context_wps_remotescommon;
|
||||||
|
|
||||||
case CONTEXT_CUSTOM|CONTEXT_WPS:
|
case CONTEXT_CUSTOM|CONTEXT_WPS:
|
||||||
return remote_btn_ctxt_wps;
|
return remote_btn_ctxt_wps;
|
||||||
|
|
||||||
case CONTEXT_LIST:
|
case CONTEXT_LIST:
|
||||||
return remote_btn_ctxt_list;
|
return remote_btn_ctxt_list;
|
||||||
|
@ -876,22 +875,23 @@ static const struct button_mapping* get_context_mapping_remote(int context)
|
||||||
case CONTEXT_MAINMENU:
|
case CONTEXT_MAINMENU:
|
||||||
if (global_settings.hold_lr_for_scroll_in_list)
|
if (global_settings.hold_lr_for_scroll_in_list)
|
||||||
return remote_btn_ctxt_listtree_scroll_wo_cmb;
|
return remote_btn_ctxt_listtree_scroll_wo_cmb;
|
||||||
else
|
else
|
||||||
return remote_btn_ctxt_listtree_scroll_w_cmb;
|
return remote_btn_ctxt_listtree_scroll_w_cmb;
|
||||||
case CONTEXT_CUSTOM|CONTEXT_TREE:
|
case CONTEXT_CUSTOM|CONTEXT_TREE:
|
||||||
return remote_btn_ctxt_tree;
|
return remote_btn_ctxt_tree;
|
||||||
case CONTEXT_SETTINGS_TIME:
|
case CONTEXT_SETTINGS_TIME:
|
||||||
|
return button_context_time_remote;
|
||||||
case CONTEXT_SETTINGS_RECTRIGGER:
|
case CONTEXT_SETTINGS_RECTRIGGER:
|
||||||
return remote_btn_ctxt_settingsgrph;
|
return remote_btn_ctxt_settingsgrph;
|
||||||
|
|
||||||
case CONTEXT_SETTINGS:
|
case CONTEXT_SETTINGS:
|
||||||
return remote_btn_ctxt_settings;
|
return remote_btn_ctxt_settings;
|
||||||
|
|
||||||
case CONTEXT_YESNOSCREEN:
|
case CONTEXT_YESNOSCREEN:
|
||||||
return remote_btn_ctxt_yesno;
|
return remote_btn_ctxt_yesno;
|
||||||
|
|
||||||
case CONTEXT_BOOKMARKSCREEN:
|
case CONTEXT_BOOKMARKSCREEN:
|
||||||
return remote_btn_ctxt_bmark;
|
return remote_btn_ctxt_bmark;
|
||||||
case CONTEXT_QUICKSCREEN:
|
case CONTEXT_QUICKSCREEN:
|
||||||
return remote_btn_ctxt_quickscreen;
|
return remote_btn_ctxt_quickscreen;
|
||||||
case CONTEXT_PITCHSCREEN:
|
case CONTEXT_PITCHSCREEN:
|
||||||
|
@ -903,49 +903,49 @@ static const struct button_mapping* get_context_mapping_remote(int context)
|
||||||
return remote_btn_ctxt_keyboard;
|
return remote_btn_ctxt_keyboard;
|
||||||
case CONTEXT_FM:
|
case CONTEXT_FM:
|
||||||
return remote_btn_ctxt_radio;
|
return remote_btn_ctxt_radio;
|
||||||
}
|
}
|
||||||
return remote_btn_ctxt_std;
|
return remote_btn_ctxt_std;
|
||||||
}
|
}
|
||||||
|
|
||||||
const struct button_mapping* get_context_mapping(int context)
|
const struct button_mapping* get_context_mapping(int context)
|
||||||
{
|
{
|
||||||
if (context&CONTEXT_REMOTE)
|
if (context&CONTEXT_REMOTE)
|
||||||
return get_context_mapping_remote(context);
|
return get_context_mapping_remote(context);
|
||||||
|
|
||||||
switch (context)
|
switch (context)
|
||||||
{
|
{
|
||||||
case CONTEXT_STD:
|
case CONTEXT_STD:
|
||||||
return button_context_standard;
|
return button_context_standard;
|
||||||
case CONTEXT_WPS:
|
case CONTEXT_WPS:
|
||||||
return button_context_wps;
|
return button_context_wps;
|
||||||
|
|
||||||
case CONTEXT_LIST:
|
case CONTEXT_LIST:
|
||||||
return button_context_list;
|
return button_context_list;
|
||||||
case CONTEXT_TREE:
|
case CONTEXT_TREE:
|
||||||
case CONTEXT_MAINMENU:
|
case CONTEXT_MAINMENU:
|
||||||
if (global_settings.hold_lr_for_scroll_in_list)
|
if (global_settings.hold_lr_for_scroll_in_list)
|
||||||
return button_context_listtree_scroll_without_combo;
|
return button_context_listtree_scroll_without_combo;
|
||||||
else
|
else
|
||||||
return button_context_listtree_scroll_with_combo;
|
return button_context_listtree_scroll_with_combo;
|
||||||
case CONTEXT_CUSTOM|CONTEXT_TREE:
|
case CONTEXT_CUSTOM|CONTEXT_TREE:
|
||||||
return button_context_tree;
|
return button_context_tree;
|
||||||
|
|
||||||
case CONTEXT_SETTINGS:
|
case CONTEXT_SETTINGS:
|
||||||
return button_context_settings;
|
return button_context_settings;
|
||||||
case CONTEXT_CUSTOM|CONTEXT_SETTINGS:
|
case CONTEXT_CUSTOM|CONTEXT_SETTINGS:
|
||||||
case CONTEXT_SETTINGS_RECTRIGGER:
|
case CONTEXT_SETTINGS_RECTRIGGER:
|
||||||
return button_context_settings_right_is_inc;
|
return button_context_settings_right_is_inc;
|
||||||
|
|
||||||
case CONTEXT_SETTINGS_COLOURCHOOSER:
|
case CONTEXT_SETTINGS_COLOURCHOOSER:
|
||||||
return button_context_colorchooser;
|
return button_context_colorchooser;
|
||||||
case CONTEXT_SETTINGS_EQ:
|
case CONTEXT_SETTINGS_EQ:
|
||||||
return button_context_eq;
|
return button_context_eq;
|
||||||
|
|
||||||
case CONTEXT_SETTINGS_TIME:
|
case CONTEXT_SETTINGS_TIME:
|
||||||
return button_context_time;
|
return button_context_time;
|
||||||
|
|
||||||
case CONTEXT_YESNOSCREEN:
|
case CONTEXT_YESNOSCREEN:
|
||||||
return button_context_yesno;
|
return button_context_yesno;
|
||||||
case CONTEXT_BOOKMARKSCREEN:
|
case CONTEXT_BOOKMARKSCREEN:
|
||||||
return button_context_bmark;
|
return button_context_bmark;
|
||||||
case CONTEXT_QUICKSCREEN:
|
case CONTEXT_QUICKSCREEN:
|
||||||
|
@ -959,6 +959,6 @@ const struct button_mapping* get_context_mapping(int context)
|
||||||
return button_context_keyboard;
|
return button_context_keyboard;
|
||||||
case CONTEXT_FM:
|
case CONTEXT_FM:
|
||||||
return button_context_radio;
|
return button_context_radio;
|
||||||
}
|
}
|
||||||
return button_context_standard;
|
return button_context_standard;
|
||||||
}
|
}
|
||||||
|
|
|
@ -134,7 +134,9 @@ static int hist_l = 0;
|
||||||
static int hist_r = 0;
|
static int hist_r = 0;
|
||||||
static unsigned char history_l[HIST_BUF_SIZE];
|
static unsigned char history_l[HIST_BUF_SIZE];
|
||||||
static unsigned char history_r[HIST_BUF_SIZE];
|
static unsigned char history_r[HIST_BUF_SIZE];
|
||||||
|
#ifdef HAVE_LCD_COLOR
|
||||||
static const char hist_level_marks[6] = { 29, 26, 23, 17, 9, 2};
|
static const char hist_level_marks[6] = { 29, 26, 23, 17, 9, 2};
|
||||||
|
#endif
|
||||||
static int history_pos = 0;
|
static int history_pos = 0;
|
||||||
#define HIST_W (LCD_WIDTH / 2)
|
#define HIST_W (LCD_WIDTH / 2)
|
||||||
#if LCD_DEPTH > 1
|
#if LCD_DEPTH > 1
|
||||||
|
@ -184,7 +186,7 @@ static int db_scale_count = DB_SCALE_SRC_VALUES_SIZE;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Calculates dB Value for the peak meter, uses peak value as input
|
* Calculates dB Value for the peak meter, uses peak value as input
|
||||||
* @param int sample - The input value
|
* @param int sample - The input value
|
||||||
* Make sure that 0 <= value < SAMPLE_RANGE
|
* Make sure that 0 <= value < SAMPLE_RANGE
|
||||||
*
|
*
|
||||||
* @return int - The 2 digit fixed point result of the euation
|
* @return int - The 2 digit fixed point result of the euation
|
||||||
|
@ -294,10 +296,10 @@ static int db_to_sample_bin_search(int min, int max, int db)
|
||||||
* Converts a value representing dBfs to a linear
|
* Converts a value representing dBfs to a linear
|
||||||
* scaled volume info as it is used by the MAS.
|
* scaled volume info as it is used by the MAS.
|
||||||
* An incredibly inefficiant function which is
|
* An incredibly inefficiant function which is
|
||||||
* the vague inverse of calc_db. This really
|
* the vague inverse of calc_db. This really
|
||||||
* should be replaced by something better soon.
|
* should be replaced by something better soon.
|
||||||
*
|
*
|
||||||
* @param int db - A dBfs * 100 value with
|
* @param int db - A dBfs * 100 value with
|
||||||
* -9000 < value <= 0
|
* -9000 < value <= 0
|
||||||
* @return int - The return value is in the range of
|
* @return int - The return value is in the range of
|
||||||
* 0 <= return value < MAX_PEAK
|
* 0 <= return value < MAX_PEAK
|
||||||
|
@ -323,10 +325,10 @@ int peak_meter_db2sample(int db)
|
||||||
else {
|
else {
|
||||||
retval = db_to_sample_bin_search(0, MAX_PEAK, max_peak_db + db);
|
retval = db_to_sample_bin_search(0, MAX_PEAK, max_peak_db + db);
|
||||||
|
|
||||||
/* as this is a dirty function anyway, we want to adjust the
|
/* as this is a dirty function anyway, we want to adjust the
|
||||||
full scale hit manually to avoid users complaining that when
|
full scale hit manually to avoid users complaining that when
|
||||||
they adjust maximum for 0 dBfs and display it in percent it
|
they adjust maximum for 0 dBfs and display it in percent it
|
||||||
shows 99%. That is due to precision loss and this is the
|
shows 99%. That is due to precision loss and this is the
|
||||||
optical fix */
|
optical fix */
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -340,7 +342,7 @@ int peak_meter_db2sample(int db)
|
||||||
* for dBfs: -9000 < newmin <= 0
|
* for dBfs: -9000 < newmin <= 0
|
||||||
* for linear: 0 <= newmin <= 100
|
* for linear: 0 <= newmin <= 100
|
||||||
*/
|
*/
|
||||||
static void peak_meter_set_min(int newmin)
|
static void peak_meter_set_min(int newmin)
|
||||||
{
|
{
|
||||||
if (pm_use_dbfs) {
|
if (pm_use_dbfs) {
|
||||||
peak_meter_range_min = peak_meter_db2sample(newmin);
|
peak_meter_range_min = peak_meter_db2sample(newmin);
|
||||||
|
@ -366,13 +368,13 @@ static void peak_meter_set_min(int newmin)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the minimum value of the range the meter
|
* Returns the minimum value of the range the meter
|
||||||
* displays. If the scale is set to dBfs it returns
|
* displays. If the scale is set to dBfs it returns
|
||||||
* dBfs values * 100 or linear percent values.
|
* dBfs values * 100 or linear percent values.
|
||||||
* @return: using dBfs : -9000 < value <= 0
|
* @return: using dBfs : -9000 < value <= 0
|
||||||
* using linear scale: 0 <= value <= 100
|
* using linear scale: 0 <= value <= 100
|
||||||
*/
|
*/
|
||||||
int peak_meter_get_min(void)
|
int peak_meter_get_min(void)
|
||||||
{
|
{
|
||||||
int retval = 0;
|
int retval = 0;
|
||||||
if (pm_use_dbfs) {
|
if (pm_use_dbfs) {
|
||||||
|
@ -390,7 +392,7 @@ int peak_meter_get_min(void)
|
||||||
* for dBfs: -9000 < newmax <= 0
|
* for dBfs: -9000 < newmax <= 0
|
||||||
* for linear: 0 <= newmax <= 100
|
* for linear: 0 <= newmax <= 100
|
||||||
*/
|
*/
|
||||||
static void peak_meter_set_max(int newmax)
|
static void peak_meter_set_max(int newmax)
|
||||||
{
|
{
|
||||||
if (pm_use_dbfs) {
|
if (pm_use_dbfs) {
|
||||||
peak_meter_range_max = peak_meter_db2sample(newmax);
|
peak_meter_range_max = peak_meter_db2sample(newmax);
|
||||||
|
@ -415,13 +417,13 @@ static void peak_meter_set_max(int newmax)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the minimum value of the range the meter
|
* Returns the minimum value of the range the meter
|
||||||
* displays. If the scale is set to dBfs it returns
|
* displays. If the scale is set to dBfs it returns
|
||||||
* dBfs values * 100 or linear percent values
|
* dBfs values * 100 or linear percent values
|
||||||
* @return: using dBfs : -9000 < value <= 0
|
* @return: using dBfs : -9000 < value <= 0
|
||||||
* using linear scale: 0 <= value <= 100
|
* using linear scale: 0 <= value <= 100
|
||||||
*/
|
*/
|
||||||
int peak_meter_get_max(void)
|
int peak_meter_get_max(void)
|
||||||
{
|
{
|
||||||
int retval = 0;
|
int retval = 0;
|
||||||
if (pm_use_dbfs) {
|
if (pm_use_dbfs) {
|
||||||
|
@ -445,7 +447,7 @@ bool peak_meter_get_use_dbfs(void)
|
||||||
/**
|
/**
|
||||||
* Specifies whether the values displayed are scaled
|
* Specifies whether the values displayed are scaled
|
||||||
* as dBfs or as linear percent values.
|
* as dBfs or as linear percent values.
|
||||||
* @param use - set to true for dBfs,
|
* @param use - set to true for dBfs,
|
||||||
* set to false for linear scaling in percent
|
* set to false for linear scaling in percent
|
||||||
*/
|
*/
|
||||||
void peak_meter_set_use_dbfs(bool use)
|
void peak_meter_set_use_dbfs(bool use)
|
||||||
|
@ -459,12 +461,12 @@ void peak_meter_set_use_dbfs(bool use)
|
||||||
* Initialize the range of the meter. Only values
|
* Initialize the range of the meter. Only values
|
||||||
* that are in the range of [range_min ... range_max]
|
* that are in the range of [range_min ... range_max]
|
||||||
* are displayed.
|
* are displayed.
|
||||||
* @param bool dbfs - set to true for dBfs,
|
* @param bool dbfs - set to true for dBfs,
|
||||||
* set to false for linear scaling in percent
|
* set to false for linear scaling in percent
|
||||||
* @param int range_min - Specifies the lower value of the range.
|
* @param int range_min - Specifies the lower value of the range.
|
||||||
* Pass a value dBfs * 100 when dbfs is set to true.
|
* Pass a value dBfs * 100 when dbfs is set to true.
|
||||||
* Pass a percent value when dbfs is set to false.
|
* Pass a percent value when dbfs is set to false.
|
||||||
* @param int range_max - Specifies the upper value of the range.
|
* @param int range_max - Specifies the upper value of the range.
|
||||||
* Pass a value dBfs * 100 when dbfs is set to true.
|
* Pass a value dBfs * 100 when dbfs is set to true.
|
||||||
* Pass a percent value when dbfs is set to false.
|
* Pass a percent value when dbfs is set to false.
|
||||||
*/
|
*/
|
||||||
|
@ -509,7 +511,7 @@ int pm_get_clipcount(void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Set clipping counter to zero (typically at start of recording or playback)
|
* Set clipping counter to zero (typically at start of recording or playback)
|
||||||
*/
|
*/
|
||||||
void pm_reset_clipcount(void)
|
void pm_reset_clipcount(void)
|
||||||
{
|
{
|
||||||
|
@ -518,7 +520,7 @@ void pm_reset_clipcount(void)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Set the source of the peak meter to playback or to
|
* Set the source of the peak meter to playback or to
|
||||||
* record.
|
* record.
|
||||||
* @param: bool playback - If true playback peak meter is used.
|
* @param: bool playback - If true playback peak meter is used.
|
||||||
* If false recording peak meter is used.
|
* If false recording peak meter is used.
|
||||||
|
@ -534,7 +536,7 @@ void peak_meter_playback(bool playback)
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef HAVE_RECORDING
|
#ifdef HAVE_RECORDING
|
||||||
static void set_trig_status(int new_state)
|
static void set_trig_status(int new_state)
|
||||||
{
|
{
|
||||||
if (trig_status != new_state) {
|
if (trig_status != new_state) {
|
||||||
trig_status = new_state;
|
trig_status = new_state;
|
||||||
|
@ -547,9 +549,9 @@ static void set_trig_status(int new_state)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Reads peak values from the MAS, and detects clips. The
|
* Reads peak values from the MAS, and detects clips. The
|
||||||
* values are stored in pm_max_left pm_max_right for later
|
* values are stored in pm_max_left pm_max_right for later
|
||||||
* evauluation. Consecutive calls to peak_meter_peek detect
|
* evauluation. Consecutive calls to peak_meter_peek detect
|
||||||
* that ocurred. This function could be used by a thread for
|
* that ocurred. This function could be used by a thread for
|
||||||
* busy reading the MAS.
|
* busy reading the MAS.
|
||||||
*/
|
*/
|
||||||
|
@ -620,7 +622,7 @@ void peak_meter_peek(void)
|
||||||
case TRIG_READY:
|
case TRIG_READY:
|
||||||
/* no more changes, if trigger was activated as release trigger */
|
/* no more changes, if trigger was activated as release trigger */
|
||||||
/* threshold exceeded? */
|
/* threshold exceeded? */
|
||||||
if ((left > trig_strt_threshold)
|
if ((left > trig_strt_threshold)
|
||||||
|| (right > trig_strt_threshold)) {
|
|| (right > trig_strt_threshold)) {
|
||||||
/* reset trigger duration */
|
/* reset trigger duration */
|
||||||
trig_hightime = current_tick;
|
trig_hightime = current_tick;
|
||||||
|
@ -670,7 +672,7 @@ void peak_meter_peek(void)
|
||||||
case TRIG_GO:
|
case TRIG_GO:
|
||||||
case TRIG_CONTINUE:
|
case TRIG_CONTINUE:
|
||||||
/* threshold exceeded? */
|
/* threshold exceeded? */
|
||||||
if ((left > trig_stp_threshold)
|
if ((left > trig_stp_threshold)
|
||||||
|| (right > trig_stp_threshold)) {
|
|| (right > trig_stp_threshold)) {
|
||||||
/* restart hold time countdown */
|
/* restart hold time countdown */
|
||||||
trig_lowtime = current_tick;
|
trig_lowtime = current_tick;
|
||||||
|
@ -684,7 +686,7 @@ void peak_meter_peek(void)
|
||||||
/* gap time expired? */
|
/* gap time expired? */
|
||||||
if (current_tick - trig_lowtime > trig_rstrt_gap){
|
if (current_tick - trig_lowtime > trig_rstrt_gap){
|
||||||
/* start threshold exceeded? */
|
/* start threshold exceeded? */
|
||||||
if ((left > trig_strt_threshold)
|
if ((left > trig_strt_threshold)
|
||||||
|| (right > trig_strt_threshold)) {
|
|| (right > trig_strt_threshold)) {
|
||||||
|
|
||||||
set_trig_status(TRIG_RETRIG);
|
set_trig_status(TRIG_RETRIG);
|
||||||
|
@ -694,7 +696,7 @@ void peak_meter_peek(void)
|
||||||
else
|
else
|
||||||
|
|
||||||
/* stop threshold exceeded */
|
/* stop threshold exceeded */
|
||||||
if ((left > trig_stp_threshold)
|
if ((left > trig_stp_threshold)
|
||||||
|| (right > trig_stp_threshold)) {
|
|| (right > trig_stp_threshold)) {
|
||||||
if (current_tick - trig_hightime > trig_stp_hold){
|
if (current_tick - trig_hightime > trig_stp_hold){
|
||||||
trig_lowtime = current_tick;
|
trig_lowtime = current_tick;
|
||||||
|
@ -830,7 +832,7 @@ void peak_meter_get_peakhold(int *peak_left, int *peak_right)
|
||||||
* @param int unused - This parameter was added to
|
* @param int unused - This parameter was added to
|
||||||
* make the function compatible with set_int
|
* make the function compatible with set_int
|
||||||
*/
|
*/
|
||||||
void peak_meter_set_clip_hold(int time)
|
void peak_meter_set_clip_hold(int time)
|
||||||
{
|
{
|
||||||
pm_clip_left = false;
|
pm_clip_left = false;
|
||||||
pm_clip_right = false;
|
pm_clip_right = false;
|
||||||
|
@ -870,7 +872,7 @@ unsigned short peak_meter_scale_value(unsigned short val, int meterwidth)
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
/* scale the samples */
|
/* scale the samples */
|
||||||
retval = ((retval - peak_meter_range_min) * meterwidth)
|
retval = ((retval - peak_meter_range_min) * meterwidth)
|
||||||
/ pm_range;
|
/ pm_range;
|
||||||
}
|
}
|
||||||
return retval;
|
return retval;
|
||||||
|
@ -887,7 +889,7 @@ void peak_meter_current_vals(int *left, int *right)
|
||||||
static int left_level = 0, right_level = 0;
|
static int left_level = 0, right_level = 0;
|
||||||
if (level_check){
|
if (level_check){
|
||||||
/* only read the volume info from MAS if peek since last read*/
|
/* only read the volume info from MAS if peek since last read*/
|
||||||
left_level = peak_meter_read_l();
|
left_level = peak_meter_read_l();
|
||||||
right_level = peak_meter_read_r();
|
right_level = peak_meter_read_r();
|
||||||
level_check = false;
|
level_check = false;
|
||||||
}
|
}
|
||||||
|
@ -897,9 +899,9 @@ void peak_meter_current_vals(int *left, int *right)
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Draws a peak meter in the specified size at the specified position.
|
* Draws a peak meter in the specified size at the specified position.
|
||||||
* @param int x - The x coordinate.
|
* @param int x - The x coordinate.
|
||||||
* Make sure that 0 <= x and x + width < display->getwidth()
|
* Make sure that 0 <= x and x + width < display->getwidth()
|
||||||
* @param int y - The y coordinate.
|
* @param int y - The y coordinate.
|
||||||
* Make sure that 0 <= y and y + height < display->getheight()
|
* Make sure that 0 <= y and y + height < display->getheight()
|
||||||
* @param int width - The width of the peak meter. Note that for display
|
* @param int width - The width of the peak meter. Note that for display
|
||||||
* of clips a 3 pixel wide area is used ->
|
* of clips a 3 pixel wide area is used ->
|
||||||
|
@ -907,7 +909,7 @@ void peak_meter_current_vals(int *left, int *right)
|
||||||
* @param int height - The height of the peak meter. height > 3
|
* @param int height - The height of the peak meter. height > 3
|
||||||
*/
|
*/
|
||||||
static void peak_meter_draw(struct screen *display, struct meter_scales *scales,
|
static void peak_meter_draw(struct screen *display, struct meter_scales *scales,
|
||||||
int x, int y, int width, int height)
|
int x, int y, int width, int height)
|
||||||
{
|
{
|
||||||
int left_level = 0, right_level = 0;
|
int left_level = 0, right_level = 0;
|
||||||
int left = 0, right = 0;
|
int left = 0, right = 0;
|
||||||
|
@ -931,11 +933,11 @@ static void peak_meter_draw(struct screen *display, struct meter_scales *scales,
|
||||||
|
|
||||||
peak_meter_current_vals(&left_level, &right_level);
|
peak_meter_current_vals(&left_level, &right_level);
|
||||||
|
|
||||||
/* scale the samples dBfs */
|
/* scale the samples dBfs */
|
||||||
left = peak_meter_scale_value(left_level, meterwidth);
|
left = peak_meter_scale_value(left_level, meterwidth);
|
||||||
right = peak_meter_scale_value(right_level, meterwidth);
|
right = peak_meter_scale_value(right_level, meterwidth);
|
||||||
|
|
||||||
/*if the scale has changed -> recalculate the scale
|
/*if the scale has changed -> recalculate the scale
|
||||||
(The scale becomes invalid when the range changed.) */
|
(The scale becomes invalid when the range changed.) */
|
||||||
if (!scales->db_scale_valid){
|
if (!scales->db_scale_valid){
|
||||||
|
|
||||||
|
@ -949,7 +951,7 @@ static void peak_meter_draw(struct screen *display, struct meter_scales *scales,
|
||||||
peak_meter_scale_value(
|
peak_meter_scale_value(
|
||||||
db_scale_src_values[i],
|
db_scale_src_values[i],
|
||||||
meterwidth - 1);
|
meterwidth - 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* when scaling linear we simly make 10% steps */
|
/* when scaling linear we simly make 10% steps */
|
||||||
|
@ -988,12 +990,12 @@ static void peak_meter_draw(struct screen *display, struct meter_scales *scales,
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!pm_clip_eternal) {
|
if (!pm_clip_eternal) {
|
||||||
if (pm_clip_left &&
|
if (pm_clip_left &&
|
||||||
TIME_AFTER(current_tick, pm_clip_timeout_l)){
|
TIME_AFTER(current_tick, pm_clip_timeout_l)){
|
||||||
pm_clip_left = false;
|
pm_clip_left = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pm_clip_right &&
|
if (pm_clip_right &&
|
||||||
TIME_AFTER(current_tick, pm_clip_timeout_r)){
|
TIME_AFTER(current_tick, pm_clip_timeout_r)){
|
||||||
pm_clip_right = false;
|
pm_clip_right = false;
|
||||||
}
|
}
|
||||||
|
@ -1039,7 +1041,7 @@ static void peak_meter_draw(struct screen *display, struct meter_scales *scales,
|
||||||
|
|
||||||
/* draw dots for scale marks */
|
/* draw dots for scale marks */
|
||||||
for (i = 0; i < db_scale_count; i++) {
|
for (i = 0; i < db_scale_count; i++) {
|
||||||
/* The x-coordinates of interesting scale mark points
|
/* The x-coordinates of interesting scale mark points
|
||||||
have been calculated before */
|
have been calculated before */
|
||||||
display->drawpixel(x + scales->db_scale_lcd_coord[i],
|
display->drawpixel(x + scales->db_scale_lcd_coord[i],
|
||||||
y + height / 2 - 1);
|
y + height / 2 - 1);
|
||||||
|
@ -1103,7 +1105,7 @@ static void peak_meter_draw(struct screen *display, struct meter_scales *scales,
|
||||||
ticks_per_redraw[tmp] ++;
|
ticks_per_redraw[tmp] ++;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* display a bar to show how many ticks have passed since
|
/* display a bar to show how many ticks have passed since
|
||||||
the last redraw */
|
the last redraw */
|
||||||
display->fillrect(x, y + height / 2, current_tick - pm_tick, 2);
|
display->fillrect(x, y + height / 2, current_tick - pm_tick, 2);
|
||||||
pm_tick = current_tick;
|
pm_tick = current_tick;
|
||||||
|
@ -1174,7 +1176,7 @@ void peak_meter_define_trigger(
|
||||||
* Enables or disables the trigger.
|
* Enables or disables the trigger.
|
||||||
* @param on - If true the trigger is turned on.
|
* @param on - If true the trigger is turned on.
|
||||||
*/
|
*/
|
||||||
void peak_meter_trigger(bool on)
|
void peak_meter_trigger(bool on)
|
||||||
{
|
{
|
||||||
/* don't use set_trigger here as that would fire an undesired event */
|
/* don't use set_trigger here as that would fire an undesired event */
|
||||||
trig_status = on ? TRIG_READY : TRIG_OFF;
|
trig_status = on ? TRIG_READY : TRIG_OFF;
|
||||||
|
@ -1185,7 +1187,7 @@ void peak_meter_trigger(bool on)
|
||||||
* @param listener - The function that is called with each change of
|
* @param listener - The function that is called with each change of
|
||||||
* trig_status. May be set to NULL if no callback is desired.
|
* trig_status. May be set to NULL if no callback is desired.
|
||||||
*/
|
*/
|
||||||
void peak_meter_set_trigger_listener(void (*listener)(int status))
|
void peak_meter_set_trigger_listener(void (*listener)(int status))
|
||||||
{
|
{
|
||||||
trigger_listener = listener;
|
trigger_listener = listener;
|
||||||
}
|
}
|
||||||
|
@ -1202,7 +1204,7 @@ void peak_meter_set_trigger_listener(void (*listener)(int status))
|
||||||
* peak_meter_release_trigger. To turn the trigger off call
|
* peak_meter_release_trigger. To turn the trigger off call
|
||||||
* peak_meter_trigger_off.
|
* peak_meter_trigger_off.
|
||||||
*/
|
*/
|
||||||
int peak_meter_trigger_status(void)
|
int peak_meter_trigger_status(void)
|
||||||
{
|
{
|
||||||
return trig_status; /* & TRIG_PIT_MASK;*/
|
return trig_status; /* & TRIG_PIT_MASK;*/
|
||||||
}
|
}
|
||||||
|
@ -1313,7 +1315,7 @@ int peak_meter_draw_get_btn(int action_context, int x[], int y[],
|
||||||
if (TIME_AFTER(current_tick, next_refresh)) {
|
if (TIME_AFTER(current_tick, next_refresh)) {
|
||||||
for(i = 0; i < nb_screens; i++)
|
for(i = 0; i < nb_screens; i++)
|
||||||
{
|
{
|
||||||
screens[i].set_viewport(&vps[i]);
|
screens[i].set_viewport(&vps[i]);
|
||||||
peak_meter_screen(&screens[i], x[i], y[i], height[i]);
|
peak_meter_screen(&screens[i], x[i], y[i], height[i]);
|
||||||
screens[i].update_viewport_rect(x[i], y[i],
|
screens[i].update_viewport_rect(x[i], y[i],
|
||||||
screens[i].getwidth() - x[i],
|
screens[i].getwidth() - x[i],
|
||||||
|
@ -1340,7 +1342,7 @@ static void peak_meter_clear_histogram(void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
bool peak_meter_histogram(void)
|
bool peak_meter_histogram(void)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
int btn = BUTTON_NONE;
|
int btn = BUTTON_NONE;
|
||||||
|
@ -1453,4 +1455,3 @@ void histogram_draw(int x1, int x2, int y1, int y2, int width, int height)
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
#endif /* HAVE_HISTOGRAM */
|
#endif /* HAVE_HISTOGRAM */
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue