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