AttoChess es una reimplementación minimalista de un motor de ajedrez para DOS que reduce el tamaño del binario en diez bytes respecto al original sin tocar el núcleo del algoritmo de búsqueda. Las cinco optimizaciones actúan sobre los elementos que rodean a ese bucle principal.
La mayor ganancia llega en la representación del tablero. La versión original construye un búfer de renderizado, lo rellena transformando cada casilla en un carácter imprimible, añade un terminador '$' y lo imprime con la función DOS 09h. AttoChess elimina todo ese búfer: coloca retornos de carro y saltos de línea (0Dh, 0Ah) directamente en los bordes del tablero, de forma que los bytes en memoria ya son una secuencia imprimible, y los envía a la consola con la función rápida int 29h.
En el arranque se suprime la llamada int 10h para fijar el modo de vídeo: como la salida por int 29h no depende del modo, basta con inicializar el sentido de flags y el contador de filas. En la lectura de movimientos se precalculan los offsets ASCII en una dirección base y se aprovecha el desbordamiento de 16 bits, lo que borra la máscara and al, 0Fh y el par mov ah,12 + mul ah. En el bucle de búsqueda se sustituye el contador CX por una comparación de puntero contra el final del tablero, liberando CX como contador de profundidad y eliminando la recarga desde la pila. Por último, la dirección del peón se pliega en el bit de color con un único xor, evitando varias instrucciones de reordenamiento de bits y permitiendo que un solo camino de código sirva para blancas y negras.
