Here is an improved version of the code I am using to copy ROMs from flash memory to SDRAM and execute it from there.
I used a variant of this for the NES implementation and I am using it for the Acorn Atom port.
This version correctly wakes up the flash memory, so it does not need to be run from flash or built with the icepack -s flag.
Getting the ROM into the flash memory is still an issue, as the firmware does not yet support it. I currently have a NES game at address 0x40000 and the 16k minimal Acorn ROM at 0x70000.
There are instructions on how to use my SaxonSoc writeflash utility to write a ROM binary to flash memory in my NES post.
The retroflash example wakes up the flash memory, reads the ROM and writes it to SDRAM. It then reads it back slowly and displays each 16-bit word on two 8-led strips.