El Tetris: el juego soviético de la mente

La Academia de Ciencias de Todas las Rusias, principal ente académico de
la Unión Soviética, era en 1979 el centro estatal por antonomasia de la
inteligentsia del Bloque del Este. En el mundo era uno de los más
renombrados en lo concerniente al cómputo y la alta matemática.

Sin embargo, para ese entonces y desde hacía poco más de una década, la
política oficial de la URSS había virado de sus notables desarrollos
propios a la réplica y adaptación de hardware del bloque occidental con
vistas a una industrialización lo más masiva posible.

La Academia de Ciencias contaba con el Centro de Cómputo, situado en el
Moscú. En un magno edificio dirigido por el matemático en jefe del
antiguo programa espacial soviético, Anatoli Doronitsyn, daban servicio
a los estudiantes de ciencias varias computadoras mainframe producidas
en la Unión. También había acceso a hardware importado tanto legal como
subrepticiamente, sobre todo de Europa y de los Estados Unidos, sobre el
cual un excelente plantel de hackeres y hackeresas sometía al arte de la
ingeniería inversa.

En este ámbito se unió al instituto un graduado en calidad de
investigador de lenguajes de programación: Alexei Pajítnov. Siendo
adolescente se había apasionado con la revista RadioTecnika, y formado
en cálculo. Ahora, con 24 años, este hombre bonachón y estudioso no
había abandonado su ambición de "utilizar computadoras para brindar
felicidad al Pueblo".

La tarea oficial de Pajítnov dentro del laboratorio de lenguajes del
Instituto era la de participar en tareas de programación y estudio de
hardware extranjero, específicamente para evaluar las capacidades del
hardware nuevo y estudiar su implementación práctica en la industria
soviética.

Para principios de 1982, los técnicos del ámbito militar industrial
soviético se habían propuesto crear en la ciudad de Veronezh máquinas de
cómputo "de propósito general capaces de servir al pueblo", en base al
estudio e ingeniería inversa de equipamiento computacional
norteamericano más reciente. En base a estas propuestas habían logrado -
para mediados de 1983 - el desarrollo de la Electronika-60, versión
adaptada para sus procesos de manufactura automática de la
minicomputadora PDP-11/03 de la Digital Equipment Corporation. Se
trataba de máquinas de 16 bits montables en rack provistas del
microprocesador de fabricación local M2. Representaba un clon de la
tercer y más veloz generación de las PDP-11, la LSI-11, surtidas ahora
con 32 KB de memoria, lo que superaba al modelo original en un orden de
magnitud. Estas Elektronika-60 alimentadas por conexión trifásica de 380
voltios comenzaron a ser asignadas a algunas de las dependencias
oficiales más importantes de la URSS, no bien salían de la línea de
producción.

Fue así que a finales de 1983 Pajítnov se sentó frente a la terminal
serial 15IE-00-013 y comenzó a escribir - enmarcado en las
implementaciones de evaluación solicitados por el instituto - varios
programas en Ensablador-11. El objetivo básico de laboratorio era
adaptar el DEC RTSE - sistema operativo de tiempo real multiusuario de
la DEC PDP-11 - a la Elektronika-60. La tarea de desarrollo tendía a
depurar una versión específica denominada ФОБОС (FOBOS).

Para Pajítnov "los juegos permiten a la gente conocerse mutuamente, a la
vez que actúan como reveladores de cosas que normalmente podrían no
notarse, tal como la manera de pensar".

Terminando el crudo invierno de 1984, las tareas técnicas de Pajítnov
dieron buenos resultados con el FOBOS, y se desviaron en su interés
personal. En particular, lo que mas interesó al investigador fue
explotar puzzles de tipo matemático y juegos de rompecabezas
aprovechando los 32 o 64K del sistema operativo multiusuario. Se abocó a
recrear en la terminal de caracteres un juego de rompecabezas de piezas
de madera típico llamado pentamino , al que había sido adepto durante su
niñez. Imaginó que podría escribir un programa en la Elektronika-60
capaz de presentar en tiempo real en su terminal serial el descenso de
piezas de pentamimo generadas aleatoriamente (es un "dominó" con piezas
de cinco celdas en lugar de dos), a las que el operador debería girar
para rellenar columnas organizadas.

Como la Elektronika-60 carecía de gráficos por control de píxel
individual y - al igual que las terminales seriales - generaba un patrón
fijo de caracteres almacenados en ROM, Pajítnov modeló el campo de juego
y piezas en base a caracteres puros usando corchetes para componer las
celdas de los pentaminos: [].

Al poco andar se encontró con un escollo: el rompecabezas de pentaminos
típico se consta de doce formas de piezas distintas. Tras evaluar varias
impolementaciones, Pajítnov juzgó que no tanto la potencia de cálculo
sino el esfuerzo para ordenar doce tipo de piezas resultaba
excesivamente alto. Decidió alterar el código fuente reduciendo el
concepto general al de los tetraminos (de los cuales existen sólo siete
variantes posibles). Fue así que dio el nombre característico a su
software, a partir de la combinación de "tetra" ("cuatro") y su deporte
favorito, el tenis.

Como las líneas completas llenaban rápidamente la pantalla del terminal,
decidió agregar una subrutina condicional que borraba una línea una vez
que se la completaba, y transportaba el resto de las líneas hacia abajo
para dejar más espacio. Logró así un objetivo fundamental en la lúdica
que ofrecía el programa. Un pitido de terminal completaba el efecto.

Pajítnov compiló la primera versión jugable del Tetris el 6 de junio de
1984, y lo presentó a sus colegas del Centro de Cómputo. Esta primera
versión del Tetris carecía de sistema de puntaje o niveles, pero lo
adictivo del juego lo distinguió rápidamente de otros juegos de
rompecabezas que Pajítnov había desarrollado anteriormente, y de otros
juegos portados al sistema FOBOS.

Sus colegas y los matemáticos se hicieron rápidamente adictos al juego.
A través de la Red Local que unía a las terminales de todas las
oficinas, no tardó en correr como reguero de pólvora, y se copió a
través de las unidades de disco de 8 pulgadas adosadas a las máquinas. A
los pocos días no quedaba Instituto en Moscú cuyas Elektronikas no
tuviesen una copia del TETRIS.

Se dice que el mismísimo Director - laureado Héroe del Trabajo
Socialista y condecorado con Órden de Lenin por el desarrollo del
mainframe ES EVM (clon del mainframe IBM S/370) - había vislumbrado a
sus matemáticos jugándolo, pero que de alguna forma - tal vez con poca
ciencia cierta - pudieron convencer al enorme catedrático de la valía de
este nuevo "juego para la mente".

Vladimir Pokhilko, jóven pediatra de 26 años y amigo de Pajítnov, fue
menos condescendiente. Le había pidido el juego para la Elektronica del
Instituo Médico de Moscú, y se lo llevó en un disco flexible de 8
pulgadas. Pokhilko estaba a cargo por entonces del plantel humano - que
comprendía las pasantes - y del material, que incluía la computadora y
las cuatro terminales, junto con la base de datos médica computarizada
del instituto de medicina pediátrica. El médico no tardó mucho comprobar
como sus pasantes y secretarias encargadas del data entry abandonaban el
trabajo en sus terminales de FOBOS para abocarse al TETRIS. Tuvo que
banear el juego del mainframe del instituto para recuperar la
productivad perdida. "Los becarios médicos me odiaron, y la supervisora
de la comisión hospitalaria Demodeva quería matarme por no alcanzar las
cuotas del registro computarizado del cuidado de la niñez. El juego se
había convertido en una excusa excelente para que los estudiantes
conocieran a las nuevas chicas del plantel técnico".

Para 1985 arribaron al Instuto de cómputo las primeras Computadoras
Personales IBM "AT". Estas máquinas disponían de un hardware de video
perfeccionado con respecto a las terminales de la Elektronika-60. Fue
por tal motivo que - aprovechando al pasante de 16 años y autodidacta
Vadim Gerasímov - se propuso un portado del código fuente a la misma.
Gerasímov portó el código desde el Ensamblador-11 al Ensamblador x86, e
incorporó al programa el uso de los 16 colores que permitía el novísimo
Adaptador Gráfico Mejorado de la PC. Compiló un ejecutable que era capaz
de correr en sistemas operativos tipo DOS de sólo 256K de memoria RAM. A
la vez, el programador Dimitri Pavlovski se ocupó en agregar un array
mejorado de tiempos, que - haciendo uso de las propiedades de esta
computadora - permitía variar la velocidad de juego gracias al uso bruto
de ciclos de reloj, y por lo tanto disponer niveles de dificultad, así
como desplegar un sistema de puntajes salvables (que permitía
recompensa). Para 1986 esta versión para PC "definitiva" quedó completa.

Si bien las IBM PC eran raras aún en la Unión Soviética, las
características del juego lo hicieron muy "solicitado". Se copiaba en
diskettes de 5 1/4 de baja densidad y se transfería "mano en mano".

Pajítnov le preguntó a su supervisor Victor Brjabrin - quien había
viajado fuera de la Unión Soviética en procura de hardware - que lo
ayudara a difundir Tetris. No se vendía software en la Unión Soviética,
y las creaciones dentro de la Academia en capacidad científica eran -
teóricamente - propiedad del Estado.

Brjabrin envió una copia del Tetris al comerciante húngaro de
electrónica Novotrade. Desde allí comenzaron a circular copias del juego
de muy bajo costo, pero fundamentalmente copias pirateadas de estas. La
vía de transmision era el disco flexible de 360KB para DOS, y así llegó
a Hungría, Alemania Oriental e incluso Polonia. Para mediados de junio
de 1986 el juego era una sensación tal en Hungría, que Robert Stein -
vendedor de software de la firma londinense Andromeda Software - no pudo
dejar de alucinar al ver cómo este sencillo juego de video durante una
visita comercial a Hungría para vender software de Spectrum ZX allí.