VOGONS


First post, by auron

User metadata
Rank Oldbie
Rank
Oldbie

of course a question mainly for period systems. like, could a dx2/66 get away with running 1995 DOS games under win95?

i suppose one factor would be 8086 virtual mode implementation differences per CPU and also VME, although AFAIK software needs to be coded specifically to support that. did late DOS games support VME, or does win9x leverage it in some way on its part to reduce overhead? since late 486s had it, it could make for an interesting comparison running software with such a cpu and then swapping in an older model without it. another factor might be different 9x versions, like ME perhaps has more overhead than 95?

i've read that something actually working in favor of 9x over a real DOS is the 32-bit drivers running in the background for stuff like hard drive/CD access, supposedly speeding up games that use those a lot.

Reply 1 of 14, by Azarien

User metadata
Rank Oldbie
Rank
Oldbie

I think it's more a matter of available memory rather than CPU speed. Certainly there will be a difference for a protected-mode game on a 4MB system...
Most of Windows would have to be swapped out.

I haven't noticed any CPU speed overhead in Windows.

Some games do not run under Win9x well or at all. Some run very well - especially those from 1995-1998, released after Windows 95 and tested for compatibility with it.
Some things work better due to Windows driver support - a good example being that on SB AWE64 you can select any soundfont bank for General MIDI sound, but only under Windows. You are stuck with the default one in pure DOS.

Reply 2 of 14, by Jo22

User metadata
Rank l33t++
Rank
l33t++
auron wrote:

i've read that something actually working in favor of 9x over a real DOS is the 32-bit drivers running in the background
for stuff like hard drive/CD access, supposedly speeding up games that use those a lot.

That's possible, I think. Some extender games that support DPMI may run well or better on Win9x.
In contrast, some Real-Mode games may experience timing issues, since the system timer is not available or not as accurate as it would be on pure DOS.

auron wrote:
i suppose one factor would be 8086 virtual mode implementation differences per CPU and also VME, although AFAIK software needs […]
Show full quote

i suppose one factor would be 8086 virtual mode implementation differences per CPU and also VME, although AFAIK
software needs to be coded specifically to support that. did late DOS games support VME, or does win9x leverage it in some way on its
part to reduce overhead? since late 486s had it, it could make for an interesting comparison running software with such a cpu and then
swapping in an older model without it. another factor might be different 9x versions, like ME perhaps has more overhead than 95?

Interestingt thought. I recommend reading Virtual Mode Extensions on the Pentium Processor -> http://www.rcollins.org/articles/vme1/
VME is the V86 extension that Ryzen originally messed up.. Not sure how much it was used, though or if Win95 already supported that.

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 4 of 14, by Jo22

User metadata
Rank l33t++
Rank
l33t++
Azarien wrote:
Jo22 wrote:

VME is the V86 extension that Ryzen originally messed up.

Was that eventually fixed or just disabled?

Good question. Some sources say either. OS/2 Museum said it's "fixed":
http://www.os2museum.com/wp/vme-fixed-on-amd-ryzen/
What ever that means. 😐

VME was useful for some late memory managers, too. The last releases by Qualitas/Quarterdeck, maybe (not sure).
I vaguely rememer some box arts of memory managers had a "Pentium optimized" sticker onto them, that's why I think of them.

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 5 of 14, by gaffa2002

User metadata
Rank Member
Rank
Member

In my experience, running DOS games under win9x gives some considerable performance loss on more demanding games (MDK, Stargunner, Blood, Duke 3D, etc).
Btw I use a k6-2 450mhz with 256mb of RAM and Windows 98 SE.

LO-RES, HI-FUN

My DOS/ Win98 PC specs

EP-7KXA Motherboard
Athlon Thunderbird 750mhz
256Mb PC100 RAM
Geforce 4 MX440 64MB AGP (128 bit)
Sound Blaster AWE 64 CT4500 (ISA)
32GB HDD

Reply 6 of 14, by auron

User metadata
Rank Oldbie
Rank
Oldbie

got back to this question with some testing, i used a pentium 60 on a batman's revenge board, 32mb RAM, a matrox millennium and a quantum 1280AT on the onboard RZ1000 to run the duke3d shareware according to the criteria in dukebencTim.txt for comparability. the results (320x200) were 34 fps in DOS and 32 fps in win95b, so a ~6% loss.

however during actual gameplay, despite the slightly lower rendering performance the game was overall smoother on win95 on this particular setup because on DOS it showed servere hitches (0,5 or almost a second at times) while playing sounds or even just level traversal, and while improved, even an ample 4 or 8mb smartdrive could not fully iron out those issues, unlike prior testing on faster hdd/cpu setups. win95 also cuts down loading times dramatically. so the advantage of 32-bit disk access really shows in this game, even with the RZ1000 DMA apparently being forced off, so a DMA capable controller would only improve things on top of that.

now i suppose the other thing left to test is whether throwing the game on a RAMdrive in DOS could combine the best of both worlds...

Reply 7 of 14, by Damaniel

User metadata
Rank Newbie
Rank
Newbie
Jo22 wrote on 2018-10-17, 06:27:
Good question. Some sources say either. OS/2 Museum said it's "fixed": http://www.os2museum.com/wp/vme-fixed-on-amd-ryzen/ What […]
Show full quote
Azarien wrote:
Jo22 wrote:

VME is the V86 extension that Ryzen originally messed up.

Was that eventually fixed or just disabled?

Good question. Some sources say either. OS/2 Museum said it's "fixed":
http://www.os2museum.com/wp/vme-fixed-on-amd-ryzen/
What ever that means. 😐

VME was useful for some late memory managers, too. The last releases by Qualitas/Quarterdeck, maybe (not sure).
I vaguely rememer some box arts of memory managers had a "Pentium optimized" sticker onto them, that's why I think of them.

It's absolutely not fixed, even in the 3000 series. My Win98 VMs all stopped working after I moved from a Core i7-5820K to a Ryzen 3900X - both in VMWare and Virtualbox, exhibiting the same problems that the Ryzen 1xxx/2xxx CPUs did.

(It's possible that it's a motherboard/BIOS issue, but I'm running a pretty recent x570 motherboard with a 2 month old BIOS update and still having problems.)

Reply 8 of 14, by Jo22

User metadata
Rank l33t++
Rank
l33t++
auron wrote on 2020-04-19, 16:50:

win95 also cuts down loading times dramatically. so the advantage of 32-bit disk access really shows in this game,
even with the RZ1000 DMA apparently being forced off, so a DMA capable controller would only improve things on top of that.

This reminds me of an old issue of Byte Magazine from the mid-90s.
In that issue it was found out that Windows for Workgroups 3.11 was the Windows system with the best disk performance (with Cache/Fastdisk enabled).
- Outperforming both Windows NT 3.x and Chicago (Win95 codename) at the time! 😁

Of course, that has little relevance to DOS games. Win95 -or OS/2 Warp- was likely much better in this domain.

Damaniel wrote on 2020-04-19, 22:55:
Jo22 wrote on 2018-10-17, 06:27:
Good question. Some sources say either. OS/2 Museum said it's "fixed": http://www.os2museum.com/wp/vme-fixed-on-amd-ryzen/ What […]
Show full quote
Azarien wrote:

Was that eventually fixed or just disabled?

Good question. Some sources say either. OS/2 Museum said it's "fixed":
http://www.os2museum.com/wp/vme-fixed-on-amd-ryzen/
What ever that means. 😐

VME was useful for some late memory managers, too. The last releases by Qualitas/Quarterdeck, maybe (not sure).
I vaguely rememer some box arts of memory managers had a "Pentium optimized" sticker onto them, that's why I think of them.

It's absolutely not fixed, even in the 3000 series. My Win98 VMs all stopped working after I moved from a Core i7-5820K to a Ryzen 3900X - both in VMWare and Virtualbox, exhibiting the same problems that the Ryzen 1xxx/2xxx CPUs did.

(It's possible that it's a motherboard/BIOS issue, but I'm running a pretty recent x570 motherboard with a 2 month old BIOS update and still having problems.)

Thanks a lot for the feedback! I used to use many VMs and always wondered if I should get a new AMD based PC in the near future (last one had AMD Athlon 6 X2 CPU). 😐

Now, considering that -uhm- "Portalis X" (name altered to prevent starting a heated discussion) became the dominant PC OS
and that Apple uses Intel CPUs most of the time, maybe I should switch to Mac platform ? Before it makes the transition to ARM ? 😉

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 9 of 14, by AvalonH

User metadata
Rank Member
Rank
Member
auron wrote on 2020-04-19, 16:50:

got back to this question with some testing, i used a pentium 60 on a batman's revenge board, 32mb RAM, a matrox millennium and a quantum 1280AT on the onboard RZ1000 to run the duke3d shareware according to the criteria in dukebencTim.txt for comparability. the results (320x200) were 34 fps in DOS and 32 fps in win95b, so a ~6% loss.

however during actual gameplay, despite the slightly lower rendering performance the game was overall smoother on win95 on this particular setup because on DOS it showed servere hitches (0,5 or almost a second at times) while playing sounds or even just level traversal, and while improved, even an ample 4 or 8mb smartdrive could not fully iron out those issues, unlike prior testing on faster hdd/cpu setups. win95 also cuts down loading times dramatically. so the advantage of 32-bit disk access really shows in this game, even with the RZ1000 DMA apparently being forced off, so a DMA capable controller would only improve things on top of that.

now i suppose the other thing left to test is whether throwing the game on a RAMdrive in DOS could combine the best of both worlds...

Was emm386 loaded when you ran the DOS benchmark, that can slow down the general performance. You don't even need to run himem.sys for protected mode games like Duke3d to work, could also change results. About VME support with software, DOS 6.22 obviously would not support VME but did DOS 7.1 from win95b/ win98 add support to speed up V86 mode??

The slowdown you get in DOS is likely from the disk running in PIO mode, which will hammer the CPU on disk transfers. On my Pentium-75 using a promise 133 controller, it enables UDMA mode 5 with it's own bios extension loaded in DOS, no drivers needed and duke3D is noticeably smoother. I have seen old articles about hex editing a bios on intel chipstes(440bx etc) to enable bios services so Dos will boot with the selected UDMA mode usind the onboard IDE instead of defaulting to PIO modes in DOS.

Interesting to see if the RAMdrive stops the slowdowns you get. After DOS boots I create a large Ramdrive then move all of DOS itself, command.com, io.sys etc to the RAMdrive and reset all the environment variables like shell/comspec, temp folder etc to point at the Ramdrive so everything is running off the ram drive. That way the HD is completely bypassed and I can rule out any slowdown from the hard drive in benchmarks. Speeds up some games a bit on my P75.

Reply 10 of 14, by auron

User metadata
Rank Oldbie
Rank
Oldbie

definitely no emm386 loaded, himem was present however since this is DOS 7.1 and i don't have 6.22 available. couldn't get rid of it even with DOS=NOAUTO, so i'd probably have to make a boot floppy.

i had done some tests for this game in the past on later chipsets with DMA disabled in windows, so purely comparing 16-bit vs. 32-bit disk access, and recall seeing a big difference just from that (on faster pentiums). i had even disabled VCACHE to ensure that the performance boost in windows really does come from the 32-bit disk access.

with the RZ1000 i have no idea whether it is using DMA or PIO; the manual mentions some "specially-tuned system BIOS". at the least i'd expect some performance reducing bugfixing measures from windows or the BIOS to be active. unlike later chipsets with IDE DMA capability there is no DMA checkbox in device manager, but that's true for the adaptec SCSI cards as well and those should be definitely always doing DMA.

Reply 11 of 14, by auron

User metadata
Rank Oldbie
Rank
Oldbie

decided to test one more demanding game on this system and went for quake (timedemo 1 with sound). here it showed 15.8 fps in DOS and 15.5 in windows, so a much smaller difference. I/O bottlenecking showing as heavy stuttering does not seem to be as much of a concern as in duke, though it has to be said that the game is unplayable here anyway, regularily dropping well into the single digits. curiously i've also noticed that the game will merely allocate 8mb in windows, but it didn't seem to matter.

for the RZ1000, i found an option in BIOS to turn on type F DMA, which is supposed to be the fastest according to manual, and the 64 sector per burst mode. none of this seemed to have any effect on windows at all and the only benefit i could measure was a higher buffered read speed when running speedsys in DOS, 6613 kb/s vs. 8225 kb/s with DMA on. i guess the DMA on this thing might not be much more than a glorified PIO instead of true busmastering.

Reply 12 of 14, by AvalonH

User metadata
Rank Member
Rank
Member
auron wrote on 2020-04-19, 16:50:

got back to this question with some testing, i used a pentium 60 on a batman's revenge board, 32mb RAM, a matrox millennium and a quantum 1280AT on the onboard RZ1000 to run the duke3d shareware according to the criteria in dukebencTim.txt for comparability. the results (320x200) were 34 fps in DOS and 32 fps in win95b, so a ~6% loss.

however during actual gameplay, despite the slightly lower rendering performance the game was overall smoother on win95 on this particular setup because on DOS it showed servere hitches (0,5 or almost a second at times) while playing sounds or even just level traversal, and while improved, even an ample 4 or 8mb smartdrive could not fully iron out those issues, unlike prior testing on faster hdd/cpu setups. win95 also cuts down loading times dramatically. so the advantage of 32-bit disk access really shows in this game, even with the RZ1000 DMA apparently being forced off, so a DMA capable controller would only improve things on top of that.

now i suppose the other thing left to test is whether throwing the game on a RAMdrive in DOS could combine the best of both worlds...

Could you attach the file dukebencTim.txt to a post in this thread. I'm re-running Duke benchmarks and can't find that text file anywhere on the web.