VirtualRPC on the Asus Eee
Robin Barnard on his Eee PC odyssey, or running Virtual Acorn on a SCC
A considered purchase?
Some of you may wonder why would I buy what is known as a Small Cheap Computer (SCC) or a "netbook" on the basis of making it my primary RISCOS machine?
Well there was one main reason. I am quite like Stephen Fry in that its very hard for me to resist buying a new bit of technology, and the SCC in question was tantalising me in all the windows of the many many branches of the Carphone Warehouse as being ridiculously cheap. The machine concerned was the Asus Eee PC 701SD at around £154.
To justify my purchase before I made it I determined to find out the specification of the computer and compare it to Virtual Acorns system requirements. It took some research to eventually find out the CPU is a Intel Celeron 900mhz cpu. On some lower specifications of the Asus Eee the CPU is underclocked to around 600Mhz. However on the 701SD model the processor can be run at the genuine 900Mhz. The memory was already known to be a rather tight 512mb and the hard drive was a on board Solid State Drive of only 8GB.
While knowing the above would be unworkable for anything too demanding, it looked like a good fit for my Virtual Acorn (VirtualRPC-AdjustSA) and so I went ahead and got a USB CD ROM drive for good measure!
Having already purchased VirtualRPC and installed it on another PC a short while ago I was not too sure if I would to have to buy another copy of VirtualRPC , but luckily enough if you ask VirtualAcorn nicely you can transfer to another computer as long as you remove the software from the previous machine and promise not to use the unlock code for that machine again. So I copied across my VirtualRPC folder entire to my Eee...
On starting it up I had to get a new unlock code to run the VirtualRPC on the Eee. This was not a problem and with the unlock code entered the VirtualRPC sprang to life. Now I had RIC OS running on the Eee, now was the time to start experimenting...
The first proper Boot of my VirtualRPC brought several issues to light. My VirtualRPC, that I had transferred, had 256mb of RAM configured and was set to tun in a 1024 x 768 screen mode with a large full colour picture of a RISC PC on the pinboard. My poor Eee kicked into overdrive with the fans full on - being a hard bitten Windows user at work I already had the Windows Task manager running so I took a peak at saw VirtualRPC was using almost all the CPU and more than what physical RAM was available or should I say thats what it should have been doing!
I found out that by default Windows running on the Eee did not have a paging file configured, so there was no extra capacity beyond the somewhat miserable 512Mb of RAM on the machine! So, after closing down my VirtualRPC somewhat ungracefully (I didn't have much choice as the poor Eee had hung), I decided to make some adjustments.
Firstly I set the Windows paging file to be 800mb. I figured that should be enough to cater for the shortfall in physical RAM as provided in the Eee (you do this via Control Panel, System, Advanced, Settings button in the Performance section at the top, Advanced tab, Change button at the bottom in the Virtual memory section from her you can chose a system managed page file (which is probably best ) or a custom one of your own choice - I tend to set mine to start about 1 and half times physical RAM minimum and maximum to be twice the previous figure and then click set and OK - windows will probably ask to reboot for this!).
If, like me, you have increased the RAM in your VirtualRPC then it will need to be set back to 32Mb.
Open the model.cfg file found normally in C:\Program Files\VirtualAcorn \VirtualRPC-xxx\Models\(Arm7 RISCOS Adjust (jit), Arm7500 RISC OS Adjust (Jit), or StrongArm RISC OS Adjust (Jit) using Notepad. To do this right click on the Model.cfg file then chose Open. In the dialog box that appears, chose Open using a program selected from a list, then scroll through the list of applications that appear and click on Notepad. It's also worth making sure that the Always use the selected program to open this kind of file is ticked then click OK.
Once the Model.cfg file is open just scroll down to the section that starts [Ram] and make sure it says:
base = 0x10000000 size = 32Mb.
and save the changes
Of course you could neatly avoid any of this by getting a 2GB RAM upgrade for the eee, which of course comes entirely recommended. A 2gb SODIMM memory upgrade is available from places like http://www.7dayshop.com from as little as £15. Fitting such an upgrade is dead easy as the memory is fitted under a plate on the bottom of the machine. Some other versions of the Eee need to be disassembled to get to the memory socket, but not the 701 SD.
My next Boot of my VirtualRPC was a bit more successful but still I was not out of the woods yet as the pinboard picture was literally filling itself in as if it was downloading from the internet and the VirtualRPC was running painfully slow. In addition there also appeared to be two pointers in full screen mode and yes the other one was the Windows one.
I had enabled LCD compression on my Eee (from the Eee PC tray utility in the system tray area). This allows you to actually see the whole screen area physically on the screen for any resolution higher than 800 x 480, which is the resolution of the LCD panel. Of course my VirtualRPC was on 1024 x 768 which is a high as the Eee can go on its own screen.
It did not take me long to guess that the Eee was struggling to compress the image on the fly and a fair bit of processing power was being wasted. So I configured my VirtualRPC down to 800 x 600 and set that in !Boot. I also thought I was reasonable to go into the Display tab of the VirtualRPC options and switch off Auto window resize , enabled Start in full screen mode, made sure that Hardware scale was off, and switched off Allow windows to change mode.
This time on Booting it was much better with no crawl of the pinboard image at all and the Eee was now much happier. System performance was now much more reasonable. But there was still those two pointers even with VirtualRPC running in full screen mode.
So I decided to take this to the furthest degree and set the Eee itself to the default 800x480 and to set RISC OS to the same resolution via !Boot. Hooray, there was only 1 pointer. So its only if LCD compress Mode is enabled on the Eee that you end up with two pointers. You can still have a larger screen resolution if you do not mind having to scroll around to see the missing parts of the screen, or you reenable the Hardware scaling option in VirtualRPC.
So now having a fairly responsive VirtualRPC running of course I am off and clicking on things. Although there is some odd things you can do with the trackpad software included (such as double tap the actual track pad to do a double click) you can disable all of this from the mouse part of the Windows control panel. However I did not find this to be much of a problem. The default VirtualRPC settings work fine with the touchpad, the two touchpad buttons are Select and Adjust. RISC OS menus can be opened using the Menu key on the keyboard.
To CD or not to CD that is the question...
So all was now going pretty well. VirtualRPC was running quite nicely and was ticking away using little CPU cycles when not directly being used. So I figure it was time to install some software. So I plugged in my USB CD ROM drive and started up my VirtualRPC. Bang! It refused to start and wanted to send a report to Microsoft (what they will do with this is anyone's guess -probably laugh!).
I had a look at this and Windows was complaining about the atapicd.dll plugin used by VirtualRPC. I fired off another of my seemingly endless emails to VirtualAcorn support (who have provided all the fixes in this article and unbelievably excellent customer service as well!) who confirmed the problem and pointed me to an article on the VirtualAcorn website that covered this problem.
Sure enough once the changes has been made VirtualRPC started, but minus a CD drive as accessible via the icon bar. However all was not lost as you can get to the drive via !DrivePop and the VirtualRPC treats it as a MS-DOS (or Windows if you prefer) drive. For anything you want to run or install you need to copy the entire folder for the Application in question to the HostFS hard drive in the VirtualRPC by drag and drop and then start !TypeFind (found in the Filing folder on HostFS::HardDisc4) and drag the whole application to this and keep accepting its default guesses as to the filetypes of the files concerned (just press enter to OK each suggestion). Once !TypeFind has finished you can run the application as normal. This solution is not too bad, all things considered - so now it was time to play Dune II...
So finally, after some work, I had my VirtualRPC running well on what could be considered a rather low spec machine. Sure there was a few bumps on the road but I take this to be part of the journey, or indeed the challenge, having driven down the road I can now share the experience with you all, and maybe your journey will be easier as a result!
As one final note, what is VirtualRPC like on the Eee? Well it's like having a mini-StrongARM RiscPC you can take anywhere, for a little of £200. Which is exactly what I wanted.