Looking for someone to run a quick test on a real DOS machine

Discussion about old PC hardware.

Looking for someone to run a quick test on a real DOS machine

Postby bradr » 2017-12-04 @ 22:29

Hey All,

(Not sure if this is the right place to post this but seemed the best choice...)

I'm working on a simple DOS emulator with the goal to run "Oh No! More Lemmings" for DOS as well as possible on modern Windows. What I've noticed however is that the timing seems off - both in my emulator and in DOSBox and I'm curious if the same thing happens on a real machine.

Here's what I'm finding...

1. start the game,
2. choose VGA and "High-Performance PC",
3. load the first level,
4. start a stopwatch
5. let the in-game timer count down from 4:00 to 0:00.

I'm finding that it actually takes about 4:52 instead of 4 minutes. ie one minute game time actually takes about 73 seconds real time.

I'm pretty sure it's correct because I've even looked at the game's code and it's counting 85 vertical retrace signals as one second but the video mode runs at 70hz. 60 seconds * 85 / 70 = approx 73 seconds.

But... I want to be sure and since I don't have easy access to a real machine from the era I'm wondering if someone wouldn't mind running the same test for me to confirm this timing is correct.

Brad
bradr
Newbie
 
Posts: 18
Joined: 2017-12-01 @ 12:19

Re: Looking for someone to run a quick test on a real DOS machine

Postby amadeus777999 » 2017-12-04 @ 22:46

Interesting... I can give it a run tomorrow.
User avatar
amadeus777999
Member
 
Posts: 356
Joined: 2013-7-04 @ 17:04

Re: Looking for someone to run a quick test on a real DOS machine

Postby bradr » 2017-12-04 @ 23:36

Awesome - thank you.
bradr
Newbie
 
Posts: 18
Joined: 2017-12-01 @ 12:19

Re: Looking for someone to run a quick test on a real DOS machine

Postby xjas » 2017-12-04 @ 23:45

I'll give it a try too, I've got it on a 386DX and a P233MMX so it might be useful to see if they give the same result.

BTW please please please call your emulator "Lemulator." Just saying.
selected (probably) unfinished build threads { In a Lunchbox / Has It All / Hot Damn! / IT IS THE NINETIES / 20 Years of Junk }
User avatar
xjas
Oldbie
 
Posts: 1256
Joined: 2015-9-07 @ 02:29

Re: Looking for someone to run a quick test on a real DOS machine

Postby bradr » 2017-12-05 @ 03:06

xjas wrote:I'll give it a try too, I've got it on a 386DX and a P233MMX so it might be useful to see if they give the same result.


Thanks

BTW please please please call your emulator "Lemulator." Just saying.


In my head I've been calling it "The Lemulator" but the program itself is just called "WinLemmi.exe" - to match the original game's "VgaLemmi.exe" :)
bradr
Newbie
 
Posts: 18
Joined: 2017-12-01 @ 12:19

Re: Looking for someone to run a quick test on a real DOS machine

Postby BeginnerGuy » 2017-12-05 @ 03:44

Is it 4 minutes for stage 1 or 3 minutes? My copy starts at 3-00 on the timer. The file name is also VGALEMM2.EXE (not VGALEMMI as said above). Are there different versions of this game?

Anyway, I was approaching 4 minutes on my stopwatch for that (vga, high quality) but the level ended early with all lemmings accounted for. This is on a DX4 100MHz running MS-DOS 6.22. I suspect you are right that the timing is inaccurate, too slow. Will try it again

I don't have time to look at the code right now (it's available??) but if it's counting 85 retraces per second as you say, then the result is always going to be slower than a real clock on a system running at 70hz. The above user saying they would run it on a pentium and a 386 will either get the exact same result on both systems, or it will take longer on the 386 if the code is waiting for a vertical retrace at the end of each loop and the system isn't fast enough. I would assume they had that odd counter going for some other AI or game event and just decided to tie it to the in game clock as well. Games that use retraces for the timer shouldn't have any unusual speed issues outside of running slower on a modern 60hz display.

edit: Ahh, I didn't notice the game difficulty setting, now it's 4 minutes.. let's try again.

UPDATE: My result was 4:51 on my android using the timer app, +/- a bit of reaction time. I think "The Lemulator" is good to go!
Sup. I like computers. Are you a computer?
User avatar
BeginnerGuy
Member
 
Posts: 470
Joined: 2016-12-19 @ 08:32
Location: North Carolina, US

Re: Looking for someone to run a quick test on a real DOS machine

Postby oeuvre » 2017-12-05 @ 04:32

Trying it on a Dell Optiplex GX1 with MS-DOS 6.22, Pentium II 350MHz, 256MB RAM. Bit oeuvrekill but hopefully it helps.

Elapsed time was 4:50
HP EliteBook 840 G3
i7 6700K, 32GB, NVIDIA GTX 1060, 256GB M.2 SSD + HD, Windows 10
Image
User avatar
oeuvre
Oldbie
 
Posts: 1182
Joined: 2015-3-31 @ 13:31
Location: USA

Re: Looking for someone to run a quick test on a real DOS machine

Postby static- » 2017-12-05 @ 04:58

Seeing 4:52 on my Pentium II 400MHz in REAL DOS 7.1.
static-
Newbie
 
Posts: 74
Joined: 2005-5-26 @ 04:29

Re: Looking for someone to run a quick test on a real DOS machine

Postby bradr » 2017-12-05 @ 12:10

BeginnerGuy wrote:Is it 4 minutes for stage 1 or 3 minutes? My copy starts at 3-00 on the timer. The file name is also VGALEMM2.EXE (not VGALEMMI as said above). Are there different versions of this game?


Not sure but note this is Oh No More Lemmings, not the first Lemmings. The first level is called "Down and Out Lemmings".

I don't have time to look at the code right now (it's available??)


I'm just looking at it in debugger/disassembly listing.

but if it's counting 85 retraces per second as you say, then the result is always going to be slower than a real clock on a system running at 70hz.


That's definitely what it looks like - at inner loop of 5 cycles (throttled by vertical retrace) and an out loop of 17 cycles before updating the current time. 5 x 17 = 85.

UPDATE: My result was 4:51 on my android using the timer app, +/- a bit of reaction time. I think "The Lemulator" is good to go!


Great - thanks for checking it out for me.
bradr
Newbie
 
Posts: 18
Joined: 2017-12-01 @ 12:19

Re: Looking for someone to run a quick test on a real DOS machine

Postby bradr » 2017-12-05 @ 12:12

oeuvre wrote:Trying it on a Dell Optiplex GX1 with MS-DOS 6.22, Pentium II 350MHz, 256MB RAM. Bit oeuvrekill but hopefully it helps.

Elapsed time was 4:50


static- wrote:Seeing 4:52 on my Pentium II 400MHz in REAL DOS 7.1.


Thank you. Pretty sure we can say this was a bug (or weird design) of the original game.
bradr
Newbie
 
Posts: 18
Joined: 2017-12-01 @ 12:19

Re: Looking for someone to run a quick test on a real DOS machine

Postby elianda » 2017-12-05 @ 14:55

I think the question is a different one. If it counts 85 retraces per second and if I concede the Psygnosis programmers to know how long 4 mins is, where does the 85 comes from?

Could it be that originally the graphics mode for lemmings was 43 Hz interlaced? This would be 86 retraces/s.
Have you checked if the 85 is different whether you choose High Performance PC or PS/2.

Maybe a 70 Hz mode is just the wrong graphics mode in regards what the game expects the card to actually set.
Retronn.de - Vintage Hardware Gallery, Drivers, Guides, HQ Videos.
Youtube Channel
FTP Server - Driver Archive and more
DVI2PCIe alignment and 2D image quality measurement tool
User avatar
elianda
l33t
 
Posts: 2215
Joined: 2006-4-21 @ 16:56
Location: Halle / Germany

Re: Looking for someone to run a quick test on a real DOS machine

Postby CkRtech » 2017-12-05 @ 19:58

Probably ought to time it on an Amiga.
User avatar
CkRtech
Oldbie
 
Posts: 575
Joined: 2014-8-23 @ 00:54
Location: Seattle, WA

Re: Looking for someone to run a quick test on a real DOS machine

Postby bradr » 2017-12-06 @ 02:02

elianda wrote:Could it be that originally the graphics mode for lemmings was 43 Hz interlaced? This would be 86 retraces/s.


Interesting idea - possibly I suppose, although the game is definitely selecting video mode 0x0D which is 320x200 @ 70Hz (according to this) and I don't think it's tweaking any of the CRTC timing registers.
bradr
Newbie
 
Posts: 18
Joined: 2017-12-01 @ 12:19

Re: Looking for someone to run a quick test on a real DOS machine

Postby elianda » 2017-12-06 @ 03:14

Hmm and what about the other modes, e.g. for tandy?
Retronn.de - Vintage Hardware Gallery, Drivers, Guides, HQ Videos.
Youtube Channel
FTP Server - Driver Archive and more
DVI2PCIe alignment and 2D image quality measurement tool
User avatar
elianda
l33t
 
Posts: 2215
Joined: 2006-4-21 @ 16:56
Location: Halle / Germany

Re: Looking for someone to run a quick test on a real DOS machine

Postby bradr » 2017-12-06 @ 03:53

elianda wrote:Hmm and what about the other modes, e.g. for tandy?


My emulator doesn't support all these modes so it's a bit hard for me to say for sure, but I just tried running every different mode in dosbox debugger and all report 320x200 and ~70Hz and in all cases 1 game minute = 73 real seconds.

Given that real DOS machines show this behaviour, that dosbox and my emulator show this behaviour, that the code looks like that's what it's doing and that the code/math points in this direction I think it's fair to say this is a bug/quirk of the original game that was just always there.
bradr
Newbie
 
Posts: 18
Joined: 2017-12-01 @ 12:19

Re: Looking for someone to run a quick test on a real DOS machine

Postby xjas » 2017-12-06 @ 04:01

Wonder if the devs just lazily re-used some timing code when it was ported over from the Amiga, resulting in this?
selected (probably) unfinished build threads { In a Lunchbox / Has It All / Hot Damn! / IT IS THE NINETIES / 20 Years of Junk }
User avatar
xjas
Oldbie
 
Posts: 1256
Joined: 2015-9-07 @ 02:29

Re: Looking for someone to run a quick test on a real DOS machine

Postby Jo22 » 2017-12-06 @ 13:22

Hi, I've done that test with the normal setting, since I've got no High-Performance PC at hand right now..
In a case it's of any use - the PC was a 286@10MHz and 4 minutes in-game time equaled ~5 minutes and 50 seconds.

xjas wrote:Wonder if the devs just lazily re-used some timing code when it was ported over from the Amiga, resulting in this?

That's an interesting thought. But then why did they spend some exra time for that level where they used the AdLib as a DAC ?
"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//
User avatar
Jo22
l33t
 
Posts: 2336
Joined: 2009-12-13 @ 07:06
Location: Europe

Re: Looking for someone to run a quick test on a real DOS machine

Postby Jepael » 2017-12-06 @ 15:45

Jo22 wrote:That's an interesting thought. But then why did they spend some exra time for that level where they used the AdLib as a DAC ?


Which level uses Adlib as a DAC? I am pretty familiar how Lemmings Adlib music/sfx driver works and have found no such evidence.
Jepael
Oldbie
 
Posts: 1195
Joined: 2005-6-15 @ 19:28
Location: Finland

Re: Looking for someone to run a quick test on a real DOS machine

Postby amadeus777999 » 2017-12-06 @ 20:34

Took the machine around 280 seconds a 4 minutes 40 seconds.
User avatar
amadeus777999
Member
 
Posts: 356
Joined: 2013-7-04 @ 17:04

Re: Looking for someone to run a quick test on a real DOS machine

Postby bradr » 2017-12-07 @ 06:08

amadeus777999 wrote:Took the machine around 280 seconds a 4 minutes 40 seconds.


Thanks - closer to what the emulators are doing than what it should be :)
bradr
Newbie
 
Posts: 18
Joined: 2017-12-01 @ 12:19

Next

Return to General Old Hardware

Who is online

Users browsing this forum: Bing [Bot], squiggly and 7 guests