Portando mi juego de Amiga de 1993 a Godot con un LLM leyendo el ensamblador 68000
Porting my 1993 Amiga game to Godot, with an LLM reading the 68000 assembly

En 1993, en Bagdad, un estudiante de ingeniería creó Babylonian Twins en un Amiga 500, programando en ensamblador 68000 puro. Décadas después, el autor usó un modelo de lenguaje grande (LLM) para portar el juego original a Godot, logrando que el LLM leyera y tradujera las 72,758 líneas de ensamblador, reprodujera los binarios originales byte a byte y reconstruyera el juego en un solo paso. El port moderno se ejecuta a 60 Hz, mientras que el original corre a 50 Hz, preservando la física original. El proyecto también incluyó la portación de un motor C++ de 34,000 líneas a Godot en una noche, y la integración del juego original como una segunda experiencia jugable.
El formato de nivel que un año antes había requerido varias rondas y mis correcciones, salió en una sola pasada, sin pistas de mi parte.
- btbuildem
> una copia del Manual de Referencia de Hardware de Amiga
aka El Libro... madre mía, esto me trae recuerdos polvorientos
Babylonian Twins tiene unas vibraciones muy fuertes de "Gods: Into the Wonderful", me pregunto si ese juego fue una inspiración para ti
- robviren
Me alegra ver que ha tropezado en algunas áreas. Siempre me sorprende lo mucho que acierta. Siempre había esperado que las partes más oscuras de la historia de la informática y los juegos fueran un área increíblemente difícil para que los agentes las extrajeran.
La cantidad de cosas no estándar, chapuceras y obtusas que había que hacer para implementar cosas en el pasado me parecen imposiblemente complicadas de tocar hoy en día. Mucha gente lo improvisaba sobre la marcha y usaba el hardware de maneras que nadie esperaba. Me recuerda a Tim Follin haciendo el audio de Plock en SNES y a Miyamoto sorprendido de que el audio fuera real. Sería muy interesante ver qué podríamos aprender sobre el desarrollo del pasado a partir de las percepciones de los agentes sobre cómo se construyó el código. Me encantan estas cosas y aprecio el post tan detallado.
- Sharlin
Lo que me interesa es el rendimiento y el uso de memoria. ¿Cuántas veces es menos eficiente el port de 2010 comparado con el original? ¿Y este nuevo?
- ericd
¡Vaya, eso es precioso para algo escrito en ensamblador, corriendo en 512k, buen trabajo!
- coder-pm
Mmm, ¿ejecutaste alguna vez el port del juego contra el original en UAE? ¿Con las mismas entradas? ¿O es solo que "se juega bien cuando lo juego yo"? Ese delta de 108 bytes es desconcertante...