The procedure PROC.ASSXT is a small auxiliary procedure that is to speed up processing (system file assignment, assembler call) in the event of frequent access to the ASSEMBH assembler. The procedure was written as a non-S procedure using the SDF command language. No restrictions apply to its conversion into an S procedure.
Input procedure PROC.ASSXT
/BEGIN-PROC A,P-P=(&FILE),ESC-CHAR='&' /REMARK **** Call ASSEMBH **** /DEL-FI LST.ASSEMBH /SET-JOB-STEP /ASS-SYSDTA *SYSCMD /DEL-SYS-FI "from previous ASSEMBH calls" *OMF /START-PROG $ASSEMBH //COMPILE SOURCE=&FILE,LISTING=PAR(OUTPUT=LST.ASSEMBH),- //TEST-SUPPORT=YES //END /SET-JOB-STEP /ASS-SYSDTA *P /END-PROC
SDF-CONV run
|
(1) | The SDF-CONV utility routine is started. |
(2) | The CONVERT statement assigns the input and output procedures, as well as defining the documentation level. The procedure is to be converted into an S procedure. All other operands of the CONVERT statement retain their default value. Once processing has been completed, SDF-CONV reports that conversion was terminated without warnings or errors. This overview is output to SYSOUT. |
(3) | SDF-CONV is terminated with the END statement. |
Conversion log (SYSLST)
***** BS2000 COMMAND CONVERTER : SDF-CONV V3 ***** page 1 % CVR1010 OPTIONS IN EFFECT: ————————————————————————————————————————— (1) % CVR1011 FROM-FILE = PROC.ASSXT % CVR1012 EXPECT-CONTINUATION = *NEW-MODE % CVR1013 PARAMETER-LINES = *CONVERT % CVR1014 TO-FILE = SDFP.PROC.ASSXT % CVR1015 PRODUCE-CONTINUATION = *NEW-MODE % CVR1016 REPLACE-OLD-FILE = *YES % CVR1017 SYSTEM-SYNTAX-FILE = $.SYSSDF.SDF-CONV.030.USER.U-CMD % CVR1018 GROUP-SYNTAX-FILE = $.SYSSDF.SDF-CONV.030.USER.S-CMD % CVR1019 UNCHANGED-CMD = *NONE % CVR1020 DOCUMENTATION = *MINIMUM % CVR1021 TARGET-VERSION = *OSD-V2 % CVR1022 OUTPUT-FORM = *STD % CVR1023 PROCEDURE-FORMAT = *S-PROCEDURE(CMD- FORMAT=*SDF,PROGRAM-INPUT=*DATA(EXCEPT-AFTER-CMD=*NONE,WARNING=*NO),BLOCK- INPUT=*NOT-ALLOWED) ***** BS2000 COMMAND CONVERTER : SDF-CONV V3 ***** page 2 /BEGIN-PROC A,P-P=(&FILE),ESC-CHAR='&' ————————————————————————————— (2) /REMARK **** Call ASSEMBH **** /DEL-FI LST.ASSEMBH /SET-JOB-STEP /ASS-SYSDTA *SYSCMD /DEL-SYS-FI "from previous ASSEMBH calls" *OMF /START-PROG $ASSEMBH //COMPILE SOURCE=&FILE,LISTING=PAR(OUTPUT=LST.ASSEMBH),- //TEST-SUPPORT=YES //END /SET-JOB-STEP /ASS-SYSDTA *P /END-PROC % CVR1000 CONVERSION TERMINATED WITH: ———————————————————————————————— (3) % CVR1001 FAILURES: 0 % CVR1002 ERRORS : 0 % CVR1003 WARNINGS: 0 % CVR1004 NOTES : 0
(1) | The operand values set for the SDF-CONV run are listed. |
(2) | All command records in the input procedure are output. |
(3) | The last part of the log is identical with the output to SYSOUT. |
Output procedure SDFP.PROC.ASSXT
/SET-PROCEDURE-OPTIONS LOGGING-ALLOWED=YES,INTERRUPT-ALLOWED=YES,/ DATA-ESCAPE-CHAR=STD,SYSTEM-FILE-CONTEXT=OWN,DATA-ERROR-HANDLING=/ NO /BEGIN-PARAMETER-DECLARATION /DECLARE-PARAMETER NAME=FILE,TYPE=ANY,INIT=*PROMPT /END-PARAMETER-DECLARATION /REMARK '**** CALL ASSEMBH ****' /DELETE-FILE LST.ASSEMBH /SET-JOB-STEP /ASSIGN-SYSDTA TO=*SYSCMD /"*****" REMARK '/DEL-SYS-FI "from previous ASSEMBH calls" *OMF' —————— (1) /DELETE-SYSTEM-FILE "from previous ASSEMBH calls" *OMF /START-PROGRAM $ASSEMBH //COMPILE SOURCE=&(FILE),LISTING=PAR(OUTPUT=LST.ASSEMBH),TEST-SUPPORT=- // YES //END /SET-JOB-STEP /ASSIGN-SYSDTA TO=*P /IF-BLOCK-ERROR;END-IF /END-PROCEDURE
(1) | The command record with the inline comment is written to a comment line preceding the command line with the conversion result. This ensures that the information in the inline comment is not lost during conversion. (In this case, DOC=*MIN/*MAX must be set.) |