Nas últimas semanas dois hackers chamaram a atenção da comunidade gamer (e da Tectoy) quando lançaram atualizações e modificações no novo Mega Drive, como a possibilidade de carregar imagens dos jogos no menu principal e melhorias na parte sonora.

Conversamos com o Neto (confira o seu site pessoal) e o Rafael (confira seu canal no YouTube) que nos deram mais detalhes sobre o seu incrível trabalho na programação do hardware do novo Mega Drive.

Ћαckєαηdø ø мєgα Drivє #1 – ηєŧø

Esrael Loureiro Guimarães Neto

Olá Neto, faça sua apresentação, qual sua formação, experiência em hardware, etc.

R – Meu nome completo é Esrael Loureiro Guimarães Neto, inicialmente autodidata, desde os anos 90 comecei com eletrônica (manutenção de TVs e rádios) e em 1999 tive a oportunidade de trabalhar em uma empresa de manutenção de hardware de computadores como estagiário na qual ganhei experiência e fiquei até 2003, quando recebi uma proposta de trabalho em outra empresa na qual estou até hoje e me especializei em programação e obtive promoção.

Como foi sua primeira experiência com hacking? 

R – Minha curiosidade inicialmente se deu devido a um cartucho de Sonic 2 Beta que me veio por acidente, pois havia alugado um cartucho do Castle of Illusion original e o chip havia sido trocado, mas ao invés de reclamar com o dono da locadora ofereci a compra, já que aquele jogo tinha fases diferentes e na época tinha a revista com fotos. Nesta época passei a acessar um Fórum antigo conhecido como “Area 51” onde tinham vários tutoriais e hacks simples, então comecei a estudar os materiais e entender como funcionava o Mega Drive.

Qual hack desenvolvido por você é seu favorito? E pelos fãs?

R – O Sonic 2 Delta, hoje é considerado até simples e tem gente que critica, mas o primeiro port de objetos entre jogos em binário foi de minha autoria e causou o maior alvoroço no “Area 51”, pois fiz um hack simples onde exibia os nomes das fases do Sonic 2 Beta usando left overs do Sonic 1 que existem neste ROM, além de portar objetos de outros jogos do Sonic, e muitos hackers na época faziam alterações simples dentro do próprio ROM e não pegando objetos de outros em binário e portando para os demais. Hoje temos ferramentas e conhecimento para desenvolver objetos, inclusive as últimas versões do Sonic 2 Delta são feitas em assembly e não mais em binário.

Foi muito complicado trabalhar com o hardware do novo Mega Drive?

R – O primeiro passo foi descompilar o BIOS dele para poder analisar o código e entender o que fazem as diversas requisições de hardware, pois como não temos a documentação do hardware é tudo feito na tentativa e erro. Algumas partes do código você ainda consegue testar no emulador (compilei uma versão especial que roda em emuladores), mas outras tem que ser no próprio Mega Drive.

O que o Rafael fez que lhe ajudou na criação de novas atualizações?

Ele testou meu firmware reportando alguns problemas encontrados na identificação das imagens do jogos, fornecendo detalhes importantes que ajudaram na identificação e correção dos problemas encontrados, assim como fornecendo sugestões dos valores padrões para os clocks dos processadores, não posso deixar de citar que apesar de estar usando os parâmetros do Rafael como padrão, tivemos uma comunidade inteira testando diversos valores e reportando os resultados encontrados, uma vez que disponibilizei um depurador para quem tivesse interesse pudesse modificar e testar.

Como foi procurar via assembly os comandos corretos para poder trabalhar em cima do bin criado pela Tectoy?

R – O primeiro passo foi descompilar a ROM, usando um software de desenvolvimento próprio, depois fazer esta ROM funcionar em emuladores. Alguns comandos até que não foram difíceis de se encontrar, pois no código antes de configurar os comandos existem textos referenciando certos comandos como Z80 Clock, SDRAM Offset etc… e logo em seguida os endereços referente a estes comandos.

Qual era o seu objetivo principal em mexer o bin?

R – Inicialmente foi entender como funcionava o acesso aos diversos periféricos e saber se havia a possibilidade de se implementar algum recurso novo.

Como foi trabalhar sem ter o datasheet do Redkid 2500?

R – Ainda é difícil, pois sem as documentações ainda continuo executando testes nos diversos endereços e analisando o comportamento do console, inclusive desenvolvi aquele depurador exatamente para ver o conteúdo da memória. Na versão final o depurador é limitado, mas nos meus testes fui colocando alguns saltos de código para ver o conteúdo da memória e dos diversos registradores e assim poder tirar conclusões do que aconteceu naquele momento e ir documentando o que cada bloco de assembly faz.

Como foi desenvolver a ferramenta que permite a edição e inclusão de novas imagens no menu do console?

R – A ferramenta de edições não foi difícil, uma vez que já possuía uma ferramenta que fui desenvolvendo ao longo dos anos com diversos utilitários, foi só incluir um módulo novo. A parte que deu um certo trabalho foi fazer o novo Mega Drive carregar um arquivo extra, uma vez que consegui subir o arquivo para a memória, defini como seria a estrutura do banco de dados e desenvolvi as rotinas assembly para ler as fotos carregadas. A parte de identificação das fotos pelo menu até que não foi difícil testar, pois fiz usando emuladores com o depurador rodando no novo Mega Drive, analisei o conteúdo da memória e criei um save para o emulador com o conteúdo que me interessava, criei um ROM simulando o banco de dados carregado e rodei no emulador.

Quais são os seus próximos desafios para atualizar o console?

R – Estou testando comandos para tentar gravar no cartão e caso consiga existe até a possibilidade de modificações em ROMS que possuem recurso de salvamento de progresso. Neste caso o jogo ficaria específico para o novo Mega Drive, já que as requisições de hardware são únicas. Meu hack Sonic 2 Delta seria o primeiro jogo beneficiado com o recurso de salvamento.

Qual foi o hack que você fez que teve mais downloads? Mute ou a versão com Debug?

R – Na verdade não monitoro os downloads do meu site, pois nunca tive o objetivo de querer algo com as atualizações, eu trabalho com programação e nas horas vagas passo o tempo com programação e desenvolvendo projetos eletrônicos.

Você já fez algum hack em outro produto ou software?

R – Meu outro hack bastante conhecido é o Sonic 2 Delta, tirando o Mega Drive nunca mexi com softwares de terceiros até porque sou programador e dependo de que as pessoas usem software original. Sobre hackear o BIOS do novo Mega Drive, alguns colegas até me disseram para tirar isto do site que poderia me trazer problemas, pois estava alterando um produto de terceiros, porém eu entendo que a BIOS é hardware dependente e quem tem o interesse de usar ele tem obrigatoriamente que comprar um Mega Drive. 

Você faz algum teste antes de liberar seus hacks? Você já teve algum problema com alguém da comunidade que teve o videogame danificado num processo de atualização?

R – Faço diversos testes e mesmo assim, como qualquer programa, estamos sujeitos a falhas. Não tive nenhum relato de usuário reclamando de danos, porém no meu site tenho um termo de uso no qual deixo claro que apesar dos testes não posso me responsabilizar, e mesmo no caso do depurador fornecido para testes não disponibilizei para o usuário endereços que por exemplo travam o Mega Drive, tirando o vídeo de frequência como acontece se você der um comando incorreto no endereço $B00010.

Como você está lidando com o assédio dos fãs? Quais os próximos hacks que a comunidade mais pede para vocês?

R – Acho bacana o reconhecimento e agradeço. O mais pedido é a possibilidade de salvar o progresso dos jogos com bateria.

H4ck34nd0 0 M3g4 Dr1v3 #2 – R4f43l

Olá Rafael, poderia se apresentar para os leitores da Tectoy com aquilo que você faz?

Olá, leitores do blog da Tectoy! Sou o Rafael Müller e me tornei conhecido recentemente pelos experimentos que realizei no novo Mega Drive quanto ao som e que trouxeram certa melhora para o aparelho. Na área profissional, tenho no momento uma relação com uma empresa multinacional brasileira, atuando na área comercial em vendas, e convivo com este ramo desde que nasci visto que meu pai é vendedor na mesma área, e sempre tive a oportunidade de acompanhar de perto como funciona a relação entre empresas no que se refere a parcerias de fornecimento de longo prazo. Independente disto, também presto algumas consultorias pontuais aqui e ali, e sou eternamente um profissional que está no mercado, cabendo destacar que não sou um profissional da web ou uma “celebridade YouTuber”. Na área acadêmica, sou formado em Administração de Empresas e sou mestrando em Filosofia, pesquisando Ética e Filosofia Política. Decidi cursar também a graduação em Filosofia, e estou quase concluindo ambas atividades.

Quando foi que você começou a jogar videogame? Qual foi o seu primeiro console?

Desde que me conheço por gente eu jogo videogames. O primeiro console que tivemos na família foi um Odyssey, e eu jogava aquilo pra caramba! Inclusive meus pais dizem que eu me alfabetizei nele, com o jogo “Criatividade”. Brincava muito com “Senhor das Trevas” e “Come-Come”, toda a família. Na mesma época, ganhei um Pense Bem e brincava muito com ele. Existiam aqueles modos de “operações matemáticas” e eu vivia me divertindo ali. Também me divertia bastante jogando no Master System III Compact que meu primo tinha, e foi esse meu primeiro contato com a Sega e o Sonic. Depois de um tempo ganhei um clone de Nintendinho e, poucos anos depois, um Mega Drive 3. Aí sim começou uma paixão que dura até hoje.

O que você achou quando a Tectoy anunciou que estava querendo relançar um console da SEGA no Brasil?

Realmente achei muito bom quando vi a notícia, inclusive depois de saber meus pais correram me avisar, até porque foi anunciado o retorno de forma grandiosa. Fiquei na expectativa e acompanhando de perto como se desenrolava o desenvolvimento desse videogame, mas estava em dúvida se fazia a pré-compra ou não. Esperei até abril para realizar o pedido, mas fiquei bastante na expectativa para recebê-lo e quando recebi o aparelho fiz aquela carinha de criança com brinquedo novo.

Rafael Müller e seu Mega Drive

Você votou Mega ou Master? E por quê?

Na época da enquete votei no Mega, até porque é ele que fez parte da minha infância. O Master também participou, mas não tanto quanto o Mega. Tive muitas fitas, além de ter o Sega CD e o 32X. Me diverti muito com eles!

Você já fez algum hack em outro produto ou software?

Da representatividade deste hack no novo Mega Drive nunca. Já fiz alterações em softwares e os mantive pra uso pessoal, ou mesmo alguma coisa para facilitar a minha vida profissional, mas algo que tenha sido tão bem recebido pela comunidade é a primeira vez.

Anterior a mexer com o binário (mdi.bin) que temos no nosso console, você já fez algum rom hacking?

Só brinquei em traduzir ROMs quando criança e adolescente. Não lembro se alguma das traduções que eu fiz chegou a ser distribuída, mas minha atividade em rom hacking nunca foi tão avançada a ponto de ser uma referência como o Neto, por exemplo. Sei que ele é bastante conhecido por ter decifrado muito do funcionamento das ROMs do Sonic.

Como você soube que era possível possível mexer nas configurações do nosso Mega Drive?

A partir do momento que vi alguns comentários no Facebook, na página da Tectoy, sobre atualização de firmware. Tentei acompanhar o evento de lançamento do Mega Drive, e não me recordava de ter ouvido algo deste tipo. Então, num vídeo postado pela “Comunidade Mega Drive” que mostrou a sessão de perguntas e respostas, vi que o Stefano Arnhold mencionou esta possibilidade. Quando recebi o novo Mega, corri para colocar o cartão SD no meu computador e ver o que podia ser feito.

Qual foi a sua surpresa em perceber que colocando a rom sobrescrita ao bin no cartão SD melhorava o som do console em questão?

Me senti bastante feliz e sabia que tinha a obrigação de compartilhar o meu feito com a comunidade toda. Muitos estavam infelizes com a situação atual do som do novo Mega (alguns pouco agressivos, outros muito mais – algo que entendo perfeitamente como profissional da área comercial), e falavam como se estivessem conformados com a coisa toda. Eu não estava conformado, e por isso mesmo corri atrás de fazer algo. A primeira atualização que disponibilizei não estava tão afinada quanto a que divulguei mais recentemente, e saber que algo que eu fiz no meu tempo “livre” (tive que tornar este tempo livre, na verdade) foi tão bem reconhecido ao menos pela comunidade. É bastante difícil um profissional receber o devido reconhecimento pelo que faz (e no meu dia a dia não me sinto tão reconhecido nas minhas atividades como gostaria, o que gera alguma insatisfação), e senti na receptividade da comunidade certo alento que me deixou bastante motivado como pessoa. Se somos competentes, sempre somos reconhecidos de uma forma ou outra, e nem sempre isso vem onde antes esperávamos que viesse. O que é muito bom!

Quais foram as maiores dificuldades em trabalhar via hexadecimal com o binário?

A maior das dificuldades é saber quais partes do binário são responsáveis por quais funções. Ler direto no binário é praticamente impossível, então tive que arranjar ferramentas de disassembly que me ajudassem nisso. Como não tenho todas as ferramentas ideais para realizar o trabalho, testava minhas ideias direto no binário em hexadecimal. E não é que deu resultado?

Como você está lidando com o assédio dos fãs? Quais os próximos hacks que a comunidade mais pede para vocês?

Tem sido bastante difícil dar a devida atenção a todos, o que me deixa um pouco chateado. Como as coisas andam um pouco conturbadas nos últimos meses, tenho tido uma sobrecarga fora do comum de coisas às quais preciso dar atenção, e não estar ali para responder a todos da forma que eu gostaria é uma das consequências. Também, além das prováveis novas oportunidades profissionais que terei que buscar se quiser atingir todos os meus objetivos pessoais, tenho uma dissertação de Mestrado que demanda bastante atenção. Sem esquecer, obviamente, de estar junto com as pessoas que eu amo (como familiares e a minha namorada Alana). Quanto aos hacks, a comunidade pede muito para que exista o suporte a salvar os jogos no cartão SD, e também uma melhora no comportamento do VDP do Redkid.

O que o Neto fez que lhe ajudou na criação de novas atualizações?

As ferramentas que ele desenvolveu, mais especificamente o Hex Debugger, economizaram muito do meu tempo nos testes para o desenvolvimento da atualização que disponibilizei nos últimos dias. Além disso, a versão que ele disponibilizou do MDI.BIN para rodar em emuladores me ajudou a entender um pouco mais como as coisas funcionavam. Rodar o arquivo num emulador que suportasse o modo Debug também me indicou o caminho certo a seguir. Mesmo que nunca tenhamos conversado de forma aprofundada quanto às nossas pesquisas, o que um disponibilizava pra comunidade com certeza ajudou o outro.

Você acha que existe alguma forma de melhorar ainda mais as qualidades do console atualmente? Ou já estamos chegando num limite prático do Red Kid 2500?

O som, acredito eu, ainda pode ser melhorado um pouco mais em futuras revisões do hardware, se houverem. Como surgiram novos parâmetros de som para o Redkid, isto dá novas oportunidades para que a engenharia da Tectoy faça ajustes finos, se desejar, no circuito do novo Mega. Cabe lembrar que a própria Sega fez isso nas suas diversas revisões de hardware, e que esta é uma ação costumeira na indústria eletrônica. O aparelho antes estava fora do tom, o que dificultava muitos ajustes. Mas estes ajustes de hardware que especulo não seriam relacionados ao Redkid. Acho que ele já está no seu limite, inclusive quanto a comportamento do VDP (que não é de acordo com as especificações da Sega e não parece aceitar outros parâmetros).

Você tem algum plano futuro para com o firmware?

A curto prazo não tenho nenhum plano em mente. Acredito que atingi o meu objetivo inicial de demonstrar que o som do aparelho pode ser melhorado.

Você faz algum teste antes de liberar seus hacks? Você já teve algum problema com alguém da comunidade que teve o videogame danificado num processo de atualização?

Deixo o meu videogame rodando por horas a fio com diversos jogos. Nunca tive nenhum problema de alguém estragar o seu videogame, até porque sinceramente não acredito que o uso do meu hack, em si, tenha capacidade de estragar algo. O que estragaria, talvez, seria o ato de alguém não estar seguro do que está fazendo e acabar se perdendo, e não conseguir mais usar o SD do Mega Drive. Nada que um bom backup não resolva.

“Essa foto é de um campeonato de games que teve na cidade, entre 1994 e 1995 (não lembro quando), feito pela loja “Fiesta”, que era a loja em Bento Gonçalves que distribuía os produtos da Tectoy. Estes são os dez finalistas, e estou entre eles. Sou o de azul escuro, na fileira de baixo, agachado do lado do menino de branco”.