Multiprocessor locking improvements (by Jan Jaeger)
Machine check and channel report word (by Jan Jaeger)
Store Channel Report Word (STCRW) instruction (by Jan Jaeger)
New attach/detach/define commands to allow dynamic addition
and deletion of devices from the configuration (by Jan Jaeger)
Compare and Swap and Purge (CSP) instruction (by Jan Jaeger)
Broadcasted purging (by Jan Jaeger)
Fix LASP instruction SASN authorization using wrong AX if bits 29-31
are 010 and SASN \= PASN (by Mario Bezzi)
Fix SAC instruction special operation exception setting secondary
space mode when ASF=0 (by Mario Bezzi)
Remove intdrag option and replace drag command by toddrag command
New extpending flag to improve performance (originally contributed
by Valery Pogonchenko and enhanced by Jan Jaeger)
Allow longer host name in console connected message (by Jay Maynard)
Floating point version 5 including fixes by Mario Bezzi
(contributed by Peter Kuschnerus)
What's new in release 1.59
Release date: 30 Apr 2000
Missing interrupt after CSCH instruction
S/370 DAT support (contributed by Jay Maynard)
Tape device sense byte improvements (by Jan Jaeger)
Read Buffered Log (CCW X'24') for tape devices (by Jan Jaeger)
Reject Sense ID CCW for 3420 tape devices (by Jan Jaeger)
Suppress unprintable character in HMC messages (by Jan Jaeger)
Suppress attention interrupt if subchannel not enabled
(by Roger Bowler)
New interrupt drag factor to improve performance (by Roger Bowler)
New toddrag and intdrag config options and drag control panel
command allow drag factors to be set (by Roger Bowler)
Light optimization on CPU critical path (by Valery Pogonchenko)
Eliminate fetch protection override in S/370 mode
(by Valery Pogonchenko)
What's new in release 1.58
Release date: 22 Apr 2000
Support for CKD DASD volumes exceeding 2GB such as 3390-3
(by Roger Bowler)
3274-1D SELECT RB/RMP/RBP/WRT commands (by Roger Bowler)
Support for 3270 14-bit SBA addressing and inbound SFE order
(by Roger Bowler)
Command reject if Write Structured Field CCW issued to a
3270 without extended attributes (by Roger Bowler)
Fix missing CSW_IL indication when CCW count exhausted
(by Roger Bowler)
Do not set unit exception if CCW count is zero (by Jan Jaeger)
Suppress space switch event program check messages (by Jan Jaeger)
Branch tracing and cross memory tracing for
BALR, BASR, BASSM, BAKR, BSA, BSG, SSAR, PC, PT, PR instructions
(by Jan Jaeger)
New diagnose instruction to stop CPU (by Jan Jaeger)
Drag factor option slows down TOD clock, to decrease overhead
on very slow machines (by Jan Jaeger)
Correction to PR instruction (by Jan Jaeger)
Correction to LASP instruction (by Jan Jaeger)
Make CLCLE/MVCLE/CKSM instructions conditional features
(by Jan Jaeger)
Enable channel measurement mode (by Jan Jaeger)
Modify program_check() to handle shadow registers correctly
(by Jan Jaeger)
Change DAT to favour PSTD in TEA, to give reduction in page
fault path length (by Jan Jaeger)
Avoid clearing registers at CPU reset (by Jan Jaeger)
Leave GPR, AR and FPR intact during CPU reset for SADUMP
(by Jan Jaeger)
Zeroize field for called space identification in PC stack entry
(by Jan Jaeger)
New CCW X'8D' (Write Update Key and Data) required by STOW
(by Jan Jaeger)
Fix for 0B7 abend in D M=CHP command (by Jan Jaeger)
Floating point version 4 including fixes by Valery Pogonchenko
(contributed by Peter Kuschnerus)
Fix incorrect second operand address in MVCIN instruction
(by Roger Bowler)
Correct sign of zero result in SRP instruction
(by Roger Bowler)
Erase Gap (CCW X'17') for tape devices (by Roger Bowler)
Activate MIPS counter on control panel (by Dutch Owen)
Suppress tracing of ISK, SCK, and DP instructions
What's new in release 1.57
Release date: 30 Mar 2000
Fix program check 0032 due to wrong stack entry being updated
Fix wrong SSTD loaded by LASP instruction (found by Jan Jaeger)
Bypass main storage lock in single CP configuration (by Jan Jaeger)
Fix incorrect condition code in PGIN instruction (by Jan Jaeger)
Corrections to expanded storage instructions (by Jan Jaeger)
New STCPS and SCHM instructions (by Jan Jaeger)
Set more appropriate sense bytes for tape errors
What's new in release 1.56
Release date: 28 Mar 2000
Fix incorrect unit exception on SCSI tape FSB/BSB CCW
(reported by Daniel Rudin)
Fix unit check on AWSTAPE write (reported by Axel Schwarzer)
Close SCSI tape after tape is ejected
Detect tapemark during SCSI tape FSB/BSB CCW
Suppress HMC response prompt (by Jan Jaeger)
Expanded storage support (by Jan Jaeger)
Move Page Facility 2
Correct signed length error in MVCK/MVCS/MVCP (by Jan Jaeger)
Undetected CC=3 in SRP instruction
Wrong remainder in DP instruction when dividend is less
than divisor
Specification exception in DP instruction should have higher
priority than data exception
What's new in release 1.55
Release date: 22 Mar 2000
FBA minidisk support
Additional diagnose functions
Allow real storage frames to be marked unusable (by Jan Jaeger)
What's new in release 1.54
Release date: 18 Mar 2000
Address wraparound improvement (contributed by Jan Jaeger)
Floating point version 3 (contributed by Peter Kuschnerus)
Correction to SLDA/SRA instructions (contributed by Jan Jaeger)
Recognize tabs and end-of-file character in ASCII cardrdr files
Hercules-specific diagnose instructions (contributed by Jay Maynard)
Correct missing timer interrupt when interval timer goes from
zero to negative (thanks to Valery Pogonchenko)
Enable HMC system console in S/370 mode
Correct sign propagation in multiply instruction
Reduce CPU thread priority (thanks to Steve Gay and Reed H.Petty)
What's new in release 1.53
Release date: 01 Mar 2000
Add BSF/FSF/BSB/FSB CCW support for tape devices
Allow final short block in OMA fixed block files
Allow processing of read-only AWSTAPE files and SCSI tapes
Skeleton ctcadpt module for future 3088 support
Correctly nullify IC/NI/OI/XI/CLM/STCM/ICM/TRT instructions
on page translation exception (thanks to Jan Jaeger)
Improved floating point support (contributed by Peter Kuschnerus)
Correct shift result when shift count exceeds 31 (thanks to
Glen Herrmannsfeldt and Jay Maynard)
Fix incorrect MVCL cc=3 when destination length is 1
What's new in release 1.52
Release date: 19 Feb 2000
Prevent incorrect length indication on 3270 Select CCW
2K storage protection for S/370
Prevent wait for console port (thanks to Malcolm Beattie)
Allow keyword parameters in configuration file
New sysepoch and tzoffset parameters (thanks to Jay Maynard)
Adjust TRACE and DIAG204 for extended TOD (thanks to Jan Jaeger)
Set TOD clock in SCK instruction (thanks to Jan Jaeger)
What's new in release 1.51
Release date: 15 Feb 2000
3270 read buffer fix for OS/360 NIP
Floating point instructions (contributed by Peter Kuschnerus)
Remove 32-bit pointer dependency from dasdload for Alpha
HMC system console support (contributed by Jan Jaeger)
Correct condition code after decimal overflow (thanks to Jan Jaeger)
Set reference and change bits for PSA access (thanks to Jan Jaeger)
New CRLF option for printer and card punch (default is now LF)
What's new in release 1.50
Release date: 10 Feb 2000
Remove interval timer debugging message
Fix hung console resulting from attention interrupt fix in 1.49
Seek and Set Sector (CCW=27) for Itel 7330 DASD controller
Correct SIGP handling of non-existent CPUs (thanks to Jan Jaeger)
Extended TOD clock bit in processor features (thanks to Jan Jaeger)
Alternate control panel help text (contributed by Dutch Owen)
Card reader end of file option (thanks to Dutch Owen)
Card reader ASCII/EBCDIC auto-detection
Fix SIGP RESTART to target correct CPU (thanks to Jan Jaeger)
Allow VTOC size and location to be specified for dasdload.
What's new in release 1.49
Release date: 05 Feb 2000
Alternate control panel (contributed by Dutch Owen)
Present attention interrupt when console connects
Fix dasdload CVOL logic (thanks to Jay Maynard)
Fix dasdload initialization of empty PDS
Allow device size to be specified for dasdload
Note: the volser record in the pack layout file must
be changed to specify the device type and cylinder count;
the device type is no longer specified on the command line.
Add dummy Set Clock instruction (does nothing except set cc 0)
What's new in release 1.48
Release date: 31 Jan 2000
Fix dasdload to handle note lists (prevent 32D abend)
I/O interrupt performance enhancement
Correctly detect overflow in signed Add/Subtract instructions
Fix track overflow problem
3270 Read Modified CCW
What's new in release 1.47
Release date: 23 Jan 2000
Allow tn3270 or telnet client to connect to specific device number
Align control panel instruction counter (thanks to Mario Bezzi)
Ensure panel display does not corrupt TEA (by Jan Jaeger)
STIDP incorrectly propagates high order bit of CPU model
(fixed by Jan Jaeger)
Fix byte-ordering problem with CKD DASD header on non-Intel
machines (reported by Adam Thornton)
STIDC instruction
Extended TOD clock (STCKE and SCKPF instructions)
3211 Load FCB and Diagnostic Read CCW
3270 Read Buffer CCW
Fix console.c to inhibit input while console has status pending
What's new in release 1.46
Release date: 11 Jan 2000
HSCH instruction
SIGP instruction
Suppress tracing of page faults
Display control registers and access registers after program check
Add regs parameter to program_check function calls
New panel command to perform store status function
Suppress tracing of CCW file protect and end of cylinder errors
What's new in release 1.45
Release date: 08 Jan 2000
Make MVCL/CLCL interruptible (contributed by Jan Jaeger)
Diagnose 204 (contributed by Jan Jaeger)
Read Channel Subsystem Info (contributed by Jan Jaeger)
Fix incorrect register count in TRACE instruction
Correct nullification of STM/LM/LAM/STAM/STCTL/LCTL/STCM and SS
instructions whose operands cross a page boundary
Suppression on Protection with Virtual-Address enhancement
Select correct address space for MVCS/MVCP (fixed by Jan Jaeger)
Correct registers after CLCL/CLCLE with non-zero condition code
Defer clock comparator interrupt while instruction stepping
Remove 32K limit on data chained write CCWs for non-CKD devices
Correct overrun error on data chained write for FBA DASD
What's new in release 1.44
Release date: 01 Jan 2000
Support for 9336 FBA DASD
Read Replicated Data command for FBA DASD
Prevent recursive program check after instruction fetch error
Operand tracing for MVCL/CLCL and RRE instructions
What's new in release 1.43
Release date: 27 Dec 1999
New control panel command: devlist
Write Update Data (X'85') CCW for CKD devices
Makefile changed to use $(CC) instead of cc
Fix dat.c to prevent ASN translation specification exception
(program check X'0017') if subspace group facility is installed
and ASF is one
Fix cpu.c to clear ILC before fetching instruction to prevent PSW
being backed up if access error occurs during instruction fetch
Correct program check ILC when instruction is nullified
Obtain CPU model number for STIDP from configuration file
(contributed by Jay Maynard)
Note: if upgrading from an earlier release, you must change
your hercules.cnf file to add a valid CPU model number after the
CPU serial number
Prevent wait after devinit (thanks to Jay Maynard)
Open printer with O_SYNC to ensure buffers flushed
(suggested by Daniel Seagraves)
Fix xmem.c to prevent loop in program_call when loading 4-word ETE
(thanks to Jan Jaeger)
Improved TLB lookup (contributed by Jan Jaeger)
What's new in release 1.42
Release date: 16 Dec 1999
New makefile builds both S/370 and ESA/390 executables:
hercules-370 and hercules-390 (contributed by Jay Maynard)
3480 Set Path Group Id and Unassign CCWs
(contributed by Jan Jaeger)
CFC and UPT instructions (contributed by Peter Kuschnerus)
Card punch support
Erase (X'11') CCW for CKD devices
Correct setting of translation exception address
Correct file mode when opening printer file
Correct condition code for shift arithmetic instructions
What's new in release 1.41
Release date: 07 Dec 1999
Set reference and change bits correctly for main storage accesses
by channel, dat, xmem, stack, block, and service modules (thanks
to Jan Jaeger)
New devinit command (contributed by Jay Maynard)
Reject control panel virtual storage display command if CR1=0
Fix dasdload to correctly write EOF record for empty file
and to correctly fill block overhead fields in format4 DSCB.
Diagnose functions MSSFCALL and SCPEND (contributed by Jan Jaeger)
Corrections to service.c and assist.c (contributed by Jan Jaeger)
Alpha platform portability definitions (contributed by Jay Maynard)
3480 Assign CCW (thanks to Rick McKelvy)
What's new in release 1.40
Release date: 30 Nov 1999
New DASDISUP program performs OS/360 IEHIOSUP function
Correct SCSW handling for suspend/resume
Forward space file CCW for tape devices
3480 load display CCW (contributed by Jan Jaeger)
and sense path group id CCW (thanks to Rick McKelvy)
Correct handling of OMA tape headers to correctly recognize
tape mark and to align headers to 16-byte boundary
EBCDIC character translation of CCW data displays
Fix command reject for CKD read commands outside the domain
of a locate record
What's new in release 1.39
Release date: 24 Nov 1999
Concurrent sense
I/O initial status interruption
Channel program suspend/resume function and RSCH instruction
Read Device Characteristics CCW for 3480
Fix incorrect command reject on Sense Subsystem Status CCW
Increase 3270 write buffer size to prevent console I/O error
when using Zap function of ZZSA
Fix very nasty error in dat.c causing wrong bytes to
be fetched or stored when operand crosses page boundary
Remove temporary fix to ckddasd.c introduced in 1.37
What's new in release 1.38
Release date: 22 Nov 1999
New panel commands to allow storage alteration
Fix incorrect I/O parameter on attention interrupt
(thanks to Jan Jaeger for reporting this bug)
Clear PMCW correctly during I/O reset
Change 3270 control unit type to 3274-1D
Fix restart command broken by 1.37
What's new in release 1.37
Release date: 19 Nov 1999
Storage range display
EBCDIC character translation of storage displays
New breakpoint command (contributed by Dan Horak)
Messages go to log file as well as screen if stdout is redirected
Fix missing interrupt caused by channel.c failing to obtain device
lock before setting interrupt pending
Fix incorrect cond code 1 in attention SCSW built by console.c
New Read Channel Path Information service call
Temporary fix to ckddasd.c multitrack search
Addition of Read Device Characteristics and Sense Subsystem
Status commands for CKD devices
New DASDPDSU program to unload PDS members from a CKD volume
What's new in release 1.36
Release date: 12 Nov 1999
Clear subchannel instruction
Correct fault causing control panel display corruption
What's new in release 1.35
Release date: 09 Nov 1999
Improved control panel user interface
New control panel commands: start, stop, restart, ipl, loadparm
New loadcore command to load disk image files
S/370 interval timer
Allow 31-bit mode linkage in lock instructions
Support for PCI in ESA/390 mode as well as S/370 mode
Correct problem causing false channel protection checks
What's new in release 1.34
Release date: 29 Oct 1999
New DASDLOAD program to create a CKD volume from unloaded PDS files
Correct CKD module to prevent record not found error on
multitrack Read Count CCW
What's new in release 1.33
Release date: 26 Oct 1999
Write support for SCSI tapes and AWSTAPE files
Correct handling of REWIND command for AWSTAPE files
Correct nasty bug in Subtract Logical instruction (thanks
to Roland Goetschi for finding this bug)
Ensure unique TOD clock values for Store Clock
Correction to unstacking process for PR instruction
Implementation of Read Multiple CKD command
What's new in release 1.32
Release date: 18 Oct 1999
Support for virtual tapes in OMA (Optical Media Attach) format