TETRIX This is a Unix SysV implementation of a game that appeared on comp.binaries.amiga a while ago. The author, Quentin Neill, saw it on an amiga here at work, and ported it to curses (on his own time, of course ;-) ). I'm not too sure about the history of tetrix. Someone said that the game originated in Russia, and that it is quite old. We became enthralled with the game on an Amiga, almost to the point of addiction. That version had some documentation, but I never had the chance to read it - I only played. I considered writing a version in machine language for my Franklin junker at home, but settled on a C implementation for unix machines. The object of the game is to keep the board clear for as long as possible. Pieces consisting of four blocks (hence the name TETRix) in the seven possible arrangements are sent down one at a time. The player's job is to find the best fit for the piece in the pile of blocks that have already fallen. He can rotate each piece and move it from side to side. If the piece just played causes a complete row of blocks, that row is erased and all blocks above it move down one row. Points are awarded for completed rows - more for rows higher up on the board. A piece may be dropped from a height for additional points when the player feels it is oriented correctly. The game is over when no more pieces can be formed at the top of the board. There is one variable INIT_PAUSE in tet.c that compensates for different machine speeds. Set this higher if tetrix screams, and the time between each piece's movement will lengthen. Set it lower if it crawls along too slowly. On a Tower 32/800 with about 45 users on a busy day, we do well with the value set at about 300. On a Tower 32/200 with one user, the value was set at 1500. Good luck! Quentin Neill This version has been hacked to do color under System V Release 3.2. Compile with -DCOLOR to enable this feature. Due to the limited number of colors in the curses(3) portable set, 'tan' pieces will be cyan-colored. If you're using an EGA or VGA display, however, you can also compile with -DEGA to get better colors (this uses the EGA quirk that yellow is 'bright brown'). Finally, note that you may now invoke tetrix as `tetrix ' to set the value of INIT_PAUSE. Have fun! Eric S. Raymond November 1994: This code has been cleaned up for use with Linux ncurses. You don't have to specify -DCOLOR any more. The -DEGA switch is now -DIBM. Given the growing ubiquity of xtetris, this game is now semi-obsolescent and I don't expect to have to hack it again. Thus the envoi Good bye! Eric S. Raymond August 2002: It's very likely that nobody cares, but I'm reissuing this with XML documentation and modern packaging. Good bye again! Eric S. Raymond April 2015: Now pretty much solely of historical interest, but even museum artifacts deserve polishing now and then. See NEWS for a more detailed timeline. Enjoy the history! Eric S. Raymond