Retrocompatibilidad de Switch 2: cómo funciona entre hardware y emulación

by Tecnoandroid
Retrocompatibilidad de Switch 2: cómo funciona entre hardware y emulación - retrocompatibilidad Switch 2

La retrocompatibilidad de Switch 2 ha sido, desde el primer día, uno de los temas que más dudas ha generado entre quienes ya tenían una biblioteca enorme de juegos en la consola anterior. La pregunta era simple. ¿Cómo consigue Switch 2 hacer funcionar los títulos de la primera Switch? ¿Con un software pensado a propósito o con un sistema de emulación clásico? La respuesta, ya lo adelantamos, está más o menos en el medio de esos dos extremos.

Ese debate sobre cómo gestiona Nintendo Switch 2 los juegos antiguos se cerró hace bastante. Aquí hay un cambio de mentalidad respecto al pasado. En transiciones anteriores de Nintendo, pensemos en el salto de DS a 3DS o de Wii a Wii U, la compañía metía dentro de la nueva máquina el silicio nativo de la anterior para que los juegos se ejecutaran sin problemas. Con Switch 2 la historia es distinta, porque no lleva hardware dedicado de la primera Switch.

Quienes dieron la explicación fueron los ingenieros principales de la consola, Takuhiro Dohta y Kouichi Kawamoto. Según contaron en su momento, el planteamiento se coloca en un punto intermedio. Ni un chip físico repetido, que solo encarecería el producto, ni una emulación pura tradicional hecha íntegramente por software. Algo distinto, más elegante si se quiere.

Traducción binaria en tiempo real, el corazón del truco

La arquitectura de Switch 2 se apoya en un SoC de NVIDIA mucho más moderno y avanzado que el veterano Tegra X1, aquel chip con arquitectura Maxwell de 20nm que movía la Switch original. Ambos procesadores comparten el ecosistema ARM, cierto, pero las diferencias a nivel de instrucciones de CPU, las microarquitecturas de la GPU y la forma de gestionar la memoria hacían imposible una ejecución nativa directa. No encajaban sin más.

Link affiliato

La salida a ese problema, sin meter el procesador de la Switch original dentro de Switch 2 y sin disparar por tanto el precio final, pasa por un método de traducción binaria. Suena técnico, pero la idea de fondo es bastante intuitiva.

En lugar de interpretar cada instrucción de código línea por línea dentro de una máquina virtual, algo que dispararía el consumo de la CPU y, de rebote, el gasto de batería, Switch 2 traduce el código compilado del juego original a las nuevas instrucciones del SoC de manera dinámica. Es decir, va convirtiendo sobre la marcha, a medida que los datos se leen desde la memoria o desde el cartucho.

Cómo engaña el sistema a los juegos antiguos

Durante todo ese proceso ocurre algo curioso. El sistema operativo de Switch 2 crea un entorno controlado que, dicho de forma sencilla, engaña al binario del juego. Le hace creer que sigue funcionando bajo las restricciones y las llamadas de la GPU Maxwell original, cuando en realidad esas órdenes se están mapeando directamente hacia la nueva arquitectura gráfica, mucho más potente.

Ese es el verdadero equilibrio que buscaban los ingenieros. Los juegos de la primera Switch se ejecutan pensando que están en la máquina de siempre, mientras el hardware moderno hace el trabajo pesado por debajo, sin que el usuario note nada raro y sin cargarse la eficiencia energética que tanto importa en una consola portátil.

Link affiliato

Fuente
Imagen: hardzone.es

Related Articles