Minesweeper implementation in 8086 assembly, running on DosBox
This project shows many features you can get out of the basic 8086 set.
The utils/tools.asm
file contains many macros and procedures that can
be used in other projects as they are mostly general.
Minesweeper is a single-player puzzle video game. The objective of the game is to clear a rectangular board containing hidden "mines" or bombs without detonating any of them, with help from clues about the number of neighboring mines in each field.
tasm /zi mine.asm
tlink /v mine.obj
mine.exe
mine.asm
main project file - contains game loop and calls procedures from other filesmain.asm
main page code - contains the main page of the game with buttonsgame.asm
game page code - contains code for the actual game, when pressing the START buttonhelp.asm
help page code - contains code to display information on how to play the gamestats.asm
stats page code - contains code to display statistics on the gameplay - top players, top points, wins, loses, top time
tools.asm
contains useful procedures and macros that are used all over the project!bmpUtil.asm
contains procedures and macros that help loading assets .bmp onto the screenrandom.asm
contains macros that help generating random numbers - byte size and word size
1.bmp, 2.bmp, ..., 8.bmp
minesweeper cells numbersair.bmp, cell.bmp, bomb.bmp, flag.bmp
more cells texturesflgclc.bmp
asset to prettify flags count and stopwatchmainf.bmp, gamef.bmp, helpf.bmp
pages 320x200 assetsblood.bmp
funny eastereggn0.bmp, n1.bmp, ..., n9.bmp
numbers to display values in a pretty font - see: proc PrintNumber bmpUtil.asmwinner.bmp, loser.bmp
popup alerts for losing and winning