Quisiera actualizar brevemente el hilo para comentar algunas novedades que creo que pueden ser de interés. Recientemente hemos hablado de la necesidad de migrar hacia hardware más moderno que nos permita montar equipos aceptablemente potentes destinados a emulación. Llevaba tiempo queriendo experimentar con la última generación de tarjetas ATI que hasta el momento ha soportado plenamente los monitores arcade, esto es, la familia ATI HD4000, dado que gracias a SailorSat, autor de Soft-15KHz, sabemos que a partir de las HD5000 no se ha conseguido la compatibilidad con monitores arcade (o en general aquellos que no tienen EDID) por los procedimientos habituales. En este momento estoy haciendo pruebas con la tarjeta HD4350 y una nueva versión de los drivers basada en Catalyst 9.3, que he parcheado para resolver los problemas habituales, básicamente la limitación de 60 modos personalizados y el problema tradicional de doublescan forzado para los modos 320x y 400x. Ahora mismo dispongo de una versión plenamente funcional, que espero colgar en cuanto tenga listos ciertos cambios en VMMaker para trabajar con el nuevo sistema de "etiquetado" de modos que se hace necesario en esta nueva versión. No obstante he de decir que esta vez nos quedamos lejos de obtener los 200 modos que soportaba la versión basada en Catalyst 6.5, y debemos conformarnos con una cifra más modesta, en torno a 134-137 modos. De todos modos, veremos que esto no será un problema en el futuro próximo, como explicaré después.
Como Recap sabe, llevo tiempo pensando en una nueva forma de trabajar con modos de vídeo, para prescindir, al menos parcialmente, de tablas de modos precalculadas y generar los modelines de forma dinámica y transparente al usuario. Hasta ahora, los programas utilizados para instalar modelines (Soft15Khz, Winmodelines, o VMMaker) necesitan reiniciar el sistema para que los cambios sean efectivos. No obstante, es posible, al menos para las tarjetas ATI, modificar los datos de un modo concreto, de manera que los cambios sean efectivos instantáneamente, sin reiniciar el equipo, siempre (ojo), que el modo original ya se encontrara instalado en el equipo con anterioridad. Por ejemplo, si instalamos un modo genérico con resolución 320x240, podríamos modificarlo posteriormente para cubrir toda la casuística de refrescos verticales que podamos necesitar asociados a esa resolución, ajustando el modo 320x240 al refresco deseado justo antes de ejecutar el emulador, sin necesidad de reinciar el equipo. Una demostración práctica de esa propiedad ya está incluida en el programa Arcade_OSD. De hecho, el centrado y edición dinámica de modos es justo eso: nos permite ver los cambios en el modo en tiempo real. Esta propiedad no parece estar documentada en ninguna parte, por ello decidí introducirla con prudencia hasta comprobar que efectivamente funciona de forma estable, dado que era algo demasiado bueno como para darle bombo y que quedara en un fiasco. En este momento estoy haciendo pruebas con la modificación dinámica de modos tanto en Catalyst 6.5 como en 9.3, y parece funcionar sin problemas en ambos, por lo que de momento quedarían cubiertas tanto las Radeon antiguas como las nuevas (hasta la familia HD4000 incluida). Así que ha llegado la hora de explotar esta propiedad hasta sus últimas consecuencias.
La nueva versión del driver que dará cobertura a las nuevas Radeon permitirá, como decía, un máximo de 134 modos. No obstante, en el momento en que se aplique la nueva técnica dinámica, ese número de modos debe ser más que suficiente, ya que cada uno de los modos o resoluciones de base permitirá a su vez generar innumerables refrescos. Para sacar partido de dicha técnica, será necesario utilizar una especie de cargador de emuladores, un pequeño programa que prepare el modo de vídeo que vamos a usar justo antes de lanzar el emulador.
En este momento estoy colaborando con Chris Kennedy, en el foro BYOAC, en el desarrollo de Switchres, un programa que cumplirá esta función y otras muchas. En el desarrollo se han integrado las funciones y métodos para cálculo de modelines que utilizo en VMMaker, generalizándolas para varios rangos de frecuencia, para dar cobertura también a monitores multifrecuencia. En concreto, hemos probado con el WG D9800, que sin entrar a juzgar la calidad de su electrónica, al menos en cuanto a funcionalidad sí que parece que podría ser el monitor definitivo para emulación que alguna vez hemos postulado. El hilo en cuestión es este:
http://forum.arcadecontrols.com/index.p … c=106405.0
No obstante, el grueso del proyecto es la adaptación del sistema Linux para dar soporte a monitores arcade. De forma que Switchres sería una aplicación utilizable en ambas plataformas. El interés del sistema Linux reside en que, al tener disponible el código que accede al hardware de vídeo, en principio y con tiempo parece posible realizar cualquier cosa imaginable. De hecho el soporte para modos dinámicos que se conseguirá en Linux, una vez resueltos los problemas existentes, será genuinamente dinámico, a diferencia de Windows, donde tendremos que mantener una tabla de modos sobre la que actuar. Si bien el manejo de este sistema está fuera del alcance del usuario medio de Windows, la idea por el momento es obtener una distribución live-CD, de forma que cualquiera pueda probarlo simplemente arrancando desde un CD. En cualquier caso, el desarrollo conjunto aportará información y mejoras para ambos sistemas.