sexta-feira, 17 de maio de 2024

Concurso BASIC Apascalado compilado - Cannonball


Eis mais um programa escrito em BASIC Apascalado para familiarizar os concorrentes com esta técnica insólita de programar no ZX Spectrum. Os jogos vão ser todos escritos em inglês para benefício dos concorrentes estrangeiros. A maior parte dos programas serão versões compiladas dos programas do concurso anterior.

Esta semana temos uma ideia simples mas com potencial porque até foi a ideia usada para criar o jogo Angry Birds. Em relação à versão do concurso anterior, foi acrescentado um sprite (a imagem da bala de canhão). Esta bala é desenhada em qualquer ponto do écran com a ajuda de um array que contém os endereços das posições de memória de cada linha de modo gráfico. Os sprites foram obtidos com o utilitário "ZX Block Sprites" (ver aqui).

Desenhar sprites no écran em modo gráfico não tem dificuldade para os computadores modernos. Mas, mesmo com o programa compilado, o ZX Spectrum pode ser lento. Foi necessário optimizar a rotina de desenhar os sprites para a velocidade ficar aceitável. Moral da história: para rotinas que necessitem de grande velocidade, é aconselhável usar apenas operações com inteiros.

Para correr o programa online, clicar aqui.

Para ver a listagem e fazer o download dos ficheiros clicar aqui.

Convidamos os leitores a examinar a listagem e a fazer alterações no programa. Todos os programas BASIC Apascalado que apresentamos nesta série podem ser melhorados e todos os leitores estão convidados a melhorá-los. Por exemplo, neste caso podem tentar descobrir porque aparecem algumas manchas no écran em algumas ocasiões (Será erro do programa? Será falha do compilador?).

Quem estiver interessado no concurso, pode ler o regulamento aqui.

Quem estiver interessado em saber mais sobre esta linguagem e sobre como compilar os programas, pode clicar aqui.

Em caso de dúvidas, não hesitem em perguntar.

Sem comentários:

Enviar um comentário