Author Topic: Mode X library for PB DOS  (Read 10147 times)

Gunther

  • Member
  • *****
  • Posts: 4090
  • Forgive your enemies, but never forget their names
Mode X library for PB DOS
« on: October 30, 2014, 04:47:32 AM »
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
Get your facts first, and then you can distort them.

nidud

  • Member
  • *****
  • Posts: 2388
    • https://github.com/nidud/asmc
Re: Mode X library for PB DOS
« Reply #1 on: October 30, 2014, 06:54:48 AM »
deleted
« Last Edit: February 25, 2022, 08:55:24 AM by nidud »

Gunther

  • Member
  • *****
  • Posts: 4090
  • Forgive your enemies, but never forget their names
Re: Mode X library for PB DOS
« Reply #2 on: October 30, 2014, 07:00:45 AM »
Hi nidud,

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

Gunther
Get your facts first, and then you can distort them.

FORTRANS

  • Member
  • *****
  • Posts: 1195
Re: Mode X library for PB DOS
« Reply #3 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.

Code: [Select]
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

  • Member
  • *****
  • Posts: 8828
  • Still using Abacus 2.0
    • DednDave
Re: Mode X library for PB DOS
« Reply #4 on: October 31, 2014, 12:46:51 AM »
XP SP3 - P4 prescott @ 3 GHz
Quote
Resolution: 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

  • Member
  • *****
  • Posts: 4090
  • Forgive your enemies, but never forget their names
Re: Mode X library for PB DOS
« Reply #5 on: October 31, 2014, 04:36:40 AM »
Thank you Dave. Interesting results.

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
Get your facts first, and then you can distort them.

Gunther

  • Member
  • *****
  • Posts: 4090
  • Forgive your enemies, but never forget their names
Re: Mode X library for PB DOS
« Reply #6 on: October 31, 2014, 11:50:08 AM »
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
Get your facts first, and then you can distort them.

FORTRANS

  • Member
  • *****
  • Posts: 1195
Re: Mode X library for PB DOS
« Reply #7 on: November 01, 2014, 02:36:19 AM »
Hi,

   Some more results.  HTH.

Code: [Select]
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

  • Member
  • *****
  • Posts: 4090
  • Forgive your enemies, but never forget their names
Re: Mode X library for PB DOS
« Reply #8 on: November 01, 2014, 03:03:41 AM »
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
Get your facts first, and then you can distort them.

FORTRANS

  • Member
  • *****
  • Posts: 1195
Re: Mode X library for PB DOS
« Reply #9 on: November 01, 2014, 07:50:48 AM »

Thank you Steve for the new results.

Hi Gunther,

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

Quote
   You've an OS/2 running?

   Yes a few installations are up and running when wanted.

Quote
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?

   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.

Quote
You 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

  • Member
  • *****
  • Posts: 4090
  • Forgive your enemies, but never forget their names
Re: Mode X library for PB DOS
« Reply #10 on: November 01, 2014, 12:09:43 PM »
Steve,

   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.

Quote
You 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
Get your facts first, and then you can distort them.

dedndave

  • Member
  • *****
  • Posts: 8828
  • Still using Abacus 2.0
    • DednDave
Re: Mode X library for PB DOS
« Reply #11 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

FORTRANS

  • Member
  • *****
  • Posts: 1195
Re: Mode X library for PB DOS
« Reply #12 on: November 02, 2014, 12:18:07 AM »
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

  • Member
  • *****
  • Posts: 4090
  • Forgive your enemies, but never forget their names
Re: Mode X library for PB DOS
« Reply #13 on: November 02, 2014, 12:55:19 AM »
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.

   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
Get your facts first, and then you can distort them.