So I've been struggling to realize my game ideas on the 32X for almost a year now. I can get the basic game working now. Still many ways to optimize, let alone gameplay, graphics and sound work that is needed for a real game. There are so many limitations on the 32X that I do get frustrated. Since I also own a PSX (I sold my family's Sega Saturn), I am looking if it would make more sense to jump ship to the PSX dev community?
To continue developing for 32X I need to make the following investments:
- Need Sega Gen A/C adapter
- Need flash cart, such as Mega Everdrive ($140 -$209)
- I haven't used my Sega or 32X in years, so it may not work
On the software side, 32X has many limitations (probably one reason why it wasn't a successful platform). I am really interested in the 2D style graphics of 16-bit and old arcade games. For PlayStation think Castlevania:SOTN, Street Fighter Alpha or Suikoden.
From my perspective, 32X has cons to making really good 2D games:
- No basic software library. Everything from drawing a sprite to playing a sound you need to figure out how to do yourself.
- No hardware support for "cool" effects, transparency, sprite scaling, rotations
- Unlike 16-bit consoles, and some arcade hardware, no layers or sprite HW support: There are just framebuffers that you draw graphics onto, this makes things like scrolling layers, parallax difficult and you have to redraw most of the screen each frame to update sprites against the background.
- Heterogeneous CPUs: The 32X has dual Hitachi SH2 processors. The console as a whole is supposed to work with the Genesis' Motorolla 68000. There are other sound chips on the Genesis as well, let alone Sega CD. Compiling is complex and requires various custom GCC toolchains you have to build yourself. The Genesis software libraries (SGDK) are not compatible with the current code people have written for 32X. Handling the parallel processing nature of programs is another challenge to spread the work efficiently, avoid deadlocks, caching issues, bus restrictions. I can get away without a lot of assembly knowledge, though I am limited, to less efficient C code.
- Without using bankswitching, cartridge ROM size is about 5MB. That's not really a lot of uncompressed image data for 2d games. The most compact format is 8bpp images (1 pixel = 1 byte). you can compress the image data in ROM, but that means you need to decompress into RAM, but only 256KB ram is too small to hold many graphics either.
- Few tools exist for converting images or sound data into formats that can be processed and used by 32X hardware. Its sort of frustrating to have to build the entire infrastructure, you get the sense most in the homebrew scene don't bother with more than a few token images or sounds, rarely does anyone make a real "game" unless it's a port of a PC game.
So my question to you all: Compared to 32X, How does PSX Homebrew development compare both at a hardware level as well as a homebrew support level? Especially with 2d type games?
- How much "investment" would I need to run games on real hardware?