I've written some code for NES using MMC1 and SNES still scares me. A game like Mega Man X3, Yoshi's Island and Starfox which all have co-processors must have software for three CPUs with radically different opcodes and addressing modes. Any other platform like that?
PS3 is crazy it has 7 CPU cores I think. (altough they are all identical I think).
Aside of that the 65C816 is an improved 6502, the SPC700 is also heavily similar to 6502 architecture with a few extras, and nobody forces you to use an extra CPU on cart.
strat wrote:
A game like Mega Man X3, Yoshi's Island and Starfox which all have co-processors must have software for three CPUs with radically different opcodes and addressing modes. Any other platform like that?
I think the Sega Saturn and Playstation 1 are the most complex, actually.
Wii and Dreamcast have a main CPU and an ARM coprocessor.
In modern PCs, the CPU is either x86 or x86-64. The GPU is a DSP with an unknown architecture, and a program on the CPU called a driver translates OpenGL, shader language, and OpenCL into instructions for the GPU. Various microcontrollers on the network card, sound card, keyboard controller, etc. have their own instruction sets.
But in fact, the Super NES can have FOUR instruction sets running at once: 65c816, SPC700, Super FX, and some Sharp 4-bit microcontroller.
If you'd count a Genesis with the MegaCD and 32X add-ons attached as one system, then you'd have two 68000s, two SH2s and a Z80. Plus three graphics processors and four audio chips.
Other than that, I guess the Saturn is the most complicated game console I've come across in terms of number of processors.
SNES isn't that bad. Mega Man X3 doesn't have an extra processor. The Cx4 is more like the DSP or something like that. It doesn't execute user code. Yoshi's Island and Star Fox use the SuperFX which is going to be different but I don't think that is that bad. Plus the SNES also has the SA-1 available which is a co-processor but it's also a 65816 type CPU.
Really just the base SNES hardware is not bad at all and I think in ways it's easier than the NES. You have alot more working room on the SNES.
phazmatis, Playstation 1 is actually generally reguarded as being one of the easiest systems to work on cause it is not complex. Atleast compared to the Sega Saturn and probably the N64 as well, the PS1 isn't bad at all. Atleast if you have the real development kit and tools.
Of all the systems I can think of the Sega Genesis + Sega CD + Sega 32X and the Sega Saturn seem like the most complex beasts to get the most out of them. I remember hearing on Sega Saturn some games don't even use both SH2 processors, leaving one to just sit idle. Although there are some game that really seem to make use of Saturn's hardware very well. That's more than can be said for Sega Genesis+CD+32X.