Nerdstalgia

While I was developing the first version of Instantanea I had a sudden idea: there should be a retro camera application too! I meant retro in the retro-computer way, not in the lomo-helga-etc way. I searched, but there wasn't any such application (apart from some app that produced some sort of libcaca ASCII renderings). So of course I thought: I'll build it myself!

I finally got some time at the end of January and made some research on applications that somehow post-processed pictures. To my surprise, I couldn't find a single one that did anything in real-time. Or at least, something that looked like real-time. All of them had the classic progress bar once you had selected a bunch of options, which wasn't really satisfying in my opinion. Therefore I decided my app would do its post processing in realtime (or at least attempt to!).

And finally, here it is!

At its present version, it can simulate the output of Commodore 64, ZX Spectrum, Amstrad PCW, CGA (modes 0 and 1), Hercules, EGA and Gameboy. Of course, lots of systems are still missing! I've already got a list of petitions, so feel free to add yours in a comment. I'd love to see if I can recreate your favourite computer or console too :D

It's been quite a funny experience --specially doing all the research about old computers' graphics peculiarities, watching demos and intros, examining old video games, browsing old computer magazines... true heaven for a kid of the eighties!

I've also learned a lot about several Android and not purely Android techniques, such as Handlers, Messages and Queues, the camera preview oddities, YUV, planar vs linear vs semiplanar, profiling & traceview, etc... I'll probably write about them in the upcoming future, to keep this post short.

And of course I've also learned a thing or two about doing image processing with (mostly) integer math only, which is quite a feat for people used to powerful desktop graphics programming like me, where computer cycles are pretty much "for free" :-)

Finally, I made all the graphics, from scratch. Yes, you read that well--they are not copied "from the Internet", but lovingly hand-drawn by me with Inkscape. Except the logo --which I drew with Grafx2! I then ran it through a custom Javascript tool to convert it from PNG to SVG, so that I could then generate versions of the logo in different sizes. Aaah, the power of Canvas! :-P

The bad side? This irresistibly makes me want to play retro games. I want to play them all, specially the ones I missed back then, but are now considered legendary! "Documentation", you know. It's terrible. I'm doing my best to overcome this urge; so far I've managed to avoid installing any emulator, but the temptation is there, and it's keeping strong...

Sigh.

So... just in case I succumb, which game(s) would you recommend me? Top in my list is Last Ninja 2 in the C64. In fact I already finished it back in 1990, but I was using the famous Amstrad PCW, and obviously it didn't have sound. I want to play the C64 version because at the time it was considered the best one thanks to the graphics and music (if you have a look at the screenshots at the MobyGames page, you'll see C64's graphics were in colour whereas the Amstrad CPC's and Spectrum's were mostly monochrome).

I'm also curious about Gianna Sisters. I wonder what's about that game that prompted so many people to version its music...

Heh, maybe I managed to instil into you that same desperate need for playing old games. Ha ha! }:-)