@@ -70,6 +70,13 @@ void UI_DisplayStatus()
7070 x1 = x + 10 ;
7171 }
7272 else
73+ #endif
74+ #ifdef ENABLE_FMRADIO
75+ if (gFmRadioMode ) { // FM indicator
76+ memcpy (line + x , BITMAP_FM , sizeof (BITMAP_FM ));
77+ x1 = x + sizeof (BITMAP_FM );
78+ }
79+ else
7380#endif
7481 { // SCAN indicator
7582 if (gScanStateDir != SCAN_OFF || SCANNER_IsScanning ()) {
@@ -84,47 +91,45 @@ void UI_DisplayStatus()
8491 else { // frequency mode
8592 s = "S" ;
8693 }
87- UI_PrintStringSmallBuffer (s , line + x );
88- x1 = x + 7 ;
94+ UI_PrintStringSmallBuffer (s , line + x + 1 );
95+ x1 = x + 10 ;
8996 }
9097 }
91- x += 7 ; // font character width
98+ x += 10 ; // font character width
9299
93100#ifdef ENABLE_VOICE
94101 // VOICE indicator
95102 if (gEeprom .VOICE_PROMPT != VOICE_PROMPT_OFF ){
96103 memcpy (line + x , BITMAP_VoicePrompt , sizeof (BITMAP_VoicePrompt ));
97104 x1 = x + sizeof (BITMAP_VoicePrompt );
98105 }
99- x += sizeof (BITMAP_VoicePrompt ) + 1 ;
106+ x += sizeof (BITMAP_VoicePrompt );
100107#endif
101108
102- x ++ ;
103109 if (!SCANNER_IsScanning ()) {
104110 uint8_t dw = (gEeprom .DUAL_WATCH != DUAL_WATCH_OFF ) + (gEeprom .CROSS_BAND_RX_TX != CROSS_BAND_OFF ) * 2 ;
105111 if (dw == 1 || dw == 3 ) { // DWR - dual watch + respond
106112 if (gDualWatchActive )
107- memcpy (line + x , BITMAP_TDR1 , sizeof (BITMAP_TDR1 ) - (dw == 1 ?0 :5 ));
113+ memcpy (line + x + ( dw == 1 ? 0 : 2 ) , BITMAP_TDR1 , sizeof (BITMAP_TDR1 ) - (dw == 1 ?0 :5 ));
108114 else
109115 memcpy (line + x + 3 , BITMAP_TDR2 , sizeof (BITMAP_TDR2 ));
110116 }
111117 else if (dw == 2 ) { // XB - crossband
112- memcpy (line + x , BITMAP_XB , sizeof (BITMAP_XB ));
118+ memcpy (line + x + 2 , BITMAP_XB , sizeof (BITMAP_XB ));
113119 }
114120 }
115- x += sizeof (BITMAP_TDR1 ) + 2 ;
121+ x += sizeof (BITMAP_TDR1 ) + 1 ;
116122
117123#ifdef ENABLE_VOX
118124 // VOX indicator
119125 if (gEeprom .VOX_SWITCH ) {
120126 memcpy (line + x , BITMAP_VOX , sizeof (BITMAP_VOX ));
121- x1 = x + sizeof (BITMAP_VOX );
127+ x1 = x + sizeof (BITMAP_VOX ) + 1 ;
122128 }
123- x += sizeof (BITMAP_VOX ) + 2 ;
129+ x += sizeof (BITMAP_VOX ) + 1 ;
124130#endif
125131
126- x = MAX (x , 61u );
127- x1 = x ;
132+ x = MAX (x1 , 61u );
128133
129134 // KEY-LOCK indicator
130135 if (gEeprom .KEY_LOCK ) {
@@ -140,7 +145,7 @@ void UI_DisplayStatus()
140145
141146 { // battery voltage or percentage
142147 char s [8 ] = "" ;
143- unsigned int x2 = LCD_WIDTH - sizeof (BITMAP_BatteryLevel1 ) - 3 ;
148+ unsigned int x2 = LCD_WIDTH - sizeof (BITMAP_BatteryLevel1 ) - 0 ;
144149
145150 if (gChargingWithTypeC )
146151 x2 -= sizeof (BITMAP_USB_C ); // the radio is on charge
0 commit comments