Table of Contents

Configure Hercules

Overview

Configuration of Hercules can be complicated for new hobbyists. All efforts are made in these tutorials to ensure that the steps reflect the optimal configuration for MOST environments.

Because this tutorial is intended to work around a CCW/Sense (Channel Command Word/Sense) problem which appears when 3350 and sometimes 3330 devices are attached, we will also illustrate how to modify the VM/ESA Control Program and re-deploy a new nucleus.

Your Mileage May Vary

Objective

The final configuration of this tutorial is intended to permit one instance of CP to act as “host” to the following guests:

To support these guests, their disks must be staged into their respective disks/<osname> directories.

Useful Web Sites

Procedure

Now configure Hercules to support VM/ESA.

In this phase, we set up EVERYTHING describing the host system's layout and position all of the virtual device container files before we start.

Base Hercules Configuration

We must first setup the hercules.conf file (yes, these tutorials use the .conf extension versus the .cnf extension.

Note: The use of SHADOW FILES sf=<filename> enables us to quickly revert things back to their last known good state … an ounce of prevention
hercules.conf
#-----------------------------------------------------------------------------
# Hercules configuration file for the VM/ESA system.
#
#   Includes Guest Configuration support for
#
#       VM370 (Community Edition)
#       TK- MVS38J Distributed Files
#       CP67
#       DOS/VS
#       DOS/VSE
#       MTS (Michigan Terminal System)
#       MUSIC/SP
#       VSE/ESA
#
#-----------------------------------------------------------------------------
#
#   Important!
#
#       This configuration assumes that the filesystem is set up
#       as follows:
#
#    {ROOT}                  ...command and configuration files
#       +--_dist             ...Distribution Files (Originals)
#       +--conf              ...Configuration File(s)
#       +--batch             ...Stand-Alone Utilities
#       +--disks             ...VM disk files
#       |  |
#       |  +--vmesa          ...Guest OS Main Disks
#       |  |  +--shadows     ...Guest OS Shadow Disks
#       :  :
#       |  +--vm370ce
#       |  |  +--shadows
#       |  +--mvs
#       |  |  +--shadows
#       |  +--mts
#       |  |  +--shadows
#       |  +--dosvs
#       |  |  +--shadows
#       |  +--dosvse
#       |  |  +--shadows
#       |  +--vseesa
#       |  |  +--shadows
#       :  :
#       |  +--<OS>           ...Guest OS Main Disks
#       |     |
#       |     +--shadows     ...Guest OS Shadow Disks
#       |
#       +--IO                ...unit record I/O, tape files
#       +--tapes             ...Utility Tapes
#
#-----------------------------------------------------------------------------
 
#-----------------------------------------------------------------------------
#   Primary Machine Characteristics
#-----------------------------------------------------------------------------
 
# These Hercules configuration parameters are documented in the Hercules User
# Reference manual.
 
ARCHLVL         ESA/390                 #   Initial Architecture Mode
PGMPRDOS        LICENSED
CNSLPORT        3270
CODEPAGE        819/1047
#               ^   ^
#               |   |
# ASCII --------+   +----- EBCDIC
 
CPUMODEL        3090
CPUSERIAL       098052
MODEL           EMULATOR
DEVTMAX         0
PLANT           HERC                    #   STSI PLANT Code (Max 4 Chars  := HERC)
MANUFACTURER    HRC                     #   STSI PLANT Code (Max 16 Chars := HRC)
DIAG8CMD        ENABLE ECHO             #   {DISABLE | ENABLE [ECHO | NOECHO]} 
LPARNAME        HERCULES                
                #   LPAR name returned by DIAG x'204' (Max 8 Chars := HERCULES)
 
ECPSVM          YES                     
                #   ECPSVM {Help | STats | DISable | ENable | DEBUG | NOdebug | Level [nn]}
 
LEGACYSENSEID        ENABLE
AUTO_SCSI_MOUNT      60
 
#-----------------------------------------------------------------------------
#   HTTP Configuration
#-----------------------------------------------------------------------------
#   HTTP {START | STOP | ROOT path | PORT port {NOAUTH | AUTH userid password}}
HTTP PORT       3090 NOAUTH 
HTTP ROOT       E:\Emulation\operations.workspace\_Sys.Utilities\herc.html
HTTP START
 
#-----------------------------------------------------------------------------
# Load support for TCPIP instruction.
#-----------------------------------------------------------------------------
 
LDMOD          DYNINST DYN75
 
LOADPARM        001F                    # IPL parameter = Address of Console Port
MAINSIZE        512M                    # Should be sufficient
XPNDSIZE        512M                    # Should be sufficient
 
#-----------------------------------------------------------------------------
# CPU Configuration
#-----------------------------------------------------------------------------
MAXCPU          4
NUMCPU          4
 
#-----------------------------------------------------------------------------
# Define the control panel message filters to be applied
#   OSTAILOR {[+ | -] z/OS | OS/390 | VM | VSE | z/VSE | LINUX | OPENSOLARIS | 
#                     QUIET | NULL} 
#-----------------------------------------------------------------------------
OSTAILOR        VM
PANOPT          "TITLE=VMESA V2 R40" MSGCOLOR=LIGHT # or MSGCOLOR=DARK
 
 
#-----------------------------------------------------------------------------
#   Time/Clock Configuration
#-----------------------------------------------------------------------------
SYSEPOCH        1900                    #   Base date for TOD clock
TZOFFSET        -0000
 
#-----------------------------------------------------------------------------
#   Unit Record Devices
#-----------------------------------------------------------------------------
 
# Next we define the devices attached to our system.
#
# +-----------------------Device number
# |     +-----------------Device type
# |     |       +---------File name and parameters
# |     |       |
# V     V       V
#---    ----    --------------------
 
#   Typewriter Terminals
000A    1052    NOPROMPT
 
#   Card Reader the file "card.txt" in the IO directory will be read.
000C    3505    io/rdr000c/ ascii eof trunc
010C    3505    io/rdr010c/ ascii eof trunc
 
#   Card Punch  anything you punch will be written to "punch.txt" in the IO
#               directory.
000D    3525    io/pun000d/punch000D.txt ascii
010D    3525    io/pun010d/punch010D.txt ascii
 
#   Printers    anything you print will be written to "print1.listing" or
#               "print2.listing" in the IO directory.
#               Remember: CP SET RDEVICE 000E TYPE 3203
#               Remember: CP SET RDEVICE 000F TYPE 3203
000E    1403    io/print000E.listing lpi=6 lpp=66
000F    1403    io/print000F.listing lpi=8 lpp=88
*
010E    1403    io/print010E.listing lpi=6 lpp=66
010F    1403    io/print010F.listing lpi=8 lpp=88
 
#-----------------------------------------------------------------------------
#   Operator Console
#-----------------------------------------------------------------------------
#--
#   FOR ESA - You must have a 3270 emulator attached prior to IPL.
#--
#--
#   For VM/ESA, the LOADPARM parameter identifies the Console Port Address
#--
001F    3270
 
#-----------------------------------------------------------------------------
#   Functional 3270s
#-----------------------------------------------------------------------------
#--
#   Initial Setup consoles for interactive logon
#
#   For VM/ESA 2.4.0 Configuration
#       These are defined in Maint/CF1,CF2/SYSTEM CONFIG (Parmdisks)
#--
0200.8  3270
 
#-----------------------------------------------------------------------------
#   VM/ESA 2.4.0
#-----------------------------------------------------------------------------
 
0123    3390    disks/vmesa/240RES_1.123.cckd ro sf=disks/vmesa/shadows/240RES_1_*.shadow
0124    3390    disks/vmesa/240W01_1.124.cckd ro sf=disks/vmesa/shadows/240W01_1_*.shadow
0125    3390    disks/vmesa/240W02_1.125.cckd ro sf=disks/vmesa/shadows/240W02_1_*.shadow
0126    3390    disks/vmesa/240W03_1.126.cckd ro sf=disks/vmesa/shadows/240W03_1_*.shadow
0128    3390    disks/vmesa/240SPL_1.128.cckd ro sf=disks/vmesa/shadows/240SPL_1_*.shadow
 
 
# Display Terminals - VM/ESA
#   These appear to be the terminals dedicated to the initial configuration for
#   console file transfer between the P/390 "hypervisor" -
0460.4  3270
 
 
#--
#   TAPE Drives (3420 | 3480)
# VM (Guest) Tape Drives
0480.8   3480    *
0580.8   3480    *
05A0.8   3420    *
# END
#-----------------------------------------------------------------------------
 
# include conf/includes/cp67.conf
# include conf/includes/dosvs.conf
# include conf/includes/dosvse.conf
# include conf/includes/mts.conf
# include conf/includes/musicsp.conf
# include conf/includes/mvs38j.conf
# include conf/includes/vm370ce.conf
# include conf/includes/vseesa.conf

Next Steps

Optional: Configure Additional Guest Machines. It is suggested that you perform these activities after completing the ESA system setup. This will prevent looping of ESA during CCW-Sense device discovery which is why we're doing these tutorials in the first place.
Note: When you are ready to configure any of the additional guests, you may simply un-comment (Remove the # Sign) from the related include statements at the bottom of the file above.