$ !******************************************************************** $ ! This COM file will create UWUMODUL.EXE, UWUCOBOL.EXE, UWFBYVAL.EXE, $ ! UWIBYVAL.EXE, UWFCSTR.EXE, UWICSTR.EXE, and INT31001.EXE in your $ ! current directory. After creation, you can copy them to the proper $ ! directory for others to use. $ ! $ ! To use this COM file, be sure to upload the following files from $ ! the diskette into your current directory: $ ! $ ! diskette file name local name on VAX/VMS $ ! INSTALL.VMS INSTALL.COM (this file) $ ! TLKTLOAD.SAS TLKTLOAD.SAS $ ! MODULE.VMS GETDUMPS.COM $ ! MODULE.DOC MODULE.DOC (optional) $ ! TESTPGMS.DAT TESTPGMS.DAT (optional) $ ! $ ! The MODULE.DOC file contains documentation; it is not necessary $ ! for the installation. $ ! $ ! The TESTPGMS.DAT file contains additional testing programs; it $ ! is not necessary for the installation. $ ! $ ! Simply invoke this COM file as $ ! $ ! @INSTALL $ ! $ ! to create the executables. A small SAS test will also be $ ! run. You should not have to change this COM file at all unless $ ! your SAS command is different than 'SAS'. $ ! $ ! Once INSTALL.COM completes, examine TEMP.LOG to ensure that the $ ! test ran correctly. You can then delete TEMP.LOG;*, GETDUMPS.COM;*, $ ! and INSTALL.COM;*. $ !******************************************************************** $ $ !-----Create a copy of the small dump file for INT31001.EXE----- $ ! $ @getdumps $ create int31001.vms $ deck ****PART 00 START: IDENT = :03NOV93:16:13:18**************************** LRECL=72 HOST=VMS TLKTDMPV=1.01 IEBCOPY=NO EXECUTABLE: 'intup1.exe' ****PART 00 END: IDENT = :03NOV93:16:13:18*************************** ****PART 01 START: IDENT = :03NOV93:16:13:18*************************** 1:512,07B0003000440060850008303230350102000088FF840008A80000019C70EC4F88 000468DFFE7F900001038300010583000402000400880001028300010483000706494E54 555031A100050456312E308B0008E0A79C70EC4F9700060530352D31338A000310000188 000203028500AEFFD0FFD0FFD0FFA0FF,1:22262,2:512,1F0400C2045EDEAC0450C3045 051D06152130CD550D6B000C00450D75212F604B100D000D000D000D000D000A000,2:35 88,3:512,040DBC000783000906494E545550310DBE85000B06494E5455503106BF001F8 3000508B913011084000F0CB9000203FBFCF9FCFDF90E0101BD9500D000D000D000D000D 000A000,3:4203,4:512,031D86028300110F44454641554C545F434C555354455211830 00128B500D000D000D000D000D000A000,4:1907,5:512,013385004A0206494E5455503 10456312E3020332D4E4F562D313939332031363A313020332D4E4F562D3139393320313 63A313000160000015641582D3131204C696E6B6572205630352D3133130004010000838 5000E092E242441425324242E00020003B900D000D000D000D000A000,5:5122,0:0, ****PART XXX EOF: IDENT = :03NOV93:16:13:18*************************** $ eod $ !-----Create the SAS program to read in both dumps-------------------- $ create temp.sas $ deck %inc tlktload; %tlktload(infile='uwumodul.vms',outfile='uwumodul.exe'); %tlktload(infile='uwucobol.vms',outfile='uwucobol.exe'); %tlktload(infile='uwfbyval.vms',outfile='uwfbyval.exe'); %tlktload(infile='uwibyval.vms',outfile='uwibyval.exe'); %tlktload(infile='uwfcstr.vms' ,outfile='uwfcstr.exe' ); %tlktload(infile='uwicstr.vms' ,outfile='uwicstr.exe' ); %tlktload(infile='int31001.vms',outfile='int31001.exe'); $ eod $ sas temp.sas $ del temp.log;* $ del temp.lis;* $ !-----Create the SAS program to test MODULE/COBOLINT----------------- $ create temp.sas $ deck data _null_; x = '01000000'x; call module('int31001',x); y = input(x,ib4.); put y= ' (should be 2)'; run; data _null_; x = '01000000'x; call cobolint('int31001',x); y = input(x,ib4.); put y= ' (should be 2)'; run; filename sascbtbl 'sas$worklib:temp.dat'; data _null_; file sascbtbl; input; put _infile_; cards4; routine int31001 minarg=1 maxarg=2; arg 1 format=ib4.; ;;;; data _null_; x = 1; call module('int31001',x); put x= ' (should be 2)'; run; data _null_; x = 1; call cobolint('int31001',x); put x= ' (should be 2)'; run; data _null_; x1=put('A',$byval4.); y1=input(x1,$byval4.); x2=put('ABCDE',$cstr6.); y2=input(x2,$cstr6.); put x1=$hex8. ' (should be 41000000)'; put y1= y1=$hex8. ' (should be A and 41202020)'; put x2=$hex12. ' (should be 414243444500)'; put y2= y2=$hex12. ' (should be ABCDE and 414243444520)'; run; $ eod $ sas temp.sas $ delete *.vms;* $ delete temp.sas;* $ exit