One of the early GUI operating systems for the PC, that is still being developed today, is GEM, an operating system that was originally created by Digital Research in the early 1980s. GEM was described as providing a Mac like GUI for the PC – long before Microsoft Windows 3.1 or 95. Today GEM continues to be developed as FreeGEM and old and new versions of the GEM OS and GEM applications can be downloaded for free (see links below). The history of Digital Research and GEM is quite interesting, as GEM had the potential to become the “Windows” (or Mac) of the PC world.
Digiral Research and CP/M
Digital Research was the company that developed CP/M for the early personal/home computers. Many computers that existed before the IBM PC used the CP/M operating system. CP/M was a text based operating system, similar to DOS, however, CP/M existed long before DOS. In fact, is appears that DOS used CP/M as a model. Of course, there are those who would point out that CP/M was modeled after unix.
When IBM was looking for an operating system for their soon to be introduced PC, CP/M was chosen. However, when IBM first approached Digital Research about using CP/M, the company’s founder, Gary Kildall, was out of the office for the day. With Gary gone, Kildall’s wife and business associates were reluctant to sign the stringent IBM nondisclosure agreement. The IBM representatives left Digital Research without ever explaining the reason for their visit. [note: various versions of the above story exist, but this seems to be the general consensus.]
IBM looked next to Microsoft, as they believed Microsoft had the rights to CP/M. Microsoft didn’t, but they didn’t tell IBM this. What they did have was knowledge of the Seattle Computer Company, which had developed QDOS (Quick and Dirty Operating System). They quickly made a deal, and sold the operating system to IBM. With this, DOS soon became the new standard. In response to DOS, Digital Research created DR-DOS (Digital Research DOS) to compete (DR-DOS continues on today). Although DR-DOS offered notable advantages, DOS became the standard, due to the IBM PC.
The GUI Concept: GEM
Around that time (the early 80s) most personal companies recognized that GUI based operating systems were the future. Apple was developing the Lisa computer, with its GUI operating system, which was released in 1983. With CP/M losing out, Digital research was also working on its next operating system, GEM.
GEM was first shown at a computer show in 1983. Although similar in concept to Windows 3.1, GEM was especially interesting is it was quite similar to the Lisa or Macintosh GUI, (or like Windows 95) in that it had a desktop, menus that pulled down from the top, windows, folders, a trash can, a calculator, and so on. Again, see the links below for examples of the original GEM and today’s version.
A few years back I talked to an computer specialist who told me he saw GEM running on a PC the mid 1980s. It made quite an impression on him. To him it was the Mac OS running on a PC. He said he was convinced that it was over for Windows. Windows 3.1 was still a few years away, and in his opinion, the current version of Windows (version 2?) was no match for GEM. He expected Windows to just “go away.”
Later versions of GEM were altered a bit, as Apple Computer thought GEM looked too much like the Mac GUI and took Digital Research to court. The trash icon was removed and a few other things were changed in later versions. Still, GEM continued to be developed for the PC, and various GEM applications, such as word processors and publishing software were created for it.
GEM did have notable sales. In fact, Tandy Computer sold GEM bundled with their PC. However, for whatever reason, Digital Research didn’t aggressively promote GEM. It may have been that they had problems getting applications developed for GEM (Microsoft had similar problems with their early versions of Windows). Or, Digital Research may have decided that people were too locked into DOS and DOS applications to consider switching to another operating system. Digital Research appears as to have decided to sell GEM where it could. Although GEM didn’t take the PC desktop, it appeared in other places. For instance, it was used as an interface for desktop publishing software.
GEM operating systems other computers (other than the PC). One of them was the Atari ST. Interestingly, that version of GEM had the trash can. Evidently, Apple didn’t see GEM on the Atari ST as a threat.
The first versions of GEM were designed to run on early and mid 1980s PCs, as such, GEM is a good option for running on low end PCs today. Original GEM files and applications, now abandonware, can be downloaded from here.
GEM Today: FreeGEM
That is not the end of GEM – GEM continues today. The company that took over ownership of GEM released it to the public. A number of developers took over GEM, and it continues to be developed and updated as FreeGEM. Information and downloads can be found here.
Other Sites of Interest
Screenshots of older GEM software can be seen here.
Other information on the original GEM can be found here.
About the Author:
Roger lives in Southern California, and is a bit of a computer Geek, owning both Mac and Windows computers. He enjoys experimenting with the various operating systems – such as running Atari ST emulators on his PC, and going to the beach, of course. Roger can be contacted at [email protected]
I remember when it was GEM, Desqview and a very early version of Windows competing for the PC desktop. GEM was arguably the nicest of the three. But in the end it was applications, applications, applications that determined the winner.
When did Tandy use GEM ? Any Tandy system I saw ran DeskMate, until they switched to Windows.
Of course, there are those who would point out that CP/M was modeled after unix.
I don’t think CP/M resembled Unix much at all. In fact, it was supposedly MS-DOS 2.0 which introduced such Unix concepts as file handles (vs. CP/M FCBs) and the hierarchical directory structure (vs. putting all the files in the root directory).
I wish I could find something more definitive on CP/M’s origins. All I’ve got so far is the Jargon File entry for CP/M: “Many of CP/M’s features and conventions strongly resemble those of early DEC operating systems such as TOPS-10, OS/8, RSTS, and RSX-11.” http://tuxedo.org/~esr/jargon/html/entry/CPM.html
Hmm, I’ve apparently missed the point of the article and concentrated on one sentence.
The only real way in which CP/M was like UNIX is in the idea that it would run programs compiled from the same source code on different machines because the operating system architecture was the same across the various hardware platforms.
As far as 86-DOS, related as QDOS in someone’s book, Tim Paterson wrote 86-DOS to be source code compatible with CP/M and made it easy to port programs from the 8080/Z-80 CPUs to 8086/8088. MSX-DOS, the mid 1980s CP/M alternative from Microsoft Japan, was also very compatible–source code-wise.
GEM was very flexible and one led Desktop Publishing on DOS machines when Ventura Publisher was released on GEM. However, 640K was not quite enough to do much more than strangle the system.
Atari’s version of GEM was stuck at version 1.1, which had the overlapping Windows Apple refused to allow on x86 versions of GEM. When version 2.0 arrived on x86, the windows on the desktop were either full screen or half screen, but that was the maximum of the flexibility left outside of the applications.
A pt not brought up was the PC version & the Atari version of Gem running on x86 & 68k, this was probably the 1st cross platform GUI OS, but one I’d rather also forget. Were the apps recompilable PC-Atari, I don’t remember?
In 85, I saw Gem running on Atari & the 1st Fat Macs came out, I bought the Fat Mac since it was obvious Apple was pushing the 68k to its limit, & Atari/Gem was not. That Mac still boots on a floppy into a 20M HD.
Funny thing is all these old OSs & the HW they ran on survive forever as emulations, the HW, SW & roms reduced to few small files on the web but working 100x faster.
The only real way in which CP/M was like UNIX is in the idea that it would run programs compiled from the same source code on different machines because the operating system architecture was the same across the various hardware platforms.
No, that’s wrong. CP/M was closely tied to the 8080 ISA, and was never ported to any other platform, at least not as CP/M. Since there were no other platforms to port to, the idea of portable code is absurd. In fact, it was the hardware standardization that helped CP/M flourish.
As a side note, one of the most popular expansion cards for the Apple 2 was a CP/M card, complete with Z-80 CPU, from a little-known company named Microsoft. The CP/M card allowed owners of Apple’s “home computer” to run real business applications; back then CP/M was the lingua franca of business apps. Microsoft also provided the BASIC interpreter for the Apple 2. So Microsoft was a key partner of Apple from the very beginning. Interesting, no?
“No, that’s wrong. CP/M was closely tied to the 8080 ISA, and was never ported to any other platform, at least not as CP/M.
Since there were no other platforms to port to, the idea of portable code is absurd. In fact, it was the hardware
standardization that helped CP/M flourish”
There’s a lot more to a platform than the CPU. Every cp/m machine had
different hardware and disk formats. The cp/m BIOS is a set of drivers
customised for the hardware, allowing code to be portable between
macines which were far more variable than current PCs.
geos on the c64 imo was far superior to GEM
“No, that’s wrong. CP/M was closely tied to the 8080 ISA”
Seemed to work fine on my Z80 cpu machine.
“No, that’s wrong. CP/M was closely tied to the 8080 ISA”
on my first “PC” the PC1715 with U 880(Z80 Clone, I thing) it worked too. I definatly have somewhere the disks lying around 😉
http://robotron.informatik.hu-berlin.de/studienarbeit/files/hardwar…
Yeah, my Amstrad PCW 8256 with Z80 CPU had CP/M 3.0 plus running. I still have the machine.
I doesn’t surprise me that Microsoft was an early Apple supporter; in those days Apple had something like a 27% market share so of course M$ would support it.
Fun fact: Microsoft is the largest maker of Macintosh software outside of Apple.
Seemed to work fine on my Z80 cpu machine.
FYI, a Z80 is Zilog’s version of an 8080.
Cheers,
Ken
I heard on “A Prairie Home Companion” this weekend a sketch where a man was talking to a girl, and the girl talked about how she “studied the 80’s in school”. “We studied the 30’s, 50’s and the 80’s.”
You Kids!
CP/M had a couple of notable features.
It allowed application developers to write to a base set of OS services. (Nothing real novel here). App writers wrote to BDOS, BDOS wrote to the BIOS. Ideally, the BIOS was the bit that was ported from machine to machine.
Besides fighting hardware incompatabilities in their code, application vendors got to fight with floppy formats as well. 8″? 5 1/4″? Hard Sector? Soft? Wheee!!!
CP/M was written for the 8080. The Z80 was Zilogs chip that is binary compatible with the 8080, but offered extra instructions as well, and was MUCH easier to design with. They also changed all of the mnemonics from Intel’s 8080, but that’s a detail.
Many a CP/M were run on Z80’s. Many a CP/M were made to run ONLY on Z80’s. For example, there’s no reason not to have Z80 opcodes within the BIOS of a Z80 based machines CP/M.
For portability, applications needed to be written to the 8080.
As for influence, CP/M was most certainly inspired by the DEC systems, minimally with its “uber” program, PIP (Peripheral Interchange Processor). PIP, though a complicated command line, could basically do EVERYTHING on a CP/M system. Directories, Copy Files, Format disks, Print files, etc.
MS-DOS, among its faults, at least didn’t inherit PIP.
>But in the end it was applications, applications, applications that determined the winner.
Hmm – not too sure about this point. GEM had a lot of applications – a good word processor, a couple of DTP applications, a chart/graph maker, vector graphics, bitmap graphics, system utilities. The only thing missing for an office in those days was a spreadsheet, and GEM could run DOS apps in those days anyway.
I have GEM installed on my DOS partition using an SVGA driver @ 1024×768 – just out of curiosity you understand – and it’s not that bad at all on a modern machine, but then so is Windows 3x. Considering the apps are so old, they are quite good actually especially bearing in mind that MS had very little.
AFAIK, the problem with GEM was that it was too heavily involved in legal battles with Apple who objected to the trashcan and other such stuff. By the time the battle was over and people started writing for Windows, noone was interested any more.
Folks, the Z-80 and its derivatives are derivative of the 8080. It’s comparable to the difference between a ‘386 and a ‘486, or a ‘486 and a K-6. It’s the same platform. There wasn’t any CP/M for the 6502, or any other CPU of the time — that’s my point. In contrast, UNIX has been ported to many different platforms, with widely varying ISAs.
CP/M was never ported to the 6502 but it was most certainly on other CPUs. The Atari ST line’s “TOS” was based on CP/M-68K, the CP/M for the 68000 CPU series, and the most famous battle in early computing was for the “official” DOS of the forthcoming IBM PC: the battle was between MS-DOS and CP/M-86.
And, the difference between the Z80 and the 8080 is much greater than the difference between the 386 and 486. You’re correct in that a Z80 can run 8080 machine code, but the 8080 had about 200 instructions and the Z80 had over 700 (more than twice as many as the 8086 had, in fact). The difference between the 386 and 486 is more comparable to the difference between the 8080 and the 8085, or the Z80 and the Z180. As far as I know, CP/M 3.0 only ran on the Z80/Z180, as did the “Z-System,” a CP/M-compatible OS that brought some Unix-y ideas (notably shells and device-independent I/O redirection) to the 8-bit world.
You can find more information about CP/M at http://www.cpm.z80.de/ (the “Unofficial CP/M Web Site”), including binaries for CP/M-86 and CP/M-68K posted with the permission of Lineo, the company that owns CP/M’s copyright now.
I bought my first pc from a church swap meet in ’97 on the advice of two Windows users that should have known better. In those days, everyone that ever used Windows figured they were ‘computer experts’. They assured me that the pc must be at least a 386 “because it has Windows 3.1”. It turned out to be a 9 year old Amstrad 8086 running GEM 2. This was a 512k machine with *no* hard drive, successfully masquerading as a 386 with Win 3.1 to a fellow that worked as a home electronics salesman and another fellow that traded used pc’s, neither of which was connected with the seller. The full impact of this has never been lost on me, especially when you consider how big and heavy and slow the IBM pc’s of that era were, and I still judge all other OS’s, *especially* the preposterously massive Linux distros, by the tiny OS that fits on a single bootable floppy, even with a modem program, text editor, and a couple of arcade games. I *still* give diskettes with FreeGEM on them to people who have scrap pc’s with blown hard drives or whatever. I don’t know any other windowing interface with a mouse and icons that will even work on those green monochrome monitors! And as for the hardware it originally ran on, I thought it was pretty cool a machine that old being able to boot DR DOS 7.02 when it originally came with MS-DOS 3.2 and CP/M-86. Also the 360k floppy drive was double speed and super fast. If only subsequent machines and OS’s took so much pride in a compact and efficient job well done. We’d all be wearing computers on our wrists by now instead of waiting for the electronics needed to run today’s bloated OS’s to get smaller.
Faced with the huge takeoff of Windows 3.1, DRI considered
a number of interesting ideas to redress the balance.
Most of these were unfortunately killed off by politics..
The ‘Star Trek’ project. This was a collaboration with Apple to make GEM source-compatible with MacOS. Apparently it worked pretty well, but Apple killed it off..
http://macspeedzone.com/archive/articles/appleconfidential/startrek…
Project Scimitar. A port of WABI (like WINE. made by Sun) to GEM. This would have run Windows 3.1 applications in GEM, but was killed by Novell before serious work was done.
ViewMax 4. This looked exactly like Windows 3.1 when I managed to see it running. Viewmax was a cut-down GEM, the file manager bundled with DRDOS. V4 was pulled from DRDOS 7 after the ‘Panther’ beta.
It -may- have been derived from an experimental fourth version of GEM..
Why do I get the feeling that your sum total knowledge of this subject is limited to what you read on a couple of fanboy websites? I don’t know where you were when CP/M was being used (pooping into a diaper, I suspect), but I was working for a store that dealt exclusively in CP/M systems.
While SP/M was ported to the 68000, it was far from popular. It’s the exception that proves the rule. The failure of CP/M-68k was due in part *because* the programs were not easily portable! And in case you didn’t know, the 8086 was designed to support 8080 opcodes for the express purpose of supporting existing CP/M programs.
So nitpick all you like, kid. It’s not making you any smarter.
In those days, everyone that ever used Windows figured they were ‘computer experts’.
Sadly, that’s still true. Today the industry is full of self-proclaimed “experts” who couldn’t solve their way out of a paper bag, but who can operate a mouse, so they con clueless HR reps into giving them high level positions. I think that everybody with any interest in the field should read about this false authority syndrome:
http://www.vmyths.com/fas/
Apparently the published link doesn’t work. Try this one instead:
http://www.vmyths.com/fas/fas1.cfm
I don’t think it was simply applications that enabled Windows to beat GEM; around the time of the battle, Ventura launched their brilliant desktop publishing package (which was ported to Windows when GEM died).
Windows 1.0 didn’t need that expensive piece of fancy hardware called a mouse, it was better at memory management, and was better at managing lots of DOS programs (though, IMHO, neither were as good at this as Quarterdeck’s DesqView and IBM’s Topview). GEM was prettier and nicer to use than Windows. In those days, Microsoft had the advantage of a reputation for producing solid products that worked, which really says how awful a lot of the competitors were – tho’, despite products like GEM, DR had produced some real crud in their time.
Does anyone remember the other PC WIMPs of the time, like Epson’s Taxi?
I was running CP/M in the early ’80s on a TRS-80 Model 4 and an Intertec Superbrain. You may have been selling ’em, but I was programming ’em.
You said CP/M didn’t run on processors outside the 8080 family. This is wrong. You say CP/M-68K didn’t really take off. Absolutely! You’re right! So what? CP/M still ran on the 68000, so the assertion it didn’t run on other processors of that era is still wrong!
While the 8086’s instruction set is a superset of the 8080’s, your implication that CP/M-86 could run CP/M-80 binaries is, again, incorrect. The only machines that could run both types of binaries were machines with both Z80s and 8086s, like the DEC Rainbow.
If these are “nitpicks” to you, sorry, guy. You said something that wasn’t correct, and I called you on it. Titling the message “Speed, Speed, Speed…” was unduly flippant of me, granted, but I was just correcting you–and your idea of a rebuttal is to make snide personal attacks. Good show.
WattsM, you’re sending a straw man to make your arguments for you. I did have the forethought to cover my ass against nitpicking assholes like you by saying “at least not as CP/M”, but that’s not the point. In the context of what I was saying, you are totally wrong. Your exceptions don’t disprove the rule, for the reasons I already stated.
And while I never did say anything about running CP/M binaries on 8086, I do appreciate the irony that you yourself back up my case in your zeal to be contrary. You do indeed need the right CPU! You just proclaimed what you were trying to argue against! Bravo!
The later versions of GEM on the Atari were actually rather good. They diverged from the PC version and somehow managed to avoid Apple’s crippling of the PC version.
Several clones were produced, which added full pre-emptive multitasking years before MS got it sorted – eg. the German MagiX system, which ran on Atari and Apple hardware (with binary application compatibility across hardware platforms).
The open-source clone XaAES is still being developed today (http://members.ams.chello.nl/h.robbers/Home.html) and you can even run X11 app’s on it now (http://freemint.de/X11/index.php).
“I never did say anything about running CP/M binaries on 8086…”
No, you said, “the 8086 was designed to support 8080 opcodes for the express purpose of supporting existing CP/M programs.” So you’re saying that by “supporting existing CP/M programs” you meant “failing to run them.” I see.
“I did have the forethought to cover my ass against nitpicking assholes like you by saying ‘at least not as CP/M’, but that’s not the point.”
It was ported to the 68000 as CP/M-68K. So that “-68K” makes all the difference. I see.
This only started out as an attempt to correct minor inaccuracies you spouted. They’re still minor, and they’re still inaccuracies. It’s perversely fascinating to watch you hurl insults at me for having the audacity to call you on them, even though I’ve done it with no personal insults directed at you–unless you take someone questioning your memory of CP/M’s details as a personal insult, which I can only assume you do. Does admitting that you got minor details wrong really gall you that much?
” This only started out as an attempt to correct minor inaccuracies you spouted. They’re still minor, and they’re still inaccuracies. It’s perversely fascinating to watch you hurl insults at me for having the audacity to call you on them, even though I’ve done it with no personal insults directed at you–unless you take someone questioning your memory of CP/M’s details as a personal insult, which I can only assume you do. Does admitting that you got minor details wrong really gall you that much? ”
WattsM, after wasting too many hours in previous debates with Speed, I’ll give you the heads up…let it go. You’re just going to get into a vicious cycle of quoting him, and having him tell you that you are fabricating statements and putting up “straw man arguments”. He won’t answer any of your statements directly, but deflect and spin. It’s like deja vu when I read this message board. Save your wrists and brains for a more worthy pursuit.
[Speed] won’t answer any of your statements directly, but deflect and spin.
Gee Hank, that’s a swell blanket “attacking the person” thing that you have going! Does your post answer any of my statements, directly or otherwise? No. Have you added any relevant material? No. So it looks like all you have done is “deflect and spin”! Pot, kettle, black.
I can guess that you’re jealous that I do choose my words carefully, and in so doing I tend to not stick my foot in my mouth like so many of your playpals do. I can assure you that attempted character assassination will not alter the validity of what I say, nor will it make you superior. Quite the opposite, in fact. So, as I have said many times before, I suggest that you take your own advice, and pursue a topic that’s worthy of more than ridicule.
I am pretty sure I used GEM in ’88 or ’89 at a major New York law firm. I forgot what hardware we were using it on, but I recall that we switched to Windows when we were “upgraded” to IBM PS/2 Model 40s.
I wasted all the time I’m going to making relevant comments on any of your posts. As I stated above. So don’t expect any direct response on anything you state from me.
I am not sure what year, but I do know GEM was bundled with Tandy computers at one time.
GEM is nice in that is was compact i.e. it didn’t give the computer that much of a workout. It did alot for the size of the program.
And it was quite intuitive.
Yes, GEM on the Atari ST was pretty good.
The Atari ST has been described as Atari’s low cost Macintosh. With GEM, it did seem that way. Apple let them make it more like the Apple desktop GUI, then they did the PC version, possibly becuase they didn’t see it as much of a threat as the PC with GEM.