Lo cierto es que la SNES es bastante compleja, pero eso debido a su potencia, ya que permite hacer muchas virguerías si la conoces bien a fondo. Siempre podrás hacer un juego con los gráficos al estilo de la NES sin mucha complicación (de hecho, tan fácil como hacer juegos para la NES, ya que son "casi" compatibles), pero no tiene mucho sentido hacerlo así teniendo la NES. Si vas a programar en la SNES, lo suyo es aprovecharla todo lo que se pueda.
Que yo sepa, no había ningún kit de desarrollo para third-parties, pero creo que Nintendo proporcionaba unas librerías para funciones repetitivas (acceso a VRAM, DMA, audio) que podían usar como apoyo. Y me parece raro que el apoyo de Nintendo se limitara a esto porque buena parte de las posibilidades de éxito de una consola nueva el día de su nacimiento pasan porque los programadores puedan hacer juegos fácilmente, sin tener que hacer todo desde cero cada vez que se enfrentan a un nuevo diseño. Hay que recordar el caso de la Saturn, que parece que era una auténtica locura programar para ella con esa arquitectura de dos micros...
socram8888 escribió:Tercero, la CPU de la SNES es mediocre tirando por lo alto. Es muy lento (3,6MHz), y además es de 16 bits frente a los 32 bits y los 7,6MHz de la MD, por ejemplo, y además ten en cuenta que un 68000 tal cual es mucho más sencillo de gastar que un ASIC especial de Nintendo
Hombre, que sea lenta no la convierte en más difícil de programar, pero sí es verdad que es un handicap importante.
Por cierto, que el 68000 no es de 32 bits, no confundamos que sus ALGUNOS de sus registros internos sean de 32 bits con que sea un micro de 32 bits: el bus externo, la arquitectura de las instrucciones y la ALU son de 16.
Y el ASIC no es especial para Nintendo ni mucho menos... de hecho el micro es un 65C816 de Western Digital, pero está insertado como un core en la CPU ya que los decodificadores de los buses están también metidos en el mismo chip, pero el micro que ejecuta las instrucciones es el mismo que un Apple II GIS estándar, no propietario de Nintendo.
socram8888 escribió:Cuarto: como la CPU es más lenta, muchas veces se necesita un coprocesador de apoyo (como el chips de descompresión o mappers, o incluso el famoso Super FX), con lo que además tienes que aprender a manejar estos addons
La SNES no tiene "mappers"; y sí, aprender a programar en los chips de apoyo es una locura... por eso casi siempre se usaban en juegos de la propia Nintendo que tenía mucha más experiencia con ellos.
socram8888 escribió:Quinto: el audio está controlado por un ASIC especial también, en lugar de por un procesador normal y corriente (el Z80 en la MD, aunque el 68k también tiene acceso directo al audio)
Lo mismo que para el caso del micro: no es especial de Nintendo, es de Sony y es genérico, se usaba en muchos otros sitios.
socram8888 escribió:Sexto: hace falta un chip de CIC, lo que requiere usar un PIC, encareciendo el coste de la producción del cartucho, o modificar la consola internamente, difícil para quien no sabe de esto. En la MD sólo hay que realizar una simple escritura ("SEGA" al registro $A10000, conocido como TMSS), y además hay un registro que indica el tipo de consola, por lo que el programa se puede adaptar automáticamente a la versión de la consola, con lo que sólo hay que fabricar un tipo de cartucho para todas las consolas
Bueno, esto es cierto pero el CIC ni se programa ni influye en la complejidad de la programación para la consola; es cierto que dificulta mucho hacer cartuchos "pirata", pero no interviene para programar.
socram8888 escribió:Y vamos, sólo tienes que ver la potencia que requiere un emulador de SNES comparado con uno de MD (que se puede poner en un sólo chip, un GOAC, cosa que con la SNES no es posible), cuando la potencia a nivel técnico es similar
Esto es curioso, sí, pero eso se debe a que si quieres emular con perfección 100% el hardware, necesitas tener muchas cosas en cuenta, sobre todo lo de las diferentes velocidades de los buses. Para programar eso hace falta tener sincronizado los tres buses y eso gasta tiempo de emulación. Luego además está el tema de la generación de las imágenes en pantalla, que es un auténtico coñazo en la SNES: enventanado de capas, suma de capas, substracción de capas, transparencias, HDMA....