Cool! And I guess writing to the SD is fine too, for save files like a high score table?
How is new code loaded into memory? Is the executable linked with all addresses PC relative, so it can be loaded anywhere into memory or does it have a reserved address space? I'm just wondering how feasible it would be to split my code up into different parts that is loaded at different times, to save Flash Memory.