I've recently done a little bit of programming on the SEGA Genesis myself, and it's definitely an interesting experience. It's possible to do a lot of really interesting graphical effects even by cleverly abusing the video hardware. I've managed to make a little raycasting demo including (one) texture, and when I get the time I really want to turn it into a full game.
Some of the most technically impressive things I've seen are in The Adventures of Batman and Robin, Toy Story, and Hard Drivin. I don't have links but they most impressive scenes are pretty easy to find on Youtube.
On 3/5/2018 at 4:06 PM, Anri said:
I think using the Megacd dev kit is hardcore as it comes, but developing for older machines demands a lot of programming skill, and what we take for granted today was a holy grail for programmers back in the day.
I've been mildly interested in the SEGA CD myself, but I can attest that it seems so needlessly difficult compared to the basic console that I've never seriously looked into it. I also feel like the extra processing power is "cheating" a bit in terms of making 3D (or 3D-ish) graphics so it's not really a huge draw for me anyway. The only "retro" console I can think of that might be even more difficult is the SEGA Saturn, which seems utterly incomprehensible to me.
And yeah, it's super interesting to compare developing on this to using modern hardware. On one hand, the lack of dynamic memory allocation, the inability to draw directly to the screen, limited color palates, etc. are not things we need to worry about about when programming on modern hardware. On the other hand, the separation between the general purpose CPU and more specialized but faster video hardware doesn't really feel fundamentally different from how things work now, even if the specifics are very far apart.
On 3/5/2018 at 4:06 PM, Anri said:
Being able to use C helps a lot when developing for classic machines.
Yes, this is very much true. There's a really nice library that I've used called SGDK. In addition to the functionality it provides, it happens to be written almost entirely in C as well, so it's not hard to modify and makes a good reference as well.