VirtualAcorn Technical support:
VirtualAcorn .cfg file configuration options (Technical)

This document lists the various configuration options from the two VirtualAcorn .cfg files normally located at:

C:\Program Files\VirtualAcorn\VirtualRPC-xxx\va.cfg
C:\Program Files\VirtualAcorn\VirtualRPC-xxx\Models\ARM 7 RISC OS Adjust(JIT)\model.cfg

This document is supplied for information purposes only, we do not recommend that you change any of the default options in the configuration files unless you are sure you know what you are doing. Also please note that this information is provided as a rough guide only and VirtualAcorn reserve the right to make changes to the specification of the configuration files without notice. If you set an option incorrectly VirtualRPC may no longer load correctly and you may have to re-install it from your original CD. We recommend that all users back up their .cfg files before attempting any changes.

General Overview

When VirtualRPC starts up, it reads the VA.cfg config file to determine configuration options. These options are divided into [sections] which are read by different parts of the application. Each section contains one or more configuration options (keys).

Once the "ARM 7 RISC OS 4(JIT)" model is chosen VirtualRPC then looks in the appropriate directory inside the Models folder and loads the model.cfg it finds there, this describes the model which will be built. Each of the [sections] in the Model.cfg represents one component of the model and it is possible to have more than once instance of a component, for example the [Ram] sections may include options for more than one bank of memory modules.

You can later the configuration options by hand but you should remember the following points:

  • Section names are Case Sensitive
  • Key names are case insensitive but the key values may be sensitive
  • Integer/Boolean values have no "" and may be postfixed by G,M or K for Giga(*2^30),Mega(*2^20),Kilo(*2^10). The values can be in decimal or hex (preceded by 0x).
  • String values are surrounded by ""
  • True is represented by a 1 and False by a 0
  • Comments inside the .cfg files are not yet supported

If you do decide to edit one of the config files then you can do this using Windows NotePad, do not try and edit a config file with Windows WordPad as the file may become corrupted. In order to edit a file right click on it from Windows Explorer and click on Edit. If Windows doesn't know which program to use to edit the file then set Windows to choose a program from a list. Then choose NotePad.

The VA.cfg file

A default Va.cfg file will have a structure similar to the one shown below, note that not all versions of VirtualRPC may contain all the commands. If a command does not exist in your own Va.cfg then most likely your version of VirtualRPC does not support it.

     [Model]
     forceselect = 0
     Name = "ARM 7 RISC OS 4(JIT)"
 
     [DirectDrawRenderer]
     free_scale = 0
     CanChangeMode = 1
     Border = 0
     TripleBuffer = 0
     FrameSkip = 0
     AutoWindowResize = 1
     FullScreenStartup = 1
     MaxRefresh = 75
     MinRefresh = 58
     Large16BitPalette = 1
 
     [DirectXInput]
     MenuKey = 2
     MouseButton0 = 0
     MouseButton1 = 2
     MouseButton2 = 1
     JoystickEnabled = 1
     JoystickThreshold = 25
     WindowsKeyIsBreak = 1
 
     [DirectSound]
     FilterLevel = 49152
     Enabled = 1
     FilterMatrix = 1282100912
 
     [WinUI]
     ShowSplash = 0
     Version = 140
     ProcessorPriority = 1
     UIPriority = 1
     ShowSplash = 0
     Licensekey="000000-000000-000000"
     ShowLicence = 0
     DeactivateInBackground = 0
 
     [SystemClock]
     AutoDetectProcSpeed = 1
     ProcessorSpeed = 1700

The configuration commands in the file split down like this:

[Model]

     forceselect = 0

VirtualRPC-Adjust will automatically select the appropriate model.

     Name = "ARM 7 RISC OS 4(JIT)"

The name of the model that will be selected.

[DirectDrawRenderer]

The Direct draw renderer is the component used to render the video buffer to the screen. In future it there may be other versions.

     free_scale = 0

A value of 0 means use Software video scaling, a value of 1 means use Hardware video scaling.

     CanChangeMode = 1

With this set to 1 VirtualRPC-Adjust can control the PCs graphics card and change screen modes when running in full screen.

     Border = 0

Draw the RISC OS screen border.

     TripleBuffer = 0

Not currently supported.

     FrameSkip = 0

Speed up display by only drawing some frames. A value of 0 will display all frames, a value of 2 will skip 50% of frames, a value of 9 will skip 90% of frames.

     AutoWindowResize = 1

When VirtualAcorn is running in a Window and RISC OS changes screen mode automatically resize the window to fit.

     FullScreenStartup = 1

Start up in full screen mode if set, if not start up in a window.

     MaxRefresh = 75

VirtualRPC-Adjust will not choose a Windows screen mode with a refresh rate higher than this figure.

     MinRefresh = 58

VirtualRPC-Adjust will not choose a Windows screen mode with a lower rate higher than this figure.

     Large16bitPalette = 1

Enable the large 16bit screen palette which speeds up screen redraw in 16bit (32,000 colour) screen modes.

[DirectXInput]

DirectXinput is used to handle keyboard/mouse/joystick input. In future there may be alternative input methods.

     MenuKey = 2

The Menu key on the windows keyboard will emulate the mouse button specified here (in this case 2 = MouseButton2 = the Menu Button).

     MouseButton0 = 0

Which mouse button the left mouse button emulate. (0=Select)

     MouseButton1 = 2

Which mouse button the right mouse button emulate. (2=Adjust)

     MouseButton2 = 1

Which mouse button the centre mouse button emulate. (1=Menu)

     JoystickEnabled = 1

Enable joystick input.

     JoystickThreshold = 25

The amount an analogue PC joystick as to move before RISC OS receives a digital joystick event.

     WindowsKeyIsBreak = 1

Treat the Windows key as a duplicate Break key.

[DirectSound]

Used to handle sound output

     FilterLevel = 49152

The amount of frequency cut off, the higher the value the clearer and less "distorted" the sound. The maximum value is 49152 as shown.

     Enabled = 1

Turn the VirtualRPC-Adjust audio system on or off.

     FilterMatrix = 1282100912

Used to resample the RISC OS sound output, this value will be precalculated by VirtualRPC-Adjust, altering it may well prevent VirtualRPC-Adjust from running.

[WinUI]

Controls aspects of the VirtualRPC-Adjust Windows User Interface.

     ShowSplash = 0

Not currently supported

     Version = 140

Main application version.

     ProcessorPriority = 0

Set the processor priority thread level. 0=Lowest, 1=Standard, 2=Higher than standard, 3=same as all other Windows processes, values greater than 3 may lock up your PC and require a reboot.

     UIPriority = 1

Set the User Interface priority thread level. 0=Lowest, 1=Low, 2=Standard, 3=same as all other Windows processes, values greater than 3 may lock up your PC and require a reboot.

          ShowSplash = 0

Show the Splash screen on startup.

          Licensekey="000000-000000-000000"

This keys shows your current license key (Unlock Code). If you lose your written down key (Unlock Code) you can recover it from this entry. Note that you cannot recover a key if VirtualRPC-Adjust asks for a key on startup and the section in the VirtualRPC-Adjust registration window is blank.

          ShowLicence = 0

Show the VirtualRPC-Adjust licence conditions on startup.

     DeactivateInBackground = 0

Pause VirtualRPC-Adjust when it is not the top window, or is minimised.

[SystemClock]

     AutoDetectProcSpeed = 1

When set to 1 auto detect the processor speed, if set to 0 use the value stored in the ProcessorSpeed key.

     ProcessorSpeed = 1700

A manually set value for the speed of the processor in the HostPC.

VirtualAcorn reserves the right to alter the specification of the va.cfg file at any time and the details shown above should be considered as a guide only.

The Model.cfg file

This is the file that is specified in the [Model] section of the Va.cfg file shown above. It will normally be located in

C:\Program Files\VirtualAcorn\VirtualRPC-Adjust\Models\ARM 7 RISC OS 4(JIT)\. A default Model.cfg file will have a structure similar to the one shown below, note that not all versions of VirtualRPC-Adjust may contain all the commands. If a command does not exist in your own Model.cfg then most likely your version of VirtualRPC-Adjust does not support it.

     [PhysicalBus]
     width = 29
 
     [JITArm7]
 
     [Vidc20]
 
     [Iomd]
     vram = 2Mb
     poweronreset = 0
 
     [Rom]
     filename = "Romsets\Riscos4"
     base = 0
     range = 16Mb
 
     [Ram]
     base = 0x1000000
     size = 16Mb
 
     [Ram]
     base = 0x1400000
     size = 16Mb
 
     [CmosRam]
     filename = "cmos.ram"
 
     [37c665]
 
     [ClockChip]
 
     [IocI2CBus]
 
     [HostFS]
     podule = 0
     mount0 = "HardDisc4 'HardDisc4' bootopt=2"
 
     [HostInternet]
     podule = 1
     Trace = 0
 
     [CDDrive]
     CDRom = 0 
     MultiThread = 1 
     ReadSectorHack = 1 
     UseASPI = 0 
     UseSPTI = 1
 
     [RealFloppy]
     rpm = 300 
     Caching = FALSE
     Protection = "Writeable"
 
     [ImageFloppyDrive]

The configuration commands in the file split down like this:

[PhysicalBus]

     width = 29

[JITArm7]

The processor that will be used in this model, in this case an emulation of an ARM7.

[Vidc20]

The type of Video controller that will be used in this model, in this case a Vidc20.

[Iomd]

The iomd chip in discreet processor machines. Ie Arm610/710/StrongArm machines.

     vram = 2Mb

RISC OS checks for up to 16Mb of VRAM.

     poweronreset = 0

Set the POR (PowerOnReset) bit on a hard reset.

[Rom]

     filename = "Romsets\Riscos4"

The filename of the ROM image that will be loaded. If a directory is specified its entire contents will be loaded.

     base = 0

Base address that the ROM will appear in the memory map

     range = 16mb

The amount of physical space the ROM covers. If this is greater than the image size the ROM will be 'ghosted'.

[Ram]

     base = 0x1000000

The base memory address of the RAM in the memory map.

     size = 16Mb

The amount of RAM that will be allocated to RISC OS. RISC OS 4 supports a maximum of 128Mb of RAM. RISC OS 4.39 and later support up to 256Mb of RAM.

[CmosRam]

Set up the CMOS RAM file details.

     filename = "cmos.ram"

The file name to be used to store the CMOS RAM settings, the file is normally saved in the Model directory.

     size = 256

Size of the CMOS RAM in bytes.

[37c665]

The IO chip.

[ClockChip]

The model contains a clock chip.

[IocI2CBus]

This implements an I2CBus interface (to which the clockchip connects) using two pins of the IOC control register.

[HostFS]

A virtual podule which gives access to the host filing system. HostFS implements a full fileswitch filing system using the Win32 API. It also provides basic access to the host printer system.

     podule = 0

The podule number that will be allocated to HostFS.

     mount0 = "HardDisc4 'HardDisc4' bootopt=2"

A mount definition, the mount is the first one (0), the name on the RISC OS icon bar will be HardDisc4, the directory that will be used for the mount is called 'HardDisc4' since this is not specified as a full path (e.g. 'C:\Program Files\VirtualAcorn\VirtualRPC-Adjust\HardDisc4') VirtualRPC-Adjust will look for the mount in its own directory (ie. C:\Program Files\VirtualAcorn\VirtualRPC-Adjust). The mount can be used as a boot disc (the bootopt setting mimics *opt4,x).

In addition to the commands shown a HostFS mount can also have the following attributes applied.

  • readonly - the drive is read only (currently not supported).
  • hidden - the drive does not appear as an icon on the icon bar (currently not supported).
  • showext - show dos file extensions, so that a file with a dot extension is shown with a slash (e.g. Index.htm is shown as Index/htm).
  • notypes - ignore HostFS extensions file
  • defaulttype - filetype for unknown extensions (if this attribute is not supplied unknown files have a filetype of &FFF).

[HostInternet]

A virtual podule providing network and internet access.

     podule = 1

The podule number that will be allocated to HostInternet.

     Trace = 0

Tech support tracing, 0 = Off, 1 = On.

[CDDrive]

     CDRom = 0

Select which CD ROM in the PC will be used as the RISC OS CD ROM drive.

     MultiThread = 1

Use a separate thread for I/O.

     ReadSectorHack = 1

Some drives don't correctly report sector sizes (by default this option is one).

     UseASPI = 0

Access the drive using ASPI, this requires a third party plugin dll such as the ASPI driver supplied with Nero Burning ROM. To use ASPI you must turn the UseSPTI option off.

     UseSPTI = 1

Use SPTI to access the drive (this only works on an administrator account).

[RealFloppy]

Configuration options for direct floppy disc access.

     rpm = 300

Allows index pulse timings to be tweaked.

     Caching = FALSE

Cache read/written sectors.

     Protection = "Writeable"

The disc protection options. "Writeable" allows VirtualRPC-Adjust to read, write and format discs. "ReadOnly" only allows discs to be read not written or formatted. "FakeWritable" caches disc writes but doesn't actually write to the disc.

[ImageFloppyDrive]

Enable an Image Floppy Drive for loading disc images. If the [ImageFloppyDrive] is preceded by a [RealFloppy] command then the first RISC OS floppy will read/write Acorn/DOS format discs and the second RISC OS floppy will read/write disc images.

[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