Thundercats v. 2 para BASIC 128
Eletrônica

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 é mais necessário fazer isto.


Eu tive que quebrar a cabeça, mas consegui fazer uma rotina em assembly que troca do BASIC 128 para 48, sem precisar reinicializar o computador. Em resumo, basta zerar o bit 4 da variável de sistema FLAGS e reconstruir a pilha do Z80 para BASIC 48. A listagem é a que se segue: 

ORG 23760
;
        INCLUDE "Header_Basic.asm"
;
        DI                      ; Disable interrupts.

        LD BC,32765             ; Select ROM 1 and RAM 0. 
        LD A,16
        OUT (C),A
        RES 4,(IY+1)            ; Change FLAGS to 48K mode. 
        LD HL,(RAMTOP)          ; Stack will be cleared. 
        LD (HL),62              ; Put end marker of GOSUB stack.
        DEC HL                  ; Leave one byte.
        LD SP,HL                ; Define new value of stack pointer.
        LD HL,MAIN_4            ; Put error treatment routine address
        PUSH HL                 ;
onto stack and
        LD (ERR_SP),SP          ;redefine value of ERR_SP.
        EI                      ; Enable interrups. 
        JP STMT_RET             ; Jump to interpret the next 
                                ;BASIC statement.
END

Note que esta rotina requer o arquivo 'Header_BASIC.asm' atualizado para a versão 0.4, disponível neste link.

Para baixar a versão 2 do Thundercats adaptado, acesse Google Drive ou 4 Shared.



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

- Número Aleatório Por Xor-shift
Apresento a sub-rotina de geração de número pseudoaleatório que foi usada na minha parte do demo Mission Highly Improbable.  Anteriormente mostrei a sub-rotina de Phantom Club para a mesma finalidade, porém a qualidade da sequência gerada...

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



Eletrônica








.