Create a playable Tetris game.
The visible game matrix should be 10*20.
It must have:
- left/right key;
- a hard drop key (the current piece will be dropped and locked at once);
- (better with another soft drop key);
- at least one rotation key;
- (better with two, for both clockwise and counter-clockwise 90° rotation);
- full set of 7 kinds of shapes (ITOSZJL).
The piece should be rotatable at its initial position (unlike sega arcade tetris), and automatically falling at reasonable speed.
At least 1 preview piece should be shown.
No further requirement about randomizer / rotation system / DAS / colors / difficulty levels / score / hold, but you may do it if you wish.