Software Support > GroovyMAME

VMmaker - only 18 video modes?

<< < (2/4) > >>

robboman:
Confirmed - the newer VMmaker is breaking my Hyperspin somehow.

I re-ran the older (pre-.146xml) VMmaker and I got the limited 18 video modes again, but then Hyperspin works again. 

Then I re-ran newer (.146 XML) VMmaker again. "720 video modes, remove redundants, 120 video modes saved".  But Hyperspin won't start :( 

I watched it from Task Manager and HS pops in for about a sec, then quits.  Nothing in event logs.

Any ideas?

Calamity:
Hi robboman,

Yes, the Hyperspin bug is known since long, it happens when there are too many modes available in the system. Reducing the number of modes avoids Hyperspin crashing but just kills the fun, so we found a workaround named "magic" resolutions:

http://forum.arcadecontrols.com/index.php?topic=121216.msg1285623#msg1285623

robboman:
Wow.. thanks for the quick support!  I'm not there yet.. tried what the other thread said about 'Magic resolutions'.  Now Hyperspin launches but all MAME games are giving me a black screen.  I can hear some audio from the games sped up to high pitch crazy speed. 

Could you please look at my vmmaker.ini and tell me if you spot anything wrong?


--- Quote ---; 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 = "D9200"


; 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 = 2

; 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.

--- End quote ---

Calamity:
Hi robboman,

Your vmmaker.ini is fine, I suspect about your mame.ini.

Please get me a log like this:

groovymame.exe romname -v -md 4 >romname.txt

Also, try changing -video ddraw for -video d3d.

robboman:
OK, done (dkong.txt output attached). 

Hundreds of lines that say "DirectDraw: Error 80004001 waiting for VBLANK"

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version