home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
kermit.columbia.edu
/
kermit.columbia.edu.tar
/
kermit.columbia.edu
/
ibmtsonih
/
tsnhex.asm
< prev
next >
Wrap
Assembly Source File
|
1986-12-17
|
2KB
|
49 lines
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