@@ -448,6 +448,7 @@ s32 MIXER_ApplyLimits(unsigned channel, struct Limit *limit, volatile s32 *_raw,
448448 return value ;
449449}
450450
451+ //Returns the raw trim value (between -100 and 100)
451452s8 * MIXER_GetTrim (unsigned i )
452453{
453454 if (Model .trims [i ].sw ) {
@@ -465,10 +466,12 @@ s32 MIXER_GetTrimValue(int i)
465466{
466467 s32 value = * (MIXER_GetTrim (i ));
467468 //0 to 100 step is 0.1
468- if (Model .trims [i ].step < 10 )
469+ if (Model .trims [i ].step < 100 ) //Trims are in tenths of a percent from 0 - 100
469470 return PCT_TO_RANGE (value * Model .trims [i ].step ) / 10 ;
470- else
471- return PCT_TO_RANGE (value );
471+ else if (Model .trims [i ].step <= TRIM_MAX_VALUE ) //Trims are in 1% increments from 100-190
472+ value = value * (Model .trims [i ].step - 90 );
473+ return PCT_TO_RANGE (value );
474+
472475}
473476
474477s32 get_trim (unsigned src )
@@ -772,35 +775,22 @@ unsigned MIXER_UpdateTrim(u32 buttons, unsigned flags, void *data)
772775#define START_TONE 1000
773776 (void )data ;
774777 int i ;
775- int orig_step_size = 1 ;
776778 int tmp ;
777779 unsigned reach_end = 0 ; // reach either 100 , 0, or -100
778- if (flags & BUTTON_LONGPRESS ) {
779- if (orig_step_size == 1 )
780- orig_step_size = 9 ;
781- else if (orig_step_size == 9 )
782- orig_step_size = 10 ;
783- }
784- if (! orig_step_size )
785- return 1 ;
780+ int orig_step_size = (flags & BUTTON_LONGPRESS ) ? 9 : 1 ;
786781 unsigned volume = 10 * Transmitter .volume ;
787782 for (i = 0 ; i < NUM_TRIMS ; i ++ ) {
788783 int step_size = orig_step_size ;
789784 reach_end = 0 ;
790785 int neg_button = CHAN_ButtonIsPressed (buttons , Model .trims [i ].neg );
791786 if (neg_button || CHAN_ButtonIsPressed (buttons , Model .trims [i ].pos )) {
792- if (Model .trims [i ].step > 190 ) {
787+ if (Model .trims [i ].step > TRIM_MAX_VALUE ) {
793788 _trim_as_switch (flags , i , neg_button );
794789 continue ;
795790 }
796791 if (flags & BUTTON_RELEASE )
797792 continue ;
798793 int max = 100 ;
799- if (Model .trims [i ].step >= 100 ) {
800- step_size = Model .trims [i ].step - 90 ;
801- } else if (Model .trims [i ].step > 10 ) {
802- step_size = step_size * Model .trims [i ].step / 10 ;
803- }
804794 if (neg_button )
805795 step_size = - step_size ;
806796 s8 * value = MIXER_GetTrim (i );
0 commit comments