
Box64 y Box86 son emuladores de espacio de usuario para ejecutar aplicaciones tradicionales x86 y x86_64 en Arm, y la versión 0.2 de ambos es un gran paso adelante. Para aquellos de ustedes con dispositivos Arm (como una Raspberry Pi), estos dos proyectos definitivamente parecen interesantes y ampliarán sus opciones.
Los puntos destacados incluyen:
- DXVK 2.0 está funcionando.
- Los juegos de Unity3D ya están funcionando.
- Memoria reducida.
- Se agregó soporte para libfuse envuelto para que AppImage funcione.
- La discordia está funcionando.
Actualmente estoy tratando de rehacer mi Raspberry Pi 4 con Ubuntu para poder probar más cosas como esta, pero es un poco frustrante. Espero poder resolverlo para un video de descripción general en el futuro.
Registro de cambios de Box86 v0.2.8:
- Se agregó una función adicional vulkan, dxvk 2.0 funciona ahora
- Se agregó soporte para funciones malloc/free anuladas.
- Cargador elfo mejorado
- Manejo mejorado de dlsym con RTLD_NEXT.
- Se agregó BOX86_DYNAREC_SAFEFLAGS para permitir el ajuste fino de los indicadores de manejo de código generado por Dynarec en llamadas y devoluciones de funciones.
- Se agregó BOX86_BASH para instalar el binario bash x86 para que el script de shell se pueda ejecutar en el mundo x86.
- Se agregó BOX86_ROLLING_LOG para registrar solo los detalles en caso de bloqueo.
- Manejo mejorado del tamaño de TLS (los juegos de Unity3D ahora funcionan)
- Mejorado
execv
familia de funciones para una mejor integración con box86- Se agregaron algunas bibliotecas envueltas más, como FAudio.
- Envoltura gtk mejorada, SDL2, GL, vulkan (etc.)
- Procesamiento de señal mejorado y seguimiento de protección de memoria
- Se agregó soporte básico para el programa vinculado estáticamente. El subproceso aún no se está ejecutando, pero la asignación de memoria y el acceso a archivos funcionan.
El desarrollador también señaló:
«Con el uso de los nuevos SafeFlags, algunos programas de Windows C# ahora funcionan bien (esto es forzado cuando se detecta la familia de software Vara). Con soporte básico para un programa vinculado estáticamente, funciona un emulador antiguo, como el simulador para Linux. Un programa con hilos como mugen para linux sigue sin funcionar. La integración bash es útil para dispositivos sin integración binfmt, o para un script que verifica la máquina en la que se está ejecutando.
Registro de cambios de Box64 v0.2.0:
- Se agregó una función adicional vulkan, dxvk 2.0 funciona ahora
- Se agregó soporte para funciones malloc/free anuladas.
- Refactorización de la administración de memoria de Dynarec para reducir el espacio de memoria (del 20 % al 40 % del tamaño de Dynarec).
- Cargador elfo mejorado
- Manejo mejorado de dlsym con RTLD_NEXT.
- Se agregó BOX64_DYNAREC_SAFEFLAGS para permitir el ajuste fino de los indicadores de manejo de código generado por Dynarec en llamadas y devoluciones de funciones.
- Se agregó BOX64_BASH para instalar el binario bash x86_64 para que el script de shell se pueda ejecutar en el mundo x86_64.
- Se agregó BOX64_ROLLING_LOG para registrar solo los detalles en caso de bloqueo.
- Trabajando en la alineación de algunas estructuras pthread
- Más bibliotecas empaquetadas en la familia gtk
- Algunas correcciones en el código Dynarec x87 (reparación de un montón de juegos como ut2004 o Piczle Puzzle)
- Manejo mejorado del tamaño de TLS (los juegos de Unity3D ahora funcionan)
- Opciones adicionales de compilación PageSize
- Mejorado
execv
familia de funciones para una mejor integración con box64- Se agregó soporte para libfuse envuelto para que AppImage funcione.
- Se ajustó la integración con binfmt para que AppImages se seleccione automáticamente.
- Empaquetado mejorado de FAudio, SDL2, GL (y otros)
- Las bibliotecas encapsuladas adicionales, como libEGL.so, ayudan a emular las cargas de la biblioteca Qt4/5.
- Procesamiento de señal mejorado y seguimiento de protección de memoria
- Algunas correcciones de firmas para algunas funciones envueltas (en libc)
- Se agregaron más llamadas al sistema.
- Se agregaron muchos códigos de operación nuevos para ARM64 Dynarec.
El desarrollador también señaló que actualmente están funcionando juegos como Surviving Mars, Piczle Cross Adventure (usando Proton experimental), Unreal Torunament 2004, Obduction, Machinarium, Silicon Zero, Hacknet, Absolute Drift, Art of Rally, Dota 2. Además de aplicaciones como TeamSpeak 3 cliente y servidor o Discord.