This is a hommage to all the classic DOS benchmark programs and DOS games in general. It's also recycling (and improving upon) a small toy ray tracer I wrote in 2022.
Download
- STBNCH21.ZIP (198 KiB)
Screenshot
Hardware required
- IBM PC or 100% compatible (i586 or newer recommended)
- VGA-compatible graphics card (VBE 2.0-compatible card recommended)
- Optional: PS/2 or serial mouse + mouse driver (e.g. CuteMouse)
ChangeLog
Version 2.1
- Add detection and warning for Voodoo cards (buggy BIOS / VESAFIX)
- Fix byte order for 24bpp modes (fixes red/blue swap)
- Add checks for bit/byte order, filter incompatible modes
Version 2.0
- Fixed text (DOS Game Jam year)
- Add support for 24 bpp and 16 bpp VESA modes
- Add support for 640x480, 800x600 and 1024x768 modes
- Add benchmarking support for VGA fallback mode
- Add dialog to choose resolution/depth on startup
- Display benchmark results on exit (if benchmark completed)
Controls
For benchmarking, don't user the controls, just let the program render the scene fully -- you'll notice when the benchmark value stops changing that the whole scene was rendered and the score set.
If you want to explore the scene and play around with different perspectives, you can use the mouse or keyboard for navigation.
Mouse controls
- Press left mouse button + drag = look around (tilt camera)
- Press right mouse button + drag = navigate/fly (forward/sideways)
Keyboard controls
- Forward/sideways using W, A, S, D
- Levitate up/down using Q, E
- Rotate/tilt using I, J, K, L
To reset the scene if you get lost, press "R". This will also restart the benchmark with the default settings, so your score is comparable.
To exit the app, first press ESC to bring up the exit menu, then either confirm with ENTER or press ESC acan to close the exit menu again.
VGA Fallback
In case your graphics card does not have a VBE 2.0-compatible BIOS, the benchmark tool will complain loudly and ask you to install UNIVBE.
While it does complain, it will fall back to VGA mode 13h with the benchmark feature disabled (for benchmarking VGA-only cards, I hear SuperScape has a product that is not unlike the SuperTrace benchmark).
Technobabble
This is a floating-point heavy benchmark. It uses a single-precision 3-component floating-point buffer for high dynamic range colors. The HDR bloom/postprocessing effect is part of the original ray tracer, but this version of SUPER TRACE benchmark doesn't take into account the additional color range, and just clamps it to 8-bit values for VESA, or maps it to a 7x9x4 color cube for the VGA 256-color mode.
There's lots of room for improving the performance of this, possibly even adding a classic triangle rasterizer used during navigation of the scene or a hybrid approach. But part of the fun is just sitting in front of your old machine, contemplating life choices and getting the CineBench(tm) feeling "backported" to ye olde computer? Yay!
After the initial scene is rendered, a form of temporal antialiasing is used to enhance the sampling rate of the image. If you keep the benchmark running, the image result will gradually improve and refine.
Easter Egg
Rumor has it there's an easter egg hidden somewhere. Can you find it?