Micro Focus 390 Assembler Compile & Execute on a Windows System |
The SimoTime Home Page |
This document provides an introduction to the installation, configuration and usage of the mainframe assembler capability on a Windows System using Micro Focus technology and Enterprise Developer. An Assembler sub-system is created within a larger, Mainframe-Oriented sub-system that executes Batch Jobs using JCL Members.
| ||||||||||||
Objectives for the Micro Focus Assembler Development and Test Projects |
Note: The Assembler Function is provided for the Development and Test environments that are configured for EBCDIC encoding.
We have made a significant effort to ensure the documents and software technologies are correct and accurate. We reserve the right to make changes without notice at any time. The function delivered in this version is based upon the enhancement requests from a specific group of users. The intent is to provide changes as the need arises and in a timeframe that is dependent upon the availability of resources.
Copyright © 1987-2025
SimoTime Technologies and Services
All Rights Reserved
The section assumes the tasks outlined in the "Prepare" section of this document have been successfully completed. The following command is used to start a Server that is capable of accepting and executing submitted jobs (JCL Members). The following is the command used to set the environment and start a Batch Server that supports an EBCDIC encoded environment.
C:\SIMOSAM1\DEVL\SYS1\LOADLIB>SYS1START SIMOBATE
The following are the commands used to submit or schedule the job to be executed under control of a Batch Server.
C:\SIMOSAM1\DEVL\LOADLIB>EZSUB SIMOBATE ASMR14J1
or
C:\SIMOSAM1\DEVL\LOADLIB>EZSCHEDULE SIMOBATE ASMR14J1
The following is the JES SPOOL information for a successful completion of the ASMR14J1 Job.
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* *-*-* Micro Focus ESJCL EBCDIC JES2 Version ED20.00.00_012 *-*-* *-*-* Copyright (C) 1997-2012 Micro Focus. All rights reserved. *-*-* *-*-* Job: 03690 Name: ASMR14J1 User: mfuser Date: 07/23/12 Time: 17:26:41 *-*-* *-*-* File: $TXRFDIR/MFUSER17264098.T *-*-* *-*-* DSN: *-*-* *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* 1 //ASMR14J1 JOB SIMOTIME,ACCOUNT,CLASS=1,MSGCLASS=O,NOTIFY=LRSP1 2 //* ******************************************************************* 3 //* This JCL Member is provided by: SimoTime Enterprises * 4 //* (C) Copyright 1987-2012 All Rights Reserved * 5 //* Web Site URL: http://www.simotime.com * 6 //* e-mail: helpdesk@simotime.com * 7 //* ******************************************************************* 8 //* 9 //* Text - 370 Assembler, Return to Caller with Zero Return Code 10 //* Author - SimoTime Enterprises 11 //* Date - January 01, 1997 12 //* 13 //* ******************************************************************* 14 //* Step 1 of 1 This is a single step job. 15 //* 16 //ASMR14S1 EXEC PGM=ASMR14A1 17 //STEPLIB DD DSN=SIMOTIME.DEMO.LOADLIB1,DISP=SHR 18 //* **** JCLCM0180I Job ready for execution. **** Execution on Server SIMOBATE Process 3872 17:26:41 JCLCM0188I JOB STARTED 17:26:41 JCLCM0190I STEP STARTED ASMR14S1 17:26:42 JCLCM0199I Program ASMR14A1 is z/OS HLASM EBCDIC Big-Endian AMODE31. SIMOTIME.DEMO.LOADLIB1 STEPLIB DEFERRED ---> 17:26:42 JCLCM0191I STEP ENDED ASMR14S1 - COND CODE 0000 ---> 17:26:42 JCLCM0182I JOB ENDED - COND CODE 0000
The following are the commands used to submit or schedule the job to be executed under control of a Batch Server.
C:\SIMOSAM1\DEVL\LOADLIB>EZSUB SIMOBATE ASMWTOJ1
or
C:\SIMOSAM1\DEVL\LOADLIB>EZSCHEDULE SIMOBATE ASMWTOJ1
The following is the JES SPOOL information for a successful completion of the ASMWTOJ1 Job. This job is used as a regression test for the WTO Macro functions. Also, it is used as a reference or learning tool.
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* *-*-* Micro Focus ESJCL EBCDIC JES2 Version ED20.00.00_012 *-*-* *-*-* Copyright (C) 1997-2012 Micro Focus. All rights reserved. *-*-* *-*-* Job: 03696 Name: ASMWTOJ1 User: mfuser Date: 07/23/12 Time: 17:55:38 *-*-* *-*-* File: $TXRFDIR/T000000020.T *-*-* *-*-* DSN: *-*-* *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* 1 //ASMWTOJ1 JOB SIMOTIME,ACCOUNT,CLASS=1,MSGCLASS=O,NOTIFY=LRSP1 2 //* ******************************************************************* 3 //* This JCL Member is provided by: SimoTime Enterprises * 4 //* (C) Copyright 1987-2012 All Rights Reserved * 5 //* Web Site URL: http://www.simotime.com * 6 //* e-mail: helpdesk@simotime.com * 7 //* ******************************************************************* 8 //* 9 //* Text - 370 Assembler, Write-To-Operator or WTO macro 10 //* Author - SimoTime Enterprises 11 //* Date - January 01, 1997 12 //* 13 //* This 370 Assembler program provides different techniques for 14 //* using the Write-To-Operator (WTO) macro. 15 //* 16 //* This set of programs will run on a mainframe under MVS or on a 17 //* Personal Computer with Windows and Micro Focus Mainframe Express. 18 //* 19 //* Micro Focus Mainframe Express, version 2.5 or later (MFE) with 20 //* the Assembler Option should be used to Animate or visualize the 21 //* execution of the sample program. 22 //* 23 //* The Animator or Debugger is an excellent tool for visualizing the 24 //* execution of the individual instructions as they execute. 25 //* 26 //* This is a very effective way to become familiar with the 370 27 //* instruction set. 28 //* 29 //* ******************************************************************* 30 //* Step 1 of 1 This is a single step job. 31 //* 32 //ASMWTOS1 EXEC PGM=ASMWTOA1 33 //STEPLIB DD DSN=SIMOTIME.DEMO.LOADLIB1,DISP=SHR 34 //* **** JCLCM0180I Job ready for execution. **** Execution on Server SIMOBATE Process 1032 17:55:39 JCLCM0188I JOB STARTED 17:55:39 JCLCM0190I STEP STARTED ASMWTOS1 17:55:39 JCLCM0199I Program ASMWTOA1 is z/OS HLASM EBCDIC Big-Endian AMODE31. *MSG * ASMWTOA1 An Example of using the WTO macro v03.01.24 http://www.simotime.com *MSG * ASMWTOA1 Copyright 1987-2009 SimoTime Enterprises, LLC All Rights Reserved *MSG * ASMWTOA1 is STARTING, Hello Mainframe World... *MSG * ASMWTOA1 Message Text, No Label... *MSG * ASMWTOA1 Message Text, with Label... *MSG * ASMWTOA1 List Message One from WTOLIST... *MSG * ASMWTOA1 List Message Two from WTOLIST... *MSG * ASMWTOA1 WTO with user-coded buffer... *MSG * ASMWTOA1 User message number one... *MSG * ASMWTOA1 User message number two... *MSG * ASMWTOA1 is FINISHED... SIMOTIME.DEMO.LOADLIB1 STEPLIB DEFERRED ---> 17:55:41 JCLCM0191I STEP ENDED ASMWTOS1 - COND CODE 0000 ---> 17:55:41 JCLCM0182I JOB ENDED - COND CODE 0000
This section describes the tasks that need to be completed before the test cases can be executed successfully.
The following shows the directory structure for a Development environment.
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Note-1: This is the primary directory for the SimoTime Driver Programs and Test Cases | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Note-2: This is the Development, Production or Test directory, for this example it is set to DEVL. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Note-3: Utility programs using a mainframe dialect, not part of application business functions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Note-4: Utility programs using a Micro Focus dialect, not part of application business functions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Note-5: Utility programs with specialized or unique requirements |
The Directory Structure used in the in the SimoTime Development Environment |
Assembler Load members are created by compiling and linking Assembler Source Members that may include additional copy or macro files. This section describes and demonstrates the process for compiling and linking Executable or non-Executable Assembler members. Each approach uses two (2) command files. The primary command files set the environment at the global level and then calls the second command to do the actual compile and link.
This document will focus on the functionality required to do the basic tasks of compiling and linking Assembler Load Members (programs and/or non-executable load members). For additional details and advance functionality refer to the Micro Focus Product documentation.
The following shows the command line syntax for the Micro Focus command that is used to compile and link the Assembler Source members into object members or load members.
Environment VariablesThe following provides a quick reference for the environment variables used by the Micro Focus Assembler. Their primary purpose is to define the directory structure for the user environment.
User Defined Scripted Builds for AssemblerThis section is divided into three categories that are described in the following three sub-sections of this documents. The input for each category is Assembler source code. The output for each category will be a load member (executable or non-executable) or an object member. Each category has the capability of compiling and possibly linking multiple source members by reading a file containing a list of source member names. Executable Load MembersThe following member (ASM390W1.cmd) will setup the environment and read a list file of program names. For each name in the list file the ZASM2390.CMD is called to do the actual compile and link of an executable program. @echo OFF set CMD_NAME=ASM390W1 echo ********************************************************************* echo * This Job Script is provided by SimoTime Technologies and Services * echo * (C) Copyright 1987-2022 All Rights Reserved * echo * Web Site URL: http://www.simotime.com * echo * e-mail: helpdesk@simotime.com * echo ********************************************************************* rem * rem * This command will read a file that contains a list of HLASM source rem * members and call ZASM2390 to compile each member. rem * The output is an executable load member and listings produced by rem * the compile and link process. rem * rem * This procedure calls the following Windows Command Files. rem * 1. Env1Base.CMD - this provides a single point for setting commonly rem * used environment variables. rem * 2. SimoNOTE.CMD - this provides a consistent process for displaying rem * messages to the screen and writing to a journal rem * or log file. rem * 3. ZASM2390.CMD - this will do the compile and link of the user rem * specified executable program rem * rem * ******************************************************************* setlocal call ..\ENV1EBC1 %CMD_NAME% rem * call SIMONOTE "*******************************************************************************%CmdName% " call SimoNOTE "* Starting HLASM Compile to create executable load members" call SimoNOTE "* --------------------------------------------------------------------------- *01 of 03" call SIMONOTE "* Job_Step 1 of 3, Preparing the System and Job Environment" set EXTFH=%BASESYS%\CONFIG\EXTFHTAB.CFG rem * rem * Allow different extensions for 370 Assembler Macro Files. rem * Note: if this value is set in the MF370CTL.CFG file it will be rem * over-ridden by the following environment variable. set MACROEXT=CPY,MAC rem * rem * ----------------------------------------------------------------- * rem * The following four statements are for the Assembler sub-system. set SYSLIST=%BaseLib1%\ASM\LIST set SYSLIN=%BaseLib1%\ASM\OBJS set SYSLMOD=%BaseLib1%\HOLD\ASME set SYSLIB=%BaseLib1%\ASM\ASMPATCH;%BaseLib1%\ASM\ASMMAC1;%BaseLib1%\ASM\ASMCPY1;%MIFOBASE%\include call SimoNOTE "* SYSLIB IS %SYSLIB%" rem * call SimoNOTE "* --------------------------------------------------------------------------- *02 of 03" call SimoNOTE "* Job_Step 2 of 3, Execute the HLASM Compile Processing" rem * Read the list file and pass the contents of each record to the rem * command file that does the actual compile. Each record in the file rem * contains an eight character program name. set AOK_Count=0 set NOK_Count=0 set MBR_LIST=%BaseLib1%\Adm1\CNTL\ASM390T1.LST for /F "eol=; tokens=1,2* delims=." %%i in (%MBR_LIST%) do call zASM2390 %%i rem * :EOJTAG call SimoNOTE "* --------------------------------------------------------------------------- *03 of 03" call SimoNOTE "* Job_Step 3 of 3, End of Job processing" call SimoNOTE "* AOKcount Compile Count for AOK is %AOK_Count% " call SimoNOTE "* NOKcount Compile Count for NOK is %NOK_Count% " if %NOK_Count% == 0 goto EOJAOK goto EOJAOK :EOJNOK call SimoNOTE "* ABENDING JobName %CMD_NAME%.CMD" goto EOJEND :EOJAOK call SimoNOTE "* Finished JobName %CMD_NAME%.CMD" :EOJEND if not "%SimoGENS%" == "BATCH" pause endlocal The following member (ZASM2390.cmd) will do the actual compile and link based upon the parameters set by the calling command (ASM390W1.CMD) and create an executable program. rem * ************************************************************************ rem * It is the callers reponsibility to set the following environment rem * variables prior to calling this command. rem * 1. BaseLib1 - point to the base directory. This procedure uses various rem * sub-directories under the base directory. rem * 2. SYSLIST - directory for the Compile and Link List files rem * 3. SYSLIN - directory for the Link files rem * 4. SYSLMOD - directory for the linker output members rem * 5. SYSLIB - directory for Macro and Copy Files rem * rem * The following parameters are received from the calling command file. rem * Parameter Description rem * --------- ------------------------------------------------------------ rem * 1. Name of source member rem * ************************************************************************ rem * Startup statements... rem * set CompileLinkStatus=0000 call SimoNOTE "Starting ZASM2390, RC=%CompileLinkStatus%, PGM=%1" rem * rem * ************************************************************************ rem * Do the compile to create the .390 executable using Micro Focus compiler. run MF370CHK %BASELIB1%\ASM\%1 NOANIM LIST AMODE(31) if not "%ERRORLEVEL%" == "0" set CompileLinkStatus=0010 if not "%CompileLinkStatus%" == "0000" goto :CompileLinkNOK rem * if exist %SYSLMOD%\%1.390 goto :CompileLinkAOK set CompileLinkStatus=0020 goto :CompileLinkNOK rem * rem * ************************************************************************ :CompileLinkAOK set /A AOK_Count=%AOK_Count% + 1 call SimoNOTE "Complete ZASM2390, RC=%CompileLinkStatus%, PGM=%1" goto :End rem * rem * ************************************************************************ :CompileLinkNOK set JobStatus=%CompileLinkStatus% set /A NOK_Count=%NOK_Count% + 1 call SimoNOTE "ABENDING ZASM2390, RC=%CompileLinkStatus%, PGM=%1, !!!ABENDING!!!" echo %1 - Error during Compile, refer to %SYSLIST%\%1.***>%BaseLib1%\LOGS\%1.ERR goto :End rem * rem * ************************************************************************ :End Non-Executable Load MembersThe following member (ASM390W2.cmd) will setup the environment and read a list file of program names. For each name in the list file the ZASM2MOD.CMD is called to do the actual compile and link of a non-executable load member. @echo OFF echo ********************************************************************* echo * ASM390W2.CMD - a Windows Command File * echo * This program is provided by SimoTime Technologies * echo * (C) Copyright 1987-2016 All Rights Reserved * echo * Web Site URL: http://www.simotime.com * echo * e-mail: helpdesk@simotime.com * echo ********************************************************************* rem * rem * This command will read a file that contains a list of Assembler rem * programs without CICS and call ZASM2MOD to compile each member. rem * The output is a non-executable load member and listings produced rem * by the compile and link process. rem * rem * This procedure calls the following Windows Command Files. rem * 1. Env1Base.CMD - this provides a single point for setting commonly rem * used environment variables. rem * 2. SimoNOTE.CMD - this provides a consistent process for displaying rem * messages to the screen and writing to a journal rem * or log file. rem * 3. ZASM2MOD.CMD - this will do the compile of the user specified rem * non-executable load member. rem * rem * ******************************************************************* setlocal call ..\Env1Base set CmdName=ASM390W2 rem * call SimoNOTE "*******************************************%CmdName%.CMD" call SimoNOTE "Starting JobName %CmdName%.CMD" call SimoNOTE "Function Compile to create a non-executable load member" set EXTFH=%BASESYS%\CONFIG\EXTFHTAB.CFG rem * ----------------------------------------------------------------- * rem * The following four statements are for the Assembler sub-system. set SYSLIST=%BaseLib1%\ASM\LIST set SYSLIN=%BaseLib1%\ASM\OBJS set SYSLMOD=%BaseLib1%\HOLD\ASME set SYSLIB=%BaseLib1%\ASM\ASMMAC1;%BaseLib1%\ASM\ASMCPY1;%MIFOBASE%\include rem * ----------------------------------------------------------------- * rem * Read the list file and pass the contents of each record to the rem * command file that does the actual compile. Each record in the file rem * contains an eight character program name. set AOK_Count=0 set NOK_Count=0 set MemberList=%BaseLib1%\Adm1\CNTL\ASM390T2.LST for /F "eol=; tokens=1,2* delims=." %%i in (%MemberList%) do call zASM2MOD %%i rem * call SimoNOTE "AOKcount Compile Count for AOK is %AOK_Count% " call SimoNOTE "NOKcount Compile Count for NOK is %NOK_Count% " if %NOK_Count% == 0 goto EOJAOK goto EOJNOK rem * ----------------------------------------------------------------- * :EOJNOK call SimoNOTE "ABENDING JobName %CmdName%.CMD" goto EOJEND :EOJAOK call SimoNOTE "Finished JobName %CmdName%.CMD" :EOJEND if not "%SimoGENS%" == "BATCH" pause endlocal The following member (ZASM2MOD.cmd) will do the actual compile and link based upon the parameters set by the calling command (ASM390W2.CMD) and create the non-executable load member. rem * ************************************************************************ rem * It is the callers reponsibility to set the following environment rem * variable prior to calling the command. rem * 1. BaseLib1 - point to the base directory. This procedure uses various rem * sub-directories under the base directory. rem * 2. SYSLIST - directory for the Compile and Link List files rem * 3. SYSLIN - directory for the Link files rem * 4. SYSLMOD - directory for the linker output members rem * 5. SYSLIB - directory for Macro and Copy Files rem * rem * The following parameters are received from the calling command file. rem * Parameter Description rem * --------- ------------------------------------------------------------ rem * 1. Name of source member rem * ************************************************************************ rem * Startup statements... rem * set Compile2MODStatus=0000 call SimoNOTE "Starting ZASM2MOD, RC=%Compile2MODStatus%, PGM=%1" echo Source Member ........ %1 rem * rem * ************************************************************************ rem * Do the compile to create the .390 executable using Micro Focus compiler. run MF370CHK %BASELIB1%\ASM\%1 OMF(MOD) NOANIM LIST if not "%ERRORLEVEL%" == "0" set Compile2MODStatus=0010 if not "%Compile2MODStatus%" == "0000" goto :Compile2MODNOK rem * if exist %SYSLMOD%\%1.MOD goto :Compile2MODAOK set Compile2MODStatus=0020 goto :Compile2MODNOK rem * rem * ************************************************************************ :Compile2MODAOK set /A AOK_Count=%AOK_Count% + 1 call SimoNOTE "Complete ZASM2MOD, RC=%Compile2MODStatus%, PGM=%1" goto :End rem * rem * ************************************************************************ :Compile2MODNOK set JobStatus=%Compile2MODStatus% set /A NOK_Count=%NOK_Count% + 1 call SimoNOTE "ABENDING ZASM2MOD, RC=%Compile2MODStatus%, PGM=%1, !!!ABENDING!!!" echo %1 - Error during Compile, refer to %BaseLib1%\LIST\%1.LST>%BaseLib1%\LOGS\%1.ERR goto :End rem * rem * ************************************************************************ :End Object MembersThe following member (ASM390W3.cmd) will setup the environment and read a list file of program names. For each name in the list file the ZASM2OBJ.CMD is called to do the actual compile of an object member. @echo OFF echo ********************************************************************* echo * ASM390W3.CMD - a Windows Command File * echo * This program is provided by SimoTime Technologies * echo * (C) Copyright 1987-2016 All Rights Reserved * echo * Web Site URL: http://www.simotime.com * echo * e-mail: helpdesk@simotime.com * echo ********************************************************************* rem * rem * This command will read a file that contains a list of Assembler rem * programs without CICS and call ZASM2OBJ to compile each member. rem * The output is an object member and listings produced by the rem * compile process. rem * rem * This procedure calls the following Windows Command Files. rem * 1. Env1Base.CMD - this provides a single point for setting commonly rem * used environment variables. rem * 2. SimoNOTE.CMD - this provides a consistent process for displaying rem * messages to the screen and writing to a journal rem * or log file. rem * 3. ZASM2MOD.CMD - this will do the compile of the user specified rem * non-executable load member. rem * rem * ******************************************************************* setlocal call ..\Env1Base set CmdName=ASM390W3 rem * call SimoNOTE "*******************************************%CmdName%.CMD" call SimoNOTE "Starting JobName %CmdName%.CMD" call SimoNOTE "Function Compile to create an OBJECT member" set EXTFH=%BASESYS%\CONFIG\EXTFHTAB.CFG rem * ----------------------------------------------------------------- * rem * The following four statements are for the Assembler sub-system. set OBJ370=%BaseLib1%\ASM\OBJS set SYSLIST=%BaseLib1%\ASM\LIST set SYSLIN=%BaseLib1%\ASM\OBJS set SYSLMOD=%BaseLib1%\HOLD\ASME set SYSLIB=%BaseLib1%\ASM\ASMPATCH;%BaseLib1%\ASM\ASMMAC1;%BaseLib1%\ASM\ASMCPY1;%MIFOBASE%\include rem * ----------------------------------------------------------------- * rem * Read the list file and pass the contents of each record to the rem * command file that does the actual compile. Each record in the file rem * contains an eight character program name. set AOK_Count=0 set NOK_Count=0 set MemberList=%BaseLib1%\Adm1\CNTL\ASM390T3.LST for /F "eol=; tokens=1,2* delims=." %%i in (%MemberList%) do call zASM2OBJ %%i rem * call SimoNOTE "AOKcount Compile Count for AOK is %AOK_Count% " call SimoNOTE "NOKcount Compile Count for NOK is %NOK_Count% " if %NOK_Count% == 0 goto EOJAOK goto EOJNOK rem * ----------------------------------------------------------------- * :EOJNOK call SimoNOTE "ABENDING JobName %CmdName%.CMD" goto EOJEND :EOJAOK call SimoNOTE "Finished JobName %CmdName%.CMD" :EOJEND if not "%SimoGENS%" == "BATCH" pause endlocal The following member (ZASM2OBJ.cmd) will do the actual compile based upon the parameters set by the calling command (ASM390W3.CMD) and create an object member. rem * ************************************************************************ rem * It is the callers reponsibility to set the following environment rem * variables prior to calling the command. rem * 1. BaseLib1 - point to the base directory. This procedure uses various rem * sub-directories under the base directory. rem * 2. SYSLIST - directory for the Compile and Link List files rem * 3. SYSLIN - directory for the Link files rem * 4. SYSLMOD - directory for the linker output members rem * 5. SYSLIB - directory for Macro and Copy Files rem * rem * The following parameters are received from the calling command file. rem * Parameter Description rem * --------- ------------------------------------------------------------ rem * 1. Name of source member rem * ************************************************************************ rem * Startup statements... rem * set Compile2OBJStatus=0000 call SimoNOTE "Starting ZASM2OBJ, RC=%Compile2OBJStatus%, PGM=%1" call SimoNOTE "Source Member ........ %1" rem * rem * ************************************************************************ rem * Do the compile to create the .390 executable using Micro Focus compiler. run MF370CHK %BASELIB1%\ASM\%1 OMF(OBJ) NOANIM LIST if not "%ERRORLEVEL%" == "0" set Compile2OBJStatus=0010 if not "%Compile2OBJStatus%" == "0000" goto :Compile2OBJNOK rem * if exist %SYSLIN%\%1.OBJ goto :Compile2OBJAOK set Compile2OBJStatus=0020 goto :Compile2OBJNOK rem * rem * ************************************************************************ :Compile2OBJAOK set /A AOK_Count=%AOK_Count% + 1 call SimoNOTE "Complete ZASM2OBJ, RC=%Compile2OBJStatus%, PGM=%1" goto :End rem * rem * ************************************************************************ :Compile2OBJNOK set JobStatus=%Compile2OBJStatus% set /A NOK_Count=%NOK_Count% + 1 call SimoNOTE "ABENDING ZASM2OBJ, RC=%Compile2OBJStatus%, PGM=%1, !!!ABENDING!!!" echo %1 - Error during Compile, refer to %SYSLIST%\%1.***>%BaseLib1%\LOGS\%1.ERR goto :End rem * rem * ************************************************************************ :End Configure a Server for EBCDICThe following provides the "How To" information for creating a batch server that will process jobs that are a mix of JCL, COBOL and Assembler. The server used by the batch applications will be called SIMOBATE. At the bottom of the home page for Enterprise Server Administration select the "ADD" button. The following describes the primary configuration options needed to submit, execute and review jobs that have been defined (or scripted) using the Job Control Language (JCL Members and Procedures).
Enter a Server Name, select the Working Mode and Click the" Next" button. Click the Radio button for Micro Focus Enterprise Server with Mainframe Subsystem Support and Click the" Next" button a second time. The following shows the next group of configuration options. For items not shown take the default entry options. Note: For the following and if not required then un-check the TN3270 and ISC listener boxes
Click the" Add" button. The "SIMOBATE" server should be added to the Enterprise Server. When the home screen is redisplay click on the "Edit" button, select the "MSS" tab, select the "JES" tab and then enter the following configuration options for the JES or Job Entry Subsystem. Note: For the following remember to check the box for the "Job Entry Sub-system enabled".
Click the "Apply" button. Note: Some environment variables are set prior to starting the server. This needs to be done since some environment variables will be used by ES/MSS and other third-party technologies. The decision was made to define the shared environment variables in one place rather than replicate in the two separate environments. The next step in the configuration of the JES sub-system is to define the JES initiators and have them start automatically when the JES Server (or sub-system) is started. To do this select the "Initiators" tab then click the "Add" button to add an initiator. The following should be displayed.
Fill in the required information and click the "Add" button. Test CasesThis section provides a brief description with links to additional information of the critical test cases. The test cases start with very simple requirements and then progress to the more advanced functions and levels of complexity. Executable ProgramsThe following test cases will execute jobs that increase in resource access and usage. The process starts with a validation of basic functions and progresses through access capabilities for system and macro libraries. The final testing validates the COBOL calling interface and access to data files. A Very Simple ProgramThis is the first test case. It is a very simple program that is used to test the basic configuration options of the Assembler sub-System for a Micro Focus environment. Successful execution will validate the User environment can access the basic Assembler functions provided by Micro Focus. Explore a Very Simple Assembler Program that sets a return code to zero and does a return to the calling program. This program performs the same functions of IEFBR14. Various Formats of the WTO MacroThis test case is used to test the various formats of the Write-To-Operator Macro. Successful execution will validate the function provided by the Macro and confirm the configuration for the Macro Libraries (or Directories) provided by Micro Focus is correct. Explore the Formats for the WTO Macro that will display a message to the console or perform a Write-To-Operator. Macro Files, Maintain Unique LabelsThis test case is used to test the techniques of creating a user macro file that maintains unique labels. Successful execution will validate the function provided by the Macro and confirm the configuration for the User-Defined Macro Libraries (or Directories) is correct. Explore the Formats and Guidelines for using Macro Files. The task of maintaining unique labels when using macro files to generate code that includes branch instructions can be a challenge. There are various techniques used to solve this problem and each has its own advantages and disadvantages. Non-Executable ASCII MembersThe Micro Focus Assembler has the capability of producing non-executable load members. It is supported in an EBCDIC-encoded Development environment running on a Windows System. If an application is being moved to an ASCII-encoded environment the following may be required. Explore The technology to Generate Non-Executable Load Members from Mainframe Assembler Source Code for use with Micro Focus Enterprise Server on a Windows, Linux or UNIX System. This technology has the ability to generate a non-executable member for the EBCDIC or ASCII encoded environment. Technical DetailsThis section provides additional details about the Assembler sub-System and information about functionality and capabilities used in support of the Assembler sub-System. The MF370CTL Configuration FileThe following(ASMMFCTL.cfg) is an example of a MF370CTL.cfg file that is provided by Micro Focus. This example contains some typical "user" modifications. It has been renamed to avoid overlaying the original MF370CTL.cfg file. * ********************************************************************* * ASMMFCTL.cfg - a Configuration File is for Micro Focus Assembler * * This CFG Member is provided by SimoTime Technologies * * (C) Copyright 1987-2015 All Rights Reserved * * Web Site URL: http://www.simotime.com * * e-mail: helpdesk@simotime.com * * ********************************************************************* * * A copy of an MF370CTL.cfg Configuration File. * The parameters specified with the equal sign (=) may be submitted * as environment variables. Anything set as an environment variable * will overwrite the setting in this file. * *---------------------------------------------------------------------- [GLOBAL] * GLOBAL-FLAGS: * Flag-01 Y=32bit and Windows call SVC remapping N=don't call * Flag-02, Y=Convert draw, graphics, color attributes, N=don't convert * Flag-03, Y=use old MAC370, SYSPARM, OBJ370, WRK370 variables * N=use new Global section SYSIN, SYSOUT, SYSLIST etc * Flag-04, Y=use Advanced emulator version of MFASM * Flag-05, Y=user offered choice of continue/cancel job on user abends * N=job cancelled on user abends GLOBAL-FLAGS N1NYNNNNNN * HORZ ;WE-S ;WE-N ;VERT ;SE ;SW ;NE ;NW ;NS-E ;NS-W ;PLUS DRAW370-1 196=045;194=045;193=045;179=124;218=047;191=092;192=092;217=047;195=124;180=124;197=043 * *---------------------------------------------------------------------- * The following environment variables take a single directory: * SYSIN - Macro input .MLC files SYSIN=. * * SYSLIST - Assemble and Link listing files .MAT .PRN .LST SYSLIST=. * SYSWORK - Assemble, Link and Animator/370 work files .BAL .IDF/.IDX SYSWORK=. * SYSPUNCH - Assemble output .PCH files for PUNCH statements SYSPUNCH=. * SYSMPC - Assemble input precompiled macros .MPC SYSMPC=. * SYSLIN - Link input .LIN files and Assemble output .OBJ files SYSLIN=. * SYSLMOD - Link output load-member .390 files SYSLMOD=. * * The following environment variables take multiple directories * SYSLIB - Assemble input macro and copy files .MAC .CPY SYSLIB=.;C:\Program Files (x86)\Micro Focus\Enterprise Developer\include MAC370=.;C:\Program Files (x86)\Micro Focus\Enterprise Developer\include * OBJ370 - Link input .OBJ files (must contain SYSLIN) OBJ370=.;C:\Program Files (x86)\Micro Focus\Studio Enterprise Edition 6.0\base\lib * STEPLIB - Loader input load-members .390 files (must contain SYSLMOD) STEPLIB=.;C:\Program Files (x86)\Micro Focus\Studio Enterprise Edition 6.0\base\bin * * The following environment variable takes a single parameter * SYSPARM - Macro input SYSPARM value SYSPARM=MF370 * * The following environment variable allows the use of additional * extensions for MACRO filename.ext MACROEXT=CPY,MAC * *---------------------------------------------------------------------- * ANIM-FLAGS: * Flag-01, Y=reset GO-mode to STEP-mode for each new member, N=No-reset * Flag-02, 0-9, Default value for Go-Speed * Flag-03, through Flag-09, reserved for future use * Flag-10, Micro Focus use only, A=Anim/MVS, N=Noanim/MVS, T=TRanim/MVS ANIM-FLAGS Y5YYNYNNNN * *---------------------------------------------------------------------- * CICS TRANSLATOR VARIABLES * CICSRUN-FLAGS: * Flag-01, Y=Null addresses from CICS are =x'FF000000' * N=Null addresses from CICS are =x'00000000' CICSRUN-FLAGS NNNNNNNNNN MCO-CMD-IN EPILOG PROLOG OPTIONS ; default CICS Translator params * *---------------------------------------------------------------------- * COMPILER VARIABLES SET-CMD-IN REPLACE ANIMATE OMF(390) ; default Compiler params CON370=-L ; set screen display off in Linker * *---------------------------------------------------------------------- * RUN TIME VARIABLES MFPM=ON ; mainframe pointer manager is on by default SVC370=MFI ; set engine to MFI-mode MEMSIZE=00000000,7FFFFFFF ; set valid address range * * THE FOLLOWING RUN TIME VARIABLES ARE OVERRIDDEN BY THE SETTINGS IN * THE MAINFRAME EXPRESS IDE PROJECT, PROJECT OPTIONS PULLDOWN. VM370=3000 ; set SQA size to 3Meg AMODE370=31 ; run in 31-bit mode Ancillary Commands and ProgramsThis section describes the commands and/or programs that are used and/or shared with systems other than the Assembler sub-System. Set Common Environment VariablesThe following(ENV1BASE.cmd) is the command that is used to set the common environment variables. This approach defines a single point where environment variables can be managed, changed and quickly implemented. @echo OFF rem * ******************************************************************* rem * ENV1BASE.cmd - a Windows Command File * rem * This program is provided by SimoTime Technologies * rem * (C) Copyright 1987-2021 All Rights Reserved * rem * Web Site URL: http://www.simotime.com * rem * e-mail: helpdesk@simotime.com * rem * ******************************************************************* rem * rem * Text - Provide a single point to set common environment variables. rem * Author - SimoTime Technologies rem * Date - January 24, 1996 rem * rem * Set the commonly used environment variables. This is used to provide rem * a single point for managing the commonly used environment variables. rem * set SimoLIBR=c:\SimoLIBR set BASELIB1=c:\SIMOSAM1\DEVL set BASELIB8=c:\SimoSAM8 set BaseWIP1=c:\SimoSAM1\WIP1 set DATAZERO=c:\SIMODATA\DEVL\DATA\ZERO set BASEAPP=%BaseLib1% set BASESYS=%BaseLib1%\SYS1 set BASECAT=%BaseLib1%\DATA set UMAPALIB=%BASECAT%\ASC1 set UMAPELIB=%BASECAT%\EBC1 set SYSLOG=%BASESYS%\LOGS\SYSLOG_USER.DAT set SYSOUT=%BASEAPP%\LOGS\SYSOUT_SIMSAM01.txt set SLZMSG=%BASEAPP%\LOGS\SLZMSG_USER.TXT set PostNOTE=%BASEAPP%\LOGS\JOBLOG_SIMONOTE.TXT set SIMONOTE=%BASEAPP%\LOGS\JOBLOG_SIMONOTE.txt set USERPOST=%BASEAPP%\LOGS\ASSIGNED_USER_POST_FILE.txt if [%1]==[] goto NO_POST set SYSOUT=%BaseLib1%\LOGS\SYSOUT_%1.txt call SIMONOTE "+ ENV1BASE *" call SIMONOTE "+ ENV1BASE ********************************************************************%1" call SIMONOTE "+ ENV1BASE is preparing the System Environment..." call SIMONOTE "+ SIMOLIBR is %SIMOLIBR%" call SIMONOTE "+ MIFOSYS1 is %MIFOSYS1%" call SIMONOTE "+ BASELIB1 is %BASELIB1%" :NO_POST call SIMONOTE "+ SIMONOTE Job Log File is %SIMONOTE% " rem * set MQBASE=C:\Program Files\IBM\WebSphere MQ rem * rem * Set the location for the Apache-Tomcat Server... set CATALINA_HOME=C:\APACHETC\apache-tomcat-7.0.52 rem set CATALINA_HOME=C:\Program Files (x86)\Java\jdk1.8.0_112 rem * rem * Set the Environment for the Java Environment... rem set JAVABASE=C:\APACHETC\apache-tomcat-7.0.52 set JAVABASE=C:\Program Files (x86)\Java\jdk1.8.0_112 set JAVASDK="%JAVABASE%\bin" set JAVA_HOME=%JAVABASE% set JRE_HOME=%JAVABASE% set SIMOTCAT=%CATALINA_HOME%\webapps\simotcat set SIMPACKS=%CATALINA_HOME%\webapps\simotcat\WEB-INF\classes\simpacks rem * rem * Set the environment for the Micro Focus technology... set MIFOEDEV=C:\Program Files (x86)\Micro Focus\Enterprise Developer set MIFOVCBL=C:\Program Files (x86)\Micro Focus\Visual COBOL Build Tools set MIFOESTU=C:\Program Files (x86)\Micro Focus\Studio Enterprise Edition 6.0 set MIFOEMFE="C:\Program Files (x86)\Micro Focus\Mainframe Express" rem * rem * Large file support, performance tuning and record locking of the File Handler set EXTFH=%BASESYS%\CONFIG\EXTFHBIG.CFG rem * rem * For IMS Support set ES_IMSLIB=%BASEAPP%\IMSLIB set ES_ACBLIB=%BASEAPP%\IMSLIB rem * rem * EZASOKETS Check EZASOKETS Enabled box or set ES_EZASOKET_SUPPORT=YES set EZACONFG=BASESYS1\CONFIG\EZACONFG.dat rem * rem * Resource Allocation and Performance for SORT and non-Relational Data rem set MFJSENGINE=SYNCSORT set SORTSCHEME=1 set SORTSPACE=750000000 set TMP=C:\SORTWORK rem * set ES_ALLOC_OVERRIDE=%BASESYS%\CONFIG\CATMAPA1.cfg rem * For CORE_ON_ERROR function, ABEND Dump rem * set COBCONFIG_=%BASESYS%\CONFIG\diagnose.cfg rem * rem * Consolidated Trace Facility (CTF) rem * set MFTRACE_CONFIG=%BASESYS%\CONFIG\ctf.cfg rem * set MFTRACE_LOGS=c:\ctflogs rem * rem * For Job Restart, ABEND Recovery set MF_UCC11=Y set ES_JES_RESTART=Y rem * rem * Set environment for MFBSI (Micro Focus Batch Scheduling Interface) set ES_EMP_EXIT_1=mfbsiemx set MFBSI_DIR=%BASESYS%\LOGS\%JESSERVERNAME% set MFBSIEOP_CMD=ENABLE set MFBSIEOP_CSV=ENABLE set MFBSIEOP_HTM=ENABLE set MFBSIEOP_XML=ENABLE rem * rem * Set Behavior and Trace Flags for GETJOBDD rem * Position=12345678/12345678 set JDDFLAGS=nnnWnnnn/YYnnnnnn rem * rem * If not already set then set the PATH for Micro Focus Directories if "%SIMOPATH%" == "Y" goto JUMPPATH if "%MIFOSYS1%" == "EDEV" goto JUMPEDEV if "%MIFOSYS1%" == "VCBL" goto JUMPVCBL if "%MIFOSYS1%" == "ESTU" goto JUMPESTU if "%MIFOSYS1%" == "EMFE" goto JUMPEMFE :JUMPEDEV set path=%BASESYS%\LOADLIB;%MIFOEDEV%\bin;%JAVASDK%;%BASEAPP%\JAVA;%PATH%; set CobCpy=%BASEAPP%\CobCpy1;%BASEAPP%\CobCpy2;%BASEAPP%\CobCpy6;%SimoLIBR%;%MIFOEDEV%\CPYLIB set MIFOBASE=%MIFOEDEV% goto JUMPPATH :JUMPVCBL set path=%MIFOVCBL%\bin;%MIFOVCBL%;%JAVASDK%;%BASEAPP%\JAVA;%PATH%; set MIFOBASE=%MIFOVCBL% goto JUMPPATH :JUMPESTU set MIFOBASE=%MIFOESTU%\Base set MIFOBIN=%MIFOBASE%\bin set path=%BASESYS%\LOADLIB;%MIFOBASE%;%MIFOBIN%;%JAVASDK%;%BASEAPP%\JAVA;%PATH%; set CobCpy=%BASEAPP%\CobCpy1;%BASEAPP%\CobCpy2;%BASEAPP%\CobCpy6;%SimoLIBR%;%MIFOBASE%\SOURCE goto JUMPPATH :JUMPEMFE set MIFOBASE=%MIFOEMFE%\Base set MIFOBIN=%MIFOBASE%\bin set path=%BASESYS%\LOADLIB;%MIFOBASE%;%MIFOBIN%;%JAVASDK%;%BASEAPP%\JAVA;%PATH%; set CobCpy=%BASEAPP%\CobCpy1;%BASEAPP%\CobCpy2;%BASEAPP%\CobCpy6;%SimoLIBR%;%MIFOBASE%\SOURCE goto JUMPPATH rem * :JUMPPATH set SIMOPATH=Y rem * set MAINFRAME_FLOATING_POINT=true set COBIDY=%BASEAPP%\COBIDY set COBPATH=.;%BASEAPP%\LOADLIB;%BASEAPP%\LOADLIB\GNTS;%BASESYS%\LOADLIB;%SimoLIBR% set LIBPATH=.;%BASEAPP%\LOADLIB;%BASEAPP%\LOADLIB\GNTS;%BASESYS%\LOADLIB;%SimoLIBR% set TXDIR=%BASESYS%\LOADLIB;%MIFOBASE% set CobCpy=%BASEAPP%\CobCpy1;%BASEAPP%\CobCpy2;%BASEAPP%\CobCpy6;%SimoLIBR% rem * set USERCLASS=%BASELIB1%\LOADLIB set CLASSPATH=. set CLASSPATH=%CLASSPATH%;%JAVABASE% set CLASSPATH=%CLASSPATH%;%JAVABASE%\lib set CLASSPATH=%CLASSPATH%;\%USERCLASS%\simpacks set CLASSPATH=%CLASSPATH%;C:\APACHETC\apache-tomcat-7.0.52\webapps\simotcat\WEB-INF\classes set CLASSPATH=%CLASSPATH%;C:\APACHETC\apache-tomcat-7.0.52\webapps\simotcat\WEB-INF\classes\simpacks rem * if "%MIFOSYS1%" == "ESTU" set CLASSPATH=%CLASSPATH%;%MIFOBIN% if "%MIFOSYS1%" == "EDEV" set CLASSPATH=%CLASSPATH%;%MIFOEDEV% if "%MIFOSYS1%" == "VCBL" set CLASSPATH=%CLASSPATH%;%MIFOVCBL% if "%MIFOSYS1%" == "VCBL" set CLASSPATH=%CLASSPATH%;%MIFOVCBL%\bin\mfcobol.jar rem * set JobStatus=0000 call SIMONOTE "+ ENV1BASE is returning to caller" Display and Log MessagesThe following(SIMONOTE.cmd) is the command that is used to display and log messages in a consistent manner. The display function provides a system user with quick visual feedback while the logging facility provides support and management with review and after the fact information. @echo OFF rem * ******************************************************************* rem * SIMONOTE.cmd - a Windows Command File * rem * This program is provided by SimoTime Technologies * rem * (C) Copyright 1987-2019 All Rights Reserved * rem * Web Site URL: http://www.simotime.com * rem * e-mail: helpdesk@simotime.com * rem * ******************************************************************* rem * rem * Text - Display message on screen and write to a log file. rem * Author - SimoTime Technologies rem * rem * This script may be called from other scripts and expects a single rem * parameter enclosed in double quotes. The double quotes will be rem * removed. Before writing to the log file a date and time stamp rem * will be inserted in front of the message text. rem * rem * Note: The tilde (~) removes leading/trailing double-quotes. rem * if "%SimoNOTE%" == "" set SimoNOTE=c:\SimoLIBR\LOGS\SimoTime.LOG echo %date% %time% %~1>> %SimoNOTE% echo %~1 SummaryThis document provides an introduction to the installation, configuration and usage of the mainframe assembler capability on a Windows System using Micro Focus technology and Enterprise Developer. This document may be used to assist as a tutorial for new programmers or as a quick reference for experienced programmers. In the world of programming there are many ways to solve a problem. This documentation and software were developed and tested on systems that are configured for a SIMOTIME environment based on the hardware, operating systems, user requirements and security requirements. Therefore, adjustments may be needed to execute the jobs and programs when transferred to a system of a different architecture or configuration. SIMOTIME Services has experience in moving or sharing data or application processing across a variety of systems. For additional information about SIMOTIME Services or Technologies please contact us using the information in the Contact or Feedback section of this document.
Permission to use, copy, modify and distribute this software, documentation or training material for any purpose requires a fee to be paid to SimoTime Technologies. Once the fee is received by SimoTime the latest version of the software, documentation or training material will be delivered and a license will be granted for use within an enterprise, provided the SimoTime copyright notice appear on all copies of the software. The SimoTime name or Logo may not be used in any advertising or publicity pertaining to the use of the software without the written permission of SimoTime Technologies. SimoTime Technologies makes no warranty or representations about the suitability of the software, documentation or learning material for any purpose. It is provided "AS IS" without any expressed or implied warranty, including the implied warranties of merchantability, fitness for a particular purpose and non-infringement. SimoTime Technologies shall not be liable for any direct, indirect, special or consequential damages resulting from the loss of use, data or projects, whether in an action of contract or tort, arising out of or in connection with the use or performance of this software, documentation or training material. Downloads and LinksThis section includes links to documents with additional information that are beyond the scope and purpose of this document. The first group of documents may be available from a local system or via an internet connection, the second group of documents will require an internet connection. Note: A SimoTime License is required for the items to be made available on a local system or server. Current Server or Internet AccessThe following links may be to the current server or to the Internet. Explore the Assembler Connection for more examples of mainframe Assembler programming techniques and sample code. Explore The ASCII and EBCDIC Translation Tables. These tables are provided for individuals that need to better understand the bit structures and differences of the encoding formats. Explore The File Status Return Codes that are used to interpret the results of accessing VSAM data sets and/or QSAM files. Internet Access RequiredThe following links will require an internet connect. A good place to start is The SimoTime Home Page for access to white papers, program examples and product information. This link requires an Internet Connection Explore The Micro Focus Web Site for more information about products (including Micro Focus COBOL) and services available from Micro Focus. This link requires an Internet Connection. Glossary of TermsExplore the Glossary of Terms for a list of terms and definitions used in this suite of documents and white papers. Contact or FeedbackThis document was created and is maintained by SimoTime Technologies. If you have any questions, suggestions, comments or feedback please use the following contact information.
We appreciate hearing from you. Company OverviewSimoTime Technologies was founded in 1987 and is a privately owned company. We specialize in the creation and deployment of business applications using new or existing technologies and services. We have a team of individuals that understand the broad range of technologies being used in today's environments. Our customers include small businesses using Internet technologies to corporations using very large mainframe systems. Quite often, to reach larger markets or provide a higher level of service to existing customers it requires the newer Internet technologies to work in a complementary manner with existing corporate mainframe systems. We specialize in preparing applications and the associated data that are currently residing on a single platform to be distributed across a variety of platforms. Preparing the application programs will require the transfer of source members that will be compiled and deployed on the target platform. The data will need to be transferred between the systems and may need to be converted and validated at various stages within the process. SimoTime has the technology, services and experience to assist in the application and data management tasks involved with doing business in a multi-system environment. Whether you want to use the Internet to expand into new market segments or as a delivery vehicle for existing business functions simply give us a call or check the web site at http://www.simotime.com
|