LOGO

Play DOS Games in Chrome - NaClBox & Google Native Client

August 30, 2012
Play DOS Games in Chrome - NaClBox & Google Native Client

The Evolution of Web Technologies and Native Client

Currently, a wave of innovative Web technologies is gaining momentum. Google’s Native Client is among them, alongside HTML5 and CSS3, all contributing to a more dynamic and engaging online experience.

Unlike ActiveX and Java, Native Client offers a method for executing native code directly within a web browser. This execution occurs within a secure sandbox environment, ensuring user safety.

NaClBox: DOS Gaming in the Cloud

Developer Robert Isaacs has successfully implemented this technology with NaClBox. This project is essentially a port of DOSBox, designed to function seamlessly within the Google Chrome browser.

Initiated just over a year ago, NaClBox has recently entered a closed beta phase. This beta introduces a highly anticipated feature: the capability for users to upload and store their personal DOS games in the cloud.

Exploring NaClBox’s Capabilities and Future Expansion

Our focus today is to assess the current functionalities of NaClBox. We will also provide an exclusive preview of the closed beta. According to Robert Isaacs, this beta will be significantly expanded in the “very soon” future.

The upcoming enhancements promise to further refine the user experience and broaden the scope of available gaming options within the NaClBox platform.

Experiencing DOS Games Within Chrome

Although Google hasn't activated Native Client as a default setting in the stable Chrome version, experimentation is still possible without resorting to experimental builds. Applications available through the Chrome Web Store can utilize this feature without any modifications. Therefore, the most straightforward method to begin using the emulator is to install the NaClBox application from the store.

Alternatively, Native Client can be enabled directly within your browser.

Enabling Native Client

  1. Type about:flags into Chrome’s address bar and press Enter.
  2. Locate “Native Client” within the flags list and select Enable.
  3. Restart the Chrome browser to apply the changes.

With Native Client activated, navigate to the NaClBox Gallery to explore the available games. Currently, the gallery features 18 DOS applications, encompassing complete games, shareware options, and the AdLib tracker for music creation.

These titles generally require minimal user interaction to launch. Simply click the “play” button, authorize the application, and observe its execution. Should you encounter issues, ensure that the NaClBox application is installed and Native Client is enabled as described above.

Users may need to adjust the controls depending on their operating system and the specific game being played. For instance, on Mac OS X, games heavily reliant on the Control key can present challenges due to the Ctrl + arrow key combination triggering virtual desktop switching.

Control customization is performed on a per-game basis, accessible through each application’s preferences menu.

Notable titles available include Duke Nukem I and II, Epic Pinball, and a demo of The Secret of Monkey Island, initially uploaded by Robert. It’s important to note that save data within the gallery’s games is not persistent across sessions. This limitation can be addressed by utilizing My NaClBox.

Enjoying Games Directly in Your Browser

The site’s most anticipated feature, “My NaClBox,” allows users to experience their own cloud-based DOS emulator. This innovative system preserves uploaded games, user preferences, and crucially, saved game progress. Currently, access is limited to a closed beta phase.

Robert is actively developing “dynamic recompilation” to enhance compatibility with more demanding games. Expansion of the beta program is planned, so those interested in emulators and providing valuable feedback are encouraged to register their interest on the My NaClBox homepage.

play-dos-games-in-chrome-with-naclbox-and-google-native-client-4.jpg

Having been granted beta access, I tested the emulator with several classic Apogee titles, including Terminal Velocity, Rise of the Triad, and Frontier, the sequel to Elite. Essentially, it functions as a comprehensive DOSBox environment hosted in the cloud, featuring a streamlined upload process.

Adding new applications is achieved by selecting Add Application from the left-hand menu, providing a name, and then clicking Create. The subsequent step involves clicking Add Files, which initiates an upload interface where you can select your game’s folder and upload its contents.

play-dos-games-in-chrome-with-naclbox-and-google-native-client-5.jpg

It’s advisable to use concise filenames, keeping in mind the limitations of DOS. For Terminal Velocity, I opted for “terminal,” and for Rise of the Triad, I used “rott.”

After uploading your game folder, you can initiate the game by clicking Play Game. Alternatively, you can select Configuration to fine-tune settings such as CPU speed and frame-skipping for optimal performance. This action launches a straightforward DOSBox window.

Unlike the desktop version of DOSBox, which necessitates drive mapping (e.g., C:\), NaClBox designates your current application as the C:\ drive. Uploaded folders become accessible through standard DOS commands.

To launch Rise of the Triad, I entered “cd rott” followed by “setup” to configure the sound card (always a Sound Blaster in DOSBox) and then typed “rott” to begin playing.

play-dos-games-in-chrome-with-naclbox-and-google-native-client-6.jpg

The performance across the tested titles was, generally, quite impressive. All games featured in the site’s gallery (playable by all visitors) functioned without issue, with only occasional button mapping concerns arising.

Terminal Velocity performed well, although the audio exhibited some distortion. The classic FPS, Rise of the Triad, ran remarkably smoothly, leading to an extended period of “research” before resuming other tasks.

play-dos-games-in-chrome-with-naclbox-and-google-native-client-7.jpg

Importantly, saved games, button mappings, and high scores were all preserved even after closing the application. This represents a truly innovative application of cloud technology.

play-dos-games-in-chrome-with-naclbox-and-google-native-client-8.jpg

Final Thoughts

The NaClBox project is still under development, however, interested parties can sign up for beta program access to experience cloud-based DOS games playable through a modern Google Chrome browser. Native Client represents a promising and innovative technology, aligning perfectly with Google's objectives for the Chrome OS ecosystem – enabling applications to execute at native speeds within the cloud environment.

While currently a niche offering, the potential of this open-source technology is substantial and anticipates widespread integration into numerous web applications we frequently utilize.

Interestingly, Justin previously published a detailed guide on emulating DOS games on a Nintendo Wii using DOSBox, which may be of interest to readers.

We encourage you to share your opinions regarding NaClBox and Google’s Native Client technology in the comment section below.

#DOS games#Chrome#NaClBox#Google Native Client#retro gaming#browser games