Started by astroboy, December 28, 2005, 04:30:44 PM

Previous topic - Next topic


Ok, here we go again...

This is a re-post of an article about OPENSTEP and VMWare 3.x, how to stuff and experiences related.  Hope anyone wanting to use OPENSTEP in VMware find this very useful.



By Alejandro Díaz Infante

In the first issue of the NeXT ezine I wrote the article "OPENSTEP and VMware". Since the publication of that article, I found a lot of cool new stuff in the setup of OpenStep, namely how to print with font support, how to setup sound, and how to add NIC support with communication with a Linux server. Due this new findings, I asked the opportunity to publish a new version of the article that includes all this recent info. I hope you find this very useful.

We still want to run OPENSTEP!
I'd like to share my experiences running VMWare 3.1.1/OPENSTEP 4.2 in computers running SuSE Linux 8.1.  

I remember that some time ago I read in a web site about the possibility to use NeXT with VMware, but without devices support and at 640x480 with no color. For me that kind of «possibility» sucked, and I didn't pursue the subject.

Some days ago I casually entered the same web site ( to learn that Atomic Object ( and others had developed a video driver for VMware, so although there is a lack of devices support, I spent some time to see what would happen.

These are my results. Let me tell you about the good news and the bad news.

The good news
*Ability to run OpenStep in newer computers. For me, that mean the possibility to run it in PIII or PIV computers. See the section «Performance issues» to know if running OpenStep in VMWare hits or not the performance..

*Ability to run OpenStep in unsupported devices. I tried some time ago to setup OpenStep in a partition in my Dell Dimension 4100 computer, but the install program always refuses to read my DVD ROM announcing read/seek errors, so I didn't have the opportunity to check the compatibilty of other components in native mode. With VMWare, I  can run OpenStep in this same computer at 1280x1024x32 with my Nvidia GeForce3 Ti500 video card, at the highest refresh frequency my Dell P110 Trinitron monitor is able to give (116.9kHz/109Hz). Due to the virtualization of devices, I can even use my USB connected optical mouse, my SoundBlaster Live! sound card, and the rtl8139 network card, none of them OpenStep compatible!

The bad news
*No print support. VMware seems to not like OpenStep parallel port driver, so is not going to be possible to print directly from your virtual OpenStep box. But, don't worry, you still can turn on your old NeXT/OPENSTEP computer when you need to print something, or use Linux to print your file, even if you need font support. See the section «Printing OpenStep files with font support».

*No sound recording. You can have sound in your OpenStep box, but unfortunately the required driver does not record sounds in VMware. Sad.

*No SCSI support. OpenStep can detect a SCSI card, but, unfortunately, it keeps resetting my Advansys SCSI card when booting. I also tried with an Adaptec AHA2940UW SCSI card (which is OpenStep compatible in native mode) with the same unfortunate results. SCSI card are for now useless.

Here's what I did.

Setup OpenStep
I followed ALL the instructions contained in «Installation of OpenStep 4.2 in VMware 3.0»  
( To complement the «VMware installation and configuration» section, my VMware config read as follows:

SCSI devices:
«Not installed» for every device

IDE Drives:
-Create and install a Primary Master (P-M) IDE drive, mine is called «openstep» and uses 4000 MB
-Create a Primary Slave (P-S) Device CD-ROM, mine is pointing to /dev/sr0 when I have ide-scsi emulation active, otherwise it points to /dev/hdc
-Set up Secondary master (S-M) and slave master (S-S) to «Not installed»

Ethernet Adapters:
I installed a bridged connection

Serial Ports:
Install a COM1 device, pointing to /dev/ttyS0

Install a device pointing to /dev/dsp0.

I have 512 MB of RAM, so I reserved 256 MB to OpenStep. Anyway, it can work with as few as 32 MB RAM.

Setup video
I setup my computer using the AtomicObject driver and it worked just fine for me, but you can test the available others if you need them.

Decompress and install VMWareFB.config. Remove «Default VGA Adapter» and add display device «VMWare Display Adapter by Atomic Object» in When selecting display mode, make sure you choose the same width and height as the X server, otherwise the mouse will go crazy!  

Setup modem & internet
I configured my external 56K modem (don't ask me the brand, it doesn't have any!) to surf the Internet in OPENSTEP. I did the following:

1. The IO Device Configuration of the first serial port in VMware BIOS was set to «Auto»

2. In, OpenStep automatically added Serial Port v. 4.00 during setup, so I just added TTY Port Server.  

3. Then I followed all the instructions contained in «OpenStep&PPP» written by Brian Wotring. Although I downloaded that document from the internet some years ago, I was not able to find it again using alltheweb and google, so check;action=display;threadid=15 to see a copy of that document if you don't know it.

Setup sound
Depending on your sound card and driver, you may need to deactivate a sound server. If you use KDE, you can access arts sound parameters in Control Center, Sound, Sound Server. My SoundBlaster Live! likes to have this sound server on, but my SoundBlaster PCI with es1373 chip doesn't. If you Power your virtual OpenStep machine and the following message appear:

«/dev/dsp0: Device or resource busy. Device sound will start disconnected»

you may need to turn off your sound server.

To have sound in VMware/OpenStep, use the drivers created by University of Glasgow.  

1. Download SBSoundmidi.I.b.tar.gz from peanuts (at this time, it is in

2. Install SBSoundMidi driver for either Vibra16Cpnp or AWE32pnp. Both work great! (I use the default irq and io, but the second DMA I put it on 7, because it was the detected one when used Windoze to test VMWare. Nevertheless, I didn't detect any failure when using the second DMA in its default of 5, so I guess it could be up to you.

That's it. Put those audio CD's and multimedia apps back again!

Just a curious side note: I can't play the files bonk, pop, tink and frog included in /NextLibrary/Sounds. Opened them in Preferences, and ProductionPartner. They appear as if were playing, but no sound comes out the speakers. Well, at least everything else works fine...

Setup network
The network card on my SuSE Linux host computer is a RealTek compatible (loaded with rtl8139.o). It is connected via a 8-port ethernet 10 Mbps hub, which also connects a dual boot OpenStep/Debian computer, and a laptop with OpenStep and SuSE.

The host Linux computer uses static IP10.67.227.5, the OpenStep/Debian uses I chose these addresses to be compatible with the ones provided by the ISP of my school, so I could just plug my laptop in the school hub to surf and download from the Internet, and later plug my lap in my home network without IP hassles.  

1. Activate network support for your VMware box. You may need to run the script, particularly if you didn't activate bridged networking before.

With bridged networking, the virtual OpenStep machine appears as an additional computer on the same physical ethernet network as the host, and use the services available on an existing network. Likewise, any physical host or other virtual machine can use the resources of the OpenStep virtual machine. Cool!

2. In VMware Configuration Editor, install a bridged ethernet adapter.

3. In OpenStep, run and click on network devices. OpenStep will detect automatically an AMD-PCnet-32 PCI Ethernet card. Select it, save config. Then put your chosen static IP address in (it has to be <> to the one you use in your host computer! remember that you are setting a computer inside a computer) I used Shutdown and Boot virtual VMware computer.

4. I just needed to setup a NFS server in the SuSE Linux host, which could have OpenStep clients. So I did the following:

I activated full access to the host hard disk, by typing in the /etc/exports file
/  *(rw,no_all_squash,no_root_squash,sync)
(well, Ok, I'm not a security fringe, as you may notice. Maybe later I'll change this to have just one shared network directory)

Activate NFS server services for your Linux box. (In SuSE Linux 8.1, you can do this by opening YAST2, Network advanced)

5. Boot your OpenStep virtual computer. To mount and have access to the host disk, open a terminal and type something like this

mount -t nfs /Net
This will mount the host disk under the previously created /Net directory.

If you need better transfer velocity, I believe you could use these options

mount -t nfs -o rsize=8192,wsize=8192 /Net

Only root can mount, hence could be a hassle to change to the root account every time you need to access NFS server, so I added my account to the wheel group to be able to «su» as root every time I wanted.

I've been using this configuration during the last few days. In my experience, there are no packet loss using the Openstep NIC driver. I can download/upload files and ping between machines without any problem..

Maybe I'll setup a real OpenStep network someday, with domain and everything, just for the sake of testing, but right now I have what I needed, real NFS connectivity between Linux and OpenStep machines.

Printing OpenStep files with font support
I had a craving to print documents created in my virtual OPENSTEP box. However, since VMware and OpenStep does not seem to play along in regards of parallel port, I dig a bit to find a workaround. Here's what I did.

1. Create in your linux box a directory named /Resource/Font

2. Grab the media where you store your OpenStep fonts, unzip and untar them

3. As you know, all the *.font are directories, so you need to enter to each directory and copy all the files inside to /Resources/Fonts

(I 'm a lazy guy,  and I created this small shell script to avoid too much work)  ;-)


gunzip *

for i in *.tar
tar -xvf $i

for i in *.font
cd $i
mv * /Resource/Font/
cd ..

rm /Resource/Font/*.txt

That's it. Now, when you select "Print", "Preview" in OpenStep programs, will generate a postscript file that you must save. Copy that file to your Linux box, and then open it in your favorite postscript viewer  (I use KGhostView, GhostView, and even they can be displayed directly in Konqueror file manager)

You'll see your documents with all the beautiful fonts you grew accustomed in NeXT, and, of course, you can now print them from your Linux box.

If you need to print graphics, it's even easier. Just save and open them in Gimp or your favorite Linux graphic program.  

Performance issues
So, how running OpenStep in VMware stacks up against running in native mode?

For testing purposes, I installed VMware and OpenStep in a Linux partition on a Pentium IV 1.8 Ghz computer (procedure I did just for testing, because it can run OpenStep in native mode anyway).

NXBench yields the following results in native mode:

dhrystones: 3278688
VAX Mips: 2081.707
NXFactor: 9.124
line: 3.16122
arc/bezier: 3.08232
fill: 3.94122
transform: 32.6471
composite: 3.21333
userpath: 19.8112
text: 5.76443
window: 1.37087

NXBench yields the following results in the same machine running SuSE Linux and VMware:

dhrystones: 1801801  
VAX Mips: 1144.001
NXFactor: 4.763
line: 3.54867
arc/bezier: 3.50567
fill: 3.86823
transform: 13.0628
composite: 3.34458
userpath: 3.43881
text: 6.29586
window: 1.03971

BenchPress reports this in native mode:

Display PostScript Drawing  
Animate Tensor Logo: 1527.72
Draw Color Ramps: 2043.14
Draw Polygons: 566.21
Draw Lines: 523.78
Text Manipulation: 650.82  

Display PostScript Imaging
Image Scaling: 4753.96
Image Decompression: 2514.85
Image Compositing: 514.20

50 Threads: 54.45
100 Threads: 104.02

CPU Benchmarks
Dhrystone: 12076.81
Floating Point: 13883.37
Integer: 10186.51
Trigonometric: 18140.89

Disk I/O
Seeking: 2137.92
Writing: 310.74
Sequential Reads: 8574.40
Random Reads: 2357.52

BenchPress reports the following when running OpenStep in VMware:

Display PostScript Drawing  
Animate Tensor Logo: 556.94
Draw Color Ramps: 326.04
Draw Polygons: 730.48
Draw Lines: 489.55
Text Manipulation: 417.73  

Display PostScript Imaging  
Image Scaling: 2158.25
Image Decompression: 268.58
Image Compositing: 646.02

50 Threads: 51.92
100 Threads: 100.97

CPU Benchmarks
Dhrystone: 5168.24  
Floating Point: 13301.15
Integer: 9309.49
Trigonometric: 15192.68

Disk I/O
Seeking: 30.97
Writing: 306.30
Sequential Reads: 356.52  
Random Reads: 330.86

As we can find comparing these results, running OpenStep in VMware does have a general negative impact on performance, its worst found on disk I/O. However, if it's true that OpenStep would not run as fast as it could be in native mode, I must point that OS is totally usable in VMware. I'd sincerely recommend running OpenStep in VMware if your computer has no compatible devices for OpenStep, but it does have for Linux. The hit in performance is not noticeable when running your every day apps (Remember, NeXT apps were created for computers with much less processor horsepower). Maybe the apps load not as faster as it should be, due VMware bad I/O disk performance, but that would be all.


I recently upgraded my SuSE Linux system to the most recent incarnation to this date, version 9.1. Unfortunately, there are issues running VMware 3.x in the new SuSE: it includes a very recent kernel (2.6x), and causes problems in VMware modules, rendering VMware unusable.

Fortunately, there is a way to fix it (Many thanks to Bernd Hirst for his help).

1. In YaST, install the packages kernel-source and gcc-c++
2. Install your VMware binaries.
3. Configure the kernel sources by executing the following commands:

cd /usr/src/linux
make cloneconfig && make dep
make prepare

4. Go to and download a file named vmware-any-any-updateXX.tar.gz.

5. Unpack the file, and run a script named "". This will compile the missing modules and configure VMware.

6. Run VMware using the following command: 'LD_ASSUME_KERNEL=2.4.0 vmware'

Hopefully VMware should start, and now you can configure OPENSTEP.

Hope you find this info useful for your NeXT adventures...


Looks like the AMDPCNet driver might have  come along after the Rhapsody DR2 CDs were made, as the process seems to work well for me, up until the point where Rhapsody finds the AMD PCNet card.  

Can someone post a link to, or mail me a copy of the AMDPCNet driver for OPENSTEP (most of those seem to work fine on Rhapsody/x86)?

Also, how do you guys get past the jumpiness of the emulated mouse?

Thanks in advance!