TZX Show
Eletrônica

TZX Show


Na série sobre adaptação de programas de fita para disco Beta 48, foram discutida as vantagens de usar o emulador no PC. Dentre os formatos empregados para representar o conteúdo de fita cassete no PC, TZX é o preferido por ser o mais completo e versátil. Embora seja possível inserir arquivo TZX no emulador e operar como no TK90X real, a possibilidade de trabalhar nativamente no PC aumenta a produtividade. Como não existem muitos utilitários para o Linux, sistema operacional que tenho adotado, resolvi escrever o TZX Show que roda com interpretador Ruby. Esta linguagem foi empregada no TXDOS também.

Fonte: Wikipédia
Atualização: o World of Spectrum acabou de aceitar este programa em seu repositório.

Depois de um longo tempo de desenvolvimento, o TZX Show pode ser considerado pronto para o lançamento. O arquivo pode ser baixado do Google Drive ou do 4 Shared, instalado no disco do seu PC e usado com o Ruby na interface de linha de comando (shell):

ruby tzx_show.rb <arquivo_tzx>

Serão exibidas informações sobre o conteúdo do arquivo TZX. Se for um bloco salvo pelo BASIC, mostrará dados relevantes como tipo (BASIC, CODE ou DATA), comprimento, etc. Como exemplo, no TZX do Rogue Trooper, a saída produzida é:

$ tzx_show.rb 1986/RogueTrooper/Rogue\ Trooper.tzx
Block 1: header
    Saved name: "Rogue     "
    Type: BASIC program
    Auto-start line: 0
    Program size without variables: 374
    Total length: 381
Block 2: data bytes
    Length: 381
Block 3: non-standard length for a header (48511 bytes), trying to analyze as a header anyway.
    Saved name: "{00}{00}{00}{00}{00}{00}{00}{00}{00}{00}"
    Type: BASIC program
    Auto-start line: 0
    Program size without variables: 0
    Total length: 0
    Warning: checksum error! Block may be corrupted.


O bloco 1 é o cabeçalho do programa BASIC de nome "Rogue". Note que o tamanho total (381 bytes) é maior do que o tamanho sem variáveis (374 bytes); isto ocorre porque junto é salva uma variável (ah). O bloco 2 é o programa propriamente dito, que é carregado na RAM.

As mensagens de erro não significa que há algum problema no arquivo, pode ser que tenha sido produzida devido aos esquemas de proteção das fitas. No exemplo acima, o bloco 3 acusa erro de checksum por não ser um bloco de cabeçalho, apesar do byte leader ser 0. Na verdade este bloco é o código de máquina do jogo, em formato headerless.



loading...

- Tv Panasonic Tx-14s1tc Chassis Z5
Defeito--Sem imagem e sem som. Apenas linhas de retorno. Seguindo a linha dos 33V, verifiquei que ao                                          ...

- Gotobasic48.asm
Existem certos programas que não são compatíveis com o modo 128 BASIC do ZX Spectrum 128, ou TK90X e a TKMEM-128 com a ROM 128 ativada. Um exemplo é o Lerm Code Compressor 1 que utilizo muito nas minhas adaptações para a interface de drive Beta....

- Thundercats V. 2 Para Basic 128
Mal acabei de lançar uma adaptação do Thundercats para Beta e TKMEM-128 e estou com a versão 2. A versão anterior tinha um problema: não consegue carregar a partir do BASIC 128, portanto tinha que dar um 'USR 0' antes. Na versão 2 não...

- Revolution E Speedlock 2
Depois de destrinchar o Speedlock 1 com o Highway Encounter, eu vou comentar sobre Speedlock 2 com o jogo do mesmo autor (Costa Panayi), o Revolution. Speedlock 2 A estrutura do arquivo 'Revolution.tzx' é dada pelo TZX Show: Block 1: header   ...

- Interface De Demo Do Tk90x
Visitando o site do Eduardo Luccas, encontrei um item interessante para download que seria a imagem (dump) da EPROM da interface de demonstração do TK90X. Pela descrição dada, seria uma interface conectada a TK90X em exposição em loja, que ficaria...



Eletrônica








.