Jogo Jovens garotos podem ser antigos tecnologia, mas eles ainda oferecem desafios a hackers modernos. [Dhole] chegou com um emulador de cartucho que usa uma placa de descoberta stmicroelectronics stm32f4 para fazer todo o trabalho. Até agora, muitos cartuchos flash usavam dispositivos lógicos programáveis, seja de CPLDS ou FPGAS para lidar com os requisitos lógicos de alta velocidade. [Alex] mostrou que um microcontrolador poderia emular um cartucho usando um Arduino para exibir o jogo “Nintendo” Logotipo de inicialização de menino jovem. O Arduino não foi rápido o suficiente para realmente lidar com acessos de alta velocidade necessários para o jogo.
[Dhole] chutou a velocidade subindo para o braço córtex-m4 baseado em 168 MHz STM32F4. Os 70 pinos GPIO da F4 podem passar por periféricos internos em até 100MHz, o que é muito para lidar com a velocidade do relógio de 1MHz do ônibus do jogo. Os níveis lógicos são um problema, pois o STM32 usa a lógica 3.3V enquanto o jogo jovem é um dispositivo de 5V. Felizmente os insumos do STM32 são tolerantes 5V, então as coisas funcionavam bem.
Simples Game Young Boy Cartuchos como Tetris foram capazes de mapear diretamente um dispositivo ROM no jogo de memória de meninos jovens. Títulos muito mais complexos usados contra o controlador de blocos de memória (MBC) chips para mapear seções de ROM e realizar outras tarefas. Havia vários chips de MBC usados para vários títulos, mas [Dhole] pode emular o MBC1, que é compatível com a maior base de código.
Um dos truques mais legais [DHOLE] implementado foi exibindo um logotipo de inicialização personalizado. O jovem garoto usou o logotipo “Nintendo” como método de proteção de direitos autorais. Se um cartucho não tivesse o logotipo, o jovem garoto não funcionaria. O logotipo é realmente lido duas vezes – uma vez para verificar as informações de direitos autorais e uma vez para exibi-la na tela. Ao dizer ao emulador para alterar os dados disponíveis nesses endereços após a primeira leitura, qualquer gráfico pode ser exibido.
Se você está se perguntando o que um emulador de cartucho seria útil para (além de jogos de pirata), você deve conferir [Jeff Frohwein’s] Gameboy Dev Page! [Jeff] esteve envolvido no jogo de menino jovem do jogo porque os primeiros dias. Há literalmente décadas de demos e jogos homebrew por aí para o menino jovem e vários derivados. .