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:
Solomon Peachy 2025-04-22 07:37:28 -04:00
parent 3b974e791a
commit 6d24ff3257
2 changed files with 150 additions and 149 deletions

View file

@ -134,7 +134,9 @@ static int hist_l = 0;
static int hist_r = 0;
static unsigned char history_l[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};
#endif
static int history_pos = 0;
#define HIST_W (LCD_WIDTH / 2)
#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
* @param int sample - The input value
* @param int sample - The input value
* Make sure that 0 <= value < SAMPLE_RANGE
*
* @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
* scaled volume info as it is used by the MAS.
* 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.
*
* @param int db - A dBfs * 100 value with
*
* @param int db - A dBfs * 100 value with
* -9000 < value <= 0
* @return int - The return value is in the range of
* 0 <= return value < MAX_PEAK
@ -323,10 +325,10 @@ int peak_meter_db2sample(int db)
else {
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
they adjust maximum for 0 dBfs and display it in percent it
shows 99%. That is due to precision loss and this is the
they adjust maximum for 0 dBfs and display it in percent it
shows 99%. That is due to precision loss and this is the
optical fix */
}
@ -340,7 +342,7 @@ int peak_meter_db2sample(int db)
* for dBfs: -9000 < newmin <= 0
* 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) {
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
* dBfs values * 100 or linear percent values.
* @return: using dBfs : -9000 < value <= 0
* using linear scale: 0 <= value <= 100
*/
int peak_meter_get_min(void)
int peak_meter_get_min(void)
{
int retval = 0;
if (pm_use_dbfs) {
@ -390,7 +392,7 @@ int peak_meter_get_min(void)
* for dBfs: -9000 < newmax <= 0
* 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) {
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
* dBfs values * 100 or linear percent values
* @return: using dBfs : -9000 < value <= 0
* using linear scale: 0 <= value <= 100
*/
int peak_meter_get_max(void)
int peak_meter_get_max(void)
{
int retval = 0;
if (pm_use_dbfs) {
@ -445,7 +447,7 @@ bool peak_meter_get_use_dbfs(void)
/**
* Specifies whether the values displayed are scaled
* 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
*/
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
* that are in the range of [range_min ... range_max]
* are displayed.
* @param bool dbfs - set to true for dBfs,
* set to false for linear scaling in percent
* @param int range_min - Specifies the lower value of the range.
* @param bool dbfs - set to true for dBfs,
* set to false for linear scaling in percent
* @param int range_min - Specifies the lower value of the range.
* Pass a value dBfs * 100 when dbfs is set to true.
* 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 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)
{
@ -518,7 +520,7 @@ void pm_reset_clipcount(void)
#endif
/**
* Set the source of the peak meter to playback or to
* Set the source of the peak meter to playback or to
* record.
* @param: bool playback - If true playback peak meter is used.
* If false recording peak meter is used.
@ -534,7 +536,7 @@ void peak_meter_playback(bool playback)
}
#ifdef HAVE_RECORDING
static void set_trig_status(int new_state)
static void set_trig_status(int new_state)
{
if (trig_status != new_state) {
trig_status = new_state;
@ -547,9 +549,9 @@ static void set_trig_status(int new_state)
#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
* 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
* busy reading the MAS.
*/
@ -620,7 +622,7 @@ void peak_meter_peek(void)
case TRIG_READY:
/* no more changes, if trigger was activated as release trigger */
/* threshold exceeded? */
if ((left > trig_strt_threshold)
if ((left > trig_strt_threshold)
|| (right > trig_strt_threshold)) {
/* reset trigger duration */
trig_hightime = current_tick;
@ -670,7 +672,7 @@ void peak_meter_peek(void)
case TRIG_GO:
case TRIG_CONTINUE:
/* threshold exceeded? */
if ((left > trig_stp_threshold)
if ((left > trig_stp_threshold)
|| (right > trig_stp_threshold)) {
/* restart hold time countdown */
trig_lowtime = current_tick;
@ -684,7 +686,7 @@ void peak_meter_peek(void)
/* gap time expired? */
if (current_tick - trig_lowtime > trig_rstrt_gap){
/* start threshold exceeded? */
if ((left > trig_strt_threshold)
if ((left > trig_strt_threshold)
|| (right > trig_strt_threshold)) {
set_trig_status(TRIG_RETRIG);
@ -694,7 +696,7 @@ void peak_meter_peek(void)
else
/* stop threshold exceeded */
if ((left > trig_stp_threshold)
if ((left > trig_stp_threshold)
|| (right > trig_stp_threshold)) {
if (current_tick - trig_hightime > trig_stp_hold){
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
* 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_right = false;
@ -870,7 +872,7 @@ unsigned short peak_meter_scale_value(unsigned short val, int meterwidth)
else
{
/* scale the samples */
retval = ((retval - peak_meter_range_min) * meterwidth)
retval = ((retval - peak_meter_range_min) * meterwidth)
/ pm_range;
}
return retval;
@ -887,7 +889,7 @@ void peak_meter_current_vals(int *left, int *right)
static int left_level = 0, right_level = 0;
if (level_check){
/* 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();
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.
* @param int x - The x coordinate.
* @param int x - The x coordinate.
* 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()
* @param int width - The width of the peak meter. Note that for display
* 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
*/
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 = 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);
/* scale the samples dBfs */
/* scale the samples dBfs */
left = peak_meter_scale_value(left_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.) */
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(
db_scale_src_values[i],
meterwidth - 1);
}
}
}
/* 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_left &&
if (pm_clip_left &&
TIME_AFTER(current_tick, pm_clip_timeout_l)){
pm_clip_left = false;
}
if (pm_clip_right &&
if (pm_clip_right &&
TIME_AFTER(current_tick, pm_clip_timeout_r)){
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 */
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 */
display->drawpixel(x + scales->db_scale_lcd_coord[i],
y + height / 2 - 1);
@ -1103,7 +1105,7 @@ static void peak_meter_draw(struct screen *display, struct meter_scales *scales,
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 */
display->fillrect(x, y + height / 2, current_tick - pm_tick, 2);
pm_tick = current_tick;
@ -1174,7 +1176,7 @@ void peak_meter_define_trigger(
* Enables or disables the trigger.
* @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 */
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
* 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;
}
@ -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_trigger_off.
*/
int peak_meter_trigger_status(void)
int peak_meter_trigger_status(void)
{
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)) {
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]);
screens[i].update_viewport_rect(x[i], y[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 btn = BUTTON_NONE;
@ -1453,4 +1455,3 @@ void histogram_draw(int x1, int x2, int y1, int y2, int width, int height)
#endif
}
#endif /* HAVE_HISTOGRAM */