I got the idea from John Kortink, who had written a beeb emulator for RISC OS purely for playing Acornsoft's Labyrinth. He'd stripped the emulator down to just what was necessary (or "lean and mean", as he calls it) and optimised what was left. It is simple, and beautiful.
Meanwhile, a programmer I work with had had his own Beeb emulator code running for some time, but never got around to releasing it. He'd done versions for PC, MacOSX, BeOS, PlayStation2 and DreamCast. I already had some experience of it because I'd done the XBOX code for it (we work for an entertainment software company).
So I downloaded the PocketPC development kit from Microsoft's website, and had a go at porting it to the PocketPC so that I could play Thunderstruck on my XDA2. This is partly because I can't afford to buy a Nintendo DS at the moment, but mostly because it looks just plain cool ...
My aim is to embed the disk image of the game in the executable and hard-code all the key remappings so that buttons on the PDA fake keypresses on the Beeb. I'll also do a "snapshot" feature so that if you quit out of a game all the status is saved, and you can go back to playing it later.
These are some screenshots of the emulator running. I've rotated the shots around 90-degrees so that you don't hurt your neck! As you can see, I've chosen to implement things in "landscape" mode because it makes better use of the screen.
The splash screen:
Showing the controls, in mode 7:
Game in progress: