Astral, un sistema operativo de Hobby desarrollado durante años por su autor, ya ejecutaba Minecraft y Factorio en actualizaciones recientes. La nueva frontera era más ambiciosa: portar Wine, la capa de compatibilidad que permite ejecutar programas de Windows, para hacer viable el sistema en el día a día. El motor que empujó el proyecto fue Cogmind, un roguelike de 32 bits exclusivo de Windows, pero el puerto existente de Wine sobre Astral estaba tan incompleto que ni siquiera el bloc de notas funcionaba correctamente.
El trabajo comenzó por lo básico: habilitar MinGW en la compilación de Wine para producir las DLL en formato PE, lo que ya解决了 los cuelgues del bloc de notas. El siguiente obstáculo fue OpenGL: Wine requiere EGL para conectarse con el sistema de ventanas, y el porte de Mesa en Astral no lo ofrecía sobre el backend xlib. La solución obligó a migrar al backend DRI, parchear Mesa para que X.org arrancase sin /dev/dri y, finalmente, conseguir que Deltarune, un juego real, iniciase.
Cogmind, además, es de 32 bits, y Astral solo soporta 64 bits. Para salvar esa brecha se activó el modo WoW64 de Wine, que ejecuta binarios Win32 dentro de un proceso de 64 bits traduciendo llamadas de sistema y estructuras de datos, sin necesidad de un userspace de 32 bits. Esto requirió implementar soporte de LDT (Local Descriptor Table) en el kernel, ya que x86-64 usa descriptores de segmento de 32 bits en modo largo para ejecutar código de 32 bits, y añadir lógica fina en el manejo de señales y syscalls de Wine.
Como resultado, Cogmind ya es jugable. Una de las últimas incidencias, la subida de puntuaciones, se debía a un registro no guardado en __wine_unix_call_dispatcher que rompía la transición PE-Unix. Con ese error corregido, la conexión con los servidores de Cogmind funciona. Otros programas probados muestran el alcance real: FTL funciona; Steam instala y actualiza pero falla al arrancar Chromium por un GetInterfaceAddresses() roto; Noita y Spooky's Jumpscare Mansion arrancan demasiado lentos; Plants vs. Zombies está bloqueada por el DRM de Steam, y los juegos de Unity se atascan en wine-mono. El autor marca como próximo objetivo lograr que Steam arranque, además de optimizar kernel y drivers de Astral.
