News:

Masm32 SDK description, downloads and other helpful links
Message to All Guests

Main Menu

Mode X library for PB DOS

Started by Gunther, October 30, 2014, 04:47:32 AM

Previous topic - Next topic

Gunther

I've finished the revision of my old Mode X library. The included test program generates the Mandelbrot set in 6 different resolutions. I've used the escape time algorithm and the application generates a small file results.txt.

The running EXE will work under plain DOS with nearly every memory manager configuration and inside a virtual machine. It won't work inside the DOS emulation of Windows Vista and above, because it would need a DOS full screen. Here are the results with my machine under different FreeDOS configurations. First with plain DOS (started from an USB drive):
Quote
Resolution: 320x200 Pixel
Calculation Time: 2.310527E-4 Seconds

Resolution: 320x240 Pixel
Calculation Time: .2732751 Seconds

Resolution: 320x400 Pixel
Calculation Time: .4942496 Seconds

Resolution: 360x240 Pixel
Calculation Time: .3837672 Seconds

Resolution: 360x400 Pixel
Calculation Time: .5479122 Seconds

Resolution: 360x480 Pixel
Calculation Time: .6608984 Seconds

In the same range are the results of FreeDOS inside the VMware Player. That's not so bad for a virtual machine.
Quote
Resolution: 320x200 Pixel
Calculation Time: .2196691 Seconds

Resolution: 320x240 Pixel
Calculation Time: .2747018 Seconds

Resolution: 320x400 Pixel
Calculation Time: .4942852 Seconds

Resolution: 360x240 Pixel
Calculation Time: .2747026 Seconds

Resolution: 360x400 Pixel
Calculation Time: .4943352 Seconds

Resolution: 360x480 Pixel
Calculation Time: .6041291 Seconds

DOS inside VirtualBox is slower:
Quote
Resolution: 320x200 Pixel
Calculation Time: .3296059 Seconds

Resolution: 320x240 Pixel
Calculation Time: .3843944 Seconds

Resolution: 320x400 Pixel
Calculation Time: .7141529 Seconds

Resolution: 360x240 Pixel
Calculation Time: .4943815 Seconds

Resolution: 360x400 Pixel
Calculation Time: .7690072 Seconds

Resolution: 360x480 Pixel
Calculation Time: .9337512 Seconds

Fairly bad are the results under DOSBox:
Quote
Resolution: 320x200 Pixel
Calculation Time: 17.08183 Seconds

Resolution: 320x240 Pixel
Calculation Time: 20.81709 Seconds

Resolution: 320x400 Pixel
Calculation Time: 34.82291 Seconds

Resolution: 360x240 Pixel
Calculation Time: 23.83787 Seconds

Resolution: 360x400 Pixel
Calculation Time: 39.93113 Seconds

Resolution: 360x480 Pixel
Calculation Time: 48.33469 Seconds

As I said: It's the same machine and the same EXE under different configurations. I would appreciate other tests of forum members very much.

Gunther
You have to know the facts before you can distort them.

nidud

#1
deleted

Gunther

Hi nidud,

thank you for the results. You must have an excellent machine.  :t

Gunther
You have to know the facts before you can distort them.

FORTRANS

Hi Gunther,

   A quick set of results from one computer.  If wanted I can run
it on other systems later.

Windows 2000 NTVDM P-III

Resolution: 320x200 Pixel
Calculation Time: 5.486477E-2 Seconds

Resolution: 320x240 Pixel
Calculation Time: .3291893 Seconds

Resolution: 320x400 Pixel
Calculation Time: .5489246 Seconds

Resolution: 360x240 Pixel
Calculation Time: .3836563 Seconds

Resolution: 360x400 Pixel
Calculation Time: .6033917 Seconds

Resolution: 360x480 Pixel
Calculation Time: .7694407 Seconds

OS/2 VDM P-III

Resolution: 320x200 Pixel
Calculation Time: 5.562424E-2 Seconds

Resolution: 320x240 Pixel
Calculation Time: .1657466 Seconds

Resolution: 320x400 Pixel
Calculation Time: .2202295 Seconds

Resolution: 360x240 Pixel
Calculation Time: .1655262 Seconds

Resolution: 360x400 Pixel
Calculation Time: .2755502 Seconds

Resolution: 360x480 Pixel
Calculation Time: .3289335 Seconds

MS-DOS 6.20/6.22, P-III, Floppy Boot

Resolution: 320x200 Pixel
Calculation Time: 5.509831E-2 Seconds

Resolution: 320x240 Pixel
Calculation Time: .1654095 Seconds

Resolution: 320x400 Pixel
Calculation Time: .2203192 Seconds

Resolution: 360x240 Pixel
Calculation Time: .1644259 Seconds

Resolution: 360x400 Pixel
Calculation Time: .2740231 Seconds

Resolution: 360x480 Pixel
Calculation Time: .3298356 Seconds


Regards,

Steve N.

dedndave

XP SP3 - P4 prescott @ 3 GHz
QuoteResolution: 320x200 Pixel
Calculation Time: 5.542026E-2 Seconds

Resolution: 320x240 Pixel
Calculation Time: .4402114 Seconds

Resolution: 320x400 Pixel
Calculation Time: .7133871 Seconds

Resolution: 360x240 Pixel
Calculation Time: .495237 Seconds

Resolution: 360x400 Pixel
Calculation Time: .8787889 Seconds

Resolution: 360x480 Pixel
Calculation Time: 1.042926 Seconds

Gunther

Thank you Dave. Interesting results.

Quote from: FORTRANS on October 31, 2014, 12:37:24 AM
Hi Gunther,

   A quick set of results from one computer.  If wanted I can run
it on other systems later.

that would be fine, Steve.

Gunther
You have to know the facts before you can distort them.

Gunther

Today I've bought a new laptop (Lenovo IdeaPad Flex 15). My old laptop is out of order and doesn't say nothing. The CPU is an Intel i5-4200U with 1.6 GHz. But it's the new Haswell microarchitecture. It comes with AVX2, so I can a bit experiment and play with it.

I've tested my Mode X library and get a big surprise. Here are the results under plain DOS:
Quote
Resolution: 320x200 Pixel
Calculation Time: .0549433 Seconds

Resolution: 320x240 Pixel
Calculation Time: .1098714 Seconds

Resolution: 320x400 Pixel
Calculation Time: .1648856 Seconds

Resolution: 360x240 Pixel
Calculation Time: .1097985 Seconds

Resolution: 360x400 Pixel
Calculation Time: .1648558 Seconds

Resolution: 360x480 Pixel
Calculation Time: .219718 Seconds

That's very good, please check my desktop results in the first post of this thread above. Notwithstanding that my desktop CPU is nearly twice as fast (3.4 GHz), is the Laptop faster. Here is my explanation for that behavior. My desktop has AMD Radeon HD 7570 graphics adaptor. It's on of AMD's cheap graphics card. The laptop has a NVIDIA GeForce 820M. That makes the difference. The NVIDIA card has not so much VESA modes, but the installed modes are very fast.

Gunther
You have to know the facts before you can distort them.

FORTRANS

Hi,

   Some more results.  HTH.

eCS (OS/2), VDM, Pentium 133 MHz, Laptop, NeoMagic Graphics

Resolution: 320x200 Pixel
Calculation Time: .6609359 Seconds

Resolution: 320x240 Pixel
Calculation Time: .8806633 Seconds

Resolution: 320x400 Pixel
Calculation Time: 1.48162 Seconds

Resolution: 360x240 Pixel
Calculation Time: 1.04234 Seconds

Resolution: 360x400 Pixel
Calculation Time: 1.701192 Seconds

Resolution: 360x480 Pixel
Calculation Time: 2.031526 Seconds

MS-DOS does not boot due to BIOS or hard disk problems.

- - -

MS-DOS 6.20 P-MMX, 166 MHz, Laptop, NeoMagic Video Unstretched

Resolution: 320x200 Pixel
Calculation Time: .4943339 Seconds

Resolution: 320x240 Pixel
Calculation Time: .6591075 Seconds

Resolution: 320x400 Pixel
Calculation Time: 1.153438 Seconds

Resolution: 360x240 Pixel
Calculation Time: .8238853 Seconds

Resolution: 360x400 Pixel
Calculation Time: 1.318209 Seconds

Resolution: 360x480 Pixel
Calculation Time: 1.592846 Seconds

MS-DOS 6.20 P-MMX, 166 MHz, Laptop, NeoMagic Video Stretched to fill
screen.

Resolution: 320x200 Pixel
Calculation Time: .4948354 Seconds

Resolution: 320x240 Pixel
Calculation Time: .7144312 Seconds

Resolution: 320x400 Pixel
Calculation Time: 1.152588 Seconds

Resolution: 360x240 Pixel
Calculation Time: .82393 Seconds

Resolution: 360x400 Pixel
Calculation Time: 1.318432 Seconds

Resolution: 360x480 Pixel
Calculation Time: 1.593331 Seconds

Windows 98, MS-DOS Prompt, P-MMX 166 MHz, Laptop, NeoMagic graphics.

Resolution: 320x200 Pixel
Calculation Time: .5492539 Seconds

Resolution: 320x240 Pixel
Calculation Time: .71404 Seconds

Resolution: 320x400 Pixel
Calculation Time: 1.153448 Seconds

Resolution: 360x240 Pixel
Calculation Time: .8238866 Seconds

Resolution: 360x400 Pixel
Calculation Time: 1.31819 Seconds

Resolution: 360x480 Pixel
Calculation Time: 1.647789 Seconds

- - -

P-II, MS-DOS 6.20, Matrox Graphics.

Resolution: 320x200 Pixel
Calculation Time: .1081632 Seconds

Resolution: 320x240 Pixel
Calculation Time: .2185314 Seconds

Resolution: 320x400 Pixel
Calculation Time: .3862051 Seconds

Resolution: 360x240 Pixel
Calculation Time: .2209939 Seconds

Resolution: 360x400 Pixel
Calculation Time: .4399248 Seconds

Resolution: 360x480 Pixel
Calculation Time: .5500551 Seconds

P-II, Windows 98 MS-DOS Prompt, Matrox Graphics.

Resolution: 320x200 Pixel
Calculation Time: .1092378 Seconds

Resolution: 320x240 Pixel
Calculation Time: .2193189 Seconds

Resolution: 320x400 Pixel
Calculation Time: .3847522 Seconds

Resolution: 360x240 Pixel
Calculation Time: .2751805 Seconds

Resolution: 360x400 Pixel
Calculation Time: .4398999 Seconds

Resolution: 360x480 Pixel
Calculation Time: .549981 Seconds

P-II, OS/2 VDM, Matrox Graphics.

Resolution: 320x200 Pixel
Calculation Time: .1106993 Seconds

Resolution: 320x240 Pixel
Calculation Time: .2742779 Seconds

Resolution: 320x400 Pixel
Calculation Time: .3838338 Seconds

Resolution: 360x240 Pixel
Calculation Time: .2752633 Seconds

Resolution: 360x400 Pixel
Calculation Time: .4390307 Seconds

Resolution: 360x480 Pixel
Calculation Time: .548685 Seconds

- - -

Mobile Intel(R) Celeron(R) processor     600MHz (SSE2)
Sony Laptop, MS-DOS 6.20, ATI Graphics

Resolution: 320x200 Pixel
Calculation Time: 5.535221E-2 Seconds

Resolution: 320x240 Pixel
Calculation Time: .1651382 Seconds

Resolution: 320x400 Pixel
Calculation Time: .2743578 Seconds

Resolution: 360x240 Pixel
Calculation Time: .219088 Seconds

Resolution: 360x400 Pixel
Calculation Time: .3303591 Seconds

Resolution: 360x480 Pixel
Calculation Time: .3842755 Seconds

Mobile Intel(R) Celeron(R) processor     600MHz (SSE2)
Sony Laptop, Windows XP Command Prompt, ATI Graphics

Resolution: 320x200 Pixel
Calculation Time: .1666438 Seconds

Resolution: 320x240 Pixel
Calculation Time: .9330083 Seconds

Resolution: 320x400 Pixel
Calculation Time: 1.427896 Seconds

Resolution: 360x240 Pixel
Calculation Time: .9883782 Seconds

Resolution: 360x400 Pixel
Calculation Time: 1.704158 Seconds

Resolution: 360x480 Pixel
Calculation Time: 1.976809 Seconds

Results seemed weird, so I ran it again.
Go figure, this laptop may be giving up...

Resolution: 320x200 Pixel
Calculation Time: 5.521588E-2 Seconds

Resolution: 320x240 Pixel
Calculation Time: .4384473 Seconds

Resolution: 320x400 Pixel
Calculation Time: .7687555 Seconds

Resolution: 360x240 Pixel
Calculation Time: .493119 Seconds

Resolution: 360x400 Pixel
Calculation Time: .8249948 Seconds

Resolution: 360x480 Pixel
Calculation Time: .9352647 Seconds

- - -

MS-DOS 6.20, IBM Laptop, ATI Graphics.

Resolution: 320x200 Pixel
Calculation Time not available.

Resolution: 320x240 Pixel
Calculation Time: .1648804 Seconds

Resolution: 320x400 Pixel
Calculation Time: .2180828 Seconds

Resolution: 360x240 Pixel
Calculation Time: .1646266 Seconds

Resolution: 360x400 Pixel
Calculation Time: .2214973 Seconds

Resolution: 360x480 Pixel
Calculation Time: .2742237 Seconds

Windows XP Command Prompt, IBM Laptop, ATI Graphics.

Resolution: 320x200 Pixel
Calculation Time: .0559995 Seconds

Resolution: 320x240 Pixel
Calculation Time: .1638895 Seconds

Resolution: 320x400 Pixel
Calculation Time: .2729694 Seconds

Resolution: 360x240 Pixel
Calculation Time: .1645876 Seconds

Resolution: 360x400 Pixel
Calculation Time: .3310713 Seconds

Resolution: 360x480 Pixel
Calculation Time: .4390026 Seconds

Rerun due to weird ATI results?

Resolution: 320x200 Pixel
Calculation Time: 5.426599E-2 Seconds

Resolution: 320x240 Pixel
Calculation Time: .1651102 Seconds

Resolution: 320x400 Pixel
Calculation Time: .2752405 Seconds

Resolution: 360x240 Pixel
Calculation Time: .2189283 Seconds

Resolution: 360x400 Pixel
Calculation Time: .3290586 Seconds

Resolution: 360x480 Pixel
Calculation Time: .383213 Seconds


Cheers,

Steve N.

Gunther

Thank you Steve for the new results.  :t You've an OS/2 running? Is it a VM? I've an old OS/2 Warp 4 here on CD (licensed from IBM). Do you think it'll run under VirtualBox?

Gunther
You have to know the facts before you can distort them.

FORTRANS


Quote from: Gunther on November 01, 2014, 03:03:41 AM
Thank you Steve for the new results.

Hi Gunther,

   You're welcome.  I should look at your Mode X code.

QuoteYou've an OS/2 running?

   Yes a few installations are up and running when wanted.

QuoteIs it a VM? I've an old OS/2 Warp 4 here on CD (licensed from IBM). Do you think it'll run under VirtualBox?

   No, they are native installs.  Usually dual boot systems.  It
should run okay in VirtualBox.  That and Virtual PC 2007 SP1 by
Microsoft were recently mentioned in an OS/2 usenet thread.
A quote from that thread that may be of interest.

QuoteYou could subscribe to the Virtual eCS users list, for more
information:
To subscribe, E-mail to:
<virtualized_ecs_users-on@2rosenthals.com>
and reply to the confirmation email.

There has been quite a bit of discussion about using VBox on Macs,
recently, but most of it applies to windows, and Linux, too. Follow
the link to the Web archives. Click on the "Received" header to
reverse the sort, and put the new stuff first. The old entries are
interesting, but the latest ones are probably more useful to new
users. You will also find other virtual solutions discussed, if you go
back far enough.

Regards,

Steve N.

Gunther

Steve,

Quote from: FORTRANS on November 01, 2014, 07:50:48 AM
   No, they are native installs.  Usually dual boot systems.  It
should run okay in VirtualBox.  That and Virtual PC 2007 SP1 by
Microsoft were recently mentioned in an OS/2 usenet thread.
A quote from that thread that may be of interest.

QuoteYou could subscribe to the Virtual eCS users list, for more
information:
To subscribe, E-mail to:
<virtualized_ecs_users-on@2rosenthals.com>
and reply to the confirmation email.

There has been quite a bit of discussion about using VBox on Macs,
recently, but most of it applies to windows, and Linux, too. Follow
the link to the Web archives. Click on the "Received" header to
reverse the sort, and put the new stuff first. The old entries are
interesting, but the latest ones are probably more useful to new
users. You will also find other virtual solutions discussed, if you go
back far enough.

Regards,

Steve N.

thank you for the information. I'll try to install it. Warp 4 was a good and stable operating system.

Gunther
You have to know the facts before you can distort them.

dedndave

someplace, you can google Michael Abrash's book in PDF form - a lot of info on mode X

FORTRANS

Quote from: dedndave on November 01, 2014, 01:36:26 PM
someplace, you can google Michael Abrash's book in PDF form - a lot of info on mode X

Hi,

   I got a copy from Dr. Dobbs site.  I got the associated code
in text form from somewhere else.

http://www.drdobbs.com/parallel/graphics-programming-black-book/184404919

Cheers,

Steve N.

Gunther

Quote from: dedndave on November 01, 2014, 01:36:26 PM
someplace, you can google Michael Abrash's book in PDF form - a lot of info on mode X

I had 2 sources: Michael Abrash and Richard Wilton.

Quote from: FORTRANS on November 02, 2014, 12:18:07 AM
   I got a copy from Dr. Dobbs site.  I got the associated code
in text form from somewhere else.

http://www.drdobbs.com/parallel/graphics-programming-black-book/184404919

Yes, that's worth reading.

Gunther
You have to know the facts before you can distort them.