This frame handler at the end of each step of the game loop is the only place the screen is updated (by default); the set background color
block (and set background image
/ sprites for creating blocks / etc) add things that appear on the screen next time it is updated. The game loop docs that were recently added (short discussion here) will likely help in that regard.
In this case you will most likely need a pause no matter what, as you probably would want the background color to stay at each color for more than a single frame (~30-60ms most of the time). I don’t think a wait for synchronization
standard api would work right now, because it would be a VERY easy way to completely lock the game (putting in a on game update
event would cause say to wait until something that will only happen after each on game update
event is finished). If you want to make one for your own programs, it would be easy enough in javascript - add a frame handler at time UPDATE_SCREEN_PRIORITY + 1 and you can have that update a frame id or something of the sort.
Yes, background images are overlaid on top of the background color, so any clear portion of the background image will show the through to the background color. Not sure I see another way for this to work - background color being drawn on top would cause the background image to never be shown - but if you want feel free to create an issue about it or a PR explaining this behavior explicitly in the docs.
Not immediately sure re: neopixels, I haven’t played with them much but would assume it’s just a short delay; the package is here if you want to check, all the code can also be seen in the explorer in javascript:
I don’t see a reason it wouldn’t be splash text
personally, probably an issue for that so we can discuss