[SUPER NINTENDO] Hilo oficial.

@Señor Ventura el tipo de memoria que usa? o por como tiene el bus? hace poco se estaba hablando que el problema de super era que no alcanzaba a actualizar la vram y por eso se recurria a usar franjas negras, o reducir sprites, tambien animaciones. pero no se como han hecho con otros juegos, sin usar chips de apoyo lograron meter sprites grandes, por ahi un juego de rol se entiende porque va todo pausado.
Yo en la época siempre pensé que era la mas potente de las 16bits y tenia sentido ya que salió al menos 2 años mas tarde que su competencia directa.

Tenia toda la prensa comprada cacareando las capaciades tecnicas, que tenia los sprites mas grandes, que la tira de sprites en pantalla a años luz de la competencia, que si el modo 7 que hacia scaling y rotaciones de sprites, los colores de pantalla, luego el sonido alucinante, el superFX y la resolución mucho mas grande de la competencia.

Con los años me he dado cuenta que practicamente todo eran trolas o medias verdades, aún así la consola tiene muchas fortalezas y la disfruté en su día aunque aún más después de los años gracias a traducciones de sus fantasticos RPG, pero cuando he probado toda la competencia en profundidad (PCE y MD) pues me di cuenta que no era ni muchisimo menos lo que nos vendieron en cuanto a hardware.

Para mi pertenece a la mejor generación de consolas dónde es necesario tener todas porque todas aportan algo, si SNES hubiera sido la bestia parda que tendria que haber sido por llevar 2 años de retraso se hubiera comido a la competencia tanto que casi se hubieran quedado en anecdota asi que casi mejor que no haya sido así y tengamos la variedad y calidad que tenemos.

Un Saludo.
cristus escribió:@Señor Ventura el tipo de memoria que usa? o por como tiene el bus?


La wram obliga al resto del pipeline a adaptarse a su frecuencia cuando es usada específicamente.

Posiblemente el dma funcione realmente a 2,68mhz de forma establecida, pero hace años leí que se especulaba que este (es decir, el bus), tenía el ancho de banda que tenía por culpa de tener que adaptarse a la frecuencia que impone la wram, pero es tan fácil como ver a que velocidad transfiere a una sram a 3,58mhz desde el cartucho, y se habría descubierto el pastel.

Editado: parece que se afirma que el dma si funciona a 3,58mhz pudiendo alcanzar casi 9KB por frame, pero que la frecuencia de la wram la mantiene a 2,68mhz, alcanzando sus poco mas de 6KB por frame. Habrá que indagar un poco mas.

cristus escribió:hace poco se estaba hablando que el problema de super era que no alcanzaba a actualizar la vram


Eso dependerá de lo ambicioso que se sea, porque eso no va a ser así en cualquier caso. Con snes se cometían muchos fallos... se underclockeaba la cpu, se utilizaba la página cero para simular comportamientos de otras cpus, se usaba la cpu para descomprimir datos de la rom porque no pocas veces los samples que usaba el spc700 obligaba a necesitar roms mas grandes (y la solución era, como digo, comprimir en lugar de otorgar roms mas amplias)... todo esto lo juntas, y obtienes como resultado una cpu trabajando mas tiempo del que debe.

Cpu y dma comparten bus, y si la cpu está activa demasiado tiempo, le deja menos tiempo al dma. Ahí tienes un motivo real de por qué se necesitaban emplear bandas negras. También influye la propia potencia del procesador, pero no es correcto decir que era un mal procesador, porque si que proporciona una potencia aceptable, el problema es que era potente, pero sin margen para hacerle esas perrerías sin costarle un handicap.


Ahora, cuando hablamos de accesos a la vram, hay que distinguir entre sprites y planos.

La snes tiene la particularidad, por como almacena los tiles en memoria, de manejar diferentes tamaños según su profundidad de color. Como digo, esto afecta a los planos únicamente.

Ya existió un intenso debate sobre la imposibilidad posibilidad de enviar tiles de 3BPP ahorrando un 25% de tiempo de transferencia con respecto a 4BPP, y además puede enviar tiles de 2BPP necesitando solo el 50% del ancho de banda.

En definitiva, el problema de no alcanzar a actualizar la vram dependerá mucho de lo que hagas, de como lo hagas, y de cuanto quieras actualizar, porque SI tiene un ancho de banda generoso.

cristus escribió:y por eso se recurria a usar franjas negras, o reducir sprites, tambien animaciones. pero no se como han hecho con otros juegos, sin usar chips de apoyo lograron meter sprites grandes, por ahi un juego de rol se entiende porque va todo pausado.


Este ejemplo si desactiva algunas scanlines, pero se puede mejorar el resultado. Si usas planos a 2 o 3BPP, el rendimiento con las animaciones aumenta.


@Señor Ventura gracias por la explicación,
el chip de super ya estaba pensado para ahorrar memoria, porque son canales adpcm, pero esas descompresiones las hacia el cpu entonces? hay muchos juegos que para cambiar de sample para la música, se para el juego completo.
me decis que el acceso a memoria por frame es de 6kb, pero para trener una referencia, en otras maquinas de que valores hablamos? por ejemplo pc engine, megadrive, neo geo....
cristus escribió:@Señor Ventura gracias por la explicación,
el chip de super ya estaba pensado para ahorrar memoria, porque son canales adpcm, pero esas descompresiones las hacia el cpu entonces? hay muchos juegos que para cambiar de sample para la música, se para el juego completo.
me decis que el acceso a memoria por frame es de 6kb, pero para trener una referencia, en otras maquinas de que valores hablamos? por ejemplo pc engine, megadrive, neo geo....


Las descompresiones de los samples de audio las realiza el spc700, a lo que me refería es que de por si el audio cuesta una buena parte de la rom, así que los graficos podían comprimirse para no conceder roms mas grandes, y estas si las descomprime la cpu principal, la cual es una tarea adicional que retrasa el momento de dejar libre el bus para el dma, quedándole menos tiempo para transferir.

6,32KB es el pico máximo que nunca vas a aprovechar en situaciones de juego normal (6,14KB realmente debido a una condición de la wram para alimentar las celdas que contienen la información, ya que integran "micro condensadores" que necesitan renovar su carga, parando durante 40 ciclos a mitad de cada scanline, y obligando a todo el sistema a detenerse, también al dma), a menos que planifiques otro tipo de comportamiento, como ir a los 30 fps, cpu externa, bandas negras, etc.

El dma a 3,58mhz da una tasa de 8,89KB/frame, pero por culpa de la wram está limitado a funcionar a 2,68mhz, o directamente lo planificaron para que funcione así. Según leo hay formas de conseguir que transfiera a 3,58mhz, pero se me hace raro que pueda ser posible.

Se que hay áreas de la wram cuyo acceso de lectura/escritura permiten a la cpu a funcionar a 3,58mhz, sin underclockeos, y bien pensado, supongo que esto no podría suceder si la unidad dma (encapsulada junto al 65816 en el 5A22), no estuviese funcionando también a 3,58mhz... en cuyo caso una sram rápida desde el cartucho solucionaría todos los problemas puenteando la wram, pero no he leído documentación al respecto, así que es algo que asemejo mas a una teoría que a una forma de funcionar comprobada.


Prefiero no hablar de otras máquinas en el hilo de la snes, pero puedes preguntar en otros hilos.
@Señor Ventura el chip SA-1 y super fx tienen una muy pequeña ram, pero mas rápida, eso permite mejorar la tasa del dma?
cristus escribió:@Señor Ventura el chip SA-1 y super fx tienen una muy pequeña ram, pero mas rápida, eso permite mejorar la tasa del dma?


En teoría es a eso a lo que se refiere, pero no es necesario un procesador de apoyo.

Recientemente se ha modificado el another world/out of this world para que trabaje sobre el frame buffer en una sram a 3,58mhz desde el cartucho, en lugar de desde la wram utilizando pequeñas áreas a esa frecuencia. Sin procesador de apoyo.

El resultado son 30fps constantes manteniendo la resolución, y no me extrañaría que aún quede margen para mas.

Lo que me fascina es la snes pal, que presumiblemente alcanzaría en esas condiciones los *casi* 21KB por frame. Una burrada. Habria que ver que pasa con esto.
2606 respuestas
149, 50, 51, 52, 53