VOGONS


First post, by xjas

User metadata
Rank l33t
Rank
l33t

Is there a good DOS benchmark for testing "2D" features that were common in games? Stuff like hardware scrolling, writing to video memory, filling (2D) polygons, page flipping, changing palettes, etc.

A game or (demoscene) demo with an FPS counter would also be fine. You try searching and all you find are instructions on how to timedemo in Doom & Quake. I just want to compare some things while I tweak my video card (Trident 8900cl.)

I could write something in QuickBasic but I don't know how much that would depend on video speed vs. CPU speed. QB's draw routines are pretty CPU-based and slow.

twitch.tv/oldskooljay - playing the obscure, forgotten & weird - most Tuesdays & Thursdays @ 6:30 PM PDT. Bonus streams elsewhen!

Reply 1 of 19, by clueless1

User metadata
Rank l33t
Rank
l33t

Try this:
https://www.philscomputerlab.com/dos-benchmark-pack.html

The more I learn, the more I realize how much I don't know.
OPL3 FM vs. Roland MT-32 vs. General MIDI DOS Game Comparison
Let's benchmark our systems with cache disabled
DOS PCI Graphics Card Benchmarks

Reply 2 of 19, by xjas

User metadata
Rank l33t
Rank
l33t

^^ Yeah I know about that, but look what's in it - Superscape (3D), PC Player (3D), Chris's 3D Benchmark, Doom, Quake, and some CPU benchmarks. Not what I'm after. I want something that can specifically benchmark "2D" features of the video card, like scrolling, blitting, palette rotation, and page flipping.

...and yes, I *know* those features are used in 3D stuff, but 3D is heavily CPU dependent and in this case (386/25) the CPU would likely be a bottleneck.

twitch.tv/oldskooljay - playing the obscure, forgotten & weird - most Tuesdays & Thursdays @ 6:30 PM PDT. Bonus streams elsewhen!

Reply 3 of 19, by clueless1

User metadata
Rank l33t
Rank
l33t

Off the top of my head the only ones I can think of are for Windows, not DOS. Like Tom's 2D. It seems like there's some older DOS benchmarks that might have what you're looking for? I can't remember, Topbench or Speedtst?

The more I learn, the more I realize how much I don't know.
OPL3 FM vs. Roland MT-32 vs. General MIDI DOS Game Comparison
Let's benchmark our systems with cache disabled
DOS PCI Graphics Card Benchmarks

Reply 5 of 19, by xjas

User metadata
Rank l33t
Rank
l33t

^^ Thanks, DIAG looks useful. Didn't know SDD had a benchmark, will look into it.

I also found VideoSpd which is kinda what I want. It seems to rely on the Watcom C built-in graphics functions though.

videodos_000.png
Filename
videodos_000.png
File size
8.53 KiB
Views
2961 views
File license
Fair use/fair dealing exception
dosbox_006.png
Filename
dosbox_006.png
File size
3.54 KiB
Views
2961 views
File license
Fair use/fair dealing exception

I guess what I'm really after is something like DoWhackaDo or Copper with an FPS counter. 😉

(I'm trying to tweak the settings & config on my Trident card to see how much performance I can push out of it. I'll make a thread about it.)

twitch.tv/oldskooljay - playing the obscure, forgotten & weird - most Tuesdays & Thursdays @ 6:30 PM PDT. Bonus streams elsewhen!

Reply 6 of 19, by idspispopd

User metadata
Rank Oldbie
Rank
Oldbie
xjas wrote:

Is there a good DOS benchmark for testing "2D" features that were common in games? Stuff like hardware scrolling, writing to video memory, filling (2D) polygons, page flipping, changing palettes, etc.

Well, DOS games usually don't use any acceleration features since those are different between chips. In Windows (even 3.x) you have a video driver which will use the acceleration, but this is not feasible for a single DOS game.
To address your points:

  • hardware scrolling, page flipping, changing palettes: These features are used by DOS games since they are already available on standard VGA. I doubt that performance will matter a lot here. Scrolling and page flipping only take a few register writes and should have an immediate result. Changing the whole palette may take a short time, but games will probably be written in a way that this works properly even on a slow VGA card. It is possible that scrolling and page flipping were also used in SVGA modes, probably over VBE (1.2?), but that still shouldn't be performance critical.
  • writing to video memory: This is the single most important criterion. Judging from http://www.vgamuseum.info/index.php/benchmarks DIAG seems to do the trick, but I think there are more tools to do this. I think I even wrote a program for this myself since it is quite trivial.
  • filling (2D) polygons: This is probably not done through acceleration. I'm not sure when games stopped fillings polygons on screen, at least with 3D games the scene was rendered into system memory and then transferred to video RAM.

Reply 7 of 19, by xjas

User metadata
Rank l33t
Rank
l33t

Just for fun I wrote a quick & dirty palette rotation benchmark. The screen filling is done using QuickBasic's FILL statement, so that part of the benchmark is probably rubbish, but the palette rotation is all assembly. Source code included.

Warning: ugly as hell. Results MIGHT be more accurate with EMM386, etc. disabled.

Attachments

  • Filename
    PALBENCH.ZIP
    File size
    30.81 KiB
    Downloads
    90 downloads
    File license
    Fair use/fair dealing exception

twitch.tv/oldskooljay - playing the obscure, forgotten & weird - most Tuesdays & Thursdays @ 6:30 PM PDT. Bonus streams elsewhen!

Reply 8 of 19, by amadeus777999

User metadata
Rank Oldbie
Rank
Oldbie

Seems unlikely that there would exist a benchmark that measures how efficiently the VGA's functionality had been implemented by a vendor - maybe somewhere in a dungeon of a gfx card-maker such info exists?
As "idspispopd" pointed out for "DOS related" drawing of primitives... it's bus & memory speed that counts - "filling 2D polygons" was done by the cpu(excluding specialized dos-executables which took advantage of some "obscure" hardware).

I attached a little bench-program I found on the net featuring a simple, neat chart for the results - it also has a slightly customized .exe that makes use of Pentium features which should result in a marginal speedup("cbenchp.exe").

Attachments

  • Filename
    bench18.rar
    File size
    22.67 KiB
    Downloads
    92 downloads
    File license
    Fair use/fair dealing exception

Reply 9 of 19, by GokuSS4

User metadata
Rank Newbie
Rank
Newbie

hi together 😀

is there a list with benchmark results?

is there any problem using a gfx card newer than gf7/x1000 series?

Win10 Ryzen 7 5800X | TUF B450M-Pro | 32GB DDR4-3800 CL16 | RX 6800 XT
WinXP Core i3-3220 | H77 Pro4-M | 8GB DDR3-1600 CL9 | X1950 Pro
Win98SE Pentium E5800 | 775i65G R3.0 | 512MB DDR1-400 CL2 | X850 XT

Reply 10 of 19, by GokuSS4

User metadata
Rank Newbie
Rank
Newbie

what are your results?

I'm getting 3132 points w/ my 7950GT + Core i3 @ WinXP
T450s, Windows 10, Core i5 + HD 5500 just 1174 Points

Win10 Ryzen 7 5800X | TUF B450M-Pro | 32GB DDR4-3800 CL16 | RX 6800 XT
WinXP Core i3-3220 | H77 Pro4-M | 8GB DDR3-1600 CL9 | X1950 Pro
Win98SE Pentium E5800 | 775i65G R3.0 | 512MB DDR1-400 CL2 | X850 XT

Reply 11 of 19, by xjas

User metadata
Rank l33t
Rank
l33t

^^ Which program are you posting results from? There are a few mentioned here.

Man, I completely forgot I wrote "PALBENCH" in post #8. I actually wouldn't recommend it for any kind of comparison, I've learned some things about the QuickBasic compiler since then that make me think it'd be more wildly affected by other aspects of the system than the VGA. It might be OK for comparing different video cards on the same machine, but as discussed here, there are way better options.

twitch.tv/oldskooljay - playing the obscure, forgotten & weird - most Tuesdays & Thursdays @ 6:30 PM PDT. Bonus streams elsewhen!

Reply 12 of 19, by Jo22

User metadata
Rank l33t++
Rank
l33t++
amadeus777999 wrote on 2017-12-08, 18:11:

As "idspispopd" pointed out for "DOS related" drawing of primitives... it's bus & memory speed that counts - "filling 2D polygons"
was done by the cpu(excluding specialized dos-executables which took advantage of some "obscure" hardware).

That's right, DOS games usually don't use GDI-like functions when it comes VGA cards.
From what I remember, though, VGABIOS had a "set pixel" function at least,
and the VGA's CRTC circuit also could do a few things in hardware (on its own), ie. basic tasks like bit shift, blitting and so on.
I'm speaking under correction, but I did once read on the web about people discussing the possibility that simple "stuff" could run entirely on VGA even.
Anyway, it probably wasn't game related. Maybe it was related to demoscene. Not sure. 😅

"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//

Reply 13 of 19, by GokuSS4

User metadata
Rank Newbie
Rank
Newbie

I mean Tom2D 😀

Win10 Ryzen 7 5800X | TUF B450M-Pro | 32GB DDR4-3800 CL16 | RX 6800 XT
WinXP Core i3-3220 | H77 Pro4-M | 8GB DDR3-1600 CL9 | X1950 Pro
Win98SE Pentium E5800 | 775i65G R3.0 | 512MB DDR1-400 CL2 | X850 XT

Reply 14 of 19, by GokuSS4

User metadata
Rank Newbie
Rank
Newbie

What about your Tom2D Scores?

https://www.overclockers.com/forums/showthrea … l=1#post7043237

GTX1070 Win10
BENCHMARK: DIRECT DRAWING TO VISIBLE DEVICE

Text: 50000 chars/sec
Line: 43440 lines/sec
Polygon: 6856 polygons/sec
Rectangle: 4706 rects/sec
Arc/Ellipse: 14418 ellipses/sec
Blitting: 16082 operations/sec
Stretching: 1189 operations/sec
Splines/Bézier: 29087 splines/sec
Score: 1935

i5-U + hd5500 im T450s ~1200 points w/ Windows 10
i3 + Geforce 7950GT w/ Windows XP 3132 points

Attachments

  • tom2d_gtx1070.PNG
    Filename
    tom2d_gtx1070.PNG
    File size
    18.66 KiB
    Views
    2336 views
    File license
    Public domain
  • Filename
    Toms-2D-Bench.zip
    File size
    1.27 MiB
    Downloads
    162 downloads
    File license
    Public domain

Win10 Ryzen 7 5800X | TUF B450M-Pro | 32GB DDR4-3800 CL16 | RX 6800 XT
WinXP Core i3-3220 | H77 Pro4-M | 8GB DDR3-1600 CL9 | X1950 Pro
Win98SE Pentium E5800 | 775i65G R3.0 | 512MB DDR1-400 CL2 | X850 XT

Reply 15 of 19, by Jo22

User metadata
Rank l33t++
Rank
l33t++

Some more 2D benchmarking on Windows.. :

Best PCI VGA card for Windows 3.11 performance?

Windows 3.1 & NT Benchmark Programs

😁

"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//

Reply 16 of 19, by GokuSS4

User metadata
Rank Newbie
Rank
Newbie

Tom2D: Radeon 6800XT

BENCHMARK: DIRECT DRAWING TO VISIBLE DEVICE

Text: 36765 chars/sec
Line: 41311 lines/sec
Polygon: 12560 polygons/sec
Rectangle: 4491 rects/sec
Arc/Ellipse: 12877 ellipses/sec
Blitting: 20492 operations/sec
Stretching: 1109 operations/sec
Splines/Bézier: 27049 splines/sec
Score: 1824

Win10 Ryzen 7 5800X | TUF B450M-Pro | 32GB DDR4-3800 CL16 | RX 6800 XT
WinXP Core i3-3220 | H77 Pro4-M | 8GB DDR3-1600 CL9 | X1950 Pro
Win98SE Pentium E5800 | 775i65G R3.0 | 512MB DDR1-400 CL2 | X850 XT

Reply 17 of 19, by Standard Def Steve

User metadata
Rank Oldbie
Rank
Oldbie

I get spectacularly strange results with Tom2D. These were all taken from the 4th run, which usually produces the highest score. Sometimes several hundred points higher than the first run! I don't trust this benchmark, like, at all. 😜

WinXP Pro SP3:

Pentium 4 2.4GHz, Radeon 9250 PCI = 2381
Turion 64 2.2GHz, Radeon Xpress200 IGP = 2638
PIII-S @ 1.63GHz, GeForce 6800GT AGP = 3296
Athlon XP 2.083GHz, GeForce 7800GS AGP = 5277
Athlon 64 2.4GHz, GeForce 7800GS AGP = 6820
Pentium M @ 2.72GHz, GeForce 6800GT PCIe = 7241

Win10 Pro 20H2:

Core 2 Duo SU7300 (1.3GHz), GMA X4500HD = 627
Atom X7 Z8700 (turbo - 2.4GHz), Intel HD = 769
Core 2 Duo T9600 (2.8GHz), GMA X4500HD = 1111
Core 2 Duo E8600 (3.33GHz), GMA X4500HD = 1507
Phenom II X6 (OC - 4.07GHz), GeForce GTX 680 = 2008
AMD FX 8350 (OC - 5GHz), Radeon R9 Fury = 2060 (Win 8.1 Pro)
Core i5 6300U (turbo - 3GHz), Intel HD 520 = 2274
Core i7-4930K (OC - 4.6GHz), GeForce GTX 1660Ti = 2590
Core i7-4790 (4GHz locked), GeForce GTX 1650 Super = 3540
Core i7-4790 (4GHz locked), Intel HD 4600 = 3572
Ryzen 9 5900X (OC - 5GHz), GeForce GTX 1080Ti = 4285

P6 chip. Triple the speed of the Pentium.
Tualatin: PIII-S @ 1628MHz | QDI Advance 12T | 2GB DDR-310 | 6800GT | X-Fi | 500GB HDD | 3DMark01: 14,059
Dothan: PM @ 2.9GHz | MSI Speedster FA4 | 2GB DDR2-580 | GTX 750Ti | X-Fi | 500GB SSD | 3DMark01: 43,190

Reply 18 of 19, by rasz_pl

User metadata
Rank l33t
Rank
l33t
amadeus777999 wrote on 2017-12-08, 18:11:

Seems unlikely that there would exist a benchmark that measures how efficiently the VGA's functionality had been implemented by a vendor - maybe somewhere in a dungeon of a gfx card-maker such info exists?

I have a recollection of one of the DOS game authors meeting a group of Japanese engineers at one point and being treated like celebrity because they all used his obscure CGA game as a reference for CGA compatibility. Game barely sold any copies in Japan, but everyone used bootleg for testing. I cant remember where I heard/read this story. I want to say The Retro Hour https://www.youtube.com/channel/UC0dQ6zguAtYu … el2_Y9YA/videos podcast? but quickly skimming last 10 episodes closed captions for the mention of CGA and Japan turns empty 🙁

idspispopd wrote on 2017-11-29, 14:11:

[*]writing to video memory: This is the single most important criterion. Judging from http://www.vgamuseum.info/index.php/benchmarks DIAG seems to do the trick, but I think there are more tools to do this. I think I even wrote a program for this myself since it is quite trivial.
[*]filling (2D) polygons: This is probably not done through acceleration. I'm not sure when games stopped fillings polygons on screen, at least with 3D games the scene was rendered into system memory and then transferred to video RAM.[/list]

There is a peculiar case of Doom being optimized by Michael Abrash for really slow computers/graphic cards and taking advantage of modified 13h unchained mode Y - writes directly to VGA ram together with plane switching (single byte OUT instructions "per each column draw, and multiple per span drawn"). Beneficial for giving you easy page flipped Vsync, free 1/2 resolution Low Detail mode, being fast on slowest CPUs and somewhat faster on middle ground machines, but totally bottlenecking fast CPU ones or non optimized VGA cores. Being "clever" turned out to be slower around 1994.

Doom vs Heretic VGA performance difference
Doom in DOS: Original vs Source Ports
FastDoom. A new Doom port for DOS, optimized to be as fast as possible for 386/486 personal computers!
FastDoom dev build, Cirrus Logic GD-5422 ISA, VGA Mode Y vs Mode 13h https://www.youtube.com/watch?v=Q7hEn_LstpE TLDR: 22 vs 51 fps

Open Source AT&T Globalyst/NCR/FIC 486-GAC-2 proprietary Cache Module reproduction

Reply 19 of 19, by amadeus777999

User metadata
Rank Oldbie
Rank
Oldbie
rasz_pl wrote on 2021-05-09, 08:36:
I have a recollection of one of the DOS game authors meeting a group of Japanese engineers at one point and being treated like c […]
Show full quote
amadeus777999 wrote on 2017-12-08, 18:11:

Seems unlikely that there would exist a benchmark that measures how efficiently the VGA's functionality had been implemented by a vendor - maybe somewhere in a dungeon of a gfx card-maker such info exists?

I have a recollection of one of the DOS game authors meeting a group of Japanese engineers at one point and being treated like celebrity because they all used his obscure CGA game as a reference for CGA compatibility. Game barely sold any copies in Japan, but everyone used bootleg for testing. I cant remember where I heard/read this story. I want to say The Retro Hour https://www.youtube.com/channel/UC0dQ6zguAtYu … el2_Y9YA/videos podcast? but quickly skimming last 10 episodes closed captions for the mention of CGA and Japan turns empty 🙁

idspispopd wrote on 2017-11-29, 14:11:

[*]writing to video memory: This is the single most important criterion. Judging from http://www.vgamuseum.info/index.php/benchmarks DIAG seems to do the trick, but I think there are more tools to do this. I think I even wrote a program for this myself since it is quite trivial.
[*]filling (2D) polygons: This is probably not done through acceleration. I'm not sure when games stopped fillings polygons on screen, at least with 3D games the scene was rendered into system memory and then transferred to video RAM.[/list]

There is a peculiar case of Doom being optimized by Michael Abrash for really slow computers/graphic cards and taking advantage of modified 13h unchained mode Y - writes directly to VGA ram together with plane switching (single byte OUT instructions "per each column draw, and multiple per span drawn"). Beneficial for giving you easy page flipped Vsync, free 1/2 resolution Low Detail mode, being fast on slowest CPUs and somewhat faster on middle ground machines, but totally bottlenecking fast CPU ones or non optimized VGA cores. Being "clever" turned out to be slower around 1994.

Doom vs Heretic VGA performance difference
Doom in DOS: Original vs Source Ports
FastDoom. A new Doom port for DOS, optimized to be as fast as possible for 386/486 personal computers!
FastDoom dev build, Cirrus Logic GD-5422 ISA, VGA Mode Y vs Mode 13h https://www.youtube.com/watch?v=Q7hEn_LstpE TLDR: 22 vs 51 fps

Very interesting!