I'd be interested in seeing that new drawing system. I was thinking about using the RGBA buffer(s), but have not attempted to make an implementation.
If yours proves to be a usable alternative, we could remove the D6 related mess from core/gui_draw.c (and elsewhere) and implement the new system on all D6 ports.
This is funny, I just felt 4 years behind and 3 steps ahead
kitor from Magic Lantern here. One of our Discord members just sent a link to this thread, which I somehow missed during my research.
From what I saw in CHDK source code, it still uses YUV to render things on Digic 6, maybe that's why I stopped digging.
Anyway, I did research on Digic 7 / 8 / X EOS and found that they not only have this RGBA buffer, but can support many of them (which is not exercised by Canon until Digic 8 ).
Details are in this thread:
https://www.magiclantern.fm/forum/index.php?topic=26024I suspect Digic 6 will be similar, not sure if it has layers support, but with RGB buffer used to draw GUI and information that at lest one Digic 6 EOS has XimrExe call - I'm pretty sure that basic rules should apply there too.
[e]
And I just saw this thread, I was even mentioned there. It is funny to find how much research got duplicated
But let me switch to mentioned thread.
https://chdk.setepontos.com/index.php?topic=12788.0