Se você quer fazer engenharia reversa de jogos e programas ZX Spectrum, conheça e veja como instalar o Spectrum Analyser no Linux via Snap.
Spectrum Analyser é uma ferramenta projetada para ajudar a fazer engenharia reversa de jogos e programas ZX Spectrum.
Ele é uma combinação de emulador, depurador e desmontador interativo. Os programas são carregados e executados no emulador e seu estado pode ser inspecionado usando as ferramentas fornecidas.
Copie os arquivos do jogo para ~/snap/spectrum-analyser/current/SpectrumGames
.
Essas ferramentas incluem:
- Desmontador
- Depurador
- Visualizador de gráficos
- Rastreamento de quadro
- Diferença de memória
- Analisador de E/S
Outros recursos incluem:
- Anotação interativa: rótulos, funções e comentários
- Janela de observação
- Formate a memória como Byte, Word, Char Map, Bitmap etc.
- Pontos de interrupção: interrupção na execução de código, acesso à memória, NMI, IRQ, IN & OUT
- ROM Sinclair totalmente anotada
- Suporte a código automodificável
- Detecção automática de código
- Detecção automática de dados
- Suporte para cutucar
- Importação e exportação de Skoolkit
- Ferramenta de pesquisa de memória gráfica de caracteres
- Dicas de ferramentas informativas sobre instruções do Z80
- Suporte RZX
- Compatível com espectro de 128k
A maneira tradicional de fazer engenharia reversa de software é determinar manualmente quais áreas da memória do computador são códigos ou dados. Um desmontador pode então ser usado para produzir uma listagem de montagem dos bytes de memória de código.
Uma maneira de conseguir isso é observar o código sendo executado em um depurador. Isso pode ser um trabalho lento – embora existam algumas ferramentas excelentes para ajudar nesse processo, como IDA Pro ou Ghidra.
Este processo pode ser parcialmente automatizado usando um arquivo de rastreamento de execução. Isso pode ajudar a confirmar quais áreas da memória são código se soubermos que foram executadas.
O Spectrum Analyzer visa automatizar o máximo possível do processo manual.
Ele possui um emulador integrado, o que significa que pode detectar automaticamente quais locais de memória são códigos quando esses locais são executados. Quanto mais você joga, mais código ele descobrirá.
No entanto, o Spectrum Analyzer é muito interativo. Você pode marcar manualmente áreas da memória como código, se preferir – sem precisar executar o código em questão.
Você não precisa informar ao Spectrum Analyzer onde o código termina – apenas onde ele começa. Ele usará análise estática de código para descobrir onde o código termina.
Como instalar o Spectrum Analyser no Linux via Snap em distros que suportam a tecnologia
Para instalar o Spectrum Analyser no Linux via Snap você precisa ter o suporte a essa tecnologia instalado em seu sistema. Se não tiver, use o tutorial abaixo para instalar:
Como instalar o suporte a pacotes Snap no Linux
Por usar a tecnologia Snap, é possível instalar o aplicativo no Ubuntu, Fedora, Debian, openSUSE, e todas as distribuições que suportam esse formato, usando esse tutorial.
Depois, você pode instalar o Spectrum Analyser no Linux via Snap, fazendo o seguinte:
Passo 1. Abra um terminal;
Passo 2. Instale a versão edge do programa, usando esse comando:
sudo snap install spectrum-analyser --edge
Passo 3. Mais tarde, se você precisar atualizar o programa, use:
sudo snap refresh spectrum-analyser
Pronto! Agora, você pode iniciar o programa no menu Aplicativos/Dash/Atividades ou qualquer outro lançador de aplicativos da sua distro, ou digite spectrum-analyser
ou em um terminal, seguido da tecla TAB.
Como desinstalar
Para desinstalar o Spectrum Analyser no Linux via Snap, faça o seguinte:
Passo 1. Abra um terminal;
Passo 2. Depois, se for necessário, desinstale o programa, usando o comando abaixo;
sudo snap remove spectrum-analyser