Transferindo desenho para TK90X
Eletrônica

Transferindo desenho para TK90X


Apresento uma forma de transferir desenho para o TK90X e fazer uma pequena animação. 

Fonte: Kandi patterns
Além da Hatsune Miku, é possível encontrar vários outros padrões deste tipo neste site. Primeiro o modelo acima é impresso em tamanho grande, de forma a permitir fazer anotações à lápis. Em seguida, digita-se num editor de textos um padrão que codifica cada quadrícula. No caso, foi usado o gedit que possui excelentes recursos.


Células pretas foram marcadas como K, ciano como C, magenta como M, verde como G, azul como B, branco como V e branco brilhante como W. As células transparentes foram marcadas como T. As cores são aproximadas para as que são disponíveis no TK90X. Outra coisa interessante é que a ferramenta de busca do gedit marca de amarelo os padrões pesquisados; na figura acima, quando se pesquisou a letra K, o contorno preto da Miku ficou evidente.

A transferência é manual e trabalhosa, mas se for comparar com os artesanatos apresentados no site mencionado, não dá para reclamar. É bom anotar no modelo impresso, cada linha ou coluna que já foi digitada. Vale a pena preservar o arquivo assim produzido, para manipulações futuras. Sendo assim, é aconselhável criar uma nova cópia antes de passar para o passo seguinte.

O desenho codificado é transformado numa sequência de bytes através da função de substituição do editor de textos. Os valores dos bytes foram escolhidos para refletir os atributos de cores do TK90X, exceto a cor transparente (T) que ficou com o valor 128. Os demais códigos ficaram: K=0 (ink e paper 0), C=45 (ink e paper 5), M=27 (ink e paper 3), G=36 (ink e paper 4), V=63 (ink e paper 7), W=127 (ink e paper 7 com bright 1) e B=9 (ink e paper 1). Na hora de fazer as substituições, não se deve esquecer de finalizar cada valor numérico com uma vírgula.


Ao final, divide-se a sequência dos valores em várias linhas. Cada linha deve iniciar-se com a diretiva DEFB do assembler e as vírgulas do final devem ser removidas.


Depois de montado com um assembler (pasmo, por exemplo), obtém se um arquivo binário que pode ser incluído em um emulador. O programa assembly abaixo faz a animação do sprite preparado:

    ORG 32768
    LD HL,Miku
    LD DE,30
Mainloop0
    LD B,9
Mainloop1
    CALL APrtScr
    ADD HL,DE
    DJNZ Mainloop1
    PUSH HL
    LD HL,0
    OR A
    SBC HL,DE
    EX DE,HL
    POP HL
    ADD HL,DE
    XOR A
    IN A,(254)
    CPL
    AND 011111
    JR Z,Mainloop0
    RET
;
APrtScr
    PUSH BC
    PUSH DE
    PUSH HL
    LD B,5
Delay
    HALT
    DJNZ Delay
    LD DE,22528
    LD B,0
Loop0
    LD C,0
Loop1
    LD A,(HL)
    BIT 7,A
    JR Z,Jump0
    LD A,(IY+14)
Jump0
    LD (DE),A
    INC HL
    INC DE
    INC C
    LD A,C
    CP 30
    JR NZ,Loop1
    INC DE
    INC DE
    INC B
    LD A,B
    CP 24
    JR NZ,Loop0
    POP HL
    POP DE
    POP BC
    RET
;
Miku
;
    INCLUDE "4373-Hatsune_Miku_Sprite_Fuse_Bead.asm"

O resultado pode ser visto no vídeo abaixo:


Apesar da resolução dos atributos de cores ser baixa (24×32), tem a vantagem de dispor das cores com mais liberdade, o que não ocorre se trabalhar com bitmap em que pixels vizinhos tem que ter mesmos atributos.



loading...

- Dica Tv Electronia 20nt Chassis 11ak30
Defeito--Não liga. Led vermelho aceso. Ao tentar ligar, o led passa a verde mas, no               mesmo instante, o led volta para vermelho e a fonte da tv não arma.Valores         ...

- Dica Tvs Panasonic Tx-32pk25f Chassis Euro-4h
Defeito--Imagem a preto e branco ou com as cores alteradas com manchas como se o              TRC estivesse magnetizado. Foi regravada a eeprom mas não resultou. Em           ...

- Dica Tvs Panasonic Tx-25xd3e Chassis Euro 2m
Defeito--Este  tv estava em protecção, trazia o transístor de saída de linhas (2SD1577-               LB) em curto. Depois de o substituir, o tv arrancou apresentando o seguinte       ...

- Outra Rotina De Detecção De Ram 48/128k
Eu publiquei nesta postagem, uma rotina que faz a detecção no TK90X da configuração com ou sem a TKMEM-128 (128 ou 48K de RAM). Modifiquei-a e consegui fazer com que ficasse menor ainda (25 bytes).  Esta rotina testa se ocorre chaveamento entre...

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



Eletrônica








.