Gracias, Calamity, tiene toda la pinta.

¿Para generar 120 modos tengo que añadir 120 modos distintos a ReslList.txt y luego ejecutar VMMaker?

EDITO Ahora que caigo: con esto de que no me funcionaba bien y hacia cosas raras, quité la radeon 7000 y pinche una arcadevga, pero ni siquiera llegó a cargar windows bien del todo...luego volvi a poner la 7000, y todo parecia correcto, pero no recuerdo cuando salió algo de nuevo hardware encontrado. Así que lo más seguro que sí que haya algo chungo con los drivers.

320x200 a 120 hz ¿cuántos khz serían?

Vamos a ver Recap, me da igual esta discusión a lo que voy es a configurar los drivers, así que esto es lo último que voy a decir porque se sale del hilo.

Para salir de dudas haz una prueba muy sencilla: carga en msdos puro un juego antiguo en VGA: el Doom, el Operation Wolf , el Golden Axe, el Blood Money... se verá perfectamente a 320x200 (con sus pixelotes eso sí) en un monitor de PC, ahora tal cual conecta la salida VGA a un monitor/tv de 15 khz y verás una bonita maraña de lineas fuera de sincronia.
Si haces la misma prueba con un PC1512 por ejemplo, que solo tenia CGA, y con un juego en CGA, 320x200  4 colores, lo más probable es que se vea correctamente en el monitor/tv de 15 khz (pero nunca lo he comprobado).

Recuerdo en ordenadores que solo tenian CGA o EGA (PC1512 ó PC1640) y su monitor propio que se veian scanlines que yo no veia en mi ordenador VGA con el mismo juego. En ordenadores con VGA se usaban monitores que soportasen VGA, que eran distintos a los anteriores y lógicamente tenían más definición y un dot-pitch más pequeño para soportar mayores resoluciones, no es ninguna aberración ni podredumbre, a nadie se le pasa por la cabeza usar autocad en un monitor arcade de 15 khz, los ordenadores pretenden ser versátiles. Las VGA emulaban CGA y ello provocaba incompatibilidades en ciertas ocasiones.

Mira, aqui tienes una descripción del modo que digo:
https://en.wikipedia.org/wiki/Mode_13h
https://en.wikipedia.org/wiki/Vga

Una de las virtudes de la ArcadeVGA es precisamente emitir estos modos a 15khz.

De acuerdo que segun las ecuaciones deberian ser modos a 15khz, pero eso dañaria los monitores VGA y usaban ciertos trucos para emitir a más frecuencia.

Y ahora tengo curiosidad por ver esos juegos en su resolución nativa de 320x200 en un monitor arcade a 15khz, aunque no fuera esa con la idea que se programaron, y me da exactamente igual si el haz de electrones sube o baja por el tubo 15700 veces por segundo. Simplemente necesito que mi ordenador tenga disponible la resolución de 320x200 a 15khz para cuando se le antoje al DosBOX usarla. Que es precisamente a lo que iba.


Calamity, efectivamente estaba usando el VMM y ARCADE_OSD antiguos, así que no le haría mucho caso o lo que salia antes como resoluciones tipo 240x192 a pantalla completa en Arcade_OSD (algo debia estar mal).

Con los nuevos la cosa cambia, ahora sí que añade los modos correctamente, incluso de 200 líneas o menos, pero hay muchos que bloquean el ordenador y dejan la pantalla en negro.

Ahora sí que el Dosbox elige las resoluciones correctamente a su antojo, aunque cuando elije 320x200, nada más se ve la mitad superior de la imagen pero estirada a toda la pantalla. El Rastan que probablemente use 320x224 o algo similar pero distinto a 320x200 se ve bien durante el juego, pero con unas franjas negras enormes. Cuando no es juego le pasa lo mismo: solo se ve media imagen estirada.

En Arcade_OSD aparecen muchos modos de todo tipo, algunos funcionan bien pero otros como les de se bloquea el ordenador (y creo que si un programa intenta usarlos se bloquea tambien).

Por las pruebas que he hecho:
- snes perfecto a pantalla completa con scroll suave
- master system perfecto a pantalla completa con franjas negras, scroll suave con vsync
- nes perfecto a pantalla completa con scroll suave
- genesis/mega cd etc: antes iba perfecto a pantalla completa con scroll suave, ahora es una de las resoluciones que bloquea el ordenador
- n64, perfecto aunque parpadea un poco a 640x480 (entrelazado)
-groovy mame, cadillac & dinosaurs, perfecto a 384x224, scroll suave, con una extraña ralentizacion puntual (pero las letras de los menus de mame se ven muy borrosas, al pulsar TAB).

Pego mi ReslLst.txt

## Desktop ##

 640 x 480 @ 30.000000 desktop

## PC ##

 320 x 200 @ 60.000000 pc
 320 x 200 @ 50.000000 pc
 320 x 240 @ 60.000000 pc
 320 x 240 @ 50.000000 pc

## Family Computer - Nintendo Entertainment System ##

 256 x 240 @ 60.098000 famicom

## Mark III - Master System ##

 248 x 192 @ 60.000000 mastersys
 256 x 192 @ 60.000000 mastersys

## PC Engine - Turbo Grafx ##

 336 x 224 @ 60.000000 pcengine
 544 x 242 @ 59.922743 pcengine

## Mega Drive - Genesis ##

 256 x 224 @ 60.000000 megadrive
 320 x 224 @ 60.000000 megadrive

## Super Famicom - SNES ##

 256 x 224 @ 60.098475 superfam
 256 x 239 @ 50.000000 superfam
 512 x 478 @ 25.000000 superfam
 512 x 448 @ 30.000000 superfam

## PC-8800 ##

 640 x 200 @ 60.000000 pc88

## PC-9800 ##

 640 x 400 @ 60.000000 pc98

## Sharp X-68000 ##

 256 x 240 @ 55.450000 x68000
 256 x 256 @ 55.450000 x68000
 512 x 480 @ 55.450000 x68000
 512 x 512 @ 55.450000 x68000
 768 x 512 @ 55.450000 x68000

## Amiga ##

 320 x 256 @ 50.000000 amiga

## Game Boy Advance ##

 240 x 160 @ 59.730000 gba

## Aux. ##

 240 x 200 @ 59.730000 aux
 256 x 244 @ 60.000000 aux
 256 x 240 @ 60.098475 aux
 320 x 240 @ 54.140000 aux
 320 x 244 @ 59.410646 aux
 384 x 240 @ 59.629403 aux

## Arcade ##

 336 x 240 @ 60.000000 aaa
 384 x 224 @ 60.000000 cps

Y mi VVMaker.ini

; VideoModeMaker - Options
; ------------------------
    
; 1. MAME
; -------

; Path for Mame executable, in case we want to extract xml information from it.

    MameExe = "c:\Mame\mame.exe"

; Path for Mame ini folder, in case we want to create an ini file for each game.
; Important: existing ini files will be overwritten.

    IniPath = "c:\Mame\ini\"

; Mame options.

    ListFromXML = 1        ; Processes Mame XML and get video mode list from it
    GenerateXML = 1        ; Extracts XML from Mame (only needed once)
    OnlyListMain = 0    ; Only list resolutions for games contained in MameMain.txt
    GenerateInis = 0    ; Creates an ini file for each Mame game, in the IniPath folder
    SDLMame = 0        ; Use SDLMame specific options

; Monitor orientation

    MonitorHorizontal = 1    ; 0 = Rotating monitor: horizontal and vertical games at their native resolution
                ;     Suitable for users that physically rotate their CRTs
                ; 1 = Horizontal monitor: horizontal games run at their native resolution and
                ;     vertical games are rotated to fit in horizontal monitor    

    RotatingDesktop = 0    ; Specifies if both desktop and monitor are rotated

; Aspect ratio for vertical games on horizontal monitor
;     4:3 (keeps original aspect ratio)
;     3:3 (stretches to square format)
;     3:4 (stretches to full screen)
;    h:v (custom aspect ratio)

    VerticalAspect = "4:3"


; 2. MONITOR
; ----------

; Monitor Type. Valid types: D9800, D9400, D9200, EGA, VGA, MULTI, H9110, PAL, NTSC, GENERIC, CUSTOM

    MonitorType = "CUSTOM"


; Monitor CUSTOM. These values will be used if MonitorType = "CUSTOM"
;
; monitor_specs0-6  HfreqMin-HfreqMax, VfreqMin,VfreqMax, HFrontPorch, HSyncPulse, HBackPorch, VfrontPorch, VSyncPulse, VBackPorch, HSyncPol, VSyncPol, ActiveLinesLimit, VirtualLinesLimit
;
;     * HfreqMin-HfreqMax: Minimum and maximum horizontal frequency, in Hz. Defines the range of horizontal frequencies the monitor is capable to sync.
;         The higher the horizontal frequency, the higher the vertical resolution available for the same vertical refresh.
;         The higher the horizontal frequency, the higher the vertical refresh available for the same vertical resolution.
;         The higher the horizontal frequency, the lower the horizontal amplitude of active video (narrower picture).
;
;    * VFreqMin-VfreqMax: Minimum and maximum vertical frequency, in Hz, Defines the range of vertical frequencies the monitor is capable to sync.
;
;    * HFrontPorch, HSyncPulse, HBackPorch: Horizontal timing and geometry, values in µs
;
;    * VfrontPorch, VSyncPulse, VBackPorch: Vertical timing and geometry, values in ms
;
;    * HSyncPol,VSyncPol: sync polarities, 0 = negative, 1 = positive.
;
;    * ActiveLinesLimit: Vertical resolutions until ActiveLinesLimit value included, are generated as progressive, regardless the possibility
;                           of obtaining the required vertical refresh value.
;
;    * VirtualLinesLimit: Vertical resolutions above ActiveLinesLimit and below VirtualLinesLimit are virtualized, that is, an interlaced resolution
;                            bigger that the native one is generated, with the right refresh, and "hardware stretch" is applied.
;                            Vertical resolutions above VirtulaLinesLimit are generated as interlaced, without any stretching.

    monitor_specs0    15625-16200, 49.50-65.00, 2.000, 4.700, 8.000, 0.064, 0.160, 1.056, 0, 0, 288, 448


; Tolerance for horizontal frequency, in kHz, enables extending the range defined by [ HfreqMin, HfreqMax ]
; The resulting allowed frequency range will be [ HfreqMin - HfreqTolerance, HfreqMax + HfreqTolerance ]

    HfreqTolerance = 0.010


; 3. MODELINE GENERATOR
; ---------------------

; Total number of modelines to generate. Here are the recommended values for each driver version:
; CRT_Emudriver, based on Catalyst 6.5:    160 modes (accepts up to 200, but above 160 HyperSpin will refuse to load)
; CRT_Emudriver, based on Catalyst 9.3:    120 modes (accepts some more but above 120 you can get some blue screens)
; Regular Catalyst                    :     60 modes (won't accept any more)

    TotalModes = 120

; If enabled, only creates modes with 32 bits per pixel color depth

    Only32BPPModes = 0

; Method for mode table generation. If Mame xml is processed, that will create a lot of different video modes, so the mode table
; will be optimized keeping the most relevant ones, and dropping the rest, to keep below the TotalModes value.
;
; 0 = Static table: modelines are generated keeping their original vertical refresh. This method is intended to be used in
;     combination with ini files for each game. 
;
; 1 = Dynamic table: a table of dummy modes is created using xres and yres values while ignoring vfreq. This method is intended
;     to be used in combination with Switchres or Groovymame. No ini files are required using this method (you should disable the
;     GenerateInis option).
;
; 2 = Magic table: a table of 'magic resolutions' is created, by ignoring xres and vfreq and just keeping yres. This method greatly reduces
;     the total number of modes in the list. It's only supported by GroovyMAME, and is intended as a workaround for the Hyperspin issue.

    ModeTableMethod_Custom = 0
    ModeTableMethod_XML = 1

; Minimum resolution values (these will be used instead of lower values)

    XresMin_XML = 240
    YresMin_XML = 240
    YresRound_XML = 4

    XresMin_Custom = 240
    YresMin_Custom = 160
    YresRound_Custom = 0

; Minimum dotclock value allowed by the video card, in MHz (i.e. DotClockMin = 7.010)

    DotClockMin = 0

; Number of iterations used by the mode generator [0,5]. The higher the number of iterations, the bigger the accuracy of the vertical
; refreshed obtained, normally at the cost of increasing the horizontal frequency strictly required.

    Iterations = 0

; Specifies if the refresh label is multiplied by 10 before rounding (experimental).

    VFreqLabelx10 = 0

; 4. DRIVER
; ---------

; Path for the driver folder

    DriverPath = ".\Driver\"

; If UpdateRegistry is enabled, UpdateDriver will only work if the driver version found in DriverPath matches the one installed
; in the system.

    UpdateRegistry = 1    ; Specifies if the video card registry section will be updated with the new video modes
                ; (will only work in combination with CRT_EMUDriver).
        
    UpdateDriver = 0    ; Specifies if the driver files in DriverPath will be updated with the new video modes, for
                ; future installations.

    AnyCatalyst = 0        ; Allows modelines to be installed for any Catalyst version. This option is experimental and
                ; known to produce some problems.

Por último una sugerencia tal vez imposible: ¿sería posible en una tarjeta gráfica con 2 salidas hacer que los modos de 15 khz salgan automaticamente por una salida y los de 31+ khz por la otra? para así poder tener conectado a la vez el monitor de pc y el arcade.

Ufff, me voy a comer.

Saludos.

Solian ser a 70hz o más, pero eran 320x200. En ningun momento he dicho que los juegos de PC fueran a 15khz. Pero les pegaría verse a 15khz, de hecho creo que la arcadevga ya trae en bios esos modos a 15khz (a 50hz o lo que sea). Pero, bueno, esto es salirse del tema.

El caso es que cuando instalé los drivers, antes de usar VMM habia modos funcionales de incluso 192 lineas, que en Arcade_OSD salian a pantalla completa, pero ahora parece que solo deja crear modos de 208 lineas como minimo, y se cuelga mucho y hace cosas raras :S

Es un ordenador con el windows limpio recien instalado y sin internet.

Cuando vuelva de jugar al futbol lo pongo.

Recap escribió:
pakoman escribió:

Ya se que si una resolucion "cabe" dentro de otra, lo que sobra se arregla con potenciómetros. Pero no es ese el problema ni los pixeles tienen por qué ser cuadrados (en el PC se usaba mucho 320x200 y llenaba toda la pantalla).

Querrás decir 2 x (320 x 200)...

Tú tienes toda la experiencia de primera mano en insufribles juegos de DOS y WIN que a mí me falta, pero te está fallando la memoria. Los juegos a 640 x 400 no eran a pantalla completa salvo que tu monitor fuera muy generoso y tú muy bruto con la amplitud vertical. El haz de electrones no empezaba a escupir tan al límite de forma natural, y dejaba, en efecto, dos franjas bien visibles y el "pixel" bastante cuadrado en estos formatos. Cógete cualquier captura directa a su resolución de uno de estos juegos y valora la relación de aspecto de los gráficos.

Y yo creo que no me has entendido. Lo que intento decir es que 320 x 200 y 320 x 240 van a darte el mismo resultado en pantalla sin tocar potenciómetros.


Es querer añadir una resolución que ya existe como nativa, pero a 15 khz para que los emuladores que eligen las resoluciones automáticamente según el juego la tengan disponible cuando la necesiten, y no tener que forzar una resolución fija ya que a veces el mismo juego usa varias.

Los emuladores eligen modo de vídeo en función de cómo los configuras --o el modo de tu escritorio-- y las "etiquetas" de VMM. Hay emuladores que no van a ser capaces de ir más allá de los modos asociados a etiquetas "base" (320 - 240 - 60, por ejemplo). Igual esto te suena raro pero creo que lo hablamos en este mismo hilo. Y espero que todo acabe estando explicado del tirón en un nuevo sitio de ¿próxima? apertura...

El cambio dinámico no creo que lo veas en nada que no sea Groovy MAME por bastante tiempo... Ahora, que no sé cómo pita Dosbox...



De todas formas no consigo añadir nuevos modos, no se qué pasa. Tengo que trastear un poco más o probar otras tarjetas.

¿Estás usando ReslList.txt y comprobando que no superas los límites establecidos vía VMMaker.INI?

No me entero con las citas del foro :S

No, quiero decir 320x200, era la resolución estandar de juegos en PC antaño: modo 13h (VGA 320 x 200 en 256 colores). Antes de eso 16, 4 o 2 colores (EGA, CGA, Hércules...). Mi primer PC tenia un monitor de 13 o 14", sin potenciómetros, y los juegos llenaban toda la pantalla.

Juegos a más resolución se contaban con los dedos de la mano, más recientemente Scorched Earth, Warlords...

En DosBOX hay cambio dinámico. Mi problema es añadir resoluciones y que estén disponibles para que el emulador las escoja. Lo suyo es configurar la resolución del DosBOX en fullscreen / original, para que elija la original del juego, que en la mayor parte de los casos era 320x200. La resolución del modo texto de msdos, etc.

Sí, por eso no se qué pasa.

Jeje, claro, ya te dije que cuando terminara la recreativa tiraria de drivers Calamity, que por ahora ya está bien de AdvanceMame :D

Ya se que si una resolucion "cabe" dentro de otra, lo que sobra se arregla con potenciómetros. Pero no es ese el problema ni los pixeles tienen por qué ser cuadrados (en el PC se usaba mucho 320x200 y llenaba toda la pantalla).

Es querer añadir una resolución que ya existe como nativa, pero a 15 khz para que los emuladores que eligen las resoluciones automáticamente según el juego la tengan disponible cuando la necesiten, y no tener que forzar una resolución fija ya que a veces el mismo juego usa varias.

De todas formas no consigo añadir nuevos modos, no se qué pasa. Tengo que trastear un poco más o probar otras tarjetas.

Saludos.

Hola.

Estoy usando la 6.5 para XP64 bits con una radeon 7000.

Olvida lo anterior. Esos modos aparecian nada más instalar los drivers, antes de poner mame y ejecutar VMM. De hecho aparecian muchos modelines, algunos repetidos aunque con distinta frecuencia horizontal al ejecutar Arcade_osd.

Una vez ejecutado VMM la lista de modos ha pasado de 96 a 24, y no añade los modos que le pongo editando ReslList.txt. No aparecen en el Arcade_OSD, ni siquiera después de reiniciar, siguen apareciendo siempre los mismos modos.

El modo que intentaba usar DosBox que me daba problemas es 320x200@60, que sigo sin poder añadirlo a 15 khz (está el nativo, que se ve en monitor SVGA aunque mal), si fuerzo 320x240 funciona y se ve muy bien a 15 khz, pero con franjas negras.

Saludos.

Hola. Hey Recap, qué tal.

Soy nuevo en el foro, creo que nunca me registré ni posteé nada, aunque miro los foros de vez en cuando. Aunque con recreativas, emuladores,  resoluciones nativas, etc ya llevo muchos años trasteando. Conozco a Recap en persona desde hace años.

Mi último proyecto es una recreativa hecha desde 0 casi con windows xp 64 y la idea de emular el mayor nº posible de sistemas, con monitor Hantarex MTC 9000 y resoluciones nativas, por supuesto.

Estoy trasteando con una radeon 7000 y los drivers de calamity (tambien tengo disponibles una arcadevga 9200, una radeon 9250 y una radeon 9550, pero para el caso creo que da lo mismo).

El caso es que la 1ª duda que me surge una vez teniendolo todo instalado y mas o menos funcionando es en emuladores que eligen la resolucion original (que es variable) como DosBox.

Hay varias resoluciones 320x240, por ejemplo, algunas a 15 khz y otras a 31 o más. A veces el emulador elije una de las de 31khz y otras de las de 15 khz, según el juego. ¿Cómo puedo hacer para que esas resoluciones de 31+ khz no estén disponibles para que el emulador tenga que elegir una de 15khz?

En esas resoluciones en OSD_Arcade pone "Native" en las de 15 khz pone "custom". ¿Es posible eliminar esas resoluciones "native" para que no estén disponibles?

Se me ocurre, pero no estoy seguro, que con una arcadevga tal vez esas resoluciones nativas ya fueran de 15 khz, con lo que no tendría ese problema, aunque las resoluciones de la arcadevga en windows van mediante drivers, con lo que al usar los de calamity tal vez eso no pase.

Saludos y gracias.

PD: geniales los drivers, la solucion mas comoda para windows con diferencia :)

EDITO: no consigo que añade los modos que meto en reslist.txt, quiero añadir 320x200@60 hz, pero no hay forma.