CHARON-AXP for Windows configuration


Product Documentation and Knowledge Base - Home 


Charon-AXP


CHARON-AXP for Windows configuration

Table of Contents

Creation of CHARON VM configuration

When a CHARON Virtual Machine (VM) is created from a template using the CHARON Virtual Machines Manager, it has to be updated to meet the desired configuration.

This configuration is represented as a text file ("configuration file") containing some specific keywords to define the main settings such as amount of memory, number of CPUs, peripheral devices as well as specifics of CHARON VM executions such as name of VM log file, number of host CPUs used for emulation, etc.

To change the configuration file, open the CHARON Virtual Machines Manager from its shortcut on Desktop / Start menu or from the tray menu item, select the target CHARON VM and press the "Edit Configuration" button:

Notepad will be used to edit the configuration file:

HP Alpha model specification

The first configuration statement is the specification of the exact HP Alpha hardware model to emulate, for example:

set session hw_model = AlphaServer_ES40

You must leave this line untouched.

 If you create the CHARON VM configuration file from scratch, it must be the very first uncommented line in the configuration file.

Configuration name

The next configuration statement is the "Configuration name" option. If the virtual machine has been created using an existing template, the configuration name is defined in the configuration_name.icfg file otherwise it is defined directly in the configuration file using the "set session configuration_name = <...>" syntax:

include configuration_name.icfg

Notes:

  • The configuration name is reported in the log file and is used to set the log file name for rotating log (see explanations further).

  • Changing the configuration name in the "configuration_name.icfg" file does not change the name of the virtual machine at Virtual Machines Manager level.

  • The "configuration_name.icfg" file can be found in the home directiory of the VM. Select the target VM, open "VM Configuration" tab and press "Explore" button.

The configuration name can be any label that is meaningful.

Example:

set session configuration_name = My_ES40

It is possible to specify a configuration name containing spaces, in this case use quotation marks:

set session configuration_name = "My ES40"

Log file parameters

The execution of a CHARON VM creates one log file or a set of log files reflecting the progress of its start-up and ongoing operations: start and end time of execution, system information, license and configuration details, warnings, reports on problems that may occur, etc. In case of problems with either the running CHARON VM or the emulated system configuration (such as the absence or malfunction of certain devices), the log file is the primary source to be analyzed for troubleshooting.

If it becomes necessary to contact Stromasys for support, the configuration and log files, plus the license number, will be requested to begin the problem resolution.

Here is an example of a CHARON VM log file:

20180530:153117:INFO :0:00000249:ethane.cxx(9010): Logging started.
20180530:153117:INFO :0:000003A5:ethane.cxx( 131): session: loading built-in configuration "AlphaServer_ES40"...
20180530:153117:INFO :0:000003A6:ethane.cxx( 163): session: ... done loading built-in configuration "AlphaServer_ES40"
20180530:153117:INFO :0:000003A7:ethane.cxx( 321): session: loading service configuration "My_ES40"...
20180530:153117:INFO :0:000003A8:ethane.cxx( 356): session: ... done loading service configuration "My_ES40"
20180530:153117:INFO :0:000003AA:ethane.cxx( 404): session: loading configuration file "C:\Program Files\CHARON\Virtual Machines\My_ES40\es40.cfg"...
The previous message has been repeated 2 times.
20180530:153117:INFO :0:000003AB:ethane.cxx( 579): session: ... done loading configuration file "configuration_name.icfg"
The previous message has been repeated 2 times.
20180530:153117:INFO :0:0000032B:ethane.cxx(2694): Start request received.
20180530:153117:INFO :0:000003AC:ethane.cxx( 805): session: process affinity is 00000000000000FF, system affinity is 00000000000000FF
20180530:153117:INFO :0:000003D1:ethane.cxx(1463): session: I/O domain affinity is 0000000000000003, CPU domain affinity is 00000000000000FC
20180530:153117:INFO :0:0000024D:licenseman(1823): Checking the available license key "1422726238".
The previous message has been repeated 22 times.
20180530:153118:INFO :0:00000408:ethane.cxx(2867): CHARON-AXP (AlphaServer ES40), V 4.9 B 19402, May 10 2018 / 000.msc.test.center.nikolaev / 1918154109
20180530:153118:INFO :0:00000336:ethane.cxx(2908): The end user of this software has agreed to STROMASYS' Terms and Conditions for Software License and Limited Warranty, as described at: http://www.stromasys.com/pub/doc/30-17-033.pdf
20180530:153118:INFO :0:00000097:ethane.cxx(2987): OS Environment: Microsoft Windows 10 Pro, 64-bit (Build 17134).
20180530:153118:INFO :0:00000098:ethane.cxx(2992): Host CPU: Intel(R) Xeon(R) CPU E31275 @ 3.40GHz x8.
20180530:153118:INFO :0:00000099:ethane.cxx(2997): Host Memory: 24320Mb
20180530:153118:INFO :0:0000041F:ethane.cxx(3223): Configuration dump::
. session:
. . configuration_name = "My_ES40"
. . log = "AlphaServer_ES40.log"
. . log_method = "append"
. . log_locale = "English"
. . log_show_messages = "all"
. . log_repeat_filter = "on"
. c_chip:
. . mm_timer_correction_disable = "false"
. RAM:
. . size = "512"
. ACE:
. . num_entries = "2139"
. . num_translators = "0"
. . cache_size = "1024"
. . cache_base_size = "200"
. . host_options = " --locked-size=16"
. . enabled = "true"
. . ext_compiler = "ml64.exe"
. . ext_path = ""
. . cpu_architecture = "EV67"
. . locked_size = "16"
. axp_bus_0:
. . mm_timer_correction_disable = "false"
. cpu_0:
. . locked_size = "16"
. . wtint_idle = "true"
. axp_bus_1:
. . mm_timer_correction_disable = "false"
. cpu_1:
. . locked_size = "16"
. . wtint_idle = "true"
. axp_bus_2:
. . mm_timer_correction_disable = "false"
. cpu_2:
. . locked_size = "16"
. . wtint_idle = "true"
. axp_bus_3:
. . mm_timer_correction_disable = "false"
. cpu_3:
. . locked_size = "16"
. . wtint_idle = "true"
. ROM:
. . dsrdb[0] = "1820"
. . dsrdb[1] = "50"
. . dsrdb[4] = "50"
. . dsrdb[11] = "1050"
. . dsrdb[12] = "1050"
. . system_name = "AlphaServer ES40 6/667"
. pci_0:
. . mm_timer_correction_disable = "false"
. pci_1:
. . mm_timer_correction_disable = "false"
. ISA:
. . clock_period = "10000"
. . mm_timer_correction_disable = "false"
. COM1:
. . alias = "OPA0"
. . line = "OPA0"
. . communication = "console"
. . application = "putty -load OPA0 -P 10003"
. . port = "10003"
. COM2:
. . line = "(void)"
. . communication = "ascii"
20180530:153118:INFO :0:00000418:busemul.cx( 188): ISA: MultiMedia Timer correction is enabled.
20180530:153118:INFO :0:00000420:dit_server(1038): ACE: ACE is on, Running 2 translators.
20180530:153118:INFO :0:0000032C:ethane.cxx(2730): "My_ES40" started.
20180530:153118:INFO :0:00000419:uart_16550(2142): COM1: Connected. Remote 127.0.0.1:51937.
20180530:153126:INFO :0:0000032D:ethane.cxx(2776): "AlphaServer ES40" stop request received.
20180530:153126:INFO :0:00000348:ataunit.cx(1738): IDE0: I/O handle closed
The previous message has been repeated 2 times.
20180530:153126:INFO :0:0000024D:licenseman(1823): Licensing component received stop request.
20180530:153126:INFO :0:0000032E:ethane.cxx(2794): Stopped.
20180530:153126:INFO :0:0000024A:ethane.cxx(9706): Logging stopped.

The next group of parameters defines the name of the CHARON VM log file and how the CHARON VM will use it:

set session log_method = append
#set session log_method = overwrite
#set session log = "AlphaServer_ES40.log"

Rotating log (default)

By default the CHARON VM utilizes a so-called "rotating log" method. This means that a new default log file is always created each time the CHARON VM starts and if the size of the log file exceeds 64Kb (previous log files are kept).

This mode is turned on if all the log parameters above are disabled (commented out) or the "session_log" parameter is pointing to a directory rather than to a file. If a directory is specified, the log files will be created in that directory.

The names of the rotating log files are composed as follows:

configuration_name-YYYY-MM-DD-hh-mm-ss-xxxxxxxxx.log

If the "Configuration name" parameter described before is omitted (commented out), the log name has the following format instead:

hw_model-YYYY-MM-DD-hh-mm-ss-xxxxxxxxx.log

Note that "xxxxxxxxx" is an increasing decimal number starting from "000000000" to separate log files with the same time of creation.

The "log" parameter, if specified, must correspond to an existing folder.

If the path is not specified, the log file is created in the "Home directory" mentioned in the VM Configuration tab of the CHARON Virtual Machine Manager.

Single log

Alternatively it is possible to use a single log file. Uncomment the "set session log" line and specify the desired log file name. Optionally, a path can be added to the log file name.

If the path is not specified, the log file is created in the "Home directory" mentioned in the VM Configuration tab of the CHARON Virtual Machine Manager.

The log file can be extended specifying "log_method = append" (*recommended for reporting issues*) or overwritten, specifying "log_method = overwrite".

Below is a specification of a CHARON VM log file located in the "C:\CHARON logs" directory which will be appended each time the CHARON VM starts:

set session log_method = append
set session log = "C:\CHARON logs\my_ES40.log"

CPU affinity

This setting binds the running CHARON VM CPUs to particular host CPUs.This should be used for soft partitioning host CPU resources or for isolating multiple CHARON VMs on the same host from each other. By default the emulator instance allocates as many host CPUs as possible.

“Affinity” overrides the default and allows explicit specification of which host CPUs will be used by the instance. Affinity does not reserve the CPU for exclusive use.

set session affinity="0, 1, 2, 3"

The example above directs CHARON VM to use CPU 0,1,2 and 3.

If this parameter is omitted CHARON host will allocate available CPUs automatically.

 Note that the number of the specified host CPUs must correspond to the number of the emulated CPUs (one host CPU for one emulated CPU; this value is specific for each HP Alpha model) and number of CPUs needed for CHARON application itself ("n_of_io_cpus").

Number of host CPUs dedicated to CHARON I/O

This setting reserves host CPUs (of those specified by “affinity” parameter, if any) for use by CHARON VM for I/O handling. By default CHARON VM reserves one third of available host CPUs for I/O processing (round down, at least one). 

The “n_of_io_cpus” overrides the default by specifying the number of I/O host CPUs explicitly

Example:

set session n_of_io_cpus=2

The example above directs CHARON VM to use 2 CPUs for CHARON I/O operations.

 Note that the number of the specified CPUs dedicated to CHARON VM I/O operations must correspond to the total number of available for CHARON CPUs (restricted by "affinity" parameter if needed) and the number of the virtual HP Alpha CPUs to be emulated.

Setting a specific HP Alpha model

CHARON-AXP allows to specify an exact model of HP Alpha.

For example for HP AlphaServer ES40 family the template configuration file contains the following options:

#============================================================================
#
# AlphaServer ES40 6/500
#
#----------------------------------------------------------------------------

#set ace cpu_architecture = EV6
#set rom dsrdb[0] = 1816 system_name = "AlphaServer ES40 6/500"
#set rom version[1] = 1.98-4 version[2] = 1.92-5

#============================================================================
#
# AlphaServer ES40 6/667
#
#----------------------------------------------------------------------------

set ace cpu_architecture = EV67
set rom dsrdb[0] = 1820 system_name = "AlphaServer ES40 6/667"

Just uncomment the provided lines to apply a certain model (It is "AlphaServer ES40 6/667" in the example above).

The full description of the parameters and other models that can be also configured is available in the "Configuration details" chapter of this User's Guide.

Reducing number of emulated CPUs

If the CHARON host does not contain enough CPUs to emulate full range of the CPUs provided by a certain HP Alpha model, it is possible to direct the CHARON VM to reduce the number of emulated Alpha CPUs:

set session n_of_cpus=1

This parameter can also be used to avoid warning messages in the log if the number of CPUs allowed by the license is less than the default number of CPUs of the emulated HP Alpha model.

Setting system serial number

If necessary, a specific system serial number instead of the default one:

set rom system_serial_number = SN01234567

TOY and ROM containers

The TOY and ROM containers have to be configured. Their presence depends on the HP Alpha model. It is always recommended to enable them. If a container file of the given name does not exist, starting the CHARON VM will create it.

TOY means "Time of Year". Its container records time, date and some console parameters while the CHARON VM is not running. It is highly recommended to define and activate this container:

set toy container="clipper.dat"

The ROM container stores an intermediate state of the Flash ROM and some console parameters. It is highly recommended to define and activate this container:

set rom container="clipper.bin"

Emulated memory (RAM) size

The next parameter defines the amount of host memory the CHARON VM reserves for the emulation:

#set ram size=4096
set ram size=32768

The amount of RAM is specified in MB. It cannot exceed or be lower than certain values specific for each HP Alpha model. It is very important to keep the listed predefined increment between possible memory values.

The following table shows all the parameters:

Hardware Model

RAM size (in MB)



Min

Max

Default

Increment

AlphaServer 400

64

1024

512

64

AlphaServer 800

256

8192

512

256

AlphaServer 1000

256

1024

512

256

AlphaServer 1000A

256

1024

512

256

AlphaServer 1200

256

32768

512

256

AlphaServer 2000

64

2048

512

64

AlphaServer 2100

64

2048

512

64

AlphaServer 4000

64

32768

512

64

AlphaServer 4100

64

32768

512

64

AlphaServer DS10

64

32768

512

64

AlphaServer DS10L

64

32768

512

64

AlphaServer DS15

64

32768

512

64

AlphaServer DS20

64

32768

512

64

AlphaServer DS25

64

32768

512

64

AlphaServer ES40

64

32768

512

64

AlphaServer ES45

64

32768

512

64

AlphaServer GS80

256

65536

512

256

AlphaServer GS160

512

131072

512

512

AlphaServer GS320

1024

262144

1024

1024

It is possible to leave the RAM line commented out. In this case the model's default RAM amount is used. 

Note that in some particular orders your license may restrict the maximum RAM amount of each HP Alpha model.

Console

Mapping to system resources

The next step is the specification of the HP Alpha console (OPA0) serial line.

Example:

#set COM1 alias = OPA0 line = "COM1:"
#set COM1 alias = OPA0 port = 10003
#set COM1 alias = OPA0 port = 10003 application = "opa0.ht"
set COM1 alias = OPA0 port = 10003 application = "putty -load OPA0 -P 10003"
#set COM1 alias = OPA0 port = 10003 application = "c:\kea\user\opa0.ktc"

The goal of this configuration step is to tell CHARON-AXP what host device to use as the virtual system console. The following options are available:

Option

Description

Option

Description

line

Mapping to host serial line, "COM<n>:".

port

Mapping to an IP port of the CHARON  host.
Using this mapping it is possible to connect to the CHARON console and disconnect from it at any time.

application

Starting some application (typically terminal emulator) with its specific options and switches to communicate to CHARON using the IP port defined by the "port" parameter (see above)

alias

Define some meaningful name for "COM1" and "COM2". Usually it is "OPA0" for "COM1" and "TTA0" for "COM2" (see below)

The second console line "TTA0" can be also optionally configured (for 1 CPU models such as HP AlphaServer 400, HP AlphaServer 800, HP AlphaServer 1000, HP AlphaServer 1000A, HP AlphaServer DS10, HP AlphaServer DS10L and HP AlphaServer DS15):

#set COM2 alias = TTA0 line = "COM2:"
#set COM2 alias = TTA0 port = 10000
#set COM2 alias = TTA0 port = 10000 application = "tta0.ht"
set COM2 alias = TTA0 port = 10000 application = "putty -load TTA0 -P 10000"
#set COM2 alias = TTA0 port = 10000 application = "c:\kea\user\tta0.ktc"

Note that additional parameters for the CHARON VM serial lines configuration can be added. Follow this link for details.

Exit on pressing F6 button

Despite the fact that the CHARON VM can stop with the "power off" command entered at SRM console level, it is recommended to set a hot key to stop the VM from the console (when the console is accessed remotely for example):

set OPA0 stop_on = F6

This line allows the CHARON VM to be stopped by pressing the "F6" key.

Improve granularity of emulated timer

The next configuration option can be applied for improving granularity of emulated CHARON-AXP timer:

#set isa clock_period=1000

Do not uncomment this parameter unless there are some problems with the system time or the system clock intervals in the guest OS.

ATAPI CD/DVD-ROM configuration

If the sample configuration file provides this parameter it is possible to map this particular CHARON VM emulator's "DQA0" CD-ROM to the host CD/DVD-ROM with the following setting:

set ide container="\\.\CdRom0"

Networking

CHARON-AXP supports DE435, DE450, DE500AA, DE500BA, DE602 and DE602AA virtual network adapters.

All of them are configured in a similar way:

load DE500BA/dec21x4x EWA interface=EWA0
load packet_port/chnetwrk EWA0 interface="connection:Charon"

load DE602/i8255x EIA interface=EIA0
load packet_port/chnetwrk EIA0 interface="connection:Charon"

In the examples above the first line loads DE500BA/DE602 virtual adapter with a name "EWA"/"EIA" (note that "/i8255x" syntax must be used only with DE602 and DE602AA adapters); the following line maps it to the host network interface having a name "Charon" ("connection" is a key word). Note that the mapping is performed in 2 steps:



© Stromasys, 1999-2025  - All the information is provided on the best effort basis, and might be changed anytime without notice. Information provided does not mean Stromasys commitment to any features described. 
Need fast, reliable migration? We have done it countless times. Talk to an expert