Welcome to my implementation of the classic game Tetris, but ... written entirely in MIPS Assembly!
This game was developed for CSCB58: Computer Organization, and highlits the transition from digital circuits and hardware into software language. You can find a brief design document titled MIPS Tetris - B58 Final Design Document.pdf with a concise overview. View the video demonstration on YouTube.
- All tetronimoes represented (with different colours)
- Holding functionality
- Movement, including rotation
- Incremental Gravity (levels get harder as you progress)
- Line clearing and score counter
- Use a MIPS emulator, ex: MARS or Saturn
--> Note that Saturn works in browser, so you can copy-paste
tetris.asmdirectly into the editor, set the Bitmap controls and start playing immediately - Set the Bitmap display as follows:
- Uses IO polling to get keyboard inputs (ASD for left/down/right, W for rotate, H to hold, Q to quit)
- Forces a game loop consisting of drawing a piece to the framebuffer, handling collisions, locking pieces, and generating a new one
- Handles scoring, gravity, RNG, and game ending

