Skip to content

Commit 804d51c

Browse files
authored
Merge pull request #551 from TheRealMoeder/voice_diet
Shrink voice ROM usage
2 parents 84740b3 + 7860e39 commit 804d51c

1 file changed

Lines changed: 27 additions & 25 deletions

File tree

src/telemetry.c

Lines changed: 27 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -378,14 +378,16 @@ void TELEMETRY_Alarm()
378378
#endif
379379

380380
#if HAS_EXTENDED_AUDIO
381+
u16 telem_music = MUSIC_GetTelemetryAlarm(MUSIC_TELEMALARM1 + k);
382+
s32 telem_value = TELEMETRY_GetValue(Model.telem_alarm[k]);
381383
if (TELEMETRY_Type() == TELEM_DEVO) {
382384
switch(Model.telem_alarm[k]) {
383385
case TELEM_DEVO_VOLT1:
384386
case TELEM_DEVO_VOLT2:
385-
case TELEM_DEVO_VOLT3: MUSIC_PlayValue(MUSIC_GetTelemetryAlarm(MUSIC_TELEMALARM1 + k), TELEMETRY_GetValue(Model.telem_alarm[k]),VOICE_UNIT_VOLT,1); break;
387+
case TELEM_DEVO_VOLT3: MUSIC_PlayValue(telem_music, telem_value,VOICE_UNIT_VOLT,1); break;
386388
case TELEM_DEVO_RPM1:
387-
case TELEM_DEVO_RPM2: MUSIC_PlayValue(MUSIC_GetTelemetryAlarm(MUSIC_TELEMALARM1 + k), TELEMETRY_GetValue(Model.telem_alarm[k]),VOICE_UNIT_RPM,0); break;
388-
default: MUSIC_PlayValue(MUSIC_GetTelemetryAlarm(MUSIC_TELEMALARM1 + k), TELEMETRY_GetValue(Model.telem_alarm[k])-20,VOICE_UNIT_TEMP,0); break;
389+
case TELEM_DEVO_RPM2: MUSIC_PlayValue(telem_music, telem_value,VOICE_UNIT_RPM,0); break;
390+
default: MUSIC_PlayValue(telem_music, telem_value-20,VOICE_UNIT_TEMP,0); break;
389391
}
390392
}
391393
if (TELEMETRY_Type() == TELEM_DSM) {
@@ -394,7 +396,7 @@ void TELEMETRY_Alarm()
394396
case TELEM_DSM_JETCAT_RPM:
395397
case TELEM_DSM_ESC_RPM:
396398
#endif
397-
case TELEM_DSM_FLOG_RPM1: MUSIC_PlayValue(MUSIC_GetTelemetryAlarm(MUSIC_TELEMALARM1 + k), TELEMETRY_GetValue(Model.telem_alarm[k]),VOICE_UNIT_RPM,0); break;
399+
case TELEM_DSM_FLOG_RPM1: MUSIC_PlayValue(telem_music, telem_value,VOICE_UNIT_RPM,0); break;
398400
#if HAS_EXTENDED_TELEMETRY
399401
case TELEM_DSM_PBOX_VOLT1:
400402
case TELEM_DSM_PBOX_VOLT2:
@@ -405,20 +407,20 @@ void TELEMETRY_Alarm()
405407
case TELEM_DSM_ESC_VOLT2:
406408
#endif
407409
case TELEM_DSM_FLOG_VOLT1:
408-
case TELEM_DSM_FLOG_VOLT2: MUSIC_PlayValue(MUSIC_GetTelemetryAlarm(MUSIC_TELEMALARM1 + k), TELEMETRY_GetValue(Model.telem_alarm[k]),VOICE_UNIT_VOLT,2); break;
410+
case TELEM_DSM_FLOG_VOLT2: MUSIC_PlayValue(telem_music, telem_value,VOICE_UNIT_VOLT,2); break;
409411
#if HAS_EXTENDED_TELEMETRY
410-
case TELEM_DSM_JETCAT_TEMPEGT: MUSIC_PlayValue(MUSIC_GetTelemetryAlarm(MUSIC_TELEMALARM1 + k), TELEMETRY_GetValue(Model.telem_alarm[k]),VOICE_UNIT_TEMP,0); break;
412+
case TELEM_DSM_JETCAT_TEMPEGT: MUSIC_PlayValue(telem_music, telem_value,VOICE_UNIT_TEMP,0); break;
411413
case TELEM_DSM_ESC_TEMP1:
412414
case TELEM_DSM_ESC_TEMP2:
413415
#endif
414-
case TELEM_DSM_FLOG_TEMP1: MUSIC_PlayValue(MUSIC_GetTelemetryAlarm(MUSIC_TELEMALARM1 + k), TELEMETRY_GetValue(Model.telem_alarm[k]),VOICE_UNIT_TEMP,1); break;
416+
case TELEM_DSM_FLOG_TEMP1: MUSIC_PlayValue(telem_music, telem_value,VOICE_UNIT_TEMP,1); break;
415417
#if HAS_EXTENDED_TELEMETRY
416418
case TELEM_DSM_RXPCAP_AMPS:
417-
case TELEM_DSM_ESC_AMPS1: MUSIC_PlayValue(MUSIC_GetTelemetryAlarm(MUSIC_TELEMALARM1 + k), TELEMETRY_GetValue(Model.telem_alarm[k]),VOICE_UNIT_AMPS,2); break;
419+
case TELEM_DSM_ESC_AMPS1: MUSIC_PlayValue(telem_music, telem_value,VOICE_UNIT_AMPS,2); break;
418420
case TELEM_DSM_FPCAP_AMPS:
419421
case TELEM_DSM_ESC_AMPS2:
420422
#endif
421-
case TELEM_DSM_AMPS1: MUSIC_PlayValue(MUSIC_GetTelemetryAlarm(MUSIC_TELEMALARM1 + k), TELEMETRY_GetValue(Model.telem_alarm[k]),VOICE_UNIT_AMPS,1); break;
423+
case TELEM_DSM_AMPS1: MUSIC_PlayValue(telem_music, telem_value,VOICE_UNIT_AMPS,1); break;
422424
case TELEM_DSM_ALTITUDE:
423425
case TELEM_DSM_ALTITUDE_MAX:
424426
case TELEM_DSM_VARIO_CLIMBRATE1:
@@ -427,19 +429,19 @@ void TELEMETRY_Alarm()
427429
case TELEM_DSM_VARIO_CLIMBRATE4:
428430
case TELEM_DSM_VARIO_CLIMBRATE5:
429431
case TELEM_DSM_VARIO_CLIMBRATE6:
430-
case TELEM_DSM_VARIO_ALTITUDE: MUSIC_PlayValue(MUSIC_GetTelemetryAlarm(MUSIC_TELEMALARM1 + k), TELEMETRY_GetValue(Model.telem_alarm[k]),VOICE_UNIT_ALTITUDE,1); break;
432+
case TELEM_DSM_VARIO_ALTITUDE: MUSIC_PlayValue(telem_music, telem_value,VOICE_UNIT_ALTITUDE,1); break;
431433

432434
case TELEM_DSM_GFORCE_X:
433435
case TELEM_DSM_GFORCE_Y:
434436
case TELEM_DSM_GFORCE_Z:
435437
case TELEM_DSM_GFORCE_XMAX:
436438
case TELEM_DSM_GFORCE_YMAX:
437439
case TELEM_DSM_GFORCE_ZMAX:
438-
case TELEM_DSM_GFORCE_ZMIN: MUSIC_PlayValue(MUSIC_GetTelemetryAlarm(MUSIC_TELEMALARM1 + k), TELEMETRY_GetValue(Model.telem_alarm[k]),VOICE_UNIT_GFORCE,2); break;
440+
case TELEM_DSM_GFORCE_ZMIN: MUSIC_PlayValue(telem_music, telem_value,VOICE_UNIT_GFORCE,2); break;
439441
#if HAS_EXTENDED_TELEMETRY
440-
case TELEM_DSM_FLOG_RSSI_DBM: MUSIC_PlayValue(MUSIC_GetTelemetryAlarm(MUSIC_TELEMALARM1 + k), TELEMETRY_GetValue(Model.telem_alarm[k]),VOICE_UNIT_DB,0); break;
442+
case TELEM_DSM_FLOG_RSSI_DBM: MUSIC_PlayValue(telem_music, telem_value,VOICE_UNIT_DB,0); break;
441443
#endif
442-
default: MUSIC_PlayValue(MUSIC_GetTelemetryAlarm(MUSIC_TELEMALARM1 + k), TELEMETRY_GetValue(Model.telem_alarm[k]),VOICE_UNIT_NONE,0);
444+
default: MUSIC_PlayValue(telem_music, telem_value,VOICE_UNIT_NONE,0);
443445
}
444446
}
445447

@@ -458,33 +460,33 @@ void TELEMETRY_Alarm()
458460
case TELEM_FRSKY_CELL6:
459461
#endif
460462
case TELEM_FRSKY_VOLT1:
461-
case TELEM_FRSKY_VOLT2: MUSIC_PlayValue(MUSIC_GetTelemetryAlarm(MUSIC_TELEMALARM1 + k), TELEMETRY_GetValue(Model.telem_alarm[k]),VOICE_UNIT_VOLT,2); break;
463+
case TELEM_FRSKY_VOLT2: MUSIC_PlayValue(telem_music, telem_value,VOICE_UNIT_VOLT,2); break;
462464
#if HAS_EXTENDED_TELEMETRY
463465
case TELEM_FRSKY_TEMP1:
464-
case TELEM_FRSKY_TEMP2: MUSIC_PlayValue(MUSIC_GetTelemetryAlarm(MUSIC_TELEMALARM1 + k), TELEMETRY_GetValue(Model.telem_alarm[k])-20,VOICE_UNIT_TEMP,0); break;
465-
case TELEM_FRSKY_RPM: MUSIC_PlayValue(MUSIC_GetTelemetryAlarm(MUSIC_TELEMALARM1 + k), TELEMETRY_GetValue(Model.telem_alarm[k]),VOICE_UNIT_RPM,0); break;
466-
case TELEM_FRSKY_CURRENT: MUSIC_PlayValue(MUSIC_GetTelemetryAlarm(MUSIC_TELEMALARM1 + k), TELEMETRY_GetValue(Model.telem_alarm[k]),VOICE_UNIT_AMPS,2); break;
467-
case TELEM_FRSKY_ALTITUDE: MUSIC_PlayValue(MUSIC_GetTelemetryAlarm(MUSIC_TELEMALARM1 + k), TELEMETRY_GetValue(Model.telem_alarm[k]),VOICE_UNIT_ALTITUDE,2); break;
466+
case TELEM_FRSKY_TEMP2: MUSIC_PlayValue(telem_music, telem_value-20,VOICE_UNIT_TEMP,0); break;
467+
case TELEM_FRSKY_RPM: MUSIC_PlayValue(telem_music, telem_value,VOICE_UNIT_RPM,0); break;
468+
case TELEM_FRSKY_CURRENT: MUSIC_PlayValue(telem_music, telem_value,VOICE_UNIT_AMPS,2); break;
469+
case TELEM_FRSKY_ALTITUDE: MUSIC_PlayValue(telem_music, telem_value,VOICE_UNIT_ALTITUDE,2); break;
468470
#endif
469471
case TELEM_FRSKY_LRSSI:
470-
case TELEM_FRSKY_RSSI: MUSIC_PlayValue(MUSIC_GetTelemetryAlarm(MUSIC_TELEMALARM1 + k), TELEMETRY_GetValue(Model.telem_alarm[k]),VOICE_UNIT_DB,0); break;
471-
default: MUSIC_PlayValue(MUSIC_GetTelemetryAlarm(MUSIC_TELEMALARM1 + k), TELEMETRY_GetValue(Model.telem_alarm[k]),VOICE_UNIT_NONE,0);
472+
case TELEM_FRSKY_RSSI: MUSIC_PlayValue(telem_music, telem_value,VOICE_UNIT_DB,0); break;
473+
default: MUSIC_PlayValue(telem_music, telem_value,VOICE_UNIT_NONE,0);
472474
}
473475
}
474476

475477
#if HAS_EXTENDED_TELEMETRY
476478
if (TELEMETRY_Type() == TELEM_CRSF) {
477479
switch(Model.telem_alarm[k]) {
478480
case TELEM_CRSF_BATT_VOLTAGE:
479-
MUSIC_PlayValue(MUSIC_GetTelemetryAlarm(MUSIC_TELEMALARM1 + k), TELEMETRY_GetValue(Model.telem_alarm[k]),VOICE_UNIT_VOLT,2); break;
480-
case TELEM_CRSF_BATT_CURRENT: MUSIC_PlayValue(MUSIC_GetTelemetryAlarm(MUSIC_TELEMALARM1 + k), TELEMETRY_GetValue(Model.telem_alarm[k]),VOICE_UNIT_AMPS,2); break;
481-
case TELEM_CRSF_GPS_ALTITUDE: MUSIC_PlayValue(MUSIC_GetTelemetryAlarm(MUSIC_TELEMALARM1 + k), TELEMETRY_GetValue(Model.telem_alarm[k]),VOICE_UNIT_ALTITUDE,2); break;
481+
MUSIC_PlayValue(telem_music, telem_value,VOICE_UNIT_VOLT,2); break;
482+
case TELEM_CRSF_BATT_CURRENT: MUSIC_PlayValue(telem_music, telem_value,VOICE_UNIT_AMPS,2); break;
483+
case TELEM_CRSF_GPS_ALTITUDE: MUSIC_PlayValue(telem_music, telem_value,VOICE_UNIT_ALTITUDE,2); break;
482484
case TELEM_CRSF_TX_SNR:
483485
case TELEM_CRSF_TX_RSSI:
484486
case TELEM_CRSF_RX_SNR:
485487
case TELEM_CRSF_RX_RSSI1:
486-
case TELEM_CRSF_RX_RSSI2: MUSIC_PlayValue(MUSIC_GetTelemetryAlarm(MUSIC_TELEMALARM1 + k), TELEMETRY_GetValue(Model.telem_alarm[k]),VOICE_UNIT_DB,0); break;
487-
default: MUSIC_PlayValue(MUSIC_GetTelemetryAlarm(MUSIC_TELEMALARM1 + k), TELEMETRY_GetValue(Model.telem_alarm[k]),VOICE_UNIT_NONE,0);
488+
case TELEM_CRSF_RX_RSSI2: MUSIC_PlayValue(telem_music, telem_value,VOICE_UNIT_DB,0); break;
489+
default: MUSIC_PlayValue(telem_music, telem_value,VOICE_UNIT_NONE,0);
488490
}
489491
}
490492
#endif //HAS_EXTENDED_TELEMETRY

0 commit comments

Comments
 (0)