Giter Site home page Giter Site logo

sdl-hercules-390 / hyperion Goto Github PK

View Code? Open in Web Editor NEW
222.0 222.0 84.0 69.22 MB

The SDL Hercules 4.x Hyperion version of the System/370, ESA/390, and z/Architecture Emulator

License: Other

Makefile 1.24% C 67.41% Shell 1.90% Batchfile 0.53% M4 1.23% HTML 4.95% REXX 0.39% CSS 0.01% Scilab 1.48% Assembly 20.68% JCL 0.18%
emulator ibm mainframe mainframe-emulator

hyperion's People

Contributors

76bav avatar agadsby avatar atncsj6h avatar bluecmd avatar dasdman avatar davide125 avatar fish-git avatar g4ugm avatar gsf600y avatar ivan-w avatar jameswekel avatar janjaeger avatar jmaynard avatar jphartmann avatar juergen-git avatar kleonard avatar mcisho avatar nealef avatar peter-j-jansen avatar rbowler avatar rhialto avatar robionekenobi avatar rwoodpd avatar s390guy avatar salva-rczero avatar srorso avatar superman32432432 avatar wably avatar wfjm avatar wrljet avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

hyperion's Issues

MISSING: Miscellaneous-Instruction-Extensions Facility 1

Miscellaneous-Instruction-Extensions Facility   (September, 2012)

The miscellaneous-instruction-extensions facility may be available on a model implementing the z/Architecture.

The facility provides additional instruction formats for the following new instructions:

  • CLT    (COMPARE LOGICAL AND TRAP)
  • CLGT   (COMPARE LOGICAL AND TRAP)
  • RISBGN (ROTATE THEN INSERT SELECTED BITS)

MISSING: Entropy Encoding Compression Facility

Entropy Encoding Compression Facility   (September, 2017)

The entropy-encoding-compression facility may be available on models implementing z/Architecture. When the facility is installed an additional entropy encoding/decoding step may be performed as part of COMPRESSION CALL.

MISSING: Execution-Hint Facility

Execution-Hint Facility   (September, 2012)

The facility provides the means by which the program can provide hints which the CPU may take into consideration when deciding what information to maintain and use for storage-operand accesses and branch prediction.

The facility provides the following new instructions.

  • BPP  (BRANCH PREDICTION PRELOAD)
  • BPRP (BRANCH PREDICTION RELATIVE PRELOAD)
  • NIAI (NEXT INSTRUCTION ACCESS INTENT)

Additionally, new prefetch-intent codes are defined for the following instructions:

  • PFD   (PREFETCH DATA)
  • PFDRL (PREFETCH DATA RELATIVE LONG). 

MISSING: Processor-Assist Facility

Processor-Assist Facility   (September, 2012)

Note: This issue depends on issue "MISSING: Transactional-Execution Facility" #28 being completed beforehand.

The processor-assist facility may be available on a model implementing z/Architecture. The facility provides the means by which the program can request that the processor perform an assist function. The program specifies which assist function is to be performed in an immediate (M3) field of the instruction.

The facility provides the following general instruction:

• PERFORM PROCESSOR ASSIST

The processor-assist functions provided include the following:

• Transaction-abort assist

Replace 'getenv' calls with 'get_symbol' calls instead

Replace getenv calls with get_symbol instead, to make it easier to override an existing or non-existing environment variable setting (such as HERCULES_IFC for example).

Our existing get_symbol functionality already contains logic to call getenv if the specified symbol is not defined to Hercules's existing symbol pool, so the end result should be completely transparent to the user and would provide much improved functionality not to mention easier debugging.

MISSING: Load-Program-Parameter and CPU-Measurement Facilities

Load-Program-Parameter and CPU-Measurement Facilities   (September, 2012)

The Load-Program-Parameter and CPU-Measurement Facilities may be available on a model implementing z/Architecture.

The Load-Program-Parameter Facility consists of the LOAD PROGRAM PARAMETER instruction, and one 64-bit program-parameter register. This facility is a prerequisite for the CPU-measurement sampling facility.

Bit 40 of the list of facility bits provided by the STORE FACILITY LIST EXTENDED instruction indicates the installation status of the load-program-parameter facility.

The CPU-measurement facility consists of two parts: a CPU-measurement counter facility and a CPU-measurement sampling facility.

The former provides a means to measure activities in the CPU and some shared peripheral processors; the latter provides a means to take a snapshot of the CPU at a specified sampling interval and requires the LOAD PROGRAM PARAMETER facility as a prerequisite.

Bits 67 and 68 of the list of facility bits provided by the STORE FACILITY LIST EXTENDED instruction indicate the installation status of the CPU-measurement counter facility and the CPU-measurement sampling facility, respectively.

The facilities together provide the following privileged instructions:

•  LOAD PROGRAM PARAMETER
•  EXTRACT COPROCESSOR-GROUP ADDRESS
•  EXTRACT CPU COUNTER
•  EXTRACT PERIPHERAL COUNTER
•  LOAD CPU-COUNTER-SET CONTROLS
•  LOAD PERIPHERAL-COUNTER-SET CONTROLS
•  QUERY COUNTER INFORMATION
•  SET CPU COUNTER
•  SET PERIPHERAL COUNTER

Both facilities are described in detail in manual SA23-2260-03: "The Load-Program-Parameter and CPU-Measurement Counter Facilities".

MISSING: ESA/390-Compatibility-Mode Facility

ESA/390-Compatibility-Mode Facility   (September, 2017)

The ESA/390-compatibility-mode (390-CM) facility may be available on a model implementing z/Architecture. A configuration operating in the ESA/390- compatibility mode provides an environment supporting a subset of DAT-off ESA/390 programs in a hybrid architectural mode.

See “ESA/390-Compatibility- Mode Facility” on page 5-111 of SA22-7832-11 for details.

XCF signaling stopped working.

Hi.
With Hercules version ga36e0bbc (8873, dated 2017-07-08) I reported an issue with “XCF signaling stopped working” (Issue #11).

With version g6359717a (8904, dated 2017-11-04) it seems that same issue is back. I have the same problem.

With version gb6106b1 (which was a private build at commit b6106b1 dated Jul 29, 2017 that includes the fix for Issue 11), everything with XCF was working fine for me.

Hercules configuration file for system E001:

    0E24 CTCE 31880 localhost 31882 
    0E25 CTCE 31884 localhost 31886

Hercules configuration file for system E002:

    0E24 CTCE 31882 localhost 31880
    0E25 CTCE 31886 localhost 31884

image

Goran Eklof
mail: [email protected]

MISSING: Insert-Reference-Bits-Multiple Facility

Insert-Reference-Bits-Multiple Facility   (September, 2017)

The insert-reference-bits-multiple facility may be available on a model implementing z/Architecture. The facility provides the means by which the reference bits for 64 contiguous blocks of storage can be inspected in a single instruction.

Problem compiling on platforms which have inttypes.h but don't have stdint.h

When trying to compile on VMS, I get conflicts between the following typedefs in htypes.h and variants of the same typedefs in inttypes.h which is included if available before them:

typedef char int8_t;
typedef long long int64_t;
typedef unsigned long long uint64_t;

It appears that this can be resolved using something like the following:

#ifdef HAVE_INTTYPES_H
#include <inttypes.h>
#elif defined(HAVE_STDINT_H)
#include <stdint.h>
#else
list of several typedefs for those who have neither inttypes.h nor stdint.h
#endif

At least that works for me. It probably should be tested on other platforms too.

MISSING: Miscellaneous-Instruction-Extensions Facility 2

Miscellaneous-Instruction-Extensions Facility 2   (September, 2017)

The miscellaneous-instruction-extensions facility 2 may be available on a model implementing the z/Architecture. The facility provides the following additional instructions:

  • ADD HALFWORD (AGH)
  • BRANCH INDIRECT ON CONDITION
  • MULTIPLY (MG, MGRK)
  • MULTIPLY HALFWORD (MGH)
  • MULTIPLY SINGLE (MSC, MSGC, MSGRKC, MSRKC)
  • SUBTRACT HALFWORD (SGH)

MISSING: Guarded-Storage Facility

Guarded-Storage Facility   (September, 2017)

The guarded-storage facility may be available on a model implementing z/Architecture. The facility provides a means by which a problem-state program can designate an area of logical storage comprising guarded-storage sections. The facility includes the following instructions:

  • LOAD GUARDED (LGG)
  • LOAD LOGICAL AND SHIFT GUARDED (LLGFSG)
  • LOAD GUARDED STORAGE CONTROLS (LGSC)
  • STORE GUARDED STORAGE CONTROLS (STGSC)

When the facility is installed in the configuration, enabled by the control program, and the second operand of the LOAD GUARDED or LOAD LOGICAL AND SHIFT GUARDED designates a guarded-storage section, a guarded-storage event is recognized, and control is passed to a guarded-storage event handler. Otherwise, the respective instructions simply perform their defined load operations.

The guarded-storage facility is intended to be used by various programming languages that implement storage-reclamation techniques commonly referred to as garbage collection. All other instructions that access a range of guarded storage are unaffected by the facility, only the LGG and LLGFSG instructions are capable of generating a guarded-storage event.

Build errors on Linux related to telnet external package

The following link errors occur when attempting to build on Linux:

[...]
In file included from aes.c:43:
In file included from ../hercules.h:146:
../hstructs.h:19:10: fatal error: 'telnet.h' file not found
In file included from dyncrypt.c:28:
In file included from ../hercules.h:146:
../hstructs.h:19:10: fatal error: 'telnet.h' file not found
In file included from des.c:47:
In file included from ../hercules.h:146:
../hstructs.h:19:10: fatal error: 'telnet.h' file not found
1 error generated.
make[2]: *** [aes.lo] Error 1
make[2]: *** Waiting for unfinished jobs....
1 error generated.
make[2]: *** [des.lo] Error 1
In file included from sha256.c:52:
In file included from ../hercules.h:146:
../hstructs.h:19:10: fatal error: 'telnet.h' file not found
1 error generated.
make[2]: *** [dyncrypt.lo] Error 1
1 error generated.
make[2]: *** [sha256.lo] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

Looks like I need to to adjust Herc's configure.ac and Makefile.am to pass the list of ext pkg include directories to dyncrypt's Makefile.am.

Working on it...

Incorrect calls to getrusage()

Please take a look at issue #217 on the hercules-390/hyperion issues page as the same code is present in this fork.

While it looks likely that the issue arises only on Linux or other unix platforms and probably does not arise on Windows platforms, I suspect there is a desire here to ensure things work correctly on all platforms and that use is not made of undocumented features.

MISSING: Vector-Enhancements Facility 1

Vector-Enhancements Facility 1   (September, 2017)

The vector-enhancements facility 1 may be available on models implementing the vector facility for z/Architecture. The facility adds support for the following features and functions:

The facility also includes the following new instructions:

  • VECTOR BIT PERMUTE
  • VECTOR MULTIPLY SUM LOGICAL
  • VECTOR NOT EXCLUSIVE OR
  • VECTOR NAND
  • VECTOR OR WITH COMPLEMENT
  • VECTOR FP MAXIMUM
  • VECTOR FP MINIMUM

The facility adds support for halfword, word, and doubleword elements to VECTOR POPULATION COUNT.

The facility adds support for BFP short format and BFP extended format elements to most instructions in chapter 24.

MISSING: Decimal Floating Point Zoned-Conversion Facility

Decimal Floating Point Zoned-Conversion Facility   (September, 2012)

The facility includes the following features and instructions:

1.  In Chapter 8, “Decimal Instructions,” the zoned
    format is defined to include the ASCII zone value
    (0011 binary).

2. In Chapter 20, “Decimal-Floating-Point Instructions,”
   the following new instructions are defined:

      • CDZT (CONVERT FROM ZONED)
      • CXZT (CONVERT FROM ZONED)
      • CZDT (CONVERT TO ZONED)
      • CZXT (CONVERT TO ZONED)

MISSING: Message-Security-Assist Extension 5

Message-Security-Assist Extension 5   (March, 2015)

The message-security-assist extension 5 provides support for deterministic pseudorandom-number seeding and generation that conforms to the National Institute of Standards and Technology (NIST) special publication 800-90A. The message-security-assist extension 5 may be available on models implementing the z/Architecture architectural mode. The extension provides the following instruction:

  • PERFORM RANDOM NUMBER OPERATION (PRNO)

The PERFORM RANDOM NUMBER OPERATION instruction provides the following functions:

  • PRNO-Query
  • PRNO-SHA-512-DRNG

The message-security-assist extension 5 requires the secure-hash-algorithm (SHA-512) capabilities of the message-security-assist extension 2 as a prerequisite.

Note: The PERFORM RANDOM NUMBER OPERATION instruction was formerly named PERFORM PSEUDORANDOM NUMBER OPERATION. With the addition of the message-security-assist extension 7, the same instruction is also capable of generating true random numbers, hence the name change. The former mnemonic PPNO is deprecated, but is still retained.

MISSING: Test-Pending-External-Interruption Facility

Test-Pending-External-Interruption Facility   (September, 2017)

The test-pending-external-interruption facility may be available on a model implementing z/Architecture. The facility provides the means by which a control program can determine whether one or more of a subset of external interruptions is pending in the CPU. The facility provides the TEST PENDING EXTERNAL INTERRUPTION instruction.

MISSING: PER Zero-Address-Detection Facility

PER Zero-Address-Detection Facility   (August, 2010)

The PER zero-address-detection facility may be available on a model implementing z/Architecture. When the facility is installed and enabled, a PER zero-address-detection event is caused by execution of an instruction that accesses storage using an operand address formed from a general register containing zero.

Instruction registers display is buggy/unreliable


Note: this issue is closely related to issue #33: "Trace-to-file feature".


When instruction tracing/stepping is enabled (t+ and s+ commands), Control, Floating Point and Access registers are not being displayed for some instructions which actually modify/use them. (See e.g. display_inst_regs function in hscmisc.c)


Edit: The problem also occurs when an instruction is displayed as a result of an interruption too, such as when e.g. an Operation Exception or Translation Specification Exception occurs. That is to say, the problem is not limited to just the t+ and s+ tracing/stepping commands. It is a general overall problem/issue with (design flaw in) the display_inst_regs function itself.

Having the Control Registers also displayed whenever a program interrupt occurs for example, can be quite valuable information to have, as it can tell you in which address space the problem occurred for example.


The problem stems from the fact that the display_inst_regs function is deciding whether or not to also display the "other" registers (CR, AR, FPR) based on tests for specific instruction opcodes, which overly complicates the logic and makes it it less reliable and harder to maintain (e.g. it's easy to overlook updating this function when new instructions are added to the architecture for example).

We need a more reliable, less error prone way to determine whether CR, AR, FPR should be traced or not for a given instruction. I'm thinking maybe an update to our existing OPCODE table might do the trick.

I propose adding (*) a new regsmask parameter to our existing GENx370x390x900 and related macros, that defines which registers the given instruction uses or modifies. Then the display_inst_regs function could then do a simple(?) table lookup to retrieve the mask, thereby reliably determining which registers should be displayed/traced.


(*) And adjusting all "opcode table" related code that might be impacted by such a change too of course. That is to say, I haven't researched yet the ramifications (impact) that adding a new field to our opcode table might cause.

We need 64-bit CCKD support!

Note: Issue #167 "CCKD64 support needed for cckddump/cckdload utils" is a sub-project (sub-issue) of this issue.


This is just a single ToDo item on my long Hercules To-Do list.

Basically I need to either carefully modify existing Compressed CKD (CCKD) code to allow dasd image and shadow files to grow larger than 4GB (which is the current limit due to the use of 32-bit variables (e.g. file offsets) instead of 64-bit variables), or else I need to create a copy of the existing code and carefully modify it instead (thus creating a new CCKD64 device type, but leaving existing CCKD support intact).

OR...   I need to design/develop brand new (from scratch) support for CCKD64 myself (since either way is going to cause an obvious incompatibility issue)

I'm currently leaning towards writing brand new code myself.

MISSING: Message-Security-Assist Extension 8

Message-Security-Assist Extension 8   (September, 2017)

The message-security-assist extension 8 may be available on models implementing the z/Architecture architectural mode. The message-security-assist extension 8 provides support for both ciphering and authentication of a message, and the authentication of additional data (other than the message). The message-security-assist extension 8 provides the following instruction:

  • CIPHER MESSAGE WITH AUTHENTICATION (KMA)

The CIPHER MESSAGE WITH AUTHENTICATION instruction provides support for the Galois-counter-mode (GCM) of ciphering, as described in Reference [17.] on page xxx. Functions provided by the instruction include the following:

  • KMA-Query
  • KMA-GCM-AES-128
  • KMA-GCM-AES-192
  • KMA-GCM-AES-256
  • KMA-GCM-encrypted-AES-128
  • KMA-GCM-encrypted-AES-192
  • KMA-GCM-encrypted-AES-256

Limit in FBA volume sizes

I am running into a problem when I try to use FBA volumes larger than 3GB.

I can attach the volume to the guest machine but when I try to format the volume using ICKDSF it gives errors above block 799994 4K blocks (6399952 512B blocks).

I have tried different FBA device types with the same results.

Note that I've used CKD devices larger than 3GB without problems. It seems that this limit only occurs with FBA devices.

ICK30701I  EQUIPMENT CHECK ON D001
CSW = D87B60 0E000000   CCW = 41DE33E8 20000006   FILEMASK = C4
SENSE = 10000000 00000000 00000000 00000000 00000000 00000000
ICK30699I I/O RETRY LIMIT EXCEEDED
ICK10710I I/O ERROR OCCURRED ON DEVICE D001
CSW = D87B60 0E000000   CCW = 41DE33E8 20000006   FILEMASK = C4
SENSE = 10000000 00000000 00000000 00000000 00000000 00000000

'make check' fails for a debug build

Hi,

I get the following error when running 'make check' on Linux for a 'debug build':

$ configure --enable-debug --enable-getoptwrapper --enable-ipv6 --enable-cckd-bzip2 --enable-het-bzip2 --enable-object-rexx --enable-regina-rexx --enable-interlocked-access-facility-2=yes --enable-optimization=no

$ make check
Making check in m4
make[1]: Entering directory '/home/maarten/src/fish-git-hyperion-topdir/build/m4'
make[1]: Nothing to be done for 'check'.
make[1]: Leaving directory '/home/maarten/src/fish-git-hyperion-topdir/build/m4'
Making check in util
make[1]: Entering directory '/home/maarten/src/fish-git-hyperion-topdir/build/util'
make[1]: Nothing to be done for 'check'.
make[1]: Leaving directory '/home/maarten/src/fish-git-hyperion-topdir/build/util'
Making check in html
make[1]: Entering directory '/home/maarten/src/fish-git-hyperion-topdir/build/html'
make[1]: Nothing to be done for 'check'.
make[1]: Leaving directory '/home/maarten/src/fish-git-hyperion-topdir/build/html'
Making check in man
make[1]: Entering directory '/home/maarten/src/fish-git-hyperion-topdir/build/man'
make[1]: Nothing to be done for 'check'.
make[1]: Leaving directory '/home/maarten/src/fish-git-hyperion-topdir/build/man'
Making check in .
make[1]: Entering directory '/home/maarten/src/fish-git-hyperion-topdir/build'
make[1]: Leaving directory '/home/maarten/src/fish-git-hyperion-topdir/build'
../hyperion/tests/runtest -p .libs ../hyperion/tests
Files: ../hyperion/tests/agf.tst ../hyperion/tests/awsbsf.tst ../hyperion/tests/bfp-001-divtoint.tst ../hyperion/tests/bfp-002-loadr.tst ../hyperion/tests/bfp-003-loadfpi.tst ../hyperion/tests/bfp-004-cvttolog.tst ../hyperion/tests/bfp-005-cvttolog64.tst ../hyperion/tests/bfp-006-cvttofix.tst ../hyperion/tests/bfp-007-cvttofix64.tst ../hyperion/tests/bfp-008-cvtfrlog.tst ../hyperion/tests/bfp-009-cvtfrlog64.tst ../hyperion/tests/bfp-010-cvtfrfix.tst ../hyperion/tests/bfp-011-cvtfrfix64.tst ../hyperion/tests/bfp-012-loadtest.tst ../hyperion/tests/bfp-013-comps.tst ../hyperion/tests/bfp-014-divide.tst ../hyperion/tests/bfp-015-sqrt.tst ../hyperion/tests/bfp-016-add.tst ../hyperion/tests/bfp-017-loadl.tst ../hyperion/tests/bfp-018-subtract.tst ../hyperion/tests/bfp-019-multiply.tst ../hyperion/tests/bfp-020-multlonger.tst ../hyperion/tests/bfp-021-multadd.tst ../hyperion/tests/bfp-022-multsub.tst ../hyperion/tests/cipher.tst ../hyperion/tests/cmd-abs.tst ../hyperion/tests/cmd-rv.tst ../hyperion/tests/csxtr.tst ../hyperion/tests/digest.tst ../hyperion/tests/hetbsf.tst ../hyperion/tests/ilc.tst ../hyperion/tests/invpsw.tst ../hyperion/tests/kimd-hw.tst ../hyperion/tests/klmd-hw.tst ../hyperion/tests/kmac-hw.tst ../hyperion/tests/kmc-hw.tst ../hyperion/tests/kmctr-hw.tst ../hyperion/tests/kmf-hw.tst ../hyperion/tests/km-hw.tst ../hyperion/tests/kmo-hw.tst ../hyperion/tests/leapfrog.tst ../hyperion/tests/logicimm.tst ../hyperion/tests/mainsize.tst ../hyperion/tests/mhi.tst ../hyperion/tests/mvcle.tst ../hyperion/tests/pfpo.tst ../hyperion/tests/privop.tst ../hyperion/tests/problem.tst ../hyperion/tests/pr.tst ../hyperion/tests/runtest0.tst ../hyperion/tests/runtest4.tst ../hyperion/tests/semipriv.tst ../hyperion/tests/sigp.tst ../hyperion/tests/ssk370.tst ../hyperion/tests/sske370.tst ../hyperion/tests/sske390.tst ../hyperion/tests/sske.tst ../hyperion/tests/stfl.tst ../hyperion/tests/timeout.tst ../hyperion/tests/wild.tst ../hyperion/tests/zeos.tst
Variable ptrsize set to "8".
Variable platform set to "Linux".
Not variable assignment in argument string:  ../hyperion/tests
Novalue in /home/maarten/src/fish-git-hyperion-topdir/hyperion/tests/redtest.rexx   -- variable OKS
   738 >>>    oks = oks + 1
  This is often caused by missing or misspelled *Testcase
  Note that the verbs are case sensitive.  E.g., *testcase is not correct.
   767 +++                Signal Value lets_get_a_traceback
   563 +++             Call test lastmsg.ix = rest, msgtype 'message mismatch. ' info , 'Want:' rest, 'Got: ' lastmsg.ix
   348 +++          call msg 'Error'
   266 +++       Call order
    97 +++    Call procline l
Error 16 running "/home/maarten/src/fish-git-hyperion-topdir/hyperion/tests/redtest.rexx", line 767: Label not found
Error 16.1: Label "LETS_GET_A_TRACEBACK" not found
Makefile:2839: recipe for target 'check' failed
make: *** [check] Error 240

MISSING: Constrained-Transactional-Execution Facility

Constrained-Transactional-Execution Facility   (September, 2012)

The constrained-transactional-execution facility may available on a model in which the transactional-execution facility is installed. The constrained-transactional-execution facility ensures that – in the absence of repeated interruptions or conflicts with other CPUs or the I/O subsystem – transactional execution will eventually complete; thus, an abort-handler routine is not required. The facility provides the TRANSACTION BEGIN (TBEGINC) general instruction.

MISSING: Configuration-z/Architecture- Architectural-Mode Facility

Configuration-z/Architecture- Architectural-Mode Facility   (September, 2017)

The configuration-z/Architecture-architectural-mode (CZAM) facility may be present on a model implementing z/Architecture. When the facility is installed in a configuration, the configuration is reset into the z/Architecture architectural mode (rather than into the ESA/390 architectural mode), and the configuration cannot be switched into the ESA/390 architectural mode.

The facility may be installed in a configuration operating in a logical partition and in a configuration operating as a guest of a logical partition.

MISSING: Message-Security-Assist Extension 6

Message-Security-Assist Extension 6   (September,2017)

The message-security-assist extension 6 may be available on models implementing the message-security assist. The extension provides the following additional functions for the COMPUTE INTERMEDIATE MESSAGE DIGEST and COMPUTE LAST MESSAGE DIGEST instructions.

MSA SHA-3 Hash Facility: This facility consists of the following four functions for generating message digests having a length of 224, 256, 384, and 512 bits, using the respective SHA-3 functions defined in Reference [21.] on page xxx.

  • KIMD-SHA3-224
  • KIMD-SHA3-256
  • KIMD-SHA3-384
  • KIMD-SHA3-512
  • KLMD-SHA3-224
  • KLMD-SHA3-256
  • KLMD-SHA3-384
  • KLMD-SHA3-512

MSA SHA-3 Extendable-Output Facility: This facility consists of the following functions for producing message digests having any desired length using the SHAKE-128 and SHAKE-256 functions described in Reference [21.] on page xxx.

  • KIMD-SHAKE-128
  • KIMD-SHAKE-256
  • KLMD-SHAKE-128
  • KLMD-SHAKE-256

MISSING: Transactional-Execution Facility

Transactional-Execution Facility   (September, 2012)

Note: Issue "MISSING: Processor-Assist Facility" #27 is dependent in this issue being completed beforehand.

The transactional-execution facility may be available on a model implementing z/Architecture. The facility provides the means by which a program can issue multiple instructions, the storage accesses of which either (a) appear to occur as a single concurrent operation or (b) do not appear to occur, as observed by other CPUs and by the channel subsystem.

The facility provides the following general instructions:

• EXTRACT TRANSACTION NESTING DEPTH
• NONTRANSACTIONAL STORE
• TRANSACTION ABORT
• TRANSACTION BEGIN
• TRANSACTION END

XCF signaling stopped working with ga36e0bbc

Hi. After installing Hercules pre-built version Hercules-4.0.0.8873-SDL-ga36e0bbc, XCF signaling stopped working in both my base sysplex.

With version Hercules-4.0.0.8845-SDL-g15c01ddb and some earlier versions both my base sysplex is working great.

I tested the newest version a couple of times and the first system in the plex is coming up fine but the second system get no contact with the first system. This happens every time I test. You can see the response in the last picture in the attached file. As soon I go back to the version Hercules-4.0.0.8845-SDL-g15c01ddb both my plex works fine again.

In the attached file I show how the CTCE's are configured in the two Hercules configuration files as well as the corresponding parmlib couple members for both systems.

XCF_signalling_stopped_working.docx

MISSING: Load-and-Trap Facility

Load-and-Trap Facility   (September, 2012)

The facility adds instructions that can be used to assist the program in determining when a value of all zeros (an address for example) has been loaded into a designated register.

The facility provides the following new instructions:

  • LAT    (LOAD AND TRAP)
  • LGAT   (LOAD AND TRAP)
  • LFHAT  (LOAD HIGH AND TRAP)
  • LLGFAT (LOAD LOGICAL AND TRAP)
  • LLGTAT (LOAD LOGICAL THIRTY ONE BITS AND TRAP)

DIAGNOSE instructions should be documented

Hercules supports many Diagnose instructions (see ARCH_DEP(diagnose_call) in source file diagnose.c), some of which are Hercules-specific (FEATURE_HERCULES_DIAGCALLS).

I personally feel all such diagnose instructions (whether Hercules-specific or not) should be documented somewhere in our documentation.

This is just another possible "TO-DO" item.

macOS clang linker error introduced with 2016-11-23 code level

Hi,
trying to compile on macOS 10.12.2 I get the following error messages.
This issue was introduced with 2016-11-23 code changes:

::
::
4 warnings generated.
CC trace.lo
CC vector.lo
CC vm.lo
CC vmd250.lo
CC vstore.lo
CC w32util.lo
CC xstore.lo
CCLD libherc.la

*** Warning: Linking the shared library libherc.la against the
*** static library decNumber/lib/libdecNumber64.a is not portable!

*** Warning: Linking the shared library libherc.la against the
*** static library SoftFloat/lib/libSoftFloat64.a is not portable!
ld: warning: ignoring file decNumber/lib/libdecNumber64.a, file was built for archive which is not the architecture being linked (x86_64): decNumber/lib/libdecNumber64.a
ld: warning: ignoring file SoftFloat/lib/libSoftFloat64.a, file was built for archive which is not the architecture being linked (x86_64): SoftFloat/lib/libSoftFloat64.a
Undefined symbols for architecture x86_64:
"_decContextDefault", referenced from:
_z900_add_dfp_ext_reg in dfp.o
_z900_add_dfp_long_reg in dfp.o
_z900_compare_dfp_ext_reg in dfp.o
_z900_compare_dfp_long_reg in dfp.o
_z900_compare_and_signal_dfp_ext_reg in dfp.o
_z900_compare_and_signal_dfp_long_reg in dfp.o
_z900_compare_exponent_dfp_ext_reg in dfp.o
...
"_decNumberAdd", referenced from:
::
::
"_ui64_to_f64", referenced from:
_z900_convert_u64_to_bfp_long_reg in ieee.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [libherc.la] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

MacBook:2016-11-23_hyperion-master$ clang -v
Apple LLVM version 8.0.0 (clang-800.0.42.1)
Target: x86_64-apple-darwin16.3.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

I am using the following compile/link parameters:
CFLAGS="-O3 -D_FORTIFY_SOURCE=0" CC="gcc" ./configure --enable-optimization="-O3 -mtune=native -fomit-frame-pointer -Wunreachable-code"
make

2016-11-19 code has no problem to compile !
Any advise to get around this issue ?

cheers Dirk

MISSING: Side-Effect-Access Facility

Side-Effect-Access Facility   (September, 2017)

The side-effect-access facility may be available on a model implementing z/Architecture. When the facility is installed, the translation-exception identification (TEID) stored at real locations 168-175 during certain access exceptions contains an indication that the access was a side-effect access. A side-effect access is an implied access not directly associated with a storage operand of an instruction, is not an instruction fetch, is not a fetch of table information during ART or DAT, and is not a store of a trace entry. Additionally, when the side-effect-access facility is installed, an enhanced three-bit protection code is stored in the TEID.

VS2015 unresolved extern build error using supplied telnet libs

Attempting to build Hyperion using VS2015 (with the default telnet32.lib or telnet64.lib libraries that now come delivered with the repository as of commit bd78204) results in an "unresolved external symbol" link error for vscprintf and vsnprintf_s:

  [...]
  console.c
     Creating library msvc.AMD64.obj\hdt3270.lib and object msvc.AMD64.obj\hdt3270.exp
telnet64.lib(telnet.c.obj) : error LNK2001: unresolved external symbol __imp__vscprintf
telnet64.lib(telnet.c.obj) : error LNK2001: unresolved external symbol __imp__vsnprintf_s
msvc.AMD64.bin\hdt3270.dll : fatal error LNK1120: 2 unresolved externals
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\x86_amd64\link.EXE"' : return code '0x460'
  Stop.
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.MakeFile.Targets(46,5): error MSB3073: The command "makefile.bat RETAIL-X64 makefile.msvc 64 -a -title "** The unofficial SoftDevLabs version of Hercules **"" exited with code 2.

MISSING: Vector Packed-Decimal Facility

Vector Packed-Decimal Facility   (September, 2017)

The vector-packed-decimal facility may be available on models implementing z/Architecture. When the facility is installed and enabled, vector decimal instructions are available, allowing operations on packed data in vector registers. The facility provides the following instructions:

  • VECTOR ADD DECIMAL
  • VECTOR COMPARE DECIMAL
  • VECTOR CONVERT TO BINARY
  • VECTOR CONVERT TO DECIMAL
  • VECTOR DIVIDE DECIMAL
  • VECTOR LOAD IMMEDIATE DECIMAL
  • VECTOR LOAD RIGHTMOST WITH LENGTH
  • VECTOR MULTIPLY DECIMAL
  • VECTOR MULTIPLY AND SHIFT DECIMAL
  • VECTOR PACK ZONED
  • VECTOR PERFORM SIGN OPERATION DECIMAL
  • VECTOR REMAINDER DECIMAL
  • VECTOR SHIFT AND DIVIDE DECIMAL
  • VECTOR SHIFT AND ROUND DECIMAL
  • VECTOR STORE RIGHTMOST WITH LENGTH
  • VECTOR SUBTRACT DECIMAL
  • VECTOR TEST DECIMAL
  • VECTOR UNPACK ZONED

Trace-to-file feature


Note: this issue is closely related to issue #32: "Instruction registers display is buggy/unreliable".


Instruction and I/O tracing is currently very slow (introduces a significant performance impact) due to, I believe, the fact that the current implementation always immediately formats and displays the trace information directly to the console while tracing is active (which is very inefficient not only because formatting a message itself is inefficient, but also because our entire message handling is itself incredibly inefficient, passing formatted messages through a pipe, etc).

I suspect the performance of instruction and I/O tracing would be dramatically improved if we would instead simply write the raw information to a disk file which could then be processed by an offline utility to selectively display the desired information.

MISSING: Instruction-Execution-Protection Facility

Instruction-Execution-Protection Facility   (September, 2017)

The instruction-execution-protection facility may be available on a model implementing z/Architecture. When the facility is installed and enabled, and an instruction is fetched from the primary or home address space, an instruction-execution-protection control in the leaf DAT-table entry used in the translation determines whether instructions may or may not be executed from the frame mapped by the entry.

The facility may be used by a control program to better segregate instructions from data. Improved system reliability and integrity may be realized by preventing the execution of instructions from storage locations intended to contain only data. For example, erroneously or maliciously modified data in a program stack can be prevented from being executed.

HTHREADS review/redesign/rewrite with Windows R/W lock support


Note: issue #112 "HTHREADS thread-priorities implementation appears BORKED" appears to be closely related to this one.


Significant enhancements to Hercules's lock handling has been done over the years (mostly for integrity/error-checking purposes), resulting in a likely inefficient design and implementation (based on looking at the code), thereby slowing down all of Hercules given how much it (or any multi-threaded program, really!) relies on locks for controlled access to shared resources.

A detailed review, redesign and potential complete rewrite appears to very likely be in order.

One thing that might possibly be done right away is to have separate debug and non-debug versions of all locking functions to eliminate the overhead that exists in the current design, which currently tries hard to catch locking errors (which as we all know are otherwise notoriously difficult to catch).

But the most important change that could probably be made is to implement RW locking support in Windows and then leverage RW locking in all of Hercules.

POSIX pthreads has long supported RW locks (pthread_rwlock... set of functions) but Windows only introduced "Slim Reader/Writer (SRW) Locks" starting with Windows Vista, and due to Windows XP being, at the time, our minimum supported platform, our hthreads implementation for Windows failed to support it (and we never bothered to try replacing our existing mutex locks with R/W locks anywhere within Hercules either as a result).

Now that the minimum supported platform for SoftDevLabs Hyperion has been changed to Windows Vista or greater however, concerned effort should be undertaken to provide native Windows R/W locking support via Windows's "Slim Reader/Writer (SRW) Locks" functions.

Bottom line:   Hercules's HTHREADS implementation needs a lot of attention!

ASN and LX Reuse Facility should default to enabled

Hercules's facility table (FACTAB in archlvl.c) currently has the ASN-and-LX Reuse Facility defaulting to disabled:

#if defined(_FEATURE_ASN_AND_LX_REUSE)
FACILITY( ASN_LX_REUSE,  0, /*Z390*/   NONE,   Z390,   ALS2|ALS3 )
#endif

thereby requiring users to insert an ARCHLVL ENABLE ASN_LX_REUSE statement into their Hercules configuration file when running an operating system that expects the facility to be present. (Otherwise such operating systems won't even IPL.)

The historical reason(s) for why it was decided to default the facility bit to off (disabled) is unimportant. What is important (IMO) is to correct the error by always defaulting to enabled, thereby reversing the requirement for our users to instead insert a ARCHLVL DISABLE ASN_LX_REUSE statement into their Hercules configuration file when running an operating system that is incompatible with the facility (which are less common than those expecting it).

This issue is just a reminder ("TO-DO" item) so I can remember to change it and to give others an opportunity to comment on this issue before it is implemented.

POLL: Should CTCT support also be dropped?

Hercules currently supports many different networking device types:
 
 

Type Description
2703 Binary Synchronous (BSC/Bisync) communication line
3088 (generic type used in old/deprecated format device statements)
3705 Communications Controller running NCP
CTCE Enhanced Channel to Channel Emulation via TCP connection (true CTCA)
CTCI Channel to Channel link to host TCP/IP stack
CTCT Channel to Channel Emulation via TCP connection
LCS LAN Channel Station Emulation
OSA (synonym for QETH)
OSD (synonym for QETH)
PTP MPCPTP and/or MPCPTP6 Point-To-Point (PTP)
QETH OSA Express
VMNET SLIP (Serial Line Internet Protocol)

 
 
Support for 3088 and VMNET are definitely going to be dropped, but what about, for example, CTCT? Does anyone actually use CTCT today?

As I recall it was created in an attempt to provide pseudo Channel-to-Channel support, i.e. the ability for two (or more??) Hercules systems to be able to directly communicate with one another just as a true CTC device did.

Unfortunately, as I also recall, it never did work right, and has since been replaced with CTCE, which does provide true CTC support, allowing you to connect multiple Hercules systems together in a sysplex.
 

Q1:   Which Hercules networking communication device types do you personally still use?

Q2:   Would anyone mind if support for CTCT were to be dropped?

 
Thanks!

telnet client connection on Linux causes libtool abort

Attempting to connect a telnet client to Hercules (on Linux) causes Hercules to immediately abort (exit to command line) with a libtool error:

/home/fish/hercules/hercules-0/.libs/lt-herclin: symbol lookup error: .libs/hdt3270.so: undefined symbol: telnet_init

Looking into it...

MISSING: Multiple-Epoch Facility

Multiple-Epoch Facility   (September,2017)

The multiple-epoch facility may be available on a model implementing z/Architecture. The facility provides the means by which a nonzero epoch index may be stored in byte 0 of the operand of the STORE CLOCK EXTENDED instruction and in bits 9-15 of the trace entry formed by the TRACE (TRACG) instruction.

The multiple-epoch facility also provides four additional functions for the PERFORM TIMING FACILITY FUNCTION (PTFF) instruction:

  • Query steering information extended
  • Query TOD offset user extended
  • Set TOD offset extended
  • Set TOD offset user extended

Additionally, the multiple-epoch facility provides the clock-comparator sign control, allowing the comparisons of the clock comparator to be either signed or unsigned.

When the multiple-epoch facility is installed, the store-clock-fast and TOD-clock-steering facilities are also installed.

MISSING: Order Preserving Compression Facility

Order Preserving Compression Facility   (September, 2017)

The order-preserving-compression facility may be available on models implementing z/Architecture. When the facility is installed the ordering of compressed symbols is the same as the ordering of uncompressed data when compression is performed by COMPRESSION CALL.

MISSING: Message-Security-Assist Extension 7

Message-Security-Assist Extension 7   (September, 2017)

The message-security-assist extension 7 may be available on models implementing the message-security-assist extension 5. The extension provides the following additional functions to the PERFORM RANDOM NUMBER OPERATION (PRNO) instruction related to true random number generation:

  • PRNO-TRNG-Query-Raw-to-Conditioned Ratio
  • PRNO-TRNG

Possible race in SCP command processing

There is a possible race condition in SCP command processing.

I say "possible" since the manner in which it is currently behaving might be correct. Further research is required to determine whether the current behavior is correct or not.

When multiple SCP guest commands are issued in rapid succession (by leveraging the now fixed 'cmdsep' feature), it is possible for one or more subsequent commands to be skipped/missed (not processed) while the current command is being processed.

The following log file extract illustrates this behavior:

The above .rc file was used to trigger the behavior. The guest O/S used was z/VM 6.3, but other modern operating systems (such as z/OS) behave similarly.

The test was performed on a Windows 7 x64 host running commit 424ba73 of Hyperion, dated Nov 11, 2017 (i.e. the cmdsep fix).

07:04:55 HHC01603I script "C:\Users\Fish\HercGUI\Configuration Files\scripts\cmdsep.rc.txt"
07:04:55 HHC02260I Script 1: begin processing file C:/Users/Fish/HercGUI/Configuration Files/scripts/cmdsep.rc.txt
07:04:55 HHC01603I msglvl -debug +emsgloc
07:04:55 HHC17012I MSGLEVEL = verbose nodebug emsgloc
07:04:55 HHC01603I *
07:04:55 HHC01603I *
07:04:55 HHC01603I *
07:04:55 HHC01603I * *********************************************************************
07:04:55 HHC01603I * *********************************************************************
07:04:55 HHC01603I * **********************     BEGIN TEST     ***************************
07:04:55 HHC01603I * *********************************************************************
07:04:55 HHC01603I * *********************************************************************
07:04:55 HHC01603I *
07:04:55 HHC01603I cmdsep ^
07:04:55 HHC02204I CMDSEP         set to ^
07:04:55 HHC01603I *
07:04:55 HHC01603I *
07:04:55 HHC01603I *
07:04:55 HHC01603I * -----------------------------------------------------------
07:04:55 HHC01603I *  Each command individually with slight pause between each,
07:04:55 HHC01603I *  so we can see what the correct response should look like.
07:04:55 HHC01603I * -----------------------------------------------------------
07:04:55 HHC01603I *
07:04:55 HHC01603I *
07:04:55 HHC01603I *
07:04:55 HHC00160I SCP command: q e
07:04:55 HHC02262I Script 1: processing paused for 150 milliseconds...
07:04:55 07:04:55 Q E
07:04:55 07:04:55 PRT  000E DRAINED    SYSTEM   CLASS A
07:04:55 07:04:55 PRT  000E FORM STANDARD MANUAL SEP   NO3800  FILEFCB LIMIT NONE
07:04:55 07:04:55 PRT  000E NOFOLD  IMAGE IMAG3211 CHARS A11  FCB FCB1 INDEX 1  LPP 000
07:04:55 07:04:55 PRT  000E DEST OFF      DEST - NONE - DEST - NONE - DEST - NONE -
07:04:55 07:04:55 PRT  000E AFP
07:04:55 HHC02263I Script 1: processing resumed...
07:04:55 HHC01603I *
07:04:55 HHC01603I *
07:04:55 HHC01603I *
07:04:55 HHC00160I SCP command: q cons
07:04:55 HHC02262I Script 1: processing paused for 150 milliseconds...
07:04:55 07:04:55 Q CONS
07:04:55 07:04:55 CONS 0009 ON SYSC         TERM START
07:04:55 07:04:55      0009 CL T NOCONT NOHOLD COPY 001    READY FORM STANDARD
07:04:55 07:04:55      0009 TO OPERATOR PRT DIST OPERATOR  FLASHC 000 DEST OFF
07:04:55 07:04:55      0009 FLASH       CHAR       MDFY       0 FCB       LPP OFF
07:04:55 07:04:55      0009 3215   NOEOF OPEN 0010 NOKEEP NOMSG NONAME
07:04:55 07:04:55      0009 SUBCHANNEL = 0005
07:04:55 HHC02263I Script 1: processing resumed...
07:04:55 HHC01603I *
07:04:55 HHC01603I *
07:04:55 HHC01603I *
07:04:55 HHC00160I SCP command: q cplevel
07:04:55 HHC02262I Script 1: processing paused for 150 milliseconds...
07:04:55 07:04:55 Q CPLEVEL
07:04:55 07:04:55 z/VM Version 6 Release 3.0, service level 1302 (64-bit)
07:04:55 07:04:55 Generated at 08/07/13 11:42:58 PST
07:04:55 07:04:55 IPL at 11/12/17 06:43:01 PST
07:04:55 HHC02263I Script 1: processing resumed...
07:04:55 HHC01603I *
07:04:55 HHC01603I *
07:04:55 HHC01603I *
07:04:55 HHC00160I SCP command: q dasd
07:04:55 HHC02262I Script 1: processing paused for 150 milliseconds...
07:04:55 07:04:55 Q DASD
07:04:55 07:04:55 DASD 0101 CP OWNED  VMCOM1   12
07:04:55 07:04:55 DASD 0201 CP SYSTEM 630RL1   9
07:04:55 07:04:55 DASD 0301 CP OWNED  M01RES   104
07:04:55 07:04:55 DASD 0901 CP OWNED  M01S01   0
07:04:55 07:04:55 DASD 0902 CP OWNED  M01P01   0
07:04:55 07:04:55 DASD 0903 CP SYSTEM M01W01   0
07:04:55 HHC02263I Script 1: processing resumed...
07:04:55 HHC01603I *
07:04:55 HHC01603I *
07:04:55 HHC01603I *
07:04:55 HHC00160I SCP command: q osa
07:04:55 HHC02262I Script 1: processing paused for 150 milliseconds...
07:04:55 07:04:55 Q OSA
07:04:55 07:04:55 OSA  0600 ATTACHED TO TCPIP    0600 DEVTYPE OSA         CHPID F0 OSD
07:04:55 07:04:55 OSA  0601 ATTACHED TO TCPIP    0601 DEVTYPE OSA         CHPID F0 OSD
07:04:55 07:04:55 OSA  0602 ATTACHED TO TCPIP    0602 DEVTYPE OSA         CHPID F0 OSD
07:04:55 HHC02263I Script 1: processing resumed...
07:04:55 HHC01603I *
07:04:55 HHC01603I *
07:04:55 HHC01603I *
07:04:55 HHC00160I SCP command: q set
07:04:55 HHC02262I Script 1: processing paused for 150 milliseconds...
07:04:55 07:04:55 Q SET
07:04:55 07:04:55 MSG ON  , WNG ON  , EMSG ON  , ACNT OFF, RUN ON
07:04:55 07:04:55 LINEDIT ON , TIMER OFF , ISAM OFF, ECMODE ON
07:04:55 07:04:55 ASSIST OFF           , PAGEX OFF, AUTOPOLL OFF
07:04:55 07:04:55 IMSG ON  , SMSG OFF , AFFINITY NONE   , NOTRAN OFF
07:04:55 07:04:55 VMSAVE OFF, 370E OFF
07:04:55 07:04:55 STBYPASS OFF   , STMULTI OFF   00/000
07:04:55 07:04:55 MIH OFF , VMCONIO OFF , CPCONIO OFF , SVCACCL OFF , CONCEAL OFF
07:04:55 07:04:55 MACHINE ESA, SVC76 CP, NOPDATA OFF, IOASSIST OFF
07:04:55 07:04:55 CCWTRAN ON, 370ACCOM OFF, TIMEBOMB IDLE
07:04:56 HHC02263I Script 1: processing resumed...
07:04:56 HHC01603I *
07:04:56 HHC01603I *
07:04:56 HHC01603I *
07:04:56 HHC00160I SCP command: q stor
07:04:56 HHC02262I Script 1: processing paused for 150 milliseconds...
07:04:56 07:04:56 Q STOR
07:04:56 07:04:56 STORAGE = 5G CONFIGURED = 5G INC = 1M STANDBY = 0  RESERVED = 0
07:04:56 HHC02263I Script 1: processing resumed...
07:04:56 HHC01603I *
07:04:56 HHC01603I *
07:04:56 HHC01603I *
07:04:56 HHC00160I SCP command: q sys
07:04:56 HHC02262I Script 1: processing paused for 150 milliseconds...
07:04:56 07:04:56 Q SYS
07:04:56 07:04:56  
07:04:56 07:04:56 DASD 0101 ATTACHED CPVOL  0012 VMCOM1
07:04:56 07:04:56 VMSERVP  0311 R/W      , VMSERVP  0310 R/W      , VMSERVP  0309 R/W
07:04:56 07:04:56 VMSERVP  0308 R/W      , VMSERVP  0307 R/W      , VMSERVP  0306 R/W
07:04:56 07:04:56 VMSERVP  0305 R/W      , VMSERVP  0304 R/W      , VMSERVP  0303 R/W
07:04:56 07:04:56 VMSERVP  0301 R/W      , VMSERVP  0302 R/W      , VMSERVP  0191 R/W
07:04:56 07:04:56  
07:04:56 07:04:56 DASD 0201 ATTACHED SYSTEM 0009 630RL1
07:04:56 07:04:56 DTCVSW1  0492 R/O      , DTCVSW2  0492 R/O      , TCPIP    0492 R/O
07:04:56 07:04:56 FTPSERVE 0492 R/O      , DTCVSW1  0491 R/O      , DTCVSW2  0491 R/O
07:04:56 07:04:56 TCPIP    0491 R/O      , FTPSERVE 0491 R/O      , EREP     0201 R/O
07:04:56 07:04:56  
07:04:56 07:04:56 DASD 0301 ATTACHED CPVOL  0104 M01RES
07:04:56 07:04:56 OPERATOR 0191 R/W      , OPERATOR 0192 R/O      , FTPSERVE 0191 R/W
07:04:56 07:04:56 TCPIP    0191 R/W      , VMSERVR  0307 R/W      , VMSERVR  0306 R/W
07:04:56 07:04:56 VMSERVR  0305 R/W      , DTCVSW1  0191 R/W      , VMSERVU  0305 R/W
07:04:56 07:04:56 VMSERVR  0304 R/W      , DTCVSW2  0191 R/W      , VMSERVU  0304 R/W
07:04:56 07:04:56 VMSERVR  0303 R/W      , DTCVSW2  0198 R/O      , DTCVSW1  0198 R/O
07:04:56 07:04:56 TCPIP    0198 R/O      , FTPSERVE 0198 R/O      , VMSERVU  0303 R/W
07:04:56 07:04:56 VMSERVR  0302 R/W      , DTCVSW2  0592 R/O      , DTCVSW1  0592 R/O
07:04:56 07:04:56 TCPIP    0592 R/O      , FTPSERVE 0592 R/O      , VMSERVU  0302 R/W
07:04:56 07:04:56 VMSERVR  0301 R/W      , DTCVSW2  0591 R/O      , DTCVSW1  0591 R/O
07:04:56 07:04:56 TCPIP    0591 R/O      , FTPSERVE 0591 R/O      , VMSERVU  0301 R/W
07:04:56 07:04:56 VMSERVR  0191 R/W      , VMSERVU  0191 R/W      , VMSERVS  0305 R/W
07:04:56 07:04:56 VMSERVS  0304 R/W      , VMSERVS  0303 R/W      , VMSERVS  0302 R/W
07:04:56 07:04:56 VMSERVS  0301 R/W      , VMSERVS  0191 R/W      , OPERSYMP 0191 R/W
07:04:56 07:04:56 OPERSYMP 0192 R/O      , VMSERVS  0193 R/O      , VMSERVU  0193 R/O
07:04:56 07:04:56 VMSERVR  0193 R/O      , VMSERVP  0193 R/O      , DISKACNT 0191 R/W
07:04:56 07:04:56 EREP     0191 R/W      , DISKACNT 0401 R/O      , OPERSYMP 0401 R/O
07:04:56 07:04:56 VMSERVS  0401 R/O      , VMSERVP  0401 R/O      , DTCVSW2  0401 R/O
07:04:56 07:04:56 VMSERVU  0401 R/O      , DTCVSW1  0401 R/O      , VMSERVR  0401 R/O
07:04:56 07:04:56 TCPIP    0401 R/O      , FTPSERVE 0401 R/O      , OPERATOR 0401 R/O
07:04:56 07:04:56 DISKACNT 0402 R/O      , OPERSYMP 0402 R/O      , VMSERVS  0402 R/O
07:04:56 07:04:56 VMSERVP  0402 R/O      , DTCVSW2  0402 R/O      , VMSERVU  0402 R/O
07:04:56 07:04:56 DTCVSW1  0402 R/O      , VMSERVR  0402 R/O      , TCPIP    0402 R/O
07:04:56 07:04:56 FTPSERVE 0402 R/O      , OPERATOR 0402 R/O      , DISKACNT 019E R/O
07:04:56 07:04:56 OPERSYMP 019E R/O      , VMSERVS  019E R/O      , VMSERVP  019E R/O
07:04:56 07:04:56 DTCVSW2  019E R/O      , VMSERVU  019E R/O      , DTCVSW1  019E R/O
07:04:56 07:04:56 VMSERVR  019E R/O      , TCPIP    019E R/O      , FTPSERVE 019E R/O
07:04:56 07:04:56 OPERATOR 019E R/O      , DISKACNT 019D R/O      , OPERSYMP 019D R/O
07:04:56 07:04:56 VMSERVS  019D R/O      , VMSERVP  019D R/O      , DTCVSW2  019D R/O
07:04:56 07:04:56 VMSERVU  019D R/O      , DTCVSW1  019D R/O      , VMSERVR  019D R/O
07:04:56 07:04:56 TCPIP    019D R/O      , FTPSERVE 019D R/O      , OPERATOR 019D R/O
07:04:56 07:04:56 EREP     0190 R/O      , DISKACNT 0190 R/O      , OPERSYMP 0190 R/O
07:04:56 07:04:56 VMSERVS  0190 R/O      , VMSERVP  0190 R/O      , DTCVSW2  0190 R/O
07:04:56 07:04:56 VMSERVU  0190 R/O      , DTCVSW1  0190 R/O      , VMSERVR  0190 R/O
07:04:56 07:04:56 TCPIP    0190 R/O      , FTPSERVE 0190 R/O      , OPERATOR 0190 R/O
07:04:56 07:04:56 SYSTEM   0003 R/O      , SYSTEM   0001 R/O
07:04:56 07:04:56  
07:04:56 07:04:56 DASD 0901 ATTACHED CPVOL  0000 M01S01
07:04:56 07:04:56 DASD MDISKS NOT FOUND
07:04:56 07:04:56  
07:04:56 07:04:56 DASD 0902 ATTACHED CPVOL  0000 M01P01
07:04:56 07:04:56 DASD MDISKS NOT FOUND
07:04:56 07:04:56  
07:04:56 07:04:56 DASD 0903 ATTACHED SYSTEM 0000 M01W01
07:04:56 07:04:56 DASD MDISKS NOT FOUND
07:04:56 HHC02263I Script 1: processing resumed...
07:04:56 HHC01603I *
07:04:56 HHC01603I *
07:04:56 HHC01603I *
07:04:56 HHC00160I SCP command: q t
07:04:56 HHC02262I Script 1: processing paused for 150 milliseconds...
07:04:56 07:04:56 Q T
07:04:56 07:04:56 TIME IS 07:04:56 PST SUNDAY 11/12/17
07:04:56 07:04:56 CONNECT= 00:00:58 VIRTCPU= 000:00.00 TOTCPU= 000:00.06
07:04:56 HHC02263I Script 1: processing resumed...
07:04:56 HHC01603I *
07:04:56 HHC01603I *
07:04:56 HHC01603I *
07:04:56 HHC01603I * -----------------------------------------------------------
07:04:56 HHC01603I *  Now do them all at once pausing slightly longer afterwards
07:04:56 HHC01603I * -----------------------------------------------------------
07:04:56 HHC01603I *
07:04:56 HHC01603I *
07:04:56 HHC01603I *
07:04:56 HHC00160I SCP command: q e
07:04:56 HHC00160I SCP command: q cons
07:04:56 HHC00160I SCP command: q cplevel
07:04:56 HHC00160I SCP command: q dasd
07:04:56 HHC00160I SCP command: q osa
07:04:56 HHC00160I SCP command: q set
07:04:56 HHC00160I SCP command: q stor
07:04:56 HHC00160I SCP command: q sys
07:04:56 HHC00160I SCP command: q t
07:04:56 HHC02262I Script 1: processing paused for 1250 milliseconds...
07:04:56 07:04:56 Q E
07:04:56 07:04:56 PRT  000E DRAINED    SYSTEM   CLASS A
07:04:56 07:04:56 PRT  000E FORM STANDARD MANUAL SEP   NO3800  FILEFCB LIMIT NONE
07:04:56 07:04:56 PRT  000E NOFOLD  IMAGE IMAG3211 CHARS A11  FCB FCB1 INDEX 1  LPP 000
07:04:56 07:04:56 PRT  000E DEST OFF      DEST - NONE - DEST - NONE - DEST - NONE -
07:04:56 07:04:56 PRT  000E AFP
07:04:56 07:04:56 Q DASD
07:04:56 07:04:56 DASD 0101 CP OWNED  VMCOM1   12
07:04:56 07:04:56 DASD 0201 CP SYSTEM 630RL1   9
07:04:56 07:04:56 DASD 0301 CP OWNED  M01RES   104
07:04:56 07:04:56 DASD 0901 CP OWNED  M01S01   0
07:04:56 07:04:56 DASD 0902 CP OWNED  M01P01   0
07:04:56 07:04:56 DASD 0903 CP SYSTEM M01W01   0
07:04:56 07:04:56 Q SYS
07:04:56 07:04:56  
07:04:56 07:04:56 DASD 0101 ATTACHED CPVOL  0012 VMCOM1
07:04:56 07:04:56 VMSERVP  0311 R/W      , VMSERVP  0310 R/W      , VMSERVP  0309 R/W
07:04:56 07:04:56 VMSERVP  0308 R/W      , VMSERVP  0307 R/W      , VMSERVP  0306 R/W
07:04:56 07:04:56 VMSERVP  0305 R/W      , VMSERVP  0304 R/W      , VMSERVP  0303 R/W
07:04:56 07:04:56 VMSERVP  0301 R/W      , VMSERVP  0302 R/W      , VMSERVP  0191 R/W
07:04:56 07:04:56  
07:04:56 07:04:56 DASD 0201 ATTACHED SYSTEM 0009 630RL1
07:04:56 07:04:56 DTCVSW1  0492 R/O      , DTCVSW2  0492 R/O      , TCPIP    0492 R/O
07:04:56 07:04:56 FTPSERVE 0492 R/O      , DTCVSW1  0491 R/O      , DTCVSW2  0491 R/O
07:04:56 07:04:56 TCPIP    0491 R/O      , FTPSERVE 0491 R/O      , EREP     0201 R/O
07:04:56 07:04:56  
07:04:56 07:04:56 DASD 0301 ATTACHED CPVOL  0104 M01RES
07:04:56 07:04:56 OPERATOR 0191 R/W      , OPERATOR 0192 R/O      , FTPSERVE 0191 R/W
07:04:56 07:04:56 TCPIP    0191 R/W      , VMSERVR  0307 R/W      , VMSERVR  0306 R/W
07:04:56 07:04:56 VMSERVR  0305 R/W      , DTCVSW1  0191 R/W      , VMSERVU  0305 R/W
07:04:56 07:04:56 VMSERVR  0304 R/W      , DTCVSW2  0191 R/W      , VMSERVU  0304 R/W
07:04:56 07:04:56 VMSERVR  0303 R/W      , DTCVSW2  0198 R/O      , DTCVSW1  0198 R/O
07:04:56 07:04:56 TCPIP    0198 R/O      , FTPSERVE 0198 R/O      , VMSERVU  0303 R/W
07:04:56 07:04:56 VMSERVR  0302 R/W      , DTCVSW2  0592 R/O      , DTCVSW1  0592 R/O
07:04:56 07:04:56 TCPIP    0592 R/O      , FTPSERVE 0592 R/O      , VMSERVU  0302 R/W
07:04:56 07:04:56 VMSERVR  0301 R/W      , DTCVSW2  0591 R/O      , DTCVSW1  0591 R/O
07:04:56 07:04:56 TCPIP    0591 R/O      , FTPSERVE 0591 R/O      , VMSERVU  0301 R/W
07:04:56 07:04:56 VMSERVR  0191 R/W      , VMSERVU  0191 R/W      , VMSERVS  0305 R/W
07:04:56 07:04:56 VMSERVS  0304 R/W      , VMSERVS  0303 R/W      , VMSERVS  0302 R/W
07:04:56 07:04:56 VMSERVS  0301 R/W      , VMSERVS  0191 R/W      , OPERSYMP 0191 R/W
07:04:56 07:04:56 OPERSYMP 0192 R/O      , VMSERVS  0193 R/O      , VMSERVU  0193 R/O
07:04:56 07:04:56 VMSERVR  0193 R/O      , VMSERVP  0193 R/O      , DISKACNT 0191 R/W
07:04:56 07:04:56 EREP     0191 R/W      , DISKACNT 0401 R/O      , OPERSYMP 0401 R/O
07:04:56 07:04:56 VMSERVS  0401 R/O      , VMSERVP  0401 R/O      , DTCVSW2  0401 R/O
07:04:56 07:04:56 VMSERVU  0401 R/O      , DTCVSW1  0401 R/O      , VMSERVR  0401 R/O
07:04:56 07:04:56 TCPIP    0401 R/O      , FTPSERVE 0401 R/O      , OPERATOR 0401 R/O
07:04:56 07:04:56 DISKACNT 0402 R/O      , OPERSYMP 0402 R/O      , VMSERVS  0402 R/O
07:04:56 07:04:56 VMSERVP  0402 R/O      , DTCVSW2  0402 R/O      , VMSERVU  0402 R/O
07:04:56 07:04:56 DTCVSW1  0402 R/O      , VMSERVR  0402 R/O      , TCPIP    0402 R/O
07:04:56 07:04:56 FTPSERVE 0402 R/O      , OPERATOR 0402 R/O      , DISKACNT 019E R/O
07:04:56 07:04:56 OPERSYMP 019E R/O      , VMSERVS  019E R/O      , VMSERVP  019E R/O
07:04:56 07:04:56 DTCVSW2  019E R/O      , VMSERVU  019E R/O      , DTCVSW1  019E R/O
07:04:56 07:04:56 VMSERVR  019E R/O      , TCPIP    019E R/O      , FTPSERVE 019E R/O
07:04:56 07:04:56 OPERATOR 019E R/O      , DISKACNT 019D R/O      , OPERSYMP 019D R/O
07:04:56 07:04:56 VMSERVS  019D R/O      , VMSERVP  019D R/O      , DTCVSW2  019D R/O
07:04:56 07:04:56 VMSERVU  019D R/O      , DTCVSW1  019D R/O      , VMSERVR  019D R/O
07:04:56 07:04:56 TCPIP    019D R/O      , FTPSERVE 019D R/O      , OPERATOR 019D R/O
07:04:56 07:04:56 EREP     0190 R/O      , DISKACNT 0190 R/O      , OPERSYMP 0190 R/O
07:04:56 07:04:56 VMSERVS  0190 R/O      , VMSERVP  0190 R/O      , DTCVSW2  0190 R/O
07:04:56 07:04:56 VMSERVU  0190 R/O      , DTCVSW1  0190 R/O      , VMSERVR  0190 R/O
07:04:56 07:04:56 TCPIP    0190 R/O      , FTPSERVE 0190 R/O      , OPERATOR 0190 R/O
07:04:56 07:04:56 SYSTEM   0003 R/O      , SYSTEM   0001 R/O
07:04:56 07:04:56  
07:04:56 07:04:56 DASD 0901 ATTACHED CPVOL  0000 M01S01
07:04:56 07:04:56 DASD MDISKS NOT FOUND
07:04:56 07:04:56  
07:04:56 07:04:56 DASD 0902 ATTACHED CPVOL  0000 M01P01
07:04:56 07:04:56 DASD MDISKS NOT FOUND
07:04:56 07:04:56  
07:04:56 07:04:56 DASD 0903 ATTACHED SYSTEM 0000 M01W01
07:04:56 07:04:56 DASD MDISKS NOT FOUND
07:04:56 07:04:56 Q T
07:04:56 07:04:56 TIME IS 07:04:56 PST SUNDAY 11/12/17
07:04:56 07:04:56 CONNECT= 00:00:59 VIRTCPU= 000:00.00 TOTCPU= 000:00.07
07:04:57 HHC02263I Script 1: processing resumed...
07:04:57 HHC01603I *
07:04:57 HHC01603I *
07:04:57 HHC01603I *
07:04:57 HHC01603I cmdsep off
07:04:57 HHC02204I CMDSEP         set to OFF
07:04:57 HHC01603I *
07:04:57 HHC01603I * *********************************************************************
07:04:57 HHC01603I * *********************************************************************
07:04:57 HHC01603I * ***********************     END TEST     ****************************
07:04:57 HHC01603I * *********************************************************************
07:04:57 HHC01603I * *********************************************************************
07:04:57 HHC02264I Script 1: file C:/Users/Fish/HercGUI/Configuration Files/scripts/cmdsep.rc.txt processing ended

As you can see, several commands were skipped/missed (not processed by the guest).

As I explained, this may be correct behavior. I don't know. More research is needed.

I am simply creating this GitHub "Issue" for the benefit of others and so I don't forget to look into the "problem" in case it actually is a problem.

Problem compiling with NO_IEEE_SUPPORT defined

When I try to compile with NO_IEEE_SUPPORT defined, compiling some modules (config.c for example) fails with:

%CC-E-ERRORMESSAGE, #error Floating point extension facility requires binary floating point
at line number 629 in file HERCULES_CODE:[FISH-2017-02-07]FEATCHK.H;1

It appears that this has been worked around historically in hyperion by commenting out

#define FEATURE_FLOATING_POINT_EXTENSION_FACILITY

in feat900.h, however this no longer done in this fork.

cmdsep - not work as expected ?

I try to put two commands in one line
cmdsep - looks like for this
but not work :-(

first I try to put SCP command - hercules send both commad as one
I try hercules command - the same

here is hercules log :

HHC01603I cmdsep ^
HHC02204I CMDSEP         set to ^
HHC00160I SCP command: d a,l^.d r,l
 IEE535I DISPLAY  INVALID PARAMETER
HHC00160I SCP command: d a,l ^ .d r,l
 IEE114I 11.34.34 2017.315 ACTIVITY 292
  JOBS     M/S    TS USERS    SYSAS    INITS   ACTIVE/MAX VTAM     OAS
 00001    00010    00000      00030    00011    00000/00010       00008
  PIES     PIES     PIES     NSW  S  JES2     JES2     IEFPROC  NSW  S
  NET      NET      VTAM     NSW  S  LLA      LLA      LLA      NSW  S
  VLF      VLF      VLF      NSW  S  DEVLSTRT DEVLSTRT MAIELCMD OWT  S
  TSO      TSO      STEP1    OWT  S  SDSF     SDSF     SDSF     NSW  S
  TCPIP    TCPIP    TCPIP    NSW  SO FTPD1    STEP1    FTPD     OWT  AO
  AOHERCLG AOHERCLG HERCLOG  OWT  S
HHC01603I capping ^ d r
HHC02299E Invalid command usage. Type 'help capping' for assistance.
HHC01603I cmdsep
HHC02203I CMDSEP        : ^

shadow file names

Hi, I recently upgraded to 4.0.0.8745 and the shadow file names seem to have changed.

I use:

6C15  3390  D:/Hercules/MVS/ZOS/DLB001.3390-9.comp-z nofulltrackio sf=D:/Hercules/MVS/ZOS/DLB001_Shadow_0.3390-9.comp-z cu=3990-3

and in prior versions (4.00.0.8143) the shadow file were named DLB001_Shadow_1.3390-9.comp-z

With the current version of Hyperion I am now getting shadow files named DLB001_Shadow_0.3390-1.comp-z.

The shadow number is going after the - (dash) instead of the _ (underscore).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.