RISC World

VirtualAcorn Tech Support

More from Aaron's tech support notebook

There have been some rather interesting tech support issues in the last month or so. All of them relate to one particular product. Can you guess what it is? Well here is a clue, it's the long awaited replacement for Windows XP, yes it's Windows Vista.

VirtualAcorn on Windows Vista

I've been running various versions of Vista on my machines for almost ten months. This means that I have been able to document any problems and make sure that our products worked before Vista was launched. As such I really wasn't expecting to get many problems and initially it looked as though my confidence was well founded. Recently thought things have taken a turn for the worse, so lets take a quick tour through some of the problems that have turned up along with the solutions.

Sound card drivers

VirtualAcorn products require a sound card. This shouldn't present a problem for any modern PC but suddenly we had a Vista machine present problems that appeared to be sound card related. VirtualRPC would install correctly and unlock with no problems, but would crash the second it was run.

The normal cause for this is having no drivers for the sound card and indeed the supplier of the computer had managed to sell a machine to the customer which had no sound card drivers installed. Normally the user would simply go on-line and download the drivers and solve the problem. However in this case there were no Vista compatible sound card drivers available. So the supplier has supplied a machine that simply could not work correctly. I advised the customer to go back to the supplier and demand a refund and to purchase a machine elsewhere. Since they had paid on a credit card and the machine was only a week old they shouldn't have any problems getting their money back.

The story does worry me somewhat as it seems that a minority of suppliers don't have a clue what they are doing and are supplying hardware that isn't compatible with the operating system.

Having dealt with that problem lets move on to the next weird sound related issue.

Where's my sound hardware gone?

We have another machine (in this case a desktop PC) that had been supplied with Vista pre-loaded - but didn't seem to have any sound hardware shown at all. Checking from the Windows device manager didn't show any sound devices. I asked the customer to check round the back of the machine and lo and behold it had a full set of audio sockets. I suggested that the user tried re-installing the audio device drivers from their motherboard CD. They did this and re-booted but the sound hardware still didn't appear and VirtualAcorn still crashed out. I have to admit that this one had me stumped. Why was the sound hardware not appearing?

The answer was rather surprising. The machine had no speakers connected. So what? Of course no speakers means no sound, but the hardware will still be present. Well apparently not. Vista had detected that the machine didn't have any speakers and so was disabling the sound hardware. Not just switching the volume off, or some other sensible tactic, but actually preventing the sound drivers from loading and making the hardware "vanish". The user didn't want speakers, so my only suggestion was to buy a cheap pair of headphones and plug them in. Then turn the volume down and leave the headphones hidden behind the computer on the desk.

This bit of Vista "cleverness" seems to me to be monumentally dumb and I hope that further investigation will reveal a way of turning this stupid feature off in future.

Why am I losing my configuration changes?

This one initially had me baffled as I wasn't able to reproduce the fault. A user was altering the amount of memory allocated to VirtualAcorn in the .cfg files, saving them, then running VirtualAcorn and discovering that the changes hadn't been applied. Going back to the .cfg files showed that the changes that had been made had vanished.

A good deal of investigation managed to throw quite a lot of light onto this problem and might also solve some other potential sillies that could happen.

Run as Administrator

VirtualAcorn can modify it's .cfg files, they can also be modified by the user to alter aspects of the programs behaviour and performance. As VirtualAcorn is located in program files so are its .cfg files. Windows Vista won't allow files that are stored in program files to be altered by an application. So what seems to happen is that your changes get "lost".

There are a number of issues involved here and for the sake of sanity (yours, not mine, that's already gone) we will try to keep things at a rather abstract level. Under Windows Vista you can arrange for a task to run with Administrator rights. Assuming that VirtualRPC is already installed there will be a shortcut icon on the Windows backdrop. Right click on this and click on Properties. Now click on the Compatibilty Tab and make sure the Run this program as administrator button is ticked. Now click on OK. This will set VirtualRPC to run in Administrator mode. Note that although we have changed the properties for the shortcut on the Windows backdrop these settings apply to the VirtualRPC program itself despite the method that is used to start it.

Having changed this it should be possible to start up VirtualRPC and to make changes to it's configuration that will actually be kept. Having said this there is one final hurdle that Vista might throw in the way.

User Account Control

This is a rather nasty "feature" in Vista. To explain in brie,f what happens is that when you (or an application) look at files on a disc (normally in Program Files) you don't actually see the files that are there, but a local copy of them that is unique to your user account. This may not make sense so I shall provide an example.

The first thing you will need to do is to turn on the Show hidden files and folders option from the Windows Control Panel. To do this open the Control Panel from the Windows Start Menu. Make sure the Control Panel is running using the Classic View. Now double click on the Folder Options icon. When the window opens click on the View tab and then tick the Show hidden files and folders option. Now click on OK.

Now open the Computer window from the Start menu and open your harddisc. Go into your user account and you will find an Appdata folder. Go into this and you will find a Local folder, inside this is a final folder called VirtualStore. In here you will find a copy of your Program Files folder. If you navigate down you will find a copy of VirtualAcorn. This will not be a complete copy but will contains copies of the files you have altered.

So what does this all mean? Well when you alter a file inside VirtualAcorn the file itself isn't changed. What happens instead is that a copy is made inside the VirtualStore inside your user account. The version of the file inside VirtualStore is presented to you as though it was the real file inside Program Files. Suppose you change a file and someone else logs onto the machine under a different account. If they then go and look at the file you changed they find that the changes have vanished. This is because Vista is showing them the original, not the altered copy from your VirtualStrore. I can't see the end of the chaos this could cause for users of all sorts of program, luckily this "feature" can be turned off.

From the Windows Control Panel go to User Accounts and turn off the User Account Control option. This should stop the "virtual" files being presented as the real files. You should shut down and restart the computer to make sure the change has happened. Of course all your changes will now have been "lost" as you will be seeing the original files not the ones from your VirtualStore. So it might be worth copying these back in place to complete the job.

Summing up

So after all this you might think that I am rather anti Vista. Actually I rather like it, it has addressed many of my gripes about Windows XP. This is mainly by "nicking" lots of good ideas from Mac OS X, but Vista is still potentially much better than XP. However this does not mean that I would recommend it to customers. In my view Vista is not finished properly. It needs more testing and better backwards compatibility (quite a few of my favourite programs don't work properly). So as far as we are concerned we support VirtualAcorn products on Vista, but if you are going to use Vista then you should:

  • Turn off "User Access Control"
  • Set up VirtualRPC to run as administrator
  • Remember to plug in your speakers!

Right, I'm off for a lie down now.