I tried making some pre-scaled sprites, and the ROM footprint had to be pretty large to afford enough size steps for reasonably smooth motion as the train moved past objects. Even then, all that sprite drawing was starting to dip the frame rate.
So, I experimented with a pre-rendered approach, and that was a huge unlock. Eventually I was able to wrangle it into something that I think worked even better in the end! The pre-rendered video based approach allowed way more elaborate detail and I didn't have to worry about frame rate anymore.
Playdate got STM32F746 (ARM Cortex-M7F) at 180 MHz. 320 kB SRAM (and 16 MB of other RAM, maybe PSRAM?). DSP and saturation instructions are included.
The display is 400x240 1bpp.
Surely that's more than enough juice for sprite scaling? (Might need to copy graphics data to SRAM and even to do it in tiles for better performance.)
Although your video based implementation is pretty cool.
For a game like this where the path is limited and known that’s a very smart approach. Neat.