Found a full-screen Canon "dialog" that's just black and displays no text or graphical stuff. It's similar to DisplayBusyOnScreen - that means only one instance of it can exist, further attempts to display it again are ignored.
Seems like it doesn't exist on older DryOS (and VxWorks) cameras.
It's in the same library as DisplayBusyOnScreen (assert indicates the same source file). Can be found almost right after DisplayBusyOnScreen, UndisplayBusyOnScreen.
Examples (display_blank_screen, undisplay_blank_screen):
a3200 100d: 0xff8a1974 (seems unreferenced), 0xff8a1a14
sx280 102b: 0xfc14a2af, 0xfc14a327
m10 110d: 0xfc3274a1, 0xfc327541
Stuff I tried (sx280):
- display_blank_screen
- fill opacity buffers with 0 (just once)
- overlay disappears, viewport buffers (play or rec mode) become visible (and stay so)
...
- undisplay_blank_screen
- Canon overlay comes back
Above doesn't work from scripts (because CHDK issues several screen redraws while running scripts).
From memory, certain Canon graphical elements (e.g. low battery symbol) are positioned on top of any other screen elements, so those can disrupt the experience.
What could we do with the extra full screen dialog?
- fire it up in ALT mode and enjoy flickerless display
When a full screen dialog is visible, it's possible that changes to the source bitmap overlay (likely RGBA on DIGIC 6) are automatically copied onto the YUV and opacity buffers (this is just theory, may not actually work)*.
- display it when other full screen CHDK activity is going on (zebra, edge overlay, etc)
Update.
Turns out, DisplayBusyOnScreen and display_blank_screen use the same dialog resource and event callback. The resource contains (reference to) a hand icon and the "Busy" text, display_blank_screen hides both before displaying the dialog. No luck finding a background color property yet.
edit:
* Indeed, that's not working (tried on a DIGIC 4 cam).
edit2:
Pretty much everything written above can be disregarded. The firmware always redraws the whole overlay when it moves the focus rectangle around, even when the black dialog is on top and covers everything.