Introduction

Welcome to PCStage!

PCStage is a lighting control system aimed at theatre and multimedia applications. It emphasises ease of use, but offers many advanced lighting and audio features, including any number of simultaneous cues and crossfades, and supports DMX output of up to 512 channels.

PCStage's system requirements are modest, and it is designed to multitask gracefully with other applications. Although it runs on all 32-bit versions of Windows, Windows 2000 and XP are recommended for their high stability, reliable timing and up-to-date muiltimedia features. The CPU power needed depends on the complexity of your productions; the Performance Monitor can help you to judge whether yours is up to the job. A Pentium II or faster is recommended.

If you have problems running PCStage or getting any of its features to work, please read Troubleshooting.

This documentation uses a few typeface conventions:

  • Terms or items being defined or explained are shown bold when first used
  • References to terms special to PCStage, such as menu item names or sub-directories, are shown in italics.
  • Words which require special attention are underlined.
  • Text from files, command lines etc. is shown in a monospaced font.
  • Blocks of special text may be coloured to may them easy to distinguish.

These user interface definitions may be helpful to inexperienced Windows users:

  • click: Press and release the left button
  • double-click: Click twice with the left button in rapid succession
  • right-click: Press and release the left button
  • control-click: Hold down either Ctrl key and click with the left button
  • shift-click: Hold down either Shift key and click with the left button
  • drag: Move the mouse while the left button is held down
  • popup or popup menu: A menu which appears when right-clicking on an object. Often called a context menu.
  • MenuName | ItemName refers to a menu item
  • The active window is the window which receives keyboard input when you type i.e. it has focus. Its title bar is displayed differently to those of all other windows to indicate this. Within a window, the control which has focus is usually shown with a border or a highlight colour.


Contact Details

The PCStage DMX interface unit used with PCStage is manufactured by Lowernab Technology of the UK, and may be purchased either directly from them or from their appointed distributors. Lowernab's website is at www.lowernab.co.uk

The mailing list linked from that site is run by the creator of PCStage, Michael Warner, to handle technical queries, bug reports and suggestions. This is preferred to private e-mail, since it gives everyone on the list a chance to contribute to discussions.


DMX Interfaces

This section shows you how to set up your Parallel Port or USB DMX Interface, covering driver installation and selection in PCStage. Under Windows NT/2K/XP you must be logged in to an account with Administrator privileges (such as the Administrator account itself) in order to install device drivers. All directories mentioned are sub-directories of the PCStage installation directory, which is C:\Program Files\PCStage by default .

If you encounter problems setting up these interfaces, please contact the manufacturer or author for assistance.

Parallel Port Interface

This interface requires no device driver under Windows 95/98/Me, but under Windows NT/2K/XP you must run ntdriver.exe, found in the Parallel Port directory. The driver this program installs is automatically removed if PCStage is uninstalled, but can be manually uninstalled by running it with -r as a command-line parameter.

The parallel port to which you have connected the interface may now be selected in PCStage from Preferences | Interfaces. Note that LPT1 and LPT2 are sometimes exchanged on PCs, so if the apparently correct selection fails, try the other.

This device driver must also be installed to enable PCStage to use the gameport buttons in Windows NT/2K/XP.

USB Interfaces (Full and Lite)

These interfaces requires a device driver under all versions of Windows. When the interface is first connected Windows will report the presence of the device, and ask for the location of the device driver; specify the USB directory in the PCStage installation directory. Depending on your version of Windows, you may have to select the .inf file describing the correct driver - this is ftd2xx.inf for the full interface, and PCStage Lite.inf for the Lite.

The interface should be ready for use as soon as the driver has been installed, but it is possible that you will be asked to reboot first. If you now run PCStage, USB should be selectable in Preferences | Interfaces.

To uninstall this device driver, ensure that the interface is connected, run the Add/Remove Hardware control panel applet, and select PCStage DMX Interface from the device list.

Please note that the USB device driver may not support Windows' suspend power-saving mode. Ensure that the interface is unplugged before entering this mode, or it may not function after awakening.


Main Window Layout

When PCStage is started the main window will appear. It is divided into four major areas:

  • The Fader Area in the upper left. This contains the level faders for the current desk.
  • The Control Area is in the upper right. This contains various user controls which are covered in the relevant section. It can be 'torn off' the main window by dragging the narrow grab bar at the top, or selecting View | Control Panel Floating, and replaced by dragging the floating window over the Fader Area.
  • The Preset Sheet in the lower right. This contains a list of the current desk's presets.
  • The Cue Sheet in the lower left. This contains a list of the current desk's cues.

There are two moveable splitter bars which allow you to determine how these areas share the main window. A horizontal splitter separates the fader and control areas from the cue and preset sheets, and a vertical splitter separates the preset and cue sheets. The control area cannot be resized; scroll bars will appear in the other areas if they are too small to fully show their contents.

All areas except the control area can have the input focus (or just focus). When an area has the focus its appearance changes to indicate this: the preset and cue sheets' backgrounds become white, while fader selections are shown in the fader area. When an area has the focus any keystrokes will apply only to that area. The exception to this is main menu shortcuts, which will work regardless of the focus. Clicking in any area with either button will give it the focus. You can move the focus between these areas with the TAB and Shift-TAB keys (as is standard in Windows).

The main window can be resized, maximised or minimised (iconised) at any time, and either splitter can be moved, without affecting crossfades or any other PCStage activity. There are a number of menus in the standard menu bar but PCStage also supports many editing operations using popups, which appear when you right-click over particular items. Some features are available only from popups.

Directly below the cue sheet and preset sheets is the desk selector, which enables you to select a desk in your production if you have created any in addition to the default desk. At the very bottom is the Status Bar, which shows the tooltip for whatever is under the mouse cursor (even if tooltips are disabled) and status panels and mode toggle buttons.

The control area contains several control panels (top to bottom):

  • The Toolbox panel contains a button for each PCStage tool. Holding the mouse pointer over a toolbox button will display its name in a tooltip.
  • The Viewpanel allows you to select a Fader View
  • The Buttons panel contains buttons to which instant access is essential
  • The Fadepanel contains controls and indicators for crossfades in the current desk

You can selecting which control panels you wish to see, and their order, by selecting View | Configure Control Panel.... Apart from the available panels, you can also insert gaps between the panels to group them as you prefer.


User Interface Overview

Window Types

Apart from the main window, you will see two types of windows appear when using PCStage:

  • Dialog windows (dialogs) appear to perform a specific action, and must be closed before any other PCStage windows can be used.
  • Tool windows operate independently of the main window, sitting above it if overlapping it, and have a thin title bar. They can be left open without affecting the use of the any other window, and closing them has no effect on PCStage or your production. PCStage automatically re-opens tools which were open when the previous session ended.

All tool windows can be opened from the Tools menu, where they are listed in alphabetical order. The Control Area's toolbox panel offers quick access to those selected using Tools | Configure Toolbox, but only a single row of buttons is available. Editor tools are those used to edit portions of a PCStage production. See Windows Resources for information about conserving resources used by tools on Windows 95/98/Me systems.

You can replace any of the toolbox's icons with one of your own design by creating a subdirectory of the PCStage installation directory called Icons, and placing a 16x16x4 (16 colour) bitmap in it whose filename is the tool's name as it appears in the Tools menu.

If the main window is minimised all open tool windows will be hidden i.e. no PCStage windows will be visible. Clicking on PCStage's icon in the task bar will restore all PCStage windows to their previous size and position. PCStage will continue to operate normally while minimised.

Main Window Menus

The Main Window's menus (always visible below the title bar) provide access to most of PCStage's facilities, although many of these features are also available more conveniently from popup menus, icon buttons and shortcut keys. These menus are:

  • PCStage contains commands relating to PCStage as a whole, such as access to Preferences
  • Production provides control over the production loaded into PCStage.
  • Preset and Cue provide control over the currently selected preset(s) and cue(s).
  • Control contains various commands and settings which enabled or disable various features of PCStage.
  • Tools allows you to launch any PCStage tool, and is an alternative to the Control Panel's Toolbox.
  • View contains settings relating to the appearance of PCStage rather than its function.
  • Help contains commands which assist you with PCStage, such as displaying the online help you're reading now.

If a menu item has a shortcut key it is displayed alongside the item. These shortcuts apply even when a tool window is active, but can be overriden by key Triggers.

Tool Tips

One of the most useful user interface features of Windows is its ability to display a small message window, called a Tool Tip, when the mouse pointer is placed over a button or other control for about half a second, providing a quick reminder of its function. PCStage takes full advantage of this feature, offering many tooltips on its various windows.

Since you may find tool tips intrusive once you're familiar with PCStage, they can be globally disabled from the View menu. However, they will still be displayed in the Status Bar, and tooltips for menu items, in fact, appear there only.


Editor Tools

Many tools are editors - they enable you to edit an aspect of your production which is not edited in the main window. For example, the Chaser Editor allows you to create and edit chaser sequences. Changes made in editors are 'live' i.e. they affect the production immediately, but most can be undone with the editor's Undo button. Most editors can be resized where useful.

In order to correctly support the undo mechanism, text edit boxes and grids with editable cells in editor tools require you to press Enter, a cursor key or Tab to complete entry of a new value; in the case of text edit boxes, moving the focus to another control also has that effect. If a selected grid cell is editable, editing is begun by clicking on it or pressing Enter or F2, and it can be aborted by pressing Esc.

Many editors enable you to create multiple items of a certain type (chasers, fader views etc), and have similar interfaces for manipulating the list of items - these are called list editors. There are no limits to the number of such items you can create. You can reorder them by dragging them within the listbox in which their names are displayed; this has no effect on your production, since they are always referred to by name.

Closing and re-opening tools causes no loss of data or has any other effect on PCStage.


Lighting Control Overview

This section gives an overview of the primary concepts in PCStage's operation, and the means by which it generates lighting levels.

The files loaded and saved by PCStage are called productions; a production contains all data required by your show, although certain features, such as the Script tool, use other files.

A production can contain any number of desks; when first created it has just one. Each desk is an independent entity which has its own set of fader levels, and performs crossfades between cues. The fader levels of all desks are combined on a highest-takes-precedence basis, and may be modified by the Flash command

Each desk contains a set of cues and presets. A preset is simply a snapshot of a desk's fader levels; a cue refers to a preset, but also contains crossfade timing; events to be performed etc.

Each desk contains two sets of fader levels, channel and submaster, which are visually represented by faders of these types in the fader area. Submasters affect channel levels by controlling the overall levels of then chasers and presets assigned to them, and are combined with them on a highest-takes-precedence basis. Any submaster can be attached to any chaser or group existing in the production.

Robotic fixtures occupy a separate internal desk.

Preset submasters are subject to iteration. If a preset submaster refers to a preset which itself contains non-zero submaster levels, those submasters are then applied. This process is repeated until no highest-takes-precedence submaster level changes occur up to a limit of ten times.

The channel levels produced by the combination of all desks are mapped to the output dimmers (DMX levels) using Soft Patching, which also applies the master level. By default, each dimmer receives its level from the corresponding channel. The Current Monitor may turn off dimmers or reduce their levels, or reduce the master level fader. Lastly, the production's dimmer offset is applied.

All crossfade fader and dimmer levels are calculated 50 times per second by the engine, and shown in the DMX Mimic tool. They are also sent to your DMX interface at a rate determined by the time needed to transmit that number of channels in DMX format.

This is a block diagram of the processing described:


Productions

Production Files

A PCStage production is stored in a single file with a default extension of 'PCS'. Although this file is plain text, you should not attempt to edit it without reading about the Production File Format first.

The Production menu allows you to load and save production files. The New item begins a new production. You will always be offered the chance to save an edited production when you load or begin another one. The Reopen submenu offers you the five most recent productions loaded in PCStage.

The title bar of the PCStage window informs you of the current production's filename (not its complete path) and whether it has been modified since last saved. If the current production has never been saved its name is shown as [unnamed], and you must supply a filename when saving it.

By default PCStage attempts to reload the last production used when started, but this can be disabled in Preferences.

Production Settings

Each production has some general settings associated with it. These are changed using the dialog opened with Production | Settings. The settings are:

  • (Quantity of) Channels sets the number of channels in the production, which can range from 1 to 999.
  • (Quantity of) Submasters sets the number of submasters in the production, which can range from 0 to 99
  • (Quantity of) Dimmers sets the number of dimmer levels generated, which can range from 1 to 512.
  • Script sets the filename of the script associated with this production; PCStage will attempt to load it when the production is loaded.
  • Dimmer Offset shifts the output dimmer levels by the specified number of channels, and can be positive or negative. This is useful when merging the DMX output of PCStage with that of other lighting systems.
  • Single Preset List uses a single list of presets for all desks, rather than a separate list for each. You will be asked to confirm enabling this setting if it would result in the loss of existing presets.
  • A list of plugins which

You can change any of the quantity settings at any time without harming your production, except that any data associated with items removed by reducing these will be lost. You will be asked to confirm any reduction for this reason. Increasing these quantities has no effect on existing data. It is a good idea to avoid having a large number of unused channels, submasters or dimmers. They increase the memory and CPU time used by PCStage, and clutter the user interface unnecessarily.

Integrity Check

PCStage is able to check many aspects of the integrity of your production i.e. ensure that there are no problems which will be evident when the production is used. Typical problems include references to non-existent presets, chasers and audio files and duplicate cue IDs in a desk.

An integrity check is performed whenever a production is loaded, but can also be done at any time with Production | Check Integrity.

Auto Save

By default PCStage saves a copy of your production every 15 minutes if it has been modified, even if it has not been saved to a production file. This file is called pcs_autosaved.pcs, and resides in your system-defined temporary directory. This varies with different version of Windows, but under Windows NT, 2K and XP it is account-specific by default, probably C:\Documents and Settings\<account>\Local Settings\Temp. It is deleted whenever your production is saved or PCStage is exited normally.

If the autosave file is found at startup, you will be asked whether you wish to load it.

Format Versions

A file saved with a different version of PCStage from the one in use may generate a warning when you attempt to load it; this is determined by the format version number stored in the production itself. In general, production files are not compatible between major releases of PCStage e.g. V3 files cannot be loaded into V4.

PCStage will produce warnings specifying the lines or sections of the production file which are not understood, but attempts to continue loading the file.

Importing Sections of Other Productions

A production is logically divided into sections corresponding to the various kinds of data used in it. You can import particular sections from another production with Production | Import Sections....

Where it make sense, the items contained in imported sections are added to those already present, and their names modified to make them unique if necessary. The most important exceptions to this are fader properties and patches, since the number of these is determined by your production settings.

You should ensure that your production is saved before doing this, and examine it carefully afterwards to ensure that the results were as intended.


Desks

Overview

The most significant new feature introduced in Version 4 of PCStage is the ability of a production to contain multiple desks; previous versions had only a single desk.

Each desk is an independent entity, so creating multiple desks is functionally akin to having multiple copies of earlier versions of PCStage running. Each has its own list of cues and crossfade mechanism, hence all desks can be engaged in crossfades simultaneously. Each also has its own list of presets, unless the single preset list setting has been selected.

Desks are viewed by clicking their buttons in the desk selector; only one desk is visible at any time (the current desk), but all operate in the same manner. Editing operations affect only the current desk except where noted. Cues and presets can be cut, copied and pasted between desks. When doing this, PCStage will ensure that preset names remain unique, and attempt to ensure that Cue IDs also remain unique.

Desks can interact by sending each other desk events during a show. Typically, you would designate one desk as the "master" desks, using desk events to synchronize other desks with it.

Manipulating Desks

A production's desks are manipulated using the Desk menu or the popup menu which appears when any button in the desk selector is right-clicked. The Move Left and Move Right commands allow you to change the order of the desks, which is for convenience only, and has no effect on their operation.

The Undo command (Desk menu only) reversed the last cue or preset editing operation performed on the current desk. Each desk has a separate undo stack. However, operations on the desks themselves cannot be undone; in particular, a deleted desk cannot be recovered.

Desk Selector Display

Each button in the desk selector contains an icon which shows the current crossfade state of the desk, if any, and a bar showing the progress of the fade. However, this display is overriden if the desk's cue timer falls below ten seconds. The cue timer can be stopped by clicking on the desk's button, even if the desk is already current.


Faders

The fader area contains the faders specified by the current desk's loaded fader view which by default (the Default view) contains all available channel faders in the first row and, if there are any submasters, all submaster faders in the second row. If there is more than one row of faders, the – and = buttons at the upper right of the area can be used to decrease or increase the number of visible rows of faders; the vertical scrollbar beneath them is used to scroll to non-visible rows.

The following sections describe faders in detail.


Fader Anatomy

A fader contains these portions:

  • The fader body shows the fader's current level. If assigned, the name of the fader (or the entity controlled by it if a submaster) appears here. The font and size of the name can be set in Preferences.
  • A fader label (below the fader body) showing the fader's number, prefixed by 'S' if it's a submaster; its background or a segment at the bottom (an underline) can assume various colours to indicate the fader's status. Left-clicking selects the fader; right-clicking invokes the fader popup menu.
  • A level label (above the fader) giving the fader's current level. The background of the level label becomes green if the channel is potentially affected by any submasters. If the fader has a percent scale, full value is shown using 'FF'.

A channel fader may also contain a thin horizontal line, which indicates the internal channel level generated by the engine. This includes the effects of other desks and any active submasters.

The width of faders is fixed, but they stretch and shrink vertically to fit the available space in the fader area.


Master Level fader

Between the fader area and control panel is the master level fader, which controls the level of all dimmers (except those specifically excluded by the soft patching settings) and may be changed at any time; no other controls or aspects of PCStage’s operation are affected. It can be changed only with the mouse.

The master level is saved as a user preference after any adjustment is made. In the case of a crash it should have the correct value on recovery.

Common uses for the master level control include:

  • Performing a reasonably smooth manual fade in and out in an emergency
  • Keeping it at about 80% under normal conditions so that a little boost is always available during a performance if required.

The master level fader may also be reduced automatically by the current monitor.

The fader's range (maximum level) may be set to 200% or 400% in Preferences to provide additional overall level boost.


Editing Faders

Faders have various cosmetic and functional properties which you can set, and which are saved as part of your production. The properties of a particular fader apply to all desks in which it is used. Several properties can be set using the popup menu invoked by right-clicking on a fader label; others must be set in the Fader Editor tool, which, apart from the standard methods of opening tools, can be opened by double-clicking on a fader label. Most fields in the fader editor are edited by right-clicking on the appropriate grid cell and selecting an entry from the popup menu which appears.

In addition to setting the fader properties available in the Fader Editor, when invoked on a submaster the fader popup menu can be used to assign a chaser or preset to it, or remove the existing assignment. Submaster ssignments can also be made from the Chaser Editor and preset area.

Fader Properties

The properties are as follows:

  • Name is the text which appears in the fader's body. If a fader is a submaster and no name is assigned, it displays the name of the entity assigned to the submaster, if any. Fader names have no significance to PCStage, and are available to help you identify faders. See Editor Tools for details of editing fader names.
  • Colour is the colour of the fader. You can use this to indicate the actual colour of a fixture or for any other identification purpose; like the fader's name, it has no significance to PCStage.
  • Snap enables you to tell PCStage that the fader should jump to its final value at the beginning (pre-fade) or end (post-fade) of crossfades rather than fading smoothly. The Pre Up Post Down option does the former if the level is rising, and the latter if falling. This is useful for robotic and other devices which are designed for discrete fixed positions rather than smooth fading. There is no visual indication of this property in the fader.
  • Control determines what automatic and user actions can change the fader's level (see below).
  • Scale determines what kind of scale is applied to the fader (see below)

Control Property

A fader's Control setting can be one of the following:

  • Auto (the default) permits full control of the fader's level by automatic processes such as crossfades.
  • Manual permits the fader's level to be changed only by the user, and is indicated by a red bar beneath the fader label. If you directly change a fader's level during a crossfade the fader will enter a temporary manual state until the crossfade is complete.
  • Locked prevents any change to the fader. This is useful when a device exhibits problems during a show, and must be locked into a certain state to avoid problems. This setting is indicated by a red fader label.

Note that these attributes relate only to the fader itself, not to the internal channel levels generated by the engine, which can be affected by submasters and the master level fader.

Scale Property

PCStage stores and calculates all fader levels internally using the DMX scale of 0-255, but they can be displayed in the following scales:

  • Actual is the DMX value
  • Percent (the default) has the range 0-100, where 100% is displayed as 'FF' by convention.
  • Voltage is also a scale of 0-100, but is displayed as an analog voltage in the range 0.0-10.

The scale setting is not purely cosmetic - when entering and adjusting fader levels, their scales are taken into account. A 'unit' is larger on a Percent or Voltage-scaled fader than on an Actual-scaled one.


Fader Control

Selecting Faders

PCStage supports a number of operations on the selected faders; when a fader is selected its fader label's background is yellow. fader selection uses standard Windows selection techniques:

  • To select a fader by itself, simply click on its fader label.
  • To select or unselect a fader without affecting any others, control-click it.
  • To select a range of faders beginning with the last fader selected, shift-click it.

The left and right cursor keys will force selection of a single fader only, and move the selection left or right. If necessary, the fader area will scroll to show the selected fader. The selection will wrap if you move beyond the first or last fader in a view.

Basic Level Setting

You can do the following to the selected faders:

  • Click and drag a fader's body with the left mouse button; moving a selected fader in this way also moves all other selected faders in relative lockstep. You can determine whether the fader's level jumps to match the mouse pointer's position in Preferences.
  • The Up and Down cursor keys raise and lower them by 1 unit.
  • The Page Up and Page Down keys increase or decrease them by 10 units.
  • The keys 0-9 and 'F' set them to 0-90% and 100% respectively.
  • Enter their levels with the numeric keypad (see below)

Note that the size of a 'unit' depends on the fader's scale.

Manual Level Entry

PCStage supports the standard syntax for specifying fader levels on a command line, which is summoned by pressing Enter when the fader area has focus, or by selecting View | Channel Level Entry from the main menu. Remove the entry field by pressing Esc, clicking its Close button or selecting the menu item again. Execute a command by pressing Enter. Each desk has a separate level entry field, which holds all executed commands for recall.

The syntax is:

    <faders(s)> [@|*] <level>

where <faders(s)> is a list of faders or fader ranges as per a View specification (gap and line break specifiers are ignored). <level> is a number which is applied to each fader according to its scale type, with voltage scale treated as equivalent to percent. FF is a special value which sets faders to maximum. Space either side of the '@' or '*' character is optional; '*' is supported to allow all typing to be done on the numeric keypad.

For example, the following are valid level entries:

    1 3 S7-12 @ 50
    1-10,21-30,S3@FF

If any specified faders cannot be set, either because they don't exist or are locked, you will be informed.


Presets

Introduction

A preset stores a level for each fader in a desk. Presets may be locked, which prevents editing or deletion by the user; a 'L' in a preset's Flags field indicates this. Each preset must have a unique name, since cues refer to them by this means. Loading a preset by selecting it in the preset sheet transfers its levels to the desk and its faders. If a sumbaster is assigned to the preset, its number is also shown.

When a desk is created, a single preset called Blackout, with all faders off, is created. You may modify or delete this preset, but a desk must always have at least one preset.

One of a desk's presets is always defined as the Panic preset; this preset is loaded immediately if the PANIC! button in the control area is clicked or Control | Panic is selected. The panic preset is indicated by a 'P' in its Flags field, and is intended to make a known safe lighting state for the desk instantly accessible in case of emergency.

User Actions

Clicking on a preset will load it immediately; a double-click issues the Rename command unless the preset is locked. Multiple contiguous presets can be selected for cutting or copying by clicking and dragging on the preset sheet, or shift-clicking on a second preset.

The position of a presets in its sheet can be changed by dragging the small grey cell to the left of its entry up and down; since presets are referred to by name only, this has no effect on your production. Presets can be alphabetically sorted using Preset | Sort.

The preset menu and the preset popup are similar - the important difference is that the menu acts on the selected preset(s), while the popup acts on the right-clicked preset without loading it. If a right-clicked preset is a selected preset, and the command chosen is applicable to multiple presets (e.g. cut and copy), it is applied to all selected presets. If empty space in the preset sheet is right-clicked, the popup menu is invoked for the current preset.

The menu and/or popup commands are:

  • Save (Save To on the popup): Saves the current fader levels to the preset. The keyboard shortcut is ctrl+P.
  • Load (popup only): Loads the preset; equivalent to left-clicking on it.
  • Merge Load (popup only): Merges the preset's fader levels with those of the desk on a highest-takes-precedence basis.
  • Edit...: Enables you to rename the preset and assign a submaster to it.
  • New: Creates a new preset (all fader levels at zero) with a unique name, and asks you to rename it.
  • Clone: Makes a copy of the preset and asks you to rename it.
  • Delete: Deletes the preset(s)
  • Cut, Copy & Paste: Standard editing commands (see below)
  • Copy: Deletes the preset(s)
  • Paste: Deletes the preset(s)
  • Locked: Toggles the locked state of the preset(s).
  • Panic: Makes the preset the desk's panic preset.
  • Sort: Sorts the presets into ascending alphabetical name order.

Several of these commands have shortcut keys, which are applicable only when the preset sheet has focus; this is indicated by a white (rather than grey) background.

If you rename a preset which is referred to by any cues in the desk, those cues will be updated to reflect the new name. If you attempt to delete a preset which is referred to by any cues, you will be asked to confirm the deletion.

Editing Commands

Presets are cut, copied and pasted using an internal buffer, not the Windows clipboard, hence they cannot be transferred to and from other applications. All desks share the same buffer, making it possible to transfer presets between desks.

You can drag and drop a preset onto a cue to set that cue's preset. If the Ctrl key is held down while this is done, a new cue is created.

Fader Changes

When you change fader levels, '(mod)' appears next to the name of the current preset (unless locked) to indicate that potential unsaved changes have been made to it. If you attempt to load another preset without first saving it, PCStage's behaviour is determined by the Preset Changes setting in Preferences:

  • Prompt: You will be prompted to save or discard the changes, or abort the action (Cancel) which triggered the prompt.
  • Save: Always save the preset
  • Discard: Never save the preset

These options apply only in design mode. In run mode fader level changes are always discarded.


Design & Run Modes

At any time PCStage can be in design or run mode, which modifies its behaviour in certain respects; run mode is intended for use during a show. The differences are:

  • In design mode, clicking on a cue loads it immediately. In run mode, it begins a crossfade to that cue unless already crossfading to it, in which case the fade is ended. Clicking on the cue from which you are fading reverses the direction of the fade, and jumps to that cue if already fading backwards.
  • You are only prompted to save preset and cue changes in design mode.
  • In run mode, warning and error messages do not appear as dialogs, which would temporarily block your use of PCStage, but are logged to a separate window which is displayed with PCStage | Messages.... A notification of the appropriate colour (blue = information, yellow = warning, red = error) also flashes in the status bar of the main window to indicated that a message has been logged.
  • Crash recovery (reloading of previously loaded cue) and cue logging only occur in run mode.

You can switch between design and run modes from the Control menu or by clicking the toggle button in the lower right-hand corner of the main window. PCStage remembers the mode in which it was last used when restarted.


Preferences

Most of PCStage's options are set from the Preferences dialog invoked from the PCStage menu. Its pages contain a large number of options, many of which are described in the relevant sections of this help. The rest should be self-explanatory.

Preferences are stored in the file PCStage.ini file, not the Windows registry. By default this file is located in your personal Documents and Settings directory, which means that there will be a separate set of preferences for each account (on Windows NT/2K/XP) from which PCStage is run. However, if PCStage.ini is found in PCStage's installation directory (where it was placed by earlier versions), it will be used.


Introduction To Cues

Overview

Cues are the items which make up the sequence of lighting states in a desk. A cue has the following properties:

  • ID: A number which identifies the cue, described in cue numbering. The ID should be unique within the desk.
  • Name: A name for the cue. Unlike presets, cues do not need names, nor need they be unique.
  • Comment: An optional multi-line comment for your convenience, which has no effect on PCStage's operation.
  • Preset: The optional name of the preset which is loaded when the cue is loaded. If none is specified (left blank), fader levels are unchanged when the cue is loaded.
  • Robotic: The optional name of the robotic preset which is loaded when the cue is loaded.
  • Formatting attributes (colour and bold text) for highlighting cues.
  • Flags: Various flags which can be applied to the cue, each shown as a single letter (see below).
  • Fade Up/Down: crossfade timing parameters used when a fade to the cue is performed.
  • Cue Time: An operator prompt timer described in Cue Timer
  • Pre/Post Events: Actions which are performed when a crossfade to the cue begins and ends repectively. See Events.

The flags applicable to cues are:

  • Locked [L] indicates that the cue is locked. Locked cues cannot be modified or deleted until they are unlocked.
  • Next [N], Return [R] & Start [S] control automatic chaining of cues, and are discussed in Cue Sequences and Loops

A desk must always have at least one cue, hence a 'Blackout' cue is created for a newly created desk.

Displayed Cue Fields

The cue field columns seen in the cue sheet can be hidden and rearranged. To move a column click and drag its header cell; to hide a column right-click on its header and select Hide from the popup menu, or use the View | Cue Fields submenu, which also enables you to re-display hidden columns. To change the width of a column, click and drag its right-hand header cell divider.

Direct Cue Field Editing

As an alternative to using the cue editor, most of a cue's fields can be edited in place on the cue sheet. This feature is enabled and disabled by Cue | Direct Field Editing, and is only available in design mode.

The configuration of a cue sheet is saved with its desks, hence it can be different in each desk of a production. View | Cue Fields To All Desks gives all desks the same cue sheet configuration as the current desk.


Using Cues

Clicking on a cue loads it immediately (design mode) or controls a crossfade to it (run mode) - see Design & Run Modes. Double-clicking a cue displays the cue editor, which enables you to change any of the cue's parameters. You can also drag and drop a preset onto a cue to set the cue's preset.

It is possible to select multiple cues using shift-clicking or dragging. Cut and copy operations are performed on the selected cues, and use an internal buffer rather than the Windows clipboard i.e. cues cannot be transferred between PCStage and other applications. Since the buffer is shared between all desks, cues can be transferred between desks by this means.

There is a Cue main menu and a cue popup menu invoked by right-clicking on a cue, differing mainly in that a command invoked from the main menu applies to the selected cue(s), whereas one from the popup menu applies to the right-clicked cue. However, if the right-clicked cue is one of a range of selected cues, the command applies to all of them. If empty space in the cue sheet is right-clicked, the popup menu is invoked for the current cue.

The cue commands are:

  • Load (popup only): Loads the cue.
  • Edit...: Loads the cue into the the cue editor. Note that only one cue can be edited at a time.
  • Locked: Locks or unlocks the selected cue(s).
  • Use Selected Preset: Causes the selected cue(s) to refer to the selected preset
  • New Before/After: Creates a new cue before or after the current cue
  • Clone: Creates a copy of the current cue
  • Delete: Deletes the selected cue(s)
  • Cut, Copy, Paste: Standard editing commands
  • Execute Pre/Post Events: Executes the specified cue events

A cue can be moved within a cue sheet by dragging the small grey cell to the left of its entry up or down. This is a convenient way to change the sequential order of your cues.

All changes to the cue sheet can be undone with Desk | Undo (shortcut ctrl+Z).


Cue Numbering

Each cue has an associated ID, which is the primary means by which features such as desk events refer to cues. It's therefore desirable that cue IDs be unique, and PCStage attempts to ensure this when creating and pasting cues.

Cue IDs can be simple integers, and by default PCStage uses zero for the first cue, and multiples of ten for new IDs. However, when you specify an ID in the cue editor you can add a '.n' suffix, where 'n' is a single digit. This is a popular convention for logically grouping cue IDs.

When cues are created or pasted into a cue sheet, PCStage attempts to given them unique IDs in ascending sequence.

Desk | Renumber Cues assigns a new ID to all of the desk's cues. cues in the desk, renumbers all cues, assigning ascending multiples of 10 to them. This is useful when you have run out of numbering space for new cues inserted in your production.


Cue Events

Cue Events are one of PCStage's most powerful features. They enable you to configure a variety of actions to be automatically performed when a fade to a cue begins (a pre-fade event) or ends (a post-fade event). You can also manually execute either set of a cue's events from the Cue menu or popup.

Any type of event can be disabled using the Control | Enabled submenu, but these settings are not stored, and all event types are enabled when PCStage starts.

Cue events are created and edited in the Cue Editor, and are displayed in the cue sheet using a compact notation, prefixed with a 3-letter code indicating the event type.

Events can be dragged between cues, the cue editor and the event clipboard, a separate storage area which is viewed with PCStage | Event Clipboard; its contents are not saved, and are not part of the loaded production. To copy rather than move an event, hold down Ctrl while dragging it - a '+' symbol will appear next to the cursor.

The following sections describe each type of event in detail.


Wave Events

A wave audio event can perform one of the following actions:

  • Start: Begin playing a file on a track. The Skip if track busy option prevents the event from overriding a wave already playing on a track; the Loop option causes the track to loop endlessly until stopped. A start delay can be specified - the track is initially paused, and begins playing when the delay expires.
  • Stop, Pause & Resume do exactly what their names indicate.
  • Level & Pan perform a smooth transition of the level or pan of one or more tracks to the set value over the specified time, in a manner analogous to a lighting crossfade. You can check Stop after to stop the track when a Level fade is complete; this is intended for fadeouts. The End Cmd field enables you to enter a command to be executed when the wave finishes playing (without being stopped by any other means). This makes it possible to base the timing of a production on the length of audio files.

Tracks are specified by the names assigned to them in the Wave Audio tool. You may use the exact name of a track (all tracks are included in the drop-down list), or include the * and ? wildcards to specify all matching tracks; * matches all tracks. In the case of the Start action, the first matching track (subject to the Skip if track busy option) is used. For example, if you have tracks named One, Two and Three, T* would specify tracks Two and Three.

Because track levels are set logarithmically (in dB), you should experimentally determine the level at which tracks becomes inaudible and can be safely stopped when fading them out with the Volume action.

Cue-driven multi-track Audio operation can be disabled and re-enabled by the Control | Audio Disabled menu command; manual operation will still be available.

Wave audio events are displayed with the prefix 'WAV' in cue sheets.


MIDI Events

A MIDI event specifies a MIDI message to be sent when the event is executed. MIDI events are displayed with the prefix 'MID' in cue sheets.

If the Raw Data message type is selected, you must enter an entire message (including status byte) as separate hex bytes. If the status byte indicates a System Exclusive message but the required trailing F7 terminator is not given, it is added internally.


Script Events

A script event can either cause the Script Viewer tool to jump to a specified marker in the production's script, or close the viewer.

When specifying a marker, the drop-down list in the cue editor contains the markers found in the currently loaded script.

Script events are displayed with the prefix 'SCR' in cue sheets.


Robotic Events

A Robotic event performs one of the following actions:

  • Move sets pan/tilt position
  • Channel sets a channel level
  • Preset loads or begins a fade to a specified robotic preset.

You can apply a robotic event to more than one fixture by using the wildcards '*' and '?' in the fixture name box; as with filenames, '*' matches any group of characters, while '?' matches any single character. For example, if you have fixtures named 'Mac250_One', 'Mac250_Two' and 'Mac250_Three', all will be affected if you specify 'Mac250_*'. When wildcards are used, the event is considered to have failed only if it could not be applied to any fixtures with matching names.

Robotic events are displayed with the prefix 'ROB' in cue sheets.


Desk Events

Desk events enable any desk in your production to control any other automatically during the course of a show. A desk event can perform one of the following actions:

  • Fade: Begin fading to the specified cue
  • Jump: Load the specified cue immediately
  • Break: If the desk is in a cue loop, break out of it

The desk to which the event applies must be specified. A cue is specified by name or ID, or the next cue in the desk may be used.

Desk events are displayed with the prefix 'DSK' in cue sheets.


Activation Events

An activation event opens a file in the manner in which Windows is configured to open files of that type. If the file is an executable program or batch file is it executed; if a recognised type of document file, it will be loaded into the appropriate application.

The file to be executed is selected using the '...' button. If an executable file is selected, you may also enter command-line parameters to be passed to the program.

The action taken by Windows when a file of a given type is opened can be modified from the File Types tab of Explorer's Tools | Folder Options dialog.

Activation events are displayed with the prefix 'ACT' in cue sheets.


Command Events

Command events execute a PCStage command. They should not be confused with plugin events, which send commands to plugins.


Plugin Events

A plugin event can send a command to a specified plugin. A plugin may or may not support commands, and these are unrelated to those supported by PCStage (which can be sent to it by plugins!). Consult the plugin's documentation.

When editing a plugin event, the selected plugin can be queried for a summary of its supported commands with the Cmd Help button. Unless otherwise specified, any command parameters containing spaces must be enclosed in double quotes; this is most commonly necessary with filenames.

If a plugin is not open when command help is requested or a command is sent to it, it will be opened first.

Plugin events are displayed with the prefix 'PLG' in cue sheets.


Serial Events

A serial event sends a specified serial data string via a PC's COM port. See Serial Communications.

Serial events are displayed with the prefix 'SER' in cue sheets.


Cue Sequences and Loops

A number of crossfades can automatically occur in a sequence without user intervention; it is also possible to fade back to the first cue in such a group and repeat the sequence indefinitely or a specified number of times, thus producing a loop of cues. Several cue properties set in the General panel of the Cue Editor, and visible in the Flags field of the cue sheet, are relevant:

  • The Next flag (shown as 'N') causes PCStage to begin a fade to the next cue as soon as a fade to this cue is completed.
  • The Repeat flag (shown as 'R') causes PCStage to fade back to the previous cue with its Start flag set. If a repeat count is specified, this is shown after the 'R' in parentheses.
  • The Start flag (shown as 'S') marks a cue as a target for a following Repeat flag.

If looping a finite number of times, the loop counter is shown in the status bar. While looping, the rightmost fade button becomes the Break button, which causes fading to the first cue beyond the loop to begin.

A group of cues forming a sequence followed by a loop repeated 5 times would have Flags fields which look like this:

N
N
N
NS	[start of loop]
N
N
N
R(5)    [end of loop]

Control | Reset Loop Counterends any counting of loops in the current desk without affecting a crossfade in progress. This function is also performed by clicking the loop counter button in the status bar.

Limitations

The speed at which sequences of short crossfades can occur is limited to some extent by the speed of your PC, since the display must be updated to show channel activity. If repeated fast lighting changes with precise timing are desired, consider using chasers instead.


Cue Timer

Introduction

The Cue Timer is a feature which allows you to store an estimate of the time for which a cue should remain on stage before a manually initiated change (e.g. a crossfade) is required. The cue timer does not cause a fade to be automatically initiated after the timer interval, but rather provides a warning that an on-stage cue (e.g. a line of dialogue or action) requiring such a change is likely to occur soon. A good analogy is a simple kitchen timer – it doesn't actually perform a task, but reminds you that something needs doing or checking.

Each desk has its own independent cue timer. All cue timers can be disabled from the Control | Enabled submenu.

Setting A Cue's Time

There are three ways in which a a cue's time can be set:

  • It can be measured by the Timer tool and set directly by PCStage
  • It can be entered manually in the Cue Editor
  • It can be fetched from another source using the Get menu button, which currently supports use of the cue's total fade time or the length of the first audio file in the cue's pre events.

Cue Timer Action

If a cue has a cue time (i.e. its Time field is not blank) loading the cue kicks off the desk's cue timer. When the countdown falls below 10 seconds it appears in the desk's cue selector button, flashing red to alert the user. The cue timer can be disabled by clicking on the tab, even if the desk is already selected.

If open, the Timer tool also displays the most urgent cue timer i.e. that closest to completion.


Cue Logging

Cue logging keeps a record of exactly when cues are loaded in a CSV file, which can be loaded by Excel and other spreadsheet applications.

Because Excel requires exclusive access to files while they are open in it, PCStage does not keep the log file open, but closes it immediately after adding each entry. This ensures that Excel can open the file at any time. Of course, PCStage cannot add to the log file while it is open in Excel.

Options relating to log files are set in Preferences - the name of the logfile and the option to include the date in the filename, which might be useful if PCStage were running unattended for a long period. If the date is included in the filename, it is not included in each log entry.

Cue Logging only occurs in run mode.


Crossfades

The ability of a lighting controller to fade smoothly between lighting states (presets) is one of its most important features. PCStage offers separate wait-fade-hold timing of rising and falling faders, and recalculates all fade levels 50 times per second, regardless of the speed at which the user interface is able to show these transitions.

PCStage offers considerable control of crossfades during a show. They can be paused, reversed and skipped in both directions, their speed changed smoothly over a wide range, and you can even use the mouse to set the position of the fade progress bar.


Crossfade Controls

Fade Buttons

Crossfades are controlled primarily by the five large "ttransport" style buttons in the control area. The left-pointing buttons are termed Jump Back and Fade Back (toward the start of the fade), while the right-pointing buttons are Jump Forward and Fade Forward (toward the end of the fade). The central Pause button freezes fading until one of the other buttons is clicked. The button corresponding to the current fade state, when fading, has a yellow symbol instead.

If no fade is in progress, clicking a Jump button will immediately load the previous or next cue, while clicking Fade Forward or Fade Back will begin fading toward the next or previous cue. If a fade is in progress, clicking the alternate Fade button will reverse the direction of the fade, while a Jump button will abort the fade by loading the cue appropriate to the button's direction. Clicking Fade Forward while already fading forward begins fading to the cue following the current fade target. You should experiment with the fade buttons to understand how they work; in most respects they are fully bi-directional.

During a fade, highlighting appear in the cue and preset sheets indicating the fade's target cue and its preset. This highlight is green if the target cue has the flag set, aqua otherwise.

Fade Gauge

Directly above the fade buttons is the fade gauge, visible only during crossfades, which shows the progress of the fade as a proportional bar and the time left in the fade:

You can click and drag on the gauge during a fade to set the fade's position; the fade is automatically paused when you do this. The multi-coloured bars above and below the gauge indicate the components of the fade timing. The direction of the bar's travel is determined by whether the fade is to an earlier or later cue.

Fade Speed

Below the gauge bar is the fade speed control, a trackbar which enables you to increase or decrease the speed of a fade by a factor of up to four, shown as a percentage between 25% and 400%, with 100% (nominal speed) at the halfway point. Equal steps along them speed control give geometric (equal ratio) steps in speed. A button providing an immediate return to nominal speed is also provided.

The fade speed returns to 100% before each crossfade unless the Preferences option Fade speed locked is set. This can also be toggled by right-clicking on the fade speed control and selecting Locked.

The intent of this feature is to allow you to alter the overall time of a fade on the fly to accommodate variations in on-stage activity, but it also provides a quick and easy way to experiment with fade speeds during production design. The remaining time shown in the fade gauge takes the fade speed into account.

External Fade Control

It is possible for a fade to the next cue to be controlled by a DMX Input channel or, using the TrackFade command, any other control source such as MIDI; in that case a cue may also be specified. When the control source's value rises above 5 a fade to the cue begins, and its progress corresponds to the value's rise to 250, at which point the fade is completed.

This enables an external manual desk to be used to drive crossfades directly.


Specifying Crossfade Timing

The timing of a crossfade is determined by the fade timing properties of the cue to which the desk is fading, as set in the Cue Editor. Timing for faders which rise (Up) and fall (Down) during the crossfade are set separately. The three parameters for each are:

  • Wait: The delay before the levels begin to change
  • Fade: The interval over which the levels change
  • Hold: The delay after levels change

PCStage shows the fade time in minutes, seconds and tenths of seconds, and supports a resolution of one tenth of a second (100ms). You may enter digits directly into the editing fields with the keyboard or use the up/down buttons provided to increment and decrement the fields.

The total fade time is shown at the top of the editor's Fade panel. For a Simple fade this is just the fade time parameter; for a Complex fade it is the sum of the three parameters shown; for a Split fade it is the greater of the sums of the Up and Down parameters.

In the cue sheet the Up parameters are all shown in the Fade Up column, while the Down parameters are all shown in the Fade Down column. If the Hold and Wait times are zero the Fade time is simply shown by itself; if not, all three are shown with slashes (/) between them, in the order Wait/Fade/Hold. If the Wait or Hold time is zero it is not shown, although the separating slash remains.

The coloured bars above and below the fade gauge represent the three components of Up and Down fades respectively. These bars are also seen in the cue editor to show their meaning. Dragging the fade gauge through complex fades, using these bars as a guide, can help you to understand how they work.

Default Fade Timing

The Use As Default button in the cue editor stores the fade timing shown as the default for use in all new cues, replacing the initial default of a simple 5-second fade with no Wait or Hold delays.

The Reset To Default button resets the editor's fade time settings to the last stored default.

Fade Timing Example

An example may help to clarify the effect of the fade timing parameters. Imagine that we have two cues, the first with channel one at 100% and all other channels off; the second has channel two at 100% and all others off. If we set the fade times as follows:

  • Wait Up = 2 sec
  • Fade Up = 10 sec
  • Wait Out = 5 sec
  • Fade Out = 5 sec

We will not use the Hold times in this example i.e. they should be set to zero. A graph showing how the channels change over time would look like this:

Ensuring Smooth Crossfades

The internal timer used by PCStage to perform crossfades is reliable, particularly in Windows NT/2000/XP, but it can be upset by heavy system activity, particularly using the hard disk. It's a good idea to avoid this when crossfading during a show.


Dipless Crossfades

PCStage applies its fade timing control to both channel and submaster faders alike, with one important exception. If dipless crossfades are enabled in Preferences (as they are by default), preset submasters are not crossfaded. Instead, they are converted to their equivalent channel levels in both the initial and target lighting states, and take no direct part in the crossfade.

This can affect the way that channels controlled by preset submasters behave during a crossfade, which is best illustrated with an example. Consider two presets named A and B, both of which include channel 1 at 100%, attached to submaster faders S1 and S2 respectively. Now consider two adjacent cues with IDs 10 and 20 - cue 10's preset includes S1 at 100% and S2 off, while cue 20's preset includes S1 off and S2 at 100%. Cue 20's fade timing is a simple 5 seconds, with no Wait or Hold times. If you're having difficulting following this example mentally, set it up in PCStage and try it.

Without dipless crossfades, as was the case in V3 and earlier of PCStage, fading from cue 10 to cue 20 would cause channel 1 to dip from 100% to 50%, then return to 100%, as one submaster falls and the other rises. However, with dipless crossfades, the presets are merged internally before crossfading, so channel 1 stays at 100% for the entire fade. This difference is the origin of the term 'dipless'. In PCStage, the preset submasters can be seen to remain off during the entire crossfade.

Note that chaser submasters are not affected by this feature, hence a single-step chaser can be used where a submaster not subject to dipless crossfading is desired, if dipless crossfading is otherwise wanted.


Advanced Editor

The Advanced Editor is opened from the Production menu, and enables you to perform useful editing operations which are otherwise cumbersome. Note that, unlike operations performed elsewhere, these cannot be undone.

Commands are selected from the drop-down list at the top, and their settable parameters appear below. Where a parameter requires any definition or explanation, a help button appears to its right.


Blind Mode

When in Blind mode, the internal fader levels generated by the engine are frozen, and are unaffected by any fader level changes which occur in desks. The converse of Blind mode is Live mode, in which PCStage always starts up. You can toggle between Live and Blind modes with the button at the lower right of the main window, which always indicates the current mode, or from the Control menu.

Blind mode is intended to allow you to perform emergency production editing during a rehearsal or performance, where disrupting on-stage lighting is undesirable. Once in Blind mode you may create, edit or delete presets and/or cues freely; when you return to Live mode, the desks' faders are returned to the levels at which they were when Blind mode was entered, avoiding any change to on-stage lighting.

Note that Blind mode does not freeze output dimmer levels. Chasers, soft-patching and the master level fader, for example, all continue to operate normally. Any crossfades in progress are aborted when changing mode, and crossfades performed in Blind mode have no effect on on-stage lighting.

If any desks are currently crossfading, it's probably undesirable to enter blind mode, since you will not be able to load a cue with these levels before returning to live mode. PCStage will ask you to confirm entry to blind mode if this is the case.


Chasers

Introduction

A chaser is a sequence of lighting states which are shown in rapid succession. Each state is essentially a group. You can create any number of chasers in a production with the Chaser Editor tool, and each chaser can have any number of steps. Each chaser must have a unique name. Chasers are edited and manipulated using the Chaser Tool.

Chaser Types

There are two different type of chaser:

  • A Level chaser directly specifies the level of each channel in each step
  • A Preset chaser's steps refer to presets in the production's first desk

When you create a new chaser you must specify which type you want. A production may contain any mixture of the two types of chaser.

Stepping Options

A chaser can be stepped automatically (timed) by the engine at regular intervals, giving a step time resolution of 20ms, or manually, by a trigger or the StepChasers command . To be stepped manually, this mode must be selected in the chaser editor. When setting step time, you can select a short time using the trackbar or enter a longer time (up to 32 seconds) in the adjacent text edit box.

A timed chaser can be synchronized with other events by tapping the Sync button or executing the SyncChasers command. This will set its step time (tempo), so it will continue to run afterwards.

A timed chaser does not run while its assigned submaster (if any) is off; it starts from the beginning of its sequence when the submaster's level rises above zero so that its steps can be reliably synchronised with other chasers and events included in the same cue.

If Non-looping is checked, the chaser will stop at the last step rather than returning to the first. It can be restarted by reducing its setting its controlling submaster off, then on again. Such a chaser can be used to achieve brief effects.

Creating Steps

As with groups, steps in a chaser can be captured from the current desk or shown on the desk, and (for Level chasers only) individual levels can be directly edited - see Editor Tools for details of this procedure. If Edit Levels is not checked, double-clicking (quickly) on a cell will toggle it between off and full level, but no finer control is possible.

Chaser steps can be re-ordered by dragging the small grey cell to the left of each step up or down, and can be cut, copied and pasted within a chaser or between chasers of the same type. Paste After inserts the clip contents after the selected step, while (for Level chasers only) Paste Merge merges them with the selected and subsequent steps using highest-takes-precedence. This enables you to combine level chasers with each other.

Submaster Assigments

You can set or remove a chaser's submaster assignment of a from the Chaser menu. Each chaser's current assignment is shown alongside its name in the chaser list.

Fade and Speed Control

Timed chasers support fading between steps, which can be set as a percentage of step time. For example, selecting 50% for a chaser with a 200ms step time will produce a 100ms fade between steps, and each step will then hold for 100ms.

Master Speed varies the speed of all timed chasers by a factor from 0.25 (quarter speed) to 4 (four times faster).

Chaser State Control

The Forward, Reverse and Pause transport buttons determine what happens when a chaser steps, either manually or automatically.

Single-Step Chasers

Although a chaser with just a single step might appear to be identical to a group, there is an important difference - chaser submasters are not subject to dipless crossfades.


Command Console

The Command Console tool enables you to execute commands interactively and see the responses generated by PCStage. The edit box into which commands are typed maintains a history of commands executed, and all commands and responses appear in the log pane below. Commands received from PCStage clients, and the responses generated, are also shown in the log pane if the tool is open.

The 'Help' command will produce a list of all supported commands, and you can then issue 'Help <command>' to discover the arguments required by any particular command. Optional arguments are shown in square brackets.


Current Monitor

Overview

The Current Monitor enables you to monitor the current used by your dimmers, and apply one of several mechanisms to prevent it from exceeding a safe level. PCStage allows you to create circuits corresponding to those to which your lighting equipment is connected, specify the current drawn by each dimmer and assign it to a circuit. Currents are specified with a resolution of 0.1A (a tenth of an ampere).

PCStage makes the assumption that the power consumed by a dimmer is proportional to its DMX level.

Creating Circuits and Loads

Circuits are created in the Current Monitor tool, where their total load current is also shown in real time. You may create any number of named circuits. The currently selected circuit appear indented (pushed in) rather than outdented (popped out). By default a circuit has a maximum current of 10A, but you can change this by clicking the button showing the current.

Loads on each circuit are specified in the Soft Patch editor - the maximum current drawn by any dimmer, and the circuit to which it belongs, can be entered.

Current Limiting Mechanisms

There are three mechanisms from which you may choose in the Current Monitor tool:

  • Blow fuses simulates the behaviour of a circuit breaker with a button in each circuit's panel. When the circuit's current is exceeded, this button pops out and displays an icon of a broken connection, and all dimmers on the circuit are turned off. To reset the breaker you must reduce the current to 90% or less of maximum.
  • Reduce dimmers proportionally reduces the level of all dimmers on the circuit to prevent it from exceeeding the circuit's maximum current.
  • Reduce master reduces the master level fader to prevent any circuit from exceeding its maximum current

While Blow fuses draws attention immediately to the problem, its effect is undesirable during a show, where the other two modes are probably preferable.

Current limiting can be disabled from the Control | Enabled submenu.


Dimmer Curves

Overview

A dimmer curve determines the DMX level a dimmer outputs for any level of the driving channel. The default dimmer curve always sets the output DMX level equal to the input channel level, but PCStage allows you to create your own dimmer curves and assign them to dimmers. For those of you who are mathematically inclined, a dimmer curve is a transfer function with the identity function as its default.

Customised dimmer curves can be used to:

  • Correct perceived non-linearity (relative to channel level) in the light output of fixtures
  • Alter the behaviour of crossfades
  • Limit the power supplied to special fixtures such as dimmable fluorescent lamps
  • Control the path taken by moving fixtures during crossfades.
  • Send only a few discrete DMX values to a robotic device (a "staircase" curve)
  • Create special effects

As part of the Soft Patching process, a curve created by the user may be used to map the channel level to a dimmer level. Your production may contain any number of named curves, which are edited using the Curve Editor tool.

The Curve Editor

Most of the curve editor is taken up by a graphical display of the selected curve, but along the right-hand edge are the following editing controls:

  • The Drawing Tools box allows you to select a drawing tool (see below)
  • The Execute button updates the current curve to match the segment traced by the drawing tool
  • The Curve Table allows you to see and manually change the value of each point on the curve (see Editor Tools for details of this procedure)

When the mouse pointer is over the curve display, the title bar of the editor displays the channel to dimmer level mapping corresponding to its location.

Drawing Tools

The Freehand tool allows you to set curve points or draw the curve directly on the graphical area by left-clicking or left-dragging. Be aware that moving the pointer too quickly will cause points to be skipped.

The Line and Bezier tools are more powerful, allowing you to create precise straight-line and curved segments on the curve. When selected, the tool appears on the graph as an overlay, and can be manipulated by dragging the small cross-shaped markers. When the tool is positioned correctly, the Execute button will cause the curve to follow it; this process can take a few seconds.

A Bezier curve is one defined by its endpoints (two of the markers) and tangents controlled by the other two markers and shown as dashed lines; the angle and length of the tangents determines the curve's shape. With one or more Bezier curve segments any conceivable smooth curve can be created.


Dimmer Mimic

Overview

The Dimmer Mimic tool shows you the levels which are being generated by PCStage at any moment i.e. it 'mimics' the DMX output. It contains the following controls:

  • A Styleselector (see below)
  • A Width selector, which lets you choose the number of levels shown on each line. The wider settings are necessary to show hundreds of dimmers simultaneously.

Both of these settings are automatically saved as Preferences.

If you have a USB DMX interface which supports DMX input, and a connected DMX source, you will also see an Input tab which shows the input levels.

Styles

Dimmer levels can be viewed in several different ways:

  • Bar is a horizontal bar gauge
  • Intensity is a solid block of colour whose brightness varies from black to white
  • Percent is the level scaled as a percentage
  • Actual is the DMX level without scaling

Performance

Depending on the style chosen, the Dimmer Mimic may noticeably reduce the performance of PCStage if a large number of dimmer levels are changing simultaneously. The numeric styles (Percent and Actual) are more efficient than the graphical ones. Reducing the size of the tool to show only those dimmers whose levels you need to monitor may also improve speed.


DMX Input

DMX input channels, which are optionally supported by the Full USB DMX Interface, can be used for the following purposes:

  • They can be mapped to desk faders (including submasters) so that any changes in the input channel are reflected in the faders. This allows an external desk to be used to control PCStage in real time or set up presets. Mappings are saved as part of a production.
  • They can be used to perform externally controlled crossfades
  • They can provide triggers

To edit DMX input mappings or select a fade control channel, select Production | DMX Input.... You can create as many mappings as you wish; to map a single input channel to a single fader, set the To: channel to zero.

You can see the last received DMX input channel values in the dimmer mimic.

You can specify the number of DMX input frames to be averaged in Preferences | DMX to smooth erratic or noisy DMX sources such as manual desks with resistive fader controls.


Fader Views

Overview

Each desk in a production has a full set of channel and submasters faders, but it may be confusing or inconvenient to see all of them, in the default layout, in the fader area. A fader view specifies the order and layout of a subset of these faders, enabling you to construct better visual models of the functions of each desk.

A production can contain any number of named fader views, and any fader view can be used with any desk. Fader views are created and edited with the View Editor, and selected for the current desk in the Control Area, using the panel directly below the Toolbox. PCStage remembers which view was last used with a desk.

Bear in mind that faders which are not shown in a desk's current fader view still exist, and can be active. The Default view always shows all faders, and can be used to check for such 'hidden' fader levels.

A fader view can contain any number of rows. The number of rows visible in the fader area or View Editor is increased and decreased with the buttons marked '-' and '=' on the right-hand side.

The View Editor

A view is specified by a text description (see below), and the fader display corresponding to the selected view's description is shown in the preview fader area below. The descrtiption is edited in a dialog invoked with the Edit button, and is verified before being accepted and previewed.

View Descriptions

A view description is one or more lines of text, with each line corresponding to a row of faders in the view. Each line contains a series of tokens separated by a space or comma; the possible tokens are:

  • A fader label (e.g. 14, S3)
  • A label range (e.g. 12-20, S5-10, S15-S20). Note that, when specifying a range of submasters, the 'S' in the upper end label is optional.
  • A gap. '|' adds a small gap, while '#' adds a gap of a full fader width.

A fader cannot be specified more than once in a description. While it is valid to specify faders which are beyond the current channel and submaster quantities of the production, they will not appear in the view when displayed.

An example of a valid view description is:

  1-5 | 6-10 | 21-30 35 40
  S1-4 # S10,S12-15


File Paths

Overview

A production may rely on the presence of other files e.g. audio files or a script. If these files are moved, your production's references to them would become incorrect if they included the file's full pathname. To avoid this, PCStage maintains a list of paths (directories) in which to search for referenced files. If files on any of these paths must be moved, changing the path is sufficient to enable PCStage to find them again.

In addition, PCStage displays filenames reliant on this path list without their full path, making them easier to read.

Specifying Paths

Paths can be added or removed from the path list in the Paths tab of the Preferences dialog. You can also change the order of the paths by dragging them with the mouse.

How Paths Are Used

When you select a file for use with a production, PCStage determines whether its path appears in the path list. If so, its path is discarded, and PCStage thereafter relies on the path list to locate it.

When PCStage needs to locate a file whose pathname is not stored, it looks for the file in each directory in the path list, using the first matching file found. The order of the paths therefore matters only when files of the same name exist in more than one of them.


Layout Tool

Overview

The Layout tool offers an alternative to desks, enabling you to visually position compact faders in any way you wish to correspond to the actual location of fixtures. These small, square compact faders offer a subset of the features of those found in desks due to their small size. Note that submasters are not available.

The levels shown and set by the tool are linked with a desk, which can be selected at the top of the window. If the special mimic desk is selected, dimmer levels are shown instead, and the faders cannot be adjusted. A background image (BMP format) can be loaded if desired.

Tool Modes

The tool operates in either of two modes, which determine the function left mouse button: edit mode, in which compact faders can be created, deleted and moved, and control mode, in which their levels can be changed. The tool is always in edit mode when first opened, as indicated by the Edit menu item being ticked.

In either mode, multiple faders can be selected by dragging a box around them with the left mouse button, and right-clicking and holding over a fader flashes it, as it does for a desk fader. To deselect all faders, left-click on the background.

Edit Mode

In edit mode, the left edge of the window is occupied by a list of the channels available. Click and drag them into the main body of the window to create compact faders and delete the selected fader(s) by dragging them out of the main body area. Unlike the standard desk display, multiple faders with the same label can be created.

Left-clicking and dragging a fader moves it. If the fader is selected, all other selected faders are also moved.

Control Mode

In control mode, left-clicking and dragging a fader changes the fader's level and, if the fader is selected, all other selected faders are also changed.

In addition to dragging a box around faders, in control mode additional faders can also be selected by ctrl-clicking them.


Masters Tool

The Masters tool enables you to create faders which can scale any subset of your production's faders behind the scenes, including submasters. They should not be confused with the overall master fader in PCStage's main window.

Masters are created, edited and manipulated in a manner similar to entities in other tools. The list of faders to be scaled is specified in the same way as when manually setting fader levels. A fader can be scaled by more than one master without conflict.

The masters' levels are not stored as part of your production. They are always at maximum when a production is loaded.


Plugins

PCStage is able to load and use plugins DLLs which are placed in the Plugins sub-directory of the PCStage installation directory, and provide specialized features not available in PCStage itself. To start a plugin, select it from the main window's Plugins menu, and to stop it simply close its window.

Plugins can send commands to PCStage, and may also be able receive commands from it. The latter capability can be used in plugin cue events.

The currently available plugins can be obtained from the download area of the PCStage website.


Performance Monitor

The Performance Monitor is a tool which displays moving averages of several aspects of PCStage's real-time performance:

  • Engine Load is the percentage of time that CPU is devoting to the engine
  • Update Time is the length of time it is taking to update PCStage's user interface to reflect engine activity
  • Update Rate is the number of user interface updates per second which PCStage is performing.
  • Engine Error is the internal code of any recent errors encountered by the engine.

As a rough guide, the engine load should stay below 20% and the update rate should stay above 10 per second for reasonable user interface speed. Other applications competing for the CPU and performing user interface updates may distort these figures.


Production Reports

PCStage can create a report on aspects of a production in CSV (comma-separated value) format, suitable for importing into a spreadsheet such as Excel.

Select Production | Create Report... and choose the items to be included in the report. Specify a filename and check Open after creation if you want PCStage to try to open the report in your spreadsheet after creation (this requires that the CSV filetype is associated with the spreadsheet application).

Once you have the report loaded in your spreadsheet application, you can edit, format and print it to suit your needs.


Script Viewer

The Script Viewer is a tool which displays an HTML document using an embedded copy of Internet Explorer; it can be a show's script or any other documentation useful to the lighting operator. Script events cause the Script Viewer to jump to preset markers in the document when executed. A script is associated with a production via its settings, and is thereafter automatically loaded when the production is loaded.

A script marker is defined using the same HTML anchor tag that is used to create link targets within a web page. The tag's NAME parameter is the name of the marker; the contents of the tag, if any, appear as normal text. An example would be:

  <A NAME="Scene One">SCENE ONE</A>

Support for named anchor tags varies between HTML editors. Some may support them directly, while others require you to enter them manually. Do not confuse them with the HREF anchor tags used to create hyperlinks, which are not supported by scripts.

The Script Viewer enables you to manually select a marker and reload the script, which is useful when editing it externally.


Selection Tool

The Selection tool enables you to save the current fader selection state and retrieve it at any time. For example, if faders 1-10 are selected, you can save this selection under the name 'Left of Stage. This makes it easy to change the levels and properties of a group of logically related faders.

A saved selection is re-selected using Selection | Select or double-clicking on the selection's name.


Serial Communications

In a manner analogous to MIDI, PCStage can send and receive data via a PC's COM ports for triggers and events, making it possible to sync PCStage with other equipment which also supports serial communications. You can select the port and baud rate in Prefererences; there is no control of data format, since anything other than 8N1 (8 bits, no parity, 1 stop bit) is very rare. You can also send a break before the first character, which is required by some peripherals.

The characters in serial data strings can be specified directly (e.g. 'A') or as numeric escapes, which are the only way to specify non-printing characters. An escape is a backslash followed by the character's ASCII value (e.g. '\13' for carriage return). For example:

    HELLO\13\10

consists of seven characters, the last two being specified as escapes. To specify a backslash, use two together.

The serial tool enables you to monitor incoming serial data and send any string you wish, for interactive testing and control of other equipment.


Soft Patching

Introduction

Soft patching (or just patching) is the facility which gives you control over the way PCStage's engine maps its internal channels to the output dimmers. The term patching derives from the physical analog connections which were made between lighting desks and dimmer circuitry back in the days before data-based lighting protocols; the term soft indicates that the mapping is now software- rather than hardware-based.

You can set the number of channels and dimmers in your production separately. By default each dimmer is controlled by the channel of the same number; if there are the same number of dimmers and channels, there is therefore a complete one-to-one correspondence between the two. If a dimmer's selected channel does not exist, it is always turned off.

Dimmer Properties

The Soft Patch editor enables you to set the following properties for each dimmer:

  • The channel which drives it; Default indicates the channel of the same number as the dimmer.
  • The level ratio, which is the percentage of full power applied to the dimmer when the driving channel is fully on; by default this is 100% (shown as 'FF'), meaning that the level of the dimmer is the same as that of its driving channel. The ratio can be set above 100% to boost a dimmer's levels if the driving channel is below its maximum level.
  • The dimmer curve which maps channel to dimmer levels. By default there is no curve, meaning that all levels are the same.
  • A flag ('M') indicating whether the dimmer is influenced by the Master Level fader or not. For some equipment (e.g. positional robotic devices) its effect may be undesirable.

You can set properties for multiple dimmers simultaneously by ctrl- or shift-clicking their entries in the list. Note that a property setting control (below the list) will be blank if that property varies amongst the selected dimmers. See Editor Tools for details of entering values into these property editors.

The Chan @ Ratio text entry box allows you to enter the controllig channel and ratio for a dimmer in the manner standard on traditional lighting desks. Pressing Enter accepts the entry and selects the next channel in the list.

The buttons above the dimmer list enable you to return selected or all dimmers to their default settings.

Uses for Patching

Soft-patching lets you do some very useful things. For example:

  • If a rack output fails you can patch the driving channel to a different one without editing your production.
  • You can patch channels to dimmers located in the rack closest to the driven lamps to reduce mains cable length.
  • You can patch several dimmers to one channel to simultaneously test all of them or obtain more output power for that channels.
  • You can drive a lamp rated at a voltage below that of your supply by reducing the dimmer's ratio. Most 120V filament lamps can be safely driven from a 240V supply by using a 50% ratio.
  • You can disable a dimmer completely by setting its ratio to zero.

Operation of Patching

Because patching from channel to dimmer levels several steps, it's useful to see the sequence of operations carried out by PCStage to do this. For each dimmer:

  • The value of the driving channel (if it exists) is fetched
  • It is scaled by the ratio setting
  • The curve (if specified) is applied
  • If enabled, the value is scaled by the Master Level.


Timer

The Timer tool has two tabs: a stopwatch with a resolution of 1/10th of a second, and a cue timer display.

Stopwatch Tab

The stopwatch can be used for any timing tasks, but if Record Cue Times is checked it begins timing when a cue is loaded (or a crossfade to it finishes), and stops when the next cue is loaded (or a crossfade to it begins), thus measuring the time for which that cue was on stage. PCStage automatically inserts that measured time into the Time field of the cue. This is intended for use during a full rehearsal, enabling you to automatically record cue times as you proceed through the production.

Note that the Stop button does not reset the stopwatch. If you click Go again, it will continue timing from the same point.

PCStage attempts to update the stopwatch's value every tenth of a second. However, heavy activity in PCStage or on your PC in general may make this impossible. Nevertheless, the timing will remain accurate, since it uses a precise internal timer as its reference.

Cue Timer Tab

The cue timer display is an enhancement of the final 10-second countdown shown in the selection button of each desk. It displays the most urgent of all the cue timers active, and the name of the desk on which it is running.


Triggers

A trigger is an external event which causes a command to be executed. Keystrokes, gameport (joystick) buttons and MIDI messages are the currently supported trigger types.

PCStage contains two sets of triggers. Application triggers are always present, and are edited with PCStage | Triggers..., whereas Production triggers are part of a production, and are edited with Production | Triggers. The dialog invoked is the same in both cases except for the title bar. If a trigger is defined in both, the production trigger is used; if a trigger is defined more than once in a set, the first definition is used.

Cue Filters

You can specify the cue(s) on the first desk at which a trigger is active, since it's often desirable to limit their effect to certain parts of a show. A cue filter is a list of cue IDs or cue ID ranges (separated by commas and/or spaces), but fractional IDs are not supported. For example, the filter '10, 30, 100-200' would permit the trigger to operate if cue 10, 30 or any in the range 100-200 were loaded.

If a trigger's cue filter is blank, it will always operate.

Key Triggers

The trigger's keystroke event consists of:

  • A basic key, selected from the drop-down list or pressed directly via the Learn... button. Not all keys on the keyboard can be used in triggers.
  • Any combination (including none) of the standard qualifier keys Shift, Ctrl and Alt.
  • The choice of whether the up or down stroke of the key is used, or whether it is made a global hotkey instead

A global hotkey is a keystroke which is detected by PCStage regardless of whether it is the active application; only the down stroke of a global hotkey can be detected. Be aware that global hotkeys can interfere with your use of all applications, and may conflict with those already assigned by Windows.

Key triggers (except global hotkeys) do not work when you are typing into an edit box. If they did, you would be unable to type characters which were assigned to triggers.

Button Triggers

A PC's gameport directly supports four buttons, but with a little extra wiring up to fifteen can easily be handled by PCStage - see the Appendix Gameport Trigger Buttons. These work in the same way as keystroke triggers, with the advantage that they are inherently global and conflicts with other software cannot occur.

Joysticks which are not connected to the gameport (e.g. USB gamepads) are supported by means of the separate utility PCSJoy, available from the PCStage website, which uses the DirectInput API interface and sends the PressButton command to PCStage. If using PCSJoy, specify the -nogame command line switch to prevent it from reading the gameport.

A common use of button triggers is to enable a remote person such as a floor manager or actor to control a production.

If you are warned that a device driver is required when attempting to create a button trigger, please see Troubleshooting.

MIDI Triggers

Several types of incoming MIDI message can serve as trigger events: Note On, Note Off, Program Change and Control Change. You can set the first and (where available) second parameter of the message on which you wish to trigger, or select Any to ignore its value.

The MIDI message's data bytes (i.e. all following the status byte) are available for use as command parameters.

DMX Triggers

Changes in DMX input levels can be used as triggers, to enable control of PCStage by other DMX sources such as lighting desks. DMX input is an option available for the USB DMX interface.

A rising transition occurs when an input channel's level rises above 127, and a falling transition when it falls below 128 i.e. half level. Alternatively, a trigger can be generated when any level change occurs.

The new DMX level is available for use as command parameters.

Serial Triggers

Serial strings can be used as triggers when received from other devices. See Serial Communications.


Robotic Fixture Support

PCStage includes flexible, powerful facilities for the use of robotic fixtures, ranging from simple colour scrollers to high-end moving fixtures, in your productions. All fixture channel levels are stored logically rather than directly e.g. if your production sets a fixture's colour to 'Red', a change in the definition of 'Red' for that fixture type will automatically be reflected in your production.

Robotic fixtures occupy their own internal desk, and hence fixture channel levels are combined with those of all other desks on a highest-takes-precedence basis. This means that you can also control a fixture's channels from any non-robotic desk. You can therefore apply chasers and other effects to fixture channels.

The Robotic tool shows the state of a production's fixtures, and gives access to editing facilities. However, robotic aspects of a production do not require this tool to be open.

Fading to a robotic preset is supported, although with fewer capabilities than non-robotic crossfades; there are no wait and hold components, and fade speed cannot be controlled. Fading can be performed manually in the robotic tool by right-clicking on a preset and selecting Fade To, and can also be performed by Robotic events. The fade time must be entered before the fade is started, and is specified in seconds, with a precision of one-tenth (0.1).

There are several components to PCStage's robotic support:

  • A fixture type defines the behaviour of a particular kind of fixture - its movement capabilities and attributes of its other channels.
  • A fixture places a fixture type in your production by locating it within a specified range of channels
  • Robotic presets enable you to set all or some of your robotic fixtures and channels to a particular state.
  • Robotic events are cue events which can perform various robotic functions.

The following sections describe robotic support in detail.


Fixture Types

Overview

Fixture types describe a fixture's movement capabilities and the behaviour of its channels. To create or edit fixture types, select Fixtures | Edit Types... in the Robotic tool.

Each fixture type is stored as a separate file in the Robotic sub-directory of PCStage's installation directory; its name is as shown in the Fixture Types dialog with the suffix '.fix'. You could therefore place fixture type files obtained from elsewhere in this directory, and they will be recognised when PCStage is next started. These files are created, deleted and renamed directly from this dialog, with no Cancel button to discard changes made.

Note: Version 4 (and later) fixture type files are not compatible with those used by Version 3 of PCStage.

Components

A fixture type contains information about its movement capabilities (if any), and any other channels which it supports. Each channel can contain any number of ranges, which specify the fixture's behaviour when that channel's level falls within its limits.

Marking a range as variable indicates that the fixture's behaviour changes as the channel level moves across the range, rather than remaining the same. For example, a brightness range would be variable, whereas a simple colour selection range would not. When a range is variable, the user is able to specify a level within the range when viewing and setting the channel level. For non-variable ranges, the centre of the range is always used.

PCStage supports two-channel (16-bit) pan and tilt positioning, but will use single-channel positioning if fine pan and tilt channels are not specified.

Editing

The Edit Fixture Type dialog enables you to set general and movement parameters (specify whether the fixture is moveable, and enter pan/tilt channels) and create channels and ranges within those channels.

If a channel's Percent checkbox is checked, the minima and maxima of its ranges will be interpreted as percentages rather than absolute DMX values. Unchecking Visible will prevent the channel from being displayed in the Robotic tool, but it will still be settable by other means.


Fixtures

Overview

A fixture represents an actual fixture in your production, and is created and edited by selecting Fixtures | Edit Types... A fixture's attributes are its name, type, base channel number (address) and a flag specifying whether it is visible in the Robotic tool. Even if not visible, it is still active.

Robotic Tool Display

A fixture is shown in the Robotic tool as a column of small panels. The top panel is for movement (if supported by the fixture), and the rest are for the fixture's other channels. Channel panels show and enable you to set the current range and (if variable) level between that range's minimum and maximum; the range level uses a 00-FF percentage scale, and does not indicate the actual channel level.

To move a fixture, click and drag on the large crosshair in the movement panel; holding down the Shift key while doing this will result in much finer movement. The menu invoked from within the position panel has two selections:

  • Mouse Behaviour enables you to set the sensitivity of mouse movement on both axes, and optionally invert (reverse) either, or swap them, to produce intuitive mouse control. These atttributes are saved as part of the fixture in a production.
  • Position allows you to specify a fixture's position directly by entering pan and tilt levels.

If the 'X' toggle in a fixture's movement panel is active (shown red), the relevant channels will be turned off, allowing full control of them by non-robotic desks. This is useful when you wish to apply chasers or other control mechanisms to the fixture's movement.

You can view all fixtures of a particular type together by selecting Fixtures | Compressed View. This places their title buttons in a vertical stack, and only the panel for the last of them remains visible.


Robotic Presets

Robotic presets are analogous to standard presets, in that they specify the state of the fixtures in your production, and can be loaded by cues. However, they are rather more complex, since they store position and channel states of fixtures rather than a simple set of channel levels. A production's robotic presets listed on the left of the Robotic tool, and edited using the Presets menu.

Individual fixtures can be excluded from a robotic preset, as can individual channels of included fixtures, by clearing the unlabelled checkboxes which appear in fixture columns and each of their panels. Excluded fixtures and channels are not affected when the preset is loaded.

Unlike standard presets, robotic presets are reliant on the continued presence of the fixtures and their channels which existed when they were created, since they refer to these by name. If any part of a robotic preset refers to a fixture, fixture type channel or channel range which no longer exists, an error message will appear when it is loaded. However, all unaffected parts of the preset will still be loaded. A production integrity check will warn you of such problems.


Multi-Track Wave Audio

PCStage includes a Wave Audio mixer which can play mono or stereo wave and MP3 files. The only file format restriction is that compressed wave files are not supported - uncompressed files are generally referred to as being in "plain PCM" or "Windows PCM" format. You must have Version 5 or later of Microsoft's DirectX installed on your PC, and for MP3 support the file mp3dec.dll, included in the PCStage installation, must be present.

The mixer is extremely flexible. Rather than using a fixed set of tracks, you create the tracks needed for each production (as many as you wish) and set their properties:

  • Name: The name of the track, which is used by cue audio events to specify the track(s) they affect.
  • Device: The audio device that will play the track's sounds. Your PC may have more than one soundcard, or a card which offers multiple devices. Primary Sound Driver is the default playback device, selected in the Control Panel's Sounds and Multimedia applet.
  • Pan: The relative volume of the left and right channels when sounds are played. This is equivalent to the Balance control on a hi-fi amplifier. The left or right channel can be used alone by setting Pan to the extreme left or right.
  • Level: The volume of the track, expressed in decibels. 0db is the maximum level, so lower levels have negative values.

To set a track's Name and Device, select Edit from the Track menu or double-click the track's title text. Level and Pan are set interactively using sliders, and can also be changed by audio events. If the device used by a track does not exist or cannot be opened, the title bar is displayed with a red background.

Although audio events are used to play and control wave audio in sync with your production's cues, the Wave Audio tool can also be used to manually perform these tasks and monitor wave audio activity. Each audio track has its own transport buttons, volume control and Loop toggle; the 'All' transport buttons affect all tracks simultaneously.

Note that it's possible for combined tracks to generate such a high level that your soundcard's output clips, which causes a crackling or spitting sound. Reduce the level of each track to avoid this, or reduce the overall wave audio volume in the Windows Audio Mixer applet (opened by clicking Mixer...).

In Preferences you can determine whether PCStage takes complete control of audio devices (Exclusive) or attempts to share them gracefully with other programs. Precisely how these modes operate in practice depends on these other programs.

You can stop PCStage's wave audio output at any time by clicking the Stop Audio button in the control area.


MIDI Support

Overview

The aim of PCStage’s MIDI support is to enable PCStage to act as either the master, a slave or a combination of both in a MIDI-driven production environment. Incoming MIDI messages can be used as trigger events or to control faders, and MIDI events are used to send messages to other MIDI devices when cue activity occurs. MIDI input and output devices and channels are selected in the Preferences dialog; the default devices chosen in the Windows Control Panel are not used.

Response to incoming MIDI messages can be disabled from the Control | Enabled submenu; however, the input MIDI device remains open.

The MIDI tool's Monitor tab logs all non-system incoming and outgoing messages, regardless of whether they cause any activity in PCStage.

Fader Mapping

The Fader Map tab of the MIDI tool enables you to link faders to the values or velocities contained in MIDI messages. For each entry you can specify a cue filter (see triggers) and a scale and offset to apply to the 0-127 MIDI value. The default scale of 255 maps this range to the 0-255 range of actual fader levels.

You must also specify the desk to which fader mapping applies.


Commands

This appendix describes the commands supported by PCStage.

Command Macros

A command macro is a text file which contains a sequence of commands to be executed. Each command must be on a separate line. Comment lines are permitted, and must begin with a '#' character at the start of the line. Blank lines are ignored.

A macro is executed with the command @filename; PCStage locates the file using the file paths mechanism. If a command within a macro fails the macro is aborted and an error message is displayed.

Command Parameters

The following conventions are used when describing commands parameters:

  • Fields enclose in angle brackets (<>) stand for user-supplied parameters
  • Fields separated by vertical bars (|) indicate a choice of options
  • Fields enclosed in square brackets ([ ]) are optional

Where wildcards are indicated as supported for a command parameter, filename conventions are used: '*' matches any group of characters, and '?' matches any single character.

Any command parameters which contain spaces must be enclosed in double quotes.

Where numeric values are available for substitution into command parameters, they are specified by using
%<index>[:<scale>[:<offset>]]
where <index> is the index of the value (1, 2 etc), <scale> is a maximum to which it should be scaled (default 255) and <offset> is added to the result (default 0).

Supported Commands

Activate brings PCStage to the front of any windows that are obscuring it, and restores it if minimised.

Blackout [|*] sets all faders in the specified desk off. If '*' (asterisk) is specified this is done to all desks; if no desk is given, to the current desk only.

ChannelsFull [<desk>] sets all channel faders to full in the specified desk, or the current desk if not given.

Cue Edit|Locked|UseSelectedPreset|New|Clone|Delete|Cut|Copy|Paste [Before|After] emulates action of selecting these commands from the Cue menu. By default a new cue is created after the current cue, but 'Before' can be specified to change this behaviour.

Display Desk <name> causes PCStage to display a named item of the given type. Currently only desks are supported.

Exit closes PCStage.

Help [<cmd>] replies with the parameter specification of the given command, or a list of all commands if omitted. This is intended to provide basic a basic help in the Command Console. If there is a discrepancy between its reply and this page, the reply is more likely to be up-to-date and correct.

Fade [Fwd | Back | JumpFwd | JumpBack | Pause | Break] [<desk>] gives direct access to the fade control buttons. Since the Jump Forward and Break buttons are mutually exclusive, specifying either button presses the button which is actually visible i.e. they are equivalent. If no button parameter is given Fwd is assumed. If no desk is specified, the current desk is assumed.

FadeCue [Prev | Next | First | Last | <ID> | <name>] [<desk>] begins a fade to the specified cue. This can be the previous, next, first or last cue in the desk, or a cue or specified ID or name. If the parameter is a valid number it is assumed to be a cue ID. If no cue is given, Next is assumed; if no desk is specified, the current desk is assumed.

FadePreset <preset> [<desk>] [<uptime>] [<downtime>] begins a fade to the specified preset on the specified desk (default is first desk). <uptime> and <downtime> can be a single number, for a simple fade, or three numbers separated by slashes (/), as shown in cue sheets, if wait and hold times are also desired. If not specified, downtime defaults to the same as uptime; if neither is specified, the default is 5 seconds. Fractional seconds are supported, with a resolution of 0.1 sec.

FadeRoboticPreset <preset> [<time>] begins a fade to the specified robotic preset. <time> is specified in seconds, with a resolution of 0.1 sec; if not given, the default is 5 seconds.

<uptime> and <downtime> can be a single number, for a simple fade, or three numbers separated by slashes (/), as shown in cue sheets, if wait and hold times are also desired. If not specified, downtime defaults to the same as uptime; if neither is specified, the default is 5 seconds. Fractional seconds are supported, with a resolution of 0.1 sec.

Flash Solo | Boost | Mute | Off <fader> [<level>] provides several variations on standard 'solo' button functionality. A fader must be specified, and an optional fader level, as a percentage, can also be given. The four options are:

  • Solo: The specified fader is forced to the higher of its current level and the given level (which defaults to 100), and all other faders are forced off.
  • Boost: As for solo, except that no other faders are affected.
  • Mute: The specified fader is forced to the lower of its current level and the given level, which defaults to 0.
  • Off: Any current flash is cancelled.

Flash Off is typically assigned to the up transition of all trigger keys and buttons which execute a Flash command on their down transition.

LoadCue is identical to FadeCue (see above) except that the cue is loaded immediately, with no crossfade.

LoadPreset <name> [<desk>] loads the named preset if it exists. If no desk name is given, the current desk is assumed.

LoadProd [<filename>] loads the specified production file. If no filename is given an error message is returned.

MoveFader <fader> <level> [<desk>] moves the specified fader by the specified amount (positive or negative) in the fader's scale units. If no desk name is given the current desk is assumed.

NewPresetOrCue [Before] creates a new preset or cue, depending on whether the preset or cue sheet has focus in the main window. If neither has focus, an error is generated. If creating a cue, 'Before' can be specified to create the cue before the current cue instead of after it, which is the default.

Panic performs the same function as clicking the Panic button in the Control Area.

Preset Save|Rename|New|Clone|Delete|Cut|Copy|Paste|Locked|Panic|Sort emulates the selection of these commands from the Preset menu.

PressButton <button> [Up] emulates the press or release (if 'Up' is specified) of a trigger button. It is intended for use by PCStage clients which provide alternatives to gameport button support. <button> can be any button number from 1 upwards.

Robotic <preset> | <fixture> <pan> <tilt> | <fixture> <channel> <range> [<level>] loads a robotic preset, sets the position of a fixture to the specified pan and tilt or sets a fixture channel to the specified range. Multiple fixtures can be specified with wildcards.

SetChaserSpeed <speed> sets the master chaser speed. Either a floating-point value from 0.25 to 4.0 (a decimal point must be included) or an integral value from 0-255 is accepted for <speed>.

SetChasersState <chaser(s)> [Forward|Reverse|Pause] sets the state of the specified chaser(s) as indicated. Wildcards can be used to specify multiple chasers.

SetChasersTime <chaser(s)> <time> sets the step time of one or more timed-step chasers. Wildcards can be used to specify multiple chasers. <time> is specified in milliseconds.

SetFader <fader> <level> [<desk>] sets the specified fader to the specified level in the fader's scale units. If no desk name is given the current desk is assumed. In addition to desk faders, 'M' can be specified to set the master level fader.

SetFaderList <faders>@<level> [<desk>] enables you to set any subset of the available faders to the specified level. The faders are specified as in fader manual level entry.

StepChasers <chaser(s)> steps one or more chasers configured for manual stepping. Wildcards can be used to specify multiple chasers.

SyncChasers <chaser(s)> steps and sets the tempo of one or more chasers configured for timed stepping. Wildcards can be used to specify multiple chasers. It is equivalent to clicking the Chaser Tool's Tap Sync button.

Command Options

All commands support the following options, which can appear anywhere amongst their parameters:

  • -cf<cue ID list> provides a cue filter, as found in triggers. The command will be executed only if the first desk's current cue is included in the filter. This option is intended promarily for use by plugins.


Command Line Parameters

The following parameters can be passed to PCStage via its command line when run:

  • The filename of a production to load
  • One or more switches which modify PCStage's behaviour

None of these are required, and they can be specified in any order.

A switch begins with a dash, and its case does not matter. The switches supported are:

  • -autorun causes the production loaded at startup (if any) to begin running from the first cue immediately
  • -nogame prevents use of the gameport to detect button activity. It is intended for use when an external PCStage client is being used to execute the PressButton command instead.

An example command line would be: PCStage -autorun prod.pcs

The manner in which parameters are specified depends on how PCStage is being invoked. If from the Start menu, right-click on the PCStage item, select Properties from the popup menu and append them to the contents of the Target edit box.


Gameport Trigger Buttons

Although a PC's gameport has only four joystick button connections, PCStage can use combinations of these buttons to simulate up to fifteen separate buttons. The limitation this imposes is that only one button can be pressed at a time.

Diodes are used to generate the required combinations; the type of diode used is unimportant. To connect the desired buttons, simply follow this schematic; any of the buttons and their connected diodes can be omitted, of course.


Keyboard Shortcuts

These are the keyboard shortcuts supported by PCStage. Note that any of them can be overriden by key triggers

Main window menu shortcuts:

  • Ctrl+O: Prompt the user for a production file to open
  • Ctrl+S: Save the current production
  • Ctrl+Z: Undo last desk (cue or preset) edit operation
  • Ctrl+N: Create a new cue or preset
  • Ctrl+Del: Delete the selected cues or presets
  • Ctrl+X: Cut the selected cues or presets
  • Ctrl+C: Copy the selected cues or presets
  • Ctrl+V: Paste the selected cues or presets
  • Ctrl+B: Blackout all desks
  • F1: Display online help

When a shortcut applies to cues or presets, it acts on cues if the cue sheet has the focus, and on presets if the preset sheet has the focus. When focused, these areas have a white background in the standard Windows colour scheme.

A number of shortcuts are supplied as Application triggers with PCStage, which you are free to view, change, delete or add to by selecting PCStage | Triggers... However, others are hard-coded into PCStage, and apply only when certain panels or windows have the keyboard focus. Note that these will be overriden by triggers which use the same keystrokes.

When the fader Panel has focus:

  • Cursor Up & Down: Raise & lower selected fader(s) by 1 unit
  • Page Up & Down: Raise & lower selected fader(s) by 10 units
  • Cursor Left & Right: Move single fader selection left & right
  • 0-9 (main keypad): Set selected fader(s) to 0,10,20...90 units
  • F: Set selected fader(s) fully on
  • Numeric Keypad: Set selected fader(s) to entered value


Production File Format

Warning: The production files used by PCStage are plain text and hence can be examined or edited with any text viewer or editor. Although it is possible and sometimes useful to edit production files yourself, a production can easily be corrupted and made unloadable. Be certain that you have a backup copy of any important production file before editing it by hand.

Production files have a nested block format, with matching indenting of the header and END marker of each block. Although the indenting does not normally matter to PCStage, it uses it when skipping unknown blocks, so you should preserve it. Blocks can contain other blocks and data tags, which are followed by a comma and one or more values separated by commas.

If a string associated with a data tag contains spaces or commas, it must be enclosed in double quotes.


Windows Resources

If you are running Windows 95, 98 or ME there are limits on the resources available to running programs. By default, PCStage does not destroy secondary windows (tools and dialogs) when they are closed, because it's slower to recreate them each time they're used, and any internal settings (item selected in a list etc) would be lost. As a result, the resources these windows use are not freed until PCStage is closed.

You can force PCStage to destroy windows when they're closed, thus freeing their resources, by selecting Miscellaneous | Free Windows Resources...' in Preferences.


Troubleshooting

This appendix will try to help you solve, or at least identify, hardware and software problems you may encounter with PCStage. If you are unable to solve your problem, please see Contact Details for ways to get help.

Error message "Unable to locate a DLL" or similar when starting PCStage

As of V4.2, PCStage requires runtime library files which are available from the PCStage website.

Warning message "Features requiring a device driver..."

You should never see this message in Windows 95/98/Me. In Windows NT/2000/XP, if you continue to see this warning after running ntdriver.exe (as per the instructions in the dialog), or see it again after rebooting, please seek assistance.

Warning: "Support for HTML Help is missing..." when started

Windows 95 and NT may lack the component which supports HTMLHelp. Installing a recent version of Internet Explorer (V4 or later) will install this component.

PCStage crashes when started

In general, this is caused by invalid settings in the PCStage.ini file, found in PCStage's installation directory. If renaming this file and starting PCStage is successful, please send the file to the author for study.

If you are running Windows 95 or an early version of Windows NT, certain components of Windows may be too old. Installing a recent version of Internet Explorer (V4 or later) will update these components.

PCStage crashes while running

Make a note of what you were doing when the crash occurred, and see whether it's repeatable. You should be prompted to generate a bug report - please do so and seek help from the author.

Cannot play multi-track audio

  • You don't have DirectX 5 or later installed
  • Your sound card doesn't have a DirectSound driver
  • Another program is already using your sound card exclusively.

Cannot play MP3 file

  • Your MP3 is in a format unsupported by PCStage's MP3 decoder
  • The decoder mp3dec.dll is not in the PCStage directory or anywhere in the system path list. Please locate the file or re-install PCStage.

No DMX output

  • You haven't selected the correct interface in the DMX tab of Preferences. Note that on some PCs LPT1: may be at the address normally used for LPT2:, so try that setting too.
  • The plugpack's connection polarity is wrong – neither of the front-panel LEDs will be properly lit.

Erratic or Incorrect DMX output

  • Parallel port interface: The parallel port cable is too long (over 2m/6ft) or the plugpack voltage is too low - it should be 9-12VDC.
  • Parallel Port interface: Another device, probably a printer driver, is trying to use the port.
  • The Master Level fader is not set correctly.
  • Soft-patch settings are not at their defaults.

It's easier to diagnose stable but incorrect DMX output using the Dimmer Mimic tool, which shows you the DMX levels that PCStage is sending to the output interface.

Numeric keypad doesn't work correctly

You must turn on the Num Lock LED on your keyboard using the Num Lock key. Some BIOSes allow you to specify that Num Lock be enabled when the PC is booted.


Release Notes

This section documents the changes in recent releases of PCStage

Added robotic channel speed limiting

Changed fade target sheet colour to green if cue has "next" flag set

Shift-drop-preset on cue sheet inserts new cue

Support full fade control symmetry for fade to prev cue

Moved TCP server support to plugin

V4.3.1 BETA 1 released

Fixed CD tool ffwd/rewind positioning

Added "stop at track end" option to CD tool

Added 'ALL' value for MIDI input channel

Added audio out prefs option (priority/shared/none)

Added auto start minimized support for plugins

V4.3.2 BETA 2 released (private to Jim only)

Added advanced editor

V4.3.2 BETA 3 released

Prevent user from deleting chars in time edit, which causes
validation error exceptions that I can't see how to trap.

Fixed bug causing crash when adding new robotic fixture

Moved cue position saving to prefs

Force reload after crash (regardless of prefs setting)

Added chaser and cue fade time replace commands to advanced editor

V4.3.2 BETA 4 released

Added support for multiple audio devices

Fixed display of loaded robotic preset variable levels

Added edit limiting and integrity checking of percent/actual
range limits

Fixed anchoring of speed limit enable/indicator in robotic tool

Enabled 'next' cue flag when fading to earlier cue

Added cue report to CSV file

V4.3.2 BETA 5 released

Added report dialog

Added fader and patch reporting

Fixed possible incorrect wave audio event text

V4.4.0 released


Cue Editor

Overview

The cue editor enables a cue's properties to be set or edited. Since it is a tool, you can leave it open after editing a cue, and each time a cue is selected or loaded it will automatically be loaded into the cue editor. Although this requires a little extra work from PCStage, it has no effect on your production.

The cue editor differs from other editing tools in that changes made in it are not 'live' - that is, not immediately reflected in your production. You must click Apply to update the cue sheet with your changes (OK applies changes, then closes the editor). If the cue being edited is locked, a red indicator appears to indicate this; you can unlock the cue in the main window in order to save changes. The left and right arrow buttons next to Apply save the changes, then edit the previous or next cue.

Unless it is also the current cue, the cue being edited is displayed with a yellow highlight in the cue sheet.

Unsaved Cue Changes

As with unsaved presets, PCStage can deal with editor changes which are unsaved when you select or load a different cue (or select another desk) in several ways. Its behaviour is determined by the Preset Changes setting in Preferences:

  • Prompt: You will be prompted to save or discard the changes, or abort the action (Cancel) which triggered the prompt.
  • Save: Always save the cue
  • Discard: Never save the cue

These options apply only in design mode. In run mode, unsaved cue editor changes are always discarded.

Editor Operation

The cue editor is divided into two areas: An editing panel on the right, and a tree of entries on the left for selecting these panels. The General and Fade entries exist for all cues, while the Pre Events and Post Events have no associated panel.

The controls on the General and Fade pages which set time periods can be set either with the increment and decrement buttons above and below them, or by typing a time directly into them.

When an Events entry is selected, you can create new cue events under each of them with the New button, which invokes a popup menu from which you can select an event type. Events can be moved up or down within their list, or dragged from one list to the header entry of the other to transfer them between the two lists. When used, the events in a list are executed in the order seen here, which is generally not important.