Não sei se ouviram falar, mas os criadores do ZSNES original estão fazendo uma nova versão do seu emulador, chamada de Super ZSNES.
É fantástico ver o pessoal voltando as origens e dando continuidade a projetos que estavam adormecidos há anos. zsKnight e Demo retornaram a atividade, depois de quase 20 anos do projeto estar em um estado dormente mas eternizado na história da emulação.
Como o próprio zsNight disse, o ZSNES foi um dos projetos que deu o pontapé inicial da minha carreira e quero que ele seja o mesmo projeto que vai me levar a minha aposentadoria. Uma frase um tanto que interessante, ambiciosa, e nos deixa cheio de esperanças sobre o que ainda tá por vir no ZSNES. Eu particularmente estou um pouco cético, mas um tanto que otimista sobre o que ta por vir, vou falar mais a respeito disso abaixo, considerando que é minha opinião pessoal e todos podem discordar ou concordar a vontade. Se quiserem debater, sintam-se livres pra comentar.
Um pouco de história do ZSNES
Um dos primeiros emuladores, que surgiram logo após os pioneiros da epoca Snes96 e Snes97, com seu primeiro release ainda pra DOS que mesmo no final da decada de 90 ainda era usado pra uns poucos jogos já que era bem maduro e 99% dos computadores pessoais rodavam Windows 9x onde aplicativos e jogos feitos ainda pra DOS rodavam perfeitamente e diretamente a nivel de hardware sem camada de emulação como hoje em dia ou até mesmo poucos anos depois com a chegada do Windows XP.
Inicialmente o zsnes foi desenvolvido com a ideia de rodar em qualquer computador x86, e tinha sido escrito inteiro em assembly. O seu foco nunca foi a precisão da qualidade e fidelidade do SNES, mas o contrario disso, era conseguir fazer rodar no maximo de computadores possivel, sendo possível emular SNES até mesmo em computadores que na época já eram bem obsoletos como um Pentium 100mhz por exemplo. Era incrível poder jogar seus joguinhos favoritos do SNES no computador, sem a necessidade de usar o videogame. A exploração de roms e navegar pelos alto mares já tinha começado e você podia encontrar as roms todas em sites dedicados da epoca como Emuchina ou emuroms. Eu me lembro até hoje de baixar muitos e muitos jogos com meu modem 56k onde demorava uma eternidade pra baixar um jogo de 3 ou 4 megas, mas valia total a pena. Você podia também começar a encontrar vendendo cds de coleções de ROMS nas barraquinhas de camelô por um preço muito mais barato do que se você fosse baixar tudo pela internet discada onde ainda se cobrava o famoso pulso. (Claro que a gente deixava baixando de madrugada pra nao sair cobrando a toa)
Isso me lembra de ter scripts e download managers que desconectavam e desligavam o computador no horario da manhã onde o pulso voltava a ser cobrado, eu lembro que deixava o napster, getright, downloadzilla e outros aplicativos baixando e de manhã mesmo vendo o computador desligado, dava pra imaginar o dia cheio de descobertas das coisas baixadas que tinham terminado com sucesso ou falahado.
Review e analise
Deixando um pouco a história de lado e voltando um pouco ao Super ZSNES, eu vi uma explosão de pessoas, youtubers falando a respeito da volta do ZSNES, todo mundo achando genial e importante, e de fato é. Mas eu senti que faltou um pouco de criticismo e falar um pouco das falhas e problemas em algumas decisões que foram tomadas e ninguem falou a respeito, as vezes a pedido do zsKnight ou as vezes por estarem esperando algo novo por vir. O fato é que todo mundo aplaudiu mas na hora que eu fui ver com meus próprios olhos, particularmente eu fiquei um pouco, vamos dizer, decepcionado.
A UI nova, apesar de ter um pouco da nostalgia, está estranhamente "modernizada" e eu particularmnete achei que podiam fazer um trabalho melhor usando fontes mais estilo pixelart. Não sei, eu acho que se fosse pra modernizar nesse sentido, podiam adotar a mesma interface que os emuladores standalones estão adotando, como usaram no duckstation, pcsx2, ou até mesmo a que usam no ymir ou no flycast. E se a intenção era trazer nostalgia e relembrar como o ZSNES era, eles deviam ser um pouquinho mais fieis a GUI antiga e não somente colocar o tema de cores igual e um efeito simples de neve.
Outra coisa que eu acho que o pessoal não comentou muito mas eu acho importante ressaltar, é que na epoca do ZSNES há 20 anos atras, todos estavam em uma fase de ainda usar CRT e poucas pessoas estavam migrando pra monitores de LCD, que eram ainda de baixa resolução. Então cabia naquela epoca usar os filtros que arredondam tudo, era até bonito usar filtros como edge ou 2xsai, eles faziam sentido na epoca. Mas hoje em dia com a modernidade, a mimica de replicar um CRT da epoca é muito mais apelativa do que sair arredondando e retexturizando tudo. Acho que essa moda passou, e infelizmente o foco no Super ZSNES está indo nessa direção. Quando eu rodei o Super Mario World no emulador, honestamente achei horrivel os sprites arredondados e mal definidos. Eu como o pessoal do RGBInside costuma dizer, gosto da crocância dos pixels. Na minha opinião, jogar alguma coisa no zsnes, me remeteu mais parecer jogar um remaster mal feito como o Chrono Trigger, Grandia ou algum outro onde os pixels foram todos destruidos por cantos borrados e arredondados não trazendo nada a ver com a experiência e com a real intenção dos artistas dos jogos, deturpando toda o apelo visial dos jogos.
Uma coisa que me agradou e achei interessante e tá indo pra um lado mais "preservador" do que "melhorador" é de usar os sound samples de alta qualidade substituindo os samples usados pra compor as musicas e trilha sonora dos jogos. Esses samples com mais qualidade foram lançados e redescobertos não faz muito tempo e você pode achar vários videos no youtube mostrando como as musicas dos jogos deveriam ser se tivessem a qualidade original dos samples. Esse ponto sim tá mais indo pra um lado de restauração e preservação do que o arrendodamento dos pixels.
Eu honestamente desejo que com toda essa inovação e suporte a renderização por GPU, deixe o pessoal explorar mais o lado ou de fazer hacks mais "modernos" ou tentar restaurar e preservar ainda mais a imagem dos jogos da plataforma. É uma coisa que veremos com o tempo, dependendo da vontade, entusiasmo e dedicação de cada fã e entusiasta que queira fazer algo. Infelizmente creio também que com essa onda toda de IA, vão aparecer muitas coisas que foram "redesenhadas" ou "remasterizadas" por IA e pode deixar a coisa um pouco feia ou inconsistente.
Tem um ponto que é interessante e espero que explorem mais, que é o fato de poder fazer ajustes individuais em cada rom, podendo melhorar, aprimorar e embelezar cada uma delas. Um recurso interessante, mas tem que ser implementado caso a caso é o suporte a wide screen. Como passamos de 4:3 a 16:9, é muito legal ver o jogo tomando a tela inteira e podemos ver que existe um erforço nesse sentido e que esse ponto sim me agrada muito e espero ver boas novidades nesse ponto.
Ninguem tá falando, mas eles fizeram a engine do emulador dentro de uma engine de jogo, no caso unity. Por um lado isso ganha portabilidade, mas na minha opinião restringe muito o que eles podem fazer e vão pra um lado mais de high level emulation do que low level emulation, onde tudo vai ser mais simulado e imitado do que realmente processado como na epoca. Eu sinceramente não gostei de terem usado uma engine de jogos que tem um esquema de licensa pago, e voltado a games comerciais do que usar algo mais puro, free e opensource. Sem mencionar que o ZSNES novo não é open source também, o que dificulta muito a longevidade e preservação do emulador. O que me deixa triste e deixa a comunidade de fora de poder participar ativamente a melhorias que venham não somente da mente dos criadores.
Especificações
Destaques
- Núcleo de CPU e áudio muito mais preciso que o ZSNES original
- Núcleo PPU acelerado por GPU, permitindo:
- Mode 7 em alta resolução
- melhorias especiais por jogo
- Super Enhancement Engine
- Interface clássica com neve caindo, modernizada com:
- maior definição
- UX aprimorada
- Recursos modernos:
- fast forward
- rewind
- save states
- histórico de auto save
- bookmarks de saves
- cheat codes
- quick load
- entre outros
Últimas notas de release — v0.110b
- Correção da tecla ESC para limpar input
- Implementação da emulação S-DD1
- Correções de timing de consumo de ciclos
- Correções relacionadas a:
- gravação SRAM
- espelhamento de ROM
- proteções MMX
- Adicionada opção de caminhos customizados para:
- saves
- <code>.srm</code>
- <code>.cht</code>
- <code>.bps</code>
- Opção para desativar:
- último save state
- histórico de saves
- Melhorias no processamento de transparência
- Melhorias nos dados de enhancement com base em feedback
- Adição de apoiadores Patreon na tela “About”
Próximo foco da equipe
Os desenvolvedores informaram que a próxima versão terá foco em:
- melhoria da qualidade visual
- evolução do enhancement engine
- correção de problemas de prioridade de sprites
- opções de customização da interface:
- cores
- fontes
O que está por vir
Recursos planejados:
- correções de bugs
- emulação de chips especiais:
- DSP1
- SuperFX
- MSU-1
- entre outros
- opções de customização da GUI
- RetroAchievements
- modos de integer scaling
- suporte widescreen customizado para patches
- mais otimizações
- novos tipos de enhancements
- netplay
- outras funcionalidades futuras
Veredito e o que ta por vir
Parece que esse é somente o primeiro momento que o emulador pode seguir, talvez toda essa falta de criticismo seja a esperança de que eles ganhem impulso e com a inercia sigam melhorando e fazendo o emulador ficar cada vez melhor. Uma coisa que somente o tempo vai nos dizer, e claro a adoção e popularidade também influencia muito nisso.

