I did notice the tripling (but not being an embedded bod at heart I just burn RAM); however I thought I'd put it up for review as a fairly non-intrusive patch first.

It's actually my first 'kernel' code smile I was frankly astonished that it worked first time!

I was considering restructuring the animation code in empeg_display.c - maybe display_frame(*buf, *frame) or something?

I wondered about having just one set of animation routines full stop - but empeg_display seems to use a timer callback whereas the game/bootg uses an update-after-period. Like I said though - just getting it to work was nice smile

About moving the switch... what about changing the '_move' functions to accept a button value (eg IR_RIGHT_BUTTON_PRESSED) rather than just a +/- based on KNOB_LEFT/RIGHT?

That may allow a tidy up of the UI and also allow the use of left,right,down keys as well as knob presses (which can be a bit fiddly and sometimes rotate the knob before a press happens).

The main thing is it's a useful (or at least showy) feature that I quite like smile
_________________________
LittleBlueThing Running twin 30's