Home page | EN-US English | Other projects (EN-US English)


Video Hardware Acceleration in DOS Environment


Overview


According to WIKI - Hardware acceleration is the use of hardware to perform some function faster than is possible in software running on the normal (general purpose) CPU. Examples of hardware acceleration include blitting acceleration functionality in graphics processing units (GPUs) and instructions for complex operations in CPUs.

Normally, processors are sequential, and instructions are executed one by one. Various techniques are used to improve performance; hardware acceleration is one of them. The main difference between hardware and software is concurrency, allowing hardware to be much faster than software. Hardware accelerators are designed for computationally intensive software code. Depending upon granularity, hardware acceleration can vary from a small functional unit to a large functional block like motion estimation in MPEG2.

The hardware that performs the acceleration, when in a separate unit from the CPU, is referred to as a hardware accelerator, or often more specifically as graphics accelerator or floating-point accelerator, etc. Those terms, however, are older and have been replaced with less descriptive terms like video card or graphics card.

In this article I am only covering 2D (in Windows terms - DirectDraw) acceleration (not Video Motion, 3D and Overlay acceleration types).


VBE/AF (now FreeBE/AF)


VBE/AF explained as VBE/AF Standard VESA BIOS Extension/Accelerator Functions (VBE/AF). It was planned as unified 32-bit BIOS interface to 2D acceleration functions between programs and video hardware, planned as BIOS-wide standard according to documents provided below but transformed in software driver and finally abandoned in 1998-1999 due to lack of interest and/or high fees, see FreeBE/AF site for details. Also great success of Windows and BSD/Unix systems, which are provided acceleration function via proprietary drivers, influenced this fact.

VBE/AF drivers are included in SciTech Display Doctor (former UniVBE) 6.53 (dated 6 June 1998) covering most of card manufactured in 1998.

...
Benefits of SciTech Display Doctor
----------------------------------

*  Accelerator Support.  SciTech Display Doctor is the first product to
   support the new VESA VBE/AF (Accelerator Functions) standard. VBE/AF
   allows applications and operating systems to take advantage of full
   graphics hardware acceleration.

Cards Supported with Full Acceleration
--------------------------------------
The VBE/AF (Accelerator Functions) are a superset of the VBE 2.0 functions.
SciTech Display Doctor creates a VBE/AF driver for all supported cards.
Currently, SciTech Display Doctor only supports the superset functions of
VBE/AF on the cards listed below. On all other cards, VBE/AF is supported,
but it is only supported at the same level of functionality as VBE 2.0.
Hence, there will be little or no performance increase on cards other than
the ones listed below.

*  Alliance ProMotion 6410, 6422, AT24, AT25, AT3D
*  ARK Logic ARK1000VL/PV, ARK2000PV, ARK2000MT, Quadro64
*  ATI Technologies 18800, 28800, Mach32, Mach64, 3D Rage I/ II/ II+DVD/IIC, 3D Rage Pro
*  Chips & Technologies  65545/48/50/.54/55
*  Cirrus Logic CL-GD5430/34/36, CL-GD5440/46 Alpine VGA
*  Cirrus Logic CL-GD5462/64 Laguna VisualMedia
*  InteGraphics IGA1680/82/83, CyberPro 2000/2010
*  iXMICRO TwinTurbo 128, TwinTurbo 128+, TwinTurbo 128-3D
*  Matrox MGA Millennium, Mystique, Millennium II, Mystique 220
*  Number Nine Imagine 128 Series 1, II, IIb, IIc, IIe, Ticket 2 Ride
*  NeoMagic NM2070/90/93 LCD
*  OAK Technologies 64105/107/111/217/317 (Warp 5)
*  S3 86c911/924/80x/928, Vision 864/964/868/968, Trio32/64/64V+/64UV+/64V2, Aurora64V+, ViRGE,
   ViRGE/DX/GX/VX, ViRGE/GX2
*  SiS 86c201, 6202, 6205, 6326
*  Tseng ET4000/W32p, ET6000, ET6100, ET6300
...

Now it is a free product. Use this info ( http://www.scitechsoft.com/ftp/sdd/regcodes.txt ) to register it:

SciTech Display Doctor 6.53-d
DOS ONLY
Free Version Code
Reg Code: 	00000-173D626E-02002
Full Name: 	6.x Free Edition
In 1999 this project transformed to FreeBE/AF - free open source drivers and it has a minor rewrite when some other newer card drivers added:
   ATI 18800/28800
   ATI mach64
   Avance Logic ALG-2101, ALG-2201, ALG-2228, ALG-2301, ALG-2302
   Cirrus 54xx (not 546x). Should be ok with 5426, 5428, 7541, 7543
   Matrox Millenium, Mystique, Millenium II
   NVidia Riva 128, TNT. Conflicts with Windows!
   Paradise
   S3
   Trident TGUI 9440. Doesn't work under Windows!
   Trident
   Tseng ET3000/ET4000/ET6000
   Video-7
   stub driver (for testing and development purposes only)
Only one product is supporting NOW such accelerated drivers in Linux/DOS environment. It is Allegro Programming library - http://www.allegro.cc. For DOS development DJGPP compiler is used.

Quick links / notes



Direct3D, DirectDraw, DirectShow, DirectX, Microsoft, MS-DOS, Visual C++, Win32, Win32s, Windows, Windows XP, Windows 2003 Server and Windows NT are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries/regions.

The names of actual companies and products mentioned herein may be the trademarks of their respective owners.

© AnaPa Corporation 1988 – 2011. All rights reserved.

E-Mail: bearwindows_at_fastmail_dot_com | Last update: March 15th 2011