VOGONS


The Quest for Pixel Perfect DOS Emulation

Topic actions

Reply 40 of 60, by darry

User metadata
Rank l33t++
Rank
l33t++
mothergoose729 wrote on 2021-06-23, 02:24:
mothergoose729 wrote on 2021-02-01, 07:24:

The goal of this project is to make DOS on a modern PC look as close to identical as possible as a real DOS machine. This means identical resolution, identical refresh rate, and no software scaling.

Just to be clear, when using a any modern LCD with square pixels , displaying VGA mode 13h 320x200 and its non square pixels without ANY scaling (not even line-doubling/integer scaling) will give a tiny image with 16:10 aspect ratio centered on the screen .

However, and based on the other things you wrote, I believe that, when using an LCD,
a) you are not adverse to line-doubling/integer scaling in order to fill the screen as much as possible
b) you MIGHT tolerate some form of scaling (other than line-doubling/integer scaling) to allow for desired display aspect ratio (DAR) of non square pixel content on a square pixel monitor (any LCD), but would prefer to avoid having to resort to it

So in short, what I assume you meant to say is that

"The goal of this project is to make DOS on a modern PC look as close to identical as possible as a real DOS machine. This means identical resolution (or an integer multiple thereof on each axis), identical refresh rate, and as little scaling as possible while maintaining a display aspect ratio (DAR) as close as possible to what would have been the norm back in the day for a given game/application. "

Please correct me if I misunderstood, assumed wrongly and/or am being excessively pedantic .

That said, and assuming that I understand you, for VGA mode 13h 320x200, if using an LCD, getting one that is capable of 1600x1200@70Hz should allow the use of a custom resolution that is (320x5)x(200x4), uses line-doubling/integer scaling done by the GPU and avoids resorting to b) at least for games/applications that you expect to run with a 4:3 display aspect ratio (DAR) . Using one of the few modern 1920x1200@70Hz capable monitors at 1600x1200@70Hz should achieve that (with black bars on each side of the screen).

As a side note, I use such a monitor in a retro setup over VGA with an OSSC whose limitations unfortunately prevent me from using purely line-doubling/integer scaling . OSSC Pro will not have that limitation and should allow me pixel perfect integer scaling of 320x200 content to 1600x1200 .

Reply 41 of 60, by WDStudios

User metadata
Rank Member
Rank
Member
ZellSF wrote on 2021-06-23, 02:22:
The OP is about non-standard resolutions. Command & Conquer and Red Alert does not use any of those non-standard resolutions. Th […]
Show full quote

The OP is about non-standard resolutions. Command & Conquer and Red Alert does not use any of those non-standard resolutions. They use the well known standard resolutions of 320x200 and 640x400, which are 4:3.

...

It didn't scale to fit a 4:3 monitor.

It displayed a 4:3 image, as is, on a 4:3 monitor.

All right Zell, it's time for you to eat crow. I took a bunch of screenshots from the DOS version of Red Alert, running in a Win98 virtual machine in VMware, and they 100% match what I observed in the Win95 version.

First, a nice circle, rather than a tall oval (remember that the main menu screen is derived from the opening cinematic which the RA95 screenshots were from):

GbSFnnc.jpg

Now, more concentric circles in the background of the sidebar:

PluIcpC.jpg

At the score screen, the thing that is supposed to be a circle is a circle:

C3IwV03.jpg

The mission-select screen displays the exact same behavior in the DOS version as in RA95, and we only get a perfectly circular mouse cursor (at the expense of all the other circles) when the DAR is 1.6:1...

xUMUPd5.jpg

And finally another in-game screenshot, this time showing that the hammer and sickle are only the correct shape when the DAR is 1.6:1...

dmt4CVN.jpg

This settles it beyond a reasonable doubt. Red Alert was intended to be seen in 1.6:1 in both DOS and Windows. Any behavior to the contrary is incorrect and not what the developers intended.

Last edited by WDStudios on 2021-06-23, 03:47. Edited 3 times in total.

Since people like posting system specs:

LGA 2011
Core i7 Sandy Bridge @ 3.6 ghz
4 GB of RAM in quad-channel
Geforce GTX 780
1600 x 1200 monitor
Dual-booting WinXP Integral Edition and Win7 Pro 64-bit
-----
XP compatibility is the hill that I will die on.

Reply 42 of 60, by mothergoose729

User metadata
Rank Oldbie
Rank
Oldbie
ZellSF wrote on 2021-06-23, 02:52:

Not sure if I'm going more or less off topic, but what's your source that 640x400 is 70.100hz?

Having an LCD panel I couldn't care less about the modelines, but refresh rates I do have to get right.

I would say that is almost uniquely on topic.

I got it from here: http://tinyvga.com/vga-timing/640x400@70Hz

It is a website about programming micro controllers. I also sourced my 640x480 displaying timings from the same place, and all other timings are bit of fudging about in the numbers starting from one of those two reference points.

In my search for a good source on authentic display timings from retro hardware I wasn't able to find a good source for timings measured directly from real vga cards. I did find one source, but their measurements were in units I didn't know how to convert to ones I could use.

I would imagine 70.1 hz is within tolerance for most LCDs but if you find a better number feel free to share 😀.

Reply 43 of 60, by darry

User metadata
Rank l33t++
Rank
l33t++
ZellSF wrote on 2021-06-23, 02:52:

Not sure if I'm going more or less off topic, but what's your source that 640x400 is 70.100hz?

Having an LCD panel I couldn't care less about the modelines, but refresh rates I do have to get right.

VGA mode 13h 320x200@70Hz on a card with actual analogue VGA output is line doubled to 640x400@70Hz on output by the video card . This has been the case since the first IBM VGA .
To be as exact as possible 70.08Hz is closer to the actual refresh rate, AFAICR .

Reply 44 of 60, by darry

User metadata
Rank l33t++
Rank
l33t++
mothergoose729 wrote on 2021-06-23, 03:08:
I would say that is almost uniquely on topic. […]
Show full quote
ZellSF wrote on 2021-06-23, 02:52:

Not sure if I'm going more or less off topic, but what's your source that 640x400 is 70.100hz?

Having an LCD panel I couldn't care less about the modelines, but refresh rates I do have to get right.

I would say that is almost uniquely on topic.

I got it from here: http://tinyvga.com/vga-timing/640x400@70Hz

It is a website about programming micro controllers. I also sourced my 640x480 displaying timings from the same place, and all other timings are bit of fudging about in the numbers starting from one of those two reference points.

In my search for a good source on authentic display timings from retro hardware I wasn't able to find a good source for timings measured directly from real vga cards. I did find one source, but their measurements were in units I didn't know how to convert to ones I could use.

I would imagine 70.1 hz is within tolerance for most LCDs but if you find a better number feel free to share 😀.

Both my Philips 252B9 and my Acer VW257 handle mode 13h at 3020x200 @ 70.08-ish Hz (line-doubled to 640x400 by the VGA card) , as digitized to HDMI and output by an OSSC from a VGA card .

Reply 45 of 60, by mothergoose729

User metadata
Rank Oldbie
Rank
Oldbie
darry wrote on 2021-06-23, 03:05:
Just to be clear, when using a any modern LCD with square pixels , displaying VGA mode 13h 320x200 and its non square pixels wi […]
Show full quote
mothergoose729 wrote on 2021-06-23, 02:24:
mothergoose729 wrote on 2021-02-01, 07:24:

The goal of this project is to make DOS on a modern PC look as close to identical as possible as a real DOS machine. This means identical resolution, identical refresh rate, and no software scaling.

Just to be clear, when using a any modern LCD with square pixels , displaying VGA mode 13h 320x200 and its non square pixels without ANY scaling (not even line-doubling/integer scaling) will give a tiny image with 16:10 aspect ratio centered on the screen .

However, and based on the other things you wrote, I believe that, when using an LCD,
a) you are not adverse to line-doubling/integer scaling in order to fill the screen as much as possible
b) you MIGHT tolerate some form of scaling (other than line-doubling/integer scaling) to allow for desired display aspect ratio (DAR) of non square pixel content on a square pixel monitor (any LCD), but would prefer to avoid having to resort to it

So in short, what I assume you meant to say is that

"The goal of this project is to make DOS on a modern PC look as close to identical as possible as a real DOS machine. This means identical resolution (or an integer multiple thereof on each axis), identical refresh rate, and as little scaling as possible while maintaining a display aspect ratio (DAR) as close as possible to what would have been the norm back in the day for a given game/application. "

Please correct me if I misunderstood, assumed wrongly and/or am being excessively pedantic .

That said, and assuming that I understand you, for VGA mode 13h 320x200, if using an LCD, getting one that is capable of 1600x1200@70Hz should allow the use of a custom resolution that is (320x5)x(200x4), uses line-doubling/integer scaling done by the GPU and avoids resorting to b) at least for games/applications that you expect to run with a 4:3 display aspect ratio (DAR) . Using one of the few modern 1920x1200@70Hz capable monitors at 1600x1200@70Hz should achieve that (with black bars on each side of the screen).

As a side note, I use such a monitor in a retro setup over VGA with an OSSC whose limitations unfortunately prevent me from using purely line-doubling/integer scaling . OSSC Pro will not have that limitation and should allow me pixel perfect integer scaling of 320x200 content to 1600x1200 .

For what I was trying to accomplish, I want the signal coming out of my graphics card to whatever display to be a similar as I could get it to a real DOS machine. Aspect ratio correction is an interesting consequence of getting that right. I think if you want to scale DOS to a modern fixed pixel display with the correct aspect ratio than the tools in dosbox, PCem ect. are really good at that.

darry wrote on 2021-06-23, 03:12:
mothergoose729 wrote on 2021-06-23, 03:08:
I would say that is almost uniquely on topic. […]
Show full quote
ZellSF wrote on 2021-06-23, 02:52:

Not sure if I'm going more or less off topic, but what's your source that 640x400 is 70.100hz?

Having an LCD panel I couldn't care less about the modelines, but refresh rates I do have to get right.

I would say that is almost uniquely on topic.

I got it from here: http://tinyvga.com/vga-timing/640x400@70Hz

It is a website about programming micro controllers. I also sourced my 640x480 displaying timings from the same place, and all other timings are bit of fudging about in the numbers starting from one of those two reference points.

In my search for a good source on authentic display timings from retro hardware I wasn't able to find a good source for timings measured directly from real vga cards. I did find one source, but their measurements were in units I didn't know how to convert to ones I could use.

I would imagine 70.1 hz is within tolerance for most LCDs but if you find a better number feel free to share 😀.

Both my Philips 252B9 and my Acer VW257 handle mode 13h at 3020x200 @ 70.08-ish Hz (line-doubled to 640x400 by the VGA card) , as digitized to HDMI and output by an OSSC from a VGA card .

Interesting, thanks! 70.1 might be a slightly rounded number, the tools only give you so much fine control over the timings. Close enough I think.

Last edited by mothergoose729 on 2021-06-23, 03:16. Edited 2 times in total.

Reply 46 of 60, by WDStudios

User metadata
Rank Member
Rank
Member
darry wrote on 2021-06-23, 03:10:

VGA mode 13h 320x200@70Hz on a card with actual analogue VGA output is line doubled to 640x400@70Hz on output by the video card . This has been the case since the first IBM VGA .

That matches what I saw with the Red Alert DOS screenshots. The resolution appears to be 320 x 200, yet it occupied a 640 x 400 VMware window and 640 x 400 screenshots were taken.

Since people like posting system specs:

LGA 2011
Core i7 Sandy Bridge @ 3.6 ghz
4 GB of RAM in quad-channel
Geforce GTX 780
1600 x 1200 monitor
Dual-booting WinXP Integral Edition and Win7 Pro 64-bit
-----
XP compatibility is the hill that I will die on.

Reply 47 of 60, by ZellSF

User metadata
Rank l33t
Rank
l33t
darry wrote on 2021-06-23, 03:12:
mothergoose729 wrote on 2021-06-23, 03:08:
I would say that is almost uniquely on topic. […]
Show full quote
ZellSF wrote on 2021-06-23, 02:52:

Not sure if I'm going more or less off topic, but what's your source that 640x400 is 70.100hz?

Having an LCD panel I couldn't care less about the modelines, but refresh rates I do have to get right.

I would say that is almost uniquely on topic.

I got it from here: http://tinyvga.com/vga-timing/640x400@70Hz

It is a website about programming micro controllers. I also sourced my 640x480 displaying timings from the same place, and all other timings are bit of fudging about in the numbers starting from one of those two reference points.

In my search for a good source on authentic display timings from retro hardware I wasn't able to find a good source for timings measured directly from real vga cards. I did find one source, but their measurements were in units I didn't know how to convert to ones I could use.

I would imagine 70.1 hz is within tolerance for most LCDs but if you find a better number feel free to share 😀.

Both my Philips 252B9 and my Acer VW257 handle mode 13h at 3020x200 @ 70.08-ish Hz (line-doubled to 640x400 by the VGA card) , as digitized to HDMI and output by an OSSC from a VGA card .

Is 70.08Hz something you configured / set up, or was it the default refresh of the VGA card?

Reply 48 of 60, by darry

User metadata
Rank l33t++
Rank
l33t++
ZellSF wrote on 2021-06-23, 03:16:
darry wrote on 2021-06-23, 03:12:
mothergoose729 wrote on 2021-06-23, 03:08:
I would say that is almost uniquely on topic. […]
Show full quote

I would say that is almost uniquely on topic.

I got it from here: http://tinyvga.com/vga-timing/640x400@70Hz

It is a website about programming micro controllers. I also sourced my 640x480 displaying timings from the same place, and all other timings are bit of fudging about in the numbers starting from one of those two reference points.

In my search for a good source on authentic display timings from retro hardware I wasn't able to find a good source for timings measured directly from real vga cards. I did find one source, but their measurements were in units I didn't know how to convert to ones I could use.

I would imagine 70.1 hz is within tolerance for most LCDs but if you find a better number feel free to share 😀.

Both my Philips 252B9 and my Acer VW257 handle mode 13h at 3020x200 @ 70.08-ish Hz (line-doubled to 640x400 by the VGA card) , as digitized to HDMI and output by an OSSC from a VGA card .

Is 70.08Hz something you configured / set up, or was it the default refresh of the VGA card?

Video card default in DOS . The OSSC digitizes and can integer scale/line double (or multiply) but leaves the vertical refresh rate unchanged on output. The horizontal refresh rate can be output as is or be an integer multiple of the original (as required by line multiplication if this feature is used).

Reply 49 of 60, by mothergoose729

User metadata
Rank Oldbie
Rank
Oldbie
darry wrote on 2021-06-23, 03:22:
ZellSF wrote on 2021-06-23, 03:16:
darry wrote on 2021-06-23, 03:12:

Both my Philips 252B9 and my Acer VW257 handle mode 13h at 3020x200 @ 70.08-ish Hz (line-doubled to 640x400 by the VGA card) , as digitized to HDMI and output by an OSSC from a VGA card .

Is 70.08Hz something you configured / set up, or was it the default refresh of the VGA card?

Video card default in DOS . The OSSC digitizes and can integer scale/line double (or multiply) but leaves the vertical refresh rate unchanged on output. The horizontal refresh rate can be output as is or be an integer multiple of the original (as required by line multiplication if this feature is used).

I have an OSSC, how much detail about the display timings does it report from the source? That might be a really easy way to document the hardware I have.

Reply 50 of 60, by ZellSF

User metadata
Rank l33t
Rank
l33t
darry wrote on 2021-06-23, 03:22:
ZellSF wrote on 2021-06-23, 03:16:
darry wrote on 2021-06-23, 03:12:

Both my Philips 252B9 and my Acer VW257 handle mode 13h at 3020x200 @ 70.08-ish Hz (line-doubled to 640x400 by the VGA card) , as digitized to HDMI and output by an OSSC from a VGA card .

Is 70.08Hz something you configured / set up, or was it the default refresh of the VGA card?

Video card default in DOS . The OSSC digitizes and can integer scale/line double (or multiply) but leaves the vertical refresh rate unchanged on output. The horizontal refresh rate can be output as is or be an integer multiple of the original (as required by line multiplication if this feature is used).

Thanks, that's useful to know. I've tried to Google the exact decimal value of 320x200/640x400 earlier but couldn't find anything, just the vague 70hz. I wonder how much difference it would make if set to 70.00. Not that it matters since my display accepts 70.08 (well assuming the Nvidia drivers aren't lying about sending it).

Reply 51 of 60, by WDStudios

User metadata
Rank Member
Rank
Member

Zell is being awfully quiet about those Red Alert DOS screenshots...

Since people like posting system specs:

LGA 2011
Core i7 Sandy Bridge @ 3.6 ghz
4 GB of RAM in quad-channel
Geforce GTX 780
1600 x 1200 monitor
Dual-booting WinXP Integral Edition and Win7 Pro 64-bit
-----
XP compatibility is the hill that I will die on.

Reply 52 of 60, by mothergoose729

User metadata
Rank Oldbie
Rank
Oldbie
ZellSF wrote on 2021-06-23, 03:28:
darry wrote on 2021-06-23, 03:22:
ZellSF wrote on 2021-06-23, 03:16:

Is 70.08Hz something you configured / set up, or was it the default refresh of the VGA card?

Video card default in DOS . The OSSC digitizes and can integer scale/line double (or multiply) but leaves the vertical refresh rate unchanged on output. The horizontal refresh rate can be output as is or be an integer multiple of the original (as required by line multiplication if this feature is used).

Thanks, that's useful to know. I've tried to Google the exact decimal value of 320x200/640x400 earlier but couldn't find anything, just the vague 70hz. I wonder how much difference it would make if set to 70.00. Not that it matters since my display accepts 70.08 (well assuming the Nvidia drivers aren't lying about sending it).

The documented standard for VGA display timings I could find was 31khz horizontal refresh rate and 25.175 pixel clock, which all lines up with a 70.1 hz refresh rate. At 70hz you get a pixel clock of 25.15. They probably look the same, but I went with the slightly higher number. I imagine in the wild you might see a range of timings hovering around those numbers.

Reply 53 of 60, by darry

User metadata
Rank l33t++
Rank
l33t++
ZellSF wrote on 2021-06-23, 03:28:
darry wrote on 2021-06-23, 03:22:
ZellSF wrote on 2021-06-23, 03:16:

Is 70.08Hz something you configured / set up, or was it the default refresh of the VGA card?

Video card default in DOS . The OSSC digitizes and can integer scale/line double (or multiply) but leaves the vertical refresh rate unchanged on output. The horizontal refresh rate can be output as is or be an integer multiple of the original (as required by line multiplication if this feature is used).

Thanks, that's useful to know. I've tried to Google the exact decimal value of 320x200/640x400 earlier but couldn't find anything, just the vague 70hz. I wonder how much difference it would make if set to 70.00. Not that it matters since my display accepts 70.08 (well assuming the Nvidia drivers aren't lying about sending it).

AFAIK there is some tolerance and it is common to round things to 70Hz

If you take the values here http://tinyvga.com/vga-timing/640x400@70Hz , which says 70Hz, but actually calculate it as 1 second/((line duration in microsecond x 10e-6) x (number of lines)) = 1 / (31.777557100298 x 10E-6 x 449) = 70.086302895322751509430679287811 Hz

So it is more 70.08ish Hz as timings will vary slightly from card to cards and http://tinyvga.com/vga-timing/640x400@70Hz is likely not exactly canonical . 😉

EDIT : corrected typo in calculation

Last edited by darry on 2021-06-23, 04:12. Edited 1 time in total.

Reply 54 of 60, by darry

User metadata
Rank l33t++
Rank
l33t++
mothergoose729 wrote on 2021-06-23, 03:38:
ZellSF wrote on 2021-06-23, 03:28:
darry wrote on 2021-06-23, 03:22:

Video card default in DOS . The OSSC digitizes and can integer scale/line double (or multiply) but leaves the vertical refresh rate unchanged on output. The horizontal refresh rate can be output as is or be an integer multiple of the original (as required by line multiplication if this feature is used).

Thanks, that's useful to know. I've tried to Google the exact decimal value of 320x200/640x400 earlier but couldn't find anything, just the vague 70hz. I wonder how much difference it would make if set to 70.00. Not that it matters since my display accepts 70.08 (well assuming the Nvidia drivers aren't lying about sending it).

The documented standard for VGA display timings I could find was 31khz horizontal refresh rate and 25.175 pixel clock, which all lines up with a 70.1 hz refresh rate. At 70hz you get a pixel clock of 25.15. They probably look the same, but I went with the slightly higher number. I imagine in the wild you might see a range of timings hovering around those numbers.

Vertical refresh for VGA is closer to 31.469KHz, AFAIK (and Wikipedia agrees, for what it's worth) . 😉

EDIT : and so does IBM : http://bitsavers.trailing-edge.com/pdf/ibm/pc … anual_May92.pdf

The video subsystem supports direct-drive analog displays. The
displays must have a horizontal scan rate of 31.5 kHz

EDIT2 : Page 416 of that IBM PDF DOC actual gives the duration for a period (1 frame) as 14.268 milliseconds , which gives 70.086907765629380431735351836277 Hz , which is about as close to canonical/official as we are going to get .

Reply 55 of 60, by mothergoose729

User metadata
Rank Oldbie
Rank
Oldbie
darry wrote on 2021-06-23, 03:50:
Vertical refresh for VGA is closer to 31.469KHz, AFAIK (and Wikipedia agrees, for what it's worth) . ;) […]
Show full quote
mothergoose729 wrote on 2021-06-23, 03:38:
ZellSF wrote on 2021-06-23, 03:28:

Thanks, that's useful to know. I've tried to Google the exact decimal value of 320x200/640x400 earlier but couldn't find anything, just the vague 70hz. I wonder how much difference it would make if set to 70.00. Not that it matters since my display accepts 70.08 (well assuming the Nvidia drivers aren't lying about sending it).

The documented standard for VGA display timings I could find was 31khz horizontal refresh rate and 25.175 pixel clock, which all lines up with a 70.1 hz refresh rate. At 70hz you get a pixel clock of 25.15. They probably look the same, but I went with the slightly higher number. I imagine in the wild you might see a range of timings hovering around those numbers.

Vertical refresh for VGA is closer to 31.469KHz, AFAIK (and Wikipedia agrees, for what it's worth) . 😉

EDIT : and so does IBM : http://bitsavers.trailing-edge.com/pdf/ibm/pc … anual_May92.pdf

The video subsystem supports direct-drive analog displays. The
displays must have a horizontal scan rate of 31.5 kHz

EDIT2 : Page 416 of that IBM PDF DOC actual gives the duration for a period (1 frame) as 14.268 milliseconds , which gives 70.086907765629380431735351836277 Hz , which is about as close to canonical/official as we are going to get .

Nice!

Reply 56 of 60, by bZbZbZ

User metadata
Rank Member
Rank
Member

I have a question about how to implement the settings here... After creating the custom resolution(s), is there any good way to force the desired refresh rate while DOSBox is running?

My scenario is that I run my CRT at 1280x1024 @ 85Hz for the Windows desktop. I find 60Hz on a CRT to be unpleasant but I'm willing to tolerate it during DOS gaming, particularly if the game engine is capped at 60fps. Many games that run exclusive fullscreen have an option to select the refresh rate in addition to the fullscreen resolution, but as far as I can tell DOSbox isn't one of them.

What's happening is that when I launch a game that should run in 640x480, I always end up getting 640x480 @ 85Hz (reported by my monitor's OSD). 640x400 @ 70Hz is actually fine, because the ONLY custom resolution I created in nVidia Control Panel with a 640x400 screen size is defined with a 70Hz refresh rate.

I don't want to use Custom Resolution Tool to delete the 640x480@85Hz because this is a setting I want to use for certain Windows games.

Do I really need to change my refresh rate in Windows Explorer (or nVidia control panel etc) to 60Hz before launching a 640x480 DOSbox game, then set it back to 85 Hz after a gaming session??

Reply 57 of 60, by mothergoose729

User metadata
Rank Oldbie
Rank
Oldbie
bZbZbZ wrote on 2023-06-24, 03:54:
I have a question about how to implement the settings here... After creating the custom resolution(s), is there any good way to […]
Show full quote

I have a question about how to implement the settings here... After creating the custom resolution(s), is there any good way to force the desired refresh rate while DOSBox is running?

My scenario is that I run my CRT at 1280x1024 @ 85Hz for the Windows desktop. I find 60Hz on a CRT to be unpleasant but I'm willing to tolerate it during DOS gaming, particularly if the game engine is capped at 60fps. Many games that run exclusive fullscreen have an option to select the refresh rate in addition to the fullscreen resolution, but as far as I can tell DOSbox isn't one of them.

What's happening is that when I launch a game that should run in 640x480, I always end up getting 640x480 @ 85Hz (reported by my monitor's OSD). 640x400 @ 70Hz is actually fine, because the ONLY custom resolution I created in nVidia Control Panel with a 640x400 screen size is defined with a 70Hz refresh rate.

I don't want to use Custom Resolution Tool to delete the 640x480@85Hz because this is a setting I want to use for certain Windows games.

Do I really need to change my refresh rate in Windows Explorer (or nVidia control panel etc) to 60Hz before launching a 640x480 DOSbox game, then set it back to 85 Hz after a gaming session??

Your driver or the custom resolution tool will let you define a 640x480 display setting at both 60hz and 85hz. Windows will pick one of them automatically when a full screen application runs at that resolution, but it doesn't discriminate based on framerate. I think the order that they are defined has an effect.

Reply 58 of 60, by bZbZbZ

User metadata
Rank Member
Rank
Member

Thanks for the reply... I'm still having difficulty getting Windows to "pick" the 60Hz version of 640x480.

I've tried using nVidia Control Panel (on the right of the screenshot) and also CRU (left). Initially I tried using nVidia Control Panel only. This was a bit dicey because Windows 10 (and vista and 7 I think) hides resolutions below 800x600.

When that didn't help, I used CRU to create a "Detailed Resolution" of 640x480 @ 60Hz. There is/was no Detailed Resolution listed for 640x480 @ 85 Hz. When that didn't work, I added 640x480 @ 60 Hz to the list of Standard Resolutions. I tried re-arranging the order of Standard Resolutions such that 60Hz was listed below 85Hz (as shown). I also tried it above 85Hz (not shown). Neither worked.

What does work... is if I set first my desktop resolution to 1280x1024 @ 60Hz, then launch a DOSbox game with the conf set to 640x480, I do get 640x480 @ 60Hz.

Attachments

Reply 59 of 60, by mothergoose729

User metadata
Rank Oldbie
Rank
Oldbie
bZbZbZ wrote on 2023-06-25, 03:27:
Thanks for the reply... I'm still having difficulty getting Windows to "pick" the 60Hz version of 640x480. […]
Show full quote

Thanks for the reply... I'm still having difficulty getting Windows to "pick" the 60Hz version of 640x480.

I've tried using nVidia Control Panel (on the right of the screenshot) and also CRU (left). Initially I tried using nVidia Control Panel only. This was a bit dicey because Windows 10 (and vista and 7 I think) hides resolutions below 800x600.

When that didn't help, I used CRU to create a "Detailed Resolution" of 640x480 @ 60Hz. There is/was no Detailed Resolution listed for 640x480 @ 85 Hz. When that didn't work, I added 640x480 @ 60 Hz to the list of Standard Resolutions. I tried re-arranging the order of Standard Resolutions such that 60Hz was listed below 85Hz (as shown). I also tried it above 85Hz (not shown). Neither worked.

What does work... is if I set first my desktop resolution to 1280x1024 @ 60Hz, then launch a DOSbox game with the conf set to 640x480, I do get 640x480 @ 60Hz.

I would try deleting the 640x480@85hz mode and then recreating it. It looks like it is defined before the 60hz mode, which might be why windows is preferring it.