HEX TITLE 'CONVERT OBJECT DECKS TO HEX FOR NETWORK TRANSMISSION' HEX CSECT STM 14,12,12(13) SAVE REGISTERS BALR 12,0 LOAD BASE REGISTER USING *,12 ST 13,SAVE+4 CHAIN SAVE AREAS LA 13,SAVE L 11,0(,1) POINTER TO PARM FIELD LH 11,0(,11) LENGTH OF PARM FIELD OPEN (INPUT,(INPUT),OUTPUT,(OUTPUT)) OPEN DATA SETS READ GET INPUT,INCARD READ A CARD CLC INCARD(2),=C'./' IEBUPDTE CONTROL CARD? BE ONECARD LTR 11,11 WAS PARM FIELD SPECIFIED? BZ DOCARD BR IF NOT CLC INCARD(4),=AL1(X'02',C'S',C'Y',C'M') SYM CARD BE READ SKIP IT IF SO DOCARD LA 2,INCARD SET UP HEX CONVERSION LOOP LA 3,OUTCARD LA 4,80/4 DOHEX UNPK 0(9,3),0(5,2) CONVERT 4 BYTES TO HEX LA 2,4(,2) LA 3,8(,3) BCT 4,DOHEX TR OUTCARD(160),HEXTBL-C'0' CONVERT TO PRINTABLE CHARS PUT OUTPUT,OUTCARD WRITE HEXED CARD AS 2 RECORDS PUT OUTPUT,OUTCARD+80 B READ * ONECARD PUT OUTPUT,INCARD COPY CARD TO OUTPUT B READ * EOF CLOSE (INPUT,,OUTPUT) CLOSE DATA SETS L 13,SAVE+4 RESTORE SAVE AREA LM 14,12,12(13) RESTORE REGISTERS SR 15,15 SET RETURN CODE BR 14 EJECT SAVE DC 18A(0) SAVE AREA INCARD DC CL80' ' INPUT CARD AREA OUTCARD DC CL161' ' OUTPUT CARD AREA HEXTBL DC C'0123456789ABCDEF' HEX TRANSLATE TABLE * INPUT DCB DDNAME=INPUT,DSORG=PS,MACRF=(GM),RECFM=FB,LRECL=80, * EODAD=EOF * OUTPUT DCB DDNAME=OUTPUT,DSORG=PS,MACRF=(PM),RECFM=FB,LRECL=80 END