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:
- MVS38J The MVS 3.8j Tur(n)key 4- System by Jürgen Winkelmann
- VM370CE VM/370 Community Edition V1R1.1
- DOS/VS
- DOS/VSE
- MTS (Michigan Terminal System)
- MUSIC/SP
To support these guests, their disks must be staged into their respective disks/<osname>
directories.
Useful Web Sites
- Bob Hansen MVS 3.8 documentation
- Dave Wade VM/370 archive
- David (Fish) Trout Hercules GUI for Windows.
- George Shedlock George Shedlock's DOS/VS 5 Pack System
- Harold Grovesteen Stand-Alone Tool Kit (SATK)
- Hercules 4.x Hyperion Github Distribution and Primary Pages
- Hercules 4.x Hyperion (SoftDevLabs) Windows GUI for SDL Hercules 4.x Hyperion and other Hercules related software.
- Jay Maynard S/360 and S/370 public domain software archive
- Jay Moseley Hercules and MVS information
- Jim Morrison (includes 3380 support for MVS 3.8!)
- Malcolm Beattie MVT/TSO documentation
- Max Parke Hercules 2703 Page - TTY, TCAM, 3705 and more
- Rafael Pereira Standalone Programs and 1401 simulator project
- René Ferland “Jurassic Park” (Implementation Case Studies)
- Tim Pinkawa Hercules
- Tommy Sprinkle MVS 3.8 documentation
- Volker Bandke Volker Bandke's ready-to-run MVS 3.8J turnkey system and all things MVS
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 FILESsf=<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.
Next Step: Initialize VM/ESA 2.4.0