# Star Trek project

Star Trek is the code name that was given to a secret prototype project, running a port of Macintosh System 7 and its applications on Intel-compatible x86 personal computers. The project, starting in February 1992, was conceived in collaboration between Apple Computer, who provided the majority of engineers, and Novell, who at the time was one of the leaders of cross-platform file-servers. The plan was that Novell would market the resulting OS as a challenge to Microsoft Windows, but the project was discontinued in 1993 and never released, although components were reused in other projects. The project was named after the Star Trek science fiction franchise with the slogan "To boldly go where no Mac has gone before".

## History

The impetus for the creation of the Star Trek project began out of Novell's desire to increase its competition against the monopoly of Microsoft and its DOS-based Windows products. While Microsoft was eventually convicted many years later of illegal monopoly status, Novell had called Microsoft's presence "predatory" and the US Department of Justice had called it "exclusionary" and "unlawful". Novell's first idea to extend its desktop presence with a graphical computing environment was to adapt Digital Research's GEM desktop environment, but Novell's legal department rejected this due to apprehension of a possible legal response from Apple, so the company went directly to Apple. With shared concerns in the anti-competitive marketplace, Intel's CEO Andy Grove supported the two companies in launching their joint project Star Trek on February 14, 1992 (Valentine's Day).
Apple set a deadline of October 31, 1992 (Halloween Day), promising the engineering team members a performance bonus of a large cash award and a vacation in Cancun, Mexico. Of the project, team member Fred Monroe later reflected, "We worked like dogs. It was some of the most fun I've had working".
Achieving their deadline goal and receiving their bonuses, the developers eventually reached a point where they could boot an Intel 486 PC (with very specific hardware) into System 7.1, and its on-screen appearance was indistinguishable from a Mac. However, every program would then need to be ported to the new x86 architecture to run. It was to sit on top of a then upcoming release of DR DOS and it was noted that programs would have to be recompiled. The tagline for the project was "to boldly go where no Mac has gone before", which Computerworld mocked with the comment "the OS that boldly goes where everyone else has been".
However, the project was canceled in mid-1993 because of political infighting, personnel issues, and the questionable marketability of such a project. Apple's side of the project had seen the exit of a supportive CEO, John Sculley, in favor of a new CEO, Michael Spindler. Spindler was not interested in the project, instead reallocating most software engineering resources toward the company's total migration to the competing PowerPC architecture. While Apple came close to releasing Rhapsody in 1998 on x86 systems, even going so far as to ship a developer release for Intel hardware, no Macintosh operating systems launched natively on Intel hardware until the official transition of Mac OS X in 2006.
   All the MBAs in the world can't convince us it’s a good model.

## Architecture

Star Trek was designed as a hybrid of Apple's Macintosh operating system, made to run as an operating system GUI shell application upon Novell's next in-development version of the DR DOS operating system. It was designed so that a user could think of it as a standalone application platform and general computing environment, in a concept similar to Microsoft's competing Windows 3.1x, running on top of DOS. This was a radical and tedious departure both technologically and culturally, because at that time, the Macintosh system software had only ever officially run on Apple's own computers, which were all based on the Motorola 68000 architecture.
The system was built on the successor of Digital Research's DR DOS 6.0 (BDOS level 6.7 and 7.1) and NetWare PalmDOS 1.0 (code named "Merlin", BDOS level 7.0), Novell's DR DOS "Panther" as a fully PC DOS compatible 16-bit disk operating system (with genuinely DOS compatible internal data structures) for bootstrapping, media access, device drivers and file system support. The system would utilize DR DOS's new "Vladivar" Extended DOS component with flat memory support, which had been under development since 1991. "Vladivar" (DEVICE=KRNL386.SYS aka DEVICE=EMM386.EXE /MULTI + TASKMGR) was a dynamically loadable 32-bit protected mode system core for advanced memory management, hardware virtualization, scheduling and domain management for pre-emptive multithreading within applications as well as multitasking of independent applications running in different virtual DOS machines (comparable to Windows 386 Enhanced Mode but without a GUI).
Thereby, the previously loaded DOS environment including all its device drivers became part of the system domain under the multitasker. Unless specific protected mode virtual device drivers were loaded, hardware access got tunneled through this 16-bit sub-system by default. For maximum speed at minimum resource footprint, the DR DOS BIOS, BDOS kernel, device drivers, memory managers and the multitasker were written in pure x86 assembly language. Apple's port of System 7.1 would run on top of this high-performance yet light-weight hybrid 32-bit/16-bit protected mode multitasking environment as a graphical system and shell in user space. Macintosh resource forks and long filenames were mapped onto the FAT12 and FAT16 file systems.

## Legacy

Though the joint effort had been canceled, Novell published the long-awaited DR DOS 7.0 as Novell DOS 7 (BDOS 7.2) in 1994. Besides many other additions in the areas of advanced memory and disk management and networking, Novell DOS 7 provided all of Novell's underlying "STDOS" components of the DR DOS Panther and Vladivar projects except for the graphical Star Trek component itself, which had been jointly developed by Apple and Novell. Instead, TASKMGR provides a text mode interface to the underlying multitasker in EMM386, but the system also provides an API to allow third-party GUIs to take control. Microsoft Windows, ViewMAX 2 and 3, and PC/GEOS / NewDeal are known to utilize this interface, when run on Novell DOS 7 (or its successors OpenDOS 7.01 or DR-DOS 7.02 and higher), and Star Trek would have been yet another one. In fact, some additional hooks had been implemented specifically for the Star Trek GUI for frame buffer access. These hooks have never been stripped out of EMM386 but just left undocumented.
Apple reused some of the platform abstraction technology developed for Star Trek, incorporating it into the concurrently developed migration to the PowerPC architecture. This abstraction technology includes the capability of loading the Macintosh ROM data from a file instead of from a ROM chip. Loading the Mac OS ROM file was first used in the original iMac as a CHRP New World ROM system.
Former Star Trek team members Fred Monroe and Fred Huxham formed the company Fredlabs, Inc. In January 1997, the company released VirtualMac, a Mac OS application compatibility virtual machine for BeOS.$^{:180}$
In August 1994, Apple announced another partnership with Novell, this time to port its network operating system NetWare to run on Power Macintosh servers. However, the project did not exit the testing phase, and was quietly cancelled in October 1995.

## Similar concepts
### Within Apple

Apple's first and quickly aborted concept of porting its flagship operating system to Intel systems was in 1985, following the exit of Steve Jobs. Apple did not reattempt this effort until Star Trek, and did not launch such a product until 2006.
Apple has actually shipped products based upon the concept of hybridizing System 7 into a shell application platform. It was accomplished in the form of the startmac process and other hybridized applications launched atop its UNIX-based A/UX system. It was also accomplished in the form of the Macintosh Application Environment (MAE), which was the functional equivalent of Star Trek plus an embedded 68k emulator (as was the case with System 7 for Power Macintosh), running as an application for Solaris and HP/UX. Apple also delivered its "DOS compatible" models of Macs, which is a hybridized Mac with a concurrently functional Intel coprocessor card inside. System 7 and later have always had DOS filesystem compatibility.
Although a direct x86 port of the classic Mac OS was never released to the public, determined users could make Apple's retail OS run upon non-Mac computers through emulation. The development of these emulation environments was said to have been inspired by the initiative shown in the Star Trek project. Two of the more popular 68k Macintosh emulators are vMac and Basilisk II, and a PowerPC Macintosh emulator is SheepShaver; each are written by third parties.
Ten years after Project Star Trek, it became possible to natively run Darwin, the Unix-based core of Mac OS X, on the x86 platform by virtue of its NeXTstep foundation. This port was widely available because Darwin was open source under the Apple Public Source License. However, the Mac OS X graphical user interface, named Aqua, was proprietary. It was not included with Darwin, which depended on other window managers running on X11 for graphical interfaces, and thus most commercial Mac OS applications cannot run natively on Darwin alone.
Apple ran a similar project to Star Trek for Mac OS X, called Marklar, later referred to by Steve Jobs as having been the "secret double life" of the publicly Power PC-only Mac OS. This project was to retain OPENSTEP's x86 port, keeping Mac OS X and all supporting applications (including iLife and Xcode) running on the x86 architecture as well as that of the PowerPC. Marklar was publicly revealed by Apple's CEO Steve Jobs in June 2005 when he announced the Macintosh transition to Intel processors starting in 2006.

### Within IBM

Comparing and contrasting with Apple's efforts, IBM had long since attempted a different strategy to provide the same essential goal of innovating a new software platform upon commodity hardware, while nondestructively preserving existing legacy installations of MS-DOS heritage. However, its strategy was based upon its OS/2 operating system, which had long since achieved seamless backward compatibility with DOS applications. In 1992, roughly coinciding with the timeframe of the Star Trek project, IBM devised a new and fundamentally integral subsystem for backward compatibility with Windows 3.0 and Windows 3.1 applications. This new subsystem for OS/2, called Win-OS/2, was integrated beginning with OS/2 2.0. Although conceived through different legacy business requirements and cultures, Win-OS/2 was designed with similar software engineering objectives and virtualization techniques as was Star Trek. Coincidentally, IBM had also code-named its OS/2 releases with Star Trek themes, and would eventually make such references integral to OS/2's public brand beginning with OS/2 Warp.
Apple and IBM have attempted several proprietary cross-platform collaborations, including the unreleased port of QuickTime to OS/2, the significant traction of the OpenDoc software framework, the AIM alliance, Kaleida Labs, and Taligent. Both companies have utilized actual personnel from the Star Trek television and movie franchise for promotional purposes.

### Others

A corporation formerly known as ARDI developed a product called Executor, which can run a compatible selection of 68k Macintosh applications, and is hosted upon either the DOS or Linux operating systems on an 386-compatible CPU. Executor is a cleanroom reimplementation of the Macintosh Toolbox and versions 6 and 7 of the operating system, and an integrated 68k CPU emulator called Syn68k.$^{:182}$ Liken from Andataco, for Sun and HP workstations, emulates the Macintosh hardware environment including the 68k CPU, upon which the user must install System 6.0.7. Quorum Software Systems made two apps targeting UNIX workstations: Equal provides binary compatibility by emulating the Mac APIs and 68k CPU, to put each precertified Mac app into its own X window, on Sun and SGI workstations; Latitude provides a source code porting layer with a Display Postscript driver.