spectris - A 1k version of Tetris for ZX Spectrum

a public domain minigame by Paolo Ferraris (pieffe8@libero.it)

For ZX Spectrum 16k/48k/128k/+2/... blah blah blah!

A Spectrum 128k or better is strongly suggested for music playback.
If not available, a Spectrum 48k is suggested: the Spectrum 16k
would not show the reversed 'R'.

This minigame does not work with hardware devices like Microdrive
and Interface 1 that change the memory address where BASIC programs
are loaded.

The tune is taken from Renzo Arbore's Cacao Meravigliao, a song
and a fake commercial in a Italian TV show, Indietro Tutta.


What is new in version 1.1

- music gets faster when the pile of pieces is very high


I think that an explanation on what is Tetris is probably not
necessary. Pieces fall down. You can move and rotate them to fill
rows that are then removed. Game is over when the screen is full.
The block that will fall next is shown on the right.

In this implementation, each time 5 rows are removed, the pieces start
falling faster, for a total of 20 different speeds/difficulty levels.
While the the speed in the first levels is very similar, last levels
are *VERY* difficult.

The joystick commands (Interface II or Sinclair port 1) and corresponding
keyboard keys are:

left or 6  : move the falling piece left
right or 7 : move the falling piece right
fire or 0  : rotate the falling piece
down or 8  : move the falling piece down

If we exclude the down movement, holdind the joystick in a direction
doesn't bring to multiple movements. You have to release the joystick
between each movement.


ENTER starts a new game.


I hope you will enjoy the game for at least a few minutes :-)


- A few notes about the development of this minigame.

This is the fifth implementation of Tetris in two years of minigame
compo. I generally choose games not implemented yet in the compo, but
this is not the case.
The main reasons are the following
 + I never implemented Tetris before
 + As far as I know, no other Tetris minigame implementation has music
 + I wanted to use my music and sound routines in some minigame, and
   Tetris leaves enough memory space for them.
 + When I started writing this minigame, no other Spectrum minigame was
   using the AY sound chip.

I am not an expert of AY-music, and I tried to get the most I could
from a single channel music. If any of you have suggestions I would be
happy hear them :-)
