RISC World

VirtualA5000 on Linux

Paul Johnson

Getting VirtualA5000 to run under WINE

VirtualA5000 is a fantastic piece of software which enables people to use RISC OS under a Windows environment. However, some people won't touch Windows with a 50 foot barge pole and have opted for the totally free Linux operating system...

A brief bit of history

As we all know, Acorn, at one time, was the name in education. Then things went bad and Windows boxes moved in. The RISC OS boxes were ditched, but the software remained. Teachers liked RISC OS, but had the newer machines thrust upon them. With the churn in education though, newer teachers came in and the RISC OS software was forgotten. VirtualA5000 allowed schools to use their old RISC OS education kit with the Windows PCs — and we all know what happened then — they loaded up the old RISC OS software and ran it under VirtualA5000. Former Acorn users, now submerged in the bloated hackery that is Windows, bought VirtualA5000 and started to relive their Acorn days. Okay, they would not be coming back to the platform en mass, but VirtualA5000 has been responsible for a number of new RISC OS hardware sales (and quite a number of second hand RISC OS hardware sales).

That's all well and good, but what about Linux?

There currently isn't a native Linux version of VirtualAcorn. Drat. However, there are two ways to run Windows applications under Linux. Win4Lin and WINE (WINE stands for WIne Is Not an Emulator). I've not used Win4Lin as I have heard some bad things about it.

When you download WINE, you have the choice on what you use. There is the choice of a tarball, rpm, srpm (source rpm) and apt (for Debian). The tarball and srpm versions are the source code versions. Fine if you want to mess around or have compiled code before, but it's not for everyone. Most users are happy with the compiled binary versions. You should also download winesetuptk (the WINE setup utility).

For RPM installation

  • Open a terminal window
  • Log in as su
  • Type rpm -ihv wine.rpm (or whatever the rpm is called)
  • Type rpm -ihv winesetuptk.rpm (or whatever the rpm is called)
  • Exit as su

For source installation (below is for Redhat, it is similar for other distributions).

  • If you are using a SRPM, follow the RPM installation above followed by cd /usr/src/redhat/SOURCES
  • Type tar -zxf winesource.tar.gz
  • Type cd winesource
  • Type tools/wineinstall
  • The compiler will compile the source and if you said ”yes• when asked, will install WINE.

Run (from a terminal window) winesetuptk. You should be okay to just accept the default values.

Put the VA5000 CD in and mount the drive. You then need to do the following.

  • Open a terminal window
  • Type cd /mnt/cdrom
  • Type wine CDStarter.exe /c cdstarter.ini
  • Select the bits of VA you want to use.

The final part of the operation is to get hold of a copy of mfc42.dll and mscvrt.dll and place them in the same directory as the installation of VA5000. VA will not run without these two dlls. You can download these from the internet or anyone who has a Windows box (hmmm, looks like Windows may have a use after all!).

You can now start VA5000 via the command line via.

wine .wine/fake_windows/"Program Files"/VirtualAcorn/VirtualA5000/VirtualA5000.exe.

...which is a bit of a mouthful! Personally, I would do the following

ln -s .wine/fake_windows/"Program Files"/VirtualAcorn/VirtualA5000 VA5000.

That will make a symbolic link to the directory containing the VA5000 executable. This means you can type.

wine VA5000/VirtualA5000.exe

and VA will start. You now have a working installation of VA on a linux machine.

Why did I not just associate exe files with WINE?

Simple — if you do that then there can be problems if you use Mono (C# for Linux and other platforms). If you don't use Mono, then by all means, feel free to associate exe files with WINE. You will then be able to double click the VirtualA5000.exe file to execute it.

Native VA for Linux?

Recently on the RedSquirrel mailing list, Graeme Barnes has stated that early work on VA for Linux has begun by using wxWindows instead of MFC. That means that VA will also be available for any platform with a supported version of wxWindows. Who knows, VA for MacOSX could be just around the corner! (Lets not jump the gun - ED)

Paul Johnson