Changes

Summary

  1. Add OSD background support for the static portions of display elements (commit: 5f5ee33) (details)
Commit 5f5ee33718c28e43d4c9888fe9bf7059aea52214 by github
Add OSD background support for the static portions of display elements
Significantly reduces the time the OSD task spends drawing elements that
are completely or mostly static. The larger the element the more time
savings are realized. Currently implemented support for: - Crosshairs -
Artificial Horizon Sidebars - Craft name - Display name - Stick overlay
Since the static portions are only rendered once, the static elements
add no processing time to the OSD task. As an example, enabling the
above elements prior to these changes results in a total rendering time
of 47us. After the enhancements they take only 6us (basically the
rendering phase minimum overhead). So effectively 41us are removed from
the OSD task.
Opens the possibility to add large mostly static elements with no
additional overhead. An example would be a camera framing element that
might draw a "box" around most of the screen. Previously this would add
significant processing overhead to the OSD task, but now it will have no
impact.
(commit: 5f5ee33)
The file was modifiedsrc/main/io/displayport_max7456.c (diff)
The file was modifiedsrc/main/io/displayport_hott.c (diff)
The file was modifiedsrc/main/io/displayport_msp.c (diff)
The file was modifiedsrc/main/drivers/max7456.c (diff)
The file was modifiedsrc/main/io/displayport_oled.c (diff)
The file was modifiedsrc/main/osd/osd_elements.c (diff)
The file was modifiedsrc/main/osd/osd_elements.h (diff)
The file was modifiedsrc/main/osd/osd.c (diff)
The file was modifiedsrc/main/osd/osd.h (diff)
The file was modifiedsrc/main/drivers/display.h (diff)
The file was modifiedsrc/main/io/displayport_crsf.c (diff)
The file was modifiedsrc/main/cms/cms.c (diff)
The file was modifiedsrc/main/drivers/display.c (diff)
The file was modifiedsrc/main/drivers/max7456.h (diff)
The file was modifiedsrc/main/io/displayport_srxl.c (diff)