Eletrônica
Keyboard QAOP
Esta sub-rotina é outro subproduto do This is Tritone, faz a leitura das famosas teclas Q, A, O e P empregadas em muitos jogos.
Nas versões preliminares do demo somente os
joysticks eram lidos mas o nix/.site tinha sugerido colocar esta combinação de teclas para movimentar o cursor, mais o tiro na tecla de espaço. Fiz isso mesmo, mas as teclas são lidas mais amplamente:
- para cima, as teclas Q, W, E, R e T;
- para baixo, as teclas A, S, D, E e F;
- para esquerda, U, O, J e L;
- para direita, Y, I, P, H, K e Enter;
- para tiro, todas as teclas da fileira inferior (Caps-shift, Z, X, C, V, B, N, M, Symbol-shift e Space).
Keyboard QAOP é uma sub-rotina em
assembly para ser incluído em um programa através da diretiva:
INCLUDE "Kbd_QAOP.asm"
. Pode ser chamada através do rótulo
Kbd_QAOP
(por exemplo,
CALL Kbd_QAOP
). Para sua utilização, não se deve esquecer de incluir no programa principal, o arquivo cabeçalho
INCLUDE "Header_Keyboard.asm"
.
A sub-rotina faz a leitura dos joysticks Kempston, Sinclair 1 (TK90X) e Sinclair 2. Caso haja algum comando válido do joystick o flag Z será abaixado e o resultado será retornado no registrador A, cujo conteúdo é:
- bit 0 = 1 se tiro acionado;
- bit 1 = 1 se para cima acionado;
- bit 2 = 1 se para baixo acionado;
- bit 3 = 1 se para direita acionado;
- bit 4 = 1 se para esquerda acionado;
- bits 5 a 7 = 0.
O valor tem exatamente o mesmo significado de Read Joystick, portanto ambas as rotinas podem ser usadas de forma combinada:
CALL ReadJoystick ; Faz leitura dos joysticks.
LD H,A ; Guarda resultado em H.
CALL Kbd_QAOP ; Faz leitura do teclado.
OR H ; Combina as duas leituras e guarda em A.
Foi exatamente o que fiz no This is Tritone.
Para baixar a fonte da sub-rotina, clique neste link.
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 ...
-
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...
-
Ad Astra E Interface 2
Depois que o meu joystick passou a funcionar, comecei a testá-lo na entrada existente no TK90X. Quando tentei jogar Ad Astra, percebi que o controle não funcionava como deveria. No menu acima, as opções 5 e 6 corresponderiam às duas entradas disponíveis...
-
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