Consola de jogos Sega Saturn invadiu a proteção DRM após 20 anos
Os jogos agora carregam ignorando a unidade de CD-ROM
Jogadores experientes certamente se lembrarão do Sega Saturn - um console de jogos de 32 bits da Sega. Começou a ser vendido em 22 de novembro de 1994, duas semanas antes do seu principal concorrente, o primeiro modelo da Sony Playstation. Foi uma bomba real. No primeiro dia, os fãs compraram 170.000 cópias do novo Sega. Em 1995, o prefixo apareceu à venda na Europa e nos EUA, onde também estava à espera de sucesso: Quake, C&C, Tomb Raider, Duke Nukem 3D e outros jogos portados para ele.No momento do lançamento, a arquitetura Sega Saturn era muito mais avançada do que qualquer outro console de jogo. O Saturn era um sistema muito poderoso para a época: dois processadores RISC centrais (Hitachi SuperH-2 7604), dois processadores de vídeo (de design próprio), som de 32 bits (processador DSP de som Yamaha FH1) e uma unidade de CD de velocidade dupla.No entanto, rapidamente, a Sega Saturn deu lugar ao Sony Playstation.É engraçado que a arquitetura de Saturno tenha sido, de muitas maneiras, mais avançada que sua concorrente. Ao contrário do Playstation, que opera com triângulos como primitivas geométricas básicas, Saturno representava quadrângulos. Quando usada corretamente, essa renderização apresentava menos distorção de textura do que nos jogos do Playstation. O hardware orientado para quad e 50% mais memória de vídeo também deram a Saturno uma vantagem nos jogos 2D. Mas, no final, a arquitetura mais "avançada" de Saturno tornou-se um obstáculo para portar muitos jogos, porque as principais ferramentas de desenvolvimento eram baseadas em triângulos, bem como em jogos de várias plataformas. Por isso, ganhou o Playstation.
Placa-mãe Sega SaturnAté o momento, esses dois consoles - e Sega Saturn, e o primeiro Sony Playstation - só podem ser encontrados nas prateleiras dos colecionadores. Mas o mais interessante é que a proteção DRM dos jogos para Saturn não conseguiu invadir. O problema é que foi difícil criar um ambiente normal para engenharia reversa. Por exemplo, cartuchos flash foram usados em consoles de jogos antigos, enquanto os consoles posteriores têm a opção de piscar a memória flash diretamente no tabuleiro. No caso da Sega Saturn, o problema é que é quase impossível encontrar um decodificador antigo com uma unidade de CD funcionando. O sistema operacional é conectado ao circuito do controlador da unidade de CD na placa-mãe e a proteção contra cópia é feita na forma de marcas físicas na borda do CD - fazer cópias de discos com essa proteção se mostrou muito difícil.
Proteção contra cópia de CDsComo fazer engenharia reversa e quebrar os discos em um sistema tão super fechado?Havia uma saída. O entusiasta jhl (Dr Abrasive) da comunidade de hackers Assembler Games fez uma coisa quase inacreditável - o emulador de unidade óptica Sega Saturn ! Ele levou cerca de dois anos para fazer esse trabalho.
Dr. Abrasive em seu laboratório, onde em dois anos ele conseguiu desenvolver um emulador de unidade óptica Sega Saturn. Há um console desmontado na mesa.Deacordo com jhl , o console de jogos japonês é muito intricadamente projetado. Ele chama isso de "excesso de engenharia", falando de um número tão grande de processadores, entre eles dois centrais, dois gráficos, um som e assim por diante.A unidade de CD é controlada por um controlador separado: o processador RISC de 32 bits SH-1. O hacker teve que trabalhar duro para descobrir o chip desse controlador.
Microcircuito no controlador da unidade de CDO console do jogo possui uma porta de expansão interna na qual o cartão de decodificação MPEG é inserido para visualizar os CDs de vídeo.
Porta de extensão interna de SaturnoEsta porta de expansão se conecta ao controlador de CD e passa os dados através dele usando criptografia.Para começar, o hacker encontrou uma maneira de acessar o firmware do controlador. Ele removeu a placa controladora do console do jogo e a conectou ao cartucho Game Boy reflashed. Neste cartucho, a ROM foi reflorestada de forma a ler a ROM do controlador via NVRAM e depois via USB. Assim, o jhl conseguiu despejar a ROM do controlador.
A placa com o controlador do console Saturn está conectada ao cartucho re-piscado do Game Boy.64 kilobytes de memória deste processador são compactados com instruções que levaram muito tempo para serem entendidas. O Dr. Abrasive diz que o estudo desse código revela muitas informações sobre o histórico de desenvolvimento da Sega Saturn, mas no geral ele ficou muito impressionado com a imagem que foi aberta.
Após examinar o conteúdo da ROM, foi possível entender como o código do SH-1 é carregado da placa decodificadora MPEG. O Dr. Abrasive diz que encontrou um tipo de "backdoor" no sistema operacional integrado, que permite carregar discos sem proteção contra cópia.
Aconteceu criar uma interface USB para carregar o conteúdo do chip YGR022 (via slot para cartão MPEG). Este foi o primeiro e mais importante passo para criar um emulador de unidade óptica de Saturno completo.Como resultado deste trabalho, o Dr. O Abrasive conseguiu criar um adaptador através do qual os dados são carregados no console ignorando a unidade de CD padrão, ou seja, através da porta de expansão interna ! Ou seja, agora é possível fazer o download de jogos no console, mesmo a partir de uma unidade flash USB comum, os CDs originais não são necessários.A quantidade titânica de trabalho que o Dr. fez Abrasivo por dois anos, não pode deixar de causar respeito. O autor fala em detalhes sobre todo o processo de engenharia reversa em um documentário amador. Este é realmente um ótimo filme.O código para invadir Saturn e o emulador serão lançados em um futuro próximo, o autor publicará em domínio público.Primeiro, o emulador é necessário para os entusiastas que estão envolvidos na cópia de discos do Saturno e na portabilidade de jogos para esse console. Em segundo lugar, os proprietários de consoles de jogos agora podem usá-los novamente, mesmo que a unidade de CD comum esteja com defeito, e essa é a falha mais comum de Saturno. Além disso, a presença de um emulador tornará possível fazer cópias de vários discos para Saturno e salvá-los para o histórico.Source: https://habr.com/ru/post/pt395891/
All Articles