GEM (desktop environment)
GEM is a discontinued operating environment released by Digital Research in 1985. GEM is known primarily as the native graphical user interface of the Atari ST series of computers, providing a WIMP desktop. It was also available for IBM PC compatibles and shipped with some models from Amstrad. It was available on the BBC Master computer with an Intel 80186 co-processor. GEM is used as the core for some commercial MS-DOS programs, the most notable being Ventura Publisher. It was ported to other computers that previously lacked graphical interfaces, but never gained traction. The final retail version of GEM was released in 1988.
Digital Research later produced X/GEM for their FlexOS real-time operating system with adaptations for OS/2 Presentation Manager and the X Window System under preparation as well.
History
GSX
In late 1984, GEM started life at DRI as an outgrowth of a more general-purpose graphics library known as GSX, written by a team led by Don Heiskell since about 1982. Lee Jay Lorenzen who had recently left Xerox wrote much of the code. GSX was essentially a DRI-specific implementation of the GKS graphics standard proposed in the late 1970s. GSX was intended to allow DRI to write graphics programs for any of the 8-bit and 16-bit platforms CP/M-80, Concurrent CP/M, CP/M-86 and MS-DOS would run on, a task that otherwise would have required considerable effort to port due to the large differences in graphics hardware between the various systems of that era.GSX consisted of two parts: a selection of routines for common drawing operations, and the device drivers that are responsible for handling the actual output. The former was known as GDOS and the latter as GIOS, a play on the division of CP/M into the machine-independent BDOS and the machine-specific BIOS. GDOS was a selection of routines that handled the GKS drawing, while GIOS actually used the underlying hardware to produce the output.
Known 8-bit device drivers
- DDMODE0 Amstrad CPC screen in mode 0
- DDMODE1 Amstrad CPC screen in mode 1
- DDMODE2 Amstrad CPC screen in mode 2
- DDSCREEN Amstrad PCW screen
- DDBBC0 BBC Micro screen in mode 0
- DDBBC1 BBC Micro screen in mode 1
- DDGDC, DDNCRDMV NEC μPD7220
- DDVRET VT100 + Retro-Graphics GEN.II
- DDTS803 TeleVideo screen
- DDHP26XX HP 2648 and 2627 terminals
- DDQX10 QX-10 screen
- DDFXLR8 Epson lo-res, 8-bit
- DDFXHR8 Epson hi-res, 8-bit
- DDFXLR7 Epson and Epson-compatible printers
- DDCITOLR C. Itoh 8510A lo-res
- DDCITOH C. Itoh 8510A
- DD-DMP1 Amstrad DMP1 printer
- DDSHINWA Printers using Shinwa Industries mechanism
- DDHP7470, DD7470 Hewlett-Packard HP 7470 and compatible pen plotters, HP-GL/2
- DD7220 Hewlett-Packard HP 7220, HP-GL
- DDGEN2 Retro-Graphics GEN.II
- DDHI3M Houston Instrument HiPlot DMP
- DDHI7M Houston Instrument HiPlot DMP
- DDMX80 Epson MX-80 + Graftrax Plus
- DDESP Electric Studio Light Pen
- DDOKI84 Oki Data Microline
- DDMF GEM metafile
- DDPS PostScript metafile
Known 16-bit device drivers
- DDLA100 DEC
- DDLA50 DEC
- DDNECAPC NEC APC
- NCRPC4 NCR DecisionMate V
- IBMBLMP2, IBMBLMP3 IBM CGA monochrome mode
- IBMBLCP2, IBMBLCP3 IBM CGA color mode
- IBMCHMP6
- IBMEHFP6, IBMEHMP6, IBMELFP6 IBM Enhanced Graphics Adapter
- HERMONP2, IBMHERP3, HERMONP6, Hercules Graphics Card
- UM85C408AF UMC VGA Graphics
- DDIDSM IDS Monochrome
- DDANADXM Anadex DP-9501 and DP-9001A
- DDCITOLR C. Itoh 8510A lo-res
- DDCNTXM Centronics 351, 352 and 353
- DDDS180 Datasouth
- DDOKI84 Oki Data Microline
- DDPMVP Printronix MVP
- DD3EPSNL IBM/Epson FX-80 lo-res Printer
- DD3EPSNH IBM/Epson FX-80 hi-res Printer
- DD75XHM1 Regnecentralen RC759 Piccoline
- DDGSXM Metafile
- EPSMONH6
- IBMHP743 Hewlett-Packard 7470A/7475A Plotter
- METAFIL6 Metafile
- PALETTE Polaroid camera
GEM
Intel versions
The 16-bit version of GSX 1.3 evolved into one part of what would later be known as GEM, which was an effort to build a full GUI system using the earlier GSX work as its basis. Originally known as Crystal as a play on an IBM project called Glass, the name was later changed to GEM.Under GEM, GSX became GEM VDI, responsible for basic graphics and drawing. VDI also added the ability to work with multiple fonts and added a selection of raster drawing commands to the formerly vector-only GKS-based drawing commands. VDI also added multiple viewports, a key addition for use with windows.
A new module, GEM AES, provided the window management and UI elements, and GEM Desktop used both libraries in combination to provide a GUI. The 8086 version of the entire system was first officially demoed at COMDEX in November 1984, following a demonstration on the 80286-based Acorn Business Computer in September 1984 where the software had been attributed to Acorn, and the system was shipped as GEM/1 on 28 February 1985.
GEM/1
GEM Desktop 1.0 was released on 28 February 1985.GEM Desktop 1.1 was released on 10 April 1985 with support for CGA and EGA displays.
A version for the Apricot Computers F-Series, supporting 640×200 in up to 8 colors, was also available as GEM Desktop 1.2.
Digital Research also positioned Concurrent DOS 4.1 with GEM as alternative for IBM's TopView.
DRI originally designed GEM for DOS so that it would check for and only run on IBM computers, and not PC compatibles like those from Compaq, as the company hoped to receive license fees from compatible makers. Developers reacted with what BYTE described as "a small explosion"; it reported that at a DRI-hosted seminar in February 1985, more than half of the attendees agreed that GEM's incompatibility with Compaq was a serious limitation. Later that month the company removed the restriction. Applications that supported GEM included Lifetree Software's GEM Write.
At this point, Apple Computer sued DRI in what would turn into a long dispute over the "look and feel" of the GEM/1 system, which was an almost direct copy of Macintosh. This eventually led to DRI being forced to change several basic features of the system. Apple would later go on to sue other companies for similar issues, including their copyright lawsuit against Microsoft and HP.
In addition to printers the system also contained drivers for some more unusual devices such as the Polaroid Palette.
GEM/2
DRI responded with the "lawsuit-friendly" GEM Desktop 2.0, released on 24 March 1986, which eventually added support for VGA, sometime after its release in 1987. It allowed the display of only two fixed windows on the "desktop", changed the trash can icon, and removed the animations for things like opening and closing windows. It was otherwise similar to GEM/1, but also included a number of bug fixes and cosmetic improvements.In 1988 Stewart Alsop II said that GEM was among several GUIs that "have already been knocked out" of the market by Apple, IBM/Microsoft, and others.
GEM XM
GEM XM with "GEM Desktop 3.0" was an updated version of GEM/2 in 1986/1987 for DOS which allowed task-switching and the ability to run up to ten GEM and DOS programs at once, swapping out to expanded memory through EMS/EEMS or to disk. Data could be copied and pasted between applications through a clipboard with filter function. Digital Research planned to offer GEM XM as an option to GEM Draw Plus users and through OEM channels.The GEM XM source code is now freely available under the terms of GNU General Public License.
GEM/3
The last retail release was GEM/3 Desktop, released on 3 November 1988, which had speed improvements and shipped with a number of basic applications. Commercial sales of GEM ended with GEM/3; the source code was subsequently made available to a number of DRI's leading customers.While GEM/2 for the PC still provided a GSX API in addition to the GEM API; GEM/3 no longer did.
GEM/4 for CCP Artline
GEM/4, released in 1990, included the ability to work with Bézier curves, a feature still not commonly found outside the PostScript world. This version was produced specifically for Artline 2, a drawing program from the German company CCP Development GmbH.The system also included changes to the font management system, which made it incompatible with the likes of Timeworks Publisher.
Artline 1 still ran on GEM 3.1.
GEM/5 for GST Timeworks Publisher
Another version of GEM called GEM/5 was produced by GST Software Products for Timeworks' Publisher 2.1. It contained an updated look with 3D buttons, along with features such as on-the-fly font scaling. It came complete with all the standard GEM 3.1 tools. This version was produced from GEM 3.13 with only the Bézier handling taken from GEM/4.ViewMAX for DR DOS
GEM Desktop itself was spun off in 1990 as a product known as ViewMAX which was used solely as a file management shell under DR DOS. In this form the system could not run other GEM programs. This led to a situation where a number of applications could exist all with their own statically linked copy of the GEM system. This scenario was actually rare, as few native GEM programs were published. In 1991, ViewMAX 2 was released.In these forms, GEM survived until DRI was purchased by Novell in June 1991 and all GEM development was cancelled.