Sim390 - Help
Sim390 version 1.7 Feb. 25, 2008
© Copyright Dave Edwards, 2001 - 2008. All rights reserved.
Overview
Conditions of use
Installation and setup
Configuration file
General usage notes
Local 3270 sessions
Local 3270 keys
Remote 3270 sessions (tn3270)
Remote 5250 sessions (tn5250)
What's new in this version of Sim390
References
Overview
Sim390 is an application that runs under Windows and emulates a subset
of the IBM ESA/390 mainframe architecture. That is, it takes the place
of a real mainframe computer. Mainframe disk volumes are represented
by Windows files; Sim390 supports the FBA (Fixed-Block Architecture)
type of mainframe disk volumes - IBM device types 3310, 3370, 9332,
9335, 9336, 0671. You can IPL (Initial Program Load) from an emulated
disk volume, just like on a real mainframe, to load and run the operating
system contained on the volume. The characteristics of the mainframe
computer (main storage size, input/output devices, etc.) are specified
by statements in a Sim390 configuration file.
The primary use for Sim390 is to run the MUSIC/SP (Multi-User System
for Interactive Computing / System Product) operating system. A
small, 1-volume Demo version of MUSIC/SP is freely available, for
personal noncommercial use. Sim390 is also useful for learning about
and experimenting with the ESA/390 mainframe architecture.
Sim390 is similar in function to the Hercules mainframe emulator, which
is a more general, full-featured emulator. Sim390 is generally considered
to be simpler and easier to set up and run, and is the recommended
platform for running the MUSIC/SP Demo system. A key advantage of Sim390
with MUSIC/SP is that it provides built-in support for TCP/IP applications
such as file transfer (FTP), making it easy to transfer files to and
from MUSIC/SP and to use MUSIC/SP as a web server. Sim390 also provides
built-in support for local 3270 sessions, which means you can sign on
to MUSIC/SP without having to use a tn3270 client.
Sim390 does not support
the older S/370 mainframe architecture (used by MVS 3.8, for example),
or the newer z/Architecture used by current IBM operating systems.
Sim390 was written and is maintained by Dave Edwards (Montreal).
The MUSIC/SP operating system was originally developed by McGill
University (Montreal), 1970 to 1999. McGill no longer supports or
distributes MUSIC/SP. Since 2000, MUSIC/SP has been maintained and
actively improved by Dave Edwards.
Conditions of use
The Sim390 software is provided on an "as-is" basis, and is intended only
for demonstration and evaluation purposes. Use it at your own risk.
The author is not responsible for any damages or losses that may
occur from your use of this software, and no support or warranty is
provided. This software must not be used, sold, or distributed for
profit, without the written permission of the author. It is
provided only for personal use by individuals. Use in a production
or commercial or institutional environment is prohibited, unless
specific written permission is obtained from the author.
Sim390 is © Copyright by Dave Edwards 2001 - 2008. All rights reserved.
Installation and setup
Sim390 is distributed as a .zip file, which contains the latest versions
of the Sim390 executable (.exe) file, this HTML help file, and
possibly other related files, such as a sample configuration file.
For example, file sim390_17.exe in the .zip file is version 1.7 of
sim390.exe.
The MUSIC/SP Demo system itself is distributed separately.
After downloading the .zip file, check its MD5 or SHA1 digest with the
digest listed on the Sim390 home page. This verifies that you have an
authentic, uncorrupted copy.
Use WinZip (or an equivalent utility) to unzip the
files to a temporary directory on your Windows system, create a new
directory for Sim390, for example c:\sim390 or c:\sim390dm, and copy
the .exe and .htm files to it, renaming them to sim390.exe and
sim390_help.htm. If you are updating a previous version of Sim390,
just replace your existing sim390.exe and sim390_help.htm files.
That's all there is to installing Sim390!
Since most users use the MUSIC/SP Demo system with Sim390, you will
probably find it convenient to keep the Sim390 files in the same
directory (normally c:\sim390dm) as the MUSIC/SP volume file,
the Sim390 config file for MUSIC/SP, and the printer output file for
MUSIC/SP.
Note for older Windows 95 systems:
The standard distribution of Sim390 uses Winsock 2.2 or later,
which is part of Windows 98, 2000, XP, and later. The original Windows 95
contains Winsock 1.1. Therefore, to run Sim390 on Windows 95, you may
need a special version of Sim390 that accepts Winsock 1.1. You can obtain
it, for Sim390 1.6, from the Sim390 home page.
If you need it for the latest version of Sim390, please contact the author.
How to start Sim390
To start Sim390, open a Command Prompt window (use Start / Run and enter
cmd.exe (Win 2000, XP, and later) or command.com (Win 95, 98)), change to
the directory where Sim390 is stored, and enter the command
sim390 xxx where xxx is the name of the config file to be used.
See the section below on config files. If you don't specify a config file,
Sim390 will use file sim390.cfg by default. If the config file does
not exist, Sim390 will still start, but you will not be able to IPL since
no operating system devices are defined.
For example:
cd \sim390dm
sim390 myconfig.txt
If you are already in a different directory and don't want to change it,
you can enter a command with specific path names, for example:
c:\sim390dm\sim390.exe c:\sim390dm\myconfig.txt
You can also create a desktop shortcut to Sim390. Just right-click on
a blank area of the desktop and select New / Shortcut.
In the Properties of the shortcut (right-click
on the shortcut icon), enter the Sim390 command (using full path names
as in the example above) in the Target box of the Shortcut tab.
Then you can start Sim390 simply by double-clicking on the shortcut icon.
Starting Sim390 opens two windows:
(1) The Sim390 Control window. This is a small window with a beige background.
It shows the overall status of the mainframe system, and provides various
menus for controlling the mainframe system.
(2) The Sim390 Operator console window. This window displays output messages
from the mainframe system and from Sim390 itself. The operator console
represents the mainframe operating system's console device output.
The console device is defined by a statement such as
iodevice console 00f in the config file.
Note: Operator input is not entered directly on the Operator
console window. Instead, enter a line of console input by using the
Console or Input menu of the Sim390 control window. For example, this is
how an operator command is entered to MUSIC/SP, for example stop
to shut down MUSIC/SP.
Configuration file
The configuration file defines i/o devices and other parameters for
the ESA/390 machine that Sim390 emulates, and in some cases for
Sim390 itself. The name (normally a
fully-qualified path name) of the config file is specified as
the argument on the Windows command (or shortcut) that invokes
Sim390. The config file is a text file containing various
statements (described below). Sim390 does not care what filename
extension is used; you can use .txt or .cfg or some other
extension. You can create and edit your
config file by using any text editor, such as Notepad.
Command example: c:\sim390\sim390.exe c:\sim390\myconfig.cfg
If no config file is specified, default file name sim390.cfg is
used. If the config file does not exist or cannot be opened,
default settings are used, but then no ESA/390 devices are
defined.
While Sim390 is running, the item "Display/update config file" in the
Options menu can be used to open the specified config file in Notepad.
However, any changes made to it do not take effect until the next
time Sim390 is started. You must terminate Sim390 and start it again,
since the config file is processed only when Sim390 starts.
If the parameter NOIPL or NOAUTOIPL (case not significant) also
appears on the command that invokes Sim390, any AUTOIPL
statement in the config file is ignored. The AUTOIPL statement
is described below.
If a config statement or option is found to be invalid, the
statement or option is ignored by Sim390. In some cases,
an error or warning message is displayed on the
Sim390 operator console window, in red. However, Sim390 continues.
Serious errors may mean that an ESA/390 IPL (Initial Program Load)
is impossible.
Sample config files are included in the Sim390 and MUSIC/SP distributions.
General Notes
- Case is not significant, except in the TITLE string and font facenames.
- The order of the statements is usually not significant, except for
REMOTE3270FILTER statements.
- Items are separated by 1 or more blanks.
- Some keywords can be abbreviated and/or have aliases.
- Optional items are indicated by [ ] below. Do not type the brackets
in the actual config statement.
- devnum is a 1- to 4-digit device number in hex.
For most mainframe operating systems you can run under Sim390,
including MUSIC/SP, the device number is 3 hex digits, and the first
digit is sometimes referred to as the channel number.
Some older documentation refers to the device number as the "device address".
- A memory size value can be specified as n or nK or nM.
E.g. 10m and 10240k both mean 10485760 (bytes).
- The filename for a device must contain a period (".").
Device path and file names must not contain embedded blanks.
If the file does not exist or cannot be opened, the
device's subchannel is marked as "invalid".
- Currently, the maximum size of a Windows file supported
by Sim390 is 2 MB (2**31-1 = 2,147,483,647 bytes).
However, in MUSIC/SP, the maximum size of an FBA volume
file (for a disk device) is 1 MB (2,097,152 512-byte
blocks), because some MUSIC/SP control blocks use a
16-bit logical track number (1 logical track = 32 blocks).
- After the required initial keywords for a statement,
order is not significant. For example, the 2 statements
autoipl 200 mem 8M blankcmd
autoipl 200 blankcmd mem 8M
are equivalent. For the IODEVICE statement, the
required initial keywords are the device type and
device number. For the FONT statement, the initial keyword is
the window type to which the font applies.
- A record starting with * or # or ; is a comment and
is ignored, except that it may be displayed. The
comment character must be in column 1 of the record.
- After changing the Sim390 config file, you must terminate and
restart the Sim390 application in order for the
changes to take effect.
Statements in the Configuration File
- TITLE text
- - The text, which may contain blanks, becomes part of the
title string for various windows. It is recommended that
it start with "Sim390". On the TITLE statement, the text
is not enclosed in quotes.
- If there is no TITLE statement, default title is "Sim390".
- LIST ON
- - Supported in Sim390 1.5 or later.
- Displays subsequent config records on the console, preceded by
"Config:". Even comment records are listed.
- A LIST statement itself is never listed, if "LIST" or "list"
appears starting in column 1 of the record.
- LIST with no parameters, or with first parameter other than ON
or OFF, is treated like LIST ON.
- LIST OFF
- - Supported in Sim390 1.5 or later.
- Turns off the listing of config records. LIST OFF is the default at
the beginning of the config file.
- DEBUG n
- - Sets ui.debug to n. Some coding here and in other routines
puts out debugging messages if n is nonzero. Default is 0.
Normally ui.debug is set via a menu item in the Sim390 control
window, but, for debugging in initial routines such as
this, it must be set by this statement, if needed.
After Sim390 has started, you can set ui.debug back to 0
via the menu item. You can also turn off debugging later in
the config file by the statement "debug 0".
- For example, in order to confirm that REMOTE3270FILTER
statements are actually being processed, you could precede
them with "debug 1" and follow them by "debug 0".
- MEMORY n
- - Total memory (main storage) size for the ESA/390 machine,
allocated when Sim390 starts.
This is the max memory size that an IPL can specify.
If no MEMORY statement is used, the default is 8M.
The maximum size is about 2000M.
- WINTIMEADJ n
- - Adjustment value (positive integer) for Windows Time differences,
or 0 if no adjustment. Default is 0.
The adjustment may be needed to prevent Sim390's time of day from
drifting behind the PC's time of day, by a few seconds per day.
Tests indicate that the adjustment is not needed for Win 2000 SP3
and SP4, but may be needed (n=6629) for Win 98 and Win NT. It
may also depend on the PC hardware used.
- AUTOIPL devnum [MEMORY n] [BLANKCOMMAND]
- - This statement causes Sim390, after it has read the config file
and initialized itself, to automatically do an IPL (Initial
Program Load) from the specified device. The specified memory
size is used.
- If the option BLANKCOMMAND is used, a blank input line is
automatically supplied as the response to the first operator
console read done by the ESA/390 application program.
For MUSIC/SP, this allows the system to complete the load
sequence without human intervention.
- Default memory size n is 0, which means the maximum, i.e. the
value specified on the MEMORY stmt.
- If the parameter NOIPL or NOAUTOIPL (case not significant)
appears on the Windows command that invokes Sim390, the AUTOIPL
statement is ignored.
- CONSOLE [COLUMNS n] [ROWS m]
- - Size of the (virtual) window screen buffer used for the
operator console display. n should be at least 80.
m should be at least 25. Default is n=80, m=25.
Normally a larger value, e.g. 200, is used for m, and then
the actual window is scrolled vertically.
- COPYBLANKS ON
COPYBLANKS OFF
- - Supported in Sim390 1.7 or later.
- This option affects how a marked area of a local 3270 screen
is copied to the Clipboard. With it ON, trailing blanks in each
line of the area are copied. With it OFF, trailing blanks are
not copied. In both cases, screen null (binary 0) characters,
3270 attribute characters, and other nonprintable characters
are considered to be blanks, and are copied as blanks (if
copied). The default is OFF. If no parameter is specified, ON
is assumed: COPYBLANKS is equivalent to COPYBLANKS ON.
- This option can also be changed by the Options / Settings
menu item of Sim390. In that case, the change affects only that
instance of Sim390, and the change is not kept when Sim390
terminates.
- BROWSER filespec
BROWSER "filespec"
- - Supported in Sim390 1.7 or later.
- This specifies the full file name (including drive letter and
path) of the .exe file for the system's web browser program.
The name may be enclosed in quotes ("xxx" or 'xxx'), and must
be enclosed in quotes if it contains any embedded blanks.
The name must end in .exe.
This name is used when invoking the browser to display the
program's HTML help file, and possibly at other times.
If no valid browser name is specified, the program will use
a built-in default name (probably MS Internet Explorer) when
one is needed. If the help file does not display when requested, a
valid BROWSER statement may be required. The help file should be named
sim390_help.htm and should be located in the same directory as
the sim390 executable (.exe) file, or in the current directory,
or in a system directory, or in a directory in the PATH
environment variable.
- Example:
browser "c:\program files\mozilla firefox\firefox.exe"
- FONT where FACENAME name CHARWID w CHARHT h WEIGHT x
- - Supported in Sim390 1.7 or later.
- Specifies information about the font to be used for windows of
type where.
- where must be the first parameter, and is one of:
loc3270
loc3270model5
loc3270custom
- loc3270 specifies font info for all local 3270 session windows,
except that for a 3270 model 5 (27x132), info specified for
loc3270model5 is used instead, and for a custom 3270 screen size
info specified for loc3270custom is used instead.
- name is the
name of the font, for example "Courier New" or "Terminal".
It must be the name of a fixed-pitch font, i.e. all the characters
must be the same width. If the name contains blanks(s), it must
be enclosed in quotes. Case is significant in the name.
- w and h are the (approximate) width and height of the
characters, in pixels.
- x is the weight of the font: a value from 1 to 1000. The normal
(and the default) value for weight is 400, the "regular" version
of the font. 700 corresponds to the "bold" version.
- The attributes (facename, charwid, charht, and weight) can be
in any order, and do not all have to be specified. A default value
will be used if you do not specify one.
- If a value is omitted for loc3270model5 or loc3270custom, but
is specified for loc3270, the loc3270 value is used for model 5
or custom-size 3270 screens.
- Note: custom-size local 3270 screens (loc3270custom) are
currently not suported, but may be in a future version.
- The program requests a font with these attributes, and the
system tries to choose the font which most closely matches them.
However, the actual resulting font may not be exactly what you
specify, and you may have to experiment with various values to
get the result you want.
- Examples:
font loc3270 facename "Lucida Console" charwid 12 charht 18
font loc3270model5 facename Terminal charwid 8 charht 12
- REMOTE3270PORT n
- - TCP port number (or 0 if none) on which the tn3270 server
component of Sim390
listens for incoming remote 3270 terminal connections.
If 0, the tn3270 server is not started. Default: 23
- REMOTE3270FILTER ALLOW n1[.n2[.n3[.n4]]] [comment]
REMOTE3270FILTER DENY n1[.n2[.n3[.n4]]] [comment]
- - One or more of these statements define the IP address filtering
to be done for incoming connections to the Telnet 3270 server,
from tn3270 clients. If no statements, connections are allowed
from all IP addresses, which is the same as having a single statement
REMOTE3270FILTER ALLOW ALL. The order of the statements is
important. The first one that matches the client's IP address
determines whether the connection is allowed or denied. The
value after ALLOW or DENY is ALL
or a full or partial IP address.
For example:
129 matches
any IP address of the form 129.*.*.*
129.100 matches
any IP address of the form 129.100.*.*
If no match is found, the connection is allowed.
ALL (or ANY) matches
any IP address.
- ACCEPT is an alias for ALLOW.
REFUSE and REJECT
are aliases for DENY.
- Abbreviation: REM3270FILT
- The max number of filter statements is 500.
- Invalid statements are ignored. To verify that your filter
statements are actually being stored, use a config statement
DEBUG 1 before them. Once you have checked them, remove the
debug statement.
- IODEVICE NONE devnum [INVALID]
IODEVICE CONSOLE devnum [INVALID]
IODEVICE READER devnum [INVALID]
IODEVICE PRINTER devnum filename [APPEND] [NOAPPEND] [INVALID]
IODEVICE PUNCH devnum [INVALID]
IODEVICE DISKF512 devnum filename [READONLY] [INVALID] [WRITETHRU] [NOSHARE] [WRITESHARE]
IODEVICE LOCAL3270 devnum [INVALID]
IODEVICE REMOTE3270 devnum [INVALID]
- - Each of these creates a subchannel in the subchannel table.
A subchannel represents an input/output device in the ESA/390 machine.
If there is an error, or the INVALID option is specified,
the subchannel is marked as "invalid" i.e. the valid bit is 0,
and the device becomes unusable to the ESA/390 machine.
- Files must already exist, otherwise the subchannel is marked
as invalid.
- Default for PRINTER is APPEND.
- PUNCH devices are not supported yet.
- Device type NONE sets the subchannel device type to DEVTYPNONE,
which uses a dummy device i/o function.
- Multiple "iodevice none xxx invalid" stmts can be used to
reserve subchannels, i.e. create subchannels with valid bit off.
- Device type DISKF512 indicates a Fixed-Block Architecture (FBA)
device (equivalent to IBM disk device type 3370), with blocksize
512 bytes. The Windows file is a sequence of 512-byte blocks.
The Windows file contains the data for one ESA/390 disk volume.
The file can be any reasonable size (number of 512-byte blocks).
The maximum FBA volume size for MUSIC/SP is 1MB = 2,097,152
blocks. Currently, Sim390 does not support any other disk types.
In MUSIC/SP, you can run the INITFBA utility to initialize a new
FBA volume file. INITFBA creates a volume name record and an
empty VTOC (Volume Table of Contents) on the volume.
- The NOSHARE and WRITESHARE options are supported only in
Sim390 version 1.5 or later.
- The NOSHARE option for disk causes the volume file to be
opened such that other Windows applications cannot open the
file (even only for reading). This may be useful as a security
option, to prevent other tasks from reading the volume while
Sim390 has it open. Win32 CreateFile() 3rd arg used: 0.
- The READONLY option for disk causes the volume file to be opened
for reading only. If the ESA/390 application tries to write to
the volume, an ESA/390 i/o error results, and the write is not
done. If you want to allow other Windows programs (e.g. another
Sim390 task running another MUSIC/SP system) to open the same
volume file read/write, you must also specify the WRITESHARE
option, in addition to READONLY.
- The WRITESHARE option for disk causes the volume file to be
opened such that other Windows applications can both read and
write to the file. Win32 CreateFile() option used (3rd arg):
FILE_SHARE_READ | FILE_SHARE_WRITE.
***WARNING*** This option must be used with caution, since a
volume containing MUSIC/SP Save Library data sets or the
index can be corrupted if 2 systems are allowed to update
the Save Library at the same time. A similar warning
applies to other MUSIC/SP system data sets. It is ok to use
WRITESHARE in combination with READONLY.
- If neither NOSHARE nor WRITESHARE is specified, other programs
can open the volume file for reading only. Win32 CreateFile()
option used (3rd arg): FILE_SHARE_READ. The other program, if
Sim390, must specify READONLY; if this Sim390 does not specify
READONLY, the other Sim390 must specify both READONLY and
WRITESHARE.
- If both WRITESHARE and NOSHARE are specified, WRITESHARE is
ignored and NOSHARE is used.
- The WRITETHRU option for disk causes the write-thru option to be
used when the PC file (Sim390 volume) is opened.
This is important for utilities such as file wipers that do
multiple writes to the same location of the disk. Without
this option, only the last write would actually be done to
disk. However, it reduces disk performance, so it should be used
only if security is critical. This option is ignored if READONLY
is also specified.
- Abbreviations: IODEV, CONS, INV, RDR, PRINT, PRT, PRN, PUN, APP,
LOC3270, REM3270
Scenarios for Sharing Disk Volumes
Care must be taken when you share a disk volume file between
2 or more Windows application programs (including Sim390 and
the Hercules emulator). Normally, an ESA/390 application
program such as MUSIC/SP expects to have exclusive read/write
access to the volume file. Data corruption can easily occur
if two applications have simultaneous write access to the
same volume. This is especially true of MUSIC/SP Save Library
data sets (SYS1.MUSIC.ULnn) and the index (SYS1.MUSIC.UIDX).
Note: The options WRITESHARE and NOSHARE, used in the examples
below, are supported only in Sim390 version 1.5 or later.
Earlier versions ignore them (with no error message).
Scenario 1:
It is best to allow only one system to have read/write access
to the volume, and give the other systems read-only access.
In the Sim390 config file, this is done as in the following
example:
System 1 (read/write):
iodev diskf512 201 c:\abc\musicx.vol
System 2, etc. (read only):
iodev diskf512 201 c:\abc\musicx.vol readonly writeshare
Note that the option WRITESHARE is needed, so that the Windows
file open (CreateFile() call) done by Sim390 for system 2
will use sharing options FILE_SHARE_READ and FILE_SHARE_WRITE,
indicating that other Windows applications (i.e. system 1)
can have the file open for read/write. Otherwise the open
done by system 2 fails with error "File sharing violation" (if
system 1 is started first), or the open by system 1 fails (if
system 2 is started first).
Note: The device number used by the various systems does not
matter for sharing. Systems can use the same or different device
numbers (201 in the above example).
Scenario 2:
If you really want both systems to have simultaneous write
access to a volume (perhaps a nonsystem UDS - User Data Set -
volume, for which access is synchronized by a human), use
options as in this example:
System 1 (read/write):
iodev diskf512 301 c:\abc\music5.vol writeshare
System 2 (read/write):
iodev diskf512 301 c:\abc\music5.vol writeshare
Sim390 will give a warning message, saying that data corruption
may occur.
Scenario 3:
If you want a system to have exclusive access to a volume, and
prevent all other applications from having any access (read or
write), use the NOSHARE option:
System 1 (read/write):
iodev diskf512 201 c:\abc\musicx.vol noshare
General usage notes
Use the menu items of the Control window to control Sim390:
- File menu:
- Reader file...
Opens a dialog box that lets you specify the file to be read
by a reader device. You can also close the previous reader file
(if one is still open), and specify whether the reader file contains
text or binary data. "Text" data means a standard Windows text file,
which Sim390 will convert from Ascii to mainframe EBCDIC. "Binary"
means the data is already in mainframe form, that is, 80-byte EBCDIC
records, with no line-end control characters between records.
- Printer: display output file
Invokes Notepad to display the printer output file, if any.
For example, if you just ran a MUSIC/SP Batch job that wrote its
output to the printer (you specified route(system) on the
submit command), you can use this menu item to view the output.
It will be at the bottom of the file, since output is normally
appended to the printer file.
If more than one printer device is defined in the config file, the
first one with a valid file is used here.
It is recommended that you set Notepad to use a fixed-pitch font,
such as Courier New size 10.
- Punch file...
(Punch files are not supported yet.)
- Add local 3270 session
Opens a window for a local 3270 terminal (direct internal connection for
signing on to the mainframe operating system running in Sim390).
You can choose the size of the 3270 screen. See the sections below
on local 3270 sessions and keys.
- Exit
Terminates Sim390.
- CPU menu (CPU = Central Processing Unit):
- Start CPU
Starts the ESA/390 machine, if it was in Stopped state.
- Stop CPU
Temporarily stops the ESA/390 machine (puts the CPU into Stopped state).
In Stopped state, no instructions are executed.
- System Reset
Does the System Reset function on the ESA/390 machine.
This immediately terminates any operating system that was running
in the machine. You can choose whether or not to zero (clear) main storage
and registers. Note: Most operating systems have a recommended gentler
method of shutting them down, which allows the system to save
accounting data and do other clean-up before shutting down.
In the case of MUSIC/SP, you should enter the command stop
as Console input, using the Input or Console menu.
- IPL...
Does an IPL (Initial Program Load), which starts the operating system
by reading and executing an initial program from a specified device,
usually a disk or a card reader. You can specify the amount of
memory (main storage) to be provided to the machine, in units of
1K = 1024 bytes (0 means use the size specified on the MEMORY
statement in the config file, which is the maximum). You can specify
whether memory and registers are to be zeroed (cleared) before IPL.
You can request that a blank record automatically be entered as the
input for the first read done on the operator console by the
loaded program. In the case of MUSIC/SP, this allows system start-up
to finish without further operator input being required.
Messages from the IPL normally appear on the Operator console window.
Note that IPL immediately terminates any operating system that is
running, since it implies a System Reset.
You can use the AUTOIPL statement in the config file to tell
Sim390 to automatically IPL from a device when Sim390 starts.
- External Interrupt Key
Generates an External Interrupt.
- Start remote 3270 listen
Tells Sim390's tn3270 server component to start accepting incoming
connections, for remote 3270 sessions. See the statements in the
config file relating to remote 3270.
- Stop remote 3270 listen
Tells Sim390's tn3270 server component to stop accepting incoming
connections, for remote 3270 sessions. Sim390 stops listening on
the defined remote 3270 port number.
- Display
This is used to display various information on the Operator console
window, such as registers, a specified portion of real memory,
internal counters, internal tables, etc.
- Debug and tracing...
Opens a dialog box which lets you set values for some internal
debug and tracing control variables. Setting nonzero values here can
cause Sim390 to put out trace and debug messages on the Operator
console. The setting for the ui.debug variable is a small integer
value; in general, the larger the value, the more detailed the
trace or debug output. The ui.traceio variable controls what types
of devices are involved in an i/o trace.
- Console menu:
- Enter console input...
Opens a dialog box that lets you enter an input command for the
Operator console device. Maximum 80 characters. Click on the
drop-down arrow to recall and reenter a previously entered command.
- Console logging...
(This function is not supported yet.)
- Input menu:
- This menu is a shortcut to item "Enter console input..." in the
Console menu.
- Options menu:
- Settings...
Opens a dialog box which lets you change some options for this
instance (execution) of Sim390. Changes made here are effective
immediately but do not change the config file and are not kept
when Sim390 terminates.
- Display/update config file
Invokes Notepad on the current configuration file, if any.
This is the file that was specified on the command that started
Sim390. You can view the file, and also make changes to it.
Sim390 only processes the config file when it starts, therefore
any changes you make to it will not be effective until the next
time the Sim390 application (sim390.exe) is started.
- Help menu:
- Help
Invokes the system web browser to display the Sim390 HTML help file,
which is named sim390_help.htm. The help file should be
located in the same directory as the Sim390 execution (.exe) file,
or in the current directory, or in a Windows system directory, or
in a directory in your PATH environment variable.
If the file exists but it does not display, you may have to
supply a BROWSER statement in the config file, to tell
Sim390 where to find the web browser. You can also use that statement
to specify which browser to use.
- About
Displays an info box giving the version of Sim390 and other
key data about the application.
Miscellaneous notes
- If you inadvertently drag the mouse pointer in the Sim390
operator console window, some text may be highlighted, and
the ESA/390 application program may seem to freeze when
it tries to write a message to the console. This is normal,
and is part of Windows' support for copy-and-paste in the
console window. To recover, simply press the Esc or Enter
key while in the console window.
- You can run more than one instance (execution) of Sim390
at the same time. Each one should have its own printer file, and
its own copy of any disk volume files that are writable.
See the previous section on sharing disk volumes.
Local 3270 sessions
You can sign on (log on) to the mainframe system running under Sim390,
using a local 3270 session. This type of connection emulates
an IBM 3270-type terminal, but it does not use tn3270 or TCP/IP.
It uses a direct connection internal to Sim390. The mainframe 3270
devices used for these connections are defined by
IODEVICE LOCAL3270 statements in the config file.
To open a window for a local 3270 session, use the item "Add local
3270 session" of the File menu in the Sim390 Control window,
and choose the size of 3270 screen you want.
The available sizes are:
- 3270 model 2 (24 rows by 80 columns)
- 3270 model 3 (32 by 80)
- 3270 model 4 (43 by 80)
- 3270 model 5 (27 by 132)
Model 4 is usually the best for general use.
If you don't like the default font the session uses, you can use a
FONT statement in the config file to change the font face
and character size. The font changes will take effect the next time
you start Sim390.
NOTE: You must specify a fixed-pitch font (all
characters the same width), in order for the 3270 session to display
correctly. Common fixed-pitch fonts are Terminal, Courier New,
Lucida Console, and Andale Mono. Andale Mono does not come with
Windows, but you can download it from the Internet.
Most features of an extended-mode, 16-colour 3270 are provided.
See the next section "Local 3270 keys"
for which keyboard keys to use for the various 3270 functions.
"Copy and paste" operations in a local 3270 window
You can use the mouse and the Ctrl key to copy text from and to a
local 3270 session window. This uses the Windows "Clipboard", which is
an imaginary area where copied text is stored temporarily.
Most Windows applications allow a section of text to be copied from
a window to the Clipboard, or the contents of the Clipboard to be
"pasted" into a window. This is very useful for moving small amounts
of text between applications, or between systems running under Sim390
or another emulator such as Hercules.
To copy text from a local 3270 window to the Clipboard, first "drag"
the mouse to mark (highlight) a rectangular block of text: press and
hold the left mouse button while you move the mouse pointer from one
corner of the block to the diagonally opposite corner, then release
the mouse button. Once the text is marked, press Ctrl+C to copy the
text to the Clipboard. The original contents of the Clipboard is replaced.
The text can now be pasted into some other window.
To unmark the block of text, just left-click the mouse anywhere in the
local 3270 window.
You can also press Ctrl+X ("cut") to copy the marked text to the
Clipboard and erase it from the current window (that is, replace it by
blanks). Note that only text in modifiable 3270 fields is erased.
To erase the marked text without copying it, press Ctrl+E.
To paste text from the Clipboard into a local 3270 window, position
the 3270 cursor (the blinking underscore) at the top left corner of
the area to receive the text (it should be in a modifiable 3270 field).
Then press Ctrl+V. The text overwrites existing screen text (if
Insert mode is off), or inserts the new text (if Insert mode is on).
Each end-of-line in the Clipboard data moves the 3270 cursor to the next
line of the 3270, at the same column as the original cursor position.
To provide a large modifiable area of the screen to receive pasted text,
run the PASTE command of MUSIC/SP (type "/help paste" for info), or use
Input mode of the Editor.
The COPYBLANKS option of Sim390 controls whether trailing blanks at the
end of each line of a marked block of text are copied to the Clipboard.
If the option is off (the default), trailing blanks are not copied.
If on, they are. For example, COPYBLANKS ON is often useful when
you will later paste the text with Insert mode on, or when you will
paste to a tn3270 client screen and wish blank or null lines at the
end of the copied text to be kept. Note that tn3270 clients vary widely
in the details of how they handle copy and paste operations.
Sim390's default setting can be set by the COPYBLANKS ON
or OFF statement
in the config file. While Sim390 is running, you can change the option
by the Settings item of the Options menu.
Local 3270 keys
The following are the keyboard assignments for a local 3270 session
in Sim390:
3270 Function |
Key |
|
|
Clear |
Ctrl+Z |
PA1 |
- on numeric keypad |
PA2 |
+ on numeric keypad |
PA3 |
/ on numeric keypad |
Reset |
Esc |
Toggle Insert mode |
Insert |
Enter |
Enter |
NewLine |
* on numeric keypad, or Ctrl+Enter |
PF1 to PF12 |
F1 to F12 |
PF13 to PF24 |
Shift+F1 to Shift+F12 |
PF7 |
PageUp |
PF8 |
PageDown |
PF23 |
Ctrl+PageUp |
PF11 |
Ctrl+PageDown |
Erase EOF |
Ctrl+End |
Erase Input |
Ctrl+Home |
Sys-Request |
Ctrl+K |
|
|
Clipboard Operations |
(see the previous section) |
|
|
Select text |
Drag mouse |
Unselect text |
Left-click mouse |
Copy to Clipboard |
Ctrl+C |
Cut (copy and erase) |
Ctrl+X |
Erase (no copy) |
Ctrl+E |
Paste from Clipboard |
Ctrl+V |
Undo screen changes |
Ctrl+Z (3270 Clear) |
Remote 3270 sessions (tn3270)
You can use tn3270 (telnet 3270) client software to connect to the
mainframe system running under Sim390, as a remote 3270 session.
Sim390 acts as a tn3270 server. This allows you to sign on to MUSIC/SP,
for example, from a remote machine.
The port to connect to is specified by the REMOTE3270PORT
statement in the config file. If the port number is 0, remote 3270
connections are not accepted. If you are running the tn3270 client on
the same machine as Sim390, specify localhost (or 127.0.0.1) as the
host to connect to.
As a security measure, you can use REMOTE3270FILTER
statements in the config file to allow or disallow connections, based
on the IP address of the remote tn3270 client machine.
Many tn3270 client software applications are available for Windows
and Linux. Some of them are free, including qws3270, wc3270, c3270, x3270.
They vary in their capabilities.
Remote 5250 sessions (tn5250)
You can also connect to Sim390 using tn5250 (telnet 5250) client software,
which emulates an IBM 5250 terminal. A 5250 terminal is often used for
connecting to an IBM AS/400 or iSeries midrange computer. Although Sim390
does not emulate a midrange computer such as that, it can act as a
tn5250 server. It does that by converting the incoming 5250 data stream
into an equivalent 3270 data stream, and then converting the outgoing
3270 data stream generated by the ESA/390 operating system into an
equivalent 5250 data stream.
In this way, a tn5250 client terminal can sign on to MUSIC/SP, for example.
This is useful for testing tn5250 client software, without requiring
an actual midrange computer. The port number for
tn5250 is the same one as for tn3270 (remote 3270) connections.
For more details about Sim390's 5250 support, see info5250.txt in the
Techinfo page of the Sim390 home page.
What's new in version 1.7 of Sim390
- New statements in the config file: COPYBLANKS, FONT,
BROWSER.
The FONT statement allows the user to specify a font for
local 3270 session windows.
- Emulation of floating-point instructions:
Added AXR, SXR, MXDR, MXD, DXR. Also, multiply and divide instructions
now give exact results as defined in the IBM Principles of Operation manual.
Previously they used native x86 IEEE floating-point,
which is faster but has slightly less precision, which caused
differences in the low-order 1 to 3 bits of results, compared to
a real mainframe.
- A minor bug was fixed in the IPM instruction (Insert Program Mask).
The high-order 2 bits of the target register were not being set to 0.
- A new HTML help and documentation file sim390_help.htm
is provided.
- Changes to menu items in the Control window:
- File / Printer now displays the printer file, using Notepad.
- The Config menu was renamed to Options.
- Options / Settings... is new.
- Options / Display/update config file now works.
- Help / Help now works, by invoking a web browser to display the
new HTML help file sim390_help.htm.
- The box displayed by Help / About has updated information.
- Menu items which are not supported display a message box.
References
You may find the following external links to be useful:
http://canpub.com/teammpg/de/mcgweb
MUSIC/SP information, downloads, and updates.
http://groups.yahoo.com/group/H390-music
Yahoo discussion group for MUSIC/SP.
http://groups.yahoo.com/group/musicspdemo
Yahoo discussion group for MUSIC/SP Demo system and Sim390.
http://www.ibm.com
IBM's web site, where you can obtain information about ESA/390.
Look for the manual "ESA/390 Principles of Operation".
Various versions exist, for example 4th Edition, Sep/1996, SA22-7201-03.
http://www.hercules-390.org