Como é que as pessoas fazem emuladores de videojogos?
Emuladores são criados fazendo primeiro versões de "software" dos componentes de hardware. O processador Z80 era um chip em jogos de vídeo populares e antigos. Pessoas inteligentes pegaram o Z80 e criaram uma versão baseada em software do código.
Após eles terem os chips de hardware abstraídos em versões de software - eles precisam então despejar o "sistema operacional" do hardware original. Às vezes isso é chamado de BIOS. Esta é escrita pelos programadores originais (Nintendo, Sony, et al) e é muitas vezes protegida severamente contra o dumping/engenharia inversa. Eles também são muito bem guardados e quase NUNCA são incluídos com o emulador devido a razões legais.
Bom exemplo é a BIOS Sony Playstation 1.
Após você ter o hardware reconstruído como "núcleos" de software e uma BIOS - os autores do emulador têm que quebrar a proteção no armazenamento do jogo para que o código do jogo ou "roms" possa ser despejado e carregado na nova máquina "virtual". Eles também podem ter que escrever código para simular o próprio meio (CDROM, GDROM, 1541 Disk Drive) que pode no ITSELF exigir versões "software core" de chips internos.
Even depois de tudo isso - há coisas que precisam ser descobertas; muitas delas sendo pequenos segredos ou técnicas "não-padrão" usadas pelo hardware original. Isto pode ser o timing entre chips (veja o jogo arcade do Taito Zookeeper) ou hardware indocumentado ou até mesmo apenas alguma condição estranha que só ocorre quando uma condição muito especial acontece dentro do hardware real.
No final, você tem um emulador. É uma quantidade considerável de trabalho - independentemente da plataforma ou mesmo de quantos "núcleos de software" já tenham sido criados antes.
Então ... quando seu jogo favorito não funciona direito em um emulador; dê uma pausa ao(s) autor(es). Não é tão fácil como parece.
Artigos semelhantes
- Como é que os emuladores de consolas Nintendo estão mais avançados do que os emuladores PS/Xbox?
- Os emuladores usam uma GPU dedicada? Os jogos em emuladores usam GPU?
- Que idade é que tem para jogar videojogos? Jogar videojogos com mais de 30 anos faz de um perdedor?
- Por que as pessoas não podem fazer jogos como o Pokemon Sun and Moon em vez de fazer emuladores?