DOSBox Graphic and machine emulation
CGA, VGA, Tandy, PCJr and Hercules
A chronological list of the different graphical display types for the IBM PC format, including those that DOSBox does not directly support.
Sep. 2022: A major rewrite. Updated settings values to reflect DOSbox changes. DOSBox configs added to headings. Replaced links to Wikipedia articles with more definitive sources.
Or help me out by engaging with any advertisers that you find interesting
If you have ever attacked the DOSBox configuration file, you might have encountered a not-so-obvious
machine=svga_s3. This setting is not all that important for PC games made around 1992 or later. But for many games created during the 1980s, it can be critical in maximizing the best visual and audio output the game offers.
By default, DOSBox has the
MACHINE setting set to
svga_s3. For visuals, this is not only the best option available but also the most compatible. But if you read the commented section in the settings file, it states:
The type of machine tries to emulate. Possible values: hercules, cga, tandy, pcjr, ega, vgaonly, svga_s3, svga_et3000, svga_et4000, svga_paradise, vesa_nolfb, vesa_oldvbe.
That’s twelve choices that can dramatically change the way your games look and play. In this article, I will chronologically list the different graphical display types for the IBM PC format, including some that DOSBox does not directly support. It should give you an overall understanding of these machines and help you determine the best settings for your early DOS games and software.
This article won’t go into the heavy technical details, such as supported monitor refresh rates and aspect ratios, and mainly focuses on graphics, not text modes.
No DOSBox emulation
IBM released the first PC in 1981, and the Monochrome Display Adapter was the standard display for the system. MDA is not a graphics mode per se as it does not support any software graphics; it only offers a monochrome text mode display with text character effects.
Occasionally you will encounter an early PC game that only supports text mode, which was often for MDA compatibility being the lowest common denominator for PCs of the period. The first commercial game for the PC was the text-only adventure title Microsoft Adventure.
DOSBox does not support or emulate MDA though there is no need as all text mode software will work under any DOSBox machine mode.
IBM introduced the Color Graphics Adapter as the more expensive add-on for the IBM PC at its initial 1981 release. Unlike the text-only MDA offering, CGA allowed limited color and software graphics. Its downside was the significantly lower resolution in text mode, which didn’t appeal to businesses.
In 1984 IBM reduced the price of the CGA adapter after it released the EGA successor. And then, for nearly a decade afterward, the more affordable CGA standard became the lowest common denominator graphic platform for PC game developers.
CGA offered a confusing number of graphic options, but most games used the digital RGBI (red, green, blue, intensity) mode, with four predetermined colors on-screen. The usable colors are in groups of palettes that are notoriously ugly.
CGA also offered an NTSC composite color mode with output for US/Japanese analog televisions and monitors. Game developers and programmers could push many more on-screen colors than was initially thought possible by utilizing analog technology with color blending and artifacts.
In 2015 several retro computing demoscene enthusiasts released the video 8088 MPH that pushed the CGA modes to unthinkable limits! And a more technically impressive sequel, Area 5150, was released in 2022.
DOSBox mostly emulates composite mode and its hacks. Whenever you encounter a CGA-only game that supports composite (analog), in addition to the RGBI (digital) mode, then make sure you set the
MACHINE=CGA so you have the option for the more colorful, analog output.
- Nerdly Pleasures IBM’s CGA Hardware Explained
- The 8-bit Guy’s CGA Graphics - Not as bad as you thought!
- The many shades of CGA, a dithering study
- Nerdly Pleasures Playing King’s Quest and King’s Quest II Booters
- Vintage PCs > CGA notes
Text mode comparison
Microsoft Adventure, Version 1.00
Common CGA modes comparison
King’s Quest, self-booting release using
The RGB scenes would look different on an actual CGA RGB monitor where the dots would blur to create shade effects.
What happens when you run this CGA only game using the DOSBox default
When using the DOSBox
machine=CGA setting and running a game in RGB color mode, in-game, you can use the
Alt+F11 keys to adjust the tint of the color. Old NTSC televisions used the tint adjustment to change the color of the TV.
Hercules is probably the only third-party graphic chipset that became a standard on the IBM PC during the 1980s. Introduced in 1982 by Hercules Computer Technology, the Hercules Graphics or Herc mode became a common and affordable alternative to the standard IBM offerings. It had a high-resolution text mode like IBM’s MDA and a high-resolution graphics mode that surpassed anything CGA could offer.
But the most attractive feature for many of Hercules’s customers was that the Hercules card was MDA compatible. So this meant they could use a considerably cheaper MDA monitor to display high-resolution monochrome graphics.
In DOSBox, you can cycle between green, amber, and black monochrome base colors using the F11 key. It enhances the historical accuracy of the Hercules mode to simulate the range of monochrome monitors.
The IBM PCjr was an alternative PC line created by IBM to target the home computer user. Some argue it was made to cut into the successful sales of the Apple II computers. But the PCjr was a complete flop! The system, introduced to the market in 1984, was pulled within its first year due to poor sales.
While IBM created the PCjr to be reasonably compatible with its full-price PC line, it wasn’t compatible enough for many disappointed owners. Price was also an issue for IBM, with the system significantly more expensive than the competing home computer systems of the time. Many would argue that the system’s cheap n’ nasty keyboard and the cost-cutting of parts ultimately led to the quick demise of the PCjr.
While the PCjr as a line was dead by the end of 1985, it introduced several innovations to the range of IBM PCs. The PCjr included two built-in joystick ports and two cartridge ports for the fast-loading software. The sound improved with a three-channel tone-generated chip as opposed to the standard IBM single-channel beeper. The most significant innovation was the graphics upgrade from CGA to CGA Plus, also called PCjr graphics. This mode enabled the greater range of 16 colors on-screen.
Due to these unique upgrades, the games designed exclusively for the IBM PCjr will not work on other IBM systems or clones. The IBM PCjr does support but isn’t 100% compatible with all the available IBM CGA modes.
- IBM PCjr or Tandy 1000 video with RGB monitor
- Nerdly Pleasures The PCjr. and CGA Compatibility
- Bogin, Jr IBM 4860 PCjr
- Mike’s PCjr Hardware Notes
- IBM PCjr Technical Reference (1983)
The first version of King’s Quest by Sierra On-Line was released in 1984 by IBM.
It only works on the IBM PCjr or under DOSBox using
TGA, the Tandy 1000 series
TGA or Tandy Graphics Array is the name given to the graphics mode used by the Tandy 1000 series of computers. Tandy Corporation created this line as a clone of the IBM PCjr. However, just weeks before Tandy went retail with their new product, IBM pulled the plug on theirs, which left Tandy on their own. Tandy did manage to turn the situation to their advantage and successfully marketed the range through their Radio Shack and Tandy retailers. The Tandy series eventually became a PC standard within the games industry. And during the mid to late 1980s, these Tandy PCs became the most capable computers to play many MS-DOS games.
Unlike the defunct IBM PCjr, the Tandy computer series was IBM PC compatible, meaning that users could run most software and games that supported CGA mode when there was no Tandy support. The Tandy 1000 series also offered two joystick ports, a three-channel tone audio chip, and volume control. The operating system was saved to fast ROM (read-only memory), allowing for short boot-up times.
The Tandy standard, supported by many software companies, was eventually superseded at the end of the 1980s by the widespread adoption of VGA graphics and 3rd party audio sound cards.
- IBM PCjr or Tandy 1000 video with RGB monitor
- DOS Days Tandy 1000 Series
- Nerdly Pleasures The Best Overall Choice for IBM PC Gaming of the 1980s
- Nerdly Pleasures The Saga of 16 Colors
- Tandy 1000 Professional computer
- The Silicon Underground Tandy 1000 value
The Tandy published edition of King’s Quest from 1984 does not support CGA, so DOSBox requires the
MACHINE=Tandy configuration for full 16 colors.
IBM introduced the Enhanced Graphics Adapter in 1984 but deemed a costly luxury for many, which meant it took a while to catch on. The new modes improved the vertical resolutions offering 320x350 or 640x350 and showed 16 colors onscreen from a 64-color palette.
Oddly enough, most games never supported EGA’s “enhanced” modes, instead opting for its backward compatibility with the IBM Color Display resolutions and limited 16-color palette. So many people, including my younger self, incorrectly assumed EGA was just CGA with 16-colors onscreen. One could attribute the lack of enhanced mode support in games to the significant work required to reprogram and redraw the graphics to suit the spare, almost double vertical height, and additional 64-color palette.
The original EGA card from IBM came with just 64kB of expensive video memory, limiting the 640x350 resolution to two-color monochrome. In the later life of EGA, some game titles, such as 1989’s Sim City, supported the EGA 640x350 mode using the enhanced 64-color palette. The enhancements require a graphics card expanded to 128kB of video RAM, which become more affordable.
- Lucasfilm EGA adventures - an appreciation
- Why the EGA can only use 16 of its 64 colours in 200-line modes?
- Famous Graphics Chips: EGA to VGA
Sim City for the PC from 1989 gave gamers many graphic modes to play in.
King’s Quest was revived and rereleased many times on the PC including in 1986, to add EGA support while requiring 256kB RAM and MS-DOS. But the game still used the same low-resolution, 160x200 pixel artwork created for the outdated 128kB-RAM equipped IBM PCjr.
King’s Quest IV from 1988 is interesting as it came out in two separate boxed releases. The first required 256kB RAM and offered low-resolution 160x200 pixel, 16-color artwork. The other was the marketed release that needs 512kB RAM, for a higher resolution of 320x200, 16-color artwork, and supported PC soundcards.
No DOSBox emulation
IBM introduced the Multi-Color Graphics Array in 1987 on their propriety PS/2 range of computers. Despite the acronym, MCGA was only ever included onboard and never offered as a separate upgrade card.
While it did introduce an amazing 256 colors onscreen from a palette of 262,144, the standard’s lack of high-resolution color support hinders is usefulness making it less suitable for business applications.
MCGA is only backward compatible with CGA (RGBI) for games, not the enhanced EGA modes. So unless a game offered specific MCGA support, the player would be stuck with a limited and ugly 4-color predetermined palette.
- The Silicon Underground MCGA vs VGA
- The first 256-color game on the IBM PC?
- The secret story of MCGA
- MCGA - Multi-Color Graphics Array
IBM introduced Video Graphics Array in 1988, which is backward compatible with EGA and CGA (RGBI). Two modes of VGA were popular with software developers, a low resolution 320x200 with 256 colors or the high resolution 16-color mode at 640x400 pixels, both from a palette of 262,144 colors.
The game industry took a while to latch on to VGA. Initially, the VGA support matched the same color palette as EGA (or even the Tandy). Later, when porting titles from the Commodore Amiga or the Atari ST, matching palettes with 16 to 32-colors onscreen were used. Space Ace and Super Off Road are a couple of examples.
It wasn’t until 1990 that software publishers hit the retail selves with their first full VGA titles in glorious 256 colors. Lucasfilm’s The Secret of Monkey Island VGA release, Sierra’s King’s Quest V, and Access’s Links: The Challenge of Golf all helped to encourage the VGA home computer take up, which later led to the multimedia PC fad.
By 1992, 256-color VGA graphic hardware, hard disks, and audio sound cards had become commonplace in consumer PCs. It was clear that the PC platform would dominate the home computing and gaming landscape despite its many shortcomings.
In DOSBox, all the VESA / SVGA machines, including the default
machine=svga_s3, should be compatible with most VGA games. A specific VGA-only
machine=vgaonly setting exists to add “higher emulation precision” to the emulation. It disables all non-VGA resolutions, but this is best used as a fallback for troubleshooting.
|#||VGA compatible machines|
King’s Quest V from 1990 was created for VGA 320x200 in 256-colors and backported to 16-color EGA and even 4-color CGA.
Dark Seed from 1992 is an unusal title as it uses the 640x350 EGA resolution but requires the VGA color palette.
The Secret of Monkey Island from 1990 was released as two separate retail releases. The EGA release came first and was the original platform for the artwork, but a different art team updated and “enhanced” the graphics to 256 colors for the VGA release.
Links: The Challenge of Golf from 1990 with its more realistic digital graphics probably encouraged a few business PCs to upgrade to VGA.
The arcade game Ivan “Ironman” Stewart’s Super Off Road was quickly ported to home computers and consoles in 1990. The VGA PC port shares the same limited color palette as the Amiga port, despite being able to recreate the arcade colors.
Syndicate from 1993 uses a combination of VGA modes, the 320x200 256-color mode for title and cutscenes, while a 640x400 16-color mode is used for gameplay.
No DOSBox emulation
The 1987 8514/A graphics accelerator from IBM departed from all its previous graphic standards. It was an expensive, large propriety card that worked on IBM’s unique MCA interface found in their PS/2 line of computers. It only offered two interlaced resolutions, 640x480 and 1024x768, with either 16 or 256 colors onscreen. All other legacy modes get handled using a separate onboard VGA chipset that uses an internal passthrough to the connected monitor.
Tseng Labs ET3000 series of cards from 1987 offered a high level of compatibility with the IBM legacy graphic and text modes. In addition, it also provided some non-standard, enhanced modes such as 640x480 in 256 colors, 800x600 in 16 or 256 colors, and 1024x768 in 16 colors. Initially, Tseng Labs created their own branded boards for retail using the chipset but later became a chip supplier for other manufacturers.
Paradise Systems, which Western Digital purchased, was a chipset manufacturer that had somewhat of a success in 1988 with the release of the PVGA1A and 1B graphic chips. They offered full support for all IBM PC modes from MDA to VGA and added a non-standard 800x600 with 16-colors onscreen for the 1A and 1024x768 16-colors for the 1B.
As these cards came to market before the VESA or SVGA standards existed, games had to provide routines or drivers to support the non-standard resolutions. In some circles, these modes are referred to as PVGA or Paradise. Later, under Western Digital, the chips are often listed as the WD90CXX series.
- DOS Days Paradise/Western Digital
- VGA Museum Paradise Systems PVGA1A
- PVGA1A Video Graphics Array Device technical
SVGA, or the Super Video Graphics Array, was not an official IBM PC graphics mode. Instead, it’s the collective, unofficial name given to PC graphic modes offering a higher definition than the official VGA specification. The name was later formalized into the VESA group’s Super VGA BIOS Extension and renamed VESA BIOS Extensions (VBE).
After the VGA standard, the technical specifications of better than VGA became inconsistent as 3rd party chipsets went in separate directions. It led to an unenviable situation for software developers where they needed to target each popular graphic chipset on the market. Consequently, consumers who bought cards with the latest chipsets often discovered that older software titles could not run in a high-resolution mode. Collectively these varying VGA extensions became known as Super VGA or SVGA. But in reality, there is no hard rule regarding what constituted SVGA for graphic cards produced in the 1980s.
SimCity 2000 from 1993 had to support over two-dozen incompatible SVGA cards that were standard in the marketplace. If a consumer had a graphics card that wasn’t listed in the setup or didn’t support the VESA Super VGA standard, they were out of luck! The box label requirements stated, extended VGA mode 640 x 480 (256 colors).
Tseng Labs ET4000 cards from 1990 offered compatibility with the IBM legacy CGA, EGA, and VGA modes. Unlike the limited and older ET3000 series, it offered up to 16 million colors onscreen at 640x480 and 65535 colors at 800x600, helpful with viewing digital photography. Additionally, it supported 1024x786 in 256 and 1280x1024 in 16 colors and was considered quite performant.
No DOSBox emulation
The eXtended Graphics Array from late 1990 was IBM’s final graphics standard and was found in its range of desktop PCs for a few years. It was a return to form for IBM creating a proper evolution for its outdated VGA mode by offering accelerated 640x480 at 65,536 colors onscreen and 1024x768 with 256 colors.
A 1993 revision known as XGA-2 offered improved performance and refreshed rates and has support for the popular 800x600 resolution.
- Famous Graphics Chips: IBM’s XGA
- OS/2 Museum The XGA Graphics Chip
- IBM Announcement Letter
- VGA Museum XGA-1
The S3 Trio 32/64 is a series of graphic chipsets that various graphic card manufacturers have used since its initial 1994 release. The line could be considered a common denominator of the MS-DOS era, 2D graphic and video player acceleration, and why its emulation is the default setting for DOSBox. The chipset was extremely popular with PC gamers before the advent of 3D acceleration due to its affordability and high compatibility.
The supported resolution, refresh rate, and color depth depended on the card manufacturer and included onboard memory. But boards with at least 1MB of DRAM could support 640x480 with 16 million colors onscreen and up to 1024x768 with 256 colors. In contrast, a 2MB board offered an increased 800x600 with 16 million colors and up to 1280x1024 with 256 colors onscreen.
As IBM had taken the path of priority interfaces in its PS/2 computer lines, several other PC manufacturers, such as NEC, Western Digital, and ATI, took it upon themselves to form the VESA group to extend and update the VGA legacy standard formally.
The first publication of the standard, the VESA BIOS Extensions (VBE) 1.0, was announced in 1989 and offered compatibility with VGA, 800x600, 1024x768 and 1280x1024 in 16 or 256 colors, generally referred to as Super VGA or Super VGA BIOS Extensions. And while welcomed, the technical implementation suffered some performance issues and was rarely used by game developers.
Later revisions of the standard added more graphic modes to support 32K, 64K, and 16.8M colors onscreen. They fixed many technical issues leading it to the goal of becoming the de facto standard for DOS-era 2D graphics.
VESA VBE 1.0
Introduced in 1989, it allowed modes up to 1280×1024 with 256 colors.
VESA VBE 1.1
It added some new high-resolution text modes though this standard remained practically unused.
VESA VBE 1.2
Published in October 1991, revision 1.2 became a well-supported standard within DOS software as it introduced 15/16-bit high color support with all resolutions up to 1280x1024.
VESA VBE 2.0
Published in November 1994, this update upped the standard by adding 24-bit true color support and a bunch of new and unusual modes, including increasing the maximum resolution to 1600x1200.
Emulating the S3 Trio card, this is the default and most compatible setting for DOSBox.
VESA VBE 2.0 - no linear frame buffer
The no-linear frame buffer is not a formalized standard but a troubleshooting setting within DOSBox. It matches
svga_s3 but might be helpful if an emulated program returns linear or line frame buffer errors.
VESA VBE 3.0
It was introduced in September of 1998. It mainly focused on 2D acceleration in Microsoft Windows, as by this time, gaming on MS-DOS was, for the most part, over.
Links 386 Pro from 1992 was one of the first major games to require a VESA-compatible graphic card.
Duke Nukem 3D from 1996 required a graphics card with support for VESA 2.0 or used VGA as a legacy fallback.
- Graphics cards of the IBM era
- DOS Days - Hardware (see Graphics Cards and Monitors)
Written by Ben Garrett