VirtualAcorn Technical support:
Increasing RISC OS memory

All of the VirtualRPC products come preconfigured with 32MB or 64MB of RAM for use with RISC OS. That's a similar amount to a genuine RiscPC but for some tasks the more RAM the better. With VirtualRPC it's easy to change to amount of memory that RISC OS can use but make sure you read through all of this article first so you avoid any problems.

Introduction

With VirtualRPC memory is configured in the same capacity as real SIMMs, so VirtualRPC-SE and SA can be configured using multiples of 1MB, 2MB, 4MB, 8MB, 16MB, 32MB and 64MB. In addition VirtualRPC-AdjustSA also supports memory sizes between 128MB and 256MB.

If your PC has less than 1GB of RAM make sure that you don't configure VirtualRPC to use more than 25% of your total RAM. So if your PC has 512 MB of RAM the maximum you should use in VirtualRPC is 128MB (512*0.25). If you use more than 25% of RAM it's very likely that your PC will grind to a halt as Windows will have to use virtual memory once there's no more RAM available for other tasks.

Before you start

Firstly make sure that VirtualRPC is not running before you try and alter the memory allocation or any changes might not be saved. Secondly make sure you know what version of VirtualRPC you have and then read the appropriate section in this article.

Finally take a backup of the Models folder before you make any of the changes. Just single click on the Models folder to select it and press ctrl C and then ctrl V and a folder called 'copy of Models' will be created. You can delete this copy once you are sure that everything is working correctly.

Whilst the configuration process is similar for every version of VirtualRPC there are key differences in the way the settings are stored.

VirtualRPC-SE and VirtualRPC-SA

The maximum amount of RAM supported by VirtualRPC-SE and VirtualRPC-SA is 128MB defined as 2 x 64MB memory banks. That limit cannot be increased and is unrelated to the version of RISC OS you are using. So a VirtualRPC-SE running RISC OS 6 will still only support a maximum of 128MB even though RISC OS 6 itself can support up to 256MB. If you configure VirtualRPC-SE or VirtualRPC-SA with a total of more than 128MB (64MB x 2) things will go very wrong as the memory space will loop round so that the memory located at 8MB and 136MB (128+8) will map to the same physical memory location. This will make RISC OS very unstable and you could easily loose some of your work when (not if) it crashes.

The memory settings are stored in the model.cfg configuration file(s) located inside each for the model folders. You can find the model folders inside:

C://VirtualAcorn/VirtualRPC-xx/models/...
or
C://Program Files/VirtualAcorn/VirtualRPC-xx/models/...

You need to load the appropriate model.cfg file into a Text Editor such as Notepad. If you double click on the model.cfg file and Windows doesn't know what to do with it you will be asked what application you want to use to open it, choose Notepad (or another text editor if you have one installed).

The model.cfg file is a human readable configuration file. Scroll down to the [RAM] section and you should see something like this:

   [RAM]
   base=0x10000000
   size = 16Mb
    
   [RAM]
   base=0x14000000
   size = 16Mb

In the example above both of the memory banks are configured to 16MB, making a total memory available to RISC OS of 32MB. Each bank can be configured up to the maximum of 64MB:

   [RAM]
   base=0x10000000
   size = 64Mb
    
   [RAM]
   base=0x14000000
   size = 64Mb

Making a total of 128MB (64+64). Once you have made any changes just save the model.cfg file and then run VirtualRPC. Provided you've followed the instructions you will see that the amount of memory allocated to RISC OS has now changed.

Don't forget that if you are using VirtualRPC-SA and want to use 128MB in the StrongARM, ARM710 and ARM7500 configurations you will have to alter all three model files.

VirtualRPC-AdjustSA (also applies to VirtualRPC-Adjust)

The maximum amount supported by VirtualRPC-AdjustSA is 256MB. The allowable sizes above 128MB are the same as real SIMM sizes. So you can configure a memory size of 192MB (because that's 128+64) but not 190MB as there's no such thing as a 62MB SIMM. The complete list of allowable memory sizes above 128MB is:

   129MB, 130MB, 132MB, 136MB, 144MB, 160MB, 192MB and 256MB

But before you reach for a text editor to change the configuration you need to be aware of the restrictions.

Some older applications, for example Artworks V1.x, can throw a major tantrum if they detect more than 128MB of memory. Other applications can fail when you use 256MB of memory but will work with 160MB. There's no dedicated list of what will work and what won't but almost everything that's 32Bit neutral and has been released in the last 15 years should support 256MB of RAM. Almost every application that was released prior to 1996 (when the StrongARM was released) is unlikely to support 256MB but might work with 160MB or less.

You may think that it's not a big problem if something doesn't run with over 128MB but it could be a real nuisance if that 'something' is part of your !Boot sequence. You can easily find that RISC OS won't work correctly as it's crashed out of the !Boot sequence or could even hang when booting. So, unless you are sure that everything will work with 256MB start with a configuration of 144MB and see if everything is OK. If 144MB works OK try 160MB and keep increasing the memory size up to the maximum of 256MB.

If you do find any problems we recommend that you put the RAM back to 128MB and then install a copy of !Reporter by Martin Avison as it can make debugging the !Boot sequence much easier. Once you have !Reporter installed bump the memory back up and you should be able to find and resolve any problems.

The maximum memory that's supported by the ARM7500 model is 128MB because the real Acorn A7000 and A7000+ plus only have one SIMM slot and only support SIMMs of up to 128MB. If you configure the ARM7500 emulation to use more than 128MB the memory space will loop round so that the memory located at 8MB and 136MB (128+8) will map to the same physical memory location. This will make RISC OS very unstable and you could easily loose some of your work when (not if) it crashes.

The Arm710 and the StrongARM models both support up to 256MB of memory.

The memory settings are stored in the model.cfg configuration file(s) located inside each for the model folders. You can find the model folders inside:

C://VirtualAcorn/VirtualRPC-AdjustSA/models/...
or
C://Program Files/VirtualAcorn/VirtualRPC-AdjustSA/models/...

You need to load the appropriate model.cfg file into a Text Editor such as Notepad. If you double click on the model.cfg file and Windows doesn't know what to do with it you will be asked what application you want to use to open it, choose Notepad (or another text editor if you have one installed).

The model.cfg file is a human readable configuration file. Scroll down to the [RAM] section and you should see something like this:

   [RAM]
   base=0x10000000
   size = 64Mb

You can see that by default VirtualRPC-AdjustSA has one memory bank configured. You can increase this bank up to a maximum of 256MB, for example:

   [RAM]
   base=0x10000000
   size = 256Mb

Don't try and use any memory size other than the ones listed at the start of this section as you may get some strange results. Once you have made any changes just save the model.cfg file and then run VirtualRPC. Provided you've followed the instructions you will see that the amount of memory allocated to RISC OS has now changed.

Finally

Please note that we can't help 'fix' any problems caused by applications that won't work correctly with more than 128MB of RAM. You will need to get in contact with the author/publisher (if you can find them) and see if a later version of the application exists. If not you will have to knock the memory back down to 128MB before running the application concerned.

[Home] [Products] [FAQ] [Order] [Contact] [Press Releases] [Tech Support] [Downloads]

 Copyright (c) 2017 3QD Developments Ltd. All rights reserved. All trademarks are acknowledged. All details are correct at the time of publication, E & OE.
Last Edit Date 01/11/17
info@virtualacorn.co.uk
2