mirror of
https://github.com/SDL-Hercules-390/hyperion.git
synced 2026-04-16 08:55:23 +02:00
1018 lines
35 KiB
HTML
1018 lines
35 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 3.0//EN" "html.dtd">
|
|
<HTML>
|
|
<HEAD><TITLE>
|
|
Hercules Version 4: Installation and Operation</TITLE>
|
|
<LINK REL=STYLESHEET TYPE="text/css" HREF="hercules.css">
|
|
</HEAD>
|
|
<BODY BGCOLOR="#ffffcc" TEXT="#000000" LINK="#0000A0"
|
|
VLINK="#008040" ALINK="#000000">
|
|
|
|
<h1>Hercules Version 4: Installation and Operation</h1>
|
|
|
|
<p><hr>
|
|
|
|
<h2>Contents</h2>
|
|
<blockquote>
|
|
<p>
|
|
<a href="#install">Installation Procedure</a>
|
|
<ul>
|
|
<li><a href="#instsource">Building from source</a>
|
|
<li><a href="#instbinary">Pre-built binaries</a>
|
|
</ul>
|
|
</p>
|
|
<p>
|
|
<a href="#config">Configuration Procedure</a>
|
|
</p>
|
|
<p>
|
|
<a href="#dasd">Creating DASD volumes</a>
|
|
</p>
|
|
<p>
|
|
<a href="#operating">Operating Procedure</a>
|
|
<ul>
|
|
<li><a href="#arguments">Command line arguments</a>
|
|
<li><a href="#keyboard">Using the keyboard</a>
|
|
<li><a href="#commands">Panel commands</a>
|
|
<li><a href="#RCFILE">The .RC ("run commands") file</a>
|
|
<li><a href="#HAO">HAO ("Hercules Automatic Operator")</a>
|
|
</ul>
|
|
</p>
|
|
|
|
<p>
|
|
<a href="#support">Technical Support</a>
|
|
</p>
|
|
</blockquote>
|
|
|
|
<p><hr><a name="install"></a>
|
|
<h2>Installation Procedure</h2>
|
|
<a name="instsource"></a>
|
|
<h3>Building from source - Windows</h3>
|
|
<ol>
|
|
<li>Download the
|
|
<a href="https://github.com/hercules-390/hyperion/archive/master.zip">source code .ZIP file</a>
|
|
from Github.
|
|
<br><em>Note:</em> By downloading this file you agree to the terms
|
|
of the <a href="herclic.html">Q Public Licence</a>.
|
|
<br />
|
|
<br />
|
|
<li>
|
|
Hercules for Windows is built using the Microsoft Visual C (MSVC) compiler.<br />
|
|
Refer to file <a href="https://github.com/hercules-390/hyperion/blob/master/README.WIN64">README.WIN64</a> for details.
|
|
Note: Fish also has instructions<br />
|
|
on his <a href="http://www.softdevlabs.com/hercules-msvc-build.html">MSVC Hercules Build Instructions</a> web page.<br /><br />
|
|
|
|
</ol>
|
|
</p>
|
|
|
|
|
|
<h3>Building from source - Mac OS X</h3>
|
|
<ol>
|
|
<li>Install <b>Xcode</b> from the
|
|
<a href="http://itunes.apple.com/app/xcode/id497799835">
|
|
App Store</a>.
|
|
<br />
|
|
<br />
|
|
<li>Install <b>Homebrew</b> using the procedure described
|
|
at <a href="http://brew.sh/">http://brew.sh/</a>
|
|
<br />
|
|
<br />
|
|
<li>Use these commands to install pre-requisite software:<br />
|
|
<br><code>brew install autoconf</code>
|
|
<br><code>brew install automake</code>
|
|
<br><code>brew install gnu-sed</code>
|
|
<br><code>automake --add-missing</code>
|
|
<br />
|
|
<br />
|
|
<li>Proceed with <i>Building from source - Linux and Mac OS X</i> below.<br /><br />
|
|
</ol>
|
|
|
|
<h3>Building from source - Linux and Mac OS X</h3>
|
|
<ol>
|
|
<li>Download the
|
|
<a href="https://github.com/hercules-390/hyperion/archive/master.zip">source code .ZIP file</a>
|
|
from Github.
|
|
<br><em>Note:</em> By downloading this file you agree to the terms
|
|
of the <a href="herclic.html">Q Public Licence</a>.
|
|
<br />
|
|
<br />
|
|
<li>Use these commands to unzip the distribution file:
|
|
<pre>unzip hyperion-master.zip
|
|
cd hyperion-master</pre>
|
|
<li>Verify you have all of the correct versions of all of the
|
|
required packages installed:
|
|
|
|
<p><code>./util/bldlvlck</code>
|
|
|
|
<p><li>Build the ./configure script (recommended):
|
|
|
|
<p><code>sh ./autogen.sh</code>
|
|
|
|
<p>
|
|
Most projects that are built from source do so from the official
|
|
distribution tarball which comes with its own pre-built ./configure
|
|
scipt. When you are building directly from the repository source
|
|
code however, you will need to create (or recreate) it yourself.
|
|
<p>
|
|
Also note you will need to re-run <code>autogen.sh</code> again
|
|
each time the "configure.ac" or "makefile.am" files change. This
|
|
means if you do a "git pull" to update your source with changes
|
|
that were recently made to the repository, you <i>may</i> need
|
|
to recreate your configure script again if either configure.ac
|
|
<i>or</i> makefile.am was updated.
|
|
<p>
|
|
Thus the safest course of action is to <i>always</i> run autogen.sh
|
|
immediately before running ./configure. (see next step below)
|
|
|
|
<p><li>Configure Hercules for your system:
|
|
|
|
<p><code>./configure</code>
|
|
|
|
<p>
|
|
By default, the configure script will attempt to guess appropriate
|
|
compiler optimization flags for your system. If its guesses
|
|
turn out to be wrong, you can disable all optimization by
|
|
passing the <code><nobr>--disable-optimization</nobr></code> option to
|
|
configure, or specify your own optimization flags with
|
|
<code><nobr>--enable-optimization=FLAGS</nobr></code>. For additional configuration
|
|
options, run: <code>./configure <nobr>--help=short</nobr></code>.
|
|
|
|
<br />
|
|
<li>Build the executables: <p><code>make</code>
|
|
|
|
<p><li>(Optional) Install the programs: as root: <p><code>make install</code><br />
|
|
</ol>
|
|
|
|
<em>Important:</em>
|
|
You must use at least version 3.00 of the gcc compiler and the glibc2 library.
|
|
Refer to the <a href="hercfaq.html#3.04">
|
|
Hercules Frequently-Asked Questions</a> page for required
|
|
compiler and other software levels.<br /><br />
|
|
|
|
<a name="instbinary"></a>
|
|
<h3>Installing pre-built binaries for Windows:</h3>
|
|
<ol>
|
|
<li>Download one of the
|
|
<a href="http://www.softdevlabs.com/hyperion.html#prebuilt">pre-built binaries</a>
|
|
from <a href="http://www.softdevlabs.com">SoftDevLabs</a>.
|
|
<br />
|
|
<br />
|
|
<li>(Optional) You might also want to install Fish's
|
|
<a href="http://www.softdevlabs.com/hercgui">Hercules GUI for Windows</a>.<br /><br />
|
|
</ol>
|
|
|
|
<p><hr><a name="config"></a>
|
|
<h2>Configuration Procedure</h2>
|
|
<p>
|
|
You will need to amend the configuration file
|
|
<em><b>hercules.cnf</b></em> to reflect your device layout and intended
|
|
mode of operation (S/370, ESA/390, or z/Architecture).
|
|
See the <a href="hercconf.html">Hercules Configuration File</a> page for
|
|
a complete description.
|
|
|
|
<p><hr><a name="dasd"></a>
|
|
<h2>Creating DASD volumes</h2>
|
|
<p>
|
|
The <a href="hercload.html">Creating Hercules DASD</a> page
|
|
describes various methods of creating and loading virtual DASD
|
|
volumes. The compressed CKD DASD support is described in <a
|
|
href="cckddasd.html">this page</a>.
|
|
|
|
<p><hr><a name="operating"></a>
|
|
<a name="arguments">
|
|
<h2>Operating Procedure</h2>
|
|
<p class="warning">
|
|
<em>Note: If you intend to run any licensed software on your PC
|
|
using Hercules, it is your responsibility to ensure that you do not
|
|
violate the software vendor's licensing terms.</em>
|
|
|
|
<h4>Command line arguments</h4>
|
|
<p>
|
|
To start Hercules enter this command at the host's command prompt:
|
|
<blockquote><code><pre>
|
|
hercules [ -f <em>filename</em> ] | [ --config=<em>filename</em> ]
|
|
[ -r <em>rcfile</em> ] | [ --rcfile=<em>rcfile</em> ]
|
|
[ -b <em>logofile</em> ] | [ --herclogo=<em>logofile</em> ]
|
|
[ -d ] | [ --daemon ]
|
|
[ -p <em>dyndir</em> ] | [ --modpath=<em>dyndir</em> ]
|
|
[ -l <em>modname</em> ] ... | [ --ldmod=<em>modname</em> ] ...
|
|
[ -s <em>symbol=value</em> ] ... | [ --defsym=<em>symbol=value</em> ] ...
|
|
[ -v ] | [ --verbose ]
|
|
[ -h ] | [ --help ]
|
|
[ > <em>logfile</em> ]
|
|
</pre></code>
|
|
</blockquote>
|
|
<p>
|
|
where:
|
|
<blockquote>
|
|
<dl>
|
|
<dt><code><em>filename</em></code><p><dd>
|
|
|
|
is the name of the configuration file.
|
|
The default, if none is specified, is <b><em>hercules.cnf</em></b>.
|
|
The default may be overridden via the <code>HERCULES_CNF</code>
|
|
environment variable.
|
|
<p>
|
|
<dt><code><em>rcfile</em></code><p><dd>
|
|
|
|
is the name of the Hercules <a href="#RCFILE">.RC run commands file</a>.
|
|
The run commands file automatically executes panel commands upon startup.
|
|
<p>
|
|
<dt><code><em>logofile</em></code><p><dd>
|
|
|
|
is the name of the Hercules logo file. The logo file is the
|
|
initial welcome screen presented when a TN 3270 terminal connects
|
|
to a hercules 3270 device.
|
|
<p>
|
|
<dt><code><em>-d</em></em></code><p><dd>
|
|
|
|
specifies that Hercules is to be run in 'daemon' mode,
|
|
wherein it runs invisibly with no attached console.
|
|
<p>
|
|
<dt><code><em>dyndir</em></code><p><dd>
|
|
|
|
is the directory from which dynamic modules are to be loaded.
|
|
The default depends on the host platform on which Hercules
|
|
is being run. This option overrides the default.
|
|
<p>
|
|
<dt><code><em>modname</em></code><p><dd>
|
|
|
|
is the name of an additional dynamic module to be loaded
|
|
at startup. More than one additional module may be specified,
|
|
although each must be preceded with the <code>-l</code>
|
|
option specifier.
|
|
<p>
|
|
<dt><code><em>symbol=value</em></code><p><dd>
|
|
|
|
the name of a symbol and its associated value to be used in configuration
|
|
file processing or panel commands. See the command 'defsym'
|
|
for more information on using symbols. The '-s' option may be repeated.
|
|
Note: 'value' may be quoted to contain imbedded blanks.
|
|
<p>
|
|
<dt><code><em>-v</em></code><p><dd>
|
|
|
|
sets the message-level to verbose. This is the same as
|
|
entering the command <code>msglvl +verbose</code>.
|
|
<p>
|
|
<dt><code><em>-h</em></code><p><dd>
|
|
|
|
displays help information regarding the syntax of command-line arguments.
|
|
<p>
|
|
<dt><code><em>logfile</em></code><p><dd>
|
|
|
|
is an optional log file which will receive a copy of
|
|
all messages displayed on the control panel
|
|
<p>
|
|
</dl>
|
|
</blockquote>
|
|
|
|
<p>
|
|
Next connect a tn3270 client to the console port (normally port 3270).
|
|
The client will be connected to the first 3270 device address specified
|
|
in the configuration file (this should be the master console address).
|
|
If your master console is a 1052 or 3215, connect a telnet client
|
|
instead of a tn3270 client.
|
|
|
|
<p>
|
|
Now you can enter an ipl command from the control panel.
|
|
|
|
<p><br>
|
|
<hr width="50%">
|
|
|
|
<a name="keyboard">
|
|
<h4>Using the keyboard</h4>
|
|
<p>
|
|
|
|
The main Hercules screen contains a scrollable list of messages with a command
|
|
input area and system status line at the bottom of the screen.
|
|
<p>
|
|
To scroll through the messages, use either the Page Up or Page Down keys,
|
|
the Ctrl + Up Arrow or Ctrl + Down Arrow keys, or the Home or End and/or
|
|
the Ctrl + Home or Ctrl + End keys.
|
|
<p>
|
|
Use the Insert key to switch between insert and overlay mode when typing in
|
|
the command input area. Use the Home and End keys to move to the first or
|
|
last character of the command you are typing, or the use the left/right arrow keys
|
|
to move to a specific character. Use the Escape key to erase the input area.
|
|
<p>
|
|
Pressing Escape when the command input area is already empty causes the screen
|
|
to switch to the semi-graphical "New Panel" display mode, which shows the overall
|
|
status of the system and devices.
|
|
<p>
|
|
When in the semi-graphical "New Panel" display mode there is no command input
|
|
area. Instead, single character "hot keys" are used to issue some of the more
|
|
common functions such as starting or stopping the CPU. The hot-keys are those
|
|
which are highlighted. Pressing the '?' key displays brief help information
|
|
on how to use the semi-graphical panel.
|
|
<br /><br />
|
|
|
|
<TABLE border=1 cellpadding=5 align="center" width="70%">
|
|
|
|
<THEAD>
|
|
|
|
<TR>
|
|
<TH colspan=2><big>Normal cursor handling</big>
|
|
</TH>
|
|
</TR>
|
|
|
|
<TR>
|
|
<TH width="25%">Key</TH>
|
|
<TH>Action</TH>
|
|
</TR>
|
|
|
|
</THEAD>
|
|
|
|
<TBODY>
|
|
|
|
|
|
<TR>
|
|
<TD>
|
|
Esc
|
|
</TD>
|
|
<TD>
|
|
Erases the contents of the command input area.
|
|
If the command input area is already empty,
|
|
switches to semi-graphical New Panel.
|
|
</TD>
|
|
</TR>
|
|
|
|
|
|
<TR>
|
|
<TD>
|
|
Del
|
|
</TD>
|
|
<TD>
|
|
Deletes the character at the cursor position.
|
|
</TD>
|
|
</TR>
|
|
|
|
|
|
<TR>
|
|
<TD>
|
|
Backspace
|
|
</TD>
|
|
<TD>
|
|
Erases the previous character.
|
|
</TD>
|
|
</TR>
|
|
|
|
|
|
<TR>
|
|
<TD>
|
|
Insert
|
|
</TD>
|
|
<TD>
|
|
Toggles between insert mode and overlay mode.
|
|
</TD>
|
|
</TR>
|
|
|
|
|
|
<TR>
|
|
<TD>
|
|
Tab
|
|
</TD>
|
|
<TD>
|
|
Attempts to complete the partial file name at the
|
|
cursor position in the command input area. If more
|
|
than one possible file exists, a list of matching
|
|
file names is displayed.
|
|
</TD>
|
|
</TR>
|
|
|
|
|
|
<TR>
|
|
<TD>
|
|
Home
|
|
</TD>
|
|
<TD>
|
|
Moves the cursor to the start of the input in the
|
|
command input area. If the command input area is
|
|
empty, scrolls the message area to the top.
|
|
</TD>
|
|
</TR>
|
|
|
|
|
|
<TR>
|
|
<TD>
|
|
End
|
|
</TD>
|
|
<TD>
|
|
Moves the cursor to the end of the input in the
|
|
command input area. If the command input area is
|
|
empty, scrolls the message area to the bottom.
|
|
</TD>
|
|
</TR>
|
|
|
|
|
|
<TR>
|
|
<TD>
|
|
Page Up
|
|
</TD>
|
|
<TD>
|
|
Scrolls the message area up one screen.
|
|
</TD>
|
|
</TR>
|
|
|
|
|
|
<TR>
|
|
<TD>
|
|
Page Down
|
|
</TD>
|
|
<TD>
|
|
Scrolls the message area down one screen.
|
|
</TD>
|
|
</TR>
|
|
|
|
|
|
<TR>
|
|
<TD>
|
|
Up arrow
|
|
</TD>
|
|
<TD>
|
|
Recalls previous command into the input area.
|
|
</TD>
|
|
</TR>
|
|
|
|
|
|
<TR>
|
|
<TD>
|
|
Down arrow
|
|
</TD>
|
|
<TD>
|
|
Recalls next command into the input area.
|
|
</TD>
|
|
</TR>
|
|
|
|
|
|
<TR>
|
|
<TD>
|
|
Right arrow
|
|
</TD>
|
|
<TD>
|
|
Moves cursor to next character of input area.
|
|
</TD>
|
|
</TR>
|
|
|
|
|
|
<TR>
|
|
<TD>
|
|
Left arrow
|
|
</TD>
|
|
<TD>
|
|
Moves cursor to previous character of input area.
|
|
</TD>
|
|
</TR>
|
|
|
|
|
|
<TR>
|
|
<TD>
|
|
Ctrl + Up arrow
|
|
</TD>
|
|
<TD>
|
|
Scrolls the message area up one line.
|
|
</TD>
|
|
</TR>
|
|
|
|
|
|
<TR>
|
|
<TD>
|
|
Ctrl + Down arrow
|
|
</TD>
|
|
<TD>
|
|
Scrolls the message area down one line.
|
|
</TD>
|
|
</TR>
|
|
|
|
|
|
<TR>
|
|
<TD>
|
|
Ctrl + Home
|
|
</TD>
|
|
<TD>
|
|
Scrolls the message area to the top.
|
|
</TD>
|
|
</TR>
|
|
|
|
|
|
<TR>
|
|
<TD>
|
|
Ctrl + End
|
|
</TD>
|
|
<TD>
|
|
Scrolls the message area to the bottom.
|
|
</TD>
|
|
</TR>
|
|
|
|
|
|
</TBODY>
|
|
</TABLE>
|
|
|
|
<br /><br />
|
|
The following additional keyboard functions are effective when the
|
|
Hercules Extended Cursor Handling feature (OPTION_EXTCURS) is activated
|
|
at compile time.
|
|
At present, this feature is activated on the Windows platform only:
|
|
<br /><br />
|
|
<TABLE border=1 cellpadding=5 align="center">
|
|
<TABLE border=1 cellpadding=5 align="center" width="70%">
|
|
|
|
<THEAD>
|
|
|
|
<TR>
|
|
<TH colspan=2><big>Extended cursor handling</big>
|
|
</TH>
|
|
</TR>
|
|
|
|
<TR>
|
|
<TH width="25%">Key</TH>
|
|
<TH>Action</TH>
|
|
</TR>
|
|
|
|
</THEAD>
|
|
|
|
<TBODY>
|
|
|
|
|
|
<TR>
|
|
<TD>
|
|
Alt + Up arrow
|
|
</TD>
|
|
<TD>
|
|
Moves cursor up one row.
|
|
</TD>
|
|
</TR>
|
|
|
|
|
|
<TR>
|
|
<TD>
|
|
Alt + Down arrow
|
|
</TD>
|
|
<TD>
|
|
Moves cursor down one row.
|
|
</TD>
|
|
</TR>
|
|
|
|
|
|
<TR>
|
|
<TD>
|
|
Alt + Right arrow
|
|
</TD>
|
|
<TD>
|
|
Moves cursor right one column.
|
|
</TD>
|
|
</TR>
|
|
|
|
|
|
<TR>
|
|
<TD>
|
|
Alt + Left arrow
|
|
</TD>
|
|
<TD>
|
|
Moves cursor left one column.
|
|
</TD>
|
|
</TR>
|
|
|
|
|
|
<TR>
|
|
<TD>
|
|
Tab
|
|
</TD>
|
|
<TD>
|
|
If cursor is outside the command input area,
|
|
moves cursor to the start of the input in the
|
|
command input area.
|
|
Otherwise behaves as described in previous table.
|
|
</TD>
|
|
</TR>
|
|
|
|
|
|
<TR>
|
|
<TD>
|
|
Home
|
|
</TD>
|
|
<TD>
|
|
If cursor is outside the command input area,
|
|
moves cursor to the start of the input in the
|
|
command input area.
|
|
Otherwise behaves as described in previous table.
|
|
</TD>
|
|
</TR>
|
|
|
|
|
|
<TR>
|
|
<TD>
|
|
End
|
|
</TD>
|
|
<TD>
|
|
If cursor is outside the command input area,
|
|
moves cursor to the end of the input in the
|
|
command input area.
|
|
Otherwise behaves as described in previous table.
|
|
</TD>
|
|
</TR>
|
|
|
|
|
|
</TBODY>
|
|
</TABLE>
|
|
|
|
<p>
|
|
|
|
|
|
<a name="commands">
|
|
<h4>Panel commands</h4>
|
|
<p>
|
|
The following is what is displayed on the Hercules harware console (HMC)
|
|
in response to the '?' command being entered. Please note that it may not
|
|
be completely accurate or up-to-date. Enter the '?' command for
|
|
yourself for a more complete, accurate and up-to-date list of supported
|
|
panel commands:
|
|
<p>
|
|
<pre>
|
|
|
|
Command Description
|
|
------- -----------------------------------------------
|
|
!message *SCP priority message
|
|
# Silent comment
|
|
$locate Display sysblk, regs or hostinfo
|
|
$test *Your custom command (*DANGEROUS!*)
|
|
$zapcmd *Enable/disable command (*CAREFUL!*)
|
|
* Loud comment
|
|
.reply *SCP command
|
|
? alias for help
|
|
aea Display AEA tables
|
|
aia Display AIA fields
|
|
alrf Command deprecated: Use "archlvl enable|disable|query asn_lx_reuse" instead
|
|
ar Display access registers
|
|
archlvl *Set Architecture Level
|
|
archmode Alias for archlvl
|
|
asn_and_l Command deprecated: Use "archlvl enable|disable|query asn_lx_reuse" instead
|
|
attach *Configure device
|
|
auto_scsi *Command deprecated - Use "SCSIMOUNT"
|
|
autoinit *Display/Set automatic create empty tape file switch
|
|
automount *Display/Update allowable tape automount directories
|
|
b *Set breakpoint
|
|
b+ Set breakpoint
|
|
b- *Delete breakpoint
|
|
cache *Execute cache related commands
|
|
cachestat Cache stats command
|
|
capping *Set/display capping value
|
|
cckd *cckd command
|
|
cf *Configure current CPU online or offline
|
|
cfall Configure all CPU's online or offline
|
|
clocks Display tod clkc and cpu timer
|
|
cmdlevel *Display/Set current command group
|
|
cmdlvl (alias for cmdlevel)
|
|
cmdsep *Display/Set command line separator
|
|
cmpscpad *Set/display the CMPSC zero padding value.
|
|
cnslport Set console port
|
|
codepage *Set/display code page conversion table
|
|
conkpalv *Display/alter console TCP keep-alive settings
|
|
cp_updt *Create/Modify user character conversion table
|
|
cpu *Define target cpu for panel display and commands
|
|
cpuidfmt Set format BASIC/0/1 STIDP generation
|
|
cpumodel Set CPU model number
|
|
cpuprio Set/Display cpuprio parameter
|
|
cpuserial Set CPU serial number
|
|
cpuverid Set CPU verion number
|
|
cr *Display or alter control registers
|
|
cscript *Cancels a running script thread
|
|
ctc *Enable/Disable CTC debugging
|
|
define *Rename device
|
|
defstore *Define/Display main and expanded storage values
|
|
defsym *Define symbol
|
|
delsym *Delete a symbol
|
|
detach Remove device
|
|
devinit *Reinitialize device
|
|
devlist *List device, device class, or all devices
|
|
devprio Set/Display devprio parameter
|
|
devtmax *Display or set max device threads
|
|
diag8cmd Set diag8 command option
|
|
ds Display subchannel
|
|
dumpdev *Specify bootstrap loader DUMP parameters
|
|
ecps:vm *Command deprecated - Use "ECPSVM"
|
|
ecpsvm *ECPS:VM Commands
|
|
engines Set engines parameter
|
|
evm *Command deprecated - Use "ECPSVM"
|
|
exec *Execute a Rexx script
|
|
exit (Synonym for 'quit')
|
|
ext Generate external interrupt
|
|
fcb *Display the current FCB (if only the printer is given)
|
|
fpc *Display or alter floating point control register
|
|
fpr *Display or alter floating point registers
|
|
f{+/-}adr Mark frames unusable/usable
|
|
g Turn off instruction stepping and start all CPUs
|
|
gpr *Display or alter general purpose registers
|
|
hao *Hercules Automatic Operator
|
|
help *list all commands / command specific help
|
|
herclogo *Read a new hercules logo file
|
|
hercprio Set/Display hercprio parameter
|
|
hst *History of commands
|
|
http *Start/Stop/Modify/Display HTTP Server
|
|
httpport *Command deprecated - Use "HTTP PORT ..."
|
|
httproot *Command deprecated - Use "HTTP ROOT fn"
|
|
hwldr *Specify boot loader filename
|
|
i Generate I/O attention interrupt for device
|
|
iodelay *Display or set I/O delay value
|
|
ipending Display pending interrupts
|
|
ipl *IPL from device or file
|
|
iplc *Command deprecated - use IPL with clear option
|
|
k Display cckd internal trace
|
|
ldmod *Load a module
|
|
legacysen Set legacysenseid setting
|
|
loadcore *Load a core image file
|
|
loaddev *Specify bootstrap loader IPL parameters
|
|
loadparm *Set IPL parameter
|
|
loadtext *Load a text deck file
|
|
locks *Display internal locks list
|
|
log *Direct logger output
|
|
logopt *Set/Display logging options
|
|
lparname *Set LPAR name
|
|
lparnum *Set LPAR identification number
|
|
lsdep List module dependencies
|
|
lsmod List dynamic modules
|
|
mainsize *Define/Display mainsize parameter
|
|
manufactu Set STSI manufacturer code
|
|
maxcpu Set maxcpu parameter
|
|
maxrates *Display highest MIPS/SIOS rate or set interval
|
|
message *Display message on console a la VM
|
|
model *Set/Query STSI model code
|
|
modpath Set module load path
|
|
mounted_t *Control tape initialization
|
|
msg Alias for message
|
|
msglevel *Display/Set current Message Display output
|
|
msglvl Alias for msglevel
|
|
msgnoh Similar to "message" but no header
|
|
mt *Control magnetic tape operation
|
|
numcpu Set numcpu parameter
|
|
numvec Set numvec parameter
|
|
ostailor *Tailor trace information for specific OS
|
|
panrate *Display or set rate at which console refreshes
|
|
pantitle *Display or set console title
|
|
pgmprdos *Set LPP license setting
|
|
pgmtrace *Trace program interrupts
|
|
plant Set STSI plant code
|
|
pr Display prefix register
|
|
psw *Display or alter program status word
|
|
ptp *Enable/Disable PTP debugging
|
|
ptt *Set or display internal trace
|
|
qcpuid *Display cpuid
|
|
qd Query dasd
|
|
qpfkeys Display the current PF Key settings
|
|
qpid Display Process ID of Hercules
|
|
qports Display TCP/IP ports in use
|
|
qproc Display processors type and utilization
|
|
qstor Display main and expanded storage values
|
|
quiet *Toggle automatic refresh of panel display data
|
|
quit *Terminate the emulator
|
|
r *Display or alter real storage
|
|
restart Generate restart interrupt
|
|
resume Resume hercules
|
|
rexx *display Rexx interpreter settings
|
|
rmmod Delete a module
|
|
s *Instruction stepping
|
|
s+ *Instruction stepping on
|
|
s- Turn off instruction stepping
|
|
s? *Instruction stepping query
|
|
savecore *Save a core image to file
|
|
sclproot *Set SCLP base directory
|
|
scpecho *Set/Display option to echo to console and history of scp replys
|
|
scpimply *Set/Display option to pass non-hercules commands to the scp
|
|
script *Run a sequence of panel commands contained in a file
|
|
scsimount *Automatic SCSI tape mounts
|
|
sf+dev Add shadow file
|
|
sf-dev Delete shadow file
|
|
sfc Compress shadow files
|
|
sfd Display shadow file stats
|
|
sfk *Check shadow files
|
|
sh *Shell command
|
|
shcmdopt Set diag8 sh option
|
|
shrd shrd command
|
|
shrdport Set shrdport value
|
|
sizeof Display size of structures
|
|
srvprio Set/Display srvprio parameter
|
|
ssd *Signal shutdown
|
|
start *Start CPU (or printer/punch device if argument given)
|
|
startall Start all CPU's
|
|
stop *Stop CPU (or printer/punch device if argument given)
|
|
stopall Stop all CPU's
|
|
store Store CPU status at absolute zero
|
|
suspend Suspend hercules
|
|
symptom Alias for traceopt
|
|
syncio Display syncio devices statistics
|
|
sysclear *System Clear Reset manual operation
|
|
sysepoch Set sysepoch parameter
|
|
sysreset *System Reset manual operation
|
|
s{+/-}dev Turn CCW stepping on/off
|
|
t *Instruction trace
|
|
t+ *Instruction trace on
|
|
t- Turn off instruction tracing
|
|
t? *Instruction trace query
|
|
timerint *Display or set timers update interval
|
|
tlb Display TLB tables
|
|
toddrag Display or set TOD clock drag factor
|
|
todprio Set/Display todprio parameter
|
|
traceopt *Instruction trace display options
|
|
tt32 *Control/query CTCI-WIN functionality
|
|
tzoffset Set tzoffset parameter
|
|
t{+/-}CKD Turn CKD_KEY tracing on/off
|
|
t{+/-}dev Turn CCW tracing on/off
|
|
u *Disassemble storage
|
|
uptime Display how long Hercules has been running
|
|
v *Display or alter virtual storage
|
|
version Display version information
|
|
xpndsize *Define/Display xpndsize parameter
|
|
yroffset Set yroffset parameter
|
|
|
|
(*) Enter "<a href="#morehelp">help <command></a>" for more info.
|
|
|
|
</pre>
|
|
<p>
|
|
The <em>ipl</em> command may also be used to perform a load from cdrom or
|
|
server. For example if a standard SuSE S/390 Linux distribution CD is loaded
|
|
and mounted on /cdrom for example, this cdrom may then be ipl-ed by:
|
|
<em>ipl /cdrom/suse.ins</em>
|
|
<p>
|
|
The <em>attach</em> and <em>detach</em> commands are used to dynamically
|
|
add or remove devices from the configuration,
|
|
and the <em>define</em> command can be used to alter the device number
|
|
of an existing device.
|
|
<p>
|
|
The <em>devinit</em> command can be used to reopen an existing device.
|
|
The <em>args</em> (if specified) override the arguments
|
|
specified in the configuration file for this device.
|
|
The device type cannot be changed and must not be specified.
|
|
This command can be used to rewind a tape, to mount a new tape or
|
|
disk image file on an existing device, to load a new card deck
|
|
into a reader, or to close and reopen a printer or punch device.
|
|
<p>
|
|
In single-step mode, pressing the enter key will advance to the
|
|
next instruction.
|
|
<p>
|
|
There is also an alternate semi-graphical control panel. Press Esc to
|
|
switch between the command line format and the semi-graphical format.
|
|
Press ? to obtain help in either control panel.
|
|
<p>
|
|
When a command is prefixed with '-', the the command will not be redisplayed at
|
|
the console. This can be used in scripts and is also used internally when commands
|
|
are to be invoked without being redisplayed at the panel.
|
|
|
|
<br /><br />
|
|
<a name="morehelp"></a>
|
|
<b>Additional Command Help</b><br /><br />
|
|
Some commands also offer additional help information regarding their syntax,
|
|
etc. Enter "<tt>help <i><command name></i></tt>" to display
|
|
this additional help information. (Note: not every command supports additional help)
|
|
|
|
<br /><br />
|
|
<hr width="50%">
|
|
|
|
<a name="RCFILE">
|
|
<h4>The hercules.rc (run-commands) file</h4>
|
|
</a>
|
|
<p>
|
|
Hercules also supports the ability to automatically execute panel commands
|
|
upon startup via the 'run-commands' file. If the run-commands file
|
|
is found to exist when Hercules starts, each line contained within it is
|
|
read and interpreted as a panel command exactly as if the command were
|
|
entered from the HMC system console.
|
|
<p>
|
|
The default filename for the run-commands file is "hercules.rc", but may be
|
|
overridden by setting the "<tt><b>HERCULES_RC</b></tt>" environment variable to the
|
|
desired filename.
|
|
<p>
|
|
Except for the 'pause' command (see paragraph further below), each command
|
|
read from the run-commands file is logged to the console preceded by a '> '
|
|
(greater-than sign) character so you can easily distinguish between panel
|
|
commands entered from the keyboard from those entered via the .rc file.
|
|
<p>
|
|
Lines starting with '<tt>#</tt>' are treated as "silent comments" and are
|
|
thus not logged to the console. Line starting with '<tt>*</tt>' however are
|
|
treated as "loud comments" and <i>will</i> be logged.
|
|
<p>
|
|
In addition to being able to execute any valid panel command (including the
|
|
'sh' shell command) via the run-commands file, an additional
|
|
'<tt><b>pause <i>nnn</i></b></tt>' command is supported in order to introduce
|
|
a brief delay before reading and processing the next line in the file. The
|
|
value <tt><i>nnn</i></tt> can be any number from 1 to 999 and specifies the
|
|
number of seconds to delay before reading the next line. Creative use of the
|
|
run-commands file can completely automate Hercules startup.
|
|
|
|
<br /><br />
|
|
<hr width="50%">
|
|
|
|
<a name="HAO">
|
|
<h4>The "Hercules Automatic Operator" (HAO) Facility</h4>
|
|
</a>
|
|
<p>
|
|
The Hercules Automatic Operator (HAO) feature is a facility which can
|
|
automatically issue panel commands in response to specific messages
|
|
appearing on the Hercules console.
|
|
<p>
|
|
To use the Hercules Automatic Operator facility, you first define a "rule"
|
|
consisting of a "target" and an associated "command". The "target" is
|
|
a regular expression pattern used to match against the text of the various
|
|
messages that Hercules issues as it runs. Whenever a match is found, the
|
|
rule "fires" and its associated command is automatically issued.
|
|
<p>
|
|
The Hercules Automatic Operator facility only operates on messages issued
|
|
to the Hercules console. These messages may originate from Hercules itself,
|
|
or from the guest operating system via the SCP SYSCONS interface or via the
|
|
integrated console printer-keyboard (3215-C or 1052-C). HAO cannot intercept
|
|
messages issued by the guest operating system to its own terminals.
|
|
|
|
<h5>Defining a Rule</h5>
|
|
<p>
|
|
To define a HAO rule, enter the command:
|
|
<pre>
|
|
hao tgt <i>target</i>
|
|
</pre>
|
|
<p>
|
|
to define the rule's "target" match pattern
|
|
followed by the command:
|
|
<pre>
|
|
hao cmd <i>command</i>
|
|
</pre>
|
|
<p>
|
|
to define the rule's associated panel-command.
|
|
<p>
|
|
The <i>target</i> is a regular expression as defined by your host platform.
|
|
When running on Linux, Hercules uses POSIX Extended Regular Expression syntax.
|
|
On a Windows platform, regular expression support is provided by
|
|
Perl Compatible Regular Expression (PCRE).
|
|
The HAO facility can only be used if regular expression support was included
|
|
in Hercules at build time.
|
|
<p>
|
|
The associated <i>command</i> is whatever valid Hercules panel command you
|
|
wish to issue in response to a message being issued that matches the given
|
|
<i>target</i> pattern.
|
|
|
|
<h5>Substituting substrings in the command</h5>
|
|
<p>
|
|
The <i>command</i> may contain special variables $1, $2, etc, which will be
|
|
replaced by the values of "capturing groups" in the match pattern.
|
|
A capturing group is a part of the regular expression enclosed in parentheses
|
|
which is matched with text in the target message. In this way, commands may be
|
|
constructed which contain substrings extracted from the message which
|
|
triggered the command.
|
|
<p>
|
|
The following special variables are recognized:
|
|
<ul>
|
|
<li><code>$1</code> to <code>$9</code> -
|
|
the text which matched the 1st to 9th capturing
|
|
group in the target regular expression
|
|
<li><code>$`</code> - the text preceding the regular expression match
|
|
<li><code>$'</code> - the text following the regular expression match
|
|
<li><code>$$</code> - replaced by a single dollar sign
|
|
</ul>
|
|
<p>
|
|
Note that substitution of a $<i>n</i> variable does not occur if there are
|
|
fewer than <i>n</i> capturing groups in the regular expression.
|
|
<p>
|
|
As an example, the rule below issues the command 'i 001F' in response to
|
|
the message HHCTE014I 3270 device 001F client 127.0.0.1 connection reset:
|
|
<pre>
|
|
hao tgt HHCTE014I 3270 device ([0-9A-F]{3,4})
|
|
hao cmd i $1
|
|
</pre>
|
|
<p>
|
|
Another example, shown below, illustrates how the dot matrix display of a
|
|
3480 tape unit might be used to implement an automatic tape library:
|
|
<pre>
|
|
hao tgt HHCTA010I ([0-9A-F]{4}): Now Displays: (?:".{8}" / )?"M([A-Z0-9]{1,6})\s*S"
|
|
hao cmd devinit $1 /u/tapes/$2.awstape
|
|
</pre>
|
|
|
|
<h5>Other commands and limitations</h5>
|
|
<p>
|
|
To delete a fully or partially defined HAO rule, first use the 'hao list'
|
|
command to list all of the defined (or partially defined) rules, and then use
|
|
the 'hao del <i>nnn</i>' command to delete the specific rule identified by
|
|
<i>nnn</i> (all rules are assigned numbers as they are defined and are thus
|
|
identified by their numeric value). Optionally, you can delete all defined or
|
|
partially defined rules by issuing the command 'hao clear'.
|
|
<p>
|
|
The current implementation limits the total number of defined rules to 64.
|
|
This limit may be raised by increasing the value of the HAO_MAXRULE
|
|
constant in hao.c and rebuilding Hercules.
|
|
<p>
|
|
All defined rules are checked for a match each time Hercules issues a message.
|
|
There is no way to specify "stop processing subsequent rules". If a message is
|
|
issued that matches two or more rules, each associated command is then issued
|
|
in sequence.
|
|
|
|
<br /><br />
|
|
<hr><a name="support"></a>
|
|
<h2>Technical Support</h2>
|
|
|
|
<P>
|
|
For technical support, please see our <a href="hercsupp.html">Technical Support</a> web page.
|
|
|
|
<br /><br />
|
|
<hr>
|
|
<br />
|
|
<center>
|
|
<a href="index.html"><img src="images/back.gif" border=0 alt="back"></a>
|
|
</center>
|
|
<br />
|
|
</center>
|
|
</BODY>
|
|
</HTML>
|