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 executando continuamente um programa.
Eu tive um problema em carregar o referido arquivo, pois o ZIP estava corrompido, mas o Eduardo gentilmente me enviou por e-mail um que estava funcionando. Meus sinceros agradecimentos a ele.
Eu tive um problema em carregar o referido arquivo, pois o ZIP estava corrompido, mas o Eduardo gentilmente me enviou por e-mail um que estava funcionando. Meus sinceros agradecimentos a ele.
A listagem que obtive dessa EPROM foi:
; z80dasm 1.1.3
; command line: z80dasm -g 0 -t DEMO-TK.BIN
org 00000h
nop ;0000 00 .
... ... ... ...
nop ;0015 00 .
di ;0016 f3 .
ld hl,00064h ;0017 21 64 00 ! d .
ld de,05b00h ;001a 11 00 5b . . [
ld bc,01f92h ;001d 01 92 1f . . .
ldir ;0020 ed b0 . .
ld sp,07a65h ;0022 31 65 7a 1 e z
pop iy ;0025 fd e1 . .
pop ix ;0027 dd e1 . .
pop af ;0029 f1 .
ld i,a ;002a ed 47 . G
exx ;002c d9 .
... ... ... ...
Eu pude ver que esta EPROM deveria desabilitar a ROM interna do TK90X, para ocupar os endereços 0-8191 (#0000-#1FFF). Logo após um reset, é executado a rotina acima a partir do endereço 0, mas efetivamente só a partir de 22 (#16) é que faz alguma coisa. No caso, copia o bloco de 8082 bytes a partir do endereço 100 (ROM) para 23296 (RAM), ajusta o apontador de pilha do Z80 (SP) e continua atribuindo valores para os registradores (provavelmente salvos na pilha de modo análogo à Multiface 1).
Para poder executá-lo sem uma interface especial, basta colocar o código da ROM na RAM (a partir de 32768/#8000) e alterar o destino do LDIR (fazendo apenas um
POKE 32793,128
).Assim ficou fácil converter o programa para ser carregado da fita (formato TZX) ou de disco Beta 48 (formato Hobeta). Estão disponíveis no Google Drive ou
Nenhum comentário:
Postar um comentário
Seu comentário é bem vindo, mas peço que use este espaço adequadamente.