UE 686_3_Univac_9000_Card_Assembler_Programmed_Instruction_V3_1973 686 3 Univac 9000 Card Assembler Programmed Instruction V3 1973

UE-686_3_Univac_9000_Card_Assembler_Programmed_Instruction_V3_1973 UE-686_3_Univac_9000_Card_Assembler_Programmed_Instruction_V3_1973

User Manual: UE-686_3_Univac_9000_Card_Assembler_Programmed_Instruction_V3_1973

Open the PDF directly: View PDF PDF.
Page Count: 113

DownloadUE-686_3_Univac_9000_Card_Assembler_Programmed_Instruction_V3_1973 UE-686 3 Univac 9000 Card Assembler Programmed Instruction V3 1973
Open PDF In BrowserView PDF
UNIVAC 9000
CARD ASSEMBLER
Programmed Instruction Course

Book 3 - BAL Application

Si=E~Y_JLUNIVAC
·
tr
COMPUTER SYSTEMS

EDUCATION CENTER

UE-686.28

UNIVAC 9000
CARD ASSEMBLER
PROGRAMMED INSTRUCTION COURSE
I

BAL APPLICATION

Book-3

UE-686.28

UNIVAC is the registered trademark of Sperry Rand Corporation. Other
trademarks of Sperry Rand Corporation are FASTRAND, UNISCOPE, and
UNISERVO.
Sperry Rand Canada Limited Registered User.
UNIVAC Marca Registrada.

© 1973

Sperry Rand Corporation

Printed in U.S.A.

CONTENTS

Page

INTRODUCTION

. . . . . . . . . . . . . . . . . . . . . . 3-1

......

TALK-THAU PROGRAM

3-2

Marketing Sales Report Problem Statement
Input File
Output Report
Talk Thru
Macro Call Cards (Coding)
User Program (Coding)
Flowchart

DIAGNOSTIC EXERCISE

OPERATING PROCEDURES

. . . . . . . . . . . . . . . . . . . . . . 3-25

•

•

•

•

•

•

•

I

I

I

•

•

•

•

I

I

I

I

I

I

..

3-27

Preassembly Macro Pass Generator (Data Preparation
and Operating Procedures)
Two-Pass Card Assembly (Data Preparation and
Operating Procedures)
Two-Pass Linker (Data Preparation and Operating
Procedures)
Assembly Listing (Talk-Thru Program)
Linker Map (Listing)
Sample Production Run Output

. . . . . . . . . . . 3-51

TERMINAL PROBLEM
Payroll Reconciliation Report
Objective
Input Data
Processing
Output

3-iii

CONTENTS (Continued)

Page

REFERENCE SUPPLEMENT
OPEN
CLOSE
USING
EXTRN.
ENTRY.
GET . .
PUT . .
CNTRL.
Introduction to Pack and Unpack
Pack .
Unpack .
Add Packed Decimal
Subtract Packed Decimal
Zero and Add Packed Decimal
Multiply Packed Decimal
Move Character . . . .
Move Immediate
Compare Packed Decimal
Compare Logical
Compare Logical Immediate
Branch on Condition
Branch and Link
Store Halfword .
Edit Instruction .
Halt and Proceed

3-iv

.
.

.

.

3-59
3-59
3-60
3-61
3-62
3-63
3-64
3-65
3-66
3-68
3-69
3-71
3-73
3-75
3-77
3-79
3-81
3-83
3-84
3-86
3-8ff· ·3-90
3-92
3-93
3-95
3-98

INTRODUCTION

This text is Book 3 of a series of programmed instruction manuals designed
to teach 9000 Series Card Assembler programming. Successful completion
of Book 1 (UE-868.1 ), Book 2 (UE-868.2) and the self-test evaluation
covering Assembler Language programming are prerequisites for starting
Book 3.
In this text, the concepts and techniques taught in the course are
implemented by a "talk-thru" exercise in which the solution of a typical
data processing problem is presented. Each stage in the solution is explained
including the problem statement, formatting, flowcharting, and coding. A
diagnostic examination covering the flowcharting and coding is included
in the exercise.
In the final section of the course, the novice programmer, given a problem
statement, is responsible for the solution of the problem. The reference
supplement is designed to provide a convenient means of reviewing
instructions.

3-1

TALK-THRU PROGRAM
This exercise includes all of the documentation required to produce a complete program. The material provided includes
the process flowchart, source coding, printer format chart, and the assembler listing. You will be instructed to refer
to this material as you 'follow the analysis of the problem.
The exercise begins with a statement of the problem and a description of the input and output parameters. The next
steps are the flowcharting and coding of a solution. One solution is illustrated on the flowchart and coding sheets
found on pages 3-18 through 3-23. The several intervening pages of this text give a detailed analysis of this
solution by showing each block of the flowchart, the coding associated with each block, and a description of the
rationale and implications of each step.

3-2

MARKETING SALES REPORT PROBLEM STATEMENT

The programmer's objective is to prepare a report to management reflecting the total annual sales for each salesman,
and also, a total of all sales for the year.
There is one input file and one output file as shown below.

PROGRAM

PROCESSING

PRINTED
REPORT

INPUT DATA
CARDS

Figure 3-1

Input Data

System Flowchart

Sales cards for each salesman. Sales cards contain: Employee number, name and sales
information.
Data cards are in employee number sequence.

Processing

Print headings at top of page (EMPLOYEE NUMBER, SALESMAN and SALE).
Number all pages and print a final heading.
Accumulate total annual sales for each salesman.
Final total of all sales for the year.

Output

A printed report showing total annual sales for each salesman and a final total of all sales
for the year. Maximum number of pages is nine.

NOTE:

To simplify this exercise, title of report, date, and other items normally found in the heading have been
omitted.

3-3

INPUT FILE

The input file is constructed of SO-character (80-byte) records in the format described below.

Item

Bytes

Columns

6
15
6

Employee Number
Salesman Name
Sales per Month

NUMBER
NAME
SALES

BLANK

oooooooooooooooaooooooocoooooooooooooooooooooooooooooc

JOOOOOOOOOOOOO

123456789ro"~nw~wum~~~nn~~~v~~m~nnM~$n~n~~aa~a«uu~w~~~~

-7 ss 69 10

111111111111111111111111111111111111111111111111111111

!1111111111111

22222222222222222222222222222222222222222222222222222~

·2222222222222

333333333333333333333333333333333333333333333333333333

33333333333333

44444444444444444444444444444444444444444444444444444,

\4444444444444

55555555555555555555555555555555555555555555555555555[

j5555555555555

6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 s 6 6 6 6 6 6 6 6 6 6 6 6 _6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6

16666666666666

77777777777777777777777777777777777777777777777J77777

7777777777777

88888888888888888888888888888888388888888888888888888

8888888888888

9999999999999999999999999999999999999999999i999999999
121456

78910"UnWGIBDIB~m~nn~~~v

S~H~UDM~H~~H~~a~~~~~u~~~~~-

0-5081

Figure 3-2

3-4

Input Card Format

n 12 13 74 75 76 n 78 i9 83

9999999999999

GB 69 70 7l 72 73 74 75 76 77 78 79

8~

OUTPUT REPORT

The output is a printed report in the following format:
Column headings are printed at the top of each page.
Page numbers are printed at the top of each page.
Lines of print are double spaced.
Total sales is printed at end of report.
The Printer Format Chart on the next page illustrates a typical report to be printed in the format specified above.

3-5

CHART

PRINTER FORMAT

(A)

I

O>
FORM NUMBER

APPLICATION

FORM PARTS

RUN NAME

RUN NUMBER

PREPARED BY

TYPE OF PRINTOUT

RECORD NAME

RECORD NUMBER

APPROVED BY

DATE

DATE APPROVED

~+k·~.+-· i
-t-++i-- · · 11++· ·1+
++++++++++++++++H+++-+-++++-++-H+-H+-H-Hl-++-i~-rl+-++-1-+-H--+ ~

1

-1

..i

'I
+-+- -t- ·t- · - ++- -

I

H-

·

tI

Il

±

l

1

1

-

- -1H-,1

+-

-1-H

.-

l

·

I

. ·+J

-

-

-r-H-f

_L:+- -+-tt:1

+1 -

-H-H+-··

-

IL

1-·
- 1r-

. ~ i-;;t-. t++-

_LLt
lJ..
r-·-H-r -H
T
1

-1rH-

J

1-

. 1-

1
1
1
++t· lIT1'·~T-h1
1· r' m·-1 · Hlithr
o++t-1
tl +h
I· Hi-1 1 -1111
1 -f . ,
r1 [· t 1n 1 1
-u1+1rt~1]_ 'R+i
J I n+-i ~rti+~ 1_ j i-;1-t: T11~n 1f
--~~ffi
+ -i--1- nJ- It' 1+1+
.-1
I 1
'.l ·1·11
1

- ·

t-

f

·1 -

H- .

rH·H,·H-i

1

J
,

1.:

I

1

1:

·1

I

1

I·

'1

1

J1

lJ f H

·

I

r-Ht1

i•J

--1 ·1

1

1 11111,

ltr :r Ti ;-i-fftrJ _n t- _
± Ht ±THH!tfI .;.
1

START

100
LABEL

11 OPERATION 11
10
16

OPERAND

See note below.
The START Assembler~directing instruction defines the starting location
in memory of the first statement in the program. When the program is
linked to other subroutines the ST ART address may be changed.

DEFINE INPUT/OUTPUT DEVICES TO BE USED BY PROGRAM

LABEL

11 OPERATION 11
10
16

OPERAND

72

r---1---,
I
I

I

I
DTF's

L __ l

I
I

__J

DTF's are not handled by the user program. Handling of DTF's will be
explained at the end of this talk-thru. The DTF's are positioned here for
reference only.

ALLOCATE MEMORY

LABEL

11 OPERATION 11
10
16

OPERAND

105
110

USING

Each USING statement allocates 4096 bytes of memory. (It is assumed
that the memory storage requirement for this program will not exceed
8000 bytes.)
NOTE:

The numbers listed near the right margin are referenced to the coding line numbers used
by the programmer on the coding sheets, pages 3-19 to 3-22.

3-7

SUPPLY PROGRAM WITH LABELS FOR DTF'S

1
EXTRNS

115
120

T

READ and PANT will be defined in another program.

SUPPLY SYSTEM WITH LABELS OF SUBPROGRAMS

LABEL

11 OPERA TIOH 11
10

OPERAND
16

ENTRYS

125
130
135

RBUF, EOJ, and FOF are the labels of subprograms within the user
program.

ACTIVATE CARD READER, PRINTER

LABEL

OPERAND

11 OPERA TIOH 11
10

16

OPEN READ
OPEN PRINT

140
145

OPEN READ makes the file named READ available for sending input.
OPEN PRNT makes the file named PRNT ready to receive output.

CLEAR PRINTER LINE COUNTER TO ZERO

LABEL

OPERAND

11 OPERA TIOH 11
10

16

150
CLEAR
COUNTER

Moves zeros from storage area TZER+4 to the two-byte area defined as
CNTR.

3-8

CLEAR PRINTER WORK AREA WITH SPACES
LABEL

11 OPERA TIOH 11
10

OPERAND
16

CLEAR
PRINTER
AREA

155
160

MVI moves a space (blank) into the first byte of the PRWK area.
MVC moves a space from the first byte of PRWK into the next 131
positions.

POSITION PAPER ON PRINTER
LABEL

OPERAND

11 OPERA TIOH 11
10

16

Positions printer paper to the top of

ADVANCE TO
HOME PAPER
POSITION

165

page~

SETUP PAGE NUMBER
LABEL

OPERAND

11 OPERA TIOH 11
10

170

16

ADD 1 TO
PAGE

Adds one packed byte from the contents of an area defined as ONE to
a one-byte area defined as PAGE and stores the result in the area defined
as PAGE.

INSERT SPACES BEFORE FIRST SIGNIFICANT DIGIT
MOVE PAGE
TO PRINTER
WORK AREA

175
180

Moves the mask from MSK3 into an area defined as PSAL + 22(2).

Note:

(2)

2 bytes.

3-9

PREPARE PAGE NUMBER FOR PRINTING
LABEL

OPERAND

11 OPERA TIOH 11
10

16

Unpacks PAGE {page number) and places it in PSAL + 22 for a length
of 2 bytes.

PREPARE COLUMN HEADERS FOR PRINTING

MOVE HORS
TO PRINTER
WORK AREA

185
190
195

Moves first header {HDR1-Employee Number) to PEMP (15 positions)
Moves second header {HDR2-Salesman) to PSMN (8 positions)
Moves third header {HDR3-Sales) to PSAL (5 positions)
All headers defined above are subdivisions of PRWK.

ADVANCE SINGLE LINE BEFORE PRINTING

SPACE 1

200

PRINT

205

Advances single line before printing the header.

PRINT COLUMN HEADINGS
LABEL

OPERAND

11 OPERA TIOH 11
10

16

All data that has been placed in the PRWK reserved area HDR1, HDR2,
HDR3, PAGE will be sent from PRWK to printer.

3-10

READ ANOTHER CARD

210
LABEL

11 OPERA TIOH 11
10
16

OPERAND

READ A
CARD

Reads a card into an area defined as CARD.

CLEAR PRINTER WORK AREA

CLEAR
PRINTER AREA

215
220

MVI places a space into first location of an area labelled PRWK.
MVC moves the space from PRWK + 1 into the next 131 consecutive
locations.

SET UP PRINT AREA WITH DATA
MOVE
EMPLOYEE
NUMBER &
NAME TO
PRWK

225
230

Moves EMPN to PRWK area (Employee number)
Moves SMAN to PRWK area (Salesman's Name)

STORE EMPLOYEE NUMBER FOR LATER COMPARISON

LABEL

11 OPERA TIOH 11
10
16

OPERAND

MOVE
EMPLOYEE
NUMBER
TO SAVE

235

Moves EMPN (employee number) to a storage area called SAVE.

3-11

PACK SALE FOR SUBSEQUENT ADDITION
LABEL

OPERAND

ti OPERATION 11

10

16

PACK SALE
TO A WORK
AREA

240

ADD SALE
(PACKED)
TO TOTAL
SALE

245

Packs the six bytes of information located at SALE into the four bytes
reserved for an area labelled PAKS.

ACCUMULATE TOTALS FOR EACH SALESMAN
LABEL

11 OPERA TIOH 11
10
16

OPERAND

Adds the packed information found in PAKS (four bytes) to the six bytes
· located at TSAL.

READ ANOTHER CARD

250
LABEL

11 OPERA TIOM 11
10
16

OPERAND

READ A
CARD

Reads a card and places data into. area defined as CARD.

COMPARE EMPLOYEE NUMBERS
LABEL

11 OPERA TIOH 11
10
16

OPERAND

255

Compares information stored in EMPN with the information stored in
SAVE.

BRANCH BACK TO MIN IF SAME EMPLOYEE; ADVANCE TO PRINT
TOTAL OTHERWISE
LABEL

11 OPERA TIOH 11
10
16

OPERAND

Branches if equal to the subroutine labelled MIN. If not equal, processes
next instruction.

3-12

260

ACCUMULATE TOTAL SALES
LABEL

11 OPERATION 11
10
16

OPERAND

ADD TOTAL
SALES TO
FINAL TOTAL

265

Adds (packed) information stored in TSAL to information stored in FTOT
and places result back in FTOT.

STRUCTURE PRINTER
TOTAL SALES)

WORK AREA FOR TSAL (SALESMAN'S

l
MOVE MASK,
THEN TOTAL
SALES TO
PRINTER
WORK AREA

Moves the mask located at MSK1 to PRWK.

270
275

I

PREPARE TOTAL SALES FOR ONE EMPLOYEE FOR PRINTING

Unpacks information found in location labelled TSAL and places it in
PRWK + 80 (16 bytes)..

PRINT
LABEL

11 OPERA TIOH 11
10
16

280

OPERAND

PRINT

All data placed in printer work area (PRWK) will be sent to PANT and
printed.

ADD A ONE TO LINE COUNTER
285

ADD 1 TO
COUNTER

Adds (packed) information found in location labelled ONE to information
found at location labelled CNTR.

3-13

COMPARE FOR 25 LINES (END OF PAGE)
LABEL

OPERAND

11 OPERATION 11

10

.

16

Compares (packed) data located in area labelled FIVE with the data labelled
CNTR.

BRANCH TO FILE OVERFLOW ROUTINE IF EQUAL (SKIP TO NEXT
PAGE); IF NOT EQUAL, FALL THAU

LABEL

1s OPERATION 1s
10
16

OPERAND

If equal (25 lines have been printed), branches to a subroutine labelled
FOF.

CLEAR OUT OLD DATA, PREPARE NEW DATA FOR PRINTING

CLEAR TOTAL
SALES TO
ZEROS

300
305

Moves characters found in a location labelled TZER to a location labelled
TSAL (six positions) then branches unconditionally to subroutine labelled
MAN.

Generally, at this point a routine testing for a
us and the step was therefore omitted.

/* card would be written. However, the System's IOCS does this for

ADD LAST SALESMAN'S TOTAL TO FINAL TOTAL

Adds (packed) Total Sales to Final Total and places the result back in
FTOT.

3-14

310
ADD TOTAL
SALE TO
FINAL SALE

SET FORMAT OF PRINTER WORK AREA
MOVE MASK,
THEN TOTAL
SALE TO
PRINTER
WORK AREA

315
320

Move MSK1 to printer work area (PRWK + 80, 16 positions).

PLACE TOTAL SALE FOR LAST SALESMAN IN PRWK AREA
LABEL

11 OPERATION 11
10
16

OPERAND

Unpacks TSAL and places its contents in PRWK + 80.

PRINT TOTAL SALES LINE
325
LABEL

11 OPERATION 11
16
10

OPERAND

PRINT

All data placed in PRWK is sent to PRNT and printed.

CLEAR PRINTER WORK AREA WITH SPACES

I
CLEAR
PRINTER
WORK AREA
TO ZEROS

330
335

T
Moves a space to the first position of Printer Work Area (PRWK).
Moves a space from first position of Printer Work area to the next 131
consecutive locations.

3-15

FORMAT PRINTER WORK AREA AND PLACE FINAL TOTAL IN
PRWK

1
MOVE IN
MASK, THEN
FINAL TOTAL
TO PRINTER
WORK AREA

340
345

T
Moves information from MSK2 to PRWK + 75. Unpacks FTOT and places
information in PRWK + 75 (21 positions). Moves in final total to occupy
positions specified by the mask.
MOVE HEADER FOR FINAL TOTAL INTO PRINTER WORK AREA

LABEL

•

OPERA TIOH •

10

.

OPERAND

16

Moves HDR4 (final total) into PRWK + 56.

l
MOVE IN
"FINAL TOTAL"
(HEADER)
TO PRINTER
WORK AREA

350

I

ADVANCE SINGLE LINE
LABEL

•

OPERA TIOH •

10

OPERAND

16

SPACE 1

355

PRINT

360

Causes the printer to advance one line before printing next line.

PRINT

LABEL

•

OPERAND

OPERA TIOH •

10

16

All data placed in PRWK sent to the printer.

3-16

CLEAR PRINTER WORK AREA WITH SPACES

1
LABEL

OPERAND

11 OPERA TIOH 11

10

16

CLEAR
PRINTER
WORK AREA

365

370

I

Moves a blank into first position of the printer work area.
Moves blanks into the next 131 positions.

MOVE HEADER TO PRINTER WORK AREA

I
MOVE .IN "END
OF FISCAL
VEAR"
(HEADER)

Moves HDR5 (End of report for fiscal year} into PRWK + 51 (29 positions}.

375

I

PRINT
LABEL

11 OPERA TIOH 11

10

OPERAND

PRINT

16

380

All data placed in PRWK sent to PRNT and printed.

DEALLOCATE READER AND PRINTER

LABEL

OPERAND

11 OPERA TIOH 11

10

16

CLOSE READ
. CLOSE PRINT

Informs the system that it no longer needs reader and printer, closes READ
and PANT file and displays 1 FFF on the console to let operator know
that program has terminated normally.

END

385
390

565

Review the coding forms and flowchart found on the next few pages then complete the Diagnostic Exercise found
on the page following the flowchart.
3-17

UN I VAC.

@l•l•l•J

ASSEMBLER CODINGS FORM

SERIES

MA_C_R_o_c_AL
__
L_c_A_RD
__
s _ _ _ _ _ _ _ __

PROGRAM1 _ _

11 OPERATION 'II

LABEL

I

...1...1...1-11.J-1
I

I ...LJ l..l .l

..l..l..l..l..1..l..l
l

l

I _J l_ __l __l

rt:'.Jm.T

IDT,F1CR

J

..l ...1

l..!.l ..l
l

.l..l. J.

1..L.J. ..L

mFP..J3

t

OPERAND

'II

16

10

~J..J.J

PROGRAMMER _ _ _ _ _ _ _ _ _ DATE _ _ _ _ _ _ PAGE_ OF _ _ PAGES

IEOF. n.~Rn.T. •I 1

_L

_1-1

..1.l

l

I .,

I01Ali=iRSUF ,,

..1...1 ...1 ...1

COMMENTS

1...1...1...1...1l...1...1...1...1l...1~...1...13...1...1...1...1l...1...1...1...1J

I I

l

..L ..L

I

I

I

j

..Ll..L..L..L..Ll.J...L.l..l.lt1..L_1_l1..L..L

ax~~=il_~2_w__l_..L..L..L.l.1..L.l...L..Ll.J..l...L.l.lLL_lL1..L_L
I

I I I

~~0=2..Ll..L..L..LJ..L..L..L..Ll..!..!...1....1.l..!...1....1..J.l_l_L_l_ll_l__J__l__L_l_J__1_J_

...1....1._l_l_l...1..l.

l
l

...1.

..1.

_L

_l_

_L _l _t_ ..1 J -1 _l
_L...1..L-11-1.l
...J....L...J...l.1..l....L

I

_J_

__l

l...L.J. ...L

J_

_l_l...11
I

~D..l

...J...!

l

l

__l

l

_l_

_J_

IF.Ol!._T19613..L .l
I

I

I

JI I

I I I

I

_L..1._t_-11111-1111

_l_l_l_1_1__ll..L-1...1..!l

I

I
_l_

I

I

..il..i

_l_ ...1 _j_ ..1...L...1...1._J_1..1.

l

...1

l

I I I IJ
I

I

__l__l...1..ll...1..1

J

..l ..l ..l

ll..L.JJ_J__l__l__ll..1...1-1....11...1..l..l__ll...1..1..l..lj

__l__l_l__ll..1..1

l

..l ..l ..1

I I I

I

I

IJ.J_ll__l...1_1...11...1...1..l__lj...l..l..l...11IIIII1--1

I I

I

I

IJ_L...1l...1...1..J...J.l...1...1...1__lJ...1..l..l...1j

__l 1...1 ...1

J ..l __l ..l

__l__l__l..1....1..L..l

l.l...L ..L

...1 __l

_l_

_j_

__l __l _L

J

1..1.

..l

..l..l l..l J.

l..!
l

..L

..i _L

I

I I

I J J J J I L

_l

_J _l

J_ ..l

-11...!__l__l__ll.J...1
I I

I

I I I

11 l_l_l..Ll..L...1..L_L_l___l..L..L..Ll-1..L...1...1.11

I

I

I I

J. ..L

I

I

I l

I

I

I I I l.J..l.I

I

1I1...1

JI

I

1--1

I 11
I

I

I

l

I I I

_I

I

l

l.i.

JI

l

.l J.

1 ...l

I

t

I

J

I

_L

__t_l__l__l_l_t_J_l....1....1_1_1

I

I I

I

I

I

I

I

l

I

·1..1..l. _L

I LL_l...11..L_l_i_t__l_L_t__l_..LJ

l _l _l _l_ __t l_ _1_

_l_l_l___t_t_

l_j

_j

_l_l

ti

~

I

I

j

Ix

_1_1_1_1__1_1_J

_1__1

J_t

l...1..!..l..ll--1--1..l._l_j

I

L_j

I I

ii
I

.J. ...1.·J. ...1. ..L ..L

.i. l

_j

_l

_j

..L...1.....1.l..L..L..L..LlJ

I

I

.l.

__l

_l

l

_L

I

j

I

I

I I I I

I I I I

I

I

l..!..1 ..l

__l__l__l

J...l__l

j_l_..1 ..l

I I ..l _J_ _l l _l

..1...l..l ..l

1

_l_l_l__lj_...1...1

l..!...l ..l

~__l__l_ll...L...L_L__ll_J__l_J__J_l...L...L...L...Ll-1...t..l..ll1...L...L...Ll...1...L...L..ll...L...t...l...tl...t..J...l..ll..l..l

JI

I

1-1.tl..L_l__l__ll..L...1...1..ll_J__J_.J._Llt

I I

I

l_j

,

I

I 1L_l__l_l1__l..1._l...lj..J...l...1...1J__l_l..l..l.j

I

I

I I I

I I

I

1 1-1

L _I I I

LIL

J_i_l_l_..!l..1-1..1..!l I I

I

I

l

I

_l

_l

L _L

I

I

I

l

_J_

I

1

1J1...1

..!l__l_l_l__j_l_J___l_L_J_l I

I

!

I I I

_l __l
I

l

l

..l ..l

..1.

_l

...1

_l

j

I

I

I

_I

I

I

I I _I

I

I

J
I

...11...L...1..J....LI

[

l

_l

l
_J_

_l_

1 _L

..l. _l _l _l

..L...Ll _l _l__l
_l ..!

I I I

I I ! I I I I I I '· I _J__l_J ......L.L.L.1_L...L..i
I I I I I I I I I I! I l~LJ I I I 11
1

_l_J_ _l

-1....Ll_l_l_l_L

I

_i_l_

...l

...l ...1. ..1 ..L .l ...l ..L

j

__l__l__t_J_J_l_..1..!..1l..1...1_l___ll.J..!..l..l..1.l..l..l...1J__l__t__l__ll..1..t..1...1l..!...1..l..!l..1..1_l_..lJ.l..1...1..ll_l__1_1_1i
Ill

...l _l

I

I

_J__l__J_

_l _l l..L.J._l__j_

_l ..L

-11..L..J...L_Ll_l__l__l_J_l.J.-1..l.....l.i

__l..l._l_..11..1....l

I I

l

I

..L ...l J_ ..L

..l_!_..!_Ll_l_..!..1..ll__L..l..J...lJ..L..l..!..1.l..1...!..l..lJ-1LJ..-11-1..LJ.._!_l..1....1..1...l.l~..!J...lJ..1..l..l..lJ..1..1-1..1l
I

I

I

I

_I

..L ..L l.i..l...L..L

1l_1_L__l_l_l

I

l

...L_Ll ..L ..L..L..L

I
l

l

LL_L_t__l__t__t__l_J_l_l_l..l....1.11

I I I I

..1 _J_ __l _L

UDl-15 .. B

I I

l..1.J..!.!l-1ii.__l_JK

I

_l___l _l___t _J_

_l

~

1LJ...1...1_1J__t_l_l_ll...1...1..!...1l I I I I

I I

_L _L __l __l _l___t ...1

I

I

I

...1...11 ..l -1...l -1.
__t__t_l__t

...L I

l_L_L...J.J_...l__l..1...11..l..l..1..11 I I I I I

I I J_l_L..LJ_..L..L..L..LJ_

I

I

I I I

l....L

Ll_L-1...1-1...11...l__l...1..ll__l_j__l_lj

~JL_ll_l_J__L_l_J__l..l...L..!l_L_J___l_Ll..1..l...l..!111-LLl_l_L_L

I

_t _J_

..L

be

I

I

I

l_1_...1. ..L

l . . ! i .J.

I..! l

I

_J__j_l

l..!.J. ...l

_l

I

I

I

..L_l_L_t_l__1__i

_l___l..!..! l..1..!

l

I

_J_.J.l..1.11_1J_l..1...!..1l.J...1..J..ll_l_l__l__ll

_J_ __l_J___l l..1..1

I

..Ll

1_1_...1...1...Ll..L-1..L-11

__l_l_..L..L..l_l___l..L..Ll..L.J...L.J...1.J....1....1...Ll..l...L...1....1...l_L_l__l_L..1_1_..L_l_..L..1..L..L_L..Ll

I

_l

_l

.J.1..J...1..1..l.l...1..1..l..ll..t...1...J....11-1.J...1...Ll-1...l...1.Jl...1-1..l..!l..!..1...!.llt 1 1 t l

J I

...1

l

_l

I l-1LL1__l_l__l_j_1_l_L_l...Ll...1

I

_l_J_

_l_!__t __l

_J_

..1

__l __l __l J_

..lJJ._l_l...ll.!..1...1..ll_-1..l-1J.l...1...1...1_Ll..L..1...l_lj...1....l....l....1.l.J...1...1....l.llLLLl

J__ t--11..L_l

l-1...1...l-1...L...L...L...11-1...L...L...11...1...1...1...Ll.1..!..1..11 I I

..1

..l...J...l ..l.

l_1__t__1_1__l

_l

..1.l

IY

I~

I

lJ...L_Lil...l..L.J....ll_l...L..L..Ll_L..L...L...LJJ...L..L..Ll..L..L..LJ.~I

J...l .l

IJ='~__..1-"_if_L _L _L ..L

_L

..L..L_Ll

J

h..---· - .........

l

l..L...1..L
..L _1

1...1..! l..!..!

_I _L _! ..l _L L

l

_t__l_ ..l ..l ..l ..l

l

j

IOT1T1L.=iYA_SJ..,_L

I

1

I

l_ J.. _J_ J..

..L..L..L-11..L-1

--1

I I I I

I I I Llllll...1-1...1l..1...1..1...1l..1..1...1...1l...1...1...1...1l

..............
T~S
M lflti:::i·
~ J. _l_ __l _i__l_ _l_ J. J.. ..L ..1 __l ..L J.. J.. ..1 I I I I
_J_ __l ..L _J_ 1..L __l ...L ..L

_l

i...1..l...l..J.J._l_l_l_ll_l..L...1--11_1_1_1..l.1

LT~TBROt:~:; r~~\ti5 Vr::/~~~u
N IVAC
.
lf

w

~-:mo.:-

""

PROGRAM

I

0

ASSEMBLER CODING FDRM

":l-'.e.:- "'

LABEL

10

UDI -1548

2sE~IES

USER PROGRAM
11 OPERA TIOM 11

PROGRAMMER _ _ _ _ _ _ _ DATE _ _ _ _ _ PAGE_ OF_PAGES

OPERAND

16

.@l•l•l•J

COMM EM TS

72

80

UNIVAC
ASSEMBLER CODING FORM

@l•l•l•J
SERIES

PROGRAM
LABEL

w
I

l\J
_.

UDl ·1548

USER PROGRAM
'b OPERATION 'b
10
16

PROGRAMMER _ _ _ _ _ _ _ DATE _ _ _ _ _ PAGE__L OF__!PAGES
OPERAND

COMMENTS

72

80

UNIVAC

u' NI'V,....,
//\,c
;;~:,;}1'• ~·::.~'!'~'"(,I' '"'1t":;
.c:,e:cT:"",''~"'1'"'"7'~''.'.l\ f .)l

ASSEMBLER CODING FORM

@l•l•l•J
SERIES

PROGRAM

LABEL

UDl-1548

USER PROGRAM
!5 OPERATION 11
10
16

PROGRAMMER _ _ _ _ _ _ _ _ DATE _ _ _ _ _ _ PAGE-4- OF-4-PAGES

OPERAND

11

COMMENTS

72

80

llOVE HORS
TO PRINTER
WORK AREA

SPACE 1

PRINT

185
190
195

200

PRINT

ADD TOTAL
SALES TO
FINAL TOTAL

CLEAR
PRINTER
WORK AREA

265

360

365
370

205

2

3

Figure 3-3

Marketing Sales Report Flowchart

3-23/24

DIAGNOSTIC EXERCISE

WORKSESSION - MARKETING SALES REPORT PROBLEM

Circle answers below, then check with the correct answer on the next page.
The following questions refer to the flowchart and the following constant values are assumed:
PAGE =

/d

COUNTER

1.

When is the counter incremented?

a.
b.
c.
d.
2.

= f1

After each line of data is printed
After each page of data is printed
Before the first line of data is printed
Before each heading line is printed

5.

a.
b.
c.
6.

When is the printer work area cleared? (Select two
correct responses.)
a.
b.
c.
d.

Before
Before
Before
Before

each line of data is moved into PRWK
each line of data is printed
each heading line is printed
each heading line is moved into PRWK

When does page change occur?
a.
b.
c.
d.

4.

After
After
After
After

5 lines of printing
25 lines of printing
65 lines of printing
26 lines of printing

After /* is READ
After the last card is READ
After a blank card is READ

What is the value of counter after 30 lines of data
has been printed?

a.

2

b.

5

c.
d.

29

e.
7.

3.

When is the EOJ routine executed?

0
31

Which block in the flowchart represents the
function that starts the header subroutine?
a.
b.
c.
d.

Block
Block
Block
Block

150
165
185
215

When is the FOF routine bypassed?
a.
b.

FIVE(25)
When CNTR
When CNTR :/= FIVE(25)

3-25

DIAGNOSTIC EXERCISE ANSWERS

1.

2.
3.
4.

5.
6.

7.

a
a,d
b
b
a
b
a

3-26

OPERATING PROCEDURES
INTRODUCTION

Now that you have completed the talk-thru and the diagnostic exercise for the Marketing Sales Report Program, the
operating procedures presented in this book will simulate the processing of that Marketing Sales Report program. The
Univac-supplied programs used by the programmer at assembly time will be described. How to build an input "job
stream" will be illustrated and the operating procedure required to obtain the desired output from the computer will
be simulated. To present the material in its simplest form, this section will include only the basic operating procedures.
The back of this section contains a printout listing the complete coding for the Marketing Sales Report Program,
Linker Map and the output from a sample production run.
When the program coding is completed, the information on the coding forms is punched on cards thereby producing
two decks of cards: the DTF statement cards and the main source program cards. The DTF cards are processed by
a Preassembly Macro Pass program provided by Univac. The output of the Preassembly Macro Pass program is combined
with the user Source Code program and processed by the Assembler Program. The output of the Assembler program
is processed by the Linker Program.

Preassembly Macro Pass Program
The Preassembly Macro Pass Program generates the source code for the DTF statements which define the input/output
devices the user accesses at program run time. The output of the Preassembly Macro Pass, is combined with the user's
source code program and assembled.
Assembler Program
The Two-Pass Assembler converts source code programs (user programs) to machine code (object programs). The assembler
produces an object card deck and a printout that lists the source code and the object code generated by the source
deck, The output of the assembler is the input to the Linker Program.
Linker Program
The purpose of the Linker Program is to combine the object programs (card reader, printer, user program) into a
single object program. The output is an executable object program.

3-27

PREASSEMBLY MACRO PASS GENERATOR PROGRAM DATA PREPARATION
The Preassembly Macro Pass program generates the IOCS source code for the peripheral devices accessed by the user
program. The input flow is set up as follows:

COL
SYSTEM WILL HALT AND
DISPLAY 1 FFF.

DTF'S

USING STATEMENTS PROGRAM
OCCUPIES 4K.
COL I
SENTINEL CARD (* /)
SYSTEM HALTS, DISPLAYS 01 FFF; DEP.RESS
START
UNIVAC SUPPLIED PERIPHERAL SUPPORT
LIBRARIES

COL 10
USED WITH SK OR 12K MEMORY SYSTEM*

UNIVAC SUPPLIED SOFTWARE PROGRAM

Figure 3-4

*

Preassembly Input Stream

Contains the decimal number equal to the highest available memory .address beginning in column 16 (S191 for
SK - 12,2S7 for 12 K system). If "CTL" is omitted 16,3S3 (16K) will be assumed.

3-2S

PREASSEMBLY MACRO PASS GENERATOR PROGRAM OPERATING PROCEDURES
Unfold the control panel illustration on page 3-39. The buttons on the control panel used in operating the Preassembly
Macro Pass Generator Program are numbered on the control panel illustration. As the. operating procedure is outlined,
simulate the operation by locating the appropriate buttons on the control panel illustration.
1. Load cards (see figure 3-4)

in card reader, row 9 edge leading, face down.

2. On the control panel, depress PROC CLEAR button (8).
3. Depress CHANNEL CLEAR button (7).
4. Depress CLEAR PRINTER button (1 ).
5. Depress CLEAR READER button (2).
6. Depress FEED READER button (3).
7. Depress LOAD button ON (4).
8. Depress RUN/START button (6).
9. Depress LOAD button OFF (4).
10. Depress RUN/START button (8).
11. After LIBRARY is read, machine will HALT and display X' 01 FF' on NEXT INSTRUCTION/HALT INDICATOR
LAMPS (a lighted lamp indicates a binary 1.)
12. Depress RUN/START button (7) on control panel.
13. Final HALT display is X'1 FFF'.
The Punch output stacker should now contain DTF source code cards ready for assembly.

3...;.29

TWO-PASS CARD ASSEMBLY DATA PREPARATION
Remove the END card from the DTF source code decks. Place user program START card in front of the deck. Place
the user source code deck behind the DTF source code deck, make sure the last card is an END card.
The "control stream" is constructed as follows:

SOURCE DECK (USER PROGRAM) MAKES
1WO PASSES THROUGH COMPUTER.

ASSEMBLY PASS 1 AND PASS 2 ARE STANDARD SOFTWARE
DECKS.

Figure 3-5

Two-Pass Card Assembly Control Stream

In the above example, the DTF source code and user program are assembled together. The user may choose to assemble
the DTF source code and the user program separately.

3-30

CARD ASSEMBLER OPERATING PROCEDURE
Unfold the control panal illustration on page 3-39. The buttons on on the control panel used in operating the assembly
are numbered on the illustration. As the operating procedure is outlined, simulate the operation by locating the appropriate
buttons on the control panel illustration.
1. Load cards (see figure

3-5)

in the card reader row 9 edge leading, face down.

2. On the control panel, depress PROC CLEAR button (8).
3. Depress CHANNEL CLEAR button (7).
4. Depress CLEAR PRINTER button (1).
5. Depress CLEAR READER button (2).
6. Depress FEED CARD button (3).
7. Depress LOAD button ON (4).
8. Depress RUN/START button (6).
9. Depress LOAD button OFF (4).
10. Depress RUN/START button (6).
11. After the first few cards of Assembler Pass 2 have been read stop the processor by depressing INST button (5)
on control panel.
12. Take USING, SOURCE and END CARDS from reader output stacker and place them on top of remaining cards
in reader input hopper; follow by 2 blank cards.
13. Depress INST button (5) on control panel.
14. Depress START.
15. Assembler Listing will be printed.
16. Punch output stacker will contain Object code cards for the Linker pass.

3-31

TWO-PASS LINKER PROGRAM DATA PREPARATION

The Linker combines the output of the DTF and user program assembly. The input "control stream" for the Linker
is as follows:

TBRD (STANDARD HOLLERITHTO-EBDIC TABLES)

STANDARD SOFTWARE DECK

RELOCATABLE OBJECT CODING

RELOCATABLE OBJECT CODE, PREASSEMBLY
MACRO PASS

SEE DESCRIPTION THAT FOLLOWS

CARDS
PHASE
CARD

SEE DESCRIPTION THAT FOLLOWS
SEE DESCRIPTION THAT FOLLOWS

STANDARD SOFTWARE DECK

Figure 3-6

3-32

Two-Pass Linker Control Stream

CONTROL CARD

Format:
n
n
p
q

10

16

CTL

n, p, q

(one-pass)
2 (two-pass). If n is blank, 1
decimal number of the largest
bytes will be assumed.
decimal number of the highest
16,383 bytes will be assumed.
Example:

pass will be assumed.
address available on computer doing the linking. If p remains blank, 16,383
memory address available for use in program execution. If q remains blank,
Commas must be punched as specified.

10

16

CTL

2,8191,8191

The following illustrates a control card prepared for a two-pass run on a 16K memory system.

I
1119DIDODllOOltDIDOODOIDOD000000080000000DOOOODroooooooooooooa110011111111111111
121c11111MnuoMa•u••nnnnNaannn•~nn~n•»•~"quu~uququM~N"~~~"MH•uaaMDAPA••nnnM•~n•••

11111111111111111111111111111111111111111111111111111111111111111111111111111111

22222222222222212222222222222222222222222222222222222222222222222222222222222222
333333333lll3333l33l3ll33l3l3333333333333333333333333333333333333333333333333333

44444444444444444444444444444444444444444444444444444444444444444444444444444444
. 5555555555555555$555555555555555555555555555555555555555555551555555555555555555
666616f666666&6&66l666&6l6&66666&•&&66666666666666666666&&6&&6161&66111111111111
1111111111J711111111111111111117111111177111111111111111111111111171111111111111
1111181818881818l81Bl8l818IBB8188888888888BBB88888818818111118111111111111111111
99999999999999999999999999999999999999999999999999999999999999999999999111119111

12~451JttMnUUM~~u•gn~nn~~~D3n~~n~~~~D·"~qUQ~Uququ~~~"~~~~~~-~QUM8MAAAMnnnMn~n•ft•

DD--1

Figure 3-7

Control Card Format

3-33

Phase Card
The phase card indicates the name of the object program, so that it will be punched into each card of the final object
program deck. Phase name must be the same as operand in the START card of the user program.
Format:
The following illustrates a phase card prepared for a program named PGM.

PHASE

II I

I

P~Mt40•6•A

I
·1 I

I

oooaoooooooo10000010100100000000000000000000000000000000000000000000000101110011

1214SIJll~n&aw~•»g~M~n"N~nvnH~~""~~-D~~~~UU~UUUQq~M~"~~s~"g•RUaM•"PNH»nnn•~Nn•••

1111111111111111111111111111111111111111111111111111111111111111111111111111111'
22222222222212222222222222222222222222222222222222222222222222222222222222222222
333333333333333333l3333l333333333333333333333333333333333333333333333333333333SJ
44l4444A444444444l4l444444444t444444444444444444444444444444444.4444444444444(4t
55555555555551555555555555555555555555555555555555555555555555555555555555555555
&6666666666666666666&6l666666666666666666666666666666666&6666&&61l666l116&111111

11111111111111111111111111111111111111111111111111111111111111111111111111111111
1•11a11aaa11a1aaaa1aaa11aaaaaaeaa1ae1s1aaa11aa1111aaa1aa111J1111111a111111111111
99999.9999999999999999l999999999999999999999999999999999!9999999999999919tl99911t

121•s11at~nu~wa•»u~M~ttnN~~vnn•nnn~~»n»»q~un~u•uqq~M~"~~s·1~~-~QQM~•n••»Rnn•••n•••

DO--•

Figure 3-8

3-34

Phase Card Format

Standard Loader Equate Card Statements

L?CH

·EQU

L?AM

X'40'

Fill character to be inserted in the
area cleared by the card loader.

EOU

4

Permits alteration of memory specified
by the memory address switches.

L?AR

EOU

128

Start of the read area for the card
loader.

L?PG

EQU

208

Start of the object code for the card
loader.

L?LO

EOU

128

First memory location to be cleared by
the card loader.

L?HI

EOU

16383

Last memory location to be cleared by
the card loader.

l ?H l

ECilll

II

I

v; ...

I

~?LO

li.383
1Z8

fQli

fQIJ

208

EGU

12e

f (llJ

Q.

I

v;?i•

I

~?iM

I

V'i•

x ... g.

E C,,1 ·

I

I
I
olonnoooooolooalootoooonooooooooooooooooooooooooooooooooonnooocooooor.coooooooooa
I i 3

c

5 6 ! I 9 10 i1 11 13 1' 1:; 1& 11 11 19 20 ZI 2213 24 25 26 '[7 ,; ~9

Ju

j•

3/ 33 )4

)~

3& J1 J8

~9

40 (I 4! 4H4 45 46

~1 ·~

.:9

~e

51

~1 ~·~ ~ 1 ~~ ~.; ~: ~J:;

5HO r.1 t;Z

e-, :;.i E~ t-i .:

l

69 63

]I)

1: :~ 1J !.i 1:i

:o

1i ~F , ..

ao

111111111111111111111111111i1111111111111111111111111111111111111111111111111111
22222222222222222222222222222222222222?22222222222222222222222222222222222222222

I

313 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 J 3 3 3 3 3 .13 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 j J J J 3 3 3 31333 3 3 3 3 3] 3 3 3 3 3 3 3 3 3 3 J

44~4~44444(144444144444444444444444444444444444444444444444414444444444444444444
55555555~l555555l55l55555555555555555555555555555555555555555555555~555555555555

666666666666666666666666666666566666666666666656666666556666&6666C6665£5G6G6S666
1t11 77 77 7 71 7 7 7 7 I 7 7 7 7 7 77 77 7 77 7 7 7 7 7 77 7 7 1 7 77 7 7 77 7 7 77 7 1 77 7 7 1 7 77 7 7 7 7 7 7 7 7 77 7 i 7 i 7 7 77 7 7 7

st sls 88 s s st s s s 88 I 8aI s s n as aa s aa aa aa e a& s s a a s s 811 s s a s s s s s es s es s s s s B s s s s s aa E aa s s s s s a
9 9 9 s ~ ~ 9 9 9 9 9 9 s 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 ~ 9 9 9 9 9 q ~ 9 9 9 9 9 9 9 9 99
•
1 "
;
! ? ,, 11
I) "'
1E 11 1a 19
11 :?
H 30
1: Ji :\ J;
41 j? 1: ,..; c; .;6 ,,
5C 5:
61 o.: i;H•
Tl
~

~

1

:1

I~

~

~]:.a '.'~ 2~ 11

"i
)~
00-5:)81

~-'

)6

Figure 3-9

la~'": .&Q

.aH~

',J ~· ~ :~ ~5

J ~'JI q ~~

&; ~-:~~ta~ J ;j /i i] 1i ,'a ;.. ·~ .,

iH~

Equate Cards

3-35

LINKER OPERATING PROCEDURES
Unfold control panel illustration on page 3-39. All the buttons on the control panel used in the Linker run are numbered
on the illustration. As the operating procedure is outlined, simulate the operation by locating the appropriate buttons
on the control panel.
1. Load cards (see figure

3-6 ) in the card reader, row 9 edge leading, face down.

2. On the control panel, depress PROC CLEAR button (8).
3. Depress CHANNEL CLEAR button (7).
4. Depress CLEAR PRINTER button (1 ).
5. Depress CLEAR READER button (2).
6. Depress FEED CARD button (3).
7. Depress LOAD button on (4).
8. Depress RUN/START button (6).
9. Depress LOAD button OFF (4).
10. Depress RUN/START button (6).
11. After first pass, remove Linker object deck from file and place remaining cards in input hopper a second time
(last pass).
12. Depress FEED READER button (3) on control panel.
13. Depress RUN/START (6) on control panel.
The Linker listing will be printed during the last pass.

3-36.

PRODUCTION RUN OPERATING PROCEDURES

Figure 3-10

Production Run Card Input

1. Place above cards in Reader, row 9 edge leading, face down.
2. On the control panel, depress PROC CLEAR button (8).
3. Depress CHANNEL CLEAR button (7).
4. Depress CLEAR PRINTER button (1).

5. Depress CLEAR READER button (2).
6. Depress FEED READER button (3).

7. Depress LOAD button (4) ON.
8. Depress RUN/START button (6).

9. Depress LOAD button (4) OFF.
10. Depress RUN/START button (6).

Final display is X'1 FFF'.
The output is printed data.

3-37/38

PUNCH

P 0 WE R

GD
..

0 N

OFF-LN CLEAR

OFF

DD
1/0 - A
l/O .. 8
1/0 - C
P - A

PRINTER )
READER
PUNCH
PROC

OP

ABN

DEV

M[M

CHAN

R AID

ADD

MEM

NEXT

STOP

INSTRUCTION/

HALT

D

ON

ONLINE

OFF

SPLAY

DISPLAY SELECT

REQ

00000

0
START

OFF

CONT

0000 0000 0000 0000 0000
OP

RUN

ONLINE

ONLINE

FEED

OFFLINE

INST CYCLE

LOAD

ON

ON

ON

OFF

OFF

OFF

PROC

c

D

DISPLAY

ALTER

D A T A

E N T R y

DJ::J I I I I DO:C_ITIJ:DIIJ:
I

TEST

VO

MEMORY

ADDRESS

11'f'Tl1i'f'TT'l1i'f'TT'l11'f'TT'l1
ol_J_J_Jo~o~o~o

0

WHITE INDICATOR

The circled numbers identify the buttons used by the operator.

Figure 3-11

Control Panel

3-39/40

·-------- ---·---·----·--- ----------------------·------------------------------------------------'200 CARO ASSEMBLY
PRINTED ISSEHBLY CODES:

c· COVER

E~ROR.

NO USING COVERING RELOC U ABLE

OPERAND ADDRESS

D DOUBLY DEflNEO LABEL OR REFERENCE TO DOUBLY DEFINED LABEL

E

EXPRESSION TOO LARGE OR IMPROPER SYNTAX

H HALF WORD BOUNDARY ERROR ON RX OR AI OPERAND

I

I~STRUCTION

ERROR

----------------·-L LOCATION COUNTER TOO LARGE

-- - ---------------------------------------------0 ORG ERROR• 2NO DEFINITION OF A LABEL

R

RELOCATABLE TERMS IN

THE

~XPRESSION

ARE

IHPROPER OR TOO HAhY

S SEQUENCE BREAK IN COLUM') 76 TO 80

T TRUNCATION

or

OVERSIZE

TERM

)>

U UNDEFINED LABEL REFERENCED IN THIS LINE
X CONTINUATION•INONBLANK COL

72 ON NONCOHMENT CARO)NOT PERHITTED

0 001

START 0

DOOZ

USING

D CO ..

------------

m

--------

I

-<
I

t

l

.. ·------·

~

--------------------

2

G')

DTFCR EOFA =EOJt

•

D COS

. ---0 ()[I'--------------------------

- --

l 0A1 :R BU F'

------------------------------•--------------- ·--- · ITBL:TBHDt

•
•

--· OC:07
0 COB -

MOOE :TRANS

·- _______ ,__ --------. --------------- -- --------- ... 00 i ____ _. _________ _

RDR IOCS C CARD)

---OD z____.___ ____ -----

----- oco'

--E-NTRY

RE AD

0 ClO

.. ---EXTRN

EOJ

0 011

--- --EXTR N -

RBUF

.... - --· ._,_ _____ . - ---- .. ------ ---------- -----------· ·- 00" -- --•- -- - .

-----EX TR N-- 18RO

· - - - - - - - 0 0 5 -'-----·-

- - OC12- --------- . 0013

0000 lf7FOOO

025 . •

70l21•A?ST

· -·· ---·-- ---St------2 tO C• 1 '>>--------------·- ·

---STH

..

022··.

-··- ·- -··----TM---------A?DS•5•8 - · ·----·- ·

A?OS HSG

-·.

---------------020·------- .

- BC·

CLC

•

018 - • -

S C - - - l •A ?WT·--·--·------·

··BC

.._ __ _

····-- ····---·--------··016 ...•...

A?WT- TIO·---··- A?OS•S• t

TH

•

-026----.. ·---·--·-·--------··-- ·----· 02 7 - •

24832

········-··-----·--···--· 028 . • -

-- l5tA?C0•2

-----02

CJ)
CJ)

m

:5:
OJ
r

-<

r

~

z

G)

0 037

006A 48F OOOA &

---LH

. 030

•

n0

OC38

OOGE lf7F00038

-·BC

--·-- ··--- ---·- .. -- 031

*

;:!

-0 Q]q ... ------·· 007 2 92SOC045 · -·- ---·-··---------·----·------A?XF-11V 1---t>CJ •80 - · - - - - - - - - - -

0 C40

007G 0201004600A4

0 041.

007C A4010012

·-KVC: ·-

·--XJOF--

... 033

70 C 21 • A?CO
18•0•1

---·-----·-· ·------ ------· - 03 4 .

0084 AS010080

0 044

0088 A 10800006 lOGlf 000 -

TIO

A?O[ HSG

A'?OI•S•l

---------·----036 ...•

24832

·······--·--·--·---· .... Q37 ..•.

--------------018---*-----

·--·D C45------0090· 47F 0007C··--·--····-------------- --··-·-----8-C--1.-S•A?XF• 10
OC4&

0094 lfSF00038

A?Cl-8AL

0 C47-

0098 47FOEOOO

. ·-BC.

--·O

C4~

----009C ·· 4 SF 0 007 2------· - - -

D 0149

DOAC 47FOEOOO

0050

OOAr+ 030C

l StA ?WT

A?CO DC

. ···-······- - -·-·---·. ··-·--·-·-·· 03 9 - .•

15.ac.1r+>

----------4 ?O P--3-A L - - 1 5 •A? Xf
.... ac.

*
*.

035--•----

-0 C42 ··----- 0080- 4 780FOOO - -----· -·-----------·-··· -·----·--··----S.C-----8•0C .. l SJ0 04 3

- - - - - - - - - - - · - - - - - - - Ol-2---*-·--·-·

---· ·

1s.oc.14a
Y lRBUFJ

-···----·-----·-------·-- 04 a - -•

----------------------04-l--*---·-··
. ···-

. -··- ·····--· ... ·-· ·-··--·----·--. ---------------·------·- ...04 2.

..•..

- -- -··----- -- ·-·-·-·- ·-·--·- . 04 3. .... • .

z

-· 0 051-·----- O t l A G - - - - - - - - - - - · -

-----

0 C52-

OOA6 0358 ------·--·-·-·· ------·-··-·-··--··

0 CSl

OOAA-·· -

------·------ --

.b.

--· 041l

•

045

•

046 . •

c •4• ···--·

--------···- DC

-------------------------041--- •

css

•

CNTL:YES•

0 057

•

PRAO :2,

0 CSS

PROV ::f Of•

0 059

•
•

060

•

PRINT

IOCS

C CARO»

----··-·- ------ -----001

•

•
•

0 C!6 l

ENTRY

PRNT

002

0 C62

ENTRY

B?C;;H

. 003

0 C&3

[ x TR N

For

004

•

G;

BC

l S•!3?0P

005

BC

lStB'?Cl

oar.

•
•

s:
co

0 C&4

0 0 AC·- ct 7F 0013 A

0 065

OOBO 47F00154·

0 Cl&G

OOSrt 4 7F 00084--- -

0 067

0088 47FOOOFE

PRNT

··- - --·

-·--··--·--·------ -··- -···· --·--

····-··--·

•

0 CG8

w

•

ORG

0 C56

(I

w

- CL2

A'?S T DC

0 054--·--00AA- F-40

OS

BC

007

•

BC

008

•

00~

-- - . ---··---··-------··· 010

•
•

011

•

012

•

PUT

0 C69

DOBC 4 SF 00 l B 8 -------------------------------·

BAL

0 070

ooco

LH

a 011

OOC4 02830080FOOO

0072

OOC:A· 9200 OlE 1 ----- -

0 07 3

OCCE 4320200C 8

0 074-

0002 020001CFO lE 4 --

0 075

0008 0200005001£ 1 ·

0076

OOOE 4 SF 00 lC 8------ - - ---· -- - --- ------·

0 077

OOE2 --47FOE002 -·-----·------------------------ ------ ..

0 076

DOE 6 · 92FOOOE 3------ ------··· ----·----------·----

HV I

B?D•l •21f0

0 079

OOEA A AE001E2------------------ ·-----· ----

AH

14tB?H

0 080

OOEE- · 4 7F 0 0 lE E ------- ·----- ·- ------- --- ·

SC

15.FOF

BAL

1St8?V£

0 081

·-

4BFOH!OO

OOF2--4~00188

HVC

·--····--. -----------·

- -67SM

·----

1 2 8 C1 32 J • 0 I l !'> t

HVI
KV I

DL 3 . •

8?SH•l•2

HVC

--········ ·- ··-··. ---·--·-

-·--------------.

-1 S•~?Vf - ------ ·

-----.015--•·

-·----·- -8?IS HVC

SAL
8'?0

B?F

DU .. •

. --·-· --· --··------------011>

lStB?Xf

ec

• --

. . ----- .017 ..•
··-- ···---··--- ·---------Dl8 ·- •.

0 C82

00f6 921301Cr----·

HV I

B?t<•3t19

0 083

OOFA '17F00008

BC

lStB?IS

··-·--·----------··-- .. 019 --·-·--·-------·-----· 020 -···.
-- ----------021---. --·
··-- -·--·· ---------------· 022

•

----023
02'1

•·

en
m

r

-<

•

0 CP4

B?CN EQU

0 085

OOFE

0 086

OOFE 9540(003

DC87

. 0102 47800118

... ···-·-----···-·--···-·---· ··---- .. 02 s

CON TR CL

•

...... --.-·--······-. -----·----- -026 . • .

CLI

3C14)e64

SC

8tB?06

-------D27

·--- --- - - - - - · - - · - - - - - 0 2 8

•

• ·- .

0088

0106 020000CBE003

KVC

B?SH+ I& l h 3'14 J

o o~g

OlOC 4350 7E001

CLI

JC141.c•p•

0090

DUO 47800118

BC

8tB?OS

Oll

0 091

0114 %0800CB

01

8?SH+lt8

012 . • .

0092

0118 913H002

A?06 TH

2Cl4) ,f,J

0 CCIJ

····-· -··· .Q

11 c. 4780£004

- ·-·····-·----··-·---

-·· ·· · ·--···-·--B C-----8, 4 C, 14

. --···--- ... ·-·-- ---.02 9

.. ----------------010 - .•.

· --- ····· --·---· -------··----- --·- ---· -a1 3

> -·. ··-·--·----

0120 020001£ 1£002

HVC

t\?SE+lllhZlllf)

035

0 C9S

0126 9507E001

CLI

lC14leC•f'•

036

- Ol2A

0 C97

478(10132

--· ---·---BC----·8 t8?G

01

0 l2£ %080JE1

o oqs

0132 Ao\E OOlf 7

(l ljClq ····-·--·

-0131i 4 7F or.or 2 .....

S?G

0 !Pl

'32400080

0 102 -- -----Cl 3E - 028200810030---·-- -------------

...... 039

AH

042 - •

·--·--·-··-------t4VC ------I 29C l 3 U t l 2 S - - HV I

B?SH+ lt 2

0 104

·· 0 14 8 9 2f 0 0 1 9 D

HVl

8?C+lt21'0

BC

0150 47FOEOOO
•

0108--------0l54-lf5F00168 ---···

0158 47FQ(000
1)

0

-

1St0Ctl4J

l5•0l•l4J

0 lll

·- 01£>0 4730015C

BC

0 11 l

-0 1E>4 9 lf B Cl 19 5

-· TH

OlE>C 91010195

0116

0170 47800178

-6?'0l•S•l

TH

ac

•

·-· -·---·-·---···- --- -- --·-···-·-·-·· ... 04 8

•

- - - - - - - - 0 4 9 ___ ... ___ _
--------·-·------- ----050 . • .

---------- · - - - - - - - - - - - - -

-- .05 2---·-·· ..
. 053

8?01•5·251

.. ---···- --8C-------8tS'?C --·--·
8?E~

·······-·· -· -······ --- .... 04 7

--·--· ·----·-·--·---····-··-·--·---·--- ---051 ...

• ERROR
B?E----TIO.

-·-··---OlSC A50301q5

0115

- - - - - - - - - - - . 0 4 6 - - - -•

.B? CL--B AL---1 5 • B? 1J E --· ·-·-·----

.. BC

•

·- - - ----·----- -··-·--·-· 04 5 . •

CLO SE

011 l

. 0 lllf -·----0 lf>8 --4780019C---·--·- - - - - - - - - ·

----------------~4-l--*---

. ·- -·····--·-·----··--··---- ·······--· ----· ----04 4

------···-- ---HV l------870• l t240- - - - - - - - - - - -

0 107

0

.04 0---·----

B?OP HVI

Ol44 920200C8

0106

..

·-------·-----·--··---·--------·-04 l ..•.

D 10 3

-.0105 -·-------Ol4C 92FOOOE3--·--·-·-

•

·------------038 . •

8?S£•lt8

a OPEN
0 l3A

-- • .

--037--•---

-·--·--···----···-·-··· -- -- ·-·-- ·-· · -------Q.C----15• B ?F ---------- -----

0 100

•

- - - - - - - - --034---•---.

0 C94

DC%

•.

B?OI•Sel

.•

·-·-------··----------------- 054.-- •..

------------·----

- - - - - - - - - O S 5---•--·
--- - ---- ·-· .. - .... 0 s (,

057

. •

)>
C/)
C/)

m

s:

CJ

r-

-<

r-

~
2

G')

n0
2

:!

·------ --------------------us•-·-----.. --- 0

····-·-----------'>St--·•---····-·--

ll8----·-0.l-7a---4Jl02014J5~----------

·-- 011'----017C--780018-.----·----------···-- ---· - -BC -

--------·------tl60-- ··---·· ···-

--·8t87I

-------061-.-----·

---O-t20---tU8G--4J20000[-·5-·---------------J111¥l---·--B?O•l•O-------····· ----···----··-···---·-

... o 121·-·---··0184.

C)lf 80195···-- ··-·-----·---------··

8?1

· 0126 ·----·--Ol9C-47FOOHn.---·--·-------·-·--····8?C
0127·-····-·- ··DUO ·950FOOSO·--· ·····----·-·- ·--····--- ·-·

-----OlA4 47600184 -····--· -··----·-----·---·

·-··- 0 129 · -·-···- 0 US 92F00190- -

·- -- ···· ··---------· ·--- ---· ··-· · ·-

·· 0 UC A108000063014001} -·-------·-- -··-

0131 ··-·--···0184· 47FOOOOO -·-

0188 40f001136

80tl5

BC

6e8?VX

. - - - - -071 . ·--·- ·--

-012

&---- --· ·- -

-07-3---·--·-·-

l S•B?E

B?N

890 - .

· B?Ol•Stl·····

· - - - - - --·····-----·8?l---8 Al-· ----1 StB?EA -

x•oo•

B?SE DC

··-----------DC---·

--··-·01E2 0002········-···

·-·----- --- --·-···-----······---

B?M

DC

x •oo• --- ·-- --yt

2)

0 14 7-- - -· ----·DIES---- --- ------·-··---- ---------------- ··

ORG

0 148

DC

•
c '4.
USING ••O

-<

I

G>

···--------------

-----

--071'-·-------

····-------··-- ------·---------Ol'.9--..___.. - . --···· ··-·-··----------·08 0 -- • - - ··----- ------------------081---·•.--··-

. ·--·---------·-·---·-----------..u12--··---

-·-······--·-----------08rt.-. ----····- -

.... --- - ----·----·-----------_....oas

•

---··--·-····----·-----08'-- ·····-- -. -- -- ····---- - ----·----·----087._ .. ~--· .. -·--

81X 1 DC

s:

CJ
I

·--------·---------- -07 5-·- - - - -

---- ---·-----. -----------08 3.- •--· - --

··BC

~
m

~

··-· 078 . •

BC

)>

·······---OH· •-- .. -·

I St8?Vh2

TIO

0143 - -----01(0-00 ........ -----------·----··. -

0149

·----

. ·····-·---------· ·---·--· 077 - ·----·

·--- - 0 lDC. 117f001CC-----------------

-OHS F4

..... ------·------ m;g

-··•·VERlff-

0140- -----·0104- ASD3019S-------·------------

014& ·· ···-- ·O lElf. 11

·---- -- ------··--·--·····- ··-------- -068 -· ·-·····

15·0

- - - - - - - - - - - - - - - 8 ? K - - ·-XIOf ---Otl --- · - ------- - ·

·- · 0 144··-----0 lE·l-CO-·····-·---

. ·---·-- ··------------067·-··- ··---·

2S31f5

B?XF STH

---0108·-~SFOOl&C

... ··---·· -------·-------06 6 .,. ·-·-· -----

··-···· --·-··----------------010 - ····-·--

HV I· ·

-··----- 8 AL··- ---1 St8?XF'---· ·

--·--0139 ------·0100- 47800000 -·-- --·---·--··- --· ·----·-·

Ol4'i

CLI

·-···-· ·D lC q .. q 7F 0018 C···· -·--- -·-·

--0138----·-0lCC·--A.14030000

0 142

1 St8?VX

UL

0137 · --- -· DlC8 40F00102

·----0 l'+l

BC

B?VE STH

·---·C 13S ------·O lCO-· llSF 001C·8·---·-·

- ·-

lSeOCtlS)

HSG

··0131f ··-·-·01BC·45F001SC ·--- ··--·---·

0 136

BC

•

.. ·-·----------06S --· •··-··

2S3'tll

·8?VJI BC

- .... () 132-------··--·--·.,--···---·- ---- · · · - - - - - - - - - - - -

0133

--·---·------063. ·--·064

·B?Dt HSG

() 12S-------0198 4 7F OF 0 00··-·-------·--·-·-· ·-----· · ---- -

0 130 ·· ··

8.oc .1s·1

NI

018C CJlfFC0195

0 12-. -------- ·D 190 ll 0800006 3004000 - - -·-·· ·-··-· ·

- 0128·

----·--- --·----··--------·-062 - • --·

BC

- D 122·-··---- --0188 4780FOOO·--·----··-·-···-----····

0123

TH

.. ________ -·- ·-- ·-·--·- -·----·------ _____ oa a. _ •---·· ____ _
······----- 089 .•..

z

8
z
:-1

•·l

0 ISO

USING

I

0 151

EXTRN REAO

a>

0 152

EXTRN PRNT

0 151

ENTRY IHlUF'

0 154

ENTRY EOJ

0 155

EN l'RY

FOF

OPEN

READ

OPEN

PRNT

HVC

CNTR,TZER•4

w
~

a 1!>6

0 lEG 4 SE 00000

0 15 7

Ol(A 4SEOOOAC -·-

D 158

OlEE 0201047A0478

BEGN

ror

·-··0-159 ----OlF4--924003loC------··

··--····-·-·---·HVt-- -PRWKtX'40' -····

0 lE>O

01F8 D28203A003AC ·

HVC

0lf.1

0 HE lfSE00088E 202074 0

CNTRL PRNT tSK t 7

·D 162-----C206·-FA00047C048-3--------

0163

020C 0201041A0480

0164

0212 OE01041A047C

-·-----···-AP - · - PAGE U I• CINE C1)
MVC

0 lf:.5 ------·02 l8-·020f 03C A 0 4 l 0 - - - - - - - - - -

PSAL•22C21t~SKJ

MVC--- PEHPClSltMDRl

0 1&6

02lE 020703E704lF·

HVC

0 lF..1

0224 020404040447

HVC

PSHNCBltHORi'

-- -0l&&----02·24--4SEODOB8E20·1014u---------- ·----·-CNfRL- PRNT tSPt l-- -·

011;'3
0

170

0232 4SEOOOSC03AC ·

PUT

PRNT tPRWK

0238 45E00008035C

GE:T

REAOtCARO

- 0171------02-3E---'l24003AC-----

a 112

- - - - - - - - - K A N - - - - - MVt--PRWKtX'40!

-·0242 D28203A003AC .. -·

0173 · ----· - 0248 020503CF'035C

KVC

PRWK•lClllttPRWK

HVC

PR WK • 3 5 C& I

t

£HP N

0174 ----024[-020[ OJE 4 0362 - - - - - - - - - - - - - - - - - · · - - - MVC---.. ·PRWK•S6'·1S>•SMAN -··-----·- - - - · - - - · - - - - - - - - - - - - - - - 0115 ·- -·----0254-·0205047003SC· ---·--- -------·----··
0 17&. -----···· .. -02SA-f 2 35041340371 ----.. ·---· -· - - - - - · - -·-..

MIN ..

-O-l17----0.2£>0··F--AS3043404------------·
GET

· RCAO tCARO

CLC

· SAV£, EHPN

·------·BC··--- 8•

MIN---~----·-

0181

0276 fA7504SA0484

AP

FT OT t TSAL

0 182

027C D20F03FC049S

HVC

PRWK•80116)tHSKl

)>

~

m
:5:
co
r-

-<

--0-U-l»----O.Z8-2-Dt-Of-D-3F-CQ48i4----------------t. 0-----PR WK •80 Utt J.• l SAL-----·-·
.. - 0184----· ·--0283· 4SE0008C03AC----·---·---· --··-·---- ·-·-

PUT

PRNT .PRWK

·--· 0 185 ·---·- 028E··f "10047 A048 3--·----- ·--·-·--- · ··-· ··--·- · - ·· ·

AP

CNTR .oNr .

---0-186----029,,._·F-911047A0492·····------------

CP

CNTR.FIVE- ·

·-· -0187--- ---···--·- 029A 478001EE --- ·· · --··----·-··--····--··----··-· ·· -·

BC

8tf0F

·· ··· 0 188 -··-···--- OZ9E 020504840474

HVC

TSAL l&) tTZER

-··-· -·---···-- ---

BC

02A4 lf7F0023E

0189

£OJ

··02A8 FA7501f8A0484

0 190.

D 19 l ·- --- ·02AE 020F 03FC049 8 ·------ ----- -·--·-- -·-- --··
·0192·-·-·---· 0284

DEOF03FC04~4

0 195 ·--·-·-··- 02C,. 028203A003A C ----·-·-·--------······ ·-·-···-· ··

·0200 DE1403F7048A

0198- ·

-· - c 199 ·--··
0 200

-··

--· 02CA 021403F.704A8 · ---- ···-·---·--------

0 197 ..
~·

0206 020A03E4044C ·
020C ·45EOOOB8£20701'l0- ··· ··-----------····--

FTOTC8ttTSUH1J

HVC

PRWK+80116ltt'ISKJ

ED

PRWK•80116ltTSAl

HVI

· 0 19'4· · ······-- 02CO 921f003AC · · · --·---·--·-· ----- -- ·-·-··· ·---·- -··

0196

AP

·-·PUT

0193 ··----- OZBA lf5EOOOBC03A C

-·-·· -- ·-

PRNT tPRWK
PRWK tX • lfO'

HVC··
MVC

PRWK+7Sl21Jtf'ISK2

en

PRWK•7S.t21 J tFTOl

MVC

PRWK+56Clll•HDAlf

CNTRL PRNl

PUT

···02E4 45EOOOBC03AC·--·· --·

I St MAN

.sP, l

PRNT.PAWK

.x• .. o•

-· - 0 201------ 02EA-·924003AC ·····-······-·--------------··-····

MVI ···- PRWK

--··· 0 202 ·--·---·02EE· 028203A003AC :__··----··--·-- ···-·- -- --

MVC

PRWK•ltlllttPRMK

HVC

PRWK •Sl '29hHORS

··· 0203 ·-··-···02f4 021C030F04S7

-- PU f....... -PR NT •PAWK

---0 204 -··--02FA--4SEOOOBC03A C· - - - - - - · - - - -

CLOSE READ

- - 0 20 S · --- --· D 30 0--4 SE 0 00 04 ·-----·-·-·---- ·· ---

···--0206 ··----0304 -lfSEOOOBO·-------·----·-----·--·-··- ---··-·--·---- CLOSE PRNT
HPR -· -- X '1 rF f'...... ..

----- 0207-------0308-·-A900lrff---······ 0 208 ····------OlOC-------- -··-·----·--------------··

RBUf'

0209·----- 03SC-·- -·----·-····---------------- ..-----·- CARD·--··

-·-····-0 21 Q. ------DlSC0 211
D 212 ·
·-

-· 0 215

Cl80

DS

0Cl80

- - - - - - - - - - - - - U P N - - - OS.

.. 0362··- ···-···--··-·-··-----· -·-··-·-· .. ·----- -·--0 3 71·-·---------------------··--····-------- ·- ...

· ---·- OlAC ·-------·-·--·-----·-···-···-· ···

OlAC·-·--- -· -·------- ···· ··· · ·

CL6 ..

SHAN

OS

Cl15

SALE

OS

CL6

OS

·CL53

0 213 ·---·-0177----------------------·

0214

OS

PRWK

OS

OCLl 32 ··

OS

CL30

-CllS

D'S

Cll"

D'S

CL8

D'S

CL 21

D'S

CLS

OS

Cll9

HOIH

DC

C •EH PLO YEE NUHBCR •

HDl?l

DC

HORJ

DC

0 217· ······ ··----·OlD'l--··---·-----· ··

021'!

····-· OJE7- ---------·.

PSHN

0 lEf.·--------··----- ·- -··· --·-··· -·--···-· ---·-·

. 0 219
0220

0404

0 22 l

040') -· ·--·-·- . ·--- - --·-···· ..

0 222

043 0 C504070 306E BC SC 5:4 00 5Ell 04C 2C SO 9

0 223.

PSAL

· 043F · E2Cl03CSE204Cl05--··· ··-- --··- -

0224 ·- · ·· 04167 E2C103CSE2-·

--·---

O'S

····-·D 21&---------0lCA------------ ··-·--------------- ---PEMP

-

·---···

· C •SALESMAN•
c•SALCS•

---0 22S---044C---ti:306E3C ID340E 2Cl03C SE-2--------WOA4----0C--- ··C •TOTAL--'ill[S '-· - · - - - - - - - - - - - · - - - - - - - - - - - - - - -

0226 --··--·

04H CSOSC44006C64009CSD706D9E340C6Dft HORS ----

·- 0227- ---------0467

DS40CGC9E2C3Cl0340E8C~Cl09

- - 0 22e--8---0414-.00000000000C ----

D229·-··-------047A OOOC---·
0 230 · -·-----04 7C - OC--

DC·

C•ENO OF REPORT FO•

DC·

C'R FISCAL

V~AA

~

1

CJ)

m

--------·-----lZC A - - - 0 C---X '00 00 DO 00 OOOC • -··- - - --------·,--·----·
-----··----·--·---·--- .. - --- CNTq -··
-····-·····----------···- -·-···PAGE··-·-··

3:
ral

DC
DC ....

-<

x•oc• .

c

02Jl--------041D-----·-------------------SAVE-----DS-----Clfii-----·---···--···-·--·--·-··--·---------·-··

a 212

- - 0483 .lf.

0 233 - -· ...... 0484·

oooooooooooc. -- -·-·--·- ---------

ON(

· · -- DC

· T SAL

DC

CJ)

::j

x•tr•

zG)

XLG•OC'--

c=;
0

-02l4-----048.t.--OOOOOOOOOOOOOOO-C----------f.TOT-----OC-----Xl8 '-OCL--------·------------------···
---0235

---·---··0492· 025C-··--·-·

-···. 0 23£.

···-·----0494··-·· ·······------. -··-- --·- -----· ·--·--· -- .. -·

f'l VE ·
-PAKS

z

:-'

DC
OS ---

CL4

--023-7----0498--4.(1682020206-82-02020&-820-2021482Q.20.-M-SK-l---OC---X'lf06820-2D20GB20202066202Dl-1~82D20'-----------

0 238 ·-·----04A3---110206B202020682D2020£.B2020206B20· M SK2 · -··-· · OC ··-

x. qQ206 82020206820 20 20,820 20206 820' --··· -·---·--- ----·

0 239 · -·----0488---2021482020 ---·---·--·-·-·--···-- ·-·---··- ·-·----·- ···-····

x•2021 .. 62020'

DC

·--·-----·---·--· - ---··-- ...

- - 0 2 4 0 - - - 0 4 B 0 - 4 0 2 0 - - - - - - - - - - - - - - - 1 4 · S K - J - - 0 . C - - X UfO 2 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ·
.. 0 24 1 ·-· --·---- --··--------···--------- -- -----·--

----- ------

END

BCGN

-----·--··-·----·------· ······-·-

···-

---··-·----·---·-----------

l INK ER MAP
... - ....

------·---- -- · - - - - - - - - - - - - 0000
CTL
2e16383tl6l83

-

........._.

_____________________

------· ------·-·-·---------------·-·-------··----·-----·--···--··--- ·--··--·--·--- ·PHASE PGMe4096tA

lODO
l?CH

EQU

OOOlf

l?AH

EQU

..

0080

L?AR

EQU

128

L?PG

EQU

208

L?LO

EQU

128

--··-·-·--------------------------0000

0080

0008

A

0088

H

0088 L?Rl

DOCS

H

OOC 8 l ?HE

H

Ollf C L?CD

0001

------0 lllC

0008 LO

DODO 001

------

LO

0008

J

0080

t(

0002

l?AR

DODO

I(

0003

L'!'PG

0080

K

OOOlf

L?LO

3FFF

K 0005

l?HI

-------------0040

K

0006

l?CH

0004

K

0007

L?AM

0000

y

1000

A

1000
1 OAC

1 OCA

0001

0000

H

-----·----·-··--·--

DlfBF 001

0000 RE AO
- ·-·----·-·-···-· ..·-------·--·-.. ·--· .. -· ...

------·---·----·-·
H

ODA C PRNT

H

DOC A 8?SH

-·----·-- ·--------·----------l lOC

H

030C RBUF

12A8

H

OZA 8 EOJ

------ ·-----------· -- .. -····-··-

llEE

OlEE FOF

w

] 000

J

~

l2A8

K

I

001

0002

EOJ

. ·--- ... ·-·--···--·-..... -·- .. -··

....... -·-----· .

-----------

130C

0003

I(

RBUF

TBRD
K
0004
1570
- - - · - - -· - - - - - - ------·---------- ---·------------·fOF
I(
0005
llEE

K

0006

RE AO

K
l OAC
-----·- - -- . ·-· · - - - - - - y
11[6

0007

PRNT

A

0001

1000

........ .

-------'----·--·--.. --------···--·-·----·--·----·-·-·

0000 EXl

1401.J

H

0014 E?IN

l If 06

H

0016

1500

H

0040 ('?RE

152E

H

006[ E?OS

..

--·---·--

OOAF 001

E?SC

EX 1
J
1 If CO
-----·- -- ·- --------------------- --··--------------·----·-------·-- -··
y
0000
1570

1570
0000

11[6

. ··-·

A

0001.

0000 TBRD

0100 00 l

TBRO

J

-------------------·------------------·-··--·y

ENO

----·- ---·-----·------------

·---------·------

--- -· - ·--·--- ···-·--- - -- -·

- - - - - - - - .. -·-·----

- - - - - -·-··-·-·- ·----··-----·

__
...

··-·-------~---·-

···------------------·--------

•
•

EHPLOYtE NUMBER

SAU:SMAN

SALES

.oo

•

•
•
•

..
•

00 CODI

ANOE'RSONt MAftl E

00 C002

BROWN1 JOHN

00 C003

CUNNINGflAM1

315611.JD

10.icn.10
141727.70

TOH

00 C00'4

0088 lNSt PAUL

llt 532. 30

00 CKJOS

GETTY• PAUL

13t260. so

00 COOG

HUGHES• HOWARD

DO 0007

WASHIN!HONt

.. ·••If II. 20

EO

00 C008

CLLSWORTHt

AL

1811103.82

00 C009

CA

s:
""C
r-

m
""C

:II

0
0

c("')
-I

6
z

:II

c
z
0

c

-I

""C

c

-I

-n0
z

~

TERMINAL PROBLEM
INTRODUCTION

The terminal problem is a monthly payroll reconciliation report program that will provide a practical exercise in applying
the knowledge and coding skill you have acquired in this course. Use the Reference Supplement Section starting on
page 3-59 to review specific instructions.
Given the following problem statement and the input/output requirements for the program produce the flowchart and
·
coding for the solution of the problem.

PAYROLL RECONCILIATION REPORT PROGRAM OBJECTIVE,·

The Programmer's objective is to prepare a monthly reconciliation report that will provide management with salary
status information and the accounting department with a monthly payroll total for all salaried employees.
Below is a diagram followed by a description of the problem in terms of input, processing, and output.

PROGRAM
PROCESSING

PRINTED
REPORT

INPUT DATA
CARDS

Figure 3-12

System Diagram

Input Data
The punched card deck contains a date card (the first card in the deck), and detail cards. Detail cards have a 1 punched
in column l, and employee number social security number, check amount and check number. Detail cards are in
alphabetical order by employee name.

Processing
Print report title and page number at the top of every page, print column headings and detail information on each
employee. Accumulate a final total; edit the total; then, print the total.

3-55

Output
Printed report as shown on next page.

INPUT DATA CARD FORMAT

COLUMN

1
27-31
33-41
43-48
50-54

3-56

DATA
Identifying Detail Card
Employee Number
Social Security Number
Check Amount
Check Number

I

~

PRINTER FORMAT CHART
FORM NUMBER

PAYROLL REPORT

FORM PARTS _ _ _ _ _ _ _ _ __
TYPE OF PRINTOUT

n'AA

HD A-

1 ~fMPI .J

i

Nlb •

APPLICATION _ _ _ _ _ _ _ __

DATE _ _ _...,..._-t
RUN NUMBER _ _ _ _ _ _ _ __

PREPARED

RECORD NAME

RECORD NUMBER

APPtlV..00 BY

HD B

s:qc • s Ee • jNo.

-H DC-

1 ; 1 • nq1-1EfC Kl· \P\lvT ~

J

, : 4~tt$Uq-~l!;

'+-+--+-+-t-+-1-+-+--+-+-+-1-+-+-i-+-+-+-T--+-~+r:r-+;-~+--Ttj~-,t-+-H--i-+-+-t-+-t-t-+-+1)(-:+1")(..,r-1:-:15(,_,l-:x X:Jx~>t;x-+-f-+-+--lf-l-+--+-+-+--+-+-~-l-+-itL~:·~-1v:124J~it·H---t-M+ ~ i~ ~ 1
H -

- -H - ++--t-

--+-+-+-1-4-1-1---+-l--

rr-.- - -i--~

ev _ __

RUN N A M E - - - - - - - - -

r, ! ~ :ill

.

o~EAP~ovE£d

1 11

·-

t-H-t-+~+-+-+--+-f-++-H-1-++--++++-i--t---H-++~+-+-H-1-++-+-+-+-+-+-+-t-1--1-+-+-+--+-+-+-++-++-1--H-+-+-+-+-++-++-~HH-1--l-+-+-1--++-H--;-;-+-+-;+-H~l-+-+-++-+-+-+-+-t-t-+-+-+-+-++-~+
1-+-1-+-+-+-1--t-+-t--i-11-+-+--+-+--+-+--1-+-1- I·--·

-+--

-+-+-+-+-+-+-1--+--+-+-1- +-+·-i-+-+-+-+--+--1-t--i--i--1--+-+-+---t-t-+-+-l-l-f-+-+-+-+--+-+-+-t-1--1-+-t-t--+-1-+--+-t--t-t----r-T--+--t--t-t-+--+-+-+-+-+-+-+-t-+-+-+-+-11-+-+-+-+--+-t-+-t

.!

w
I
......

U1

i

....._,

.......

-·

--

REFERENCE SUPPLEMENT

OPEN

Format
Example

A.

FUNCTION
The OPEN macro makes a file available for input or output; each OPEN statement activates a specified file that
is to be utilized in the user's program.

B.

RULES

1.

A Label field entry is optional.

2.

The Operation field entry is OPEN.

3.

The Operand (OP1) entry is the filename specified in the DTF statements.

4.

A file must be opened before any input/output macros can be issued for that file e.g., GET, PUT.

5.

Suggested order for starting program:
START
DTF's
BAL
USING
EXTRN
ENTRY
OPEN
GET

C.

APPLICATION
One OPEN statement must be used for each file to be accessed.

3-59

CLOSE

Format
Example

A.

FUNCTION
To deactivate, or close, any file that was previously opened.

B.

C.

RULES
1.

The Label field is not used.

2.

The Operation field entry is CLOSE.

3.

The Operand (OPl) entry specifies the filename of the file to be accessed.

4.

A file may be closed after it is determined that the file has been processed; e.g., after the PUT macro has
been issued for output file. It is convenient to close all files following the last PUT statement.

APPLICATION
One CLOSE statement must be used for each file referenced.

D.

EXAMPLE
If the filenames specified in DTF are FILM, FILT, and FILO, the appropriate CLOSE Macros are as shown below.

3-60

USING

Format
Example.

A.

FUNCTION
The USING directive provides for direct addressing by listing the number of modules of 4096 bytes that are available
for instructions including the Input/Output Control System (IOCS) and the tables.

B.

RULES
1.

The Label field is not used.

2.

The Operation field entry is USING.

3.

The example above makes 4K bytes available (*,0).

4.

The statements must be assigned in sequence starting with USING * ,0.

5.

One USING statement for each block of 4K bytes.

6.

The available memory can be designated for up to 32K bytes.

The following lines of coding would be included for a computer whose memory is rated at 16K bytes.

For SK bytes of memory only the first two lines would be used.

3-61

EXTRN

Format

Example

A.

FUNCTION
Allows for the labels used in one program to be defined in another.

B.

RULES
1.

The Label field not used.

2.

The Operation field entry is EXTRN.

3.

The Operand (OP1) is the filename for the reader or the printer. (The name given in a DTF statement)

4.

If the EXTRN statement is not supplied the assembler will flag the filenames as undefined (unreferenced).

The suggested placement in the program is shown below.

3-62

ENTRY

LABEL

1S OPERATION 1S
10
16

OPERAND

Format
Example

A.

FUNCTION
Supplies a name of a subprogram within the user program.
(Supplies reference to a keyword parameter in the DTF statement; e.g., DTFCR EOFA=EOJ)

B.

RULES
1.

The Label field not used.

2.

The Operation entry is ENTRY.

3.

The Operand (OP1) specifies the name of the user's subprogram.

4.

ENTRY supplies reference to a keyword parameter in the DTF statement.

LABEL

1S OPERATION 1S
10
16

OPERAND

COMMENTS

3-63

GET

LABEL

11 OPERA TIOH 11
10

OPERAND
16

Format
Example

A.

FUNCTION
The GET macro makes the next consecutive logical record available for processing in either an input area or a
work area.

B.

RULES
1.

Records are processed in work areas. In this case, the GET macro moves each record from the DTFCR specified
input area (IOA 1) to a work area. In this format, the Label field is not used, and the Operation field entry
is GET. The Operand field has two parts, OP1 and OP2, which are separated by commas.
a.

OP1 (Filename) - the name specified in the DTFCR. Name of file from which record is to be retrieved.

b.

OP2 (Workname) - the name specified in the OS instruction that reserves the work area in memory.

NOTE:
2.

DTFCR's must include an IOA1=RBUF entry (name of the buffer area for card reader).

If the data transferred to Workname (AREA) by the GET instruction is a standard end-of-file card (the data
contains the characters /* in the first two locations) control is transferred to the EOJ subprogram.

EXAMPLE

LABEL

11 OPERATION 11
10

3-64

OPERAND
16

"

COMMENTS

PUT

Format
Example

A.

FUNCTION
The PUT macro causes the writing, punching, or displaying of logical records that have been assembled directly
in the input area or a specified work area.

B.

RULES
The PUT macro moves a record from a specified work area for output to a printer, punch, or other
device and immediately frees the area for other program use. The Label field is not used, and the Operation
field entry is PUT. The Operand field has two parts that are separated by commas:
1.

OP1 - the filename specified in the DTF statement.

2.

OP2 - the work area specified in the OS instruction that reserves a work area in memory.
NOTE:

C.

DTFPR's must include PROV

= FOF (Forms Overflow Routine) entry.

APPLICATION
All data transferred from the printer work area to the buffer area causes a line to be printed, advances the paper,
and checks for the end of page condition. If the end of page is detected, control is transferred to the FOF program
before further execution of the program is accomplished. If the forms overflow condition is not detected, processing
continues after the printing of the line of data is completed.

3-65

CNTRL

Format
Example

A.

FUNCTION
To permit the programmer to specify the format of a printout.

B.

RULES
1.

The Label field is not used.

2.

The Operation field entry is CNTR L.

3.

The Operand field entries are the following:
a.

OP1 - Filename specified in DTFPR
SK,M,N = channel to skip to on carriage control tape
M = skip before printing
N = skip after printing

b.

Code - 0, 1 or 2
If SP is used, the 2 signifies "space two lines".
SP,M,N

(M=number of spaces before printing)
(N=number of space after printing)

4.

M or N may be omitted, commas may NOT be omitted.

5.

Normally, single spacing is automatically provided. If any other type of spacing is required, SP is used.

6.

If CNTRL is omitted, normal spacing as specified by the PRAD Detail Entry card will be executed.

7.

Throughput will be faster if both spacing and skipping are specified after printing, rather than before.

3-66

C.

EXAMPLES

1.

Advances one line before printing.

2.

Advances two lines before printing.

3.

Specifies an immediate skip to bottom of page.
The CNTRL macro instruction should be used only in conjunction with a 48 or 16~character print bar.

3-67

INTRODUCTION TO PACK AND UNPACK

PACKED FORMAT:
One byte (8 bits) represents two decimal digits. The rightmost half-byte represents the sign.

Digit

EXAMPLE:

I

Digit

Digit

I

BYTE

BYTE

BYTE

BYTE

Digit

Digit

I

Digit

Digit

I_

Sign

Pos. sign = C
Neg. sign = D

37246C

UNPACKED FORMAT (ZONED FORMAT):
The low-order four bits of each 8-bit contain the decimal digit, and the high-order four bits define the EBCDIC zone.
The high-order four bits of the rightmost byte of the field contain the sign of the field.

Zone
EXAMPLE:

3-68

l

Digit

Fl F3F4C5

Zone

l

BYTE

BYTE

BYTE

BYTE

Digit

Pos. signs - F ,A,C,E
Neg. signs - B and D

Zone

l

Digit

Sign

I

Digit

PACK
LABEL

i OPERA TIOH '&
10
16

OPERAND

Format
Example

A.

FUNCTION
The operand specified by the OP2 is converted from zoned format to packed format, and the result is placed
in the location specified by OP1 .

B.

C.

D.

RULES

1.

The operand specified by the second address must be in zoned format.

2.

Packing may be done in place, or in another area. Also operands may overlap.

3.

If packing is done in another area, the area does not have to be cleared or ·initialized.

4.

The maximum size of the second operand is 16 bytes.

5.

To determine the minimum size of the first operand, divide the number of bytes in the zoned field by two
and add one to the result. If the zoned field contains an odd number of bytes, ignore the fraction when
you divide by two.

6.

The PACK instruction must be used when data to be processed must be operated on by any of the decimal
instructions, e.g., AP,SP, CP.

APPLICATION

1.

The fields are processed one byte at a time from right to left. Signs and digits are not checked for validity.

2.

The two portions of the low-order byte are reversed, leaving the sign in the low-order position. Then, the
zone portion is stripped from each successive byte, and two decimal digits of the second operand and are
combined to produce each byte of the packed field.

3.

If the first operand is too long, it will be filled with high-order zeros.

4.

If the first operand is too short, any remaining high-order digits in the second operand will be ignored.

5.

The second operand is not changed except when operands overlap.

6.

No condition code is generated.

EXAMPLES

3-69

Storage Definitions:

Operands Before:
Operand
Operand 2

WRK1
WRK2

FOFOFO
FOF1 F2F3

WRK1
WRK2

00123F
FOF1F2F3

Operands After:
Operand
Operand 2

3-70

UNPACK

Format
Example

A.

FUNCTION
The operand specified by OP2 is converted from packed format to zoned format and the result is placed in the
location specified by OP1.

B.

C.

D.

RULES
1.

The second operand should be in packed format.

2.

The maximum size of the first operand (zoned field) is 16 bytes.

3.

A field should not be unpacked into itself.

4.

To determine the minimum size of the first operand, double the number of bytes in the packed field and
subtract one from the result.

5.

Packed data cannot be printed in meaningful form. Therefore, this instruction is used to enable data to be
punched in standard code, or printed in readily readable form.

6.

The first operand does not have to be cleared or initialized by the user.

APPLICATION
1.

The fields are processed one byte at a time from right to left. Signs and digits are not checked for validity.

2.

The two portions of the low-order byte are reversed, leaving the sign in the high-order position. The sign
is a standard plus (1100) or minus (1101) sign, depending upon the sign of the packed field. Each digit
is preceded by a hexadecimal F (this occupies the zone portion of each byte).

3.

If the first operand is too short, any remaining high-order digits are ignored.

4.

If the first operand is too long, it will be filled with high-order zeros.

5.

The condition code remains unchanged.

6.

If two different operand fields are specified, the second operand field is unchanged.

EXAMPLE

3-71

Storage Definitions

Operands Before
UAMT

000000000000000000

PAMT

372178441C

Operands After

3-72

UAMT

F3F7F2F1F7F8F4F4C1

PAMT

372178441C

ADD PACKED DECIMAL

Format
Example

A.

FUNCTION
The operand specified by OP2 is added algebraically to the operand specified by OP1. The result is stored in
the field specified by OP1. The sign and magnitude of the sum determine the condition code.

B.

C.

RULES
1.

Both operands must be in packed format.

2.

The first operand must be long enough to contain all the significant digits of the sum.

3.

If the second operand is shorter than the first, the addition will be normal.

4.

The maximum length of either operand is 16 bytes.

5.

Overflow occurs if:
a.

There is a carry out of the high-order position of the result.

b.

The second operand is larger than the first operand and significant result positions are lost.

6.

If operands overlap, their rightmost byte location must coincide.

7.

A field may be added to itself.

APPLICATION
1.

Processing is from right to left. Signs are checked first before the arithmetic is performed.

2.

All signs and digits are checked for validity.

3.

High-order zeros are supplied for either operand during instruction execution.

4.

The operand specified by the second address is unaltered.

5.

Algebra rules are used for determining signs.

6.

Zero result is always positive, except when high-order digits are lost because of overflow.

7.

In overflow, a zero result has the sign of the correct result.

8.

The sum is in packed format.

3-73

9.

D.

The condition code settings are as follows:
CONDITION

SETTING

Sum= 0
Sum is zero
Overflow

0
1
2

3

EXAMPLE

Storage Allocations

Operands Before
First Operand:
Second Operand:

OTY2
QTY1

000000123C
08900C

QTY2
QTY1

000009023C
08900C

Operands After
First Operand:
Second Operand:
Condition Code Setting
2 (result is positive.)

3-74

SUBTRACT PACKED DECIMAL

Format
Example

A.

FUNCTION

The operand specified by OP2 is subtracted algebraically from the operand specified by OPl. The result is stored
in the field specified by OPl. The sign and magnitude of the difference determine the condition code.
B.

C.

RULES

1.

Both operands must be in packed form.

2.

The first operand must be long enough to contain all the significant digits of the difference. Otherwise, overflow
occurs.

3.

A field may be subtracted from itself.

4.

If the second operand is shorter than the first, subtraction will take place normally.

5.

The maximum length of either operand is 16 bytes.

6.

If operands overlap, their rightmost byte locations must coincide.

APPLICATION

1.

Processing is from right to left. The signs are checked first and then arithmetic is performed.

2.

All signs and digits are checked for validity.

3.

High-order zeros are supplied for either operand during instruction execution.

4.

The operand specified by the second address is unaltered.

5.

Algebra rules are used for determining signs.

6.

Zero result is always positive except when high-order digits are lost because of overflow.

7.

In overflow, a zero result has the sign of the correct difference.

8.

The difference is in packed format.

3-75

9.

The condition code settings are as follows:
SETTING

CONDITION
Difference
Difference
Difference
Overflow

D.

=0

0
1
2

<0
>0

3

EXAMPLE

Storage Allocations

Operands Before

OTY1
OTY2

000000122C
00123C

Operands After

OTY1
OTY2

0000001D
00123C

Condition Code Setting
1 (result is negative)

3-76

ZERO AND ADD PACKED DECIMAL
LABEL

I OPERATION 11
10
16

OPERAND

Format
Example

A.

FUNCTION
The storage location specified by OP1 is cleared to zero and then the OP2 data (packed format) is added to
OP1. The result of addition determines the condition code.

B.

C.

RULES
1.

The operands may have different lengths. However, the first operand should be longer than the second operand.

2.

The maximum length of operands is 16 bytes.

3.

The second operand must be in packed format.

4.

Operands may overlap if their rightmost byte locations coincide or if the rightmost byte of the first operand
is to the right of the rightmost byte of the second operand.

5.

ZAP is used when OP1 in a decimal instruction (e.g., AP, MP) is too small to hold the result of the operations.
The operand is placed into a larger field through the use of a ZAP instruction. Then the new larger field
is used as the first operand.

APPLICATION
1.

Processing is from right to left.

2.

The second operand is unaltered.

3.

Only the second operand is checked for valid sign and digit codes.

4.

A second operand that is longer than the first causes overflow.

5.

When high-order digits are lost due to overflow, a zero result has a positive sign.

6.

The condition codes are set as follows:
0
1
2
3

-

Result is zero
Result is less than zero
Result is greater than zero
Overflow

3-77

D.

EXAMPLE

Storage Allocations

Operands Before
WAMT
AMT1

357924853540
1233663C

Operands After
WAMT
AMT1

00001233663C
1233663C

Condition Code Setting
2 {result is positive)

3-78

MUL TIPL V PACKED DECIMAL

Format
Example

A.

FUNCTION
The operand specified by OP1 (multiplicand) is multiplied by the operand specified by OP2 (multiplier). The signed
product is placed in the OP1 location.

·s.

C.

RULES

1.

Both the multiplier and multiplicand must be in packed form.

2.

The second operand (multiplier) must be shorter than the first operand (multiplicand) and must not exceed
eight bytes in length.

3.

The maximum length is 16 bytes (one length is specified for each operand.

4.

The multiplicand must have high-order zero bytes equal to the number of bytes in the multiplier field.

5.

Operands may overlap if their rightmost bytes coincide.

APPLICATION
1.

Instruction operates right to left.

2.

All signs and digits are checked for validity.

3.

The second operand is unaltered unless operands overlap.

4.

Overflow cannot occur.

5.

The condition code remains unchanged.

6.

The sign of the product is determined by the rules of algebra, even if one or both operands are zero; i.e.,
minus zero is a possible result.

7.

The product is in packed format.

EXAMPLE

LABEL

'

OPERA TIOH 11
10
16

OPERAND

11

3-79

Storage Allocations

Operands Before
WAMT
AMT2

00001233665C
012C

Operands After
WAMT
AMT2

3-80

00014803980C
012C

MOVE CHARACTER

Format
Example

A.

FUNCTION
The source field specified by OP2 is moved into the destination field specified by OP1.

B.

C.

D.

RULES
1.

One length indicator is specified for both operand:;.

2.

A maximum of 256 bytes may be moved with one instruction.

3.

One character (e.g., a space) may be used to clear an entire field, if the first operand field starts one character
to the right of the second operand field.

4.

Overlapping of fields is permitted.

APPLICATION
1.

Bytes are moved one at a time in each field.

2.

Movement is from left to right.

3.

The number of bytes moved is determined by the implicit or explicit length of the first operand.

4.

The bytes being moved are not inspected or changed.

5.

The second operand is not altered, unless operands overlap.

6.

The condition code is unchanged.

EXAMPLE
LABEL

t

OPERA TIOH t
10

OPERAND
16

Storage Definitions

3-81

Operands Before
DOG
CAT

00001C
00002C

Operands After
DOG
CAT

3-82

00002C
00002C

MOVE IMMEDIATE
LABEL

OPERAND

1s OPERATION 1s

10

1s

16

Format
Example

A.

FUNCTION
One byte of immediate data is stored in the main memory location specified by the first address (OP1 ). The
immediate data is specified by the second operand of the instruction (OP2).

-B.

D.

RULES
1.

The second operand, called a self-defining value, may be written as a single character in quotes preceded
by a C (e.g., C'A') or as two hexadecimal digits in quotes preceded by the letter X (e.g., X'C1 ').

2.

The first operand field is a one-byte receiving field.

3.

The length indicator is never specified since this instruction only operates on one byte.

4.

The condition code setting is not affected.

EXAMPLE
LABEL

1s OPERA TIOH 11

10

OPERAND

16

Storage Definition
LABEL

11 OPERA TIOH 11
10
16

OPERAND

SPOT (1st operand) Before

SPOT After

OOC2C3

C1C2C3

11

3-83

COMPARE PACKED DECIMAL
LABEL

11 OPERA TIOH 11

10

OPERAND

16

Format
Example

A.

FUNCTION
The operand specified by the first address is algebraically compared with the operand specified by the second
address. The results of the comparison determine the condition code.

8.

C.

RULES

1.

Both operands must be in packed decimal format.

2.

Operands may be of different lengths.

3.

The comparison is albegraic.

4.

If operands overlap, their rightmost byte locations must coincide.

5.

The maximum length for either operand is 16 bytes.

APPLICATION
1.

Comparison is from right to left, taking into account the sign as well as all the digits of each field.

2.

If fields of unequal length are compared, the shorter field is extended with high-order zeros.

3.

Plus zero and minus zero compare equally (no distinction is made).

4.

The condition code settings are as follows:
0 - Operands are equal numerically
- First operand algebraically less than 2nd operand
2 - First operand algebraically greater than 2nd operand
3 - Not used. Overflow cannot occur.

5.
D.

Neither operand is altered.

EXAMPLE

3-84

Storage Definitions

Operands Before
1st OP.
2nd OP.

BAL
CHK

0912394C
12394C

Operands After
1st OP.
2nd OP.

BAL
CHK

0912394C
12394C

Condition Code Setting
2 (1st operand is greater than second operand).

3-85

COMPARE LOGICAL

Format
Example

A.

FUNCTION
The operand specified by OP1 is logically compared with the operand specified by OP2. The result of the comparison
determines the condition code. All bits are processed as part of an unsigned binary quantity.

B.

C.

RULES
1.

Only 1 length field is used (OP1 ).

2.

An operand of up to 256 bytes may be compared with another operand of the same length unpacked (EBCDIC)
characters.

3.

Operands may be in any format.

4.

The operation may be used for alphanumeric comparisons.

APPLICATION
1.

Processing is from left to right.

2.

Instruction terminated on inequality, or when the operands are exhausted.

3.

Both operands are unaltered.

4.

The condition code is set as a result of the comparison.

Condition Code Settings

CONDITION
Operands equal

CONDITION CODE

0

1st operand less than second operand

3-86

1st operand greater than 2nd operand

2

Not used

3

D.

EXAMPLE

Storage Definitions
LABEL

11 OPERA TIOH 11
10

OPERAND
16

11

Operands Before
1st OP.
2nd OP.

MACT
TACT

FOFOF8F4F3F1F2C4
F7F5F8F4F3F1F2C4

MACT
TACT

FOFOF8F4F3F1F2C4
F7F5F8F4F3FlF2C4

Operands After
1st OP.
2nd OP.

Condition Code Setting
1 (first operand less than second operand).

3-87

COMPARE LOGICAL IMMEDIATE
LABEL

11 OPERA TIOH 11
10

OPERAND
16

Format
Example

A.

FUNCTION
One byte of immediate data (0P2) is logically compared with one byte in memory. The address of the byte
in memory is specified by OP1. The immediate data is specified by OP1. The immediate data is specified by
OP2 of the instruction. The result of the comparison determines the condition code. The byte comparison is according
to absolute EBCDIC coded values and an unsigned binary quantity.

B.

RULES
1.

OP2, called a self-defining value, may be written as a single character in quotes preceded by a C (e.g., C'A')
or two hexadecimal digits in quotes preceded by the letter X (e.g., X 'C3).

2.

The first operand field is a 1-byte field.

3.

The length indicator is never specified, since this instruction only operates on one byte.

4.

The first operand field does not have to be at an even location.

5.

The first operand may be in any format.

NOTES:

3-88

1.

Condition code settings are the same as those for CLC.

2.

Both operands are unaltered.

C.

EXAMPLE
LABEL

11 OPERA TIOH 1i

10

OPERAND

11

16

Storage Definition

SPOT Before

C5

SPOT After

C5

Condition Code Setting
2 (first operand (SPOT) is

> immediate

field C'C').

3-89

BRANCH ON CONDITION

Format
Example

A.

FUNCTION

Branching instructions test the setting of the condition code indicator and branch to another location in the program
based on the particular setting being tested.
B.

C.

RULES

1.

These instructions may be used after arithmetic instructions; e.g., if result is positive, branch to specified
location.

2.

They may be used after compare instructions, e.g., if first operand is greater than second operand, branch
to specified location.

APPLICATION
15 - Branch on all conditions
8 - Branch if both operands are equal (CC - 0).

2 - Branch if result is positive (CC - 2).
4 - Branch on minus (CC - 1).
D.

EXAMPLE
Flowchart

MT

Routine A

Routine C

Routine B

3-90

Coding

Note:

8 can be omitted if it is desirable to "tali through" on an equal condition and continue straight-line
processing.

3-91

BRANCH AND LINK

Format
Example

A.

FUNCTION
To permit a series of instructions (called a subroutine) to be written once and executed several times (subroutines
and user program may be tied together).

B.

RULES
1.

Operand (OP1) specifies a register number (8 through 15) that stores the address of the instruction to be
performed after returning from the branch subroutine.

2.

OP2 is the label of the branch subroutine.

A BAL instruction may be used to branch to a subroutine that will:
clear an area
read data
pack and add
check tables

3-92

STORE HALFWORD
LABEL

11 OPERATION 11
10

OPERAND
16

Format
Example

A.

FUNCTION
STH places the contents of the register specified by the OP1 address into the halfword specified by the OP2
address.

B.

RULES

1.

Data is stored on an even numbered address.

2.

Goes from main storage into a register.

3.

The receiving address is a register (8 through 15).

4.

Boundary alignment is required. The. sending field must be a memory location.

5.

Data is in binary; may be defined by an address constant or as instruction address.

6.

The contents of a halfword will be loaded into the register.

7.

Does not alter CCI (condition code indication).

3-93

D.

EXAMPLE
To write the instructions necessary to interrupt a program flow use a subprogram (labelled PCLR) to clear print
buffer. After clearing buffer the routine will refer to interrupt.

2

3
4
5
6
7

8
9

(Line 1)

Store address of next instruction (line 2) in register 14, Branch to PCLR (line 6).

(Line 6)

Store return address (line 2) in register 14;process next instructions in line.

(Line 9)

Branch unconditionally to

3-94

line 2 .

EDIT INSTRUCTION
LABEL

11 OPERATION 11
10

OPERAND
16

Format

Example

A.

FUNCTION
The purpose of the Edit instruction is to produce easy-to-read printed documents by inserting the required
punctuation and gra(i)hic symbols.

B.

RULES
1.

Data to be edited must be packed in decimal form.

2.

Operation will change packed decimal field called source field to EBCDIC (zoned format) and insert the
necessary punctuation characters, i.e., dollar signs, commas, decimal points, asterisks.

3.

Pattern for editing is called the edit mask and is set up as a hexadecimal constant by a DC statement. If
an edit mask is to be used more than once, it must be moved to a working storage area before each use
otherwise the editing function will destroy the mask.

4.

Result of edit replaces 1st operand (OP1) which is the mask field.

5.

Construction of mask pattern is as follows:
a.

Number of bytes in mask must be at least the number of significant digits which will print when the
format is converted from packed to zoned; e.g., for four packed bytes, the corresponding mask must
contain at least seven digit select characters.

b.

First byte of mask in hexadecimal configuration is a fill character.
Examples:
blank (X'40')
dollar sign (X'58')
asterisk (X'5C')

c.

Commas and decimal points are inserted as specified in mask:
comma (X'6B')
decimal point (X'4B')

3-95

d.

3-96

Following control characters are used:
(1)

Digit Select character (X'20') is placed in mask where it is desired to insert a digit from the packed
field. Digit is inserted unless it is a leading insignificant zero and a Significance Start character has
not been encountered previously.

(2)

Significance Start character (X'21 ') serves same function as Digit Select character but has one
additional function; it specifies that all of the following digits are to be inserted from the packed
field even if one or more leading zeros are still present.

EDIT INSTRUCTION EXAMPLES

SEE NOTE BELOW

OP2

PACKED DATA FIELD

(BEFORE EDIT)

OP1

EDIT PATTERN
(MASK Fl ELD)

(AFTER EDIT)

OP1

UNPACKED FIELD

~~iii~~ ii~
2

FILL CHARACTER
$
DOLLAR SIGN ------~

,

3

4

5

6

7

PRINTED RESULT

OP2

PACKED DATA FIELD

(BEFORE EDIT)

OP1

MASK FIELD

(AFTER EDIT)

OP1

!l !

!

14~ I 40 I40 14~ 14~ 14• I40 I4B IF 1 I F2 I

FILL CHARACT_E_R_ _ _ _~6
BLANK SPACE
J

6. 6.

6.

6.

6. 6.

~

i

1

~

2

UNPACKED Fl ELD

PRINTED RESULT

(The symbols 6. orb are used by programmers to indicate blank spaces
when checking number of spaces in the result.)

I~: 0

OP2

(BEFORE EDIT)

OP1

(AFTER EDIT)

OP1

Fl LL CHARACTER

011

:+I

PACKED DATA FIELD

2! 2~ Is~•i::tit•I

Isc I I

!

It>: "'I":

MASK FIELD

! ! ! l

Isc I sc Isc Isc Isc I sc I F0 j 4B I F0 I F 1 I

UNPACKED FIELD

i* i* i* i* i* i* i i i i

PRINTED RESULT

ASTERISK _ _ _ _ ____,f

0

0

1

NOTE

Edit control hexadecimal characters:
Fill character (40, 58, SC, etc.)
Digit Select Character (20)
Significance Start Character (21)
.1 nsert characters (68, 48)

3-97

HALT AND PROCEED

Format
Example

A.

FUNCTION
Stops the processor and displays the OP1 address in the Halt/Display indicators on the control panel.

B.

RULES
1.

The label field not used.

2.

The operation is HPR.

3.

OP1 is usually expressed in 1 to 4 hexadecimal digits.

4.

OP2 is 0 in all cases.

5.

Base Displacement is assumed if OP1 content exceeds X'7FFF'.

6.

Forms:
HPR X'7FFF'
HPR C'??'
HPR 2075
Suggested place in coding
LABEL

3-98

11 OPERATION 11
10
16

OPERAND

ERRATA
9000 CARD ASSEMBLER
PROGRAMMED INSTRUCTION COURSE
Book 3 - BAL Application

Prepared by:
Systems Education Department
Univac Education Center
P.O. BOX 1110
Princeton, N.J. 08540

UNIVAC
COMPUTER SYSTEMS

February 1974
UE-686.2B

ERRATA
UNIVAC 9000 CARD ASSEMBLER
PROGRAMMED INSTRUCTION COURSE
Book 3 - BAL Application (UE-686.2B)
NOTE:

CORRECTIONS, DELETIONS, AND CHANGES ARE TO BE PERFORMED
AS AN EXERCISE UPON COMPLETION OF BOOK 3.

The Marketing Sales Report Problem which begins on page 3-3
has coding and flowchart errors:
1.

When SAVE = EPMN and CNTR = FIVE, a branch to FOF is
executed. As a result, the card that was read before
the end of page condition (FOF) was sensed, is lost.

2.

Refer to figure 3-3, pg. 3-23/24, Marketing Sales Report
Flowchart. Find the error in the flowchart and make the
necessary corrections. Then check your corrections
against those on page E-3.

3.

After corrections have been made in figure 3-3, make
corrections in the coding to reflect the flowchart
corrections.

4.

In the Marketing Sales Report Program,'two procedures were
used for Printer Overflow. The Prograrruner coded for an endof-page Condition and also defined PROV=FOF in the DTF
statements. Only one procedure should be used.

5.

Page 3-7: Define Input/Output Devices to be used by program.
Delete line 9:
Column 16
Column 72

PROV=FOF
X

DEFINE INPUT/OUTPUT DEVICES TO BE USED BY PROGRAM

LABEL

11 OPERATION 11
10

OPERAND
16

r---1---,
I
I

I

I
1

DTF s

L __ T

I
I

__J

E-1

6.

Page 3-8:
Delete coding line 135:
Column 10

ENTRY

Column 16

FOF

SUPPLY SYSTEM WITH LABELS OF SUBPROGRAMS

ENTRVS

Change explanation of coding to read:
RBUF and EOJ are the labels of subprograms within
the user program.

125
130
.i3i-

ln•t coding flow 146
after

100

OPEN READ
OPEN PRINT coding flow 146

before

105
USING

110

EXTRNS
ENTRYS

120

CLEAR
COUNTER coding flow 160

115
126
130
136

140
OPEN READ
OPEN PRINT

145

146

·-·-·--····-··----··------·-····--·-----··---

160

CLEAR
COUNTER

Delete coding flow 210
CLEAR
PRINTER
AREA

155
160

ADVANCE TO
HOME PAPER
POSITION

165

170
ADD 1 TO
PAGE

176

MOVE PAGE
TO PRINTER
WORK AREA

180

MOVE HORS
TO PRINTER
WORK AREA

190
196

SPACE 1

200

PRINT

206

185

MOVE MASK,
THEN TOTAL
SALES TO
PRINTER
WORK AREA

270
275
310
ADD TOTAL
SALE TO
FINAL SALE

MOVE IN "END
OF FISCAL
YEAR"
(HEADER)

375

PRINT

380

280
MOVE MASK,
THEN TOTAL
SALE TO
PRINTER
WORK AREA

PRINT

CLEAR
PRINTER AFIEA

216
220

316
320

CLOSE READ
CLOSE PRINT

285
ADD 1 TO
COUNTER
MOVE
EMPLOYEE
NUMBER Ii
NAME TO
PRWk

MOVE
EMPLOYEE
NUMBER
TO SAVE

ADD SALE
(PACKED)
TO TOTAL
SALE

ADD TOTAL
SALES TO
FINAL TOTAL

325

226
230

PRINT

END

--8
235

CLEAR TOTAL
SALES TO
ZEROS
PACK SALE
TO A WORK
AREA

386
390

300
305

CLEAR
PAINTER
WORK AREA
TO ZEROS

330
336

MOVE IN
MASK, THEN
FINAL TOTAL
TO PRINTER
WORK AREA

340
345

MOVE IN
"FINAL TOTAL"
(HEADE RI
TO PRINTER
WORK AREA

350

SPACE 1

355

PRINT

360

240

245

CLEAR
PRINTER
WORK AREA

265

2

365
370

3

Figure 3·3

Marketing Sales Report Flowchart
3-23/24

E·3/E·4

565

7.

Page 3-8:
Insert coding line 146 after coding line 145:
Column 10

GET

Column 16

READ,CARD

READ A CARD

146
LABEL

11 OPERA TIOH 11
10
16

OPERAND

READ A
CARD

Reads a card and places data into· area defined as CARD.

ACTIVATE CARD READER, PRINTER

LABEL

11 OPERA TIOH 11
10
16

OPERAND

OPEN READ
OPEN PRINT

140
145

OPEN READ makes the file named READ available for sending input.
OPEN PRNT makes the file named PANT ready to receive output.

CLEAR PRINTER LINE COUNTER TO ZERO

1

· LABEL

) OPERA TIOH 11
10
16

OPERAND

150
CLEAR
COUNTER
Moves zeros from storage area TZER+4 to the two~byte area defined as
CNTR.

E-5

B.

Page 3-11:
Delete coding line 210:

9.

Column 10

GET

Column 16

READ,CARD

Page 3-18:
Delete coding line number 9:
Column 16

PROV

Column 72

x

=

FOF,

A88BMBLllR CDl:HNCI PDRM
PROGRAM _ _
MA__;C::_:RO:..::..::..-=C.=..:AL=L=---.:C:::..:A;;.:;.;;;..;RD=S-_ _ _ _ _ __

E-6

PROGRAMMER _ _ _ _ _ _ _ _ DAT! _ _ _ _ _ PAGE_ Of_Pl.GU

10.

Page 3-19:
Delete coding line 135:
Column 10

ENTRY

Column 16

FOF

Column 78

135

LAll!L

Of'llAND

11.

COMlllllNTS

'

ao

Page 3-19:
Insert coding line 146:

LI

I

I

I -

:

Column 10'

GET

Column 16

READ,CARD

Column 78

146

l"TJGE,T, I l~.1\q ,,C,1\~Q
I

I • • • • I

• • • .• I

I

I

I

I

I

I

'

'

I

I

I

I

'

'

I '

I

I

I

I

I

I

'

I

I

I

'

'

I

I

I..

I

I

I

II..

I • ;

~~ , .. , , , , , . , , , .. , , , , , . , , , , , , . , .. , , , . , , , , , , , , , , : : : : : ; : 11 ; ; :
_,

1 1.1

I

1 1.1 ..

1..l

1 11

1

I

1

1 1-t .

.l.L.1.-.LJ~l-.L.L.t....J • ..L...1..I

•

1

••I,,, 1 I,•

1

1!.4p _

;u0'
1
TI5-J

E-7

12.

Page 3-19:
Correct coding line 205:
.· Colwnn 10
Colwnn 16

13.

PRNT, PRWK

Page 3-19:
D~lete

11:0

PUT

coding line 210:

Colwnn 10

GET

Colwnn 16

READ, CARD

Colwnn 78

210



Source Exif Data:
File Type                       : PDF
File Type Extension             : pdf
MIME Type                       : application/pdf
PDF Version                     : 1.6
Linearized                      : No
Create Date                     : 2015:03:16 15:45:04-08:00
Modify Date                     : 2015:03:16 16:18:57-07:00
XMP Toolkit                     : Adobe XMP Core 5.4-c005 78.147326, 2012/08/23-13:03:03
Metadata Date                   : 2015:03:16 16:18:57-07:00
Producer                        : Acrobat 11.0.10 Paper Capture Plug-in
Format                          : application/pdf
Document ID                     : uuid:ec685db5-9e8e-534f-badb-61c942aeb2d3
Instance ID                     : uuid:df89193c-7939-b548-b52e-9ed49c5aeadf
Page Layout                     : SinglePage
Page Mode                       : UseOutlines
Page Count                      : 113
EXIF Metadata provided by EXIF.tools

Navigation menu