quarta-feira, 6 de novembro de 2024

Como jogar jogos antigos em máquinas modernas? #NostalgiaFeelings

Pessoal,


A gente acaba lembrando de épocas mais antigas quando ainda éramos mais novos com um sentimento bom, lembrando só das coisas boas, esquecendo as coisas ruins. Faz parte da vida: a gente guarda o que aquece o coração!

Como sou mais antiguinho aqui na informática, já tive algumas experiências bem legais com jogos mais antigos quando eles ainda eram atuais :)

Taí um coisa que melhorou com o tempo: os jogos de computador. Não apenas melhoraram de aparência, quanto a retrocomputação permitiu desfrutar de jogos antigos em computadores novos sem a gente ter que usar trambolhos como os PCs de 1990!

Vamos falar de alguns programas legais para emular e jogar jogos antigos.


1 - DOSBox

Esse é bem antigo e é muito bom. Como o próprio nome diz, emula um ambiente para jogos e programas para MS-DOS. Segundo os criadores, emula 98% do processador 80286, 91% do 80386 e 95% do 80387, além de reproduzir bem os modos de vídeo (96% do VGA e TXT e 95% do CGA e EGA) e áudio (96% do ADLIB e 95% do PC-Speaker). Até rede mais básica é reproduzida no BOXDos. Roda bem em MacOS, Windows, Linux, OS/2 e outros.

O DOSBox inclusive emula uma pasta do computador como pasta "C:/" ou qualquer outra que você queira para fazer um "HD" virtual ou um drive virtual de CD. Assim, é possível usar uma pasta com HD, criar um HD virtual, montar uma pasta como unidade de disquete, etc. Dá até para montar um arquivo IMG ou ISO diretamente no DOSBox. São vários comandos para usar em linha de comando (veja o manual inteiro aqui) ou então dá para usar alguns launchers (ou frontends, como queira).

Como o DOSBox consome poucos recursos da máquina pois emula uma máquina bem mais antiga, é até possível usar o DOSBox dentro de uma VM!

Vamos lá! Feito o download na sua plataforma (downloads aqui), execute normalmente.


Repare que aparece como drive inicial o drive Z. Além disso são passados comandos básicos para ativar uma placa de som.

Para acessar o drive C, é necessario montá-lo primeiro. Isso vai variar para cada tipo de computador que você for instalar o DOSBox.

Para Windows, crie uma pasta no próprio Windows (por exemplo: C:/DOSGames) e dê os seguintes comandos no DOSBox:
Z:\>mount C C:\DOSGames
Z:\>C:
Pronto, agora você apontou a pasta "DOSGames" criada no Windows para o DOSBox e ele vai chamar esta pasta de drive C:. Tudo que você colocar nesta pasta "DOSGames" ficará disponível no drive virtual C: do DOSBox.

No MacOS, após arrastar o app DOSBox para os Aplicativos, basta criar uma pasta no seu usuário e aponta essa pasta do mesmo modo. Aqui em casa ficou assim:
Z:\>mount C /Users/castilho/DOSGames
Z:\>C:
E para o Linux é mais ou menos do mesmo jeito:
Z:\>mount C /home/castilho/DOSGames
Z:\>C:
Para montar uma unidade de CD-ROM, o comando é algo como (supondo que você criou uma subpasta CDROM dentro de DOSGames):
Z:\>mount D /Users/castilho/DOSGames/CDROM -t cdrom
Agora a pasta D: é um drive de CDROM virtual!

Ótimo, temos muitas coisas para configurar.

Podemos editar o arquivo "CONFIG.SYS", o primeiro que o DOS carrega, para alterar alguns parâmetros do DOS. Também odemos automatizar isso e criar um arquivo AUTOEXEC.BAT para abrirmos o DOSBox e isso já ser feito automaticamente. O DOSBox simula o AUTOEXEC.BAT usando um arquivo chamado "dosbox.conf". Para acessá-lo, também vai depender do seu sistema.

Para Windows, ele estará numa pasta oculta dentro a pasta "Users". O caminho é o seguinte:
C:\Users\jaymebc\AppData\Local\DOSBox\dosbox-0.74-3.conf
No MacOS estará em:
/Users/castilho/Library/Preferences/DOSBox 0.74-3-3 Preferences
No Linux deve ser em:
~/.dosbox/dosbox-0.74.3.conf
Agora é só abrir o arquivo e, lá no final, acrescentar os comandos para montar a pasta C e o CDROM em D.

Fica assim em Windows e em Mac:

("AUTOEXEC.COM" no Windows!)

("AUTOEXEC.COM" no MacOS!)

Muitas outras coisas podem ser "automatizadas": abrir como janela ou tela inteira, resolução, tipo de hardware gráfico para emular, tipo de CPU, etc...

Inclusive, pode incrementar o AUTOEXEC escondendo os comandos com o comando "@ECHO OFF", apagar a tela inicial com o comando "CLS", criar mensagens como o comando "ECHO" ou o que mais você quiser fazer para customizar o seu DOSBox.

Como as máquinas de hoje são muito, muito mais potentes que esses emulados pelo DOSBox, costuma ser perda de tempo (ou escovação de bit) fazer qualquer outra coisa além de simplesmente montar os diretórios e drives.

Tudo está muito bem documentado no Tutorial e no Manual do DOSBox.

Após isso, é só colocar seu jogo em uma pasta dentro da pasta que você criou, navegar dentro do DOSBox e pronto!

(Doom 1!)



Em poucas palavras: é o DOSBox otimizado! Muito otimizado! 

Esse emulador é um fork do DOSBox mas tem otimizações e suporte para rodar até o Windows 95 e Windows 98!

Você ainda pode fazer tudo que faz no DOSBox (montar drives na unha, etc), mas o DOXBox-X tem menus pra acelerar e simplificar tudo isso. Simplesmente entre no menu e faça isso.

(Simples assim!)

Eles tem um Wiki (aqui) que explica muita coisa, mas grosso modo é o DOSBox com esteróides! :) Achei tão mais fácil configurar e usar que acabei apagando o DOSBox original e deixando só esse fork.


3 - 86Box

Bom emulador também, mais amigável no sentido de ter um menu de configurações bem completo para você rodar uma máquina em específico se desejar, porém tem tanta opção que às vezes é até complexo demais para apenas brincar.

Na realidade, o 86Box é um emulador completo, tipo o PCem, que falarei a seguir, só que bem focado em 8088/8086. Então o 86Box é um emulador completo, tipo um QEMU, mas é diferente do VirtualBox ou VMWare, que são hypervisors do tipo 2.

Ao contrário do DOSBox, onde a gente apenas cria uma pasta e coloca os jogos e aplicativos, no 86Box é necessário ter uma imagem de HD.

Assim, a complexidade é bem maior. É necessário criar uma imagem de disco, instalar um SO (DOS ou até o Windows 95) para começar a usar. É preciso escolher o hardware: CPU, velocidade, memória, placas de vídeo, som e rede, colocar CD, HD, ZIP Drive, etc...


É fantástico, muito completo. Mas eu ainda prefiro, para ter tudo isso, o VMWare ou o VirtualBox.


4 - PCem

Criado em 2007, está na versão 17 e só tem para Windows e Linux. Emula 8086, 8088, 286, 386, 486, Pentium (I, Pro e II) e AMD K6-2 e K6-3, além de diversas placas de vídeo e som.

Do mesmo modo com o anterior, tem muita coisa pra configurar. É bem completo, muito capaz mas também tem instalação de SO para fazer.

Neste fórum aqui tem umas dicas para instalar o PCem. Procurando na internet e em fóruns do assunto, é possível encontrar as roms das máquinas do PCem. No GitHub encontrei esse arquivo com as roms para a versão 17 do PCem (versão atual).

Meu pensamento é o mesmo: se é para fazer muita coisa, prefiro um hypervisor. Se é só entrar e jogar, vou de DOSBox.



Felix Rieseberg, um programador americano, fez um fork de um projeto chamado v86 (um projeto de virtualização do x86 em JavaScript) e criou um programa para rodar o Windows 95 como um programa!

Muito bacana. Funciona muito bem. Só que... não consegui instalar programas lá... :(




É a mesma pegada do Windows 95.app e foi criado pelo mesmo autor. Só coloquei porque achei bonito. Mas não achei prático :(



7 - v86

Legal como os dois anteriores, só que roda em browser. Esse é o projeto de virtualização do x86 em JavaScript que originou os dois anteriores.

O bacana deste é que são dezenas de SO diferentes (FreeBSD, NodeOS, BeOS, Windows, MS-DOS, CP/M e mais um monte que eu nem tinha ouvido falar!). 

É possível escolher por plataformas (Linux, BSD, Windows, DOS, Unix), por interface para o usuário (gráfico ou texto), por status (atual ou antigo), por arquitetura (16 ou 32 bits) e até pela linguagem utilizada para o SO!

Outra coisa bacana aqui é que você pode fazer upload de imagens de CD e disquetes com seus programas para usar nos sistemas.

Funciona até legal, mas acho que é mais para matar curiosidade de quem nunca viu essas interfaces antigas.

(Algumas das opções do v86!)

(Windows 3.1 rodando em um navegador!)

Super legal, né?

O problema: não é seu e não está no seu computador. Se o desenvolvedor cansar, ele apaga tudo e pronto, lascou-se!


8 - Amiga

Criado pela Commodore em 1985, a família "Amiga" foi um grande sucesso nos EUA e Europa. Aqui no Brasil só chegava via muamba, graça a nossa linda, maravilhosa e salutar "Reserva de Mercado de Informática". Eu só vi um Amiga 500 em 1990...

Talvez por isso não seja um sistema que me atraia tanto. Enfim, existem 3 bons emuladores:

 - FS-UAE - Tem versões para Mac, Windows e Linux. Tem um launcher bem legal que facilita instalar tudo. Muito bom.

 - WinUAE - Apenas para Windows. Parece ser muito bom também, com um launcher bonito e funcional.

 - Amiga Forever - Esse é pago, porém inclui várias versões do SO do Amiga, jogos, programas, etc. Assim como os demais, também tem um launcher para carregar jogos e programas. É legal? É! Vale a pena pagar por isso? Acho que não!


9 - Atari

Talvez seja a plataforma com o emulador mais bem resolvido do mercado. O Stella, lançado em 1995, funciona muito bem.

Basta instalar o app e escolher a pasta onde estão os jogos. Aqui, no excelente "Atari Mania", você faz o download de praticamente todos os jogos disponíveis pro Atari 2600. Muito simples.


Meu resumão

Jogos antigos podem ser achados na internet facilmente. Um bom site é o DOS Games Archive e outro é o My Abandonware. Já o Replacement Docs contém manuais e mapas de jogos e softwares antigos. Vale conferir.

Para tirar dúvidas, achei um Fórum bem interessante: Vogons! Tem bons guias de instalação, bibliotecas de drivers, emulações de PC, Macs antigos e consoles, etc.

O Linus, do Linus Tech, fez um vídeo bem legal sobre esse assunto. Ele gostou bastante do PCem. Veja o vídeo aqui.

Para jogos de DOS, vá de DOSBox-X.

Para jogos de Windows, vá de emulador tradicional. Aqui no blog tem tutorial para instalar desde o DOS (veja aquiaqui) até o Windows 8 (veja aqui)!

Para jogos de Atari, vá de Stella.

Para jogos de Amiga, vá de FS-UAE.

Para MSX, aí a coisa complica :) Isso merece um post só pra MSX :))

Uma última dica: um site com vários emuladores de vários sistemas diferentes. Veja aqui!

Enfim, é isso pessoal!

Até o próximo post.