VOGONS


Reply 20 of 43, by Shponglefan

User metadata
Rank l33t
Rank
l33t
AlexZ wrote on 2023-04-25, 17:05:

If DOS is a priority then get a Pentium II 333 + 440LX/BX (not VIA). Those have open multiplier and thus can down clock if needed. You should be able to play games also in SVGA. 486 and Pentium 120 do not have have sufficient speed for SVGA games. You will be missing a lot.

A Pentium II 333 would be massive overkill if the goal is mid-90s DOS games though. At that point, you're well into the Windows 9x territory.

A fast Pentium (e.g. 166 or 200 MHz) is all that is needed even for SVGA games in DOS.

Pentium 4 Multi-OS Build
486 DX4-100 with 6 sound cards
486 DX-33 with 5 sound cards

Reply 21 of 43, by AlexZ

User metadata
Rank Member
Rank
Member

He would slow down PII 333 to 166Mhz (66Mhz x 2.5) to play games that can't handle 333Mhz and have a speed reserve.

Pentium III 900E, ECS P6BXT-A+, 384MB RAM, NVIDIA GeForce FX 5600 128MB, Voodoo 2 12MB, 80GB HDD, Yamaha SM718 ISA, 19" AOC 9GlrA
Athlon 64 3400+, MSI K8T Neo V, 1GB RAM, NVIDIA GeForce 7600GT 512MB, 250GB HDD, Sound Blaster Audigy 2 ZS

Reply 22 of 43, by keenmaster486

User metadata
Rank l33t
Rank
l33t

Pretty much the gold standard for a cheap and easy to come by DOS machine is Socket 7, i.e. Pentium, Pentium MMX, or AMD K6 or K6-II, with a Sound Blaster 16 and S3 Trio based video card, and a Compact Flash to IDE adapter. Very easy to put together and the parts are still relatively plentiful.

World's foremost 486 enjoyer.

Reply 23 of 43, by dionb

User metadata
Rank l33t++
Rank
l33t++
Shponglefan wrote on 2023-04-25, 17:27:

[...]

A Pentium II 333 would be massive overkill if the goal is mid-90s DOS games though. At that point, you're well into the Windows 9x territory.

A fast Pentium (e.g. 166 or 200 MHz) is all that is needed even for SVGA games in DOS.

Disagree. There were DOS games being made into 1997 as the P2 came out, and enough of them really appreciated more CPU power. My late DOS system has a P3-500 and I upgraded from a P200MMX because I found some thing running too slow. Note that I mostly play 4x games, iirc it was Master of Orion II, Ascendancy and Colonization that benefited most from the upgrade (despite the latter being a 1993 game!). I'm pretty confident Quake would also run a lot better on a P2 (or P3) than a P1, if only because of the 686 FPU.

That doesn't mean I would recommend a P3 as ideal retro system - I just recommended an ATX-based i430TX system - but it's not crazy either, and if you have trouble sourcing P1 ATX stuff, a P2 or early P3 with ATX board might make a lot of sense, as messing around with AT cases, PSUs, keyboards and mouse options is quite a few steps deeper down the rabbit hole without adding any extra playability.

(note that I am way down that hole myself, I just don't think someone wanting to run stuff on real hardware for the first time needs to dive down to the bottom straight away)

Reply 24 of 43, by HanSolo

User metadata
Rank Member
Rank
Member
dionb wrote on 2023-04-25, 21:07:

That doesn't mean I would recommend a P3 as ideal retro system - I just recommended an ATX-based i430TX system - but it's not crazy either, and if you have trouble sourcing P1 ATX stuff, a P2 or early P3 with ATX board might make a lot of sense, as messing around with AT cases, PSUs, keyboards and mouse options is quite a few steps deeper down the rabbit hole without adding any extra playability.

(note that I am way down that hole myself, I just don't think someone wanting to run stuff on real hardware for the first time needs to dive down to the bottom straight away)

This plus the additional costs that come with a good SS7-system.
But just to get the facts straight: most P2-333 do not have an open multiplier. Finding one can take some time, that's why I would recommend a P2 with Klamath core which are all unlocked.

Reply 25 of 43, by JayAlien

User metadata
Rank Member
Rank
Member

Screamer specs can be found here:

https://www.mobygames.com/game/621/screamer/specs/

One thing to note, these are often minimum specs, doesn’t mean the game will be enjoyable.

Screamer has two graphics modes, from memory something like 240p and 480p. I found the game unplayable at the higher res on a Pentium 233mmx, but not too bad on a Pentium 2 400mhz. My experience on these computers was both under win 98 rather than dos.

386sx25 SBP2 2M
P75(486) SB16 8M
P133 S3 Vir DX A64g 32M
P233MMX R128Pro A64 64M
Pii400 TNT2 Live! 128M
P3-1G V5 M80 256M
P3-1.4G R8500 A1 256M
A3200 9700Pro A2 512M
X6800 X850XT A2ZS 1G
E8600 X1950XTX Xfi 2G
QX9650 3870 Xfi 2G
i7-975 GTX570 Xfi 3GB

Reply 26 of 43, by dormcat

User metadata
Rank Oldbie
Rank
Oldbie

Guess I'm being late for the party. 😅 I agree with most replies in this thread so I'd just add my two cents of personal experience and viewpoints.

IMHO DOS games can be separated into three eras: early, middle, and late, with different (typical) system requirements:

Early DOS games:

  • CPU: 8088 to 80286
  • RAM: 640 KB base memory would be more than enough
  • Installation media: 1-3 low density or 1 high density floppy disk
  • HDD: Not required; most could be run on floppy disk(s)
  • ODD: Not required at all
  • Video: 320 x 200 monochrome, CGA (4 colors), or EGA (16 colors) graphics
  • Audio: PC speaker or AdLib
  • Common problems: Speed sensitive; unable to cope with too much RAM or HDD capacity
  • Examples: Maniac Mansion, Railroad Tycoon, Castlevania (original)

Middle DOS games:

  • CPU: 80386 to 80486
  • RAM: 1-4 MB; expanded memory manager usually required
  • Installation media: Several high density floppy disks or 1 CD-ROM
  • HDD: Usually required
  • ODD: A few games started using CD for voice acting
  • Video: 320 x 200 VGA (256 colors) graphics
  • Audio: Sound Blaster, ProAudio Spectrum, Gravis Ultrasound, etc. with voices in cutscenes and sometimes CD audio
  • Common problems: Memory management
  • Examples: Falcon 3.0, Ultima Underworld, F-15 Strike Eagle III

Late DOS games:

  • CPU: Pentium or above
  • RAM: 8+ MB, using protected mode (eliminating the need of memory managers)
  • Installation media: One or more CD-ROM
  • HDD: Required
  • ODD: Required for installation and usually required for running the game
  • Video: 640 x 480 SVGA or higher resolution; might require installing VESA driver and/or support 3D acceleration
  • Audio: Wavetable MIDI, CD audio, and full speech
  • Common problems: Need beefier system specs than minimal requirements for full experience
  • Examples: WarCraft II, Duke Nukem 3D, Fallout, JetFighter III, Star Trek: The Next Generation - A Final Unity

Screamer was clearly a late DOS game so you'll need a fast system beyond its minimal system requirements (80486DX2-66, 8 MB RAM, 30 MB HDD, double-speed CD-ROM). Since you don't need this build to run Windows games, a (Super) Socket 7 motherboard (with Intel 430TX, ALi Aladdin V, or VIA Apollo MVP3 chipset) paired with Pentium-MMX or K6 would allow you to run Screamer while maintains the ability to slow down (via turning L1/L2 cache off and/or software) for early to middle DOS games. A P2 build would still run late DOS games with ease but can be more tricky to slow down for older games.

Like many have said: Choose a Trio64/ViRGE and an ISA Sound Blaster (with OPL3 chip) for video and audio, respectively, for maxinum compatibilities.

A CF or SD card with 2 GB or less capacity and FAT16 partition would be more than enough for DOS games (unless you want CD emulation; see below) while giving you the convenience of exchanging files with a modern computer. Just remember to partition it with FDISK instead of on a modern computer.

A working ATAPI CD-ROM would be great for some mid-DOS games and all late DOS games. If you can't acquire one, however, you'll have to emulate one by copying the CD to your HDD / memory card. The largest single partition FAT16 can handle is 2 GB, and most motherboards of the era could handle HDD with 8.4 GB or less, you can only squeeze about a dozen CD-based games onto a 8 GB HDD / memory card with four FAT16 partitions. And you might encounter CD-DA issues with emulators. Therefore I strongly suggest acquiring a working ATAPI CD-ROM.

For older titles sensitive to speed and size (RAM and HDD), you might want to find really low capacity memory cards (got a 16 MB SD and a 48 MB CF myself) for swapping. As for RAM, 16 MB is a sweet spot for most DOS games; very few DOS games need more than that.

You might have to learn memory management with EMM386.EXE by changing parameters in CONFIG.SYS and AUTOEXEC.BAT; MS-DOS 6 introduced multiple startup configurations and was very handy for different games with different memory requirements.

That's about all I can think of now. BTW, anyone who has watched and loved ST: Picard season 3 shall play STTNG: A Final Unity. 😉

Reply 27 of 43, by Sphere0161

User metadata
Rank Newbie
Rank
Newbie
dionb wrote on 2023-04-25, 09:03:

Not ideal, but don't get to worried. Some speed-sensitive titles might not work, but they are in the minority and a lot will work. I also like late DOS games and my system for running them has a P3-500. The difference is that I have a separate system for older stuff (a 486SX-33 with turbo function to drop it to XT speeds).

I mostly want to play 486 games and Screamer smoothly.

If you already have a P3-733, by all means start with seeing what you can do on that. Most late DOS stuff will run perfectly well on it. Only start looking for other hardware if you hit issues.

I have absolutely nothing, I will be building from scratch.

For bare metal DOS stuff, the biggest requirement is an ISA slot for an ISA sound card (yes, PCI might be possible, but is a headache). Apart from that, if you are new to the game, go for convenience. 1995-1997 Socket 7 motherboards are relatively common and easy to work with. I wouldn't rule out Am5x86, but 486 boards are more expensive, much more fiddly to configure and Screamer would probably prefer something faster.

Roger that, forget 5x86 and go for socket 7 (Pentium @180-233Mhz)

Don't focus on that MHz number too much - the 'MHz myth' is a thing. You can only compare CPUs in the same family by MHz, but as soon as the design is different, the numbers become increasingly meaningless. Any Pentium-class CPU has a 64b wide memory bus where a 486 has a 32b wide bus. That goes a long way to explain why an Am5x86-133 is about the same speed as a Pentium 75 in most things. But "most things" doesn't necessarily mean what you want to run. Compared to 486, Pentium has a much stronger FPU (floating point unit) so where Quake is essentially unplayable on any 486 (including 5x86), it will run on an early Pentium - however apart from Quake almost no games of the time used the FPU. The same happens again with P1 vs P2: there the L2 cache moves from bus speed to (near) CPU clock which hugely boosts overall performance and the FPU is once again massively improved, and by 1997 games were (starting) to use it. In general, marketing claims focused on instructions (Pentium, MMX, SSE etc), but as a rule any benefits from them only became relevant years after indroduction. The big performance improvements came from simple things like memory bandwidth and cache size and speed. A Pentium MMX is significantly faster than an identically clocked Pentium non-MMX on the same board. Is it the MMX instructions? No. Chances are nothing that system is running will even use MMX. The difference is mostly due to the doubling of L1 cache from 16kB to 32kB.

That makes sense, thank you.

Creative cards, particularly the SB16, are and were a buggy mess (particularly with MIDI, but even without that they all had clicks, hisses or ringing sounds). They are a clear example of marketing trumping actual technical quality. But they are what a lot of people remember from the 'good old days'. If that's what you're after, go for it - indeed, try to find exactly which model you were used to hear so you can look for one with similar behaviour.

In an ideal situation: yes. But here as with the CPU: don't go mad in getting the 'perfect' system straight away.

As I would be getting every piece, I would like to at least have the right ports, like you said that I need ISA audio, so I will try to get a motherboard with it, on socket 7. I have to figure out what port does the S3 virge has, in case I got it.

Note by the way that S3 Virge cards are very common, but a lot of cheaper implementations have extremely poor analog circuitry, leading to fuzzy output and - worse - a washed-out, white-ish image. Vendors like Diamond, ELSA, Miro and Number Nine made extremely good S3 Virge cards, but they can be more sought-after/expensive than the crappy ones. Here again, there are rabbit holes to go down - the performance of the VRAM-based VirgeVX is frequently derided by DOS gaming enthousiasts, and indeed it is lower than the then cheaper Virge DX DRAM cards. But that's a few percent slower, which is peanuts >25 years later. Conversely, VRAM-based cards were more expensive and tend to have better build quality (and analog circuitry) so I actually prefer them.

I'll save the data for later.

If you are building from scratch, I'd suggest: - ATX form factor (AT is fine, but needs harder to find cases, power supplies, ke […]
Show full quote

If you are building from scratch, I'd suggest:
- ATX form factor (AT is fine, but needs harder to find cases, power supplies, keyboards and mice)
- Socket 7 motherboard. Something with Intel i430TX would be rock-solid. Via MVP3 gives more performance options (faster and slower) but can be more fiddly.
- S3 or nVidia TNT video card (for compatibiltiy - but in both cases get a good brand as cheap ones offer poor quality)
- ISA sound card. If you remember Soundblaster 16, go for that. If they are too expensive, check out something with OPTi 929/930 chip > very compatible and much easier to find cheaply
- you *can* mess around with original HDDs, but an IDE-CF adapter and a 4GB CF card is so much easier. Note that >=8GB you might hit BIOS limits with So7 systems, so stick with max 4GB for fewest hassles.

This is really useful thank you. Yes my idea was to use a CF card like with my ipod. Cant be bothered with a harddrive!

Pretty much the gold standard for a cheap and easy to come by DOS machine is Socket 7, i.e. Pentium, Pentium MMX, or AMD K6 or K6-II, with a Sound Blaster 16 and S3 Trio based video card, and a Compact Flash to IDE adapter. Very easy to put together and the parts are still relatively plentiful.

Yes, It seems everyone recommends socket 7 and S3 video card. So I think it is pretty much settle.

Reply 28 of 43, by Sphere0161

User metadata
Rank Newbie
Rank
Newbie

Guess I'm being late for the party. 😅 I agree with most replies in this thread so I'd just add my two cents of personal experience and viewpoints.

Never late for good content!

IMHO DOS games can be separated into three eras: early, middle, and late, with different (typical) system requirements: […]
Show full quote

IMHO DOS games can be separated into three eras: early, middle, and late, with different (typical) system requirements:

Early DOS games:
Middle DOS games:
Late DOS games:

I will be clearly playing mostly Middle DOS games and screamer (mostly nostalgia). I dont think I would play any other late dos game.

Screamer was clearly a late DOS game so you'll need a fast system beyond its minimal system requirements (80486DX2-66, 8 MB RAM, 30 MB HDD, double-speed CD-ROM). Since you don't need this build to run Windows games, a (Super) Socket 7 motherboard (with Intel 430TX, ALi Aladdin V, or VIA Apollo MVP3 chipset) paired with Pentium-MMX or K6 would allow you to run Screamer while maintains the ability to slow down (via turning L1/L2 cache off and/or software) for early to middle DOS games. A P2 build would still run late DOS games with ease but can be more tricky to slow down for older games.

Everyone is recommending a socket 7 motherboard and cpu, so I think I will go with that.

A CF or SD card with 2 GB or less capacity and FAT16 partition would be more than enough for DOS games (unless you want CD emulation; see below) while giving you the convenience of exchanging files with a modern computer. Just remember to partition it with FDISK instead of on a modern computer.

That is a good advice, because I would have formated in windows 🤦.

You might have to learn memory management with EMM386.EXE by changing parameters in CONFIG.SYS and AUTOEXEC.BAT; MS-DOS 6 introduced multiple startup configurations and was very handy for different games with different memory requirements.

Roger that!

Reply 29 of 43, by Shponglefan

User metadata
Rank l33t
Rank
l33t
dionb wrote on 2023-04-25, 21:07:

Disagree. There were DOS games being made into 1997 as the P2 came out, and enough of them really appreciated more CPU power. My late DOS system has a P3-500 and I upgraded from a P200MMX because I found some thing running too slow. Note that I mostly play 4x games, iirc it was Master of Orion II, Ascendancy and Colonization that benefited most from the upgrade (despite the latter being a 1993 game!). I'm pretty confident Quake would also run a lot better on a P2 (or P3) than a P1, if only because of the 686 FPU.

That's fair. Most of my gaming experience from that era is 90s FPS games (e.g. Quake, Duke 3D, Blood, etc.). I've found that in practice a 200 MHz Pentium runs those games with perfectly playable frame rates.

Quake would benefit from a faster system if one is running the DOS/software mode. But it also benefits more from running a 3D-accelerated version under Windows anyway.

Given that OP has mainly listed games from ~1995 as their target, I do stand by the recommendation for a fast Pentium/Pentium MMX system as being able to meet their needs. And with a Socket 7 build, it's still possible to go even faster via AMD processors.

Pentium 4 Multi-OS Build
486 DX4-100 with 6 sound cards
486 DX-33 with 5 sound cards

Reply 30 of 43, by Socket3

User metadata
Rank Oldbie
Rank
Oldbie

Issues with running DOS games on real hardware are unfortunately numerous... here are a few that come to mind:

1. Memory configuration issues - dos games use conventional memory, EMS and or XMS memory. Setting up the correct memory subsystem for a certain game can be a pain in the butt. You can get around this by using a DOS Boot menu or with some games simply booting of a DOS floppy.

2. Disk drive issues - some games (specifically the copy protection) act up on larger hard drives. If I remember correctly the limit was 540MB or so - anything bigger and copy protection on some games will fail. I don't know if limiting the partition size can work around this issue or if the copy protection software somehow looks at the size of the whole drive.

3. Runtime 200 error - this error will pop up in some games (like Jazz Jackrabbit as @Zup mentioned). If I remember correctly, it only affects games written in turbo pascal. There is a patch for these called - tpatch.exe if memory serves.

4. Driver and hardware hell. Dos driver issues can affect sound cards or video cards. Some games require hardware with certain VESA features, like constructor witch I found last year refused to run on a Voodoo 3 but would run fine on an S3 virge. This is due to a vesa driver witch the game runs on startup. Similar issue with sound cards - especially later creative cards (AWE32/64) and cards like the Gravis Ultrasound. Mediavision cards also have some issues with games that do not natively support them, and you need to run a little driver (TSR) that emulates sould blaster compatibility. Other users would be able to explain these issues in much more detail.

And finally the biggest issue (from my experience) with running dos games on real hardware:

5. Speed issues and hardware fragmentation - some very old dos games were designed to run on an original 4.77MHz IBM XT and will run much too fast on anything else due to the game timers being linked to CPU cycles. Other older games like wing commander are designed for fast 386 / slow 486 machines and again run to fast on newer hardware. In some cases games outright refuse to run on faster CPUs - see runtime error 200 above. There are patches available for some of these, like Jazz Jackrabbit and supaplex for example, but in case of games like Dyna Blaster there is no fix I am aware of. Despite slowing my test systems down to under 386 speeds, dyna blaster will not play on either my VIA C3 build or my K6-III build. It will run, the menu works perfectly, but the controls do not work ingame, you will not be able to move the character. You can quit the game and start a new game just fine so it reads keyboard inputs fine on faster PCs, you just can't move the character ingame, I don't know why that is. In contrast, later dos games don't really run acceptably (for me at least) even on recommended hardware. Quake is a good example - even on a 133MHz pentium it's not the smoothest experience, but it is quite playable. I find dos quake 1 runs best on a 233MHz pentium or faster. Duke 3D is more of the same. The more CPU muscle you have, the better it runs. Descent 1 and 2 are in a similar position, but only to a point. On a fast 486 - say 133MHz AMD 586 - it runs, it's playable, but I would not call it enjoyable by any means. I find Descent 1 and 2 run best on a 166Mhz pentium 1 or AMD K6. If you go much faster then that, say 500MHz, the game's timer starts acting up. The ships will bob up and down way too fast, funny things start happening to the AI and the mouse sensitivity goes nuts.

As such, the only sure-fire way of running ANY dos game on real hardware is to have a build from each time period - witch is extremely impractical. Early dos games on an XT, turbo XT or slow 6 or 8MHz 286 with a turbo button, later dos games on a fast 286 (20-25mhz) or 386 - even a slow 486-SX25 with a turbo button (very few games fit here), an early pentium for some of early to mid 90's games (significant number of games fit here), and a faster pentium 2/3 for late 90's dos games (again very few games would benefit from this build).

Reply 31 of 43, by dionb

User metadata
Rank l33t++
Rank
l33t++

That's the worst-case scenario. I can definately relate - I essentially built an entire system to play Ultima 7, which ranks as one of the worst offenders in terms of very specific hardware compatibility. It it speed-sensitive, only running decently at around slow 486 speeds. Then it automatically re-enbles any cache you may have disabled (a common way of slowing down faster systems). It also has a totally custom memory manager that means you cannot install any other memory managers. Consequence of that is that any devices or software you may run that you normally load high or into EMS/XMS can't do so. But of course it also requires a huge amount of conventional memory, so essentially you can't use any software drivers (yes, MSCDEX is - big - problem). And then it gets really creative with sound. Literally. It has a mainly AdLib/Roland MT32 soundtrack with some nifty digital audio effect that don't play or cause the system to hang on even normally 100% compatible audio hardware. I've literally only gotten them to work on a replica SB 1.0 . So I built a dedicated machine for this game with exactly the right hardware. It ran beautifully. But after all that I found that I'd prefer to play in between doing other stuff so just switched to running Exult (an implementation of the Ultima 7 engine for Windows 32).

That's the thing. There are a number of pretty extreme corner cases (I suspect Dyna Blaster is one too). But firstly they are the exception, not the rule. For every game like that you have one like Alley Cat from 1983 that will be happliy playable on a Pentium. And where it really gets impossible, people do things like Exult to work around the requirement to custom-build a PC for a particular game.

That said, whatever CPU/motherboard platform you take, you do raise a couple of implcit tips to keep things simple:
- limit RAM to under 64MB in any event, preferably max 16MB. Not only does HIMEM get problematic at higher figures, but memory detection routines fail with vastly more RAM than anyone writing them had considered. It's hilarious but frustrating to have 64MB and be told you don't have enough memory and need at least 1MB of extended memory to run a game. No DOS game uses more than 16MB, indeed I can't recall anything requiring ove 4MB. 16MB is also, conveniently, the smallest size of SDRAM DIMM.
- keep storage small enough. What 'enough' is depends on your period of interest, but over 512MB things start getting complicated. This is actually the biggest reason I have two separate DOS game systems. For really late stuff, a single game can hit 500MB, so this is much too small, but for earlier games (and indeed DOS versions) anything over 512MB is too big. Obvious workaround here: use CF cards and stick old games on a small card, new games on a large one. If you boot from the card you can also have DOS 3.3 on the smallest and DOS 7.0 (with FAT32 support) on the big ones.

Reply 32 of 43, by dormcat

User metadata
Rank Oldbie
Rank
Oldbie
Sphere0161 wrote on 2023-04-26, 22:18:

I will be clearly playing mostly Middle DOS games and screamer (mostly nostalgia). I dont think I would play any other late dos game.

In that case the Intel 430TX chipset might be more suitable than SS7 chipsets: cheaper, plentiful, and more compatible. Benefits of SS7, like AGP and 100 MHz FSB, are more suited for even later games.

Sphere0161 wrote on 2023-04-26, 22:18:

Everyone is recommending a socket 7 motherboard and cpu, so I think I will go with that.

There's a small catch: Find a retail motherboard with manufacturer's brand instead of OEM motherboards that come with a computer brand, as the latter might have proprietary BIOS (stripped down so you couldn't toggle L1/L2 cache on/off), power supply (Dell was notorious for this period of "ATX-lookalike" power socket but incompatible with ATX), or even physical shape (so you could only us their chassis). Example: My Dell Dimension XPS has an Intel MB with 430FX chipset but the BIOS has no control over cache; games like Railroad Tycoon and JetFighter II can run but the screen comes with annoying flickering. It was not until I bought an Asus TXP4 from e-waste that allowed me to disable all cache (reducing the speed of its Pentium-MMX 233 to roughly a 80386DX-40) and the flickering problem was solved completely.

Sphere0161 wrote on 2023-04-26, 22:18:

That is a good advice, because I would have formated in windows 🤦.

An exception is that you want to boot with "DOS 7.1" (the command line kernel of Windows 98) in order to support FAT32 partition. However, while most DOS games can run under "DOS 7," there's no guarantee that all games AND motherboards can handle a 32 GB memory card. While most motherboards of that era could have the issue solved by updating its BIOS, not every BIOS is available online: the company could go out of business or ceased supporting such an old product. You wouldn't need that much storage if most of your games were of the "mid-DOS" era.

dionb wrote on 2023-04-27, 09:49:

That's the worst-case scenario. I can definately relate - I essentially built an entire system to play Ultima 7, which ranks as one of the worst offenders in terms of very specific hardware compatibility. It it speed-sensitive, only running decently at around slow 486 speeds. Then it automatically re-enbles any cache you may have disabled (a common way of slowing down faster systems).

Automatically re-enables any cache? How did U7 do that? Could it access and override BIOS? That sounds unbelievable and a bit frightening. 🙄

Reply 33 of 43, by AlessandroB

User metadata
Rank Oldbie
Rank
Oldbie
Socket3 wrote on 2023-04-27, 06:44:
Issues with running DOS games on real hardware are unfortunately numerous... here are a few that come to mind: […]
Show full quote

Issues with running DOS games on real hardware are unfortunately numerous... here are a few that come to mind:

1. Memory configuration issues - dos games use conventional memory, EMS and or XMS memory. Setting up the correct memory subsystem for a certain game can be a pain in the butt. You can get around this by using a DOS Boot menu or with some games simply booting of a DOS floppy.

2. Disk drive issues - some games (specifically the copy protection) act up on larger hard drives. If I remember correctly the limit was 540MB or so - anything bigger and copy protection on some games will fail. I don't know if limiting the partition size can work around this issue or if the copy protection software somehow looks at the size of the whole drive.

3. Runtime 200 error - this error will pop up in some games (like Jazz Jackrabbit as @Zup mentioned). If I remember correctly, it only affects games written in turbo pascal. There is a patch for these called - tpatch.exe if memory serves.

4. Driver and hardware hell. Dos driver issues can affect sound cards or video cards. Some games require hardware with certain VESA features, like constructor witch I found last year refused to run on a Voodoo 3 but would run fine on an S3 virge. This is due to a vesa driver witch the game runs on startup. Similar issue with sound cards - especially later creative cards (AWE32/64) and cards like the Gravis Ultrasound. Mediavision cards also have some issues with games that do not natively support them, and you need to run a little driver (TSR) that emulates sould blaster compatibility. Other users would be able to explain these issues in much more detail.

And finally the biggest issue (from my experience) with running dos games on real hardware:

5. Speed issues and hardware fragmentation - some very old dos games were designed to run on an original 4.77MHz IBM XT and will run much too fast on anything else due to the game timers being linked to CPU cycles. Other older games like wing commander are designed for fast 386 / slow 486 machines and again run to fast on newer hardware. In some cases games outright refuse to run on faster CPUs - see runtime error 200 above. There are patches available for some of these, like Jazz Jackrabbit and supaplex for example, but in case of games like Dyna Blaster there is no fix I am aware of. Despite slowing my test systems down to under 386 speeds, dyna blaster will not play on either my VIA C3 build or my K6-III build. It will run, the menu works perfectly, but the controls do not work ingame, you will not be able to move the character. You can quit the game and start a new game just fine so it reads keyboard inputs fine on faster PCs, you just can't move the character ingame, I don't know why that is. In contrast, later dos games don't really run acceptably (for me at least) even on recommended hardware. Quake is a good example - even on a 133MHz pentium it's not the smoothest experience, but it is quite playable. I find dos quake 1 runs best on a 233MHz pentium or faster. Duke 3D is more of the same. The more CPU muscle you have, the better it runs. Descent 1 and 2 are in a similar position, but only to a point. On a fast 486 - say 133MHz AMD 586 - it runs, it's playable, but I would not call it enjoyable by any means. I find Descent 1 and 2 run best on a 166Mhz pentium 1 or AMD K6. If you go much faster then that, say 500MHz, the game's timer starts acting up. The ships will bob up and down way too fast, funny things start happening to the AI and the mouse sensitivity goes nuts.

As such, the only sure-fire way of running ANY dos game on real hardware is to have a build from each time period - witch is extremely impractical. Early dos games on an XT, turbo XT or slow 6 or 8MHz 286 with a turbo button, later dos games on a fast 286 (20-25mhz) or 386 - even a slow 486-SX25 with a turbo button (very few games fit here), an early pentium for some of early to mid 90's games (significant number of games fit here), and a faster pentium 2/3 for late 90's dos games (again very few games would benefit from this build).

I have exactly what you describe: an IBM 5150, Ps/2 286, PS/1 386SX, PC330 486 from SX to POD, Pentium 75-200, PentiumII 233-600, Pentium4. but i love collecting history, don't follow me.

Reply 34 of 43, by Shponglefan

User metadata
Rank l33t
Rank
l33t
Socket3 wrote on 2023-04-27, 06:44:

4. Driver and hardware hell. Dos driver issues can affect sound cards or video cards. Some games require hardware with certain VESA features, like constructor witch I found last year refused to run on a Voodoo 3 but would run fine on an S3 virge. This is due to a vesa driver witch the game runs on startup. Similar issue with sound cards - especially later creative cards (AWE32/64) and cards like the Gravis Ultrasound. Mediavision cards also have some issues with games that do not natively support them, and you need to run a little driver (TSR) that emulates sould blaster compatibility. Other users would be able to explain these issues in much more detail.

Funny thing is I've had far fewer issues related to drivers with DOS hardware (especially AT-era hardware) than I have compared to Windows builds. I actually find AT-era DOS builds to be the simplest and easiest of the hardware builds out there.

Part of it is I think choosing hardware that does have broad compatibility. Using things like S3-based video cards that are guaranteed to work well with a variety of DOS titles helps.

For audio hardware, I think sticking to standard Sound Blaster or Sound Blaster-compatible devices (e.g. ESS-based cards) and using standard hardware settings (IRQ 5 or 7, DMA 1 or 3, etc.) helps a lot. I've even managed to get triple sound card setups working without too much fuss.

Folder older audio hardware, it tends to be even easier given that games handled the drivers directly.

Pentium 4 Multi-OS Build
486 DX4-100 with 6 sound cards
486 DX-33 with 5 sound cards

Reply 35 of 43, by Socket3

User metadata
Rank Oldbie
Rank
Oldbie
AlessandroB wrote on 2023-04-27, 14:56:
Socket3 wrote on 2023-04-27, 06:44:
Issues with running DOS games on real hardware are unfortunately numerous... here are a few that come to mind: […]
Show full quote

Issues with running DOS games on real hardware are unfortunately numerous... here are a few that come to mind:

1. Memory configuration issues - dos games use conventional memory, EMS and or XMS memory. Setting up the correct memory subsystem for a certain game can be a pain in the butt. You can get around this by using a DOS Boot menu or with some games simply booting of a DOS floppy.

2. Disk drive issues - some games (specifically the copy protection) act up on larger hard drives. If I remember correctly the limit was 540MB or so - anything bigger and copy protection on some games will fail. I don't know if limiting the partition size can work around this issue or if the copy protection software somehow looks at the size of the whole drive.

3. Runtime 200 error - this error will pop up in some games (like Jazz Jackrabbit as @Zup mentioned). If I remember correctly, it only affects games written in turbo pascal. There is a patch for these called - tpatch.exe if memory serves.

4. Driver and hardware hell. Dos driver issues can affect sound cards or video cards. Some games require hardware with certain VESA features, like constructor witch I found last year refused to run on a Voodoo 3 but would run fine on an S3 virge. This is due to a vesa driver witch the game runs on startup. Similar issue with sound cards - especially later creative cards (AWE32/64) and cards like the Gravis Ultrasound. Mediavision cards also have some issues with games that do not natively support them, and you need to run a little driver (TSR) that emulates sould blaster compatibility. Other users would be able to explain these issues in much more detail.

And finally the biggest issue (from my experience) with running dos games on real hardware:

5. Speed issues and hardware fragmentation - some very old dos games were designed to run on an original 4.77MHz IBM XT and will run much too fast on anything else due to the game timers being linked to CPU cycles. Other older games like wing commander are designed for fast 386 / slow 486 machines and again run to fast on newer hardware. In some cases games outright refuse to run on faster CPUs - see runtime error 200 above. There are patches available for some of these, like Jazz Jackrabbit and supaplex for example, but in case of games like Dyna Blaster there is no fix I am aware of. Despite slowing my test systems down to under 386 speeds, dyna blaster will not play on either my VIA C3 build or my K6-III build. It will run, the menu works perfectly, but the controls do not work ingame, you will not be able to move the character. You can quit the game and start a new game just fine so it reads keyboard inputs fine on faster PCs, you just can't move the character ingame, I don't know why that is. In contrast, later dos games don't really run acceptably (for me at least) even on recommended hardware. Quake is a good example - even on a 133MHz pentium it's not the smoothest experience, but it is quite playable. I find dos quake 1 runs best on a 233MHz pentium or faster. Duke 3D is more of the same. The more CPU muscle you have, the better it runs. Descent 1 and 2 are in a similar position, but only to a point. On a fast 486 - say 133MHz AMD 586 - it runs, it's playable, but I would not call it enjoyable by any means. I find Descent 1 and 2 run best on a 166Mhz pentium 1 or AMD K6. If you go much faster then that, say 500MHz, the game's timer starts acting up. The ships will bob up and down way too fast, funny things start happening to the AI and the mouse sensitivity goes nuts.

As such, the only sure-fire way of running ANY dos game on real hardware is to have a build from each time period - witch is extremely impractical. Early dos games on an XT, turbo XT or slow 6 or 8MHz 286 with a turbo button, later dos games on a fast 286 (20-25mhz) or 386 - even a slow 486-SX25 with a turbo button (very few games fit here), an early pentium for some of early to mid 90's games (significant number of games fit here), and a faster pentium 2/3 for late 90's dos games (again very few games would benefit from this build).

I have exactly what you describe: an IBM 5150, Ps/2 286, PS/1 386SX, PC330 486 from SX to POD, Pentium 75-200, PentiumII 233-600, Pentium4. but i love collecting history, don't follow me.

Same here. I have builds from every period and lots of in between machines as well. My oldest PC is a Hyundai Super 16 XT clone with an 8 bit ISA Paradise VGA card.

Reply 36 of 43, by AlessandroB

User metadata
Rank Oldbie
Rank
Oldbie
Socket3 wrote on 2023-04-27, 18:55:
AlessandroB wrote on 2023-04-27, 14:56:
Socket3 wrote on 2023-04-27, 06:44:
Issues with running DOS games on real hardware are unfortunately numerous... here are a few that come to mind: […]
Show full quote

Issues with running DOS games on real hardware are unfortunately numerous... here are a few that come to mind:

1. Memory configuration issues - dos games use conventional memory, EMS and or XMS memory. Setting up the correct memory subsystem for a certain game can be a pain in the butt. You can get around this by using a DOS Boot menu or with some games simply booting of a DOS floppy.

2. Disk drive issues - some games (specifically the copy protection) act up on larger hard drives. If I remember correctly the limit was 540MB or so - anything bigger and copy protection on some games will fail. I don't know if limiting the partition size can work around this issue or if the copy protection software somehow looks at the size of the whole drive.

3. Runtime 200 error - this error will pop up in some games (like Jazz Jackrabbit as @Zup mentioned). If I remember correctly, it only affects games written in turbo pascal. There is a patch for these called - tpatch.exe if memory serves.

4. Driver and hardware hell. Dos driver issues can affect sound cards or video cards. Some games require hardware with certain VESA features, like constructor witch I found last year refused to run on a Voodoo 3 but would run fine on an S3 virge. This is due to a vesa driver witch the game runs on startup. Similar issue with sound cards - especially later creative cards (AWE32/64) and cards like the Gravis Ultrasound. Mediavision cards also have some issues with games that do not natively support them, and you need to run a little driver (TSR) that emulates sould blaster compatibility. Other users would be able to explain these issues in much more detail.

And finally the biggest issue (from my experience) with running dos games on real hardware:

5. Speed issues and hardware fragmentation - some very old dos games were designed to run on an original 4.77MHz IBM XT and will run much too fast on anything else due to the game timers being linked to CPU cycles. Other older games like wing commander are designed for fast 386 / slow 486 machines and again run to fast on newer hardware. In some cases games outright refuse to run on faster CPUs - see runtime error 200 above. There are patches available for some of these, like Jazz Jackrabbit and supaplex for example, but in case of games like Dyna Blaster there is no fix I am aware of. Despite slowing my test systems down to under 386 speeds, dyna blaster will not play on either my VIA C3 build or my K6-III build. It will run, the menu works perfectly, but the controls do not work ingame, you will not be able to move the character. You can quit the game and start a new game just fine so it reads keyboard inputs fine on faster PCs, you just can't move the character ingame, I don't know why that is. In contrast, later dos games don't really run acceptably (for me at least) even on recommended hardware. Quake is a good example - even on a 133MHz pentium it's not the smoothest experience, but it is quite playable. I find dos quake 1 runs best on a 233MHz pentium or faster. Duke 3D is more of the same. The more CPU muscle you have, the better it runs. Descent 1 and 2 are in a similar position, but only to a point. On a fast 486 - say 133MHz AMD 586 - it runs, it's playable, but I would not call it enjoyable by any means. I find Descent 1 and 2 run best on a 166Mhz pentium 1 or AMD K6. If you go much faster then that, say 500MHz, the game's timer starts acting up. The ships will bob up and down way too fast, funny things start happening to the AI and the mouse sensitivity goes nuts.

As such, the only sure-fire way of running ANY dos game on real hardware is to have a build from each time period - witch is extremely impractical. Early dos games on an XT, turbo XT or slow 6 or 8MHz 286 with a turbo button, later dos games on a fast 286 (20-25mhz) or 386 - even a slow 486-SX25 with a turbo button (very few games fit here), an early pentium for some of early to mid 90's games (significant number of games fit here), and a faster pentium 2/3 for late 90's dos games (again very few games would benefit from this build).

I have exactly what you describe: an IBM 5150, Ps/2 286, PS/1 386SX, PC330 486 from SX to POD, Pentium 75-200, PentiumII 233-600, Pentium4. but i love collecting history, don't follow me.

Same here. I have builds from every period and lots of in between machines as well. My oldest PC is a Hyundai Super 16 XT clone with an 8 bit ISA Paradise VGA card.

Mine are All IBM desktop, why lost time to downclock or change to squeeze every mhz for a single computer? just take the one faster or slower on the same shelf (i'm joke, tuning IS a real fun).

Reply 37 of 43, by dionb

User metadata
Rank l33t++
Rank
l33t++
dormcat wrote on 2023-04-27, 11:04:

[...]

Automatically re-enables any cache? How did U7 do that? Could it access and override BIOS? That sounds unbelievable and a bit frightening. 🙄

It was a side-effect of the Voodoo Memory Manager:

Ultima 7 uses the unreal memory addressing mode. Unfortunately, it seems that a side-effect of the game's way of entering this mode is the resetting of certain unrelated CPU flags, among them the one that controls whether L1 cache is enabled.

Seems like there's a patch to stop this behaviour (see link).

Reply 38 of 43, by Socket3

User metadata
Rank Oldbie
Rank
Oldbie
AlessandroB wrote on 2023-04-27, 19:28:
Socket3 wrote on 2023-04-27, 18:55:
AlessandroB wrote on 2023-04-27, 14:56:

I have exactly what you describe: an IBM 5150, Ps/2 286, PS/1 386SX, PC330 486 from SX to POD, Pentium 75-200, PentiumII 233-600, Pentium4. but i love collecting history, don't follow me.

Same here. I have builds from every period and lots of in between machines as well. My oldest PC is a Hyundai Super 16 XT clone with an 8 bit ISA Paradise VGA card.

Mine are All IBM desktop, why lost time to downclock or change to squeeze every mhz for a single computer? just take the one faster or slower on the same shelf (i'm joke, tuning IS a real fun).

Early IBM stuff is very hard to come by in my country, so an original 5150 is out of the question for me - same for the PS/2 line. The only PS/2 I have in my collection is a PS/2 Valuepoint 466DX2 which is a far-cry from the original PS/2's. Hell, even a CGA or EGA monitor is nearly impossible to find, and the only non-vga monitors I've seen since I've started messing with computers back in '94 were MDA or CGA monocrome, so if I were to get an original IBM XT I'd have to ship it from the states and it would need to include a color monitor, witch would mean big $$$. I did find a 5150 for sale here complete with keyboard and monitor, but the monitor is monocrome and the PC is listed as "untested" witch means it's probably dead. I'd still buy it if I could afford to, but I'm in no position to spend 500$ on broken retro hardware right now. My Hyundai Super 16 is very convenient since it came with a VGA card and has serial and parallel build in. Sure, the serial port is a DB25 but I managed to find a DB25 to DB9 adapter and my serial mouse works fine that way (YEY Lemmings!!!). I also find the 4.77 / 8MHz speed setting helpful, and at 8MHz it can even run commander keen and dyna blaster so I'm pretty happy with it.

Reply 39 of 43, by dormcat

User metadata
Rank Oldbie
Rank
Oldbie
dionb wrote on 2023-04-27, 21:38:

It was a side-effect of the Voodoo Memory Manager:

Ultima 7 uses the unreal memory addressing mode. Unfortunately, it seems that a side-effect of the game's way of entering this mode is the resetting of certain unrelated CPU flags, among them the one that controls whether L1 cache is enabled.

Seems like there's a patch to stop this behaviour (see link).

Thanks! No wonder U7 was regarded as a nightmare of compatibility issues; what were its developers thinking? 🙄