Páginas

sábado, 5 de outubro de 2019

sábado, 5 de outubro de 2019

TVGAFIX (MIA)

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


















3 comentários:

  1. 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...

    ResponderEliminar
  2. ah, 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.

    ResponderEliminar
  3. Eu escrevi a primeira versão do TVGAFIX há volta de 1991, que não devia estar protegida. 1993 já é uma versão posterior.

    ResponderEliminar