[CRT_Emudriver 1.2 (basado el Catalyst 6.5/9.3) para XP32/XP64]

[VideoModeMaker 1.3]

[Arcade_OSD 1.2]

[16/04/2011]·[por Calamity]

-----------------------------------------------------------------------------------------------

[CRT_EMUDriver] es una versión parcheada de Catalyst 6.5/9.3, para tarjetas ATI y el sistema operativo Windows XP-32/64, con objeto
de mejorar algunas de sus prestaciones relacionadas con los modos  de vídeo de baja resolución y su aplicación a la emulación en general,
para uso en monitores CRT de baja resolución (Arcade o TV).

  - Amplia en número de modos personalizados (modelines) disponibles en el sistema, hasta 200 (6.5) o 134 (9.3), frente a los 60 modos de
    los drivers convencionales.

  - Elimina el problema de los drivers Ati con las resoluciones horizontales de 320 y 400 puntos, en las cuales se activaba automáticamente
    el doublescan, por lo que era necesario nombrarlas como 321 y 401. Ahora ya pueden usarse normalmente, por ejemplo 320x240 ó 400x256.

  - Existen dos versiones paralelas, una basada en Catalyst 6.5, destinada a tarjetas antiguas, y otra basada en Catalyst 9.3 para tarjetas
    más nuevas. Hay tarjetas que son soportadas simultáneamente por ambas versiones, por tanto será decisión del usuario escoger una o la otra,
    teniendo en cuenta que la versión 6.5 para XP32 soporta el mayor número de modos de vídeo (200), mientras que las demás versiones están
    limitadas a 120 modos de vídeo.

  - Tarjetas soportadas por la versión 6.5: Ati Radeon 7000, 7200, 7500, 8500, 9000, 9100, 9200, 9250, 9500, 9550, 9600, 9700, 9800, X300,
    X550, X600, X700, X800, X850, X1300, X1600, X1800, X1900, X1950, ArcadeVGA 9200/9250, etc. (ver Nota 1)

  - Tarjetas soportadas por la versión 9.3: Ati Radeon 9500, 9550, 9600, 9700, 9800, X300, X550, X600, X700, X740, X800, X850, X1050, X1200,
    X1300, X1550, X1600, X1650, X1800, X1900, X1950, HD 2350, HD 2400, HD 2600, HD 2900, HD 3200, HD 3300, HD 3400, HD 3410, HD 3450, HD 3550,
    HD 3570, HD 3600, HD 3610, HD 3690, HD 3730, HD 3750, HD 3800, HD 3830, HD 3850, HD 3870, HD 4230, HD 4250, HD 4350, HD 4550, HD 4570,
    HD 4580, HD 4650, HD 4670, HD 4730, HD 4750, HD 4800, HD 4850, HD 4870, etc. (ver Nota 1)

[VideoModeMaker] es una utilidad que permite generar de forma automática los modos de vídeo (modelines) para la emulación de recreativas y
consolas. La configuración de los diferentes sistemas de Mame (.inis) se realiza automáticamente de manera simultánea a la generación de 
los modos de vídeo, sin necesidad de usar software adicional. Utilizado junto a CRT_EmuDriver, instalará en el sistema los modos de vídeo
generados, para que estén disponibles nada más reiniciar.

[Arcade_OSD] es una utilidad que, usada junto a CRT_EmuDriver, permite probar y editar de forma segura los modos de vídeo (modelines) generados
por VideoModeMaker, permitiendo diversos ajustes, como el centrado horizontal y vertical y edición de márgenes, en tiempo real (sin necesidad
de reiniciar para comprobar los resultados), así como medir la tasa de refresco real de cada modo.


Objetivo
--------

Se trata de un proyecto de carácter experimental, orientado a usuarios con experiencia previa en emuladores, especialmente Mame, para uso en
ordenadores dedicados a la emulación y monitores CRT de baja resolución (15 kHz).

El objetivo es obtener una señal de vídeo lo más fiel posible a la del sistema emulado, que nos permita ajustar la acción del juego a la tasa
de refresco vertical original (vsync) para lograr scrolles suaves y fluidos. Dada la gran variedad de resoluciones existentes en Mame, superior
a la capacidad del driver, el configurador realiza un cribado de las más importantes, pretendidamente inteligente.

Si bien se procura generar modos de vídeo centrados horizontalmente, la amplitud vertical habrá de regularse manualmente, bien desde la placa
de potenciómetros del monitor arcade, bien desde el menú de servicio del televisor.

Está optimizado para la Ati Radeon 9250, obteniéndose refrescos con una precisión aproximada de 2 centésimas de Hz.


Instrucciones para instalar el driver
-------------------------------------

El driver sólo es necesario instalarlo una vez.

  - Desinstalar cualquier otro driver de Ati existente. (ver Nota 2)

  - Reiniciar el sistema

  - Instalar el driver (entrar en la carpeta .\Driver y ejecutar Setup)

  - Reiniciar el sistema

  - NO instalar el Panel de Control de Ati, que podría interferir con la configuración.

  - Ir a Inicio/Ejecutar/"dxdiag", pestaña "Pantalla", comprobar que todas las características DirectX están habilitadas.


Instrucciones para utilizar el configurador "VideoModeMaker"
------------------------------------------------------------

  - Hacer una copia de seguridad de la carpeta Ini de Mame, y de los modelines que tuviéramos instalados, si es el caso, para salvaguardar la
    configuración previa en caso de que haya cualquier problema.

  - Abrir VMMaker.ini y editar los valores MameExe e IniPath para que apunten a la ruta correcta del ejecutable de Mame y de la carpeta Ini.
    Seguir las instrucciones en dicho archivo para la configuración del resto de parámetros.

  - Si vamos a utilizar GroovyMame, la variable ModeTableMethod deberá ser "1", para seleccionar una tabla de modos dinámica. En este caso, es
    muy importante desactivar la variable "GenerateInis", ya que GroovyMame funcionan si "inis". Si por el contrario utilizamos cualquier otra
    versión de Mame, entonces pondremos ModeTableMethod a "0" para generar una tabla estática de modos, y GenerateInis a "1", para generar los
    inis con la configuración de cada juego.

  - Ejecutar VMMMaker.exe (configurador del driver)

  - Si todo ha ido bien, reiniciar el sistema.

La configuración puede hacerse las veces que sea necesario, por ejemplo cuando se cambie la versión de Mame. Cada vez que se ejecuta, se generan
nuevos modelines que se instalan en el registro de Windows. Además, se actualiza el driver añadiéndole estos nuevos modos, que estarán ya disponibles
para una nueva instalación, de forma que pueda obtenerse una versión personalizada del driver que permita clonar la configuración en otros equipos.

Puede ser necesario corregir los parámetros relativos al monitor utilizado, como son el rango de frecuencias horizontal y vertical admisibles,
así como el timing de los modos (lo que permite corregir problemas de geometría). Una vez encontremos los valores óptimos para nuestro monitor,
estos se aplicarán a todos los modos de vídeo, que serán generados con estos nuevos parámetros.


Configuración adicional de Mame
-------------------------------

  - Como siempre, en opciones por defecto: DirectDraw, SIN hardware stretch, switch resolutions to fit.

  - Versiones hasta la v0.106: no es necesaria configuración ninguna adicional.

  - Versiones de la v0.107 en adelante: la configuración correcta se obtiene activando "triplebuffer" en las opciones generales para todas las roms.
    Esto puede generar problemas de pérdida de sincronización del sonido. Para solucionarlo es conveniente utilizar una versión de Mame que permita
    forzar la sincronización del sonido con el vídeo (opción SoundSync), como CabMame, y otras que han implementado dicha opción.

  - GroovyMame: no necesita configuración adicional. Utilizar las opciones por defecto creando el archivo mame.ini desde cero (groovymame -cc).

Orientación del monitor (Mame)
-----------------------------------

Se configura desde la opción "MonitorHorizontal" en el archivo VMMAker.ini
Puede tener los siguientes valores:

  0 = Monitor giratorio: se genera la resolución nativa tanto para juegos horizontales como verticales

  1 = Monitor horizontal: se genera la resolución nativa para juegos horizontales y se rotará para juegos verticales. Si además de rotar físicamente
      el monitor, el usuario rota simultáneamente el escritorio de Windows, debe activarse la opción "RotatingDesktop".


Historial de versiones
----------------------

[16/04/2011][CRT_EmuDriver 1.2][VideoModeMaker 1.3][Arcade_OSD 1.2]

  - Nueva versión basada en Catalyst 6.5 para Windows x64

  - [VideoModeMaker] Nueva versión 1.3, soporte para monitores multifrecuencia (beta).

[06/03/2011][CRT_EmuDriver 1.2][VideoModeMaker 1.2][Arcade_OSD 1.2]

  - Nueva versión basada en Catalyst 9.3 para Windows x64

  - [VideoModeMaker] Nuevas opciones VerticalAspect, ModeTableMethod, DotClockMin, AnyCatalyst (ver VMMaker.ini para más detalles).

  - [Arcade_OSD] Subsanado problema que impedía conservar los cambios aplicados al modo de vídeo del escritorio de Windows.

[24/12/2010][CRT_EmuDriver 1.2][VideoModeMaker 1.1][Arcade_OSD 1.1]

  - Nueva versión basada en Catalyst 9.3

  - VMMaker implementa nuevo sistema de etiquetado de modos en la versión 9.3, para diferenciar modos de vídeo con refrescos similiares. Se basa
    en utilizar tres cifras enteras para denominar el valor del refresco vertical, por ejemplo 320x256@55.5Hz se etiquetaría como 320x256_555. Esto
    debe tenerse en cuenta a la hora de configurar los emuladores, no obstante VMMaker genera los inis para Mame correctamente con el nuevo sistema.
    Se puede volver al sistema de etiquetado anterior (consistente en incrementos sucesivos de xres) estableciendo VFreqLabelx10 = 0 en VMMaker.ini.

  - VMMaker implementa mejoras en el generador de modelines, de forma que la temporización del monitor puede establecerse con mayor precisión (nuevas variables VFrontPorch, VSyncPulse, VBackPorch en VMMaker.ini)

  - Subsanado problema con Arcade_OSD y DDraw en Catalyst 9.3

  - Subsanado problema con Arcade_OSD al mostrar la temporización de modos entrelazados.

[05/10/2010][CRT_EmuDriver 1.1][VideoModeMaker 1.0][Arcade_OSD 1.0]

  - Subsanado problema de instalación del driver en tarjetas diferentes a las Radeon 9200/9250, debido a un error en los archivos .inf

  - Añadido soporte para Ati Radeon X1950 Pro (probado por ConanR)

  - Modos de vídeo preinstalados para Mame v0.139

[08/09/2010][CRT_EmuDriver 1.0][VideoModeMaker 1.0][Arcade_OSD 1.0]

  - Primera versión completa.


Notas
-----

  Nota 1: Si bien el driver soporta multitud de modelos de Ati, no todos ellos son programables para mostrar bajas resoluciones, o sólo pueden mostrar
          algunas. Esto es debido a que muchas tarjetas no pueden trabajar con valores de "dotclock" por debajo de cierto límite.

  Nota 2: Se recomienda usar la utilidad Catalyst Uninstaller antes de instalar el driver, para eliminar del sistema cualquier resto de software de Ati.
          Lamentablemente, ciertos conflictos con drivers anteriores presentes en el sistema pueden producir problemas a la hora de reinstalar nuevos
          drivers. Por ello se recomienda desinstalar manualmente los controladores Ati de Microsoft para que Windows trae instalados por defecto.


Agradecimientos
---------------

  A Jeroni Paul, creador de Winmodelines, programa que sirvió de inspiración y laboratorio de pruebas y sin el cual nada de esto habría sido posible.

  A Recap, por su implicación con el proyecto, ayuda con las pruebas y la selección de los principales sistemas.

  A Chris Kennedy, por su impagable trabajo en Switchres / GroovyMame / GroovyArcade.

  Agradecimientos especiales a los "beta-testers": Daicon-X, pakoto, ConanR, etc.

