Software Support > GroovyMAME
first time trying to use magic resolutions
Calamity:
Both ddraw/d3d logs look perfect.
--- Quote from: krick on July 04, 2012, 06:53:26 pm ---I don't think that this is important, but I figured I'd mention it just in case. I noticed that my desktop resolution is stuck on 16-bit color, at least according to the display properties dialog. Is that normal?
--- End quote ---
No, that's definitely not normal. Make sure you uncheck the box "Hide modes that this monitor cannot display" in Screen Properties/Advanced/Monitor. It's interesting because the 32-bit modes are indeed available and are being used by GroovyMAME.
I'm 99% sure that I tested this with Cat 9.3-64-bit and my HD 4350 before releasing it last summer, but my memory might fail.
krick:
I just uninstalled the 9.3 CRT_EmuDrivers, and uninstalled my Radeon HD 4550 from device manager.
I then shut down and swapped in my ATI Radeon X600XT and installed the 6.5 CRT_EmuDrivers.
I ran vmmaker with the same settings as before.
This time there were some differences...
1) DDraw now works. I tested a few games and they all appear to still work.
2) Interlaced 640x480 on the windows desktop looks far better. Easier on the eyes, overall less jittery, text is more readable.
3) According to display properties settings, my desktop is running with 32-bit color instead of 16-bit, though on my old setup, switching resolutions with the QuickRes utility might have caused that as I think all the listed resolutions were 16-bit.
4) When installing the CRT_EmuDriver this time, I got two errors at the end of the install. The first was that same "Copy File" error that I get with the other drivers. The second one was something about thunk.exe having a missing inf file.
I've attached the log files from running the same game "tetris" with ddraw. The 6.5 log is my X600XT, the 9.3 log is my HD 4550.
There are differences. Do a diff with a visual tool like BeyondCompare and you'll see them. Ignore the differences with the sound card stuff. I was having an issue with my sound card because the HD 4550 has some kind of onboard audio thing for the HDMI port and I didn't have the driver installed. I later installed it and ddraw still didn't work right with that card so that wasn't the issue.
Just so you know, this is a clean install of XP x64 from the CD less than a week ago. All that I installed were drivers for my sound card and on-board LAN, along with all the pending critical windows updates, .NET 3.5, and the latest DirectX Redistributable (June 2010)... http://www.microsoft.com/en-us/download/details.aspx?id=8109
Also, you might find this interesting.
This is the card I have... http://www.tigerdirect.ca/applications/SearchTools/item-details.asp?EdpNo=1599939&CatId=1559
It's a Radeon X600XT and it's actually made by ASUS.
Anyway, it has two outputs, one DVI, the other VGA. In my experience, the port at the "bottom" of the card, the one closest to the card edge is usually the primary port. However when I tried to attach my DVI-to-VGA adapter so I could connect my monitor, I discovered that the DVI port is a DVI-D only port. There are no holes for the analog pins in the adapter so you can't physically plug it in. So I ended up connecting my monitor to the VGA port, which I assumed was secondary. However it worked perfectly with CRT_EmuDriver and GroovyMAME, so it must actually be the primary port.
Calamity:
Hi Krick, thanks a lot for your detailed post.
Nice tool this BeyondCompare, I didn't know it. Well, your 32/64-bit logs are identical for the relevant bits. Something interesting is that some of your magic resolutions in the 32-bit log were already modified with previous modeline data, that's the proof that HS was just killing the process before it could restore the registry data. But that doesn't explain ddraw not working. Actually both logs show that the ddraw surfaces are succesfully created.
The ultimate test would be installing the 9.3 CRT_Emudriver now with the X600XT, as this one should be supported by both. If ddraw works, it would mean the problem is video card related. If ddraw doesn't work, then we should conclude it's driver dependent.
Now I'm thinking that possibly it was the X300 the card that I used when testing this last summer, not the HD 4350, because it allowed me testing with both versions of the driver without removing the card (accessing the mother board is a nightmare with my current cab). As it just worked I assumed that any supported card should work just the same.
As for the driver installation problem, I found this post: http://www.hardwareheaven.com/windows-xp-radeon-display-drivers/69335-common-problems-fixes.html
Find quote #19, there's a fix for this issue. However I don't believe it's a critical issue, at least for the use of the drivers that we do.
About the interlace quality, that' also interesting. You know that we can't actually control the interlace timing by means of modelines. This is a limitation indeed. We just specify that this specific modeline must be interlaced. Then the videocard is responsible for providing the relative shift of exactly 0.5 lines for each of the fields. I guess that some chipsets do better than others.
The VGA being the primary port in your X600XT was probably the standard at the time. All my X300 are the same on this regard, though their VGA ports are indeed at the bottom of the card, according to your theory, and they a have a proper DVI-I port.
krick:
--- Quote from: Calamity on July 07, 2012, 06:12:36 am ---
Nice tool this BeyondCompare, I didn't know it.
--- End quote ---
I've used BeyondCompare almost every day since I purchased it almost 10 years ago.
It can compare binary files, text files, word documents, PDF files, images, excel files, and tons of other types. Plus, for certain types, like source code or XML it can apply beautification before comparing. There's additional free file filters available on their site for download.
It can compare zip files directly without unzipping them first too. You can even compare a folder to a zip file.
I love being able to select two files in explorer and then right-click on one of them and hit "compare".
It's totally worth every penny.
--- Quote from: Calamity on July 07, 2012, 06:12:36 am ---
Well, your 32/64-bit logs are identical for the relevant bits. Something interesting is that some of your magic resolutions in the 32-bit log were already modified with previous modeline data, that's the proof that HS was just killing the process before it could restore the registry data. But that doesn't explain ddraw not working. Actually both logs show that the ddraw surfaces are succesfully created.
--- End quote ---
I made a change to my HyperSpin config so that it doesn't use "HyperLaunch" and now it exits properly.
--- Quote from: Calamity on July 07, 2012, 06:12:36 am ---
The ultimate test would be installing the 9.3 CRT_Emudriver now with the X600XT, as this one should be supported by both. If ddraw works, it would mean the problem is video card related. If ddraw doesn't work, then we should conclude it's driver dependent.
Now I'm thinking that possibly it was the X300 the card that I used when testing this last summer, not the HD 4350, because it allowed me testing with both versions of the driver without removing the card (accessing the mother board is a nightmare with my current cab). As it just worked I assumed that any supported card should work just the same.
--- End quote ---
I installed the 9.3 driver and ddraw works perfectly. So the problem must be my HD 4550 card.
--- Quote from: Calamity on July 07, 2012, 06:12:36 am ---
As for the driver installation problem, I found this post: http://www.hardwareheaven.com/windows-xp-radeon-display-drivers/69335-common-problems-fixes.html
Find quote #19, there's a fix for this issue. However I don't believe it's a critical issue, at least for the use of the drivers that we do.
--- End quote ---
I had a slightly different error this time. I had the "copy file" error as usual. But then the "thunk.exe" error said something different... "'Setup did not find a driver compatible with your current hardware or operating system. Setup will now exit." Of course, this is totally bogus as the driver installed fine. However, when I shut down, re-connected my arcade monitor, and restarted, windows was running 640x480, but NOT interlaced. I had to run VMMaker and restart before it would come up interlaced.
Based on that link you posted above, I think that thunk.exe stuff is related to setting the best resolution for the next restart. (smart gart?). With the 9.3 drivers, it failed for some reason.
Based on other stuff I've found, I suspect that the other "copy file" error might be related to the missing ATI Catalyst Control Center (CCC).
As a side note, how are you supposed to change your desktop resolution when you're using magic resolutions? Or is the only supported resolution 640x480 interlaced?
--- Quote from: Calamity on July 07, 2012, 06:12:36 am ---
About the interlace quality, that' also interesting. You know that we can't actually control the interlace timing by means of modelines. This is a limitation indeed. We just specify that this specific modeline must be interlaced. Then the videocard is responsible for providing the relative shift of exactly 0.5 lines for each of the fields. I guess that some chipsets do better than others.
--- End quote ---
The interlace looks the same on my X600XT with both 6.5 and 9.3 drivers, so the problem must be in my other card.
However as a sidebar, do you remember the issues I was having with my ArcadeVGA 3000 card and interlaced resolutions a while back that turned out to be driver related?...
http://forum.arcadecontrols.com/index.php?topic=111107.0
--- Quote ---The problem was totally in the ArcadeVGA driver. It didn't have anything to do with the refresh rate at all. It had something to do with the screen geometry. When I use the ArcadePerfect utility from the Ultimarc site, simply bumping up the vertical height +1 will completely fix 640x480 or 800x600 so they no longer look terrible. However to make the change permanent, Andy had to change the geometry in the driver itself.
The giveaway was that 720x480 looked great. When I compared it against 640x480 using ArcadePerfect, I noticed that the vertical height parameter was one less on 640x480, even though they should be the same.
--- End quote ---
--- Quote from: Calamity on July 07, 2012, 06:12:36 am ---
The VGA being the primary port in your X600XT was probably the standard at the time. All my X300 are the same on this regard, though their VGA ports are indeed at the bottom of the card, according to your theory, and they a have a proper DVI-I port.
--- End quote ---
Yeah, I've never seen a video card with a DVI-D port. I was surprised. I'm not sure who ASUS made this card for, or why, but TigerDirect was selling it in a plain brown box, so it's some sort of OEM card.
Calamity:
--- Quote from: krick on July 07, 2012, 12:42:03 pm ---I've used BeyondCompare almost every day since I purchased it almost 10 years ago.
--- End quote ---
I've just tested the trial version and it really looks that it could make my life much easier.
--- Quote ---I installed the 9.3 driver and ddraw works perfectly. So the problem must be my HD 4550 card.
--- End quote ---
Oh, thanks a LOT for getting to the bottom of the subject Krick. Now it makes sense, I'm almost sure that I used the X300 for testing. So for newer cards (HD 4xxx and probably others), d3d must be used with magic resolutions. Older cards can use either ddraw or d3d for this.
I don't have an idea of what possible reason can be behind of this. It could be that the drivers code follows a different path for the newer chipsets.
--- Quote ---However, when I shut down, re-connected my arcade monitor, and restarted, windows was running 640x480, but NOT interlaced. I had to run VMMaker and restart before it would come up interlaced.
--- End quote ---
I believe what happened is that the registry modelines didn't get properly installed because of the faulty installation process. Otherwise the 640x480 31 KHz would have been overriden by its 15 kHz counterpart. Anyway VMMaker rebuilt the mode table so that's fine.
--- Quote ---As a side note, how are you supposed to change your desktop resolution when you're using magic resolutions? Or is the only supported resolution 640x480 interlaced?
--- End quote ---
Any resolution you want to use for the desktop should be defined in ReslList.txt so it's processed by the ModeTableMethod_Custom variable and its values are preserved.
--- Quote ---However as a sidebar, do you remember the issues I was having with my ArcadeVGA 3000 card and interlaced resolutions a while back that turned out to be driver related?...
--- End quote ---
Sure I remember. Interlaced modelines need to be defined with an odd number of lines. My experience with older ATI cards is that if you define intelaced modelines with an even number of lines, the result is interlaced but the vfreq obtained is slightly different from expected, so it seems that the number of lines is internally truncated to an odd number anyway. But some newer versions of the hardware or drivers might require an explicit odd number for interlace to work properly.
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version