VOGONS

Common searches


Reply 20 of 25, by Shreddoc

User metadata
Rank Newbie
Rank
Newbie

Cycle-accurate 'emulation' in FPGA hardware gets around all the above emulation-is-inaccurate concerns.

I know some fairly hardcore private games rooms whose owners are enthusiastically shifting machines over to it, over the past year or two.

Afaik they're (i.e the MiSTer project) not too far away from cycle-accurate 486 DX-50, on the PC side of things, and it is already by-far the best (most accurate - to the cycle!) reproduction of most 8- and 16- bit consoles.

Reply 21 of 25, by jakethompson1

User metadata
Rank Member
Rank
Member
Shreddoc wrote on 2020-10-16, 18:31:

Cycle-accurate 'emulation' in FPGA hardware gets around all the above emulation-is-inaccurate concerns.

I know some fairly hardcore private games rooms whose owners are enthusiastically shifting machines over to it, over the past year or two.

Afaik they're (i.e the MiSTer project) not too far away from cycle-accurate 486 DX-50, on the PC side of things, and it is already by-far the best (most accurate - to the cycle!) reproduction of most 8- and 16- bit consoles.

I don't have the electrical background but this is something I've always kind of envisioned futuristically--what if you could just put the emulation from Bochs on a chip, or use the Dosbox code to "compile" a hardware implementation of a SoundBlaster compatible sound card, etc.
How much is the speed of FPGAs a limitation? Presumably, as they get faster, the simpler the code implementing a 486 (for example) can be, right?
Sort of like the reverse of what happens in P6 and later chips where they have a fast RISC-style core and x86 front end. You could have a dumb, straightforward implementation of an i486 on the inside, running much faster than a real 486 internally but "paced" for clock for clock accuracy as you say.

Perhaps a Dosbox could be a literal, physical product someday 😁

Reply 22 of 25, by Tetrium

User metadata
Rank l33t++
Rank
l33t++

I don't worry about this as I think it's highly unlikely I will outlive all my spare parts, disasters disregarded of course.

Whats missing in your collections?
My retro rigs (old topic)
Interesting Vogons threads (links to Vogonswiki)
Report spammers here!

Reply 24 of 25, by Kreshna Aryaguna Nurzaman

User metadata
Rank l33t
Rank
l33t
kolderman wrote on 2020-10-16, 07:10:

If emulation was perfect, sure. But it actually sucks.

Of course emulation is not perfect, but saying it sucks isn't really accurate.

kolderman wrote on 2020-10-16, 07:10:

Just getting a nicely scaled full screen 2D image in dosbox is a PITA whereas my native dos pc drives the LCD perfectly.

What PITA are you talking about? I have yet to find DOS games that fail to scale properly in DOSBOX. On the other hand....
LCD monitor VGA compatibility database.
4:3 LCDs for DOS usage.
Best LCD for DOS games running on old hardware.
Widescreen monitors and 4:3 aspect ratio compatibility
thread
.

On the other hand, with DOSBOX, one doesn't have to worry about monitor compatibility with older games. As long as the monitor can display the O/S, then DOSBOX will generally run fine.

DOSBox-2020-07-30-21-55-42-51.jpg
Dawn Patrol in DOSBOX.

Above is Dawn Patrol, running in DOSBOX, scaled from 640x400 to 1360x768, captured using FRAPS to preserve the upscaled resolution. I wouldn't say the scaling is bad. In fact, it looks pretty good. If I may add, Dawn Patrol (and its successor, Dawn Patrol Head to Head) is very picky about VGA card. Unless your video card is one of the few supported by the game out of the box, then you should resort to "Universal VESA driver," which requires lengthy configuration, and it doesn't always work! Based on my own experience, Dawn Patrol's Universal VESA driver works with lowly, generic, plain-vanilla SYS VGA card, but fails to work with Matrox Mystique. And that was where I gave up playing the game, only to be able to play it again many, many years later using DOSBOX.

DOSBOX, on the other hand, emulates Tseng Labs ET4000, which is one of the few VGA cards natively supported by Dawn Patrol. I goes without saying that it's much easier to play Dawn Patrol in DOSBOX instead of real hardware.

hi-octane.jpg
Hi-Octane, one of those speed-sensitive games.

Above is Hi-Octane; a hi-res (640x480), textured, non-accelerated 3D game. The game runs choppy on Pentium 100, but uncomfortably too fast on Pentium III. With DOSBOX, I have to experiment with cycle settings to obtain comfortable speed (which are core=dynamic, cputype=pentium_slow, and cycles=90000). Yet, I can imagine experimenting with DOSBOX cycles is easier than tinkering with BIOS to disable cache and/or setting CPU multiplier to slow down the game on fast system.

kolderman wrote on 2020-10-16, 07:10:

I can't imagine how much more troublesome and underperforming later win98 games are.

Be it as it may. Yet, as Cyberdyne has said, computer hardware may last 20 to 50 years from now. Many things can happen during that time. In 2003 Roland and Caroline need to set Dawn Patrol to minimal details to play it in DOSBOX with acceptable frame rate, now I could easily maximize all details while enjoying butter-smooth frame rate. During Pentium 4 era, I couldn't imagine playing 3D textured mapped VESA games in DOSBOX with acceptable frame rate --unless it's sparsely textured games like Privateer 2: The Darkening and Star Rangers, or 2.5D games like Blood and Shadow Warrior. Now I can easily play fully textured mapped games like Sandwarriors and even F-22 Lightning III with comfortable frame rate in DOSBOX, on my lowly i5 2400 CPU.

Many things can happen in 20 years, let alone 50 years, and that might be the day when one can run Windows 9x and Windows 9x games in DOSBOX with fluid performance.

kolderman wrote on 2020-10-16, 07:10:

The only valid uses cases for emulation as I can see are very early games that run too fast even on slow 386, or flight sims where you want to map controls from a modern joystick.

Ah, but joystick is actually the reason why I still keep retro hardware machines --specifically, machines old enough to accept older PCI soundcards that can accept gameport joysticks. Some old Windows games like Interactive Magic's iF-22, Novalogic's F-22 Raptor, and Hot Wheels Jetz can run flawlessly on Windows XP and Windows 7 machines (it's really nice to see iF-22 with maximized FSAA on modern GPU). Alas, those games can only detect gameport joysticks; they are totally blind to USB joysticks. Hence, those machines.

I'm just thinking: DOSBOX translates USB joystick into gameport joystick flawlessly. Alas, it only works in DOSBOX. I wonder if it's possible to use DOSBOX's joystick emulation codes to make "virtual gameport joystick" that works on modern Windows.

Never thought this thread would be that long, but now, for something different.....
Kreshna Aryaguna Nurzaman.

Reply 25 of 25, by Joseph_Joestar

User metadata
Rank Oldbie
Rank
Oldbie
Kreshna Aryaguna Nurzaman wrote on 2020-10-17, 10:41:

On the other hand, with DOSBOX, one doesn't have to worry about monitor compatibility with older games.

Personally, I love DOSBox and use it mainly for MT-32 and GUS emulation since getting that hardware at reasonable prices is an impossible task where I live.

That said, issues with graphics scaling on real retro PCs are minimal if you use a non-widescreen LCD monitor with 1280x1024 as the native resolution. Those monitors are cheap and plentiful, and 320x200 or 640x480 games tend to scale reasonably well on them (integer scaling on the horizontal axis, mild stretching on the vertical axis). Most of these monitors also support 70Hz refresh rate over VGA input so there are no issues with frame skipping and such.

I can imagine experimenting with DOSBOX cycles is easier than tinkering with BIOS to disable cache and/or setting CPU multiplier to slow down the game on fast system.

That largely depends on the system and utilities being used. On my AthlonXP rig, I use ACPI Throttle as my primary slowdown utility. There are a lot of presets to choose from, but roughly speaking, you can switch between 386, 486 and Pentium speeds by calling a single command and selecting the relevant slowdown value.

The only work you need to do beforehand is to take some measurements when you initially try each setting, to get an estimate of their speed (it varies depending on your CPU). NSSI is an excellent benchmark program for that. Afterwards, it becomes mostly routine e.g. setting 8 = Pentium 133, setting 11 = 486 DX2 and so on. A Pentium MMX + SetMul is even more versatile as Phil demonstrates in this video.

Using Audigy drivers with a Sound Blaster Live
Installing DOS drivers on an Audigy2 ZS
OPL3 vs. ESFM vs. CQM vs. SBLive
OPTi 82C930 review