ColecoDS is an emulator written for the DS/DSi that emulates 11 different systems all based around common hardware - one of those systems is the CreatiVision. The nice thing about the DS/DSi is that the native screen resolution is 256x192 - that should sound familiar to anyone who has programmed for the TMS9918/9929 chip.
I've had CV emulation in place for almost a year now, but the emulation wasn't all that accurate. Thanks to the great minds here on the forums and thanks to Luca's site, I've been able to figure out tons of insights and get the emulation much more accurate.
I'm a few days away from launching version 8.1 on my github site which will have all the fixes in place: https://github.com/wavemotion-dave/ColecoDS
The CreatiVision driver of this emulator supports the following:
- ROMs up to 32K loaded either Legacy A/B, Linear (up against C000h) or 32K Bankswapped (as might be used on the MegaCart) - the emulator takes its best guess which is almost always right but the user can override how the ROM is loaded.
- CSL emulation with RAM at 4000h to BFFFh and the ability to load either of the released 16K CSL bios ROMs (not provided - users can find it on their own)
- Simplified keyboard overlay which is fine for most of the commercial games and a custom keyboard in the CreatiVision style using the touch screen.
- The ability to load ASCII .BAS listings directly into VDP and run them via one of the four major released BASIC revisions.
- All games run full framerate using the PAL standard with reasonable sound sampling at 22KHz (not perfect, but fine for handheld use).
- High Scores - up to 10 for each game with date/initials
- Save and Load State so you can snapshot your position and come back and pick up where you left off.
My friend does the graphic design and he is still tweaking the CV keyboard/keypad layout. It's really nice, IMO - but we had to take some creative liberties due to the small size of the DS touch-screen.