Skip to content

A classic game named Tetris written in pure NASM assembly using `libc` and `WinAPI`.

License

Notifications You must be signed in to change notification settings

hack3rmann/tetris-nasm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tetris (NASM)

Overview

This is classic game named 'Tetris' written in plain old pure assembly (NASM).

Tetris Gameplay

Implementation goals

  • Basic Tetris gameplay: falling figures, clearing lines
  • Figure fall trajectories
  • Next figures window
  • Figure holding possibility
  • Statistics: score and cleared lines
  • Levels: speed up game on each level
  • Game over message
  • Original music
  • Pause menu
  • Main menu

Implementation details

tetris-nasm uses NASM as the only programming language, libc and WIN32 API (with GDI) as external libraries.

How to build

  1. Ensure You have installed SASM IDE.
  2. Configure SASM_PATH variable in Makefile in the project root directory.
  3. Run make build (or make run to run game on success build) in the project root directory.
  4. If build succeeds You can find the executable in target/ directory from the project root directory.

How to play

  • A and D to move figure left or right
  • S to increase figure falling speed
  • R to rotate figure
  • Q to hold figure
  • Space to drop figure

About

A classic game named Tetris written in pure NASM assembly using `libc` and `WinAPI`.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published