Hoje publicamos o TVGAFIX, um pequeno utilitário criado pelo Rui Ribeiro, nome que alguns reconhecerão como o autor do WSpecEm, primeiro emulador do ZX Spectrum para o Windows, e que foi referenciado recentemente no nosso blogue irmão Planeta Sinclair, pela criação de um novo emulador!
O TVGAFIX teve como finalidade resolver um problema que ocorria com emuladores de ZX Spectrum (como o JPP de Arnt Gulbrandsen, ou o SPECTRUM de Pedro Gimeno), no modo "full screen", em PCs com placas Trident, devido a um bug na BIOS destas mesmas placas a partir da versão TVGA 2.x.
Notas sobre o TVGAFIX (parte 1 de 3) |
Este utilitário é um TSR (Terminate and Stay Resident - programa que fica residente em memória e que espera por determinados eventos para executar código). Este TSR carrega para a memória uma BIOS embebida no executável, sem o bug, e que o Rui conseguiu resgatar de uma velha placa Trident 1.x. com um programa em linguagem C. Esse firmware carregado pelo TVGAFIX assume o controlo da placa gráfica, desviando os interrupts, inicializando e reprogramando parte do funcionamento da placa, substituindo-se assim ao firmware defeituoso.
Notas sobre o TVGAFIX (parte 2 de 3) |
Trata-se de uma curiosidade histórica visto que o utilitário só funcionará num PC com uma placa SVGA Trident, e caso o tentem executar de outra maneira, serão brindados com a mensagem na imagem abaixo (é possível saber mais sobre o utilitário, executando o mesmo com a opção /R).
Só para Trident! |
Agradecemos ao Rui por ter disponibilizado uma cópia deste utilitário, que hoje provavelmente seria muito difícil de se achar. Foi distribuído junto com o emulador JPP que não corria em versões recentes da placa Trident, excepto com este utilitário. De notar também o seguinte: o Rui identificou-se com o nick "Star Man" (*), visto que o utilitário tinha uma cópia não autorizada do firmware de uma placa Trident o que era, no mínimo, de uma legalidade muito duvidosa! Por isso, o Rui também comprimiu e protegeu o binário de modo a evitar que algum curioso com um PC Tools encontrasse mensagens do firmware.
Gostaram do crack do XWING? |
O utilitário pode ser obtido aqui - inclui o binário executável do TVGAFIX e, para exemplificar o uso deste TSR, também está incluido o ficheiro batch que acompanhava o emulador SPECTRUM.
Exemplo de uso. |
(*) Star Man é o nick do Rui que, segundo o próprio, representou uma homenagem ao livro de ficção científica Starman de Alan Dean Foster, e que leu aos 13 anos numas férias de Verão. Nick que também podia ser lido num sem-número de cracks de jogos da época - provavelmente alguns dos leitores (particularmente os da região do Porto) poderão ter visto algum jogo com a mensagem "Hacked by Star Man". Se for o caso, não hesitem em contactar-nos!
Homenagem a Starman |
O TVGAFIX foi um hack engraçado de "roubar" a ROM de uma Trident, ao inspeccionar um utilitário na diskette de uma Trident para acelerar o funcionamento desta. A BIOS tinha uma especie de API para recolocação na RAM. Daí até escrever algo a abusar disso e escrever um utilitário para sacar a ROM de uma versão velha foi um passinho...
ResponderEliminarah, e comecei a proteger os meus binários, utils e cracks, por não perceber a motivação de ter amigos da onça e colegas de trabalho a usar o PcTools para meterem os nomes deles.
ResponderEliminarEu escrevi a primeira versão do TVGAFIX há volta de 1991, que não devia estar protegida. 1993 já é uma versão posterior.
ResponderEliminar