# OXO

OXO es un videojuego desarrollado por el profesor británico Alexander S. Douglas en 1952 que simula un juego de ceros y cruces. Fue uno de los primeros juegos desarrollados en la historia temprana de los videojuegos. Douglas programó el juego como parte de una tesis sobre la interacción humano-computadora en la Universidad de Cambridge.
Fue escrito en la Electronic Delay Storage Automatic Calculator (EDSAC). EDSAC fue una de las primeras computadoras de programa almacenado, con memoria que se podía leer o escribir, y tenía tres pequeñas pantallas de tubos de rayos catódicos para mostrar el estado de la memoria; Douglas rediseñó una pantalla para demostrar cómo se mostraba otra información al usuario, como el estado de un juego de ceros y cruces. Después de que el juego cumplió su propósito el hardware original se descartó, pero luego se reconstruyó con éxito.
OXO, junto con un juego de damas de Christopher Strachey completado aproximadamente al mismo tiempo, es uno de los primeros juegos conocidos en mostrar imágenes en una pantalla electrónica. Bajo algunas definiciones, por lo tanto, puede calificar como el primer videojuego, aunque otras definiciones lo excluyen debido a su falta de gráficos en movimiento o de actualización en tiempo real.

## Historia

La computadora central Electronic Delay Storage Automatic Calculator (EDSAC) fue construida en el Laboratorio de Matemáticas de la Universidad de Cambridge entre 1946 y el 6 de mayo de 1949, cuando corrió su primer programa, y se mantuvo en uso hasta el 11 de julio de 1958. El EDSAC fue una de las primeras computadoras de programa almacenado, con memoria que se podía leer o escribir, y llenaba una habitación entera; incluía tres tubos de rayos catódicos (CRT) de matriz de puntos de 35 × 16 para mostrar gráficamente el estado de la memoria de la computadora. Como parte de una tesis sobre la interacción humano-computadora, Alexander Sandy Douglas, un estudiante de doctorado en matemáticas en la universidad, utilizó una de estas pantallas para retratar otra información para el usuario; eligió hacerlo mostrando el estado actual de un juego.
Douglas usó el EDSAC para simular un juego de ceros y cruces, y mostrar el estado del juego en la pantalla. Como otros videojuegos tempranos, después de cumplir el propósito de Douglas, el juego fue descartado. Douglas no le dio al juego un nombre más allá de "ceros y cruces"; el nombre OXO apareció por primera vez como el nombre del archivo de simulación creado por el historiador informático Martin Campbell-Kelly mientras creaba una simulación del EDSAC varias décadas después. Casi al mismo tiempo que se completó OXO, Christopher Strachey amplió un programa de damas que había escrito originalmente en 1951 y lo transfirió a la Ferranti Mark I, que mostraba el estado del juego en una pantalla CRT. OXO y el programa de damas de Strachey son los primeros juegos conocidos que muestran imágenes en una pantalla electrónica, aunque no está claro cuál de los dos juegos se mostró primero. Como se ejecutó en un dispositivo informático y usó una pantalla gráfica, OXO se considera bajo algunas definiciones como un contendiente para el primer videojuego, aunque bajo otras no lo es debido a su falta de gráficos en movimiento o gráficos que se actualizan continuamente.

## Interacción

Cada juego lo jugaba un usuario contra un oponente artificialmente inteligente, que podía jugar un juego "perfecto". El jugador ingresaba su entrada usando un controlador telefónico rotatorio, seleccionando cuál de los nueve cuadrados en el tablero deseaba mover a continuación. Su movimiento aparecería en la pantalla, y luego seguiría el movimiento de la computadora; la pantalla del juego solo se actualizaba cuando cambiaba el estado del juego. OXO no estaba disponible para el público en general y solo se podía jugar en el Laboratorio de Matemáticas de la Universidad de Cambridge con un permiso especial, ya que el EDSAC no se podía mover y tanto la computadora como el juego solo estaban destinados a fines de investigación académica.
Cuando el juego iniciaba se podía ver en la pequeña pantalla lo siguiente: