Yea, surfaces are the way to go.
---
I try to explain it further with that marquee example (see image below).
Your ROBOSPIN theme is resolution independent - that means all scales up or down beautifully to fit the screen (layout) resolution.
So if your CRT is displaying 640x480 layout - your marquee width in pixels (after the whole theme scales to fit 640x480 resolution) is 220px.
How can I know? I've just took your screenshot, resized it to 640x480 and measured marquee width in pixels.
--
So... Your marquee on 640x480 display will ALWAYS be displayed in 220px width. It doesn't matter if the source marquee size is 400px width or 3000px width. It will always be scaled to display in 220px width.
That bring us to the conclusion that your marquee could be INITIALLY resized to 220px width - and I'm talking about the artwork that is in /marquee folder - without loosing any image quality, because it will finally be displayed as 220px image.
And finally... this maybe (just maybe) when applied to all graphical resources could help with RPi performance - because you'll feed your RPi with smaller images = faster loading time, less memory used.
---
The same applies to the theme resources too. For instance my NEVATO theme has HUGE resolution artwork (like cab image and all overlays) aimed for 1920x1080. And this could be easily resized to 30% of it's original size for 640x480 screen. But I think that theme graphics resizing is not that important for performance as it is not refreshed on every game title change - but resizing all the artwork could do the trick.
---
But like I've said - it's a far stretch. And my assumption is based on my xbox 1st gen experience with interface optimization - but I was dealing with another problem, because xbox has only 64MB of ram
But again - it's relatively easy to check. Just scale down all of the artwork to 50% with batch resizer and see if it is making any difference in performance.
I know that is not the best approach (resizing artwork) and it won't solve the problem for the users with RPi hooked up to HD tv - but maybe it can pinpoint the performance bottleneck and lead to AM optimization (if necessary).
---