From GameBrew - a wiki dedicated to Video Game Homebrew.

Author(s)Damian Yerrick {pineight}

LOCKJAW is a free software implementation of the so-called Soviet Mind Game, involves guiding tetrominoes into neat stacks in a well. This game was designed in the mid-1980s by Russian game designer Alexey Pajitnov and was first implemented in a software product called Tetris. It is sometimes referred as tetramino, tetrimino, or tetrad.

Note from developer:

LOCKJAW Tetromino Game was a PC-based training tool for the video games Tetris DS and Tetris Party Deluxe. As of 2014/205, the homebrew is no longer available due to the online multiplayer in Nintendo DS and Wii games using Nintendo Wi-Fi Connection was powered by the GameSpy service, which shut down on May 31, 2014. This makes online multiplayer in these games impossible. Further more, the co-founder of Tetris company does not support the idea of freeware which goes against the idea behind this homebrew.


Download and extract file.

Copy .nds file and writing user files to the folder /data/lockjaw on the memory card.

User guide

It includes over 20 options for making variations to the game rules, as well as “gimmicks” for practicing specific skill areas.

LOCKJAW features Initial Actions. Holding a rotate button while a tetromino enters the playfield will cause the action to be performed the moment the tetromino enters.

This is important for fast play. In addition, the hold key works at any time; if a piece is not falling yet, it will swap the hold piece with the next piece.

Please read the manual for more information.


Left/Right - Shift left/right

Down - Soft drop

Up - Hard drop

B/A - Rotate left/right

L - Hold piece

Start - pause game

Option menu:

A/B - Change screens

Start/A - Start game




0.46a 2008-11-09

  • Preview at top is copied correctly from the back buffer (0.45a regression, reported by rednefed).

0.46 2008-11-08

  • Tracks number of 4x4 squares that the player forms (TOD parity; requested by Ghett0).
  • Added T-Party randomizer (requested by Lardarse).
  • Default lock delay for Zero set to 40 frames, even if it is played first (0.45 regression, reported by rck).
  • "[TC]" removed from scenario names (requested by caffeine).

0.45 2008-04-20

  • New unified speed curve system: less code, more tables, for future loading from a file (bug 0040).
  • All speed curves except Rhythm and Rhythm Zero have been ported to the new system. Notably, Master has been rewritten based on the tables from the wiki, and Exponential uses sections. The lock delay speeds up as brutally after 600 pieces as always.
  • Added kludge in the basic makefile that allows building on *BSD and GNU/Linux: 'make linux' (patch by kesiev).
  • ljpath: Fixed a couple misspellings in the non-Windows code path (reported by kesiev).
  • ljpath: Supports libfat when running on Nintendo DS.
  • A few descriptions of options have been shortened to fit into the new GBA/DS look (reported by Bloodstar; patch by caffeine).
  • Writes result and options text to standard output as well as to lj-scores.txt. This allows you to do 'lj | postprocessor' even if you can't do 'tail -f lj-scores.txt' (requested by kesiev).
  • DS: Writes result and options to /data/lockjaw/lj-scores.txt.

0.44 2008-02-20

  • Computes the preview and hold offset of all pieces (was wkNextMove in <= 0.43) from the entry position of the I tetromino (was wkSpawnMove in <= 0.43).
  • Kick tables have been inverted to a single struct per rotation system, for future loading from a file (bug 0016).
  • SKIP_IF system for handling J/L/T exceptions in Arika is replaced with IF_NOT_CENTER: wall kicks are allowed if the free-space orientation overlaps any blocks other than in the center column.
  • Options DAS doesn't repeat too fast, even on those systems where vsync() is a no-op (0.43 regression, reported by caffeine). This has the same cause as 0022: Windows Vista ignores vsync().
  • Options DAS doesn't continue across page boundaries.
  • GBA/DS: Options has new look.
  • DS: Reads the touch screen and the X and Y buttons. Right now, touch isn't mapped to anything, but X and Y are Far Right and Far Left.

0.43a 2008-02-11

  • Arika modified to use SKIP_IF3 after (not before) the basic position. This restores ability to rotate J, L, and T with kicks turned off, such as in IRS (reported by Lion).