Ajedrez liliputiense

El pasado mes de marzo estuvo marcado por el aniversario del ZX-81, que cumplió treinta y ocho años. Lo hizo manteniendo un excelente estado de forma, como demuestra la buena acogida que tuvo la reseña de un artículo publicado hace algunos años en esta santa web con referencias a 1K Chess, que a principios de esta década llegó a ser votado como el mejor programa jamás escrito.

Pero la verdadera sorpresa llegó cuando alguien me «mensajeó» para comentar que había escrito un nuevo juego de ajedrez para el ZX-81 todavía más pequeño que 1K Chess. Álex García ha logrado el más difícil todavía, y con su ChesSkelet puede presumir del que, muy probablemente, es el juego de ajedrez más pequeño de la historia. Y que a buen seguro lo seguirá siendo por mucho tiempo: teniendo en cuenta que en su versión más básica ocupa solamente 377 bytes, resulta difícil creer que alguien consiga mejorar el resultado.

Para hacerse a la idea, este párrafo de texto ocupa más que ChesSkelet entero; un programa plenamente funcional que es capaz de reconocer las reglas básicas del ajedrez y enfrentarse a nosotros con dignidad. Obviamente no cabe esperar a Deep Blue. Su propio autor reconoce que «un niño de seis años podría batirle», pero no por ello deja de sorprender.

Conviene repetirlo: 377 bytes en su versión más básica. Porque ChesSkelet se presenta nada menos que en tres. La primera busca ocupar lo menos posible y para ello prescinde de toda floritura imaginable, resultando excesivamente espartana. La gama se complementa con una versión intermedia de 420 bytes y culmina finalmente con otra «de lujo» que, aun mostrando una representación gráfica del tablero y otros detalles, ocupa solo 465. Y hay que tener en cuenta que el motor de juego es el mismo para las tres versiones. Lo que cambia es la presentación visual.

ChesSkelet es una auténtica obra de orfebrería, surgida a partir de un reto personal que Álex se marcó inspirado por 1K Chess y otros ejemplos comerciales de ajedrez liliputiense para ordenador. Buscaba rebasar todos los limites conocidos en cuanto a miniaturización de código y hay que decir que el resultado es francamente brillante. Álex lo cuenta todo en la web del proyecto, donde además se puede jugar on line con las tres versiones del programa e incluso ojear el código fuente, para solaz de los más cotillas.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.