PBXGA graphics card

This functionality is experimental.

Specific note for Charon-AXP version 4.11 204-10: the pbxga_tv application will start automatically with the emulator only if logged in as Administrator user. If logged in as another user, an "Access is denied" popup will appear. As a workaround, please run the pbxga_tv.exe application manually with the specified parameters from a cmd.exe window (as Administrator). For more, see the PBXGA graphics card#application and PBXGA graphics card#Using PBXGA_TV chapters below.

Note: The problem is solved starting with build 204-11 (patch for version 4.11 B204-10 and next versions)

Table of Contents

General description

Charon-AXP supports emulation of PBXGA graphics card(s) by direct virtualization and provides a virtual console for displaying graphics.

The console starts automatically upon starting the emulator. Its resolution is 800 x 600 by default.

Support for AXP graphics is provided with two components:

  • emulation of PBXGA PCI graphics adapter and
  • emulation of display unit (display unit is emulated with separate executable PBXGA_TV)

Emulated cards

  • PBXGA_AA emulates 8bpp graphics card (256 colors, pseudo-color) with 4MB frame buffer - ZLXp-E1
  • PBXGA_BA emulates 24bpp graphics card (16M colors, TrueColor) with 16MB frame buffer - ZLXp-E2

Important notes

  • PBXGA graphics console cannot be used as the system console. Use OPA0 for this purpose.
  • If PBXGA graphics card is going to be used, the resolution of CHARON host screen must be sufficient to provide ability to display the graphics console properly.
  • If the window of the PBXGA graphics card console is closed by user or killed as a process, it will not re-appear automatically ((lightbulb) the Charon emulator will continue to work). In this situation the user has to restart the pbxga_tv program with the correct parameters, as defined in the configuration file, to restart the graphical display (see PBXGA graphics card#application chapter further).

Virtual PBXGA PCI graphics card settings

Loading virtual PBXGA graphics card

Syntax for loading PBXGA graphics card:

load <emulated card> <name>

Syntax for loading PBXGA graphics card on AlphaServer 400:

load <emulated card> <name> irq_bus = isa

Example (more examples below):

load PBXGA_BA GYA

On Charon startup a window will appear on CHARON host monitor to display graphics.

All the parameters described in the "Placement of peripheral devices on PCI bus" chapter, such as "bus", "device", "function", "irq", "irq_bus" are applicable for PBXGA graphics card.

Configuration parameters

size

Parametersize
TypeText string
Value

Predefine the screen size.

Possible values: 640x480, 800x600 (default), 1024x768, 1152x900, 1280x1024, 1920x1080

Example:

set GYA size = 1024x768

cpu_draw

Parametercpu_draw
Typeboolean
Value

Offloading raster operations. The default value is "true"

Example:

set GYA cpu_draw = false

.


application

Parameter

application

Type

Text string

Value

Specifies the application to open for displaying the graphical console.

The pbxga_tv executable file is provided for this. It is located in the same folder as the Charon emulator executable file.

Syntax:

pbxga_tv -c <configuration_name> -n <device name(s)>

(info) When several graphics cards are loaded, the <device name(s)> have to be separated by a pipe character and the application has to be defined for the latest loaded PBXGA card. See examples below. Note that correct consolidation is only possible when screens are of the same depth and size.

(question) The <configuration_name> must correspond to the one defined in the configuration file or the configuration_name.icfg file located in the virtual machine home directory if it has been defined from a template.

Example:

set GYA application = "pbxga_tv -c DS20 -n GYA"

There is no need to supply display size to PBXGA_TV application.

Using PanoramiX/XINERAMA extensions to DECwindows is also possible (topics of proper configuration OpenVMS/Tru64 are not covered here). These extensions allow to join multiple heads in one big virtual screen. The PBXGA_TV virtual display unit has special notation allowing to consolidate multiple frame buffers in single window (topology is flexible, to some extent):

  • Screens are joined horizontally when separated by "|"
  • Screens are joined vertically when separated by "/"

Example:

set GYD application = "pbxga_tv -c MYCONF -n GYA|GYB/GYC|GYD"

(lightbulb) It is recommended to create a shortcut on the desktop for the pbxga_tv.exe application with the specified parameters in case the graphical display is closed and needs to be reopened.



Using PBXGA_TV

The PBXGA_TV display unit starts in passive mode. It displays content of frame buffer but does not react on keyboard input and/or mouse movements. In order to switch it to active mode, place mouse cursor with the window and click once. When PBXGA_TV is active, mouse cursor is stuck to PBXGA_TV window. Press CTRL+SHIFT+R to release.

The PBXGA_TV display unit starts in Window Mode. Use CTRL+SHIFT+F to toggle Full Screen Mode.

The PBXGA_TV application uses libsdl to draw its window. Copy of SDL.dll comes (version 1.2-15, unmodified) with Charon-AXP for Windows.

(info) Note, that using PBXGA_TV in VNC sessions is not suggested. There are known issues with mouse cursor.

Running PBXGA_TV remotely is not supported.

(warning) The PBXGA_TV can only consolidate screens belonging to the same virtual machine. It can't consolidate screens belonging to different machines.

To create a shortcut on the desktop, you can use one of the following methods:

  • Navigate to the Charon installation folder and find the pbxga_tv.exe ("C:\Program Files\CHARON\Build_20410\x64" usually) then create a shortcut, open its properties and add the parameters (-c ... -n ..) in the Shortcut/Target field, or
  • open a Powershell window and run the following commands (update the $cfgnam and $pbxga values, lines 1 and 2, for your own configuration):

    $cfgnam = "DS20withPBXGA"
    $pbxga = "GYA"
    $TargetFile = "C:\Program Files\CHARON\Build_20410\x64\pbxga_tv.exe"
    $ShortcutFile = "${env:USERPROFILE}\Desktop\PBXGA $cfgnam $pbxga.lnk"
    $WScriptShell = New-Object -ComObject WScript.Shell
    $Shortcut = $WScriptShell.CreateShortcut($ShortcutFile)
    $Shortcut.Arguments = "-c $cfgnam -n $pbxga"
    $Shortcut.TargetPath = $TargetFile
    $Shortcut.Save()

Once the shortcut is created, check the "Run as administrator" box in its advanced properties.


Examples

Example 1: 8-bpp graphics on AlphaServer 400

...
set session hw_model = AlphaServer_400
set session configuration_name = AS400
...
load PBXGA_AA GYA irq_bus = isa size = 1024x768
set GYA application = "pbxga_tv -c AS400 -n GYA"

Example 2: 24-bpp graphics on AlphaServer DS20

...
set session hw_model = AlphaServer_DS20
set session configuration_name = DS20
...
load PBXGA_BA GYA size = 1280x1024
set GYA application = "pbxga_tv -c DS20 -n GYA"


Example 3: two display units, running independently

...
set session configuration_name = MYCONF
...

load PBXGA_BA GYA
set GYA application = "pbxga_tv -c MYCONF -n GYA"
load PBXGA_BA GYB size = 1280x1024
set GYB application = "pbxga_tv -c MYCONF -n GYB"

(info) In the above example, display units have different resolutions.

Example 4: dual head display, 2x 1280x1024

...
set session hw_model = AlphaServer_ES45
set session configuration_name = ES45
...
load PBXGA_BA GYA size = 1280x1024
load PBXGA_BA GYB size = 1280x1024
set GYB application = "pbxga_tv -c ES45 -n GYA|GYB"

Example 5: triple head display, 3x 1280x1024

...
set session hw_model = AlphaServer_ES45
set session configuration_name = ES45
...
load PBXGA_BA GYA size = 1280x1024
load PBXGA_BA GYB size = 1280x1024
load PBXGA_BA GYC size = 1280x1024
set GYC application = "pbxga_tv -c ES45 -n GYA|GYB|GYC"

Example 6: Two screens consolidated in a column in one window

...
set session configuration_name = MYCONF
...
set session configuration_name = MYCONF

load PBXGA_BA GYA size = 1280x1024
load PBXGA_BA GYB size = 1280x1024
set GYB application = "pbxga_tv -c MYCONF -n GYA/GYB"



© Stromasys, 1999-2024  - 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.