Cómo funciona

Los PC Fútbol se publicaron como programas de Windows 95/98 (y, los más antiguos, de MS-DOS). Su código fuente nunca se publicó. Lo que sí tenemos es el programa en sí: millones de bytes de código máquina para los procesadores de la época. Este proyecto convierte ese código máquina, entero, en código fuente que se puede leer, compilar y ejecutar en los ordenadores de hoy.

No es un emulador

Un emulador imita un PC de 1998 entero y ejecuta el juego dentro. Aquí no hay PC imitado: el juego se traduce una sola vez y se compila como una aplicación normal del sistema. Por eso arranca al instante y va igual de fluido que cualquier programa moderno.

1. Traducir el programa

Primero se localizan todas las funciones del programa original con herramientas de ingeniería inversa. Después, un traductor propio convierte cada instrucción del procesador en su equivalente en C: los registros del procesador pasan a ser variables y la memoria del juego, una tabla. Cada función original se convierte en una función de C con las mismas operaciones y en el mismo orden.

No se reescribe nada a mano ni se «mejora» la lógica: la táctica, los fichajes, el simulador de partidos y la economía del club son exactamente los del juego original, porque son su mismo código.

2. Reconstruir lo que ponía Windows

El juego no hace todo solo: le pide muchas cosas a Windows. Abre ventanas, dibuja con DirectDraw y Direct3D, reproduce sonido con DirectSound, vídeos con DirectShow, lee el CD, guarda partidas… Todas esas piezas se han vuelto a escribir desde cero sobre SDL, una biblioteca que funciona en macOS, Windows, Linux y el navegador:

  • Ventanas, menús, botones y listas, con el aspecto de Windows 98.
  • Direct3D 6 entero por software: el simulador 3D de partidos.
  • Sonido 3D y música, y los vídeos MPEG de la intro y los goles.
  • Ficheros, registro de Windows, hilos y excepciones.

3. Comprobar que es el mismo juego

Cada arreglo se comprueba con guiones que manejan el ratón y el teclado solos, sacan capturas y vigilan el registro del programa. Así se recorre el juego sin tener que jugarlo a mano cada vez, y se detecta enseguida si algo deja de funcionar.

Y después, remasterizar

El orden es «fiel primero, mejoras después». Cuando cada juego funcione igual que el original, con el código ya legible, se podrán añadir cosas que entonces no existían: resoluciones modernas, pantalla completa nítida, jugar en el navegador…

¿Y los datos del juego?

No se distribuyen. Las bases de datos, gráficos, vídeos y músicas siguen siendo de sus autores. Para jugar hará falta el CD original: el programa traducido lee los datos de tu propia copia.