50,12 → 50,12 |
uint16_t heading_home = (naviData.HomePositionDeviation.Bearing + 360 - naviData.CompassHeading) % 360; |
write_char_xy(17, top_line, 0xa0 + heading_fine_conv(heading_home)); |
|
if (naviData.Altimeter > 300 || naviData.Altimeter < -300) { |
if (naviData.Altimeter > 200 || naviData.Altimeter < -200) { |
// above 10m only write full meters |
write_ndigit_number_s(22, top_line, naviData.Altimeter / 30, 4, 0); |
write_ndigit_number_s(22, top_line, naviData.Altimeter / 20, 4, 0); |
} else { |
// up to 10m write meters.dm |
write_ndigit_number_s_10th(22, top_line, naviData.Altimeter / 3, 3, 0); |
write_ndigit_number_s_10th(22, top_line, naviData.Altimeter / 2, 3, 0); |
} |
|
draw_variometer(27, top_line, naviData.Variometer); |
82,7 → 82,7 |
if ((COSD_FLAGS_RUNTIME & COSD_WASFLYING) && (COSD_FLAGS_MODES & COSD_FLAG_STATS)) { |
uint8_t line = 3; |
write_ascii_string_pgm(2, line, (const char *)(pgm_read_word(&(stats_item_pointers[0])))); // max Altitude |
write_ndigit_number_s(18, line, max_Altimeter / 30, 4, 0); |
write_ndigit_number_s(18, line, max_Altimeter / 20, 4, 0); |
write_char_xy(22, line, 204); // small meters m |
write_ascii_string_pgm(2, ++line, (const char *)(pgm_read_word(&(stats_item_pointers[1])))); // max Speed |
write_ndigit_number_u(19, line, (uint16_t)(((uint32_t)max_GroundSpeed * (uint32_t)9) / (uint32_t)250), 3, 0); |