Thought I’d have a play with the GP2x development kit. 10 minutes later:

This is Woopsi, compiled using the GP2x dev kit, running in Windows using SDL. Doesn’t quite work yet as there appear to be a few incorrect constants. I need to get hold of an F-200 build of SDL as the version that comes with the dev kit I’m using doesn’t seem to include the mouse handling code.

As a proof-of-concept, though, it does the job. The GP2x loses the second screen, but the screen is 320x240 instead of the DS’ 256x192 so it really only loses half of a DS screen. Having everything on one screen is a bit of a bonus, too.

EDIT:

After some more minor tinkering with the SDL code:

Now that the screens are the right size and aren’t overlapping, the mouse code works in the Windows compile. I need to test the GP2x compile, but I’d need to trim the top screen off first.

I’m not sure what’s happened to the button glyphs…

This highlights a problem in the code - it makes assumptions about the size of the screens. Not particularly helpful if you want to make portable code.

In addition to this, I’ve updated the main VC++ project to match the Xcode version. All of the (very buggy, as per the last post) scroller code is in there.

EDIT EDIT:

Heh, simple. It’s very slow, but when you realise that the entire display is being drawn pixel by pixel to a RAM buffer, then copied pixel by pixel to the frame buffer (plus the non-existent top screen is still being rendered in RAM), you can see that there’s plenty of room for optimisation.

Oh, and the mouse code doesn’t work. Not sure if I need updated SDL libs or if I need to change the way that Woopsi interacts with the stylus on this machine.

And the glyphs are back. They’re missing from the PC version because of the unsigned/signed char problem. I should fix that.