z390 Portable Mainframe Assembler and Emulator

z390 Project Download Archive

Automated Software Tools Corporation
The Project Download Archive shows link and details on fixes for latest z390 release plus any and interim fixes for severity 1 RPI's.  For RPI details on prior z390 releases, see z390 Download Archive History.  For pending RPI requests visit RPI Support Request Log.
Version RPI  Date OS PRI   Description Requestor
v1.4.02   06/30/08       Full release with z390 CICS V5 plus numerious enhancements  
  741 11/14/07 VA E 1 Develop BMS compatible macro support for mapping TN3270 screens for CICS assembler applications. MM
  845 04/29/08 VA P 1 Correct ESPIE svc and associated DSECT's to be z/OS compatible:
1)  Rename mac\EPIED.MAC to mac\IHAEPIE.MAC
2)  Change IHAESPIE DSECT offsets to match z/OS using 64 bit regs
3) Change ESPIE RESET to support ESPIE RESET,=F'0' to cancel all ESPIE environments.
See changes to rt\test\TESTINS2.MLC, TESTINS3.MLC, TESTFP1.MLC, TESTDFP1.MLC, TESTSPI1.MLC, TESTCVB1.MLC, and TESTCVBG.MLC.
Correct ESTAE svc and associated DSECT's to be z/OS compatible:
1) Replace ESTAD.MAC with new IHASDWA.MAC
2) Change IHAESTA offsets to match z/OS.
3) Change ZCVTD.MAC ZCVTESTA to ZCVTSDWA.
4) Change ESTAE exit support to initialize SDWA and save PSW in SDWAEC1 and 64 bit GPR'S in SDWARC4 SDWAG64 extension.
5) Add SETRP macro with default set to RETREGS=64.
See changes to rt\test\TESTINS2.MLC, TESTINS3.MLC,  TESTSTA1.MLC, TESTSTA2.MLC, TESTSTA3.MLC, and cics\z390kcp.mlc.
RB
  850 05/08/08 VA P 2 Add TN3270 support for non-display attribute bits.  See map of field attribute bits and corresponding EBCDIC characters. MM
  860 06/10/08 VA P 1 Allow EXEC statement operands separated by commas in addition to spaces.  See required change to rt\test\TESTCIC2.MLC test. DSH
  861 06/10/08 VA P 1 Correct GUAM TN3270 bugs:
1)  Do not return nulls in modified input fields
2)  Initialize screen to nulls
3)  Queue up typed keys and process on separate thread to keep up with typing.
4)  Correct delete key processing when key repeated to prevent traps.
See updated guam\test\TESTGUI6.MLC which is an EXEC CICS version of guam\demo\DEMOGUI6.MLC which now supports nulls and CTRL-F6 erase to end of field and CTRL-F7 erase all fields.
MM
  862 06/12/08 VA E 1 Add new TRACEC option with default NOTRACEC suppress copybook tracing for TRACEP to eliminate redundant traces.  Turn on LISTCALL option on for TRACE(AMP) to see nested calls. DSH
  863 06/14/08 VA P 2 Add error messages for undefined extra positional parameters on CTD and CFD macro calls. MM
  866 06/22/08 VA P 2 Correct SYSBAL(path\name)  SSYSLOG(path\name), SYSLST(path\name), SYSPRN(path\name), SYSPCH(path\name) support for optional override of path, file name, and/or suffix.  See use of SYSPCH and SYSPRN overrides for BMS map generation in cics\DFHALL.BAT.   Note either the SYSPCH or the extended DSNAME/DDNAME on PUNCH statements may override the default path, filename, and suffix.   Change INIT option to start initialization of memory at 65k start of AMODE 24 dynamic memory allocation. instead of end ofPSA so CVT defaults to zeros instead of F5's. MM
  867 06/23/08 VA E 2 Change DCB to issue warning MNOTE with error level 4 and then ignore unsupported EXLST= parm to reduce assembly errors.  See pending RPI 152 for RDJFCB and EXLST support pending. AK
  868 06/23/08 VA E 2 Add support for adding J2SE java execution options by defining option in J2SEOPTIONS environment variable.  This variable is included in z390, mz390, az390, lz390, and ez390 BAT commands.  This option is usually not required as the defaults are sufficient on most systems.  See the options available here. AK
  869 06/23/08 VA E 1 Update z390 technical documents contributed by Melvyn Maltz. MM
  870 06/23/08 VA E 1 Update z390 CICS compatible support to V5 with BMS support.  See updated EXEC CICS Compatilbe Assembler Support documentation MM
  871 06/25/08 VA E 1 Withdrah PTF v1.4.01b RPI 832 support for generating z390 assembler source from mainframe COBOL generated assembler listing due to very limited functionality and corresponding lack of user interest.  To unit test snippets of COBOL compiler generated inline assembler code, just copy and paste the code into z390 source program and add required base register and data field initializaiton for the test.. DSH
v1.4.01f   06/09/08       PTF with cumulative fixes for v1.4.01 DSH
  628 05/29/07 XP E 1 Add support for GUAM TN3270 local keyboard commands:
1)  EEOF Erase to end of current input field CTRL-F6
2)  EINF  Erase all unprotected input fields  CTRL-F7
Add support for GUAM TN3270 data stream commands:
1) WRT_EAU Erase all input fields.
2) Correct repeat char command to store nulls versus blanks.
See updated EQU's in TN3270 macro and gz390.java source updates.  See updated cics\TESTGUI6.MLC with new PF2 function to reset all input fields.
MM
  767 12/21/07 VA P 1 Correct HFP un-normalized instructions which currently return normalized results - AW, AWR, SW, SWR, AU, AUR, SU, SUR. MY, MYR, MAY, MAYR. MYH, MYHR, MYL, MYLR. MAYH, MAYHR, MAYL, MAYLR.   See updated rt\test\TESTFP1.MLC regression tests. DSH
  830 03/27/08 VA P 1 Correct BFP and DFP divide by zero to store NAN for +/- infinity. BL
  842 04/29/08 VA P 1 Correct IEXTR and RRXTR instructions to issue specification exception on invalid FP register. RB
  843 04/29/08 VA P 1 Correct az390 floating point constant generation to eliminate difference in last digit due to truncation instead of half even rounding.  See updated rt\test\TESTDFP2.MLC for corrected DD and LD tests. RB
  844 04/29/08 VA P 1 Correct incompatibilities with z9/z10 processors found running rt/test/TESTINS2:
1.  Change TROO, TROT, TRTO, and TROO to issue specification exception if table address is not on double word (this is an extension as currently z9 and z10 do not trap, and ignore the low 3 bits in table address usually causing failure if not zero).
2)  Correct TMHH, TMHL, TMLH, and TMLL to only set CC1 if mixed bits and left most selected bit is 0 else mixed bits sets CC2. 
3)  Add JO *-4 after MVCLE and CLCLE for restart on real z9/z10.
4)  Change AL8 (...) to AD(...) for compatibility with HLASM.
5)  Change LARL R1,3 to LARL R1,*+6
6)  Force AMODE31 for TRT test on z9/z10 (default on z390).
7)  Correct TMY failure when immediate vaule negative.
7)  Recode LMD using DC's instead of literals for HLASM compat.
8)  Issue S0C7 data exception on packed decimal operation if sign
      nibble is x'3' and option ASCII is not on.
9)  Add CNOP for alignment before CDS and STPQ data areas
     REGS and PWORK respectively to elimiate HLASM warnings.
10) Remove condition code check for STFLE to run on z9/z10 etc.
Note the HLASM options GOFF, SECTALIGN(16) required to prevent additional warnings using HLASM.
RB
  847 05/05/08 VA P 1 Correct verify errors in rt\test\TESTDFP2 due to rounding, loss of precision, and overflow reported by HLASM.
Rounding issues fixed in RPI 843.
RB
  848 05/05/08 VA P 1 Correct ez390 instruction errors:
1) CFDR incorrect result for large integers.
2) Incorrect result for AXR unless NOINIT option used.
These errors have been corrected by RPI 843.
BL
  855 05/28/08 VA E 1 Change TRACEM to skip line when AIF or AGO branch is taken like execution trace does.  Fix bug preventing pseudo code AGO branches from displaying after first execution.  Fix bug preventing macro labels from displaying on trace file during inline loading of macro. MM
  856 05/28/08 VA P 1 Correct bugs in GUAM TN3270 gz390 support:
1)  Skip to next input field when input text fills current input field and set modified dataf field indicator.
2)  Correct DEL key to insert nulls on the right instead of blanks. 
3) Correct TGET and TPUT to assume nulls versus blanks.
4) Correct TGET to transmit modified data fields for PF keys in the same way as it does for ENTER.
5) Correct TGET to transmit single byte for CLEAR, PA1, PA2, and PA3 keys.
MM
  857 06/06/08 VA E 1 Upgrade to J2SE 6.0 update 6 for all regression testing. DSH
  859 06/09/08 VA P 1 Corrections for z10/HLASM compatibility in rt\test\TESTINS3.MLC:
1)  Correct MVCOS to issue specification exception if areas overlap
     as z390 extension.  See changes to TESTINS3 and SIEVE.MLC.
2)  Change
CLHHSI =H'-1',-1 to CLHHSI =H'-1',X'FFFF' to avoid HLASM assembler error.
3)  Correct ALSI and ALGSI to extend 8 bit immediate sign before logical add operation.  Add additional ASI and AGSI tests.
4)  Change TESTCAT and TESTCAB macros for HLASM compat.
5)  Correct TESTCAT calls for CGIT, CLGIT, CIT, and CLFIT.
Add HLASM option
*PROCESS TYPECHECK(NOMAGNITUDE) to suppress warnings on some immediate operands.  Add HLASM option *PROCESS USING(WARN(11)) to suppress multiple USING warning.
DSH
v1.4.01e   05/27/08       PTF with cumulative fixes for v1.4.01 plus new COBOL support  
  851 05/20/08 VA P 2 Correct az390 to prevent recursive abort following invalid ORG to undefined symbol. DSH
  853 05/23/08 VA E 1 Add new z390 SOA support for COBOL applications to call z390 assembler services using EZASOKET standard TCP/IP sockets interface for high level languages.  EZASOKET is available with Micro Focus Mainframe Express for Windows and Micro Focus Server Express.  The SOA generation macro soa\maclib\SOAGEN.MAC has been updated to support new option CTYPE=CBL as well as the default CTYPE=MLC.  A new Enterprise COBOL compatible SOA client demo soa\demo\DEMOMAIN.CBL has been added.  The command soa\demo\DEMOSOAC.BAT will generate the COBOL stubs and COBOL client message manager with calls to EZASOKET.  For more information visit z390 SOA Support for COBOL and Assembler. DSH
  854 05/26/08 VA P 1 Correct TEST option to display initial prompt at execution.  Add display of host name and port when socket server opened. DSH
v1.4.01d   05/16/08       PTF with cumulative fixes for v1.4.01  
  821 03/13/08 VA P 1 Change internal caching of HFP DH long values from using Java long format to use BigDecimal format to prevent losing 4 bits of mantissa significance.  This will fix problem where low nibble result can be wrong.  See additional test added to rt\test\TESTFP1.MLC and adjustment to LBMAX in linklib\TESTFPC1.MLC. BL
  841 04/28/08 VA E 1 Add the following additional EXEC CICS DFHRESP response codes:
1) 
MAPFAIL=F'36'
2)  INVMPSZ=F'38'
3)  OVERFLOW=F'40'
See updated rt\test\TESTCIC1.MLC
MM
  846 05/05/08 VA P 2 Correct mz390 termination to wait for az390 termination and then write mz390 statistics and mz390/az390 error totals to STA and TRM followed by az390 statistics and mz390/az390 error totals to STA and TRA and ERR.  Previously the mz390 total error messages on STA and TRM did not include the total az390 errors. DSH
  849 05/07/08 VA P 1 Misc. fixes found during RPI 821 changes fixes:
1) Correct TCDB to use DB format conversion versus DH in error.
2)  Add tz390 abort error 22 for internal case index errors to catch unexpected internal logic errors.
3) Correct EH to Double conversion which was using DH to Double fetching 4 extra mantissa bytes not used.
DSH
v1.4.01c   04/24/08       Cumulative PTF fixes and enhancements for release 1.4.01  
  833 04/06/08 VA P 1 Correct mz390 assembler to require quotes around SETC string variables in character expressions and correct all macros accordingly for HLASM compatibility.  Add option ALLOW to permit SETC variables without quotes in expressions.  Correct all macros and programs with inline conditional macro code to use required quotes in AIF and SETC statments to allow running all z390 regression tests with the default of NOALLOW for HLASM compatibility.  See updates in bmk, cics, cobol, linklib, mac, soa, rt\test, vsam, vse directories. RB
  834 04/06/08 VA P 1 Correct MSEBR, MSEB, MSDBR, MSDB, MSER, MSE, MSDR, MSD to perform multiply and then subtract first operand.  Correct TCEB, TCDB, and TCXB to detect minus zero.  Correct az390 to support -0 floating point values (they were generated as 0).  Correct trace for LE type instructions to only show 4 byte target and source fields.  See updates in rt\test\TESTFP1.MLC RB
  835 04/07/08 VA P 1 Correct mz390 to allow T'parm when running with option NOASM.  Switch to ERRSUM mode if missing macro found using options NOASM and NOBAL.  Allow * substitution in label variable to create comment with varible substitution.  See update in rt\test\TESTASM1.MLC. DSH
  836 04/10/08 VA P 2 Issue errors for the following invalid SET statements:
1)  &X SETA &X+COUNT where count is undefined symbol.  Was adding 1 in error.
2) &SYM)&I) SETA 0 where first ) should be (.  Was storing 0 at first element. (Yuk! <G>).
See updated rt\test\TESTERR1.MLC regression tests.
DSH
  837 04/10/08 VA P 2 Correct ez390 to put ending step statistics message on log file.  Correct ez390 to correctly detect time limit expired TIME(sec) with default 15 seconds.  Correct abnormal termination synchronization of tasks to prevent spurious traps.  Add NOTIME option to start of local terminals in cics\Z390CICS.MLC to prevent abend 422 in 15 seconds. DSH
  838 04/15/08 VA E 1 Move content of macros OPEN, CLOSE, READ, and WRITE to ZOPEN, ZCLOSE, ZREAD, and ZWRITE so they can be shared with other macro libraries with duplcate macro names. DSH
  839 04/20/08 VA P 1 Correct mz390 to support multiple commas in SET statements to skip some elements such as &A SETA 1,,,4 set A(1) and A(4).  See updated rt\test\TESTSET1.MLC regression test. MM
  840 04/23/08 VA P 1 Correct az390 to allow spaces in P and Z type DC value fields.  See updated rt\test\TESTDC1.MLC regression test. DSH
v1.4.01b   03/28/08       Cumulative PTF fixes and enhancements for release 1.4.01  
  827 03/27/08 VA P 1 Change lz390 linker to display path and name of object file when I/O errors occur due to 0 length file etc. DSH
  828 03/27/08 VA P 1 Correct pz390 instructions TRT and EDMK to turn off bit 32 when storing address in register 1 in 31 bit address mode.  Also add new option INIT which is the default to set all GPR and FPR registers to x'F4' and memory above PSA to x'F5'.  Use option NOINIT to revert to zeros for compatiblity with z390 releases prior to v1.4.01 with this new ASSIST feature which definitly helps detects initialization problems. DSH
  829 03/27/08 VA P 1 Correct linklib\FPCONMFC.MLC to clear 64 bit register parameters for linklib\FPCONVRT, and update linklib\FPCONVRT.MAC contributed by David Bond to correct a different 64 bit register initialization issue. DB/DSH
  831 03/27/08 VA P 1 Correct SLR, SLGR, SLGFR, SL, SLY, SLG, SLGF to set correct condition code 1 when two values with high bit on result in borrow..  See updated rt\test\TESTINS2.MLC. BL
  832 03/28/08 VA E 1 Add mainframe COBOL portable assembler support providing capability to read COBOL compiler generated assembler list and generate z390 assembler source code which can then be assembled, linked, and executed on any z390 support platform including Windows and Linux.  The initial support includes Enterprise COBOL and COBOL for OS/390 and VM input.  Currently only inline code plus DISPLAY and STOP RUN called library functions are supported. More support will be added based on requests and sample program input.  All commands, programs, and demos are in the new cobol sub-directory.  See the online z390 COBOL Portable Assembler Support. DSH
v1.4.01a   03/21/08       Cumulative PTF fixes and enhancements for release 1.4.01  
  819 03/11/08 VA E 1 Debugging enhancements for ASSIST:
1) List last 10 instructions at ABEND.
2) PSW 8 byte hex display with ILC, CC, mask, and amode.
3) Storage initialization to x'F5' and registers to x'F4'.  This has proven to indeed by a great ASSISTance as it caught regression test  bugs in TESTFP1, TESTINS1, and TESTFPC1/FPCONVRT where programs were assuming all registers were initialized with zeros.  All these sources have been updated, and thanks to David Bond for updated FPCONVRT which now uses ARCHLEVEL=7 to take advantage of z10 opcodes such as compare and branch.
4) If option ASSIST is on, load programs from low memory starting at x'10000'.  New option LOADHIGH (default on) is set to NOLOADHIGH when ASSIST option is specified.  To run ASSIST program with loading high, specify ASSIST LOADHIGH.
MS
  809 02/22/08 VA P 1 Correct ESPIE exit to save AMODE and CC at entry and restart with same AMODE and CC. WR
  822 03/15/08 VA P 2 Misc. corrections to v1.4.01:
1)  Correct BRC 3,*-4 in TESTINS3 to BRC 1,*-4.  Since CC2 is never raised it didn't fail.  See updated rt\test\TESTINS3.MLC.
2)  Add AUTOLINK to STATS option statistics file display.
3)  Correct trace format for LGFR type instructions to only show low 32 bits of r2.
4) Prevent trap in mz390 for opcode with no operands when they are required.
DSH
  823 03/15/08 VA P 1 Correct the emulation for the MVCIN instruction to move assuming the second address is the right most byte of the source field rather than the left most byte.  See updated rt\test\TESTINS2.MLC. LC
  824 03/17/08 VA P 1 Correct FP as follows:
1)  When replacing 2nd FP register in extended precision pair, flush value in both registers before replacement.
2)  Correct DDTR, DXTR, DXR, DXBR to prevent storing null value in FP register  when divide by zero is suppressed which can later cause trap in SNAP dumps or other instructions accessing the same register.  This could only occur if no other instructions of the same FP type have been executed prior to the divide.
BL
  825 03/18/08 VA E 1 Convert 20 year old PC/370 demo program SIEVE.ALC to run on z390 and include as new demo\SIEVE.MLC demo:
1)  Replace PC/370 explicit svc calls with MVS compatible macro calls including SUBENTRY, SUBEXIT, CALL, WTO, GETMAIN, and TIME.  Replace privileged MVCP with MVCOS instruction.
2)  Upgrade called subroutines DAT.ALC  to linklib\DAT.MLC  callable object modules to display JDBC format date and time via WTO with extensions to show nano-seconds plus total instructions executed, and MIP rate for interval since the previous call to DAT.
2)  Add new extended option TIME INS to return current z390 64 bit instruction counter in R1.   (Used by linklib\DAT.MLC).
DSH
  826 03/19/08 VA E 1 Add new benchmark program bmk\BMKINS1.MLC to measure MIP rate for z390 instruction loop using the linklib\DAT.MLC callable routine.  This program can be used to measure effect of changes to z390 emulator such as the addition of trace table for indicative dump and optimization of instruction code.  The BCT reg,* instruction runs at about 3 MIPS on a Dell 2.1 GHZ duo core chip. DSH
v1.4.01   03/14/08       z390 Full Release with new z10 instructions and ASSIST support  
  811 02/26/08 VA P 1 Correct DFP bugs:
1) Correct CSDTR zeroing high digit when value negative and all 15 digits are significant.
2) Correct SRDT, SLDT, SRXT, and SLXT shifts. when exp > 0.
See updated regression test rt\test\TESTDFP1.MLC.
BL
  812 02/26/08 VA E 1 Add z390 ASSIST Support as extended opcodes in the z390 assembler when option ASSIST is on:
1) XDECI X'53' RX r1,s2 convert decimal to binary
2) XDECO X'52' RX r1,s2 convert binary to decimal
3) XDUMP  X'E1' RXSS full dump (no operands)
4) XDUMP  X'E06' RXSS s1,s2 dump storage area s1(s2)
5) XGET      X'E0A' RXSS s1,s2 read s1(s2) from DDNAME=XGT
6) XHEXI    X'61' RX r1,s2 convert hex to binary
7) XHEXO   X'62' RX r1,s2 convert binary to hex
8) XLIMD   X'E08' RXSS s1,s2 limit full dump to s1(s2)
9) XPNCH   X'E04' RXSS s1,s2 write s1(s2) to DDNAME=XPH
10) XPRNT X'E02' RXSS s1,s2 write s1(s2) to DDNAME=XPR
11) XPUT    X'E0C' RXSS s1,s2 write s1(s2) to DDNAME=XPT
12) XREAD X'E00' RXSS s1,s2 read s1(s2) from DDNAME=XRD
This support is being added in response to request from Northern Illinois University for  use in computer science  assembler classes.  Other education institutions are welcome to use it as well.  See assist\DEMOAST1.MLC and assist\TESTAST1.MLC assembler regression tests with the new ASSIST instructions.  See updated rt\test\TESTINS1.MLC for regression test of assembly of new ASSIST instructions when option ASSIST specified.
MS/NTK
  814 02/27/08 VA P 1 Change lz390 linker to search linklib directory for unresolved external references if autolink is on and no explicit SYSOBJ directory has been specified.  Add missing z10 DFP instruction SQXTR using macro and statically linked CSECT (this is z390 equivalent of millicode for testing new instructions).  Since there is still no support for SQXTR DFP square root instruction corresponding to SQXR HFP and SQXBR BFP instructions, the mac\SQXTR.MAC,  linklib\SQXTR.MLC, and linklib]SQXTR.OBJ files have been added to support SQXTR as extended z390 instruction.  The code originally published in ZMFACC contest problem #12 to calculate standard deviation has also been improved to optimize first quess per Martin Wards suggested reference by reducing exponent by half for first guess.  Tests show SQXTR for value 1E4 and 1E-4 only require 1 iteration to find 1E2 and 1E-2 solutions but SQRT(3.5) still requires 7 so there is room for further improvement on first guess. DSH
  815 02/26/08 VA P 1 Correct pz390 execution hyper bug in all indexed instructions preventing negative index register value from working correctly.  See updated rt\test\TESTINS2.MLC to test IC instruction with index register value of -1 to fetch byte from base + displacement - 1. BL
  816 02/27/08 VA P 1 Correct pz390 execution hyper bug in LDR and LXR when source register has not been cached yet following LD.  DSH
  817 02/28/08 VA E 1 Add 226 new z10 instructions per POP V6:
1) Add support for assembly of all 226 instructions.  See updated regression test rt|test\TESTINS1.MLC for assembly of all the new z10 instructions. 
2)  Add emulator support for execution of new z10 problem state instructions.  See new rt\test\TESTINS3.MLC for new problem state instruction tests.
a) The MVCOS now supports true lengths up to 31 bits which is an extension of previous z390 MVCOS instruction support for up to 4096 bytes based on SHARE publication used in RPI 606 dated 04/26/07.  When true length is greater than 4096 the MVCOS instruction sets CC3.  See rt\test\TESTINS3.MLC for test.
DSH
  818 03/09/08 VA E 1 Regression test v1.4.01 using J2SE 1.6.0_05 lastest update 5. DSH
  820 03/11/08 VA P 1 Misc. corrections to pz390 emulator support:
1)  Correct all shift instructions (SRP, SR??, SL??, RLL, and RLLG) processing to prevent S0C5 when b2 base register is negative.
2)  Correct DFP support to honor add, subtract, divide, and multiply IEEE exceptions for divide, overflow, and underflow based on FPC register.
3)  Correct HFP to support un-normalized input constants which were being incorrectly converted when more there were more than  3 leading zero bits in mantissa.  See RPI 821 for pending fix for low nibble error in HFP DH calculations.
4)  Correct floating point caching to allow reuse of second floating point register in a pair without storing the previous pair which flushes extended value for the pair.
DSH
v1.4.00f   02/22/08       PTF with cumulative fixes for v1.4.00  
  807 02/19/08 VA P 1 Publish updated macro KSIRD.MAC with 2 new fields for low and high branch height used in AVL balancing of KSIT tree with KSIR nodes. DSH
  808 02/20/08 VA P 1 Correct pz390 as follows:
1) Prevent trap on trace of LA when address higher than max memory and show value of -1 instead.
1) Prevent HFP and BFP underflow exception for multiply operations when one of the two operands is exactly zero or for divide when the divident is exactly zero.  See new contest problem mfacc\P12DSH2.MLC to calculate standard deviation in HFP and P11DSH3.MLC to calculate standard deviation using only DFP instruction.  All solutions correct to within 33+ decimal places.
DSH
v1.4.00e   02/18/08       PTF with cumulative fixes for v1.4.00  
  806 02/08/08 VA E 1 VSAM fixes and enhancements:
1) Add automatic balancing of insert KSIT tree using AVL balancing technique to maintain even tree depth after inserts.
2) Add verification of all double links between KSIT and KSIR's.
3) Add verification of all KSIR heights in KSIT balanced tree.
4) Add AVL statistics to VSAM statistics for STATS option
5) Improve VCB cache size for optimizing VSAM I/O
4) Add regression test vsam\test\KSF2TST4.BAT which tests inserting 1000 records in pseudo random sequence and then fetching them by key sequentially to test AVL rotations LL, LR, RR, RL and verify KSIT tree has only 10 levels (2**10=1024).  With cache on, the resulting file I/O to insert and then fetch 1000 records is about 10,000 or 10 I/O's per record.  VSAM KSDS insert can be used as a sorting tool with the efficiency comparable to shell sort where I/O is proportional to N * log2 N.
DSH
v1.4.00d   02/08/08       PTF with cumulative fixes for v1.4.00  
  723 10/20/07 VA E 1 Add insert support for KSDS VSAM.  See new regression tests:
1) KSF2TST1 - insert and retrieve by key.
2) KSF2TST2 - insert 3 in single KSIT and retrieve by key.
3) KSF2TST3 - retrieve inserted records by key and then sequentially forward and then backwards.
DSH
v1.4.00c   02/01/08       PTF with cumulative fixes for v1.4.00 built using J2SE 1.6.0_04 including v1.3.09b and v1.4.00a fixes DSH
  318 06/03/06 XP P 1 Synchronize processing to prevent buffer overrun between pz390 thread TPUT's and gz390 processing of buffer data.  Run rt\RTGUAM regression test for interactive GUI tests. GP
  803 01/31/08 VA P 1 Correct macro pseudo code for computed AGO.  First time is ok but repeated execution results in pseudo code error.  See updated rt\test\TESTMAC2.MLC regression test. DSH
  804 01/31/08 VA P 1 Change blinking cursor to ? instead of underline since underline is not visable on line 24.  Run EXEC guam\test\TESTGUI4 GUAM. MM
  805 01/31/08 VA E 1 Allow comments on EXEC CICS assembler source statements when preceded by comma or period following last space delimited operand.  See updated regression test rt\test\TESTCIC2.MLC. MM
v1.3.09b   01/30/08       PTF with cumulative fixes for v1.3.09 built using J2SE 1.5.0_14 including v1.4.00a fixes  
  792 01/17/08 LX P 1 Correct Linux support:
1) Add Linux Perl script cmd.pl support for new ECHO OFF/ON within BAT files.  Note Linux echo console command just echos text..
2) Add IF EXIST file ERASE file commands.
3) Correct regression test rt\RT1.BAT to use uppercase name for @rt\RT1 option file.  Note PTF must be applied after RT.ZIP is installed.  See updated Linux installation of PTF's
4) Correct z390 GUI interface to prevent spurious error during termination while closing error message log for started task.
DSH
v1.4.00a   02/26/08       PTF with cumulative fixes for v1.4.00 built using J2SE 1.6.0_03  
  798 01/25/08 VA P 1 Correct DFP instructions as follows:
1)  Correct RRDTR and RRXTR reround to specified significant digits to prevent system trap due to erroneous check for exact result. 
2)  Correct ESDTR and ESXTR extract significant digits to include trailing zero digits.
3)  Correct TRACE format for RRDTR, RRXTR, CSDTR, and CSXTR (was showing FP reg versus GP reg)
4)  Add mfacc\P13DSH1.MLC solution to ZMFACC problem #13 calculation of unit price rounded to 2 decimal places using DFP.
DSH
  801 01/26/08 VA E 1 Change cumulative PTF packaging to include InstallShield 2008 install of PTF files for Windows.  The PTF zip now contains the following:
1) README.TXT file describing the steps to install and verfiy PTF update to installed release of z390 on Windows or Linux.
2) setup.exe InstallShield executable file to automatically install cumulative PTF files for current z390 installed release on Windows.
3) z390 sub-directory with the changed files which can be copied to install directory for Linux adding or replacing updated files in each directory.
DSH
v1.4.00   01/25/08       Full release for Windows and Linux - first build on J2SE 1.6.0_03  
  710 10/01/07 VA E 1 Upgrade to InstallShield Express 2008 for build. DSH
  714 10/08/07 VA E 1 Upgrade to J2SE 1.6 upgrade 3 base for building z390.jar which means J2SE 1.5 runtime is no longer supported.  If you try to run z390 v1.4.00 on J2SE 1.5 runtime, an error loading class will occur.  Remove the J2SE 1.5 runtime and install J2SE 1.6.0_03+ runtime. DSH
v1.3.09   01/23/08       Full release for Windows and Linux - last build on J2SE 1.5.0_12  
  716 10/10/07 VA E 1 Move all save directories used for regression test verification to the rt optional install sub-directory to reduce size of the standard z390 install zips.  Also move all the rt command files from root directory.  After installing optional MVT.ZIP and RT.ZIP in z390 install directory, run rt\RT.BAT to run regression tests and compare to saved files in the rt sub-directories. DSH
  760 12/15/07 VA E 1 Move all options documentation from User Guide by program to new z390 Options web page which lists all options and which programs they affect.  This web page also includes java execution options, environment variable options, and file types. AK
  790 01/16/08 VA P 1 Correct az390  assembler as follows:
1) Set DFP constant exponent to match decimal point similar to P.
2) Correct exponent bias for ED and LD (was using DD bias in error)
3) Set scale factor for DFP based on digits to right of decimal if no explicit scale modifier specified.
4) Support scale factor S' and I' operators in assembler expressions.
See updated regression tests rt\test\TESTSYM1, rt\test\TESTDFP1 and rt\test\TESTDFP2.
BL
  791 01/17/08 VA P 1 Correct pz390 set CC3 for CGXTR and CGDTR when number too large for 64 bit register.  See updated rt\test\TESTDFP1. BL
  795 01/20/08 VA E 1 Add z390 CICS compatible support V4 by Melvyn Maltz with browse support for VSAM ESDS, RRDS< and KSDS.  See updated z390 CICS Compatible Support V4 online documentation. MM
  796 01/21/08 VA E 1 Add z390.man manifest file to z390\src directory for use in building z390.jar from java class files.  Add bldjar6.bat command file used to build z390.jar file using jar.exe utility from J2SE jdk.  See new z390 Java Source Compiling and Debugging. AK
v1.3.08h   01/14/08       PTF with cumulative fixes for v1.3.08  
  755 12/09/07 VA E 1 Change LOG and STATS options as follows:
1.  Wrap options to 80.
2.  Change default to NOSTATS.
3.  If option STATS or STATS(file) is specified, direct all statistics to the statistics file rather than to BAL, PRN, LST, and LOG files.
4.  List all changed options on STA file.
5.  List all macro/copybook file cross reference on STA file.
6) Add ECHO OFF to all batch commands such as ASMLG.BAT to suppress output listing of BAT file commands.
7) Echo start and stop messages on console and ERR file regardless of CON setting and include z390 and J2SE version on start message.
8) Only put copyright and license msgs on PRN, LST, and LOG files.
9) Change the command files ASMLG.BAT, ASML.BAT, ASM.BAT, LINK.BAT, and EXEC.BAT to set ECHO OFF so the only messages appearing on the GUI or command line log display are the START and STOP messages if CON option is off.
AK
  756 12/09/07 VA P 1 1)  Fix all file parameters to accept relative or explicit path for file including paths with double quotes if needed, and paths starting with drive and no explicit path (i.e. relative path on specified drive.
2)  Fix GUI file selection to not include 2 sets of double quotes for paths with spaces.
3)  Fix @file processing to handle parms with spaces in "...".
4)  Fix file processing to issue error on unrecognized file name formats such as one ending with dot. 
AK/PJF
  757 12/11/07 VA P 1 Add KSDS support for POINT and GET with GEN generic keys.  See updated vsam\test\KSF1TEST.MLC regression test. MM
  758 12/11/07 VA P 1 Correct shift double, M, D, and other double register instructions to generate specification exception for odd register.  See correction to rt\test\TESTMEM2 detected by 0C6 specification exception. MM
  759 12/14/07 VA E 1 Correct lz390 linker to align statistics output to line up the same as mz390 and az390 for post processing. AK
  763 12/11/07 VA P 1 Correct ACTR limit check to allow 4096 versus 4095 AGO or AIF branches within single macro call or open code for compatiblity. AK