MSX Minesweeper
English
Minesweeper ou campo minado é um famoso jogo de estratégia. O objetivo
é abrir todos os campos do jogo, sem detonar as minas.
Este jogo acompanha um manual de desenvolvimento, os executáveis e os
fontes.Requisitos:
- MSX 2 ou superior;
- Chip de relógio;
- MSX-DOS 1.
Desenvolvimento:
100 %
Falta:
- Eliminar flicker do número de minas e relógio; - Ok
- Abrir 8 vizinhos, quando clicado sobre um número qualquer; - Ok
- Criar rotina em assembly para fazer contagem do tempo; -Ok
- Melhorar sorteio de bombas aleatório (eliminar mapa viciado);
- Ok
- Fazer ranking de vencedores; - Ok
- Salvar ranking em disco. - Ok
A rotina de contagem de tempo deve ser feita em assembly, para roubar o
mínimo de tempo de processamento total do jogo. Na verdade, são duas rotinas,
onde a primeira deverá obter informações do relógio do MSX 2 e guardar a
data e hora com algum valor atribuído à ela na memória. A segunda transforma
a data / hora corrente, conforme a transformação anterior, e compara os
valores, retornando o número de segundos decorridos.
Como jogar:
- Escolha o tipo de jogo: simples (8x8 com 10 bombas) ou difícil (16x16 com 40 bombas);
- As setas movimentam o cursor;
- Esc abandona o jogo;
- Tecle enter quando ganhar o jogo;
- Z detona o espaço sob o cursor;
- X marca o espaço com uma bandeira;
- C quando clicado sobre um número, abre seus 8 vizinhos, se e somente se, forem
marcados o número correspondente de bombas nesta vizinhança.
Pegue aqui:
mines_src_11.zip - Fontes do jogo.
mines_11.zip - Jogo pronto para jogar.
map.pas - Como criar o mapa do jogo.
flood.pas - Como atua o flood-fill.
start.asm - Como ler o relógio do MSX em assembly.
mandev1.pdf - Manual de desenvolvimento versão 1.0.
Algumas Referências:
Página do Hans: http://www.hansotten.com/msxpascal.html
Livro do Turbo Pascal: http://oldcomputers.dyndns.org/public/pub/rechner/epson/~fjkraan/comp/tp30/doc/
Agradecimentos: - SLotman pelo MSX Pad, pela sugestão de usar
constantes para iniciar o mapa do jogo e pelo time.inc.
|