~"M" 
~"I4Pl 
r 
PRUGR. 
FUR 
.... 
nOEL 
20 
TAPf 
ASHMtlLFk 
I2I~l/b7 
PAIoE 
00", 
,)1110 
:>1,10 
"7i10 
'HI'O 
0700 
"7r)l 
0701 
11m 
.. 
00)0 
"70b 
00,,1) 
·1701l 
OOO~ 
()7JA 
'l7f2 
1170C 
10 
!l7'lD 
80 
~70~ 
0.)00 
07FO 
OOOf) 
HE 
2 
03 
'l1D 
~o 
1l7F4 
0100 
.17Eb 
0320 
HOll 
01 
n~9 
00 
HEA 
1290 
'HEC 
0320 
.17F~ 
oooooOOC 
07F2 
000'1 
J7F 
.. 
E3C1D1C~DbE4E3 
07FC 
0000 
01FIt 
"I7FE 
()~2C 
Odll 
4c1FO 
'l1l2E 
0100 
0~30 
07.(11  FOliC 
EOOO 
OA5C 
'1836 
"AEO 
FlIO 
OAI:O 
()83A 
40EO 
FOB6 
oaRb 
TPS 
A~ 
VI" 
1.10 
0003 
,HPRU 
ru 
IfoIClUuE 
foIEXT 
CARD  IfoIrll  UDJECT  DI:CK  FOR 
C"AINT 
JOB 
U912u03 
PHA~E 
SAMPLE. 
A, 
2000 
09HOO 
.. 
0(\04 
~rAHT 
7uOO 
FIRST 
LOC. 
USED 
IIY 
PRGIo". 
IS 
~OOO 
lI~1200!> 
loOO~ 
•  SAMPLE 
PI<LJuRAM 
WHICH 
CRE 
ATES  R I:CUI\OS 
CuNTAININu 
CONSECUTIVE 
NU"tlERS 
lI 
... 
120D6 
0006 
• 
HO'4 
1 
T!J 
100. 
RECORDS  AkE 
Wil.l 
JJEfoi  Ol<jlll 
TAPE. 
LJ<,/12001 
nonl  •  THI 
TAPt 
IS 
RI:AU 
ANU 
PKI'ITEu 
(;91Z008 
'009 
•  Ttif. 
PKLltiHAI4 
USeS 
j 
LlAU 
FlUS 
091200<,/ 
000" 
I. 
fILE 
TAPWuT, 
A  TAPE  UiJTPUT 
FILE 
091ZuIU 
0010 
7. 
FILE 
lAPElN, 
A 
UPE 
INPUT 
fill: 
U<,/lolOll 
0011. 
3. 
FIL~ 
PRltHfR, 
A 
PRINHII 
FILE 
0912012 
Oul2 
TI1[SE 
FILES 
ARE 
DfFI~FD 
IN 
TtiE  FOLLOWING 
0912013 
001', 
091201 
.. 
0014 
091201!> 
0(\\? 
TAPflliJT 
I S  A  tlUICKI:O  TAPE  UUTPUT 
FIH. 
kEClIkUS 
IH 
IS 
80. 
BLUCKSIlE 
IS 
0912Ulo 
0016 
• 
~oo. 
THI: 
ktEl 
FUk 
THE 
Fill, 
IS 
MuUNTED 
UN 
SYSOOI. 
0911011 
0017 
• 
D912ul11 
001~ 
TAPUIUT  DlFMT 
9LKSllE~SOO,DI:VADDk-SYSOul,fILAbL.STD,IOARt:AI-ARI:A, 
X091Z019 
0019 
RECFOkM-F 
IXtlUI, 
fYPEfLf-lIUfPUT 
,oILJRKAcYES,RECSllE-IiO 
09120":11 
0020. 
OfFMM 
OffMT003 
0021" 
DTf14141101 
0022" 
,..lID 
20 
TPS 
10CS 
VERSIO~ 
02 
MLIO-LEVEL 
00 
OTF""002 
0023" 
OTF""OO'; 
0024" 
THI S 
MACkO 
PERFORMS  THE 
DIJIGN. 
AND 
CREATES 
THE 
DTFBLK  FOR  ALL 
TPFILES 
DTfMTOO!> 
0025. 
OS 
OH 
OTFMT3b9 
0026. 
USING 
.,15 
OTFMTl<,/O 
0021*TAPEOUT 
DC 
YIT 
APWUTI 
DTfMTl91 
002 
002S. 
OC 
X'0707' 
REW 
OPTION 
COMMAND 
BYTES  IREWINO'I 
OTF"139b 
002 
0079*ICCAO()1 
DC 
ti'O' 
CCB 
INT. 
LINK 
OTfHT40U 
all", 
0030* 
loC 
B'OOOOOOOOOIOOOOOO' 
CC6 
CO"MYNICATIUN 
INFO 
OTFMTlt02 
002 
0031 
* 
DC 
Y 
1141 
CCIl 
LOulCAL 
UNIT 
01 
SPLACl:MENT 
OTf"H12 
002 
0037. 
oc 
YllClWuOl1 
AUURESS 
OF 
SET 
MOOt: 
CCW 
UTF"TIt13 
002 
0033. 
DC 
6'00010000' 
FILE 
STATUS 
DTFMTltlb 
OOol 
0031t. 
OC 
6' 
10000000' 
FILE 
CHARACT. 
OTf"T 
.. 
.l 
.. 
002 
0035. 
DC 
YIOI 
NOT 
USED 
OTFMH211 
OOl 
0036. 
DC 
YIOI 
LUG 
UNIT 
DISP. 
FlI~ 
ALTTAPE  OTFMT 
.... 
1 
002 
0037" 
DEF 
HIE  SET 
MODE 
CCW.COMMANU 
BytE 
I S 
INSE~TED 
AT 
08J. 
TI"E 
fRO" 
PU6 
OTfMT 
.... 
Z 
0038.IClwOOI 
DC 
XL!'3' 
COMMAN~I 
tlyre 
'NOP' 
DTfI4T 
.... 
3 
002 
OO~C;. 
DC 
XLI'SO' 
FLAC, 
BYTE  I  CHAIN 
BIT 
UNI 
OTf"TIt 
.. 
1t 
1102 
0040. 
OC 
H' 
25b' 
CONS 
TANT 
,REPL 
Atl 
1'410 
UNUSED 
ADOR 
OF 
I/OAREA 
DTfMT 
.. 
!>o 
0<)2 
OOItI.ICNTOOI 
DC 
ti'SOO' 
CONSTANT,REPLACING 
UNuSEO 
LENIoTHtOUNT  DTfI4T"!>2 
002 
0042.ICCWOOI 
OC 
XLI'I' 
COMMANII 
COOE 
'WRITE' 
OTFI4Hb3 
002 
0043. 
DC 
XLI' 
0' 
flAGS 
DTFMT 
.. 
6 
.. 
OOZ 
0044. 
DC 
YCAREAI  START  .ADDRESS 
Of 
IIU 
AREA 
OTF"T"b9 
002 
004"'. 
DC 
YI8001 
LENuTH 
cnUNT 
OTFMH75 
002 
001t6.IIICTOOI 
OC 
PL4'O' 
PACKfD 
BLOCK 
COUNT  UTfMT 
.. 
n 
002 
00 
.. 
7. 
DC 
YIOI 
NOT 
US[O 
OTfMT 
.. 
79 
002 
00 
.. 
8. 
DC 
CL7' 
UPEOUT' 
fILENAME 
DTfMl 
.. 
83 
DOl 
OO"Q. 
DC 
YIOI 
SP~CIF 
HS 
FIRST 
DTf"T 
tlLOCK  DTfMT"II!> 
002 
OOSO.INI 
EOU 
*-10 
DTFMTlt90 
000;1. 
OS 
CLlt6 
ARFA  TO 
S.AVE 
LAHEL 
INFO 
DTFMT 
.. 
91 
00~2. 
US 
OH 
DTf14Tlt9l 
0053HAPEUUTP 
DC 
X'''8FO' 
LH 
15,ADOR 
OF  DTF 
6LOlK 
DTFMT5111 
003 
0054* 
DC 
YITAP~OUTI 
ENTRY  FOR 
PuT 
OTFMT519 
003 
0000 
005~. 
MVC 
IKOVOOlC 
2)'01141 
INSERT 
ADDR 
OF 
WORKAREA 
OTFMT5.ll 
003 
0056. 
AH 
lIt,IC02001 
CUCULATE 
AND 
DTfHTS22 
003 
0051* 
STH 
IIt,lkETOOI+,2 
SAVE 
RETURN 
ADOR 
DTfHT525 
003 
UO;II.UPEUUT 
DT~ 
NO 
,lIl1v", 
SYSOO 
I", 
STU, 
AREA, " 
,FORWAkD,f 
IX6LK, 
80" 
YE 
S,OUTPUIOOTF 
MTS 
.. 
O 
005Q. 
T 
"YES, 
DTfMT!>"U 
OObO" 
THI 
S 
MACRO 
HANDLE~ 
TAPE  OUTPUT  f 
IL 
ES,f 
III 
LENGTH  BLOCKED,  1 
JlO,WORKA 
IITfNUOOI 
083E 
.. SEO 
FILS 
08ES 
0061.IENTOOI 
LH 
1401RPTOOI 
GET  RECOROPOINTER  DTfNDO<lZ 
003 
01142 
911t0 
F'007 
0707 
00b2. 
TM 
ICC6001*3,X'''O' 
WAIT 
FOR 
DTFNDOIH 
003 
08 
.. 
b  1t7bO 
F012 
0847 
0063. 
til 
.-4 
1/0 
COMPLETIlIN  OTFNOOO4t 
003 
081tA 
0201 
FOIC 
FIl2 
07EC 
OSE2 
0064* 
MVC 
ICCWOO1*412101IlLKOOl 
INITIALllE 
6LDCKLENGTHCOUNT  OTfNOOOS 
003 
0~50 
9101 
FOOl> 
0706 
0065* 
TM 
ICCBuOI+2,X'01' 
TEST 
IF 
UfoIlT 
EXCEPTION 
DlfNU006 
0<13 
()854 
4710 
FOBA  08t1A 
OObb. 
BO 
IEOVOOI  YES 
DTfN0001 
003 
Otl~R 
006 
7.1 
'4V~OOI 
EOU 
• 
uTFfoI0008 
085C 
00bll"140VOOI 
EOU 
"It 
ADDRESS  OF 
WORKAREA 
OTFNUOll 
Uti!>!! 
UZ 
.. 
F 
~OOO 
0000  0000  0000 
0069. 
MVC 
0180,141,0101 
I~OVE 
RECORD  FROH 
WORKA 
TO 
IIOAREA 
DTFNOOIZ 
003 
OR5E 
.. 
AEO 
Fll.. 
08E4 
0070. 
AH 
llt,IRECOOl 
UPIlUE 
RECORDPOINTER  &>TfNU037  00::1 
08b2 
40EO 
FilS 
,,8E8 
0071. 
STH 
1401RPTOOI 
OTFND0311 
004t 
0~66 
49EO 
F1I6 
OSE6 
OOP*IBFTOOI 
CH 
14,IEOBOOI 
ENO 
OF 
BLOCK 
TEST 
DTFND039 
00" 
"I8bA 
477'l 
FOR4 
08t14 
0073* 
B~~ 
IRETOOI 
If 
NOT.RETURN 
IN-LINE 
OTfNUII40 
00 
.. 
0~6E 
40EO 
001lt.IR~AOOI 
DC 
X'4DEO' 
ELSE  WRITE  BLOCK  DTFNDO 
.. 
1 
00 
.. 
0870 
OE06 
0010;. 
DC 
YCIPIOCSI 
8AS 
H,IPIOCS 
DTFNOOlt2 
00 
.. 
'l1l12 
07DIt 
OOH. 
DC 
YClCCbOOll 
OTfNIl0 
.. 
3 
00 
.. 
,)~74 
FA30 
FOIE 
FIlA 
07EF 
OAf A 
0077* 
AP 
IBCTOOI,IP0100l 
INCRFASE 
flLOCKCOUNT  DTFNOO 
.. 
S 
00 
.. 
'lSU 
0201 
FI18 
FOLA 
0llE8 
07EA 
0078* 
MVC 
IRPTOOlo1CCWOOl+2 
INlTlAlILE 
RECOROPUINTER  OTFNOu 
.. 
7 
00" 
1)880 
4700 
fOEE 
08lie 
0079.1 
~wJOOI 
tiC 
0,IRE5001 
SWITCti 
FOR 
TRUNt 
RTN. 
DTFNIl0 
.. 
8 
00 
.. 
:I881t 
1t1F'l 
onoo 
0000 
OOIlO.IRETOOI 
S  0 
EXIT 
IN-LINE 
DTFNOO 
.. 
9 
004t 
OR~~ 
083~ 
0081.IADkOOI 
DC 
YClENTOOll 
DEFUNE  RETURN 
ADOR 
FOR 
fUV 
CONDITION 
OTFNDII!>O 
004t 
OSSA 
.. 
SEO 
Foell 
08811 
0082.IEOVOOI 
Lti 
14,LADROOI 
GET  RETURNADORI:SS  FOR  EO\l 
CONDlTlON 
OTFNDO!>1 
00 
.. 
O~Rf 
9ltFE 
F006 
07Db 
0083. 
NI 
ICCBllOl+,2,x'FE' 
CLEAR 
UNIT 
EXCEPThlN 
BIT 
DTFNDO!>2 
00 
.. 
I)R92 
.. 
liFO 
0084.UPEOUTF 
DC 
X'''IIFO' 
LH 
1!i.FILENAHE 
,LOAD 
BASEREG. 
OTfND053 
004t 
0~91t 
0100 
OO~!>. 
01:  YCTAPEOUTI  ENTRY 
POINT 
FOR  FEOII  OTFNOOS 
.. 
DOlt 
"11191> 
<l4FF 
FOOC 
OOOC 
DORM 
I'll 
12 
CI!> 
1 
,X' 
EF' 
SET 
EOF/EOV 
SWITCH 
IN 
OTF  BLOCK 
TO 
fOV 
DTFNDO!i5 
004t 
089A 
92FO 
0061*TAPfOUTC 
DC 
X'92FO' 
MVI 
IISW+l,X'fO' 
ENTRY 
POINT 
FOR  CLOSE 
OTFN005b 
004t 
'lR9C 
O~O 
008~. 
DC 
YCiISW001+11 
SET  SWITCH 
TO 
EXIT 
TO 
GEN.ClOSE 
RTN. 
OTFND057 
005 
0~9E 
411FO 
.00R9.TAPEOUTT 
DC 
X'48FO' 
ENTRY 
PUINT 
FOR  TRUNC  OTFNOOSII  OOS 
'l8AO 
0100 
0090. 
DC 
YCTAPEOUTI 
LH 
J.5,FILENA"E 
,LOAD 
BASEii.EG. 
IlTFNOGS9 
DO!> 
01142 
"O~O 
FOF8 
08C8 
0091. 
5TH 
14,IRTNOOI+,2 
SAVE  RETURN  ADDRESS 
OTFND060 
OO!> 
OSAb 
1t1l~0 
FlllI 
08ES 
0092. 
lH 
lItoiRPTOOI 
CALCULATE 
DTFND061 
DOS 
OSU 
1t8EO  FOLA 
07£4 
0093. 
SH 
H,ICCWOO1+2 
CURRENT  BLOCKL ENGTH 
OTFN0062 
005 
'l8AF 
.. 
780 
FOF;> 
08C2 
0094. 
Sf 
IlswuOI 
1/0 
ARf·A 
IS 
EHPTY  OTFNDOb3 
005 
1)1111,2 
40EO 
fOIC 
07EC 
0095. 
STH  I 
.. 
,ICCWOOI+" 
IMSERT  CURRENT  BLKLENGTH 
INTO 
COUNT 
OTfN006 
.. 
005 
0llb6 
92fO 
FOIII 
OA81 
00'16. 
"VI 
ISWJ001+l,X'FO' 
SET 
RETURN 
SWlTtH 
DTFNU06!>  OOS 
')aBA 
.. 
7fO 
fOQE 
uRbE 
0097. 
II 
II<EAOOI  WRITE 
OTfND066 
005 
'l8Sf 
920£1 
FOBI 
1)861 
0098.IRESOOI 
MVI 
ISWJ001+l,X'OO' 
RESET 
SwITCH 
TO 
NOP 
OTFN0067 
OO!> 
I)~C2 
4700 
FI)FA  0ACA 
0099.IISWOOI 
BC 
O,ICSEOOl 
EXIT 
SwITCH 
FOR  FEOV 
AND 
CLOSE  ENTRY  DTfND0611 
005 
'111C6 
41f-0 
fOtllt 
01111.. 
OIOO.IRTNOOI 
II 
IRETOOI 
EXIT 
fOR 
TRUNC  ENTRY 
OTFNOOb9 
005 
()8t:A 
9400 
FOn 
08(3 
OIOI."SEOOI 
I'll 
IISW001+1,0 
RESET 
FEOVICLOSE 
EXIT 
SWITCH 
IlTFNOO10 
DO!> 
:lllCl 
.. 
,>f0 
FI')FII 
08C8 
0.102. 
LH 
14,IRTN001+2 
GET  RETURN  ADDRESS 
OTFN0071 
OO!> 
"1'102 
41HJ 
0103. 
DC 
X'47FO' 
tiC 
15,UACLOSE 
DTFN0072 
OO!> 
0~D4 
llbJ 
0104. 
DC 
YI 
ITACLOSEI 
EXH 
FOR 
fEOVICLOSE 
TO 
GEN.CLOSE 
RTN. 
OTFND013 
OOb 
1)'11)" 
"~fO 
OIOS.UPEOUTO 
DC 
X'''BFo' 
ENTRY 
POINT 
FOR  OPEN 
OTFN007 
.. 
OOb 
')11011 
0700 
0106. 
DC 
YCTAPEOUTI 
LH 
l!i,FILENAMI: 
,LOAD 
BASEREG. 
OTFNOu7!> 
006 
OIlOA 
1t7fO 
0107. 
DC 
X'''7fO' 
BRANCH 
TO 
DTFNOO76 
006 
1/l0C 
OF6C 
0108. 
DC 
YI 
ITAOPENI 
Gf.NE,RAL  TAPE  OPEN 
ROUTINE 
OTfNU077 
OOb 
O'lOf 
0109.ISVFOOI 
OS 
H  OTFNOO18 
01l~0 
OO()l 
01l0.IC02001 
DC 
H'Z' 
DTFNOO79 
007 
o/jr, 
1')37.0 
OIU.IIILKOOI 
DC 
H'800' 
OTFND'OIlO 
007 
)~'It 
I)(J~:I 
01l2.IRECOOI 
DC 
H'80' 
RECORDSIlE 
OTFND081 
007 
"~F" 
I~U(I 
0113*IE08001 
DC 
YIAREA+8001 
OTFh0085 
001 
Figure 
25. 
Sample 
of 
the 
Assembler 
Listing 
Sample 
Programs 
79